:root { color-scheme: light; --ink:#172638; --muted:#526175; --red:#aa2935; --line:#dae1e8; --paper:#fff; --back:#f3f6fa; }
* { box-sizing:border-box; }
body { margin:0; color:var(--ink); background:var(--back); font:1rem/1.7 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
a { color:var(--red); text-underline-offset:.2em; }
a:hover { text-decoration-thickness:2px; }
a:focus-visible { outline:3px solid var(--red); outline-offset:5px; border-radius:2px; }
.skip { position:absolute; left:1rem; top:-6rem; padding:.5rem 1rem; background:white; }
.skip:focus { top:1rem; }
.wrap { max-width:960px; margin:auto; padding:0 1.5rem; }
header { background:var(--paper); border-bottom:1px solid var(--line); }
header .wrap { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding-top:1.2rem; padding-bottom:1.2rem; }
.brand { color:var(--ink); font-weight:750; text-decoration:none; }
.brand span { display:block; color:var(--muted); font-size:.875rem; font-weight:400; }
nav { display:flex; gap:1.3rem; flex-wrap:wrap; font-size:.9375rem; }
nav a[aria-current="page"] { color:var(--ink); font-weight:650; }
main { padding-top:3.5rem!important; padding-bottom:3.5rem!important; }
.eyebrow { color:var(--red); text-transform:uppercase; letter-spacing:.11em; font-size:.875rem; font-weight:700; margin:0 0 .75rem; }
h1 { font-size:clamp(2rem,5vw,3.3rem); line-height:1.15; letter-spacing:-.025em; margin:0 0 1.1rem; }
h2 { font-size:1.35rem; line-height:1.35; margin:0 0 .7rem; }
p { margin:0 0 1rem; }
.lead { font-size:1.2rem; color:var(--muted); max-width:750px; }
.panel { background:var(--paper); border:1px solid var(--line); border-top:4px solid var(--red); padding:2rem; margin-top:2rem; border-radius:4px; }
.grid { display:grid; grid-template-columns:1fr 1fr; gap:1.6rem; margin-top:2rem; }
.grid section { background:var(--paper); padding:1.6rem; border:1px solid var(--line); border-radius:4px; }
.policy { max-width:800px; }
.policy section { margin-top:2rem; }
.policy ul { padding-left:1.4rem; margin:.6rem 0 1rem; }
.policy li { margin:.35rem 0; }
.date { color:var(--muted); font-size:.9375rem; }
footer { border-top:1px solid var(--line); background:var(--paper); }
footer .wrap { display:flex; justify-content:space-between; flex-wrap:wrap; gap:.6rem; padding-top:1.2rem; padding-bottom:1.2rem; font-size:.875rem; color:var(--muted); }
footer p { margin:0; }
@media(max-width:600px) { .grid { grid-template-columns:1fr; } header .wrap { align-items:flex-start; flex-direction:column; } main { padding-top:2rem!important; } .panel { padding:1.4rem; } }
