/* ELIGEST — Klar & Hell (light, flat solid colors, NO gradients, real images + 3D)
   Space Grotesk + Inter. Weiß / Klarblau / Minze. */
@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Inter:wght@400;500;600;700&display=swap');

:root{
--wei:#ffffff;--dis:#f3f6fb;--dis-2:#e9eff7;--dis-3:#dae3ef;
--blau:#123163;--blau-d:#0d244b;--blau-dk:#0a1f42;--blau-hell:#e9eef6;
--minze:#f2b705;--minze-d:#d49e00;--minze-p:#fdf3d3;
--gelb:#f2b705;--rot:#c8102e;
--tinte:#111a2e;--text:#33405a;--grau:#65728c;--grau-l:#94a0b8;
--linje:#e2e8f2;--linje-2:#eef2f8;
--wei-t:rgba(255,255,255,.9);
--ff-d:'Space Grotesk',system-ui,sans-serif;--ff:'Inter',system-ui,sans-serif;
--r:14px;--r-s:10px;--r-l:20px;--max:1200px;--max-sm:760px;
--sh:0 1px 2px rgba(17,26,46,.05),0 6px 20px rgba(17,26,46,.06);
--sh-md:0 12px 28px rgba(17,26,46,.1),0 24px 56px rgba(17,26,46,.08);
--sh-blau:0 12px 30px rgba(18,49,99,.28);
--ease:cubic-bezier(.4,0,.15,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--ff);color:var(--text);background:var(--wei);line-height:1.65;font-weight:400;font-size:16px;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none;transition:color .18s}
ul{list-style:none}
button{font-family:inherit;cursor:pointer}
:focus-visible{outline:2px solid var(--blau);outline-offset:2px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 36px}
.wrap-sm{max-width:var(--max-sm);margin:0 auto;padding:0 36px}

/* Logo */
.mark{display:inline-flex;align-items:center;gap:.6rem}
.mark-ic{width:38px;height:38px;flex-shrink:0}
.mark-ic svg{width:100%;height:100%;display:block}
.mark-n{font-family:var(--ff-d);font-weight:700;font-size:1.3rem;letter-spacing:-.01em;color:var(--tinte)}
.mark-n span{color:var(--blau)}
.mark-light .mark-n{color:#fff}
.mark-light .mark-n span{color:var(--minze)}

/* ═══ TOPBAR ═══ */
.top{background:var(--blau-dk);color:rgba(255,255,255,.82);font-size:.8rem;padding:.5rem 0}
.top-in{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem}
.top a{color:#fff}
.top a:hover{color:var(--minze)}
.top-r{display:flex;gap:1.5rem;align-items:center}
.top-r span{display:flex;align-items:center;gap:.4rem}

/* ═══ HEADER ═══ */
.head{background:var(--wei);position:sticky;top:0;z-index:900;border-bottom:1px solid var(--linje)}
.head-in{display:flex;align-items:center;justify-content:space-between;height:78px;gap:2rem}
.nav{display:flex;align-items:center;gap:.15rem}
.nav a{font-size:.92rem;font-weight:500;color:var(--text);padding:.5rem .95rem;border-radius:var(--r-s);position:relative;white-space:nowrap}
.nav a:hover{color:var(--blau);background:var(--dis)}
.nav a.akt{color:var(--blau)}
.nav a.akt::after{content:'';position:absolute;bottom:.15rem;left:.95rem;right:.95rem;height:2px;background:var(--rot);border-radius:0}
.nav-dd{position:relative}
.nav-dd>a span{font-size:.6rem;opacity:.6}
.dd{position:absolute;top:calc(100% + 8px);left:0;background:var(--wei);border:1px solid var(--linje);border-radius:var(--r);min-width:250px;padding:.5rem;box-shadow:var(--sh-md);opacity:0;pointer-events:none;transform:translateY(8px);transition:all .2s var(--ease);z-index:200}
.nav-dd:hover .dd{opacity:1;pointer-events:all;transform:translateY(0)}
.dd a{display:block;padding:.62rem .85rem;font-size:.9rem;font-weight:500;color:var(--text);border-radius:var(--r-s)}
.dd a:hover{color:var(--blau);background:var(--dis)}
.dd a::after{display:none!important}
.head-cta{display:flex;align-items:center;gap:.85rem}

/* ═══ BUTTONS (flat solid) ═══ */
.btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--ff);font-size:.92rem;font-weight:600;border:none;cursor:pointer;transition:all .18s var(--ease);white-space:nowrap;border-radius:100px}
.b-blau{background:var(--blau);color:#fff;padding:.78rem 1.7rem}
.b-blau:hover{background:var(--blau-d);transform:translateY(-2px);box-shadow:var(--sh-blau)}
.b-minze{background:var(--minze);color:var(--blau-dk);padding:.78rem 1.7rem}
.b-minze:hover{background:var(--minze-d);color:var(--blau-dk);transform:translateY(-2px)}
.b-line{background:var(--wei);border:1.5px solid var(--dis-3);color:var(--tinte);padding:.72rem 1.6rem}
.b-line:hover{border-color:var(--blau);color:var(--blau);background:var(--dis)}
.b-line-w{background:transparent;border:1.5px solid rgba(255,255,255,.5);color:#fff;padding:.72rem 1.6rem}
.b-line-w:hover{background:#fff;color:var(--blau)}
.b-g{padding:.95rem 2.1rem;font-size:.98rem}
.b-p{padding:.5rem 1.1rem;font-size:.82rem}
.b-full{width:100%;justify-content:center}

.burg{display:none;background:none;border:none;color:var(--tinte);font-size:1.4rem;padding:.3rem}
.mob{display:none;position:fixed;inset:78px 0 0 0;z-index:850;background:var(--wei);flex-direction:column;border-top:1px solid var(--linje);overflow-y:auto}
.mob.akt{display:flex}
.mob>a{padding:1rem 1.5rem;font-size:1rem;font-weight:500;color:var(--text);border-bottom:1px solid var(--linje-2)}
.mob>a:hover{color:var(--blau);background:var(--dis)}
.mob-f{background:var(--blau-dk);padding:1.5rem;margin-top:auto}
.mob-f-l{font-size:.78rem;font-weight:600;color:rgba(255,255,255,.6);margin-bottom:.75rem}
.mob-f a{display:flex;align-items:center;gap:.5rem;color:rgba(255,255,255,.9)!important;font-size:.92rem;padding:.4rem 0!important;border:none!important}

/* ═══ PFLICHT ═══ */
.pflicht{background:var(--blau-hell);border-bottom:1px solid var(--dis-3);padding:.8rem 0}
.pflicht-in{align-items:flex-start;gap:.75rem}
.pflicht-tag{flex-shrink:0;font-family:var(--ff-d);font-size:.62rem;font-weight:700;letter-spacing:.03em;background:var(--blau);color:#fff;padding:.24rem .55rem;border-radius:6px;margin-top:1px}
.pflicht p{font-size:.77rem;color:var(--grau);line-height:1.55}
.pflicht strong{color:var(--blau-dk);font-weight:600}

/* ═══ HERO ═══ */
.hero{padding:70px 0 80px;position:relative;background:var(--dis);overflow:hidden}
.hero-bg{position:absolute;inset:0;z-index:0}
.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center;opacity:.18}
.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.02fr .98fr;gap:4rem;align-items:center}
.hero-badge{display:inline-flex;align-items:center;gap:.55rem;font-size:.82rem;font-weight:600;color:var(--blau);background:var(--blau-hell);padding:.42rem .95rem;border-radius:100px;margin-bottom:1.6rem}
.hero-badge .dot{width:7px;height:7px;border-radius:50%;background:var(--rot)}
.hero h1{font-family:var(--ff-d);font-weight:700;font-size:clamp(2.4rem,5vw,4rem);color:var(--tinte);line-height:1.08;letter-spacing:-.03em;margin-bottom:1.4rem}
.hero h1 span{color:var(--blau)}
.hero-sub{font-size:1.14rem;font-weight:400;color:var(--text);line-height:1.6;max-width:480px;margin-bottom:2rem}
.hero-akt{display:flex;gap:1rem;flex-wrap:wrap;align-items:center;margin-bottom:2.2rem}
.hero-stats{display:flex;gap:2.2rem;flex-wrap:wrap}
.hero-stat .v{font-family:var(--ff-d);font-size:1.7rem;font-weight:700;color:var(--blau);line-height:1}
.hero-stat .l{font-size:.82rem;color:var(--grau);margin-top:.35rem}
/* 3D canvas mount */
.scene3d{position:relative;height:440px;border-radius:var(--r-l);overflow:hidden;background:var(--blau-hell);box-shadow:var(--sh-md)}
.scene3d canvas{display:block;width:100%!important;height:100%!important}
.scene3d-hint{position:absolute;bottom:14px;left:0;right:0;text-align:center;font-size:.76rem;color:var(--blau-d);opacity:.7;pointer-events:none}

/* ═══ SECTIONS ═══ */
.sec{padding:84px 0}
.sec-sm{padding:56px 0}
.s-wei{background:var(--wei)}
.s-dis{background:var(--dis)}
.s-blau{background:var(--blau-dk);color:#fff}
.sec-head{max-width:660px;margin-bottom:3rem}
.sec-head.mid{margin-left:auto;margin-right:auto;text-align:center}
.eyebrow{display:inline-flex;align-items:center;gap:.6rem;font-family:var(--ff-d);font-size:.8rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--rot);margin-bottom:.9rem}
.eyebrow::before{content:'';width:24px;height:2px;background:var(--rot);border-radius:0}
.s-blau .eyebrow{color:var(--minze)}
.sec-head.mid .eyebrow{justify-content:center}
h2.tit{font-family:var(--ff-d);font-weight:700;font-size:clamp(1.9rem,3.6vw,2.8rem);color:var(--tinte);line-height:1.14;letter-spacing:-.025em}
.s-blau h2.tit{color:#fff}
h2.tit span{color:var(--blau)}
.s-blau h2.tit span{color:var(--minze)}
.lead{font-size:1.06rem;font-weight:400;color:var(--grau);line-height:1.6;margin-top:.9rem}
.s-blau .lead{color:rgba(255,255,255,.75)}

/* reveal */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

/* ═══ PRODUKTE (real image cards) ═══ */
.prod-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.prod{display:flex;flex-direction:column;background:var(--wei);border:1px solid var(--linje);border-radius:var(--r-l);overflow:hidden;transition:transform .25s var(--ease),box-shadow .25s,border-color .25s}
.prod:hover{transform:translateY(-6px);box-shadow:var(--sh-md);border-color:var(--dis-3)}
.prod-img{position:relative;height:170px;overflow:hidden;background:var(--dis-2)}
.prod-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.prod:hover .prod-img img{transform:scale(1.06)}
.prod-rate{position:absolute;top:12px;right:12px;font-family:var(--ff-d);font-size:.8rem;font-weight:700;color:#fff;background:var(--rot);padding:.32rem .7rem;border-radius:6px;box-shadow:var(--sh)}
.prod-body{padding:1.6rem 1.7rem;display:flex;flex-direction:column;flex:1}
.prod-n{font-family:var(--ff-d);font-size:1.3rem;font-weight:600;color:var(--tinte);margin-bottom:.55rem}
.prod-d{font-size:.92rem;font-weight:400;color:var(--grau);line-height:1.6;margin-bottom:1.35rem;flex:1}
.prod-foot{display:flex;align-items:center;justify-content:space-between;padding-top:1rem;border-top:1px solid var(--linje-2)}
.prod-sum{font-family:var(--ff-d);font-size:1rem;font-weight:600;color:var(--tinte)}
.prod-link{font-size:.88rem;font-weight:600;color:var(--blau);display:inline-flex;align-items:center;gap:5px}
.prod:hover .prod-link .ch{transform:translateX(4px)}
.prod-link .ch{transition:transform .2s}

/* ═══ ABLAUF ═══ */
.ablauf{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;counter-reset:s}
.ablauf-s{background:var(--wei);border:1px solid var(--linje);border-radius:var(--r-l);padding:1.9rem 1.6rem;position:relative;transition:transform .25s,box-shadow .25s}
.ablauf-s:hover{transform:translateY(-4px);box-shadow:var(--sh)}
.ablauf-s::before{counter-increment:s;content:counter(s,decimal-leading-zero);font-family:var(--ff-d);font-size:1.4rem;font-weight:700;color:#fff;background:var(--blau);width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:1.1rem}
.ablauf-s:nth-child(2)::before{background:var(--minze);color:var(--blau-dk)}
.ablauf-s:nth-child(3)::before{background:var(--blau)}
.ablauf-s:nth-child(4)::before{background:var(--minze);color:var(--blau-dk)}
.ablauf-t{font-family:var(--ff-d);font-size:1.14rem;font-weight:600;color:var(--tinte);margin-bottom:.5rem}
.ablauf-d{font-size:.9rem;font-weight:400;color:var(--grau);line-height:1.6}

/* ═══ BEISPIEL ═══ */
.beisp{background:var(--wei);border:1px solid var(--linje);border-radius:var(--r-l);overflow:hidden}
.beisp-head{background:var(--blau-dk);padding:1.35rem 1.8rem;display:flex;align-items:center;justify-content:space-between}
.beisp-t{font-family:var(--ff-d);font-size:1.1rem;font-weight:600;color:#fff}
.beisp-r{font-family:var(--ff-d);font-size:.7rem;font-weight:700;letter-spacing:.04em;color:var(--blau-dk);background:var(--minze);padding:.28rem .6rem;border-radius:100px}
.beisp-l{display:flex;justify-content:space-between;align-items:baseline;padding:.9rem 1.8rem;border-bottom:1px solid var(--linje-2)}
.beisp-l:last-of-type{border-bottom:none}
.beisp-l.hl{background:var(--blau-hell)}
.beisp-b{font-size:.9rem;color:var(--grau)}
.beisp-v{font-family:var(--ff-d);font-size:1.02rem;font-weight:600;color:var(--tinte)}
.beisp-l.hl .beisp-v{font-size:1.35rem;color:var(--blau)}
.beisp-foot{padding:1.05rem 1.8rem;background:var(--dis);font-size:.75rem;color:var(--grau);line-height:1.55}

/* ═══ RECHNER ═══ */
.rechner{background:var(--wei);border:1px solid var(--linje);border-radius:var(--r-l);overflow:hidden;box-shadow:var(--sh)}
.rechner-head{background:var(--blau);padding:1.5rem 1.9rem}
.rechner-head h3{font-family:var(--ff-d);font-size:1.3rem;font-weight:600;color:#fff}
.rechner-b{padding:1.9rem}
.rechner-e{margin-bottom:1.6rem}
.rechner-e label{display:flex;justify-content:space-between;align-items:baseline;font-size:.88rem;font-weight:500;color:var(--text);margin-bottom:.6rem}
.rechner-v{font-family:var(--ff-d);font-size:1.2rem;font-weight:700;color:var(--blau)}
input[type=range]{width:100%;-webkit-appearance:none;appearance:none;height:6px;border-radius:6px;background:var(--dis-2);cursor:pointer;outline:none}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:var(--blau);border:3px solid #fff;box-shadow:var(--sh);cursor:pointer}
input[type=range]::-moz-range-thumb{width:22px;height:22px;border:3px solid #fff;border-radius:50%;background:var(--blau);box-shadow:var(--sh);cursor:pointer}
.rechner-res{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--linje);border:1px solid var(--linje);border-radius:var(--r);overflow:hidden;margin-top:1.6rem}
.rr{background:var(--dis);padding:1.15rem 1.3rem}
.rr-l{font-size:.82rem;font-weight:400;color:var(--grau);margin-bottom:.3rem}
.rr-v{font-family:var(--ff-d);font-size:1.5rem;font-weight:700;color:var(--tinte)}
.rr.gross{background:var(--blau);grid-column:1/-1}
.rr.gross .rr-l{color:rgba(255,255,255,.8)}
.rr.gross .rr-v{color:#fff}

/* ═══ FAQ ═══ */
.faq-e{border:1px solid var(--linje);border-radius:var(--r);margin-bottom:.8rem;overflow:hidden;background:var(--wei);transition:border-color .2s}
.faq-e.auf{border-color:var(--blau)}
.faq-f{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;cursor:pointer;user-select:none;gap:1.5rem}
.faq-f:hover{background:var(--dis)}
.faq-ft{font-family:var(--ff-d);font-size:1.04rem;font-weight:600;color:var(--tinte);line-height:1.4}
.faq-ik{position:relative;width:20px;height:20px;flex-shrink:0}
.faq-ik::before,.faq-ik::after{content:'';position:absolute;background:var(--blau);transition:transform .26s var(--ease)}
.faq-ik::before{top:50%;left:0;right:0;height:2px;transform:translateY(-50%)}
.faq-ik::after{left:50%;top:0;bottom:0;width:2px;transform:translateX(-50%)}
.faq-e.auf .faq-ik::after{transform:translateX(-50%) scaleY(0)}
.faq-a{display:none;padding:0 1.5rem 1.35rem;font-size:.96rem;font-weight:400;color:var(--text);line-height:1.65;max-width:760px}
.faq-a a{color:var(--blau);text-decoration:underline}
.faq-e.auf .faq-a{display:block}

/* ═══ FORMULAR ═══ */
.form{background:var(--wei);border:1px solid var(--linje);border-radius:var(--r-l);overflow:hidden;box-shadow:var(--sh)}
.form-head{background:var(--blau);padding:1.7rem 2rem}
.form-head h3{font-family:var(--ff-d);font-size:1.4rem;font-weight:600;color:#fff}
.form-head p{font-size:.88rem;font-weight:400;color:rgba(255,255,255,.85);margin-top:.3rem}
.form-b{padding:2rem}
.feld-g{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem}
.feld{display:flex;flex-direction:column;gap:.4rem}
.feld.voll{grid-column:1/-1}
.feld label{font-size:.86rem;font-weight:500;color:var(--text)}
.feld input,.feld select,.feld textarea{width:100%;padding:.8rem .95rem;border:1.5px solid var(--dis-3);border-radius:var(--r-s);font-family:var(--ff);font-size:.95rem;font-weight:400;color:var(--tinte);background:var(--wei);transition:all .16s}
.feld input::placeholder,.feld textarea::placeholder{color:var(--grau-l)}
.feld input:focus,.feld select:focus,.feld textarea:focus{outline:none;border-color:var(--blau);box-shadow:0 0 0 3px var(--blau-hell)}
.feld textarea{resize:vertical;min-height:110px}
.f-teil{font-family:var(--ff-d);font-size:.82rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--blau);padding-bottom:.6rem;border-bottom:2px solid var(--dis-2);margin-bottom:.3rem;display:flex;align-items:center;gap:.55rem}
.f-teil .n{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--minze);color:var(--blau-dk);font-size:.74rem;font-weight:700}
.zust{display:flex;align-items:flex-start;gap:9px;font-size:.88rem;font-weight:400;color:var(--grau);line-height:1.55}
.zust input[type=checkbox]{margin-top:2px;width:16px;height:16px;accent-color:var(--blau);flex-shrink:0}
.zust a{color:var(--blau);text-decoration:underline}

/* ═══ PAGE HEAD (with real image) ═══ */
.phead{padding:0;position:relative;background:var(--blau-dk);overflow:hidden}
.phead-img{position:absolute;inset:0;z-index:0}
.phead-img img{width:100%;height:100%;object-fit:cover;opacity:.28}
.phead-in{position:relative;z-index:1;padding:64px 0}
.brot{display:flex;gap:.5rem;align-items:center;font-size:.85rem;font-weight:400;color:rgba(255,255,255,.6);margin-bottom:1rem;flex-wrap:wrap}
.brot a{color:rgba(255,255,255,.8)}
.brot a:hover{color:var(--minze)}
.brot .s{color:rgba(255,255,255,.4)}
.phead h1{font-family:var(--ff-d);font-weight:700;font-size:clamp(2rem,4.2vw,3.1rem);color:#fff;line-height:1.12;letter-spacing:-.025em}
.phead h1 span{color:var(--minze)}
.phead .ps{font-size:1.04rem;font-weight:400;color:rgba(255,255,255,.8);margin-top:.9rem;max-width:580px}
.pillen{display:flex;gap:.75rem;margin-top:1.8rem;flex-wrap:wrap}
.pille{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:100px;padding:.55rem 1.15rem;backdrop-filter:blur(6px)}
.pille strong{font-family:var(--ff-d);font-size:1rem;font-weight:700;color:#fff;margin-right:.4rem}
.pille span{font-size:.82rem;color:rgba(255,255,255,.7)}

/* ═══ BOXES ═══ */
.box-blau{background:var(--blau-hell);border:1px solid var(--dis-3);border-left:3px solid var(--blau);border-radius:var(--r-s);padding:1rem 1.25rem;font-size:.9rem;font-weight:400;color:var(--text);line-height:1.6}
.box-blau strong{color:var(--blau-dk);font-weight:600}
.box-warn{background:#fff7ed;border:1px solid #fcd9a8;border-left:3px solid var(--gelb);border-radius:var(--r-s);padding:.95rem 1.2rem;font-size:.88rem;font-weight:400;color:#8a5a12;line-height:1.6}
.box-warn strong{color:#6b4410}
.box-dark{background:var(--blau-dk);border-radius:var(--r);padding:1.15rem 1.4rem;font-size:.9rem;font-weight:400;color:rgba(255,255,255,.85);line-height:1.6}
.box-dark strong{color:#fff;font-weight:600}
.box-dark a{color:var(--minze)}

/* ═══ KONTAKT ═══ */
.kl{display:flex;gap:1.1rem;align-items:flex-start;padding:1.35rem 0;border-bottom:1px solid var(--linje)}
.kl:first-child{border-top:1px solid var(--linje)}
.kic{width:46px;height:46px;border-radius:13px;background:var(--blau-hell);display:flex;align-items:center;justify-content:center;font-size:1.05rem;flex-shrink:0;color:var(--blau)}
.kl-l{font-size:.82rem;font-weight:500;color:var(--grau);margin-bottom:.25rem}
.kl-v{font-family:var(--ff-d);font-size:1.08rem;font-weight:600;color:var(--tinte)}
.kl-v a{color:var(--tinte)}
.kl-v a:hover{color:var(--blau)}
.kl-s{font-size:.88rem;font-weight:400;color:var(--grau);margin-top:.15rem}

/* ═══ COOKIES ═══ */
.cookie{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:var(--wei);border-top:1px solid var(--linje);padding:1.15rem 1.5rem;display:none;box-shadow:0 -6px 24px rgba(17,26,46,.1)}
.cookie.akt{display:block}
.cookie-in{max-width:var(--max);margin:0 auto;display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}
.cookie-t{flex:1;font-size:.88rem;font-weight:400;color:var(--text);line-height:1.55;min-width:200px}
.cookie-t a{color:var(--blau);text-decoration:underline}
.cookie-b{display:flex;gap:.7rem;flex-shrink:0}

/* ═══ FOOTER ═══ */
.foot{background:var(--blau-dk);color:rgba(255,255,255,.72)}
.foot-t{padding:60px 0 46px;display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:2.5rem;border-bottom:1px solid rgba(255,255,255,.12)}
.foot-dev{font-size:.94rem;font-weight:400;color:rgba(255,255,255,.78);line-height:1.6;margin:1.1rem 0 1.2rem;max-width:290px}
.foot-k{display:flex;flex-direction:column;gap:.5rem}
.foot-k span{font-size:.88rem;font-weight:400;color:rgba(255,255,255,.7);display:flex;align-items:flex-start;gap:.5rem}
.foot-k a{color:#fff}
.foot-k a:hover{color:var(--minze)}
.foot-kt{font-family:var(--ff-d);font-size:.82rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:#fff;margin-bottom:1.1rem}
.foot-li{display:flex;flex-direction:column;gap:.5rem}
.foot-li a{font-size:.9rem;font-weight:400;color:rgba(255,255,255,.7)}
.foot-li a:hover{color:var(--minze)}
.foot-reg{font-size:.8rem;font-weight:400;line-height:1.75;color:rgba(255,255,255,.6)}
.foot-reg strong{color:#fff;font-weight:600}
.foot-b{padding:1.4rem 0;display:flex;justify-content:space-between;align-items:center;font-size:.82rem;font-weight:400;color:rgba(255,255,255,.55);flex-wrap:wrap;gap:.5rem}
.foot-b a{color:rgba(255,255,255,.7)}
.foot-b a:hover{color:var(--minze)}

/* ═══ SPLIT LAYOUTS (2 col + sidebar) — responsive ═══ */
.split-2{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:start}
.split-2.center{align-items:center}
.split-side{display:grid;grid-template-columns:1fr 330px;gap:3rem;align-items:start}
.sticky-side{position:sticky;top:100px}
.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.cta-split{display:grid;grid-template-columns:1fr auto;gap:2.5rem;align-items:center}
.cta-btns{display:flex;flex-direction:column;gap:.75rem;flex-shrink:0}
@media(max-width:1024px){
.split-2,.split-side{grid-template-columns:1fr}
.sticky-side{position:static;top:auto}
}
@media(max-width:768px){
.cta-split{grid-template-columns:1fr;text-align:center;gap:1.5rem}
.cta-btns{align-items:stretch}
.stat-grid{gap:.8rem}
}
@media(max-width:480px){
.stat-grid{grid-template-columns:1fr}
}

/* ═══ UTILS ═══ */
.tc{text-align:center}
.mt1{margin-top:.5rem}.mt2{margin-top:1rem}.mt3{margin-top:1.5rem}.mt4{margin-top:2rem}.mt5{margin-top:2.5rem}
.mb2{margin-bottom:1rem}.mb3{margin-bottom:1.5rem}
.rule{height:1px;background:var(--linje);border:none;margin:0}
.trust-logos{display:flex;gap:2rem;align-items:center;flex-wrap:wrap;opacity:.7}
.trust-logos span{font-family:var(--ff-d);font-weight:600;color:var(--grau);font-size:.95rem}

/* ═══ RESPONSIVE ═══ */
@media(max-width:1024px){
.hero-grid{grid-template-columns:1fr;gap:2.5rem}
.scene3d{height:340px;order:-1}
.prod-grid{grid-template-columns:1fr 1fr}
.ablauf{grid-template-columns:1fr 1fr}
.foot-t{grid-template-columns:1fr 1fr}
}
@media(max-width:900px){
.nav,.head-cta .b-blau{display:none}
.burg{display:flex}
}
@media(max-width:768px){
.wrap,.wrap-sm{padding:0 20px}
.head-in{height:66px}
.mob{inset:66px 0 0 0}
.hero{padding:44px 0 56px}
.hero h1{font-size:2.3rem}
h2.tit{font-size:1.85rem}
.phead h1{font-size:2rem}
.phead-in{padding:44px 0}
.top-r{display:none}
.feld-g{grid-template-columns:1fr}
.prod-grid{grid-template-columns:1fr}
.ablauf{grid-template-columns:1fr}
.foot-t{grid-template-columns:1fr;gap:2rem}
.rechner-res{grid-template-columns:1fr 1fr}
.hero-stats{gap:1.5rem}
.scene3d{height:300px}
.sec{padding:56px 0}
.sec-sm{padding:40px 0}
.split-side{gap:2rem}
}
@media(max-width:480px){
.hero h1{font-size:2rem}
.form-b,.rechner-b{padding:1.4rem}
.rechner-res{grid-template-columns:1fr}
.pille{padding:.45rem .9rem}
}

/* ═══ PREMIUM LAYER (GSAP-driven) ═══ */
/* reveal: piloté par GSAP ; état initial neutre (JS met opacity via fromTo). Fallback .in visible. */
.reveal.in{opacity:1;transform:none}
/* Barre de progression lecture */
.progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--rot);z-index:1000;transition:width .05s linear}
/* Curseur custom */
.cursor-dot,.cursor-ring{position:fixed;top:0;left:0;border-radius:50%;pointer-events:none;z-index:9998;mix-blend-mode:normal;will-change:transform}
.cursor-dot{width:7px;height:7px;background:var(--rot);margin:-3.5px 0 0 -3.5px}
.cursor-ring{width:34px;height:34px;border:1.5px solid var(--blau);margin:-17px 0 0 -17px;transition:width .25s var(--ease),height .25s var(--ease),margin .25s var(--ease),border-color .25s}
.cursor-ring.big{width:56px;height:56px;margin:-28px 0 0 -28px;border-color:var(--rot)}
@media(pointer:coarse){.cursor-dot,.cursor-ring{display:none}}
/* Objets 3D flottants */
.obj3d{filter:drop-shadow(0 18px 30px rgba(10,31,66,.22));animation:bob 5s ease-in-out infinite}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
.obj3d-2{animation-duration:6.5s;animation-delay:-1.5s}
.obj3d-3{animation-duration:7.5s;animation-delay:-3s}
@media(prefers-reduced-motion:reduce){.obj3d{animation:none}}
/* Hero: scène objets 3D */
.hero-3d{position:relative;height:440px;display:flex;align-items:center;justify-content:center}
.hero-3d .o-main{width:280px;height:280px;object-fit:cover;border-radius:50%;border:6px solid #fff;position:relative;z-index:2}
.hero-3d .o-float{position:absolute;width:96px;height:96px;object-fit:cover;border-radius:50%;border:4px solid #fff;z-index:3}
.hero-3d .o-a{top:8%;right:10%}
.hero-3d .o-b{bottom:6%;left:6%;width:80px;height:80px}
.hero-3d .o-c{top:14%;left:12%;width:66px;height:66px}
.hero-3d-halo{position:absolute;width:340px;height:340px;border-radius:50%;background:var(--blau-hell);z-index:1}
.hero-3d-halo::after{content:'';position:absolute;inset:26px;border-radius:50%;border:2px dashed rgba(18,49,99,.18);animation:spin 26s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.hero-3d-halo::after{animation:none}}
@media(max-width:768px){
.hero-3d{height:280px}
.hero-3d .o-main{width:180px;height:180px}
.hero-3d .o-float{width:76px;height:76px}
.hero-3d .o-b{width:64px;height:64px}
.hero-3d .o-c{width:54px;height:54px}
.hero-3d-halo{width:220px;height:220px}
}
@media(max-width:480px){
.hero-3d{height:240px}
.hero-3d .o-main{width:150px;height:150px;border-width:4px}
.hero-3d .o-float{border-width:3px}
.hero-3d-halo{width:190px;height:190px}
}
/* Objet 3D dans les cartes produit (remplace .prod-img plate) */
.prod-3d{position:relative;height:170px;display:flex;align-items:center;justify-content:center;background:var(--blau-hell);overflow:hidden}
.prod-3d::before{content:'';position:absolute;width:150px;height:150px;border-radius:50%;background:#fff;opacity:.5}
.prod-3d img{width:110px;height:110px;object-fit:contain;position:relative;z-index:1;filter:drop-shadow(0 12px 18px rgba(10,31,66,.2));transition:transform .35s var(--ease)}
.prod:hover .prod-3d img{transform:scale(1.1) rotate(-4deg)}
.prod-3d .prod-rate{z-index:2}
/* Stat avec objet 3D (about) */
.stat3d{display:flex;align-items:center;gap:1rem}
.stat3d img{width:56px;height:56px;object-fit:contain}
/* Section "vertrauen" bande objets */
.obj-row{display:flex;justify-content:center;gap:2.5rem;flex-wrap:wrap;margin-top:1rem}
.obj-row img{width:72px;height:72px;object-fit:contain;filter:drop-shadow(0 10px 16px rgba(10,31,66,.16))}

/* Nouveau logo (inline SVG) */
.brand .logo-svg{height:44px;width:auto;display:block}
.foot .logo-svg{height:46px;width:auto;display:block}
@media(max-width:768px){.brand .logo-svg{height:38px}}
