:root { --ink:#10281f; --soft:#456058; --green:#0ba85a; --paper:#f7f3e9; --line:#cddbd3; --serif:"Instrument Serif",Georgia,serif; --sans:"Manrope",sans-serif; }
* { box-sizing:border-box; } body { margin:0; color:var(--ink); background:var(--paper); font-family:var(--sans); line-height:1.75; }
a { color:var(--ink); } a:hover { color:#08653f; } a:focus-visible { outline:3px solid var(--green); outline-offset:3px; }
header, main, footer { width:min(800px, calc(100% - 2rem)); margin:auto; }
header { min-height:5.5rem; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); }
.brand { display:flex; align-items:center; gap:.7rem; font-size:.84rem; font-weight:800; letter-spacing:.12em; text-decoration:none; }.brand span { width:2.2rem; height:2.2rem; display:grid; place-items:center; border-radius:.65rem; color:white; background:var(--green); }
header nav { display:flex; gap:1rem; font-size:.75rem; font-weight:700; } header nav a { text-decoration:none; }
main { padding:5rem 0 6rem; } .eyebrow { margin:0 0 1rem; color:#08653f; font-size:.7rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
h1,h2 { font-family:var(--serif); font-weight:400; letter-spacing:-.025em; } h1 { margin:0; font-size:clamp(3.5rem,9vw,5.6rem); line-height:.95; } .lede { max-width:680px; margin:1.5rem 0 4rem; color:var(--soft); font-size:1rem; }
section { padding:1.6rem 0; border-top:1px solid var(--line); } h2 { margin:0 0 .8rem; font-size:2rem; } p,li { color:var(--soft); font-size:.92rem; } strong { color:var(--ink); } .note { padding:1rem; border-left:3px solid var(--green); background:#e9f5ed; }
footer { padding:2rem 0; border-top:1px solid var(--line); color:var(--soft); font-size:.72rem; } footer nav { display:flex; flex-wrap:wrap; gap:1rem; }
@media(max-width:600px){ header nav a:not(:last-child){display:none;} main{padding-top:3.5rem;} }
