/* Shared styles for the legal pages; colours as in index.html (tokens.css). */
@font-face { font-family: 'Noto Sans'; font-weight: 400 600; font-display: swap; src: url(/fonts/noto-sans-latin.woff2) format('woff2'); }
@font-face { font-family: 'Forum'; font-weight: 400; font-display: swap; src: url(/fonts/forum-latin.woff2) format('woff2'); }
:root { color-scheme: light dark; --linen: #f6f1e6; --ink: #1b2350; --t2: #545268; --rule: #e6decd; --link: #34428a; --mad: #a63a2b; --focus: #a2761a; }
@media (prefers-color-scheme: dark) { :root { --linen: #141a3c; --ink: #f5ecd6; --t2: #c3c0d8; --rule: #2c3672; --link: #c9cdf0; --mad: #f2a897; --focus: #e3b24c; } }
*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; background: var(--linen); color: var(--ink); font: 400 16px/1.65 'Noto Sans', system-ui, -apple-system, 'Segoe UI', sans-serif; -webkit-font-smoothing: antialiased; }
main { max-width: 680px; margin: 0 auto; padding: 40px 16px 24px; }
h1 { font: 400 40px/1.15 'Forum', Georgia, serif; margin: 8px 0 4px; }
h2 { font-size: 18px; font-weight: 600; margin: 32px 0 6px; }
p { margin: 0 0 12px; }
.meta { color: var(--t2); font-size: 14px; }
.operator p { margin: 0; }
.operator p + p { margin-top: 4px; font-size: 14px; color: var(--t2); }
.operator { padding: 12px 0; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); margin: 16px 0 20px; }
.back { margin: 0; font-size: 14px; }
a { color: var(--link); text-underline-offset: 3px; }
a:hover { color: var(--mad); }
a:focus-visible { outline: 2px solid var(--focus); outline-offset: 3px; border-radius: 2px; }
footer { padding: 24px 16px 32px; text-align: center; font-size: 13px; color: var(--t2); }
