:root{--bg:#050705;--surface:#0c100c;--surface2:#121812;--primary:#729d3e;--primary2:#96c85b;--text:#f3f7ef;--muted:#a9b6a1;--line:rgba(255,255,255,.1);--shadow:0 24px 70px rgba(0,0,0,.45)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif;background:radial-gradient(circle at 15% 10%,rgba(114,157,62,.18),transparent 28%),radial-gradient(circle at 85% 25%,rgba(114,157,62,.12),transparent 25%),var(--bg);color:var(--text);overflow-x:hidden}.container{width:min(1160px,calc(100% - 40px));margin:auto}.section{padding:95px 0}.site-header{position:fixed;z-index:50;inset:0 0 auto;background:rgba(5,7,5,.7);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.nav{height:82px;display:flex;align-items:center;justify-content:space-between}.brand img{width:150px;height:auto;display:block}.nav-menu{display:flex;gap:28px;align-items:center}.nav-menu a{color:var(--text);text-decoration:none;font-weight:700;opacity:.88}.nav-menu a:hover{color:var(--primary2)}.nav-cta{padding:12px 18px;border:1px solid var(--primary);border-radius:999px;background:rgba(114,157,62,.12)}.nav-toggle{display:none;background:none;border:0;width:42px}.nav-toggle span{display:block;height:2px;background:var(--text);margin:7px 0}.hero{min-height:82vh;display:grid;place-items:center;padding-top:120px;padding-bottom:55px}.hero-grid,.split-grid,.booking-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:55px;align-items:center}.eyebrow{display:inline-flex;color:var(--primary2);font-weight:900;text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;margin-bottom:18px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(3rem,6.2vw,5.9rem);line-height:.92;letter-spacing:-.07em;margin-bottom:20px}h2{font-size:clamp(2.1rem,4.3vw,4.4rem);line-height:1;letter-spacing:-.05em;margin-bottom:22px}h3{font-size:1.45rem}p{color:var(--muted);line-height:1.75;font-size:1.05rem}.hero-lead{font-size:clamp(1.08rem,2vw,1.28rem);max-width:650px;color:#d7e2cf}.hero-grid-compact{grid-template-columns:1fr .82fr}.hero-card-compact{isolation:isolate}.hero-points{display:flex;gap:10px;flex-wrap:wrap}.hero-points span{border:1px solid rgba(114,157,62,.45);background:rgba(114,157,62,.12);color:var(--text);padding:10px 14px;border-radius:999px;font-weight:900}.hero-copy{position:relative}.hero-copy:after{content:"";position:absolute;left:-26px;top:-26px;width:90px;height:90px;border-left:3px solid var(--primary);border-top:3px solid var(--primary);border-radius:24px 0 0 0;opacity:.7;pointer-events:none}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border-radius:999px;text-decoration:none;border:1px solid transparent;font-weight:900;transition:.25s transform,.25s box-shadow,.25s background}.btn:hover{transform:translateY(-3px)}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary2));color:#10150d;box-shadow:0 18px 40px rgba(114,157,62,.25)}.btn-ghost{border-color:var(--line);color:var(--text);background:rgba(255,255,255,.04)}.btn-dark{background:#050705;color:var(--text)}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin:28px 0 22px}.stats{display:flex;gap:18px;flex-wrap:wrap}.stats div{padding:18px 22px;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.035)}.stats strong{display:block;color:var(--primary2);font-size:1.5rem}.stats span{color:var(--muted);font-weight:700}.hero-card{position:relative;min-height:455px;border:1px solid var(--line);border-radius:40px;background:linear-gradient(145deg,rgba(114,157,62,.16),rgba(255,255,255,.035));box-shadow:var(--shadow);display:grid;place-items:center;overflow:hidden}.hero-card:before{content:"";position:absolute;width:560px;height:560px;border-radius:50%;border:2px solid rgba(114,157,62,.35);animation:spin 18s linear infinite}.hero-logo{position:relative;width:min(88%,620px);filter:drop-shadow(0 18px 28px rgba(0,0,0,.45))}.pulse-card{position:absolute;right:22px;bottom:22px;padding:16px 18px;border-radius:18px;background:rgba(5,7,5,.82);border:1px solid var(--line);font-weight:800}.pulse-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--primary2);box-shadow:0 0 0 8px rgba(114,157,62,.18);margin-right:10px}.marquee{display:flex;overflow:hidden;border-block:1px solid var(--line);background:rgba(114,157,62,.13);white-space:nowrap}.marquee span{font-size:clamp(1.4rem,3vw,2.4rem);font-weight:950;letter-spacing:-.04em;padding:24px 0;animation:marquee 18s linear infinite}.section-heading{max-width:720px;margin-bottom:38px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card,.step,.booking-form,.contact-box{border:1px solid var(--line);border-radius:30px;background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025));box-shadow:var(--shadow)}.card{padding:18px;transition:.25s transform,.25s border}.card:hover{transform:translateY(-8px);border-color:rgba(114,157,62,.55)}.image-placeholder{height:220px;border-radius:22px;background:linear-gradient(135deg,rgba(114,157,62,.25),rgba(255,255,255,.06)),url('assets/gallery/galerie-2.png') center/cover;display:grid;place-items:center;color:rgba(255,255,255,.75);font-weight:950;margin-bottom:22px}.image-placeholder.tall{height:560px}.card a,.contact-box a,.footer a{color:var(--primary2);font-weight:900;text-decoration:none}.split{background:linear-gradient(180deg,transparent,rgba(114,157,62,.07),transparent)}.about-visual{position:relative}.floating-badge{position:absolute;right:-12px;bottom:30px;background:var(--primary);color:#10150d;padding:22px 28px;border-radius:24px;font-weight:900;box-shadow:var(--shadow)}.check-list{list-style:none;padding:0;margin:26px 0}.check-list li{padding:12px 0 12px 36px;position:relative;color:var(--text);font-weight:700}.check-list li:before{content:"✓";position:absolute;left:0;color:var(--primary2);font-weight:950}.timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.step{padding:30px}.step span{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:50%;background:rgba(114,157,62,.18);color:var(--primary2);font-weight:950;margin-bottom:18px}.cta-band{padding:55px 0}.cta-inner{border-radius:38px;background:linear-gradient(135deg,var(--primary),var(--primary2));padding:50px;display:flex;align-items:center;justify-content:space-between;gap:25px}.cta-inner h2,.cta-inner p{color:#10150d;margin-bottom:0}.booking-form{padding:28px}.booking-form label{display:block;color:var(--text);font-weight:800;margin-bottom:16px}.booking-form input,.booking-form select,.booking-form textarea{width:100%;margin-top:8px;border:1px solid var(--line);border-radius:16px;padding:15px;background:#080b08;color:var(--text);font:inherit;outline:none}.booking-form input:focus,.booking-form textarea:focus,.booking-form select:focus{border-color:var(--primary)}.form-note{font-size:.9rem;margin:14px 0 0}.contact-box{padding:24px;margin-top:26px}.footer{padding:35px 0;border-top:1px solid var(--line)}.footer-grid{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer img{width:120px}.cursor-glow{position:fixed;pointer-events:none;z-index:1;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(114,157,62,.16),transparent 65%);transform:translate(-50%,-50%);display:none}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}@keyframes spin{to{transform:rotate(360deg)}}@keyframes marquee{to{transform:translateX(-100%)}}@media (max-width:900px){.hero{min-height:auto;padding-top:115px}.hero-grid-compact{grid-template-columns:1fr}.nav-toggle{display:block}.nav-menu{position:absolute;top:82px;left:20px;right:20px;display:none;flex-direction:column;padding:24px;border:1px solid var(--line);border-radius:24px;background:rgba(5,7,5,.96)}.nav-menu.open{display:flex}.hero-grid,.split-grid,.booking-grid{grid-template-columns:1fr}.hero-card{min-height:380px}.cards,.timeline{grid-template-columns:1fr}.cta-inner{align-items:flex-start;flex-direction:column}.section{padding:70px 0}.footer-grid{flex-direction:column;text-align:center}}@media (max-width:560px){.hero-copy:after{display:none}.hero-points span{flex:1;text-align:center}.container{width:min(100% - 26px,1160px)}.brand img{width:124px}h1{font-size:3rem}.hero-actions .btn{width:100%}.stats{display:grid;grid-template-columns:1fr 1fr}.stats div:last-child{grid-column:1/-1}.image-placeholder.tall{height:360px}.floating-badge{position:static;margin-top:14px}.cta-inner{padding:30px}.hero-card{border-radius:28px}.pulse-card{left:14px;right:14px}}
.social-top{display:flex;gap:8px;align-items:center}.social-top a{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1px solid rgba(114,157,62,.5);background:rgba(114,157,62,.12);color:var(--primary2);font-size:.78rem;font-weight:950}.social-section{background:radial-gradient(circle at 50% 0,rgba(114,157,62,.13),transparent 38%)}.social-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:24px;align-items:stretch}.social-panel{border:1px solid var(--line);border-radius:30px;background:linear-gradient(180deg,rgba(114,157,62,.16),rgba(255,255,255,.035));padding:30px;box-shadow:var(--shadow);display:flex;flex-direction:column;justify-content:center}.social-buttons{display:grid;gap:12px;margin:24px 0}.social-buttons a{display:flex;align-items:center;justify-content:space-between;padding:15px 18px;border:1px solid rgba(114,157,62,.38);border-radius:18px;color:var(--text);text-decoration:none;font-weight:950;background:rgba(5,7,5,.38);transition:.25s transform,.25s border}.social-buttons a:after{content:"→";color:var(--primary2)}.social-buttons a:hover{transform:translateX(4px);border-color:var(--primary2)}.social-panel small{color:var(--muted);line-height:1.6}.insta-feed{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.insta-feed article{position:relative;overflow:hidden;min-height:310px;border-radius:28px;border:1px solid var(--line);background:var(--surface2);box-shadow:var(--shadow)}.insta-feed img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.9) contrast(1.05);transition:transform .5s ease}.insta-feed article:hover img{transform:scale(1.08)}.insta-feed article:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(0,0,0,.78))}.insta-feed span{position:absolute;left:18px;bottom:18px;z-index:1;font-weight:950;color:#fff;background:rgba(114,157,62,.88);padding:9px 12px;border-radius:999px}@media (max-width:900px){.social-top{justify-content:center}.social-grid{grid-template-columns:1fr}.insta-feed{grid-template-columns:repeat(2,1fr)}.insta-feed article{min-height:240px}}@media (max-width:560px){.insta-feed{grid-template-columns:1fr}.insta-feed article{min-height:270px}.social-top a{width:auto;border-radius:999px;padding:0 11px}}
/* Conversion update */
.sticky-whatsapp{position:fixed;right:18px;bottom:18px;z-index:60;background:linear-gradient(135deg,var(--primary),var(--primary2));color:#10150d;text-decoration:none;font-weight:950;padding:14px 18px;border-radius:999px;box-shadow:0 18px 45px rgba(0,0,0,.38)}
.hero-trust{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.hero-trust span{padding:10px 13px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(114,157,62,.35);font-weight:900}.microcopy{font-size:.94rem;margin-top:14px;color:#c7d3bf}.hero-mini-card{position:absolute;z-index:2;background:rgba(5,7,5,.86);border:1px solid rgba(114,157,62,.4);border-radius:20px;padding:16px 18px;box-shadow:var(--shadow);font-weight:800;color:var(--muted)}.hero-mini-card strong{color:var(--primary2);font-size:1.25rem}.hero-mini-card.top{left:22px;top:22px}.hero-mini-card.bottom{right:22px;bottom:22px}.quick-cta{padding:22px 0;border-block:1px solid var(--line);background:rgba(114,157,62,.12)}.quick-grid{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center}.quick-grid strong{font-size:1.18rem}.quick-grid span{color:var(--muted)}.quick-grid a{color:var(--primary2);font-weight:950;text-decoration:none}.tag{display:inline-flex;color:#10150d;background:var(--primary2);font-weight:950;border-radius:999px;padding:8px 12px;margin-bottom:14px;font-size:.82rem}.image-placeholder.women{background-image:linear-gradient(135deg,rgba(114,157,62,.25),rgba(255,255,255,.06)),url('assets/gallery/galerie-1.png')}.image-placeholder.kids{background-image:linear-gradient(135deg,rgba(114,157,62,.25),rgba(255,255,255,.06)),url('assets/gallery/galerie-2.png')}.image-placeholder.adults{background-image:linear-gradient(135deg,rgba(114,157,62,.25),rgba(255,255,255,.06)),url('assets/gallery/galerie-3.png')}.image-placeholder.coach{background-image:linear-gradient(135deg,rgba(114,157,62,.28),rgba(255,255,255,.06)),url('assets/coach.png')}.trust{background:radial-gradient(circle at 20% 0,rgba(114,157,62,.16),transparent 32%)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.trust-box{border:1px solid var(--line);background:rgba(255,255,255,.035);border-radius:28px;padding:25px;box-shadow:var(--shadow)}.trust-box strong{color:var(--primary2);font-size:1.6rem}.trust-box h3{margin-top:16px}.testimonials{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.testimonials blockquote{margin:0;border:1px solid var(--line);border-radius:28px;background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025));padding:28px;font-size:1.15rem;line-height:1.7;color:var(--text);box-shadow:var(--shadow)}.testimonials span{display:block;margin-top:18px;color:var(--primary2);font-weight:900;font-size:.95rem}.faq{background:linear-gradient(180deg,transparent,rgba(255,255,255,.025))}.faq-list{display:grid;gap:14px;max-width:860px}.faq-list details{border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.04);padding:18px 22px}.faq-list summary{cursor:pointer;font-weight:950;color:var(--text);font-size:1.08rem}.faq-list p{margin:12px 0 0}.booking-form .btn{width:100%}@media (max-width:1000px){.trust-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:900px){.quick-grid{grid-template-columns:1fr}.testimonials{grid-template-columns:1fr}.sticky-whatsapp{left:16px;right:16px;text-align:center}.hero-mini-card{font-size:.9rem}.trust-grid{grid-template-columns:1fr}}@media (max-width:560px){.hero-mini-card.top{left:12px;top:12px}.hero-mini-card.bottom{right:12px;bottom:12px}.quick-cta{padding:18px 0}.sticky-whatsapp{bottom:12px}.footer{padding-bottom:80px}}


/* Header & Back-to-top fixes */
.site-header{min-height:86px}
.nav{height:86px}
.brand{height:72px;display:flex;align-items:center;justify-content:center;padding:6px 0 4px;text-decoration:none}
.brand img{width:142px;max-height:62px;object-fit:contain;object-position:center;transform:translateY(3px)}
.back-to-top{position:fixed;right:18px;bottom:82px;z-index:70;width:52px;height:52px;border:1px solid rgba(114,157,62,.55);border-radius:999px;background:rgba(5,7,5,.88);color:var(--primary2);font-size:24px;font-weight:950;cursor:pointer;box-shadow:0 18px 45px rgba(0,0,0,.38);opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .25s ease,visibility .25s ease,transform .25s ease,background .25s ease}
.back-to-top.show{opacity:1;visibility:visible;transform:translateY(0)}
.back-to-top:hover{background:linear-gradient(135deg,var(--primary),var(--primary2));color:#10150d}
@media (max-width:900px){.nav-menu{top:86px}.brand{height:68px}.brand img{width:132px;max-height:58px}.back-to-top{bottom:76px}}
@media (max-width:560px){.brand img{width:118px;max-height:54px}.back-to-top{right:14px;bottom:74px;width:48px;height:48px}.sticky-whatsapp{padding:13px 16px}}

/* Dezente Hintergrundbilder für mehr Authentizität
   Bilder einfach hier austauschen: url('assets/dein-bild.jpg') */
.hero,.trust,.split,.social-section,#termin{position:relative;isolation:isolate;overflow:hidden}
.hero::before,.trust::before,.split::before,.social-section::before,#termin::before{content:"";position:absolute;inset:0;z-index:-2;background-position:center;background-size:cover;background-repeat:no-repeat;opacity:.07;pointer-events:none;filter:saturate(.9) contrast(1.05)}
.hero::before{background-image:url('assets/hero-woman.png');opacity:.09}
.trust::before{background-image:url('assets/coach.png');opacity:.055;background-position:center 35%}
.split::before{background-image:url('assets/coach.png');opacity:.06;background-position:center 40%}
.social-section::before{background-image:url('assets/gallery/galerie-4.png');opacity:.05}
#termin::before{background-image:url('assets/hero-woman.png');opacity:.075;background-position:center 55%}
.hero::after,.trust::after,.split::after,.social-section::after,#termin::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(5,7,5,.72),rgba(5,7,5,.9)),radial-gradient(circle at 20% 20%,rgba(114,157,62,.16),transparent 35%)}
.trust::after,.social-section::after{background:linear-gradient(180deg,rgba(5,7,5,.82),rgba(5,7,5,.94)),radial-gradient(circle at 20% 0,rgba(114,157,62,.16),transparent 32%)}
.split::after,#termin::after{background:linear-gradient(90deg,rgba(5,7,5,.88),rgba(5,7,5,.76)),radial-gradient(circle at 80% 20%,rgba(114,157,62,.12),transparent 34%)}
@media (max-width:700px){.hero::before{opacity:.065}.trust::before,.split::before,.social-section::before,#termin::before{opacity:.045}}


.hero-woman-card{position:relative;overflow:hidden}
.hero-woman{
width:100%;
height:520px;
object-fit:cover;
border-radius:24px;
display:block;
box-shadow:0 0 40px rgba(114,157,62,.35);
}
.hero-badge{
position:absolute;
top:15px;
right:15px;
background:#111;
padding:10px;
border-radius:16px;
border:2px solid #729d3e;
z-index:5;
}
.hero-logo-small{height:55px;width:auto}
@media(max-width:768px){
.hero-woman{height:380px}
}


/* Updated WhatsApp CTA */
.sticky-whatsapp{
display:flex;align-items:center;gap:10px;
background:#25D366!important;color:#fff!important;
padding:14px 22px!important;border-radius:50px!important;
font-weight:700;text-decoration:none;
animation:pulse 2.5s infinite;
}
.sticky-whatsapp i{font-size:28px;}
@keyframes pulse{
0%{box-shadow:0 0 0 0 rgba(37,211,102,.6);}
70%{box-shadow:0 0 0 15px rgba(37,211,102,0);}
100%{box-shadow:0 0 0 0 rgba(37,211,102,0);}
}
@media(max-width:768px){
.sticky-whatsapp{width:65px!important;height:65px!important;padding:0!important;border-radius:50%!important;justify-content:center;}
.sticky-whatsapp span{display:none;}
.sticky-whatsapp i{font-size:32px;}
}


/* Conversion & Hero refinement */
.hero-woman-card:before{display:none}
.hero-woman-card:after{content:"";position:absolute;inset:0;border-radius:40px;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.42));pointer-events:none;z-index:1}
.hero-woman{position:relative;z-index:0}
.hero-woman-card .hero-mini-card{z-index:3}
.proof-strip{padding:18px 0;background:rgba(5,7,5,.88);border-top:1px solid rgba(114,157,62,.25);border-bottom:1px solid rgba(114,157,62,.25)}
.proof-grid{display:grid;grid-template-columns:repeat(3,1fr) auto;gap:16px;align-items:center}
.proof-grid div{padding:16px 18px;border:1px solid rgba(255,255,255,.09);border-radius:18px;background:rgba(255,255,255,.035)}
.proof-grid strong{display:block;color:var(--primary2);font-size:1.08rem;margin-bottom:4px}
.proof-grid span{display:block;color:var(--muted);font-weight:700;font-size:.92rem;line-height:1.45}
.proof-grid a{justify-self:end;color:#10150d;background:linear-gradient(135deg,var(--primary),var(--primary2));text-decoration:none;font-weight:950;padding:15px 18px;border-radius:999px;white-space:nowrap;box-shadow:0 14px 35px rgba(114,157,62,.2)}
.booking-form{border-color:rgba(114,157,62,.32)}
.form-note{color:#cfe0c3;font-weight:700}
@media(max-width:1000px){.proof-grid{grid-template-columns:1fr 1fr}.proof-grid a{justify-self:stretch;text-align:center}}
@media(max-width:560px){.proof-grid{grid-template-columns:1fr}.proof-grid a{white-space:normal}.hero-woman-card:after{border-radius:28px}}

/* Premium Header: größer am Anfang, kompakt und nicht volle Breite beim Scrollen */
.site-header{
  top:0; left:0; right:0; width:100%;
  min-height:104px;
  border-bottom:1px solid rgba(255,255,255,.1);
  transition:width .35s ease, top .35s ease, border-radius .35s ease, min-height .35s ease, background .35s ease, box-shadow .35s ease, border .35s ease;
}
.nav{height:104px;transition:height .35s ease;padding-inline:0}
.brand{height:88px;transition:height .35s ease, transform .35s ease}
.brand img{width:164px;max-height:76px;transition:width .35s ease, max-height .35s ease, transform .35s ease}
.site-header.is-scrolled{
  top:14px; left:50%; right:auto;
  width:min(1120px, calc(100% - 32px));
  transform:translateX(-50%);
  min-height:72px;
  border:1px solid rgba(114,157,62,.28);
  border-radius:999px;
  background:rgba(5,7,5,.82);
  box-shadow:0 18px 55px rgba(0,0,0,.38);
}
.site-header.is-scrolled .nav{height:72px;width:min(1060px, calc(100% - 34px))}
.site-header.is-scrolled .brand{height:60px}
.site-header.is-scrolled .brand img{width:122px;max-height:52px;transform:translateY(2px)}
.site-header.is-scrolled .nav-cta{padding:10px 16px}
@media(max-width:900px){
  .site-header{min-height:92px}.nav{height:92px}.brand{height:76px}.brand img{width:138px;max-height:62px}
  .site-header.is-scrolled{top:10px;border-radius:28px;width:calc(100% - 20px)}
  .site-header.is-scrolled .nav{height:70px;width:calc(100% - 24px)}
  .site-header.is-scrolled .nav-menu{top:78px;left:10px;right:10px}
}

/* Testimonials Slider */
.testimonials{display:none}
.testimonial-slider{position:relative;overflow:hidden;border-radius:34px;border:1px solid rgba(114,157,62,.26);background:linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.018));box-shadow:var(--shadow);padding:26px}
.testimonial-track{display:flex;transition:transform .55s cubic-bezier(.22,.8,.22,1);will-change:transform}
.testimonial-slide{min-width:100%;margin:0;padding:38px clamp(24px,5vw,64px);font-size:clamp(1.25rem,2.4vw,2rem);line-height:1.55;color:var(--text);position:relative}
.testimonial-slide:before{content:'“';position:absolute;left:8px;top:-8px;font-size:7rem;line-height:1;color:rgba(114,157,62,.22);font-weight:950}
.testimonial-slide span{display:block;margin-top:22px;color:var(--primary2);font-size:1rem;font-weight:950;letter-spacing:.02em}
.testimonial-controls{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:12px}
.testimonial-prev,.testimonial-next{width:48px;height:48px;border-radius:50%;border:1px solid rgba(114,157,62,.5);background:rgba(5,7,5,.72);color:var(--primary2);font-size:2rem;line-height:1;cursor:pointer;transition:.25s ease}
.testimonial-prev:hover,.testimonial-next:hover{transform:translateY(-2px);background:linear-gradient(135deg,var(--primary),var(--primary2));color:#10150d}
.testimonial-dots{display:flex;gap:8px;align-items:center}
.testimonial-dots button{width:9px;height:9px;border:0;border-radius:999px;background:rgba(255,255,255,.28);padding:0;cursor:pointer;transition:.25s ease}
.testimonial-dots button.active{width:30px;background:var(--primary2);box-shadow:0 0 18px rgba(114,157,62,.5)}

/* CTA Text Highlight Animation */
.cta-highlight,.cta-text-highlight{position:relative;overflow:hidden;isolation:isolate}
.cta-highlight:after,.cta-text-highlight:after{content:"";position:absolute;inset:-40% auto -40% -70%;width:55%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-18deg);animation:ctaShine 3.2s ease-in-out infinite;z-index:-1}
.btn-primary.cta-highlight:after,.nav-cta.cta-highlight:after{z-index:0}.btn-primary.cta-highlight,.nav-cta.cta-highlight{z-index:1}.btn-primary.cta-highlight span,.nav-cta.cta-highlight span{position:relative;z-index:2}
.cta-text-highlight{display:inline-flex;color:var(--primary2)!important;text-shadow:0 0 18px rgba(114,157,62,.28);animation:ctaPulseText 2.8s ease-in-out infinite}
@keyframes ctaShine{0%{left:-75%}45%,100%{left:130%}}
@keyframes ctaPulseText{0%,100%{filter:drop-shadow(0 0 0 rgba(114,157,62,0));transform:translateY(0)}50%{filter:drop-shadow(0 0 10px rgba(114,157,62,.45));transform:translateY(-1px)}}
@media (prefers-reduced-motion:reduce){.testimonial-track,.cta-highlight:after,.cta-text-highlight:after,.cta-text-highlight{animation:none!important;transition:none!important}}


/* Legal pages, Cookie Banner & Accessibility */
.skip-link{position:fixed;left:18px;top:12px;z-index:10000;background:var(--primary2);color:#10150d;padding:12px 16px;border-radius:999px;font-weight:950;text-decoration:none;transform:translateY(-160%);transition:transform .2s ease}.skip-link:focus{transform:translateY(0)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--primary2);outline-offset:4px;border-radius:10px}
.footer-links{display:flex;gap:16px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.footer-cookie-settings{background:transparent;border:0;color:var(--primary2);font-weight:900;cursor:pointer;font:inherit;padding:0}.footer-cookie-settings:hover{text-decoration:underline}
.legal-main{padding-top:92px}.legal-hero{min-height:42vh;display:grid;place-items:end;padding-bottom:55px;background:radial-gradient(circle at 20% 15%,rgba(114,157,62,.2),transparent 30%)}.legal-hero h1{font-size:clamp(3rem,6vw,5.6rem)}.legal-content{padding-top:40px}.legal-card{max-width:920px;border:1px solid rgba(114,157,62,.22);border-radius:34px;background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025));box-shadow:var(--shadow);padding:clamp(26px,4vw,54px)}.legal-card h2{font-size:clamp(1.8rem,3vw,2.6rem);margin-top:34px}.legal-card h2:first-child{margin-top:0}.legal-card h3{margin-top:28px}.legal-card a{color:var(--primary2);font-weight:900}.legal-card ul{color:var(--muted);line-height:1.8}
.cookie-banner{position:fixed;left:18px;right:18px;bottom:18px;z-index:10001}.cookie-banner[hidden]{display:none}.cookie-card{width:min(980px,100%);margin:auto;display:grid;grid-template-columns:1fr auto;gap:22px;align-items:end;border:1px solid rgba(114,157,62,.35);border-radius:26px;background:rgba(5,7,5,.94);backdrop-filter:blur(18px);box-shadow:0 22px 70px rgba(0,0,0,.55);padding:22px}.cookie-card strong{font-size:1.25rem;color:var(--text)}.cookie-card p{margin:8px 0 14px;font-size:.96rem;line-height:1.55}.cookie-option{display:inline-flex;align-items:center;gap:8px;margin-right:16px;color:#d8e4d0;font-weight:800}.cookie-option input{accent-color:var(--primary)}.cookie-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.cookie-actions .btn{min-height:44px;padding:0 16px;font-size:.92rem;white-space:nowrap}
@media(max-width:780px){.footer-grid{gap:18px}.footer-links{justify-content:flex-start}.cookie-card{grid-template-columns:1fr}.cookie-actions{justify-content:stretch}.cookie-actions .btn{width:100%}.legal-main{padding-top:84px}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}

/* Nutzbare Barrierefreiheits-Funktion */
.accessibility-toggle{position:fixed;left:20px;bottom:20px;z-index:10002;width:58px;height:58px;border-radius:999px;border:1px solid rgba(114,157,62,.55);background:linear-gradient(135deg,var(--primary),var(--primary2));color:#10150d;font-weight:950;font-size:1.35rem;box-shadow:0 14px 40px rgba(0,0,0,.45),0 0 0 8px rgba(114,157,62,.12);cursor:pointer;display:grid;place-items:center;transition:.25s ease}
.accessibility-toggle:hover{transform:translateY(-3px) scale(1.03)}
.accessibility-panel{position:fixed;left:20px;bottom:92px;z-index:10002;width:min(360px,calc(100vw - 40px));border:1px solid rgba(114,157,62,.35);border-radius:24px;background:rgba(5,7,5,.96);backdrop-filter:blur(18px);box-shadow:0 24px 70px rgba(0,0,0,.6);padding:18px;color:var(--text)}
.accessibility-panel[hidden]{display:none}.accessibility-panel h2{font-size:1.25rem;letter-spacing:0;line-height:1.2;margin:0 0 8px}.accessibility-panel p{font-size:.92rem;line-height:1.45;margin:0 0 14px;color:var(--muted)}
.accessibility-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.accessibility-actions button{min-height:44px;border-radius:14px;border:1px solid var(--line);background:rgba(255,255,255,.05);color:var(--text);font:inherit;font-weight:850;cursor:pointer;padding:10px;transition:.2s ease}.accessibility-actions button:hover,.accessibility-actions button.is-active{border-color:rgba(114,157,62,.75);background:rgba(114,157,62,.16);color:var(--primary2)}.accessibility-actions .wide{grid-column:1/-1}.accessibility-close{position:absolute;right:12px;top:10px;background:transparent!important;border:0!important;color:var(--muted)!important;font-size:1.2rem!important;width:36px;min-height:36px!important;padding:0!important}
body.a11y-font-lg{font-size:112%}body.a11y-font-xl{font-size:124%}body.a11y-contrast{--bg:#000;--surface:#000;--surface2:#050505;--text:#fff;--muted:#f0f0f0;--line:rgba(255,255,255,.38);background:#000!important}body.a11y-contrast .card,body.a11y-contrast .trust-box,body.a11y-contrast .booking-form,body.a11y-contrast .contact-box,body.a11y-contrast .legal-card{background:#050505!important;border-color:rgba(150,200,91,.8)!important}body.a11y-links a:not(.btn):not(.brand):not(.sticky-whatsapp){text-decoration:underline!important;text-decoration-thickness:2px!important;text-underline-offset:4px!important}body.a11y-readable p,body.a11y-readable li,body.a11y-readable summary{line-height:2!important;letter-spacing:.015em}body.a11y-reduced-motion *,body.a11y-reduced-motion *::before,body.a11y-reduced-motion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@media(max-width:620px){.accessibility-toggle{left:14px;bottom:14px;width:54px;height:54px}.accessibility-panel{left:14px;right:14px;bottom:80px;width:auto}.accessibility-actions{grid-template-columns:1fr}.accessibility-actions .wide{grid-column:auto}}

/* === KORREKTUR: stabiler Header, größerer Logo-Start + sauberer Shrink === */
.site-header{
  position:fixed;
  top:0;
  left:0;
  right:0;
  width:100%;
  transform:none !important;
  min-height:112px;
  border-radius:0 !important;
  background:rgba(5,7,5,.82);
  backdrop-filter:blur(18px);
  transition:min-height .28s ease, background .28s ease, box-shadow .28s ease;
}
.nav{
  height:112px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  transition:height .28s ease;
}
.brand{
  height:92px;
  display:flex;
  align-items:center;
  flex:0 0 auto;
  transition:height .28s ease;
}
.brand img{
  width:220px;
  max-height:84px;
  height:auto;
  object-fit:contain;
  display:block;
  transform:none !important;
  transition:width .28s ease, max-height .28s ease;
}
.site-header.is-scrolled{
  top:0;
  left:0;
  right:0;
  width:100%;
  min-height:78px;
  border:0;
  border-bottom:1px solid rgba(114,157,62,.28);
  box-shadow:0 12px 38px rgba(0,0,0,.36);
}
.site-header.is-scrolled .nav{
  height:78px;
  width:min(1160px,calc(100% - 40px));
}
.site-header.is-scrolled .brand{height:64px;}
.site-header.is-scrolled .brand img{width:150px;max-height:56px;}
.hero{padding-top:150px;}
.legal-main{padding-top:150px;}

@media(max-width:900px){
  .site-header{min-height:96px;}
  .nav{height:96px;}
  .brand{height:78px;}
  .brand img{width:170px;max-height:70px;}
  .site-header.is-scrolled{min-height:74px;}
  .site-header.is-scrolled .nav{height:74px;width:min(1160px,calc(100% - 40px));}
  .site-header.is-scrolled .brand{height:60px;}
  .site-header.is-scrolled .brand img{width:130px;max-height:52px;}
  .nav-menu{top:96px;}
  .site-header.is-scrolled .nav-menu{top:74px;left:20px;right:20px;}
  .hero{padding-top:128px;}
  .legal-main{padding-top:128px;}
}
@media(max-width:560px){
  .site-header{min-height:88px;}
  .nav{height:88px;}
  .brand{height:70px;}
  .brand img{width:145px;max-height:62px;}
  .site-header.is-scrolled{min-height:68px;}
  .site-header.is-scrolled .nav{height:68px;width:min(1160px,calc(100% - 26px));}
  .site-header.is-scrolled .brand img{width:115px;max-height:48px;}
  .nav-menu{top:88px;}
  .site-header.is-scrolled .nav-menu{top:68px;left:13px;right:13px;}
  .hero{padding-top:118px;}
  .legal-main{padding-top:118px;}
}

/* === KORREKTUR: Footer exakt gleichmäßig ausrichten === */
.footer{padding:34px 0;border-top:1px solid var(--line);}
.footer-grid{
  display:grid;
  grid-template-columns:auto minmax(260px,1fr) auto;
  align-items:center;
  gap:24px;
}
.footer img{width:118px;height:auto;display:block;}
.footer p{
  margin:0 !important;
  line-height:1.4;
  display:flex;
  align-items:center;
  min-height:44px;
  color:var(--muted);
}
.footer-links{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:16px;
}
.footer-links a,
.footer-cookie-settings{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  line-height:1.4;
}
.footer-cookie-settings{margin:0;}
@media(max-width:900px){
  .footer-grid{grid-template-columns:1fr;justify-items:center;text-align:center;gap:14px;}
  .footer p{justify-content:center;min-height:auto;}
  .footer-links{justify-content:center;}
}

/* === Premium CTA: voller, persönlicher und größerer Button === */
.cta-band{padding:72px 0;}
.cta-inner.cta-premium{
  display:grid;
  grid-template-columns:190px 1fr auto;
  align-items:center;
  gap:34px;
  padding:42px;
  border-radius:34px;
  background:
    radial-gradient(circle at 12% 20%, rgba(255,255,255,.32), transparent 24%),
    linear-gradient(135deg,var(--primary),var(--primary2));
  box-shadow:0 26px 70px rgba(0,0,0,.38);
  overflow:hidden;
  position:relative;
}
.cta-visual{position:relative;width:190px;height:190px;border-radius:30px;background:rgba(5,7,5,.16);overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.24);}
.cta-visual img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;}
.cta-badge{position:absolute;left:12px;right:12px;bottom:12px;padding:10px 12px;border-radius:999px;background:rgba(5,7,5,.82);color:#fff;font-weight:900;font-size:.82rem;text-align:center;}
.cta-content .eyebrow{color:#263513;margin-bottom:10px;}
.cta-content h2{color:#10150d;margin-bottom:12px;}
.cta-content p{color:#18220f;margin:0;max-width:720px;font-weight:700;}
.cta-benefits{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;}
.cta-benefits span{display:inline-flex;align-items:center;border-radius:999px;background:rgba(255,255,255,.34);color:#10150d;padding:9px 12px;font-weight:900;font-size:.92rem;}
.cta-big{min-height:68px;padding:0 36px;font-size:1.08rem;white-space:nowrap;box-shadow:0 16px 34px rgba(0,0,0,.28);}
@media(max-width:980px){
  .cta-inner.cta-premium{grid-template-columns:150px 1fr;}
  .cta-big{grid-column:1 / -1;width:100%;}
  .cta-visual{width:150px;height:150px;}
}
@media(max-width:680px){
  .cta-inner.cta-premium{grid-template-columns:1fr;text-align:center;padding:30px;}
  .cta-visual{margin:auto;width:180px;height:180px;}
  .cta-benefits{justify-content:center;}
}

/* === Floating Header beim Scrollen: nicht mehr volle Breite === */
.site-header{
  transition:
    top .32s ease,
    width .32s ease,
    min-height .28s ease,
    border-radius .32s ease,
    background .28s ease,
    box-shadow .28s ease,
    border-color .28s ease;
}

.site-header.is-scrolled{
  top:14px !important;
  left:50% !important;
  right:auto !important;
  width:min(1120px, calc(100% - 44px)) !important;
  transform:translateX(-50%) !important;
  min-height:78px !important;
  border:1px solid rgba(114,157,62,.32) !important;
  border-bottom:1px solid rgba(114,157,62,.32) !important;
  border-radius:999px !important;
  background:rgba(5,7,5,.86) !important;
  box-shadow:0 18px 55px rgba(0,0,0,.42), 0 0 0 1px rgba(255,255,255,.04) inset !important;
}

.site-header.is-scrolled .nav{
  width:calc(100% - 36px) !important;
  height:78px !important;
}

.site-header.is-scrolled .brand img{
  width:150px !important;
  max-height:56px !important;
}

@media(max-width:900px){
  .site-header.is-scrolled{
    top:10px !important;
    width:calc(100% - 24px) !important;
    min-height:74px !important;
    border-radius:26px !important;
  }
  .site-header.is-scrolled .nav{
    width:calc(100% - 24px) !important;
    height:74px !important;
  }
  .site-header.is-scrolled .nav-menu{
    top:82px !important;
    left:12px !important;
    right:12px !important;
  }
}

@media(max-width:560px){
  .site-header.is-scrolled{
    top:8px !important;
    width:calc(100% - 18px) !important;
    min-height:68px !important;
    border-radius:22px !important;
  }
  .site-header.is-scrolled .nav{
    width:calc(100% - 18px) !important;
    height:68px !important;
  }
  .site-header.is-scrolled .brand img{
    width:115px !important;
    max-height:48px !important;
  }
}



/* Schlichter strukturierter Footer */
.clean-footer{
  margin-top:70px;
  padding-top:40px;
  background:#070907;
  border-top:1px solid rgba(255,255,255,.08);
}

.footer-simple{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:40px;
  padding-bottom:28px;
}

.footer-logo-simple{
  width:160px;
  height:auto;
  margin-bottom:12px;
}

.footer-left p{
  margin:0;
  color:rgba(255,255,255,.72);
}

.footer-right{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.footer-right a{
  color:rgba(255,255,255,.75);
  text-decoration:none;
}

.footer-bottom-simple{
  border-top:1px solid rgba(255,255,255,.08);
  padding:18px 0 24px;
}

.footer-bottom-simple p{
  margin:0;
  text-align:center;
  color:rgba(255,255,255,.6);
}

@media(max-width:700px){
  .footer-simple{
    flex-direction:column;
  }
}


.footer-socials{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.footer-socials a{
  color:rgba(255,255,255,.75);
  text-decoration:none;
}

.footer-socials a:hover{
  color:#fff;
}


/* === Schlichter, strukturierter Footer mit Social Icons === */
.refined-footer{
  margin-top:72px;
  padding:46px 0 24px;
  background:
    linear-gradient(180deg, rgba(9,12,8,.98), #050705);
  border-top:1px solid rgba(255,255,255,.08);
  color:#fff;
}

.refined-footer-main{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:36px;
  padding-bottom:30px;
}

.refined-footer-brand{
  max-width:430px;
}

.refined-footer-logo{
  width:170px;
  height:auto;
  display:block;
  margin-bottom:14px;
}

.refined-footer-brand p{
  margin:0;
  color:rgba(255,255,255,.72);
  line-height:1.65;
  font-size:1rem;
}

.refined-footer-actions{
  display:flex;
  align-items:center;
  gap:18px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.refined-footer-call{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:50px;
  padding:13px 22px;
  border-radius:999px;
  background:rgba(114,157,62,.16);
  border:1px solid rgba(114,157,62,.38);
  color:#fff;
  text-decoration:none;
  font-weight:700;
}

.refined-footer-socials{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.refined-footer-socials a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:46px;
  padding:11px 16px;
  border-radius:999px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.10);
  color:rgba(255,255,255,.82);
  text-decoration:none;
  font-weight:600;
}

.refined-footer-socials svg{
  width:20px;
  height:20px;
  fill:currentColor;
}

.refined-footer-call:hover,
.refined-footer-socials a:hover{
  color:#fff;
  transform:translateY(-1px);
}

.refined-footer-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding-top:22px;
  border-top:1px solid rgba(255,255,255,.09);
}

.refined-footer-links{
  display:flex;
  align-items:center;
  gap:18px;
  flex-wrap:wrap;
}

.refined-footer-links a{
  color:rgba(255,255,255,.62);
  text-decoration:none;
}

.refined-footer-links a:hover{
  color:#fff;
}

.refined-footer-bottom p{
  margin:0;
  color:rgba(255,255,255,.56);
  line-height:1.4;
}

/* DSGVO Checkbox im Kontaktformular */
.form-consent{
  display:flex;
  align-items:flex-start;
  gap:12px;
  margin:18px 0 6px;
  padding:14px 16px;
  border-radius:14px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.10);
  color:rgba(255,255,255,.78);
  line-height:1.55;
  font-size:.95rem;
}

.form-consent input{
  width:18px;
  height:18px;
  margin-top:3px;
  flex:0 0 auto;
  accent-color:var(--accent, #729d3e);
}

.form-consent a{
  color:#fff;
  text-decoration:underline;
  text-underline-offset:3px;
}

@media(max-width:820px){
  .refined-footer-main,
  .refined-footer-bottom{
    align-items:flex-start;
    flex-direction:column;
  }

  .refined-footer-actions{
    justify-content:flex-start;
  }
}

@media(max-width:520px){
  .refined-footer{
    padding-top:38px;
  }

  .refined-footer-logo{
    width:150px;
  }

  .refined-footer-actions,
  .refined-footer-socials{
    width:100%;
  }

  .refined-footer-call,
  .refined-footer-socials a{
    width:100%;
    justify-content:center;
  }
}


/* === Finaler schlichter, aber gefüllter Footer === */
.balanced-footer{
  margin-top:72px !important;
  padding:52px 0 26px !important;
  background:
    radial-gradient(circle at 15% 0%, rgba(114,157,62,.12), transparent 34%),
    linear-gradient(180deg, #060806 0%, #030403 100%) !important;
  border-top:1px solid rgba(255,255,255,.08) !important;
  color:#fff !important;
}

.balanced-footer-main{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:44px !important;
  padding-bottom:36px !important;
}

.balanced-footer-brand{
  max-width:520px !important;
}

.balanced-footer-logo{
  width:185px !important;
  height:auto !important;
  display:block !important;
  margin:0 0 18px !important;
}

.balanced-footer-title{
  margin:0 0 6px !important;
  font-size:1.22rem !important;
  font-weight:800 !important;
  color:#fff !important;
  line-height:1.35 !important;
}

.balanced-footer-subtitle{
  margin:0 !important;
  color:rgba(255,255,255,.68) !important;
  font-size:1rem !important;
  line-height:1.6 !important;
}

.balanced-footer-side{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-end !important;
  gap:18px !important;
}

.balanced-footer-call{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:11px !important;
  min-height:56px !important;
  padding:15px 28px !important;
  border-radius:999px !important;
  background:rgba(114,157,62,.15) !important;
  border:1px solid rgba(114,157,62,.42) !important;
  color:#fff !important;
  text-decoration:none !important;
  font-weight:800 !important;
  box-shadow:0 14px 34px rgba(0,0,0,.20) !important;
}

.balanced-footer-socials{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:12px !important;
  flex-wrap:wrap !important;
}

.balanced-footer-socials a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:9px !important;
  min-height:48px !important;
  padding:12px 18px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.075) !important;
  border:1px solid rgba(255,255,255,.13) !important;
  color:rgba(255,255,255,.88) !important;
  text-decoration:none !important;
  font-weight:700 !important;
}

.balanced-footer-socials svg{
  width:21px !important;
  height:21px !important;
  fill:currentColor !important;
  display:block !important;
  flex:0 0 auto !important;
}

.balanced-footer-call:hover,
.balanced-footer-socials a:hover{
  transform:translateY(-1px) !important;
  color:#fff !important;
  border-color:rgba(114,157,62,.55) !important;
}

.balanced-footer-bottom{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:16px !important;
  padding-top:24px !important;
  border-top:1px solid rgba(255,255,255,.12) !important;
  text-align:center !important;
}

.balanced-footer-links{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:26px !important;
  flex-wrap:wrap !important;
}

.balanced-footer-links a{
  color:rgba(255,255,255,.72) !important;
  text-decoration:none !important;
  font-weight:600 !important;
  line-height:1.4 !important;
}

.balanced-footer-links a:hover{
  color:#fff !important;
}

.balanced-footer-bottom p{
  margin:0 !important;
  color:rgba(255,255,255,.56) !important;
  line-height:1.5 !important;
  text-align:center !important;
}

/* DSGVO Checkbox bleibt sauber */
.form-consent{
  display:flex !important;
  align-items:flex-start !important;
  gap:12px !important;
  margin:18px 0 6px !important;
  padding:14px 16px !important;
  border-radius:14px !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  color:rgba(255,255,255,.78) !important;
  line-height:1.55 !important;
  font-size:.95rem !important;
}

.form-consent input{
  width:18px !important;
  height:18px !important;
  margin-top:3px !important;
  flex:0 0 auto !important;
  accent-color:var(--accent, #729d3e) !important;
}

.form-consent a{
  color:#fff !important;
  text-decoration:underline !important;
  text-underline-offset:3px !important;
}

@media(max-width:760px){
  .balanced-footer{
    padding-top:42px !important;
  }

  .balanced-footer-main{
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:28px !important;
  }

  .balanced-footer-side{
    align-items:flex-start !important;
    width:100% !important;
  }

  .balanced-footer-socials{
    justify-content:flex-start !important;
  }
}

@media(max-width:520px){
  .balanced-footer-logo{
    width:155px !important;
  }

  .balanced-footer-call,
  .balanced-footer-socials,
  .balanced-footer-socials a{
    width:100% !important;
  }

  .balanced-footer-links{
    gap:14px 20px !important;
  }
}


/* === Footer wie Mockup: schlicht, voll, mit sichtbaren SVG Icons === */
.mockup-footer{
  margin-top:76px !important;
  padding:64px 0 34px !important;
  background:
    radial-gradient(circle at 16% 8%, rgba(114,157,62,.14), transparent 33%),
    radial-gradient(circle at 88% 0%, rgba(114,157,62,.08), transparent 30%),
    linear-gradient(180deg, #050805 0%, #020302 100%) !important;
  border-top:1px solid rgba(255,255,255,.08) !important;
  color:#fff !important;
}

.mockup-footer-grid{
  display:grid !important;
  grid-template-columns:1.1fr 1.25fr 1fr !important;
  gap:58px !important;
  align-items:center !important;
}

.mockup-footer-brand{
  min-width:0 !important;
}

.mockup-footer-logo{
  width:205px !important;
  height:auto !important;
  display:block !important;
  margin:0 0 24px !important;
}

.mockup-footer-brand h2{
  margin:0 0 10px !important;
  color:#fff !important;
  font-size:1.45rem !important;
  line-height:1.25 !important;
  font-weight:900 !important;
}

.mockup-footer-brand p{
  margin:0 !important;
  color:rgba(255,255,255,.70) !important;
  font-size:1.05rem !important;
  line-height:1.55 !important;
  font-weight:600 !important;
}

.mockup-footer-info{
  padding:0 46px !important;
  border-left:1px solid rgba(255,255,255,.14) !important;
  border-right:1px solid rgba(255,255,255,.14) !important;
  display:flex !important;
  flex-direction:column !important;
  gap:22px !important;
}

.mockup-info-item{
  display:flex !important;
  align-items:center !important;
  gap:18px !important;
}

.mockup-info-icon{
  width:58px !important;
  height:58px !important;
  border-radius:50% !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  color:var(--accent, #729d3e) !important;
  border:1px solid rgba(114,157,62,.55) !important;
  background:rgba(114,157,62,.06) !important;
  flex:0 0 auto !important;
}

.mockup-info-icon svg{
  width:27px !important;
  height:27px !important;
  display:block !important;
  fill:currentColor !important;
}

.mockup-info-item strong{
  display:block !important;
  color:#fff !important;
  font-size:1.12rem !important;
  line-height:1.35 !important;
  margin-bottom:3px !important;
}

.mockup-info-item span:not(.mockup-info-icon){
  display:block !important;
  color:rgba(255,255,255,.68) !important;
  font-size:1rem !important;
  line-height:1.35 !important;
}

.mockup-footer-actions{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  gap:34px !important;
}

.mockup-footer-button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:12px !important;
  width:min(100%, 360px) !important;
  min-height:62px !important;
  padding:16px 30px !important;
  border-radius:999px !important;
  background:rgba(114,157,62,.14) !important;
  border:1px solid rgba(114,157,62,.50) !important;
  color:#fff !important;
  text-decoration:none !important;
  font-weight:900 !important;
  font-size:1.04rem !important;
  box-shadow:0 18px 44px rgba(0,0,0,.22) !important;
}

.mockup-footer-button svg{
  width:21px !important;
  height:21px !important;
  fill:currentColor !important;
  color:var(--accent, #729d3e) !important;
}

.mockup-follow{
  text-align:center !important;
}

.mockup-follow h3{
  margin:0 0 18px !important;
  color:#fff !important;
  font-size:1.15rem !important;
  font-weight:900 !important;
}

.mockup-socials{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:18px !important;
}

.mockup-socials a{
  width:64px !important;
  height:64px !important;
  border-radius:50% !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  color:#fff !important;
  border:1px solid rgba(114,157,62,.55) !important;
  background:rgba(255,255,255,.045) !important;
  text-decoration:none !important;
}

.mockup-socials svg{
  width:32px !important;
  height:32px !important;
  display:block !important;
  fill:currentColor !important;
}

.mockup-footer-button:hover,
.mockup-socials a:hover,
.mockup-info-icon:hover{
  transform:translateY(-1px) !important;
}

.mockup-footer-bottom{
  margin-top:54px !important;
  padding-top:28px !important;
  border-top:1px solid rgba(255,255,255,.14) !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  gap:18px !important;
  text-align:center !important;
}

.mockup-legal-links{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:24px !important;
  flex-wrap:wrap !important;
}

.mockup-legal-links a{
  color:rgba(255,255,255,.74) !important;
  text-decoration:none !important;
  font-weight:800 !important;
  font-size:1rem !important;
}

.mockup-legal-links span{
  width:1px !important;
  height:18px !important;
  background:rgba(114,157,62,.78) !important;
  display:inline-block !important;
}

.mockup-footer-bottom p{
  margin:0 !important;
  color:rgba(255,255,255,.58) !important;
  font-size:1rem !important;
  line-height:1.4 !important;
}

/* DSGVO Checkbox */
.form-consent{
  display:flex !important;
  align-items:flex-start !important;
  gap:12px !important;
  margin:18px 0 6px !important;
  padding:14px 16px !important;
  border-radius:14px !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  color:rgba(255,255,255,.78) !important;
  line-height:1.55 !important;
  font-size:.95rem !important;
}

.form-consent input{
  width:18px !important;
  height:18px !important;
  margin-top:3px !important;
  flex:0 0 auto !important;
  accent-color:var(--accent, #729d3e) !important;
}

.form-consent a{
  color:#fff !important;
  text-decoration:underline !important;
  text-underline-offset:3px !important;
}

@media(max-width:1000px){
  .mockup-footer-grid{
    grid-template-columns:1fr !important;
    gap:38px !important;
    align-items:start !important;
  }

  .mockup-footer-info{
    padding:30px 0 !important;
    border-left:0 !important;
    border-right:0 !important;
    border-top:1px solid rgba(255,255,255,.14) !important;
    border-bottom:1px solid rgba(255,255,255,.14) !important;
  }

  .mockup-footer-actions{
    align-items:flex-start !important;
  }

  .mockup-follow{
    text-align:left !important;
  }

  .mockup-socials{
    justify-content:flex-start !important;
  }
}

@media(max-width:560px){
  .mockup-footer{
    padding-top:46px !important;
  }

  .mockup-footer-logo{
    width:165px !important;
  }

  .mockup-info-icon{
    width:50px !important;
    height:50px !important;
  }

  .mockup-info-icon svg{
    width:23px !important;
    height:23px !important;
  }

  .mockup-footer-button{
    width:100% !important;
  }

  .mockup-socials a{
    width:58px !important;
    height:58px !important;
  }

  .mockup-legal-links{
    gap:14px !important;
  }

  .mockup-legal-links span{
    display:none !important;
  }
}


/* Fix: schwarzer Text NUR im Proof-Bereich */
.proof-strip .cta-text-highlight,
.quick-cta .cta-text-highlight{
  color:#111 !important;
  font-weight:900 !important;
}

/* Footer-CTA bleibt weiß und gut lesbar */
.mockup-footer .mockup-footer-button{
  color:#fff !important;
}

/* Fix: Social Icons im Footer sichtbar und mittig */
.mockup-footer .mockup-socials{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:18px !important;
  min-height:70px !important;
}

.mockup-footer .mockup-socials a,
.mockup-footer .social-icon-link{
  width:64px !important;
  height:64px !important;
  border-radius:50% !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  color:#fff !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(114,157,62,.65) !important;
  text-decoration:none !important;
  opacity:1 !important;
  visibility:visible !important;
}

.mockup-footer .mockup-socials svg{
  display:block !important;
  width:32px !important;
  height:32px !important;
  fill:#fff !important;
  color:#fff !important;
  opacity:1 !important;
  visibility:visible !important;
}

.mockup-footer .mockup-socials path{
  fill:#fff !important;
}

/* === Finale Korrektur: Button-Farben gezielt statt global === */
/* Vorteile-Leiste: grüner Button mit schwarzer Schrift */
.proof-strip .cta-text-highlight{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:44px !important;
  padding:11px 18px !important;
  border-radius:999px !important;
  background:var(--primary2, #729d3e) !important;
  color:#0b0f08 !important;
  font-weight:950 !important;
  text-shadow:none !important;
  box-shadow:0 10px 22px rgba(114,157,62,.22) !important;
}

/* CTA-Balken: wieder hell/lesbar, nicht schwarz auf dunkel */
.quick-cta .cta-text-highlight{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:44px !important;
  padding:11px 18px !important;
  border-radius:999px !important;
  background:rgba(114,157,62,.28) !important;
  border:1px solid rgba(114,157,62,.55) !important;
  color:#ffffff !important;
  font-weight:950 !important;
  text-shadow:none !important;
}

/* Footer-Button bleibt weiß */
.mockup-footer .mockup-footer-button{
  color:#ffffff !important;
}
.mockup-footer .mockup-footer-button svg{
  color:var(--primary2, #729d3e) !important;
  fill:currentColor !important;
}

/* Footer Social Icons: externe SVG-Dateien, garantiert sichtbar */
.mockup-footer .mockup-socials{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:18px !important;
  min-height:72px !important;
}

.mockup-footer .mockup-socials .social-icon-link{
  width:66px !important;
  height:66px !important;
  border-radius:50% !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:rgba(255,255,255,.055) !important;
  border:1px solid rgba(114,157,62,.70) !important;
  box-shadow:0 12px 28px rgba(0,0,0,.18) !important;
  opacity:1 !important;
  visibility:visible !important;
}

.mockup-footer .mockup-socials img{
  width:33px !important;
  height:33px !important;
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
}



/* Kontaktformular: DSGVO & Spam-Schutz */
.hp-field{
  position:absolute !important;
  left:-9999px !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
}

.form-consent{
  display:flex !important;
  align-items:flex-start !important;
  gap:12px !important;
  margin:18px 0 6px !important;
  padding:14px 16px !important;
  border-radius:14px !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  color:rgba(255,255,255,.78) !important;
  line-height:1.55 !important;
  font-size:.95rem !important;
}

.form-consent input{
  width:18px !important;
  height:18px !important;
  margin-top:3px !important;
  flex:0 0 auto !important;
  accent-color:var(--accent, #729d3e) !important;
}

.form-consent a{
  color:#fff !important;
  text-decoration:underline !important;
  text-underline-offset:3px !important;
}


/* Zeichenzähler Kontaktformular */
.char-counter{
  margin-top:8px;
  text-align:right;
  font-size:.85rem;
  color:rgba(255,255,255,.55);
}
.char-counter.is-near-limit{
  color:#729d3e;
}


.about-highlights{margin-top:18px;line-height:1.8}
.about-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:24px}
.about-stats div{padding:16px;border-radius:16px;background:rgba(114,157,62,.12);border:1px solid rgba(114,157,62,.25);text-align:center}
.about-stats strong{display:block;font-size:1.8rem;color:#729d3e}
.about-stats span{font-size:.9rem}
@media(max-width:700px){.about-stats{grid-template-columns:repeat(2,1fr)}}


/* Über G.G. Statistik-Karten - zentriert und größer */
.about-stats{
    max-width:900px !important;
    margin:42px auto 0 !important;
    display:grid !important;
    grid-template-columns:repeat(3,1fr) !important;
    gap:22px !important;
    text-align:center !important;
    justify-content:center !important;
}

.about-stats div{
    padding:24px 18px !important;
    border-radius:20px !important;
}

.about-stats strong{
    display:block !important;
    font-size:3.4rem !important;
    line-height:1 !important;
    font-weight:900 !important;
    margin-bottom:10px !important;
    color:#729d3e !important;
}

.about-stats span{
    display:block !important;
    font-size:1rem !important;
    line-height:1.4 !important;
}

@media (max-width:768px){
    .about-stats{
        grid-template-columns:1fr !important;
        max-width:420px !important;
    }

    .about-stats strong{
        font-size:3rem !important;
    }
}


/* Über-G.G.-Layout: Bild höher, Stats links unter dem Bild */
.about-grid,
.expert-grid{
  align-items:start !important;
}

.about-visual,
.about-image,
.trainer-visual,
.image-card,
.about-photo{
  align-self:start !important;
  margin-top:-42px !important;
}

.about-visual img,
.about-image img,
.trainer-visual img,
.image-card img,
.about-photo img{
  display:block !important;
}

.about-stats{
  max-width:620px !important;
  margin:24px auto 0 !important;
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:16px !important;
  text-align:center !important;
  justify-content:center !important;
  grid-column:auto !important;
}

.about-stats div{
  padding:22px 14px !important;
  border-radius:20px !important;
}

.about-stats strong{
  display:block !important;
  font-size:3.05rem !important;
  line-height:1 !important;
  font-weight:900 !important;
  margin-bottom:10px !important;
  color:#729d3e !important;
}

.about-stats span{
  display:block !important;
  font-size:.98rem !important;
  line-height:1.35 !important;
}

/* Falls Stats versehentlich in der rechten Textspalte liegen: optisch links/zentriert halten */
.expert-copy .about-stats,
.about-content .about-stats,
.about-copy .about-stats{
  margin-left:auto !important;
  margin-right:auto !important;
}

/* Bild + Stats bilden links einen harmonischen Block */
.about-left,
.expert-visual,
.about-visual-wrap{
  align-self:start !important;
}

@media(max-width:980px){
  .about-visual,
  .about-image,
  .trainer-visual,
  .image-card,
  .about-photo{
    margin-top:0 !important;
  }

  .about-stats{
    max-width:100% !important;
    grid-template-columns:repeat(3, minmax(0,1fr)) !important;
  }
}

@media(max-width:640px){
  .about-stats{
    grid-template-columns:1fr !important;
    max-width:380px !important;
  }
  .about-stats strong{
    font-size:2.75rem !important;
  }
}

.team-card{margin-top:28px;padding:28px;border-radius:22px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12)}.team-card h3{margin-bottom:12px}.team-card ul{line-height:1.8}


/* Gleichwertiger Team-Bereich */
.team-section{
  position:relative;
}

.team-equal-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:26px;
  margin-top:34px;
  align-items:stretch;
}

.team-profile-card{
  padding:32px;
  border-radius:26px;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.11);
  box-shadow:0 18px 50px rgba(0,0,0,.18);
  display:flex;
  flex-direction:column;
  min-height:100%;
}

.team-profile-top{
  padding-bottom:20px;
  margin-bottom:20px;
  border-bottom:1px solid rgba(255,255,255,.10);
}

.team-profile-top h3{
  margin:0 0 8px;
  font-size:1.65rem;
  color:#fff;
}

.team-profile-top p{
  margin:0;
  color:#729d3e;
  font-weight:800;
  line-height:1.5;
}

.team-profile-card ul{
  margin:0;
  padding-left:20px;
  color:rgba(255,255,255,.74);
  line-height:1.8;
}

.team-profile-card li::marker{
  color:#729d3e;
}

.team-joint-note{
  max-width:980px;
  margin:28px auto 0;
  padding:22px 26px;
  border-radius:22px;
  background:rgba(114,157,62,.12);
  border:1px solid rgba(114,157,62,.30);
  text-align:center;
  color:rgba(255,255,255,.78);
  line-height:1.7;
}

.team-joint-note strong{
  color:#fff;
}

@media(max-width:850px){
  .team-equal-grid{
    grid-template-columns:1fr;
  }
}


/* === Team Showcase: zwei gleichwertige Profile mit Bild links und Text rechts === */
.team-showcase{
  position:relative;
}

.team-showcase-head{
  max-width:880px;
  margin:0 auto 34px;
  text-align:center;
}

.team-showcase-head h2{
  margin:8px 0 16px;
  font-size:clamp(2.2rem, 5vw, 4.6rem);
  line-height:.98;
}

.team-showcase-head p{
  margin:0 auto;
  max-width:760px;
  color:rgba(255,255,255,.76);
  line-height:1.7;
  font-size:1.05rem;
}

.team-profile-row{
  display:grid;
  grid-template-columns:minmax(280px, .95fr) minmax(320px, 1.25fr);
  gap:0;
  align-items:stretch;
  overflow:hidden;
  margin-top:18px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:24px;
  background:linear-gradient(90deg, rgba(114,157,62,.09), rgba(255,255,255,.045));
  box-shadow:0 22px 70px rgba(0,0,0,.24);
}

.team-profile-image{
  position:relative;
  min-height:330px;
  background:#0a1008;
  border-right:1px solid rgba(114,157,62,.55);
  overflow:hidden;
}

.team-profile-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  filter:saturate(.95) contrast(1.05) brightness(.78);
}

.team-profile-image::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 20% 30%, rgba(114,157,62,.22), transparent 34%),
    linear-gradient(90deg, rgba(0,0,0,.12), rgba(0,0,0,.48));
  pointer-events:none;
}

.team-profile-image-alt img{
  filter:saturate(.65) contrast(1.08) brightness(.52);
}

.team-image-note{
  position:absolute;
  left:22px;
  bottom:22px;
  z-index:2;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(114,157,62,.88);
  color:#111;
  font-weight:900;
  font-size:.9rem;
}

.team-profile-content{
  padding:42px 46px;
}

.team-kicker{
  display:block;
  color:#729d3e;
  text-transform:uppercase;
  letter-spacing:.22em;
  font-weight:900;
  font-size:.82rem;
  margin-bottom:16px;
}

.team-profile-content h3{
  margin:0 0 8px;
  color:#fff;
  font-size:clamp(2rem, 4vw, 3.35rem);
  line-height:1;
  letter-spacing:.01em;
}

.team-role{
  color:#8fbd4b !important;
  font-weight:900;
  margin:0 0 22px !important;
}

.team-profile-content p{
  color:rgba(255,255,255,.78);
  line-height:1.75;
  margin-bottom:24px;
}

.team-check-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:13px 24px;
}

.team-check-grid span{
  position:relative;
  display:block;
  padding-left:28px;
  color:rgba(255,255,255,.86);
  line-height:1.5;
}

.team-check-grid span::before{
  content:"✓";
  position:absolute;
  left:0;
  top:1px;
  width:17px;
  height:17px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#111;
  background:#729d3e;
  font-size:.72rem;
  font-weight:900;
}

.team-stats-bar{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:0;
  margin-top:18px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:22px;
  overflow:hidden;
  background:rgba(255,255,255,.045);
}

.team-stats-bar div{
  padding:24px 22px;
  text-align:center;
  border-right:1px solid rgba(255,255,255,.10);
}

.team-stats-bar div:last-child{
  border-right:0;
}

.team-stats-bar strong{
  display:block;
  color:#729d3e;
  font-size:2.35rem;
  line-height:1;
  font-weight:950;
  margin-bottom:8px;
}

.team-stats-bar span{
  display:block;
  color:rgba(255,255,255,.75);
  font-size:.92rem;
  line-height:1.35;
  text-transform:uppercase;
  letter-spacing:.04em;
  font-weight:800;
}

@media(max-width:980px){
  .team-profile-row{
    grid-template-columns:1fr;
  }
  .team-profile-image{
    border-right:0;
    border-bottom:1px solid rgba(114,157,62,.55);
    min-height:320px;
  }
  .team-check-grid{
    grid-template-columns:1fr;
  }
  .team-stats-bar{
    grid-template-columns:1fr 1fr;
  }
  .team-stats-bar div:nth-child(2){
    border-right:0;
  }
  .team-stats-bar div:nth-child(-n+2){
    border-bottom:1px solid rgba(255,255,255,.10);
  }
}

@media(max-width:600px){
  .team-profile-content{
    padding:30px 22px;
  }
  .team-profile-image{
    min-height:260px;
  }
  .team-stats-bar{
    grid-template-columns:1fr;
  }
  .team-stats-bar div{
    border-right:0;
    border-bottom:1px solid rgba(255,255,255,.10);
  }
  .team-stats-bar div:last-child{
    border-bottom:0;
  }
}


/* === Exaktes Team-Layout: 2 Reihen, Bild links, Text rechts === */
.team-two-rows-section{
  position:relative;
}

.team-two-head{
  max-width:880px;
  margin:0 auto 38px;
  text-align:center;
}

.team-two-head h2{
  margin:8px 0 16px;
  font-size:clamp(2.4rem, 5vw, 4.4rem);
  line-height:1;
}

.team-two-head p{
  max-width:760px;
  margin:0 auto;
  color:rgba(255,255,255,.76);
  line-height:1.7;
}

.team-two-row{
  display:grid !important;
  grid-template-columns:42% 58% !important;
  align-items:stretch !important;
  gap:0 !important;
  margin:18px 0 !important;
  overflow:hidden !important;
  border-radius:24px !important;
  border:1px solid rgba(255,255,255,.14) !important;
  background:linear-gradient(90deg, rgba(114,157,62,.08), rgba(255,255,255,.045)) !important;
  box-shadow:0 22px 70px rgba(0,0,0,.24) !important;
}

.team-two-image{
  min-height:330px !important;
  position:relative !important;
  overflow:hidden !important;
  background:#071006 !important;
  border-right:1px solid rgba(114,157,62,.55) !important;
}

.team-two-image img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
  filter: saturate(.98) contrast(1.02) brightness(.94) !important;
}

.team-two-image::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:
    radial-gradient(circle at 24% 30%, rgba(114,157,62,.13), transparent 36%),
    linear-gradient(90deg, rgba(0,0,0,.02), rgba(0,0,0,.12)) !important;
  pointer-events:none !important;
}

.team-two-image-hamid img{
  transform:scaleX(-1) !important;
  filter: saturate(.94) contrast(1.03) brightness(.90) !important;
}

.team-two-content{
  padding:42px 48px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
}

.team-two-kicker{
  color:#729d3e !important;
  text-transform:uppercase !important;
  letter-spacing:.22em !important;
  font-weight:900 !important;
  font-size:.82rem !important;
  margin-bottom:14px !important;
}

.team-two-content h3{
  margin:0 0 8px !important;
  color:#fff !important;
  font-size:clamp(2.2rem, 4vw, 3.55rem) !important;
  line-height:1 !important;
}

.team-two-role{
  margin:0 0 22px !important;
  color:#8fbd4b !important;
  font-weight:900 !important;
  line-height:1.45 !important;
}

.team-two-content p{
  color:rgba(255,255,255,.78) !important;
  line-height:1.75 !important;
  margin-bottom:24px !important;
}

.team-two-list{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:13px 26px !important;
}

.team-two-list span{
  position:relative !important;
  display:block !important;
  padding-left:28px !important;
  color:rgba(255,255,255,.86) !important;
  line-height:1.5 !important;
}

.team-two-list span::before{
  content:"✓" !important;
  position:absolute !important;
  left:0 !important;
  top:2px !important;
  width:17px !important;
  height:17px !important;
  border-radius:50% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#729d3e !important;
  color:#111 !important;
  font-size:.72rem !important;
  font-weight:900 !important;
}

@media(max-width:980px){
  .team-two-row{
    grid-template-columns:1fr !important;
  }
  .team-two-image{
    min-height:320px !important;
    border-right:0 !important;
    border-bottom:1px solid rgba(114,157,62,.55) !important;
  }
  .team-two-list{
    grid-template-columns:1fr !important;
  }
}

@media(max-width:600px){
  .team-two-content{
    padding:30px 22px !important;
  }
  .team-two-image{
    min-height:260px !important;
  }
}


/* SEO Trust-Signale */
.trust-strip{
  padding:22px 0;
  background:rgba(255,255,255,.035);
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.trust-strip-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.trust-strip-grid div{
  padding:18px;
  border-radius:18px;
  background:rgba(114,157,62,.10);
  border:1px solid rgba(114,157,62,.22);
  text-align:center;
}
.trust-strip-grid strong{
  display:block;
  color:#729d3e;
  font-size:1.25rem;
  font-weight:900;
  margin-bottom:6px;
}
.trust-strip-grid span{
  display:block;
  color:rgba(255,255,255,.72);
  font-size:.92rem;
  line-height:1.45;
}
@media(max-width:900px){
  .trust-strip-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:520px){
  .trust-strip-grid{grid-template-columns:1fr}
}


/* Referenzen / Trust-Signale */
.references-section{
  position:relative;
  padding-top:54px;
  padding-bottom:54px;
  background:rgba(255,255,255,.025);
  border-top:1px solid rgba(255,255,255,.07);
  border-bottom:1px solid rgba(255,255,255,.07);
}
.references-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  margin-top:28px;
}
.reference-card{
  padding:24px;
  border-radius:22px;
  background:rgba(114,157,62,.10);
  border:1px solid rgba(114,157,62,.28);
  box-shadow:0 14px 40px rgba(0,0,0,.16);
}
.reference-card strong{
  display:block;
  color:#729d3e;
  font-size:1.8rem;
  line-height:1;
  font-weight:950;
  margin-bottom:14px;
}
.reference-card h3{
  margin:0 0 10px;
  color:#fff;
  font-size:1.08rem;
}
.reference-card p{
  margin:0;
  color:rgba(255,255,255,.72);
  line-height:1.6;
  font-size:.94rem;
}
@media(max-width:1000px){
  .references-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:560px){
  .references-grid{grid-template-columns:1fr}
}


/* Kompakter Trust-/Referenzen-Bereich */
.compact-references{
  padding:42px 0 !important;
  background:rgba(255,255,255,.025) !important;
}

.compact-ref-head{
  max-width:820px !important;
  margin:0 auto 24px !important;
  text-align:center !important;
}

.compact-ref-head h2{
  margin:8px 0 10px !important;
  font-size:clamp(2rem, 3.6vw, 3.4rem) !important;
  line-height:1.05 !important;
}

.compact-ref-head p{
  margin:0 auto !important;
  max-width:680px !important;
  color:rgba(255,255,255,.68) !important;
  font-size:1rem !important;
  line-height:1.55 !important;
}

.compact-reference-grid{
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0,1fr)) !important;
  gap:14px !important;
  margin-top:24px !important;
}

.compact-reference-card{
  padding:20px 18px !important;
  min-height:auto !important;
  border-radius:18px !important;
  background:rgba(114,157,62,.09) !important;
  border:1px solid rgba(114,157,62,.24) !important;
  box-shadow:none !important;
  text-align:left !important;
}

.compact-reference-card strong{
  display:block !important;
  color:#729d3e !important;
  font-size:1.45rem !important;
  line-height:1.1 !important;
  font-weight:900 !important;
  margin:0 0 8px !important;
}

.compact-reference-card span{
  display:block !important;
  color:rgba(255,255,255,.72) !important;
  font-size:.92rem !important;
  line-height:1.45 !important;
}

/* alte große Reference-Styles überschreiben */
.references-section .section-head h2,
.references-section h2{
  font-size:clamp(2rem, 3.6vw, 3.4rem) !important;
}

.reference-card{
  padding:20px 18px !important;
}

.reference-card strong{
  font-size:1.45rem !important;
}

@media(max-width:1000px){
  .compact-reference-grid{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  }
}

@media(max-width:560px){
  .compact-reference-grid{
    grid-template-columns:1fr !important;
  }

  .compact-references{
    padding:34px 0 !important;
  }
}


/* Premium SEO Trust-Badges */
.hero-trust-badges{
  padding:18px 0;
  border-top:1px solid rgba(255,255,255,.07);
  border-bottom:1px solid rgba(255,255,255,.07);
  background:rgba(255,255,255,.025);
}
.hero-trust-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.hero-trust-grid span{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(114,157,62,.10);
  border:1px solid rgba(114,157,62,.24);
  color:rgba(255,255,255,.82);
  font-weight:800;
  font-size:.92rem;
  text-align:center;
}
.trust-mini-section{
  padding-top:42px;
  padding-bottom:42px;
}
.trust-mini-card{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:28px;
  align-items:center;
  padding:28px;
  border-radius:24px;
  background:rgba(114,157,62,.09);
  border:1px solid rgba(114,157,62,.24);
}
.trust-mini-card h2{
  margin:8px 0 0;
  font-size:clamp(1.8rem,3.2vw,3rem);
  line-height:1.05;
}
.trust-mini-card ul{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px 18px;
  margin:0;
  padding:0;
  list-style:none;
}
.trust-mini-card li{
  position:relative;
  padding-left:26px;
  color:rgba(255,255,255,.80);
  line-height:1.45;
  font-weight:700;
}
.trust-mini-card li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:1px;
  width:17px;
  height:17px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#729d3e;
  color:#111;
  font-weight:900;
  font-size:.72rem;
}
.faq-section{
  padding-top:60px;
  padding-bottom:60px;
}
.faq-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin-top:28px;
}
.faq-item{
  border-radius:18px;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.10);
  overflow:hidden;
}
.faq-item summary{
  cursor:pointer;
  padding:18px 20px;
  color:#fff;
  font-weight:900;
}
.faq-item p{
  margin:0;
  padding:0 20px 20px;
  color:rgba(255,255,255,.72);
  line-height:1.65;
}
.references-section,
.trust-strip{
  display:none !important;
}
@media(max-width:900px){
  .hero-trust-grid{grid-template-columns:repeat(2,1fr)}
  .trust-mini-card{grid-template-columns:1fr}
  .faq-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
  .hero-trust-grid{grid-template-columns:1fr}
  .trust-mini-card ul{grid-template-columns:1fr}
}


/* Referenzen & Ergebnisse – SEO sichtbar, optisch dezent */
.seo-references-section{
  padding:44px 0 !important;
  background:transparent !important;
}

.seo-ref-head{
  max-width:760px !important;
  margin:0 auto 24px !important;
  text-align:center !important;
}

.seo-ref-head h2{
  font-size:clamp(1.8rem, 3.4vw, 3rem) !important;
  line-height:1.08 !important;
  margin:8px 0 10px !important;
}

.seo-ref-head p{
  color:rgba(255,255,255,.68) !important;
  font-size:1rem !important;
  line-height:1.6 !important;
}

.seo-references-grid{
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  gap:14px !important;
}

.seo-reference-card{
  padding:20px 18px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.045) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  box-shadow:none !important;
}

.seo-ref-label{
  display:inline-flex !important;
  margin-bottom:12px !important;
  padding:5px 10px !important;
  border-radius:999px !important;
  background:rgba(114,157,62,.13) !important;
  border:1px solid rgba(114,157,62,.26) !important;
  color:#729d3e !important;
  font-size:.72rem !important;
  text-transform:uppercase !important;
  letter-spacing:.08em !important;
  font-weight:900 !important;
}

.seo-reference-card strong{
  display:block !important;
  color:#fff !important;
  font-size:1.02rem !important;
  line-height:1.35 !important;
  margin-bottom:8px !important;
}

.seo-reference-card p{
  margin:0 !important;
  color:rgba(255,255,255,.64) !important;
  line-height:1.55 !important;
  font-size:.9rem !important;
}

@media(max-width:1000px){
  .seo-references-grid{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  }
}

@media(max-width:560px){
  .seo-references-grid{
    grid-template-columns:1fr !important;
  }
}


/* Galerie mit austauschbaren Bild-Platzhaltern */
.gallery-section{
  position:relative;
  padding-top:76px;
  padding-bottom:76px;
}

.gallery-head{
  max-width:1050px;
  margin-bottom:34px;
}

.gallery-head h2{
  margin:8px 0 14px;
  font-size:clamp(2.6rem, 6vw, 5.7rem);
  line-height:.98;
  letter-spacing:-.055em;
}

.gallery-head p{
  margin:0;
  color:rgba(255,255,255,.68);
  font-size:1.15rem;
  line-height:1.6;
}

.gallery-placeholder-grid{
  display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:22px;
}

.gallery-placeholder-card{
  margin:0;
  min-height:340px;
  border-radius:24px;
  overflow:hidden;
  border:1px solid rgba(114,157,62,.28);
  background:
    radial-gradient(circle at 30% 20%, rgba(114,157,62,.13), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.025));
  box-shadow:0 18px 54px rgba(0,0,0,.22);
}

.gallery-placeholder-inner{
  width:100%;
  height:100%;
  min-height:340px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:18px;
  color:rgba(255,255,255,.72);
  background:linear-gradient(180deg, rgba(0,0,0,.10), rgba(0,0,0,.34));
}

.gallery-placeholder-inner svg{
  width:52px;
  height:52px;
  fill:currentColor;
  opacity:.62;
}

.gallery-placeholder-inner span{
  font-size:1.05rem;
  font-weight:800;
}

.gallery-note{
  width:max-content;
  margin:34px auto 0;
  min-height:56px;
  padding:0 30px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:16px;
  border-radius:999px;
  border:1px solid rgba(114,157,62,.55);
  color:#9fcd68;
  font-weight:800;
  background:rgba(0,0,0,.20);
}

@media(max-width:1180px){
  .gallery-placeholder-grid{
    grid-template-columns:repeat(3, minmax(0,1fr));
  }
}

@media(max-width:760px){
  .gallery-placeholder-grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:16px;
  }
  .gallery-placeholder-card,
  .gallery-placeholder-inner{
    min-height:260px;
  }
}

@media(max-width:480px){
  .gallery-placeholder-grid{
    grid-template-columns:1fr;
  }
}


/* Galerie: 3 größere Bilder pro Reihe */
.gallery-placeholder-grid{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:24px !important;
}

.gallery-placeholder-card{
  min-height:390px !important;
}

.gallery-placeholder-inner{
  min-height:390px !important;
}

@media(max-width:980px){
  .gallery-placeholder-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }

  .gallery-placeholder-card,
  .gallery-placeholder-inner{
    min-height:320px !important;
  }
}

@media(max-width:560px){
  .gallery-placeholder-grid{
    grid-template-columns:1fr !important;
  }

  .gallery-placeholder-card,
  .gallery-placeholder-inner{
    min-height:280px !important;
  }
}


/* Galerie mit austauschbaren PNG-Bildern */
.gallery-image-card{
  position:relative !important;
  background:#0b1008 !important;
}

.gallery-image-card img{
  width:100% !important;
  height:100% !important;
  min-height:390px !important;
  object-fit:cover !important;
  display:block !important;
  filter:saturate(.9) contrast(1.04) brightness(.82) !important;
}

.gallery-image-card::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:linear-gradient(180deg, rgba(0,0,0,.02), rgba(0,0,0,.42)) !important;
  pointer-events:none !important;
}

.gallery-image-card figcaption{
  position:absolute !important;
  left:24px !important;
  bottom:24px !important;
  z-index:2 !important;
  display:inline-flex !important;
  align-items:center !important;
  min-height:42px !important;
  padding:0 18px !important;
  border-radius:999px !important;
  background:#729d3e !important;
  color:#111 !important;
  font-weight:900 !important;
  font-size:.98rem !important;
}

@media(max-width:980px){
  .gallery-image-card img{
    min-height:320px !important;
  }
}

@media(max-width:560px){
  .gallery-image-card img{
    min-height:280px !important;
  }
}


/* Finaler kompakter CTA mit großem Teamfoto */
.cta-final-panel{
  display:grid !important;
  grid-template-columns:340px minmax(0,1fr) auto !important;
  gap:34px !important;
  align-items:center !important;
  padding:34px 42px !important;
  border-radius:34px !important;
  background:linear-gradient(135deg,#b7d98b 0%,#93c35b 50%,#7aaa42 100%) !important;
  color:#071007 !important;
  box-shadow:0 24px 70px rgba(0,0,0,.24) !important;
  overflow:hidden !important;
}

.cta-final-photo{
  width:340px !important;
  height:340px !important;
  border-radius:28px !important;
  overflow:hidden !important;
  background:rgba(255,255,255,.18) !important;
  border:1px solid rgba(0,0,0,.12) !important;
  box-shadow:0 18px 44px rgba(0,0,0,.18) !important;
  flex:0 0 auto !important;
}

.cta-final-photo img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
}

.cta-final-copy{
  min-width:0 !important;
}

.cta-final-copy .eyebrow{
  color:rgba(7,16,7,.70) !important;
  margin-bottom:8px !important;
}

.cta-final-copy h2{
  margin:6px 0 14px !important;
  color:#050805 !important;
  font-size:clamp(2.6rem,4.8vw,4.9rem) !important;
  line-height:.95 !important;
  letter-spacing:-.055em !important;
}

.cta-final-copy p{
  margin:0 !important;
  max-width:760px !important;
  color:rgba(5,8,5,.82) !important;
  font-size:1.05rem !important;
  line-height:1.55 !important;
  font-weight:800 !important;
}

.cta-final-benefits{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  margin-top:18px !important;
}

.cta-final-benefits span{
  min-height:38px !important;
  display:inline-flex !important;
  align-items:center !important;
  padding:0 14px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.32) !important;
  color:#061006 !important;
  font-size:.9rem !important;
  font-weight:900 !important;
}

.cta-final-button{
  min-height:64px !important;
  padding:0 30px !important;
  border-radius:999px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#050805 !important;
  color:#fff !important;
  text-decoration:none !important;
  font-weight:900 !important;
  white-space:nowrap !important;
  box-shadow:0 16px 40px rgba(0,0,0,.22) !important;
}

@media(max-width:1100px){
  .cta-final-panel{
    grid-template-columns:300px 1fr !important;
    padding:32px !important;
  }
  .cta-final-photo{
    width:300px !important;
    height:300px !important;
  }
  .cta-final-button{
    grid-column:2 !important;
    justify-self:start !important;
  }
}

@media(max-width:780px){
  .cta-final-panel{
    grid-template-columns:1fr !important;
    gap:24px !important;
    padding:28px !important;
  }
  .cta-final-photo{
    width:100% !important;
    height:auto !important;
    aspect-ratio:16/10 !important;
  }
  .cta-final-button{
    grid-column:auto !important;
    width:100% !important;
  }
}


/* Kursablauf, Module und Preisübersicht */
.course-flow-section{position:relative;padding-top:78px;padding-bottom:78px;}
.course-flow-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:32px 0 28px;}
.course-flow-meta div{padding:22px;border-radius:20px;background:rgba(114,157,62,.10);border:1px solid rgba(114,157,62,.26);text-align:center;}
.course-flow-meta strong{display:block;color:#729d3e;font-size:2rem;line-height:1;font-weight:950;margin-bottom:8px;}
.course-flow-meta span{color:rgba(255,255,255,.74);font-weight:800;}
.course-module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:30px;}
.course-module-card{padding:28px;border-radius:24px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.10);box-shadow:0 18px 52px rgba(0,0,0,.18);}
.course-module-label{display:inline-flex;margin-bottom:14px;padding:7px 12px;border-radius:999px;background:#729d3e;color:#111;font-weight:950;font-size:.82rem;}
.course-module-card h3{margin:0 0 8px;color:#fff;font-size:1.45rem;}
.course-focus{margin:0 0 18px !important;color:#9fcd68 !important;font-weight:900;line-height:1.45;}
.course-module-card ul{margin:0;padding-left:20px;color:rgba(255,255,255,.74);line-height:1.65;}
.course-module-card li{margin-bottom:8px;}
.course-result-card{margin-top:26px;padding:30px;border-radius:24px;display:grid;grid-template-columns:.7fr 1.3fr;gap:26px;align-items:center;background:linear-gradient(135deg,rgba(114,157,62,.14),rgba(255,255,255,.045));border:1px solid rgba(114,157,62,.26);}
.course-result-card h3{margin:8px 0 0;color:#fff;font-size:2rem;}
.course-result-card p{margin:0;color:rgba(255,255,255,.76);line-height:1.75;}
.price-section{margin-top:28px;padding:30px;border-radius:26px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.10);}
.price-head{max-width:760px;margin-bottom:22px;}
.price-head h3{margin:8px 0 10px;color:#fff;font-size:2rem;}
.price-head p{margin:0;color:rgba(255,255,255,.72);line-height:1.6;}
.price-table-wrap{overflow-x:auto;}
.price-table{width:100%;border-collapse:collapse;min-width:720px;color:rgba(255,255,255,.82);}
.price-table th,.price-table td{padding:17px 18px;border-bottom:1px solid rgba(255,255,255,.10);text-align:left;}
.price-table th{color:#9fcd68;font-size:.86rem;text-transform:uppercase;letter-spacing:.08em;}
.price-table td{font-weight:750;}
.course-consultation{margin-top:28px;padding:28px;border-radius:26px;background:linear-gradient(135deg,#b7d98b 0%,#8fbd4b 100%);color:#061006;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;}
.course-consultation h3{margin:0 0 8px;color:#061006;font-size:2rem;}
.course-consultation p{margin:0;color:rgba(6,16,6,.80);font-weight:800;line-height:1.6;}
.course-consultation .btn{background:#050805 !important;color:#fff !important;white-space:nowrap;}
@media(max-width:1050px){.course-module-grid{grid-template-columns:1fr;}.course-result-card,.course-consultation{grid-template-columns:1fr;}.course-consultation .btn{justify-self:start;}}
@media(max-width:720px){.course-flow-meta{grid-template-columns:1fr;}.course-module-card,.price-section,.course-result-card,.course-consultation{padding:24px;}.price-table{min-width:650px;}}


/* === Angebote ohne Bilder: moderne Premium-Karten === */
.offer-cards-modern{
  align-items:stretch;
}

.offer-card-modern{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:500px;
  padding:30px !important;
  display:flex;
  flex-direction:column;
  border-radius:30px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.052), rgba(255,255,255,.022)) !important;
}

.offer-card-modern::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  opacity:.92;
  pointer-events:none;
}

.offer-card-modern::after{
  content:"";
  position:absolute;
  width:260px;
  height:260px;
  right:-110px;
  top:-120px;
  z-index:-1;
  border-radius:50%;
  background:rgba(114,157,62,.13);
  filter:blur(8px);
  pointer-events:none;
  transition:transform .35s ease, opacity .35s ease;
}

.offer-card-modern:hover::after{
  transform:scale(1.18);
  opacity:1;
}

.offer-women::before{
  background:
    radial-gradient(circle at 14% 5%, rgba(114,157,62,.18), transparent 34%),
    linear-gradient(145deg, rgba(114,157,62,.04), transparent 58%);
}

.offer-kids::before{
  background:
    radial-gradient(circle at 14% 5%, rgba(151,194,91,.16), transparent 34%),
    linear-gradient(145deg, rgba(151,194,91,.035), transparent 58%);
}

.offer-groups::before{
  background:
    radial-gradient(circle at 14% 5%, rgba(105,146,64,.18), transparent 34%),
    linear-gradient(145deg, rgba(105,146,64,.04), transparent 58%);
}

.offer-card-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:30px;
}

.offer-icon{
  width:88px;
  height:88px;
  display:grid;
  place-items:center;
  border-radius:25px;
  color:var(--primary2);
  background:
    linear-gradient(145deg, rgba(114,157,62,.20), rgba(114,157,62,.075));
  border:1px solid rgba(114,157,62,.32);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 18px 42px rgba(0,0,0,.18);
}

.offer-icon svg{
  width:50px;
  height:50px;
  stroke:currentColor;
  stroke-width:3.4;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.offer-index{
  color:rgba(255,255,255,.10);
  font-size:4.3rem;
  line-height:.9;
  font-weight:950;
  letter-spacing:-.07em;
}

.offer-card-modern .tag{
  width:max-content;
  max-width:100%;
  margin-bottom:20px;
}

.offer-card-modern h3{
  margin:0 0 18px;
  max-width:90%;
  color:#fff;
  font-size:clamp(1.7rem, 2.25vw, 2.45rem);
  line-height:1.05;
  letter-spacing:-.035em;
}

.offer-card-modern > p{
  margin:0;
  color:rgba(255,255,255,.68);
  font-size:1.04rem;
  line-height:1.7;
}

.offer-mini-points{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin:24px 0 28px;
}

.offer-mini-points span{
  min-height:34px;
  padding:0 12px;
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  color:rgba(255,255,255,.78);
  background:rgba(255,255,255,.052);
  border:1px solid rgba(255,255,255,.10);
  font-size:.82rem;
  font-weight:800;
}

.offer-modern-link{
  margin-top:auto;
  padding-top:18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  border-top:1px solid rgba(255,255,255,.10);
  color:var(--primary2) !important;
  font-size:1.02rem;
  font-weight:950 !important;
}

.offer-modern-link span{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border-radius:50%;
  background:rgba(114,157,62,.14);
  border:1px solid rgba(114,157,62,.28);
  transition:transform .25s ease, background .25s ease;
}

.offer-card-modern:hover .offer-modern-link span{
  transform:translateX(4px);
  background:var(--primary);
  color:#0b1108;
}

@media(max-width:900px){
  .offer-card-modern{
    min-height:440px;
  }
}

@media(max-width:620px){
  .offer-card-modern{
    min-height:auto;
    padding:24px !important;
  }

  .offer-icon{
    width:74px;
    height:74px;
    border-radius:22px;
  }

  .offer-icon svg{
    width:42px;
    height:42px;
  }

  .offer-index{
    font-size:3.5rem;
  }
}


/* Rechtstexte 2026 */
.legal-alert{
  margin:0 0 32px;
  padding:18px 20px;
  border-radius:16px;
  background:rgba(185,126,33,.13);
  border:1px solid rgba(220,157,51,.42);
  color:rgba(255,255,255,.88);
  line-height:1.6;
}
.legal-alert strong{
  color:#f0be66;
}
.legal-card h2{
  scroll-margin-top:120px;
}
.legal-updated{
  margin-top:34px !important;
  padding-top:20px;
  border-top:1px solid rgba(255,255,255,.1);
  color:rgba(255,255,255,.55) !important;
}
.optional-note{
  color:rgba(255,255,255,.54);
  font-size:.82em;
  font-weight:600;
}


/* Weiße Social-Icons im Footer */
.social-icon-link img{
  width: 22px;
  height: 22px;
  display: block;
}


/* Team-Bilder heller und natürlicher */
.team-two-image img{
  filter:saturate(.98) contrast(1.02) brightness(.94) !important;
}

.team-two-image-hamid img{
  filter:saturate(.94) contrast(1.03) brightness(.90) !important;
}

.team-two-image::after{
  background:
    radial-gradient(circle at 24% 30%, rgba(114,157,62,.13), transparent 36%),
    linear-gradient(90deg, rgba(0,0,0,.02), rgba(0,0,0,.12)) !important;
}

.btn-event{display:inline-flex;padding:16px 26px;border-radius:999px;background:linear-gradient(135deg,#ffb400,#ff7a00);color:#111!important;font-weight:900;animation:eventPulse 1.5s infinite}
.tod-floating{position:fixed;right:18px;bottom:20px;z-index:9999;padding:16px 22px;border-radius:999px;background:linear-gradient(135deg,#ffb400,#ff7a00);color:#111!important;text-decoration:none;font-weight:900;box-shadow:0 15px 40px rgba(255,122,0,.5);animation:eventPulse 1.5s infinite}
@keyframes eventPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.06)}}



/* Event-Popup: Tag der offenen Tür */
body.event-popup-open{
  overflow:hidden;
}

.tod-floating{
  position:fixed;
  right:18px;
  bottom:20px;
  z-index:9997;
  min-height:62px;
  padding:8px 18px 8px 10px;
  display:flex;
  align-items:center;
  gap:11px;
  border-radius:999px;
  background:linear-gradient(135deg,#b9df84,#79aa3d);
  color:#071007!important;
  text-decoration:none;
  border:1px solid rgba(255,255,255,.32);
  box-shadow:0 20px 54px rgba(0,0,0,.42);
  animation:eventButtonPulse 1.9s ease-in-out infinite;
}

.tod-floating::after{
  content:"Aktionstag";
  position:absolute;
  top:-10px;
  right:14px;
  padding:4px 9px;
  border-radius:999px;
  background:#d83b32;
  color:#fff;
  font-size:.64rem;
  line-height:1;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.06em;
  box-shadow:0 8px 18px rgba(0,0,0,.26);
}

.tod-floating span{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#071007;
  color:#fff;
  font-size:.72rem;
  font-weight:950;
}

.tod-floating span b,
.tod-floating span small{
  display:block;
  line-height:1;
}

.tod-floating span b{
  align-self:end;
  font-size:.9rem;
}

.tod-floating span small{
  align-self:start;
  margin-top:2px;
  color:#b9df84;
  font-size:.48rem;
  letter-spacing:.08em;
}

.tod-floating strong{
  white-space:nowrap;
  font-size:.91rem;
  font-weight:950;
}

.event-popup{
  position:fixed;
  inset:0;
  z-index:10050;
  display:grid;
  place-items:center;
  padding:22px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .28s ease, visibility .28s ease;
}

.event-popup.is-open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}

.event-popup-backdrop{
  position:absolute;
  inset:0;
  background:rgba(2,6,3,.82);
  backdrop-filter:blur(12px);
}

.event-popup-dialog{
  position:relative;
  z-index:1;
  width:min(820px,100%);
  max-height:min(88vh,900px);
  overflow:auto;
  padding:34px;
  border-radius:34px;
  background:
    radial-gradient(circle at 8% 5%,rgba(114,157,62,.19),transparent 31%),
    linear-gradient(145deg,#121b13,#080d09);
  color:#fff;
  border:1px solid rgba(146,198,83,.28);
  box-shadow:0 38px 110px rgba(0,0,0,.64);
  transform:translateY(20px) scale(.97);
  transition:transform .32s ease;
}

.event-popup.is-open .event-popup-dialog{
  transform:translateY(0) scale(1);
}

.event-popup-close{
  position:absolute;
  top:16px;
  right:16px;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.12);
  border-radius:50%;
  background:rgba(255,255,255,.08);
  color:#fff;
  cursor:pointer;
  font-size:1.65rem;
  line-height:1;
}

.event-popup-logos{
  min-height:86px;
  padding:14px 58px 14px 16px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  border-radius:22px;
  background:#fff;
}

.event-popup-brand{
  display:flex;
  flex-direction:column;
  color:#0a120b;
  line-height:1;
}

.event-popup-brand span{
  font-size:2rem;
  font-weight:950;
  letter-spacing:-.07em;
}

.event-popup-brand small{
  margin-top:5px;
  font-size:.68rem;
  font-weight:850;
}

.event-popup-partner-symbol{
  color:#6d7e70;
  font-size:1.55rem;
  font-weight:900;
}

.event-popup-logos img{
  display:block;
  width:auto;
  max-width:240px;
  max-height:62px;
  object-fit:contain;
}

.event-popup-datebar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:18px 0 22px;
  padding:13px 16px;
  border-radius:18px;
  background:linear-gradient(135deg,#b9df84,#82b646);
  color:#071007;
}

.event-popup-datebar span,
.event-popup-datebar strong{
  font-weight:950;
}

.event-popup-kicker{
  display:inline-flex;
  padding:7px 11px;
  border-radius:999px;
  background:rgba(147,197,86,.13);
  border:1px solid rgba(147,197,86,.27);
  color:#b9df84;
  font-size:.72rem;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.09em;
}

.event-popup h2{
  margin:12px 0 18px;
  font-size:clamp(2.1rem,5vw,4.6rem);
  line-height:.94;
  letter-spacing:-.055em;
}

.event-popup p{
  color:rgba(255,255,255,.74);
  line-height:1.68;
}

.event-popup p strong{
  color:#fff;
}

.event-popup-offer{
  margin:22px 0;
  padding:20px;
  border-radius:22px;
  background:linear-gradient(135deg,#b9df84,#82b646);
  color:#071007;
}

.event-popup-offer span{
  display:block;
  font-size:.73rem;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.event-popup-offer strong{
  display:block;
  margin:5px 0;
  font-size:2rem;
  line-height:1;
}

.event-popup-offer p{
  margin:0;
  color:rgba(7,16,7,.78);
  font-weight:800;
}

.event-popup-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:24px;
}

@keyframes eventButtonPulse{
  0%,100%{
    transform:scale(1);
    box-shadow:0 20px 54px rgba(0,0,0,.42),0 0 0 0 rgba(158,214,91,.46);
  }
  50%{
    transform:scale(1.045);
    box-shadow:0 24px 62px rgba(0,0,0,.46),0 0 0 12px rgba(158,214,91,0);
  }
}

@media(max-width:650px){
  .event-popup{
    padding:12px;
  }

  .event-popup-dialog{
    max-height:92vh;
    padding:24px 20px;
    border-radius:26px;
  }

  .event-popup-logos{
    flex-direction:column;
    gap:8px;
    padding:18px 52px 18px 16px;
  }

  .event-popup-partner-symbol{
    line-height:1;
  }

  .event-popup-datebar{
    align-items:flex-start;
    flex-direction:column;
    gap:3px;
  }

  .event-popup h2{
    font-size:2.35rem;
  }

  .tod-floating{
    right:12px;
    bottom:14px;
  }
}

@media(prefers-reduced-motion:reduce){
  .tod-floating{
    animation:none;
  }

  .event-popup,
  .event-popup-dialog{
    transition:none;
  }
}


/* Popup-Klick-Fallback */
.event-popup:target{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}

.event-popup:target .event-popup-dialog{
  transform:translateY(0) scale(1);
}


/* Partnerlogos im Event-Popup */
.event-popup-logos.event-popup-logos-transparent{
  min-height:0;
  padding:8px 54px 18px 0;
  display:grid;
  grid-template-columns:minmax(180px,1fr) auto minmax(220px,1fr);
  align-items:center;
  gap:24px;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
}

.event-popup-logo{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
  background:transparent !important;
  box-shadow:none !important;
}

.event-popup-logo-gg{
  max-width:260px;
  max-height:110px;
  justify-self:start;
}

.event-popup-logo-ladies{
  max-width:330px;
  max-height:92px;
  justify-self:end;
}

.event-popup-partner{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
  min-width:92px;
  color:rgba(255,255,255,.72);
}

.event-popup-partner span{
  font-size:2.1rem;
  line-height:1;
  font-weight:300;
  color:#b9df84;
}

.event-popup-partner small{
  font-size:.66rem;
  line-height:1.2;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-weight:800;
  text-align:center;
}

@media(max-width:700px){
  .event-popup-logos.event-popup-logos-transparent{
    grid-template-columns:1fr;
    gap:14px;
    padding:8px 44px 16px 0;
  }

  .event-popup-logo-gg,
  .event-popup-logo-ladies{
    justify-self:center;
    max-width:250px;
    max-height:82px;
  }

  .event-popup-partner{
    min-width:0;
  }

  .event-popup-partner span{
    transform:rotate(90deg);
  }
}


/* Event-Popup: professionelles Co-Branding */
.event-popup{
  padding:24px;
}

.event-popup-backdrop{
  background:rgba(2,5,3,.86);
  backdrop-filter:blur(16px);
}

.event-popup-dialog{
  width:min(920px,100%);
  max-height:min(92vh,880px);
  padding:0;
  overflow:auto;
  overscroll-behavior:contain;
  border:1px solid rgba(255,255,255,.12);
  border-radius:32px;
  background:
    radial-gradient(circle at 82% 14%,rgba(210,222,0,.08),transparent 26%),
    radial-gradient(circle at 8% 2%,rgba(114,157,62,.18),transparent 30%),
    linear-gradient(145deg,#111712,#080b09 72%);
  box-shadow:0 40px 120px rgba(0,0,0,.72);
  scrollbar-width:thin;
  scrollbar-color:rgba(185,223,132,.4) transparent;
}

.event-popup-dialog::before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:3px;
  border-radius:32px 32px 0 0;
  background:linear-gradient(90deg,#729d3e 0 48%,#d2de00 52% 100%);
}

.event-popup-close{
  top:18px;
  right:18px;
  z-index:3;
  width:40px;
  height:40px;
  border-color:rgba(255,255,255,.14);
  background:rgba(7,11,8,.78);
  color:rgba(255,255,255,.82);
  font-size:1.45rem;
  transition:background .2s ease,color .2s ease,transform .2s ease;
}

.event-popup-close:hover,
.event-popup-close:focus-visible{
  background:#fff;
  color:#0a0d0a;
  transform:rotate(5deg);
}

.event-popup-meta{
  min-height:78px;
  padding:18px 76px 18px 32px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  border-bottom:1px solid rgba(255,255,255,.09);
  color:#dce7d6;
}

.event-popup-date{
  display:flex;
  align-items:center;
  gap:12px;
}

.event-popup-date span,
.event-popup-date strong,
.event-popup-location{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  font-size:.82rem;
  line-height:1;
  letter-spacing:.025em;
}

.event-popup-date span,
.event-popup-location{
  font-weight:800;
}

.event-popup-date span::before{
  content:"";
  width:8px;
  height:8px;
  margin-right:10px;
  border-radius:50%;
  background:#d2de00;
  box-shadow:0 0 0 5px rgba(210,222,0,.1);
}

.event-popup-date strong{
  padding:0 13px;
  border:1px solid rgba(185,223,132,.28);
  border-radius:999px;
  background:rgba(114,157,62,.12);
  color:#c9e7a5;
  font-weight:900;
}

.event-popup-location{
  color:rgba(255,255,255,.68);
  white-space:nowrap;
}

.event-popup-location::before{
  content:"";
  width:10px;
  height:10px;
  margin:-4px 11px 0 2px;
  flex:0 0 auto;
  border:2px solid #d2de00;
  border-radius:50% 50% 50% 0;
  transform:rotate(-45deg);
}

.event-popup-logos{
  min-height:132px;
  padding:22px 32px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 104px minmax(0,1.25fr);
  align-items:center;
  gap:20px;
  border-radius:0;
  border-bottom:1px solid rgba(255,255,255,.09);
  background:rgba(255,255,255,.018);
}

.event-popup-logo-wrap{
  min-width:0;
  height:84px;
  display:flex;
  align-items:center;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:rgba(255,255,255,.025);
  text-decoration:none;
}

.event-popup-logo-wrap-gg{
  justify-content:flex-start;
  padding:10px 18px;
}

.event-popup-logo-wrap-ladies{
  justify-content:center;
  flex-direction:column;
  gap:7px;
  padding:14px 22px;
  transition:transform .2s ease,border-color .2s ease,background .2s ease;
}

.event-popup-logo-wrap-ladies:hover,
.event-popup-logo-wrap-ladies:focus-visible{
  transform:translateY(-2px);
  border-color:rgba(210,222,0,.36);
  background:rgba(210,222,0,.055);
}

.event-popup-logo{
  display:block;
  width:auto;
  height:auto;
  object-fit:contain;
}

.event-popup-logo-gg{
  max-width:215px;
  max-height:66px;
}

.event-popup-logo-ladies{
  width:100%;
  max-width:310px;
  max-height:46px;
}

.event-popup-logo-link-label{
  color:rgba(255,255,255,.5);
  font-size:.57rem;
  line-height:1;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.1em;
  transition:color .2s ease;
}

.event-popup-logo-wrap-ladies:hover .event-popup-logo-link-label,
.event-popup-logo-wrap-ladies:focus-visible .event-popup-logo-link-label{
  color:#d2de00;
}

.event-popup-partner{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  color:#fff;
}

.event-popup-partner span{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.13);
  border-radius:50%;
  background:#0a0e0b;
  color:#c7de91;
  font-size:1.2rem;
  line-height:1;
  font-weight:500;
}

.event-popup-partner small{
  color:rgba(255,255,255,.52);
  font-size:.61rem;
  line-height:1.15;
  font-weight:800;
  text-align:center;
  text-transform:uppercase;
  letter-spacing:.12em;
}

.event-popup-content{
  padding:32px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 292px;
  align-items:stretch;
  gap:28px;
}

.event-popup-copy{
  padding:3px 0 0;
}

.event-popup-kicker{
  padding:7px 11px;
  border-color:rgba(185,223,132,.24);
  background:rgba(114,157,62,.11);
  color:#b9df84;
  font-size:.69rem;
  letter-spacing:.13em;
}

.event-popup h2{
  max-width:560px;
  margin:14px 0 16px;
  font-size:clamp(2.35rem,4.8vw,4.25rem);
  line-height:.94;
  letter-spacing:-.058em;
}

.event-popup p{
  margin-bottom:0;
}

.event-popup-lead{
  max-width:590px;
  color:rgba(255,255,255,.72)!important;
  font-size:1rem;
  line-height:1.65!important;
}

.event-popup-benefits{
  list-style:none;
  margin:22px 0 19px;
  padding:0;
  display:grid;
  gap:11px;
}

.event-popup-benefits li{
  position:relative;
  padding-left:30px;
  color:#eef3eb;
  font-size:.92rem;
  line-height:1.45;
  font-weight:750;
}

.event-popup-benefits li::before{
  content:"✓";
  position:absolute;
  top:0;
  left:0;
  width:20px;
  height:20px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:rgba(114,157,62,.2);
  color:#b9df84;
  font-size:.72rem;
  font-weight:950;
}

.event-popup-closing{
  color:rgba(255,255,255,.5)!important;
  font-size:.86rem!important;
  line-height:1.5!important;
}

.event-popup-offer{
  position:relative;
  margin:0;
  padding:25px 24px;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.36);
  border-radius:24px;
  background:
    radial-gradient(circle at 100% 0,rgba(255,255,255,.46),transparent 34%),
    linear-gradient(150deg,#d5e683,#87b849 78%);
  color:#071007;
  box-shadow:0 22px 50px rgba(0,0,0,.25);
}

.event-popup-offer::after{
  content:"10";
  position:absolute;
  right:-8px;
  bottom:-30px;
  color:rgba(7,16,7,.055);
  font-size:9rem;
  line-height:1;
  font-weight:950;
  letter-spacing:-.1em;
  pointer-events:none;
}

.event-popup-offer > span{
  position:relative;
  z-index:1;
  font-size:.68rem;
  letter-spacing:.12em;
}

.event-popup-offer > strong{
  position:relative;
  z-index:1;
  margin:15px 0 2px;
  font-size:4.7rem;
  line-height:.8;
  letter-spacing:-.08em;
}

.event-popup-offer > b{
  position:relative;
  z-index:1;
  margin-top:8px;
  font-size:1rem;
}

.event-popup-offer > p{
  position:relative;
  z-index:1;
  margin-top:12px;
  color:rgba(7,16,7,.72);
  font-size:.84rem;
  line-height:1.5;
  font-weight:700;
}

.event-popup-actions{
  position:relative;
  z-index:1;
  margin-top:auto;
  padding-top:24px;
  display:grid;
  gap:9px;
}

.event-popup-actions .btn{
  width:100%;
  min-height:48px;
  padding:0 17px;
  border-color:rgba(7,16,7,.14);
  background:#071007;
  color:#fff;
  box-shadow:0 14px 30px rgba(7,16,7,.2);
  font-size:.85rem;
}

.event-popup-actions .btn:hover{
  background:#131d12;
}

.event-popup-text-button{
  min-height:38px;
  border:0;
  background:transparent;
  color:rgba(7,16,7,.66);
  font:inherit;
  font-size:.78rem;
  font-weight:850;
  cursor:pointer;
}

.event-popup-text-button:hover,
.event-popup-text-button:focus-visible{
  color:#071007;
  text-decoration:underline;
  text-underline-offset:3px;
}

.event-popup button:focus-visible,
.event-popup a:focus-visible{
  outline:3px solid #fff;
  outline-offset:3px;
}

@media(max-width:760px){
  .event-popup{
    align-items:end;
    padding:8px 8px 0;
  }

  .event-popup-dialog{
    width:100%;
    max-height:calc(100svh - 8px);
    padding-bottom:env(safe-area-inset-bottom);
    border-radius:24px 24px 0 0;
    -webkit-overflow-scrolling:touch;
  }

  .event-popup-dialog::before{
    border-radius:24px 24px 0 0;
  }

  .event-popup-close{
    position:sticky;
    top:10px;
    right:auto;
    width:44px;
    height:44px;
    margin:10px 10px -54px auto;
    z-index:5;
  }

  .event-popup-meta{
    min-height:96px;
    padding:16px 60px 15px 18px;
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
    gap:7px;
  }

  .event-popup-date{
    flex-wrap:wrap;
    gap:5px 10px;
  }

  .event-popup-date span,
  .event-popup-date strong,
  .event-popup-location{
    min-height:24px;
    font-size:.76rem;
    white-space:normal;
  }

  .event-popup-date strong{
    padding:0;
    border:0;
    background:transparent;
  }

  .event-popup-logos{
    min-height:0;
    padding:14px 16px;
    grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr);
    gap:7px;
  }

  .event-popup-logo-wrap{
    height:66px;
    padding:8px 10px;
    border-radius:13px;
  }

  .event-popup-logo-gg{
    max-width:118px;
    max-height:52px;
  }

  .event-popup-logo-ladies{
    max-width:128px;
    max-height:24px;
  }

  .event-popup-logo-link-label{
    display:none;
  }

  .event-popup-partner{
    gap:0;
  }

  .event-popup-partner span{
    width:38px;
    height:38px;
    border-color:rgba(255,255,255,.62);
    background:#b9df84;
    color:#071007;
    box-shadow:0 8px 20px rgba(0,0,0,.34),0 0 0 4px rgba(185,223,132,.11);
    font-size:1.45rem;
    font-weight:850;
    transform:none;
  }

  .event-popup-partner small{
    display:none;
  }

  .event-popup-content{
    padding:22px 18px 16px;
    grid-template-columns:1fr;
    gap:18px;
  }

  .event-popup h2{
    margin-top:12px;
    margin-bottom:13px;
    font-size:clamp(2.2rem,10.8vw,3rem);
    line-height:.96;
  }

  .event-popup-lead{
    font-size:.94rem;
    line-height:1.55!important;
  }

  .event-popup-benefits{
    margin:18px 0 14px;
    gap:9px;
  }

  .event-popup-benefits li{
    padding-left:28px;
    font-size:.86rem;
    line-height:1.38;
  }

  .event-popup-closing{
    font-size:.8rem!important;
  }

  .event-popup-offer{
    min-height:0;
    padding:19px;
    display:grid;
    grid-template-columns:88px minmax(0,1fr);
    gap:0 14px;
  }

  .event-popup-offer > span{
    grid-column:1/-1;
  }

  .event-popup-offer > strong{
    grid-column:1;
    grid-row:2/4;
    align-self:center;
    margin:16px 0 0;
    font-size:3.65rem;
  }

  .event-popup-offer > b{
    grid-column:2;
    grid-row:2;
    align-self:end;
    margin-top:16px;
  }

  .event-popup-offer > p{
    grid-column:2;
    grid-row:3;
    margin-top:6px;
  }

  .event-popup-actions{
    grid-column:1/-1;
    margin-top:0;
    padding-top:17px;
    gap:5px;
  }

  .event-popup-actions .btn{
    min-height:46px;
  }
}

@media(max-width:520px){
  .event-popup-logos{
    grid-template-columns:1fr;
    gap:6px;
    padding:14px;
  }

  .event-popup-logo-wrap{
    width:100%;
    justify-content:center;
  }

  .event-popup-logo-wrap-gg{
    height:66px;
    border-color:rgba(114,157,62,.22);
    background:linear-gradient(90deg,rgba(114,157,62,.08),rgba(255,255,255,.02));
  }

  .event-popup-logo-wrap-ladies{
    height:56px;
    border-color:rgba(210,222,0,.2);
    background:linear-gradient(90deg,rgba(210,222,0,.055),rgba(255,255,255,.02));
  }

  .event-popup-logo-gg{
    max-width:105px;
    max-height:54px;
  }

  .event-popup-logo-ladies{
    width:auto;
    max-width:150px;
    max-height:24px;
  }

  .event-popup-partner{
    position:relative;
    z-index:2;
    height:28px;
    margin:-8px 0;
  }

  .event-popup-partner span{
    width:34px;
    height:34px;
    font-size:1.3rem;
  }
}

@media(max-width:420px){
  .tod-floating{
    right:10px;
    bottom:max(10px,env(safe-area-inset-bottom));
    min-height:56px;
    padding:7px 15px 7px 8px;
    gap:8px;
  }

  .tod-floating span{
    width:40px;
    height:40px;
  }

  .tod-floating strong{
    font-size:.82rem;
  }

  .event-popup-meta{
    padding-left:16px;
  }

  .event-popup-logos{
    padding:12px 13px;
    grid-template-columns:1fr;
    gap:6px;
  }

  .event-popup-logo-wrap{
    border:1px solid rgba(255,255,255,.08);
    background:rgba(255,255,255,.025);
    padding:7px;
  }

  .event-popup-content{
    padding:20px 14px 14px;
  }

  .event-popup h2{
    font-size:2.15rem;
  }

  .event-popup-lead{
    font-size:.9rem;
  }

  .event-popup-logo-gg{
    max-width:96px;
    max-height:52px;
  }

  .event-popup-logo-ladies{
    width:auto;
    max-width:142px;
    max-height:23px;
  }

  .event-popup-logo-wrap-gg{
    height:64px;
    border-color:rgba(114,157,62,.22);
    background:linear-gradient(90deg,rgba(114,157,62,.08),rgba(255,255,255,.02));
  }

  .event-popup-logo-wrap-ladies{
    height:54px;
    border-color:rgba(210,222,0,.2);
    background:linear-gradient(90deg,rgba(210,222,0,.055),rgba(255,255,255,.02));
  }

  .event-popup-offer{
    grid-template-columns:78px minmax(0,1fr);
    gap:0 11px;
  }

  .event-popup-offer > strong{
    font-size:3.25rem;
  }
}

/* Dauerhafter Bereich: Minis-, Kinder- und Teeniekurse */
.nav-course-menu{
  position:relative;
}

.nav-course-main{
  display:flex;
  align-items:center;
  gap:6px;
}

.nav-course-main > span{
  color:var(--primary2);
  font-size:.82rem;
  transition:transform .2s ease;
}

.nav-course-submenu{
  position:absolute;
  top:calc(100% + 18px);
  left:50%;
  z-index:20;
  width:330px;
  padding:9px;
  display:grid;
  gap:6px;
  border:1px solid rgba(114,157,62,.3);
  border-radius:20px;
  background:rgba(8,12,8,.97);
  box-shadow:0 24px 60px rgba(0,0,0,.5);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translate(-50%,-8px);
  transition:opacity .2s ease,transform .2s ease,visibility .2s ease;
}

.nav-course-submenu::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:-20px;
  height:20px;
}

.nav-course-menu:hover .nav-course-submenu,
.nav-course-menu:focus-within .nav-course-submenu{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translate(-50%,0);
}

.nav-course-menu:hover .nav-course-main > span,
.nav-course-menu:focus-within .nav-course-main > span{
  transform:rotate(180deg);
}

.nav-menu .nav-course-submenu a{
  padding:12px 13px;
  display:grid;
  gap:4px;
  border:1px solid transparent;
  border-radius:13px;
  background:rgba(255,255,255,.025);
}

.nav-menu .nav-course-submenu a:hover,
.nav-menu .nav-course-submenu a:focus-visible{
  border-color:rgba(150,200,91,.42);
  background:rgba(114,157,62,.13);
}

.nav-course-submenu strong{
  color:#fff;
  font-size:.88rem;
}

.nav-course-submenu small{
  color:var(--muted);
  font-size:.69rem;
  line-height:1.4;
}

/* Eigenständiger Minikurs-Bereich */
.minis-feature-section{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  scroll-margin-top:95px;
  background:
    radial-gradient(circle at 92% 14%,rgba(210,222,0,.09),transparent 31%),
    radial-gradient(circle at 8% 88%,rgba(114,157,62,.16),transparent 34%),
    #080b08;
}

.minis-feature-section::before{
  content:"MINIS";
  position:absolute;
  z-index:-1;
  right:-18px;
  bottom:-52px;
  color:rgba(150,200,91,.035);
  font-size:clamp(9rem,23vw,22rem);
  line-height:.72;
  font-weight:950;
  letter-spacing:-.09em;
  pointer-events:none;
}

.minis-feature-shell{
  position:relative;
  padding:clamp(28px,4.4vw,58px);
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(340px,.82fr);
  gap:clamp(32px,5vw,70px);
  align-items:center;
  border:1px solid rgba(150,200,91,.3);
  border-radius:40px;
  background:
    linear-gradient(135deg,rgba(114,157,62,.16),transparent 42%),
    linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));
  box-shadow:0 36px 90px rgba(0,0,0,.36),inset 0 1px 0 rgba(255,255,255,.06);
}

.minis-feature-shell::before{
  content:"";
  position:absolute;
  top:-1px;
  left:54px;
  width:min(290px,42%);
  height:4px;
  border-radius:0 0 8px 8px;
  background:linear-gradient(90deg,var(--primary2),#d2de00);
}

.minis-feature-copy{
  min-width:0;
}

.minis-feature-label{
  width:max-content;
  max-width:100%;
  margin-bottom:22px;
  display:flex;
  align-items:center;
  border:1px solid rgba(185,223,132,.28);
  border-radius:999px;
  overflow:hidden;
  background:rgba(5,7,5,.58);
}

.minis-feature-label span,
.minis-feature-label strong{
  padding:8px 13px;
  font-size:.68rem;
  line-height:1;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.1em;
}

.minis-feature-label span{
  background:#a6d968;
  color:#071007;
}

.minis-feature-label strong{
  color:#fff;
}

.minis-feature-copy .eyebrow{
  margin-bottom:13px;
}

.minis-feature-copy h2{
  margin:0 0 20px;
  color:#fff;
  font-size:clamp(3.1rem,6vw,6.2rem);
  line-height:.87;
  letter-spacing:-.065em;
}

.minis-feature-copy h2 span{
  color:#a6d968;
}

.minis-feature-lead{
  max-width:650px;
  margin:0 0 28px;
  color:#c2ccbd;
  font-size:clamp(1rem,1.4vw,1.14rem);
  line-height:1.75;
}

.minis-feature-details{
  margin-bottom:24px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}

.minis-feature-details div{
  min-width:0;
  padding:14px 15px;
  display:grid;
  gap:5px;
  border:1px solid rgba(255,255,255,.085);
  border-radius:15px;
  background:rgba(5,7,5,.48);
}

.minis-feature-details small,
.minis-feature-pricing small{
  color:#95a28f;
  font-size:.59rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.085em;
}

.minis-feature-details strong{
  color:#fff;
  font-size:.9rem;
  line-height:1.25;
}

.minis-feature-topics{
  list-style:none;
  margin:0 0 28px;
  padding:0;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
}

.minis-feature-topics li{
  min-width:0;
  padding:11px 12px;
  display:flex;
  align-items:center;
  gap:10px;
  border-bottom:1px solid rgba(255,255,255,.08);
}

.minis-feature-topics span{
  flex:0 0 auto;
  color:#a6d968;
  font-size:.62rem;
  font-weight:950;
  letter-spacing:.08em;
}

.minis-feature-topics strong{
  color:#f5f7f3;
  font-size:.82rem;
  line-height:1.4;
}

.minis-feature-actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:15px 18px;
}

.minis-feature-actions > span{
  max-width:260px;
  color:#aeb9a9;
  font-size:.72rem;
  line-height:1.45;
  font-weight:800;
}

.minis-feature-side{
  min-width:0;
  display:grid;
  gap:12px;
}

.minis-feature-visual{
  position:relative;
  min-height:500px;
  margin:0;
  overflow:hidden;
  border:1px solid rgba(150,200,91,.3);
  border-radius:30px;
  background:#030503;
  box-shadow:0 24px 56px rgba(0,0,0,.36);
}

.minis-feature-visual::before{
  content:"";
  position:absolute;
  inset:-18px;
  background:url('assets/youth-course-training.png') 58% center/cover no-repeat;
  filter:blur(16px);
  opacity:.22;
}

.minis-feature-visual::after{
  content:"";
  position:absolute;
  z-index:1;
  inset:0;
  background:linear-gradient(180deg,transparent 54%,rgba(2,4,2,.88) 100%);
}

.minis-feature-visual img{
  position:absolute;
  z-index:1;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center bottom;
  filter:saturate(.84) contrast(1.05);
}

.minis-feature-visual figcaption{
  position:absolute;
  z-index:2;
  left:22px;
  right:22px;
  bottom:19px;
  color:#fff;
  font-size:.69rem;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.1em;
}

.minis-feature-pricing{
  padding:10px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  border:1px solid rgba(255,255,255,.085);
  border-radius:20px;
  background:rgba(255,255,255,.032);
}

.minis-feature-pricing > div{
  min-width:0;
  padding:12px 13px;
  display:grid;
  gap:5px;
  border-radius:13px;
  background:rgba(5,7,5,.52);
}

.minis-feature-pricing strong{
  color:#fff;
  font-size:1.04rem;
}

.minis-feature-pricing > div:nth-child(2){
  background:linear-gradient(135deg,#8fbd54,#b9e279);
}

.minis-feature-pricing > div:nth-child(2) small,
.minis-feature-pricing > div:nth-child(2) strong{
  color:#071007;
}

.minis-feature-pricing .minis-feature-location{
  grid-column:1/-1;
}

.minis-feature-location span{
  color:#aeb9a9;
  font-size:.68rem;
  line-height:1.35;
}

.youth-courses-section{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  scroll-margin-top:95px;
  background:
    radial-gradient(circle at 8% 18%,rgba(114,157,62,.18),transparent 30%),
    radial-gradient(circle at 92% 78%,rgba(210,222,0,.075),transparent 28%),
    #070a07;
}

.youth-courses-section::before{
  content:"";
  position:absolute;
  z-index:-1;
  top:72px;
  right:-130px;
  width:390px;
  height:82px;
  background:linear-gradient(90deg,transparent,rgba(150,200,91,.16));
  transform:rotate(-11deg);
  clip-path:polygon(5% 25%,100% 0,96% 74%,0 100%);
}

.youth-courses-head{
  margin-bottom:34px;
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);
  gap:54px;
  align-items:end;
}

.youth-courses-head h2{
  max-width:760px;
  margin-bottom:0;
}

.youth-courses-head p{
  margin-bottom:4px;
  font-size:1rem;
}

.youth-course-tabs{
  width:min(760px,100%);
  margin-bottom:18px;
  padding:6px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:6px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:22px;
  background:rgba(255,255,255,.035);
}

.youth-course-tab{
  min-width:0;
  padding:13px 16px;
  display:flex;
  align-items:center;
  gap:13px;
  border:1px solid transparent;
  border-radius:16px;
  background:transparent;
  color:rgba(255,255,255,.62);
  font:inherit;
  text-align:left;
  cursor:pointer;
  transition:background .22s ease,border-color .22s ease,color .22s ease,transform .22s ease;
}

.youth-course-tab:hover{
  color:#fff;
}

.youth-course-tab.is-active{
  border-color:rgba(174,218,112,.34);
  background:linear-gradient(135deg,rgba(114,157,62,.3),rgba(150,200,91,.12));
  color:#fff;
  box-shadow:0 12px 28px rgba(0,0,0,.2);
}

.youth-course-tab:focus-visible{
  outline:2px solid var(--primary2);
  outline-offset:3px;
}

.youth-tab-number{
  flex:0 0 auto;
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:rgba(5,7,5,.62);
  color:var(--primary2);
  font-size:.7rem;
  font-weight:950;
}

.youth-course-tab > span:last-child{
  min-width:0;
  display:grid;
  gap:2px;
}

.youth-course-tab strong{
  font-size:.96rem;
}

.youth-course-tab small{
  color:var(--muted);
  font-size:.69rem;
  font-weight:750;
}

.youth-course-panels{
  border:1px solid rgba(114,157,62,.25);
  border-radius:32px;
  background:
    linear-gradient(115deg,rgba(114,157,62,.12),transparent 38%),
    linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));
  box-shadow:0 30px 80px rgba(0,0,0,.32);
  overflow:hidden;
}

.youth-course-panel{
  min-height:485px;
  padding:clamp(26px,4vw,48px);
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(220px,.64fr) minmax(370px,1.14fr);
  gap:clamp(24px,3.2vw,46px);
  align-items:center;
  animation:youthPanelIn .38s ease both;
}

.youth-course-panel[hidden]{
  display:none!important;
}

@keyframes youthPanelIn{
  from{opacity:0;transform:translateY(10px)}
  to{opacity:1;transform:none}
}

.youth-course-kicker{
  display:inline-flex;
  margin-bottom:16px;
  padding:8px 11px;
  border-radius:999px;
  background:#a6d968;
  color:#071007;
  font-size:.66rem;
  line-height:1;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.1em;
}

.youth-course-intro h3{
  max-width:480px;
  margin:0 0 16px;
  color:#fff;
  font-size:clamp(2rem,3.5vw,3.45rem);
  line-height:1;
  letter-spacing:-.055em;
}

.youth-course-intro > p{
  max-width:490px;
  margin-bottom:26px;
  font-size:.98rem;
  line-height:1.7;
}

.youth-course-time{
  width:min(390px,100%);
  padding:17px 18px;
  display:grid;
  grid-template-columns:1fr auto;
  gap:4px 16px;
  align-items:end;
  border-left:4px solid var(--primary2);
  border-radius:0 15px 15px 0;
  background:rgba(5,7,5,.56);
}

.youth-course-time span{
  color:var(--muted);
  font-size:.7rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.youth-course-time strong{
  grid-row:1/3;
  grid-column:2;
  color:#fff;
  font-size:1.15rem;
  line-height:1.15;
  white-space:nowrap;
}

.youth-course-time small{
  color:#c5d2be;
  font-size:.7rem;
  font-weight:700;
}

.youth-course-visual{
  position:relative;
  align-self:center;
  width:100%;
  min-height:390px;
  margin:0;
  overflow:hidden;
  border:1px solid rgba(150,200,91,.25);
  border-radius:24px;
  background:#030503;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 20px 45px rgba(0,0,0,.28);
}

.youth-course-visual::before{
  content:"";
  position:absolute;
  inset:-14px;
  background:url('assets/youth-course-training.png') center/cover no-repeat;
  filter:blur(12px);
  opacity:.22;
}

.youth-course-visual img{
  position:absolute;
  z-index:1;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  filter:saturate(.82) contrast(1.06);
}

.youth-course-topics{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:9px;
}

.youth-course-topics li{
  min-width:0;
  padding:13px 15px;
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:13px;
  align-items:center;
  border:1px solid rgba(255,255,255,.085);
  border-radius:15px;
  background:rgba(5,7,5,.44);
  transition:transform .2s ease,border-color .2s ease,background .2s ease;
}

.youth-course-topics li:hover{
  transform:translateX(5px);
  border-color:rgba(150,200,91,.38);
  background:rgba(114,157,62,.1);
}

.youth-course-topics li > span{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:rgba(150,200,91,.14);
  color:var(--primary2);
  font-size:.65rem;
  font-weight:950;
}

.youth-course-topics li > div{
  min-width:0;
  display:grid;
  gap:3px;
}

.youth-course-topics strong{
  color:#fff;
  font-size:.92rem;
}

.youth-course-topics small{
  color:var(--muted);
  font-size:.73rem;
  line-height:1.35;
}

.youth-course-footer{
  margin-top:16px;
  padding:16px;
  display:grid;
  grid-template-columns:repeat(3,minmax(105px,.58fr)) minmax(210px,1.35fr) auto;
  gap:10px;
  align-items:stretch;
  border:1px solid rgba(255,255,255,.09);
  border-radius:24px;
  background:rgba(255,255,255,.035);
}

.youth-price-card,
.youth-course-location{
  min-width:0;
  padding:13px 14px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  border-radius:15px;
  background:rgba(5,7,5,.5);
}

.youth-price-card span,
.youth-course-location span{
  color:var(--muted);
  font-size:.6rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.075em;
}

.youth-price-card strong{
  margin-top:5px;
  color:#fff;
  font-size:1.16rem;
  line-height:1;
}

.youth-price-card-accent{
  background:linear-gradient(135deg,#8fbd54,#b9e279);
}

.youth-price-card-accent span{
  color:rgba(7,16,7,.66);
}

.youth-price-card-accent strong{
  color:#071007;
}

.youth-course-location strong{
  margin-top:5px;
  color:#fff;
  font-size:.86rem;
}

.youth-course-location small{
  margin-top:3px;
  color:#aebca7;
  font-size:.67rem;
  line-height:1.35;
}

.youth-course-footer .btn{
  min-height:100%;
  padding-inline:20px;
  white-space:nowrap;
}

@media(max-width:1040px){
  .youth-course-footer{
    grid-template-columns:repeat(3,1fr);
  }
  .youth-course-location{
    grid-column:1/3;
  }
  .youth-course-footer .btn{
    grid-column:3;
  }
}

@media(max-width:1100px) and (min-width:901px){
  .youth-course-panel{
    grid-template-columns:minmax(0,1fr) minmax(350px,.95fr);
  }
  .youth-course-visual{
    grid-column:1;
    min-height:310px;
  }
  .youth-course-topics{
    grid-column:2;
    grid-row:1/3;
  }
}

@media(max-width:900px){
  .minis-feature-shell{
    grid-template-columns:1fr;
  }
  .minis-feature-side{
    grid-template-columns:minmax(0,1.12fr) minmax(260px,.88fr);
    align-items:stretch;
  }
  .minis-feature-visual{
    min-height:430px;
  }
  .minis-feature-pricing{
    grid-template-columns:1fr;
  }
  .minis-feature-pricing .minis-feature-location{
    grid-column:1;
  }
  .nav-course-menu{
    width:100%;
    display:grid;
    gap:7px;
  }
  .nav-course-main{
    justify-content:center;
  }
  .nav-course-main > span{
    display:none;
  }
  .nav-course-submenu{
    position:static;
    width:100%;
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:none;
    box-shadow:none;
    background:rgba(114,157,62,.07);
  }
  .youth-courses-head{
    grid-template-columns:1fr;
    gap:10px;
  }
  .youth-course-panel{
    grid-template-columns:1fr;
    min-height:0;
  }
  .youth-course-visual{
    min-height:360px;
  }
}

@media(max-width:680px){
  .minis-feature-shell{
    padding:25px 18px 18px;
    border-radius:28px;
  }
  .minis-feature-shell::before{
    left:28px;
  }
  .minis-feature-copy h2{
    font-size:clamp(3rem,16vw,4.6rem);
  }
  .minis-feature-details{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .minis-feature-details div:last-child{
    grid-column:1/-1;
  }
  .minis-feature-topics{
    grid-template-columns:1fr;
  }
  .minis-feature-actions .btn{
    width:100%;
  }
  .minis-feature-side{
    grid-template-columns:1fr;
  }
  .minis-feature-visual{
    min-height:390px;
    border-radius:22px;
  }
  .minis-feature-pricing{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .minis-feature-pricing .minis-feature-location{
    grid-column:1/-1;
  }
  .youth-course-tabs{
    grid-template-columns:1fr;
    border-radius:19px;
  }
  .youth-course-panel{
    padding:24px 18px;
    gap:28px;
    border-radius:24px;
  }
  .youth-course-visual{
    min-height:330px;
  }
  .youth-course-time{
    grid-template-columns:1fr;
  }
  .youth-course-time strong{
    grid-row:auto;
    grid-column:auto;
    margin:3px 0;
  }
  .youth-course-footer{
    grid-template-columns:repeat(2,minmax(0,1fr));
    padding:11px;
  }
  .youth-price-card-accent{
    grid-column:1/-1;
  }
  .youth-course-location,
  .youth-course-footer .btn{
    grid-column:1/-1;
  }
  .youth-course-footer .btn{
    min-height:52px;
  }
}

@media(max-width:390px){
  .youth-course-footer{
    grid-template-columns:1fr;
  }
  .youth-price-card-accent,
  .youth-course-location,
  .youth-course-footer .btn{
    grid-column:1;
  }
}

@media(prefers-reduced-motion:reduce){
  .youth-course-panel{
    animation:none;
  }
  .youth-course-topics li{
    transition:none;
  }
}

@media(prefers-reduced-motion:reduce){
  .event-popup-close{
    transition:none;
  }
}

/* Weihnachts-Special */
.nav-season-link{
  position:relative;
  color:#fff!important;
}

.nav-season-link > span{
  width:8px;
  height:8px;
  display:inline-block;
  margin-right:5px;
  border-radius:50%;
  background:#c92732;
  box-shadow:0 0 0 4px rgba(201,39,50,.12);
}

.christmas-special{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 85% 20%,rgba(201,39,50,.13),transparent 27%),
    radial-gradient(circle at 12% 85%,rgba(122,179,42,.15),transparent 29%),
    #050705;
}

.christmas-special::before,
.christmas-special::after{
  content:"";
  position:absolute;
  width:5px;
  height:5px;
  border-radius:50%;
  background:#fff;
  opacity:.6;
  box-shadow:72px 34px #fff,145px -12px #fff,238px 51px #fff,322px 4px #fff,410px 63px #fff,515px 18px #fff,650px 49px #fff,782px 1px #fff;
}

.christmas-special::before{top:48px;left:4%;}
.christmas-special::after{bottom:78px;right:13%;transform:scale(.7);opacity:.35;}

.christmas-special-shell{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,.96fr) minmax(390px,1.04fr);
  gap:clamp(42px,6vw,84px);
  align-items:center;
}

.christmas-kicker{
  display:inline-flex;
  padding:9px 13px;
  margin-bottom:22px;
  border:1px solid rgba(201,39,50,.52);
  border-radius:999px;
  background:rgba(201,39,50,.12);
  color:#ff8d95;
  font-size:.72rem;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.11em;
}

.christmas-copy h2{
  max-width:700px;
  margin-bottom:23px;
  color:#fff;
  font-size:clamp(3rem,5.8vw,5.8rem);
  line-height:.91;
  letter-spacing:-.065em;
}

.christmas-copy h2 span{color:#7ab32a;}
.christmas-lead{max-width:640px;font-size:1.08rem;line-height:1.7;}

.christmas-facts{
  margin:28px 0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}

.christmas-facts > div{
  min-height:92px;
  padding:17px;
  display:grid;
  align-content:center;
  gap:7px;
  border:1px solid rgba(122,179,42,.3);
  border-radius:18px;
  background:rgba(255,255,255,.035);
}

.christmas-facts span{
  color:#aab5a7;
  font-size:.69rem;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.christmas-facts strong{color:#fff;font-size:1.03rem;line-height:1.25;}
.christmas-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;}
.christmas-actions .btn{background:#7ab32a;color:#071007;}
.christmas-actions > span{max-width:260px;color:#aab5a7;font-size:.78rem;line-height:1.5;}

.christmas-voucher-wrap{
  position:relative;
  padding:54px 26px 25px;
}

.christmas-hat{
  position:absolute;
  z-index:4;
  top:-10px;
  right:7px;
  width:145px;
  transform:rotate(12deg);
  filter:drop-shadow(0 14px 18px rgba(0,0,0,.4));
}

.christmas-voucher{
  position:relative;
  z-index:2;
  min-height:355px;
  padding:29px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  overflow:hidden;
  border:1px solid rgba(122,179,42,.6);
  border-radius:28px;
  background:
    linear-gradient(135deg,rgba(122,179,42,.22),transparent 38%),
    linear-gradient(155deg,#121912,#070a07);
  box-shadow:0 35px 80px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.08);
  transform:rotate(-2deg);
}

.christmas-voucher::before{
  content:"";
  position:absolute;
  right:-50px;
  bottom:-75px;
  width:230px;
  height:230px;
  border:40px solid rgba(201,39,50,.1);
  border-radius:50%;
}

.christmas-voucher-top,.christmas-voucher-bottom{display:flex;justify-content:space-between;gap:15px;align-items:center;}
.christmas-voucher-top span{color:#fff;font-weight:900;}
.christmas-voucher-top small{color:#9aaa96;text-align:right;}
.christmas-voucher-main > span{color:#ff8d95;font-size:.72rem;font-weight:950;letter-spacing:.15em;}
.christmas-voucher-main strong{display:block;margin:10px 0;color:#fff;font-size:clamp(2.65rem,5vw,4.85rem);line-height:.83;letter-spacing:-.06em;}
.christmas-voucher-main p{margin:0;color:#b6c2b2;font-size:.95rem;}
.christmas-voucher-bottom span{color:#b6c2b2;font-size:.8rem;}
.christmas-voucher-bottom strong{color:#7ab32a;font-size:2rem;}

.christmas-gift-note{
  position:relative;
  z-index:3;
  width:85%;
  margin:-13px auto 0;
  padding:15px 20px;
  display:grid;
  gap:4px;
  border-radius:16px;
  background:#c92732;
  box-shadow:0 18px 35px rgba(0,0,0,.38);
  text-align:center;
}

.christmas-gift-note strong{color:#fff;font-size:1rem;}
.christmas-gift-note span{color:rgba(255,255,255,.82);font-size:.73rem;}

@media(max-width:980px){
  .christmas-special-shell{grid-template-columns:1fr;}
  .christmas-voucher-wrap{width:min(620px,100%);margin:auto;}
}

@media(max-width:680px){
  .christmas-copy h2{font-size:clamp(2.85rem,15vw,4.7rem);}
  .christmas-facts{grid-template-columns:1fr;}
  .christmas-facts > div{min-height:76px;}
  .christmas-voucher-wrap{padding:48px 0 20px;}
  .christmas-hat{width:112px;right:-8px;}
  .christmas-voucher{min-height:315px;padding:23px;}
  .christmas-voucher-main strong{font-size:3.2rem;}
  .christmas-voucher-top small{display:none;}
  .christmas-gift-note{width:92%;}
}


/* Stabiler Hero-CTA ohne Safari-Compositing-Fehler */
.hero .hero-main-cta{
  position:relative;
  isolation:auto;
  overflow:hidden;
  min-height:58px;
  padding:0 28px;
  border:1px solid rgba(255,255,255,.25);
  background-color:#96c85b !important;
  background-image:linear-gradient(135deg,#b9df84 0%,#82b646 100%) !important;
  color:#071007 !important;
  -webkit-text-fill-color:#071007 !important;
  text-shadow:none !important;
  opacity:1 !important;
  box-shadow:0 18px 42px rgba(114,157,62,.3),inset 0 1px 0 rgba(255,255,255,.28);
}

.hero .hero-main-cta::before{
  content:"";
  width:8px;
  height:8px;
  margin-right:11px;
  flex:0 0 auto;
  border-radius:50%;
  background:#071007;
  box-shadow:0 0 0 5px rgba(7,16,7,.11);
}

.hero .hero-main-cta::after{
  content:none !important;
  animation:none !important;
}

.hero .hero-main-cta:hover{
  background-color:#a7d56f !important;
  background-image:linear-gradient(135deg,#c5e998 0%,#91c653 100%) !important;
  box-shadow:0 22px 50px rgba(114,157,62,.38),inset 0 1px 0 rgba(255,255,255,.34);
}

.hero .hero-main-cta:focus-visible{
  outline:3px solid #fff;
  outline-offset:4px;
}

@media(max-width:560px){
  .hero .hero-main-cta{
    min-height:60px;
    padding:0 20px;
    font-size:.94rem;
  }
}


/* Kurs-Popup: drei Haupttermine mit Kinderangeboten ab 17. Oktober */
.tod-floating::after{
  content:"Begrenzt";
}

.tod-floating span small{
  font-size:.4rem;
  letter-spacing:.035em;
}

.event-popup-date-options{
  margin:20px 0 18px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}

.event-popup-date-option{
  min-width:0;
  padding:15px 16px 14px;
  border:1px solid rgba(185,223,132,.22);
  border-radius:17px;
  background:linear-gradient(145deg,rgba(114,157,62,.14),rgba(255,255,255,.025));
}

.event-popup-date-option span,
.event-popup-date-option strong,
.event-popup-date-option small{
  display:block;
}

.event-popup-date-option span{
  margin-bottom:7px;
  color:#b9df84;
  font-size:.65rem;
  line-height:1;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.12em;
}

.event-popup-date-option strong{
  color:#fff;
  font-size:1.18rem;
  line-height:1;
  letter-spacing:-.035em;
}

.event-popup-date-option small{
  margin-top:7px;
  color:rgba(255,255,255,.58);
  font-size:.68rem;
  line-height:1.35;
  font-weight:750;
}

.event-popup-date-option.is-past{
  border-color:rgba(255,255,255,.1);
  background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.018));
  opacity:.68;
}

.event-popup-date-option.is-past span,
.event-popup-date-option.is-past strong,
.event-popup-date-option.is-past small{
  color:rgba(255,255,255,.52);
}

.event-popup-date-option.is-past strong s{
  text-decoration-line:line-through;
  text-decoration-thickness:2px;
  text-decoration-color:#d2de00;
}

.event-popup-closing strong{
  color:#fff;
}

.event-popup-kids-offers{
  margin:0 0 18px;
  padding:13px;
  border:1px solid rgba(210,222,0,.2);
  border-radius:17px;
  background:linear-gradient(145deg,rgba(210,222,0,.07),rgba(114,157,62,.045));
}

.event-popup-kids-offers-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:12px;
}

.event-popup-kids-offers-head span{
  padding:6px 9px;
  border-radius:999px;
  background:#d2de00;
  color:#071007;
  font-size:.58rem;
  line-height:1;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.09em;
}

.event-popup-kids-offers-head strong{
  color:#f5f8f2;
  font-size:.7rem;
  line-height:1;
  text-transform:uppercase;
  letter-spacing:.1em;
}

.event-popup-kids-schedule{
  margin:10px 0 0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:7px;
}

.event-popup-kids-schedule span{
  min-width:0;
  padding:9px 10px;
  border:1px solid rgba(185,223,132,.15);
  border-radius:11px;
  background:rgba(5,7,5,.3);
  color:rgba(255,255,255,.68);
  font-size:.64rem;
  line-height:1.35;
  font-weight:750;
}

.event-popup-kids-schedule strong{
  display:block;
  margin-bottom:3px;
  color:#b9df84;
  font-size:.66rem;
  line-height:1.2;
  text-transform:uppercase;
  letter-spacing:.05em;
}

.event-popup-kids-offers-grid{
  margin-top:11px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}

.event-popup-kids-offer{
  min-width:0;
  padding:11px 12px 10px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:13px;
  background:rgba(5,7,5,.38);
}

.event-popup-kids-offer small,
.event-popup-kids-offer strong,
.event-popup-kids-offer span{
  display:block;
}

.event-popup-kids-offer small{
  color:rgba(255,255,255,.62);
  font-size:.56rem;
  line-height:1;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.event-popup-kids-offer strong{
  margin-top:7px;
  color:#fff;
  font-size:1.02rem;
  line-height:1;
  letter-spacing:-.035em;
}

.event-popup-kids-offer span{
  margin-top:7px;
  color:rgba(255,255,255,.58);
  font-size:.6rem;
  line-height:1.35;
  font-weight:720;
}

.event-popup-kids-offer s{
  margin-right:4px;
  color:rgba(255,255,255,.42);
}

.event-popup-kids-offer-highlight{
  border-color:rgba(210,222,0,.28);
  background:linear-gradient(145deg,rgba(210,222,0,.17),rgba(114,157,62,.1));
}

.event-popup-kids-offer-highlight strong{
  color:#dbe700;
}

.event-popup-offer::after{
  content:"?";
}

.event-popup-offer > strong{
  white-space:normal;
  font-size:2.65rem;
  line-height:.92;
}

.event-popup-offer{
  align-self:start;
}

.event-popup-offer-contact{
  position:relative;
  z-index:1;
  margin-top:22px;
  display:grid;
  gap:8px;
}

.event-popup-offer-contact > div,
.event-popup-offer-contact address{
  min-width:0;
  margin:0;
  padding:13px 14px;
  border:1px solid rgba(7,16,7,.11);
  border-radius:14px;
  background:rgba(255,255,255,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18);
  font-style:normal;
}

.event-popup-offer-contact span{
  color:rgba(7,16,7,.58);
  font-size:.57rem;
  line-height:1;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.09em;
}

.event-popup-offer-contact a{
  display:block;
  margin-top:7px;
  color:#071007;
  font-size:1.08rem;
  line-height:1;
  font-weight:950;
  text-decoration:none;
  letter-spacing:-.035em;
}

.event-popup-offer-contact a:hover,
.event-popup-offer-contact a:focus-visible{
  text-decoration:underline;
  text-underline-offset:3px;
}

.event-popup-offer-contact address strong{
  margin:7px 0 0;
  color:#071007;
  font-size:.92rem;
  line-height:1.15;
  letter-spacing:-.02em;
}

.event-popup-offer-contact address small{
  display:block;
  margin-top:3px;
  color:rgba(7,16,7,.68);
  font-size:.68rem;
  line-height:1.2;
  font-weight:850;
}

.event-popup-offer-includes{
  position:relative;
  z-index:1;
  min-height:0;
  margin-top:14px;
  padding:16px;
  flex:none;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  border:1px solid rgba(7,16,7,.13);
  border-radius:18px;
  background:rgba(255,255,255,.2);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22);
}

.event-popup-offer-includes > span{
  color:rgba(7,16,7,.62);
  font-size:.62rem;
  line-height:1;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.11em;
}

.event-popup-offer-includes ul{
  list-style:none;
  margin:13px 0 0;
  padding:0;
  display:grid;
  gap:10px;
}

.event-popup-offer-includes li{
  position:relative;
  padding-left:27px;
  color:#071007;
  font-size:.82rem;
  line-height:1.35;
  font-weight:850;
}

.event-popup-offer-includes li::before{
  content:"✓";
  position:absolute;
  top:-1px;
  left:0;
  width:19px;
  height:19px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#071007;
  color:#d5e683;
  font-size:.68rem;
  font-weight:950;
}

.event-popup-offer .event-popup-actions{
  margin-top:0;
}

@media(max-width:760px){
  .event-popup-date-options{
    margin:16px 0 14px;
    grid-template-columns:1fr;
    gap:8px;
  }

  .event-popup-date-option{
    padding:11px 12px;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:7px 12px;
    border-radius:14px;
  }

  .event-popup-date-option span,
  .event-popup-date-option small{
    margin:0;
  }

  .event-popup-date-option strong{
    font-size:1.1rem;
    white-space:nowrap;
  }

  .event-popup-date-option small{
    grid-column:1/-1;
    font-size:.76rem;
    line-height:1.45;
    overflow-wrap:anywhere;
  }

  .event-popup-kids-offers{
    padding:12px;
  }

  .event-popup-kids-schedule{
    grid-template-columns:1fr;
  }

  .event-popup-kids-schedule span{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:10px 11px;
    font-size:.74rem;
  }

  .event-popup-kids-schedule strong{
    flex:0 0 auto;
    margin:0;
    font-size:.7rem;
  }

  .event-popup-kids-offers-grid{
    grid-template-columns:1fr;
    gap:7px;
  }

  .event-popup-kids-offer{
    padding:13px 12px;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:8px 12px;
  }

  .event-popup-kids-offer small{
    min-width:0;
    font-size:.65rem;
    line-height:1.4;
    overflow-wrap:anywhere;
  }

  .event-popup-kids-offer strong{
    font-size:1.12rem;
    line-height:1.2;
    white-space:nowrap;
    text-align:right;
  }

  .event-popup-kids-offer span{
    grid-column:1/-1;
    min-width:0;
    font-size:.76rem;
    line-height:1.45;
    overflow-wrap:anywhere;
  }

  .event-popup-kids-offer strong,
  .event-popup-kids-offer span{
    margin-top:0;
  }

  .event-popup-offer-contact{
    grid-column:1/-1;
    margin-top:16px;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
  }

  .event-popup-offer-contact > div,
  .event-popup-offer-contact address{
    padding:12px;
  }

  .event-popup-offer{
    display:flex;
    flex-direction:column;
    gap:0;
  }

  .event-popup-offer > strong{
    margin:16px 0 0;
    font-size:2.15rem;
    line-height:1.1;
    letter-spacing:-.045em;
    align-self:flex-start;
  }

  .event-popup-offer > b{
    margin-top:8px;
    align-self:flex-start;
  }

  .event-popup-offer > p{
    margin:8px 0 0;
  }

  .event-popup-offer-includes{
    grid-column:1/-1;
    min-height:0;
    margin-top:16px;
    padding:14px;
  }

  .event-popup-offer-includes ul{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }

  .event-popup-offer-includes li{
    padding-left:24px;
    font-size:.72rem;
  }
}

@media(max-width:420px){
  .tod-floating strong{
    font-size:.78rem;
  }

  .event-popup-date-option strong{
    font-size:1.08rem;
  }

  .event-popup-date-option small{
    font-size:.75rem;
  }

  .event-popup-offer-contact{
    grid-template-columns:1fr;
  }

  .event-popup-offer > strong{
    font-size:2.2rem;
  }

  .event-popup-offer-includes ul{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
