/* GEO Audit — Rechtsseiten (Impressum / Datenschutz / AGB)
   Dunkles Design, identische Tokens & Schrift wie die Landingpage (index.html). */
@font-face {
  font-family: 'Inter var';
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
  src: url('/fonts/inter-var.woff2') format('woff2');
}
:root{
  --bg:#0A0B0D; --bg-1:#0E0F12; --surface:#121316; --surface-2:#1A1C20; --surface-3:#1E2024;
  --border:rgba(255,255,255,0.08); --border-2:#2B2E34;
  --text:#F2F3F5; --text-muted:#8A8F98; --text-dim:#5A5F68;
  --fg:#F2F3F5; --fg-2:#8A8F98; --fg-3:#5A5F68;
  --accent:#66FF3D; --brand:#66FF3D; --brand-hover:#4ade2e; --brand-ink:#0A1A00;
  --brand-text:#85ff66; --brand-soft:rgba(102,255,61,.14); --brand-ring:rgba(102,255,61,.32);
  --radius:16px; --nav-h:64px; --maxw:1200px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{
  font-family:'Inter var',system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.7;
  color:var(--text-muted);background:var(--bg);
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}

/* ── Nav ── */
.l-nav{position:sticky;top:0;z-index:100;background:rgba(10,11,13,.72);
  -webkit-backdrop-filter:saturate(180%) blur(12px);backdrop-filter:saturate(180%) blur(12px);
  border-bottom:1px solid var(--border);}
.l-nav-inner{max-width:1120px;margin:0 auto;padding:14px 32px;display:flex;align-items:center;justify-content:space-between;gap:16px;}
.l-logo{display:flex;align-items:center;gap:10px;font-weight:700;color:var(--text);letter-spacing:-.01em;font-size:16px;}
.l-logo img{border-radius:7px;flex-shrink:0;}
.l-cta{display:inline-flex;align-items:center;gap:6px;background:var(--accent);color:var(--brand-ink);
  padding:9px 18px;border-radius:10px;font-size:14px;font-weight:600;letter-spacing:-.01em;white-space:nowrap;
  transition:background .15s ease,box-shadow .15s ease;}
.l-cta:hover{background:var(--brand-hover);box-shadow:0 10px 28px -12px rgba(102,255,61,.6);}

/* ── Inhalt (Karte auf --surface) ── */
.legal{max-width:800px;margin:48px auto;padding:48px 48px 56px;
  background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);}
.legal .back{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:500;color:var(--accent);margin-bottom:24px;transition:opacity .15s ease;}
.legal .back:hover{opacity:.8;}
.legal h1{font-size:clamp(28px,4vw,40px);font-weight:700;letter-spacing:-.025em;line-height:1.12;color:var(--text);margin-bottom:8px;}
.legal .updated{font-size:13.5px;color:var(--text-dim);margin-bottom:34px;}
.legal h2{font-size:20px;font-weight:600;letter-spacing:-.02em;color:var(--text);margin:36px 0 12px;}
.legal h3{font-size:16px;font-weight:600;color:var(--text);margin:22px 0 8px;}
.legal p{font-size:15px;line-height:1.75;color:var(--text-muted);margin:0 0 14px;}
.legal ul{margin:0 0 16px;padding-left:22px;}
.legal li{font-size:15px;line-height:1.7;color:var(--text-muted);margin-bottom:7px;}
.legal a{color:var(--accent);text-decoration:underline;text-underline-offset:2px;word-break:break-word;transition:opacity .15s ease;}
.legal a:hover{opacity:.8;}
.legal strong{color:var(--text);font-weight:600;}
.legal address{font-style:normal;line-height:1.85;color:var(--text-muted);margin:0 0 14px;}
.legal hr{border:none;border-top:1px solid var(--border);margin:30px 0;}

/* ── Footer (identisch zur Landing) ── */
.footer{background:var(--bg);border-top:1px solid var(--border);padding:28px 32px;}
.footer-inner{max-width:1120px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;}
.footer-brand{display:flex;align-items:center;gap:10px;}
.footer-copy{font-size:13px;color:var(--text-dim);}
.footer-links{display:flex;gap:20px;}
.footer-links a{font-size:13px;color:var(--text-muted);transition:color .15s ease;}
.footer-links a:hover{color:var(--text);}

@media(max-width:640px){
  .l-nav-inner{padding:12px 18px;}
  .legal{margin:24px 14px;padding:32px 22px 40px;}
  .footer{padding:22px 18px;}
  .footer-inner{flex-direction:column;align-items:center;gap:12px;}
  .footer-links{justify-content:center;flex-wrap:wrap;}
  .footer-copy{text-align:center;}
}

/* ════════ Main-Template (Nav + Mega-Menü + Final-CTA + Footer) — identisch zu den Marketing-Seiten ════════ */
.container{max-width:var(--maxw);margin:0 auto;padding:0 32px;}
main.legal{margin-top:calc(var(--nav-h) + 28px);}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:36px;min-height:36px;padding:0 16px;border-radius:10px;font-size:14px;font-weight:500;line-height:20px;letter-spacing:-0.07px;cursor:pointer;border:1px solid transparent;white-space:nowrap;font-family:inherit;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,color .15s ease;}
.btn-primary{background:var(--accent);color:#0A1A00;}
.btn-primary:hover{background:var(--brand-hover);box-shadow:0 10px 28px -12px rgba(102,255,61,.6);}
.btn-ghost{background:#22252b;color:#ededef;border-color:#383c44;}
.btn-ghost:hover{background:#272a31;border-color:#4b505b;}

/* Nav */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;height:var(--nav-h);display:flex;align-items:center;background:rgba(10,11,13,0);border-bottom:1px solid transparent;transition:background .25s ease,border-color .25s ease,backdrop-filter .25s ease;}
.nav.scrolled{background:rgba(10,11,13,.78);backdrop-filter:saturate(140%) blur(12px);-webkit-backdrop-filter:saturate(140%) blur(12px);border-bottom-color:var(--border);}
.nav-inner{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:24px;}
.nav-logo{display:inline-flex;align-items:center;gap:10px;font-weight:700;color:var(--fg);font-size:16px;transition:opacity .15s ease;}
.nav-logo img{width:28px;height:28px;border-radius:7px;}
.nav-logo:hover{opacity:.82;}
.nav-links{display:flex;align-items:center;gap:28px;list-style:none;}
.nav-links a{color:var(--fg-2);font-size:14px;font-weight:500;transition:color .15s ease;}
.nav-links a:hover{color:var(--fg);}
.nav-actions{display:flex;align-items:center;gap:14px;}
.nav-actions .btn{height:40px;padding:0 16px;font-size:14px;}
.nav-login{color:var(--fg-2);font-size:14px;font-weight:600;padding:0 4px;transition:color .15s ease;}
.nav-login:hover{color:var(--fg);}
.nav-burger{display:none;background:none;border:0;color:var(--fg);cursor:pointer;padding:8px;}
.nav-burger svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.mobile-menu{position:fixed;inset:var(--nav-h) 0 auto 0;z-index:99;background:var(--bg-1);border-bottom:1px solid var(--border);padding:16px 24px 24px;display:none;flex-direction:column;gap:4px;}
.mobile-menu.open{display:flex;}
.mobile-menu a.m-link{color:var(--fg-2);font-size:16px;font-weight:500;padding:12px 4px;border-bottom:1px solid var(--border);}
.mobile-menu .m-actions{display:flex;flex-direction:column;gap:10px;margin-top:16px;}
.mobile-menu .m-actions .btn{width:100%;height:48px;}

/* Mega-Menü */
.nav-links li.has-mega{position:static;}
.nav-mega-trigger{display:inline-flex;align-items:center;gap:5px;background:none;border:0;color:var(--fg-2);font:inherit;font-size:14px;font-weight:500;cursor:pointer;padding:0;transition:color .15s ease;}
.nav-mega-trigger:hover,.has-mega.open .nav-mega-trigger{color:var(--fg);}
.nav-mega-trigger .chev{width:13px;height:13px;transition:transform .2s ease;}
.has-mega.open .nav-mega-trigger .chev{transform:rotate(180deg);}
.mega{position:absolute;top:calc(var(--nav-h) - 4px);left:50%;transform:translateX(-50%) translateY(-6px);width:720px;max-width:94vw;background:var(--bg-1);border:1px solid var(--border);border-radius:16px;box-shadow:0 30px 80px -30px rgba(0,0,0,.85);padding:20px;display:grid;grid-template-columns:1.5fr 1fr;gap:8px 24px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,transform .18s ease;z-index:120;}
.has-mega.open .mega{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0);}
.mega-lbl{font-size:11px;font-weight:700;letter-spacing:.03em;color:var(--fg-3);margin:2px 10px 10px;}
.mega-grid{display:flex;flex-direction:column;gap:2px;}
.mega-item{display:flex;gap:13px;align-items:center;padding:11px 12px;border-radius:11px;transition:background .14s ease;color:inherit;}
a.mega-item:hover{background:var(--surface-2);}
.mega-ic{width:38px;height:38px;border-radius:10px;background:var(--surface-2);border:1px solid var(--border);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
a.mega-item:hover .mega-ic{background:var(--surface-3);border-color:var(--border-2);}
.mega-ic svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.mega-mt{font-size:14px;font-weight:600;color:var(--fg);display:flex;align-items:center;gap:8px;line-height:1.2;}
.mega-md{font-size:12px;color:var(--fg-3);margin-top:3px;line-height:1.35;}
.mega-item.soon{opacity:.6;}
.mega-soon{font-size:8.5px;font-weight:700;letter-spacing:.02em;color:var(--text-muted);background:var(--surface-2);border:1px solid var(--border);padding:2px 6px;border-radius:5px;white-space:nowrap;}
.mega-feat{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:6px;display:flex;flex-direction:column;gap:2px;}
.mega-feat a,.mega-feat .mega-item{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:13px 14px;border-radius:9px;transition:background .14s ease;}
.mega-feat a:hover{background:var(--surface-2);}
.mega-feat .mf-t{font-size:14px;font-weight:600;color:var(--fg);display:flex;align-items:center;gap:8px;}
.mega-feat .mf-d{font-size:12px;color:var(--fg-3);line-height:1.35;}
.mega-feat .mf-t svg{width:16px;height:16px;color:var(--text-muted);stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.mm-group{border-bottom:1px solid var(--border);padding:8px 0 12px;}
.mm-glbl{font-size:11px;font-weight:700;color:var(--fg-3);padding:6px 4px;}
.mobile-menu a.m-sub,.mobile-menu span.m-sub{display:flex;align-items:center;gap:8px;color:var(--fg-2);font-size:15px;font-weight:500;padding:9px 4px;}
.mobile-menu span.m-sub.soon{color:var(--fg-3);}
@media(max-width:900px){.nav-links,.nav-actions{display:none;}.nav-burger{display:inline-flex;}.mega{display:none !important;}}

/* Final-CTA */
.final-cta{padding:80px 0;position:relative;}
.cta-box{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:28px;overflow:hidden;text-align:center;}
.cta-box::before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:760px;max-width:90%;height:520px;background:radial-gradient(closest-side,rgba(102,255,61,.11),transparent 70%);pointer-events:none;}
.cta-inner{position:relative;z-index:1;max-width:720px;margin:0 auto;padding:88px 32px;}
.cta-title{font-size:clamp(28px,4vw,40px);font-weight:600;letter-spacing:-.02em;line-height:1.1;color:var(--fg);margin:0 0 16px;text-wrap:balance;}
.cta-sub{font-size:18px;line-height:1.5;color:var(--fg-2);margin:0 0 32px;text-wrap:balance;}
.hero-cta{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;}
@media(max-width:640px){.hero-cta{flex-direction:column;align-items:stretch;}.hero-cta .btn{width:100%;}.cta-inner{padding:64px 24px;}.final-cta{padding:60px 0;}}

/* Footer (Main-Template) */
.foot-link{font-size:13.5px;color:var(--fg-2);transition:color .15s ease;}
.foot-link:hover{color:var(--fg);}

:focus-visible{outline:2px solid var(--accent);outline-offset:3px;}
