/* ==========================================================================
   recht.css — Impressum, Datenschutz, Fehlerseite.
   Eigene Lesespalte (.doku), sonst alles aus basis.css.
   ========================================================================== */

body {
  margin:0; background:var(--ink); color:var(--linen);
  font-family:var(--sans); font-weight:300; font-size:1rem; line-height:1.75;
  -webkit-font-smoothing:antialiased;
}
a { color:inherit; }
:focus-visible { outline:1px solid var(--kraft); outline-offset:3px; }

.doku { max-width:44rem; margin-inline:auto; padding:clamp(2rem,6vh,4rem) var(--pad) 4rem; }

.back {
  display:inline-flex; align-items:center; gap:.7rem;
  font-family:var(--mono); font-size:.6875rem; letter-spacing:.2em; text-transform:uppercase;
  color:var(--alu); text-decoration:none; padding-bottom:.35rem;
  border-bottom:1px solid transparent; transition:color .3s ease, border-color .3s ease;
}
.back:hover, .back:focus-visible { color:var(--linen); border-bottom-color:var(--kraft); }

h1 {
  font-family:var(--serif); font-weight:400; letter-spacing:-.015em; line-height:1.05;
  font-size:clamp(2.1rem,5vw,3.2rem); margin:2.5rem 0 0;
}
.eyebrow {
  font-family:var(--mono); font-size:.6875rem; letter-spacing:.24em;
  text-transform:uppercase; color:var(--alu-dim); margin:2.5rem 0 0;
}
h2 {
  font-size:.9375rem; font-weight:500; letter-spacing:.01em;
  margin:2.75rem 0 0; padding-top:1.5rem; border-top:1px solid var(--rule);
}
p { margin:.9rem 0 0; color:var(--alu); }
p.lead { color:var(--linen); font-size:1.125rem; margin-top:1.5rem; }
dl { margin:1rem 0 0; display:grid; gap:0; }
.row {
  display:grid; gap:.15rem; padding-block:.85rem; border-bottom:1px solid var(--rule);
}
@media (min-width:640px) { .row { grid-template-columns:13rem 1fr; gap:1.5rem; align-items:baseline; } }
dt { font-family:var(--mono); font-size:.625rem; letter-spacing:.16em; text-transform:uppercase; color:var(--alu-dim); }
dd { margin:0; color:var(--linen); }
.stand {
  margin-top:3rem; padding-top:1.5rem; border-top:1px solid var(--rule);
  font-family:var(--mono); font-size:.625rem; letter-spacing:.14em;
  text-transform:uppercase; color:var(--alu-dim);
}
