/* ============================================================
   NOVUS – Rechtsseiten (Impressum / AGB / Datenschutz)
   Ergänzt styles.css. Wird nur auf den Rechtsseiten geladen.
   ============================================================ */
body.legal { background: var(--bg); color: var(--ink); }

/* Header auf Rechtsseiten immer solide (kein Hero dahinter) */
.legal .site-header {
  position: fixed; inset: 0 0 auto 0; z-index: 100;
  background: #fff; box-shadow: 0 1px 0 var(--line);
  padding: 14px 0;
}
.legal .header-inner { display: flex; align-items: center; justify-content: space-between; }
.legal .logo { font-family: var(--font-head); font-weight: 800; font-size: 1.25rem; color: var(--ink); display: inline-flex; align-items: center; gap: .5rem; }
.legal .logo-mark {
  display: inline-grid; place-items: center; width: 30px; height: 30px; border-radius: 8px;
  background: var(--accent); color: #1a1206; font-weight: 800;
}
.legal .back-top { color: var(--ink-soft); font-weight: 600; font-size: .95rem; }
.legal .back-top:hover { color: var(--accent-dk); }

/* Inhalt */
.legal-main { max-width: 820px; margin-inline: auto; padding: 130px 24px 90px; }
.legal-main .back-link { display: inline-block; color: var(--accent-dk); font-weight: 600; margin-bottom: 22px; }
.legal-main h1 { font-size: clamp(2rem, 4vw, 2.8rem); margin-bottom: 10px; }
.legal-lead { color: var(--muted); margin-bottom: 30px; }
.legal-main h2 { font-size: 1.25rem; margin: 32px 0 8px; color: var(--ink); }
.legal-main h3 { font-size: 1.02rem; margin: 18px 0 4px; color: var(--ink); }
.legal-main p, .legal-main li { color: var(--ink-soft); line-height: 1.75; }
.legal-main ul { margin: 8px 0 8px 1.25rem; }
.legal-main a { color: var(--accent-dk); text-decoration: underline; }
.legal-note {
  margin-top: 40px; padding: 14px 18px; background: var(--bg-soft);
  border-left: 3px solid var(--accent); border-radius: 10px; color: var(--muted); font-size: .9rem;
}

/* Schlichter Footer auf Rechtsseiten */
.legal .legal-foot { background: var(--dark); color: var(--dark-soft); padding: 28px 0; margin-top: 40px; }
.legal .legal-foot .container { display: flex; flex-wrap: wrap; gap: 10px 22px; justify-content: space-between; align-items: center; }
.legal .legal-foot a { color: var(--dark-soft); }
.legal .legal-foot a:hover { color: #fff; }
.legal .legal-foot nav { display: flex; gap: 18px; }
