.cb-kalk{background:var(--color-surface);position:relative;overflow:hidden}
.cb-kalk__kopf{text-align:center;max-width:720px;margin:0 auto}
.cb-kalk__titel{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:700;line-height:var(--lh-heading);letter-spacing:var(--ls-tight);color:var(--color-text);margin:0 0 10px}
.cb-kalk__lead{margin:0 0 clamp(22px,3vw,36px)}
/* Mehrschritt-Formular (08.11.2026, Arthur: Schritt fuer Schritt statt scrollen) */
.cb-kalk__wiz{position:relative;z-index:1;max-width:880px;margin:0 auto;padding:clamp(18px,2.6vw,32px)}
.cb-kalk__fortschritt{margin-bottom:clamp(18px,2.4vw,28px)}
.cb-kalk__punkte{list-style:none;margin:0 0 12px;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.cb-kalk__punkte li{display:flex;align-items:center;gap:8px;font-family:var(--font-display);font-size:var(--text-sm);font-weight:600;color:var(--color-text);opacity:.45;transition:opacity .25s}
.cb-kalk__punkte li b{display:inline-grid;place-items:center;width:26px;height:26px;flex:none;border:1px solid var(--color-hairline);font-size:var(--text-xs);transition:background .25s,border-color .25s}
.cb-kalk__punkte li.is-aktiv,.cb-kalk__punkte li.is-fertig{opacity:1}
.cb-kalk__punkte li.is-aktiv b{background:var(--color-accent);border-color:var(--color-accent);color:#fff}
.cb-kalk__punkte li.is-fertig b{border-color:var(--color-accent);color:var(--color-accent)}
@media (max-width:600px){.cb-kalk__punkte li span{display:none}.cb-kalk__punkte li.is-aktiv span{display:inline}}
.cb-kalk__balken{height:3px;background:var(--color-hairline);overflow:hidden}
.cb-kalk__balken span{display:block;height:100%;width:25%;background:var(--color-accent);transition:width .35s ease}
.cb-kalk__step{display:none}
.cb-kalk__step.is-aktiv{display:block;animation:cb-kalk-ein .3s ease}
@keyframes cb-kalk-ein{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.cb-kalk__step.is-aktiv{animation:none}.cb-kalk__balken span{transition:none}}
.cb-kalk__block{border:0;padding:0;margin:0}
.cb-kalk__legend{display:block;font-family:var(--font-display);font-size:var(--text-xl);font-weight:600;color:var(--color-text);margin-bottom:16px;outline:none}
.cb-kalk__legend small{font-family:var(--font-body);font-size:var(--text-xs);font-weight:400;opacity:.6;margin-left:6px}
.cb-kalk__reihe{display:grid;gap:10px}
.cb-kalk__reihe--fahrzeug{grid-template-columns:repeat(auto-fit,minmax(128px,1fr))}
@media (min-width:768px){.cb-kalk__reihe--fahrzeug{grid-template-columns:repeat(5,1fr)}}
.cb-kalk__reihe--umfang{grid-template-columns:1fr}
@media (min-width:768px){.cb-kalk__reihe--umfang{grid-template-columns:1fr 1fr}.cb-kalk__reihe--umfang .cb-kalk__opt:last-child{grid-column:1/-1}}
.cb-kalk__reihe--extras{display:flex;flex-wrap:wrap}
.cb-kalk__opt{position:relative;display:block}
.cb-kalk__reihe--fahrzeug .cb-kalk__opt,.cb-kalk__reihe--fahrzeug .cb-kalk__kachel,.cb-kalk__reihe--umfang .cb-kalk__opt,.cb-kalk__reihe--umfang .cb-kalk__karte{height:100%}
.cb-kalk__input{position:absolute;opacity:0;pointer-events:none}
.cb-kalk__kachel,.cb-kalk__karte,.cb-kalk__pill{display:block;border:1px solid var(--color-hairline);border-radius:var(--radius-card);background:transparent;cursor:pointer;transition:border-color .2s,background .2s,transform .2s;color:var(--color-text)}
.cb-kalk__kachel:hover,.cb-kalk__karte:hover,.cb-kalk__pill:hover{border-color:var(--color-accent);transform:translateY(-1px)}
.cb-kalk__input:checked + .cb-kalk__kachel,.cb-kalk__input:checked + .cb-kalk__karte,.cb-kalk__input:checked + .cb-kalk__pill{border-color:var(--color-accent);background:rgba(236,98,42,.09)}
.cb-kalk__input:focus-visible + .cb-kalk__kachel,.cb-kalk__input:focus-visible + .cb-kalk__karte,.cb-kalk__input:focus-visible + .cb-kalk__pill{outline:2px solid var(--color-accent);outline-offset:2px}
.cb-kalk__kachel{padding:14px 6px;text-align:center}
.cb-kalk__kachel svg{display:block;width:100%;max-width:108px;height:auto;margin:0 auto 10px;fill:none;stroke:var(--color-text);stroke-width:2.4;stroke-linejoin:round;stroke-linecap:round;opacity:.9;transition:opacity .2s}
.cb-kalk__kachel svg .k{transition:stroke .2s}
.cb-kalk__kachel svg .g{fill:rgba(255,255,255,.07);stroke-width:1.6;opacity:.8;transition:fill .2s,stroke .2s}
.cb-kalk__kachel svg .t{stroke-width:1.4;opacity:.5}
.cb-kalk__kachel svg .w{stroke:var(--color-accent);fill:#141215}
.cb-kalk__kachel svg .n{fill:var(--color-accent);stroke:none}
.cb-kalk__input:checked + .cb-kalk__kachel svg{opacity:1}
.cb-kalk__input:checked + .cb-kalk__kachel svg .k{stroke:var(--color-accent)}
.cb-kalk__input:checked + .cb-kalk__kachel svg .g{fill:rgba(236,98,42,.22);stroke:var(--color-accent)}
.cb-kalk__kachel strong{display:block;font-family:var(--font-display);font-weight:600;font-size:var(--text-sm)}
.cb-kalk__kachel i,.cb-kalk__karte i{display:block;font-style:normal;font-size:var(--text-2xs);opacity:.6;margin-top:2px}
.cb-kalk__karte{padding:14px 16px}
.cb-kalk__karte strong{font-family:var(--font-display);font-weight:600;font-size:var(--text-base)}
.cb-kalk__pill{border-radius:var(--radius-pill);padding:12px 18px;font-family:var(--font-display);font-weight:600;font-size:var(--text-sm)}
.cb-kalk__ergebnis{text-align:center;padding:clamp(6px,1.5vw,14px) 0}
.cb-kalk__ergebnis.is-aktiv{display:flex;flex-direction:column;align-items:center;gap:10px}
.cb-kalk__elabel{font-size:var(--text-2xs);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--color-text);opacity:.65;outline:none}
.cb-kalk__preis{font-family:var(--font-display);font-size:clamp(2.2rem,5vw,3.4rem);font-weight:700;line-height:1;color:var(--color-accent);text-shadow:0 6px 40px rgba(236,98,42,.4);white-space:nowrap}
.cb-kalk__ehinweis{font-size:var(--text-base);line-height:var(--lh-normal);color:var(--color-text);margin:0;max-width:46ch}
.cb-kalk__wahl{font-size:var(--text-sm);color:var(--color-text);opacity:.65;margin:0;max-width:56ch}
.cb-kalk__ecta{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px}
.cb-kalk__efuss{font-size:var(--text-2xs);line-height:var(--lh-normal);color:var(--color-text);opacity:.55;margin:0}
.cb-kalk__nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:clamp(18px,2.4vw,26px);padding-top:clamp(14px,2vw,20px);border-top:1px solid var(--color-hairline)}
.cb-kalk__zurueck{all:unset;cursor:pointer;font-family:var(--font-display);font-weight:600;font-size:var(--text-sm);color:var(--color-text);opacity:.75;padding:10px 4px}
.cb-kalk__zurueck:hover{opacity:1;color:var(--color-accent)}
.cb-kalk__zurueck:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}
.cb-kalk__zurueck[hidden]{display:none}
.cb-kalk__weiter{margin-left:auto;border:0;cursor:pointer}
.cb-kalk__weiter[disabled]{opacity:.4;cursor:not-allowed;transform:none}
.cb-kalk__weiter[hidden]{display:none}