
:root{--green:#1F7A5C;--navy:#1A2E35;--sand:#F5F2EC;--muted:#5C6F74;--border:#DDE5E3}
*{box-sizing:border-box}body{margin:0;font-family:'DM Sans',sans-serif;color:var(--navy);line-height:1.75;background:#fff}a{color:var(--green);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}a:focus-visible{outline:3px solid var(--green);outline-offset:5px}.wrap{max-width:1100px;margin:auto;padding:0 28px}.site-header{border-bottom:1px solid var(--border)}.nav{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding-top:20px;padding-bottom:20px}.brand{font-weight:700;font-size:19px;color:var(--navy);text-decoration:none}.nav-links{display:flex;gap:24px;flex-wrap:wrap;font-size:14px}.hero{background:var(--sand);padding:56px 0}.eyebrow{text-transform:uppercase;letter-spacing:.1em;font-size:12px;font-weight:700;color:var(--green)}h1,h2{font-family:'DM Serif Display',serif;font-weight:400;line-height:1.2}h1{font-size:clamp(38px,6vw,60px);margin:14px 0 20px}h2{font-size:27px;margin:0 0 16px}.hero p{max-width:680px}.date{font-size:14px;color:var(--muted)}.layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:64px;padding-top:56px;padding-bottom:64px}aside{align-self:start;position:sticky;top:24px;font-size:14px}aside strong{display:block;margin-bottom:14px}aside ol{padding-left:20px;margin:0}aside li{margin-bottom:10px}article{min-width:0;max-width:740px}article section{scroll-margin-top:24px;margin-bottom:38px}p{margin:0 0 16px}li{margin-bottom:9px}ul{padding-left:22px}.contact{background:var(--sand);border-left:3px solid var(--green);padding:24px;overflow-wrap:anywhere}.site-footer{background:var(--navy);color:#d7e1de;padding:30px 0;font-size:14px}.site-footer .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.site-footer a{color:#d7e1de}.footer-links{display:flex;gap:24px;flex-wrap:wrap}.skip{position:absolute;left:20px;top:-100px;background:#fff;padding:10px;z-index:10}.skip:focus{top:10px}@media(max-width:760px){.layout{grid-template-columns:1fr;gap:32px;padding-top:32px}aside{position:static;border-bottom:1px solid var(--border);padding-bottom:24px}.hero{padding:36px 0}.wrap{padding-left:20px;padding-right:20px}.nav-links{gap:16px}}
