:root{--g:#2a8f5c;--gd:#15402a;--bg:#fff;--alt:#f5faf7;--card:#fff;--tx:#1b2a22;--mu:#5d7066;--bd:#e2ede6;--soft:#eaf6ef;--mint:#d5ecde;color-scheme:light}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--tx);font:400 16px/1.7 Inter,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:Inter,system-ui,sans-serif;font-weight:700;letter-spacing:-.02em;line-height:1.2;color:var(--gd)}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.w{max-width:1140px;margin:0 auto;padding:0 24px}
section{padding:88px 0}
.alt{background:var(--alt)}
h2{font-size:clamp(1.65rem,3.4vw,2.35rem);margin-bottom:16px}
h3{font-size:1.1rem}
.lead{color:var(--mu);max-width:660px;font-size:1.04rem}
.eyebrow{display:inline-block;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--g);font-weight:600;background:var(--soft);padding:5px 12px;border-radius:999px;margin-bottom:14px}
.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:12px;font-weight:600;font-size:.94rem;border:1.5px solid var(--g);background:var(--g);color:#fff;cursor:pointer;transition:.18s}
.btn:hover{background:var(--gd);border-color:var(--gd)}
.btn.o,.btn.w3{background:transparent;color:var(--g)}
.btn.o:hover,.btn.w3:hover{background:var(--soft);color:var(--gd);border-color:var(--g)}
.btn.w2{background:var(--g);color:#fff}
.btn.sm{padding:9px 18px;font-size:.88rem}
.row{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
/* header */
header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.88);backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid var(--bd)}
.nav{display:flex;align-items:center;gap:24px;height:72px}
.logo{display:flex;align-items:center;gap:10px;font-weight:700;color:var(--gd);line-height:1.15}
.logo .mark{width:38px;height:38px;border-radius:11px;background:var(--g);color:#fff;display:grid;place-items:center;font-weight:700}
.logo small{display:block;font-weight:500;font-size:.62rem;letter-spacing:.14em;color:var(--mu);text-transform:uppercase}
nav{flex:1}
nav ul{display:flex;gap:4px;list-style:none;padding:0;justify-content:center}
nav li{position:relative}
nav li>a{display:block;padding:8px 12px;border-radius:9px;font-size:.9rem;font-weight:500;color:#34483d}
nav li>a:hover{background:var(--soft);color:var(--gd)}
.dd .menu{display:none;position:absolute;top:100%;left:0;min-width:210px;background:#fff;border:1px solid var(--bd);border-radius:14px;padding:8px;box-shadow:0 18px 40px -18px rgba(21,64,42,.25)}
.dd:hover .menu,.dd:focus-within .menu{display:block}
.dd .menu a{display:block;padding:9px 12px;border-radius:9px;font-size:.88rem;color:#34483d}
.dd .menu a:hover{background:var(--soft)}
.acts{display:flex;align-items:center;gap:10px}
.acts .tl{font-size:.9rem;font-weight:500;color:#34483d;padding:0 4px}
#m{display:none;background:none;border:1px solid var(--bd);border-radius:10px;padding:8px 12px;color:var(--tx);font-size:1rem;cursor:pointer}
@media(max-width:980px){#m{display:block}nav{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;border-bottom:1px solid var(--bd);padding:12px 24px 20px;max-height:80vh;overflow:auto}nav.open{display:block}nav ul{flex-direction:column;align-items:stretch}.dd .menu{display:block;position:static;border:0;box-shadow:none;padding:0 0 0 14px}.acts .tl{display:none}.nav{gap:12px}.acts{margin-left:auto}}
/* hero */
.hero{position:relative;overflow:hidden;background:linear-gradient(180deg,#f0f9f4 0%,#fff 100%);padding:104px 0 92px;color:var(--tx)}
.hero:before{content:"";position:absolute;right:-120px;top:-140px;width:560px;height:560px;border-radius:50%;background:radial-gradient(circle,#cfeadb 0,rgba(207,234,219,0) 68%)}
.hero .w{position:relative}
.hero h1{font-size:clamp(2.3rem,5.4vw,3.8rem);max-width:780px;color:var(--gd);line-height:1.08}
.hero p{max-width:620px;margin-top:20px;color:var(--mu);font-size:1.1rem}
.hero .eyebrow{color:var(--g)}
.strip{background:var(--soft);padding:18px 0;font-size:.85rem;color:var(--gd);border-top:1px solid var(--bd);border-bottom:1px solid var(--bd)}
.strip .w{display:flex;gap:10px 30px;flex-wrap:wrap;align-items:center}
.strip b{letter-spacing:.14em;color:var(--g)}
/* cards */
.grid{display:grid;gap:20px;margin-top:36px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.card{background:var(--card);border:1px solid var(--bd);border-radius:18px;padding:26px;transition:.2s}
a.card:hover{transform:translateY(-3px);box-shadow:0 22px 40px -24px rgba(21,64,42,.35);border-color:var(--mint)}
.card .n{display:inline-block;font-size:.72rem;font-weight:600;letter-spacing:.06em;color:var(--g);background:var(--soft);padding:3px 10px;border-radius:999px;margin-bottom:12px}
.card h3{margin-bottom:8px}
.card p,.card li{color:var(--mu);font-size:.94rem}
.card .tag{font-size:.82rem;color:var(--g);margin-top:12px;font-weight:600}
.card img.cv{width:calc(100% + 52px);margin:-26px -26px 18px;height:180px;object-fit:cover;border-radius:18px 18px 0 0}
.journey{display:flex;flex-wrap:wrap;gap:8px;margin-top:32px;align-items:center}
.journey span{background:#fff;border:1px solid var(--bd);border-radius:999px;padding:10px 18px;font-size:.86rem;font-weight:600;color:var(--gd)}
.journey i{color:var(--g);font-style:normal}
.split{display:grid;gap:48px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:center}
.ev{display:flex;gap:18px;align-items:center;padding:18px 0;border-bottom:1px solid var(--bd);flex-wrap:wrap}
.ev .d{background:var(--soft);color:var(--gd);border-radius:14px;padding:10px 14px;text-align:center;min-width:70px;font-weight:700;line-height:1.2}
.ev .d small{display:block;font-size:.62rem;letter-spacing:.1em;color:var(--g)}
.ev div.t{flex:1;min-width:200px;font-weight:600}
.ev a{color:var(--g);font-weight:600;font-size:.9rem;margin-left:10px}
.pill{display:inline-block;border:1px solid var(--bd);background:#fff;border-radius:999px;padding:6px 14px;font-size:.82rem;color:var(--mu);margin:4px 6px 4px 0}
a.pill:hover{border-color:var(--g);color:var(--gd)}
.cta{background:linear-gradient(135deg,#e6f5ec,#d3ecdd);text-align:center;color:var(--gd)}
.cta h2{color:var(--gd)}.cta p{max-width:680px;margin:0 auto;color:#3c5b49}.cta .row{justify-content:center}
.three{display:grid;gap:22px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-top:30px}
.three div{border-top:3px solid var(--g);padding-top:16px}
.three h3{font-size:1rem}.three p{color:var(--mu);font-size:.93rem}
form.sub{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
form.sub input{flex:1;min-width:230px;padding:12px 16px;border:1px solid var(--bd);border-radius:12px;font:inherit;background:#fff}
/* forms */
.f label{display:block;font-weight:500;font-size:.86rem;margin:16px 0 6px;color:#34483d}
.f input,.f select,.f textarea{width:100%;min-width:0;padding:12px 14px;border:1px solid var(--bd);border-radius:12px;background:#fff;color:var(--tx);font:inherit}
.f input:focus,.f select:focus,.f textarea:focus,form.sub input:focus{outline:none;border-color:var(--g);box-shadow:0 0 0 4px #d8eee2}
.f .chk{display:flex;gap:10px;align-items:flex-start;font-weight:400}.f .chk input{width:auto;margin-top:5px}
.f button{margin-top:22px}
.hp{position:absolute;left:-9999px}
.msg{background:var(--soft);color:var(--gd);padding:14px 24px;text-align:center;border-bottom:1px solid var(--mint);font-size:.94rem}
.msg.err{background:#fdecea;color:#8f1d16;border:1px solid #f5c6c2;border-radius:12px;text-align:left;margin:10px 0}
/* media */
.gal{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));margin-top:28px}
.gal img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px;cursor:zoom-in;transition:.2s}.gal img:hover{opacity:.9}
.vid{position:relative;padding-top:56.25%;border-radius:16px;overflow:hidden;background:#0d1a13}.vid iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.amts{display:flex;gap:8px;flex-wrap:wrap}.amts button{padding:10px 18px;border:1px solid var(--bd);background:#fff;border-radius:12px;font:inherit;cursor:pointer;margin:0!important}.amts button:hover,.amts button.on{border-color:var(--g);background:var(--soft);color:var(--gd)}
.lb{position:fixed;inset:0;background:rgba(10,25,17,.86);display:grid;place-items:center;z-index:99;cursor:zoom-out;padding:24px}.lb img{max-height:90vh;max-width:94vw;border-radius:12px}
/* footer */
footer{background:var(--alt);border-top:1px solid var(--bd);padding:64px 0 28px;color:var(--mu);font-size:.92rem}
.fg{display:grid;gap:36px;grid-template-columns:1.5fr repeat(3,1fr)}
@media(max-width:820px){.fg{grid-template-columns:1fr 1fr}}
footer h4{color:var(--gd);font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:14px}
footer a{display:block;padding:4px 0}footer a:hover{color:var(--g)}
.fb{margin-top:40px;padding-top:20px;border-top:1px solid var(--bd);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:.84rem}
