/* Rechtsseiten: gleiche Tokens wie die Hauptseite und das Press Kit,
   nur ruhiger gesetzt - das hier wird gelesen, nicht gescrollt. */
:root{
  --bg:#100b09; --bg-raised:#1a1210; --red-700:#591d17;
  --gold:#e69d23; --gold-soft:#f2c877;
  --text:#f5efe6; --text-dim:#c9bbae; --line:rgba(245,239,230,.12);
  --font-display:"Baloo 2", ui-rounded, "Segoe UI", sans-serif;
  --font-body:"Plus Jakarta Sans", -apple-system, "Segoe UI", sans-serif;
}
*,*::before,*::after{ box-sizing:border-box; }
body{ margin:0; background:var(--bg); color:var(--text);
  font-family:var(--font-body); font-size:16px; line-height:1.6;
  -webkit-font-smoothing:antialiased; }
a{ color:var(--gold-soft); }
a:hover{ color:var(--gold); }

.legal-top{ border-bottom:1px solid var(--line); background:var(--bg-raised); }
.legal-top .wrap{ display:flex; align-items:center; justify-content:space-between;
  gap:16px; padding:18px 0; }
.legal-top .back{ font-size:.78rem; letter-spacing:.2em; text-transform:uppercase;
  font-weight:800; color:var(--text-dim); text-decoration:none; }
.legal-top .back:hover{ color:var(--gold-soft); }
.legal-top .mark{ font-family:var(--font-display); font-weight:800; font-size:1.05rem;
  letter-spacing:.04em; color:var(--gold); }

.wrap{ width:min(760px, calc(100% - 40px)); margin:0 auto; }
main.legal{ padding:56px 0 88px; }

.legal h1{ font-family:var(--font-display); font-weight:800; font-size:2rem;
  line-height:1.1; margin:0 0 6px; }
.legal .sub{ color:var(--text-dim); font-size:.82rem; letter-spacing:.18em;
  text-transform:uppercase; font-weight:800; margin:0 0 34px; }
.legal h2{ font-family:var(--font-display); font-weight:800; font-size:1.12rem;
  margin:34px 0 10px; padding-top:18px; border-top:1px solid var(--line); }
.legal h2:first-of-type{ border-top:none; padding-top:0; }
.legal h3{ font-size:.74rem; letter-spacing:.22em; text-transform:uppercase;
  color:var(--gold); font-weight:800; margin:20px 0 6px; }
.legal p{ margin:0 0 12px; color:var(--text-dim); }
.legal p.lead{ color:var(--text); }
.legal address{ font-style:normal; color:var(--text); margin-bottom:12px; }
.legal ul{ margin:0 0 12px; padding-left:20px; color:var(--text-dim); }
.legal li{ margin-bottom:5px; }
.legal strong{ color:var(--text); font-weight:700; }

/* Offene Punkte sichtbar machen, damit nichts unvollstaendig live geht */
.todo{ display:block; background:rgba(230,157,35,.1);
  border-left:3px solid var(--gold); border-radius:0 8px 8px 0;
  padding:12px 16px; margin:0 0 14px; color:var(--gold-soft);
  font-size:.9rem; }
.todo b{ color:var(--gold); }
.notice{ background:var(--bg-raised); border:1px solid var(--line);
  border-radius:12px; padding:16px 18px; margin:0 0 24px; }
.notice p{ margin:0; font-size:.92rem; }

.legal-foot{ border-top:1px solid var(--line); padding:26px 0 40px;
  color:var(--text-dim); font-size:.84rem; }
.legal-foot a{ margin-right:18px; }
