:root{--g:#1f4d3a;--g2:#2d6a4f;--lime:#c5d86d;--bg:#f6f8f2;--ink:#16211b;--mut:#55655b;--line:#d9e1d3;--w:#fff}
@media (prefers-color-scheme:dark){:root{--bg:#101a14;--ink:#e8efe9;--mut:#a3b3a8;--line:#27382d;--w:#16231b;--g:#8fd0a8;--g2:#a9dcbc}}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:17px/1.7 "Hind",system-ui,sans-serif;background:var(--bg);color:var(--ink)}
h1,h2,h3{font-family:"Bricolage Grotesque","Hind",sans-serif;line-height:1.15;margin:0 0 .6em;letter-spacing:-.01em}
h1{font-size:clamp(2.2rem,6vw,4rem)}h2{font-size:clamp(1.6rem,3.6vw,2.4rem)}h3{font-size:1.2rem}
a{color:var(--g2)}p{margin:0 0 1em;max-width:62ch}
.wrap{max-width:1080px;margin:auto;padding:0 20px}
header{border-bottom:1px solid var(--line);background:var(--bg);position:sticky;top:0;z-index:5}
.nav{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 20px;padding:14px 20px;max-width:1080px;margin:auto}
.logo{font:700 1.25rem "Bricolage Grotesque",sans-serif;color:var(--ink);text-decoration:none}
.logo span{color:var(--g2)}
nav a{margin-right:18px;color:var(--ink);text-decoration:none;font-weight:500}
nav a:last-child{margin:0}nav a[aria-current],nav a:hover{color:var(--g2);text-decoration:underline;text-underline-offset:6px}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--g2);outline-offset:2px}
.hero{padding:72px 0 56px;background:linear-gradient(180deg,var(--w),var(--bg))}
.hero p.lead{font-size:1.2rem;color:var(--mut)}
.btn{display:inline-block;background:var(--g);color:#fff;padding:12px 22px;border-radius:6px;text-decoration:none;font-weight:600;border:0;cursor:pointer;font-size:1rem;margin:0 10px 10px 0}
.btn.alt{background:transparent;color:var(--g2);border:2px solid var(--g2)}
@media (prefers-color-scheme:dark){.btn{color:#0e1a13}}
section{padding:56px 0}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}
.card{background:var(--w);border:1px solid var(--line);border-left:5px solid var(--lime);border-radius:4px;padding:22px}
.card p{margin:0;color:var(--mut)}
.band{background:var(--g);color:#fff}.band a{color:var(--lime)}
@media (prefers-color-scheme:dark){.band{background:#1a2c22;color:var(--ink)}}
dl{display:grid;grid-template-columns:max-content 1fr;gap:8px 24px;margin:0}dt{color:var(--mut)}dd{margin:0;font-weight:500}
@media (max-width:520px){dl{grid-template-columns:1fr}}
label{display:block;font-weight:600;margin:14px 0 4px}
input,textarea{width:100%;padding:11px;border:1px solid var(--line);border-radius:6px;font:inherit;background:var(--w);color:var(--ink)}
footer{border-top:1px solid var(--line);padding:32px 0;color:var(--mut);font-size:.95rem}
footer .grid{gap:24px}footer p{margin:0 0 .4em}
.two{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:40px}
