:root { color-scheme: light; --ink:#173f38; --paper:#fffaf0; --pink:#f071a8; --green:#286d51; --gold:#f5be36; }
* { box-sizing:border-box; }
html { background:var(--paper); scroll-behavior:auto; }
body { margin:0; color:var(--ink); background:radial-gradient(ellipse at 95% 2%,#ffdaea 0,transparent 34rem),radial-gradient(ellipse at 0 28rem,#e5f3ce 0,transparent 32rem),var(--paper); font:18px/1.7 ui-rounded,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
a { color:#235e48; text-underline-offset:.2em; text-decoration-thickness:.09em; }
a:hover { color:#71304f; }
a:focus-visible { outline:3px solid #9c3c69; outline-offset:5px; border-radius:3px; }
header { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:1rem; max-width:1160px; padding:24px 32px; margin:auto; }
.brand { display:flex; white-space:nowrap; align-items:center; gap:10px; text-decoration:none; color:var(--ink); font-size:clamp(25px,3vw,34px); font-weight:850; letter-spacing:-.045em; }
.brand svg { flex:none; }
nav { display:flex; flex-wrap:wrap; gap:8px; margin-left:auto; }
nav a { display:inline-flex; align-items:center; min-height:48px; padding:8px 16px; font-weight:700; }
nav a[aria-current] { border-bottom:3px solid var(--pink); text-decoration:none; }
main { max-width:1000px; padding:0 32px 64px; margin:auto; }
.intro { padding:35px 0 28px; max-width:850px; }
.eyebrow { color:#5d4b32; text-transform:uppercase; letter-spacing:.13em; font-size:.76rem; font-weight:800; margin:0 0 10px; }
h1 { font-size:clamp(36px,5.5vw,64px); line-height:1.1; letter-spacing:-.045em; max-width:17ch; margin:0 0 22px; text-wrap:balance; }
.lead { font-size:clamp(20px,2.3vw,25px); line-height:1.5; max-width:50ch; margin:0; }
article { max-width:76ch; }
h2 { font-size:clamp(23px,3vw,30px); line-height:1.25; letter-spacing:-.025em; margin:44px 0 14px; }
p { margin:0 0 18px; }
li { margin:7px 0; padding-left:5px; }
ul { padding-left:25px; margin:0 0 22px; }
.draft-notice { margin:7px 0 32px; padding:18px 20px; border-left:5px solid var(--gold); background:#fff2c9; color:#58421b; border-radius:0 16px 16px 0; font-size:16px; line-height:1.6; }
.pending { background:#ffe6ec; border-bottom:2px dotted #9c3c69; padding:1px 3px; overflow-wrap:anywhere; }
footer { max-width:1160px; margin:auto; padding:28px 32px 42px; border-top:1px solid #c8d5b9; font-size:15px; }
footer p { margin:0 0 9px; }
.skip-link { position:absolute; top:-100px; left:15px; background:#fff; padding:12px 18px; z-index:5; }
.skip-link:focus { top:10px; }
@media(max-width:540px) { header { padding:16px 20px; align-items:flex-start; gap:8px; } .brand { gap:5px; font-size:27px; } .brand svg { width:43px; height:43px; } nav { gap:0; } nav a { padding:7px 9px; font-size:16px; } main { padding:0 22px 45px; } .intro { padding-top:28px; } h1 { max-width:14ch; } footer { padding:24px 22px 32px; } }
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }
