/* Rechtstexte (mentions legales, politique de confidentialite).
   Schlanke, eigenstaendige Teilmenge des Haupt-Themes — laedt bewusst nicht
   tokens.css/base.css, damit die Rechtsseiten minimal bleiben.
   Ausgelagert aus design-entwurf/mentions-legales.html, Zeilen 13-81. */

/* Rechtsseite — schlanke Teilmenge des Haupt-Themes (Zwei-Farben-System) */
:root {
  --creme: #F8F3EA;
  --bg: #E9E3D0;
  --band-bg: #2E4640;
  --band-ink: #F5F1E6;
  --ink: #24312C;
  --ink-soft: #52605A;
  --accent: #4E7473;
  --accent-2-text: #7F5730;
  --kicker: #44605F;
  --maxw: 860px;
  --radius: 14px;
  --font-display: "Newsreader", Georgia, serif;
  --font-body: "Albert Sans", "Segoe UI", sans-serif;
}
* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
html, body { overflow-x: hidden; overflow-x: clip; }
body {
  font-family: var(--font-body);
  background: var(--bg);
  color: var(--ink);
  line-height: 1.65;
  font-size: 16px;
}
.top {
  background: rgba(245,241,230,0.92);
  border-bottom: 1px solid rgba(128,116,100,0.18);
  padding: 16px 28px;
}
.top .wrap { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.wrap { max-width: var(--maxw); margin: 0 auto; padding: 0 28px; }
.top a.back {
  color: var(--kicker); text-decoration: none; font-weight: 600; font-size: 14.5px;
}
.top a.back:hover { text-decoration: underline; text-underline-offset: 3px; }
.top img { width: 54px; height: 54px; border-radius: 50%; display: block; }
main { padding: 64px 0 90px; }
h1 {
  font-family: var(--font-display); font-weight: 460;
  font-size: clamp(32px, 5vw, 44px); line-height: 1.15;
  margin-bottom: 8px; text-wrap: balance;
}
.updated {
  font-family: var(--font-display); font-style: italic;
  color: var(--kicker); font-size: 16px; margin-bottom: 40px;
}
h2 {
  font-family: var(--font-display); font-weight: 500;
  font-size: 25px; margin: 44px 0 12px;
}
h3 { font-family: var(--font-display); font-weight: 530; font-size: 19px; margin: 26px 0 8px; }
p, li { color: var(--ink-soft); margin-bottom: 12px; max-width: 68ch; }
ul { margin: 0 0 12px 20px; }
li { margin-bottom: 6px; }
strong { color: var(--ink); font-weight: 600; }
a { color: var(--accent); }
.card {
  background: #FDFBF4; border: 1px solid rgba(150,104,59,0.22);
  border-radius: var(--radius); padding: 24px 26px; margin: 18px 0 6px;
}
.card p { margin-bottom: 6px; }
footer {
  background: var(--band-bg); color: var(--band-ink);
  padding: 34px 0; font-size: 13.5px;
}
footer .wrap { display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
footer a { color: var(--band-ink); }
