:root { color-scheme: light; --ink:#102225; --green:#245f4b; --paper:#f7f4e9; --card:#fff; --line:#d9ded8; }
* { box-sizing: border-box; }
body { margin:0; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; color:var(--ink); background:linear-gradient(145deg,var(--paper),#fff); line-height:1.58; }
header,main,footer { width:min(780px,calc(100% - 40px)); margin-inline:auto; }
header { padding:48px 0 20px; }
nav { display:flex; flex-wrap:wrap; gap:18px; align-items:center; justify-content:space-between; }
.brand { color:var(--green); font-weight:800; letter-spacing:.12em; text-decoration:none; }
.links { display:flex; flex-wrap:wrap; gap:16px; }
a { color:var(--green); }
.links a { text-decoration:none; font-weight:650; }
main { padding:24px 0 64px; }
.hero,.card { background:rgba(255,255,255,.9); border:1px solid var(--line); border-radius:24px; box-shadow:0 18px 45px rgba(16,34,37,.07); }
.hero { padding:clamp(28px,7vw,56px); margin-bottom:24px; }
.card { padding:clamp(24px,5vw,40px); margin:18px 0; }
h1 { margin:.15em 0; font-size:clamp(2.3rem,7vw,4rem); line-height:1.02; letter-spacing:-.035em; }
h2 { margin:1.6em 0 .45em; font-size:1.35rem; line-height:1.25; }
p,li { font-size:1.02rem; }
.eyebrow { color:var(--green); font-size:.82rem; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.lede { color:#526064; font-size:1.18rem; }
.button { display:inline-block; padding:12px 18px; border-radius:999px; background:var(--green); color:#fff; font-weight:750; text-decoration:none; }
.meta { color:#667276; font-size:.92rem; }
footer { padding:0 0 48px; color:#667276; font-size:.9rem; }
@media (max-width:560px) { header { padding-top:28px; } .links { width:100%; } }
