.field[hidden]{display:none!important}.spam-note{margin:14px 0 0;padding:10px 12px;border-left:4px solid var(--coral);border-radius:10px;background:#fff4cf;color:var(--teal);font-size:12px;font-weight:800;line-height:1.45}.spam-note strong{color:var(--coral)}

:root{--paper:#fffaf2;--paper2:#fff0d6;--water:#0c5f91;--water2:#6ec2ce;--teal:#123f5c;--teal2:#287a9f;--coral:#e78772;--yellow:#f4c861;--green:#d8f1ef;--ink:#213b4c;--muted:#607987;--line:#a9cbd3;--shadow:6px 8px 0 rgba(9,59,98,.17)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:76px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Trebuchet MS","Arial Rounded MT Bold",Arial,sans-serif;overflow-x:hidden;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}a{color:inherit}
.site-nav{position:sticky;top:0;z-index:100;background:rgba(255,253,244,.95);border-bottom:2px dashed var(--line);backdrop-filter:blur(15px)}.nav-inner{width:min(1180px,calc(100% - 32px));min-height:70px;margin:auto;display:flex;align-items:center;gap:18px}.brand{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--teal);font-weight:900;white-space:nowrap}.brand img{width:46px;height:46px;object-fit:contain}.brand span{font-size:15px;letter-spacing:-.04em}.nav-links{display:flex;align-items:center;gap:2px;margin-left:auto}.nav-links a,.nav-dropdown-toggle{padding:9px 10px;border:0;border-radius:999px;background:transparent;color:#66808d;font-size:12px;font-weight:800;text-decoration:none;transition:.2s;white-space:nowrap}.nav-links a:hover,.nav-links a.active,.nav-dropdown-toggle:hover,.nav-item:focus-within>.nav-dropdown-toggle{color:var(--teal);background:var(--green)}.nav-item{position:relative}.nav-dropdown-toggle{cursor:pointer}.nav-dropdown-toggle::after{content:"▾";margin-left:5px}.nav-submenu{position:absolute;top:calc(100% + 8px);left:50%;display:none;width:max-content;min-width:255px;padding:8px;transform:translateX(-50%);border:2px dashed var(--line);border-radius:18px;background:var(--paper);box-shadow:var(--shadow)}.nav-item:hover>.nav-submenu,.nav-item:focus-within>.nav-submenu{display:grid;gap:4px}.nav-submenu a{display:block;border-radius:12px}.course-levels{color:#91a5ad;font-weight:700}.button,.nav-button{border:0;border-radius:999px;padding:12px 18px;background:var(--teal);color:#fff;font-size:13px;font-weight:900;cursor:pointer;box-shadow:4px 5px 0 #dceff2;text-decoration:none;transition:transform .2s,box-shadow .2s}.button:hover,.nav-button:hover{transform:translateY(-2px);box-shadow:5px 7px 0 #c2e0e3}.button.yellow{background:var(--coral);color:#fff}.button.light{background:#fff;color:var(--teal)}.button.ghost{background:transparent;color:var(--teal);border:2px dashed var(--line);box-shadow:none}.menu-toggle{display:none;margin-left:auto;border:0;background:transparent;color:var(--teal);font-size:25px;cursor:pointer}
.hero{position:relative;isolation:isolate;min-height:720px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:48px;padding:82px max(18px,calc((100% - 1180px)/2)) 115px;background:var(--water);overflow:hidden}.hero::before{content:"";position:absolute;left:-5%;right:-5%;bottom:-95px;height:210px;background:var(--paper);border-radius:50% 50% 0 0/38% 38% 0 0;transform:rotate(-2deg);z-index:-1}.hero::after{content:"";position:absolute;left:-5%;right:-5%;bottom:-130px;height:230px;background:var(--water2);border-radius:50% 50% 0 0/38% 38% 0 0;transform:rotate(2deg);z-index:-2}.hero-copy{max-width:560px}.eyebrow{margin:0 0 12px;color:var(--coral);font-size:12px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}h1,h2,h3{font-family:Georgia,serif;color:var(--teal);font-weight:700;letter-spacing:-.055em}.hero h1,.hero h2,.hero h3{color:#fff}h1{margin:0 0 20px;font-size:clamp(48px,7vw,86px);line-height:.94}.hero-copy>p:not(.eyebrow){margin:0;color:#eaf7fb;font-size:clamp(18px,2vw,22px);line-height:1.48;font-weight:600}.hero-actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:30px}.hero-note{margin-top:19px!important;color:#eaf7fb!important;font-size:12px!important;font-weight:800!important}.hero-mascot{position:relative;min-height:550px;display:grid;place-items:center}.hero-mascot-mobile{display:none}.mascot-sun{position:absolute;width:405px;height:405px;border-radius:50%;background:var(--yellow);box-shadow:13px 14px 0 var(--coral);transform:rotate(-4deg)}.hero-mascot img{position:relative;z-index:2;width:min(95%,490px);filter:drop-shadow(0 17px 9px rgba(4,46,78,.19));animation:float 5s ease-in-out infinite}.mascot-label{position:absolute;z-index:3;right:1%;bottom:54px;max-width:205px;padding:15px 17px;border:3px solid #fff;border-radius:26px 26px 7px 26px;background:#b6e0de;color:#093b62;font-size:14px;line-height:1.3;font-weight:900;transform:rotate(2deg);box-shadow:var(--shadow)}.mascot-label strong{display:block;margin-bottom:3px;font-size:20px}@keyframes float{50%{transform:translateY(-12px) rotate(2deg)}}
#home .hero-copy>p:not(.eyebrow){font-size:clamp(16px,1.6vw,19px)}
#home h1{max-width:680px;text-wrap:balance}
.section{position:relative;width:min(1180px,calc(100% - 32px));margin:auto;padding:105px 0}.wave-band{background:var(--green)}.wave-band::before{content:"";position:absolute;left:50%;top:-22px;width:120%;height:48px;transform:translateX(-50%);background:var(--paper);border-radius:50%;box-shadow:0 -15px 0 rgba(185,222,216,.7)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:33px}.section-head h2{margin:0;font-size:clamp(37px,5vw,64px);line-height:.96}.section-head p{max-width:450px;margin:0 0 4px;color:var(--muted);line-height:1.55;font-weight:600}.section-head>p{position:relative;align-self:end;padding:16px 18px 16px 22px;border:2px dashed var(--line);border-left:5px solid var(--coral);border-radius:18px;background:rgba(255,255,255,.82);color:var(--teal);font-size:14px;font-weight:700;line-height:1.55;box-shadow:4px 5px 0 rgba(9,59,98,.08)}.section-head>p::before{content:"";position:absolute;left:-10px;top:16px;width:13px;height:13px;border:3px solid var(--paper);border-radius:50%;background:var(--yellow);box-shadow:2px 2px 0 var(--coral)}.kicker{display:inline-block;margin-bottom:12px;color:var(--coral);font-weight:900;font-size:13px}
.cards-3{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.story-card{position:relative;min-height:260px;padding:28px;border:3px dashed var(--line);border-radius:27px;background:var(--paper);box-shadow:var(--shadow);overflow:hidden}.story-card:nth-child(2){background:var(--paper2);transform:translateY(13px)}.story-card:nth-child(3){background:var(--green);transform:rotate(-1deg)}.story-card:nth-child(4){background:#e2eef8;border-color:#91bbd2}.story-card::after{content:"";position:absolute;right:-27px;bottom:-32px;width:100px;height:100px;border-radius:50%;background:rgba(255,148,125,.17)}.story-number{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--yellow);color:var(--teal);font-size:14px;font-weight:900}.story-card h3{margin:29px 0 10px;font-size:25px}.story-card p{margin:0;color:var(--muted);line-height:1.55;font-size:15px;font-weight:600}
.story-card.course-card{cursor:pointer;transition:transform .22s,box-shadow .22s,border-color .22s;outline:none}
.story-card.course-card:hover,.story-card.course-card:focus-visible{transform:translateY(-6px);box-shadow:9px 13px 0 rgba(9,59,98,.23);border-color:var(--coral)}
.story-card.course-card:nth-child(2):hover,.story-card.course-card:nth-child(2):focus-visible{transform:translateY(7px)}
.story-card.course-card:nth-child(3):hover,.story-card.course-card:nth-child(3):focus-visible{transform:translateY(-6px) rotate(0)}
.course-click-hint{display:inline-flex;align-items:center;gap:7px;margin-top:18px;padding:8px 12px;border-radius:999px;background:var(--teal);color:#fff;font-size:12px;font-weight:900;box-shadow:3px 4px 0 rgba(9,59,98,.17)}
.course-click-hint::before{content:"☝";font-size:16px}
.course-section-hint{display:flex;align-items:center;justify-content:center;gap:8px;width:max-content;max-width:100%;margin:-14px 0 24px;padding:10px 15px;border:2px dashed var(--coral);border-radius:999px;background:#fff;color:var(--teal);font-size:13px;font-weight:900}
.course-section-hint::before{content:"Klick";display:grid;place-items:center;padding:4px 8px;border-radius:999px;background:var(--coral);color:#fff;font-size:11px;text-transform:uppercase;letter-spacing:.05em}
.course-modal-icon{display:grid;place-items:center;width:52px;height:52px;margin-bottom:18px;border-radius:50%;background:var(--yellow);color:var(--teal);font-size:22px;font-weight:900}
.course-modal-copy h3{margin:22px 0 8px;font-size:20px}
.course-modal-copy p{margin:0 0 12px;color:var(--muted);line-height:1.6;font-weight:600}

.step-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;counter-reset:steps}.step{position:relative;padding:24px 20px;border-radius:24px;background:#fff;border:3px solid var(--line);box-shadow:var(--shadow)}.step::before{counter-increment:steps;content:counter(steps);display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:var(--coral);color:#fff;font-weight:900}.step h3{margin:22px 0 8px;font-size:21px}.step p{margin:0;color:var(--muted);line-height:1.45;font-size:14px;font-weight:600}
.price-wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:20px;align-items:stretch}.price-main{padding:33px;border-radius:28px;background:var(--teal);color:#fff;box-shadow:var(--shadow)}.price-main h3{margin:0 0 17px;color:var(--yellow);font-size:34px}.price-main>p{color:rgba(255,255,255,.82);line-height:1.5;font-weight:600}.price-big{margin:22px 0 18px;font-size:45px;font-weight:900;letter-spacing:-.06em}.price-big small{font-size:14px;letter-spacing:0}.price-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:22px}.price-list div{padding:12px 13px;border-radius:15px;background:rgba(255,255,255,.13);font-size:13px;font-weight:800}.price-side{display:grid;gap:13px}.time-card{padding:23px;border:3px dashed var(--line);border-radius:24px;background:var(--paper2)}.time-card:nth-child(2){background:var(--green)}.time-card h3{margin:0 0 8px;font-size:23px}.time-card p{margin:0;color:var(--muted);line-height:1.5;font-size:14px;font-weight:700}
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.team-card{position:relative;overflow:hidden;padding:0;border:3px dashed var(--line);border-radius:27px;background:var(--paper);box-shadow:var(--shadow);cursor:pointer;text-align:left;transition:transform .25s,box-shadow .25s}.team-card:nth-child(odd){transform:rotate(-1.5deg)}.team-card:nth-child(even){transform:rotate(1.5deg)}.team-card:hover{transform:translateY(-6px) rotate(0);box-shadow:8px 12px 0 rgba(9,59,98,.22)}.team-card img,.team-placeholder{display:block;width:100%;height:210px;object-fit:cover}.team-placeholder{display:grid;place-items:center;background:linear-gradient(135deg,var(--yellow),var(--water));color:var(--teal);font-size:62px;font-weight:900}.team-card[data-trainer="trainer3"] img{filter:saturate(.72) brightness(.72)}.image-status{position:absolute;top:18px;left:50%;z-index:2;padding:9px 14px;border:2px solid #fff;border-radius:999px;background:var(--yellow);color:var(--teal);font-size:13px;font-weight:900;line-height:1;white-space:nowrap;box-shadow:4px 5px 0 rgba(9,59,98,.24);transform:translateX(-50%) rotate(-2deg);pointer-events:none}.team-name{display:flex;justify-content:space-between;align-items:center;padding:15px 17px;color:var(--teal);font-size:16px;font-weight:900}.team-name span:last-child{color:var(--coral);font-size:25px}
.team-card-placeholder{cursor:default}.team-card-placeholder:hover{transform:rotate(-1.5deg);box-shadow:var(--shadow)}.team-card-placeholder .team-name span{color:var(--teal);font-size:16px}
.parent-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.parent-card{padding:27px;border-radius:26px;background:var(--paper);border:3px dashed var(--line);box-shadow:var(--shadow)}.parent-card h3{margin:0 0 12px;font-size:25px}.parent-card p{margin:0;color:var(--muted);line-height:1.55;font-weight:600}.faq-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px;align-items:start}details{display:flex;flex-direction:column;align-self:start;padding:17px 19px;border:3px dashed var(--line);border-radius:18px;background:#fff}summary{cursor:pointer;list-style:none;color:var(--teal);font-weight:900}summary::-webkit-details-marker{display:none}summary::after{content:"+";float:right;color:var(--coral);font-size:22px}details[open] summary::after{content:"−"}details p{margin:12px 20px 0 0;color:var(--muted);line-height:1.5;font-size:14px;font-weight:600}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-card{padding:31px;border-radius:28px;background:var(--teal);color:#fff;box-shadow:var(--shadow)}.contact-card h3{margin:0 0 18px;color:var(--yellow);font-size:31px}.contact-card p{color:rgba(255,255,255,.84);line-height:1.55;font-weight:600}.contact-card a{color:var(--yellow);font-weight:900}.contact-illustration{position:relative;display:grid;place-items:center;min-height:330px;overflow:hidden;border-radius:28px;background:var(--water)}.contact-illustration::before,.contact-illustration::after{content:"";position:absolute;width:150%;height:72px;border:7px solid rgba(4,46,78,.13);border-left:0;border-right:0;border-radius:50%;transform:rotate(-8deg)}.contact-illustration::before{top:70px}.contact-illustration::after{bottom:65px;transform:rotate(7deg)}.contact-illustration img{position:relative;z-index:2;width:220px;filter:drop-shadow(0 14px 8px rgba(4,46,78,.13))}
.site-footer{position:relative;padding:75px 0 28px;background:var(--teal);color:#fff;overflow:hidden}.site-footer::before{content:"";position:absolute;left:-5%;top:-40px;width:110%;height:76px;background:var(--paper);border-radius:50%}.footer-shell{width:min(1180px,calc(100% - 32px));margin:auto}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:25px}.footer-mascot{display:flex;align-items:center;gap:12px}.footer-mascot img{width:65px;height:65px;object-fit:contain}.footer-brand{font-family:Georgia,serif;font-size:27px;font-weight:700}.footer-grid h3{color:var(--yellow);font-size:15px}.footer-grid p,.footer-grid a{color:rgba(255,255,255,.8);font-size:14px;line-height:1.6}.footer-grid a{text-decoration:none}.footer-grid a:hover{color:var(--yellow);text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:42px;padding-top:16px;border-top:1px solid rgba(255,255,255,.2);color:rgba(255,255,255,.56);font-size:12px}
.modal[hidden]{display:none}.modal{position:fixed;inset:0;z-index:300;display:grid;place-items:center;padding:18px;background:rgba(4,46,78,.40);backdrop-filter:blur(12px)}.modal-card{position:relative;width:min(650px,100%);max-height:calc(100vh - 35px);overflow:auto;padding:32px;border-radius:28px;background:var(--paper);box-shadow:0 25px 80px rgba(4,46,78,.22)}.modal-card h2{margin:0 38px 10px;color:var(--teal);font-family:Georgia,serif;font-size:clamp(32px,5vw,52px);line-height:.95}.modal-card>p{color:var(--muted);line-height:1.5;font-weight:600}.modal-close{position:absolute;right:14px;top:14px;width:38px;height:38px;border:0;border-radius:50%;background:var(--green);color:var(--teal);font-size:24px;cursor:pointer}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.field{display:grid;gap:6px}.field.full{grid-column:1/-1}.field label{color:var(--teal);font-size:12px;font-weight:900}.field input,.field select,.field textarea{width:100%;padding:12px;border:2px solid rgba(181,217,210,.75);border-radius:13px;background:#fff;color:var(--ink);outline:none}.field textarea{min-height:90px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--teal2);box-shadow:0 0 0 4px rgba(40,122,159,.16)}.check{display:flex;gap:8px;margin:15px 0;color:var(--muted);font-size:12px;line-height:1.4;font-weight:600}.check input{accent-color:var(--teal2)}.form-actions{display:flex;gap:9px;flex-wrap:wrap}.qr-box{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin:17px 0 22px;padding:12px 14px;border:3px dashed var(--line);border-radius:17px;background:var(--green)}.qr-box strong{display:block;color:var(--teal);font-size:13px}.qr-box span{display:block;color:var(--muted);font-size:12px;line-height:1.35;font-weight:600}.legal-copy{color:var(--muted);line-height:1.6;font-size:14px}.legal-copy h3{color:var(--teal);font-size:16px}.editable-note{padding:13px 15px;border-radius:13px;background:var(--green);color:var(--teal)}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.75,.25,1)}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.nav-links{display:none;position:absolute;left:16px;right:16px;top:75px;flex-direction:column;align-items:stretch;padding:10px;border:2px dashed var(--line);border-radius:20px;background:var(--paper);box-shadow:var(--shadow)}.nav-links.open{display:flex}.nav-links a{text-align:center}.nav-dropdown-toggle{width:100%;text-align:center}.nav-submenu{position:static;display:grid;width:auto;min-width:0;margin:4px 8px 7px;padding:6px;transform:none;box-shadow:none}.menu-toggle{display:block}.hero{grid-template-columns:1fr;min-height:0;padding-top:65px}.hero-mascot{min-height:450px}.cards-3{grid-template-columns:1fr}.story-card:nth-child(2){transform:none}.step-row,.team-grid{grid-template-columns:repeat(2,1fr)}.price-wrap,.parent-grid,.contact-grid{grid-template-columns:1fr}}
@media(max-width:620px){.nav-inner,.section{width:calc(100% - 28px)}.brand span{display:none}.nav-button{padding:10px 12px;font-size:12px}.section{padding:78px 0}.hero{padding:58px 14px 95px}h1{font-size:clamp(47px,15vw,73px)}.hero-mascot{min-height:360px}.mascot-sun{width:270px;height:270px}.mascot-label{right:0;bottom:18px}.step-row,.team-grid,.faq-list,.footer-grid,.form-grid,.price-list{grid-template-columns:1fr}.field.full{grid-column:auto}.contact-illustration{min-height:270px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}

/* Schwimmschule Quappi blue water palette: lively, calm and trustworthy for families */
.notice-bar { display:flex; justify-content:space-between; align-items:center; gap:18px; padding:10px max(16px,calc((100% - 1180px)/2)); background:#d8f1ef; border-bottom:2px dashed #a9cbd3; color:#123f5c; }
.notice-bar div { display:flex; align-items:center; gap:13px; flex-wrap:wrap; }
.notice-bar strong { font-size:13px; }
.notice-bar span { color:#607987; font-size:12px; font-weight:700; }
.notice-bar button { border:0; background:transparent; color:#d76d62; cursor:pointer; font-weight:900; font-size:12px; }
.trust-strip { width:min(1120px,calc(100% - 32px)); margin:-17px auto 0; position:relative; z-index:5; display:grid; grid-template-columns:repeat(4,1fr); gap:0; border:3px dashed #a9cbd3; border-radius:24px; background:#fffaf2; box-shadow:6px 8px 0 rgba(9,59,98,.17); overflow:hidden; }
.trust-strip div { padding:18px 16px; text-align:center; border-right:2px dashed #a9cbd3; }
.trust-strip div:last-child { border-right:0; }
.trust-strip strong { display:block; color:#d76d62; font-family:Georgia,serif; font-size:27px; }
.trust-strip span { color:#607987; font-size:12px; font-weight:800; }
.finder-layout { display:grid; grid-template-columns:1.04fr .96fr; gap:18px; align-items:stretch; }
.finder-card { padding:28px; border:3px dashed #a9cbd3; border-radius:27px; background:#fffaf2; box-shadow:6px 8px 0 rgba(9,59,98,.17); }
.finder-step { display:grid; gap:7px; margin-bottom:16px; }
.finder-step label { color:#123f5c; font-size:13px; font-weight:900; }
.finder-step select { width:100%; padding:12px; border:2px solid rgba(181,217,210,.85); border-radius:13px; background:#fff; color:#213b4c; font-weight:700; }
.finder-result { padding:32px; border-radius:27px; background:#0c5f91; box-shadow:6px 8px 0 rgba(9,59,98,.17); }
.finder-result h3 { margin:0 0 10px; color:#fff; font-size:31px; }
.finder-result p { color:#fff; line-height:1.55; font-weight:600; }
.finder-result.is-ready { background:#fff0d6; }
.finder-result.is-ready h3 { color:#d76d62; }
.strength-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.strength-card { padding:26px; border:3px dashed #a9cbd3; border-radius:25px; background:#fffaf2; box-shadow:6px 8px 0 rgba(9,59,98,.17); display:grid;grid-template-columns:46px minmax(0,1fr);column-gap:14px;align-items:center;}
.strength-card .popup-btn{grid-column:1/-1;margin-top:18px;justify-self:start;}
.strength-card:nth-child(2) { background:#fff0d6; }
.strength-card:nth-child(3) { background:#d8f1ef; }
.strength-card > span { display:grid; place-items:center; width:46px; height:46px; border-radius:15px; background:#e78772; color:#fff; font-size:21px; line-height:1; font-weight:900; box-shadow:3px 4px 0 rgba(9,59,98,.16); }
.strength-card h3 { min-width:0;margin:0;font-size:24px; }
.strength-card p { grid-column:1/-1;margin:16px 0 0;color:#607987;line-height:1.55;font-weight:600; }
.monthly-note { display:grid; gap:3px; margin-top:20px; padding:15px; border:2px dashed rgba(255,255,255,.4); border-radius:16px; background:rgba(255,255,255,.12); }
.monthly-note strong { color:#f4c861; font-size:14px; }
.monthly-note-title{display:flex;align-items:center;gap:9px}
.monthly-info-button{display:inline-grid;place-items:center;flex:0 0 25px;width:25px;height:25px;padding:0;border:2px solid rgba(255,255,255,.72);border-radius:50%;background:var(--coral);color:#fff;font:900 13px/1 Georgia,serif;cursor:pointer;box-shadow:2px 3px 0 rgba(244,200,97,.55)}
.monthly-info-button:hover,.monthly-info-button:focus-visible{background:#fff;color:var(--teal);outline:none;transform:translateY(-1px)}
.monthly-info-text{margin:10px 0 0;padding:12px 13px;border-radius:12px;background:rgba(255,255,255,.13);color:#fff!important;font-size:12px!important;font-weight:700;line-height:1.55}
.monthly-info-text[hidden]{display:none}
.monthly-note span { color:#fff; font-size:18px; font-weight:900; }
.monthly-note small { color:rgba(255,255,255,.73); font-size:11px; }
.mobile-cta { display:none; }
@media (max-width:900px) { .notice-bar { padding-left:16px; padding-right:16px; } .finder-layout { grid-template-columns:1fr; } .strength-grid { grid-template-columns:1fr; } }
@media (max-width:620px) { .notice-bar { align-items:flex-start; flex-direction:column; gap:5px; } .trust-strip { grid-template-columns:repeat(2,1fr); margin-top:-8px; } .trust-strip div:nth-child(2) { border-right:0; } .trust-strip div:nth-child(-n+2) { border-bottom:2px dashed #a9cbd3; } .trust-strip div { padding:13px 9px; } .trust-strip strong { font-size:22px; } .mobile-cta { display:block; position:fixed; z-index:90; left:14px; right:14px; bottom:14px; padding:14px; border-radius:999px; background:#e78772; color:#fff; box-shadow:0 8px 25px rgba(59,90,105,.25); text-align:center; text-decoration:none; font-weight:900; } }




/* Teamfotos: Ausschnitt mit Gesicht, Schultern und Armen */
.team-card[data-trainer="lilly"] img,
.team-card[data-trainer="mehrshad"] img,
.team-card[data-trainer="trainer3"] img,
.team-card[data-trainer="trainer4"] img { object-position:50% 30%; }


/* Kurskarten: Schaltflächen in allen drei Kästchen exakt auf einer Höhe */
.story-card.course-card{display:flex;flex-direction:column;height:100%;transform:none!important;}
.story-card.course-card .course-click-hint{margin-top:auto;align-self:flex-start;}
.course-click-hint::before{content:none!important;}
.story-card.course-card:nth-child(2):hover,.story-card.course-card:nth-child(2):focus-visible,
.story-card.course-card:nth-child(3):hover,.story-card.course-card:nth-child(3):focus-visible{transform:translateY(-6px)!important;}


.pdf-button{
display:inline-flex;
align-items:center;
justify-content:center;
padding:14px 24px;
margin-top:18px;
background:#123f5c;
color:#fff !important;
font-weight:900;
font-size:16px;
text-decoration:none;
border-radius:999px;
box-shadow:4px 5px 0 rgba(9,59,98,.17);
transition:.2s;
}
.pdf-button:hover{transform:translateY(-2px);background:#287a9f;}


.pdf-button{
display:inline-flex!important;
align-items:center;
justify-content:center;
padding:22px 40px!important;
font-size:24px!important;
font-weight:900!important;
line-height:1.3;
background:#e78772!important;
color:#fff!important;
text-decoration:none!important;
border-radius:999px;
min-height:72px;
box-shadow:6px 8px 0 rgba(9,59,98,.22);
}
.pdf-button:hover{background:#d76d62!important;transform:translateY(-2px);}


/* Kurs-Dropdown und Links zu den neuen Unterseiten */
.nav-dropdown{position:relative}
.nav-dropdown-trigger{display:inline-flex;align-items:center;gap:4px}
.nav-dropdown-trigger::after{content:"▾";font-size:10px;color:var(--coral)}
.nav-submenu{position:absolute;top:100%;left:50%;display:none;min-width:245px;padding:8px;transform:translateX(-50%);border:2px dashed var(--line);border-radius:17px;background:var(--paper);box-shadow:var(--shadow)}
.nav-dropdown:hover .nav-submenu,.nav-dropdown:focus-within .nav-submenu{display:grid}
.nav-submenu a{display:block;padding:10px 12px!important;border-radius:12px!important;white-space:nowrap;text-align:left}
.nav-submenu a:hover,.nav-submenu a:focus-visible{background:var(--green);color:var(--teal)}
.course-page-button{display:inline-flex;align-items:center;justify-content:center;margin-top:auto;padding:11px 16px;border-radius:999px;background:var(--coral);color:#fff;text-decoration:none;font-size:12px;font-weight:900;box-shadow:3px 4px 0 rgba(9,59,98,.17);transition:transform .2s,box-shadow .2s}
.course-page-button::after{content:" →";margin-left:6px}
.course-page-button:hover,.course-page-button:focus-visible{transform:translateY(-2px);box-shadow:4px 6px 0 rgba(9,59,98,.22)}
.hero-mascot img{width:min(112%,620px)}
@media(max-width:900px){
  .nav-dropdown{display:grid;width:100%}
  .nav-dropdown-trigger{justify-content:center}
  .nav-submenu{position:static;display:grid;min-width:0;margin:2px 0 6px;padding:6px;transform:none;box-shadow:none;background:var(--green)}
  .nav-submenu a{text-align:center}
}
@media(max-width:620px){
  .hero-mascot img{width:min(108%,460px)}
}

/* Einheitliches Responsive-Finish für Desktop, Tablet und Handy */
@media(max-width:1100px){
  .nav-links{display:none;position:absolute;left:16px;right:16px;top:75px;max-height:calc(100vh - 92px);overflow-y:auto;flex-direction:column;align-items:stretch;padding:10px;border:2px dashed var(--line);border-radius:20px;background:var(--paper);box-shadow:var(--shadow)}
  .nav-links.open{display:flex}
  .nav-links a,.nav-dropdown-toggle{text-align:center}
  .nav-dropdown-toggle{width:100%}
  .menu-toggle{display:block}
  .nav-dropdown{display:grid;width:100%}
  .nav-dropdown-trigger{justify-content:center}
  .nav-submenu{position:static;display:grid;width:auto;min-width:0;margin:4px 8px 7px;padding:6px;transform:none;box-shadow:none;background:var(--green)}
  .nav-submenu a{white-space:normal;text-align:center}
}
@media(max-width:900px){
  .section-head{flex-direction:column;align-items:flex-start}
  .section-head p{max-width:680px}
  .hero-copy{max-width:720px}
  .hero-mascot{width:min(100%,620px);margin:auto}
  .course-section-hint{width:100%;border-radius:18px;text-align:center}
}
@media(max-width:620px){
  body{padding-bottom:76px}
  .nav-inner{gap:9px}
  .nav-button{margin-left:auto}
  .hero-actions,.form-actions{display:grid;grid-template-columns:1fr;width:100%}
  .hero-actions .button,.form-actions .button{width:100%}
  .section-head{gap:18px;margin-bottom:25px}
  .section-head h2{font-size:clamp(34px,11vw,48px)}
  .section-head>p{width:100%;max-width:none;padding:14px 15px 14px 19px;font-size:13px;line-height:1.5}
  .story-card,.strength-card,.parent-card,.contact-card,.price-main,.time-card{padding:23px 20px}
  .price-big{font-size:39px}
  .modal{align-items:end;padding:8px}
  .modal-card{max-height:calc(100dvh - 16px);padding:24px 18px 22px;border-radius:22px}
  .modal-card h2{margin:0 42px 10px 0;font-size:38px}
  .modal-close{right:10px;top:10px}
  .check{align-items:flex-start;font-size:12px}
  .check input{flex:0 0 auto;width:18px;height:18px;margin-top:1px}
  .pdf-button{width:100%;min-height:54px;padding:14px 18px!important;font-size:16px!important;text-align:center}
  .site-footer{padding-bottom:105px}
}
@media(max-width:380px){
  .nav-button{padding:9px 10px;font-size:11px}
  .menu-toggle{font-size:22px}
  .hero{padding-left:12px;padding-right:12px}
  .mascot-label{max-width:175px;font-size:12px}
}
@media(max-width:520px){
  html,body{width:100%;max-width:100%;overflow-x:hidden}
  .nav-inner{width:calc(100% - 20px);min-height:60px;gap:8px}
  .brand{min-width:0;gap:7px}
  .brand img{width:38px;height:38px;flex:0 0 38px}
  .brand span{display:inline!important;max-width:145px;overflow:hidden;font-size:12px;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}
  .nav-button{display:none}
  .menu-toggle{margin-left:auto}
  .nav-links{top:64px;right:8px;left:8px}
  .notice-bar{padding:8px 11px}
  .notice-bar div{gap:5px}
  .notice-bar strong,.notice-bar span{width:100%}
  .hero{padding:45px 11px 82px}
  .hero h1{font-size:clamp(39px,13vw,54px);overflow-wrap:anywhere}
  .hero-copy>p:not(.eyebrow){font-size:16px!important}
  .hero-mascot{min-height:315px}
  .hero-mascot img{width:100%;max-width:430px}
  .mascot-sun{width:min(72vw,255px);height:min(72vw,255px)}
  .section{width:calc(100% - 20px);padding:60px 0}
  .section-head,.cards-3,.step-row,.team-grid,.parent-grid,.contact-grid,.price-wrap,.footer-grid{min-width:0;max-width:100%}
  .story-card,.step,.team-card,.parent-card,.contact-card,.price-main,.time-card,.strength-card,.finder-card,.finder-result{width:100%;min-width:0;max-width:100%;overflow-wrap:anywhere}
  .course-section-hint{padding:9px 11px;font-size:12px;line-height:1.4}
  .price-big{display:flex;flex-direction:column;gap:5px;letter-spacing:-.04em}
  .price-big small{line-height:1.3}
  .footer-mascot{align-items:flex-start}
  .footer-mascot img{width:48px;height:48px;flex:0 0 48px}
  .footer-brand{font-size:21px;line-height:1.15;overflow-wrap:anywhere}
  .footer-grid p,.footer-grid a{overflow-wrap:anywhere}
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;row-gap:22px}
  .footer-grid>div:first-child{grid-column:1/-1}
  .field,.field input,.field select,.field textarea{min-width:0;max-width:100%}
  .mobile-cta{right:8px;bottom:max(8px,env(safe-area-inset-bottom));left:8px}
}
@media(max-width:720px){
  body{padding-top:70px}
  .site-nav{position:fixed;top:0;right:0;left:0;width:100%}
  #home .hero-copy{display:flex;flex-direction:column}
  #home .hero-copy>.eyebrow{order:1}
  #home .hero-copy>h1{order:2}
  #home .hero-copy>p:not(.eyebrow):not(.hero-note){order:3}
  .hero-mascot-desktop{display:none}
  #home .hero-actions{order:4;margin-top:24px}
  #home .hero-secondary{min-height:44px;padding:11px 18px;border:2px solid #fff;background:var(--yellow);color:var(--teal);font-size:14px;box-shadow:3px 4px 0 var(--coral)}
  #home .hero-secondary:hover,#home .hero-secondary:focus-visible{background:#fff;color:var(--teal);box-shadow:4px 5px 0 var(--coral)}
  .hero-mascot-mobile{display:grid;order:5;width:100%;min-height:300px;margin:18px auto 0}
  #home .hero-note{order:6}
  .site-footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;row-gap:22px}
  .site-footer .footer-grid>div:first-child{grid-column:1/-1}
  .nav-inner{width:calc(100% - 20px);gap:8px}
  .brand{min-width:0;gap:7px}
  .brand img{width:38px;height:38px;flex:0 0 38px}
  .brand span{display:inline!important;max-width:155px;overflow:hidden;font-size:12px;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}
  .nav-button{display:none}
  .menu-toggle{margin-left:auto}
  #home .hero-actions,#warum .hero-actions{justify-content:center;justify-items:center;width:100%}
  #home .hero-actions{display:grid;grid-template-columns:1fr}
  #home .hero-actions .button{width:100%!important;max-width:none;justify-self:stretch;text-align:center}
  #home .hero-actions .hero-secondary{width:min(100%,220px)!important;justify-self:center}
  #warum .hero-actions .button{width:min(100%,230px)!important;justify-self:center;text-align:center}
  .team-card[data-trainer="lilly"] img,.team-card[data-trainer="mehrshad"] img,.team-card[data-trainer="trainer3"] img,.team-card[data-trainer="trainer4"] img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 25%}
  .site-footer .footer-grid>div:nth-child(2),.site-footer .footer-grid>div:nth-child(3),.site-footer .footer-grid>div:nth-child(4){text-align:center}
  .site-footer .footer-grid>div:nth-child(2) p,.site-footer .footer-grid>div:nth-child(3) p,.site-footer .footer-grid>div:nth-child(4) p{margin-right:auto;margin-left:auto}
  .site-footer .footer-grid>div:nth-child(4){grid-column:1/-1}
}
@media(max-width:1100px){
  .nav-links{max-height:calc(100dvh - 84px);overflow-y:auto}
  .nav-dropdown>.nav-submenu,.nav-item>.nav-submenu{display:none!important}
  .nav-dropdown.submenu-open>.nav-submenu,.nav-item.submenu-open>.nav-submenu{display:grid!important}
  .nav-dropdown.submenu-open>.nav-dropdown-trigger,.nav-item.submenu-open>.nav-dropdown-toggle{background:var(--green);color:var(--teal)}
  .nav-dropdown.submenu-open>.nav-dropdown-trigger::after,.nav-item.submenu-open>.nav-dropdown-toggle::after{content:"▴"}
}
@media(max-width:520px){body{padding-top:60px}}

/* Footer auf kleinen Handys: alle Bereiche klar untereinander */
@media(max-width:620px){
  .site-footer .footer-grid{display:grid;grid-template-columns:1fr!important;gap:28px}
  .site-footer .footer-grid>div{grid-column:1!important;grid-row:auto!important;width:100%;min-width:0;text-align:center}
  .site-footer .footer-mascot{justify-content:center}
  .site-footer .footer-grid h3{margin:0 0 12px}
}
/* Organische Kapitelhinweise im Quappi-Stil */
#kontakt .section-head>p{display:none}
.section.wave-band{isolation:isolate}
.section.wave-band::before{width:100vw}
.section.wave-band::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:50%;
  width:100vw;
  background:var(--green);
  transform:translateX(-50%);
  z-index:-1;
}
.section-head>p{
  position:relative;
  align-self:end;
  padding:23px 22px 18px;
  border:1px solid rgba(110,194,206,.48);
  border-radius:30px 30px 9px 30px;
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(216,241,239,.96));
  color:var(--teal);
  font-size:14px;
  font-weight:700;
  line-height:1.58;
  box-shadow:0 13px 30px rgba(9,59,98,.11),5px 6px 0 rgba(244,200,97,.38);
  transform:rotate(-.65deg);
}
.section-head>p::before{
  content:"Auf einen Blick";
  position:absolute;
  top:-14px;
  left:22px;
  width:auto;
  height:auto;
  padding:6px 12px;
  border:0;
  border-radius:999px;
  background:var(--coral);
  color:#fff;
  font-size:10px;
  font-weight:900;
  letter-spacing:.09em;
  line-height:1;
  text-transform:uppercase;
  box-shadow:2px 3px 0 var(--yellow);
  transform:rotate(-2deg);
}
.section-head>p::after{
  content:"";
  position:absolute;
  left:31px;
  bottom:-9px;
  width:19px;
  height:19px;
  border-right:1px solid rgba(110,194,206,.38);
  border-bottom:1px solid rgba(110,194,206,.38);
  border-radius:0 0 5px 0;
  background:#d8f1ef;
  transform:rotate(38deg);
  z-index:-1;
}
@media(max-width:620px){
  .section-head>p{width:100%;max-width:none;margin-top:10px;padding:23px 17px 17px;border-radius:24px 24px 8px 24px;font-size:13px;line-height:1.52;transform:none}
  .section-head>p::before{left:17px}
}

.field.has-error input,.field.has-error select,.field.has-error textarea{border-color:var(--coral);box-shadow:0 0 0 4px rgba(231,135,114,.17)}
.check.has-error{padding:9px 11px;border-radius:12px;background:#fff0ec;color:var(--teal)}
.validation-message{grid-column:1/-1;margin:0;padding:8px 11px;border-left:4px solid var(--coral);border-radius:8px;background:#fff0ec;color:#a23e2d;font-size:12px;font-weight:900;line-height:1.4}

/* Klare Bedienung */
.hero-secondary{border:2px solid rgba(255,255,255,.8);background:transparent;color:#fff;box-shadow:none}
.hero-secondary:hover,.hero-secondary:focus-visible{background:#fff;color:var(--teal);box-shadow:none}
.course-page-button{position:static;font-size:14px}
.course-page-button::before{content:"";position:absolute;z-index:3;inset:0;border-radius:27px}
.team-placeholder-text{padding:24px;background:#d8f1ef;color:var(--teal);font-size:20px;line-height:1.3;text-align:center}
.last-course-link{display:table;margin:14px auto 24px;padding:10px 15px;border:2px solid var(--water);border-radius:999px;background:#fff;color:var(--teal);font-size:14px;font-weight:900;text-decoration:none}
.last-course-link:hover,.last-course-link:focus-visible{border-color:var(--coral);outline:none;transform:translateY(-2px)}

/* Bessere Lesbarkeit kleiner Texte */
.nav-links a,.nav-dropdown-toggle{font-size:13px}
.hero-note,.notice-bar span,.trust-strip span{font-size:14px!important}
.course-section-hint,.field label,.check,.qr-box span{font-size:14px}
.footer-bottom{font-size:13px}

/* Optimierte Startgrafik immer vollständig anzeigen */
.hero-mascot img{height:auto!important;object-fit:contain}
