/* Legal-Layout (Datenschutz, Impressum).
   Eigenständig und schlank: erbt Farben/Fonts aus base.css, hängt bewusst
   NICHT am Fullpage-/Scroll-System der Hauptseiten. */

/* Eigenständiges, schlankes Legal-Layout. Erbt Farben/Fonts aus base.css,
   hängt bewusst NICHT am Fullpage-/Scroll-System der Hauptseiten. */
.rz-header {
  display: flex; align-items: center; justify-content: space-between;
  gap: 16px; max-width: 820px; margin: 0 auto; padding: 22px var(--space);
}
.rz-brand { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; color: var(--text); }
.rz-brand svg { width: 26px; height: 26px; }
.rz-brand span { font-weight: 600; letter-spacing: .06em; font-size: .82rem; }
.rz-back { text-decoration: none; color: var(--muted); font-size: .85rem; }
.rz-back:hover { color: var(--text); }
/* Tippflächen 44 px auf Touch-Geräten (gemessen 194 × 26 und 101 × 22, Mobil-Check 04.10.2026).
   Weniger Innenabstand gleicht die größeren Flächen aus: der Kopf bleibt 70 px hoch. */
@media (pointer: coarse) {
  .rz-header { padding-block: 13px; }
  .rz-brand, .rz-back { display: inline-flex; align-items: center; min-height: 44px; }
}

.rz-main { max-width: 820px; margin: 0 auto; padding: 8px var(--space) 80px; }
.rz-main h1 { font-size: clamp(2rem, 5vw, 3rem); margin-bottom: .2em;
  /* „Datenschutzerklärung“ ist bei 390 px breiter als die Spalte (376 zu 350 px): nur am &shy; im
     Template trennen („Datenschutz-erklärung“), sonst notfalls umbrechen statt überlaufen */
  -webkit-hyphens: manual; hyphens: manual; overflow-wrap: break-word; }
.rz-main h2 {
  font-size: 1.4rem; margin: 2.2em 0 .5em; padding-top: 1.2em;
  border-top: 1px solid var(--line);
}
.rz-main h2:first-of-type { border-top: 0; padding-top: 0; }
.rz-main p, .rz-main li { color: #d9d6cf; }
.rz-main a { color: var(--accent); }
.rz-eyebrow { color: var(--accent); font-size: .78rem; letter-spacing: .14em; text-transform: uppercase; margin-bottom: .8em; }
.rz-addr { font-style: normal; color: #d9d6cf; line-height: 1.9; }
.rz-hinweis {
  border: 1px solid var(--accent); border-radius: 12px;
  background: rgb(200 168 120 / 0.08); color: var(--text);
  padding: 14px 16px; margin: 1.6em 0; font-size: .92rem;
}
.rz-foot { border-top: 1px solid var(--line); }
.rz-foot__inner { max-width: 820px; margin: 0 auto; padding: 24px var(--space); display: flex; flex-wrap: wrap; gap: 8px 20px; justify-content: space-between; color: var(--muted); font-size: .82rem; }
.rz-foot__inner a { color: var(--muted); }
