/* ---------- Unterseiten (Impressum, Datenschutz) – nutzt nur Tokens aus tokens.css ---------- */
.hero--slim { padding-bottom: var(--space-6); }
.back { color: var(--hero-muted); text-decoration: none; font-weight: 600; font-size: 15px; min-height: var(--tap); display: inline-flex; align-items: center; }
.back:hover { color: var(--hero-text); }
.legal { padding: var(--space-10) 0 var(--space-16); }
.legal h1 { font-size: var(--fs-h2); margin-bottom: var(--space-6); }
.legal h2 { font-size: var(--fs-h3); margin: var(--space-8) 0 var(--space-2); }
.legal p, .legal li { max-width: 70ch; }
.legal p + p { margin-top: var(--space-3); }
.legal address { font-style: normal; }
.legal a { color: var(--accent); }
.draft { background: var(--accent-soft); border: 1px solid var(--border); border-left: 4px solid var(--accent); border-radius: var(--radius); padding: var(--space-3) var(--space-4); margin-bottom: var(--space-6); font-weight: 600; }

/* 404-Seite: großes Symbol, kaum Text */
.notfound { text-align: center; padding: var(--space-8) 0; }
.notfound .notfound__icon { width: 150px; height: 150px; display: block; margin: 0 auto var(--space-6); }
.notfound__bg { fill: var(--brand-purple); }
.notfound h1 { margin-bottom: var(--space-8); }
.btn--big { min-height: 56px; padding: 0 var(--space-8); font-size: 18px; }
.btn--big svg { width: 24px; height: 24px; margin-right: var(--space-2); }
@media (prefers-color-scheme: dark) { .notfound__bg { fill: var(--accent); } }
.legal a.btn--primary { color: #fff; }
.legal a.btn--primary:hover { color: #fff; }
@media (prefers-color-scheme: dark) { .legal a.btn--primary, .legal a.btn--primary:hover { color: var(--on-accent); } }
