/* ============================================================
   THERAPIEZENTRUM BECK & KOLLEGEN · SHARED STYLES  (Apple-Look, Runde 5)
   Reihenfolge: Tokens → Basis → Header → Sektionen → Mobile-Layer (EIN Block).
   ============================================================ */
@font-face { font-family:"Space Grotesk"; src:url("/fonts/space-grotesk-var.woff2") format("woff2"); font-weight:300 700; font-display:swap; }

/* ---------- TOKENS ---------- */
:root {
  --ink:#191932; --ink-soft:#5E5E72; --ink-mute:#8A8A9A;
  --bg:#FAFAFC; --bg-2:#F3F3F6; --white:#FFFFFF;
  --night:#0B0B16; --night-2:#141424;
  --on-deep:#F2F2F6;
  --taupe:#AAA297; --taupe-dark:#857C70;
  --accent:var(--ink); --accent-soft:var(--taupe);
  --c-physio:#62C78C; --c-chiro:#E54052; --c-lern:#F2CA52; --c-training:#9CA0A6; --c-longevity:#FFBB90; --c-kaelte:#7FC4E8; --c-hashi:#62C78C; --c-ersch:#E9A23B; --c-coach:#6C8FCB;
  --grad-haus:linear-gradient(90deg, #62C78C 0%, #7FC4E8 30%, #E54052 60%, #FFBB90 80%, #F2CA52 100%);
  --font-display:"Space Grotesk","Helvetica Neue",Arial,sans-serif; --font-text:"Space Grotesk","Helvetica Neue",Arial,sans-serif; --font-mono:"SF Mono",ui-monospace,"Cascadia Mono",Consolas,monospace;
  --fs-h1:clamp(2.6rem,4.6vw,4.4rem); --fs-h2:clamp(2.05rem,4vw,3.4rem); --fs-h3:clamp(1.15rem,1.6vw,1.35rem); --fs-lead:clamp(1.02rem,1.3vw,1.15rem); --fs-body:1rem; --fs-eyebrow:.7rem;
  --r:22px; --r-lg:30px;
  --shadow-soft:0 40px 90px -45px rgba(25,25,50,.45); --shadow-card:0 22px 55px -32px rgba(25,25,50,.28);
  --container:1240px; --container-narrow:920px; --section-pad:clamp(4.5rem,9vw,8rem);
  --ease:cubic-bezier(.16,1,.3,1); --ease-p:cubic-bezier(.2,.8,.2,1); --dur:.8s;
}

/* ---------- BASIS ---------- */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth} html,body{overflow-x:clip}
body{font-family:var(--font-text);font-size:var(--fs-body);line-height:1.65;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block} a{color:inherit}
h1,h2,h3{font-family:var(--font-display);font-weight:700;line-height:1.04;letter-spacing:-.035em;text-wrap:balance}
h1{font-size:var(--fs-h1)} h2{font-size:var(--fs-h2);margin-bottom:1.2rem} h3{font-size:var(--fs-h3);line-height:1.2;letter-spacing:-.015em}
.lead{font-size:var(--fs-lead);line-height:1.6;color:var(--ink-soft);max-width:33rem}
.amp{color:var(--taupe);font-weight:500;font-style:normal}
.accent{font-style:normal;color:var(--ink-soft)}
.grad{font-style:normal;background:var(--grad-haus);-webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.08em;margin-right:-.08em}
.eyebrow{display:block;font-size:.72rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:1.1rem}
.eyebrow::before{content:"— "}
.section--deep .eyebrow{color:rgba(242,242,246,.55)} .section--deep .lead{color:rgba(242,242,246,.7)}
section{padding:var(--section-pad) 1.5rem;position:relative}
.section--bg{background:var(--bg)} .section--bg2{background:var(--bg-2)}
.section--deep{background:var(--night);color:var(--on-deep);overflow:hidden}
.section--deep::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;background:radial-gradient(50% 55% at 50% 0%,rgba(255,255,255,.06),transparent 70%)}
.section--deep>*{position:relative;z-index:1}
.container{max-width:var(--container);margin:0 auto} .container--narrow{max-width:var(--container-narrow);margin:0 auto}
.sec-head{max-width:46rem;margin:0 auto 2.8rem;text-align:center} .sec-head .lead{margin-left:auto;margin-right:auto}

/* ---------- BUTTONS ---------- */
.btn{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.9rem 1.6rem;border-radius:999px;font-weight:600;font-size:.95rem;text-decoration:none;border:1.5px solid transparent;cursor:pointer;font-family:inherit;line-height:1.2;transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s}
.btn::after{content:"";position:absolute;top:0;left:-80%;width:50%;height:100%;transform:skewX(-20deg);background:linear-gradient(105deg,transparent,rgba(255,255,255,.35),transparent);transition:left .6s var(--ease-p)}
.btn:hover{transform:translateY(-2px)} .btn:hover::after{left:130%}
.btn--primary{background:var(--ink);color:#fff;box-shadow:0 18px 40px -18px rgba(25,25,50,.55)}
.btn--ghost{border-color:rgba(25,25,50,.16);color:var(--ink);background:rgba(255,255,255,.6)}
.btn--light{background:#fff;color:var(--ink)}
.section--deep .btn--primary{background:#fff;color:var(--ink)}
.link{color:var(--ink);font-weight:600;text-decoration:none;font-size:.95rem}
.link::after{content:" ›"}

/* ---------- REVEAL ---------- */
[data-reveal]{opacity:0;transform:translateY(30px);transition:opacity var(--dur) var(--ease-p),transform var(--dur) var(--ease-p);transition-delay:var(--d,0ms)}
[data-reveal="zoom"]{transform:scale(.94)} [data-reveal="left"]{transform:translateX(-40px)} [data-reveal="right"]{transform:translateX(40px)}
[data-reveal].is-visible{opacity:1;transform:none}
.rise{opacity:0;transform:translateY(20px);animation:rise .9s var(--ease) var(--d,0ms) forwards} @keyframes rise{to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){[data-reveal],.rise{opacity:1;transform:none;transition:none;animation:none} html{scroll-behavior:auto} *,*::before,*::after{animation:none!important}}

/* ============================================================
   HEADER · Glas, Menü (Website-Modus), ein CTA
   ============================================================ */
.hdr { position:fixed; inset:0 0 auto 0; z-index:120; padding:.9rem 1.5rem; transition:background .4s, box-shadow .4s, padding .4s; }
.hdr__in { max-width:var(--container); margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:1.5rem; }
.hdr.scrolled { background:rgba(250,250,252,.72); backdrop-filter:blur(20px) saturate(180%); -webkit-backdrop-filter:blur(20px) saturate(180%); box-shadow:0 1px 0 rgba(25,25,50,.06); padding:.6rem 1.5rem; }
.hdr__logo { display:flex; align-items:center; gap:.7rem; text-decoration:none; }
.hdr__logo img { height:34px; width:auto; }
.hdr__logo span { font-family:var(--font-mono); font-size:.58rem; letter-spacing:.2em; text-transform:uppercase; color:var(--ink-mute); padding:.3rem .6rem; border:1px solid rgba(25,25,50,.14); border-radius:999px; }
.nav { display:flex; align-items:center; gap:1.9rem; }
.nav a { font-size:.9rem; font-weight:500; text-decoration:none; color:var(--ink); opacity:.78; transition:opacity .25s; }
.nav a:hover { opacity:1; }
.nav > .btn { display:none; }
.nav__dd { position:relative; }
.nav__dd > a::after { content:""; display:inline-block; width:6px; height:6px; margin-left:.45rem; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:rotate(45deg) translateY(-3px); }
.nav__menu { position:absolute; top:calc(100% + 1rem); left:50%; transform:translate(-50%, 8px); width:560px; padding:.8rem; border-radius:20px; background:rgba(251,251,252,.96); backdrop-filter:blur(20px); border:1px solid rgba(25,25,50,.08); box-shadow:var(--shadow-soft); display:grid; grid-template-columns:1fr 1fr; gap:.25rem; opacity:0; pointer-events:none; transition:opacity .3s var(--ease-p), transform .3s var(--ease-p); }
.nav__dd:hover .nav__menu, .nav__dd:focus-within .nav__menu { opacity:1; pointer-events:auto; transform:translate(-50%, 0); }
.nav__menu::before { content:""; position:absolute; left:0; right:0; top:-1.2rem; height:1.3rem; }
.nav__dd::after { content:""; position:absolute; left:-1rem; right:-1rem; top:100%; height:1.2rem; }
.nav__menu a { display:grid; grid-template-columns:10px 1fr; align-items:center; gap:.75rem; padding:.6rem .8rem; border-radius:12px; font-size:.88rem; opacity:1; }
.nav__menu a:hover { background:rgba(25,25,50,.05); }
.nav__menu a i { width:10px; height:10px; border-radius:50%; background:var(--c, var(--taupe)); }
.nav__menu a small { display:block; font-size:.72rem; color:var(--ink-soft); font-weight:400; }
.hdr__cta { display:flex; align-items:center; gap:1rem; }
.hdr__tel { font-size:.88rem; font-weight:500; text-decoration:none; color:var(--ink); opacity:.78; }
.hdr .btn { padding:.7rem 1.3rem; font-size:.88rem; }
.burger { display:none; width:44px; height:44px; border:0; background:none; cursor:pointer; position:relative; }
.burger span { position:absolute; left:11px; right:11px; height:2px; background:var(--ink); border-radius:2px; transition:transform .3s var(--ease-p), opacity .3s; }
.burger span:nth-child(1){ top:15px } .burger span:nth-child(2){ top:21px } .burger span:nth-child(3){ top:27px }
body.nav-open .burger span:nth-child(1){ transform:translateY(6px) rotate(45deg) } body.nav-open .burger span:nth-child(2){ opacity:0 } body.nav-open .burger span:nth-child(3){ transform:translateY(-6px) rotate(-45deg) }
body.nav-dark .hdr:not(.scrolled) .nav > a, body.nav-dark .hdr:not(.scrolled) .nav__dd > a, body.nav-dark .hdr:not(.scrolled) .hdr__tel, body.nav-dark .hdr:not(.scrolled) .burger span { color:var(--on-deep); background-color:transparent; }
.nav__menu a, body.nav-dark .hdr:not(.scrolled) .nav__menu a { color:var(--ink); }


/* ============================================================
   HERO · Text links, Lounge-Foto rechts weich ausgeblendet, UI-Karte auf dem
   Foto (Runde-1-Aufbau im Apple-Look). Mobil: Foto randlos oben, Text mittig.
   ============================================================ */
.hero{position:relative;overflow:hidden;isolation:isolate;min-height:min(100svh,860px);display:flex;align-items:center;padding:8.2rem 1.5rem 5.5rem;background:var(--bg)}
.hero::before{content:"";position:absolute;inset:-10% -10% auto;height:80%;z-index:-1;pointer-events:none;background:radial-gradient(40% 50% at 20% 30%,rgba(98,199,140,.14),transparent 70%),radial-gradient(35% 45% at 45% 10%,rgba(255,187,144,.18),transparent 70%),radial-gradient(30% 40% at 30% 80%,rgba(127,196,232,.14),transparent 70%);filter:blur(30px)}
.hero__grid{width:100%;display:grid;grid-template-columns:1.02fr .98fr;gap:clamp(2rem,5vw,5.5rem);align-items:center}
.hero__txt{container-type:inline-size;min-width:0;position:relative;z-index:2;text-align:left}
.hero__pill{display:inline-flex;align-items:center;gap:.55rem;padding:.5rem 1rem;border-radius:999px;background:rgba(255,255,255,.75);border:1px solid rgba(25,25,50,.08);box-shadow:0 8px 24px -14px rgba(25,25,50,.3);font-size:.8rem;font-weight:500;color:var(--ink-soft);backdrop-filter:blur(10px)}
.hero__pill .pulse{width:8px;height:8px}
.hero__pill.status-pill{font-family:var(--font-text);letter-spacing:0;font-size:.8rem;box-shadow:0 8px 24px -14px rgba(25,25,50,.3);white-space:nowrap}
.hero__h1{font-size:min(clamp(2.6rem,4.6vw,4.2rem),11.4cqi);line-height:1.02;letter-spacing:-.04em;margin:1.5rem 0 1.2rem}
.hero__h1 span{display:block;white-space:nowrap}
.hero__lead{font-size:clamp(1.05rem,1.4vw,1.22rem);line-height:1.55;color:var(--ink-soft);max-width:31rem} .hero__lead em{font-style:italic;font-weight:600;color:var(--ink)}
.hero__ctas{display:flex;align-items:center;gap:1.4rem;margin-top:1.8rem;flex-wrap:wrap}
.hero__vis{position:static}
.hero__photo{position:absolute;z-index:0;top:4.6rem;bottom:0;right:0;width:60%;margin:0;-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.55) 18%,#000 42%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.55) 18%,#000 42%)}
.hero__photo img{width:100%;height:100%;object-fit:cover;object-position:62% 50%}
.hero__photo::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,var(--bg) 0%,transparent 22%)}
.hero .ui{position:absolute;z-index:3;right:max(1.5rem,calc((100% - var(--container)) / 2));bottom:10%;width:min(320px,34%);opacity:0;animation:rise 1s var(--ease) .7s forwards,uiFloat 7s ease-in-out 1.7s infinite alternate}
@keyframes uiFloat{from{transform:translateY(0)}to{transform:translateY(-10px)}}
.ui{padding:1.1rem 1.1rem 1rem;border-radius:20px;background:rgba(255,255,255,.86);backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);border:1px solid rgba(255,255,255,.9);box-shadow:0 40px 70px -30px rgba(25,25,50,.5);color:var(--ink);text-align:left}
.ui__hd{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-bottom:.8rem}
.ui__t{font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.ui__tag{font-size:.66rem;font-weight:600;color:var(--ink-soft);background:rgba(25,25,50,.06);padding:.25rem .6rem;border-radius:999px;white-space:nowrap}
.ui__steps{display:grid;gap:.35rem}
.ui__step{display:grid;grid-template-columns:20px 1fr auto;align-items:center;gap:.6rem;padding:.5rem .6rem;border-radius:12px;font-size:.82rem;font-weight:600;transition:background .5s,box-shadow .5s}
.ui__step i{width:20px;height:20px;border-radius:50%;border:1.5px solid rgba(25,25,50,.2);display:grid;place-items:center;transition:background .4s,border-color .4s}
.ui__step i svg{width:10px;height:10px;stroke:#fff;stroke-width:3;fill:none;opacity:0;transition:opacity .3s}
.ui__step em{font-style:normal;font-size:.7rem;font-weight:600;color:var(--ink-soft);white-space:nowrap}
.ui__step.is-done i{background:var(--ink);border-color:var(--ink)} .ui__step.is-done i svg{opacity:1}
.ui__step.is-hot{background:#fff;box-shadow:0 8px 20px -12px rgba(25,25,50,.35)} .ui__step.is-hot i{border-color:var(--ink);box-shadow:0 0 0 4px rgba(25,25,50,.1)}
.ui__note{display:block;margin-top:.6rem;font-size:.64rem;color:var(--ink-mute)}
@media (max-width:1024px) and (min-width:769px){.hero__h1{font-size:min(clamp(2.3rem,5vw,3.3rem),11.4cqi)} .hero__photo{width:56%} .hero .ui{width:min(290px,40%)}}
@media (prefers-reduced-motion:reduce){.hero .ui{opacity:1;animation:none}}

/* ---------- DAS HAUS · Lounge-Karte mit Chips + große Galerie ---------- */
.haus{position:relative;max-width:var(--container);margin:0 auto}
.haus__img{border-radius:var(--r-lg);overflow:hidden;aspect-ratio:16/8.4;box-shadow:var(--shadow-soft)}
.haus__img img{width:100%;height:100%;object-fit:cover;object-position:50% 60%;transform:scale(1.03);animation:kb 18s ease-in-out infinite alternate}
@keyframes kb{to{transform:scale(1.08) translateX(-1.5%)}}
.chip{position:absolute;z-index:3;display:inline-flex;align-items:center;gap:.5rem;padding:.6rem .95rem;border-radius:999px;background:rgba(255,255,255,.84);border:1px solid rgba(255,255,255,.9);box-shadow:0 18px 40px -18px rgba(25,25,50,.45);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);font-size:.84rem;font-weight:600;color:var(--ink);white-space:nowrap;animation:floaty 6s ease-in-out infinite alternate}
.chip i{width:9px;height:9px;border-radius:50%;background:var(--c,var(--taupe));flex:none}
.chip small{font-weight:500;color:var(--ink-soft)}
@keyframes floaty{to{transform:translateY(-8px)}}
.chip--1{left:3%;top:10%} .chip--2{left:5%;bottom:14%;animation-delay:-2s} .chip--3{right:4%;top:12%;animation-delay:-3.5s} .chip--4{right:5%;bottom:16%;animation-delay:-5s}
.gal{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1rem}
.gal__i{margin:0;position:relative;border-radius:22px;overflow:hidden;aspect-ratio:4/3;background:var(--bg-2)}
.gal__i--l{aspect-ratio:4/3}
.gal__i img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease-p)} .gal__i:hover img{transform:scale(1.05)}
.gal__i figcaption{position:absolute;left:1rem;bottom:1rem;padding:.4rem .8rem;border-radius:999px;background:rgba(255,255,255,.82);backdrop-filter:blur(10px);font-size:.74rem;font-weight:600;color:var(--ink)}
/* Imagefilm */
.film .sec-head{max-width:62rem} .film .sec-head .lead{max-width:42rem} .film .sec-head h2{font-size:clamp(2rem,4.8vw,3.5rem);letter-spacing:-.03em;line-height:1.05}
.film__pill{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;background:rgba(25,25,50,.06);border-radius:999px;font-size:.69rem;font-weight:700;color:var(--ink);letter-spacing:.08em;text-transform:uppercase;margin-bottom:1.1rem}
.film__live{width:8px;height:8px;border-radius:50%;background:#ef4444;box-shadow:0 0 0 4px rgba(239,68,68,.18);animation:filmPulse 1.8s ease-in-out infinite}
@keyframes filmPulse{0%,100%{box-shadow:0 0 0 4px rgba(239,68,68,.18)}50%{box-shadow:0 0 0 8px rgba(239,68,68,.05)}}
.film__frame{position:relative;max-width:1000px;margin:0 auto;aspect-ratio:1280/548;border-radius:28px;overflow:hidden;background:#0a0a1a;box-shadow:0 40px 100px -20px rgba(25,25,50,.4),0 0 0 1px rgba(25,25,50,.06)}
.film__frame .vthumb{position:absolute;inset:0;height:100%;aspect-ratio:auto;border-radius:0;box-shadow:none}
.film__frame .vthumb::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05) 0%,rgba(0,0,0,0) 40%,rgba(0,0,0,.6) 100%);pointer-events:none}
.film__frame .vthumb img{transition:transform .7s var(--ease-p),filter .4s ease} .film__frame .vthumb:hover img{transform:scale(1.04);filter:brightness(.86)}
.film__frame .play--xl{width:96px;height:96px;background:linear-gradient(135deg,#E54052,#62C78C);border:0;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:0 20px 60px rgba(0,0,0,.42),0 0 0 8px rgba(255,255,255,.14);z-index:2} .film__frame .play--xl svg{width:36px;height:36px;margin-left:5px}
.film__frame iframe{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;border-radius:0}

/* ---------- CHIP-LAUFBAND (B32) ---------- */
.chiprail{padding:2.2rem 0 3.2rem;background:var(--bg)}
.chiprail__note{text-align:center;font-size:.9rem;color:var(--ink-soft);margin-bottom:1.1rem}
.chiprail__note b{color:var(--ink);font-weight:600}
.chiprail__track{display:flex;gap:.6rem;width:max-content;animation:marquee 60s linear infinite;padding:.3rem 0}
.chiprail__track--rev{animation-direction:reverse;animation-duration:70s}
.chiprail__wrap{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.chiprail__wrap:hover .chiprail__track{animation-play-state:paused}
.rchip{display:inline-flex;align-items:center;gap:.5rem;padding:.55rem 1rem;border-radius:999px;background:#fff;border:1px solid rgba(25,25,50,.08);font-size:.86rem;font-weight:500;color:var(--ink);white-space:nowrap;box-shadow:0 6px 16px -12px rgba(25,25,50,.25)}
.rchip i{width:7px;height:7px;border-radius:50%;background:var(--c,var(--taupe))}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ============================================================
   DUNKEL · Riesenzahl + Welten-Karussell (Apple-Karten, horizontal)
   ============================================================ */
.bignum{text-align:center;padding-bottom:1rem}
.bignum__n{font-family:var(--font-display);font-weight:700;font-size:clamp(6rem,18vw,14rem);line-height:.9;letter-spacing:-.06em;font-variant-numeric:tabular-nums;background:linear-gradient(180deg,#fff 0%,rgba(255,255,255,.35) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:1.2rem}
.bignum__n small{font-size:.26em;letter-spacing:-.02em;margin-left:.08em}
.bignum__l{font-size:clamp(1.1rem,1.9vw,1.45rem);line-height:1.4;color:rgba(242,242,246,.65);max-width:34rem;margin:0 auto}
.bignum__l strong{color:#fff;font-weight:600}
.welten{margin-top:4.5rem}
.welten__head{display:flex;align-items:end;justify-content:space-between;gap:2rem;max-width:var(--container);margin:0 auto 1.8rem;padding:0 1.5rem}
.welten__head h2{margin:0;max-width:16ch}
.welten__nav{display:flex;gap:.6rem}
.welten__nav button{width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:#fff;cursor:pointer;display:grid;place-items:center;transition:background .3s,transform .3s var(--ease-p)}
.welten__nav button:hover{background:rgba(255,255,255,.14);transform:translateY(-2px)}
.welten__nav button:disabled{opacity:.3;cursor:default;transform:none}
.welten__nav svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.rowwrap{overflow:hidden}
.row{display:flex;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:.4rem 1.5rem 2.4rem;padding-left:max(1.5rem, calc((100vw - 1240px) / 2 + 1.5rem));scroll-padding-left:max(1.5rem, calc((100vw - 1240px) / 2 + 1.5rem));cursor:grab}
.row::-webkit-scrollbar{display:none} .row.is-drag{cursor:grabbing;scroll-snap-type:none}
.wk{--c:var(--taupe);flex:0 0 clamp(300px,27vw,380px);aspect-ratio:4/5;scroll-snap-align:start;position:relative;border-radius:26px;overflow:hidden;background:var(--night-2);color:#fff;text-decoration:none;display:flex;flex-direction:column;justify-content:flex-end;padding:1.6rem;isolation:isolate;border:1px solid rgba(255,255,255,.08);transition:transform .5s var(--ease-p),border-color .4s}
.wk::before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(70% 60% at 50% 0%,color-mix(in srgb,var(--c) 55%,transparent),transparent 70%)}
.wk__img{position:absolute;inset:0;z-index:-3}
.wk__img img{width:100%;height:100%;object-fit:cover;opacity:.55;filter:saturate(.7);transition:transform 1.2s var(--ease-p),opacity .6s}
.wk::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(11,11,22,0) 25%,rgba(11,11,22,.75) 70%,rgba(11,11,22,.96) 100%)}
.wk:hover{transform:translateY(-6px);border-color:rgba(255,255,255,.2)} .wk:hover .wk__img img{transform:scale(1.06);opacity:.7}
.wk__num{position:absolute;top:1.3rem;left:1.5rem;font-size:.7rem;font-weight:600;letter-spacing:.14em;color:rgba(255,255,255,.6);font-variant-numeric:tabular-nums}
.wk__dot{position:absolute;top:1.3rem;right:1.5rem;width:10px;height:10px;border-radius:50%;background:var(--c);box-shadow:0 0 0 6px color-mix(in srgb,var(--c) 25%,transparent)}
.wk__t{font-size:clamp(1.6rem,2.2vw,2rem);font-weight:700;letter-spacing:-.035em;line-height:1;margin-bottom:.5rem}
.wk__t .amp{color:var(--c);font-size:.7em;position:relative;top:-.35em;margin:0 .05em}
.wk__p{font-size:.92rem;line-height:1.5;color:rgba(242,242,246,.78);max-width:24rem}
.wk__go{display:inline-flex;align-items:center;gap:.5rem;margin-top:1rem;font-size:.85rem;font-weight:600;color:var(--c)}
.wk__go svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s} .wk:hover .wk__go svg{transform:translateX(4px)}

/* ============================================================
   STATEMENT hell · Wort-Story (B31)
   ============================================================ */
.story{text-align:center}
.story__p{font-size:clamp(1.35rem,2.5vw,2rem);line-height:1.45;letter-spacing:-.015em;color:var(--ink);max-width:46rem;margin:1.4rem auto 0;font-weight:500}
.story__p .w{opacity:.18;transition:opacity .4s} .story__p .w.on{opacity:1}
.story__p .big{color:var(--ink);font-weight:700}

/* ============================================================
   ÖFFNUNGSZEITEN · FAB + Sheet (B17) + Status-Pill
   ============================================================ */
.status-pill { display:inline-flex; align-items:center; gap:.6rem; padding:.55rem 1.15rem; border-radius:999px; background:rgba(255,255,255,.72); backdrop-filter:blur(8px); font-family:var(--font-mono); font-size:.68rem; letter-spacing:.08em; font-weight:500; box-shadow:var(--shadow-card); }
.pulse { width:9px; height:9px; border-radius:50%; background:#3E9B4F; position:relative; flex:none; }
.pulse::after { content:""; position:absolute; inset:-4px; border-radius:50%; border:2px solid rgba(62,155,79,.5); animation:pulse 1.8s ease-out infinite; }
@keyframes pulse { from { transform:scale(.6); opacity:1; } to { transform:scale(1.5); opacity:0; } }
.is-closed > .pulse { background:#B5483A; } .is-closed > .pulse::after { display:none; }
.oz-row { display:flex; justify-content:space-between; font-size:.9rem; padding:.34rem 0; border-bottom:1px dashed rgba(25,25,50,.1); }
.oz-row.is-today { font-weight:700; color:var(--taupe-dark); }
.fab { position:fixed; left:50%; bottom:calc(1.1rem + env(safe-area-inset-bottom)); transform:translateX(-50%); z-index:90; display:none; align-items:center; gap:.6rem; background:var(--ink); color:#fff; border:0; font:inherit; font-weight:600; font-size:.95rem; padding:.95rem 1.4rem; border-radius:999px; box-shadow:0 14px 30px -8px rgba(25,25,50,.6); cursor:pointer; white-space:nowrap; transition:transform .45s var(--ease-p), opacity .35s; }
.fab svg { width:18px; height:18px; flex:none; }
.fab .pulse { background:#6FBF73; } .fab .pulse::after { border-color:rgba(111,191,115,.55); }
.fab.is-closed .pulse { background:#E0563F; } .fab.is-closed .pulse::after { display:none; }
.fab.is-hidden { transform:translateX(-50%) translateY(160%); opacity:0; pointer-events:none; }
.sheet-backdrop { position:fixed; inset:0; z-index:180; background:rgba(25,25,50,.5); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); opacity:0; pointer-events:none; transition:opacity .35s var(--ease-p); }
.sheet-backdrop.is-open { opacity:1; pointer-events:auto; }
.sheet { position:fixed; left:0; right:0; bottom:0; z-index:190; background:var(--bg); border-radius:var(--r-lg) var(--r-lg) 0 0; padding:.9rem 1.4rem calc(1.6rem + env(safe-area-inset-bottom)); transform:translateY(105%); transition:transform .5s var(--ease-p); max-height:86dvh; overflow:auto; box-shadow:0 -20px 60px -30px rgba(25,25,50,.55); }
.sheet[hidden] { display:none; }
.sheet.is-open { transform:none; }
.sheet__grip { width:40px; height:4px; border-radius:2px; background:rgba(25,25,50,.18); margin:0 auto 1.2rem; }
.sheet__status { display:inline-flex; margin:0 0 1.1rem; max-width:100%; font-family:var(--font-text); font-size:.84rem; letter-spacing:0; font-weight:600; box-shadow:none; background:rgba(25,25,50,.06); }
.sheet__h { font-size:1.35rem; margin:0 0 .5rem; }
.sheet .oz-row { padding:.62rem .2rem; font-size:.95rem; }
.sheet .oz-row span:last-child { font-weight:600; font-variant-numeric:tabular-nums; }
.sheet .oz-row--muted { color:var(--ink-soft); } .sheet .oz-row--muted span:last-child { font-weight:500; }
.sheet .oz-row.is-today span:first-child::after { content:"heute"; font-size:.62rem; letter-spacing:.14em; text-transform:uppercase; margin-left:.5rem; padding:.15rem .45rem; border-radius:999px; background:rgba(170,162,151,.3); }
.sheet .oz-note { font-size:.82rem; color:var(--ink-soft); margin-top:.9rem; }
.sheet__actions { display:grid; gap:.6rem; margin-top:1.2rem; }
.sheet__actions .btn { justify-content:center; font-size:.92rem; padding:.85rem 1rem; }
body.sheet-open { overflow:hidden; }

/* ============================================================
   FOOTER (schlank)
   ============================================================ */
footer { background:var(--night); color:rgba(236,236,239,.78); padding:4rem 1.5rem 2.5rem; font-size:.9rem; }
.ft { max-width:var(--container); margin:0 auto; display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:2.5rem; }
.ft h4 { font-size:.72rem; letter-spacing:.18em; text-transform:uppercase; color:var(--taupe); margin-bottom:1rem; font-family:var(--font-mono); font-weight:500; }
.ft a { display:block; text-decoration:none; padding:.22rem 0; color:inherit; }
.ft a:hover { color:#fff; }
.ft__logo img { height:26px; width:auto; margin-bottom:1rem; }
.ft__bottom { max-width:var(--container); margin:3rem auto 0; padding-top:1.4rem; border-top:1px solid rgba(255,255,255,.1); display:flex; justify-content:space-between; gap:1rem; flex-wrap:wrap; font-size:.78rem; color:rgba(236,236,239,.5); }
.ft__bottom a { color:inherit; text-decoration:none; margin-right:1.2rem; }



/* ============================================================
   STARTSEITE · weitere Sektionen (Gate 2)
   ============================================================ */
/* Kennst du das? */
.pain{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.pcard{position:relative;background:#fff;border:1px solid rgba(25,25,50,.07);border-radius:var(--r);padding:1.6rem 1.4rem 1.3rem;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:.9rem;min-height:200px;transition:transform .45s var(--ease-p)}
.pcard:hover{transform:translateY(-5px)}
.pcard__n{font-size:.7rem;font-weight:600;letter-spacing:.14em;color:var(--ink-mute)}
.pcard p{font-size:1.1rem;font-weight:600;letter-spacing:-.02em;line-height:1.35;flex:1}
.pcard small{font-size:.74rem;color:var(--ink-mute)}
/* Konzept-Schritte */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.step{position:relative;padding:1.6rem 1.4rem 1.4rem;border-radius:var(--r);background:#fff;border:1px solid rgba(25,25,50,.07);box-shadow:var(--shadow-card)}
.step__n{display:block;font-size:2.6rem;font-weight:700;letter-spacing:-.05em;line-height:1;background:linear-gradient(180deg,var(--ink),rgba(25,25,50,.35));-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:1rem}
.step h3{font-size:1.2rem;margin-bottom:.45rem}
.step p{font-size:.92rem;color:var(--ink-soft);line-height:1.5}
.step__tag{display:inline-flex;align-items:center;gap:.4rem;margin-top:1rem;font-size:.72rem;font-weight:600;padding:.3rem .65rem;border-radius:999px;background:color-mix(in srgb,var(--c) 18%,#fff);color:var(--ink)}
.steps__cta{display:flex;align-items:center;justify-content:center;gap:1.4rem;margin-top:2.4rem;flex-wrap:wrap}
/* Kompetenzzentrum */
.kz{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.kzcard{--c:var(--taupe);position:relative;display:flex;flex-direction:column;gap:.9rem;padding:1.8rem;border-radius:26px;background:var(--night-2);border:1px solid rgba(255,255,255,.08);color:#fff;text-decoration:none;overflow:hidden;isolation:isolate;transition:transform .45s var(--ease-p),border-color .4s}
.kzcard::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(60% 50% at 100% 100%,color-mix(in srgb,var(--c) 30%,transparent),transparent 70%)}
.kzcard:hover{transform:translateY(-5px);border-color:rgba(255,255,255,.18)}
.kzcard__pill{display:inline-flex;align-items:center;gap:.45rem;align-self:flex-start;font-size:.7rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:.35rem .7rem;border-radius:999px;background:rgba(255,255,255,.07);color:rgba(255,255,255,.85)}
.kzcard__pill i{width:7px;height:7px;border-radius:50%;background:var(--c)}
.kzcard h3{font-size:clamp(1.3rem,1.9vw,1.65rem);line-height:1.15} .kzcard h3 span{color:var(--c)}
.kzcard p{font-size:.92rem;color:rgba(242,242,246,.72);line-height:1.5;max-width:30rem}
.kzcard__go{margin-top:auto;font-size:.86rem;font-weight:600;color:var(--c)}
.t4{display:flex;align-items:center;gap:.6rem;margin:.4rem 0 .2rem;font-size:.75rem;font-weight:600}
.t4 span{padding:.3rem .6rem;border-radius:8px;background:rgba(255,255,255,.08)} .t4 span.on{background:var(--c);color:var(--ink)}
.t4 i{flex:1;height:0;border-top:2px dotted rgba(255,255,255,.35)}
.ecurve{width:100%;max-width:300px;height:auto;color:var(--c);margin:.2rem 0}
/* Drei Wege */
.wege{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;align-items:stretch}
.weg{--c:var(--taupe);position:relative;display:flex;flex-direction:column;gap:.5rem;padding:1.7rem 1.5rem 1.5rem;border-radius:var(--r);background:#fff;border:1px solid rgba(25,25,50,.07);box-shadow:var(--shadow-card);border-top:4px solid var(--c)}
.weg--hot{background:var(--ink);color:#fff;border-color:transparent;transform:scale(1.03);box-shadow:0 40px 80px -40px rgba(25,25,50,.7)}
.weg__badge{position:absolute;top:1rem;right:1rem;font-size:.62rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:.3rem .6rem;border-radius:999px;background:var(--c);color:#fff}
.weg__n{font-size:1.8rem;font-weight:700;letter-spacing:-.04em;color:var(--c);line-height:1}
.weg__k{font-size:.68rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute)} .weg--hot .weg__k{color:rgba(255,255,255,.6)}
.weg h3{font-size:1.3rem;margin-top:.3rem}
.weg p{font-size:.9rem;color:var(--ink-soft);line-height:1.5} .weg--hot p{color:rgba(255,255,255,.75)}
.weg__price{margin:.8rem 0 1rem;padding-top:.9rem;border-top:1px solid rgba(25,25,50,.08)} .weg--hot .weg__price{border-color:rgba(255,255,255,.12)}
.weg__price b{display:block;font-size:1.3rem;letter-spacing:-.02em} .weg__price small{font-size:.76rem;color:var(--ink-mute)} .weg--hot .weg__price small{color:rgba(255,255,255,.6)}
.weg .btn{margin-top:auto;width:100%}
.wege__note{text-align:center;margin-top:1.8rem;font-size:.92rem;color:var(--ink-soft)}
/* Video */
.vthumb{position:relative;display:block;width:100%;border:0;padding:0;background:none;cursor:pointer;border-radius:var(--r);overflow:hidden;aspect-ratio:16/9;box-shadow:var(--shadow-soft)}
.vthumb img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease-p)} .vthumb:hover img{transform:scale(1.04)}
.play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:68px;height:68px;border-radius:50%;background:rgba(255,255,255,.22);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.5);display:grid;place-items:center;transition:transform .35s var(--ease-p)} .vthumb:hover .play{transform:translate(-50%,-50%) scale(1.08)}
.play svg{width:26px;height:26px;fill:#fff;margin-left:3px}
.vcard iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:var(--r)}
/* Patientenstimmen */
.vids{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem}
.vids .vcard{flex:0 0 calc((100% - 2rem) / 3)}
.vcard{margin:0;background:#fff;border:1px solid rgba(25,25,50,.07);border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow-card)}
.vcard .vthumb{border-radius:0;box-shadow:none} .vcard .play{width:54px;height:54px} .vcard .play svg{width:20px;height:20px}
.vcard figcaption{padding:1.1rem 1.2rem 1.2rem} .vcard b{display:block;font-size:.96rem;letter-spacing:-.01em;line-height:1.4} .vcard span{display:block;margin-top:.4rem;font-size:.76rem;color:var(--ink-mute)}
.vids__note{text-align:center;margin-top:1.6rem;font-size:.9rem;color:var(--ink-soft)} .vids__note small{font-size:.76rem;color:var(--ink-mute)}
/* Familie */
.fam{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.fcard{margin:0;position:relative;border-radius:var(--r);overflow:hidden;aspect-ratio:4/5;background:var(--bg-2)}
.fcard img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;transition:transform 1s var(--ease-p)} .fcard:hover img{transform:scale(1.04)}
.fcard figcaption{position:absolute;left:0;right:0;bottom:0;padding:2.6rem 1.1rem 1rem;background:linear-gradient(180deg,transparent,rgba(11,11,22,.85));color:#fff}
.fcard b{display:block;font-size:1rem} .fcard span{display:block;font-size:.74rem;color:rgba(255,255,255,.75);margin-top:.15rem}
.fam__cta{display:flex;align-items:center;justify-content:center;gap:1.4rem;margin-top:2.2rem;flex-wrap:wrap}
/* FAQ */
.faq{display:grid;gap:.6rem}
.faq__item{border:1px solid rgba(25,25,50,.08);border-radius:16px;background:#fff;overflow:hidden;transition:box-shadow .3s} .faq__item.is-open{box-shadow:var(--shadow-card)}
.faq__q{width:100%;text-align:left;background:none;border:0;font:inherit;font-weight:600;font-size:1rem;padding:1.15rem 3.2rem 1.15rem 1.4rem;cursor:pointer;position:relative;color:var(--ink)}
.faq__q::after{content:"+";position:absolute;right:1.3rem;top:50%;transform:translateY(-50%);font-size:1.4rem;font-weight:400;color:var(--ink-mute);transition:transform .35s var(--ease-p)} .faq__item.is-open .faq__q::after{transform:translateY(-50%) rotate(45deg)}
.faq__a{max-height:0;overflow:hidden;transition:max-height .45s var(--ease-p)} .faq__a>div{padding:0 1.4rem 1.3rem;color:var(--ink-soft);font-size:.95rem;line-height:1.6}
/* Funnel */
.fun{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem,5vw,5rem);align-items:center}
.fun__t h2{margin-bottom:.9rem;font-size:clamp(1.9rem,3.2vw,2.7rem);text-wrap:balance} .fun__alt{margin-top:1.2rem;font-size:.9rem;color:rgba(242,242,246,.6)} .fun__alt a{color:#fff;font-weight:600;text-decoration:none}
.fun__box{position:relative;background:var(--night-2);border:1px solid rgba(255,255,255,.1);border-radius:26px;padding:2rem;min-height:380px;overflow:hidden;isolation:isolate;box-shadow:0 40px 90px -40px rgba(0,0,0,.7)}
.fun__box::before{content:"";position:absolute;inset:auto -20% -40% auto;width:70%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(98,199,140,.22),rgba(127,196,232,.1) 40%,transparent 70%);filter:blur(40px);z-index:-1;animation:glowDrift 9s ease-in-out infinite alternate}
.fun__top{display:flex;justify-content:space-between;align-items:center;margin-bottom:.8rem;font-size:.76rem;color:rgba(255,255,255,.55)} .fun__cnt b{color:#fff;font-size:.95rem} .fun__hint{font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:.66rem}
.fun__bar{height:3px;border-radius:3px;background:rgba(255,255,255,.1);margin-bottom:1.8rem;overflow:hidden} .fun__bar i{display:block;height:100%;background:var(--grad-haus);transition:width .5s var(--ease-p)}
.fun__step{display:none;animation:rise .5s var(--ease-p)} .fun__step.is-on{display:block}
.fun__q{display:block;font-size:1.35rem;font-weight:700;letter-spacing:-.02em;margin-bottom:1.1rem}
.fun__opts{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.7rem}
.fun__opts button,.fun__opts a{font:inherit;font-size:.92rem;font-weight:500;padding:.8rem 1.1rem;border-radius:14px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);color:#fff;cursor:pointer;transition:background .25s,border-color .25s,transform .25s var(--ease-p)}
.fun__opts button,.fun__opts a{display:flex;flex-direction:column;align-items:flex-start;gap:.6rem;padding:1rem 1rem .9rem;border-radius:16px;text-align:left;transition:transform .3s var(--ease-p),background .3s,border-color .3s}
.fun__opts button i,.fun__opts a i{width:34px;height:34px;border-radius:10px;background:rgba(255,255,255,.08);display:grid;place-items:center;transition:background .3s} .fun__opts button i svg,.fun__opts a i svg{width:18px;height:18px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.fun__opts button:hover,.fun__opts a:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.3);transform:translateY(-3px)} .fun__opts button:hover i{background:var(--grad-haus)} .fun__opts a{text-decoration:none} .fun__opts a i{background:var(--c,rgba(255,255,255,.08))} .fun__opts a:hover i{filter:brightness(1.12)}
.fun__opts button.on{background:#fff;color:var(--ink);border-color:#fff} .fun__opts button.on i{background:var(--ink)}
.fun__opts[data-key="rueckruf"]{grid-template-columns:repeat(3,1fr)}
.fun__fields{display:grid;gap:.6rem;margin-bottom:1rem}
.fun__fields input,.fun__fields textarea{font:inherit;font-size:.95rem;padding:.85rem 1rem;border-radius:12px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:#fff;width:100%;resize:vertical}
.fun__fields input::placeholder,.fun__fields textarea::placeholder{color:rgba(255,255,255,.45)}
.fun__fields input:focus,.fun__fields textarea:focus{outline:2px solid rgba(255,255,255,.4);outline-offset:0}
.fun__err{margin-top:.8rem;font-size:.85rem;color:#FF9C9C} .fun__legal{margin-top:.9rem;font-size:.72rem;color:rgba(255,255,255,.45)} .fun__legal a{color:rgba(255,255,255,.7)}
.fun__back{position:absolute;right:1.6rem;top:1.4rem;background:none;border:0;color:rgba(255,255,255,.6);font:inherit;font-size:.82rem;cursor:pointer}
.fun__done p{color:rgba(242,242,246,.75)} .fun__done a{color:#fff;font-weight:600}
/* Standort */
.loc{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4rem);align-items:center}
.loc__t h2{margin-bottom:.8rem} .loc__ctas{display:flex;align-items:center;gap:1.4rem;margin-top:1.6rem;flex-wrap:wrap}
.loc__img{border-radius:var(--r-lg);overflow:hidden;aspect-ratio:4/4.4;box-shadow:var(--shadow-soft)} .loc__img img{width:100%;height:100%;object-fit:cover}
.oz-row{display:flex;justify-content:space-between;font-size:.92rem;padding:.4rem 0;border-bottom:1px dashed rgba(25,25,50,.1)} .oz-row.is-today{font-weight:700}

/* ============================================================
   ML · MOBILE-LAYER (≤768px) — EIN Block
   ============================================================ */
.swdots2{display:none}
@media (max-width:768px){
  :root{--section-pad:clamp(6.6rem,23vw,8.2rem);--fs-h2:clamp(1.85rem,8.4vw,2.2rem);--fs-lead:1rem;--r:20px;--r-lg:26px}
  html{-webkit-text-size-adjust:100%} *{-webkit-tap-highlight-color:transparent}
  body{padding-bottom:calc(4.6rem + env(safe-area-inset-bottom))}
  section{padding-left:1.25rem;padding-right:1.25rem;scroll-margin-top:80px}
  section .eyebrow,section h2,section .lead{text-align:center;margin-left:auto;margin-right:auto}
  h2{margin-bottom:1rem;text-wrap:balance} h1 br,h2 br{display:none} h1 br.br-m,h2 br.br-m{display:inline}
  .m-hide{display:none!important} .btn{justify-content:center} .btn:active{transform:scale(.96)}
  /* Header mobil */
  .hdr{padding:.75rem 1.25rem} .hdr.scrolled{padding:.6rem 1.25rem}
  .hdr__logo span,.hdr__tel,.hdr .btn{display:none} .burger{display:block}
  .hdr__logo,.burger{position:relative;z-index:130} body.nav-open .hdr{backdrop-filter:none;-webkit-backdrop-filter:none;background:transparent;box-shadow:none}
  .nav{position:fixed;top:0;left:0;width:100%;height:100dvh;z-index:110;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;padding:5rem 1.25rem 2.4rem;background:var(--bg);transform:none;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,visibility 0s linear .22s;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  body.nav-open .nav{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .22s ease}
  body.nav-open{overflow:hidden;touch-action:none} html:has(body.nav-open){overflow:hidden}
  .nav>a,.nav__dd>a{font-size:1.35rem;font-weight:600;padding:.85rem 0;border-bottom:1px solid rgba(25,25,50,.08);opacity:1} .nav__dd>a::after{display:none}
  /* Fachbereiche mobil: Eyebrow + 2-spaltiges Kachelraster statt Endlosliste */
  .nav__dd{display:block} .nav__dd>a{display:block;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:var(--ink-mute);border:0;padding:0 0 .7rem}
  .nav__menu{position:static;transform:none;width:auto;opacity:1;pointer-events:auto;box-shadow:none;background:transparent;border:0;padding:0 0 1.4rem;display:grid;grid-template-columns:1fr 1fr;gap:.5rem}
  .nav__menu a{display:flex;align-items:center;gap:.5rem;padding:.72rem .8rem;border-radius:14px;background:#fff;border:1px solid rgba(25,25,50,.07);box-shadow:0 8px 20px -14px rgba(25,25,50,.3);font-size:.86rem;font-weight:600;line-height:1.2} .nav__menu a i{width:8px;height:8px;flex:none} .nav__menu a small{display:none}
  body.nav-open .hdr .nav>a:not(.btn){color:var(--ink)} body.nav-open .hdr .nav .nav__dd>a{color:var(--ink-mute)}
  .nav>.btn{display:inline-flex;margin-top:1.4rem;width:100%;opacity:1;color:#fff}
  .hdr__cta{gap:.4rem} .hdr__cta .btn--primary{display:inline-flex;padding:.6rem 1rem;font-size:.8rem;white-space:nowrap}
  /* Hero mobil: Foto randlos oben, Text mittig hochgezogen */
  .hero{min-height:0;display:block;padding:4.3rem 1.25rem 2.8rem}
  .hero::before{display:none}
  .hero__grid{display:flex;flex-direction:column;align-items:stretch;gap:0}
  .hero__vis{display:contents}
  .hero__photo{order:-1;position:relative;inset:auto;top:auto;width:calc(100% + 2.5rem);margin:0 -1.25rem;aspect-ratio:1/1;-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 64%,transparent 100%);mask-image:linear-gradient(180deg,#000 0%,#000 64%,transparent 100%)}
  .hero__photo img{object-position:50% 50%} .hero__photo::after{background:none}
  .hero__txt{margin-top:-2.6rem;text-align:center;container-type:normal;position:static}
  .hero__pill.status-pill{font-size:.72rem;padding:.45rem .8rem}
  .hero__h1{font-size:min(clamp(2.1rem,9.6vw,2.7rem),13cqi);margin:1rem auto .9rem}
  .hero__lead{font-size:1rem;margin:0 auto;max-width:21rem}
  .hero__ctas{flex-direction:column;align-items:stretch;gap:1rem;margin-top:1.4rem} .hero__ctas .btn{width:100%;padding:1.05rem 1.5rem} .hero__ctas .link{text-align:center}
  .hero .ui{order:1;position:relative;right:auto;bottom:auto;width:100%;margin-top:2rem;animation:rise 1s var(--ease) .7s forwards}
  .ui__note{display:none}
  /* Das Haus mobil */
  .haus{margin:0 -1.25rem} .haus__img{border-radius:0;aspect-ratio:4/3.6;box-shadow:none}
  .chip{display:none}
  .gal{margin-top:1rem} .gal[data-swipe]>.gal__i{flex-basis:78%!important;aspect-ratio:4/3}
  /* Laufband */
  .chiprail{padding:1.4rem 0 2.4rem} .chiprail__track{animation-duration:40s} .chiprail__track--rev{animation-duration:48s}
  /* Dunkel */
  .bignum__n{font-size:clamp(5rem,28vw,7.5rem)}
  .welten{margin-top:3rem} .welten__head{flex-direction:column;align-items:center;text-align:center;padding:0;margin-bottom:1.2rem} .welten__nav{display:none}
  .row{padding:.4rem 1.25rem 2.6rem;padding-left:1.25rem;scroll-padding-left:1.25rem;gap:.8rem;margin-bottom:-2.2rem}
  .wk{flex:0 0 84%;aspect-ratio:4/5.2;padding:1.3rem}
  .story__p{font-size:1.2rem}

  /* Wisch-Reihen (Schatten-Padding!) */
  [data-swipe]{display:flex!important;flex-wrap:nowrap;grid-template-columns:none!important;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;gap:.85rem;margin:0 -1.25rem -2.4rem;padding:.5rem 1.25rem 3.4rem;scroll-padding:0 1.25rem;scrollbar-width:none;height:auto!important;align-items:stretch}
  [data-swipe]::-webkit-scrollbar{display:none}
  [data-swipe]>*{flex:0 0 84%!important;min-width:0;scroll-snap-align:start;scroll-snap-stop:always;grid-column:auto!important;grid-row:auto!important;margin:0!important;opacity:1!important;transform:none!important}
  .swdots2{display:flex;justify-content:center;gap:.4rem;margin:.1rem 0 .4rem}
  .swdots2 i{width:6px;height:6px;border-radius:99px;background:rgba(25,25,50,.22);transition:width .35s cubic-bezier(.3,1.4,.5,1),background .3s}
  .swdots2 i.on{width:18px;background:var(--ink)}
  .section--deep .swdots2 i{background:rgba(242,242,246,.3)} .section--deep .swdots2 i.on{background:#fff}
  .status-pill{font-family:var(--font-text);letter-spacing:0;font-size:.78rem;white-space:nowrap}
  /* Startseite-Sektionen mobil */
  .pcard{min-height:0} .pcard p{font-size:1.05rem}
  .step{text-align:center} .step__tag{margin-left:auto;margin-right:auto}
  .steps__cta,.fam__cta,.loc__ctas{flex-direction:column;align-items:stretch;gap:1rem}
  .steps__cta .btn,.fam__cta .btn,.loc__ctas .btn{width:100%} .steps__cta .link,.fam__cta .link,.loc__ctas .link{text-align:center}
  .kzcard{padding:1.4rem} .kzcard h3{font-size:1.3rem}
  .weg--hot{transform:none} .wege__note{font-size:.9rem}
  .vcard figcaption{text-align:left}
  .fcard{aspect-ratio:4/5}
  .fun{grid-template-columns:1fr;gap:1.6rem} .fun__t{text-align:center} .fun__t .lead{margin:0 auto}
  .fun__box{padding:1.4rem;min-height:0} .fun__q{font-size:1.15rem} .fun__opts{grid-template-columns:1fr 1fr;gap:.55rem} .fun__opts button,.fun__opts a{padding:.8rem .8rem .75rem;gap:.45rem} .fun__opts button i,.fun__opts a i{width:28px;height:28px} .fun__opts button span,.fun__opts a span{font-size:.86rem} .fun__back{top:1rem;right:1.1rem}
  .fun__step .btn{width:100%}
  .loc{grid-template-columns:1fr} .loc__t{text-align:center} .loc__t .lead,.loc__t .oz{margin-left:auto;margin-right:auto} .loc__t .status-pill{margin:1rem auto 0}
  .loc__img{aspect-ratio:4/3}
  .fab{display:inline-flex}
  .ft{grid-template-columns:1fr;gap:1.8rem;text-align:center} .ft__logo img{margin:0 auto 1rem} .ft__bottom{justify-content:center;text-align:center}
}
@media (hover:none){.btn:hover,.wk:hover{transform:none} .btn:hover::after{left:-80%}}

@media (max-width:700px){.film__frame{border-radius:20px;aspect-ratio:16/10}.film__frame .play--xl{width:68px;height:68px;box-shadow:0 14px 40px rgba(0,0,0,.4),0 0 0 6px rgba(255,255,255,.14)} .film__frame .play--xl svg{width:24px;height:24px;margin-left:3px}}

/* Geschäftsführung */
.founder{position:relative;overflow:hidden}
.founder::before{content:"";position:absolute;top:-10%;right:-10%;width:500px;height:500px;background:radial-gradient(circle,rgba(255,187,144,.32),transparent 70%);filter:blur(60px);pointer-events:none}
.founder__grid{display:grid;grid-template-columns:1fr 1.1fr;gap:5rem;align-items:center;position:relative;z-index:1}
.founder__vis{position:relative;max-width:480px}
.founder__img{margin:0;aspect-ratio:4/5;border-radius:var(--r-lg);overflow:hidden;box-shadow:0 40px 80px rgba(25,25,50,.18)} .founder__img img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease-p)} .founder__vis:hover .founder__img img{transform:scale(1.04)}
.founder__amp{position:absolute;top:-40px;right:-30px;font-weight:700;font-size:120px;line-height:1.05;background:var(--grad-haus);-webkit-background-clip:text;background-clip:text;color:transparent;z-index:3;pointer-events:none;padding:0 .08em;filter:drop-shadow(0 10px 24px rgba(229,64,82,.25))}
.founder__badge{position:absolute;left:24px;bottom:24px;background:#fff;padding:14px 18px;border-radius:16px;box-shadow:0 12px 32px rgba(25,25,50,.18);z-index:4} .founder__badge b{display:block;font-size:18px;line-height:1.1;letter-spacing:-.01em} .founder__badge span{display:block;font-size:12px;color:var(--ink-mute);margin-top:4px}
.founder__txt{max-width:560px} .founder__txt h2{text-align:left;margin-bottom:1.4rem} 
.founder__vita{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:1.6rem} .founder__vita span{padding:7px 14px;background:#fff;border-radius:999px;font-size:13px;font-weight:500;box-shadow:0 4px 12px rgba(25,25,50,.06);border:1px solid rgba(25,25,50,.05)}
.founder__quote{position:relative;background:#fff;border-radius:var(--r-lg);padding:30px 32px 28px;box-shadow:0 12px 32px rgba(25,25,50,.06);margin-bottom:1.6rem}
.founder__quote::before{content:"\201D";position:absolute;top:-2px;left:20px;font-weight:700;font-size:60px;line-height:1;color:var(--c-longevity)}
.founder__quote blockquote{margin:12px 0 0;font-size:17px;line-height:1.6;font-weight:500} .founder__quote cite{display:block;margin-top:14px;font-style:normal;font-size:12px;letter-spacing:.15em;text-transform:uppercase;color:var(--ink-mute);font-weight:600}
.founder__stats{display:flex;gap:28px;padding-top:18px;border-top:1px solid rgba(25,25,50,.08)} .founder__stats b{display:block;font-size:26px;line-height:1;letter-spacing:-.02em;color:var(--c-chiro)} .founder__stats div:nth-child(2) b{color:var(--c-physio)} .founder__stats div:nth-child(3) b{color:#5B7BD5} .founder__stats span{display:block;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute);margin-top:6px}
.founder__cta{display:flex;align-items:center;gap:1.4rem;margin-top:2rem;flex-wrap:wrap}
@media (max-width:960px){.founder__grid{grid-template-columns:1fr;gap:3rem} .founder__vis{margin:0 auto} .founder__txt{max-width:none;text-align:center;margin:0 auto} .founder__txt h2{text-align:center} .founder__vita,.founder__stats,.founder__cta{justify-content:center} .founder__quote{text-align:left} .founder__amp{font-size:88px;top:-28px;right:-8px}}
@media (max-width:700px){.founder__quote{padding:24px 22px 22px;border-radius:18px} .founder__quote blockquote{font-size:15px;line-height:1.55} .founder__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px} .founder__cta{flex-direction:column;align-items:stretch;gap:1rem} .founder__cta .btn{width:100%} .founder__cta .link{text-align:center} .founder__amp{font-size:64px;top:-14px;right:4px}}

/* Grundsätze */
.film__pill--deep{background:rgba(242,242,246,.1);color:#F2F2F6}
.prin__grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid rgba(242,242,246,.12);margin-top:.6rem}
.prin__i{padding:36px 24px 32px;border-right:1px solid rgba(242,242,246,.12);transition:background .4s var(--ease-p)} .prin__i:last-child{border-right:0} .prin__i:hover{background:rgba(242,242,246,.04)}
.prin__i span{display:block;font-size:12px;letter-spacing:.2em;opacity:.5;margin-bottom:18px} .prin__i h3{font-size:19px;font-weight:600;line-height:1.3;margin:0 0 14px;letter-spacing:-.01em} .prin__i p{font-size:14px;line-height:1.55;color:rgba(242,242,246,.7);margin:0}
@media (max-width:1000px) and (min-width:701px){.prin__grid{grid-template-columns:repeat(2,1fr)} .prin__i{border-bottom:1px solid rgba(242,242,246,.12)} .prin__i:nth-child(2n){border-right:0}}
@media (max-width:700px){.prin__grid{border-top:0} .prin__i{border:1px solid rgba(242,242,246,.14)!important;border-radius:20px;padding:24px 22px;background:rgba(242,242,246,.04)} .prin__i h3{font-size:17px;margin-bottom:8px} .prin__i p{font-size:13.5px}}

/* Ablauf */
.ablauf{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.abl figure{margin:0 0 1.2rem;border-radius:var(--r);overflow:hidden;aspect-ratio:4/3;box-shadow:var(--shadow-soft)} .abl img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease-p)} .abl:hover img{transform:scale(1.04)}
.abl__n{display:inline-block;padding:5px 11px;border-radius:999px;background:rgba(25,25,50,.06);font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.7rem}
.abl h3{font-size:1.35rem;letter-spacing:-.02em;margin:0 0 .5rem} .abl p{color:var(--ink-soft);font-size:.98rem;line-height:1.6;margin:0}
@media (max-width:700px){.abl{text-align:center;background:#fff;border-radius:var(--r);padding:0 0 1.2rem;border:1px solid rgba(25,25,50,.07);box-shadow:var(--shadow-card)} .abl figure{border-radius:var(--r) var(--r) 0 0;box-shadow:none;margin-bottom:1rem} .abl h3,.abl p,.abl__n{margin-left:1rem;margin-right:1rem} .abl h3{font-size:1.2rem}}


/* Grund · Bento */
.sec-head--w{max-width:54rem} .sec-head--w .lead{max-width:40rem} .sec-head .sub{max-width:40rem;margin:.2rem auto 0;color:var(--ink-soft);font-size:1.05rem;line-height:1.6}
.bento{display:grid;grid-template-columns:repeat(12,1fr);gap:1rem;margin-top:.5rem}
.bt{position:relative;overflow:hidden;border-radius:26px;padding:1.8rem 1.7rem 1.7rem;background:#fff;border:1px solid rgba(25,25,50,.07);box-shadow:var(--shadow-card);display:flex;flex-direction:column;justify-content:flex-end;min-height:260px;isolation:isolate;transition:transform .5s var(--ease-p)} .bt:hover{transform:translateY(-4px)}
.bt--w8{grid-column:span 8} .bt--w4{grid-column:span 4} .bt--w3{grid-column:span 3;min-height:215px}
.bt__n{position:absolute;top:1.3rem;left:1.6rem;font-size:3.2rem;font-weight:700;letter-spacing:-.05em;line-height:1;background:var(--grad-haus);-webkit-background-clip:text;background-clip:text;color:transparent;opacity:.9}
.bt h3{font-size:1.35rem;letter-spacing:-.025em;line-height:1.12;margin:0 0 .5rem} .bt p{color:var(--ink-soft);font-size:.95rem;line-height:1.55;margin:0;max-width:34rem}
.bt--dark{background:var(--night);color:#F2F2F6;min-height:340px} .bt--dark h3{font-size:clamp(1.8rem,2.6vw,2.4rem)} .bt--dark p{color:rgba(242,242,246,.68);font-size:1.02rem} .bt--dark .bt__n{opacity:1}
.bt__glow{position:absolute;inset:auto -10% -40% auto;width:60%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(98,199,140,.55),rgba(127,196,232,.25) 40%,transparent 70%);filter:blur(30px);z-index:-1;animation:glowDrift 9s ease-in-out infinite alternate}
.bt__glow::after{content:"";position:absolute;inset:-30% auto auto -60%;width:90%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(229,64,82,.5),rgba(255,187,144,.2) 45%,transparent 70%);filter:blur(30px)}
@keyframes glowDrift{from{transform:translate(0,0)}to{transform:translate(-12%,-10%)}}
.bt--photo{padding:0;min-height:340px;background:var(--night-2)} .bt--photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease-p)} .bt--photo:hover img{transform:scale(1.05)}
.bt--photo .bt__ov{position:relative;z-index:1;padding:1.8rem 1.7rem 1.7rem;margin-top:auto;background:linear-gradient(180deg,transparent 0%,rgba(11,11,22,.55) 35%,rgba(11,11,22,.88) 100%);color:#fff} .bt--photo h3{color:#fff} .bt--photo p{color:rgba(255,255,255,.75)} .bt--photo .bt__ic{position:static;display:grid;margin-bottom:.9rem;background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.3);backdrop-filter:blur(8px)} .bt--photo .bt__ic svg{stroke:#fff}
@media (max-width:1024px) and (min-width:701px){.bt--w8{grid-column:span 12} .bt--w4{grid-column:span 12;min-height:280px} .bt--w3{grid-column:span 6}}
@media (max-width:700px){.bento{margin-top:0} .bt{min-height:250px;padding:1.4rem 1.3rem;text-align:left} .bt--dark,.bt--photo{min-height:280px} .bt--dark h3{font-size:1.6rem} .bt__n{font-size:2.6rem;top:1.1rem;left:1.3rem} .bt--photo .bt__ov{padding:1.4rem 1.3rem} .bt h3{font-size:1.2rem}}


/* Bento-Icons */
.bt__ic{position:absolute;top:1.4rem;left:1.5rem;width:46px;height:46px;border-radius:14px;background:rgba(25,25,50,.05);border:1px solid rgba(25,25,50,.07);display:grid;place-items:center} .bt__ic svg{width:22px;height:22px;fill:none;stroke:var(--ink);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.bt--dark .bt__ic{background:rgba(242,242,246,.1);border-color:rgba(242,242,246,.16)} .bt--dark .bt__ic svg{stroke:#fff}
/* Haus: mehr Chips */
.haus__img{aspect-ratio:16/9} .haus__img img{object-position:50% 50%}
.chip--5{left:4%;top:48%;animation-delay:-1s} .chip--6{right:3%;top:46%;animation-delay:-4.2s}
/* Google */
.gbox{display:flex;justify-content:center;margin-top:2.2rem}
.gpill{display:inline-flex;align-items:center;gap:.7rem;padding:.75rem 1.2rem .75rem .9rem;border-radius:999px;background:#fff;border:1px solid rgba(25,25,50,.08);box-shadow:var(--shadow-card);text-decoration:none;color:var(--ink);font-size:.9rem} .gpill svg{width:22px;height:22px} .gpill__stars{color:#F2B01E;letter-spacing:.05em;font-size:.85rem} .gpill b{font-weight:600} .gpill>span:last-child{color:var(--ink-mute)}
.gmq{margin:1.4rem 0 .5rem;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.gmq__row{overflow:hidden;padding:1.2rem 0 2.6rem;margin-bottom:-1.6rem} .gmq__trk{display:flex;gap:1rem;width:max-content;animation:marquee 55s linear infinite} .gmq__trk--rev{animation-direction:reverse;animation-duration:62s} .gmq__row:hover .gmq__trk{animation-play-state:paused}
.gq{width:360px;padding:1.2rem 1.3rem;border-radius:20px;background:#fff;border:1px solid rgba(25,25,50,.07);box-shadow:var(--shadow-card);text-align:left} .gq span{display:block;color:#F2B01E;font-size:.8rem;letter-spacing:.08em;margin-bottom:.5rem} .gq p{margin:0 0 .6rem;font-size:.95rem;line-height:1.5} .gq b{font-size:.78rem;color:var(--ink-mute);font-weight:600}
/* Ablauf-CTA */
.abl__cta{margin-top:2.8rem;padding:2.2rem 2.4rem;border-radius:var(--r-lg);background:var(--night);color:#F2F2F6;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:2rem}
.abl__cta .eyebrow{color:rgba(242,242,246,.55)} .abl__cta h3{font-size:clamp(1.6rem,2.6vw,2.2rem);letter-spacing:-.03em;margin:0 0 .4rem} .abl__cta p{margin:0;color:rgba(242,242,246,.68)}
.abl__cta-b{display:flex;flex-direction:column;align-items:flex-end;gap:.8rem} .abl__cta-b .link{color:#F2F2F6}
.btn--xl{padding:1.1rem 2rem;font-size:1.05rem} .abl__cta .btn--primary{background:#fff;color:var(--ink)}
@media (max-width:700px){.gq{width:280px;padding:1rem 1.1rem} .gq p{font-size:.9rem} .gmq__trk{animation-duration:38s} .gmq__trk--rev{animation-duration:44s} .abl__cta{grid-template-columns:1fr;padding:1.8rem 1.4rem;text-align:center} .abl__cta-b{align-items:stretch} .abl__cta-b .btn{width:100%} .abl__cta-b .link{text-align:center} .bt__ic{top:1.1rem;left:1.2rem;width:40px;height:40px}}

.gmq-wrap{padding:0 0 var(--section-pad);margin-top:calc(var(--section-pad) * -.4)} .gmq-wrap .vids__note{text-align:center;padding:0 1.5rem}

/* Hero-Trust: drei Pills */
.trust{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.9rem}
.trust>*{display:inline-flex;align-items:center;gap:.45rem;padding:.6rem 1rem;border-radius:999px;background:rgba(255,255,255,.72);border:1px solid rgba(255,255,255,.9);box-shadow:0 14px 30px -20px rgba(25,25,50,.3),0 0 0 1px rgba(25,25,50,.04);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);font-size:.8rem;color:var(--ink-soft);text-decoration:none;white-space:nowrap}
.trust b{color:var(--ink);font-weight:600} .trust__g .gg{width:17px;height:17px} .trust__stars{color:#F2B01E;letter-spacing:.04em;font-size:.76rem}
/* UI-Karte: Claims */
.ui__claims{display:grid;gap:.4rem}
.ui__c{display:flex;align-items:center;gap:.7rem;padding:.55rem .6rem;border-radius:12px;background:#fff;box-shadow:0 8px 20px -14px rgba(25,25,50,.3)}
.ui__c i{flex:none;width:30px;height:30px;border-radius:9px;background:var(--ink);display:grid;place-items:center} .ui__c i svg{width:15px;height:15px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ui__c b{display:block;font-size:.82rem;letter-spacing:-.01em;line-height:1.2} .ui__c span{display:block;font-size:.68rem;color:var(--ink-soft);line-height:1.3;margin-top:.1rem}
@media (min-width:769px){.hero .ui{width:min(340px,36%)}}
@media (max-width:768px){
  /* Trust mobil: Google-Badge oben links auf dem Foto, die zwei Pills nebeneinander */
  .trust{justify-content:center;flex-wrap:nowrap;gap:.5rem;margin-top:1.3rem;animation:none;opacity:1;transform:none}
  @media (max-width:380px){.trust>*{font-size:.68rem;padding:.42rem .6rem}}
  .trust>*{font-size:.72rem;padding:.45rem .7rem;gap:.35rem}
  .trust .trust__g{position:absolute;top:calc(4.3rem + .9rem);left:1.25rem;z-index:4;font-size:.74rem;padding:.5rem .8rem;background:rgba(255,255,255,.88);box-shadow:0 10px 26px -12px rgba(25,25,50,.45)}
  .hero .ui{margin-top:1.8rem;box-shadow:0 18px 40px -24px rgba(25,25,50,.4)}
  .hero{padding-bottom:4.4rem}
  /* Marquee: Schatten dürfen vertikal auslaufen */
  .gmq__row{overflow:visible;overflow-x:clip;padding:1rem 0 2rem;margin-bottom:-.6rem}
  .gmq{padding:.4rem 0 .8rem}
  /* Google-Zahl: nicht mehr unter die Stimmen-Sektion ziehen */
  .gmq-wrap{margin-top:0;position:relative;z-index:2}
  .welten{margin-top:7rem}
}

/* Google-Riesenzahl */
.gnum{text-align:center;margin-bottom:3rem}
.gnum__g{display:inline-flex;align-items:center;gap:.5rem;padding:.45rem .95rem .45rem .7rem;border-radius:999px;background:#fff;border:1px solid rgba(25,25,50,.08);box-shadow:var(--shadow-card);font-size:.82rem;font-weight:600;color:var(--ink);text-decoration:none;margin-bottom:1rem} .gnum__g svg{width:18px;height:18px}
.gnum__n{font-weight:700;font-size:clamp(6rem,18vw,13rem);line-height:.9;letter-spacing:-.06em;font-variant-numeric:tabular-nums;background:linear-gradient(180deg,var(--ink) 0%,rgba(25,25,50,.35) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:1rem}
.gnum__stars{display:flex;justify-content:center;gap:.35rem;margin:0 0 1rem}
.gnum__stars i{width:28px;height:28px;background:rgba(25,25,50,.1);clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);position:relative;overflow:hidden}
.gnum__stars i::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#FFD166,#F2B01E);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease-p) calc(var(--k) * 140ms + .3s)}
.gnum__stars.is-visible i::after{transform:scaleX(1)}
.gnum__l{font-size:clamp(1.05rem,1.7vw,1.3rem);color:var(--ink-soft);margin:0} .gnum__l strong{color:var(--ink);font-weight:600}
@media (max-width:700px){.gnum{margin-bottom:2.2rem} .gnum__n{font-size:clamp(5rem,28vw,7.5rem)} .gnum__stars i{width:24px;height:24px}}
/* Unterseiten */
.link--light{color:#F2F2F6}
.phero{position:relative;overflow:hidden;isolation:isolate;padding:9rem 1.5rem 5.5rem;text-align:center}
.phero__in{position:relative;z-index:1;max-width:52rem} .phero h1{font-size:clamp(2.6rem,5.2vw,4.2rem);line-height:1.04;letter-spacing:-.04em;margin:1.3rem 0 1.2rem} .phero .lead{margin:0 auto 1.8rem;max-width:40rem;color:rgba(242,242,246,.7)} .phero .hero__ctas{justify-content:center}
.phero__glow{position:absolute;inset:auto;left:50%;top:-10%;width:70vw;max-width:900px;aspect-ratio:1;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle,rgba(98,199,140,.28),rgba(127,196,232,.14) 35%,rgba(229,64,82,.08) 55%,transparent 70%);filter:blur(40px);z-index:0;animation:glowDrift 10s ease-in-out infinite alternate}
.vis{display:grid;grid-template-columns:1fr 1.05fr;gap:4rem;align-items:center}
.vis__img{margin:0;position:relative;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:4/3.4;box-shadow:var(--shadow-soft)} .vis__img img{width:100%;height:100%;object-fit:cover} .vis__img figcaption{position:absolute;left:1rem;bottom:1rem;padding:.4rem .8rem;border-radius:999px;background:rgba(255,255,255,.84);backdrop-filter:blur(10px);font-size:.74rem;font-weight:600}
.vis__txt h2{text-align:left;margin:0 0 1.2rem;font-size:clamp(2rem,3.4vw,2.9rem);text-wrap:balance} .vis__txt .film__pill{margin-bottom:1rem} .vis__txt p{color:var(--ink-soft);font-size:1.02rem;line-height:1.6;margin:0 0 .9rem}
.vis__list{list-style:none;margin:1.2rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem} .vis__list li{padding:.5rem .9rem;border-radius:999px;background:#fff;border:1px solid rgba(25,25,50,.07);box-shadow:var(--shadow-card);font-size:.84rem;font-weight:600}
.kz--3{grid-template-columns:repeat(3,1fr)}
@media (max-width:960px){.vis{grid-template-columns:1fr;gap:2rem} .vis__txt{text-align:center} .vis__txt h2{text-align:center} .vis__list{justify-content:center} .kz--3{grid-template-columns:1fr 1fr}}
@media (max-width:768px){.phero{padding:6.5rem 1.25rem 3.5rem} .phero h1{font-size:clamp(2.1rem,9.6vw,2.7rem)} .phero .hero__ctas{flex-direction:column;align-items:stretch}}
body.nav-dark .hdr:not(.scrolled) .hdr__logo img{filter:invert(1) brightness(1.6)} body.nav-dark .hdr:not(.scrolled) .hdr__logo span{color:rgba(242,242,246,.7);border-color:rgba(242,242,246,.3)}
body.nav-dark .hdr:not(.scrolled) .nav a.btn--primary,body.nav-dark .hdr:not(.scrolled) .hdr__cta .btn--primary{background:#fff;color:var(--ink)} body.nav-dark .hdr:not(.scrolled) .burger span{background:#fff}
/* Unterseiten · Bausteine */
.phero--light{background:var(--bg);color:var(--ink);padding-bottom:0} .phero--light .lead{color:var(--ink-soft)} .phero--light .phero__in{padding-bottom:3rem}
.phero__img{margin:0 auto;max-width:var(--container);border-radius:var(--r-lg) var(--r-lg) 0 0;overflow:hidden;aspect-ratio:16/7.5;box-shadow:var(--shadow-soft)} .phero__img img{width:100%;height:100%;object-fit:cover;object-position:50% 78%}
.phero--short .phero__in{padding-bottom:4rem}
.kern{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.kcard{--c:var(--taupe);display:flex;flex-direction:column;border-radius:26px;overflow:hidden;background:#fff;border:1px solid rgba(25,25,50,.07);box-shadow:var(--shadow-card);text-decoration:none;color:var(--ink);transition:transform .5s var(--ease-p)} .kcard:hover{transform:translateY(-5px)}
.kcard__img{aspect-ratio:4/3;overflow:hidden;background:var(--bg-2)} .kcard__img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease-p)} .kcard:hover .kcard__img img{transform:scale(1.05)}
.kcard__b{padding:1.5rem 1.5rem 1.6rem;display:flex;flex-direction:column;gap:.7rem;flex:1}
.kcard__pill{display:inline-flex;align-items:center;gap:.45rem;align-self:flex-start;font-size:.7rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft)} .kcard__pill i{width:8px;height:8px;border-radius:50%;background:var(--c)}
.kcard h3{font-size:1.25rem;line-height:1.2;letter-spacing:-.02em;margin:0} .kcard p{font-size:.93rem;color:var(--ink-soft);line-height:1.55;margin:0}
.kcard ul{list-style:none;margin:.2rem 0 0;padding:0;display:flex;flex-direction:column;gap:.35rem;font-size:.86rem} .kcard li{padding-left:1.1rem;position:relative} .kcard li::before{content:"";position:absolute;left:0;top:.5em;width:6px;height:6px;border-radius:50%;background:var(--c)}
.kcard__go{margin-top:auto;padding-top:.6rem;font-size:.88rem;font-weight:600;color:var(--ink)}
.tl{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.tl__i{position:relative;padding:1.6rem 1.4rem 1.5rem;border-radius:var(--r);background:#fff;border:1px solid rgba(25,25,50,.07);box-shadow:var(--shadow-card)}
.tl__y{display:inline-block;font-size:2.2rem;font-weight:700;letter-spacing:-.05em;line-height:1;background:var(--grad-haus);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:.7rem} .tl__i h3{font-size:1.12rem;margin:0 0 .4rem} .tl__i p{font-size:.9rem;color:var(--ink-soft);line-height:1.5;margin:0}
.fam{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.fcard{margin:0;position:relative;border-radius:22px;overflow:hidden;aspect-ratio:4/5;background:var(--night-2)} .fcard img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;transition:transform 1.2s var(--ease-p)} .fcard:hover img{transform:scale(1.05)}
.fcard figcaption{position:absolute;left:0;right:0;bottom:0;padding:2.4rem 1.1rem 1.1rem;background:linear-gradient(180deg,transparent,rgba(11,11,22,.85));color:#fff} .fcard b{display:block;font-size:1.05rem} .fcard span{display:block;font-size:.76rem;color:rgba(255,255,255,.72);margin-top:.15rem}
.orte{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.ort{padding:1.7rem 1.5rem;border-radius:var(--r);background:#fff;border:1px solid rgba(25,25,50,.07);box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:.5rem} .ort--hot{background:var(--night);color:#fff;border-color:transparent} .ort__k{font-size:.68rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute)} .ort--hot .ort__k{color:rgba(242,242,246,.6)} .ort h3{font-size:1.3rem;margin:0} .ort p{font-size:.92rem;color:var(--ink-soft);line-height:1.55;margin:0 0 .4rem} .ort--hot p{color:rgba(242,242,246,.72)} .ort .link{margin-top:auto}
.abl__cta--light{background:#fff;color:var(--ink);border:1px solid rgba(25,25,50,.07);box-shadow:var(--shadow-card)} .abl__cta--light .eyebrow{color:var(--ink-mute)} .abl__cta--light p{color:var(--ink-soft)} .abl__cta--light .btn--primary{background:var(--ink);color:#fff} .abl__cta--light .link{color:var(--ink)}
.tfilter{display:flex;justify-content:center;flex-wrap:wrap;gap:.5rem;margin-bottom:2.2rem} .tfilter button{padding:.6rem 1.1rem;border-radius:999px;border:1px solid rgba(25,25,50,.1);background:#fff;font:600 .86rem var(--font-display,inherit);color:var(--ink-soft);cursor:pointer;transition:all .3s} .tfilter button.on,.tfilter button:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.tgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}
.tm{--c:var(--taupe);margin:0;transition:opacity .4s,transform .4s} .tm.is-off{display:none}
.tm__img{border-radius:22px;overflow:hidden;aspect-ratio:4/5;background:var(--bg-2);box-shadow:var(--shadow-card)} .tm__img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease-p)} .tm:hover .tm__img img{transform:scale(1.05)}
.tm figcaption{padding:.9rem .2rem 0;display:flex;flex-direction:column;gap:.15rem} .tm b{font-size:1.02rem;letter-spacing:-.01em} .tm span{font-size:.8rem;color:var(--ink-soft);display:flex;align-items:center;gap:.4rem} .tm span::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--c);flex:none}
.kcards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.2rem;text-align:left}
.kc{display:flex;flex-direction:column;gap:.25rem;padding:1.3rem 1.3rem 1.4rem;border-radius:22px;background:#fff;border:1px solid rgba(25,25,50,.07);box-shadow:var(--shadow-card);text-decoration:none;color:var(--ink);transition:transform .4s var(--ease-p)} .kc:hover{transform:translateY(-4px)}
.kc i{width:40px;height:40px;border-radius:12px;background:var(--ink);display:grid;place-items:center;margin-bottom:.6rem} .kc i svg{width:19px;height:19px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round} .kc b{font-size:1rem;letter-spacing:-.01em} .kc span{word-break:break-all} .kc span{font-size:.82rem;color:var(--ink-soft)}
.wege--3 .weg{transform:none}
@media (max-width:1024px) and (min-width:701px){.kern{grid-template-columns:1fr} .kcard{flex-direction:row} .kcard__img{flex:0 0 38%;aspect-ratio:auto} .tl{grid-template-columns:1fr 1fr} .tgrid{grid-template-columns:repeat(3,1fr)} .fam{grid-template-columns:1fr 1fr}}
@media (max-width:700px){.phero__img{border-radius:20px 20px 0 0;aspect-ratio:4/3} .kcards{grid-template-columns:1fr;gap:.7rem} .kc{display:grid;grid-template-columns:40px 1fr;grid-template-rows:auto auto;column-gap:.9rem;row-gap:.15rem;align-items:center;padding:1rem} .kc i{margin:0;grid-row:1/3} .kc>b{font-size:.98rem} .kc>span{word-break:break-all} .tgrid{grid-template-columns:1fr 1fr;gap:.8rem} .tm__img{border-radius:16px} .tm b{font-size:.92rem} .tm span{font-size:.72rem} .tfilter{gap:.4rem} .tfilter button{padding:.5rem .85rem;font-size:.8rem} .kcard h3{font-size:1.15rem}}
/* Zeitstrahl (dunkel, horizontal) */
.tlrow{position:relative;padding-top:3.2rem;padding-bottom:3rem;align-items:stretch}
.tlrow::before{content:"";position:absolute;left:0;right:0;top:calc(3.2rem + 11px);height:2px;background:linear-gradient(90deg,rgba(242,242,246,.06),rgba(242,242,246,.22) 10%,rgba(242,242,246,.22) 90%,rgba(242,242,246,.06))}
.ty{--c:var(--taupe);position:relative;flex:0 0 clamp(260px,22vw,300px);scroll-snap-align:start;padding:2.2rem 1.4rem 1.6rem 0;color:#F2F2F6}
.ty__n{position:absolute;left:0;top:0;width:24px;height:24px;border-radius:50%;background:var(--night);border:2px solid var(--c);display:grid;place-items:center;box-shadow:0 0 0 6px color-mix(in srgb,var(--c) 18%,transparent)} .ty__n i{width:8px;height:8px;border-radius:50%;background:var(--c)}
.ty__y{display:block;font-size:3rem;font-weight:700;letter-spacing:-.05em;line-height:1;margin:.6rem 0 .8rem;color:#fff} .ty h3{font-size:1.1rem;margin:0 0 .45rem;letter-spacing:-.01em} .ty p{font-size:.9rem;line-height:1.5;color:rgba(242,242,246,.68);margin:0}
.ty--now{flex-basis:clamp(300px,26vw,360px);padding:2rem 1.6rem 1.6rem;border-radius:26px;background:rgba(242,242,246,.06);border:1px solid rgba(242,242,246,.12);margin-top:-.6rem} .ty--now .ty__n{left:1.6rem;top:-.6rem;transform:translateY(-50%)} .ty--now .btn{margin-top:1.1rem;display:inline-flex}
.tlrow .ty:last-child{margin-right:max(1.5rem, calc((100vw - 1240px) / 2 + 1.5rem))}
@media (max-width:768px){.ty{flex-basis:78%} .ty__y{font-size:2.4rem} .ty--now{flex-basis:84%}
  /* Zeitstrahl mobil: Linie pro Karte, damit sie beim Wischen durchläuft (eine absolute Linie endet am Viewport) */
  .tlrow::before{display:none}
  .ty::before{content:"";position:absolute;left:12px;right:-1rem;top:11px;height:2px;background:rgba(242,242,246,.22)}
  .ty:first-child::before{left:0} .ty--now::before{display:none}}
.gruppe{margin:0;position:relative;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:16/8;box-shadow:var(--shadow-soft)} .gruppe img{width:100%;height:100%;object-fit:cover;object-position:50% 78%} .gruppe figcaption{position:absolute;left:1.2rem;bottom:1.2rem;padding:.5rem .9rem;border-radius:999px;background:rgba(255,255,255,.86);backdrop-filter:blur(10px);font-size:.78rem;font-weight:600}
@media (max-width:700px){.gruppe{aspect-ratio:4/3;border-radius:20px}}
/* Kernbereiche XL */
.kern{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.kern .wk--xl{flex:auto;aspect-ratio:4/5.6;padding:1.8rem;border-radius:28px} .kern .wk--xl .wk__t{font-size:clamp(1.6rem,2.4vw,2.1rem)} .kern .wk--xl .wk__p{font-size:.95rem}
.wk__list{list-style:none;margin:.9rem 0 .6rem;padding:0;display:flex;flex-direction:column;gap:.35rem;font-size:.84rem;color:rgba(242,242,246,.85)} .wk__list li{padding-left:1rem;position:relative} .wk__list li::before{content:"";position:absolute;left:0;top:.5em;width:6px;height:6px;border-radius:50%;background:var(--c)}
@media (max-width:1024px) and (min-width:701px){.kern{grid-template-columns:1fr 1fr}}
@media (max-width:700px){.kern[data-swipe]>.wk--xl{aspect-ratio:4/5.8;padding:1.4rem}}
/* Präventionskurse */
.praev{display:grid;grid-template-columns:1.1fr .9fr;gap:4rem;align-items:center}
.praev__txt h2{text-align:left;margin:0 0 1rem;font-size:clamp(2rem,3.4vw,2.9rem)} .praev__txt .film__pill{margin-bottom:1rem} .praev__txt p{color:var(--ink-soft);font-size:1.02rem;line-height:1.6;margin:0} .praev__txt .vis__list{margin:1.2rem 0 1.6rem}
.praev__card{position:relative;border-radius:28px;padding:2rem;background:linear-gradient(135deg,#3A8FA8 0%,#5C6FB5 55%,#9B6BC9 100%);color:#fff;box-shadow:0 40px 90px -40px rgba(60,80,160,.6);overflow:hidden;isolation:isolate}
.praev__card::after{content:"";position:absolute;inset:auto -30% -50% auto;width:80%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.25),transparent 70%);z-index:-1}
.praev__logo{display:flex;align-items:baseline;gap:.6rem;margin-bottom:1.6rem} .praev__logo b{font-size:3rem;line-height:1;letter-spacing:-.06em} .praev__logo span{font-size:1rem;opacity:.85}
.praev__rows{display:grid;gap:.5rem;margin-bottom:1.6rem} .praev__rows div{display:flex;align-items:center;gap:.7rem;padding:.8rem 1rem;border-radius:14px;background:rgba(255,255,255,.14);backdrop-filter:blur(8px);font-weight:600;font-size:.95rem} .praev__rows i{width:9px;height:9px;border-radius:50%;background:var(--c)}
.praev__foot{display:flex;align-items:baseline;gap:.5rem;border-top:1px solid rgba(255,255,255,.25);padding-top:1.2rem} .praev__foot b{font-size:3rem;line-height:1;letter-spacing:-.05em} .praev__foot small{font-size:.9rem;opacity:.85}
@media (max-width:960px){.praev{grid-template-columns:1fr;gap:2rem} .praev__txt{text-align:center} .praev__txt h2{text-align:center} .praev__txt .vis__list,.praev__txt .hero__ctas{justify-content:center} .praev__vis{max-width:28rem;margin:0 auto;width:100%}}
@media (max-width:700px){.praev__card{padding:1.5rem} .praev__logo b{font-size:2.4rem} .praev__foot b{font-size:2.4rem} .praev__txt .hero__ctas{flex-direction:column;align-items:stretch}}
.fun__go p{color:rgba(242,242,246,.7);margin:0 0 1.2rem} .fun__spin{width:34px;height:34px;border-radius:50%;border:3px solid rgba(255,255,255,.15);border-top-color:#fff;animation:spin .9s linear infinite;margin:0 0 1.2rem} @keyframes spin{to{transform:rotate(360deg)}}
