@font-face{font-family:'Source Serif 4';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/source-serif-4-latin-700-normal.woff2) format('woff2')}
@font-face{font-family:'Source Serif 4';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/source-serif-4-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/manrope-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Manrope';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/manrope-latin-700-normal.woff2) format('woff2')}
:root{--ink:#0f2419;--green:#12372a;--muted:#43534a;--line:#d5e0d8;--tint:#edf3ee;--rule:#2f7a57;--serif:'Source Serif 4',Georgia,'Times New Roman',serif;--sans:'Manrope',-apple-system,'Segoe UI',Roboto,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:500 17px/1.6 var(--sans);color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px}
.skip{position:absolute;left:-9999px;top:8px;background:#fff;padding:10px 14px;z-index:10;border:1px solid var(--ink)}.skip:focus{left:8px}
a{color:var(--green)}a:focus-visible,summary:focus-visible,.btn:focus-visible{outline:3px solid var(--rule);outline-offset:3px}
header{border-bottom:1px solid var(--line)}header .wrap{display:flex;align-items:center;justify-content:space-between;height:84px}
header img{height:44px;width:auto;display:block}header .wrap>a:first-child{display:flex;align-items:center;min-height:44px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 26px;background:var(--green);color:#fff;border-radius:4px;font:700 16px var(--sans);text-decoration:none}
.btn:hover{background:#0b2a1f}.btn.ghost{background:transparent;color:var(--green);border:2px solid var(--green)}.btn.ghost:hover{background:var(--green);color:#fff}
.hero{background:var(--tint);border-bottom:1px solid var(--line)}
.hero .wrap{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:64px;padding-top:88px;padding-bottom:88px;align-items:center}
h1,h2,h3{font-family:var(--serif);font-weight:700;color:var(--green);margin:0}
h1{font-size:clamp(38px,5.4vw,62px);line-height:1.04;letter-spacing:-.02em;text-wrap:balance}
.lead{font-size:20px;color:var(--muted);margin:24px 0 32px;max-width:32em}
.note{font-size:16px;color:var(--ink);margin:14px 0 0}
.panel{background:var(--green);color:#fff;border-radius:6px;padding:36px}
.panel h2{color:#fff;font-size:22px;font-weight:600;margin-bottom:18px}
.panel ul{list-style:none;margin:0;padding:0}.panel li{padding:14px 0;border-top:1px solid rgba(255,255,255,.22);display:flex;justify-content:space-between;gap:16px;font-size:16px}
.panel li span:last-child{color:#cfe0d5}
section{padding:80px 0}section+section{border-top:1px solid var(--line)}
h2{font-size:clamp(28px,3.6vw,40px);line-height:1.12;letter-spacing:-.015em;margin-bottom:12px}
.sub{color:#36443c;margin:0 0 40px;max-width:36em}
.recs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 56px;margin:0;padding:0;list-style:none}
.recs li{padding:18px 0;border-top:1px solid var(--line)}.recs strong{display:block;font:600 20px var(--serif);color:var(--green)}.recs span{color:var(--muted);font-size:16px}
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin:0;padding:0;list-style:none;counter-reset:s}
.steps li{counter-increment:s;border-top:3px solid var(--green);padding-top:20px}
.steps li::before{content:counter(s);display:block;font:700 56px/1 var(--serif);color:var(--rule);margin-bottom:12px}
.steps h3{font-size:22px;margin-bottom:8px}.steps p{margin:0;color:var(--muted);font-size:16px}
.fit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.fit div{background:var(--tint);border-radius:6px;padding:28px}.fit b{display:block;font:700 34px var(--serif);color:var(--green);margin-bottom:4px}.fit span{color:var(--muted);font-size:16px}
.safe{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.safe div{border:1px solid var(--line);border-left:4px solid var(--rule);border-radius:4px;padding:22px 24px}.safe h3{font-size:20px;margin-bottom:6px}.safe p{margin:0;color:var(--muted);font-size:16px}
details{border-bottom:1px solid var(--line)}summary{cursor:pointer;font:600 21px var(--serif);color:var(--green);min-height:56px;display:flex;align-items:center;list-style:none;padding:8px 0}
summary::-webkit-details-marker{display:none}summary::after{content:"+";margin-left:auto;font-size:26px;color:var(--rule)}details[open] summary::after{content:"\2212"}
details p{margin:0 0 20px;color:var(--muted);max-width:44em}
.band{background:var(--green);color:#fff;border-top:0!important}.band h2{color:#fff}.band .btn{background:#fff;color:var(--green)}.band .btn:hover{background:var(--tint)}
footer{padding:40px 0 60px;color:var(--muted);font-size:15px;border-top:1px solid var(--line)}
footer .wrap{display:flex;flex-wrap:wrap;gap:12px 40px;justify-content:space-between}footer a{color:var(--muted)}
@media(max-width:820px){.hero .wrap{grid-template-columns:minmax(0,1fr);gap:40px;padding-top:56px;padding-bottom:56px}.recs,.safe,.steps,.fit{grid-template-columns:minmax(0,1fr)}section{padding:56px 0}.steps{gap:32px}header .wrap{height:72px}header img{height:34px}header .btn{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}