:root { color-scheme: light; --ink:#172019; --paper:#f5f3ec; --surface:#fffef9; --green:#1b6b45; --muted:#69716b; --line:#d9d8d0; }
* { box-sizing: border-box; }
body { margin:0; background:var(--paper); color:var(--ink); font:16px/1.65 Inter,ui-sans-serif,system-ui,sans-serif; }
header,main,footer { width:min(760px,calc(100% - 40px)); margin:auto; }
header { display:flex; align-items:center; justify-content:space-between; min-height:70px; border-bottom:1px solid var(--line); }
.brand { color:var(--ink); font-size:13px; font-weight:800; letter-spacing:.14em; text-decoration:none; }
.brand i { display:inline-block; width:9px; height:9px; margin-right:8px; border-radius:50%; background:var(--green); }
nav { display:flex; gap:16px; }
a { color:var(--green); text-underline-offset:3px; }
main { padding:64px 0 82px; }
.kicker { margin:0 0 8px; color:var(--green); font-size:11px; font-weight:800; letter-spacing:.13em; }
h1 { max-width:680px; margin:0 0 22px; font:500 clamp(44px,8vw,68px)/1 Georgia,serif; letter-spacing:-.04em; }
h2 { margin:42px 0 10px; font:500 27px/1.2 Georgia,serif; }
h3 { margin:26px 0 6px; font-size:16px; }
p,li { color:#39433c; }
.lede { color:var(--muted); font-size:18px; }
.notice { margin:28px 0; padding:18px 20px; border:1px solid var(--line); border-radius:14px; background:var(--surface); }
footer { padding:24px 0 40px; border-top:1px solid var(--line); color:var(--muted); font-size:13px; }
@media(max-width:600px){header{align-items:flex-start;flex-direction:column;justify-content:center;gap:7px;padding:12px 0}nav{flex-wrap:wrap}main{padding-top:46px}}
