/* Poppins lokal gehostet — keine Verbindung zu Google */
@font-face{font-family:'Poppins';font-style:normal;font-weight:300;font-display:swap;src:url('fonts/poppins-300-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:300;font-display:swap;src:url('fonts/poppins-300-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/poppins-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/poppins-400-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/poppins-500-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/poppins-500-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/poppins-600-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/poppins-600-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}

:root{
  --bg:#FFFFFF;--bg-soft:#FBF3E9;--surface:#FFFFFF;--text:#2F4356;--muted:#627281;
  --line:#E7EBEF;--line-warm:#EFE4D6;--accent:#F4B16D;--accent-soft:#FCEBD6;--link:#9A6431;
  --dusty:#97B2C7;--on-ink:#FFFFFF;--on-ink-muted:#C2D0DB;--ink:#2F4356;--ink-2:#3A5167;--focus:#9A6431;
  --r:3px;--maxw:1140px;--ls-over:.18em;
  --ff:"Poppins",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg:#151E27;--bg-soft:#1C2731;--surface:#1E2A35;--text:#E9EEF4;--muted:#A7B5C2;
    --line:#2E3C49;--line-warm:#34424E;--accent:#F4B16D;--accent-soft:#43351F;--link:#E3AC72;
    --dusty:#7E99AE;--on-ink:#F2F6FA;--on-ink-muted:#A7B5C2;--ink:#0F1720;--ink-2:#1A242E;--focus:#F4B16D;
  }
}
:root[data-theme="dark"]{
  --bg:#151E27;--bg-soft:#1C2731;--surface:#1E2A35;--text:#E9EEF4;--muted:#A7B5C2;
  --line:#2E3C49;--line-warm:#34424E;--accent:#F4B16D;--accent-soft:#43351F;--link:#E3AC72;
  --dusty:#7E99AE;--on-ink:#F2F6FA;--on-ink-muted:#A7B5C2;--ink:#0F1720;--ink-2:#1A242E;--focus:#F4B16D;
}

*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:84px;}
body{margin:0;font-family:var(--ff);font-weight:400;font-size:16px;line-height:1.6;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;}
h1,h2,h3,h4{margin:0;font-weight:600;line-height:1.16;letter-spacing:-.018em;text-wrap:balance;}
p{margin:0;}
ul,ol{margin:0;padding:0;list-style:none;}
img{max-width:100%;display:block;}
a{color:var(--link);text-underline-offset:3px;}
:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:2px;}
[hidden]{display:none !important;}

.wrap{max-width:var(--maxw);margin:0 auto;padding-inline:22px;}
.narrow{max-width:760px;}
.over{font-size:11px;font-weight:600;letter-spacing:var(--ls-over);text-transform:uppercase;color:var(--link);margin:0 0 14px;}
.over--ink{color:var(--accent);}
.lede{color:var(--muted);font-size:17px;font-weight:300;max-width:60ch;}
.pad{padding-block:clamp(64px,8vw,104px);}
.pad-s{padding-block:clamp(44px,5vw,64px);}
.soft{background:var(--bg-soft);}
.rule{border-top:1px solid var(--line);}
.ph{background:var(--accent-soft);border-bottom:1px dashed var(--link);padding:0 3px;border-radius:2px;}

.progress{position:fixed;top:0;left:0;height:2px;width:0;background:var(--accent);z-index:100;}
.reveal{opacity:1;}
html.js .reveal{opacity:0;transform:translateY(30px) scale(.985);transition:opacity .75s cubic-bezier(.2,.7,.3,1),transform .75s cubic-bezier(.2,.7,.3,1);}
html.js .reveal.in{opacity:1;transform:none;}
html.js .reveal.d1{transition-delay:.08s;}
html.js .reveal.d2{transition-delay:.16s;}
html.js .reveal.d3{transition-delay:.24s;}
html.js .reveal.d4{transition-delay:.32s;}
html.js .reveal.d5{transition-delay:.40s;}

.site-head{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);}
.head-in{display:flex;align-items:center;gap:20px;height:66px;}
.logo{font-size:21px;font-weight:600;letter-spacing:.16em;color:var(--text);text-decoration:none;margin-right:auto;white-space:nowrap;}
.logo i{font-style:normal;color:var(--accent);}
.nav{display:flex;align-items:center;gap:26px;}
.nav a{font-size:14px;color:var(--text);text-decoration:none;padding-block:6px;border-bottom:1px solid transparent;}
.nav a:hover{border-bottom-color:var(--accent);}
.nav .ext::after{content:"↗";font-size:11px;margin-left:4px;color:var(--muted);}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--ff);font-size:15px;font-weight:500;padding:13px 22px;border-radius:var(--r);border:1px solid transparent;text-decoration:none;cursor:pointer;transition:background .15s,border-color .15s,color .15s;}
.btn--primary{background:var(--ink);color:#fff;border-color:var(--ink);}
.btn--primary:hover{background:var(--ink-2);border-color:var(--ink-2);}
.btn--ghost{background:transparent;color:var(--text);border-color:var(--line);}
.btn--ghost:hover{border-color:var(--accent);}
.btn--accent{background:var(--accent);color:#3A2A16;border-color:var(--accent);}
.btn--accent:hover{background:#EBA257;border-color:#EBA257;}
.btn--sm{padding:9px 16px;font-size:14px;}
.head-cta{flex:none;}

/* Hero mit Bildhintergrund */
.hero{position:relative;isolation:isolate;overflow:hidden;background:#1E2C3A;
  padding-block:clamp(88px,13vw,148px);display:flex;align-items:center;min-height:clamp(500px,66vh,700px);}
.hero-bg{position:absolute;inset:-2% -2% -2% -2%;z-index:-2;background:url("img/muc-hero.webp") center 42%/cover no-repeat;
  will-change:transform;}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(105deg,rgba(26,38,50,.82) 0%,rgba(26,38,50,.66) 46%,rgba(26,38,50,.34) 100%);}
.hero .over{color:var(--accent);}
.hero h1{color:#fff;font-size:clamp(32px,4.9vw,56px);letter-spacing:-.026em;margin-bottom:22px;max-width:21ch;
  text-shadow:0 1px 24px rgba(12,20,28,.35);}
.hero .lede{color:#E6EDF3;font-size:clamp(17px,1.65vw,19.5px);max-width:54ch;}
.hero-points{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 34px;margin-top:26px;max-width:56ch;}
.hero-points li{position:relative;padding-left:18px;font-size:15px;font-weight:300;color:#D7E1EA;line-height:1.5;}
.hero-points li::before{content:"";position:absolute;left:0;top:11px;width:9px;height:2px;background:var(--accent);}
.hero-points strong{display:block;font-weight:500;color:#fff;font-size:15.5px;}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px;}
.hero-note{margin-top:18px;font-size:13px;color:#C4D1DC;}
.hero .ph{background:rgba(244,177,109,.26);border-bottom-color:var(--accent);color:#fff;}
.hero .btn--ghost{color:#fff;border-color:rgba(255,255,255,.55);}
.hero .btn--ghost:hover{border-color:#fff;background:rgba(255,255,255,.1);}
.scroll-hint{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);z-index:1;
  width:22px;height:34px;border:1px solid rgba(255,255,255,.45);border-radius:12px;}
.scroll-hint::after{content:"";position:absolute;left:50%;top:7px;width:2px;height:7px;border-radius:2px;
  background:var(--accent);transform:translateX(-50%);animation:hint 1.9s ease-in-out infinite;}
@keyframes hint{0%,100%{opacity:0;transform:translate(-50%,0)}35%{opacity:1}70%{opacity:0;transform:translate(-50%,11px)}}
.img-cap{margin-top:10px;font-size:12px;color:var(--muted);font-weight:300;}

.trust{background:var(--ink);}
.trust ul{display:flex;flex-wrap:wrap;gap:10px 36px;padding-block:18px;}
.trust li{color:var(--on-ink);font-size:14px;font-weight:300;display:flex;align-items:center;gap:9px;}
.trust li::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--accent);flex:none;}

.sec-head{margin-bottom:clamp(34px,4vw,52px);}
.sec-head h2{font-size:clamp(28px,3.6vw,42px);margin-bottom:16px;}

.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
.pain{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:28px 24px;display:flex;flex-direction:column;gap:10px;}
.pain h3{font-size:17px;}
.pain p{font-size:14.5px;color:var(--muted);font-weight:300;}
.pain .mark{width:26px;height:2px;background:var(--accent);margin-bottom:4px;}
.after-note{margin-top:30px;font-size:19px;font-weight:300;max-width:52ch;}
.after-note strong{font-weight:500;}

.svc-top{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);gap:clamp(32px,5vw,60px);align-items:center;margin-bottom:clamp(36px,4vw,56px);}
.wheel{width:100%;max-width:400px;margin-inline:auto;height:auto;}
.svc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;}
.svc-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:28px 26px;display:flex;flex-direction:column;gap:12px;}
.svc-card h3{font-size:19px;display:flex;align-items:center;gap:10px;}
.dot{width:10px;height:10px;border-radius:2px;flex:none;}
.svc-card .claim{font-size:14.5px;color:var(--link);font-weight:500;}
.svc-card ul{display:flex;flex-direction:column;gap:9px;margin-top:2px;}
.svc-card li{font-size:14.5px;font-weight:300;padding-left:20px;position:relative;}
.svc-card li::before{content:"";position:absolute;left:0;top:9px;width:9px;height:1px;background:var(--dusty);}
.svc-foot{margin-top:26px;font-size:14.5px;color:var(--muted);}

.office{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,60px);align-items:center;}
.office h2{font-size:clamp(28px,3.6vw,42px);margin-bottom:16px;}
.office-imgs{display:grid;grid-template-columns:1.4fr 1fr;gap:14px;}
.office-imgs img{border-radius:var(--r);object-fit:cover;width:100%;height:100%;aspect-ratio:3/4;}
.facts{display:flex;flex-direction:column;gap:2px;margin-top:26px;border-top:1px solid var(--line);}
.facts div{display:flex;justify-content:space-between;gap:16px;padding-block:12px;border-bottom:1px solid var(--line);font-size:14.5px;}
.facts dt{color:var(--muted);font-weight:300;}
.facts dd{margin:0;font-weight:500;text-align:right;}

.why{background:var(--ink);color:var(--on-ink);}
.why h2,.why h3{color:var(--on-ink);}
.why .lede{color:var(--on-ink-muted);}
.why-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;}
.why-item{display:flex;flex-direction:column;gap:10px;padding-top:20px;border-top:2px solid var(--accent);}
.why-item h3{font-size:17px;}
.why-item p{font-size:14.5px;font-weight:300;color:var(--on-ink-muted);}
.why .ph{background:rgba(244,177,109,.24);border-bottom-color:var(--accent);color:var(--on-ink);}

.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;}
.step{display:flex;flex-direction:column;gap:12px;padding-top:22px;border-top:2px solid var(--accent);}
.step .num{font-size:13px;font-weight:600;letter-spacing:.14em;color:var(--link);}
.step h3{font-size:19px;}
.step p{font-size:14.5px;font-weight:300;color:var(--muted);}
.step .eff{font-size:13.5px;font-weight:500;margin-top:2px;}
.steps-foot{margin-top:30px;font-size:14.5px;color:var(--muted);max-width:62ch;}

.prices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
.ptile{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:30px 26px;display:flex;flex-direction:column;gap:8px;}
.ptile--lead{border-color:var(--accent);border-width:2px;}
.ptile .tag{font-size:11px;font-weight:600;letter-spacing:var(--ls-over);text-transform:uppercase;color:var(--link);}
.ptile h3{font-size:20px;margin-top:4px;}
.ptile .amount{font-size:40px;font-weight:600;letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin-top:10px;}
.ptile .amount--text{font-size:26px;letter-spacing:-.01em;}
.ptile .unit{font-size:14px;color:var(--muted);font-weight:300;}
.ptile p{font-size:14px;color:var(--muted);font-weight:300;margin-top:12px;}
.ptile .btn{margin-top:auto;align-self:flex-start;}
.ptile-spacer{margin-top:18px;}
.fineprint{margin-top:22px;border:1px solid var(--line-warm);border-radius:var(--r);padding:20px 22px;font-size:13.5px;color:var(--muted);font-weight:300;}

.placeholder-flag{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--link);border:1px dashed var(--link);border-radius:var(--r);padding:5px 10px;margin-bottom:16px;}
.refs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
.ref{border:1px dashed var(--line-warm);border-radius:var(--r);background:var(--surface);padding:26px 24px;display:flex;flex-direction:column;gap:16px;}
.ref blockquote{margin:0;font-size:15.5px;font-weight:300;color:var(--muted);}
.ref .who{display:flex;align-items:center;gap:12px;margin-top:auto;}
.ref .av{width:40px;height:40px;border-radius:50%;background:var(--dusty);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;flex:none;}
.ref .who div{font-size:13.5px;line-height:1.4;}
.ref .who span{display:block;color:var(--muted);font-size:12.5px;}

.faq{max-width:780px;}
.faq details{border-bottom:1px solid var(--line);}
.faq summary{cursor:pointer;list-style:none;padding-block:20px;font-size:17px;font-weight:500;display:flex;gap:18px;align-items:flex-start;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"+";margin-left:auto;font-size:20px;font-weight:400;color:var(--link);line-height:1;flex:none;}
.faq details[open] summary::after{content:"–";}
.faq .ans{padding-bottom:22px;font-size:15px;font-weight:300;color:var(--muted);max-width:66ch;}

.lead-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.7fr);gap:clamp(32px,5vw,56px);align-items:start;}
form{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:30px 28px;}
.frow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px;}
.field{display:flex;flex-direction:column;gap:6px;}
.field.full{grid-column:1/-1;}
label{font-size:13px;font-weight:500;}
input,select,textarea{font-family:var(--ff);font-size:15px;font-weight:300;color:var(--text);background:var(--bg);border:1px solid var(--line);border-radius:var(--r);padding:11px 13px;width:100%;}
input::placeholder,textarea::placeholder{color:var(--muted);opacity:.75;}
textarea{resize:vertical;min-height:88px;}
.consent{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--muted);font-weight:300;margin-bottom:20px;}
.consent input{width:16px;height:16px;flex:none;margin-top:2px;padding:0;}
form .btn{width:100%;}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.form-error{margin-bottom:14px;padding:12px 14px;border:1px solid var(--link);border-radius:var(--r);
  background:var(--accent-soft);color:var(--text);font-size:14px;font-weight:300;}
.btn[aria-busy="true"]{opacity:.7;pointer-events:none;}
.form-note{margin-top:14px;font-size:12.5px;color:var(--muted);text-align:center;}
.done{display:none;border:1px solid var(--accent);border-radius:var(--r);background:var(--accent-soft);padding:26px 24px;}
.done h3{font-size:19px;margin-bottom:10px;}
.done p{font-size:14.5px;font-weight:300;}
.aside-block{display:flex;flex-direction:column;gap:22px;}
.contact-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:26px 24px;}
.contact-card h3{font-size:17px;margin-bottom:14px;}
.contact-card dl{margin:0;display:flex;flex-direction:column;gap:12px;}
.contact-card dt{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);}
.contact-card dd{margin:0;font-size:16px;}

.site-foot{background:var(--ink);color:var(--on-ink);padding-block:56px 28px;}
.foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.2fr;gap:34px;}
.site-foot h3{font-size:12px;font-weight:600;letter-spacing:var(--ls-over);text-transform:uppercase;color:var(--accent);margin-bottom:16px;}
.site-foot ul{display:flex;flex-direction:column;gap:9px;}
.site-foot a{color:var(--on-ink);text-decoration:none;font-size:14px;font-weight:300;}
.site-foot a:hover{text-decoration:underline;text-decoration-color:var(--accent);}
.site-foot address{font-style:normal;font-size:14px;font-weight:300;color:var(--on-ink-muted);line-height:1.75;}
.foot-logo{font-size:21px;font-weight:600;letter-spacing:.16em;}
.foot-logo i{font-style:normal;color:var(--accent);}
.endorse{margin-top:14px;font-size:13px;font-weight:300;color:var(--on-ink-muted);max-width:34ch;}
.foot-bar{margin-top:44px;padding-top:20px;border-top:1px solid rgba(255,255,255,.16);display:flex;flex-wrap:wrap;gap:8px 20px;font-size:12.5px;color:var(--on-ink-muted);font-weight:300;}
.foot-bar a{font-size:12.5px;color:var(--on-ink-muted);}
.proto{border-top:1px solid var(--line);padding-block:16px;font-size:12.5px;color:var(--muted);font-weight:300;}


/* Hover-Bewegung */
.pain,.svc-card,.ptile,.card,.contact-card,.ref{transition:transform .28s cubic-bezier(.2,.7,.3,1),border-color .28s ease;}
.pain:hover,.svc-card:hover,.ptile:hover,.card:hover{transform:translateY(-5px);border-color:var(--accent);}
.pain:hover .mark{width:44px;transition:width .28s ease;}
.pain .mark{transition:width .28s ease;}
.svc-card:hover .dot{transform:scale(1.35);}
.dot{transition:transform .28s cubic-bezier(.2,.7,.3,1);}
.card:hover .go{transform:translateX(4px);}
.card .go{transition:transform .28s cubic-bezier(.2,.7,.3,1);display:inline-block;}
.trust li{transition:transform .25s ease;}
.trust li:hover{transform:translateX(3px);}
.why-item{transition:transform .28s cubic-bezier(.2,.7,.3,1);}
.why-item:hover{transform:translateY(-4px);}
.btn{transition:background .15s,border-color .15s,color .15s,transform .18s cubic-bezier(.2,.7,.3,1);}
.btn:hover{transform:translateY(-2px);}

/* Ablauf als Prozess */
.steps-wrap{position:relative;}
.steps-track{position:absolute;top:0;left:0;right:0;height:2px;background:var(--line);overflow:hidden;}
.steps-fill{height:100%;width:0;background:var(--accent);transition:width .25s linear;}
.steps{position:relative;}
.step{border-top:0;padding-top:34px;}
.step .num{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;
  border:1px solid var(--line);background:var(--bg);color:var(--muted);font-size:13px;letter-spacing:.06em;
  position:absolute;top:-19px;transition:background .35s ease,color .35s ease,border-color .35s ease,transform .35s ease;}
.step{position:relative;}
.step.is-on .num{background:var(--accent);border-color:var(--accent);color:#3A2A16;transform:scale(1.06);}
.step.is-on h3{color:var(--text);}

/* ---------- Ratgeber ---------- */
.crumbs{font-size:13px;color:var(--muted);font-weight:300;padding-block:22px 0;}
.crumbs a{color:var(--muted);text-decoration:none;}
.crumbs a:hover{color:var(--link);}
.post-head h1{font-size:clamp(30px,4.2vw,46px);margin-bottom:18px;}
.post-meta{font-size:13px;color:var(--muted);font-weight:300;display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:18px;}
.answer{background:var(--bg-soft);border-left:3px solid var(--accent);border-radius:var(--r);padding:22px 24px;margin-block:30px;}
.answer p{font-size:16.5px;}
.answer strong{font-weight:600;}
.toc{border:1px solid var(--line);border-radius:var(--r);padding:20px 22px;margin-block:30px;}
.toc p{font-size:12px;font-weight:600;letter-spacing:var(--ls-over);text-transform:uppercase;color:var(--muted);margin-bottom:12px;}
.toc ol{display:flex;flex-direction:column;gap:8px;counter-reset:toc;}
.toc li{font-size:14.5px;counter-increment:toc;}
.toc li::before{content:counter(toc) ". ";color:var(--muted);}
.prose{max-width:68ch;}
.prose h2{font-size:clamp(23px,2.6vw,29px);margin-top:44px;margin-bottom:14px;}
.prose h3{font-size:19px;margin-top:30px;margin-bottom:10px;}
.prose p{margin-bottom:16px;font-size:16.5px;}
.prose ul{margin-bottom:18px;display:flex;flex-direction:column;gap:9px;}
.prose ul li{padding-left:20px;position:relative;font-size:16px;}
.prose ul li::before{content:"";position:absolute;left:0;top:12px;width:10px;height:1px;background:var(--dusty);}
.prose ol{margin-bottom:18px;display:flex;flex-direction:column;gap:10px;counter-reset:step;}
.prose ol li{padding-left:32px;position:relative;font-size:16px;counter-increment:step;}
.prose ol li::before{content:counter(step);position:absolute;left:0;top:0;width:22px;height:22px;border-radius:50%;background:var(--bg-soft);color:var(--link);font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center;}
.prose table{width:100%;border-collapse:collapse;margin-bottom:20px;font-size:15px;}
.prose th,.prose td{text-align:left;padding:11px 12px;border-bottom:1px solid var(--line);vertical-align:top;}
.prose th{font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);}
.table-scroll{overflow-x:auto;}
.swipe-hint{display:none;}
.callout{border:1px solid var(--line-warm);border-radius:var(--r);padding:20px 22px;margin-block:26px;font-size:15.5px;}
.callout strong{display:block;margin-bottom:6px;}
.post-cta{background:var(--ink);color:var(--on-ink);border-radius:var(--r);padding:32px 30px;margin-block:44px;}
.post-cta h3{color:var(--on-ink);font-size:22px;margin-bottom:10px;}
.post-cta p{color:var(--on-ink-muted);font-weight:300;font-size:15.5px;margin-bottom:20px;max-width:52ch;}
.post-cta .btn--accent{color:#3A2A16;}
.author{display:flex;gap:14px;align-items:flex-start;border-top:1px solid var(--line);padding-top:22px;margin-top:36px;font-size:14px;font-weight:300;color:var(--muted);}
.author strong{color:var(--text);font-weight:500;}
.more{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:26px 24px;display:flex;flex-direction:column;gap:10px;text-decoration:none;color:var(--text);transition:border-color .15s;}
.card:hover{border-color:var(--accent);}
.card .kicker{font-size:11px;font-weight:600;letter-spacing:var(--ls-over);text-transform:uppercase;color:var(--link);}
.card h2,.card h3{font-size:18px;letter-spacing:-.012em;}
.card p{font-size:14.5px;color:var(--muted);font-weight:300;}
.card .go{margin-top:auto;font-size:14px;color:var(--link);font-weight:500;}

/* ---------- Mobile Navigation ---------- */
.burger{display:none;width:44px;height:44px;flex:none;margin-left:6px;padding:0;
  background:transparent;border:1px solid var(--line);border-radius:var(--r);cursor:pointer;
  align-items:center;justify-content:center;flex-direction:column;gap:5px;}
.burger span{display:block;width:19px;height:1.5px;background:var(--text);border-radius:2px;
  transition:transform .28s cubic-bezier(.2,.7,.3,1),opacity .2s ease;}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0;}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}
.mobnav{display:none;border-top:1px solid var(--line);background:var(--bg);}
.mobnav .wrap{display:flex;flex-direction:column;padding-block:8px 20px;
  max-height:calc(100vh - 66px);overflow-y:auto;overscroll-behavior:contain;}
.mobnav a{display:flex;align-items:center;min-height:52px;font-size:16.5px;color:var(--text);
  text-decoration:none;border-bottom:1px solid var(--line);}
.mobnav a:last-of-type{border-bottom:0;}
.mobnav .ext::after{content:"\2197";font-size:12px;margin-left:6px;color:var(--muted);}
.mobnav .mob-cta{justify-content:center;margin-top:14px;min-height:52px;border-bottom:0;}

/* ---------- Fixierte Aktionsleiste (mobil) ---------- */
.mobbar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:60;gap:10px;
  padding:10px 16px calc(10px + env(safe-area-inset-bottom));
  background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(10px);
  border-top:1px solid var(--line);
  transform:translateY(115%);transition:transform .32s cubic-bezier(.2,.7,.3,1);}
.mobbar.is-on{transform:none;}
.mobbar .btn{flex:1 1 auto;min-height:50px;}
.mobbar-tel{flex:none;display:inline-flex;align-items:center;justify-content:center;gap:7px;
  min-height:50px;padding-inline:18px;border:1px solid var(--line);border-radius:var(--r);
  font-size:15px;font-weight:500;color:var(--text);text-decoration:none;background:var(--surface);}

@media (prefers-reduced-motion:reduce){
  *{transition:none !important;animation:none !important;scroll-behavior:auto !important;}
  html.js .reveal{opacity:1;transform:none;}
}

@media (max-width:980px){
  .svc-top,.office,.lead-grid{grid-template-columns:1fr;}
  .grid-3,.steps,.prices,.refs,.more{grid-template-columns:1fr 1fr;}
  .svc,.why-grid{grid-template-columns:1fr 1fr;}
  .foot-grid{grid-template-columns:1fr 1fr;}
  .nav{display:none;}
  .burger{display:inline-flex;}
  .mobnav{display:block;}
  .mobbar{display:flex;}
}

@media (max-width:860px){
  /* Lange deutsche Komposita sauber umbrechen */
  h1,h2,h3,.logo,.foot-logo{overflow-wrap:break-word;hyphens:auto;-webkit-hyphens:auto;}
  .hero h1,.post-head h1,.prose h2,.sec-head h2,.office h2{text-wrap:pretty;}
  /* iOS zoomt bei Feldern unter 16px */
  input,select,textarea{font-size:16px;}
  /* 11px Kleintext ist auf Touch-Geräten zu klein */
  .over{font-size:12.5px;letter-spacing:.14em;}
  .ptile .tag,.card .kicker{font-size:12.5px;letter-spacing:.12em;}
  .hero-note,.form-note{font-size:13px;}
  .foot-bar,.foot-bar a{font-size:13px;}
  .contact-card dt{font-size:13px;}
  .toc p{font-size:13px;}
  .img-cap{font-size:13px;}
}

@media (max-width:640px){
  html{scroll-padding-top:74px;}
  .wrap{padding-inline:18px;}
  .head-in{height:60px;gap:10px;}
  .logo{font-size:19px;}
  .head-cta{display:none;}
  .pad{padding-block:clamp(48px,10vw,64px);}

  .grid-3,.steps,.prices,.refs,.svc,.why-grid,.frow,.foot-grid,.office-imgs,.more{grid-template-columns:1fr;}

  /* Hero kompakter, damit der erste Bildschirm zählt */
  .hero{min-height:auto;padding-block:44px 46px;display:block;}
  .hero .wrap{min-width:0;}
  .hero h1{font-size:clamp(27px,7.6vw,34px);margin-bottom:16px;max-width:none;}
  .hero .lede{font-size:16.5px;}
  .hero-points{grid-template-columns:1fr;gap:9px;margin-top:20px;}
  .hero-points li{font-size:13.5px;}
  .hero-points strong{display:inline;font-size:14.5px;}
  .hero-points strong::after{content:" \00b7";color:var(--accent);}
  .hero-cta{margin-top:22px;gap:10px;}
  .hero-cta .btn{flex:1 1 100%;min-height:52px;}
  .hero-note{font-size:12.5px;margin-top:14px;}
  .scroll-hint{display:none;}

  .trust ul{flex-direction:column;gap:8px;}
  .hero-band img{aspect-ratio:4/3;}
  .office-imgs img{aspect-ratio:4/3;}
  .office-imgs{gap:12px;}

  .steps-track{display:none;}
  .step .num{position:static;margin-bottom:4px;}
  .step{padding-top:0;}

  /* Auf dem Handy zuerst die Aussage, dann die Grafik */
  .svc-top{display:flex;flex-direction:column;}
  .svc-top > *:first-child{order:2;}
  .wheel{max-width:300px;}
  .ptile .amount{font-size:34px;}
  .sec-head{margin-bottom:28px;}
  .after-note{font-size:17px;}

  /* Antippbare Flächen */
  .faq summary{padding-block:18px;min-height:56px;font-size:16px;align-items:center;}
  .site-foot ul a{display:inline-flex;align-items:center;min-height:44px;}
  .logo{display:inline-flex;align-items:center;min-height:44px;}
  .site-foot ul{gap:2px;}
  .contact-card dd a{display:inline-flex;align-items:center;min-height:40px;}
  .consent input{width:22px;height:22px;}
  form{padding:24px 20px;}
  form .btn{min-height:52px;}
  .card,.pain,.svc-card,.ptile{padding:24px 20px;}

  /* Platz für die fixierte Leiste */
  .site-foot{padding-bottom:96px;}
  .proto{padding-bottom:86px;}

  /* Ratgeber */
  .prose p,.prose ul li,.prose ol li{font-size:16px;}
  .answer{padding:18px 18px;}
  .answer p{font-size:16px;}
  .toc{padding:18px 18px;}
  .toc li{font-size:15px;}
  .toc li a{display:inline-flex;align-items:center;min-height:44px;}
  .post-cta{padding:26px 22px;}
  .post-cta .btn{width:100%;min-height:52px;}
  .table-scroll{margin-inline:-18px;padding-inline:18px;}
  .swipe-hint{display:block;font-size:12px;color:var(--muted);font-weight:300;margin-bottom:8px;}
  .prose table{font-size:14px;min-width:420px;}
  .prose th,.prose td{padding:10px;}
}

@media (max-width:380px){
  .hero h1{font-size:26px;}
  .mobbar{padding-inline:12px;gap:8px;}
  .mobbar .btn{font-size:14px;padding-inline:12px;}
  .mobbar-tel{padding-inline:14px;font-size:14px;}
}

/* Touch-Geräte: keine Hover-Sprünge */
@media (hover:none){
  .pain:hover,.svc-card:hover,.ptile:hover,.card:hover,.why-item:hover,.btn:hover,.trust li:hover{transform:none;}
}
