/* ==========================================================
   Bio Rauch Stopp – Raucherentwöhnung Wien
   Design-System · Eura Media 2026
   ========================================================== */

@font-face{font-family:"Montserrat";src:url("../fonts/montserrat.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Montserrat";src:url("../fonts/montserrat-italic.woff2") format("woff2");font-weight:100 900;font-style:italic;font-display:swap}
@font-face{font-family:"Nunito Sans";src:url("../fonts/nunito.woff2") format("woff2");font-weight:200 1000;font-style:normal;font-display:swap}
@font-face{font-family:"Nunito Sans";src:url("../fonts/nunito-italic.woff2") format("woff2");font-weight:200 1000;font-style:italic;font-display:swap}

:root{
  --navy:#02305C;
  --navy-2:#01427E;
  --navy-3:#01539D;
  --orange:#EEA47F;
  --orange-d:#B85A2E;
  --orange-soft:#FCEBE2;
  --teal:#01539D;
  --mint:#EAF3FB;
  --mint-2:#D3E5F6;
  --cream:#FBF8F5;
  --paper:#FFFFFF;
  --ink:#14212F;
  --muted:#556275;
  --line:#E7E1DA;
  --line-2:#D8D1C8;
  --radius:18px;
  --radius-lg:28px;
  --shadow-sm:0 1px 2px rgba(2,48,92,.06),0 2px 8px rgba(2,48,92,.05);
  --shadow:0 2px 6px rgba(2,48,92,.06),0 18px 40px -12px rgba(2,48,92,.18);
  --shadow-lg:0 30px 80px -24px rgba(2,48,92,.35);
  --serif:"Montserrat",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  --apricot-ink:#02254A;
  --sans:"Nunito Sans",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --wrap:1200px;
  --ease:cubic-bezier(.2,.7,.2,1);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:96px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
html,body{overflow-x:clip}
body{margin:0;font-family:var(--sans);font-size:17px;line-height:1.65;color:var(--ink);background:var(--cream);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg{max-width:100%;height:auto;display:block}
a{color:var(--navy-3);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--orange-d)}
p{margin:0 0 1.1em}
ul,ol{margin:0 0 1.2em;padding-left:1.2em}
li{margin:.3em 0}
strong{font-weight:700}
h1,h2,h3,h4{font-family:var(--serif);font-weight:800;line-height:1.14;letter-spacing:-.02em;color:var(--navy);margin:0 0 .5em}
h1,h2{font-weight:800;letter-spacing:-.025em}
h1{font-size:clamp(2.2rem,4.8vw,3.9rem);letter-spacing:-.03em}
h1 em.it,h2 em.it{font-style:italic;font-weight:500;color:var(--navy-3);letter-spacing:-.02em}
.bg-navy h1 em.it,.bg-navy h2 em.it,.hero-card h2 em.it,.calc-out h2 em.it{color:#F4BFA3}
.cta-band h2 em.it{color:#FAD9C8}
h2{font-size:clamp(1.9rem,3.6vw,3rem)}
h3{font-size:clamp(1.15rem,1.8vw,1.4rem);letter-spacing:-.01em}
h4{font-family:var(--sans);font-size:1rem;font-weight:700;letter-spacing:0}
em.accent,.accent{font-style:normal;color:inherit;background:linear-gradient(transparent 62%,#F6CDB8 62%);padding:0 .06em}
.bg-navy em.accent,.bg-navy .accent{background:linear-gradient(transparent 62%,rgba(238,164,127,.55) 62%)}
.skip{position:absolute;left:-999px;top:0;background:var(--navy);color:#fff;padding:10px 16px;z-index:999}
.skip:focus{left:12px;top:12px}
:focus-visible{outline:3px solid var(--orange);outline-offset:3px;border-radius:6px}

.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}
.narrow{max-width:820px}
section{position:relative}
.sec{padding:clamp(72px,9vw,128px) 0}
.sec-sm{padding:clamp(48px,6vw,80px) 0}
.bg-paper{background:var(--paper)}
.bg-mint{background:var(--mint)}
.bg-navy{background:var(--navy);color:#DCE6F2}
.bg-navy h2,.bg-navy h3{color:#fff}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:.78rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--teal);margin-bottom:18px}
.eyebrow::before{content:"";width:28px;height:2px;background:currentColor;border-radius:2px}
.bg-navy .eyebrow{color:#F4BFA3}
.lead{font-size:clamp(1.08rem,1.5vw,1.25rem);color:var(--muted);max-width:62ch}
.bg-navy .lead{color:#B9C9DC}
.center{text-align:center}.center .lead{margin-left:auto;margin-right:auto}
.sec-head{max-width:760px;margin-bottom:clamp(36px,5vw,60px)}
.sec-head.center{margin-left:auto;margin-right:auto}

/* ---------- Buttons ---------- */
.btn{font-weight:800;--bg:var(--orange);--fg:var(--apricot-ink);display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 26px;border-radius:999px;background:var(--bg);color:var(--fg);font-weight:700;font-size:1rem;text-decoration:none;border:2px solid transparent;cursor:pointer;transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .2s;line-height:1.2;font-family:var(--sans);white-space:nowrap}
.btn:hover{color:var(--fg);transform:translateY(-2px);box-shadow:0 12px 28px -10px rgba(214,120,76,.6);background:#E8926A}
.btn svg{width:18px;height:18px;flex:none}
.btn-navy{--bg:var(--navy);--fg:#fff}
.btn-navy:hover{background:var(--navy-2);box-shadow:0 12px 28px -10px rgba(2,48,92,.6)}
.btn-ghost{--bg:transparent;--fg:var(--navy);border-color:var(--line-2)}
.btn-ghost:hover{background:#fff;border-color:var(--navy);box-shadow:none}
.bg-navy .btn-ghost{--fg:#fff;border-color:rgba(255,255,255,.3)}
.bg-navy .btn-ghost:hover{background:rgba(255,255,255,.08);border-color:#fff}
.btn-lg{padding:18px 32px;font-size:1.06rem}
.btn-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}

/* ---------- Topbar & Header ---------- */
.topbar{background:var(--navy);color:#C9D6E6;font-size:.84rem}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:40px}
.topbar a{color:#fff;text-decoration:none}
.topbar a:hover{color:#FFC896}
.topbar .tb-l,.topbar .tb-r{display:flex;gap:22px;align-items:center}
.topbar svg{width:14px;height:14px;display:inline-block;vertical-align:-2px;margin-right:6px;opacity:.8}
.site-header{position:sticky;top:0;z-index:60;border-bottom:1px solid transparent;transition:border-color .3s}
.site-header::before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(250,247,242,.88);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);transition:background .3s}
.site-header.scrolled{border-bottom-color:var(--line)}
.site-header.scrolled::before{background:rgba(255,255,255,.93)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:92px}
.logo{display:flex;align-items:center;text-decoration:none;flex:none}
.logo img{height:74px;width:auto}
.menu{display:flex;align-items:center;gap:4px;list-style:none;margin:0;padding:0}
.menu>li{position:relative;margin:0}
.menu>li>a,.menu>li>button{display:flex;align-items:center;gap:6px;padding:10px 14px;border-radius:999px;font-size:.95rem;font-weight:600;color:var(--ink);text-decoration:none;background:none;border:0;cursor:pointer;font-family:var(--sans)}
.menu>li>a:hover,.menu>li>button:hover,.menu>li>a[aria-current="page"]{background:rgba(2,48,92,.06);color:var(--navy)}
.menu .chev{width:12px;height:12px;transition:transform .2s}
.dd{position:absolute;top:calc(100% + 8px);left:-8px;min-width:300px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:10px;list-style:none;margin:0;opacity:0;visibility:hidden;transform:translateY(6px);transition:all .22s var(--ease)}
.has-dd:hover .dd,.has-dd:focus-within .dd{opacity:1;visibility:visible;transform:none}
.has-dd:hover .chev{transform:rotate(180deg)}
.dd li{margin:0}
.dd a{display:block;padding:11px 14px;border-radius:12px;text-decoration:none;color:var(--ink)}
.dd a:hover{background:var(--mint)}
.dd a strong{display:block;font-size:.95rem;color:var(--navy)}
.dd a span{display:block;font-size:.82rem;color:var(--muted);line-height:1.4}
.nav-cta{display:flex;align-items:center;gap:10px}
.nav-cta .btn{font-weight:800;padding:12px 20px;font-size:.93rem}
.burger{display:none;width:46px;height:46px;border-radius:50%;border:1px solid var(--line-2);background:#fff;cursor:pointer;align-items:center;justify-content:center}
.burger span{display:block;width:18px;height:2px;background:var(--navy);position:relative;transition:.25s}
.burger span::before,.burger span::after{content:"";position:absolute;left:0;width:18px;height:2px;background:var(--navy);transition:.25s}
.burger span::before{top:-6px}.burger span::after{top:6px}
.nav-open .burger span{background:transparent}
.nav-open .burger span::before{top:0;transform:rotate(45deg)}
.nav-open .burger span::after{top:0;transform:rotate(-45deg)}

@media (max-width:1080px){
  .topbar .tb-hide{display:none}
  .burger{display:flex}
  .nav-cta .btn-phone{display:none}
  .menu{position:fixed;inset:0;padding-top:130px!important;z-index:-2;flex-direction:column;align-items:stretch;background:var(--cream);padding:20px 24px 120px;gap:2px;overflow-y:auto;transform:translateX(100%);visibility:hidden;transition:transform .35s var(--ease),visibility 0s .35s}
  .nav-open .menu{transform:none;visibility:visible;transition:transform .35s var(--ease)}
  .menu>li>a,.menu>li>button{font-size:1.15rem;padding:14px 8px;border-radius:10px;width:100%;justify-content:space-between}
  .dd{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;background:transparent;padding:0 0 8px 8px;min-width:0;display:none}
  .has-dd.open .dd{display:block}
  .has-dd:hover .chev{transform:none}
  .has-dd.open .chev{transform:rotate(180deg)}
}
@media (max-width:560px){
  .topbar .tb-r{display:none}
  .nav-cta .btn-termin{display:none}
  .logo img{height:52px}
}

/* ---------- Hero ---------- */
.hero{padding:clamp(40px,6vw,84px) 0 clamp(64px,8vw,110px);overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(32px,5vw,72px);align-items:center}
.hero h1{margin-bottom:22px}
.hero .lead{margin-bottom:30px}
.checks{list-style:none;padding:0;margin:0 0 34px;display:grid;gap:10px}
.checks li{position:relative;padding-left:36px;margin:0;font-weight:600}
.checks li::before{content:"";position:absolute;left:0;top:1px;width:24px;height:24px;border-radius:50%;background:var(--mint-2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2301539D' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center/14px no-repeat}
.bg-navy .checks li::before{background-color:rgba(238,164,127,.18)}
.trust-row{display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:34px;padding-top:26px;border-top:1px solid var(--line);font-size:.9rem;color:var(--muted)}
.trust-row div{display:flex;align-items:center;gap:8px}
.trust-row svg{width:20px;height:20px;color:var(--teal)}
.hero-visual{position:relative}
.hero-card{position:relative;background:var(--navy);border-radius:var(--radius-lg);padding:34px;color:#fff;box-shadow:var(--shadow-lg);overflow:hidden;isolation:isolate}
.hero-card::before{content:"";position:absolute;inset:auto -30% -45% auto;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(238,164,127,.6),transparent 65%);z-index:-1}
.hero-card::after{content:"";position:absolute;inset:-35% auto auto -25%;width:380px;height:380px;border-radius:50%;background:radial-gradient(circle,rgba(1,83,157,.8),transparent 65%);z-index:-1}
.hero-card h2{color:#fff;font-size:1.6rem;margin-bottom:6px}
.hero-card p{color:#C3D2E3;font-size:.95rem;margin-bottom:22px}
.hc-steps{list-style:none;padding:0;margin:0 0 26px;display:grid;gap:12px;counter-reset:s}
.hc-steps li{counter-increment:s;display:flex;gap:14px;align-items:center;margin:0;padding:14px 16px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:14px;font-size:.95rem}
.hc-steps li::before{content:counter(s);flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#fff;color:var(--navy);font-weight:800;font-size:.9rem}
.hc-steps small{display:block;color:#A9BDD3;font-size:.8rem}
.hero-card .btn{font-weight:800;width:100%}
.hero-card .hc-foot{display:flex;justify-content:flex-end;gap:8px;margin-top:14px;font-size:.85rem;color:#A9BDD3}
.hero-card .hc-foot a{color:#fff}
.float-badge{position:absolute;left:-28px;bottom:-44px;background:#fff;border-radius:18px;padding:14px 18px;box-shadow:var(--shadow);display:flex;gap:12px;align-items:center;font-size:.86rem;line-height:1.35;max-width:250px;animation:floaty 6s ease-in-out infinite}
.float-badge .fb-ic{flex:none;width:42px;height:42px;border-radius:12px;background:var(--orange-soft);display:grid;place-items:center;color:var(--orange-d)}
.float-badge .fb-ic svg{width:22px;height:22px}
.float-badge strong{display:block;color:var(--navy);font-size:.95rem}
@keyframes floaty{50%{transform:translateY(-8px)}}
@media (max-width:960px){.hero-grid{grid-template-columns:1fr}.float-badge{left:auto;right:12px;bottom:-22px}}

/* Page hero (Unterseiten) */
.page-hero{padding:clamp(36px,5vw,72px) 0 clamp(48px,6vw,84px);position:relative;overflow:hidden}
.page-hero::after{content:"";position:absolute;right:-160px;top:-160px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,var(--mint-2),transparent 70%);z-index:-1;opacity:.9}
.page-hero .lead{margin-bottom:28px}
.page-hero-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:48px;align-items:end}
@media (max-width:900px){.page-hero-grid{grid-template-columns:1fr}}
.crumbs{font-size:.84rem;color:var(--muted);margin-bottom:22px}
.crumbs ol{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px}
.crumbs li{margin:0;display:flex;gap:6px;align-items:center}
.crumbs li+li::before{content:"/";color:var(--line-2)}
.crumbs a{color:var(--muted);text-decoration:none}
.crumbs a:hover{color:var(--navy)}
.fact-box{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow-sm)}
.fact-box dl{margin:0;display:grid;gap:14px}
.fact-box dt{font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-weight:700}
.fact-box dd{margin:2px 0 0;font-weight:600;color:var(--navy)}

/* ---------- Cards & Grids ---------- */
.grid{display:grid;gap:22px}
.g2{grid-template-columns:repeat(2,1fr)}
.g3{grid-template-columns:repeat(3,1fr)}
.g4{grid-template-columns:repeat(4,1fr)}
@media (max-width:960px){.g3,.g4{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.g2,.g3,.g4{grid-template-columns:1fr}}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px;box-shadow:var(--shadow-sm);transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s;position:relative}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--line-2)}
.card h3{margin-bottom:10px}
.card p:last-child{margin-bottom:0}
.card .ic{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;background:var(--mint);color:var(--teal);margin-bottom:22px}
.card .ic svg{width:26px;height:26px}
.card .ic.o{background:var(--orange-soft);color:var(--orange-d)}
.card .ic.n{background:#E3EAF3;color:var(--navy-3)}
.card-link{font-weight:700;text-decoration:none;display:inline-flex;gap:8px;align-items:center;margin-top:8px;color:var(--navy)}
.card-link::after{content:"→";transition:transform .2s}
.card:hover .card-link::after{transform:translateX(4px)}
.card-cover{position:absolute;inset:0;z-index:1;border-radius:inherit}
.bg-navy .card{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.1);color:#C9D6E6;box-shadow:none}
.bg-navy .card h3{color:#fff}

/* Split */
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,6vw,88px);align-items:center}
.split.rev>:first-child{order:2}
@media (max-width:900px){.split{grid-template-columns:1fr}.split.rev>:first-child{order:0}}

/* Illustration frames */
.illu{border-radius:var(--radius-lg);overflow:hidden;background:var(--mint);aspect-ratio:5/4;position:relative;box-shadow:var(--shadow)}
.illu svg{width:100%;height:100%}

/* ---------- Steps ---------- */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;counter-reset:st;position:relative}
.steps::before{content:"";position:absolute;top:34px;left:8%;right:8%;height:2px;background:repeating-linear-gradient(90deg,var(--line-2) 0 8px,transparent 8px 16px)}
.step{position:relative;counter-increment:st;text-align:left}
.step .num{position:relative;z-index:1;width:68px;height:68px;border-radius:50%;background:#fff;border:2px solid var(--navy);color:var(--navy);display:grid;place-items:center;font-family:var(--serif);font-size:1.6rem;font-weight:600;margin-bottom:20px;box-shadow:0 0 0 8px var(--cream)}
.bg-paper .step .num{box-shadow:0 0 0 8px #fff}
.step .num::before{content:counter(st)}
.step h3{font-size:1.25rem}
.step p{color:var(--muted);font-size:.97rem}
.step .dur{display:inline-block;font-size:.78rem;font-weight:700;color:var(--teal);background:var(--mint);padding:4px 10px;border-radius:999px;margin-bottom:10px}
@media (max-width:960px){.steps{grid-template-columns:repeat(2,1fr)}.steps::before{display:none}}
@media (max-width:560px){.steps{grid-template-columns:1fr}}

/* ---------- Pricing ---------- */
.prices{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch}
@media (max-width:960px){.prices{grid-template-columns:1fr;max-width:520px;margin:0 auto}}
.price{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:34px 30px;display:flex;flex-direction:column;position:relative;box-shadow:var(--shadow-sm)}
.price.feat{background:var(--navy);color:#C9D6E6;border-color:var(--navy);box-shadow:var(--shadow-lg);transform:translateY(-10px)}
@media (max-width:960px){.price.feat{transform:none}}
.price .tag{position:absolute;top:-14px;left:30px;background:var(--orange);color:var(--apricot-ink);font-size:.74rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:6px 14px;border-radius:999px}
.price h3{font-size:1.5rem;margin-bottom:6px}
.price.feat h3{color:#fff}
.price .sub{font-size:.92rem;color:var(--muted);margin-bottom:22px;min-height:2.9em}
.price.feat .sub{color:#A9BDD3}
.price .amt{font-family:var(--serif);font-size:2.7rem;font-weight:800;color:var(--navy);line-height:1;margin-bottom:4px;letter-spacing:-.02em}
.price.feat .amt{color:#fff}
.price .amt small{font-family:var(--sans);font-size:.95rem;font-weight:600;color:var(--muted);letter-spacing:0}
.price.feat .amt small{color:#A9BDD3}
.price .note{font-size:.84rem;color:var(--muted);margin-bottom:24px}
.price.feat .note{color:#A9BDD3}
.price ul{list-style:none;padding:0;margin:0 0 28px;display:grid;gap:10px;flex:1;align-content:start}
.price li{position:relative;padding-left:30px;margin:0;font-size:.96rem}
.price li::before{content:"";position:absolute;left:0;top:3px;width:20px;height:20px;border-radius:50%;background:var(--mint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2301539D' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center/12px no-repeat}
.price.feat li::before{background-color:rgba(238,164,127,.2);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F4BFA3' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E")}
.price .btn{font-weight:800;width:100%}
.ph{background:#FFF3B0;color:#6B5200;padding:0 .2em;border-radius:4px;outline:1px dashed #D9B300}
.price.feat .ph{background:#FFE58A}

/* Table */
.tbl-wrap{overflow-x:auto;border-radius:var(--radius);border:1px solid var(--line);background:#fff}
table{width:100%;border-collapse:collapse;font-size:.96rem;min-width:560px}
th,td{padding:16px 20px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
th{background:var(--mint);font-weight:700;color:var(--navy);font-size:.88rem;letter-spacing:.02em}
tr:last-child td{border-bottom:0}
td.num{white-space:nowrap;font-weight:700;color:var(--navy)}

/* ---------- Timeline (Körper) ---------- */
.tl{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.tl li{margin:0;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius);padding:24px}
.tl .t{font-family:var(--serif);font-size:1.7rem;color:#fff;font-weight:600;display:block;margin-bottom:6px;line-height:1.1}
.tl .t small{font-family:var(--sans);font-size:.8rem;color:#F4BFA3;display:block;letter-spacing:.1em;text-transform:uppercase;font-weight:700;margin-bottom:6px}
.tl p{margin:0;font-size:.95rem;color:#B9C9DC}
@media (max-width:960px){.tl{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.tl{grid-template-columns:1fr}}
.tl-light li{background:#fff;border-color:var(--line)}
.tl-light .t{color:var(--navy)}
.tl-light .t small{color:var(--teal)}
.tl-light p{color:var(--muted)}

/* ---------- Calculator ---------- */
.calc{display:grid;grid-template-columns:1fr 1fr;gap:0;background:#fff;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--line)}
.calc-in{padding:clamp(28px,4vw,48px)}
.calc-out{padding:clamp(28px,4vw,48px);background:var(--navy);color:#fff;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden;isolation:isolate}
.calc-out::before{content:"";position:absolute;right:-120px;bottom:-120px;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle,rgba(238,164,127,.55),transparent 65%);z-index:-1}
.field{margin-bottom:26px}
.field label{display:flex;justify-content:space-between;font-weight:700;color:var(--navy);margin-bottom:10px;font-size:.95rem}
.field output{font-family:var(--serif);font-size:1.25rem;font-weight:800;color:var(--navy-3)}
input[type=range]{width:100%;accent-color:var(--navy-3);height:6px}
.calc-big{font-family:var(--serif);font-weight:800;font-size:clamp(2.8rem,6vw,4.4rem);line-height:1;font-weight:600;margin:6px 0 12px;letter-spacing:-.02em}
.calc-lbl{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:#F4BFA3;font-weight:700}
.calc-rows{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:22px;padding-top:22px;border-top:1px solid rgba(255,255,255,.14)}
.calc-rows strong{display:block;font-family:var(--serif);font-size:1.6rem;font-weight:600}
.calc-rows span{font-size:.84rem;color:#A9BDD3}
@media (max-width:860px){.calc{grid-template-columns:1fr}}

/* ---------- FAQ ---------- */
.faq{display:grid;gap:12px}
.faq details{background:#fff;border:1px solid var(--line);border-radius:16px;padding:0 24px;transition:box-shadow .25s,border-color .25s}
.faq details[open]{box-shadow:var(--shadow-sm);border-color:var(--line-2)}
.faq summary{list-style:none;cursor:pointer;padding:22px 40px 22px 0;font-weight:700;color:var(--navy);font-size:1.05rem;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:0;top:50%;width:26px;height:26px;margin-top:-13px;border-radius:50%;background:var(--mint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230C2A4A' stroke-width='2.6' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center/13px no-repeat;transition:transform .25s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq .a{padding:0 0 22px;color:#2E3B4C}
.faq .a p:last-child{margin-bottom:0}

/* ---------- Prose (Ratgeber) ---------- */
.prose{font-size:1.06rem}
.prose h2{font-size:clamp(1.6rem,2.8vw,2.2rem);margin-top:1.8em}
.prose h3{margin-top:1.5em}
.prose p,.prose li{color:#27364A}
.prose ul li::marker{color:var(--orange)}
.prose .callout{background:var(--mint);border-left:4px solid var(--teal);padding:20px 24px;border-radius:0 14px 14px 0;margin:28px 0}
.prose .callout p:last-child{margin:0}
.prose .callout.warn{background:var(--orange-soft);border-left-color:var(--orange)}
.toc{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px 26px;position:sticky;top:110px}
.toc h4{margin-bottom:12px;font-size:.8rem;text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}
.toc ol{padding-left:1.1em;margin:0;font-size:.94rem}
.toc a{text-decoration:none;color:var(--navy)}
.toc a:hover{color:var(--orange-d)}
.article{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:56px;align-items:start}
@media (max-width:960px){.article{grid-template-columns:1fr}.toc{position:static}}
.byline{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:.88rem;color:var(--muted);margin-top:8px}

/* ---------- Location / Map ---------- */
.loc{display:grid;grid-template-columns:1fr 1.1fr;gap:0;background:#fff;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow-sm)}
.loc-info{padding:clamp(28px,4vw,48px)}
.loc-info dl{display:grid;grid-template-columns:auto 1fr;gap:14px 18px;margin:0 0 28px}
.loc-info dt{color:var(--teal)}
.loc-info dt svg{width:22px;height:22px}
.loc-info dd{margin:0}
.loc-info dd strong{display:block;color:var(--navy)}
.map{position:relative;min-height:360px;background:#E3EEF8;display:grid;place-items:center;text-align:center;padding:30px}
.map svg.mapbg{position:absolute;inset:0;width:100%;height:100%}
.map .map-cta{position:relative;z-index:1;background:#fff;border-radius:18px;padding:24px 26px;box-shadow:var(--shadow);max-width:320px}
.map .map-cta p{font-size:.86rem;color:var(--muted);margin:10px 0 16px}
.map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
@media (max-width:860px){.loc{grid-template-columns:1fr}}

/* ---------- Form ---------- */
.form-wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(32px,5vw,64px);align-items:start}
@media (max-width:960px){.form-wrap{grid-template-columns:1fr}}
.form{background:#fff;border-radius:var(--radius-lg);padding:clamp(26px,4vw,44px);box-shadow:var(--shadow);border:1px solid var(--line)}
.bg-navy .form{color:var(--ink)}
.bg-navy .form h3{color:var(--navy)}
.form h3{margin-bottom:4px}
.form .fsub{color:var(--muted);font-size:.93rem;margin-bottom:26px}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:560px){.frow{grid-template-columns:1fr}}
.f{margin-bottom:18px}
.f label,.f .lbl{display:block;font-weight:700;font-size:.88rem;color:var(--navy);margin-bottom:7px}
.f label .opt{font-weight:500;color:var(--muted)}
.f input,.f select,.f textarea{width:100%;font:inherit;font-size:1rem;padding:14px 16px;border:1.5px solid var(--line-2);border-radius:12px;background:#FCFBF8;color:var(--ink);transition:border-color .2s,box-shadow .2s,background .2s;appearance:none;-webkit-appearance:none}
.f select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230C2A4A' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:16px;padding-right:42px}
.f textarea{min-height:110px;resize:vertical}
.f input:focus,.f select:focus,.f textarea:focus{outline:0;border-color:var(--navy-3);background:#fff;box-shadow:0 0 0 4px rgba(27,77,128,.12)}
.f input:user-invalid,.f select:user-invalid{border-color:#C8412B}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips label{margin:0;cursor:pointer}
.chips input{position:absolute;opacity:0;width:1px;height:1px}
.chips span{display:inline-block;padding:10px 16px;border:1.5px solid var(--line-2);border-radius:999px;font-weight:600;font-size:.92rem;color:var(--ink);background:#FCFBF8;transition:.2s}
.chips input:checked+span{background:var(--navy);border-color:var(--navy);color:#fff}
.chips input:focus-visible+span{outline:3px solid var(--orange);outline-offset:2px}
.consent{display:flex;gap:12px;align-items:flex-start;font-size:.86rem;color:var(--muted);margin:6px 0 22px}
.consent input{width:20px;height:20px;flex:none;margin-top:2px;accent-color:var(--navy)}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.form .btn{font-weight:800;width:100%}
.form-note{font-size:.82rem;color:var(--muted);text-align:center;margin:14px 0 0}
.form-side h2{margin-bottom:16px}
.contact-list{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:14px}
.contact-list li{margin:0;display:flex;gap:14px;align-items:center}
.contact-list .ci{flex:none;width:48px;height:48px;border-radius:14px;background:var(--mint);color:var(--teal);display:grid;place-items:center}
.bg-navy .contact-list .ci{background:rgba(255,255,255,.08);color:#F4BFA3}
.contact-list .ci svg{width:22px;height:22px}
.contact-list a{font-weight:700;text-decoration:none;color:inherit}
.contact-list small{display:block;font-size:.82rem;opacity:.75}

/* ---------- CTA band ---------- */
.cta-band{background:var(--navy-3);color:#fff;border-radius:var(--radius-lg);padding:clamp(34px,5vw,60px);display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;position:relative;overflow:hidden;isolation:isolate}
.cta-band::before{content:"";position:absolute;right:-80px;top:-120px;width:380px;height:380px;border-radius:50%;background:rgba(255,255,255,.12);z-index:-1}
.cta-band h2{color:#fff;margin-bottom:8px}
.cta-band p{margin:0;color:#D6E6F6;font-size:1.08rem}
.cta-band .btn{font-weight:800;--bg:var(--navy)}
.cta-band .btn:hover{background:var(--navy-2);box-shadow:0 12px 28px -10px rgba(2,48,92,.6)}
.cta-band .btn-ghost{--bg:transparent;--fg:#fff;border-color:rgba(255,255,255,.5)}
.cta-band .btn-ghost:hover{background:rgba(255,255,255,.12);border-color:#fff;box-shadow:none}
@media (max-width:860px){.cta-band{grid-template-columns:1fr}}

/* Suitability */
.fit{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.fit .card ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.fit .card li{position:relative;padding-left:30px;margin:0}
.fit .yes li::before{content:"✓";position:absolute;left:2px;top:0;color:var(--teal);font-weight:800}
.fit .no li::before{content:"!";position:absolute;left:0;top:3px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--orange-soft);color:var(--orange-d);font-weight:800;font-size:.8rem}
@media (max-width:760px){.fit{grid-template-columns:1fr}}

/* Stats strip */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--line);border-radius:var(--radius);background:#fff;overflow:hidden}
.stats div{padding:26px 24px;border-right:1px solid var(--line)}
.stats div:last-child{border-right:0}
.stats strong{display:block;font-family:var(--serif);font-size:2.2rem;line-height:1;color:var(--navy);font-weight:600;margin-bottom:6px}
.stats span{font-size:.9rem;color:var(--muted)}
@media (max-width:860px){.stats{grid-template-columns:1fr 1fr}.stats div:nth-child(2){border-right:0}.stats div:nth-child(-n+2){border-bottom:1px solid var(--line)}}

/* Reviews */
.reviews-cta{display:flex;flex-wrap:wrap;gap:26px;align-items:center;justify-content:space-between;background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(26px,4vw,44px)}
.g-logo{display:flex;gap:14px;align-items:center}
.g-logo svg{width:44px;height:44px}
.stars{color:#F4B400;letter-spacing:2px;font-size:1.2rem}

/* Disclaimer */
.disclaimer{font-size:.82rem;color:var(--muted);border-top:1px solid var(--line);padding-top:18px;margin-top:28px}

/* ---------- Footer ---------- */
.site-footer{background:#02254A;color:#9FB2C8;padding:clamp(56px,7vw,88px) 0 0;font-size:.93rem}
.site-footer a{color:#DCE6F2;text-decoration:none}
.site-footer a:hover{color:#FFC896}
.f-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px}
@media (max-width:960px){.f-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.f-grid{grid-template-columns:1fr}}
.f-grid h4{color:#fff;margin-bottom:16px;font-size:.8rem;text-transform:uppercase;letter-spacing:.14em}
.f-grid ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.f-grid li{margin:0}
.f-brand p{margin:18px 0 0;max-width:34ch}
.f-brand .logo img{height:70px}
.social{display:flex;gap:10px;margin-top:22px}
.social a{width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.15);display:grid;place-items:center}
.social a:hover{background:rgba(255,255,255,.08)}
.social svg{width:18px;height:18px}
.f-legal{margin-top:56px;padding:22px 0 28px;border-top:1px solid rgba(255,255,255,.08);display:flex;flex-wrap:wrap;gap:12px 26px;justify-content:space-between;font-size:.84rem}
.f-legal nav{display:flex;flex-wrap:wrap;gap:8px 22px}
.f-disc{font-size:.8rem;color:#7E93AB;margin-top:26px;max-width:90ch;line-height:1.6}

/* Mobile action bar */
.mbar{display:none}
@media (max-width:760px){
  body{padding-bottom:78px}
  .mbar{display:grid;grid-template-columns:1fr 1fr 58px;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:70;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-top:1px solid var(--line);box-shadow:0 -8px 24px rgba(2,48,92,.08)}
  .mbar .btn{font-weight:800;padding:14px 10px;font-size:.95rem}
  .mbar .wa{display:grid;place-items:center;border-radius:999px;background:#25D366;color:#fff}
  .mbar .wa svg{width:26px;height:26px}
  .wa-float{display:none!important}
}
.wa-float{position:fixed;right:22px;bottom:22px;z-index:65;width:58px;height:58px;border-radius:50%;background:#25D366;color:#fff;display:grid;place-items:center;box-shadow:0 12px 30px -8px rgba(37,211,102,.7);transition:transform .25s}
.wa-float:hover{transform:scale(1.07);color:#fff}
.wa-float svg{width:30px;height:30px}

/* Reveal */
.rv{opacity:0;transform:translateY(22px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.rv.in{opacity:1;transform:none}
.no-js .rv{opacity:1;transform:none}

/* Utility */
.mt0{margin-top:0}.mb0{margin-bottom:0}.mt2{margin-top:2rem}.mt3{margin-top:3rem}
.muted{color:var(--muted)}
.small{font-size:.88rem}
.pill{display:inline-block;font-size:.78rem;font-weight:700;padding:5px 12px;border-radius:999px;background:var(--mint);color:var(--teal)}
.pill.o{background:var(--orange-soft);color:var(--orange-d)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
hr.sep{border:0;border-top:1px solid var(--line);margin:48px 0}
@media (max-width:420px){h1,.hero h1{font-size:1.78rem}h2{font-size:1.55rem}.wrap{padding:0 18px}.float-badge{right:-4px;max-width:230px}}
h1,h2,h3{overflow-wrap:break-word;hyphens:manual}

/* ---------- Hero mit Video-Hintergrund ----------
   Video-Datei: /assets/video/hero.mp4 (+ optional hero.webm). Fehlt das Video, erscheint der blaue Verlauf. */
.hero-video{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(125deg,#02254A 0%,#01427E 55%,#01539D 100%);color:#fff}
.hero-bg{position:absolute;inset:0;z-index:-1;overflow:hidden}
.hero-bg video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,37,74,.92) 0%,rgba(2,37,74,.8) 36%,rgba(2,37,74,.38) 62%,rgba(2,37,74,.5) 100%)}
@media (max-width:960px){.hero-bg::after{background:linear-gradient(180deg,rgba(2,37,74,.82),rgba(2,37,74,.9))}}
@media (prefers-reduced-motion:reduce){.hero-bg video{display:none}}
.hero-video h1{color:#fff}
.hero-video h1 em.it{color:#F4BFA3}
.hero-video .eyebrow{color:#F4BFA3}
.hero-video .lead{color:#D6E6F6}
.hero-video .checks li{color:#fff}
.hero-video .checks li::before{background-color:rgba(238,164,127,.22);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F4BFA3' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E")}
.hero-video .btn-ghost{--fg:#fff;border-color:rgba(255,255,255,.4)}
.hero-video .btn-ghost:hover{background:rgba(255,255,255,.1);border-color:#fff}
.hero-video .trust-row{border-top-color:rgba(255,255,255,.18);color:#C9D9EA}
.hero-video .trust-row svg{color:#F4BFA3}
.hero-video .float-badge{color:var(--ink)}
.hero-video .hero-card{background:rgba(2,37,74,.55);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}

/* Hero kompakt */
.hero-pills{list-style:none;padding:0;margin:0 0 30px;display:flex;flex-wrap:wrap;gap:8px}
.hero-pills li{margin:0;padding:7px 14px;border-radius:999px;font-size:.9rem;font-weight:700;color:#fff;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.hero-video .lead{max-width:34ch;font-size:clamp(1.1rem,1.6vw,1.3rem)}
@media (max-width:960px){.hero-video .hero-visual{display:none}.hero-video{padding-bottom:56px}}
@media (max-width:760px){.hero-video .hero-tel{display:none}.hero-pills li{font-size:.82rem;padding:6px 12px}.hero-video .btn-row .btn{width:100%}}

/* Foto im Bereich "Warum aufhören so schwer ist" – Datei: /assets/img/sitzung.jpg (5:4, z. B. 1500x1200) */
.illu.photo{margin:0;background:var(--mint)}
.illu.photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.illu-badge{position:absolute;left:18px;top:18px;z-index:1;display:flex;flex-direction:column;gap:2px;background:rgba(255,255,255,.94);border-radius:14px;padding:10px 16px;box-shadow:0 8px 24px -10px rgba(2,48,92,.35);font-size:.85rem;line-height:1.3;color:var(--navy)}
.illu-badge span{color:var(--muted);font-size:.78rem}

/* Startseiten-Foto (16:9-Quelle, im 5:4-Rahmen so beschnitten, dass Frau + Gerät sichtbar bleiben) */
.photo-home img{object-position:30% 50%}
.photo-home .illu-badge{left:auto;right:18px}

/* ---------- Bereich Warum (Startseite): Foto mit versetzter Fläche, Karte, Kacheln ---------- */
.why-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:clamp(48px,7vw,112px);align-items:center}
.why-media{position:relative;padding:0 32px 32px 0}
.why-media::before{content:"";position:absolute;inset:32px 0 0 32px;background:var(--orange-soft);border-radius:12px}
.why-fig{position:relative;margin:0;aspect-ratio:1/1;border-radius:12px;overflow:hidden;background:var(--mint)}
.why-fig img{position:absolute;left:0;top:-4%;width:100%;height:108%;object-fit:cover;object-position:38% 50%;will-change:transform}
.why-card{position:absolute;right:0;bottom:0;display:flex;align-items:center;gap:14px;background:#fff;border-radius:12px;padding:16px 22px 16px 16px;box-shadow:0 18px 40px -18px rgba(2,48,92,.35);border:1px solid var(--line)}
.why-ic{flex:none;width:46px;height:46px;border-radius:50%;background:var(--orange-soft);color:#B85A2E;display:grid;place-items:center}
.why-ic svg{width:22px;height:22px}
.why-card strong{display:block;font-family:var(--serif);font-weight:800;font-size:1.5rem;line-height:1;color:var(--navy);letter-spacing:-.02em}
.why-card span:not(.why-ic){display:block;margin-top:4px;font-size:.82rem;color:var(--muted);white-space:nowrap}
.why-card>div{padding-right:6px}
.rv .why-card{opacity:0;transform:translateY(14px);transition:opacity .8s var(--ease) .35s,transform .8s var(--ease) .35s}
.rv.in .why-card,.no-js .why-card{opacity:1;transform:none}
.why-text h2{margin-bottom:22px}
.why-lead{font-size:clamp(1.12rem,1.5vw,1.25rem);color:var(--ink);max-width:40ch;margin-bottom:0}
.why-tiles{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:30px 0 26px}
.why-tile{background:var(--cream);border:1px solid var(--line);border-radius:12px;padding:20px 22px}
.why-k{display:block;font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--navy-3);margin-bottom:10px}
.why-num{display:block;font-family:var(--serif);font-weight:800;font-size:clamp(1.7rem,2.6vw,2.2rem);line-height:1.05;letter-spacing:-.025em;color:var(--navy);margin-bottom:8px}
.why-num.why-words{font-size:clamp(1.05rem,1.4vw,1.2rem);line-height:1.3;letter-spacing:-.01em}
.why-tile p{margin:0;font-size:.92rem;color:var(--muted);line-height:1.5}
.why-body{color:var(--muted);max-width:52ch;margin-bottom:26px}
.link-arrow{display:inline-flex;align-items:center;gap:10px;font-weight:800;color:var(--navy);text-decoration:none;padding-bottom:6px;background:linear-gradient(var(--orange),var(--orange)) 0 100%/34px 2px no-repeat;transition:background-size .35s var(--ease)}
.link-arrow svg{width:18px;height:18px;transition:transform .3s var(--ease)}
.link-arrow:hover{color:var(--navy);background-size:100% 2px}
.link-arrow:hover svg{transform:translateX(4px)}
@media (max-width:900px){.why-grid{grid-template-columns:1fr}.why-media{padding:0 20px 20px 0;max-width:560px}.why-media::before{inset:20px 0 0 20px}.why-fig{aspect-ratio:5/4}}
@media (max-width:480px){.why-tiles{grid-template-columns:1fr}.why-card{padding:12px 16px 12px 12px}.why-card strong{font-size:1.25rem}}
@media (prefers-reduced-motion:reduce){.why-fig img{top:0;height:100%;transform:none!important}}

/* ---------- Drei Bausteine: Aufklapp-Panels (Desktop) / Wisch-Karussell (Handy) ----------
   Bilder: /assets/img/baustein-bioresonanz.jpg, baustein-softlaser.jpg, baustein-plan.jpg (4:3, z. B. 1200x900) */
.bs-head{display:grid;grid-template-columns:1.2fr .8fr;gap:24px 64px;align-items:end;margin-bottom:clamp(32px,4vw,52px)}
.bs-head h2{margin:0}
.bs-head .lead{margin:0;max-width:36ch}
.bs-panels{display:flex;gap:14px;height:540px}
.bs-panel{position:relative;flex:1 1 0;min-width:0;border-radius:16px;overflow:hidden;background:var(--navy);color:#fff;cursor:pointer;isolation:isolate;transition:flex-grow .7s cubic-bezier(.65,.05,.25,1)}
.bs-panel.is-active{flex-grow:3.4;cursor:default}
.bs-panel img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transform:scale(1.08);transition:transform 1.2s var(--ease),filter .7s}
.bs-panel.is-active img{transform:scale(1)}
.bs-panel:not(.is-active) img{filter:saturate(.6) brightness(.8)}
.bs-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(2,37,74,.55) 0%,rgba(2,37,74,0) 22%,rgba(2,37,74,.1) 45%,rgba(2,37,74,.9) 100%);transition:background .7s}
.bs-panel:not(.is-active) .bs-shade{background:linear-gradient(180deg,rgba(2,37,74,.55),rgba(2,37,74,.9))}
.bs-top{position:absolute;left:24px;right:24px;top:22px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.bs-num{font-family:var(--serif);font-weight:800;font-size:1.05rem;color:var(--apricot-ink);background:var(--orange);border-radius:999px;padding:4px 12px;letter-spacing:.02em}
.bs-kicker{font-size:.74rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#F4BFA3;white-space:nowrap;transition:opacity .4s}
.bs-badge{font-size:.72rem;font-weight:800;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:999px;padding:4px 10px;white-space:nowrap;transition:opacity .4s}
.bs-panel:not(.is-active) .bs-kicker,.bs-panel:not(.is-active) .bs-badge{opacity:0}
.bs-bottom{position:absolute;left:24px;right:24px;bottom:24px}
.bs-bottom h3{color:#fff;font-size:clamp(1.3rem,2vw,1.9rem);margin:0;white-space:nowrap;transition:transform .7s var(--ease)}
.bs-more{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .6s var(--ease),opacity .4s,margin .6s}
.bs-more>*{min-height:0}
.bs-more{overflow:hidden}
.bs-panel.is-active .bs-more{grid-template-rows:1fr;opacity:1;margin-top:12px;transition:grid-template-rows .6s var(--ease) .2s,opacity .5s .35s,margin .6s .2s}
.bs-more>div{margin:0}
.bs-more p{color:#DCE8F4;max-width:52ch;font-size:1rem;line-height:1.6;margin:0 0 14px}
.bs-pills{list-style:none;padding:0;margin:0 0 16px;display:flex;flex-wrap:wrap;gap:8px}
.bs-pills li{margin:0;font-size:.82rem;font-weight:700;padding:5px 12px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22)}
.bs-link{display:inline-flex;align-items:center;gap:10px;color:#fff;font-weight:800;text-decoration:none;padding-bottom:5px;background:linear-gradient(var(--orange),var(--orange)) 0 100%/34px 2px no-repeat;transition:background-size .35s var(--ease)}
.bs-link svg{width:18px;height:18px;transition:transform .3s var(--ease)}
.bs-link:hover{color:#fff;background-size:100% 2px}.bs-link:hover svg{transform:translateX(4px)}
.bs-open{position:absolute;right:20px;bottom:22px;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);transition:opacity .4s,transform .4s}
.bs-open svg{width:18px;height:18px}
.bs-panel:not(.is-active):hover .bs-open{transform:rotate(90deg)}
.bs-panel.is-active .bs-open{opacity:0;transform:scale(.6)}
.bs-panel:not(.is-active) .bs-bottom h3{font-size:1.15rem;white-space:normal;padding-right:48px}
.bs-panel:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
@media (max-width:960px){
  .bs-head{grid-template-columns:1fr}
  .bs-panels{height:auto;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:24px;margin:0 -24px;padding:4px 24px 14px;scrollbar-width:none}
  .bs-panels::-webkit-scrollbar{display:none}
  .bs-panel,.bs-panel.is-active{flex:0 0 84%;height:500px;scroll-snap-align:start;cursor:default}
  .bs-panel img,.bs-panel:not(.is-active) img{transform:none;filter:none}
  .bs-panel .bs-shade,.bs-panel:not(.is-active) .bs-shade{background:linear-gradient(180deg,rgba(2,37,74,.5),rgba(2,37,74,.15) 25%,rgba(2,37,74,.92) 70%)}
  .bs-panel .bs-kicker,.bs-panel .bs-badge{opacity:1!important}
  .bs-panel .bs-more{grid-template-rows:1fr;opacity:1;margin-top:10px}
  .bs-panel .bs-bottom h3{font-size:1.4rem!important}
  .bs-open{display:none}
}
@media (prefers-reduced-motion:reduce){.bs-panel,.bs-panel img,.bs-more{transition:none!important}}

/* ---------- Ablauf-Animation: Linie läuft 1→4, Kreise füllen sich, am Ende bricht die Zigarette ---------- */
.st-anim{--t:.75s;padding-right:0}
.st-anim::before{left:34px!important;right:190px!important}
.st-anim .step{position:relative;z-index:1}
.st-track{position:absolute;top:33px;left:34px;right:190px;height:3px;border-radius:3px;z-index:0;pointer-events:none}
.st-fill{position:absolute;inset:0;background:linear-gradient(90deg,var(--navy-3),var(--orange));border-radius:3px;transform:scaleX(0);transform-origin:left center}
.st-anim.play .st-fill{transition:transform calc(var(--t) * 3.2) cubic-bezier(.45,.05,.35,1);transform:scaleX(1)}
.st-anim .num{transition:background .45s,color .45s,border-color .45s,box-shadow .45s}
.st-anim.play .step .num{animation:stNum .55s var(--ease) both}
.st-anim.play .step:nth-child(1) .num{animation-delay:0s}
.st-anim.play .step:nth-child(2) .num{animation-delay:calc(var(--t) * 1)}
.st-anim.play .step:nth-child(3) .num{animation-delay:calc(var(--t) * 2)}
.st-anim.play .step:nth-child(4) .num{animation-delay:calc(var(--t) * 3)}
@keyframes stNum{0%{transform:scale(1)}45%{transform:scale(1.14);background:var(--navy);color:#fff;border-color:var(--navy);box-shadow:0 0 0 8px var(--cream),0 0 0 14px rgba(238,164,127,.35)}100%{transform:scale(1);background:var(--navy);color:#fff;border-color:var(--navy);box-shadow:0 0 0 8px var(--cream)}}
.bg-paper .st-anim.play .step .num{animation-name:stNumW}
@keyframes stNumW{0%{transform:scale(1)}45%{transform:scale(1.14);background:var(--navy);color:#fff;border-color:var(--navy);box-shadow:0 0 0 8px #fff,0 0 0 14px rgba(238,164,127,.35)}100%{transform:scale(1);background:var(--navy);color:#fff;border-color:var(--navy);box-shadow:0 0 0 8px #fff}}
.st-cig{position:absolute;right:0;top:0;width:170px;display:flex;flex-direction:column;align-items:center;z-index:1}
.cig-svg{width:170px;height:60px;overflow:visible}
.cig-l,.cig-r,.cig-snap{transform-box:view-box;transform-origin:84px 33px}
.cig-smoke{fill:none;stroke:#B7BEC6;stroke-width:1.6;stroke-linecap:round;opacity:.8;animation:cigSmoke 2.4s ease-in-out infinite}
@keyframes cigSmoke{0%{transform:translateY(4px);opacity:0}30%{opacity:.8}100%{transform:translateY(-8px);opacity:0}}
.cig-ember{animation:cigGlow 1.4s ease-in-out infinite}
@keyframes cigGlow{50%{fill:#FF5A1F;filter:drop-shadow(0 0 4px rgba(255,90,31,.8))}}
.cig-snap{opacity:0;transform:scale(.4)}
.cig-note{font-family:var(--serif);font-style:italic;font-weight:600;color:var(--navy-3);font-size:1.05rem;opacity:0;transform:translateY(6px);margin-top:4px}
.st-anim.play .cig-l{animation:cigL .9s cubic-bezier(.3,1.4,.5,1) calc(var(--t) * 3.4) forwards}
.st-anim.play .cig-r{animation:cigR .9s cubic-bezier(.3,1.4,.5,1) calc(var(--t) * 3.4) forwards}
.st-anim.play .cig-snap{animation:cigSnap .5s ease-out calc(var(--t) * 3.4) forwards}
.st-anim.play .cig-smoke{animation:cigSmoke 2.4s ease-in-out infinite,cigOff .4s calc(var(--t) * 3.4) forwards}
.st-anim.play .cig-ember{animation:cigGlow 1.4s ease-in-out infinite,cigOut .6s calc(var(--t) * 3.5) forwards}
.st-anim.play .cig-note{animation:cigNote .6s var(--ease) calc(var(--t) * 3.4 + .45s) forwards}
@keyframes cigL{0%{transform:none}40%{transform:translate(-3px,-2px) rotate(4deg)}100%{transform:translate(-8px,6px) rotate(-16deg)}}
@keyframes cigR{0%{transform:none}40%{transform:translate(3px,-2px) rotate(-4deg)}100%{transform:translate(10px,8px) rotate(18deg)}}
@keyframes cigSnap{0%{opacity:0;transform:scale(.4)}40%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.3)}}
@keyframes cigOff{to{opacity:0;visibility:hidden}}
@keyframes cigOut{to{fill:#9AA1A8;filter:none}}
@keyframes cigNote{to{opacity:1;transform:none}}
@media (max-width:960px){
  .st-track{display:none}
  .st-cig{position:relative;right:auto;top:auto;grid-column:1/-1;margin:8px auto 0}
}
/* Handy: jeder Schritt füllt sich beim Hinscrollen, die Zigarette bricht, wenn sie selbst sichtbar wird */
@media (max-width:960px){
  .st-anim .step.on .num{animation:stNum .55s var(--ease) both}
  .bg-paper .st-anim .step.on .num{animation-name:stNumW}
  .st-cig.on .cig-l{animation:cigL .9s cubic-bezier(.3,1.4,.5,1) .4s forwards}
  .st-cig.on .cig-r{animation:cigR .9s cubic-bezier(.3,1.4,.5,1) .4s forwards}
  .st-cig.on .cig-snap{animation:cigSnap .5s ease-out .4s forwards}
  .st-cig.on .cig-smoke{animation:cigSmoke 2.4s ease-in-out infinite,cigOff .4s .4s forwards}
  .st-cig.on .cig-ember{animation:cigGlow 1.4s ease-in-out infinite,cigOut .6s .5s forwards}
  .st-cig.on .cig-note{animation:cigNote .6s var(--ease) .85s forwards}
}
@media (prefers-reduced-motion:reduce){
  .st-anim .step .num{background:var(--navy);color:#fff;border-color:var(--navy)}
  .st-fill{transform:scaleX(1)}
  .cig-l{transform:translate(-8px,6px) rotate(-16deg)}.cig-r{transform:translate(10px,8px) rotate(18deg)}
  .cig-smoke{display:none}.cig-ember{animation:none;fill:#9AA1A8}.cig-note{opacity:1;transform:none}
  .st-anim.play *{animation:none!important;transition:none!important}
}

/* ---------- Preiskarten neu ---------- */
.pcs{display:grid;grid-template-columns:1fr 1.08fr 1fr;gap:18px;align-items:stretch}
.pc{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:16px;padding:34px 30px 30px;transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s}
.pc:hover{transform:translateY(-6px);box-shadow:0 24px 50px -28px rgba(2,48,92,.35);border-color:var(--orange)}
.pc::before{content:"";position:absolute;left:30px;right:30px;top:0;height:3px;border-radius:0 0 3px 3px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease)}
.pc:hover::before{transform:scaleX(1)}
.pc-kicker{font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--navy-3);margin-bottom:10px}
.pc h3{font-size:1.45rem;margin:0 0 6px}
.pc-sub{color:var(--muted);font-size:.95rem;line-height:1.5;margin:0 0 24px;min-height:3em}
.pc-price{display:flex;align-items:baseline;gap:6px;padding-top:22px;border-top:1px solid var(--line)}
.pc-amt{font-family:var(--serif);font-weight:800;font-size:3.2rem;line-height:1;letter-spacing:-.03em;color:var(--navy)}
.pc-amt .ph{font-size:.9em;padding:0 .12em;background:#FFF3B0;outline:1px dashed #D9B300;border-radius:6px;color:#6B5200}
.pc-cur{font-family:var(--serif);font-weight:700;font-size:1.5rem;color:var(--navy)}
.pc-per{margin-left:6px;font-size:.88rem;font-weight:700;color:var(--muted)}
.pc-meta{font-size:.84rem;color:var(--muted);margin:6px 0 22px}
.pc-list{list-style:none;padding:0;margin:0 0 26px;display:grid;gap:11px;flex:1;align-content:start}
.pc-list li{position:relative;margin:0;padding-left:30px;font-size:.96rem;line-height:1.45}
.pc-list li::before{content:"";position:absolute;left:0;top:1px;width:20px;height:20px;border-radius:50%;background:var(--mint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2301539D' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center/12px no-repeat}
.pc-note{font-size:.84rem;color:var(--muted);margin:-10px 0 20px}
.pc-btn{width:100%}
.pc .btn-ghost{border-color:var(--navy);color:var(--navy)}
.pc .btn-ghost:hover{background:var(--navy);color:#fff}
.pc-feat{background:radial-gradient(120% 80% at 100% 0%,#01539D 0%,#02305C 55%,#02254A 100%);border-color:transparent;color:#DCE8F4;box-shadow:0 30px 70px -30px rgba(2,48,92,.6)}
.pc-feat::after{content:"";position:absolute;right:-60px;bottom:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(238,164,127,.35),transparent 65%);pointer-events:none}
.pc-feat:hover{border-color:transparent}
.pc-feat .pc-kicker{color:#F4BFA3}
.pc-feat h3,.pc-feat .pc-amt,.pc-feat .pc-cur{color:#fff}
.pc-feat .pc-sub,.pc-feat .pc-meta,.pc-feat .pc-per{color:#B9CCE0}
.pc-feat .pc-price{border-top-color:rgba(255,255,255,.14)}
.pc-feat .pc-list li{color:#fff}
.pc-feat .pc-list li::before{background-color:rgba(238,164,127,.2);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F4BFA3' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E")}
.pc-ribbon{position:absolute;top:22px;right:22px;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--apricot-ink);background:var(--orange);padding:6px 12px;border-radius:999px}
.pc-trust{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 34px;margin-top:34px;color:var(--muted);font-size:.92rem;font-weight:600}
.pc-trust span{display:inline-flex;align-items:center;gap:8px}
.pc-trust svg{width:20px;height:20px;color:var(--navy-3)}
.pc-more{text-align:center;margin:26px 0 0}
@media (min-width:961px){.pc-feat{margin:-14px 0}}
@media (max-width:960px){.pcs{grid-template-columns:1fr;max-width:520px;margin:0 auto}.pc-sub{min-height:0}.pc-feat{order:-1}}

/* ---------- Rauchfrei-Rechner neu ---------- */
.rr{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 30px 70px -40px rgba(2,48,92,.45)}
.rr-top{display:grid;grid-template-columns:1fr 1fr}
.rr-in{padding:clamp(28px,4vw,52px)}
.rr-in h2{font-size:clamp(1.7rem,3vw,2.5rem);margin-bottom:14px}
.rr-intro{color:var(--muted);margin-bottom:26px;max-width:46ch}
.rr-field{margin-bottom:18px}
.rr-field label{display:block;font-weight:800;color:var(--navy);font-size:.95rem;margin-bottom:8px}
.rr-num{display:flex;align-items:center;gap:6px;background:var(--cream);border:1.5px solid var(--line-2);border-radius:14px;padding:6px;transition:border-color .2s,box-shadow .2s;max-width:340px}
.rr-num:focus-within{border-color:var(--navy-3);box-shadow:0 0 0 4px rgba(1,83,157,.12);background:#fff}
.rr-num input{flex:1;min-width:0;width:100%;border:0;background:transparent;font-family:var(--serif);font-weight:800;font-size:1.9rem;color:var(--navy);text-align:right;padding:4px 0;-moz-appearance:textfield;appearance:textfield}
.rr-num input:focus{outline:0}
.rr-num input::-webkit-outer-spin-button,.rr-num input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.rr-unit{font-weight:700;color:var(--muted);font-size:.95rem;margin-right:6px;min-width:44px}
.rr-step{flex:none;width:44px;height:44px;border-radius:10px;border:0;background:#fff;color:var(--navy);cursor:pointer;display:grid;place-items:center;box-shadow:0 1px 2px rgba(2,48,92,.12);transition:background .2s,transform .15s}
.rr-step:hover{background:var(--orange-soft)}.rr-step:active{transform:scale(.94)}
.rr-step svg{width:18px;height:18px}
.rr-fix{font-size:.86rem;color:var(--muted);margin:8px 0 0}
.rr-fix strong{color:var(--navy)}
.rr-out{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(120% 90% at 100% 100%,#01539D 0%,#02305C 50%,#02254A 100%);color:#DCE8F4;padding:clamp(28px,4vw,52px);display:flex;flex-direction:column;justify-content:center}
.rr-out::after{content:"";position:absolute;right:-90px;bottom:-90px;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(238,164,127,.4),transparent 65%);z-index:-1}
.rr-lbl{font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#F4BFA3}
.rr-lbl b{font-weight:800}
.rr-total{font-family:var(--serif);font-weight:800;font-size:clamp(2.8rem,6vw,4.6rem);line-height:1;letter-spacing:-.03em;color:#fff;margin:10px 0 8px;font-variant-numeric:tabular-nums}
.rr-sub{margin:0 0 22px;color:#B9CCE0}.rr-sub b{color:#fff}
.rr-rows{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:18px 0;border-top:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14)}
.rr-rows strong{display:block;font-family:var(--serif);font-weight:800;font-size:1.35rem;color:#fff;font-variant-numeric:tabular-nums}
.rr-rows span{font-size:.82rem;color:#B9CCE0}
.rr-future{margin:18px 0 0;font-size:.95rem;color:#DCE8F4}.rr-future b{color:#F4BFA3}
.rr-wish{padding:clamp(26px,4vw,48px);border-top:1px solid var(--line);background:linear-gradient(180deg,#fff,var(--cream))}
.rr-wish h3{font-size:1.3rem;margin:0 0 20px}
.rr-items{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.rr-item{margin:0;display:flex;gap:14px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px;transition:border-color .3s,box-shadow .3s,opacity .3s,transform .3s}
.rr-item svg{flex:none;width:58px;height:58px;transition:transform .4s var(--ease),filter .3s}
.rr-item-t{flex:1;min-width:0;display:flex;flex-direction:column}
.rr-item-t strong{font-size:.95rem;color:var(--navy);line-height:1.3}
.rr-item-p{font-size:.8rem;color:var(--muted)}
.rr-item-c{font-family:var(--serif);font-weight:800;font-size:1.15rem;color:var(--navy-3);margin-top:4px;min-height:1.4em}
.rr-bar{display:block;height:5px;border-radius:5px;background:var(--line);overflow:hidden;margin-top:6px}
.rr-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--navy-3),var(--orange));border-radius:5px;transition:width .6s var(--ease)}
.rr-item.yes{border-color:var(--orange);box-shadow:0 12px 28px -18px rgba(214,120,76,.55)}
.rr-item.yes svg{transform:scale(1.06) rotate(-3deg)}
.rr-item.no{opacity:.72}.rr-item.no svg{filter:grayscale(.7)}
.rr-item.no .rr-item-c{color:var(--muted);font-family:var(--sans);font-weight:700;font-size:.82rem}
.rr-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-top:26px;padding:20px 24px;border-radius:14px;background:var(--navy)}
.rr-cta p{margin:0;color:#fff;font-family:var(--serif);font-weight:800;font-size:1.25rem}
.rr-note{font-size:.78rem;color:var(--muted);margin:12px 0 0}
@media (max-width:960px){.rr-top{grid-template-columns:1fr}.rr-items{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.rr-items{grid-template-columns:1fr 1fr;gap:10px}.rr-item{flex-direction:column;align-items:flex-start;gap:8px;padding:12px}.rr-item svg{width:46px;height:46px}.rr-item-t{width:100%}.rr-item-t strong{font-size:.86rem}.rr-rows{grid-template-columns:1fr 1fr 1fr;gap:8px}.rr-rows strong{font-size:1.1rem}.rr-cta{padding:18px}.rr-cta .btn{width:100%;white-space:normal;padding:16px 18px}}

/* ---------- Checkliste vor/nach (Ablauf-Seite) ---------- */
.cl-grid{align-items:start}
.cl ul{list-style:none;padding:0;margin:4px 0 0;display:grid;gap:12px}
.cl li{position:relative;margin:0;padding-left:30px;line-height:1.55;font-size:.97rem}
.cl li::before{content:"";position:absolute;left:0;top:3px;width:20px;height:20px;border-radius:50%;background:var(--mint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2301539D' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center/12px no-repeat}
.cl li strong{color:var(--navy)}
.cl-must{display:flex;gap:14px;margin-top:22px;padding:18px 20px;border-radius:14px;background:var(--orange-soft);border:1px solid #F6CDB8}
.cl-must>svg{flex:none;width:26px;height:26px;color:#B85A2E;margin-top:2px}
.cl-must strong{display:block;font-family:var(--serif);font-weight:800;color:var(--navy);margin-bottom:6px}
.cl-must p{margin:0 0 8px;font-size:.93rem;line-height:1.55}.cl-must p:last-child{margin:0}
.cl-extra{margin-top:22px;padding:24px 28px;border-radius:16px;background:var(--navy);color:#DCE8F4}
.cl-extra .pc-kicker{color:#F4BFA3;display:block}
.cl-extra h3{color:#fff;margin:6px 0 8px}
.cl-extra p{margin:0;max-width:75ch}.cl-extra a{color:#F4BFA3;font-weight:800}

/* KT-Koerper: aufklappbare Körper-Timeline */
.kt{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:56px;align-items:start}
.kt-light{display:block}
.kt-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 22px;flex-wrap:wrap}
.kt-hint{margin:0;font-size:.95rem;color:#B9C9DC;display:flex;align-items:center;gap:10px}
.kt-hint::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 0 rgba(238,164,127,.6);animation:ktPing 2s infinite}
.kt-all{font:700 .85rem/1 var(--sans);letter-spacing:.02em;color:#fff;background:transparent;border:1px solid rgba(255,255,255,.28);border-radius:999px;padding:10px 16px;cursor:pointer;transition:background .25s,border-color .25s}
.kt-all:hover,.kt-all:focus-visible{background:rgba(255,255,255,.08);border-color:var(--orange)}
.kt-track{position:relative}.kt-ol{list-style:none;margin:0;padding:0}
.kt-rail{position:absolute;left:27px;width:2px;top:28px;height:calc(100% - 56px);background:rgba(255,255,255,.12);border-radius:2px;overflow:hidden}
.kt-rail i{position:absolute;inset:0;background:linear-gradient(180deg,#F4BFA3,var(--orange));transform-origin:top;transform:scaleY(var(--p,0));transition:transform .15s linear}
.kt-it{position:relative;display:grid;grid-template-columns:56px minmax(0,1fr);gap:20px;margin:0 0 14px}
.kt-it.rv{transform:translateX(-24px)}
.kt-it.rv.in{transform:none}
.kt-node{position:relative;z-index:1;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--navy-2);border:2px solid rgba(255,255,255,.14);color:#8DA3BC;transition:background .45s var(--ease),border-color .45s,color .45s,transform .45s var(--ease)}
.kt-node svg{width:24px;height:24px}
.kt-node b{position:absolute;right:-4px;top:-4px;width:20px;height:20px;border-radius:50%;background:var(--navy);border:1px solid rgba(255,255,255,.2);font:800 .66rem/18px var(--serif);text-align:center;color:#DCE6F2}
.kt-it.hit .kt-node{background:var(--orange);border-color:#F4BFA3;color:var(--apricot-ink);transform:scale(1.06);animation:ktHit .9s var(--ease)}
.kt-it.hit .kt-node b{background:#fff;color:var(--navy);border-color:#fff}
.kt-card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius);overflow:hidden;transition:background .35s,border-color .35s,box-shadow .35s,transform .35s var(--ease)}
.kt-card:hover{background:rgba(255,255,255,.075);transform:translateX(4px)}
.kt-it.open .kt-card{background:linear-gradient(135deg,rgba(255,255,255,.1),rgba(255,255,255,.04));border-color:rgba(238,164,127,.55);box-shadow:0 18px 40px -18px rgba(0,0,0,.55),inset 3px 0 0 var(--orange);transform:none}
.kt-head{all:unset;box-sizing:border-box;width:100%;cursor:pointer;display:grid;grid-template-columns:150px minmax(0,1fr) 36px;gap:18px;align-items:center;padding:18px 20px 18px 22px}
.kt-head:focus-visible{outline:2px solid var(--orange);outline-offset:-2px;border-radius:var(--radius)}
.kt-time{font:800 1.45rem/1.05 var(--serif);color:#fff;letter-spacing:-.02em}
.kt-time small{display:block;font:700 .72rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#F4BFA3;margin-bottom:6px}
.kt-title{display:block;font:700 1.05rem/1.3 var(--serif);color:#fff;margin-bottom:3px}
.kt-sum{display:block;font-size:.93rem;line-height:1.5;color:#B9C9DC}
.kt-chev{width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.2);position:relative;transition:transform .45s var(--ease),background .3s,border-color .3s}
.kt-chev::before,.kt-chev::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;background:#fff;border-radius:2px;transform:translate(-50%,-50%)}
.kt-chev::after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .45s var(--ease)}
.kt-it.open .kt-chev{background:var(--orange);border-color:var(--orange);transform:rotate(180deg)}
.kt-it.open .kt-chev::before,.kt-it.open .kt-chev::after{background:var(--apricot-ink)}
.kt-it.open .kt-chev::after{transform:translate(-50%,-50%) rotate(0)}
.kt-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .55s var(--ease)}
.kt-in{min-height:0;overflow:hidden;padding:0 22px 0 190px;opacity:0;visibility:hidden;transition:opacity .35s,visibility 0s .55s,padding .55s var(--ease)}
.kt-it.open .kt-body{grid-template-rows:1fr}
.kt-it.open .kt-in{opacity:1;visibility:visible;padding-bottom:22px;transition:opacity .5s .12s,visibility 0s,padding .55s var(--ease)}
.no-js .kt-body{grid-template-rows:1fr}.no-js .kt-in{opacity:1;visibility:visible;padding-bottom:22px}
.kt-in p{margin:0 0 12px;color:#DCE6F2;font-size:.98rem;line-height:1.65}
.kt-in .kt-lbl{font:700 .72rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#F4BFA3;margin:4px 0 8px}
.kt-in a{color:#F4BFA3}
.kt-feel{margin-top:14px;padding:14px 16px;border-radius:14px;background:rgba(238,164,127,.1);border:1px dashed rgba(238,164,127,.4)}
.kt-feel p:last-child{margin:0}
/* Seitenpanel */
.kt-side{position:sticky;top:110px;text-align:center;padding:30px 26px;border-radius:var(--radius-lg);background:radial-gradient(120% 90% at 50% 0%,rgba(1,83,157,.55),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.1)}
.kt-dial{position:relative;width:240px;height:240px;margin:0 auto 18px}
.kt-ring{position:absolute;inset:0;width:100%;height:100%}
.kt-seg{fill:none;stroke:rgba(255,255,255,.12);stroke-width:10;stroke-linecap:round;transition:stroke .5s,stroke-width .5s}
.kt-seg.on{stroke:var(--orange)}
.kt-seg.cur{stroke:#F4BFA3;stroke-width:13}
.kt-dc{position:absolute;inset:34px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(2,48,92,.6)}
.kt-dic{width:40px;height:40px;border-radius:50%;background:var(--orange);color:var(--apricot-ink);display:grid;place-items:center;margin-bottom:8px}
.kt-dic svg{width:22px;height:22px}
.kt-dc small{font:700 .66rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#8DA3BC}
.kt-dt{font:800 1.6rem/1.1 var(--serif);color:#fff;margin:5px 0 4px;letter-spacing:-.02em}
.kt-dn{font-size:.78rem;color:#B9C9DC}.kt-dn b{color:#F4BFA3}
.kt-dtitle{font:800 1.2rem/1.25 var(--serif);color:#fff;margin:0 0 8px}
.kt-dsum{margin:0;color:#B9C9DC;font-size:.95rem}
.kt-side.swap .kt-dc,.kt-side.swap .kt-dtitle,.kt-side.swap .kt-dsum{animation:ktSwap .5s var(--ease)}
@keyframes ktSwap{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes ktHit{0%{box-shadow:0 0 0 0 rgba(238,164,127,.7)}100%{box-shadow:0 0 0 16px rgba(238,164,127,0)}}
@keyframes ktPing{0%{box-shadow:0 0 0 0 rgba(238,164,127,.6)}80%,100%{box-shadow:0 0 0 10px rgba(238,164,127,0)}}
/* helle Variante (Ratgeber) */
.kt-light .kt-hint{color:var(--muted)}
.kt-light .kt-all{color:var(--navy);border-color:var(--line-2)}
.kt-light .kt-all:hover{background:var(--mint)}
.kt-light .kt-rail{background:var(--line)}
.kt-light .kt-node{background:var(--mint);border-color:var(--mint-2);color:var(--navy-3)}
.kt-light .kt-node b{background:#fff;border-color:var(--line-2);color:var(--navy)}
.kt-light .kt-card{background:#fff;border-color:var(--line)}
.kt-light .kt-card:hover{background:#fff;box-shadow:0 10px 26px -16px rgba(2,48,92,.35)}
.kt-light .kt-it.open .kt-card{background:#fff;border-color:var(--orange);box-shadow:0 18px 40px -22px rgba(2,48,92,.35),inset 3px 0 0 var(--orange)}
.kt-light .kt-time,.kt-light .kt-title{color:var(--navy)}
.kt-light .kt-time small,.kt-light .kt-in .kt-lbl{color:var(--orange-d)}
.kt-light .kt-sum{color:var(--muted)}
.kt-light .kt-chev{border-color:var(--line-2)}
.kt-light .kt-chev::before,.kt-light .kt-chev::after{background:var(--navy)}
.kt-light .kt-in p{color:var(--ink,#1F2A37)}
.kt-light .kt-in a{color:var(--navy-3)}
.kt-light .kt-feel{background:var(--orange-soft);border-color:rgba(184,90,46,.3)}
.kt-light .kt-head{grid-template-columns:130px minmax(0,1fr) 36px}
.kt-light .kt-in{padding-left:170px}
@media (max-width:1100px){.kt{grid-template-columns:minmax(0,1fr) 300px;gap:36px}.kt-dial{width:200px;height:200px}.kt-dc{inset:28px}}
@media (max-width:960px){.kt{display:block}.kt-side{display:none}}
@media (max-width:700px){
 .kt-it{grid-template-columns:44px minmax(0,1fr);gap:12px}
 .kt-node{width:44px;height:44px}.kt-node svg{width:20px;height:20px}
 .kt-rail{left:21px;top:22px;height:calc(100% - 44px)}
 .kt-head,.kt-light .kt-head{grid-template-columns:minmax(0,1fr) 32px;gap:10px 12px;padding:16px}
 .kt-time{grid-column:1;font-size:1.25rem}
 .kt-txt{grid-column:1/-1;grid-row:2}
 .kt-chev{grid-column:2;grid-row:1;width:32px;height:32px}
 .kt-in,.kt-light .kt-in{padding-left:16px;padding-right:16px}
 .kt-card:hover{transform:none}
}
@media print{.kt-body{grid-template-rows:1fr}.kt-in{opacity:1;visibility:visible;padding-bottom:22px}}
@media (prefers-reduced-motion:reduce){.kt-it.rv{transform:none}.kt-rail i{transition:none}}

/* FIT2: Für wen passt das Angebot */
.fit2{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:stretch}
.ft{position:relative;display:flex;flex-direction:column;border-radius:var(--radius-lg);padding:34px 34px 30px;overflow:hidden;transition:transform .45s var(--ease),box-shadow .45s var(--ease)}
.ft:hover{transform:translateY(-4px)}
.ft-yes{background:#fff;border:1px solid var(--line);box-shadow:0 24px 50px -34px rgba(2,48,92,.35)}
.ft-yes::before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,var(--navy-3),#6FA6D8)}
.ft-yes::after{content:"";position:absolute;right:-70px;top:-70px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,var(--mint) 0,rgba(234,243,251,0) 70%);pointer-events:none}
.ft-no{background:linear-gradient(160deg,#FFF6F0 0%,#FCEBE2 100%);border:1px solid rgba(238,164,127,.45);box-shadow:0 24px 50px -34px rgba(184,90,46,.35)}
.ft-no::before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,var(--orange),#F4BFA3)}
.ft-h{position:relative;z-index:1;display:flex;gap:16px;align-items:center;margin-bottom:22px}
.ft-ic{flex:none;width:56px;height:56px;border-radius:18px;display:grid;place-items:center}
.ft-ic svg{width:28px;height:28px}
.ft-yes .ft-ic{background:var(--navy-3);color:#fff;box-shadow:0 12px 24px -12px rgba(1,83,157,.8)}
.ft-no .ft-ic{background:var(--orange);color:var(--apricot-ink);box-shadow:0 12px 24px -12px rgba(184,90,46,.7)}
.ft-tag{display:inline-block;font:700 .7rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;margin-bottom:7px}
.ft-yes .ft-tag{color:var(--navy-3)}.ft-no .ft-tag{color:var(--orange-d)}
.ft h3{margin:0;font-size:1.35rem;line-height:1.2;color:var(--navy)}
.ft-l{position:relative;z-index:1;list-style:none;margin:0;padding:0;display:grid;gap:0;flex:1}
.ft-l li{display:flex;gap:14px;align-items:center;margin:0;padding:13px 10px;border-radius:14px;border-bottom:1px dashed var(--line);transition:background .3s,transform .3s var(--ease)}
.ft-no .ft-l li{border-bottom-color:rgba(184,90,46,.18)}
.ft-l li:last-child{border-bottom:0}
.ft-l li:hover{transform:translateX(5px)}
.ft-yes .ft-l li:hover{background:var(--mint)}
.ft-no .ft-l li:hover{background:rgba(255,255,255,.7)}
.ft-b{flex:none;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;transition:transform .35s var(--ease)}
.ft-b svg{width:20px;height:20px}
.ft-l li:hover .ft-b{transform:rotate(-6deg) scale(1.08)}
.ft-yes .ft-b{background:var(--mint);color:var(--navy-3)}
.ft-no .ft-b{background:#fff;color:var(--orange-d);box-shadow:0 4px 10px -6px rgba(184,90,46,.5)}
.ft-t{font-size:1rem;line-height:1.45;color:var(--ink,#1F2A37)}
.ft-t strong{color:var(--navy);font-weight:800}
.ft-foot{position:relative;z-index:1;margin:18px 0 0;padding-top:16px;border-top:1px solid var(--line);font-size:.92rem;color:var(--muted);display:flex;align-items:center;gap:10px}
.ft-foot::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:var(--navy-3)}
.ft-cta{position:relative;z-index:1;margin-top:18px;background:var(--navy);border-radius:18px;padding:18px 20px;display:flex;gap:16px;align-items:center;justify-content:space-between}
.ft-cta p{margin:0;color:#DCE6F2;font-size:.9rem;line-height:1.5}
.ft-btn{flex:none;display:inline-flex;align-items:center;gap:8px;background:var(--orange);color:var(--apricot-ink);font-weight:800;font-size:.9rem;text-decoration:none;padding:11px 16px;border-radius:999px;transition:background .25s,transform .25s}
.ft-btn svg{width:17px;height:17px}
.ft-btn:hover{background:#F4BFA3;transform:translateY(-1px)}
.rv .ft-l li{opacity:0;transform:translateY(10px)}
.rv.in .ft-l li{opacity:1;transform:none;transition:opacity .6s var(--ease) calc(.25s + var(--i)*.08s),transform .6s var(--ease) calc(.25s + var(--i)*.08s),background .3s}
.rv.in .ft-l li:hover{transform:translateX(5px);transition-delay:0s}
.no-js .ft-l li{opacity:1;transform:none}
@media (max-width:1000px){.ft-cta{flex-direction:column;align-items:flex-start}}
@media (max-width:760px){.fit2{grid-template-columns:1fr;gap:18px}.ft{padding:26px 20px 22px}.ft h3{font-size:1.25rem}.ft-ic{width:48px;height:48px;border-radius:15px}.ft-l li{padding:11px 4px}}
@media (prefers-reduced-motion:reduce){.rv .ft-l li{opacity:1;transform:none}}

/* RW: Bewertungen */
.rw-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:34px}
.rw-head h2{margin:0}
.rw-badge{display:grid;grid-template-columns:auto auto;column-gap:12px;align-items:center;text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:18px;padding:12px 18px;box-shadow:0 14px 30px -22px rgba(2,48,92,.4);transition:transform .3s var(--ease)}
.rw-badge:hover{transform:translateY(-2px)}
.rw-badge .rw-g{grid-row:1/3;width:34px;height:34px}
.rw-badge span{color:var(--navy);font-weight:700}.rw-badge strong{font:800 1.05rem/1 var(--serif);color:var(--navy);margin-right:6px}
.rw-badge small{color:var(--muted);font-size:.8rem}
.rw-stars{color:#F4B400;letter-spacing:2px;font-size:1.05rem}
.rw-grid{display:grid;grid-template-columns:1fr 1fr .85fr;gap:22px;align-items:stretch}
.rw-card{position:relative;margin:0;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:30px 28px 26px;box-shadow:0 24px 50px -36px rgba(2,48,92,.4);overflow:hidden;transition:transform .45s var(--ease),box-shadow .45s var(--ease)}
.rw-card.rv{transition-delay:calc(var(--i)*.1s)}
.rw-card:hover{transform:translateY(-5px);box-shadow:0 30px 60px -34px rgba(2,48,92,.5)}
.rw-q{position:absolute;right:22px;top:18px;width:62px;height:62px;fill:var(--mint)}
.rw-top{position:relative;display:flex;align-items:center;gap:10px;margin-bottom:16px}
.rw-top .rw-g{width:20px;height:20px}
.rw-card blockquote{position:relative;margin:0 0 22px;flex:1}
.rw-card blockquote p{margin:0;font:500 1.08rem/1.6 var(--sans);color:var(--ink,#1F2A37)}
.rw-card figcaption{display:flex;align-items:center;gap:12px;padding-top:18px;border-top:1px solid var(--line)}
.rw-av{flex:none;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;color:#fff;font:800 1.05rem/1 var(--serif)}
.rw-card figcaption strong{display:block;color:var(--navy);font-size:1rem}
.rw-card figcaption small{display:block;color:var(--muted);font-size:.8rem;margin-top:2px}
.rw-you{background:linear-gradient(155deg,var(--navy) 0%,var(--navy-3) 100%);border:0;color:#DCE6F2;justify-content:center}
.rw-you h3{color:#fff;margin:14px 0 8px;font-size:1.35rem}
.rw-you p{margin:0 0 20px;font-size:.95rem;line-height:1.55}
.rw-you .btn{align-self:flex-start}
.rw-you-ic{width:52px;height:52px;border-radius:16px;background:var(--orange);color:var(--apricot-ink);display:grid;place-items:center}
.rw-you-ic svg{width:26px;height:26px}
.rw-you::after{content:"";position:absolute;right:-60px;bottom:-60px;width:200px;height:200px;border-radius:50%;border:30px solid rgba(255,255,255,.06)}
.rw-note{margin:22px 0 0;font-size:.8rem;color:var(--muted);text-align:center}
@media (max-width:1000px){.rw-grid{grid-template-columns:1fr 1fr}.rw-you{grid-column:1/-1}}
@media (max-width:700px){.rw-grid{grid-template-columns:1fr}.rw-card{padding:26px 22px 22px}.rw-head{align-items:flex-start}}

/* HERO2: Unterseiten-Hero mit randlosem Foto */
.page-hero.ph2{padding:0;overflow:visible;z-index:2}
.page-hero.ph2::after{display:none}
.ph2-media{position:absolute;top:0;right:0;bottom:0;width:min(45vw,860px);border-bottom-left-radius:180px;overflow:hidden;background:var(--mint)}
.ph2-media img{width:100%;height:100%;object-fit:cover;display:block;animation:ph2Zoom 2.2s var(--ease) both}
.ph2-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(251,248,245,.28) 0,rgba(251,248,245,0) 22%),linear-gradient(0deg,rgba(2,48,92,.18) 0,rgba(2,48,92,0) 35%);pointer-events:none}
.ph2-ring{position:absolute;z-index:1;left:calc(100% - min(45vw,860px) - 58px);bottom:170px;width:116px;height:116px;border-radius:50%;border:12px solid var(--orange);opacity:.9;pointer-events:none}
@keyframes ph2Zoom{from{transform:scale(1.07)}to{transform:none}}
.ph2 .wrap{position:relative;z-index:2}
.ph2-text{max-width:min(600px,calc(100% - 45vw + 40px));padding:clamp(48px,6vw,88px) 0 clamp(120px,10vw,150px);min-height:clamp(520px,64vh,640px);display:flex;flex-direction:column;justify-content:center}
.ph2-text h1{font-size:clamp(2.3rem,3.5vw,3.5rem)}
.ph2-facts{position:relative;margin:-72px 0 -64px;background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:0 30px 60px -34px rgba(2,48,92,.45);display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));padding:8px}
.ph2-facts>div{display:flex;gap:12px;align-items:center;padding:14px 16px;position:relative}
.ph2-facts>div+div::before{content:"";position:absolute;left:0;top:18%;bottom:18%;width:1px;background:var(--line)}
.ph2-ic{flex:none;width:42px;height:42px;border-radius:13px;background:var(--mint);color:var(--navy-3);display:grid;place-items:center;transition:background .3s,color .3s,transform .3s var(--ease)}
.ph2-ic svg{width:21px;height:21px}
.ph2-facts>div:hover .ph2-ic{background:var(--orange);color:var(--apricot-ink);transform:rotate(-6deg)}
.ph2-facts dt{font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-weight:700;margin:0 0 3px}
.ph2-facts dd{margin:0;font-weight:700;color:var(--navy);font-size:.95rem;line-height:1.3}
.ph2+section,.ph2+main,.ph2+div{padding-top:calc(clamp(64px,8vw,110px) + 44px)}
@media (max-width:900px){
 .ph2-media{position:relative;width:auto;height:auto;aspect-ratio:16/11;margin-left:18px;border-bottom-left-radius:90px}
 .ph2-ring{left:-4px;bottom:auto;top:calc((100vw - 18px) * 11 / 16 - 60px);width:72px;height:72px;border-width:8px}
 .ph2-text{max-width:none;min-height:0;padding:30px 0 96px}
 .ph2-facts{grid-template-columns:1fr 1fr;margin:-64px 0 -56px}
 .ph2-facts>div{padding:12px 10px}
 .ph2-facts>div+div::before{display:none}
 .ph2-facts>div:nth-child(n+3){border-top:1px solid var(--line)}
 .ph2-facts>div:last-child:nth-child(odd){grid-column:1/-1}
}
@media (max-width:420px){.ph2-ic{width:36px;height:36px;border-radius:11px}.ph2-facts dd{font-size:.88rem}}
@media (prefers-reduced-motion:reduce){.ph2-media img{animation:none}}

/* HERO3: kompaktes Foto mit Bewegung */
.ph3-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:48px;align-items:center}
.ph3 .ph2-text{max-width:none;min-height:0;padding:clamp(40px,5vw,72px) 0 clamp(110px,9vw,132px)}
.ph3-vis{position:relative;justify-self:center;width:min(100%,400px);margin:36px 30px 96px 0;perspective:1100px}
.ph3-img{position:relative;z-index:2;border-radius:30px;overflow:hidden;aspect-ratio:4/5;background:var(--mint);box-shadow:0 40px 70px -34px rgba(2,48,92,.55);transform:rotate(2.5deg) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .6s var(--ease),box-shadow .6s var(--ease);will-change:transform}
.ph3-img img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.08);transition:transform 1.4s var(--ease)}
.ph3-vis:hover .ph3-img{transform:rotate(0deg) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));box-shadow:0 50px 80px -34px rgba(2,48,92,.6)}
.ph3-vis:hover .ph3-img img{transform:scale(1.13)}
.ph3-blob{position:absolute;z-index:0;left:-16%;bottom:-11%;width:86%;height:86%;background:linear-gradient(135deg,#F4BFA3,var(--orange));opacity:.6;border-radius:42% 58% 63% 37%/45% 40% 60% 55%;animation:ph3Blob 14s ease-in-out infinite}
.ph3-blob2{position:absolute;z-index:0;right:-12%;top:-8%;width:52%;height:52%;background:var(--mint-2);border-radius:58% 42% 37% 63%/55% 60% 40% 45%;animation:ph3Blob 18s ease-in-out infinite reverse}
.ph3-dots{position:absolute;z-index:1;right:-30px;bottom:18%;width:86px;height:86px;background-image:radial-gradient(rgba(1,83,157,.35) 1.6px,transparent 1.8px);background-size:14px 14px}
@keyframes ph3Blob{0%,100%{border-radius:42% 58% 63% 37%/45% 40% 60% 55%;transform:rotate(0)}33%{border-radius:60% 40% 38% 62%/57% 49% 51% 43%;transform:rotate(8deg) scale(1.03)}66%{border-radius:35% 65% 55% 45%/40% 58% 42% 60%;transform:rotate(-6deg) scale(.98)}}
.ph3-chip{position:absolute;z-index:3;display:flex;align-items:center;gap:9px;background:#fff;border-radius:999px;padding:8px 16px 8px 8px;box-shadow:0 18px 36px -16px rgba(2,48,92,.45);font:700 .86rem/1.2 var(--sans);color:var(--navy);white-space:nowrap}
.ph3-chip i{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--orange);color:var(--apricot-ink)}
.ph3-chip i svg{width:16px;height:16px}
.ph3-chip.c1{left:-58px;top:16%}
.ph3-chip.c2{right:-40px;bottom:12%}
.ph3-chip.c2 i{background:var(--navy-3);color:#fff}
.ph3-chip span{display:block;animation:none}
.rv .ph3-chip{opacity:0;transform:translateY(12px) scale(.9)}
.rv.in .ph3-chip{opacity:1;transform:none;transition:opacity .6s var(--ease) .5s,transform .6s var(--ease) .5s;animation:ph3Float 5s ease-in-out 1.2s infinite}
.rv.in .ph3-chip.c2{transition-delay:.75s;animation-delay:2s}
.rv.in .ph3-img img{transform:scale(1)}
.ph3-vis.rv{transform:translateX(34px)}.ph3-vis.rv.in{transform:none}
@keyframes ph3Float{0%,100%{translate:0 0}50%{translate:0 -9px}}
.ph3 .ph2-facts{grid-column:1/-1}
.ph3-grid>*{min-width:0}.ph2-facts>div{min-width:0}.ph2-facts dd{hyphens:auto;overflow-wrap:break-word}
@media (max-width:900px){
 .ph3-grid{grid-template-columns:1fr;gap:0}
 .ph3 .ph2-text{padding:30px 0 10px}
 .ph3-vis{width:min(78%,330px);margin:26px auto 104px}
 .ph3-chip{font-size:.78rem;padding:6px 12px 6px 6px}.ph3-chip i{width:26px;height:26px}
 .ph3-chip.c1{left:-34px}.ph3-chip.c2{right:-26px}
}
@media (prefers-reduced-motion:reduce){.ph3-blob,.ph3-blob2,.rv.in .ph3-chip{animation:none}}

/* HERO4: Erweiterung für Ratgeber-/Textseiten */
.ph3 .byline{margin-top:4px}
.ph3-long h1{font-size:clamp(2rem,2.9vw,2.9rem)}
.ph2+section{padding-top:calc(clamp(56px,6vw,96px) + 56px)!important}
@media (max-width:900px){.ph3 .ph2-text h1{font-size:clamp(1.75rem,7.4vw,2.4rem);hyphens:auto}}

/* ABNEHMEN: Ziele, Ablauf, Preis, Türkçe, Kampagnenbild */
.ph3-cut .ph3-img{aspect-ratio:800/747;background:#fff}
.ph3-cut .ph3-img img{object-position:50% 100%}
.ph3-cut .ph3-chip.c1{top:auto;bottom:34%;left:-60px}
.ph3-price{position:absolute;z-index:4;left:-46px;top:-34px;width:118px;height:118px;border-radius:50%;background:var(--orange);color:var(--navy);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 20px 40px -16px rgba(184,90,46,.7);transform:rotate(-10deg);border:3px solid #fff;outline:1.5px solid rgba(255,255,255,.8);outline-offset:-10px}
.ph3-price small{font:800 .66rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase}
.ph3-price b{font:900 2.3rem/1 var(--serif);letter-spacing:-.03em;margin-top:2px}
.rv .ph3-price{opacity:0;transform:rotate(-30deg) scale(.6)}
.rv.in .ph3-price{opacity:1;transform:rotate(-10deg);transition:opacity .5s var(--ease) .3s,transform .8s cubic-bezier(.3,1.6,.5,1) .3s;animation:ph3Wob 6s ease-in-out 1.4s infinite}
@keyframes ph3Wob{0%,100%{rotate:0deg}50%{rotate:6deg}}
.az-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.az{background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px 22px;transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s}
.az.rv{transition-delay:calc(var(--i)*.06s)}
.az:hover{transform:translateY(-5px);box-shadow:0 24px 44px -28px rgba(2,48,92,.45);border-color:rgba(238,164,127,.6)}
.az-ic{width:48px;height:48px;border-radius:15px;background:var(--mint);color:var(--navy-3);display:grid;place-items:center;margin-bottom:14px;transition:background .3s,color .3s,transform .3s var(--ease)}
.az-ic svg{width:24px;height:24px}
.az:hover .az-ic{background:var(--orange);color:var(--apricot-ink);transform:rotate(-6deg)}
.az h3{font-size:1.1rem;margin:0 0 6px}
.az p{margin:0;color:var(--muted);font-size:.95rem;line-height:1.55}
.az-note{margin:22px 0 0;text-align:center;font-size:.85rem;color:var(--muted)}
.ab-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;position:relative;counter-reset:none}
.ab-steps::before{content:"";position:absolute;left:8%;right:8%;top:28px;height:2px;background:repeating-linear-gradient(90deg,var(--orange) 0 10px,transparent 10px 18px);opacity:.7}
.ab-step{position:relative;margin:0}
.ab-step.rv{transition-delay:calc(var(--i)*.12s)}
.ab-num{position:relative;z-index:1;display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--navy);color:#fff;font:800 1.3rem/1 var(--serif);margin:0 auto 18px;box-shadow:0 0 0 8px var(--cream,#FBF8F5)}
.ab-step:nth-child(2) .ab-num{background:var(--navy-3)}.ab-step:nth-child(3) .ab-num{background:var(--orange);color:var(--apricot-ink)}
.ab-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px 22px;height:calc(100% - 74px);box-shadow:0 20px 40px -32px rgba(2,48,92,.4)}
.ab-dur{display:inline-flex;align-items:center;gap:6px;font:700 .78rem/1.3 var(--sans);color:var(--orange-d);background:var(--orange-soft);border-radius:999px;padding:5px 11px 5px 8px;margin-bottom:10px}
.ab-dur svg{width:14px;height:14px;flex:none}
.ab-card h3{font-size:1.25rem;margin:0 0 10px}
.ab-card ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ab-card li{position:relative;padding-left:22px;margin:0;font-size:.95rem;line-height:1.5;color:var(--ink,#1F2A37)}
.ab-card li::before{content:"";position:absolute;left:2px;top:.55em;width:8px;height:8px;border-radius:50%;background:var(--orange)}
.ab-price{margin-top:34px;display:flex;align-items:center;gap:26px;background:var(--navy);color:#DCE6F2;border-radius:26px;padding:24px 30px}
.ab-price h3{color:#fff;margin:0 0 4px;font-size:1.25rem}.ab-price p{margin:0;font-size:.95rem}
.ab-price .btn{margin-left:auto;flex:none}
.ab-badge{flex:none;width:104px;height:104px;border-radius:50%;background:var(--orange);color:var(--navy);display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-10deg)}
.ab-badge small{font:800 .62rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase}.ab-badge b{font:900 2rem/1 var(--serif)}
.ab-tr{padding-top:0}
.ab-tr-box{display:flex;align-items:center;gap:22px;border:2px dashed rgba(1,83,157,.3);border-radius:24px;padding:20px 26px;background:#fff}
.ab-tr-flag{flex:none;background:#E30A17;color:#fff;font:800 .8rem/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:9px 14px}
.ab-tr-box h3{margin:0 0 2px;font-size:1.15rem}.ab-tr-box p{margin:0;color:var(--muted);font-size:.95rem}
.ab-tr-box .btn{margin-left:auto;flex:none}
@media (max-width:960px){.az-grid{grid-template-columns:1fr 1fr}.ab-steps{grid-template-columns:1fr;gap:14px}.ab-steps::before{left:27px;right:auto;top:28px;bottom:28px;width:2px;height:auto;background:repeating-linear-gradient(180deg,var(--orange) 0 10px,transparent 10px 18px)}
 .ab-step{display:grid;grid-template-columns:56px 1fr;gap:14px}.ab-num{margin:0}.ab-card{height:auto}
 .ab-price,.ab-tr-box{flex-wrap:wrap}.ab-price .btn,.ab-tr-box .btn{margin-left:0}}
@media (max-width:600px){.az-grid{grid-template-columns:1fr}.ph3-price{width:92px;height:92px;left:-20px;top:-26px}.ph3-price b{font-size:1.8rem}.ab-price{padding:22px}}
@media (prefers-reduced-motion:reduce){.rv.in .ph3-price{animation:none}}

/* ABVIDEO: Abnehmen-Hero mit Video */
.hero-ab .crumbs a,.hero-ab .crumbs li{color:rgba(255,255,255,.72)}
.hero-ab .crumbs a:hover{color:#fff}
.hero-ab .crumbs li+li::before{color:rgba(255,255,255,.35)}
.hero-ab .hero-bg video{object-position:62% 35%}

/* ABEDEL: Abnehmen – untere Bereiche veredelt */
.ab-an-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(40px,6vw,88px);align-items:center}
.ab-an-vis{position:relative;max-width:470px;justify-self:center;width:100%;margin:30px 0}
.ab-an-img{position:relative;z-index:2;border-radius:30px;overflow:hidden;background:#fff;box-shadow:0 40px 70px -36px rgba(2,48,92,.5);transform:rotate(-2deg);transition:transform .6s var(--ease)}
.ab-an-vis:hover .ab-an-img{transform:rotate(0)}
.ab-an-img img{display:block;width:100%;height:auto}
.ab-an-card{position:absolute;z-index:3;display:flex;gap:12px;align-items:center;background:#fff;border-radius:18px;padding:12px 16px 12px 12px;box-shadow:0 22px 40px -18px rgba(2,48,92,.45);min-width:210px}
.ab-an-card>span{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--mint);color:var(--navy-3);flex:none}
.ab-an-card>span svg{width:21px;height:21px}
.ab-an-card b{display:block;color:var(--navy);font-size:.95rem}.ab-an-card small{display:block;color:var(--muted);font-size:.8rem}
.ab-an-card.k1{left:-44px;bottom:22%}.ab-an-card.k2{right:-34px;top:14%}
.ab-an-card.k2>span{background:var(--orange);color:var(--apricot-ink)}
.rv .ab-an-card{opacity:0;transform:translateY(14px)}
.rv.in .ab-an-card{opacity:1;transform:none;transition:opacity .6s var(--ease) .45s,transform .6s var(--ease) .45s;animation:ph3Float 6s ease-in-out 1.2s infinite}
.rv.in .ab-an-card.k2{transition-delay:.7s;animation-delay:2.2s}
.ab-an-price{position:absolute;z-index:4;right:-18px;bottom:-26px;width:104px;height:104px;border-radius:50%;background:var(--navy);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(8deg);box-shadow:0 20px 40px -16px rgba(2,48,92,.6);border:3px solid #fff}
.ab-an-price small{font:800 .6rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:#F4BFA3}.ab-an-price b{font:900 1.9rem/1 var(--serif)}
.ab-an-lead{font-size:1.12rem;color:var(--navy);font-weight:600}
.ab-an-list{list-style:none;margin:24px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ab-an-list li{margin:0;display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px;transition:transform .3s var(--ease),border-color .3s,box-shadow .3s}
.ab-an-list li:hover{transform:translateY(-3px);border-color:rgba(238,164,127,.6);box-shadow:0 18px 32px -24px rgba(2,48,92,.45)}
.ab-an-list li>span{flex:none;width:36px;height:36px;border-radius:11px;background:var(--mint);color:var(--navy-3);display:grid;place-items:center}
.ab-an-list li>span svg{width:19px;height:19px}
.ab-an-list b{display:block;color:var(--navy);font-size:.93rem;line-height:1.3}.ab-an-list small{display:block;color:var(--muted);font-size:.82rem;line-height:1.4;margin-top:2px}
.ab-an-quote{margin:26px 0 0;padding:0 0 0 18px;border-left:3px solid var(--orange);font:italic 500 1.25rem/1.4 var(--serif);color:var(--navy-3)}
/* Ziele */
.ab-ziele{background:linear-gradient(180deg,var(--mint) 0%,#fff 100%);position:relative;overflow:hidden}
.ab-ziele::before{content:"";position:absolute;right:-120px;top:-120px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(238,164,127,.22),transparent 70%)}
.ab-ziele .wrap{position:relative}
.az-grid{counter-reset:az}
.az{position:relative;overflow:hidden;counter-increment:az}
.az::after{content:"0" counter(az);position:absolute;right:18px;top:12px;font:800 2.4rem/1 var(--serif);color:var(--mint-2);opacity:.9;transition:color .3s}
.az::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--orange),#F4BFA3);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease)}
.az:hover::before{transform:scaleX(1)}
.az:hover::after{color:#F4BFA3}
/* Ablauf */
.ab-ablauf{background:#fff}
.ab-steps.rv::before{transform:scaleX(0);transform-origin:left;transition:transform 1.6s var(--ease) .3s}
.ab-steps.rv.in::before{transform:scaleX(1)}
.ab-num{box-shadow:0 0 0 8px #fff,0 12px 24px -10px rgba(2,48,92,.5)}
.ab-step .ab-card{transition:transform .35s var(--ease),box-shadow .35s}
.ab-step:hover .ab-card{transform:translateY(-4px);box-shadow:0 26px 46px -30px rgba(2,48,92,.5)}
.ab-price{position:relative;overflow:hidden;background:linear-gradient(120deg,#02254A 0%,#01427E 60%,#01539D 100%)}
.ab-price::before{content:"";position:absolute;right:-60px;top:-80px;width:240px;height:240px;border-radius:50%;border:34px solid rgba(255,255,255,.05)}
.ab-price>*{position:relative}
/* Rauchstopp & Gewicht */
.ab-rs{background:var(--cream,#FBF8F5)}
.ab-rs-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(36px,5vw,72px);align-items:start}
.ab-rs-side{display:grid;gap:18px}
.ab-why{background:#fff;border:1px solid var(--line);border-radius:24px;padding:26px 24px;box-shadow:0 24px 50px -38px rgba(2,48,92,.45)}
.ab-why h3{font-size:1.15rem;margin:0 0 16px}
.ab-why ol{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.ab-why li{margin:0;display:flex;gap:14px;align-items:flex-start}
.ab-why li>span{flex:none;width:40px;height:40px;border-radius:12px;background:var(--orange-soft);color:var(--orange-d);display:grid;place-items:center}
.ab-why li>span svg{width:20px;height:20px}
.ab-why b{display:block;color:var(--navy);font-size:.97rem}.ab-why small{display:block;color:var(--muted);font-size:.88rem;line-height:1.45;margin-top:2px}
.ab-tip{position:relative;background:var(--navy);color:#DCE6F2;border-radius:24px;padding:24px 24px 20px;overflow:hidden}
.ab-tip::after{content:"";position:absolute;right:-40px;bottom:-40px;width:140px;height:140px;border-radius:50%;background:rgba(238,164,127,.18)}
.ab-tip-k{display:inline-block;background:var(--orange);color:var(--apricot-ink);font:800 .7rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;border-radius:999px;padding:7px 12px;margin-bottom:10px}
.ab-tip p{margin:0 0 6px;font-size:.97rem;line-height:1.6;position:relative;z-index:1}
.ab-tip .card-link{color:#F4BFA3;position:relative;z-index:1}
/* FAQ */
.ab-faq{background:#fff}
.ab-faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(32px,5vw,72px);align-items:start}
.ab-faq-side{position:sticky;top:110px}
.ab-faq-side .sec-head{text-align:left;margin-bottom:22px}
.ab-faq-card{background:linear-gradient(160deg,#FFF6F0,var(--orange-soft));border:1px solid rgba(238,164,127,.45);border-radius:24px;padding:24px}
.ab-faq-ic{width:44px;height:44px;border-radius:14px;background:var(--orange);color:var(--apricot-ink);display:grid;place-items:center;margin-bottom:12px}
.ab-faq-ic svg{width:22px;height:22px}
.ab-faq-card h3{margin:0 0 6px;font-size:1.15rem}.ab-faq-card p{margin:0 0 16px;color:var(--muted);font-size:.95rem}
.ab-faq-card .btn{width:100%;justify-content:center}
.ab-faq-wa{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:12px;font-weight:700;color:var(--navy);text-decoration:none;font-size:.92rem}
.ab-faq-wa svg{width:18px;height:18px;color:#25D366}
@media (max-width:960px){
 .ab-an-grid,.ab-rs-grid,.ab-faq-grid{grid-template-columns:1fr}
 .ab-an-vis{max-width:380px;margin:10px auto 40px}
 .ab-an-card.k1{left:-12px}.ab-an-card.k2{right:-12px}
 .ab-faq-side{position:static}
 .ab-steps.rv::before{transform:none}
}
@media (max-width:600px){.ab-an-list{grid-template-columns:1fr}.ab-an-card{min-width:0;padding:9px 12px 9px 9px}.ab-an-card>span{width:32px;height:32px}.ab-an-price{width:86px;height:86px;right:-6px}.ab-an-price b{font-size:1.55rem}}
@media (prefers-reduced-motion:reduce){.rv.in .ab-an-card{animation:none}}

/* ADRESSE: Umzug Keplerplatz 13 */
.addr-bar{position:relative;z-index:60;display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;background:linear-gradient(90deg,#EEA47F,#F4BFA3,#EEA47F);background-size:200% 100%;animation:abShine 8s linear infinite;color:var(--apricot-ink);font-size:.9rem;line-height:1.35;padding:9px 16px;text-align:center}
.addr-bar svg{width:17px;height:17px;flex:none}
.addr-bar strong{font-weight:800}
.addr-bar a{color:var(--apricot-ink);font-weight:800;text-decoration:none;border-bottom:2px solid rgba(2,37,74,.35);padding-bottom:1px}
.addr-bar a:hover{border-bottom-color:var(--apricot-ink)}
.nb{display:inline-block;background:var(--navy);color:#fff;border-radius:999px;padding:3px 10px;font:800 .66rem/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase;animation:nbPulse 2.4s ease-in-out infinite}
@keyframes nbPulse{0%,100%{box-shadow:0 0 0 0 rgba(2,48,92,.45)}60%{box-shadow:0 0 0 7px rgba(2,48,92,0)}}
@keyframes abShine{0%{background-position:0% 0}100%{background-position:200% 0}}
.loc-new .nb{margin-right:8px;vertical-align:1px}
.loc-new{display:block;background:var(--orange-soft);border:1px solid rgba(238,164,127,.55);border-radius:16px;padding:12px 16px;margin:0 0 20px;color:var(--navy);font-size:.97rem;line-height:1.45}
@media (max-width:600px){.addr-bar{font-size:.8rem;gap:4px 8px;padding:8px 12px}.addr-bar .ab-u1,.addr-bar>svg{display:none}}
@media (prefers-reduced-motion:reduce){.addr-bar,.nb{animation:none}}

/* LZ: Lebenszeit-Rechner */
.lz{background:#fff;position:relative;overflow:hidden}
.lz::before{content:"";position:absolute;left:-160px;top:40px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,var(--mint),transparent 70%)}
.lz .wrap{position:relative}
.lz-card{display:grid;grid-template-columns:.9fr 1.1fr;border-radius:30px;overflow:hidden;box-shadow:0 40px 80px -48px rgba(2,48,92,.55);border:1px solid var(--line)}
.lz-in{background:linear-gradient(170deg,#FFF8F3,var(--cream,#FBF8F5));padding:clamp(26px,4vw,46px)}
.lz-cig{position:relative;display:flex;align-items:center;height:26px;margin:4px 0 14px}
.lz-cig-body{position:relative;height:18px;width:230px;border-radius:3px 0 0 3px;background:linear-gradient(90deg,#E8A96B 0 26%,#fff 26%);box-shadow:0 2px 8px rgba(2,48,92,.15);overflow:hidden}
.lz-cig-body i{position:absolute;right:0;top:0;bottom:0;width:0;background:var(--cream,#FBF8F5);animation:lzBurn 20s linear infinite}
.lz-cig-tip{width:8px;height:18px;border-radius:0 3px 3px 0;background:linear-gradient(90deg,#9A9A9A,#E8501E);margin-left:-8px;position:relative;z-index:1;animation:lzTip 20s linear infinite;box-shadow:0 0 10px 2px rgba(232,80,30,.45)}
@keyframes lzBurn{from{width:0}to{width:62%}}
@keyframes lzTip{from{transform:translateX(0)}to{transform:translateX(calc(-230px * .62))}}
.lz-smoke{display:none}
.lz-cig-t{margin:0 0 26px;color:var(--navy);font-size:1.02rem}
.lz-field{margin-bottom:22px}
.lz-lab{display:flex;align-items:baseline;gap:8px;margin-bottom:10px}
.lz-lab label{font-weight:700;color:var(--navy);flex:1}
.lz-lab output{font:800 2rem/1 var(--serif);color:var(--navy-3);min-width:2ch;text-align:right}
.lz-unit{color:var(--muted);font-size:.85rem;width:44px}
.lz-ctrl{display:flex;align-items:center;gap:12px}
.lz-step{flex:none;width:40px;height:40px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--navy);cursor:pointer;display:grid;place-items:center;transition:background .2s,transform .15s}
.lz-step:hover{background:var(--orange-soft)}.lz-step:active{transform:scale(.92)}
.lz-step svg{width:16px;height:16px}
.lz input[type=range]{-webkit-appearance:none;appearance:none;flex:1;height:8px;border-radius:99px;background:linear-gradient(90deg,var(--orange) 0 var(--f,25%),var(--line) var(--f,25%));outline:none}
.lz input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:26px;height:26px;border-radius:50%;background:#fff;border:3px solid var(--navy-3);box-shadow:0 4px 12px rgba(2,48,92,.3);cursor:grab}
.lz input[type=range]::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:#fff;border:3px solid var(--navy-3);cursor:grab}
.lz-hint{margin:6px 0 0;font-size:.82rem;color:var(--muted)}
.lz-out{background:linear-gradient(150deg,#02254A 0%,#01427E 70%,#01539D 100%);color:#DCE6F2;padding:clamp(26px,4vw,46px);position:relative;overflow:hidden}
.lz-out::after{content:"";position:absolute;right:-70px;bottom:-70px;width:240px;height:240px;border-radius:50%;border:36px solid rgba(255,255,255,.04)}
.lz-top{display:flex;gap:26px;align-items:center;margin-bottom:24px}
.lz-ring{position:relative;flex:none;width:136px;height:136px}
.lz-ring svg{width:100%;height:100%;transform:rotate(-90deg)}
.lz-r0{fill:none;stroke:rgba(255,255,255,.1);stroke-width:12}
.lz-r1{fill:none;stroke:var(--orange);stroke-width:12;stroke-linecap:round;stroke-dasharray:326.7;stroke-dashoffset:326.7;transition:stroke-dashoffset .9s var(--ease)}
.lz-ring-c{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.lz-ring-c b{font:800 1.15rem/1.1 var(--serif);color:#fff}
.lz-ring-c small{font-size:.72rem;color:#9FB6CF;margin-top:3px}
.lz-k{display:block;font:700 .72rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#F4BFA3;margin-bottom:8px}
.lz-big{font:800 clamp(2.6rem,5vw,3.8rem)/1 var(--serif);color:#fff;letter-spacing:-.03em}
.lz-big span{font-size:.45em;font-weight:700;color:#DCE6F2;letter-spacing:0}
.lz-sub{margin:8px 0 0;font-size:.95rem;color:#B9C9DC}
.lz-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:22px}
.lz-t{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:14px 12px}
.lz-t span{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:rgba(238,164,127,.18);color:#F4BFA3;margin-bottom:10px}
.lz-t span svg{width:17px;height:17px}
.lz-t b{display:block;color:#fff;font:800 1.02rem/1.2 var(--serif)}
.lz-t small{font-size:.76rem;color:#9FB6CF}
.lz-win{position:relative;z-index:1;background:rgba(238,164,127,.12);border:1px solid rgba(238,164,127,.35);border-radius:18px;padding:18px 18px 20px}
.lz-win-k{display:inline-block;background:var(--orange);color:var(--apricot-ink);font:800 .66rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;border-radius:999px;padding:6px 11px;margin-bottom:8px}
.lz-win p{margin:0 0 14px;color:#fff;font-size:1.02rem;line-height:1.5}
.lz-win b{color:#F4BFA3}
.lz-src{margin:18px auto 0;max-width:820px;text-align:center;font-size:.8rem;color:var(--muted)}
.lz-src a{color:var(--navy-3)}
.lz .bump{animation:lzBump .5s var(--ease)}
@keyframes lzBump{30%{transform:scale(1.06)}}
@media (max-width:960px){.lz-card{grid-template-columns:1fr}}
@media (max-width:560px){.lz-top{flex-direction:column;align-items:flex-start;gap:18px}.lz-tiles{grid-template-columns:1fr 1fr}.lz-tiles .lz-t:last-child{grid-column:1/-1}.lz-cig-body{width:180px}@keyframes lzTip{from{transform:translateX(0)}to{transform:translateX(calc(-180px * .62))}}.lz-win .btn{width:100%}}
@media (prefers-reduced-motion:reduce){.lz-cig-body i,.lz-cig-tip{animation:none}}

/* LZ2: Ring-Text */
.lz-ring-c{padding:0 18px}.lz-ring-c b{font-size:.98rem;line-height:1.15}

/* HCMB: Hacamat-Kasten + mobile Termin-Leiste */
.hc{margin-top:34px;display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(28px,4vw,56px);align-items:center;background:linear-gradient(150deg,#02254A 0%,#01427E 70%,#01539D 100%);border-radius:30px;padding:clamp(24px,4vw,44px);color:#DCE6F2;position:relative;overflow:hidden}
.hc::after{content:"";position:absolute;right:-80px;top:-80px;width:280px;height:280px;border-radius:50%;border:40px solid rgba(255,255,255,.04)}
.hc-vis{position:relative;max-width:340px;justify-self:center;width:100%}
.hc-blob{position:absolute;inset:8% -10% -8% 10%;background:linear-gradient(135deg,#F4BFA3,var(--orange));opacity:.35;border-radius:42% 58% 63% 37%/45% 40% 60% 55%;animation:ph3Blob 14s ease-in-out infinite}
.hc-img{position:relative;border-radius:24px;overflow:hidden;aspect-ratio:4/5;box-shadow:0 30px 60px -30px rgba(0,0,0,.6);transform:rotate(-2deg);transition:transform .6s var(--ease)}
.hc-vis:hover .hc-img{transform:rotate(0)}
.hc-img img{width:100%;height:100%;object-fit:cover;display:block}
.hc-tag{position:absolute;left:-10px;top:18px;background:var(--orange);color:var(--apricot-ink);font:800 .7rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;padding:8px 14px;border-radius:999px;box-shadow:0 10px 20px -10px rgba(0,0,0,.5)}
.hc-txt{position:relative;z-index:1}
.hc-txt .eyebrow{color:#F4BFA3}
.hc-txt h3{color:#fff;font-size:clamp(1.6rem,2.6vw,2.2rem);margin:6px 0 12px}
.hc-txt h3 em.it{color:#F4BFA3}
.hc-txt p{margin:0 0 12px;line-height:1.65}
.hc-txt strong{color:#fff}
.hc-facts{list-style:none;margin:18px 0 22px;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.hc-facts li{margin:0;display:flex;gap:10px;align-items:flex-start;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:12px}
.hc-facts li>span{flex:none;width:32px;height:32px;border-radius:10px;background:rgba(238,164,127,.2);color:#F4BFA3;display:grid;place-items:center}
.hc-facts li>span svg{width:17px;height:17px}
.hc-facts b{display:block;color:#fff;font-size:.88rem}.hc-facts small{display:block;color:#B9C9DC;font-size:.8rem;line-height:1.35}
.hc-note{font-size:.78rem!important;color:#9FB6CF;margin:16px 0 0!important}
@media (max-width:900px){.hc{grid-template-columns:1fr}.hc-vis{max-width:280px}.hc-facts{grid-template-columns:1fr}}
/* mobile Leiste */
.mbar{display:none}
@media (max-width:960px){
  body{padding-bottom:84px}
  .mbar{display:grid!important;grid-template-columns:52px 1fr 52px;gap:10px;align-items:center;position:fixed;left:0;right:0;bottom:0;z-index:80;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.97);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--line);box-shadow:0 -10px 30px rgba(2,48,92,.12);animation:mbIn .5s var(--ease) both}
  .mb-main{display:flex;align-items:center;justify-content:center;gap:10px;height:52px;border-radius:999px;background:var(--orange);color:var(--apricot-ink);font:800 1.02rem/1 var(--sans);text-decoration:none;box-shadow:0 10px 22px -10px rgba(184,90,46,.7);position:relative;overflow:hidden}
  .mb-main svg{width:20px;height:20px}
  .mb-main::after{content:"";position:absolute;top:0;bottom:0;width:40%;left:-60%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.45),transparent);animation:mbShine 4.5s ease-in-out 1.5s infinite}
  .mb-ic{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;text-decoration:none}
  .mb-tel{background:var(--navy);color:#fff}.mb-tel svg{width:22px;height:22px}
  .mb-wa{background:#25D366;color:#fff}.mb-wa svg{width:26px;height:26px}
  .wa-float{display:none!important}
}
@keyframes mbIn{from{transform:translateY(100%)}to{transform:none}}
@keyframes mbShine{0%,70%{left:-60%}100%{left:130%}}
@media (prefers-reduced-motion:reduce){.mbar,.mb-main::after,.hc-blob{animation:none!important}}

/* KOSTEN: Ratgeber Kostenvergleich */
.article>*{min-width:0}
.kv-quick{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:26px 0 8px}
.kq{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;display:flex;flex-direction:column;gap:2px}
.kq span{width:38px;height:38px;border-radius:12px;background:var(--mint);color:var(--navy-3);display:grid;place-items:center;margin-bottom:8px}
.kq span svg{width:20px;height:20px}
.kq b{font:800 1.15rem/1.2 var(--serif);color:var(--navy)}.kq small{color:var(--muted);font-size:.86rem}
.kv{background:#fff;border:1px solid var(--line);border-radius:22px;padding:22px 22px 16px;margin:18px 0 8px;position:relative}
.kv-list{list-style:none;margin:0;padding:0;display:grid;gap:10px;position:relative}
.kv-row,.kv-axis{display:grid;grid-template-columns:190px minmax(0,1fr) 190px;gap:14px;align-items:center;margin:0}
.kv-name{font-weight:700;color:var(--navy);font-size:.9rem;line-height:1.25}
.kv-val{font-size:.84rem;color:var(--muted)}
.kv-track{position:relative;height:14px;background:repeating-linear-gradient(90deg,var(--line) 0 1px,transparent 1px 22.22%),#F6F3EF;border-radius:99px}
.kv-bar{position:absolute;top:0;bottom:0;left:var(--l);width:var(--w);border-radius:99px;background:linear-gradient(90deg,#6FA6D8,var(--navy-3));transform-origin:left;transform:scaleX(0);transition:transform 1s var(--ease) calc(var(--i)*.08s)}
.kv.in .kv-bar{transform:scaleX(1)}
.kv-row.own .kv-bar{background:linear-gradient(90deg,#F4BFA3,var(--orange))}
.kv-row.own .kv-name{color:var(--orange-d)}
.kv-row.own .kv-val{color:var(--orange-d);font-weight:700}
.kv-dot{position:absolute;left:0;top:50%;width:14px;height:14px;margin-top:-7px;border-radius:50%;background:#3BAA6B;box-shadow:0 0 0 4px rgba(59,170,107,.2)}
.kv-row.free .kv-val{color:#2E8B57;font-weight:700}
.kv-axis{margin-top:8px}
.kv-ticks{position:relative;height:16px;font-size:.72rem;color:var(--muted)}
.kv-ticks span{position:absolute;transform:translateX(-50%);white-space:nowrap}
.kv-ticks span:first-child{transform:none}
.kv-track::after{content:"";position:absolute;left:var(--m);top:-6px;bottom:-6px;border-left:2px dashed var(--orange-d);opacity:.8}
.kv-legend{display:flex;align-items:center;gap:8px;margin:14px 0 0!important;font-size:.82rem!important;font-weight:700;color:var(--orange-d)!important}
.kv-legend i{width:0;height:14px;border-left:2px dashed var(--orange-d)}
.kv-note{margin:8px 0 0!important;font-size:.8rem!important;color:var(--muted)}
.prose tr.own td{background:var(--orange-soft)}
.kv-own{background:var(--navy);color:#DCE6F2;border-radius:22px;padding:22px;margin:16px 0}
.kv-own-p{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}
.kv-own-p>div{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:14px;display:flex;flex-direction:column}
.kv-own-p .feat{background:rgba(238,164,127,.16);border-color:rgba(238,164,127,.5)}
.kv-own-p small{font:700 .7rem/1.2 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:#F4BFA3}
.kv-own-p b{font:800 1.7rem/1.1 var(--serif);color:#fff;margin:4px 0}
.kv-own-p span{font-size:.82rem;color:#B9C9DC}
.kv-own p{color:#DCE6F2!important}
.kv-gegen{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:14px 0 18px}
.kv-gegen>div{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;text-align:center}
.kg-k{display:block;font-size:.8rem;color:var(--muted);font-weight:700}
.kv-gegen b{display:block;font:800 1.8rem/1.1 var(--serif);color:var(--orange-d);margin:6px 0 0}
.kv-gegen small{display:block;color:var(--muted);font-size:.8rem}
.kg-y{display:inline-block;margin-top:8px;font-size:.8rem;font-weight:700;color:var(--navy);background:var(--mint);border-radius:999px;padding:4px 10px}
@media (max-width:760px){
 .kv-quick,.kv-own-p,.kv-gegen{grid-template-columns:1fr}
 .kv-row{grid-template-columns:1fr;gap:4px}.kv-axis{display:none}
 .kv{padding:18px 16px 12px}.kv-note{margin-top:16px!important}
}
.kv-link{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:22px;padding:22px 26px}.kv-link h3{margin:4px 0}.kv-link p{margin:0;color:var(--muted)}
