/* =========================================================================
   Pharma Uno Akademie – main.css
   Component & layout styles ported faithfully from the design mockup.
   Every class is prefixed .pua- so Elementor/WooCommerce widgets are safe.
   Design tokens come from style.css :root.

   TABLE OF CONTENTS
     01. Layout primitives (.pua-wrap, sections, section-head)
     02. Buttons
     03. Header / navigation + mobile off-canvas
     04. Hero
     05. Mission / Einstieg
     06. Seminare cards
     07. Summit: stat bar, gallery, program card
     08. Testimonials
     09. Pricing
     10. About / Ueber mich
     11. Beratung / consult banner
     12. FAQ
     13. Newsletter
     14. Kontakt
     15. Footer
     16. Media placeholder & consent embed
     17. Blog / posts / pagination / entry
     18. 404 layout
     19. Responsive media queries
   ========================================================================= */


/* =========================================================================
   01. LAYOUT PRIMITIVES
   ========================================================================= */
.pua-wrap{
	max-width:var(--pua-maxw);
	margin:0 auto;
	padding:0 32px;
	width:100%;
}

.pua-site-main{
	overflow-x:hidden; /* guard against accidental horizontal scroll */
}

.pua-section{
	padding:96px 0;
}

.pua-section--light{
	background:var(--pua-bg-light);
}

.pua-section--navy{
	background:var(--pua-navy);
	color:var(--pua-white);
}

.pua-kicker{
	display:block;
	font-size:12.5px;
	font-weight:700;
	letter-spacing:0.09em;
	text-transform:uppercase;
	color:var(--pua-gold);
	margin:0 0 14px;
}

.pua-section-head{
	max-width:640px;
	margin:0 0 52px;
}

.pua-section-head h2{
	font-size:clamp(28px,3.4vw,38px);
	margin:0 0 16px;
}

.pua-section-head p{
	color:var(--pua-text-muted);
	font-size:16.5px;
	margin:0;
}

.pua-section--navy .pua-section-head p{
	color:rgba(255,255,255,0.72);
}


/* =========================================================================
   02. BUTTONS
   .pua-btn base + primary (gold), secondary (outline white), outline (navy),
   block (full width).
   ========================================================================= */
.pua-btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:8px;
	padding:14px 26px;
	border-radius:999px;
	font-family:var(--pua-font-body);
	font-weight:600;
	font-size:15px;
	line-height:1.2;
	cursor:pointer;
	border:2px solid transparent;
	text-decoration:none;
	transition:transform .15s ease, box-shadow .15s ease, background .15s ease, color .15s ease, border-color .15s ease;
	white-space:nowrap;
}

.pua-btn:hover{
	transform:translateY(-2px);
}

/* Variants use the double-class pattern (.pua-btn.pua-btn--x) so they always
   outrank element+class selectors (a.pua-btn) from plugin/kit stylesheets. */
.pua-btn.pua-btn--primary{
	background:var(--pua-gold);
	color:var(--pua-navy);
}

.pua-btn.pua-btn--primary:hover{
	background:var(--pua-gold-light);
	box-shadow:0 8px 20px rgba(240,168,0,0.35);
	color:var(--pua-navy);
}

.pua-btn.pua-btn--secondary{
	background:transparent;
	color:var(--pua-white);
	border-color:rgba(255,255,255,0.5);
}

.pua-btn.pua-btn--secondary:hover{
	border-color:var(--pua-white);
	background:rgba(255,255,255,0.08);
	color:var(--pua-white);
	box-shadow:none;
}

.pua-btn.pua-btn--outline{
	background:transparent;
	color:var(--pua-navy);
	border-color:var(--pua-navy);
}

.pua-btn.pua-btn--outline:hover{
	background:var(--pua-navy);
	color:var(--pua-white);
	box-shadow:none;
}

.pua-btn--block{
	width:100%;
	justify-content:center;
}


/* =========================================================================
   03. HEADER / NAVIGATION
   Sticky translucent header, logo, menu, cart, burger + mobile off-canvas.
   ========================================================================= */
.pua-header{
	position:sticky;
	top:0;
	z-index:100;
	background:rgba(13,27,62,0.92);
	backdrop-filter:blur(10px);
	-webkit-backdrop-filter:blur(10px);
	border-bottom:1px solid rgba(255,255,255,0.08);
}

.pua-nav{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:24px;
	padding:18px 32px;
	max-width:var(--pua-maxw);
	margin:0 auto;
}

.pua-logo{
	font-family:var(--pua-font-head);
	font-weight:700;
	font-size:19px;
	color:var(--pua-white);
	letter-spacing:0.01em;
	text-decoration:none;
	white-space:nowrap;
}

.pua-logo__accent{
	color:var(--pua-gold);
}

.pua-nav-menu{
	display:flex;
	align-items:center;
	gap:36px;
	list-style:none;
	margin:0;
	padding:0;
}

.pua-nav-menu a{
	color:rgba(255,255,255,0.85);
	font-size:14.5px;
	font-weight:500;
	text-decoration:none;
	transition:color .15s ease;
}

.pua-nav-menu a:hover,
.pua-nav-menu .current-menu-item > a,
.pua-nav-menu a[aria-current="page"]{
	color:var(--pua-gold);
}

.pua-nav-right{
	display:flex;
	align-items:center;
	gap:18px;
}

.pua-cart{
	position:relative;
	width:38px;
	height:38px;
	border-radius:50%;
	background:rgba(255,255,255,0.08);
	border:1px solid rgba(255,255,255,0.15);
	display:flex;
	align-items:center;
	justify-content:center;
	color:var(--pua-white);
	text-decoration:none;
	transition:background .15s ease, border-color .15s ease;
}

.pua-cart:hover{
	background:rgba(255,255,255,0.16);
	border-color:rgba(255,255,255,0.3);
}

.pua-cart__count{
	position:absolute;
	top:-6px;
	right:-6px;
	min-width:18px;
	height:18px;
	padding:0 5px;
	border-radius:999px;
	background:var(--pua-gold);
	color:var(--pua-navy);
	font-family:var(--pua-font-body);
	font-size:11px;
	font-weight:700;
	line-height:18px;
	text-align:center;
}

/* Burger toggle – hidden on desktop, shown <=980px */
.pua-nav-toggle{
	display:none;
	width:44px;
	height:44px;
	align-items:center;
	justify-content:center;
	background:none;
	border:none;
	color:var(--pua-white);
	font-size:26px;
	line-height:1;
	cursor:pointer;
	padding:0;
}

.pua-nav-toggle .pua-nav-toggle__bar,
.pua-nav-toggle .pua-nav-toggle__bar::before,
.pua-nav-toggle .pua-nav-toggle__bar::after{
	display:block;
	width:24px;
	height:2px;
	background:var(--pua-white);
	border-radius:2px;
	transition:transform .2s ease, opacity .2s ease;
	content:"";
}

.pua-nav-toggle .pua-nav-toggle__bar{
	position:relative;
}

.pua-nav-toggle .pua-nav-toggle__bar::before{
	position:absolute;
	top:-7px;
}

.pua-nav-toggle .pua-nav-toggle__bar::after{
	position:absolute;
	top:7px;
}

.pua-nav-toggle[aria-expanded="true"] .pua-nav-toggle__bar{
	background:transparent;
}

.pua-nav-toggle[aria-expanded="true"] .pua-nav-toggle__bar::before{
	transform:translateY(7px) rotate(45deg);
}

.pua-nav-toggle[aria-expanded="true"] .pua-nav-toggle__bar::after{
	transform:translateY(-7px) rotate(-45deg);
}


/* =========================================================================
   04. HERO
   Radial navy gradient background, gold glow ::after, 2-col grid.
   ========================================================================= */
.pua-hero{
	background:radial-gradient(120% 140% at 78% 12%, var(--pua-navy-3) 0%, var(--pua-navy) 55%, #081227 100%);
	color:var(--pua-white);
	padding:90px 0 70px;
	position:relative;
	overflow:hidden;
}

.pua-hero::after{
	content:"";
	position:absolute;
	right:-120px;
	top:-80px;
	width:480px;
	height:480px;
	border-radius:50%;
	background:radial-gradient(circle, rgba(240,168,0,0.18) 0%, rgba(240,168,0,0) 70%);
	pointer-events:none;
}

.pua-hero-grid{
	display:grid;
	grid-template-columns:1.15fr 0.85fr;
	gap:56px;
	align-items:center;
	position:relative;
	z-index:2;
}

.pua-hero-content{
	min-width:0;
}

.pua-eyebrow{
	display:inline-flex;
	align-items:center;
	gap:8px;
	font-size:12.5px;
	font-weight:600;
	letter-spacing:0.08em;
	text-transform:uppercase;
	color:var(--pua-gold);
	margin:0 0 20px;
}

.pua-eyebrow::before{
	content:"";
	width:7px;
	height:7px;
	border-radius:50%;
	background:var(--pua-gold);
	display:inline-block;
	flex-shrink:0;
}

.pua-hero-content h1{
	font-size:clamp(38px,5vw,58px);
	font-weight:700;
	margin:0 0 22px;
}

.pua-hero-content h1 .pua-logo__accent,
.pua-hero-content h1 .pua-accent{
	color:var(--pua-gold);
}

.pua-hero-content .pua-lead{
	font-size:18px;
	color:rgba(255,255,255,0.82);
	max-width:540px;
	margin:0 0 16px;
}

.pua-hero-content .pua-hero-audience{
	font-size:14.5px;
	color:rgba(255,255,255,0.65);
	margin:0 0 34px;
}

.pua-hero-content .pua-hero-audience strong{
	color:rgba(255,255,255,0.9);
}

.pua-hero-cta{
	display:flex;
	gap:16px;
	flex-wrap:wrap;
}

/* Media panel with caption + gradient placeholder */
.pua-hero-media{
	min-width:0;
	aspect-ratio:4/5;
	border-radius:20px;
	background:
		linear-gradient(160deg, rgba(240,168,0,0.25), rgba(255,255,255,0.03)),
		repeating-linear-gradient(135deg, rgba(255,255,255,0.05) 0 2px, transparent 2px 14px);
	background-size:cover;
	background-position:center;
	border:1px solid rgba(255,255,255,0.14);
	display:flex;
	align-items:flex-end;
	padding:20px;
	position:relative;
	overflow:hidden;
}

.pua-hero-media img{
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	object-fit:cover;
}

.pua-hero-media__caption{
	position:relative;
	z-index:2;
	background:rgba(13,27,62,0.75);
	backdrop-filter:blur(6px);
	-webkit-backdrop-filter:blur(6px);
	padding:10px 14px;
	border-radius:10px;
	font-size:12.5px;
	color:rgba(255,255,255,0.75);
}


/* =========================================================================
   05. MISSION / EINSTIEG
   ========================================================================= */
.pua-mission-grid{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:64px;
	align-items:start;
}

.pua-col{
	min-width:0;
}

.pua-mission-grid h2{
	font-size:clamp(24px,3vw,32px);
	margin:0 0 18px;
}

.pua-mission-grid .pua-col h3{
	font-size:20px;
	margin:0 0 14px;
	color:var(--pua-text-dark);
	font-family:var(--pua-font-head);
	line-height:1.15;
	letter-spacing:-0.01em;
}

.pua-mission-grid p{
	color:var(--pua-text-muted);
	font-size:16px;
	margin:0;
}


/* =========================================================================
   06. SEMINARE CARDS
   3-up grid of offer cards.
   ========================================================================= */
.pua-cards-3{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:28px;
}

.pua-offer-card{
	background:var(--pua-bg-card);
	border:1px solid var(--pua-border);
	border-radius:var(--pua-radius);
	padding:34px 28px;
	box-shadow:var(--pua-shadow);
	display:flex;
	flex-direction:column;
	gap:16px;
	min-width:0;
}

.pua-offer-card__num{
	font-family:var(--pua-font-head);
	font-size:14px;
	font-weight:700;
	color:var(--pua-gold);
	letter-spacing:0.04em;
}

.pua-offer-card h3{
	font-size:21px;
	margin:0;
}

.pua-offer-card p{
	color:var(--pua-text-muted);
	font-size:15px;
	flex-grow:1;
	margin:0;
}

.pua-offer-card__meta{
	font-size:13px;
	color:var(--pua-gold);
	font-weight:600;
}

.pua-offer-card .pua-btn{
	margin-top:6px;
	align-self:flex-start;
}


/* =========================================================================
   07. SUMMIT: stat bar, gallery, program card
   ========================================================================= */

/* --- Stat bar --- */
.pua-stat-bar{
	display:grid;
	grid-template-columns:repeat(4,1fr);
	gap:24px;
	border-radius:var(--pua-radius);
	margin-top:8px;
}

.pua-stat{
	background:rgba(255,255,255,0.04);
	border:1px solid rgba(255,255,255,0.1);
	border-radius:var(--pua-radius);
	padding:30px 20px;
	text-align:center;
	min-width:0;
}

/* Number and label are <span>s — display:block stacks them like the
   mockup's <div>s (number on top, label underneath). */
.pua-stat__n{
	display:block;
	font-family:var(--pua-font-head);
	font-size:42px;
	font-weight:700;
	color:var(--pua-gold);
	line-height:1.1;
}

.pua-stat__l{
	display:block;
	font-size:13.5px;
	color:rgba(255,255,255,0.72);
	margin-top:8px;
}

/* Optional intro line under the head that pulls up toward the stat bar */
.pua-summit-meta{
	font-size:15px;
	color:rgba(255,255,255,0.75);
	margin:-30px 0 44px;
}

/* --- Summit gallery (4-col, one span-2 large tile) --- */
.pua-summit-gallery{
	display:grid;
	grid-template-columns:repeat(4,1fr);
	grid-auto-rows:180px;
	gap:12px;
	margin-top:52px;
}

.pua-summit-gallery img,
.pua-summit-gallery .pua-img-placeholder{
	width:100%;
	height:100%;
	object-fit:cover;
	border-radius:12px;
	display:block;
	filter:saturate(1.02);
	min-height:0;
}

.pua-summit-gallery__large{
	grid-column:span 2;
	grid-row:span 2;
}

.pua-gallery-caption{
	font-size:13px;
	color:rgba(255,255,255,0.55);
	margin-top:16px;
}

/* --- Program download card --- */
.pua-program-card{
	margin-top:44px;
	background:rgba(255,255,255,0.05);
	border:1px solid rgba(255,255,255,0.14);
	border-radius:var(--pua-radius);
	padding:28px;
	display:grid;
	grid-template-columns:140px 1fr auto;
	gap:26px;
	align-items:center;
}

.pua-program-card__thumb{
	width:140px;
	height:auto;
	border-radius:8px;
	box-shadow:0 12px 24px rgba(0,0,0,0.35);
	border:1px solid rgba(255,255,255,0.12);
}

.pua-program-card h3,
.pua-program-card h4,
body .pua-site-main .pua-program-card h3,
body .pua-site-main .pua-program-card h4{
	font-size:18px;
	color:var(--pua-white);
	margin:0 0 6px;
	font-family:var(--pua-font-head);
	line-height:1.15;
	letter-spacing:-0.01em;
}

.pua-program-card p{
	font-size:14px;
	color:rgba(255,255,255,0.68);
	margin:0;
}

.pua-program-card__fine{
	font-size:12px;
	color:rgba(255,255,255,0.45);
	margin-top:8px;
}


/* =========================================================================
   08. TESTIMONIALS
   ========================================================================= */
.pua-testi-grid{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:28px;
}

.pua-testi{
	background:rgba(255,255,255,0.05);
	border:1px solid rgba(255,255,255,0.12);
	border-radius:var(--pua-radius);
	overflow:hidden;
	min-width:0;
}

.pua-testi__photo{
	width:100%;
	height:250px;
	object-fit:cover;
	display:block;
}

.pua-testi__body{
	padding:30px 34px 34px;
}

.pua-testi__body p{
	font-size:17px;
	font-style:italic;
	color:rgba(255,255,255,0.92);
	margin:0 0 20px;
}

.pua-testi__who{
	font-size:13.5px;
	color:var(--pua-gold);
	font-weight:600;
}


/* =========================================================================
   09. PRICING
   3-up cards, popular card lifted with gold border + badge, check list.
   ========================================================================= */
.pua-pricing-grid{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:28px;
	align-items:stretch;
}

.pua-price-card{
	background:var(--pua-bg-card);
	border:1px solid var(--pua-border);
	border-radius:var(--pua-radius);
	padding:32px 26px;
	display:flex;
	flex-direction:column;
	box-shadow:var(--pua-shadow);
	position:relative;
	min-width:0;
}

.pua-price-card--popular{
	border:2px solid var(--pua-gold);
	transform:translateY(-10px);
}

.pua-price-card__badge{
	position:absolute;
	top:-13px;
	left:26px;
	background:var(--pua-gold);
	color:var(--pua-navy);
	font-size:11.5px;
	font-weight:700;
	letter-spacing:0.05em;
	text-transform:uppercase;
	padding:5px 12px;
	border-radius:999px;
}

.pua-price-card h3{
	font-size:18px;
	margin:0 0 6px;
}

.pua-price{
	font-family:var(--pua-font-head);
	font-size:40px;
	font-weight:700;
	margin:14px 0 2px;
	line-height:1.1;
}

.pua-price small{
	font-size:14px;
	font-weight:500;
	color:var(--pua-text-muted);
}

.pua-price__terms{
	font-size:12.5px;
	color:var(--pua-text-muted);
	margin:0 0 20px;
}

.pua-price-list{
	list-style:none;
	margin:0 0 26px;
	padding:0;
	flex-grow:1;
}

.pua-price-list li{
	font-size:14.5px;
	color:var(--pua-text-dark);
	padding-left:24px;
	position:relative;
	margin-bottom:10px;
}

.pua-price-list li::before{
	content:"\2713"; /* check mark */
	position:absolute;
	left:0;
	color:var(--pua-gold);
	font-weight:700;
}

.pua-legal-note{
	font-size:13px;
	color:var(--pua-text-muted);
	margin-top:28px;
	border-top:1px solid var(--pua-border);
	padding-top:18px;
}


/* =========================================================================
   10. ABOUT / UEBER MICH
   ========================================================================= */
.pua-about-grid{
	display:grid;
	grid-template-columns:0.8fr 1.2fr;
	gap:60px;
	align-items:center;
}

.pua-about-photo{
	min-width:0;
	aspect-ratio:3/4;
	border-radius:20px;
	background:linear-gradient(160deg, var(--pua-navy) 0%, var(--pua-navy-3) 100%);
	background-size:cover;
	background-position:center;
	position:relative;
	display:flex;
	align-items:flex-end;
	padding:18px;
	overflow:hidden;
}

.pua-about-photo img{
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	object-fit:cover;
}

.pua-about-photo__caption{
	position:relative;
	z-index:2;
	background:rgba(255,255,255,0.92);
	padding:10px 14px;
	border-radius:10px;
	font-size:12.5px;
	color:var(--pua-navy);
	font-weight:600;
}

.pua-about-text{
	min-width:0;
}

.pua-about-text h2{
	font-size:clamp(26px,3.2vw,34px);
	margin:0 0 16px;
}

.pua-about-text > p{
	color:var(--pua-text-muted);
	font-size:16px;
	margin:0 0 34px;
}

.pua-skills-grid{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:22px;
}

.pua-skill{
	border-left:3px solid var(--pua-gold);
	padding-left:16px;
	min-width:0;
}

.pua-skill h3,
.pua-skill h4,
body .pua-site-main .pua-skill h3,
body .pua-site-main .pua-skill h4{
	font-size:15.5px;
	margin:0 0 6px;
	font-family:var(--pua-font-head);
	line-height:1.15;
	letter-spacing:-0.01em;
}

.pua-skill p{
	font-size:13.5px;
	color:var(--pua-text-muted);
	margin:0;
}


/* =========================================================================
   11. BERATUNG / CONSULT BANNER
   ========================================================================= */
.pua-consult{
	background:var(--pua-white);
	border:1px solid var(--pua-border);
	border-radius:var(--pua-radius);
	padding:44px;
	display:grid;
	grid-template-columns:1fr auto;
	gap:32px;
	align-items:center;
	box-shadow:var(--pua-shadow);
}

.pua-consult h2{
	font-size:26px;
	margin:0 0 12px;
}

.pua-consult p{
	color:var(--pua-text-muted);
	font-size:15.5px;
	max-width:620px;
	margin:0;
}

.pua-consult a:not(.pua-btn){
	color:var(--pua-navy);
	text-decoration:underline;
}


/* =========================================================================
   12. FAQ – native <details>/<summary> with gold +/- marker
   ========================================================================= */
.pua-faq{
	max-width:820px;
}

.pua-faq-item{
	border-bottom:1px solid var(--pua-border);
	padding:22px 0;
}

.pua-faq-item__q{
	cursor:pointer;
	font-family:var(--pua-font-head);
	font-weight:600;
	font-size:16.5px;
	line-height:1.3;
	list-style:none;
	display:flex;
	justify-content:space-between;
	align-items:center;
	gap:16px;
}

.pua-faq-item__q::-webkit-details-marker{
	display:none;
}

.pua-faq-item__q::after{
	content:"+";
	font-size:22px;
	color:var(--pua-gold);
	font-weight:400;
	margin-left:16px;
	flex-shrink:0;
}

.pua-faq-item[open] .pua-faq-item__q::after{
	content:"\2013"; /* en dash as minus */
}

.pua-faq-item p{
	color:var(--pua-text-muted);
	margin:14px 0 0;
	font-size:15px;
	max-width:680px;
}


/* =========================================================================
   13. NEWSLETTER – navy gradient, rounded, centered pill input + button
   ========================================================================= */
.pua-newsletter{
	background:linear-gradient(120deg, var(--pua-navy) 0%, var(--pua-navy-3) 100%);
	color:var(--pua-white);
	border-radius:24px;
	padding:56px;
	text-align:center;
}

.pua-newsletter .pua-kicker{
	color:var(--pua-gold);
}

.pua-newsletter h2{
	font-size:clamp(24px,3vw,30px);
	margin:0 0 12px;
}

.pua-newsletter > p{
	color:rgba(255,255,255,0.75);
	max-width:480px;
	margin:0 auto 30px;
}

.pua-newsletter-form{
	display:flex;
	gap:12px;
	max-width:460px;
	margin:0 auto;
	flex-wrap:wrap;
	justify-content:center;
}

.pua-newsletter-form input[type="email"]{
	flex:1;
	min-width:220px;
	padding:14px 18px;
	border-radius:999px;
	border:none;
	font-size:15px;
	font-family:var(--pua-font-body);
	color:var(--pua-text-dark);
}

.pua-newsletter-fine{
	font-size:12.5px;
	color:rgba(255,255,255,0.55);
	margin-top:16px;
}


/* =========================================================================
   14. KONTAKT
   ========================================================================= */
.pua-contact-grid{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:56px;
	align-items:center;
}

.pua-contact-grid > div{
	min-width:0;
}

.pua-contact-grid h2{
	font-size:clamp(26px,3.2vw,34px);
	margin:0 0 16px;
}

.pua-contact-grid .pua-lead{
	color:var(--pua-text-muted);
	font-size:16px;
	margin:0 0 28px;
}

.pua-contact-card{
	background:var(--pua-bg-light);
	border-radius:var(--pua-radius);
	padding:36px;
}

.pua-contact-row{
	display:flex;
	align-items:center;
	gap:14px;
	margin-bottom:18px;
	font-size:15px;
}

.pua-contact-row a{
	text-decoration:underline;
	word-break:break-word;
}

.pua-contact-ic{
	width:36px;
	height:36px;
	border-radius:50%;
	background:var(--pua-navy);
	color:var(--pua-gold);
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:15px;
	flex-shrink:0;
}

.pua-contact-links{
	display:flex;
	gap:14px;
	margin-top:24px;
	flex-wrap:wrap;
	list-style:none;
	padding:0;
}


/* =========================================================================
   15. FOOTER
   ========================================================================= */
.pua-footer{
	background:#081227;
	color:rgba(255,255,255,0.65);
	padding:44px 0 30px;
}

.pua-footer .pua-logo{
	color:var(--pua-white);
}

.pua-footer-grid{
	display:flex;
	justify-content:space-between;
	align-items:center;
	flex-wrap:wrap;
	gap:20px;
	padding-bottom:26px;
	border-bottom:1px solid rgba(255,255,255,0.1);
}

.pua-footer-links{
	display:flex;
	gap:24px;
	flex-wrap:wrap;
	font-size:13.5px;
	list-style:none;
	margin:0;
	padding:0;
}

.pua-footer-links a{
	color:rgba(255,255,255,0.65);
	text-decoration:none;
	transition:color .15s ease;
}

.pua-footer-links a:hover{
	color:var(--pua-gold);
}

.pua-kuendigen{
	font-size:12.5px;
	border:1px solid rgba(255,255,255,0.3);
	padding:8px 16px;
	border-radius:999px;
	color:rgba(255,255,255,0.85);
	text-decoration:none;
	transition:border-color .15s ease, color .15s ease;
	white-space:nowrap;
}

.pua-kuendigen:hover{
	border-color:var(--pua-gold);
	color:var(--pua-gold);
}

.pua-footer-bottom{
	display:flex;
	justify-content:space-between;
	padding-top:22px;
	font-size:12.5px;
	flex-wrap:wrap;
	gap:10px;
}


/* =========================================================================
   16. MEDIA PLACEHOLDER & CONSENT EMBED
   ========================================================================= */

/* Gradient placeholder box with centered label (demo/media library) */
.pua-img-placeholder{
	display:flex;
	align-items:center;
	justify-content:center;
	text-align:center;
	padding:20px;
	border-radius:12px;
	background:
		linear-gradient(160deg, var(--pua-navy) 0%, var(--pua-navy-3) 100%),
		repeating-linear-gradient(135deg, rgba(255,255,255,0.04) 0 2px, transparent 2px 14px);
	color:rgba(255,255,255,0.72);
	font-size:12.5px;
	letter-spacing:0.03em;
	border:1px solid rgba(255,255,255,0.12);
	min-height:120px;
	width:100%;
}

/* Inside the hero/about media frames the placeholder must fill the frame
   absolutely (like the real <img> does), so the caption sits alone at the
   bottom of the frame instead of sharing the flex row with the placeholder. */
.pua-hero-media .pua-img-placeholder,
.pua-about-photo .pua-img-placeholder{
	position:absolute;
	inset:0;
	height:100%;
	min-height:0;
	border-radius:inherit;
	border:0;
}

/* DSGVO consent gate for third-party embeds (Vimeo, TuCalendi, maps ...) */
.pua-consent-embed{
	position:relative;
	width:100%;
	aspect-ratio:16/9;
	border-radius:var(--pua-radius);
	background:linear-gradient(160deg, var(--pua-navy) 0%, var(--pua-navy-3) 100%);
	border:1px solid var(--pua-border);
	overflow:hidden;
}

.pua-consent-embed__inner{
	position:absolute;
	inset:0;
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	gap:16px;
	text-align:center;
	padding:28px;
	color:rgba(255,255,255,0.82);
	font-size:14.5px;
	line-height:1.5;
}

.pua-consent-embed__inner p{
	margin:0;
	max-width:520px;
}

.pua-consent-embed__btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:8px;
	padding:12px 24px;
	border-radius:999px;
	background:var(--pua-gold);
	color:var(--pua-navy);
	font-family:var(--pua-font-body);
	font-weight:600;
	font-size:15px;
	border:none;
	cursor:pointer;
	transition:background .15s ease, transform .15s ease;
}

.pua-consent-embed__btn:hover{
	background:var(--pua-gold-light);
	transform:translateY(-2px);
}


/* =========================================================================
   17. BLOG / POSTS / PAGINATION / ENTRY
   ========================================================================= */
.pua-posts{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:28px;
}

.pua-post-card{
	background:var(--pua-bg-card);
	border:1px solid var(--pua-border);
	border-radius:var(--pua-radius);
	overflow:hidden;
	box-shadow:var(--pua-shadow);
	display:flex;
	flex-direction:column;
	min-width:0;
}

.pua-post-card__thumb{
	width:100%;
	aspect-ratio:16/9;
	object-fit:cover;
	display:block;
}

.pua-post-card__body{
	padding:26px 24px 28px;
	display:flex;
	flex-direction:column;
	gap:12px;
	flex-grow:1;
}

.pua-post-card__meta{
	font-size:12.5px;
	font-weight:600;
	letter-spacing:0.04em;
	text-transform:uppercase;
	color:var(--pua-gold);
}

.pua-post-card h2,
.pua-post-card h3{
	font-size:20px;
	margin:0;
	line-height:1.25;
}

.pua-post-card h2 a,
.pua-post-card h3 a{
	color:var(--pua-text-dark);
	text-decoration:none;
	transition:color .15s ease;
}

.pua-post-card h2 a:hover,
.pua-post-card h3 a:hover{
	color:var(--pua-navy);
}

.pua-post-card p{
	color:var(--pua-text-muted);
	font-size:15px;
	margin:0;
	flex-grow:1;
}

.pua-post-card .pua-btn{
	margin-top:6px;
	align-self:flex-start;
}

/* Pagination */
.pua-pagination{
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	justify-content:center;
	margin-top:52px;
}

.pua-pagination .page-numbers{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:42px;
	height:42px;
	padding:0 12px;
	border-radius:999px;
	border:1px solid var(--pua-border);
	background:var(--pua-white);
	color:var(--pua-text-dark);
	font-weight:600;
	font-size:14.5px;
	text-decoration:none;
	transition:background .15s ease, color .15s ease, border-color .15s ease;
}

.pua-pagination .page-numbers:hover{
	border-color:var(--pua-navy);
}

.pua-pagination .page-numbers.current{
	background:var(--pua-gold);
	border-color:var(--pua-gold);
	color:var(--pua-navy);
}

.pua-pagination .page-numbers.dots{
	border:none;
	background:transparent;
}

/* Single entry (post/page content) */
.pua-entry{
	max-width:760px;
	margin:0 auto;
}

.pua-entry-header{
	margin-bottom:36px;
}

.pua-entry-header h1{
	font-size:clamp(30px,4vw,44px);
	margin:0 0 14px;
	line-height:1.15;
}

.pua-entry-header .pua-post-card__meta{
	display:inline-block;
}

.pua-entry-content{
	font-size:17px;
	color:var(--pua-text-dark);
	line-height:1.7;
}

.pua-entry-content > *{
	margin-top:0;
	margin-bottom:1.2em;
}

.pua-entry-content h2{
	font-size:28px;
	margin:1.6em 0 0.6em;
}

.pua-entry-content h3{
	font-size:22px;
	margin:1.4em 0 0.5em;
}

.pua-entry-content a{
	color:var(--pua-navy);
	text-decoration:underline;
}

.pua-entry-content ul,
.pua-entry-content ol{
	padding-left:1.4em;
}

.pua-entry-content li{
	margin-bottom:0.5em;
}

.pua-entry-content img{
	border-radius:var(--pua-radius);
	height:auto;
}

.pua-entry-content blockquote{
	margin:1.6em 0;
	padding:6px 0 6px 24px;
	border-left:3px solid var(--pua-gold);
	color:var(--pua-text-muted);
	font-style:italic;
}


/* =========================================================================
   18. 404 LAYOUT
   ========================================================================= */
.pua-404{
	text-align:center;
	max-width:640px;
	margin:0 auto;
	padding:40px 0;
}

.pua-404__code{
	font-family:var(--pua-font-head);
	font-size:clamp(80px,16vw,150px);
	font-weight:700;
	line-height:1;
	color:var(--pua-gold);
	margin:0 0 8px;
}

.pua-404 h1{
	font-size:clamp(26px,3.2vw,34px);
	margin:0 0 16px;
}

.pua-404 p{
	color:var(--pua-text-muted);
	font-size:16.5px;
	margin:0 0 30px;
}

.pua-404__actions{
	display:flex;
	gap:16px;
	justify-content:center;
	flex-wrap:wrap;
}


/* =========================================================================
   19. RESPONSIVE MEDIA QUERIES
   Breakpoints: 1440, 1200, 1024, 980 (nav), 768, 480, 360.
   Cards collapse 3 -> 2 -> 1. Hero stacks (media above content) <=1024.
   No horizontal scroll: min-width:0 on grid children, max-width:100% media.
   ========================================================================= */

/* ---- 1440: large desktop – gently increase gutters ---- */
@media (max-width:1440px){
	.pua-hero-grid{
		gap:48px;
	}
}

/* ---- 1200: desktop ---- */
@media (max-width:1200px){
	.pua-wrap{
		padding:0 28px;
	}
	.pua-mission-grid{
		gap:48px;
	}
	.pua-about-grid{
		gap:48px;
	}
	.pua-contact-grid{
		gap:44px;
	}
	.pua-summit-gallery{
		grid-auto-rows:190px;
	}
}

/* ---- 1024: laptop – hero stacks, media above content, cards 3->2 ---- */
@media (max-width:1024px){
	.pua-section{
		padding:80px 0;
	}
	.pua-hero{
		padding:72px 0 60px;
	}
	.pua-hero-grid,
	.pua-mission-grid,
	.pua-about-grid,
	.pua-contact-grid{
		grid-template-columns:1fr;
		gap:40px;
	}
	.pua-hero-media{
		order:-1;
		max-width:360px;
		margin:0 auto;
	}
	.pua-cards-3,
	.pua-pricing-grid,
	.pua-posts,
	.pua-stat-bar{
		grid-template-columns:repeat(2,1fr);
	}
	.pua-price-card--popular{
		transform:none;
	}
	.pua-consult{
		grid-template-columns:1fr;
	}
	.pua-program-card{
		grid-template-columns:120px 1fr;
	}
	.pua-program-card .pua-btn{
		grid-column:1 / -1;
		justify-self:start;
	}
}

/* ---- 980: primary nav collapses to accessible burger ---- */
@media (max-width:980px){
	.pua-nav-toggle{
		display:inline-flex;
	}
	.pua-nav-menu{
		position:absolute;
		top:100%;
		left:0;
		right:0;
		flex-direction:column;
		align-items:stretch;
		gap:0;
		padding:8px 20px 20px;
		background:var(--pua-navy);
		border-bottom:1px solid rgba(255,255,255,0.08);
		/* closed state: collapsed + not interactive */
		max-height:0;
		overflow:hidden;
		opacity:0;
		visibility:hidden;
		transform:translateY(-8px);
		transition:max-height .3s ease, opacity .25s ease, transform .25s ease, visibility .25s;
	}
	.pua-nav-menu.is-open{
		max-height:80vh;
		overflow:auto;
		opacity:1;
		visibility:visible;
		transform:translateY(0);
	}
	.pua-nav-menu li{
		width:100%;
	}
	.pua-nav-menu a{
		display:block;
		padding:14px 0;
		font-size:16px;
		border-bottom:1px solid rgba(255,255,255,0.06);
	}
	.pua-nav-menu li:last-child a{
		border-bottom:none;
	}
}

/* ---- 768: tablet – cards to single column, tighter spacing ---- */
@media (max-width:768px){
	.pua-section{
		padding:64px 0;
	}
	.pua-hero{
		padding:60px 0 52px;
	}
	.pua-section-head{
		margin-bottom:40px;
	}
	.pua-cards-3,
	.pua-pricing-grid,
	.pua-posts,
	.pua-stat-bar,
	.pua-testi-grid,
	.pua-skills-grid{
		grid-template-columns:1fr;
	}
	.pua-newsletter{
		padding:40px 24px;
	}
	.pua-consult{
		padding:32px 24px;
	}
	/* Summit gallery: 2 columns, large tile spans full width */
	.pua-summit-gallery{
		grid-template-columns:repeat(2,1fr);
		grid-auto-rows:190px;
	}
	.pua-summit-gallery__large{
		grid-column:span 2;
		grid-row:span 1;
	}
	.pua-program-card{
		grid-template-columns:1fr;
		text-align:left;
	}
	.pua-program-card__thumb{
		width:120px;
	}
	.pua-program-card .pua-btn{
		justify-self:start;
	}
	.pua-footer-grid{
		justify-content:flex-start;
		flex-direction:column;
		align-items:flex-start;
	}
	/* 44px minimum tap target for buttons on touch */
	.pua-btn{
		min-height:44px;
	}
}

/* ---- 480: mobile – compact hero, reduced padding ---- */
@media (max-width:480px){
	.pua-wrap{
		padding:0 20px;
	}
	.pua-nav{
		padding:16px 20px;
	}
	.pua-section{
		padding:52px 0;
	}
	.pua-hero{
		padding:48px 0 44px;
	}
	.pua-hero-media{
		max-width:100%;
	}
	.pua-newsletter{
		padding:32px 18px;
		border-radius:18px;
	}
	.pua-newsletter-form{
		flex-direction:column;
	}
	.pua-newsletter-form input[type="email"],
	.pua-newsletter-form .pua-btn{
		width:100%;
		min-width:0;
	}
	.pua-hero-cta{
		flex-direction:column;
		align-items:stretch;
	}
	.pua-hero-cta .pua-btn{
		width:100%;
	}
	.pua-contact-card{
		padding:26px 22px;
	}
	.pua-consult{
		padding:28px 20px;
	}
	.pua-404__actions{
		flex-direction:column;
		align-items:stretch;
	}
}

/* ---- 360: small phones – smallest gutters, single-column gallery ---- */
@media (max-width:360px){
	.pua-wrap{
		padding:0 16px;
	}
	.pua-nav{
		padding:14px 16px;
		gap:12px;
	}
	.pua-logo{
		font-size:16px;
	}
	.pua-summit-gallery{
		grid-template-columns:1fr;
	}
	.pua-summit-gallery__large{
		grid-column:span 1;
	}
	.pua-offer-card,
	.pua-price-card{
		padding:26px 20px;
	}
}

/* =========================================================================
   18. SECONDARY TEMPLATES — blog details, entry meta, search, comments, 404
   Completes styling for the peripheral templates and aligns a few class
   names between markup and stylesheet. Rules are intrinsically responsive
   (flex-wrap / max-width / %), so they need no extra media queries.
   ========================================================================= */

/* ---- Header nav wrapper + cart icon (markup adds a <nav> landmark) ---- */
.pua-nav-menu-wrap{
	display:flex;
	align-items:center;
}
.pua-cart__icon{
	display:block;
}

/* ---- Hero: markup uses .pua-hero-lead / placeholder label ---- */
.pua-hero-content .pua-hero-lead{
	font-size:18px;
	color:rgba(255,255,255,0.82);
	max-width:540px;
	margin:0 0 16px;
}
.pua-img-placeholder__label{
	display:block;
}

/* ---- Kontakt intro lead ---- */
.pua-contact-lead{
	color:var(--pua-text-muted);
	font-size:16px;
	margin:0 0 28px;
	max-width:48ch;
}

/* ---- Blog post card: title / excerpt / footer ---- */
.pua-post-card__title{
	font-family:var(--pua-font-head);
	font-size:21px;
	line-height:1.2;
	letter-spacing:-0.01em;
	margin:0 0 4px;
}
.pua-post-card__title a{
	color:var(--pua-text-dark);
	text-decoration:none;
}
.pua-post-card__title a:hover,
.pua-post-card__title a:focus-visible{
	color:var(--pua-gold);
}
.pua-post-card__excerpt{
	color:var(--pua-text-muted);
	font-size:15px;
	margin:0 0 18px;
}
.pua-post-card__excerpt p{
	margin:0 0 12px;
}
.pua-post-card__excerpt p:last-child{
	margin-bottom:0;
}
.pua-post-card__footer{
	margin-top:auto;
}

/* ---- Single / page entry meta, thumbnail, footer, pagination links ---- */
.pua-entry-title{
	font-family:var(--pua-font-head);
	font-size:clamp(26px,3.4vw,40px);
	line-height:1.15;
	letter-spacing:-0.01em;
	color:var(--pua-text-dark);
	margin:0 0 14px;
}
.pua-entry-meta{
	display:flex;
	flex-wrap:wrap;
	gap:6px 18px;
	font-size:13.5px;
	color:var(--pua-text-muted);
	margin:0 0 8px;
}
.pua-entry-meta a{
	color:var(--pua-text-muted);
	text-decoration:underline;
}
.pua-entry-meta a:hover,
.pua-entry-meta a:focus-visible{
	color:var(--pua-gold);
}
.pua-entry-thumb{
	margin:0 0 28px;
	border-radius:var(--pua-radius);
	overflow:hidden;
}
.pua-entry-thumb img{
	width:100%;
	height:auto;
	display:block;
}
.pua-entry-footer{
	display:flex;
	flex-wrap:wrap;
	gap:10px 22px;
	margin-top:28px;
	padding-top:20px;
	border-top:1px solid var(--pua-border);
	font-size:14px;
	color:var(--pua-text-muted);
}
.pua-entry-footer a{
	color:var(--pua-text-dark);
	text-decoration:underline;
}
.pua-entry-footer a:hover,
.pua-entry-footer a:focus-visible{
	color:var(--pua-gold);
}
.pua-entry-cats,
.pua-entry-tags,
.pua-entry-edit{
	display:inline-flex;
	gap:6px;
	flex-wrap:wrap;
	align-items:baseline;
}
.pua-page-links{
	margin-top:24px;
	font-weight:600;
	font-size:14px;
	display:flex;
	gap:8px;
	flex-wrap:wrap;
	align-items:center;
}
.pua-page-links a,
.pua-page-links > span{
	display:inline-flex;
	min-width:36px;
	height:36px;
	align-items:center;
	justify-content:center;
	padding:0 10px;
	border:1px solid var(--pua-border);
	border-radius:8px;
	text-decoration:none;
}
.pua-page-links a:hover{
	border-color:var(--pua-navy);
	color:var(--pua-navy);
}

/* ---- Archive description + no-results ---- */
.pua-archive-description{
	color:var(--pua-text-muted);
	font-size:16px;
	max-width:70ch;
	margin:12px 0 0;
}
.pua-no-results{
	max-width:640px;
}

/* ---- Post-to-post navigation ---- */
.pua-post-nav{
	margin-top:40px;
	padding-top:28px;
	border-top:1px solid var(--pua-border);
}
.pua-post-nav .nav-links{
	display:flex;
	justify-content:space-between;
	gap:24px;
	flex-wrap:wrap;
}
.pua-post-nav a{
	display:block;
	max-width:100%;
}
.pua-post-nav__label{
	display:block;
	font-size:12px;
	font-weight:700;
	letter-spacing:0.06em;
	text-transform:uppercase;
	color:var(--pua-gold);
	margin-bottom:4px;
}
.pua-post-nav__title{
	font-family:var(--pua-font-head);
	font-size:16px;
	color:var(--pua-text-dark);
}
.pua-post-nav a:hover .pua-post-nav__title,
.pua-post-nav a:focus-visible .pua-post-nav__title{
	color:var(--pua-gold);
}
.pua-post-nav .nav-next{
	text-align:right;
	margin-left:auto;
}

/* ---- Search form ---- */
.pua-search-form{
	display:flex;
	gap:10px;
	flex-wrap:wrap;
	align-items:stretch;
	max-width:520px;
}
.pua-search-form__field{
	flex:1 1 220px;
	min-width:0;
	padding:13px 18px;
	border:1px solid var(--pua-border);
	border-radius:999px;
	font-family:var(--pua-font-body);
	font-size:15px;
	color:var(--pua-text-dark);
	background:var(--pua-white);
}
.pua-search-form__field:focus-visible{
	outline:2px solid var(--pua-gold);
	outline-offset:2px;
	border-color:var(--pua-gold);
}
.pua-search-form__submit{
	flex:0 0 auto;
}
.pua-search-query{
	color:var(--pua-gold);
}
.pua-search-empty{
	max-width:640px;
}
.pua-search-empty .pua-search-form{
	margin-top:20px;
}

/* ---- 404 (markup uses dash-style classes) ---- */
.pua-section--404{
	text-align:center;
}
.pua-404-inner{
	max-width:640px;
	margin:0 auto;
}
.pua-404-inner .pua-entry-title{
	font-size:clamp(40px,7vw,72px);
	margin-bottom:10px;
}
.pua-404-text{
	color:var(--pua-text-muted);
	font-size:16.5px;
	margin:0 auto 28px;
	max-width:52ch;
}
.pua-404-search{
	display:flex;
	justify-content:center;
	margin-bottom:28px;
}
.pua-404-search .pua-search-form{
	margin:0 auto;
}
.pua-404-actions{
	margin:0;
}

/* ---- Comments ---- */
.pua-comments{
	margin-top:56px;
	padding-top:36px;
	border-top:1px solid var(--pua-border);
}
.pua-comments__title{
	font-family:var(--pua-font-head);
	font-size:22px;
	margin:0 0 24px;
}
.pua-comment-list{
	list-style:none;
	margin:0 0 32px;
	padding:0;
}
.pua-comment-list ol.children{
	list-style:none;
	margin:0;
	padding-left:24px;
}
.pua-comment-list .comment-body{
	padding:20px 0;
	border-bottom:1px solid var(--pua-border);
}
.pua-comment-list .comment-author{
	display:flex;
	align-items:center;
	gap:10px;
	font-weight:600;
	font-size:14.5px;
}
.pua-comment-list .comment-author .avatar{
	border-radius:50%;
}
.pua-comment-list .comment-meta{
	font-size:12.5px;
	color:var(--pua-text-muted);
	margin:2px 0 10px;
}
.pua-comment-list .comment-meta a{
	color:var(--pua-text-muted);
}
.pua-comment-list .reply{
	font-size:13.5px;
	font-weight:600;
}
.pua-comment-list .reply a{
	color:var(--pua-navy);
	text-decoration:none;
}
.pua-comment-list .reply a:hover,
.pua-comment-list .reply a:focus-visible{
	color:var(--pua-gold);
}
.pua-comments__closed{
	font-size:14px;
	color:var(--pua-text-muted);
	font-style:italic;
}
.pua-comment-notes{
	font-size:13.5px;
	color:var(--pua-text-muted);
	margin:0 0 16px;
}

/* Comment form fields (html5 markup from comment_form()) */
.comment-form{
	margin-top:8px;
}
.comment-form p{
	margin-bottom:14px;
}
.comment-form label{
	display:block;
	font-size:13.5px;
	font-weight:600;
	margin-bottom:6px;
}
.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form input[type="url"],
.comment-form textarea{
	width:100%;
	max-width:100%;
	padding:12px 14px;
	border:1px solid var(--pua-border);
	border-radius:10px;
	font-family:var(--pua-font-body);
	font-size:15px;
	background:var(--pua-white);
	color:var(--pua-text-dark);
}
.comment-form input:focus-visible,
.comment-form textarea:focus-visible{
	outline:2px solid var(--pua-gold);
	outline-offset:2px;
	border-color:var(--pua-gold);
}

/* ---- Footer sub-elements ---- */
.pua-footer-nav{
	display:flex;
}
.pua-footer-copyright,
.pua-footer-domain{
	font-size:12.5px;
}

/* =========================================================================
   19. ELEMENTOR KIT DEFENSE
   When Elementor is active it adds an .elementor-kit-N class to <body> and
   ships direct color rules for h1–h6, body and links (its Site-Settings /
   Theme-Style defaults). Direct rules always beat inherited colors, so the
   theme's coded sections must state their text colors explicitly, at a
   specificity above Elementor's (kit selectors are class+element = 0,1,1).
   The `body` prefix lifts these to 0,1,2 / 0,2,2 without using !important.
   ========================================================================= */

/* Base text + headings inside theme-rendered content: dark navy. The
   font-family re-assert guards against the kit's body/heading global fonts. */
body .pua-site-main{
	color:var(--pua-text-dark);
	font-family:var(--pua-font-body);
}

body .pua-site-main h1,
body .pua-site-main h2,
body .pua-site-main h3,
body .pua-site-main h4,
body .pua-site-main h5,
body .pua-site-main h6{
	color:var(--pua-text-dark);
	font-family:var(--pua-font-head);
}

/* Dark (navy) contexts: headings render white. */
body .pua-site-main .pua-section--navy h1,
body .pua-site-main .pua-section--navy h2,
body .pua-site-main .pua-section--navy h3,
body .pua-site-main .pua-section--navy h4,
body .pua-site-main .pua-hero h1,
body .pua-site-main .pua-hero h2,
body .pua-site-main .pua-hero h3,
body .pua-site-main .pua-newsletter h2,
body .pua-site-main .pua-newsletter h3{
	color:var(--pua-white);
}

/* Re-assert the gold accent word inside the hero headline. */
body .pua-site-main .pua-hero h1 .pua-logo__accent,
body .pua-site-main .pua-hero h1 .pua-accent{
	color:var(--pua-gold);
}

/* Kickers/eyebrows stay gold in every context. */
body .pua-site-main .pua-kicker,
body .pua-site-main .pua-eyebrow{
	color:var(--pua-gold);
}


/* =========================================================================
   20. CMPLZ Cookie Banner Restyling
   Custom glassmorphism dark navy style to match the new home page design.
   ========================================================================= */

/* Main Container (Banner Box) */
#cmplz-cookiebanner-container .cmplz-cookiebanner {
    background: rgba(13, 27, 62, 0.95) !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: var(--pua-radius, 14px) !important;
    box-shadow: 0 15px 45px rgba(0, 0, 0, 0.35) !important;
    padding: 30px !important;
    max-width: 600px !important;
    color: var(--pua-white, #FFFFFF) !important;
}

/* Header & Title */
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-header .cmplz-title {
    color: var(--pua-white, #FFFFFF) !important;
    font-family: var(--pua-font-head) !important;
    font-weight: 700 !important;
    font-size: 20px !important;
    margin-bottom: 15px !important;
    text-align: left !important;
}

/* Body / Description Text */
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-body .cmplz-message {
    color: #e2e6f0 !important;
    font-family: var(--pua-font-body) !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
    margin-bottom: 20px !important;
}

/* Links inside message & documents */
#cmplz-cookiebanner-container .cmplz-cookiebanner a,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-links a {
    color: var(--pua-gold, #F0A800) !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
}
#cmplz-cookiebanner-container .cmplz-cookiebanner a:hover,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-links a:hover {
    color: var(--pua-gold-light, #FFC845) !important;
    text-decoration: underline !important;
}

/* Close Button (X) */
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-close {
    color: rgba(255, 255, 255, 0.6) !important;
    border-color: rgba(255, 255, 255, 0.2) !important;
    transition: all 0.2s ease !important;
}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-close:hover {
    color: var(--pua-white, #FFFFFF) !important;
    border-color: var(--pua-white, #FFFFFF) !important;
}

/* Buttons Container */
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons {
    display: flex !important;
    gap: 12px !important;
    margin-top: 25px !important;
}

/* Individual Buttons */
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn {
    flex: 1 !important;
    padding: 12px 20px !important;
    border-radius: 8px !important;
    font-family: var(--pua-font-body) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-align: center !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
    border: none !important;
    box-shadow: none !important;
}

/* Accept Button (Primary - Gold) */
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-accept {
    background: var(--pua-gold, #F0A800) !important;
    color: #FFFFFF !important;
}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-accept:hover {
    background: var(--pua-gold-light, #FFC845) !important;
    transform: translateY(-2px) !important;
}

/* Deny Button & View Preferences Button (Secondary - Semi-transparent Outline) */
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-deny,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-view-preferences {
    background: rgba(255, 255, 255, 0.08) !important;
    color: var(--pua-white, #FFFFFF) !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-deny:hover,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-view-preferences:hover {
    background: rgba(255, 255, 255, 0.15) !important;
    border-color: rgba(255, 255, 255, 0.3) !important;
    transform: translateY(-2px) !important;
}

/* Footer / Document Links (Cookie-Richtlinie, Datenschutz, Impressum) */
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-links.cmplz-documents {
    display: flex !important;
    justify-content: center !important;
    gap: 15px !important;
    margin-top: 20px !important;
    font-size: 12px !important;
}


/* Manage Consent Floating Tab (Cookie Icon Button) */
#cmplz-manage-consent button.cmplz-manage-consent,
#cmplz-manage-consent .cmplz-manage-consent {
    background: var(--pua-navy, #0D1B3E) !important;
    background-color: var(--pua-navy, #0D1B3E) !important;
    border: 2px solid var(--pua-gold, #F0A800) !important;
    box-shadow: 0 4px 15px rgba(13, 27, 62, 0.3) !important;
    transition: all 0.25s ease !important;
}

#cmplz-manage-consent button.cmplz-manage-consent:hover,
#cmplz-manage-consent .cmplz-manage-consent:hover {
    background: var(--pua-navy-2, #132552) !important;
    background-color: var(--pua-navy-2, #132552) !important;
    border-color: var(--pua-gold-light, #FFC845) !important;
    transform: scale(1.08) !important;
}
