/* Layout for the legal pages (Impressum, Datenschutz). Scafom-rux design v2.0 tokens. */
html, body { margin: 0; background: var(--bg-1); }
.legal {
  box-sizing: border-box;
  max-width: 720px;
  margin: 0 auto;
  padding:
    calc(var(--space-6) + env(safe-area-inset-top))
    calc(var(--space-5) + env(safe-area-inset-right))
    calc(var(--space-7) + env(safe-area-inset-bottom))
    calc(var(--space-5) + env(safe-area-inset-left));
  color: var(--fg-1);
  font-family: var(--ff-body);
  line-height: 1.55;
}
.legal__logo { height: 24px; display: block; margin-bottom: var(--space-6); }
.legal h1 {
  font-size: clamp(1.4rem, 7vw, 2.2rem);
  border-left: 3px solid var(--sr-orange);
  padding-left: var(--space-4);
}
.legal h2 {
  font-family: var(--ff-display);
  text-transform: uppercase;
  font-size: 0.85rem;
  margin: var(--space-6) 0 var(--space-2);
  padding-bottom: var(--space-1);
  border-bottom: 2px solid var(--sr-orange);
}
.legal p, .legal li { margin: 0 0 var(--space-2); }
.legal ul { padding-left: var(--space-5); }
.legal a { color: var(--fg-link); }
.legal a:hover { color: var(--fg-link-hover); }
.legal table { width: 100%; border-collapse: collapse; font-size: 0.9rem; margin: var(--space-2) 0 var(--space-4); }
.legal th, .legal td { text-align: left; padding: var(--space-1) var(--space-2); border-top: 1px solid var(--rule-1); vertical-align: top; }
.legal th { font-size: 0.7rem; text-transform: uppercase; color: var(--fg-3); }
.legal code { font-size: 0.85em; }
.legal__back { margin-top: var(--space-6); text-decoration: none; }
.legal__meta { color: var(--fg-3); font-size: 0.8rem; margin-top: var(--space-6); }
