/* Shared styles for the legal pages (Impressum, Datenschutz). Same palette and
   self-hosted Inter as the landing page. */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('fonts/inter-latin-wght-normal.woff2') format('woff2');
}
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url('fonts/inter-latin-wght-italic.woff2') format('woff2');
}

:root {
  --navy-100: #ebecf0;
  --navy-500: #5e6c84;
  --navy-700: #253858;
  --navy-900: #091e42;
  --action: #0052cc;
  --action-hover: #0747a6;
}

* { margin: 0; padding: 0; box-sizing: border-box; }

body {
  font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
  font-feature-settings: 'cv11', 'ss01';
  -webkit-font-smoothing: antialiased;
  color: var(--navy-900);
  background: #fff;
  line-height: 1.6;
}

a { color: var(--action); }
a:hover { color: var(--action-hover); }

.legal-top,
.legal,
.legal-foot {
  max-width: 760px;
  margin: 0 auto;
  padding-left: 24px;
  padding-right: 24px;
}

.legal-top {
  padding-top: 24px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--navy-100);
}

.brand {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  color: var(--navy-900);
}
.brand__word { font-size: 20px; font-weight: 700; letter-spacing: -0.02em; }
.brand__word em { color: var(--action); font-style: italic; font-weight: 600; }

.legal { padding-top: 40px; padding-bottom: 48px; }
.legal h1 { font-size: 32px; font-weight: 700; letter-spacing: -0.02em; margin-bottom: 24px; }
.legal h2 { font-size: 18px; font-weight: 600; margin: 32px 0 10px; }
.legal p { color: var(--navy-700); margin-bottom: 12px; }
.legal ul { color: var(--navy-700); margin: 0 0 12px 20px; }
.legal li { margin-bottom: 4px; }
.legal-date { margin-top: 32px; font-size: 14px; color: var(--navy-500); }

.legal-foot {
  display: flex;
  gap: 20px;
  padding-top: 20px;
  padding-bottom: 40px;
  border-top: 1px solid var(--navy-100);
  font-size: 14px;
}
