/* se-legal.css — Grundgerüst der Startseite für Textseiten (Impressum, Datenschutz): Token, Schrift, Nav-Basis, Footer (Simon 133074, 21.09.2026) */
@font-face{font-family:'Inter var';src:url('/landing/assets/fonts/inter.woff2') format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:'Space Grotesk var';src:url('/landing/assets/fonts/space-grotesk.woff2') format('woff2');font-weight:300 700;font-display:swap}
:root{--font-body:'Inter var',system-ui,-apple-system,'Segoe UI',sans-serif;--font-display:'Space Grotesk var','Inter var',system-ui,sans-serif;
--b-50:hsl(214 100% 97%);--b-100:hsl(214 96% 92%);--b-200:hsl(214 92% 84%);--b-500:hsl(222 90% 56%);--b-600:hsl(222 84% 48%);--b-700:hsl(224 78% 40%);
--navy:hsl(224 64% 14%);--navy2:hsl(228 72% 9%);--acc:hsl(38 96% 54%);
--g-0:#fff;--g-25:hsl(214 32% 98.5%);--g-50:hsl(214 26% 96%);--g-100:hsl(214 20% 90%);--g-500:hsl(216 12% 46%);--g-700:hsl(218 16% 30%);--g-900:hsl(222 24% 13%);
--e1:0 1px 2px hsl(222 30% 12% / .06),0 3px 10px hsl(222 30% 12% / .05);--e2:0 6px 16px hsl(222 40% 12% / .10),0 18px 40px hsl(222 40% 12% / .09);--glas:hsl(0 0% 100% / .92)}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth}
body{font-family:var(--font-body);color:var(--g-900);background:var(--g-0);line-height:1.65;font-size:16px;-webkit-font-smoothing:antialiased}
.wrap{max-width:1040px;margin:0 auto;padding:0 24px}
.legal{max-width:760px;padding-top:40px;padding-bottom:56px}
.legal h1{font-family:var(--font-display);font-size:clamp(28px,4vw,38px);letter-spacing:-.02em;line-height:1.1;margin-bottom:10px}
.legal .lead{color:var(--g-500);font-size:17px;margin-bottom:6px}
.legal h2{font-family:var(--font-display);font-size:18px;letter-spacing:-.01em;margin:28px 0 8px;color:var(--g-900)}
.legal p{color:var(--g-700);margin-bottom:10px}
.legal a{color:var(--b-700);font-weight:600}
footer{color:var(--g-500);font-size:13px;padding:34px 0;text-align:center;border-top:1px solid var(--g-100)}footer a{color:inherit}
.nav{display:flex;align-items:center;gap:12px;max-width:1080px;margin:0 auto;padding:18px 24px}
.nav img.wortmarke{height:34px;width:auto;display:block}.nav a.brandlink{display:inline-flex;align-items:center;color:inherit;text-decoration:none;padding:0}
.nav .rechts{margin-left:auto;display:flex;gap:18px;align-items:center;font-size:.92rem}
.nav a{color:var(--g-500);text-decoration:none;padding:.6rem .4rem;display:inline-block}.nav a:hover{color:var(--b-700)}
@media(max-width:640px){.wrap{padding:0 18px}.legal{padding-top:24px}}
/* Rechtstexte + Klick-Zustimmung (/agb, /avv, /vertrag/<prj>, Simon 134672) */
.legal ul{color:var(--g-700);margin:0 0 10px 1.2em;padding:0}.legal li{margin-bottom:6px}
.legal .kurz{background:var(--b-50);border:1px solid var(--b-100);border-radius:12px;padding:14px 16px;margin:16px 0 8px;color:var(--g-900)}
.vertrag .dok{border:1px solid var(--g-100);border-radius:12px;margin:12px 0;background:var(--g-0);box-shadow:var(--e1)}
.vertrag .dok summary{cursor:pointer;padding:14px 16px;display:grid;grid-template-columns:14px 1fr;gap:10px;align-items:baseline;list-style:none}.vertrag .dok summary .t b{margin-right:8px}
.vertrag .dok summary::-webkit-details-marker{display:none}
.vertrag .dok summary::before{content:'▸';color:var(--b-600);transition:transform .15s;display:inline-block}.vertrag .dok[open] summary::before{transform:rotate(90deg)}
.vertrag .dok summary .m{color:var(--g-500);font-size:14px;white-space:nowrap}
.vertrag .dok-text{padding:0 16px 12px;border-top:1px solid var(--g-100)}
.vertrag .dok-text h3{font-family:var(--font-display);font-size:16px;margin:18px 0 6px}
.vt-form{margin-top:28px;border:1px solid var(--b-200);border-radius:14px;padding:18px 16px;background:var(--g-25)}
.vt-form h2{margin-top:0!important}
.vt-form .felder{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:10px 0 14px}
.vt-form .felder label{display:flex;flex-direction:column;gap:4px;font-size:14px;font-weight:600;color:var(--g-700)}
.vt-form .felder small{font-weight:400;color:var(--g-500)}
.vt-form input:not([type=checkbox]){font:inherit;padding:10px 12px;border:1px solid var(--g-100);border-radius:10px;background:var(--g-0);color:var(--g-900)}
.vt-form input:focus-visible{outline:2px solid var(--b-500);outline-offset:1px}
.vt-form .haken{display:flex;gap:10px;align-items:flex-start;margin:8px 0;color:var(--g-900);cursor:pointer}
.vt-form .haken input{margin-top:5px;width:18px;height:18px;flex:none;accent-color:var(--b-600)}
.vt-btn{margin-top:12px;font:inherit;font-weight:700;background:var(--b-600);color:#fff;border:0;border-radius:10px;padding:12px 22px;cursor:pointer;min-height:44px}
.vt-btn:hover{background:var(--b-700)}.vt-btn:disabled{opacity:.6;cursor:wait}
.vt-meldung{margin-top:10px;font-size:14px}.vt-meldung.fehler{color:hsl(0 70% 42%)}
.vt-hinweis{font-size:13px;color:var(--g-500)!important;margin-top:12px}
.nachweis{border:1px solid hsl(142 50% 70%);background:hsl(142 60% 96%);border-radius:14px;padding:16px;margin:18px 0}
.nachweis .nw-kopf{font-family:var(--font-display);font-weight:700;color:hsl(142 60% 26%);font-size:18px;margin-bottom:6px}
.nachweis .nw-fuss{font-size:13px;color:var(--g-500)!important;margin:6px 0 0}
@media(max-width:640px){.vt-form .felder{grid-template-columns:1fr}}
@media print{.nav,footer,.vt-form{display:none}.vertrag .dok{box-shadow:none}}
