/* Impressum + Datenschutz: same tokens and fonts as the start page, plain reading layout. */
@font-face { font-family: "Raster"; src: url("assets/fonts/raster-extended.woff2") format("woff2"); font-display: swap; }
@font-face { font-family: "Geist"; src: url("assets/fonts/geist.woff2") format("woff2"); font-weight: 400 600; font-display: swap; }
@font-face { font-family: "Geist Mono"; src: url("assets/fonts/geist-mono.woff2") format("woff2"); font-weight: 400 500; font-display: swap; }
:root { --bg: #07080a; --fg: #ece9f2; --muted: #9b93ad; --accent: #a98aff; color-scheme: dark; }
* { box-sizing: border-box; margin: 0; }
body { background: var(--bg); color: var(--fg); font: 400 1rem/1.7 "Geist", system-ui, sans-serif; -webkit-font-smoothing: antialiased; }
main { width: min(720px, 100% - 2 * clamp(16px, 4vw, 48px)); margin: 0 auto; padding: clamp(48px, 9vw, 96px) 0 64px; }
.back { font: 400 .8125rem "Geist Mono", monospace; color: var(--muted); text-decoration: none; }
.back:hover { color: var(--fg); }
h1 { margin: 28px 0 8px; font: 400 clamp(2rem, 7vw, 3.4rem)/1 "Raster", "Geist", sans-serif; text-transform: uppercase; color: var(--accent); overflow-wrap: anywhere; }
.meta { color: var(--muted); font: 400 .8125rem "Geist Mono", monospace; }
h2 { margin: 40px 0 10px; font-size: 1.15rem; font-weight: 600; }
p, ul { color: #cfc9da; max-width: 68ch; }
p + p { margin-top: 12px; }
a { color: var(--accent); }
:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
.todo { background: #ff6b7a22; color: #ffb3bc; padding: 0 4px; }
