:root {
  color-scheme: light;
  --ink: #0f172a;
  --muted: #475569;
  --line: #cbd5e1;
  --accent: #4f46e5;
  --surface: #ffffff;
  --paper: #f8fafc;
  font-family: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
body { margin: 0; background: var(--paper); color: var(--ink); line-height: 1.65; }
a { color: var(--accent); }
.legal-header { display: flex; width: min(100% - 2rem, 1120px); min-height: 4.5rem; margin: auto; gap: 1rem; align-items: center; border-bottom: 1px solid var(--line); }
.legal-wordmark { color: var(--ink); font-size: 1.05rem; font-weight: 800; text-decoration: none; }
.legal-header nav { display: flex; flex: 1; gap: .15rem; flex-wrap: wrap; }
.legal-header nav a, .language-link { padding: .5rem .6rem; border-radius: .5rem; color: var(--muted); font-size: .82rem; font-weight: 650; text-decoration: none; }
.legal-header nav a:hover, .language-link:hover { background: #eef2ff; color: var(--accent); }
main { width: min(100% - 2rem, 780px); margin: 4rem auto 6rem; }
.legal-kicker { margin: 0 0 .8rem; color: var(--accent); font-size: .75rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
h1 { margin: 0; font-size: clamp(2.3rem, 7vw, 4.5rem); letter-spacing: -.055em; line-height: 1; }
.legal-summary { max-width: 680px; margin: 1.3rem 0 .5rem; color: var(--muted); font-size: 1.12rem; }
.legal-meta { color: var(--muted); font-size: .78rem; }
section { padding: 2rem 0; border-top: 1px solid var(--line); }
section:first-of-type { margin-top: 3rem; }
h2 { margin: 0 0 1rem; font-size: 1.25rem; letter-spacing: -.02em; }
p, li { overflow-wrap: anywhere; }
section p:last-child, section ul:last-child { margin-bottom: 0; }
li + li { margin-top: .5rem; }
footer { display: flex; width: min(100% - 2rem, 780px); margin: 0 auto 3rem; justify-content: space-between; border-top: 1px solid var(--line); padding-top: 1.25rem; color: var(--muted); font-size: .82rem; }
.button { display: inline-flex; min-height: 2.8rem; padding: .75rem 1rem; align-items: center; border: 0; border-radius: .7rem; background: var(--accent); color: white; cursor: pointer; font: inherit; font-weight: 750; }
@media (max-width: 760px) { .legal-header { align-items: flex-start; padding: 1rem 0; flex-wrap: wrap; } .legal-header nav { order: 3; width: 100%; } main { margin-top: 2.5rem; } }
