:root{--green:#158d57;--green-d:#0f6f44;--forest:#0e4d3c;--mist:#dbdde3;--ink:#000;--soft:#3d4246;
--head:"Space Grotesk",system-ui,sans-serif;--body:Raleway,system-ui,-apple-system,"Segoe UI",sans-serif}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--mist);color:var(--ink);font:400 18px/1.55 var(--body)}
img{max-width:100%;height:auto;display:block}a{color:var(--green)}
:focus-visible{outline:3px solid #6fe0a6;outline-offset:3px}
.wrap{max-width:1240px;margin:0 auto;padding:0 32px}
h1,h2,h3,h4{font-family:var(--head);font-weight:500;line-height:1.1;margin:0 0 .45em}
h1{font-size:clamp(2.6rem,6.2vw,6.2rem);letter-spacing:-.05em}
h2{font-size:clamp(2rem,4.2vw,4rem);letter-spacing:-.05em}
h3{font-size:clamp(1.35rem,2.2vw,1.9rem);letter-spacing:-.03em}
p{margin:0 0 1em}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;background:#fff;padding:8px 12px;z-index:99}
/* header */
.hdr{position:absolute;top:0;left:0;right:0;z-index:20;background:linear-gradient(#000 0%,rgba(0,0,0,.85) 45%,rgba(0,0,0,0) 100%);padding-bottom:40px}
.hdr .bar{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1440px;margin:0 auto;padding:22px 40px}
.brand img{height:62px;width:auto}
.nav{display:flex;align-items:center;gap:26px}
.nav a{color:#fff;text-decoration:none;font:400 15px var(--body)}
.nav a:hover,.nav a[aria-current]{text-decoration:underline;text-underline-offset:6px}
.pill{display:inline-block;background:var(--green);color:#fff!important;text-decoration:none!important;border-radius:300px;padding:17px 32px;font:500 15px/1 var(--body);border:0;cursor:pointer;text-align:center}
.pill:hover{background:var(--green-d)}
.pill.sm{padding:13px 24px;font-size:14px}
.pill.line{background:transparent;border:1.5px solid #fff}
.menu-btn{display:none;background:none;border:1.5px solid #fff;color:#fff;border-radius:300px;padding:9px 18px;font:500 14px var(--body)}
@media(max-width:1060px){.menu-btn{display:block}.nav{display:none;position:absolute;top:100%;left:16px;right:16px;margin-top:-30px;background:#000;border:1px solid #2a2a2a;border-radius:18px;flex-direction:column;align-items:flex-start;padding:20px 24px;gap:14px;box-shadow:0 20px 40px rgba(0,0,0,.6)}.nav.open{display:flex}.hdr .bar{padding:16px 20px}.brand img{height:50px}}
/* hero (home) */
.hero{background:#050a08 url(/img/bg.webp) center/cover no-repeat;color:#fff;padding:190px 0 70px;text-align:center}
.hero h1{font-size:clamp(1.9rem,3.2vw,2.6rem);letter-spacing:-.05em;margin:0 0 .35em}
.hero h1 span{display:block;margin-top:.45em}
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:44px 0 0}
.tile img{aspect-ratio:3/2;object-fit:cover;width:100%}
.tile .pill{display:block;width:78%;margin:-18px auto 0;position:relative;font-size:13px;letter-spacing:.02em}
.claim-row{display:grid;grid-template-columns:330px 1fr;gap:70px;align-items:start;max-width:1140px;margin:70px auto 0;text-align:left}
.claim-row > div > h2{font-size:1.15rem;letter-spacing:-.02em;margin:0 0 10px}
.ccard{background:#0d1512;border:1px solid #20302a;border-radius:16px;overflow:hidden}
.ccard .ph{position:relative}.ccard .ph img{aspect-ratio:16/10;object-fit:cover;width:100%}
.ccard .loc{position:absolute;left:12px;top:12px;background:rgba(0,0,0,.7);color:#fff;font-size:12px;padding:5px 11px;border-radius:300px}
.ccard .loc::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#2fd07f;margin-right:6px}
.ccard .bd{padding:18px 18px 20px}
.ccard .ttl{display:flex;gap:12px;align-items:center;padding-bottom:14px;border-bottom:1px solid #20302a;margin-bottom:14px}
.ccard .ttl i{width:36px;height:36px;border-radius:10px;background:#123528;display:grid;place-items:center;flex:none}
.ccard .ttl b{display:block;font:600 16px var(--head)}.ccard .ttl small{color:#8a9a93;font-size:12px}
.ccard .nums{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ccard .lbl{display:block;font-size:10.5px;letter-spacing:.12em;color:#8a9a93;margin-bottom:4px}
.ccard .old{color:#e0533d;text-decoration:line-through;font:600 18px var(--head)}
.ccard .new{color:#3fe08f;font:600 20px var(--head)}
.ccard .add{margin-top:14px;border:1px solid #1d5e40;background:#0f2a1f;border-radius:12px;text-align:center;padding:12px}
.ccard .add strong{display:block;color:#3fe08f;font:600 28px var(--head)}
.disc{margin-top:12px;background:#0d1512;border:1px solid #20302a;border-radius:14px;padding:14px 16px;color:#8a9a93;font-size:12px;line-height:1.5}
.tagline{margin:64px auto 0;font-size:1.15rem;color:#fff;max-width:900px}
/* form card */
.fcard{background:#fff;color:#000;border-radius:18px;padding:30px 34px 34px;text-align:left}
.fcard h2{font:500 1.4rem var(--head);letter-spacing:-.02em;margin-bottom:16px}
.f{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}.f .full{grid-column:1/-1}
.f label{display:block;font-size:14px;margin-bottom:5px}.f label span{color:#666;font-size:12px}
.f input,.f select,.f textarea{width:100%;font:16px var(--body);padding:11px 12px;background:#e9eaee;border:1px solid #c9ccd3;border-radius:4px;color:#000}
.f textarea{min-height:90px;resize:vertical}
.f .go{display:flex;justify-content:center}.f .note{font-size:12.5px;color:#555;margin:0;text-align:center}
.hp{position:absolute;left:-9999px}
/* page heads (inner pages) */
.ph-top{padding:190px 0 40px;text-align:center}
.ph-top h1{color:var(--green)}.ph-top p.lede{max-width:900px;margin:0 auto 1em;font-size:1.1rem}
.crumbs{font-size:14px;margin:0 0 10px;color:var(--soft)}.crumbs a{color:var(--soft)}
.ph-photo{padding:190px 0 90px;color:#fff;text-align:center;background-size:cover;background-position:center;position:relative}
.ph-photo::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(0,0,0,.55),rgba(0,0,0,.65))}
.ph-photo > .wrap{position:relative}.ph-photo .crumbs,.ph-photo .crumbs a{color:#e5e5e5}
.ph-photo p.lede{max-width:860px;margin:0 auto 1.4em;font-size:1.15rem}
.btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
/* sections */
.sec{padding:90px 0}.sec.white{background:#fff}.sec.black{background:#000;color:#fff}.sec.forest{background:var(--forest);color:#fff}
.sec.center{text-align:center}.sec.center p{max-width:900px;margin-left:auto;margin-right:auto}
.green{color:var(--green)}
.why p{font-size:17px;max-width:1150px}
.why h2{margin-bottom:.6em}.why h3{font-size:clamp(1.7rem,3.3vw,3.3rem);letter-spacing:-.05em;margin:1em 0 1.2em}
/* cards */
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;text-align:left}
.cards.three{grid-template-columns:repeat(3,1fr)}
.card img{aspect-ratio:4/3;object-fit:cover;width:100%;margin-bottom:16px}
.card h3{color:var(--green);font-size:1.15rem;letter-spacing:-.01em;margin-bottom:.4em}
.card p{font-size:14.5px;line-height:1.55;margin:0}
.plain{display:grid;grid-template-columns:repeat(3,1fr);gap:34px 40px;text-align:left}
.plain h3{color:var(--green);font-size:1.3rem}.plain p{font-size:15.5px;margin:0}
.sec.forest .plain h3,.sec.black .plain h3{color:#56d897}
/* steps */
.steps{list-style:none;padding:0;margin:40px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:30px;counter-reset:s;text-align:left}
.steps li{counter-increment:s}
.steps li::before{content:counter(s);display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--green);color:#fff;font:600 20px var(--head);margin-bottom:16px}
.steps h3{font-size:1.3rem}.steps p{font-size:15.5px;margin:0;opacity:.85}
/* areas */
.areas{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.areas h2{font-size:1.9rem;text-align:center;letter-spacing:-.03em}
.areas ul{list-style:none;padding:0;margin:0 auto;width:fit-content}
.areas li{display:flex;align-items:center;gap:16px;font:500 clamp(1.7rem,2.8vw,2.6rem) var(--head);letter-spacing:-.03em;margin:6px 0}
.areas li img{width:24px;height:24px}
.areas .lic{text-align:center;color:#bbb;font-size:15px;margin-top:22px}
/* faq */
.faq{max-width:900px;margin:0 auto;text-align:left;border-top:1px solid #b9bcc4}
.faq details{border-bottom:1px solid #b9bcc4}
.faq summary{cursor:pointer;list-style:none;font:500 1.3rem/1.3 var(--head);letter-spacing:-.02em;padding:22px 40px 22px 0;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:6px;top:16px;font:300 2rem/1 var(--head);color:var(--green)}
.faq details[open] summary::after{content:"\2212"}
.faq details p{font-size:16.5px;color:var(--soft);margin:0 0 22px}
/* split */
.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;text-align:left}
.split img{border-radius:6px;width:100%}
.serve{display:grid;grid-template-columns:repeat(3,1fr);gap:34px 50px;margin-top:20px}
.serve > div{display:flex;gap:16px;align-items:flex-start}.serve img{width:44px;height:44px;flex:none;margin-top:4px}
.serve h3{color:#56d897;font-size:1.5rem;margin-bottom:.2em}.serve p{margin:0;font-size:16px}
.vals{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;list-style:none;padding:0;margin:30px 0 0}
.vals li{border:1.5px solid #fff;border-radius:300px;padding:14px 34px;font:500 1.4rem var(--head)}
.office{background:#000;color:#fff;border-radius:18px;padding:30px}.office h3{font-size:1.4rem}.office a{color:#fff}.office p{margin:0 0 .6em}
.towns{columns:3;list-style:none;padding:0;margin:0 0 1em}.towns li{padding:3px 0}
/* review band */
.review{background:#000 url(/img/bg.webp) center/cover;color:#fff;padding:100px 0}
.review .split{align-items:center}.review h2{color:#fff}
/* footer */
.ftr{background:#000;color:#fff;padding:70px 0 40px;font-size:15px}
.ftr .cols{display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px;align-items:start}
.ftr a{color:#fff}.ftr .mail{color:var(--green)}
.ftr h2{font:500 1.1rem var(--head);letter-spacing:-.01em;margin-bottom:.8em}
.ftr ul{list-style:none;padding:0;margin:0}.ftr li{padding:3px 0}
.ftr iframe{width:100%;height:170px;border:0;border-radius:4px;margin-top:10px;filter:grayscale(.2)}
.ftr .legal{border-top:1px solid #222;margin-top:40px;padding-top:20px;color:#9a9a9a;font-size:13px}
@media(max-width:1000px){.serve{grid-template-columns:1fr 1fr}.cards{grid-template-columns:repeat(2,1fr)}.cards.three,.plain{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}
.claim-row,.split,.areas{grid-template-columns:1fr;gap:40px}.claim-row{max-width:560px}.ftr .cols{grid-template-columns:1fr 1fr}}
@media(max-width:640px){body{font-size:16.5px}.wrap{padding:0 18px}.tiles{grid-template-columns:1fr;gap:34px}.cards,.cards.three,.plain,.steps,.serve,.f{grid-template-columns:1fr}
.sec{padding:64px 0}.hero{padding-top:140px}.ph-top,.ph-photo{padding-top:140px}.ftr .cols{grid-template-columns:1fr}.towns{columns:2}.fcard{padding:24px 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.nav a.lang{border:1px solid rgba(255,255,255,.55);border-radius:300px;padding:7px 14px;font-size:13px;letter-spacing:.04em;white-space:nowrap}.nav a.lang b{color:#56d897;font-weight:600}
