
:root{--primary:#0A1746;--primary-text:#0A1746;--accent:#C40018;--ink:#14181f;--ground:#f7f7f5;
--panel:#fff;--soft:#5a606b;--line:#e6e4de;--logochip:transparent;--maxw:1140px;
--sans:Inter,system-ui,-apple-system,"Segoe UI",Helvetica,Arial,sans-serif;
--display:"Manrope",Inter,system-ui,Helvetica,Arial,sans-serif;
--serif:var(--display)}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ink:#e9e7e1;--ground:color-mix(in srgb,#0A1746 8%,#0f1116);--panel:color-mix(in srgb,#0A1746 5%,#171a21);--soft:#9aa1ad;--line:rgba(255,255,255,.09);--primary:#e8626b;--primary-text:#e8626b;--cta-bg:#d13c46;--logochip:#fff}}
:root[data-theme=dark]{--ink:#e9e7e1;--ground:color-mix(in srgb,#0A1746 8%,#0f1116);--panel:color-mix(in srgb,#0A1746 5%,#171a21);--soft:#9aa1ad;--line:rgba(255,255,255,.09);--primary:#e8626b;--primary-text:#e8626b;--cta-bg:#d13c46;--logochip:#fff}
:root[data-theme=light]{--ink:#14181f;--ground:#f7f7f5;--panel:#fff;--soft:#5a606b;--line:#e6e4de;--logochip:transparent}
*{box-sizing:border-box}
[id]{scroll-margin-top:88px}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--sans);line-height:1.6;
font-size:17px;-webkit-font-smoothing:antialiased}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 clamp(16px,4vw,28px)}
a{color:var(--primary-text,var(--primary));text-underline-offset:2px}
h1,h2,h3{font-family:var(--serif);line-height:1.12;text-wrap:balance;letter-spacing:-.01em}

h1{font-size:clamp(2rem, 1.3rem + 3.2vw, 3.4rem);margin:.1em 0 .25em;font-weight:800;letter-spacing:-.02em}

body{overflow-wrap:break-word}
@media(max-width:640px){h1,h2,h3,b{hyphens:auto}}
h2{font-size:clamp(1.5rem, 1.1rem + 1.5vw, 2.1rem);margin:0 0 .4em;font-weight:700;letter-spacing:-.015em}
h3{font-size:1.2rem;margin:0 0 .3em;font-weight:600;font-family:var(--display)}
.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:.72rem;font-weight:700;color:var(--primary-text,var(--primary))}
header.nav{position:sticky;top:0;z-index:9;background:color-mix(in srgb,var(--ground) 88%,transparent);
backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:64px;gap:16px}
.brandmark{display:flex;align-items:center;text-decoration:none;min-width:0}
.brandmark img{height:42px;width:auto;max-width:56vw;object-fit:contain;
background:var(--logochip);border-radius:9px;padding:4px 7px;box-sizing:content-box}
.nav nav{display:flex;gap:20px;font-size:.92rem}
.nav nav a{color:var(--soft);text-decoration:none}
.nav nav a:hover{color:var(--ink)}



@media(max-width:900px){
header.nav{background:var(--ground)}
.nav .wrap{flex-wrap:wrap;row-gap:0;height:auto;padding-top:8px;padding-bottom:8px;gap:10px}
html.gescrollt header.nav .wrap{height:auto}
.brandmark{flex:1 1 auto}
.brandmark img{max-width:min(48vw,200px);height:36px}
.nav .wrap>.cta{flex:0 0 auto;padding:9px 13px;font-size:.9rem}
.nav nav{order:3;width:100%;gap:8px;overflow-x:auto;scrollbar-width:none;
margin-top:8px;padding:2px 0 4px;-webkit-overflow-scrolling:touch}

.nav .wrap{position:relative}
.nav .wrap::after{content:"";position:absolute;right:0;bottom:8px;width:44px;height:42px;pointer-events:none;
background:linear-gradient(90deg,transparent,var(--ground))}
.nav nav::-webkit-scrollbar{display:none}
.nav nav a{white-space:nowrap;font-size:.85rem;font-weight:600;color:var(--ink);
background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:6px 12px}
}
.cta{display:inline-flex;align-items:center;gap:8px;background:var(--cta-bg,var(--primary));color:#fff;
border-radius:10px;padding:11px 18px;font-weight:600;text-decoration:none;border:0;cursor:pointer}
.cta.ghost{background:transparent;color:var(--primary-text,var(--primary));border:1.5px solid var(--primary)}
.hero{padding:clamp(48px,7vw,104px) 0 clamp(32px,5vw,64px)}
.hero .col{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(24px,4vw,56px);align-items:center}
@media(max-width:820px){.hero .col{grid-template-columns:1fr}}
.hero .sub{font-size:1.2rem;color:var(--soft);max-width:34ch;margin:.3em 0 1.4em}
.hero-art{aspect-ratio:1;border-radius:20px;background:
linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 55%,var(--accent)));
display:grid;place-items:center;color:#fff;position:relative;overflow:hidden;box-shadow:0 20px 60px -20px rgba(0,0,0,.35)}
.hero-art .mono{font-family:var(--serif);font-size:clamp(3rem,8vw,6rem);font-weight:700;opacity:.92;text-align:center;padding:12px}

.hero-art-logo{aspect-ratio:auto;background:#fff;border:1px solid var(--line);
padding:clamp(20px,4vw,44px) clamp(18px,3.5vw,36px)}

@media(max-width:820px){.hero .col > div:first-child{order:2}.hero .col > .hero-art{order:1}}

.proof{display:flex;flex-wrap:wrap;gap:10px 20px;font-size:.9rem;color:var(--soft);margin-top:14px}
.proof b{color:var(--ink)}
section{padding:clamp(40px,6vw,80px) 0}
section.alt{background:var(--panel);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.local{border-left:4px solid var(--primary);padding:6px 0 6px 20px;font-size:1.15rem;color:var(--ink);
max-width:60ch;margin:0 0 8px}
.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:20px;text-decoration:none;color:var(--ink);
display:block;transition:transform .15s ease,box-shadow .15s ease}
.card:hover{transform:translateY(-3px);box-shadow:0 14px 34px -18px rgba(0,0,0,.3)}
.card .k{font-weight:600;font-size:1.05rem;margin-bottom:4px}
.card small{color:var(--soft)}
.napcard{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;background:var(--panel);
border:1px solid var(--line);border-radius:16px;padding:24px}
@media(max-width:680px){.napcard{grid-template-columns:1fr}}
.napcard address{font-style:normal;line-height:1.7}
footer{background:var(--panel);border-top:1px solid var(--line);padding:40px 0;color:var(--soft);font-size:.9rem}
footer a{color:var(--soft)}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:var(--cta-bg,var(--primary));color:#fff;padding:8px 12px;border-radius:8px;z-index:99}
:focus-visible{outline:3px solid var(--primary);outline-offset:2px}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

footer .foot-grid{display:grid;gap:26px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
margin-bottom:26px}
footer .fcol-titel{margin:0 0 10px;font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;
color:var(--ink);font-family:var(--sans)}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:7px;font-size:.9rem}
footer ul a{text-decoration:none}
footer ul a:hover{text-decoration:underline;color:var(--ink)}
.foot-zeile{border-top:1px solid var(--line);padding-top:18px}

#ew-banner{position:fixed;right:16px;bottom:16px;z-index:98;max-width:380px;
background:var(--panel);border:1px solid var(--line);border-radius:16px;
padding:18px 20px;box-shadow:0 18px 50px -12px rgba(0,0,0,.35);font-size:.9rem}
#ew-banner h3{margin:0 0 6px;font-size:1rem;font-family:var(--sans)}
#ew-banner p{margin:0 0 12px;color:var(--soft);line-height:1.55}
#ew-details{display:grid;gap:6px;margin-bottom:12px}
#ew-details[hidden]{display:none}
#ew-details label{display:flex;gap:8px;align-items:center;color:var(--ink)}
.ew-knoepfe{display:flex;gap:8px;flex-wrap:wrap}
.ew-knoepfe button{font:inherit;font-size:.85rem;padding:8px 12px;border-radius:9px;
border:1.5px solid var(--line);background:var(--ground);color:var(--ink);cursor:pointer}
.ew-knoepfe button:hover{border-color:var(--primary)}
@media(max-width:480px){#ew-banner{left:16px;right:16px;max-width:none}}

.zusatz[hidden]{display:none}
.zusatz-hinweis{background:color-mix(in srgb,var(--primary) 6%,var(--panel));
border-radius:10px;padding:10px 14px;font-size:.92rem;color:var(--soft)}
.sparten-wahl{border:1px solid var(--line);border-radius:12px;padding:12px 16px;margin:0 0 14px}
.sparten-wahl legend{font-size:.9rem;font-weight:600;padding:0 6px}
.sparten-wahl label{display:inline-flex;align-items:center;gap:6px;margin:4px 14px 4px 0;font-size:.95rem}
.turnstile-slot:empty{display:none}

.k3kopf{display:flex;align-items:flex-end;gap:12px;margin-bottom:10px}
.k3kopf .badge{width:78px;height:78px}

.k3kopf .num{font-family:var(--serif);font-weight:700;font-size:2.5rem;
line-height:.85;color:var(--primary-text,var(--primary))}
.card .k .badge{width:34px;height:34px;flex:none}
.pkopf-badge{display:block;width:56px;height:56px;margin:0 0 10px}
.zw-badge{width:54px;height:54px;display:block;margin:0 auto 8px}
.pflip{position:relative;display:block}
.pflip2{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0}
@media (prefers-reduced-motion:no-preference){.pflip2{transition:opacity .35s ease}}
.person:hover .pflip2,.person:focus-within .pflip2,.person:active .pflip2{opacity:1}
.team-substanz{max-width:720px;color:var(--soft);font-size:.97rem;line-height:1.65;margin:26px 0 0;padding-top:18px;border-top:1px solid var(--line)}
.team-substanz p{margin:0 0 12px}
.team-substanz p:last-child{margin-bottom:0}
.team-substanz b{color:var(--ink)}
.kzusagen{list-style:none;margin:12px 0;padding:0;display:grid;gap:10px}
.kzusagen li{display:flex;gap:10px;align-items:flex-start;color:var(--soft);
font-size:.93rem;line-height:1.55}
.kzusagen li>div{min-width:0;overflow-wrap:anywhere;hyphens:auto}
.kzusagen b{color:var(--ink)}
.aw-kopf{display:flex;align-items:center;justify-content:space-between;gap:28px}
.aw-kopf>div{min-width:0}
.aw360{width:clamp(88px,9vw,124px);height:auto;flex:none;background:var(--logochip);border-radius:16px;padding:6px}
@media(max-width:700px){.aw360{width:74px;align-self:flex-start;margin-top:6px}}

.eyebrow.pill{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);
background:var(--panel);border-radius:999px;padding:6px 14px;margin-bottom:10px}
em.acc{font-style:normal;color:var(--primary-text,var(--primary))}
.lead{font-size:1.13rem;line-height:1.6;max-width:56ch;margin:.35em 0 1.2em}
.lead b{color:var(--ink)}.lead span{color:var(--soft)}
.ctas{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:4px}
.infobox{margin-top:18px;border:1px solid color-mix(in srgb,var(--primary) 30%,var(--line));
background:color-mix(in srgb,var(--primary) 6%,var(--panel));border-radius:12px;
padding:12px 16px;font-size:.92rem;line-height:1.55;color:var(--soft);max-width:60ch}
.infobox b{color:var(--ink)}
.beweis{background:var(--panel);border:1px solid var(--line);border-radius:16px;
padding:clamp(18px,3vw,30px);max-width:820px;margin-top:8px}
.beweis ul{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.beweis li{display:flex;gap:12px;align-items:flex-start;line-height:1.55}

.beweis li>div{min-width:0;overflow-wrap:anywhere;hyphens:auto}
.beweis .chk{color:var(--primary-text,var(--primary));font-weight:700;font-size:1.05rem;line-height:1.4}
.beweis b{color:var(--ink)}.beweis div{color:var(--soft)}
.beweis-hinweis{margin:18px 0 0;padding-top:14px;border-top:1px solid var(--line);
color:var(--soft);font-size:.9rem;font-style:italic}
.grid3{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-top:22px}
.k3{background:var(--ground);border:1px solid var(--line);border-radius:14px;padding:22px;
display:flex;flex-direction:column;gap:8px}
.gewerbe{margin-top:24px;border:1px solid var(--line);border-left:4px solid var(--primary);
border-radius:12px;padding:16px 20px;color:var(--soft);line-height:1.6;max-width:72ch;
background:var(--ground)}
.gewerbe b{color:var(--ink)}
h3.gruppe{text-transform:uppercase;letter-spacing:.14em;font-size:.74rem;font-weight:700;
color:var(--soft);margin:26px 0 12px}

h3.gruppe+.gruppe-lead{margin:-6px 0 14px;max-width:64ch;color:var(--soft);
font-size:.95rem;line-height:1.55}
.card.still{cursor:default}
.card.still:hover{transform:none;box-shadow:none}
h3.gruppe:first-of-type{margin-top:22px}

#zielwahl{position:fixed;inset:0;z-index:99;background:rgba(8,10,14,.72);
backdrop-filter:blur(6px);display:grid;place-items:center;padding:20px}
#zielwahl[hidden]{display:none}
.zw-karte{position:relative;background:var(--panel);border:1px solid var(--line);
border-radius:20px;padding:clamp(24px,4vw,40px);max-width:640px;width:100%;
box-shadow:0 30px 80px -20px rgba(0,0,0,.55);text-align:center}
.zw-karte img{height:40px;width:auto;margin-bottom:14px}
.zw-karte .zw-frage{margin:.1em 0 .2em}
.zw-sub{color:var(--soft);margin:0 0 20px}
.zw-wahl{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:560px){.zw-wahl{grid-template-columns:1fr}}
.zw-btn{font:inherit;text-align:left;text-decoration:none;cursor:pointer;
background:var(--ground);border:1.5px solid var(--line);border-radius:14px;
padding:18px;display:flex;flex-direction:column;gap:6px;color:var(--ink);
transition:border-color .15s ease,transform .15s ease}
.zw-btn:hover,.zw-btn:focus-visible{border-color:var(--primary);transform:translateY(-2px)}
.zw-btn b{font-size:1.05rem}
.zw-btn span{color:var(--soft);font-size:.9rem;line-height:1.5}
.zw-zu{position:absolute;top:12px;right:14px;font:inherit;background:none;border:0;
color:var(--soft);font-size:1.1rem;cursor:pointer;padding:6px}
.k3 p{margin:0;color:var(--soft);line-height:1.6;flex:1}
.kicker{text-transform:uppercase;letter-spacing:.12em;font-size:.68rem;font-weight:700;
color:var(--primary-text,var(--primary));margin-top:6px}
.staedte{color:var(--soft);max-width:60ch}

#region{padding-top:clamp(26px,3.4vw,44px);padding-bottom:clamp(20px,2.6vw,34px)}

section:has(+ #region){padding-bottom:clamp(28px,3.4vw,48px)}
.ortgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));
gap:10px;margin:20px 0 6px}
.ortkarte{display:block;padding:12px 14px;border:1px solid var(--line);border-radius:12px;
background:var(--panel);text-decoration:none;color:var(--ink);
transition:border-color .16s,transform .16s}
.ortkarte b{display:flex;align-items:center;gap:8px;font-size:.98rem}

.ortkarte-svg{width:22px;height:22px;flex:none;color:var(--primary-text,var(--primary));opacity:.9}
.ortkarte span{display:block;color:var(--soft);font-size:.86rem;line-height:1.45;margin-top:3px}
.ortkarte:hover,.ortkarte:focus-visible{border-color:var(--primary);transform:translateY(-2px)}

.ortkarte-bild{padding:0;overflow:hidden}
.ortkarte-bild img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;
background:color-mix(in srgb,var(--primary) 6%,var(--panel))}
.ortkarte-bild b,.ortkarte-bild span{padding-inline:14px}
.ortkarte-bild b{padding-top:11px}
.ortkarte-bild span{padding-bottom:12px}

.ortkarte-bild span{display:none}
.ortkarte-bild .ortkarte-svg{display:none}
.ortkarte-bild b{display:block;padding-bottom:12px;font-size:1rem}
@media (prefers-reduced-motion:reduce){.ortkarte{transition:none}.ortkarte:hover{transform:none}}
.kontakt-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(20px,4vw,44px);
margin-top:20px;align-items:start}

@media(max-width:1000px){.kontakt-grid{grid-template-columns:minmax(0,1fr)}
.schritte{flex-direction:column;align-items:flex-start;gap:10px}}
.kontakt-grid>*{min-width:0}.schritte span{min-width:0}
.kontakt-karte{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:24px}
.kontakt-karte .kh{font-family:var(--serif);font-size:1.35rem;margin:.2em 0 .4em}
.kontakt-karte address{font-style:normal;line-height:1.8;color:var(--soft)}
.kontakt-links{display:flex;flex-direction:column;gap:10px;margin-top:16px}
#kform{display:grid;gap:14px}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:560px){.frow{grid-template-columns:1fr}}
.ffield{display:grid;gap:5px}
.ffield label{font-weight:600;font-size:.92rem}
.ffield small{color:var(--soft)}
.fehl,[aria-invalid="true"]{border-color:var(--primary)!important;
box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 18%,transparent)}
.ffield input,.ffield select,.ffield textarea{font:inherit;color:var(--ink);
background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:11px 12px;width:100%}
.ffield textarea{resize:vertical}
.hp{position:absolute;left:-9999px;height:0;width:0;opacity:0}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:.9rem;color:var(--soft);line-height:1.55}
.consent input{margin-top:3px}
#kform .cta{justify-self:start}
.fnote{margin:0;color:var(--soft);font-size:.9rem}
#kstatus{margin:0;font-weight:600;min-height:1.2em}
#kstatus.ok{color:#1a7f37}#kstatus.err{color:#b3261e;font-weight:500}

.vertiefung{margin:34px 0 6px;padding-top:14px;border-top:1px solid var(--line)}
.vertiefung .eyebrow{display:block;margin-bottom:2px}
.vertiefung h2{margin:1.4em 0 .4em}.vertiefung h3{margin:1.1em 0 .3em}
.vertiefung p,.vertiefung li{line-height:1.75;color:var(--ink)}
.vertiefung ul{padding-left:1.15em}

.cta{transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}
.cta:hover{transform:translateY(-2px);
box-shadow:0 12px 26px -12px color-mix(in srgb,var(--primary) 60%,transparent)}
.cta.ghost:hover{background:color-mix(in srgb,var(--primary) 9%,transparent)}
.card:hover{border-color:color-mix(in srgb,var(--primary) 45%,var(--line))}
.faq summary{position:relative;padding-right:32px;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:4px;top:50%;
transform:translateY(-50%);color:var(--primary-text,var(--primary));font-weight:700;font-size:1.25rem;
transition:transform .2s ease}
.faq[open] summary::after{transform:translateY(-50%) rotate(45deg)}

.hero{position:relative}
.hero::before{content:"";position:absolute;inset:0;pointer-events:none;
background:radial-gradient(56% 72% at 78% 10%,
color-mix(in srgb,var(--primary) 9%,transparent),transparent 70%)}
.hero>.wrap{position:relative}

.lead-nach{max-width:72ch;line-height:1.65;color:var(--soft);margin:-6px 0 20px}
.lead-nach b{color:var(--ink)}

.lp-beispiel{margin-top:34px;padding-top:26px;border-top:1px solid var(--line)}
.lp-beispiel h3{font-size:clamp(1.2rem,2.2vw,1.5rem);margin:8px 0 10px;line-height:1.25}
.lp-beispiel .lead{max-width:72ch}

@media(prefers-reduced-motion:no-preference){
html.js .rv{opacity:0;transform:translateY(16px);
transition:opacity .55s ease,transform .55s ease}
html.js .rv.an{opacity:1;transform:none}}

@media(prefers-reduced-motion:no-preference){
html.js #arbeitsweise .grid3 .k3.rv{opacity:.3;filter:blur(4px);
transform:translateY(18px) scale(.985);
transition:opacity .6s ease,filter .6s ease,transform .6s ease;
transition-delay:calc(var(--zs-i,0) * .12s)}
html.js #arbeitsweise .grid3 .k3.rv.an{opacity:1;filter:none;transform:none}}

.team-grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
margin-top:22px}
.person{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px}
.person img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:12px;
margin-bottom:12px;display:block}
.person b{display:block;font-size:1.05rem;margin-bottom:4px}
.person span{display:block;color:var(--soft);font-size:.92rem;line-height:1.5}
.bestandshinweis{margin:14px 0 0;font-size:.9rem;line-height:1.6;color:var(--soft);
border-top:1px solid var(--line);padding-top:12px}
.bestandshinweis b{color:var(--ink)}
.schritte{display:flex;gap:16px;flex-wrap:wrap;margin:0 0 16px}
.schritte span{display:inline-flex;align-items:center;gap:8px;font-size:.86rem;color:var(--soft)}
.schritte b{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;
background:color-mix(in srgb,var(--primary) 12%,var(--ground));color:var(--primary-text,var(--primary));font-size:.8rem}

#mleiste{position:fixed;left:0;right:0;bottom:0;z-index:60;display:none;gap:1px;
background:var(--line);border-top:1px solid var(--line);
transform:translateY(102%);transition:transform .3s ease}

#mleiste a{flex:1;display:grid;place-items:center;padding:13px 8px;font-weight:600;
text-decoration:none;background:var(--panel);color:var(--primary-text,var(--primary));font-size:.95rem}
#mleiste a.voll{background:var(--cta-bg,var(--primary));color:#fff}
#mleiste.an{transform:none}
@media(max-width:700px){#mleiste{display:flex}
body.hat-mleiste #ew-banner{bottom:66px}}

.wfilter{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 6px}
.wfilter button{font:inherit;font-size:.85rem;padding:7px 13px;border-radius:999px;
border:1.5px solid var(--line);background:var(--panel);color:var(--ink);cursor:pointer}
.wfilter button small{color:var(--soft)}
.wfilter button.an{background:var(--cta-bg,var(--primary));border-color:var(--cta-bg,var(--primary));color:#fff}
.wfilter button.an small{color:rgba(255,255,255,.8)}

.wdatum{color:var(--soft);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}
.wmehr{color:var(--primary-text,var(--primary));font-weight:600;font-size:.9rem;margin-top:8px;display:block}
.wkopf{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap}
.wgrid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));margin-top:22px}
.artikel{max-width:740px}
.artikel h2{margin:1.5em 0 .4em}.artikel h3{margin:1.2em 0 .3em}
.artikel p,.artikel li{line-height:1.75;color:var(--ink)}
.artikel ul{padding-left:1.15em}
.wsuche{margin:16px 0 4px;max-width:420px}
.wsuche input{width:100%;font:inherit;padding:11px 15px;border-radius:999px;
border:1.5px solid var(--line);background:var(--panel);color:var(--ink)}
.wsuche input:focus{outline:2px solid var(--primary);outline-offset:1px}
.wleer{margin:16px 0 0;color:var(--soft)}
.stand{margin:26px 0 0;padding:12px 16px;border-radius:12px;font-size:.9rem;line-height:1.6;
background:var(--panel);border:1px solid var(--line);color:var(--soft)}
.stand b{color:var(--ink)}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.wthumb{width:100%;height:150px;object-fit:cover;border-radius:12px;margin-bottom:10px;display:block}
.kurz-gesagt{margin:0 0 26px;padding:18px 22px;border-radius:16px;border:1px solid var(--line);background:var(--panel)}
.kurz-gesagt b{display:block;font-size:.72rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--primary-text,var(--primary));margin-bottom:8px}
.kurz-gesagt ul{margin:0;padding-left:1.2em;display:grid;gap:6px}.kurz-gesagt li{line-height:1.55}
.ki-hinweis{font-size:.85rem;color:var(--soft);margin:10px 0 0;line-height:1.5}
.ki-hinweis a{color:var(--primary-text,var(--primary))}
.zwischenruf{margin:30px 0;padding:20px 22px;border-radius:16px;display:flex;
gap:14px;align-items:center;flex-wrap:wrap;
background:color-mix(in srgb,var(--primary) 6%,var(--panel));
border:1px solid color-mix(in srgb,var(--primary) 25%,var(--line))}
.zwischenruf b{display:block}
.zwischenruf span{flex:1 1 260px;color:var(--soft);line-height:1.5}
.abild{margin:14px 0 20px}
.abild img{width:100%;height:auto;display:block;border-radius:18px;
box-shadow:0 22px 55px -24px color-mix(in srgb,var(--primary) 40%,rgba(0,0,0,.35))}


.wtoc{margin:18px 0 26px;padding:16px 20px;border:1px solid var(--line);
border-radius:14px;background:var(--panel)}
.wtoc b{display:block;font-size:.72rem;font-weight:700;letter-spacing:.13em;
text-transform:uppercase;color:var(--primary-text,var(--primary));margin-bottom:8px}
.wtoc ol{margin:0;padding-left:1.3em;display:grid;gap:5px;
counter-reset:none}

.wtoc li{line-height:1.5;min-width:0;overflow-wrap:anywhere}
.wtoc li::marker{color:var(--primary-text,var(--primary));font-weight:700}
.wtoc a{color:var(--ink);text-decoration:none}
.wtoc a:hover{color:var(--primary-text,var(--primary));text-decoration:underline;text-underline-offset:3px}
.artikel h2[id]{scroll-margin-top:84px}

h1{font-size:clamp(2.2rem, 1.4rem + 3.8vw, 4rem)}
.eyebrow.pill{background:var(--primary);color:#fff;border:0}
.eyebrow.pill,.eyebrow{letter-spacing:.17em}
.hero{background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 7%,var(--ground)),var(--ground) 70%)}
.hero::before{display:none}
.hero-art-logo{border-radius:30px;border:0;box-shadow:0 34px 80px -30px color-mix(in srgb,var(--primary) 55%,rgba(0,0,0,.4))}
.infobox{background:color-mix(in srgb,var(--primary) 10%,var(--panel));border-width:0 0 0 4px}

#check .beweis{background:var(--cta-bg,var(--primary));border:0;color:#fff}
#check .beweis b{color:#fff}

#check .beweis li div{color:#fff}
#check .beweis .chk{color:#fff}

#check .beweis .chk.pikto{background:rgba(255,255,255,.16);
box-shadow:inset 0 0 0 1px rgba(255,255,255,.22);color:#fff}
#check .beweis .chk.pikto svg{color:#fff}
#check .beweis-hinweis{color:#fff;border-top-color:rgba(255,255,255,.28)}
.card,.k3{border-radius:20px}
.card{background:color-mix(in srgb,var(--primary) 4%,var(--panel))}
.k3 .ico{background:var(--primary);color:#fff}
section.alt{background:color-mix(in srgb,var(--primary) 4%,var(--panel))}
.kontakt-karte{background:color-mix(in srgb,var(--primary) 8%,var(--panel));border:0}
footer{background:color-mix(in srgb,var(--primary) 6%,var(--panel))}
.gewerbe{border-left-width:6px}
.card .k{display:flex;align-items:center;gap:10px;min-width:0;overflow-wrap:anywhere;hyphens:auto}.card .k span{min-width:0;overflow-wrap:anywhere;hyphens:auto}.pikto{display:grid;place-items:center;width:30px;height:30px;flex:none;border-radius:9px;background:color-mix(in srgb,var(--primary) 12%,var(--ground));color:var(--primary)}.pikto svg{width:18px;height:18px}.card .pic{width:26px;height:26px;flex:none;color:var(--primary);opacity:.9}.card:hover .pic{opacity:1}.pkopf-pic{display:block;width:30px;height:30px;color:var(--primary);margin:0 0 8px}@media (prefers-reduced-motion:no-preference){.card .pic{transition:transform .25s cubic-bezier(.34,1.56,.64,1)}.card:hover .pic{transform:scale(1.12)}.card:hover .pic path,.card:hover .pic circle,.card:hover .pic rect,.card:hover .pic ellipse{stroke-dasharray:90;animation:iczeichnen .55s ease-out forwards}.pkopf-pic path,.pkopf-pic circle,.pkopf-pic rect,.pkopf-pic ellipse{stroke-dasharray:90;animation:iczeichnen .8s ease-out .15s backwards}@keyframes iczeichnen{from{stroke-dashoffset:90}to{stroke-dashoffset:0}}}

.zg-schalter{display:inline-flex;align-items:center;align-self:center;
border:1px solid var(--line);border-radius:999px;background:var(--panel);
padding:2px;gap:2px;white-space:nowrap;line-height:1}
.zg-schalter a{display:inline-flex;align-items:center;border-radius:999px;
padding:6px 13px;font-size:.85rem;font-weight:600;color:var(--soft);
text-decoration:none;transition:color .16s,background-color .16s}
.zg-schalter a:hover{color:var(--primary-text,var(--primary))}

.zg-schalter a[aria-current]{background:color-mix(in srgb,var(--primary) 8%,var(--ground));
color:var(--primary-text,var(--primary))}
.zg-schalter .ndrop{position:relative;display:inline-flex;align-self:auto}

.zg-schalter .drop{top:calc(100% + 4px)}

@media(max-width:700px){.zg-schalter{order:-1;margin-right:2px}}
.nav nav a,.nav .wrap>.cta{white-space:nowrap;hyphens:none;-webkit-hyphens:none}
.nav nav.nav-gewerbe{gap:16px}
.nav nav.nav-gewerbe>a,.nav nav.nav-gewerbe .ndrop>a{white-space:nowrap;font-size:.88rem}
@media(max-width:1120px){.nav nav.nav-gewerbe{gap:12px}.nav nav.nav-gewerbe>a,.nav nav.nav-gewerbe .ndrop>a{font-size:.84rem}}
.ndrop{position:relative;display:flex;align-items:center;align-self:stretch}

.nav .wrap{position:relative}
.ndrop-breit{position:static}
.ndrop>a{display:inline-flex;align-items:center;gap:5px}
.caret{width:11px;height:11px;flex:none;transition:transform .18s;opacity:.7}
.ndrop:hover .caret,.ndrop.open .caret{transform:rotate(180deg)}
.drop{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(6px);
background:var(--panel);border:1px solid var(--line);border-radius:16px;
box-shadow:0 30px 70px -28px rgba(0,0,0,.45);padding:20px 24px;display:flex;gap:30px;
width:max-content;max-width:min(94vw,780px);
opacity:0;visibility:hidden;transition:opacity .16s,transform .16s,visibility .16s;
z-index:30;flex-wrap:wrap;row-gap:10px}
.ndrop:hover .drop,.ndrop:focus-within .drop,.ndrop.open .drop{
opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}


.drop-breit{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));width:min(96vw,1200px);max-width:min(96vw,1200px);
gap:20px 22px;max-height:calc(100vh - 76px);overflow-y:auto;overscroll-behavior:contain}
@media(min-width:1024px){.drop-breit{grid-template-columns:repeat(4,minmax(0,1fr))}}
.drop-breit .dcol{min-width:0}

.drop-breit .dcol a{white-space:normal;align-items:flex-start;line-height:1.35;font-size:.9rem}

.drop-breit .dcol a span{hyphens:manual;-webkit-hyphens:manual;overflow-wrap:anywhere;min-width:0}
.drop-breit .dcol a .pic{margin-top:2px}
.drop-breit .dfuss{grid-column:1/-1}
.dcol{min-width:170px}
.dcol b{display:block;font-size:.68rem;text-transform:uppercase;letter-spacing:.13em;
color:var(--primary);margin-bottom:9px;font-weight:700}
.drop a{display:flex;align-items:center;gap:9px;padding:5.5px 0;color:var(--ink);
text-decoration:none;white-space:nowrap;font-size:.92rem}
.drop a:hover{color:var(--primary)}
.drop a:hover span{text-decoration:underline;text-underline-offset:3px}
.drop .pic{width:17px;height:17px;flex:none;color:var(--primary);opacity:.85}
.dfuss{flex-basis:100%;border-top:1px solid var(--line);padding-top:12px;margin-top:4px;
display:flex;gap:22px;flex-wrap:wrap}
.dfuss a{font-weight:600;color:var(--primary);font-size:.9rem}

@media(max-width:1100px){

.ndrop{position:static}
.drop{position:absolute;left:12px;right:12px;top:100%;transform:none;margin-top:10px;
width:auto;max-width:none;max-height:min(60vh,520px);overflow:auto;gap:18px}

.ndrop:hover .drop,.ndrop:focus-within .drop,.ndrop.open .drop{transform:none}


.drop:not(.drop-breit) .dcol{flex:1 1 100%;columns:190px auto;column-gap:30px;min-width:0}
.drop:not(.drop-breit) .dcol b{column-span:all}
.drop:not(.drop-breit) .dcol a{break-inside:avoid}

.zg-schalter .ndrop{position:static}
.zg-schalter .drop{top:100%;left:12px;right:12px;transform:none}
}
@media(max-width:700px){
.ndrop{align-self:auto}
.ndrop:hover .drop{opacity:0;visibility:hidden}
.ndrop.open .drop,.ndrop:focus-within .drop{opacity:1;visibility:visible;transform:none}
}



:root{
  
  --ease-out:cubic-bezier(0.16,1,0.3,1);
  --ease-soft:cubic-bezier(0.4,0,0.2,1);
  
  --ink-1:var(--ink);
  --ink-2:color-mix(in srgb,var(--ink) 78%,var(--ground));
  --ink-3:color-mix(in srgb,var(--ink) 58%,var(--ground));
  --ink-4:color-mix(in srgb,var(--ink) 38%,var(--ground));
  --hairline:var(--line);
}


.scroll-progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:120;
  background:transparent;pointer-events:none}
.scroll-progress::before{content:"";display:block;height:100%;width:100%;
  transform:scaleX(var(--fortschritt,0));transform-origin:0 50%;
  background:linear-gradient(90deg,var(--primary),var(--accent));
  transition:transform 120ms linear}   




.hat-motion .reveal-stagger > *{opacity:0;transform:translateY(14px);
  transition:opacity 700ms var(--ease-out),transform 700ms var(--ease-out)}
.reveal-stagger.is-visible > *{opacity:1;transform:none}
.reveal-stagger.is-visible > *:nth-child(1){transition-delay:0ms}
.reveal-stagger.is-visible > *:nth-child(2){transition-delay:80ms}
.reveal-stagger.is-visible > *:nth-child(3){transition-delay:160ms}
.reveal-stagger.is-visible > *:nth-child(4){transition-delay:240ms}
.reveal-stagger.is-visible > *:nth-child(5){transition-delay:320ms}
.reveal-stagger.is-visible > *:nth-child(6){transition-delay:400ms}
.reveal-stagger.is-visible > *:nth-child(7){transition-delay:480ms}
.reveal-stagger.is-visible > *:nth-child(8){transition-delay:560ms}
.reveal-stagger.is-visible > *:nth-child(n+9){transition-delay:640ms}


@property --ring-winkel{syntax:"<angle>";initial-value:0deg;inherits:false}
.card{position:relative;isolation:isolate}
.card::before{
  content:"";position:absolute;inset:-1px;padding:1.5px;border-radius:inherit;
  background:conic-gradient(from var(--ring-winkel),var(--primary),var(--accent),var(--primary));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
          mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;
  opacity:0;z-index:-1;pointer-events:none;
  transition:opacity 400ms var(--ease-out);
  animation:ringDreht 6s linear infinite paused}
.card:hover::before,.card:focus-within::before{opacity:1;animation-play-state:running}
@keyframes ringDreht{to{--ring-winkel:360deg}}

@supports not (background:conic-gradient(from var(--ring-winkel),red,red)){
  .card::before{display:none}
}


@media (hover:hover) and (pointer:fine){
  .card.kippt,.fd-karte.kippt,.fd-kachel.kippt,.kachel.kippt,.fd-spalte.kippt,
  .bcb-frage.kippt,.bcb-zeile.kippt,
  .is-visible>.card.kippt,.is-visible>.fd-karte.kippt,.is-visible>.kachel.kippt{
    transform:perspective(900px) rotateX(var(--kx,0deg)) rotateY(var(--ky,0deg))
              translate3d(0,-4px,0);
    transition:transform .14s ease-out}
  .card.kippt-aus,.fd-karte.kippt-aus,.fd-kachel.kippt-aus,.kachel.kippt-aus,
  .fd-spalte.kippt-aus,.is-visible>.card.kippt-aus,.is-visible>.fd-karte.kippt-aus{
    transition:transform .45s cubic-bezier(.16,1,.3,1)}
  
  .card.kippt::after,.fd-karte.kippt::after,.fd-kachel.kippt::after,
  .kachel.kippt::after,.fd-spalte.kippt::after,.bcb-frage.kippt::after,
  .bcb-zeile.kippt::after{
    content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
    background:radial-gradient(220px circle at var(--zx,50%) var(--zy,50%),
      color-mix(in srgb,var(--primary) 13%,transparent),transparent 70%);
    z-index:0}
  .card,.fd-karte,.fd-kachel,.kachel,.fd-spalte,.bcb-frage,.bcb-zeile{position:relative}
}
@media (prefers-reduced-motion:reduce){
  .card.kippt,.fd-karte.kippt,.fd-kachel.kippt,.kachel.kippt,.fd-spalte.kippt{
    transform:none;transition:none}
  .card.kippt::after,.fd-karte.kippt::after,.fd-kachel.kippt::after,
  .kachel.kippt::after,.fd-spalte.kippt::after{display:none}
}



main{overflow-x:clip}
@media (prefers-color-scheme:dark){
  :root:not([data-theme=light]) .fd-endcta,
  :root:not([data-theme=light]) .pcta{
    box-shadow:0 0 0 1px var(--line),
               0 18px 60px -28px color-mix(in srgb,var(--primary) 55%,transparent)}
  :root:not([data-theme=light]) .fd-beweis{position:relative;isolation:isolate}
  :root:not([data-theme=light]) .fd-beweis::before{
    content:"";position:absolute;inset:0 -10% auto -10%;height:70%;z-index:-1;
    background:radial-gradient(60% 100% at 50% 0%,
      color-mix(in srgb,var(--primary) 16%,transparent),transparent 70%);
    pointer-events:none}
  :root:not([data-theme=light]) .lokal-block{
    box-shadow:0 24px 70px -34px color-mix(in srgb,var(--primary) 45%,transparent)}
  :root:not([data-theme=light]) .fd-grafik{
    box-shadow:0 0 0 1px var(--line),
               0 30px 96px -44px color-mix(in srgb,var(--primary) 30%,transparent)}
}
:root[data-theme=dark] .fd-endcta,
:root[data-theme=dark] .pcta{
  box-shadow:0 0 0 1px var(--line),
             0 18px 60px -28px color-mix(in srgb,var(--primary) 55%,transparent)}
:root[data-theme=dark] .fd-beweis{position:relative;isolation:isolate}
:root[data-theme=dark] .fd-beweis::before{
  content:"";position:absolute;inset:-30% -10% auto -10%;height:70%;z-index:-1;
  background:radial-gradient(60% 100% at 50% 0%,
    color-mix(in srgb,var(--primary) 16%,transparent),transparent 70%);
  pointer-events:none}
:root[data-theme=dark] .lokal-block{
  box-shadow:0 24px 70px -34px color-mix(in srgb,var(--primary) 45%,transparent)}
:root[data-theme=dark] .fd-grafik{
  box-shadow:0 0 0 1px var(--line),
             0 30px 96px -44px color-mix(in srgb,var(--primary) 30%,transparent)}


.faq{transition:translate .3s var(--ease-out),
             box-shadow .3s var(--ease-out),border-color .3s var(--ease-out)}
@media (hover:hover) and (pointer:fine){
  .faq:hover{translate:6px 0;
    box-shadow:0 14px 34px -22px color-mix(in srgb,var(--primary) 60%,transparent);
    border-color:color-mix(in srgb,var(--primary) 40%,var(--line))}
}
.faq[open]{translate:0 0;
  border-color:color-mix(in srgb,var(--primary) 45%,var(--line))}
.faq[open] summary{color:var(--primary)}

.faq[open] p{animation:faqAuf .32s var(--ease-out) both}
@keyframes faqAuf{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){
  .faq,.faq:hover,.faq[open]{translate:none;transition:none}
  .faq[open] p{animation:none}
}


.btn-primary,.zw-btn,.cta-primary,.cta:not(.ghost){position:relative;overflow:hidden}
.btn-primary::after,.zw-btn::after,.cta-primary::after,.cta:not(.ghost)::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.28) 50%,transparent 60%);
  transform:translateX(-120%);transition:transform 620ms var(--ease-out)}
.btn-primary:hover::after,.zw-btn:hover::after,.cta-primary:hover::after,
.cta:not(.ghost):hover::after{transform:translateX(120%)}



@media (hover:hover) and (pointer:fine){
  .cta:not(.ghost){transform:translate3d(var(--mx,0px),var(--my,0px),0);
    transition:transform 240ms var(--ease-out),box-shadow .18s ease,background-color .18s ease}
  .cta:not(.ghost):hover{transform:translate3d(var(--mx,0px),var(--my,0px),0) translateY(-2px)}
}


.k3kopf .num{
  background:linear-gradient(90deg,var(--primary),var(--accent),var(--primary));
  background-size:200% 100%;
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
  animation:numShimmer 6s ease-in-out infinite}
@keyframes numShimmer{0%,100%{background-position:0% 0%}50%{background-position:100% 0%}}


.schritte b{position:relative}
.schritte span:first-child b::before{content:"";position:absolute;inset:-5px;border-radius:50%;
  border:2px solid color-mix(in srgb,var(--primary) 26%,transparent);
  animation:stepRing 2.4s ease-out infinite;pointer-events:none}
@keyframes stepRing{0%{transform:scale(.9);opacity:.8}100%{transform:scale(1.55);opacity:0}}



.rm-diagramm{margin:22px 0;display:grid;
  grid-template-columns:minmax(0,175px) minmax(0,1fr) max-content;
  column-gap:12px;row-gap:9px;align-items:center;font-size:.87rem}
.rm-diagramm-titel{font-size:.74rem;font-weight:700;letter-spacing:.13em;
  text-transform:uppercase;color:var(--primary);margin-bottom:3px;grid-column:1/-1}
.rm-balken{display:contents}
@media(max-width:520px){
  .rm-diagramm{grid-template-columns:minmax(0,105px) minmax(0,1fr) max-content;
    font-size:.78rem}
}
.rm-balken > span:first-child{color:var(--ink-2);line-height:1.3;min-width:0}
.rm-spur{position:relative;height:12px;border-radius:99px;
  background:color-mix(in srgb,var(--ink) 8%,transparent);min-width:0}
.rm-fuellung{position:absolute;top:0;bottom:0;left:0;width:var(--breite,0%);
  border-radius:99px;background:linear-gradient(90deg,var(--primary),var(--accent));
  transform-origin:left center;
  transition:transform 900ms var(--ease-out)}

.hat-motion .rm-fuellung{transform:scaleX(0)}
.hat-motion .is-visible .rm-fuellung,
.hat-motion .rm-diagramm.is-visible .rm-fuellung{transform:scaleX(1)}
.rm-wert{font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}
.rm-diagramm-quelle{font-size:.72rem;color:var(--ink-3);margin-top:4px;grid-column:1/-1}


.rm-spanne{margin:22px 0;display:grid;
  grid-template-columns:minmax(0,175px) minmax(0,1fr) max-content;
  column-gap:12px;row-gap:9px;align-items:center;font-size:.87rem}
@media(max-width:520px){
  .rm-spanne{grid-template-columns:minmax(0,105px) minmax(0,1fr) max-content;
    font-size:.78rem}
}
.rm-band{position:absolute;top:0;bottom:0;left:var(--von,0%);width:var(--breite,10%);
  border-radius:99px;background:linear-gradient(90deg,var(--primary),var(--accent));
  transform-origin:left center;
  transition:transform 900ms var(--ease-out)}
.hat-motion .rm-band{transform:scaleX(0)}
.hat-motion .is-visible .rm-band,
.hat-motion .rm-spanne.is-visible .rm-band{transform:scaleX(1)}
.rm-achse{grid-column:1/-1;display:flex;justify-content:space-between;
  font-size:.7rem;color:var(--ink-3);font-variant-numeric:tabular-nums;
  border-top:1px solid color-mix(in srgb,var(--ink) 12%,transparent);
  padding-top:5px;margin-top:2px}

@media (prefers-reduced-motion:reduce){
  
  .rm-fuellung,.hat-motion .rm-fuellung,
  .rm-band,.hat-motion .rm-band{transform:scaleX(1);transition:none}
}


@media (hover:hover) and (pointer:fine){
  .hat-motion .card{transition:transform 320ms var(--ease-out),
    border-color .18s ease,box-shadow .18s ease}
  .hat-motion .card:hover,.hat-motion .card:focus-within{
    transform:perspective(900px)
      rotateX(calc(var(--kipp-x,0)*1deg)) rotateY(calc(var(--kipp-y,0)*1deg))
      translate3d(0,-3px,0)}
  
  .hat-motion .fd-karte,.hat-motion .fd-kachel,.hat-motion .fd-spalte{
    transition:transform 320ms var(--ease-out),
      border-color .18s ease,box-shadow .18s ease}
  .hat-motion .fd-karte:hover,.hat-motion .fd-kachel:hover,.hat-motion .fd-spalte:hover,
  .hat-motion .fd-karte:focus-within,.hat-motion .fd-spalte:focus-within{
    transform:perspective(900px)
      rotateX(calc(var(--kipp-x,0)*1deg)) rotateY(calc(var(--kipp-y,0)*1deg))
      translate3d(0,-3px,0)}
  
  .hat-motion .bcb-frage,.hat-motion .bcb-zeile{
    transition:transform 320ms var(--ease-out),
      border-color .18s ease,box-shadow .18s ease,opacity .25s ease}
  .hat-motion .bcb-frage:hover,.hat-motion .bcb-frage:focus-within,
  .hat-motion .bcb-zeile:hover{
    transform:perspective(900px)
      rotateX(calc(var(--kipp-x,0)*1deg)) rotateY(calc(var(--kipp-y,0)*1deg))
      translate3d(0,-3px,0)}
}


.hat-motion .reveal-stagger:not(.is-visible) > *{
  transform:translate3d(0,14px,0) scale(.988)}


.hero-szene > .hero-buehne > .wrap{transform:translate3d(0,var(--tiefe-y,0px),0)}


.prose h2:not(.fd-h2)::before,.artikel h2:not(.fd-h2)::before{
  content:"";display:block;width:46px;height:3px;border-radius:2px;margin:0 0 15px;
  background:linear-gradient(90deg,var(--primary),
    color-mix(in srgb,var(--primary) 15%,transparent))}

.prose h2:not(.fd-h2)+p,.artikel h2:not(.fd-h2)+p{
  font-size:1.03em;line-height:1.62}


.rg-scrub{position:relative}
.rg-sticky{position:sticky;top:0;height:100vh;overflow:hidden;
  display:flex;flex-direction:column;align-items:center;justify-content:center}

.rg-kopf{position:relative;z-index:3;text-align:center;padding:0 20px;
  max-width:760px;margin:0 auto 18px}
.rg-kopf .rg-titel{display:block;margin-top:8px;font-weight:800;
  font-size:clamp(26px,3.6vw,40px);letter-spacing:-.02em;line-height:1.12}

.rg-scene{perspective:1400px;width:100%;height:clamp(268px,42vh,400px);position:relative}
.rg-ring{position:absolute;inset:0;transform-style:preserve-3d;will-change:transform}


.rg-ring .ortkarte span:not(.ortkarte-svg){display:none}
.rg-ring .ortkarte img{flex:1 1 auto;min-height:0;width:100%;object-fit:cover;
  border-radius:inherit;border-end-start-radius:0;border-end-end-radius:0}
.rg-ring .ortkarte b{padding:9px 12px 11px;font-size:.95rem}
.rg-ring .ortkarte{position:absolute;left:50%;top:50%;
  --rg-hoch:clamp(176px,26vh,244px);
  width:var(--rg-breit,214px);height:var(--rg-hoch);
  margin:calc(var(--rg-hoch) / -2) 0 0 calc(var(--rg-breit,214px) / -2);
  display:flex;flex-direction:column;justify-content:flex-start;padding:0;
  overflow:hidden;
  backface-visibility:hidden;transition:border-color .3s var(--ease-out),
  box-shadow .3s var(--ease-out)}

.rg-ring .ortkarte img{transition:opacity .3s var(--ease-out);opacity:.5}
.rg-ring .ortkarte.vorn img{opacity:1}
.rg-ring .ortkarte.vorn{
  border-color:color-mix(in srgb,var(--primary) 45%,var(--line));
  box-shadow:0 26px 60px -30px color-mix(in srgb,var(--primary) 55%,transparent)}
.rg-schild{position:relative;z-index:3;text-align:center;margin-top:22px;min-height:52px}
.rg-schild .rg-name{display:block;font-weight:700;
  font-size:clamp(20px,2.6vw,28px);letter-spacing:-.015em}
.rg-schild .rg-zahl{display:block;margin-top:6px;font-size:12.5px;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;color:var(--primary)}

.rg-wink{position:relative;z-index:3;margin-top:10px;font-size:12.5px;
  letter-spacing:.1em;text-transform:uppercase;opacity:.62}
.ortgrid.rg-aus{display:none}


@media (prefers-reduced-motion:reduce){
  
  .rg-scrub{display:none}
  .ortgrid.rg-aus{display:grid}
  .hat-motion .reveal-stagger > *{opacity:1;transform:none;transition:none}
  .card::before{animation:none;transition:none}
  .btn-primary::after,.zw-btn::after,.cta-primary::after{display:none}
  .scroll-progress::before{transition:none}
  
  .k3kopf .num{animation:none;background:none;
    -webkit-text-fill-color:var(--primary);color:var(--primary)}
  .schritte span:first-child b::before{animation:none;opacity:0}
  .cta:not(.ghost){transform:none}
  
  .hat-motion .card:hover,.hat-motion .card:focus-within,
  .hat-motion .fd-karte:hover,.hat-motion .fd-kachel:hover,
  .hat-motion .fd-spalte:hover{transform:none}
  .hero-szene > .hero-buehne > .wrap{transform:none}
}


.hero-szene{position:relative;height:var(--szene-h,220vh);padding:0;margin:0}
.hero-buehne{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;
  display:grid;align-items:center;isolation:isolate;background:#0b0c10}
.hero-poster,.hero-canvas{position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;display:block;z-index:0}
.hero-canvas{opacity:0;transition:opacity 600ms var(--ease-out)}
.hero-szene.hat-frames .hero-canvas{opacity:1}

.hero-schleier{position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(100deg,
    color-mix(in srgb,#0b0c10 88%,transparent) 0%,
    color-mix(in srgb,#0b0c10 74%,transparent) 48%,
    color-mix(in srgb,var(--primary) 16%,transparent) 100%)}
.hero-szene>.hero-buehne>.wrap{position:relative;z-index:2;width:100%;
  padding-top:clamp(72px,10vh,120px);padding-bottom:clamp(40px,6vh,72px)}


@media (max-height:900px){
  .hero-szene>.hero-buehne>.wrap{padding-top:clamp(40px,5.5vh,64px);
    padding-bottom:clamp(40px,6vh,64px)}
  .hero-szene h1{font-size:clamp(30px,3.4vw,42px);line-height:1.07;margin-bottom:8px}
  .hero-szene .lead{font-size:.98rem;line-height:1.48;margin-bottom:14px}
  .hero-szene .answer{font-size:.9rem;line-height:1.48;margin:4px 0 10px}
  .hero-szene .proof{margin-top:8px;font-size:.82rem}
  .hero-szene .infobox{margin-top:10px;font-size:.8rem;padding:9px 12px}
  .hero-szene .ctas{margin-bottom:0}
}
@media (max-height:800px){
  .hero-szene h1{font-size:clamp(28px,3.1vw,38px)}
  .hero-szene .lead{font-size:.96rem}
  .hero-szene .proof{font-size:.8rem}
  .hero-szene .infobox{font-size:.78rem;padding:8px 11px;margin-top:10px}
}

@media (max-height:760px){
  .hero-szene>.hero-buehne>.wrap{padding-top:clamp(28px,4vh,44px);
    padding-bottom:clamp(24px,4vh,40px)}
  .hero-szene h1{font-size:clamp(26px,2.9vw,34px);line-height:1.05;margin-bottom:6px}
  .hero-szene .lead{font-size:.92rem;line-height:1.42;margin-bottom:10px}
  .hero-szene .answer{font-size:.86rem;line-height:1.42;margin:2px 0 8px}
  .hero-szene .ctas{gap:8px}
  .hero-szene .proof{margin-top:6px;font-size:.78rem;gap:6px 14px}
  .hero-szene .infobox{margin-top:8px;font-size:.75rem;padding:7px 10px;line-height:1.4}
  .hero-szene .crumb{margin-bottom:4px;font-size:.8rem}
  .hero-szene .eyebrow.pill{margin-bottom:6px}
}

.hero-szene h1,.hero-szene .lead b{color:#fff}
.hero-szene .lead span,.hero-szene .proof,.hero-szene .infobox,.hero-szene .answer{color:#e6e8ee}

.hero-szene .proof b,.hero-szene .proof strong,.hero-szene .lead strong,
.hero-szene .infobox strong{color:#fff}
.hero-szene .infobox{background:rgba(255,255,255,.07);
  border-color:rgba(255,255,255,.16)}
.hero-szene .infobox b{color:#fff}
.hero-szene .eyebrow.pill{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.2);color:#fff}
.hero-szene .crumb,.hero-szene .crumb a{color:#e6e8ee}
.kopf-szene .col{grid-template-columns:minmax(0,760px)}

.kopf-szene.hero-rechts .col{grid-template-columns:minmax(0,640px);justify-content:end}
.hero-szene .cta.ghost{color:#fff;border-color:rgba(255,255,255,.55)}
.hero-szene .cta.ghost:hover{background:rgba(255,255,255,.12)}

.hero-szene .hero-art-logo{background:rgba(255,255,255,.94);
  backdrop-filter:blur(10px);border-color:rgba(255,255,255,.35);
  box-shadow:0 30px 80px -24px rgba(0,0,0,.7)}

.hero-szene.hero-hell .hero-schleier{background:linear-gradient(180deg,rgba(11,12,16,.30) 0%,rgba(11,12,16,.06) 30%,rgba(11,12,16,.04) 70%,rgba(11,12,16,.22) 100%)}
.hero-szene.hero-hell .col>div:first-child{background:rgba(255,255,255,.88);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border:1px solid rgba(255,255,255,.65);border-radius:22px;padding:26px 30px;box-shadow:0 30px 80px -30px rgba(0,0,0,.45)}
.hero-szene.hero-hell h1,.hero-szene.hero-hell .lead b,.hero-szene.hero-hell .lead strong,.hero-szene.hero-hell .proof b,
.hero-szene.hero-hell .proof strong,.hero-szene.hero-hell .infobox b,.hero-szene.hero-hell .infobox strong{color:#14181f}
.hero-szene.hero-hell .lead span,.hero-szene.hero-hell .proof,.hero-szene.hero-hell .infobox,.hero-szene.hero-hell .answer,
.hero-szene.hero-hell .crumb,.hero-szene.hero-hell .crumb a{color:#4a5160}
.hero-szene.hero-hell .infobox{background:rgba(0,0,0,.04);border-color:rgba(0,0,0,.12)}
.hero-szene.hero-hell .eyebrow.pill{background:color-mix(in srgb,var(--primary) 10%,#fff);border-color:color-mix(in srgb,var(--primary) 32%,#fff);color:var(--primary-text,var(--primary))}
.hero-szene.hero-hell .cta.ghost{color:#14181f;border-color:rgba(0,0,0,.35)}
.hero-szene.hero-hell .cta.ghost:hover{background:rgba(0,0,0,.06)}
.hero-szene.hero-hell .hero-weiter{text-shadow:0 1px 8px rgba(0,0,0,.7)}

@media (max-height:900px){.hero-szene.hero-hell .col>div:first-child{padding:18px 22px;border-radius:18px}}
@media (max-height:820px){.hero-szene.hero-hell .col>div:first-child{padding:14px 18px}
  .hero-szene.hero-hell .infobox{display:none}
  .hero-szene.hero-hell .ctas .cta{padding:10px 16px;font-size:.92rem}
  .hero-szene.hero-hell .proof{font-size:.76rem;margin-top:4px}
  .hero-szene.hero-hell .answer{font-size:.84rem;line-height:1.4;margin:2px 0 6px}}
@media (max-width:820px){.hero-szene.hero-hell .col>div:first-child{padding:18px 18px;border-radius:18px}}

.hero-szene.hero-logo-oben .col{align-items:start}
.hero-szene.hero-logo-oben .col>div:first-child{align-self:center}
.hero-szene.hero-logo-oben .hero-art-logo{align-self:start;margin-top:clamp(-150px,-14vh,-80px);width:min(100%,380px);justify-self:end}


@media (max-width:820px){.hero-szene.hero-logo-oben .hero-art-logo{display:none}
  .hero-szene.hero-logo-oben .hero-poster{height:150%;top:-50%;object-position:72% 50%}
  .hero-szene.hero-logo-oben .col>div:first-child{margin-top:clamp(300px,54vh,440px)}}

.hero-szene.hero-aufgehellt .hero-poster,.hero-szene.hero-aufgehellt .hero-canvas{filter:brightness(1.16) saturate(1.06)}

.hero-weiter{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);
  z-index:2;color:#fff;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;
  opacity:.7;transition:opacity 400ms var(--ease-out);pointer-events:none}
.hero-szene.gescrollt .hero-weiter{opacity:0}


header.nav .wrap{transition:transform 240ms var(--ease-out);transform-origin:50% 50%}
@media(min-width:901px){html.gescrollt header.nav .wrap{transform:scale(.92)}}
html.gescrollt header.nav{box-shadow:0 8px 28px -18px rgba(0,0,0,.35)}


@supports (interpolate-size:allow-keywords){
  .faq{interpolate-size:allow-keywords}
  .faq::details-content{block-size:0;overflow:clip;
    transition:block-size 320ms var(--ease-out),content-visibility 320ms allow-discrete}
  .faq[open]::details-content{block-size:auto}
}


#check h2::after{content:"";display:block;width:72px;height:3px;margin-top:12px;
  border-radius:2px;background:linear-gradient(90deg,var(--primary),var(--accent));
  transform-origin:left center}


@media (min-width:1080px){
  #arbeitsweise .grid3{position:relative}
  #arbeitsweise .k3{position:relative;z-index:1}
  #arbeitsweise .grid3::before{content:"";position:absolute;z-index:0;
    left:24px;right:24px;top:61px;height:2px;border-radius:1px;
    background:linear-gradient(90deg,var(--primary),var(--accent));
    transform-origin:left center}
}
@supports (animation-timeline:view()){
  #check h2::after{animation:strichZeichnet linear both;
    animation-timeline:view();animation-range:entry 30% entry 100%}
  #arbeitsweise .grid3::before{animation:strichZeichnet linear both;
    animation-timeline:view();animation-range:entry 20% cover 45%}
}
@keyframes strichZeichnet{from{transform:scaleX(0)}to{transform:scaleX(1)}}


@media (min-width:600px) and (max-width:820px) and (pointer:fine){
  .hero-szene .hero-art{display:none}
  .hero-szene>.hero-buehne>.wrap{padding-top:clamp(56px,8vh,90px)}
}



.hero-abstimmung{position:fixed;left:0;right:0;bottom:0;z-index:9999;display:flex;flex-wrap:wrap;gap:6px;align-items:center;
  padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(15,17,22,.94);color:#e9e7e1;font:600 14px/1.2 system-ui,sans-serif}
.hero-abstimmung span{opacity:.7;margin-right:2px}
.hero-abstimmung a{color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:8px 12px;min-height:36px;display:inline-flex;align-items:center}
.hero-abstimmung a.an{background:#E30613;border-color:#E30613}
.hero-abstimmung em{flex-basis:100%;font-style:normal;font-weight:400;font-size:12px;opacity:.75}
@media (max-width:599px),(pointer:coarse),(prefers-reduced-motion:reduce){
  html:not(.hero-abstimmung-an) .hero-szene{height:auto}
  html:not(.hero-abstimmung-an) .hero-buehne{position:relative;height:auto;min-height:0;display:block}
  html:not(.hero-abstimmung-an) .hero-poster{position:absolute;height:100%}
  html:not(.hero-abstimmung-an) .hero-canvas,html:not(.hero-abstimmung-an) .hero-weiter{display:none}
  html:not(.hero-abstimmung-an) .hero-szene>.hero-buehne>.wrap{padding-top:clamp(56px,9vh,96px)}
  header.nav .wrap{transition:none}
  .faq::details-content{transition:none}
  #check h2::after,#arbeitsweise .grid3::before{animation:none;transform:none}
}


.badge-dunkel{display:none}
@media (prefers-color-scheme:dark){
  :root:not([data-theme=light]) .badge-hell{display:none}
  :root:not([data-theme=light]) .badge-dunkel{display:block}
}
:root[data-theme=dark] .badge-hell{display:none}
:root[data-theme=dark] .badge-dunkel{display:block}
:root[data-theme=light] .badge-hell{display:block}
:root[data-theme=light] .badge-dunkel{display:none}


html{hyphens:auto;-webkit-hyphens:auto;hyphenate-limit-chars:8 4 3}

h1,h2,h3,.k3 h3{overflow-wrap:normal;word-break:normal}

.prose{max-width:740px}.prose h1{margin-bottom:.15em}.prose .lede{font-size:1.18rem;color:var(--soft);line-height:1.6;margin:.3em 0 1.2em}
.prose ul{line-height:1.7;padding-left:1.1em}

.prose ul.punkte{padding-left:0}
.faq{border:1px solid var(--line);border-radius:12px;padding:2px 16px;margin:10px 0;background:var(--panel)}
.faq summary{cursor:pointer;font-weight:600;padding:12px 0}.faq p{margin:0 0 14px;color:var(--soft);line-height:1.6}
.crumb{font-size:.85rem;color:var(--soft);margin-bottom:6px}.crumb a{color:var(--soft)}
.pcta{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:22px;margin:26px 0;display:flex;gap:18px;justify-content:space-between;align-items:center;flex-wrap:wrap}

.pkopf{display:grid;grid-template-columns:1.12fr .88fr;gap:38px;align-items:center;margin:0 0 14px}
.pkopf>div,.pkopf>figure{min-width:0}
.pkopf .ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}
.pbild{margin:0;position:relative}
.pbild img{width:100%;height:auto;display:block;border-radius:22px;
box-shadow:0 30px 70px -26px color-mix(in srgb,var(--primary) 55%,rgba(0,0,0,.38))}
.pbild::before{content:"";position:absolute;inset:-16px;border-radius:30px;z-index:-1;
background:radial-gradient(62% 62% at 72% 28%,color-mix(in srgb,var(--primary) 24%,transparent),transparent 72%)}
@media(max-width:860px){.pkopf{grid-template-columns:1fr;gap:20px}}
.prose.breit,.artikel.breit{max-width:1060px}
.prose.breit>*:not(.pkopf):not(.grid):not(.pcta):not(.punkte),
.artikel.breit>*:not(.pkopf):not(.grid):not(.pcta):not(.punkte){max-width:760px}
.punkte{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;
margin:14px 0 6px;padding:0;list-style:none}
.punkte li{background:var(--panel);border:1px solid var(--line);border-radius:14px;
padding:14px 16px;display:flex;gap:10px;align-items:flex-start;line-height:1.5}
.punkte .chk{color:var(--primary-text,var(--primary));font-weight:800}


.prose h2,.artikel h2{margin-top:2.2em;margin-bottom:.45em}
.prose>h2:first-child,.artikel>h2:first-child{margin-top:0}
.prose .fd-grafik,.prose .fd-vgl-wrap,.prose .fd-beweis,.prose .fd-drei,
.prose .fd-tabwrap,.prose .infobox,.prose .grid,.prose .punkte,
.artikel .fd-grafik,.artikel .fd-vgl-wrap,.artikel .fd-beweis,.artikel .fd-drei,
.artikel .fd-tabwrap,.artikel .infobox,.artikel .grid,.artikel .punkte{
margin-top:30px;margin-bottom:30px}
.prose .fd-eyebrow,.prose .fd-kicker,.artikel .fd-eyebrow,.artikel .fd-kicker{margin-top:46px}
.prose .fachteil,.artikel .fachteil{margin-top:52px;padding-top:26px}
.prose .tiefe-klapp,.artikel .tiefe-klapp{margin:12px 0}
.prose .pcta,.artikel .pcta{margin:44px 0}
.prose .fd-sprung,.artikel .fd-sprung{margin:44px 0}

.lokal-block{margin:26px 0 6px;padding:18px 20px;border-radius:14px;
background:color-mix(in srgb,var(--primary) 5%,var(--panel));
border-left:4px solid color-mix(in srgb,var(--primary) 55%,var(--line))}
.lokal-block .eyebrow{display:block;margin-bottom:6px}
.lokal-block p{margin:0;line-height:1.7;color:var(--ink)}


.bcb{margin:34px 0 8px;padding-top:26px;border-top:1px solid var(--line)}
.bcb-fragen{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
margin:16px 0 10px}
.bcb-frage{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;cursor:pointer;
border:1px solid var(--line);border-radius:12px;background:var(--panel);
transition:border-color .16s,background-color .16s}
.bcb-frage:hover{border-color:color-mix(in srgb,var(--primary) 45%,var(--line))}
.bcb-frage input{margin-top:3px;accent-color:var(--primary);flex:none}
.bcb-frage b{display:block;font-size:.95rem;line-height:1.35}
.bcb-frage small{display:block;color:var(--soft);font-size:.82rem;line-height:1.45;margin-top:3px}
.bcb-hinweis{color:var(--soft);font-size:.86rem;margin:0 0 12px}

.bcb-bfragen{display:grid;gap:12px;margin:16px 0 4px}
.bcb-bfrage{padding:14px 16px;border:1px solid var(--line);border-radius:12px;
background:color-mix(in srgb,var(--primary) 4%,var(--panel))}
.bcb-bfrage>b{display:block;font-size:.98rem}
.bcb-bfrage>small{display:block;color:var(--soft);font-size:.84rem;line-height:1.45;margin-top:3px}
.bcb-wahlen{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.bcb-wahl{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;cursor:pointer;
border:1px solid var(--line);border-radius:999px;background:var(--panel);font-size:.9rem;
transition:border-color .16s}
.bcb-wahl:hover{border-color:color-mix(in srgb,var(--primary) 45%,var(--line))}
.bcb-wahl input{accent-color:var(--primary)}
.bcb-wahl:has(input:checked){border-color:var(--primary);
background:color-mix(in srgb,var(--primary) 8%,var(--panel))}
.bcb-liste{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.bcb-zeile{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;
border:1px solid var(--line);border-radius:12px;background:var(--panel)}
.bcb-zeile b{display:block;font-size:.98rem}

.bcb-zeile b a{color:inherit;text-decoration:none}
.bcb-zeile b a:hover,.bcb-zeile b a:focus-visible{text-decoration:underline;
text-decoration-color:var(--primary)}
.bcb h2{margin-top:.35em}
.bcb-zeile>div>span{display:block;color:var(--soft);font-size:.89rem;line-height:1.5;margin-top:2px}
.bcb-stufe{flex:none;align-self:flex-start;font-size:.7rem;font-weight:700;letter-spacing:.09em;
text-transform:uppercase;padding:4px 8px;border-radius:999px;
background:color-mix(in srgb,var(--primary) 10%,var(--panel));color:var(--primary-text,var(--primary))}
.bcb-pflicht .bcb-stufe{background:color-mix(in srgb,var(--primary) 18%,var(--panel))}
.bcb-optional .bcb-stufe{background:color-mix(in srgb,var(--line) 55%,var(--panel));color:var(--soft)}
.bcb-fuss{margin-top:16px;color:var(--soft);font-size:.88rem;line-height:1.6;
display:flex;flex-wrap:wrap;align-items:center;gap:10px}

html.js .bcb-zeile.bcb-aus{opacity:.42}
@media (prefers-reduced-motion:no-preference){
html.js .bcb-zeile{transition:opacity .25s ease}}

.fachteil{margin:34px 0 6px;padding-top:16px;border-top:1px solid var(--line)}
.fachteil h2{margin:0 0 .5em}
.fachteil h3{margin:1.5em 0 .4em}
.fachteil p{line-height:1.75}
.fachteil .punkte{margin:10px 0 14px}
.tiefe-hinweis{color:var(--soft);font-size:.9rem;margin:22px 0 6px}
.tiefe-klapp{border:1px solid var(--line);border-radius:12px;background:var(--panel);margin:8px 0}
.tiefe-klapp summary{list-style:none;cursor:pointer;padding:12px 44px 12px 16px;position:relative}
.tiefe-klapp summary::-webkit-details-marker{display:none}
.tiefe-klapp summary h3{margin:0;font-size:1.02rem;line-height:1.35}
.tiefe-klapp summary::after{content:"";position:absolute;right:16px;top:50%;width:9px;height:9px;
border-right:2px solid var(--primary);border-bottom:2px solid var(--primary);
transform:translateY(-70%) rotate(45deg);transition:transform .25s ease}
.tiefe-klapp[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.tiefe-klapp-inhalt{padding:0 16px 8px}
.tiefe-klapp-inhalt p{line-height:1.7}


.fd-sk{overflow:hidden}
.sk-strahl{list-style:none;margin:14px 0 6px;padding:0;display:flex;align-items:center;gap:0;position:relative}
.sk-strahl::before{content:"";position:absolute;left:18px;right:18px;top:50%;height:2px;background:var(--line);transform:translateY(-50%)}
.sk-punkt{flex:1;display:flex;justify-content:center;position:relative}
.sk-punkt button{width:36px;height:36px;border-radius:999px;border:2px solid var(--line);background:var(--panel);
  color:var(--soft);font-weight:700;cursor:pointer;transition:transform .25s,background-color .25s,color .25s,border-color .25s}
.sk-punkt.ist-aktiv button{background:var(--primary);border-color:var(--primary);color:#fff;transform:scale(1.15)}
.sk-punkt.war-aktiv button{border-color:var(--primary);color:var(--primary-text,var(--primary))}
.sk-bahn{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:14px 4px 10px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.sk-bahn::-webkit-scrollbar{display:none}
.sk-karte{flex:0 0 min(78%,420px);scroll-snap-align:start;border:1px solid var(--line);border-radius:16px;padding:20px 22px;
  background:var(--panel);transform:scale(.94) translateY(8px);opacity:.85;transition:transform .35s cubic-bezier(.2,.75,.25,1),opacity .35s}

.sk-karte:not(.ist-aktiv) p{color:var(--ink)}
.sk-karte.ist-aktiv{transform:none;opacity:1;box-shadow:0 18px 44px -28px rgba(0,0,0,.35)}
.sk-marke{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:999px;background:var(--primary);color:#fff;font-weight:700;font-size:.9rem;margin-bottom:10px}
.sk-karte b{display:block;font-size:1.05rem;margin-bottom:6px}
.sk-karte p{margin:0;color:var(--soft);line-height:1.6}
.sk-stand{display:block;text-align:center;color:var(--soft);font-size:.9rem;margin-top:6px}
.sk-hinweis{margin:8px 0 0;text-align:center;color:var(--soft);font-size:.8rem}

.sk-gelenkt .sk-bahn{overflow-x:hidden;scroll-snap-type:none}
.sk-gelenkt .sk-hinweis{display:none}
.sk-gelenkt .sk-karte{transition:transform .25s,opacity .25s}

.sk-gelenkt.sk-links .sk-bahn{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 72px,#000 100%);mask-image:linear-gradient(90deg,transparent 0,#000 72px,#000 100%)}

.sk-karte.war-aktiv{opacity:0} 
@media(prefers-reduced-motion:reduce){.sk-karte{transform:none;opacity:1}.sk-punkt button{transition:none}}


.depot-box .ctas{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0 8px}
.depot-box .k3 .card .k span{display:block;font-weight:400;color:var(--soft);font-size:.82rem}
.depot-box .k3 .card p{margin:10px 0 0;color:var(--soft);line-height:1.6}
.fd-ausblick{margin:30px 0 6px;padding:2px 18px 14px;border-radius:16px;
border:1px solid color-mix(in srgb,var(--primary) 26%,var(--line));
background:color-mix(in srgb,var(--primary) 5%,var(--panel))}
.fd-ausblick .fd-eyebrow{margin-top:20px}
.fd-eyebrow{display:block;font-size:.78rem;font-weight:700;letter-spacing:.14em;
text-transform:uppercase;color:var(--primary-text,var(--primary));margin:34px 0 6px}
.fd-h2{margin:0 0 .35em}
.fd-lead{margin:0 0 18px;line-height:1.6}.fd-lead b{color:var(--ink)}.fd-lead span{color:var(--soft)}
.fd-kicker{display:block;font-size:.75rem;font-weight:700;letter-spacing:.12em;
text-transform:uppercase;color:var(--primary-text,var(--primary));margin:26px 0 10px}
.fd-beweis{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px;margin:14px 0 18px}
.fd-punkt{display:flex;gap:10px;align-items:flex-start;background:var(--panel);
border:1px solid var(--line);border-radius:12px;padding:12px 14px}
.fd-chk{color:var(--primary-text,var(--primary));font-weight:700;margin-top:1px}
.fd-punkt>div{min-width:0}
.fd-punkt b{display:block;line-height:1.4}

.fd-punkt>div>span{display:block;color:var(--soft);font-size:.92rem;line-height:1.55;margin-top:2px}
.fd-vgl-wrap{margin:6px 0 22px}

.fd-motiv{margin:6px 0 18px}
.fd-motiv img{display:block;width:100%;height:auto;border-radius:14px}
.fd-motiv figcaption{color:var(--soft);font-size:.9rem;line-height:1.55;margin-top:9px;max-width:62ch}

.fd-vgl{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
@media(max-width:700px){.fd-vgl{grid-template-columns:minmax(0,1fr)}}
.fd-spalte{border:1px solid var(--line);border-radius:14px;padding:16px 18px;background:var(--panel)}
.fd-spalte.rechts{background:color-mix(in srgb,var(--primary) 6%,var(--panel));
border-color:color-mix(in srgb,var(--primary) 30%,var(--line))}
.fd-spaltekopf{font-weight:700;margin-bottom:10px}
.fd-spalte.rechts .fd-spaltekopf{color:var(--primary-text,var(--primary))}
.fd-spalte ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.fd-spalte li{padding-left:0;line-height:1.5}
.fd-spalte li b{display:block}
.fd-spalte li span{display:block;color:var(--soft);font-size:.9rem;line-height:1.5}
.fd-quelle{color:var(--soft);font-size:.85rem;line-height:1.55;margin:10px 0 0}


.fd-flow{margin:26px 0 22px}
.fd-flow h3{margin:2px 0 14px}
.fd-flow-bahn{list-style:none;margin:0;padding:0 4px 12px;display:flex;gap:14px;
overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;
scrollbar-width:thin}
.fd-flow-karte{flex:0 0 clamp(240px,74vw,320px);scroll-snap-align:start;
display:flex;flex-direction:column;background:var(--panel);
border:1px solid var(--line);border-radius:16px;overflow:hidden}
.fd-flow-karte img{display:block;width:100%;height:158px;object-fit:cover}
.fd-flow-karte>div{padding:14px 16px 16px}
.fd-flow-karte b{display:block;font-size:1rem;line-height:1.35;margin-bottom:6px}
.fd-flow-karte span{display:block;color:var(--soft);font-size:.92rem;line-height:1.55}
.fd-flow-hinweis{color:var(--soft);font-size:.85rem;margin:2px 0 0}
@media(min-width:900px){.fd-flow-hinweis{display:none}}

.fd-sprungmarken{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 22px;
padding:14px 16px;border:1px solid var(--line);border-radius:14px;
background:color-mix(in srgb,var(--primary) 4%,var(--panel))}
.fd-sprungmarken b{flex:0 0 100%;font-size:.74rem;font-weight:700;
letter-spacing:.11em;text-transform:uppercase;color:var(--soft);margin-bottom:2px}
.fd-sprungmarken a{display:inline-block;border:1px solid var(--line);
border-radius:999px;padding:6px 13px;font-size:.88rem;text-decoration:none;
color:var(--ink);background:var(--panel)}
.fd-sprungmarken a:hover{border-color:color-mix(in srgb,var(--primary) 45%,var(--line));
color:var(--primary-text,var(--primary))}

.fachteil h3{scroll-margin-top:84px}
.fachteil h3.fd-tr{padding-top:22px;border-top:1px solid var(--line);margin-top:26px}
.fd-quellen{margin:26px 0 6px;padding-top:16px;border-top:1px solid var(--line)}
.fd-quellen h3{font-size:.78rem;font-weight:700;letter-spacing:.09em;
text-transform:uppercase;color:var(--soft);margin:0 0 10px}
.fd-quellen ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.fd-quellen li{max-width:74ch}
.fd-quellen li b{display:block;font-weight:600;font-size:.92rem;line-height:1.5}
.fd-q-wo{display:block;color:var(--soft);font-size:.86rem;line-height:1.5}
.fd-q-vorbehalt{display:block;color:var(--soft);font-size:.86rem;line-height:1.5;
margin-top:3px;padding-left:11px;border-left:2px solid var(--line)}
.fd-zahlen{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:14px 0 4px}
.fd-kachel{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:16px}
.fd-wert{font-size:1.7rem;font-weight:800;letter-spacing:-.02em;color:var(--primary-text,var(--primary))}
.fd-caps{display:block;font-size:.72rem;font-weight:700;letter-spacing:.11em;
text-transform:uppercase;color:var(--ink);margin:4px 0 4px}
.fd-kachel>span{color:var(--soft);font-size:.88rem;line-height:1.5;display:block}
.fd-drei{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:16px 0 8px}
.fd-karte{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:8px}
.fd-ik{width:44px;height:44px;display:grid;place-items:center;font-size:1.35rem;border-radius:12px;
background:color-mix(in srgb,var(--primary) 10%,var(--ground))}
.fd-karte p{margin:0;color:var(--soft);font-size:.93rem;line-height:1.6;flex:1}
.fd-karte .fd-caps{margin-top:6px;color:var(--primary-text,var(--primary))}

.fd-sprung{display:flex;align-items:center;justify-content:space-between;gap:16px 24px;
flex-wrap:wrap;margin:34px 0;padding:16px 0;
border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.fd-sprung p{margin:0;font-weight:600;line-height:1.5;max-width:56ch}
.fd-sprungctas{display:flex;gap:10px;flex-wrap:wrap}
.fd-sprungctas .cta{font-size:.92rem}
@media(max-width:640px){.fd-sprung{gap:12px}.fd-sprungctas .cta{flex:1 1 auto;justify-content:center}}
.fd-endcta{margin:30px 0 8px;border:1px solid color-mix(in srgb,var(--primary) 30%,var(--line));
background:color-mix(in srgb,var(--primary) 5%,var(--panel));border-radius:16px;padding:22px 24px}
.fd-endcta .fd-eyebrow{margin-top:0}
.fd-endkopf{line-height:1.55;margin-bottom:14px}
.fd-endkopf b{display:block;font-size:1.12rem}
.fd-endkopf span{color:var(--soft)}
.fd-endctas{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.fd-vertrauen{display:flex;gap:16px;flex-wrap:wrap;color:var(--soft);font-size:.86rem}
.fd-vertrauen span{white-space:nowrap}

@media(max-width:560px){.fd-vertrauen span{white-space:normal}}
.fd-mehr{display:flex;justify-content:space-between;align-items:center;gap:12px;
border:1px solid var(--line);border-radius:12px;background:var(--panel);
padding:12px 16px;margin:12px 0;text-decoration:none;color:var(--ink)}
.fd-mehr:hover{border-color:color-mix(in srgb,var(--primary) 45%,var(--line))}

.fd-mehr span{font-weight:600;min-width:0;flex:1}
.fd-mehr em{font-style:normal;color:var(--primary-text,var(--primary));font-weight:600;white-space:nowrap}
.fd-chips{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 18px}
.fd-chip{display:inline-block;border:1px solid var(--line);border-radius:999px;
background:var(--panel);padding:7px 14px;font-size:.92rem;text-decoration:none;color:var(--ink)}
a.fd-chip:hover{border-color:var(--primary);color:var(--primary-text,var(--primary))}
.fd-chip.stumm{color:var(--soft)}
.fd-tabwrap{overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:var(--panel)}
.fd-tab{width:100%;border-collapse:collapse;font-size:.93rem;min-width:560px}
.fd-tab th,.fd-tab td{padding:11px 14px;text-align:left;vertical-align:top;line-height:1.5;border-top:1px solid var(--line)}
.fd-tab thead th{border-top:0;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--primary-text,var(--primary))}
.fd-tab tbody th{font-weight:600;color:var(--ink);white-space:nowrap}
.fd-tab td{color:var(--soft)}
.fd-tab tbody tr:nth-child(odd) td,.fd-tab tbody tr:nth-child(odd) th{background:color-mix(in srgb,var(--primary) 3%,transparent)}

.fd-tab th.hervor,.fd-tab td.hervor{background:color-mix(in srgb,var(--primary) 9%,transparent);
  border-left:3px solid var(--primary)}
.fd-tab td.hervor{color:var(--ink);font-weight:500}
.fd-tab tbody tr:nth-child(odd) td.hervor{background:color-mix(in srgb,var(--primary) 12%,transparent)}
@media(max-width:700px){.fd-tab{min-width:640px}.fd-tab th,.fd-tab td{padding:10px 12px;font-size:.88rem}}

.fd-band{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0;margin:16px 0 22px;
border:1px solid color-mix(in srgb,var(--primary) 26%,var(--line));border-radius:16px;overflow:hidden;
background:color-mix(in srgb,var(--primary) 5%,var(--panel))}
.fd-band-zelle{padding:20px 22px;min-width:0;border-left:1px solid color-mix(in srgb,var(--primary) 18%,var(--line))}
.fd-band-zelle:first-child{border-left:0}
.fd-band-wert{font-size:2.2rem;font-weight:800;letter-spacing:-.03em;color:var(--primary-text,var(--primary));line-height:1.05}
.fd-band-text{margin-top:6px;line-height:1.45;color:var(--ink)}
.fd-band-quelle{margin-top:8px;font-size:.78rem;color:var(--soft);line-height:1.4}
.fd-band-quelle a{color:var(--soft);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--primary) 50%,transparent)}
@media(max-width:640px){.fd-band-zelle{border-left:0;border-top:1px solid color-mix(in srgb,var(--primary) 18%,var(--line))}
.fd-band-zelle:first-child{border-top:0}.fd-band-wert{font-size:1.9rem}}
.fd-grafik{margin:6px 0 22px;padding:2px 20px 16px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}
.fd-grafik .fd-kicker{margin-top:18px}
.fd-balken{margin:12px 0}
.fd-balken-kopf{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:6px;min-width:0}
.fd-balken-kopf b{font-weight:600;min-width:0}
.fd-balken-kopf span{font-weight:800;color:var(--primary-text,var(--primary));white-space:nowrap;font-variant-numeric:tabular-nums}
.fd-balken-spur{height:14px;border-radius:999px;background:color-mix(in srgb,var(--primary) 9%,var(--ground));overflow:hidden}
.fd-balken-fuell{height:100%;border-radius:999px;background:var(--primary);position:relative;
transform-origin:left center;transform:scaleX(0);animation:fd-wachsen .9s cubic-bezier(.2,.8,.2,1) forwards}
.fd-balken-fuell i{position:absolute;right:3px;top:1px;font-style:normal;font-size:.68rem;font-weight:700;line-height:12px;
color:#141414;background:rgba(255,255,255,.9);padding:0 6px;border-radius:999px}
.fd-balken.em .fd-balken-fuell{background:color-mix(in srgb,var(--primary) 45%,var(--soft))}
.fd-balken.netto .fd-balken-fuell{background:color-mix(in srgb,var(--ink) 80%,var(--primary))}
.fd-balken small{display:block;color:var(--soft);font-size:.8rem;margin-top:4px;line-height:1.4}
.fd-luecke-fazit{margin:16px 0 4px;padding:12px 14px;border-radius:12px;line-height:1.5;
background:color-mix(in srgb,var(--primary) 8%,var(--panel));border-left:3px solid var(--primary)}
.fd-luecke-fazit b{color:var(--primary-text,var(--primary))}
@keyframes fd-wachsen{to{transform:scaleX(1)}}
@media(prefers-reduced-motion:reduce){.fd-balken-fuell{animation:none;transform:none}}
.fd-zs{list-style:none;margin:14px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;position:relative}
.fd-zs::before{content:"";position:absolute;left:18px;right:18px;top:17px;height:2px;
background:color-mix(in srgb,var(--primary) 30%,var(--line))}
.fd-zs-schritt{position:relative;min-width:0;padding-top:2px}
.fd-zs-marke{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--primary);
color:#fff;font-weight:800;font-size:.9rem;position:relative;z-index:1;
box-shadow:0 0 0 5px var(--panel)}
.fd-zs-schritt b{display:block;margin:10px 0 4px;line-height:1.35}
.fd-zs-schritt p{margin:0;color:var(--soft);font-size:.9rem;line-height:1.55}

@media(prefers-reduced-motion:no-preference){
html.js .fd-zs-flow .fd-zs-schritt.rv{filter:blur(5px);opacity:.32;
transform:translateY(14px) scale(.97);
transition:filter .6s ease,opacity .6s ease,transform .6s ease;
transition-delay:calc(var(--zs-i,0) * .1s)}
html.js .fd-zs-flow .fd-zs-schritt.rv.an{filter:none;opacity:1;transform:none}}
@media(max-width:640px){.fd-zs{grid-template-columns:1fr;gap:16px}
.fd-zs::before{left:16px;right:auto;top:10px;bottom:10px;width:2px;height:auto}
.fd-zs-schritt{display:grid;grid-template-columns:34px minmax(0,1fr);gap:0 12px}
.fd-zs-schritt b{grid-column:2;margin-top:6px}.fd-zs-schritt p{grid-column:2}}
.vertiefung h2{font-size:1.28rem;margin:1.7em 0 .4em}
.vertiefung h3{font-size:1.06rem;margin:1.4em 0 .35em}
.im-detail{border-top:1px solid var(--line,#e6e8ee);margin:6px 0 0}
.im-detail:last-child{border-bottom:1px solid var(--line,#e6e8ee)}
.im-detail>summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;font-weight:600;font-size:1.06rem;line-height:1.35;color:var(--ink,#1a1a1a)}
.im-detail>summary::-webkit-details-marker{display:none}

.im-detail-zahl{margin-left:auto;font-weight:600;font-size:.8rem;letter-spacing:.06em;
text-transform:uppercase;color:var(--soft)}
.im-detail .im-detail-inhalt>h3{font-size:1.02rem;margin:1.4em 0 .35em}
.im-detail .im-detail-inhalt>h3:first-child{margin-top:.4em}
.im-detail>summary::after{content:"";flex:none;width:10px;height:10px;border-right:2px solid var(--primary);border-bottom:2px solid var(--primary);transform:rotate(45deg);transition:transform .25s ease;margin-right:4px}
.im-detail[open]>summary::after{transform:rotate(-135deg)}
.im-detail>summary:hover{color:var(--primary-text,var(--primary))}
.im-detail-inhalt{padding:0 0 16px}
.im-detail-inhalt>:first-child{margin-top:0}
.im-detail h3{font-size:1.02rem;margin:1.2em 0 .3em}
.fd-svg{width:26px;height:26px;color:var(--primary-text,var(--primary))}
@media (prefers-reduced-motion:no-preference){
.fd-punkt,.fd-karte,.fd-kachel,.fd-mehr,.fd-chip,.fd-spalte{
 transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.fd-punkt:hover,.fd-karte:hover,.fd-kachel:hover,.fd-spalte:hover{
 transform:translateY(-3px);
 border-color:color-mix(in srgb,var(--primary) 45%,var(--line));
 box-shadow:0 10px 22px -14px color-mix(in srgb,var(--primary) 45%,transparent)}
.fd-ik{transition:transform .25s ease}
.fd-karte:hover .fd-ik{transform:scale(1.12) rotate(-4deg)}
.fd-wert{display:inline-block;transition:transform .2s ease}
.fd-kachel:hover .fd-wert{transform:scale(1.08)}
.fd-mehr em{display:inline-block;transition:transform .2s ease}
.fd-mehr:hover{border-color:color-mix(in srgb,var(--primary) 55%,var(--line))}
.fd-mehr:hover em{transform:translateX(4px)}
a.fd-chip:hover{transform:translateY(-2px)}
}

.quellen{margin:26px 0 8px;padding:16px 18px;border-radius:14px;
background:var(--panel);border:1px solid var(--line)}
.quellen h3{margin:0 0 10px;font-size:1rem}
.quellen ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.quellen a{font-weight:600}
.quellen span{display:block;color:var(--soft);font-size:.92rem;line-height:1.5}

