/* Legal pages (Impressum / Datenschutz + EN counterparts) — page layer over
   the Industry design system. All colors come from the tokens in industry.css;
   no external resource may ever be added here: an external request on a legal
   page would falsify the very document the page contains. */

/* — nav: brand is a link back to index.html on legal pages — */
.site-nav a.nav-brand { font-size: 18px; margin-right: auto; text-decoration: none; }
.site-nav .nav-lang { margin-left: 4px; }

/* — compact dark hero band, matching the homepage poster — */
.legal-hero {
  background: var(--color-accent-900);
  color: var(--color-bg);
  padding: 56px 72px 48px;
}
.legal-hero .hero-kicker { margin-bottom: 16px; }
.legal-hero-title {
  font-family: var(--font-heading); font-weight: var(--font-heading-weight);
  font-size: 56px; line-height: 1.02; letter-spacing: 0.01em; text-transform: uppercase;
  margin: 0;
}
.legal-hero-sub {
  margin: 14px 0 0; max-width: 64ch;
  font-size: 16px; line-height: 1.55;
  color: color-mix(in srgb, #ffffff 78%, transparent);
}

/* — long-form document typography — */
.legal-doc {
  max-width: 72ch;
  padding: 36px 0 72px;
}
.legal-doc h2 {
  font-size: 24px; line-height: 1.1; letter-spacing: 0.01em; text-transform: uppercase;
  margin: 44px 0 12px;
}
.legal-doc h2:first-of-type { margin-top: 28px; }
.legal-doc h3 {
  font-size: 18px; letter-spacing: 0.01em; text-transform: uppercase;
  margin: 28px 0 8px;
}
.legal-doc p, .legal-doc li {
  font-size: 15px; line-height: 1.65;
  color: color-mix(in srgb, var(--color-text) 88%, transparent);
}
.legal-doc p { margin: 0 0 14px; }
.legal-doc ul { margin: 0 0 14px; padding-left: 20px; }
.legal-doc li { margin-bottom: 6px; }
.legal-doc a { color: var(--color-accent-700); }
.legal-doc a:hover { color: var(--color-accent-800); }

.muted-note {
  font-size: 13px; margin: 0 0 6px;
  color: color-mix(in srgb, var(--color-text) 60%, transparent);
}
.lang-alt {
  font-size: 13px; margin: 0 0 20px;
  color: color-mix(in srgb, var(--color-text) 60%, transparent);
}

/* — identity plate (blueprint card around the § 5 DDG block) — */
.legal-plate {
  padding: 22px 26px;
  margin: 16px 6px 20px;
}
.legal-plate p { margin: 0; font-size: 15px; line-height: 1.6; }

/* — translation notice (EN pages only) — */
.notice-translation {
  border: 1px solid var(--color-accent-600);
  border-left: 4px solid var(--color-accent-600);
  background: color-mix(in srgb, var(--color-accent-200) 55%, transparent);
  padding: 14px 18px;
  margin: 24px 6px 4px;
  font-size: 14px; line-height: 1.55;
}
.notice-translation strong {
  font-family: var(--font-heading); font-weight: var(--font-heading-weight);
  text-transform: uppercase; letter-spacing: 0.04em;
}

/* — processor register table — */
.table-scroll { overflow-x: auto; margin: 0 0 14px; }
.legal-doc .table { min-width: 560px; }
.legal-doc .table td { vertical-align: top; font-size: 13.5px; line-height: 1.5; }
.legal-doc .table tbody tr:hover { background: transparent; }

/* — open-fact marker — */
.tbc {
  background: color-mix(in srgb, var(--color-accent) 16%, transparent);
  padding: 0 4px;
  font-size: 0.92em;
  white-space: nowrap;
}

/* — responsive (site breakpoints: 900 / 560) — */
@media (max-width: 900px) {
  .legal-hero { padding: 44px 28px 38px; }
  .legal-hero-title { font-size: 42px; }
}
@media (max-width: 560px) {
  .legal-hero-title { font-size: 32px; }
  .legal-plate { padding: 18px 20px; }
}
