/*
 * Abweichungsdatei der statischen Website (von Hand gepflegt, wird nach dem Entwurfsstil geladen und überlebt jedes
 * Neubauen — Muster wie NuxIQ content/landing/schmal.css). Hier steht nur, was der Entwurf zur Laufzeit per
 * JavaScript entschied oder was es im Entwurf nicht gibt (Rechtstext-Seiten).
 */

/* Im Entwurf schaltete `wide`/`narrow` (Fensterbreite ≥ 1100 px) Teile der Kopfleiste per Laufzeit; hier per CSS. */
[data-wenn="wide"], [data-wenn="narrow"] { display: contents; }
@media (max-width: 1099.98px) { [data-wenn="wide"] { display: none; } }
@media (min-width: 1100px) { [data-wenn="narrow"], [data-wenn="menuShown"] { display: none !important; } }
[data-wenn][hidden] { display: none !important; }

/* Rechtstexte (Impressum, Datenschutz …): Lesespalte im Stil der Seiten */
.recht { padding: clamp(56px, 7vw, 96px) 0 clamp(72px, 9vw, 120px); }
.recht-text { max-width: 820px; display: flex; flex-direction: column; gap: 14px; }
.recht-text h1 { margin: 0 0 8px; font-family: var(--font-display); font-weight: 800; letter-spacing: var(--dt);
  font-size: clamp(2rem, 3.6vw, 3rem); line-height: 1.08; text-wrap: balance; }
.recht-text h2 { margin: 28px 0 0; font-family: var(--font-display); font-weight: var(--dw); letter-spacing: -.02em;
  font-size: 1.5rem; line-height: 1.2; text-wrap: balance; }
.recht-text h3 { margin: 18px 0 0; font-family: var(--font-display); font-weight: var(--dw); font-size: 1.15rem; }
.recht-text p, .recht-text li { margin: 0; color: var(--text-secondary); max-width: 72ch; text-wrap: pretty; }
.recht-text ul, .recht-text ol { margin: 0; padding-left: 1.2rem; display: flex; flex-direction: column; gap: 6px; }
.recht-text strong { color: var(--text-primary); }
.recht-text blockquote { margin: 0; padding: 14px 18px; border-left: 3px solid var(--accent-brass);
  background: var(--surface-raised); }
.recht-text blockquote p { color: var(--text-primary); }
.recht-text table { width: 100%; border-collapse: collapse; font-size: 14.5px; display: block; overflow-x: auto; }
.recht-text th, .recht-text td { text-align: left; vertical-align: top; padding: 9px 12px;
  border-bottom: 1px solid var(--border-hairline); }
.recht-text th { font-family: var(--font-mono); font-size: 11px; letter-spacing: .14em; text-transform: uppercase;
  color: var(--accent-brass); font-weight: 500; }
.recht-text code { font-family: var(--font-mono); font-size: .9em; }
.recht-text hr { border: 0; border-top: 1px solid var(--border-hairline); margin: 12px 0; width: 100%; }
.recht-hinweis { margin: 0; padding: 12px 16px; border: 1px solid var(--border-strong); font-size: 14.5px;
  color: var(--text-primary) !important; }
.recht-text a { overflow-wrap: anywhere; }

/* Kopfleiste auf schmalen Telefonen: Logo + Sprachen + Schalter + Menü brauchten 429 px bei 390 px Fensterbreite
   (gemessen 08.10.2026, tools/startseite_pruefen.py). Abstände enger, Inhalt unverändert. */
@media (max-width: 440px) {
  header > div:first-child { gap: 12px !important; padding: 0 16px !important; }
  [data-sprachleiste] a { padding: 12px 3px !important; }
  [data-themeschalter] { padding: 0 !important; min-width: 0 !important; }
}
