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

    :root {
      --bg:          oklch(97.5% 0.009 65);
      --bg-tint:     oklch(93.5% 0.014 65);
      --bg-warm:     oklch(96.2% 0.028 60);
      --accent:      oklch(57% 0.162 38);
      --accent-h:    oklch(52% 0.162 38);
      --accent-soft: oklch(95% 0.038 55);
      --text:        oklch(18% 0.022 62);
      --text-mid:    oklch(45% 0.022 62);
      --text-dim:    oklch(62% 0.016 62);
      --border:      oklch(87% 0.018 65);
      --white:       oklch(99.2% 0.004 65);
      --r: 6px;
      --f: 'Plus Jakarta Sans', sans-serif;
    }
    *, *::before, *::after { margin:0; padding:0; box-sizing:border-box }
    html { scroll-behavior:smooth }
    body { font-family:var(--f); color:var(--text); background:var(--bg); line-height:1.6; font-size:16px }
    h1,h2,h3,h4 { font-family:var(--f); font-weight:800; line-height:1.1; color:var(--text) }
    h1 { font-size:clamp(2.4rem,4.5vw,4rem); letter-spacing:-.025em }
    h2 { font-size:clamp(1.8rem,3vw,2.6rem); letter-spacing:-.018em }
    h3 { font-size:1.05rem; font-weight:700 }
    p { line-height:1.8; color:var(--text-mid) }
    a { color:inherit; text-decoration:none }
    .wrap { max-width:1160px; margin:0 auto; padding:0 28px }
    .sp { padding:96px 0 }

    .tag { display:inline-block; font-size:.65rem; font-weight:700; letter-spacing:.18em; text-transform:uppercase; color:var(--accent); margin-bottom:14px }

    .btn { display:inline-flex; align-items:center; gap:8px; padding:13px 26px; border-radius:var(--r); font-family:var(--f); font-weight:700; font-size:.78rem; letter-spacing:.06em; text-transform:uppercase; cursor:pointer; border:1.5px solid transparent; transition:all .18s; white-space:nowrap }
    .btn-primary { background:var(--accent); color:var(--white); border-color:var(--accent) }
    .btn-primary:hover { background:var(--accent-h); box-shadow:0 6px 24px oklch(57% 0.162 38 / .28) }
    .btn-outline { background:transparent; color:var(--text); border-color:var(--border) }
    .btn-outline:hover { border-color:var(--text); background:var(--bg-tint) }
    .btn-outline-accent { background:transparent; color:var(--accent); border-color:var(--accent) }
    .btn-outline-accent:hover { background:var(--accent); color:var(--white) }

    /* NAVBAR — headless (transparent over hero, solid on scroll) */
    .nav { position:fixed; top:0; left:0; right:0; z-index:100; background:transparent; border-bottom:1px solid transparent; transition:background .35s ease, border-color .35s ease, backdrop-filter .35s ease }
    .nav.scrolled { background:oklch(10% 0.016 62 / .94); backdrop-filter:blur(14px); border-bottom-color:oklch(99.2% 0.004 65 / .10) }
    .nav-inner { display:flex; align-items:center; justify-content:space-between; height:68px; gap:32px }
    .nav-logo img { height:38px; width:auto; filter:brightness(0) invert(1) }
    .nav-links { display:flex; align-items:center; gap:28px; list-style:none }
    .nav-links a { font-size:.72rem; font-weight:700; color:oklch(88% 0.006 62); letter-spacing:.07em; text-transform:uppercase; transition:color .15s }
    .nav-links a:hover { color:var(--accent) }
    .nav-right { display:flex; align-items:center; gap:12px }
    .nav-tel { font-weight:700; font-size:.84rem; color:var(--accent) }
    .hbg { display:none; flex-direction:column; gap:5px; cursor:pointer; padding:6px; background:none; border:none }
    .hbg span { display:block; width:22px; height:1.5px; background:#fff; border-radius:2px; transition:all .3s }
    .mob { display:none; background:oklch(10% 0.016 62 / .97); border-top:1px solid oklch(99.2% 0.004 65 / .10); padding:20px 28px 28px; backdrop-filter:blur(14px) }
    .mob.open { display:block }
    .mob ul { list-style:none; display:flex; flex-direction:column; gap:16px; margin-bottom:20px }
    .mob a { font-weight:700; color:oklch(88% 0.006 62); font-size:.88rem; text-transform:uppercase; letter-spacing:.07em }

    /* HERO — Dark Cinematic, full 100vh (nav floats over it) */
    .hero { position:relative; overflow:hidden; display:flex; flex-direction:column; background:oklch(10% 0.016 62); height:100vh; padding-top:68px }
    .hero-vbg { position:absolute; inset:0; z-index:0 }
    .hero-vbg video { width:100%; height:100%; object-fit:cover; display:block }
    .hero-ov1 { position:absolute; inset:0; z-index:1; background:oklch(10% 0.016 62 / .78) }
    .hero-ov2 { position:absolute; inset:0; z-index:2; background:linear-gradient(105deg, oklch(10% 0.016 62 / .93) 0%, oklch(10% 0.016 62 / .52) 52%, oklch(10% 0.016 62 / .15) 100%) }
    .hero-ov3 { position:absolute; inset:0; z-index:3; background:radial-gradient(ellipse 55% 70% at 0% 60%, oklch(57% 0.162 38 / .26) 0%, transparent 60%) }
    /* Upper zone: flex-fills remaining space */
    .hero-upper { position:relative; z-index:10; flex:1; min-height:0; display:flex; align-items:center }
    .hero-upper .wrap { width:100% }
    .hero-text { max-width:600px }
    .hero-stars-row { display:flex; align-items:center; gap:10px; margin-bottom:10px }
    .hero-stars { color:oklch(82% 0.14 80); display:inline-flex; align-items:center; gap:2px }
    .hero-google { font-size:.68rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:oklch(68% 0.008 62) }
    .hero-google a { color:var(--accent); font-weight:800 }
    .hero-rule { width:36px; height:3px; background:var(--accent); margin:0 0 20px }
    .hero h1 { font-size:clamp(2.2rem,3.8vw,3.6rem); line-height:1.04; letter-spacing:-.03em; font-weight:800; color:#fff; margin-bottom:16px }
    .hero h1 em { color:var(--accent); font-style:normal }
    .hero-desc { font-size:.94rem; color:oklch(72% 0.008 62); line-height:1.72; max-width:500px; margin-bottom:24px }
    .hero-ctas { display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-bottom:22px }
    .hero-tertiary { font-size:.74rem; font-weight:700; color:oklch(60% 0.008 62); text-transform:uppercase; letter-spacing:.08em; padding:8px 4px; border-bottom:1.5px solid transparent; transition:all .15s }
    .hero-tertiary:hover { color:var(--accent); border-bottom-color:var(--accent) }
    .btn-wa { background:#25D366; color:#fff; border-color:#25D366 }
    .btn-wa:hover { background:#1FB857; border-color:#1FB857; box-shadow:0 6px 20px rgba(37,211,102,.3) }
    .btn-wa svg { fill:currentColor; stroke:none }
    .hero-gino-pill { display:flex; align-items:center; gap:14px; background:oklch(99.2% 0.004 65 / .08); border:1px solid oklch(99.2% 0.004 65 / .16); border-radius:99px; padding:12px 20px 12px 12px; backdrop-filter:blur(14px); max-width:520px }
    .hero-gino-portrait { width:44px; height:44px; border-radius:50%; object-fit:cover; object-position:center top; flex-shrink:0; border:2px solid var(--accent) }
    .hero-gino-quote { font-size:.82rem; color:#fff; line-height:1.45; font-style:italic; margin-bottom:3px }
    .hero-gino-name { font-size:.66rem; color:oklch(58% 0.008 62); font-weight:600 }
    .hero-gino-name strong { color:oklch(75% 0.008 62); font-weight:700 }
    /* Lower strip: Trust D-style, always at bottom */
    .hero-lower { position:relative; z-index:10; border-top:1px solid oklch(99.2% 0.004 65 / .12); flex-shrink:0 }
    .hero-lower .wrap { display:flex; align-items:stretch }
    .trust-stats { flex:1; display:flex; align-items:center; padding:20px 0 }
    .trust-stat { flex:1; display:flex; flex-direction:column; align-items:center; text-align:center; padding:0 20px; position:relative }
    .trust-stat::after { content:''; position:absolute; right:0; top:10%; bottom:10%; width:1px; background:oklch(99.2% 0.004 65 / .14) }
    .trust-stat:last-child::after { display:none }
    .trust-eyebrow { font-size:.55rem; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:var(--accent); margin-bottom:5px }
    .trust-num { font-size:2rem; font-weight:800; line-height:1; letter-spacing:-.03em; color:#fff; margin-bottom:3px }
    .trust-label { font-size:.7rem; color:oklch(72% 0.008 62); font-weight:600 }
    .trust-sub { font-size:.64rem; color:oklch(52% 0.008 62); margin-top:3px; line-height:1.4 }
    .trust-gino { width:240px; flex-shrink:0; border-left:1px solid oklch(99.2% 0.004 65 / .12); padding:20px 24px; display:flex; flex-direction:column; justify-content:center; background:oklch(99.2% 0.004 65 / .04) }
    .tg-eyebrow { font-size:.54rem; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:var(--accent); margin-bottom:10px }
    .tg-row { display:flex; align-items:center; gap:10px; margin-bottom:10px }
    .tg-portrait { width:38px; height:38px; border-radius:50%; object-fit:cover; object-position:center top; border:2px solid var(--accent); flex-shrink:0 }
    .tg-name { font-size:.8rem; font-weight:800; color:#fff; line-height:1.25 }
    .tg-role { font-size:.6rem; color:oklch(52% 0.008 62) }
    .tg-divider { height:1px; background:oklch(99.2% 0.004 65 / .12); margin-bottom:10px }
    .tg-fact { font-size:.68rem; color:oklch(66% 0.008 62); display:flex; gap:6px; align-items:flex-start; margin-bottom:5px; line-height:1.35 }
    .tg-fact::before { content:''; width:11px; height:11px; flex-shrink:0; margin-top:2px; background-color:var(--accent); -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12l5 5L20 6'/%3E%3C/svg%3E") center/contain no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12l5 5L20 6'/%3E%3C/svg%3E") center/contain no-repeat }
    .tg-cta { display:inline-flex; align-items:center; gap:4px; font-size:.7rem; font-weight:700; color:var(--accent); margin-top:6px; text-decoration:none; transition:color .15s }
    .tg-cta:hover { color:oklch(70% 0.145 38) }

    /* CHAT — Mia KI-Assistentin */
    .chat-section { background:oklch(12% 0.016 62); padding:80px 0 }
    .chat-section-head { text-align:center; margin-bottom:40px }
    .chat-section-head .tag { color:var(--accent) }
    .chat-section-head h2 { color:#fff; margin-top:4px }
    .chat-section-head p { color:oklch(60% 0.008 62); max-width:500px; margin:10px auto 0; font-size:.94rem; line-height:1.7 }
    .chat-widget-wrap { max-width:640px; margin:0 auto; background:oklch(9% 0.012 62); border:1px solid oklch(99.2% 0.004 65 / .09); border-radius:16px; overflow:hidden; box-shadow:0 24px 64px oklch(0% 0 0 / .4) }
    .chat-head { display:flex; align-items:center; gap:13px; padding:15px 20px; background:oklch(11% 0.014 62); border-bottom:1px solid oklch(99.2% 0.004 65 / .08) }
    .chat-av { width:36px; height:36px; border-radius:50%; background:var(--accent); color:#fff; display:flex; align-items:center; justify-content:center; font-weight:800; font-size:.84rem; flex-shrink:0 }
    .chat-av-name { font-size:.84rem; font-weight:700; color:#fff; line-height:1.3 }
    .chat-av-sub { font-size:.64rem; color:oklch(46% 0.008 62); display:flex; align-items:center; gap:5px; margin-top:2px }
    .chat-dot { width:7px; height:7px; border-radius:50%; background:oklch(58% 0.15 142); animation:chatBlink 2.5s ease-in-out infinite }
    @keyframes chatBlink { 0%,100%{opacity:1}50%{opacity:.45} }
    .chat-body { padding:18px; display:flex; flex-direction:column; gap:10px; min-height:320px; max-height:520px; overflow-y:auto; scroll-behavior:smooth }
    .chat-body::-webkit-scrollbar { width:3px }
    .chat-body::-webkit-scrollbar-thumb { background:oklch(99.2% 0.004 65 / .10); border-radius:2px }
    .chat-msg { display:flex; max-width:88% }
    .chat-msg-a { align-self:flex-start }
    .chat-msg-u { align-self:flex-end }
    .chat-bubble-a { background:oklch(15% 0.015 62); border:1px solid oklch(99.2% 0.004 65 / .08); color:oklch(86% 0.005 62); border-radius:12px 12px 12px 3px; padding:10px 14px; font-size:.87rem; line-height:1.65; white-space:pre-wrap }
    .chat-bubble-u { background:var(--accent); color:#fff; border-radius:12px 12px 3px 12px; padding:10px 14px; font-size:.87rem; line-height:1.65 }
    .chat-typing { display:flex; align-items:center; gap:4px; padding:12px 14px; background:oklch(15% 0.015 62); border:1px solid oklch(99.2% 0.004 65 / .08); border-radius:12px 12px 12px 3px; align-self:flex-start; width:52px }
    .chat-typing span { width:6px; height:6px; border-radius:50%; background:oklch(46% 0.008 62); animation:chatTyping .9s ease-in-out infinite }
    .chat-typing span:nth-child(2){animation-delay:.15s}
    .chat-typing span:nth-child(3){animation-delay:.3s}
    @keyframes chatTyping{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
    .chat-starters { display:flex; flex-wrap:wrap; gap:7px; padding:0 18px 14px }
    .chat-starter { background:transparent; border:1px solid oklch(99.2% 0.004 65 / .13); border-radius:99px; padding:7px 13px; font-family:var(--f); font-size:.76rem; font-weight:600; color:oklch(66% 0.008 62); cursor:pointer; transition:all .15s; white-space:nowrap }
    .chat-starter:hover { border-color:var(--accent); color:var(--accent); background:oklch(57% 0.162 38 / .06) }
    .chat-input-row { display:flex; gap:8px; align-items:flex-end; padding:12px 16px; border-top:1px solid oklch(99.2% 0.004 65 / .08); background:oklch(11% 0.014 62) }
    .chat-inp { flex:1; padding:9px 13px; background:oklch(15% 0.015 62); border:1px solid oklch(99.2% 0.004 65 / .10); border-radius:10px; font-family:var(--f); font-size:.87rem; color:oklch(86% 0.005 62); resize:none; outline:none; min-height:38px; max-height:110px; overflow-y:auto; line-height:1.5; transition:border-color .15s }
    .chat-inp:focus { border-color:oklch(57% 0.162 38 / .5) }
    .chat-inp::placeholder { color:oklch(38% 0.008 62) }
    .chat-send { width:38px; height:38px; border-radius:50%; background:var(--accent); border:none; cursor:pointer; display:flex; align-items:center; justify-content:center; flex-shrink:0; transition:all .15s }
    .chat-send:hover:not(:disabled) { background:var(--accent-h); transform:scale(1.06) }
    .chat-send:disabled { background:oklch(24% 0.008 62); cursor:not-allowed }
    .chat-send svg { stroke:#fff; fill:none }
    .chat-foot-note { padding:7px 18px 11px; font-size:.62rem; color:oklch(30% 0.006 62); text-align:center; background:oklch(11% 0.014 62) }
    /* Mia feature strip */
    .mia-feat-strip { display:grid; grid-template-columns:repeat(4,1fr); gap:2px; max-width:760px; margin:0 auto 44px; background:oklch(99.2% 0.004 65 / .06); border-radius:var(--r); overflow:hidden }
    .mia-feat { padding:18px 20px; background:oklch(14% 0.015 62); display:flex; flex-direction:column; gap:4px; transition:background .15s }
    .mia-feat:hover { background:oklch(16% 0.016 62) }
    .mia-feat-icon { margin-bottom:6px; line-height:1; color:var(--accent) }
    .mia-feat-icon svg { display:block; width:22px; height:22px }
    .mia-feat-main { font-size:.84rem; font-weight:700; color:#fff; line-height:1.3 }
    .mia-feat-sub { font-size:.72rem; color:oklch(48% 0.008 62); line-height:1.4 }
    .mia-feat-sub s { color:oklch(38% 0.006 62); text-decoration-color:oklch(38% 0.006 62) }
    @media(max-width:768px){ .mia-feat-strip{grid-template-columns:1fr 1fr} }
    @media(max-width:480px){ .mia-feat-strip{grid-template-columns:1fr} }
    /* Chat FAB */
    .chat-fab { position:fixed; bottom:24px; right:24px; z-index:89; display:flex; align-items:center; gap:9px; padding:11px 18px 11px 14px; background:var(--accent); color:#fff; border:none; border-radius:99px; cursor:pointer; font-family:var(--f); font-size:.8rem; font-weight:700; box-shadow:0 8px 24px oklch(57% 0.162 38 / .38); transition:all .18s; text-decoration:none; animation:fabPulse 12s ease-in-out infinite }
    .chat-fab svg { stroke:#fff; fill:none; width:17px; height:17px; flex-shrink:0 }
    .chat-fab:hover { background:var(--accent-h); transform:translateY(-2px); box-shadow:0 12px 32px oklch(57% 0.162 38 / .52); animation:none }
    @keyframes fabPulse { 0%,78%,100%{box-shadow:0 8px 24px oklch(57% 0.162 38 / .38)} 82%{box-shadow:0 8px 24px oklch(57% 0.162 38 / .38),0 0 0 9px oklch(57% 0.162 38 / .14)} 88%{box-shadow:0 8px 24px oklch(57% 0.162 38 / .38),0 0 0 17px oklch(57% 0.162 38 / .04)} }
    @media(max-width:768px){
      .chat-fab{bottom:80px;right:14px;padding:9px 14px 9px 12px;font-size:.74rem}
      .chat-body{max-height:240px}
    }

    /* LEISTUNGEN — editorial rows */
    .leist { background:var(--white) }
    .leist-head { display:flex; align-items:flex-end; justify-content:space-between; margin-bottom:48px; flex-wrap:wrap; gap:20px }
    .leist-list { display:flex; flex-direction:column }
    .lrow { display:grid; grid-template-columns:56px 1fr; align-items:start; gap:24px; padding:28px 0; border-top:1px solid var(--border); transition:background .15s; padding-right:8px }
    .lrow:last-child { border-bottom:1px solid var(--border) }
    .lrow:hover { background:var(--bg) }
    .lnum { font-size:2.8rem; font-weight:800; color:var(--border); letter-spacing:-.05em; line-height:1; user-select:none; padding-top:4px; transition:color .15s }
    .lrow:hover .lnum { color:var(--accent) }
    .lcontent h3 { font-size:1.05rem; margin-bottom:8px }
    .lcontent p { font-size:.87rem }
    .llink { display:inline-flex; align-items:center; gap:5px; margin-top:10px; font-size:.72rem; font-weight:700; color:var(--accent); text-transform:uppercase; letter-spacing:.1em; transition:gap .15s }
    .llink:hover { gap:10px }

    /* WARUM */
    .warum { background:var(--bg-tint) }
    .warum-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:2px; margin-top:48px; background:var(--border) }
    .warum-item { background:var(--bg-tint); padding:48px 36px }
    .wi-num { font-size:.63rem; font-weight:700; letter-spacing:.2em; text-transform:uppercase; color:var(--accent); margin-bottom:16px; display:block }
    .warum-item h3 { font-size:1.1rem; margin-bottom:12px }
    .warum-item p { font-size:.87rem }

    /* ABLAUF — Was passiert jetzt? */
    .ablauf { background:var(--white) }
    .ablauf-head { text-align:center; margin-bottom:48px }
    .ablauf-head p { max-width:520px; margin:10px auto 0 }
    .ablauf-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:32px; margin-top:8px }
    .ablauf-step { position:relative; padding:32px 28px; background:var(--bg-warm); border:1px solid var(--border); border-radius:var(--r); transition:transform .2s, box-shadow .2s }
    .ablauf-step:hover { transform:translateY(-2px); box-shadow:0 8px 28px oklch(18% 0.022 62 / .08) }
    .ablauf-num { position:absolute; top:-18px; left:28px; width:36px; height:36px; border-radius:50%; background:var(--accent); color:var(--white); display:flex; align-items:center; justify-content:center; font-weight:800; font-size:1rem; box-shadow:0 4px 12px oklch(57% 0.162 38 / .35) }
    .ablauf-step h3 { font-size:1.05rem; margin:8px 0 12px; padding-top:6px }
    .ablauf-step p { font-size:.88rem; line-height:1.7 }
    .ablauf-step .ablauf-detail { display:flex; gap:8px; margin-top:14px; font-size:.74rem; color:var(--text-dim); font-weight:600; letter-spacing:.04em; text-transform:uppercase }
    .ablauf-step .ablauf-detail::before { content:''; width:18px; height:1.5px; background:var(--accent); margin-top:8px; flex-shrink:0 }

    /* GINO */
    .gino { background:var(--white) }
    .gino-inner { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center }
    .gino-photo { position:relative }
    .gino-photo img { width:100%; aspect-ratio:4/5; object-fit:cover; border-radius:var(--r); display:block }
    .gino-badge { position:absolute; bottom:-14px; right:-14px; background:var(--accent); color:var(--white); padding:14px 18px; border-radius:var(--r); box-shadow:0 8px 24px oklch(57% 0.162 38 / .32) }
    .gino-badge strong { display:block; font-size:1.5rem; font-weight:800; line-height:1; letter-spacing:-.03em }
    .gino-badge span { font-size:.64rem; opacity:.9; font-weight:700; text-transform:uppercase; letter-spacing:.1em }
    .gino-text h2 { margin-bottom:20px }
    .gino-text p { margin-bottom:14px; font-size:.91rem; line-height:1.8 }
    .gino-quote { background:var(--bg-warm); padding:22px 24px 22px 36px; border-radius:var(--r); margin:24px 0 30px; font-style:italic; color:var(--text); font-size:.92rem; line-height:1.75; position:relative }
    .gino-quote::before { content:'\201C'; position:absolute; top:-4px; left:14px; font-size:2.8rem; color:var(--accent); line-height:1; font-style:normal; font-weight:800 }

    /* FALLBEISPIELE */
    .fall { background:var(--bg-tint) }
    .fall-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:32px }
    .fcard { background:var(--white); border-radius:var(--r); overflow:hidden; border:1px solid var(--border); transition:box-shadow .2s, transform .2s }
    .fcard:hover { box-shadow:0 8px 32px oklch(18% 0.022 62 / .1); transform:translateY(-2px) }
    .fcard-img { overflow:hidden }
    .fcard img { width:100%; aspect-ratio:16/9; object-fit:cover; display:block; transition:transform .4s }
    .fcard:hover img { transform:scale(1.03) }
    .fcard-body { padding:20px 24px }
    .fbadge { display:inline-block; font-size:.62rem; font-weight:700; padding:3px 8px; border-radius:3px; margin-bottom:10px; text-transform:uppercase; letter-spacing:.1em; color:var(--accent); background:var(--accent-soft) }
    .fsumme { font-size:2rem; font-weight:800; color:var(--text); margin-bottom:4px; letter-spacing:-.04em }
    .fcard-title { font-size:.85rem; font-weight:600; color:var(--text-mid); margin-bottom:10px }
    .fcheck { display:inline-flex; align-items:center; gap:6px; font-size:.72rem; color:var(--text-dim); font-weight:600; letter-spacing:.04em; text-transform:uppercase }
    .fcheck-ok { color:oklch(55% 0.15 142) }

    /* FAQ — Two-column interactive panel */
    .faq { background:var(--bg-tint) }
    .faq-head { text-align:center; margin-bottom:36px }
    .faq-cats { display:flex; gap:8px; justify-content:center; flex-wrap:wrap; margin-bottom:32px }
    .faq-cat-btn { padding:8px 18px; border-radius:999px; border:1.5px solid var(--border); background:var(--white); font-family:var(--f); font-size:.72rem; font-weight:700; color:var(--text-mid); cursor:pointer; transition:all .18s; letter-spacing:.06em; text-transform:uppercase; white-space:nowrap }
    .faq-cat-btn:hover { border-color:var(--accent); color:var(--accent) }
    .faq-cat-btn.active { background:var(--accent); color:var(--white); border-color:var(--accent) }
    .faq-panel-wrap { display:grid; grid-template-columns:5fr 7fr; gap:2px; background:var(--border); border-radius:var(--r); overflow:hidden; box-shadow:0 4px 32px oklch(18% 0.022 62 / .07) }
    .faq-ql { background:var(--white); display:flex; flex-direction:column }
    .faq-qbtn { width:100%; background:none; border:none; border-bottom:1px solid var(--border); padding:20px 24px; text-align:left; font-family:var(--f); font-size:.84rem; font-weight:600; color:var(--text-mid); cursor:pointer; display:grid; grid-template-columns:28px 1fr 10px; gap:10px; align-items:center; transition:all .15s; line-height:1.4 }
    .faq-qbtn:last-child { border-bottom:none }
    .faq-qbtn:hover { background:var(--bg); color:var(--text) }
    .faq-qbtn.active { background:oklch(57% 0.162 38 / .06); color:var(--accent); border-left:3px solid var(--accent); padding-left:21px }
    .faq-qbtn.hidden { display:none }
    .faq-qnum { font-size:.65rem; font-weight:800; color:var(--text-dim); letter-spacing:.06em; transition:color .15s }
    .faq-qbtn.active .faq-qnum { color:var(--accent) }
    .faq-qarrow { width:10px; height:10px; border-right:1.5px solid currentColor; border-top:1.5px solid currentColor; transform:rotate(45deg); opacity:0; transition:opacity .15s; flex-shrink:0; color:var(--accent) }
    .faq-qbtn.active .faq-qarrow { opacity:1 }
    .faq-ac { background:var(--bg-warm); padding:44px 48px; display:flex; flex-direction:column; min-height:420px }
    .faq-answer { display:none; flex-direction:column; height:100%; animation:faqIn .28s ease-out }
    .faq-answer.active { display:flex }
    @keyframes faqIn { from{opacity:0;transform:translateY(8px)} to{opacity:1;transform:none} }
    .faq-a-cat { font-size:.6rem; font-weight:700; letter-spacing:.2em; text-transform:uppercase; color:var(--accent); margin-bottom:10px }
    .faq-a-q { font-size:1.1rem; font-weight:800; color:var(--text); line-height:1.3; letter-spacing:-.02em; margin-bottom:16px; padding-bottom:16px; border-bottom:1px solid var(--border) }
    .faq-a-body { font-size:.9rem; color:var(--text-mid); line-height:1.85; margin-bottom:20px }
    .faq-a-fact { background:var(--accent); color:var(--white); border-radius:var(--r); padding:15px 18px; margin-bottom:24px }
    .faq-a-fact-label { font-size:.58rem; font-weight:700; letter-spacing:.18em; text-transform:uppercase; opacity:.82; margin-bottom:4px }
    .faq-a-fact-val { font-size:.92rem; font-weight:800; line-height:1.4 }
    .faq-a-mia { margin-top:auto; display:flex; align-items:center; gap:14px; padding-top:20px; border-top:1px solid var(--border) }
    .faq-a-mia-text { font-size:.8rem; color:var(--text-dim); line-height:1.5; flex:1 }
    .faq-a-mia-text strong { display:block; color:var(--text); font-size:.84rem; margin-bottom:2px }
    .faq-a-mia-btn { flex-shrink:0; display:inline-flex; align-items:center; gap:6px; padding:9px 16px; background:var(--white); border:1.5px solid var(--border); border-radius:999px; font-family:var(--f); font-size:.74rem; font-weight:700; color:var(--text); text-decoration:none; transition:all .15s; white-space:nowrap }
    .faq-a-mia-btn:hover { border-color:var(--accent); color:var(--accent) }

    /* KONTAKT */
    .kontakt { background:var(--bg-warm) }
    .k-grid { max-width:640px; margin:0 auto }
    .k-card { background:var(--white); border:1.5px solid var(--border); border-radius:var(--r); padding:40px 40px 36px; box-shadow:0 4px 24px oklch(18% 0.022 62 / .04); display:flex; flex-direction:column }
    .k-card-eyebrow { display:block; font-size:.66rem; font-weight:700; letter-spacing:.18em; text-transform:uppercase; color:var(--accent); margin-bottom:8px }
    .k-card h3 { font-size:1.4rem; font-weight:800; margin-bottom:8px; letter-spacing:-.018em }
    .k-card-sub { font-size:.92rem; color:var(--text-mid); line-height:1.7; margin-bottom:28px }
    .k-form { display:flex; flex-direction:column; gap:14px }
    .form-row { display:grid; grid-template-columns:1fr 1fr; gap:12px }
    .fg { display:flex; flex-direction:column; gap:6px }
    .fg label { font-size:.66rem; font-weight:700; color:var(--text-dim); letter-spacing:.12em; text-transform:uppercase }
    .fg input,.fg select,.fg textarea { padding:12px 15px; border:1.5px solid var(--border); border-radius:var(--r); font-family:var(--f); font-size:.88rem; color:var(--text); background:var(--white); transition:border-color .15s; outline:none }
    .fg input:focus,.fg select:focus,.fg textarea:focus { border-color:var(--accent) }
    .fg textarea { resize:vertical; min-height:100px }
    .fcheck2 { display:flex; align-items:flex-start; gap:10px; font-size:.77rem; color:var(--text-dim) }
    .fcheck2 input { margin-top:3px; flex-shrink:0; accent-color:var(--accent); width:14px; height:14px }
    .k-info { display:flex; flex-direction:column }
    .k-list { display:flex; flex-direction:column; gap:18px; margin-bottom:28px }
    .k-item { display:flex; align-items:flex-start; gap:14px }
    .k-icon { width:36px; height:36px; border-radius:var(--r); display:flex; align-items:center; justify-content:center; flex-shrink:0; background:var(--accent-soft) }
    .k-icon svg { width:15px; height:15px; stroke:var(--accent) }
    .k-item-t strong { display:block; font-size:.63rem; font-weight:700; color:var(--text-dim); margin-bottom:3px; text-transform:uppercase; letter-spacing:.1em }
    .k-item-t span,.k-item-t a { font-size:.92rem; color:var(--text); font-weight:500 }
    .k-item-t a:hover { color:var(--accent) }
    .k-zeiten { border-top:1px solid var(--border); padding-top:24px; margin-top:auto }
    .k-zeiten h4 { font-size:.63rem; font-weight:700; margin-bottom:14px; text-transform:uppercase; letter-spacing:.14em; color:var(--text-dim) }
    .zrow { display:flex; justify-content:space-between; font-size:.85rem; padding:8px 0; border-bottom:1px solid var(--border) }
    .zrow:last-child { border-bottom:none }
    .zrow span:first-child { font-weight:700; font-size:.8rem; color:var(--text) }
    .zrow span:last-child { color:var(--text-dim) }
    #form-success { display:none; background:oklch(55% 0.15 142 / .1); border:1.5px solid oklch(55% 0.15 142 / .3); border-radius:var(--r); padding:16px 20px; font-size:.86rem; color:oklch(38% 0.12 142); line-height:1.6 }

    /* UNFALL — Interaktiver Step-Switcher */
    .unfall { background:var(--bg-warm); border-top:1px solid var(--border); border-bottom:1px solid var(--border) }
    .unfall-head { text-align:center; margin-bottom:48px }
    .unfall-head p { max-width:560px; margin:14px auto 0; font-size:1rem }
    .unfall-tabs { display:flex; gap:8px; justify-content:center; flex-wrap:wrap; margin-bottom:48px; padding:0 0 8px }
    .unfall-tab { background:var(--white); border:1.5px solid var(--border); border-radius:999px; padding:11px 20px; font-family:var(--f); font-size:.78rem; font-weight:700; color:var(--text-mid); cursor:pointer; transition:all .2s; display:inline-flex; align-items:center; gap:9px; letter-spacing:.02em; line-height:1 }
    .unfall-tab:hover { color:var(--text); border-color:var(--text); transform:translateY(-1px) }
    .unfall-tab[aria-selected="true"] { background:var(--accent); border-color:var(--accent); color:var(--white); box-shadow:0 8px 24px oklch(57% 0.162 38 / .32); transform:translateY(-1px) }
    .unfall-tab .utab-num { display:inline-flex; align-items:center; justify-content:center; width:22px; height:22px; border-radius:50%; background:oklch(57% 0.162 38 / .12); color:var(--accent); font-size:.72rem; font-weight:800; flex-shrink:0; transition:all .18s }
    .unfall-tab[aria-selected="true"] .utab-num { background:var(--white); color:var(--accent) }
    .unfall-panel { display:none; grid-template-columns:1fr 1fr; gap:32px; align-items:stretch; padding:0 }
    .unfall-panel.active { display:grid; animation:unfallFade .4s ease-out }
    @keyframes unfallFade { from { opacity:0; transform:translateY(10px) } to { opacity:1; transform:none } }
    .unfall-text { background:var(--white); border:1.5px solid var(--border); border-radius:var(--r); padding:44px 44px 36px; display:flex; flex-direction:column; justify-content:center; min-height:440px; box-shadow:0 4px 24px oklch(18% 0.022 62 / .04) }
    .unfall-text h3 { font-size:1.55rem; font-weight:800; margin-bottom:16px; letter-spacing:-.02em; line-height:1.2 }
    .unfall-text .upanel-eyebrow { display:block; font-size:.66rem; font-weight:700; letter-spacing:.18em; text-transform:uppercase; color:var(--accent); margin-bottom:10px }
    .unfall-text p { font-size:.95rem; line-height:1.75; margin-bottom:18px; color:var(--text-mid) }
    .unfall-text ul { list-style:none; padding:0; margin:8px 0 0; display:flex; flex-direction:column; gap:10px }
    .unfall-text li { font-size:.88rem; color:var(--text); display:flex; gap:12px; align-items:flex-start; line-height:1.6 }
    .unfall-text li::before { content:''; width:6px; height:6px; border-radius:50%; background:var(--accent); flex-shrink:0; margin-top:9px }
    .unfall-visual { background:var(--white); border:1.5px solid var(--border); border-radius:var(--r); min-height:440px; display:block; position:relative; overflow:hidden; box-shadow:0 4px 24px oklch(18% 0.022 62 / .04) }
    .unfall-visual img { width:100%; height:100%; object-fit:cover; object-position:center; display:block; position:absolute; inset:0 }
    .unfall-visual::after { content:''; position:absolute; inset:0; background:linear-gradient(to top, oklch(18% 0.022 62 / .25) 0%, transparent 40%); pointer-events:none; z-index:1 }
    .unfall-progress { position:absolute; top:0; left:0; right:0; height:4px; background:oklch(99% 0 0 / .35); z-index:2 }
    .unfall-progress-fill { height:100%; background:var(--accent); transition:width .4s ease; box-shadow:0 1px 6px oklch(57% 0.162 38 / .5) }
    .unfall-cta { margin-top:24px; padding:20px 22px; background:var(--bg-warm); border:1.5px solid var(--accent); border-radius:var(--r); display:flex; gap:14px; align-items:center; justify-content:space-between; flex-wrap:wrap }
    .unfall-cta-text { font-size:.92rem; color:var(--text); font-weight:600; line-height:1.4 }
    .unfall-cta-text strong { color:var(--accent) }
    .unfall-disclaimer { margin-top:32px; font-size:.72rem; color:var(--text-dim); text-align:center; font-style:italic; line-height:1.6; max-width:600px; margin-left:auto; margin-right:auto }

    /* FAQ mobile */
    @media(max-width:768px){
      .faq-panel-wrap{grid-template-columns:1fr}
      .faq-ac{padding:32px 28px;min-height:auto}
      .faq-qbtn{padding:16px 18px}
    }

    /* SCROLL-REVEAL — A2 + A4/A6 Stagger (mit prefers-reduced-motion-Fallback) */
    .reveal { opacity:0; transform:translateY(16px); transition:opacity .55s ease-out, transform .55s ease-out }
    .reveal.is-visible { opacity:1; transform:none }
    .reveal-stagger > * { opacity:0; transform:translateY(12px); transition:opacity .45s ease-out, transform .45s ease-out }
    .reveal-stagger.is-visible > *:nth-child(1) { opacity:1; transform:none; transition-delay:0ms }
    .reveal-stagger.is-visible > *:nth-child(2) { opacity:1; transform:none; transition-delay:60ms }
    .reveal-stagger.is-visible > *:nth-child(3) { opacity:1; transform:none; transition-delay:120ms }
    .reveal-stagger.is-visible > *:nth-child(4) { opacity:1; transform:none; transition-delay:180ms }
    .reveal-stagger.is-visible > *:nth-child(5) { opacity:1; transform:none; transition-delay:240ms }
    .reveal-stagger.is-visible > *:nth-child(6) { opacity:1; transform:none; transition-delay:300ms }
    @media (prefers-reduced-motion: reduce) {
      .reveal, .reveal-stagger > * { opacity:1 !important; transform:none !important; transition:none !important }
      .unfall-panel.active { animation:none }
    }

    /* MOBILE STICKY BOTTOM-BAR */
    .mob-bar { display:none; position:fixed; bottom:0; left:0; right:0; background:var(--white); border-top:1.5px solid var(--border); padding:8px; gap:6px; z-index:95; box-shadow:0 -4px 16px oklch(18% 0.022 62 / .08) }
    .mob-bar a { flex:1; padding:11px 6px; border-radius:var(--r); font-size:.7rem; font-weight:700; text-align:center; display:flex; flex-direction:column; align-items:center; gap:3px; text-transform:uppercase; letter-spacing:.04em; line-height:1; transition:opacity .15s }
    .mob-bar a svg { width:18px; height:18px }
    .mob-bar-tel { background:var(--accent); color:var(--white) !important; flex:1.4 !important }
    .mob-bar-wa { background:var(--bg-tint); color:#25D366 !important; border:1px solid var(--border) }
    .mob-bar-wa svg { fill:currentColor }
    .mob-bar-form { background:var(--bg-tint); color:var(--text-mid) !important; border:1px solid var(--border) }
    .mob-bar a:active { opacity:.8 }

    /* SKIP-LINK A11y */
    .skip-link { position:absolute; top:-40px; left:8px; background:var(--accent); color:var(--white); padding:10px 16px; border-radius:var(--r); font-weight:700; font-size:.82rem; text-decoration:none; z-index:200; transition:top .15s }
    .skip-link:focus { top:8px }

    /* CTA-BLOCK (vor Footer, dunkel, hervorgehoben) */
    .cta-block { background:oklch(16% 0.018 62); padding:88px 0 96px; border-top:1px solid oklch(28% 0.014 62) }
    .cta-inner { display:grid; grid-template-columns:1.4fr auto; gap:48px; align-items:center }
    .cta-eyebrow { display:inline-block; font-size:.66rem; font-weight:700; letter-spacing:.22em; text-transform:uppercase; color:var(--accent); margin-bottom:18px }
    .cta-h { font-size:clamp(1.9rem,3.2vw,2.8rem); font-weight:800; line-height:1.18; color:oklch(96% 0.008 65); letter-spacing:-.02em; margin-bottom:18px; max-width:680px }
    .cta-h em { color:var(--accent); font-style:italic; font-weight:800; font-family:'Plus Jakarta Sans',serif }
    .cta-sub { font-size:.95rem; color:oklch(72% 0.018 62); line-height:1.7; max-width:540px }
    .cta-action { display:flex; flex-direction:column; align-items:flex-end; gap:14px }
    .cta-pill { display:inline-flex; align-items:center; gap:14px; padding:20px 36px; background:var(--accent); color:oklch(99% 0.004 65); border-radius:999px; font-family:var(--f); font-weight:800; font-size:.84rem; letter-spacing:.1em; text-transform:uppercase; transition:all .22s; box-shadow:0 12px 36px oklch(57% 0.162 38 / .4), inset 0 1px 0 oklch(75% 0.12 50 / .5); border:1.5px solid oklch(62% 0.16 38) }
    .cta-pill:hover { background:var(--accent-h); transform:translateY(-2px); box-shadow:0 18px 48px oklch(57% 0.162 38 / .55), inset 0 1px 0 oklch(75% 0.12 50 / .5) }
    .cta-pill svg { width:16px; height:16px; transition:transform .22s }
    .cta-pill:hover svg { transform:translateX(3px) }
    .cta-trust { font-size:.74rem; color:oklch(62% 0.016 62); letter-spacing:.04em; font-weight:600 }
    .cta-trust span { color:oklch(82% 0.014 62) }

    /* FOOTER (dunkler — zweifarbig zum CTA-Block) */
    .footer { background:oklch(12% 0.012 62); padding:64px 0 0; color:oklch(82% 0.014 62) }
    .f-grid { display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:48px; padding-bottom:56px }
    .f-brand-logo { display:inline-block; margin-bottom:18px }
    .f-brand-logo img { height:34px; width:auto; filter:brightness(0) invert(1); opacity:.92 }
    .f-brand p { color:oklch(68% 0.018 62); font-size:.86rem; max-width:300px; line-height:1.75; margin-bottom:24px }
    .f-pill { display:inline-flex; align-items:center; gap:8px; padding:9px 18px; border:1px solid oklch(34% 0.014 62); border-radius:999px; font-size:.66rem; font-weight:700; letter-spacing:.18em; text-transform:uppercase; color:oklch(78% 0.014 62) }
    .f-col h4 { font-size:.66rem; font-weight:700; text-transform:uppercase; letter-spacing:.18em; color:oklch(78% 0.014 62); margin-bottom:22px }
    .f-col ul { list-style:none; display:flex; flex-direction:column; gap:14px }
    .f-col a, .f-col span { color:oklch(72% 0.016 62); font-size:.92rem; transition:color .15s; display:inline-flex; align-items:center; gap:8px }
    .f-col a:hover { color:var(--accent) }
    .f-col svg { width:14px; height:14px; stroke:currentColor; flex-shrink:0; opacity:.7 }
    .f-col a.f-legal-trust { color:var(--accent); font-weight:600 }
    .f-bottom { border-top:1px solid oklch(22% 0.014 62); padding:22px 0 28px; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:14px }
    .f-bottom-left { font-size:.76rem; color:oklch(58% 0.014 62) }
    .f-bottom-right { display:flex; align-items:center; gap:18px; font-size:.74rem; color:oklch(58% 0.014 62); flex-wrap:wrap }
    .f-bottom-right span { display:inline-flex; align-items:center; gap:8px }
    .f-bottom-sep { width:3px; height:3px; border-radius:50%; background:oklch(40% 0.014 62) }
    .f-social { display:flex; gap:8px }
    .f-social a { width:34px; height:34px; border-radius:50%; border:1px solid oklch(28% 0.014 62); display:flex; align-items:center; justify-content:center; transition:all .15s; color:oklch(72% 0.016 62) }
    .f-social a:hover { border-color:var(--accent); background:oklch(57% 0.162 38 / .15); color:var(--accent) }
    .f-social svg { width:14px; height:14px; stroke:currentColor }

    /* RESPONSIVE */
    @media(max-width:768px){
      .sp{padding:64px 0}
      .nav-links,.nav-right .btn{display:none}
      .nav-tel{display:none}
      .hbg{display:flex}
      .mob-bar{display:flex}
      body{padding-bottom:72px}
      .hero{height:auto;min-height:100vh;padding-top:68px}
      .hero-upper{padding:32px 0 20px}
      .hero-gino-pill{max-width:100%}
      .hero-lower .wrap{flex-direction:column}
      .trust-stats{padding:18px 0;gap:0}
      .trust-stat{padding:0 12px;align-items:center;text-align:center}
      .trust-stat::after{display:block}
      .trust-gino{width:100%;border-left:none;border-top:1px solid oklch(99.2% 0.004 65 / .10);padding:16px 0}
      .warum-grid{grid-template-columns:1fr}
      .ablauf-grid{grid-template-columns:1fr;gap:36px}
      .unfall-panel{grid-template-columns:1fr;gap:18px}
      .unfall-visual{order:-1;min-height:260px}
      .unfall-text{padding:32px 28px;min-height:auto}
      .unfall-text h3{font-size:1.3rem}
      .unfall-tabs{padding-bottom:16px;justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch}
      .unfall-tab{flex-shrink:0}
      .unfall-cta{flex-direction:column;align-items:stretch;gap:14px;text-align:center}
      .gino-inner{grid-template-columns:1fr;gap:48px}
      .gino-badge{bottom:10px;right:10px}
      .fall-grid{grid-template-columns:1fr}
      .k-grid{grid-template-columns:1fr;gap:18px}
      .k-card{padding:32px 28px}
      .form-row{grid-template-columns:1fr}
      .cta-block{padding:64px 0 72px}
      .cta-inner{grid-template-columns:1fr;gap:32px}
      .cta-action{align-items:flex-start}
      .cta-pill{padding:18px 30px;font-size:.78rem}
      .f-grid{grid-template-columns:1fr 1fr;gap:36px;padding-bottom:40px}
      .f-grid > .f-brand{grid-column:1 / -1}
      .f-bottom{flex-direction:column;text-align:center;align-items:center}
      .f-bottom-right{justify-content:center}
      .leist-head{flex-direction:column;align-items:flex-start}
    }
    @media(max-width:480px){
      .hero-ctas{flex-direction:column;align-items:stretch}
      .hero-ctas .btn{justify-content:center}
      .hero-tertiary{text-align:center;padding-top:6px}
      .f-grid{grid-template-columns:1fr}
      .cta-pill{width:100%;justify-content:center}
    }
