/* ═══════════════════════════════════════════════════════════════
   KRANKENKASSE GÜNSTIGER — Mobil-Ebene („App-Gefühl")
   Wird nur bis 760 px geladen (media-Attribut am <link>), nach
   allen anderen Styles. Gleicher Inhalt wie am Desktop, nur anders
   präsentiert: Glas-Kopfleiste, Tab-/Aktionsleiste im Daumenbereich,
   gruppierte Listen, Karten zum Wischen, Segment-Umschalter,
   Dunkelmodus. Der Desktop bleibt unberührt.
   ═══════════════════════════════════════════════════════════════ */

:root{
  color-scheme:light dark;
  --gut:16px;
  --hdr-h:52px;
  --tab-h:58px;
  --act-h:70px;
  --safe-t:env(safe-area-inset-top,0px);
  --safe-b:env(safe-area-inset-bottom,0px);
  --r-cell:16px;
  --r-card:22px;

  /* App-Flächen (iOS „grouped") auf Basis der Petrol-Töne */
  --app-bg:#EEF3F2;
  --cell:#FFFFFF;
  --cell-2:#F4F8F7;
  --sep:rgba(11,42,42,.12);
  --press:rgba(11,42,42,.06);
  --glass:rgba(244,247,246,.78);
  --seg-bg:#E0E8E6;
  --faint:#9AADAA;
  --tab-ink:#5B716E;         /* inaktive Tabs, AA-Kontrast */
  --tint:#0E6B63;            /* Akzent für Text/Symbole */
  --btn:#0E6B63;             /* Akzent für Flächen mit weißer Schrift */
  --tile:#E1F3EE;
  --band:linear-gradient(150deg,#0A3431 0%,#0E4A45 100%);

  --ease:cubic-bezier(.2,.8,.2,1);
  --spring:cubic-bezier(.3,1.35,.5,1);
}

@media (prefers-color-scheme:dark){
  :root{
    /* Seiten-Tokens umfärben – alle Seiten nutzen dieselben Namen */
    --bg:#030A09;
    --surface:#0F1C1A;
    --text:#E7F0EE;
    --muted:#A6BAB6;
    --subtle:#7F9893;
    --line:rgba(231,240,238,.10);
    --green:#2FB7A3;
    --green-dk:#6EE7B7;
    --green-pale:rgba(110,231,183,.11);
    --green-mid:rgba(110,231,183,.16);
    --mint-soft:rgba(110,231,183,.22);
    --dark-bg:#0B2522;

    --app-bg:#030A09;
    --cell:#0F1C1A;
    --cell-2:#172826;
    --sep:rgba(231,240,238,.12);
    --press:rgba(231,240,238,.08);
    --glass:rgba(6,16,14,.74);
    --seg-bg:#1A2B29;
    --faint:#5F7874;
  --tab-ink:#8DA39F;
    --tint:#6EE7B7;
    --btn:#0F7A6E;
    --tile:rgba(110,231,183,.13);
    --band:linear-gradient(150deg,#0B2E2A 0%,#0F3F3A 100%);
  }
}

/* ─── Grundlagen ─── */
html{scroll-padding-top:calc(var(--hdr-h) + var(--safe-t) + 12px);-webkit-text-size-adjust:100%;}
body{
  background:var(--app-bg);
  font-size:16px;line-height:1.5;
  -webkit-tap-highlight-color:transparent;
  padding-bottom:calc(var(--tab-h) + var(--safe-b));
}
body.m-legal{padding-bottom:var(--safe-b);}
a,button,summary,label,input{-webkit-tap-highlight-color:transparent;}
.wrap{width:auto;margin-inline:calc(var(--gut) + env(safe-area-inset-left,0px)) calc(var(--gut) + env(safe-area-inset-right,0px));}
body{padding-left:0;padding-right:0;}
:focus-visible{outline:2.5px solid var(--tint);outline-offset:2px;border-radius:6px;}
::selection{background:var(--mint-soft,#B8F0D8);}

/* Tipp-Feedback: alles Antippbare gibt nach */
.btn,.badge,.logo-chip,.all-kassen-item,.link-pill,.m-tab svg,.m-hbtn,.m-back,.m-action-mail,
.faq-item summary,.all-kassen summary,.footer-links a,.m-links a,.m-seg button,.m-acc-h{
  transition:transform .18s var(--ease),background-color .18s,color .18s,opacity .18s;
}
.btn:active,.badge:active,.logo-chip:active,.all-kassen-item:active,.link-pill:active{transform:scale(.96);}
.faq-item summary:active,.all-kassen summary:active,.m-links a:active,.m-acc-h:active{background-color:var(--press);}
.footer-links a:active{opacity:.6;}
@media (hover:none){
  .btn:hover,.btn-primary:hover,.nav .cta:hover{transform:none;}
  .badge:hover{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.11);}
  .logo-chip:hover,.all-kassen-item:hover{border-color:transparent;background:var(--cell-2);}
  .faq-item summary:hover{background:transparent;}
}

/* Typografie: große iOS-Titel, ruhiger Fließtext */
.sec-label{font-size:11.5px;letter-spacing:.1em;margin-bottom:8px;color:var(--tint);}
.sec-label::before{width:14px;}
.sec-title,.sec-title[style]{font-size:30px !important;line-height:1.1;letter-spacing:-.032em;margin-bottom:10px;text-wrap:balance;}
.sec-sub{font-size:16px;line-height:1.5;}
h1,h2,h3{text-wrap:balance;}
p{text-wrap:pretty;}
h1 em,h2 em,.sec-title em{color:var(--green-dk);}
@media (prefers-color-scheme:dark){
  h1 em,h2 em,.sec-title em,.hero h1 em,.page-hero h1 em{
    color:#6EE7B7;
    background:linear-gradient(transparent 66%,rgba(110,231,183,.2) 66%,rgba(110,231,183,.2) 92%,transparent 92%);
  }
}

/* Buttons */
.btn{border-radius:14px;}
.btn-primary{background:var(--btn);box-shadow:0 8px 20px -8px rgba(14,107,99,.55);color:#fff;}
.btn-ghost{background:var(--cell);border-color:var(--line);color:var(--text);}

/* ─── Kopfleiste: Glas, schlank ─── */
.topbar{
  padding-top:var(--safe-t);
  background:var(--glass);
  backdrop-filter:saturate(1.8) blur(20px);-webkit-backdrop-filter:saturate(1.8) blur(20px);
  border-bottom:.5px solid transparent;
  transition:border-color .3s,background-color .3s;
}
.topbar.stuck{border-bottom-color:var(--sep);}
.topbar-inner{height:var(--hdr-h);gap:8px;}
.topbar .nav,.topbar > .wrap > .btn{display:none !important;}
.brand{gap:9px;min-width:0;}
.brand-mark{width:30px;height:30px;}
.brand-name{font-size:17px;font-weight:800;color:var(--text);overflow:hidden;text-overflow:ellipsis;}
.m-hbtn,.m-toggle{
  display:flex;align-items:center;justify-content:center;flex:none;
  width:36px;height:36px;border-radius:50%;border:0;padding:0;
  background:var(--tile);color:var(--tint);cursor:pointer;
}
.m-hbtn:active,.m-toggle:active{transform:scale(.9);}
.m-hbtn svg{width:18px;height:18px;}
.m-toggle svg{width:19px;height:19px;}
.m-hbtn{margin-left:auto;}
body.m-home .m-toggle{display:none;}

/* Unterseiten: Zurück-Chevron statt Logo */
.m-back{
  display:flex;align-items:center;justify-content:center;flex:none;
  width:36px;height:44px;margin-left:-10px;margin-right:-6px;color:var(--tint);
}
.m-back svg{width:24px;height:24px;}
.m-back:active{opacity:.5;}
body.m-sub .brand-mark,body.m-legal .brand-mark{display:none;}
.breadcrumb{display:none;}

/* Menü (Unterseiten) als iOS-Sheet mit gruppierter Liste */
.m-backdrop{background:rgba(3,10,9,.32);z-index:70;}
.m-panel{
  background:var(--app-bg);
  padding:calc(10px + var(--safe-t)) var(--gut) 22px;
  border-radius:0 0 26px 26px;
  box-shadow:0 24px 60px -20px rgba(0,0,0,.45);
  transition:transform .42s var(--spring);
  z-index:71;
}
.m-panel-head{margin-bottom:10px;}
.m-close{
  width:32px;height:32px;border-radius:50%;background:var(--seg-bg);color:var(--muted);
  font-size:14px;display:flex;align-items:center;justify-content:center;padding:0;
}
.m-links{gap:0;background:var(--cell);border-radius:var(--r-cell);overflow:hidden;}
.m-links a{
  display:flex;align-items:center;justify-content:space-between;
  padding:15px 16px;border:0;border-radius:0;background:transparent;
  font-size:17px;font-weight:600;color:var(--text);position:relative;min-height:52px;
}
.m-links a+a::before{content:'';position:absolute;left:16px;right:0;top:0;height:.5px;background:var(--sep);}
.m-links a::after{
  content:'';width:8px;height:8px;border-right:2px solid var(--faint);border-top:2px solid var(--faint);
  transform:rotate(45deg);margin-right:3px;flex:none;
}
.m-links a:hover{background:transparent;border-color:transparent;}

/* ─── Hero (Startseite & Landingpages) ─── */
.hero{padding:18px 0 8px;}
.hero-inner{gap:22px;}
.hero-inner > *{min-width:0;}
.hero h1{font-size:clamp(32px,9.1vw,38px);line-height:1.04;letter-spacing:-.042em;margin-bottom:14px;}
.hero-sub{font-size:17px;line-height:1.48;margin-bottom:20px;max-width:none;}
.hero-actions{flex-direction:column;gap:10px;}
.hero-actions .btn{width:100%;justify-content:center;padding:16px 20px;font-size:17px;}
.trust-row{
  flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x proximity;gap:8px;
  margin:0 calc(-1 * var(--gut)) 20px;padding:2px var(--gut);
  scroll-padding-inline:var(--gut);scrollbar-width:none;
}
.trust-row::-webkit-scrollbar{display:none;}
.trust-pill{
  flex:none;scroll-snap-align:start;white-space:nowrap;
  padding:8px 13px;font-size:13.5px;border:0;box-shadow:none;
  background:var(--cell);color:var(--text);
}
.trust-pill svg{color:var(--tint);}

.hero-stats{gap:10px;}
.stat-card{border:0;border-radius:var(--r-cell);box-shadow:none;background:var(--cell);padding:16px;}
.stat-card.large{border-radius:var(--r-card);padding:22px 20px;background:var(--band);}
.stat-val{font-size:30px;letter-spacing:-.04em;font-variant-numeric:tabular-nums;}
.stat-card.large .stat-val{font-size:44px;}
.stat-lbl{font-size:14px;line-height:1.4;}

/* ─── Unterseiten-Hero (Ratgeber) ─── */
.page-hero{padding:22px 0 6px;}
.page-hero h1{font-size:34px;line-height:1.06;letter-spacing:-.04em;margin-bottom:14px;}
.page-hero h1 br{display:none;}
.page-hero h1 em{display:inline;}
.page-hero-sub{font-size:17px;line-height:1.48;margin-bottom:18px;}
.page-hero > .wrap > .btn-primary{display:flex;width:100%;justify-content:center;padding:16px 20px;font-size:17px;}

/* ─── Vertrauen: Zulassung als gruppierte Karte mit Status-Chips ─── */
.trust-bar{padding:8px 0 12px;}
.zulassung-bar{
  display:block;padding:0;margin:0;border:0;border-radius:var(--r-cell);
  background:var(--cell);box-shadow:none;overflow:hidden;
}
.zul-left{padding:14px 16px 12px;gap:12px;}
.zul-icon{width:32px;height:32px;border-radius:9px;background:var(--btn);}
.zul-icon svg{width:17px;height:17px;color:#fff;}
.zul-text strong{font-size:16px;font-weight:700;color:var(--text);}
.zul-text span{display:block;font-size:13.5px;font-weight:500;color:var(--muted);text-wrap:balance;}
.zul-pills{
  display:flex;flex-wrap:nowrap;overflow-x:auto;gap:7px;
  padding:0 16px 14px;scrollbar-width:none;
}
.zul-pills::-webkit-scrollbar{display:none;}
.zul-pill{
  flex:none;white-space:nowrap;padding:6px 11px 6px 9px;border-radius:999px;
  background:var(--tile);font-size:13px;font-weight:600;color:var(--text);
}
.zul-pill svg{color:var(--tint);width:13px;height:13px;}

/* ─── Warum kostenlos: Karte mit großer Kennzahl ─── */
.why-free{
  display:flex;flex-direction:column;gap:14px;
  border-radius:var(--r-card);padding:22px 20px;background:var(--band);margin-bottom:4px;
}
.why-free-badge{
  display:flex;order:-1;align-items:center;gap:12px;text-align:left;
  min-width:0;padding:0;background:none;border:0;
}
.why-free-badge .val{font-size:44px;margin:0;color:#6EE7B7;}
.why-free-badge .lbl{font-size:13px;color:rgba(255,255,255,.6);}
.why-free h3{font-size:22px;}
.why-free p{font-size:15px;line-height:1.55;color:rgba(255,255,255,.7);}

/* ─── Vergleichsrechner (VGK24-iframe) ─── */
.embed-section{padding:30px 0 12px !important;}
.embed-section .wrap{margin-inline:0;}
.embed-wrap{background:transparent;border:0;border-radius:0;box-shadow:none;overflow:visible;}
.embed-head{padding:0 var(--gut) 14px;}
.embed-head p[style]{font-size:16px !important;line-height:1.5;}
/* Fortschritt: klebt beim Durchlaufen des Rechners unter der Kopfleiste */
.steps-strip{
  position:sticky;top:calc(var(--hdr-h) + var(--safe-t));z-index:30;
  justify-content:space-between;gap:4px;overflow:visible;
  padding:10px var(--gut) 11px;
  background:var(--glass);
  backdrop-filter:saturate(1.8) blur(20px);-webkit-backdrop-filter:saturate(1.8) blur(20px);
  border-top:.5px solid var(--sep);border-bottom:0;
}
.steps-strip::before{
  content:'';position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--seg-bg);
}
.steps-strip::after{
  content:'';position:absolute;left:0;bottom:0;height:3px;width:25%;
  background:var(--green);border-radius:0 3px 3px 0;
  transition:width .5s var(--ease);
}
.steps-strip:has(#sstrip-3.active)::after{width:62%;}
.steps-strip:has(#sstrip-4.active)::after{width:100%;border-radius:0;}
.strip-arrow{display:none;}
.strip-step{flex-direction:column;gap:4px;font-size:11.5px;font-weight:600;flex:1;}
.strip-dot{width:24px;height:24px;border-radius:50%;font-size:11.5px;background:var(--cell);}
.strip-step.active .strip-dot{background:var(--btn);border-color:var(--btn);color:#fff;}
.strip-step.done .strip-dot{background:var(--green);border-color:var(--green);}
.embed-body{padding:0;}
.iframe-shell{border:0;border-radius:0;background:transparent;}
/* Platzhalter, bis der Rechner geladen ist (liegt hinter dem iframe) */
#vgk24-rechner{
  background:
    linear-gradient(var(--cell),var(--cell)) 16px 24px / 46% 16px no-repeat,
    linear-gradient(var(--cell),var(--cell)) 16px 52px / 30% 12px no-repeat,
    linear-gradient(var(--cell),var(--cell)) 16px 96px / calc(100% - 32px) 52px no-repeat,
    linear-gradient(var(--cell),var(--cell)) 16px 164px / calc(100% - 32px) 52px no-repeat,
    linear-gradient(var(--cell),var(--cell)) 16px 232px / calc(100% - 32px) 52px no-repeat,
    linear-gradient(var(--green-pale),var(--green-pale)) 16px 312px / calc(100% - 32px) 54px no-repeat,
    var(--app-bg);
  border-radius:22px;
}
#vgk24-rechner iframe{border-radius:22px;}
.embed-note-box{margin:14px var(--gut) 0;padding:14px 16px;background:var(--cell);border-radius:var(--r-cell);}
.embed-note,.embed-note[style]{padding:0;font-size:12.5px;line-height:1.55;}
.embed-note + .embed-note{margin-top:8px !important;}
.embed-note a{color:var(--muted);}

/* ─── Kein Aufwand: Karten zum Wischen ─── */
.kein-aufwand{
  display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;
  margin:6px calc(-1 * var(--gut)) 0;padding:4px var(--gut) 14px;
  scroll-padding-inline:var(--gut);scrollbar-width:none;
}
.kein-aufwand::-webkit-scrollbar{display:none;}
.ka-card{
  flex:0 0 84%;scroll-snap-align:start;flex-direction:column;gap:14px;
  border:0;border-radius:var(--r-card);padding:20px 18px 18px;background:var(--cell);
  box-shadow:0 1px 2px rgba(11,42,42,.04),0 10px 24px -14px rgba(11,42,42,.22);
}
.ka-icon{width:40px;height:40px;border-radius:11px;background:var(--btn);}
.ka-icon svg{width:20px;height:20px;color:#fff;}
.ka-label{font-size:11px;color:var(--tint);}
.ka-title{font-size:19px;line-height:1.22;letter-spacing:-.02em;}
.ka-text{font-size:15px;line-height:1.5;}
.m-dots{display:flex;justify-content:center;gap:7px;margin-top:2px;}
.m-dots i{width:7px;height:7px;border-radius:4px;background:var(--seg-bg);transition:background-color .25s,width .3s var(--ease);}
.m-dots i.on{background:var(--tint);width:18px;}

/* ─── Kassen ─── */
#kassen{padding-top:26px !important;}
.kassen-wrap{border:0;border-radius:var(--r-card);padding:20px 16px 16px;background:var(--cell);box-shadow:none;}
.kassen-head{margin-bottom:14px;}
.kassen-head p[style]{font-size:15px !important;}
.logo-slider,.logo-slider.is-touch{
  margin-inline:-16px;padding-inline:16px;scroll-padding-inline:16px;
  mask-image:none;-webkit-mask-image:none;
}
.logo-track{gap:8px;}
.logo-chip{
  min-width:118px;min-height:62px;border:0;border-radius:14px;
  background:var(--cell-2);color:var(--text);font-size:14px;line-height:1.25;
}
.all-kassen{margin-top:14px;padding-top:0;border-top:0;}
.all-kassen summary{
  min-height:48px;padding:0 14px;border-radius:12px;background:var(--cell-2);
  font-size:15px;font-weight:600;color:var(--text);
}
.all-kassen summary svg{color:var(--faint);transition:transform .3s var(--ease);}
.all-kassen[open] summary svg{transform:rotate(180deg);}
.all-kassen-grid{grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;}
.all-kassen-item{border:0;border-radius:12px;background:var(--cell-2);color:var(--text);font-size:14px;min-height:46px;}
.kassen-note{font-size:12.5px;line-height:1.5;}

/* ─── Leistungen: dunkles Band ─── */
.leistungen-band{border-radius:var(--r-card);padding:26px 20px 22px;margin:4px 0;background:var(--band);}
.leistungen-band .sec-title{font-size:26px !important;}
.leistungen-band .sec-sub{font-size:16px;color:rgba(255,255,255,.66);}
.badge-grid{gap:8px;margin-top:18px;}
.badge{padding:10px 14px;font-size:14.5px;min-height:42px;}
.badge svg{color:#6EE7B7;}

/* ─── Sparen ─── */
.savings-solo p[style]{font-size:16px !important;line-height:1.55 !important;}
.savings-highlight{
  display:flex;gap:10px;align-items:flex-start;
  border:0;border-radius:var(--r-cell);padding:14px 16px;font-size:15px;line-height:1.4;
  background:var(--tile);color:var(--text);
}
.savings-highlight svg{flex:none;margin-top:2px;color:var(--tint);}
.savings-table,.netto-table{border:0;border-radius:var(--r-cell);background:var(--cell);margin-top:10px;}
.st-row,.nt-row{border-bottom:.5px solid var(--sep);}
.st-row.st-head,.nt-head{background:transparent;}
.st-cell,.nt-cell{padding:13px 16px;font-size:15.5px;}
.st-head .st-cell,.nt-head .nt-cell{font-size:11.5px;padding-block:12px;color:var(--subtle);}
.st-cell.highlight{color:var(--tint);}
.nt-cell.green{color:var(--tint);}

/* Segment-Umschalter (iOS Segmented Control) */
.m-seg{
  --n:3;--i:0;position:relative;display:grid;grid-template-columns:repeat(var(--n),1fr);
  padding:2px;border-radius:10px;background:var(--seg-bg);margin-top:16px;
}
.m-seg-thumb{
  position:absolute;top:2px;bottom:2px;left:2px;width:calc((100% - 4px) / var(--n));
  border-radius:8px;background:var(--cell);
  box-shadow:0 3px 8px rgba(0,0,0,.12),0 1px 1px rgba(0,0,0,.04);
  transform:translateX(calc(var(--i) * 100%));transition:transform .34s var(--spring);
}
.m-seg button{
  position:relative;z-index:1;min-height:36px;padding:7px 4px;border:0;background:none;
  font:inherit;font-size:13px;font-weight:500;line-height:1.2;color:var(--muted);cursor:pointer;
}
.m-seg button[aria-selected="true"]{font-weight:700;color:var(--text);}
.js-app .m-segd .st-row,.js-app .m-segd .nt-row{grid-template-columns:1fr 1.15fr;}
.js-app .m-segd .st-cell:not(:first-child),.js-app .m-segd .nt-cell:not(:first-child){display:none;}
.js-app .m-segd[data-col="2"] :is(.st-cell,.nt-cell):nth-child(2),
.js-app .m-segd[data-col="3"] :is(.st-cell,.nt-cell):nth-child(3),
.js-app .m-segd[data-col="4"] :is(.st-cell,.nt-cell):nth-child(4),
.js-app .m-segd[data-col="5"] :is(.st-cell,.nt-cell):nth-child(5){display:block;animation:m-fade .3s var(--ease);}
.js-app .m-segd .st-row:not(.st-head) .st-cell:not(:first-child),
.js-app .m-segd .nt-row:not(.nt-head) .nt-cell:not(:first-child){color:var(--tint);font-weight:700;font-variant-numeric:tabular-nums;}
@keyframes m-fade{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}

/* ─── Schritte: nummerierte, gruppierte Zeilen ─── */
.grid-4:has(> .step-card),.steps{
  display:block;margin-top:16px;background:var(--cell);border-radius:var(--r-cell);overflow:hidden;
}
.step-card,.step{
  display:grid;grid-template-columns:34px 1fr;column-gap:14px;row-gap:3px;align-items:start;
  padding:16px 16px 16px 14px;border:0;border-radius:0;box-shadow:none;background:transparent;position:relative;
}
.step-card+.step-card::before,.step+.step::before{content:'';position:absolute;left:62px;right:0;top:0;height:.5px;background:var(--sep);}
.step-card .step-num,.step .step-num{
  grid-row:1 / span 2;width:34px;height:34px;border-radius:50%;margin:0;
  background:var(--btn);color:#fff;font-size:15px;
}
.step-card h3,.step-card p{grid-column:2;}
.step-card h3,.step-body h3{font-size:17px;font-weight:700;margin-bottom:2px;letter-spacing:-.01em;}
.step-card p,.step-body p{font-size:15px;line-height:1.5;color:var(--muted);}

/* ─── Karten-Raster → gruppierte Liste mit Symbol-Kacheln ─── */
:is(.grid-2,.grid-3):has(> .card){
  display:block;margin-top:16px;background:var(--cell);border-radius:var(--r-cell);overflow:hidden;
}
:is(.grid-2,.grid-3) > .card{
  display:grid;grid-template-columns:1fr;column-gap:14px;row-gap:4px;
  padding:16px;border:0;border-radius:0;box-shadow:none;background:transparent;position:relative;
}
:is(.grid-2,.grid-3) > .card:has(> .card-icon){padding-left:62px;}
:is(.grid-2,.grid-3) > .card + .card::before{content:'';position:absolute;left:16px;right:0;top:0;height:.5px;background:var(--sep);}
:is(.grid-2,.grid-3) > .card:has(> .card-icon) + .card::before{left:62px;}
:is(.grid-2,.grid-3) > .card > .card-icon{position:absolute;left:16px;top:14px;width:32px;height:32px;border-radius:9px;margin:0;font-size:16px;line-height:1;}
:is(.grid-2,.grid-3) > .card h3{font-size:17px !important;line-height:1.3 !important;margin-bottom:2px !important;}
:is(.grid-2,.grid-3) > .card :is(p,li){font-size:15px !important;line-height:1.55 !important;}
.card > div[style*="height:3px"]{display:none;}
/* Kacheln in iOS-Farben (getönt) */
.card:nth-child(6n+1) > .card-icon{background:#DDF3EC;}
.card:nth-child(6n+2) > .card-icon{background:#DCEBF7;}
.card:nth-child(6n+3) > .card-icon{background:#F8EBD7;}
.card:nth-child(6n+4) > .card-icon{background:#E6E5F8;}
.card:nth-child(6n+5) > .card-icon{background:#F6E0E2;}
.card:nth-child(6n+6) > .card-icon{background:#E2EEE0;}
@media (prefers-color-scheme:dark){
  .card:nth-child(6n+1) > .card-icon{background:rgba(110,231,183,.16);}
  .card:nth-child(6n+2) > .card-icon{background:rgba(96,165,250,.18);}
  .card:nth-child(6n+3) > .card-icon{background:rgba(251,191,36,.16);}
  .card:nth-child(6n+4) > .card-icon{background:rgba(129,140,248,.18);}
  .card:nth-child(6n+5) > .card-icon{background:rgba(244,114,182,.16);}
  .card:nth-child(6n+6) > .card-icon{background:rgba(163,230,53,.14);}
}

/* Aufklapper (lange Hintergrund-Karten), per app.js */
#vertiefung .m-acc > h3{margin:-16px !important;}
.m-acc-h{
  display:flex;align-items:center;gap:12px;width:100%;padding:16px;margin:0;border:0;background:none;
  font:inherit;color:inherit;text-align:left;line-height:inherit;letter-spacing:inherit;cursor:pointer;border-radius:0;
}
.m-acc-h::after{
  content:'';flex:none;width:8px;height:8px;margin-left:auto;margin-right:4px;
  border-right:2px solid var(--faint);border-bottom:2px solid var(--faint);
  transform:rotate(45deg) translate(-2px,-2px);transition:transform .3s var(--ease);
}
.m-acc.open .m-acc-h::after{transform:rotate(-135deg) translate(-2px,-2px);}
#vertiefung .m-acc.open > h3{margin-bottom:-4px !important;}
.js-app .m-acc:not(.open) > :not(h3){display:none;}
.js-app .m-acc.open > :not(h3){animation:m-fade .3s var(--ease);}

/* Hinweis-/Beispielkarten */
.info-box{border:0;border-radius:var(--r-cell);padding:18px 16px;background:var(--tile);margin:14px 0 0;}
.info-box h3{font-size:17px;color:var(--tint);}
.info-box p{font-size:15px;line-height:1.55;color:var(--text);}

/* Abschnitte: Abstände wie in iOS, keine wechselnden Bänder */
main > section:not(.hero):not(.page-hero):not(.embed-section){padding-block:26px 6px;}
.sec,.sec[style]{background:transparent !important;padding:26px 0 6px !important;}

/* ─── Häufige Fragen: gruppierte Aufklapper ─── */
.faq-list{display:block;margin-top:16px;background:var(--cell);border-radius:var(--r-cell);overflow:hidden;}
.faq-item{border:0;border-radius:0;box-shadow:none;background:transparent;position:relative;}
.faq-item+.faq-item::before{content:'';position:absolute;left:16px;right:0;top:0;height:.5px;background:var(--sep);}
.faq-item summary{padding:15px 16px;min-height:52px;font-size:16px;font-weight:600;line-height:1.35;gap:14px;}
.faq-item[open] summary{background:transparent;color:var(--text);}
.faq-item summary::after,.faq-item[open] summary::after{
  content:'';width:8px;height:8px;margin-right:4px;flex:none;
  border-right:2px solid var(--faint);border-bottom:2px solid var(--faint);
  transform:rotate(45deg) translate(-2px,-2px);transition:transform .3s var(--ease);
}
.faq-item[open] summary::after{transform:rotate(-135deg) translate(-2px,-2px);border-color:var(--tint);}
.faq-body{padding:0 16px 16px;font-size:15.5px;line-height:1.58;color:var(--muted);}
.faq-item[open] .faq-body{animation:m-fade .3s var(--ease);}
.faq-body a,.faq-body a[style]{color:var(--tint) !important;font-weight:600;}

/* ─── Fitness: Beispielrechner ─── */
.studio-rechner::before{display:none;}
.studio-rechner{gap:14px;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;}
.sr-notice{border:0;border-radius:var(--r-cell);background:var(--tile);padding:14px 16px;margin:0;}
.sr-notice-text{font-size:14.5px;}
.sr-notice-text strong{color:var(--tint);}
.sr-inputs{background:var(--cell);border-radius:var(--r-cell);padding:18px 16px 12px;border:0;box-shadow:none;}
.sr-input-label{color:var(--subtle);}
.sr-input-value{font-variant-numeric:tabular-nums;}
/* iOS-Regler: dünne Spur, weißer Knopf mit Schatten */
.js-app .sr-slider{height:44px;}
.js-app .sr-slider::-webkit-slider-runnable-track{
  height:6px;
  background:linear-gradient(90deg,var(--green) 0%,var(--green) var(--fill,30%),var(--seg-bg) var(--fill,30%),var(--seg-bg) 100%);
}
.js-app .sr-slider::-webkit-slider-thumb{
  width:30px;height:30px;margin-top:-12px;background:#fff;border:0;
  box-shadow:0 0 0 .5px rgba(0,0,0,.06),0 3px 8px rgba(0,0,0,.18),0 3px 1px rgba(0,0,0,.05);
  transition:transform .2s var(--spring);
}
.js-app .sr-slider:active::-webkit-slider-thumb{transform:scale(1.12);}
.js-app .sr-slider::-moz-range-track{height:6px;background:var(--seg-bg);}
.js-app .sr-slider::-moz-range-thumb{width:28px;height:28px;background:#fff;border:0;box-shadow:0 3px 8px rgba(0,0,0,.2);}
.sr-output{border-radius:var(--r-card);box-shadow:none;border:0;}
.sr-saving-big{font-variant-numeric:tabular-nums;}

/* Schwebende Ergebnis-Pille beim Schieben der Regler */
.m-pill{
  position:fixed;left:50%;bottom:calc(var(--act-h) + var(--safe-b) + 12px);z-index:55;
  display:flex;align-items:center;gap:9px;white-space:nowrap;border:0;
  padding:9px 9px 9px 18px;border-radius:999px;
  background:rgba(10,28,26,.9);color:#F2F7F6;
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  font:inherit;font-size:14px;cursor:pointer;
  box-shadow:0 12px 30px -10px rgba(0,0,0,.5);
  transform:translate(-50%,24px) scale(.96);opacity:0;pointer-events:none;
  transition:transform .4s var(--spring),opacity .2s;
}
.m-pill.show{transform:translate(-50%,0) scale(1);opacity:1;pointer-events:auto;}
.m-pill:active{transform:translate(-50%,0) scale(.96);}
.m-pill b{font-weight:800;font-size:15.5px;font-variant-numeric:tabular-nums;}
.m-pill .dot{width:3px;height:3px;border-radius:50%;background:rgba(242,247,246,.45);}
.m-pill .go{margin-left:3px;padding:7px 13px;border-radius:999px;background:#6EE7B7;color:#04211D;font-weight:700;font-size:13px;}
.m-pill.away{transform:translate(-50%,calc(var(--act-h) + 30px));}

/* ─── Fußbereich ─── */
footer{padding:28px 0 22px !important;}
.footer-card{border-radius:var(--r-card);padding:24px 18px 18px;}
@media (prefers-color-scheme:dark){.footer-card{background:#0B1F1C;}}
.footer-inner{gap:22px;}
.footer-brand p{font-size:15px;}
.footer-links{gap:0;}
.footer-links a{
  display:flex;align-items:center;justify-content:space-between;
  padding:12px 0;font-size:16px;border-top:.5px solid rgba(255,255,255,.1);
}
.footer-links a::after{
  content:'';width:7px;height:7px;border-right:1.8px solid rgba(255,255,255,.35);border-top:1.8px solid rgba(255,255,255,.35);
  transform:rotate(45deg);margin-right:4px;
}
.footer-col-title{margin-bottom:4px;color:rgba(255,255,255,.62);}
.footer-copy{color:rgba(255,255,255,.62);font-size:12px;}

/* ─── Tab-Leiste (Startseite) ─── */
.m-tabbar{
  display:grid;grid-template-columns:repeat(5,1fr);
  position:fixed;left:0;right:0;bottom:0;z-index:60;
  height:calc(var(--tab-h) + var(--safe-b));padding:0 env(safe-area-inset-right,0px) var(--safe-b) env(safe-area-inset-left,0px);
  background:var(--glass);
  backdrop-filter:saturate(1.8) blur(20px);-webkit-backdrop-filter:saturate(1.8) blur(20px);
  border-top:.5px solid var(--sep);
  transition:transform .34s var(--ease);
}
.m-tab{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;
  font-size:10.5px;font-weight:600;letter-spacing:.01em;color:var(--tab-ink);
}
.m-tab svg{width:25px;height:25px;transition:transform .28s var(--spring);}
.m-tab:active svg{transform:scale(.84);}
.m-tab[aria-current="true"]{color:var(--tint);}
.m-tab[aria-current="true"] svg{stroke-width:2.2;}

/* ─── Aktionsleiste (Unterseiten) ─── */
.m-action{
  position:fixed;left:0;right:0;bottom:0;z-index:60;
  display:flex;align-items:center;gap:10px;
  padding:10px calc(var(--gut) + env(safe-area-inset-right,0px)) calc(10px + var(--safe-b)) calc(var(--gut) + env(safe-area-inset-left,0px));
  background:var(--glass);
  backdrop-filter:saturate(1.8) blur(20px);-webkit-backdrop-filter:saturate(1.8) blur(20px);
  border-top:.5px solid var(--sep);
  transition:transform .4s var(--spring);
}
.m-action .btn{flex:1;min-width:0;justify-content:center;text-align:center;white-space:normal;line-height:1.2;padding:14px 12px;font-size:clamp(15px,4.3vw,17px);min-height:50px;}
.m-action-mail{
  flex:none;width:50px;height:50px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:var(--tile);color:var(--tint);
}
.m-action-mail:active{transform:scale(.9);}
.m-action-mail svg{width:21px;height:21px;}
body.m-sub{padding-bottom:calc(var(--act-h) + var(--safe-b));}

/* Leisten weichen: Tastatur, Rechner im Bild, Menü offen */
.m-tabbar.away,.m-action.away{transform:translateY(115%);}
body.menu-open .m-tabbar,body.menu-open .m-action{transform:translateY(115%);}

/* Alte Sticky-Schaltfläche wird durch die Leisten ersetzt */
.sticky-cta{display:none !important;}

/* Cookiebot-Symbol über den Leisten */
#CookiebotWidget{bottom:calc(var(--tab-h) + var(--safe-b) + 14px) !important;}
body.m-sub #CookiebotWidget{bottom:calc(var(--act-h) + var(--safe-b) + 14px) !important;}
body.m-legal #CookiebotWidget{bottom:calc(var(--safe-b) + 16px) !important;}

/* ─── Rechtliche Seiten: ruhige, gut lesbare Darstellung ─── */
body.m-legal main{padding-top:8px;}
.page-card{background:transparent;border:0;box-shadow:none;padding:12px 0 0;border-radius:0;}
.page-card h1{font-size:34px;letter-spacing:-.04em;}
.page-card h2{font-size:22px;letter-spacing:-.025em;}
.page-card p,.page-card li{font-size:16px;line-height:1.6;}
.panel{background:var(--cell);border:0;box-shadow:none;border-radius:var(--r-cell);padding:16px;}
.panel-grid{gap:12px;}
.note-box{border:0;border-radius:var(--r-cell);background:var(--tile);}
.link-pill{background:var(--cell);border:0;min-height:44px;}
.eyebrow{color:var(--tint);}
.num-badge{background:var(--btn);color:#fff;}
@media (prefers-color-scheme:dark){
  .page-card{background:transparent;}
  .note-box,.note-box p{color:var(--text);}
}

/* ─── Bewegung reduzieren ─── */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;}
}
