/* ══════════════════════════════════════════════════════════════
   SolarTrupp – Stylesheet
   System: 8-px-Raster, Typo-Skala 14/16/18/20/24/32/40/48,
   eine Akzentfarbe (Blau), neutrale Grautöne, Radien 6/10/14 px.
══════════════════════════════════════════════════════════════ */
:root{
  --ink:#0F172A; --ink-2:#1E293B; --ink-3:#475569; --muted:#64748B; --faint:#94A3B8;
  --rule:#E2E8F0; --rule-2:#CBD5E1; --bg:#F8FAFC; --bg-2:#F1F5F9; --surface:#FFFFFF;
  --blue:#1D4ED8; --blue-h:#1E40AF; --blue-bg:#EFF4FF; --blue-line:#BFD3FF;
  --green:#047857; --green-bg:#ECFDF5; --red:#B91C1C; --red-bg:#FEF2F2; --amber:#92400E; --amber-bg:#FFFBEB;
  --dark:#0B1220; --dark-2:#111A2E; --dark-rule:rgba(255,255,255,.1); --dark-text:rgba(255,255,255,.72);
  --r-s:6px; --r:10px; --r-l:14px;
  --shadow-s:0 1px 2px rgba(15,23,42,.06); --shadow:0 6px 24px rgba(15,23,42,.08); --shadow-l:0 20px 50px rgba(15,23,42,.16);
  --font:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --max:1200px; --gutter:clamp(20px,4vw,48px);
  --yl:#F5C518; --yl-dark:#C99B00; --yl-dim:rgba(245,197,24,.12);
}

/* ── Basis ─────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;scroll-padding-top:80px}
body{font-family:var(--font);background:var(--surface);color:var(--ink);font-size:16px;line-height:1.6}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
button,input,select,textarea{font-family:var(--font);font-size:inherit}
h1,h2,h3,h4{font-weight:700;line-height:1.2;letter-spacing:-.015em;color:var(--ink)}
h1{font-size:clamp(2rem,4vw,3rem);letter-spacing:-.02em}
h2{font-size:clamp(1.625rem,2.6vw,2.125rem)}
h3{font-size:1.25rem;font-weight:600}
h4{font-size:1rem;font-weight:600}
p{color:var(--ink-3)}
strong{font-weight:600;color:var(--ink)}
.container{max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}
.container-narrow{max-width:820px}
.ico{width:1.25em;height:1.25em;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;flex:none;vertical-align:-.25em}
.label,.eyebrow{display:block;font-size:.875rem;font-weight:600;color:var(--blue);margin-bottom:8px}
.label-yl{color:var(--blue)}
.yl{color:var(--blue)}
.muted{color:var(--muted)}
.small{font-size:.875rem}
.hp{position:absolute;left:-9999px;top:-9999px;opacity:0;height:0;width:0}
.reveal{opacity:1;transform:none}
.badge,.tag,.neu-note,.chip,.promo-bar,.model-new-badge,.save-pill{display:none}

/* Buttons */
.btn,.btn-solid,.btn-line,.btn-dark,.btn-yl,.btn-ghost,.btn-white{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 20px;border-radius:var(--r-s);font-weight:600;font-size:.9375rem;line-height:1;border:1px solid transparent;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,color .15s}
.btn-solid,.btn-yl,.btn-primary{background:var(--blue);color:#fff;border-color:var(--blue)}
.btn-solid:hover,.btn-yl:hover,.btn-primary:hover{background:var(--blue-h);border-color:var(--blue-h)}
.btn-line,.btn-secondary{background:var(--surface);color:var(--ink);border-color:var(--rule-2)}
.btn-line:hover,.btn-secondary:hover{border-color:var(--ink-3);background:var(--bg)}
.btn-dark{background:var(--ink);color:#fff;border-color:var(--ink)}
.btn-dark:hover{background:var(--ink-2)}
.btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.3)}
.btn-ghost:hover{border-color:#fff}
.btn-white{background:#fff;color:var(--ink);border-color:#fff;width:100%}
.btn-white:hover{background:var(--bg)}
.btn-sm{height:36px;padding:0 14px;font-size:.875rem}
.btn-lg{height:52px;padding:0 26px;font-size:1rem}
.btn-block{width:100%}
button:disabled,.btn:disabled{opacity:.55;cursor:not-allowed}
.btn-row{display:flex;gap:12px;flex-wrap:wrap}
.link{color:var(--blue);font-weight:500}
.link:hover{text-decoration:underline}
.link-arrow{display:inline-flex;align-items:center;gap:6px;font-weight:500;color:var(--blue);font-size:.9375rem}
.link-arrow .ico{width:16px;height:16px;transition:transform .15s}
.link-arrow:hover .ico{transform:translateX(3px)}

/* ── Navigation ────────────────────────── */
nav.site-nav{position:sticky;top:0;z-index:200;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--rule);height:64px}
.nav-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}
.nav-brand{display:flex;align-items:center;flex:none}
.nav-logo{height:28px;width:auto}
.nav-links{display:flex;gap:4px;list-style:none}
.nav-links a{display:inline-flex;align-items:center;height:64px;padding:0 12px;font-size:.9375rem;font-weight:500;color:var(--ink-3);border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap;transition:color .15s}
.nav-links a:hover{color:var(--ink)}
.nav-links a.active{color:var(--ink);border-bottom-color:var(--blue)}
.nav-right{display:flex;align-items:center;gap:10px;flex:none}
.nav-btn{display:inline-flex;align-items:center;height:38px;padding:0 16px;border-radius:var(--r-s);background:var(--ink);color:#fff;font-weight:600;font-size:.875rem}
.nav-btn:hover{background:var(--ink-2)}
.cart-btn{position:relative;display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 12px;border:1px solid var(--rule-2);border-radius:var(--r-s);background:#fff;cursor:pointer;color:var(--ink);font-weight:600;font-size:.875rem}
.cart-btn:hover{border-color:var(--ink-3)}
.cart-btn .ico{width:20px;height:20px}
.cart-count{min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--blue);color:#fff;font-size:.75rem;font-weight:700;display:none;align-items:center;justify-content:center}
.cart-count.on{display:inline-flex}
.nav-hamburger{display:none;width:40px;height:40px;background:none;border:1px solid var(--rule-2);border-radius:var(--r-s);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:5px}
.nav-hamburger span{display:block;width:18px;height:2px;background:var(--ink);border-radius:2px;transition:transform .2s,opacity .2s}
.nav-hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-hamburger.open span:nth-child(2){opacity:0}
.nav-hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-menu{display:none;position:absolute;top:64px;left:0;right:0;background:#fff;border-bottom:1px solid var(--rule);padding:8px var(--gutter) 20px;box-shadow:var(--shadow);max-height:calc(100vh - 64px);overflow-y:auto}
.mobile-menu.open{display:block}
.mobile-menu a{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid var(--rule);font-weight:500;color:var(--ink-2)}
.mobile-menu a:last-child{border-bottom:none}
.mobile-menu .mobile-cta{margin-top:12px;background:var(--blue);color:#fff;justify-content:center;border-radius:var(--r-s);padding:14px;border:none;font-weight:600}
.subnav{position:sticky;top:64px;z-index:150;background:#fff;border-bottom:1px solid var(--rule)}
.subnav-inner{display:flex;gap:4px;overflow-x:auto;padding:6px 0;scrollbar-width:none}
.subnav-inner::-webkit-scrollbar{display:none}
.subnav a{font-size:.875rem;font-weight:500;color:var(--muted);padding:8px 12px;border-radius:var(--r-s);white-space:nowrap}
.subnav a:hover{background:var(--bg);color:var(--ink)}

/* ── Abschnitte ────────────────────────── */
.section{padding:clamp(56px,7vw,88px) 0;border-bottom:1px solid var(--rule)}
.section.alt,.section-alt{background:var(--bg)}
.section.dark{background:var(--dark);color:#fff;border-bottom:none}
.section.dark h2,.section.dark h3{color:#fff}
.section.dark p{color:var(--dark-text)}
.s-head,.section-head{margin-bottom:40px;max-width:720px}
.s-head h2,.section-head h2{margin-bottom:12px}
.s-head p,.section-head p{font-size:1.0625rem;color:var(--ink-3)}
.s-head.center{text-align:center;margin-left:auto;margin-right:auto}
.section-head.row{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;max-width:none}
.page-hero{padding:clamp(40px,5vw,64px) 0 clamp(32px,4vw,48px);border-bottom:1px solid var(--rule);background:var(--bg)}
.page-hero h1{margin:8px 0 12px;max-width:820px}
.page-hero p.lead{font-size:1.0625rem;color:var(--ink-3);max-width:720px}
.page-hero.dark{background:var(--dark);color:#fff;border-bottom:none}
.page-hero.dark h1{color:#fff}
.page-hero.dark p.lead{color:var(--dark-text)}
.crumbs{font-size:.8125rem;color:var(--muted);display:flex;gap:8px;flex-wrap:wrap;margin-bottom:4px}
.crumbs a:hover{color:var(--ink)}
.hero-kpis-sm{display:flex;gap:32px;flex-wrap:wrap;margin-top:24px}
.hero-kpis-sm div strong{display:block;font-size:1.25rem;font-weight:700}
.hero-kpis-sm div span{font-size:.8125rem;color:var(--muted)}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);padding:24px}
.card h3{margin-bottom:8px}
.card p{font-size:.9375rem}

/* ── Startseite: Hero ──────────────────── */
.hero{padding:clamp(48px,6vw,88px) 0;border-bottom:1px solid var(--rule);background:#fff}
.hero-inner{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.hero-h1{margin:0 0 16px;max-width:560px}
.hero-p{font-size:1.125rem;color:var(--ink-3);max-width:520px;margin-bottom:28px}
.hero-ctas{display:flex;gap:12px;flex-wrap:wrap}
.hero-facts{display:flex;gap:28px;flex-wrap:wrap;margin-top:36px;padding-top:24px;border-top:1px solid var(--rule)}
.hero-facts div strong{display:block;font-size:1.25rem;font-weight:700;color:var(--ink)}
.hero-facts div span{font-size:.8125rem;color:var(--muted)}
.hero-media{display:flex;align-items:center;justify-content:center}
.hero-img-main{width:100%;max-width:640px;object-fit:contain}
.hero-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:32px;padding-top:24px;border-top:1px solid var(--rule)}
.kpi-val{font-size:1.5rem;font-weight:700;color:var(--ink)}
.kpi-lbl{font-size:.8125rem;color:var(--muted);margin-top:2px}
.h-anim-1,.h-anim-2,.h-anim-3,.h-anim-4,.h-anim-5,.h-anim-media{animation:none}

/* ── Referenzleiste ────────────────────── */
.trust{padding:20px 0;background:var(--bg);border-bottom:1px solid var(--rule)}
.trust-inner{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.trust-lbl{font-size:.8125rem;font-weight:600;color:var(--muted);white-space:nowrap}
.trust-items{display:flex;flex:1;flex-wrap:wrap;gap:6px 24px;justify-content:space-between}
.trust-item{display:flex;align-items:baseline;gap:8px;padding:6px 0}
.trust-item-name{font-size:.9375rem;font-weight:600;color:var(--ink-2)}
.trust-item-kwp{font-size:.8125rem;color:var(--muted)}

/* ── Modelle ───────────────────────────── */
.models-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.model-card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-l);overflow:hidden;display:flex;flex-direction:column}
.model-img{aspect-ratio:4/3;background:#fff;display:flex;align-items:center;justify-content:center;padding:24px;border-bottom:1px solid var(--rule)}
.model-img img{width:100%;height:100%;object-fit:contain}
.model-body{padding:24px 28px 28px;display:flex;flex-direction:column;flex:1}
.model-kicker{font-size:.875rem;font-weight:500;color:var(--muted);margin-bottom:6px}
.model-body h3{font-size:1.5rem;font-weight:700;margin-bottom:8px}
.model-body>p{font-size:.9375rem;margin-bottom:16px}
.model-specs{list-style:none;border-top:1px solid var(--rule);margin-bottom:20px}
.model-specs li{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid var(--rule);font-size:.9rem}
.model-specs span{color:var(--muted)}
.model-specs strong{font-weight:600;color:var(--ink);text-align:right}
.model-foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.model-price strong{display:block;font-size:1.5rem;font-weight:700;line-height:1.1}
.model-price span{font-size:.8125rem;color:var(--muted)}
.jump-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.jump-card{display:grid;grid-template-columns:140px 1fr;gap:20px;align-items:center;background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);padding:20px}
.jump-card img{width:140px;height:105px;object-fit:contain;background:#fff;border:1px solid var(--rule);border-radius:var(--r-s);padding:4px}
.jump-card h3{margin:2px 0 4px}
.jump-card p{font-size:.9rem;margin-bottom:12px}

/* ── Preise & Finanzierung (Startseite) ── */
.pricing{background:var(--dark);color:#fff;padding:clamp(64px,7vw,96px) 0;border-bottom:none}
.pricing .section-head h2{color:#fff}
.pricing .section-head p{color:var(--dark-text)}
.pricing-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.price-card-big{background:var(--surface);color:var(--ink);border-radius:var(--r-l);padding:32px;display:flex;flex-direction:column;gap:20px}
.price-card-big .pc-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.price-card-big .pc-head h3{font-size:1.375rem;font-weight:700}
.price-card-big .pc-head p{font-size:.9rem;color:var(--muted);margin-top:2px}
.price-card-big .pc-img{width:120px;height:90px;object-fit:contain;flex:none}
.pc-price{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.pc-price strong{font-size:2.75rem;font-weight:700;letter-spacing:-.03em;line-height:1;color:var(--ink)}
.pc-price span{font-size:.875rem;color:var(--muted)}
.pc-finance{display:grid;grid-template-columns:1fr 1fr;gap:12px;background:var(--blue-bg);border:1px solid var(--blue-line);border-radius:var(--r);padding:16px 18px}
.pc-finance div span{display:block;font-size:.8125rem;color:var(--ink-3)}
.pc-finance div strong{display:block;font-size:1.25rem;font-weight:700;color:var(--blue);margin-top:2px}
.pc-finance div strong small{font-size:.8125rem;font-weight:500;color:var(--ink-3)}
.pc-list{list-style:none;display:flex;flex-direction:column;gap:8px;font-size:.9375rem;color:var(--ink-2)}
.pc-list li{display:flex;gap:10px;align-items:flex-start}
.pc-list .ico{color:var(--green);width:18px;height:18px;margin-top:3px}
.pc-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:auto}
.pricing-note{margin-top:24px;font-size:.875rem;color:var(--dark-text);max-width:820px}
.pricing-note a{color:#fff;text-decoration:underline}
.fin-badges{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:32px}
.fin-badge{display:flex;align-items:center;gap:12px;background:var(--dark-2);border:1px solid var(--dark-rule);border-radius:var(--r);padding:14px 18px}
.fin-badge strong{display:block;font-size:1.25rem;color:#fff;line-height:1.1}
.fin-badge span{font-size:.8125rem;color:var(--dark-text)}

/* ── Vergleich ─────────────────────────── */
.comp{padding:clamp(56px,7vw,88px) 0;border-bottom:1px solid var(--rule)}
.scroll-hint{display:none;font-size:.8125rem;color:var(--muted);margin:-24px 0 12px}
.comp-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--r);border:1px solid var(--rule);background:var(--surface)}
.comp-table{width:100%;border-collapse:collapse;min-width:820px;font-size:.9rem}
.comp-table th,.comp-table td{padding:13px 16px;border-bottom:1px solid var(--rule);text-align:left;vertical-align:middle}
.comp-table thead th{font-size:.8125rem;font-weight:600;color:var(--muted);background:var(--bg)}
.comp-table tbody tr:last-child td{border-bottom:none}
.comp-table td:first-child{font-weight:500;color:var(--ink-2)}
.comp-table .hl,.comp-table .hl-yl{background:var(--blue-bg);color:var(--ink);font-weight:600}
.comp-table thead .hl,.comp-table thead .hl-yl{color:var(--blue)}
.comp-table .chk{color:var(--green);font-weight:600}
.comp-table .cx{color:var(--red);font-weight:600}
.price-row td{font-size:.95rem}
.downloads{margin-top:40px}
.downloads-head{font-size:.875rem;font-weight:600;color:var(--muted);margin-bottom:12px}
.downloads-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.dl-card{display:flex;align-items:center;gap:14px;background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);padding:16px 18px;transition:border-color .15s}
.dl-card:hover{border-color:var(--ink-3)}
.dl-icon{width:40px;height:40px;border-radius:var(--r-s);background:var(--bg);color:var(--blue);display:flex;align-items:center;justify-content:center;flex:none}
.dl-icon .ico{width:20px;height:20px}
.dl-title{font-weight:600;font-size:.9375rem}
.dl-sub{font-size:.8125rem;color:var(--muted)}
.dl-cta{margin-left:auto;font-size:.8125rem;font-weight:600;color:var(--blue);white-space:nowrap}

/* ── Vorteile / Features ───────────────── */
.why{padding:clamp(56px,7vw,88px) 0;border-bottom:1px solid var(--rule)}
.why-grid,.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);border-radius:var(--r);overflow:hidden}
.feature-grid.cols-3{grid-template-columns:repeat(3,1fr)}
.why-card,.feature-card{background:var(--surface);padding:28px 24px}
.why-num{font-size:.8125rem;font-weight:600;color:var(--muted);margin-bottom:12px}
.why-icon{width:40px;height:40px;border-radius:var(--r-s);background:var(--blue-bg);color:var(--blue);display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.why-icon .ico{width:20px;height:20px}
.why-card h3,.feature-card h3{font-size:1rem;font-weight:600;margin-bottom:6px}
.why-card p,.feature-card p{font-size:.9rem}
.feature-card .fc-val{font-size:1.75rem;font-weight:700;color:var(--ink);letter-spacing:-.02em;margin-bottom:4px}
.media-text{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-l);overflow:hidden}
.media-text.flip{direction:rtl}
.media-text.flip>*{direction:ltr}
.media-text .mt-img{background:#0d1219;min-height:100%;display:flex;align-items:center;justify-content:center}
.media-text .mt-img img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3}
.media-text .mt-img.light{background:var(--bg)}
.media-text .mt-img.light img{object-fit:contain}
.media-text .mt-text{padding:32px 32px 32px 0}
.media-text.flip .mt-text{padding:32px 0 32px 32px}
.media-text h3{font-size:1.375rem;margin:6px 0 10px}
.media-text p{font-size:.9375rem;margin-bottom:12px}
.bullet-list{list-style:none;display:flex;flex-direction:column;gap:8px}
.bullet-list li{position:relative;padding-left:22px;font-size:.9375rem;color:var(--ink-2)}
.bullet-list li::before{content:"";position:absolute;left:0;top:.55em;width:8px;height:8px;border-radius:50%;background:var(--blue)}

/* ── Split (Bild + Text) ───────────────── */
.split-inner{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.split-img{width:100%;border-radius:var(--r);aspect-ratio:4/3;object-fit:cover;background:var(--bg);border:1px solid var(--rule)}
.split-badges{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.split-badge{border-radius:var(--r-s);overflow:hidden;border:1px solid var(--rule);background:var(--bg)}
.split-badge img{width:100%;aspect-ratio:16/9;object-fit:cover;background:var(--bg)}
.split-text h2{margin:6px 0 16px}
.split-text p{font-size:.9375rem;margin-bottom:24px}
.spec-rows{display:flex;flex-direction:column;border:1px solid var(--rule);border-radius:var(--r);overflow:hidden;margin-bottom:24px}
.spec-row{display:flex;justify-content:space-between;align-items:center;padding:11px 18px;border-bottom:1px solid var(--rule);background:var(--surface);gap:16px}
.spec-row:last-child{border-bottom:none}
.spec-key{font-size:.9rem;color:var(--ink-3);display:flex;align-items:center;gap:10px}
.spec-key .ico{color:var(--blue)}
.spec-val{font-size:.9rem;font-weight:600;color:var(--ink);white-space:nowrap}

/* ── Referenzen ────────────────────────── */
.refs{padding:clamp(56px,7vw,88px) 0;border-bottom:1px solid var(--rule)}
.refs-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.ref-card{border:1px solid var(--rule);border-radius:var(--r);overflow:hidden;background:var(--surface)}
.ref-card>img{width:100%;aspect-ratio:4/3;object-fit:cover}
.ref-body{padding:18px 20px 20px}
.ref-body h3{font-size:1rem;font-weight:600;margin-bottom:10px}
.ref-row{display:flex;justify-content:space-between;font-size:.875rem;padding:7px 0;border-top:1px solid var(--rule)}
.ref-row span{color:var(--muted)}
.ref-row strong{font-weight:600}

/* ── FAQ ───────────────────────────────── */
.faq{padding:clamp(56px,7vw,88px) 0;background:var(--bg);border-bottom:1px solid var(--rule)}
.faq-inner{max-width:820px}
.faq-list{display:flex;flex-direction:column;gap:8px}
.faq-item{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);overflow:hidden}
.faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px;text-align:left;background:none;border:none;padding:16px 20px;font-size:1rem;font-weight:600;color:var(--ink);cursor:pointer}
.faq-icon{width:24px;height:24px;border-radius:50%;border:1px solid var(--rule-2);display:flex;align-items:center;justify-content:center;font-weight:400;color:var(--muted);flex:none;transition:transform .2s}
.faq-item.open .faq-icon{transform:rotate(45deg);color:var(--ink)}
.faq-body{max-height:0;overflow:hidden;transition:max-height .25s ease}
.faq-body-inner{padding:0 20px 18px;font-size:.9375rem;color:var(--ink-3)}

/* ── Formulare ─────────────────────────── */
.field,.dark-field{width:100%;height:44px;font-size:.9375rem;padding:0 14px;border:1px solid var(--rule-2);border-radius:var(--r-s);background:var(--surface);color:var(--ink)}
textarea.field,textarea.dark-field{height:auto;min-height:110px;padding:12px 14px;resize:vertical}
.field:focus,.dark-field:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-bg)}
.field.err,.dark-field.err{border-color:var(--red)}
.field::placeholder,.dark-field::placeholder{color:var(--faint)}
select.field{appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364748B' stroke-width='2'><path d='M6 9l6 6 6-6'/></svg>");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;padding-right:36px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form-grid .full{grid-column:1/3}
.form-label{display:block;font-size:.875rem;font-weight:500;color:var(--ink-2);margin-bottom:6px}
.form-label small{color:var(--muted);font-weight:400}
.form-field{display:flex;flex-direction:column}
.consent{font-size:.8125rem;color:var(--muted);margin-top:10px}
.consent a{text-decoration:underline}
.f-msg{font-size:.875rem;min-height:20px;color:var(--ink-3);margin-top:8px}
.f-msg.ok{color:var(--green)}
.f-msg.bad{color:var(--red)}
.check{display:flex;align-items:flex-start;gap:10px;font-size:.9375rem;cursor:pointer;color:var(--ink-2)}
.check input{margin-top:4px;accent-color:var(--blue);flex:none;width:16px;height:16px}
.check small{display:block;color:var(--muted);font-size:.8125rem}
.finance-check{display:flex;align-items:flex-start;gap:10px;font-size:.9375rem;cursor:pointer;color:var(--ink-2)}
.finance-check input{margin-top:4px;accent-color:var(--blue)}
.finance-check small{display:block;color:var(--muted);font-size:.8125rem}
.finance-note{display:inline-flex;align-items:center;gap:8px;font-size:.875rem;font-weight:500;color:var(--ink-2);margin-top:12px}
.finance-note .ico{color:var(--green);width:16px;height:16px}
.check-list{list-style:none;display:flex;flex-direction:column;gap:8px}
.check-list li{display:flex;gap:10px;align-items:flex-start;font-size:.9375rem;color:var(--ink-2)}
.check-list .ico{color:var(--green);width:18px;height:18px;margin-top:3px}
.dark .check-list li,.cta-band .check-list li,.lp-hero .check-list li,.section.dark .check-list li{color:rgba(255,255,255,.85)}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.contact-form{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-l);padding:28px;display:flex;flex-direction:column;gap:12px}
.contact-form h3{margin-bottom:4px}
.contact-side p{font-size:1rem;margin-bottom:20px}
.contact-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:24px}
.contact-strip div{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);padding:14px 16px;font-size:.9rem}
.contact-strip span{display:block;font-size:.8125rem;color:var(--muted);margin-bottom:2px}
.contact-note{font-size:.875rem;color:var(--muted)}
.contact-note a{color:var(--ink);font-weight:600;text-decoration:underline}
.lead-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.lead-form{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-l);padding:28px;display:flex;flex-direction:column;gap:12px}
.lead-form h3{margin-bottom:2px}
.lead-form>p{font-size:.875rem;color:var(--muted)}
.cta-band{background:var(--dark);color:#fff;padding:clamp(56px,7vw,88px) 0}
.cta-band-inner{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center}
.cta-band h2{color:#fff;margin:6px 0 14px}
.cta-band p{color:var(--dark-text);margin-bottom:20px;max-width:520px}
.cta-band .label{color:#93B4FF}
.cta-form{background:rgba(255,255,255,.05);border:1px solid var(--dark-rule);border-radius:var(--r-l);padding:28px;display:flex;flex-direction:column;gap:10px}
.cta-form h3{color:#fff;margin-bottom:4px}
.cta-form .dark-field{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18);color:#fff}
.cta-form .dark-field::placeholder{color:rgba(255,255,255,.45)}
.cta-form .f-msg{color:var(--dark-text)}
.cta-form .contact-note{color:var(--dark-text)}
.cta-form .contact-note a{color:#fff}
.cta-form .finance-check{color:rgba(255,255,255,.9)}
.cta-form .finance-check small{color:rgba(255,255,255,.55)}
.contact-panel{background:var(--dark);color:#fff;border-radius:var(--r-l);padding:28px;display:flex;flex-direction:column;gap:18px}
.contact-panel-head h3{color:#fff}
.contact-panel-head p{font-size:.9rem;color:var(--dark-text);margin-top:6px}
.contact-fields{display:flex;flex-direction:column;gap:10px}
.contact-panel .dark-field{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18);color:#fff}
.contact-panel .dark-field::placeholder{color:rgba(255,255,255,.45)}
.contact-actions{display:flex;flex-direction:column;gap:8px}
.contact-panel .f-msg,.contact-panel .contact-note{color:var(--dark-text)}
.contact-panel .contact-note a{color:#fff}
.f-summary{background:var(--bg);border:1px solid var(--rule);border-radius:var(--r-s);padding:12px 14px;font-size:.875rem;color:var(--ink-3)}
.f-summary-lbl{font-size:.8125rem;font-weight:600;color:var(--muted);margin-bottom:2px}
.contact-panel .f-summary{background:rgba(255,255,255,.06);border-color:var(--dark-rule);color:var(--dark-text)}

/* ── Konfigurator (Roboter-Seite) ──────── */
.product{display:grid;grid-template-columns:1.05fr 1fr;gap:40px;align-items:start}
.product-media{position:sticky;top:120px}
.gallery-main{aspect-ratio:4/3;border-radius:var(--r-l);overflow:hidden;background:#fff;border:1px solid var(--rule);display:flex;align-items:center;justify-content:center}
.gallery-main img{width:100%;height:100%;object-fit:contain;display:block}
.gallery-link{display:inline-flex;align-items:center;gap:8px;margin-top:12px;font-size:.9rem;font-weight:500;color:var(--ink-3)}
.gallery-link:hover{color:var(--blue)}
.gallery-link .ico{width:16px;height:16px}
.cfg{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-l);padding:28px}
.cfg h2{font-size:1.75rem;margin:4px 0 8px}
.cfg>p{font-size:.9375rem;margin-bottom:16px}
.cfg-price{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;padding:14px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);margin-bottom:16px}
.cfg-price strong{font-size:2rem;font-weight:700;letter-spacing:-.02em;color:var(--ink)}
.cfg-price span{font-size:.8125rem;color:var(--muted)}
.cfg h4{font-size:.875rem;font-weight:600;color:var(--ink-2);margin:18px 0 8px}
.cfg .model-specs{margin-bottom:6px}
.config-opts{display:flex;flex-direction:column;gap:8px}
.config-opts.hidden{display:none}
.config-opt{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--rule);border-radius:var(--r-s);padding:11px 14px;cursor:pointer;transition:border-color .15s,background .15s;position:relative}
.config-opt:hover{background:var(--bg)}
.config-opt input{position:absolute;opacity:0;pointer-events:none}
.config-opt-l{display:flex;align-items:center;gap:12px;font-size:.9375rem;font-weight:500}
.chkbox{width:18px;height:18px;border:1px solid var(--rule-2);border-radius:4px;display:flex;align-items:center;justify-content:center;color:transparent;transition:background .15s,border-color .15s,color .15s;flex:none}
.chkbox .ico{width:12px;height:12px;stroke-width:3}
.config-opt.on{border-color:var(--blue);background:var(--blue-bg)}
.config-opt.on .chkbox{background:var(--blue);border-color:var(--blue);color:#fff}
.config-opt-price{font-size:.9rem;font-weight:600;color:var(--ink-2);white-space:nowrap}
.cfg-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cfg-fin{border:1px solid var(--rule);border-radius:var(--r);padding:14px 16px;margin-top:8px}
.cfg-fin-body{display:none;margin-top:14px;padding-top:14px;border-top:1px solid var(--rule)}
.cfg-fin.on .cfg-fin-body{display:block}
.fin-out{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-top:12px}
.fin-out div{background:var(--bg);border:1px solid var(--rule);border-radius:var(--r-s);padding:10px 12px}
.fin-out span{display:block;font-size:.75rem;color:var(--muted)}
.fin-out strong{display:block;font-size:1.0625rem;font-weight:700;color:var(--ink);margin-top:2px}
.fin-out .hl strong{color:var(--blue)}
.fin-hint{font-size:.8125rem;color:var(--muted);margin-top:8px}
.fin-hint.warn{color:var(--red)}
.cfg-total{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid var(--rule)}
.cfg-total span{font-size:.875rem;color:var(--muted)}
.cfg-total strong{font-size:1.5rem;font-weight:700}
.cfg-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.cfg-actions .btn-solid{flex:1;min-width:200px}
.qty{display:inline-flex;align-items:center;border:1px solid var(--rule-2);border-radius:var(--r-s);overflow:hidden;background:#fff}
.qty button{width:36px;height:40px;border:none;background:var(--bg);cursor:pointer;font-size:1.1rem;color:var(--ink)}
.qty input{width:44px;height:40px;border:none;text-align:center;font-size:.9375rem;font-weight:600;background:#fff}
.qty input:focus{outline:none}
.range{width:100%;accent-color:var(--blue);margin-top:8px}
.range-lbls{display:flex;justify-content:space-between;font-size:.75rem;color:var(--muted)}
.praxis-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.praxis-grid figure{margin:0;border-radius:var(--r);overflow:hidden;background:var(--bg);border:1px solid var(--rule);aspect-ratio:4/3}
.praxis-grid img,.praxis-grid video{width:100%;height:100%;object-fit:cover;display:block;background:#000}
.model-anchor{scroll-margin-top:120px}
.model-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:32px;flex-wrap:wrap}
.model-head h2{font-size:clamp(1.75rem,3vw,2.5rem)}
.model-head p{font-size:1.0625rem;max-width:640px;margin-top:8px}
.sub-block{margin-top:56px}
.sub-block>h3{font-size:1.375rem;margin-bottom:6px}
.sub-block>p{font-size:.9375rem;margin-bottom:20px;max-width:720px}

/* ── Finanzierungsrechner ──────────────── */
.fin-tool{display:grid;grid-template-columns:1.1fr 1fr;gap:24px;align-items:start}
.fin-panel{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-l);padding:28px}
.fin-panel h3{margin-bottom:4px}
.fin-panel>p{font-size:.875rem;color:var(--muted);margin-bottom:20px}
.fin-group{margin-bottom:20px}
.fin-group .form-label{margin-bottom:8px}
.model-pick{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.model-pick label{display:flex;align-items:center;gap:12px;border:1px solid var(--rule);border-radius:var(--r-s);padding:12px 14px;cursor:pointer;font-weight:600;font-size:.9375rem;position:relative}
.model-pick label.on{border-color:var(--blue);background:var(--blue-bg)}
.model-pick input{accent-color:var(--blue)}
.model-pick small{display:block;font-weight:400;color:var(--muted);font-size:.8125rem}
.model-pick img{width:56px;height:42px;object-fit:contain;flex:none}
.fin-inline{display:flex;align-items:center;gap:8px}
.fin-inline .field{max-width:160px;text-align:right}
.fin-inline .unit{font-size:.875rem;color:var(--muted)}
.fin-result{background:var(--dark);color:#fff;border-radius:var(--r-l);padding:28px;position:sticky;top:96px}
.fin-result h3{color:#fff;margin-bottom:4px}
.fin-result>p{font-size:.875rem;color:var(--dark-text);margin-bottom:20px}
.fin-big{background:rgba(255,255,255,.06);border:1px solid var(--dark-rule);border-radius:var(--r);padding:18px 20px;margin-bottom:12px}
.fin-big span{display:block;font-size:.8125rem;color:var(--dark-text)}
.fin-big strong{display:block;font-size:2.25rem;font-weight:700;letter-spacing:-.02em;color:#fff;margin-top:4px;line-height:1.1}
.fin-big em{font-style:normal;font-size:.8125rem;color:var(--dark-text)}
.fin-rows{display:flex;flex-direction:column}
.fin-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:10px 0;border-bottom:1px solid var(--dark-rule);font-size:.9rem}
.fin-row span{color:var(--dark-text)}
.fin-row strong{color:#fff;font-weight:600;white-space:nowrap}
.fin-row.total strong{font-size:1.125rem}
.fin-apr{display:inline-flex;align-items:center;gap:8px;font-size:.8125rem;font-weight:600;padding:6px 10px;border-radius:var(--r-s);background:rgba(255,255,255,.08);color:#fff;margin-bottom:16px}
.fin-apr.zero{background:rgba(16,185,129,.18);color:#6EE7B7}
.fin-result .btn-white{margin-top:16px}
.fin-result .fin-hint{color:var(--dark-text)}
.fin-result .fin-hint.warn{color:#FCA5A5}
.terms-note{font-size:.875rem;color:var(--muted);margin-top:20px;max-width:820px}

/* Amortisationsrechner */
.calc-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}
.calc-panel{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-l);padding:28px}
.calc-panel h3{margin-bottom:4px}
.calc-panel>p{font-size:.875rem;color:var(--muted);margin:0 0 20px}
.calc-group{margin-bottom:20px}
.calc-group h4{font-size:.8125rem;font-weight:600;color:var(--muted);margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid var(--rule)}
.calc-field{margin-bottom:12px}
.calc-field label{display:flex;justify-content:space-between;align-items:center;font-size:.875rem;font-weight:500;color:var(--ink-2);margin-bottom:6px;gap:12px}
.calc-field label small{color:var(--muted);font-weight:400}
.calc-input-row{display:flex;align-items:center;gap:8px}
.calc-input{width:130px;height:40px;font-size:.9375rem;padding:0 12px;border:1px solid var(--rule-2);border-radius:var(--r-s);text-align:right}
.calc-input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-bg)}
.calc-unit{font-size:.8125rem;color:var(--muted);min-width:56px}
.calc-slider{width:100%;margin-top:8px;accent-color:var(--blue)}
.calc-range{display:flex;justify-content:space-between;font-size:.75rem;color:var(--muted)}
.result-panel{background:var(--dark);color:#fff;border-color:var(--dark)}
.result-panel h3{color:#fff}
.result-panel>p{color:var(--dark-text)}
.result-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:11px 0;border-bottom:1px solid var(--dark-rule)}
.result-row span{font-size:.875rem;color:var(--dark-text)}
.result-row span small{display:block;font-size:.75rem;color:rgba(255,255,255,.45)}
.result-row strong{font-size:1.0625rem;font-weight:600;color:#fff;white-space:nowrap}
.result-big{margin-top:16px;background:rgba(255,255,255,.06);border:1px solid var(--dark-rule);border-radius:var(--r);padding:16px 18px}
.result-big span{font-size:.8125rem;color:var(--dark-text)}
.result-big strong{display:block;font-size:1.75rem;font-weight:700;color:#fff;margin:4px 0 2px}
.result-big em{font-style:normal;font-size:.8125rem;color:var(--dark-text)}
.amort-bar{height:6px;border-radius:3px;background:rgba(255,255,255,.12);overflow:hidden;margin-top:10px}
.amort-bar i{display:block;height:100%;background:#60A5FA;border-radius:3px;transition:width .3s}
.bars{margin-top:20px;display:flex;flex-direction:column;gap:10px}
.bar-row{display:grid;grid-template-columns:150px 1fr auto;gap:12px;align-items:center;font-size:.8125rem}
.bar-row span{color:var(--dark-text)}
.bar-track{height:8px;background:rgba(255,255,255,.1);border-radius:4px;overflow:hidden}
.bar-track i{display:block;height:100%;border-radius:4px;transition:width .3s}
.bar-row strong{white-space:nowrap;color:#fff;font-weight:600}

/* ── Warenkorb (Drawer + Seite) ────────── */
.cart-overlay{position:fixed;inset:0;background:rgba(15,23,42,.45);opacity:0;pointer-events:none;transition:opacity .2s;z-index:300}
.cart-overlay.open{opacity:1;pointer-events:auto}
.cart-drawer{position:fixed;top:0;right:0;bottom:0;width:min(440px,100%);background:#fff;z-index:310;transform:translateX(100%);transition:transform .25s;display:flex;flex-direction:column;box-shadow:var(--shadow-l)}
.cart-drawer.open{transform:none}
.cart-head{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;border-bottom:1px solid var(--rule)}
.cart-head h3{font-size:1.125rem}
.cart-close{background:none;border:none;cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--r-s);color:var(--ink)}
.cart-close:hover{background:var(--bg)}
.cart-items{flex:1;overflow-y:auto;padding:8px 24px}
.cart-empty{padding:48px 0;text-align:center;color:var(--muted);font-size:.9375rem}
.cart-item{display:grid;grid-template-columns:64px 1fr auto;gap:14px;padding:14px 0;border-bottom:1px solid var(--rule);align-items:start}
.cart-item img{width:64px;height:56px;object-fit:contain;background:#fff;border-radius:var(--r-s);padding:2px;border:1px solid var(--rule)}
.cart-item-name{font-size:.9375rem;font-weight:600}
.cart-item-sub{font-size:.8125rem;color:var(--muted);margin-top:2px}
.cart-item-right{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.cart-item-price{font-weight:600;font-size:.9375rem;white-space:nowrap}
.cart-remove{background:none;border:none;font-size:.8125rem;color:var(--muted);cursor:pointer;text-decoration:underline}
.cart-foot{padding:16px 24px 24px;border-top:1px solid var(--rule);background:var(--bg)}
.cart-sum{display:flex;justify-content:space-between;font-size:1rem;font-weight:600;margin-bottom:4px}
.cart-note{font-size:.8125rem;color:var(--muted);margin-bottom:14px}
.cart-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:32px;align-items:start}
.cart-list{display:flex;flex-direction:column;gap:12px}
.cart-line{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);padding:18px 20px;display:grid;grid-template-columns:96px 1fr auto;gap:18px;align-items:start}
.cart-line img{width:96px;height:72px;object-fit:contain;background:#fff;border:1px solid var(--rule);border-radius:var(--r-s);padding:4px}
.cart-line h3{font-size:1.0625rem;margin-bottom:4px}
.cart-line .cl-sub{font-size:.875rem;color:var(--muted)}
.cart-line ul{list-style:none;margin-top:8px;font-size:.875rem;color:var(--ink-3);display:flex;flex-direction:column;gap:3px}
.cart-line ul li{display:flex;justify-content:space-between;gap:12px}
.cart-line .cl-fin{margin-top:10px;background:var(--blue-bg);border:1px solid var(--blue-line);border-radius:var(--r-s);padding:10px 12px;font-size:.8125rem;color:var(--ink-2)}
.cart-line .cl-fin strong{color:var(--blue)}
.cart-line .cl-right{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.cart-line .cl-price{font-size:1.125rem;font-weight:700;white-space:nowrap}
.cart-line .cl-actions{display:flex;gap:10px;align-items:center}
.cart-summary{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-l);padding:24px;position:sticky;top:88px}
.cart-summary h3{margin-bottom:12px}
.sum-row{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--rule);font-size:.9375rem}
.sum-row span{color:var(--ink-3)}
.sum-row.total{border-bottom:none;padding-top:12px;font-size:1.0625rem}
.sum-row.total strong{font-size:1.375rem}
.sum-note{font-size:.8125rem;color:var(--muted);margin-top:10px}
.quote-form{margin-top:24px;background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-l);padding:28px}
.quote-form h3{margin-bottom:4px}
.quote-form>p{font-size:.9rem;color:var(--muted);margin-bottom:18px}
.empty-state{background:var(--surface);border:1px dashed var(--rule-2);border-radius:var(--r-l);padding:48px 24px;text-align:center}
.empty-state p{margin-bottom:16px}
.modal-overlay{position:fixed;inset:0;background:rgba(15,23,42,.55);display:none;align-items:center;justify-content:center;padding:20px;z-index:400}
.modal-overlay.open{display:flex}
.modal-box{background:#fff;border-radius:var(--r-l);width:min(560px,100%);max-height:92vh;overflow-y:auto;padding:28px}
.modal-box h3{margin-bottom:4px}
.modal-box>p{font-size:.875rem;color:var(--muted);margin-bottom:16px}
.modal-summary{background:var(--bg);border:1px solid var(--rule);border-radius:var(--r);padding:12px 14px;font-size:.875rem;margin-bottom:16px}
.modal-summary-row{display:flex;justify-content:space-between;gap:12px;padding:4px 0}
.modal-summary-row.total{border-top:1px solid var(--rule);margin-top:6px;padding-top:8px;font-weight:600}
.modal-actions{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}
.modal-actions .btn-solid{flex:1}

/* ── Detailseite (Technik) ─────────────── */
.spec-groups{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.spec-group{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);padding:22px 24px}
.spec-group h3{font-size:1rem;font-weight:600;margin-bottom:10px;display:flex;align-items:center;gap:10px}
.spec-group h3 .ico{color:var(--blue)}
.spec-group dl{display:grid;grid-template-columns:1fr auto;gap:0 16px}
.spec-group dt{font-size:.875rem;color:var(--ink-3);padding:8px 0;border-bottom:1px solid var(--rule)}
.spec-group dd{font-size:.875rem;font-weight:600;padding:8px 0;border-bottom:1px solid var(--rule);text-align:right}
.spec-group dt:last-of-type,.spec-group dd:last-of-type{border-bottom:none}
.cards-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.info-card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);padding:22px 24px}
.info-card .why-icon{margin-bottom:12px}
.info-card h3{font-size:1rem;font-weight:600;margin-bottom:6px}
.info-card p{font-size:.9rem}
.delivery-list{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.delivery-item{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);padding:14px 16px;display:flex;align-items:center;gap:12px}
.delivery-qty{width:40px;height:40px;border-radius:var(--r-s);background:var(--blue-bg);color:var(--blue);font-weight:700;display:flex;align-items:center;justify-content:center;flex:none;font-size:.9rem}
.delivery-item span{font-size:.9rem;font-weight:500}
.table{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);overflow:hidden;font-size:.9rem}
.table th,.table td{padding:12px 16px;border-bottom:1px solid var(--rule);text-align:left;vertical-align:top}
.table thead th{font-size:.8125rem;font-weight:600;color:var(--muted);background:var(--bg)}
.table tbody tr:last-child td{border-bottom:none}
.table td:first-child{font-weight:500;color:var(--ink-2);white-space:nowrap}
.table-wrap{overflow-x:auto;border-radius:var(--r)}
.spec-table{width:100%;border-collapse:collapse;font-size:.9rem;background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);overflow:hidden}
.spec-table th,.spec-table td{padding:11px 14px;border-bottom:1px solid var(--rule);text-align:left;vertical-align:top}
.spec-table th{font-weight:500;color:var(--muted);width:22%}
.spec-table td{font-weight:600;color:var(--ink);width:28%}
.spec-table tr:last-child th,.spec-table tr:last-child td{border-bottom:none}
.notice-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.notice{display:flex;gap:12px;align-items:flex-start;border-radius:var(--r-s);padding:12px 14px;font-size:.875rem}
.notice .ico{width:18px;height:18px;margin-top:2px}
.notice.warn{background:var(--red-bg);color:#7F1D1D;border:1px solid #FECACA}
.notice.info{background:var(--amber-bg);color:#78350F;border:1px solid #FDE68A}
.notice strong{display:block;font-size:.8125rem;margin-bottom:2px;color:inherit}
.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.video-card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);overflow:hidden}
.video-frame{position:relative;aspect-ratio:16/9;background:var(--ink);cursor:pointer;overflow:hidden}
.video-frame img{width:100%;height:100%;object-fit:cover;opacity:.85}
.video-frame .play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.video-frame .play span{width:56px;height:56px;border-radius:50%;background:#fff;color:var(--ink);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow)}
.video-frame .play .ico{width:22px;height:22px;fill:currentColor;stroke:none;margin-left:3px}
.video-body{padding:18px 20px 20px}
.video-body h3{font-size:1rem;font-weight:600;margin:4px 0 6px}
.video-body p{font-size:.9rem;margin-bottom:10px}
.warranty-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.warranty-card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);padding:22px 24px}
.warranty-card .term{font-size:1.375rem;font-weight:700;color:var(--blue);margin-bottom:4px}
.warranty-card h3{font-size:1rem;font-weight:600;margin-bottom:6px}
.warranty-card p{font-size:.9rem}

/* 3D-Viewer */
.viewer-wrap{margin-bottom:8px}
.viewer{position:relative;width:100%;aspect-ratio:16/9;min-height:320px;max-height:640px;border-radius:var(--r-l);overflow:hidden;background:#0b0f17;border:1px solid var(--rule)}
.viewer canvas{position:absolute;inset:0;width:100%!important;height:100%!important;display:block;touch-action:none;cursor:grab}
.viewer canvas:active{cursor:grabbing}
.viewer-fallback{display:none;position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.viewer.no-webgl canvas,.viewer.no-webgl .viewer-controls,.viewer.no-webgl .viewer-loading,.viewer.no-webgl .viewer-hotspots{display:none}
.viewer.no-webgl .viewer-fallback{display:block}
.viewer-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:.875rem;color:rgba(255,255,255,.55);pointer-events:none;transition:opacity .4s}
.viewer.ready .viewer-loading{opacity:0}
.viewer-hud{position:absolute;top:14px;left:14px;pointer-events:none;background:rgba(11,15,23,.7);backdrop-filter:blur(8px);border:1px solid var(--dark-rule);border-radius:var(--r-s);padding:8px 12px}
.viewer-hud-title{font-size:.8125rem;font-weight:600;color:#fff}
.viewer-hud-sub{font-size:.75rem;color:rgba(255,255,255,.65);margin-top:2px;line-height:1.45}
.viewer-controls{position:absolute;bottom:14px;left:14px;right:14px;display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.viewer-controls button{background:rgba(11,15,23,.78);backdrop-filter:blur(8px);color:rgba(255,255,255,.85);border:1px solid var(--dark-rule);border-radius:var(--r-s);padding:7px 12px;font-size:.8125rem;font-weight:500;cursor:pointer}
.viewer-controls button:hover{border-color:rgba(255,255,255,.35)}
.viewer-controls button.active{background:#fff;color:var(--ink);border-color:#fff}
.viewer-controls button[data-drive].active,.viewer-controls button[data-rotate].active{background:rgba(255,255,255,.14);color:#fff;border-color:rgba(255,255,255,.4)}
.viewer-sep{width:1px;height:20px;background:var(--dark-rule);margin:0 4px}
.viewer-hotspots{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.hotspot{position:absolute;width:0;height:0;opacity:0;transition:opacity .3s;will-change:left,top}
.hotspot.on{opacity:1}
.hotspot-dot{position:absolute;left:-5px;top:-5px;width:10px;height:10px;border-radius:50%;background:#fff;box-shadow:0 0 0 4px rgba(255,255,255,.25)}
.hotspot-line{position:absolute;background:rgba(255,255,255,.55)}
.hotspot-lbl{position:absolute;background:rgba(11,15,23,.84);border:1px solid rgba(255,255,255,.25);color:#fff;font-size:.75rem;font-weight:500;padding:4px 8px;border-radius:4px;white-space:nowrap;backdrop-filter:blur(6px)}
.hotspot-lbl em{font-style:normal;font-weight:600}
.hotspot.up .hotspot-lbl{left:0;bottom:30px;transform:translateX(-50%)}
.hotspot.up .hotspot-line{left:-0.5px;bottom:6px;width:1px;height:24px}
.hotspot.down .hotspot-lbl{left:0;top:30px;transform:translateX(-50%)}
.hotspot.down .hotspot-line{left:-0.5px;top:6px;width:1px;height:24px}
.hotspot.left .hotspot-lbl{right:30px;top:0;transform:translateY(-50%)}
.hotspot.left .hotspot-line{right:6px;top:-0.5px;height:1px;width:24px}
.hotspot.right .hotspot-lbl{left:30px;top:0;transform:translateY(-50%)}
.hotspot.right .hotspot-line{left:6px;top:-0.5px;height:1px;width:24px}
.hotspot.angle .hotspot-lbl{font-size:.9375rem;font-weight:700;bottom:-14px}
.hotspot.angle .hotspot-dot,.hotspot.angle .hotspot-line{display:none}
.viewer-note{font-size:.8125rem;color:var(--muted);margin-top:10px;max-width:820px}

/* ── Über uns / Footer ─────────────────── */
.about{padding:clamp(56px,7vw,88px) 0}
.about-inner{display:grid;grid-template-columns:1fr 1.1fr;gap:56px;align-items:center}
.about-img{width:100%;border-radius:var(--r-l);object-fit:cover;aspect-ratio:5/4}
.about-text h2{margin:6px 0 16px}
.about-text p{font-size:.9375rem;margin-bottom:14px}
.press-link{display:inline-flex;align-items:center;gap:10px;margin-top:6px;background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-s);padding:10px 16px;font-size:.875rem;color:var(--ink-2)}
.press-link:hover{border-color:var(--ink-3)}
.press-link .ico{color:var(--blue)}
footer.site-footer{background:var(--dark);color:var(--dark-text);padding:48px 0 40px}
.footer-inner{display:grid;grid-template-columns:1.2fr 1fr auto;gap:32px;align-items:start}
.footer-logo{height:26px;width:auto;filter:brightness(0) invert(1);opacity:.9;margin-bottom:12px}
.footer-brand-sub{font-size:.8125rem;color:rgba(255,255,255,.55);line-height:1.6}
.footer-links{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:.875rem;padding-top:4px}
.footer-links a:hover{color:#fff}
.footer-contact{font-size:.875rem;padding-top:4px;text-align:right}
.footer-contact a{display:block;margin-bottom:6px}
.footer-contact a:hover{color:#fff}

/* ── Shop (Ersatzteile) ────────────────── */
.shop-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:24px}
.shop-filter{display:flex;gap:6px;flex-wrap:wrap}
.shop-filter button{border:1px solid var(--rule-2);background:var(--surface);border-radius:var(--r-s);padding:8px 12px;font-size:.8125rem;font-weight:500;color:var(--ink-3);cursor:pointer}
.shop-filter button.active{background:var(--ink);color:#fff;border-color:var(--ink)}
.shop-note{font-size:.8125rem;color:var(--muted)}
.products-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.product-card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column}
.product-img{aspect-ratio:4/3;background:#fff;display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--rule);overflow:hidden;padding:12px}
.product-img img{width:100%;height:100%;object-fit:contain;display:block}
.product-body{padding:18px 20px 20px;display:flex;flex-direction:column;flex:1;gap:6px}
.product-meta{display:flex;justify-content:space-between;font-size:.75rem;font-weight:500;color:var(--muted)}
.product-name{font-size:1rem;font-weight:600}
.product-desc{font-size:.875rem;color:var(--ink-3);flex:1}
.product-foot{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-top:10px;padding-top:12px;border-top:1px solid var(--rule)}
.model-select{width:100%;height:40px;font-size:.875rem;padding:0 12px;border:1px solid var(--rule-2);border-radius:var(--r-s);background:#fff;color:var(--ink);margin:8px 0 2px}
.model-select.err{border-color:var(--red)}
.cfg-hint{font-size:.8125rem;color:var(--muted);margin-top:6px}
.product-price strong{font-size:1.125rem;font-weight:700;display:block;white-space:nowrap}
.product-price small{font-size:.75rem;color:var(--muted)}
.add-btn{background:var(--blue);color:#fff;border:none;border-radius:var(--r-s);height:40px;padding:0 14px;font-size:.875rem;font-weight:600;cursor:pointer;white-space:nowrap}
.add-btn:hover{background:var(--blue-h)}
.add-btn.added{background:var(--green)}
.add-btn:disabled{background:var(--faint);cursor:not-allowed;opacity:1}
.shop-info{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:32px}
.shop-info>div{display:flex;gap:12px;align-items:flex-start;background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);padding:14px 16px;font-size:.875rem}
.shop-info .ico{color:var(--blue);width:20px;height:20px;margin-top:2px}
.shop-info strong{display:block}

/* ── Regionen / Artikel / Rechtliches ──── */
.country-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.country-card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);padding:24px;display:flex;flex-direction:column;gap:8px;transition:border-color .15s}
.country-card:hover{border-color:var(--ink-3)}
.country-card .abbr{width:40px;height:40px;border-radius:var(--r-s);background:var(--blue-bg);color:var(--blue);font-weight:700;display:flex;align-items:center;justify-content:center}
.country-card h3{font-size:1.25rem;margin-top:4px}
.country-card p{font-size:.9rem}
.country-card .more{margin-top:auto;font-size:.875rem;font-weight:600;color:var(--blue);display:inline-flex;align-items:center;gap:6px;padding-top:8px}
.region-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.region-item{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-s);padding:12px 14px}
.region-item strong{display:block;font-size:.9375rem}
.region-item span{font-size:.8125rem;color:var(--muted)}
a.region-item:hover{border-color:var(--ink-3)}
.city-tags{display:flex;flex-wrap:wrap;gap:8px}
.city-tags span{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-s);padding:6px 12px;font-size:.875rem}
.article{max-width:820px}
.article h2{margin:6px 0 14px}
.article h3{font-size:1.0625rem;margin:24px 0 8px}
.article p{font-size:.9375rem;margin-bottom:12px}
.article ul{padding-left:20px;color:var(--ink-3);font-size:.9375rem;display:flex;flex-direction:column;gap:4px;margin-bottom:12px}
.other-countries{display:flex;gap:10px;flex-wrap:wrap}
.other-countries a{border:1px solid var(--rule-2);border-radius:var(--r-s);padding:10px 16px;font-size:.875rem;font-weight:500;background:var(--surface)}
.other-countries a:hover{border-color:var(--ink-3)}
.legal{padding:clamp(48px,6vw,80px) 0;min-height:60vh}
.legal-inner{max-width:820px}
.legal h1{margin:6px 0 24px}
.legal h2{font-size:1.0625rem;margin:28px 0 8px}
.legal p{font-size:.9375rem}
.legal a{color:var(--blue);font-weight:500}
.legal-back{margin-top:40px}

/* ── Landingpage ───────────────────────── */
.lp-hero{background:var(--dark);color:#fff;padding:clamp(48px,6vw,88px) 0;border-bottom:none}
.lp-hero .hero-h1{color:#fff}
.lp-hero .hero-p{color:var(--dark-text)}
.lp-hero .kpi-val{color:#fff}
.lp-hero .kpi-lbl{color:rgba(255,255,255,.5)}
.lp-hero .hero-kpis{border-color:var(--dark-rule)}
.lp-hero .check-list .ico{color:#6EE7B7}
.lp-hero .hero-img-main{background:#fff;border-radius:var(--r-l);padding:16px}
.lp-sticky{position:fixed;left:0;right:0;bottom:0;z-index:250;background:var(--blue);color:#fff;padding:12px 16px;display:none;justify-content:center;gap:12px;align-items:center;font-weight:600;font-size:.9rem}
.lp-sticky a{color:#fff;text-decoration:underline}
.lp-model{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.lp-model.flip{direction:rtl}
.lp-model.flip>*{direction:ltr}
.lp-model img{width:100%;border-radius:var(--r-l);object-fit:cover;aspect-ratio:4/3;background:#fff;border:1px solid var(--rule)}
.lp-model h2{margin:6px 0 12px}
.lp-model>div>p{font-size:.9375rem;margin-bottom:16px}
.lp-model .price-inline{font-size:1.5rem;font-weight:700;margin:6px 0 16px}
.lp-model .price-inline small{font-size:.8125rem;font-weight:400;color:var(--muted);margin-left:8px}
.price-compare{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:900px}
.price-card{border:1px solid var(--rule);border-radius:var(--r);padding:24px;background:var(--surface)}
.price-card.main{border-color:var(--blue-line);background:var(--blue-bg)}
.price-card span{font-size:.8125rem;font-weight:500;color:var(--muted)}
.price-card strong{display:block;font-size:2rem;font-weight:700;margin:6px 0 2px}
.price-card p{font-size:.875rem}

/* ── Responsiv ─────────────────────────── */
@media (max-width:1100px){
  .nav-links{gap:0}.nav-links a{padding:0 9px;font-size:.9rem}
  .why-grid,.feature-grid,.refs-grid{grid-template-columns:repeat(2,1fr)}
  .delivery-list,.contact-strip,.shop-info,.region-grid,.grid-4{grid-template-columns:repeat(2,1fr)}
  .products-grid,.cards-3,.warranty-grid,.grid-3{grid-template-columns:repeat(2,1fr)}
  .hero-kpis{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:980px){.nav-links,.nav-right .nav-btn{display:none}.nav-hamburger{display:flex}.cart-btn span.cart-lbl{display:none}}
@media (max-width:900px){
  .hero-inner,.models-grid,.split-inner,.about-inner,.calc-grid,.video-grid,.notice-list,.spec-groups,.lead-grid,.cta-band-inner,.price-compare,.jump-grid,.product,.lp-model,.pricing-grid,.fin-tool,.cart-layout,.contact-grid,.grid-2,.media-text,.media-text.flip{grid-template-columns:1fr}
  .lp-model.flip,.media-text.flip{direction:ltr}
  .media-text .mt-text,.media-text.flip .mt-text{padding:24px}
  .jump-card{grid-template-columns:1fr}.jump-card img{width:100%;height:160px}
  .hero-media{order:-1}
  .product-media,.fin-result,.cart-summary{position:static}
  .downloads-grid,.country-grid{grid-template-columns:1fr}
  .scroll-hint{display:block}
  .viewer{aspect-ratio:4/3}
  .viewer-hud{display:none}
  .about-img{order:-1}
  .footer-inner{grid-template-columns:1fr;gap:20px}
  .footer-contact{text-align:left}
  .lp-sticky.show{display:flex}
  .section-head.row{flex-direction:column;align-items:flex-start}
}
@media (max-width:600px){
  .why-grid,.feature-grid,.refs-grid,.products-grid,.cards-3,.warranty-grid,.delivery-list,.contact-strip,.shop-info,.region-grid,.grid-3,.grid-4{grid-template-columns:1fr}
  .hero-kpis{grid-template-columns:1fr 1fr}
  .cfg,.contact-panel,.calc-panel,.lead-form,.cta-form,.fin-panel,.fin-result,.price-card-big,.quote-form,.cart-summary{padding:20px}
  .model-foot{flex-direction:column;align-items:flex-start}
  .viewer-controls button{font-size:.75rem;padding:6px 10px}
  .hotspot-lbl{font-size:.625rem;padding:3px 7px}
  .hotspot.hs-detail{display:none}
  .form-grid,.cfg-row,.fin-out,.pc-finance,.model-pick{grid-template-columns:1fr}
  .form-grid .full{grid-column:auto}
  .bar-row{grid-template-columns:1fr;gap:4px}
  .spec-group dl{grid-template-columns:1fr}
  .spec-group dd{text-align:left;border-bottom:none;padding-top:0}
  .spec-group dt{border-bottom:none;padding-bottom:2px;font-size:.8125rem}
  .cart-line{grid-template-columns:1fr}.cart-line .cl-right{align-items:flex-start;text-align:left}
  .pc-price strong{font-size:2.25rem}
  .spec-table tr{display:grid;grid-template-columns:1fr 1fr}.spec-table th,.spec-table td{width:auto}
}
