
:root{
  --green-900:#396c2b; --green-700:#61ae24; --green-500:#60d700;
  --ink:#10170e; --muted:#64705f; --paper:#f7faf5; --light:#eeeeee; --gray:#aaaaaa;
  --white:#fff; --shadow:0 18px 55px rgba(35,75,25,.13); --radius:22px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:var(--paper);line-height:1.7}
a{text-decoration:none;color:inherit}
img{display:block;width:100%;object-fit:cover}
.container{width:min(1160px,92%);margin:auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(247,250,245,.88);backdrop-filter:blur(16px);border-bottom:1px solid rgba(57,108,43,.12)}
.nav{height:78px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.logo{display:flex;align-items:center;gap:11px;font-weight:900;letter-spacing:-.03em;font-size:1.2rem}
.logo-mark{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,var(--green-900),var(--green-500));display:grid;place-items:center;color:#fff;box-shadow:0 8px 22px rgba(96,215,0,.22)}
.logo-mark svg{width:23px}
.nav-links{display:flex;gap:24px;align-items:center}
.nav-links a{font-size:.92rem;font-weight:700;color:#34402f;position:relative}
.nav-links a:after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:2px;background:var(--green-500);transition:.3s}
.nav-links a:hover:after,.nav-links a.active:after{width:100%}
.nav-cta,.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 19px;border-radius:999px;background:var(--green-900);color:#fff;font-weight:800;border:0;cursor:pointer;transition:.3s;box-shadow:0 10px 25px rgba(57,108,43,.18)}
.nav-cta:hover,.btn:hover{transform:translateY(-3px);background:var(--green-700)}
.btn.alt{background:#fff;color:var(--green-900);border:1px solid #dce7d8;box-shadow:none}
.menu{display:none;background:none;border:0;font-size:1.7rem}
.hero{min-height:680px;display:grid;align-items:center;position:relative;overflow:hidden;background:radial-gradient(circle at 78% 25%,rgba(96,215,0,.18),transparent 30%),linear-gradient(125deg,#f7faf5 0%,#edf6e9 100%)}
.hero:before{content:"";position:absolute;width:500px;height:500px;border:1px solid rgba(96,215,0,.18);border-radius:50%;right:-150px;top:-170px;animation:spin 24s linear infinite}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center;position:relative}
.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border:1px solid #dcebd7;background:#fff;border-radius:999px;color:var(--green-900);font-weight:800;font-size:.78rem;text-transform:uppercase;letter-spacing:.11em}
.eyebrow i{width:7px;height:7px;border-radius:50%;background:var(--green-500);box-shadow:0 0 0 6px rgba(96,215,0,.13)}
h1{font-size:clamp(3rem,6vw,5.4rem);line-height:.98;letter-spacing:-.065em;margin:22px 0}
h2{font-size:clamp(2rem,4vw,3.3rem);line-height:1.05;letter-spacing:-.045em}
h3{line-height:1.15}
.hero p{font-size:1.1rem;color:#56624f;max-width:650px}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.hero-media{height:520px;border-radius:34px;overflow:hidden;box-shadow:var(--shadow);position:relative}
.hero-media img{height:100%}
.media-label{position:absolute;left:20px;bottom:20px;background:rgba(16,23,14,.76);color:#fff;padding:12px 15px;border-radius:15px;backdrop-filter:blur(8px);font-size:.82rem}
.section{padding:100px 0}
.section-head{display:flex;justify-content:space-between;gap:35px;align-items:end;margin-bottom:45px}
.section-head p{max-width:560px;color:var(--muted)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{background:#fff;border:1px solid #e2eadf;border-radius:var(--radius);padding:28px;box-shadow:0 8px 35px rgba(35,75,25,.05);transition:.35s}
.card:hover{transform:translateY(-8px);box-shadow:var(--shadow)}
.icon{width:48px;height:48px;border-radius:15px;background:#edf8e9;color:var(--green-900);display:grid;place-items:center;font-weight:900;font-size:1.2rem;margin-bottom:20px}
.card p{color:var(--muted);margin-top:10px}
.feature{display:grid;grid-template-columns:.9fr 1.1fr;gap:65px;align-items:center}
.feature-img{height:500px;border-radius:30px;overflow:hidden;box-shadow:var(--shadow)}
.feature-img img{height:100%}
.checks{display:grid;gap:13px;margin:24px 0}
.check{display:flex;gap:12px;align-items:flex-start}
.check b{width:25px;height:25px;border-radius:50%;background:#e5f5df;color:var(--green-900);display:grid;place-items:center;flex:0 0 auto}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:40px}
.stat{padding:24px;background:#fff;border:1px solid #e2eadf;border-radius:18px}
.stat strong{display:block;font-size:2.2rem;letter-spacing:-.05em;color:var(--green-900)}
.stat span{font-size:.88rem;color:var(--muted)}
.page-hero{padding:110px 0 80px;background:linear-gradient(135deg,#eef7e9,#f7faf5);border-bottom:1px solid #e1eadf}
.page-hero p{max-width:720px;color:var(--muted);font-size:1.08rem;margin-top:20px}
.split-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.service-card{min-height:280px}
.process{counter-reset:step;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.step{position:relative;padding:28px;background:#fff;border:1px solid #e2eadf;border-radius:20px}
.step:before{counter-increment:step;content:"0" counter(step);font-weight:900;color:var(--green-700);font-size:2rem}
.step h3{margin:18px 0 10px}
.step p{color:var(--muted)}
.team{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.person{background:#fff;border:1px solid #e2eadf;border-radius:24px;overflow:hidden;box-shadow:0 8px 35px rgba(35,75,25,.05)}
.person img{height:360px}
.person-body{padding:23px}
.role{color:var(--green-700);font-weight:900;font-size:.8rem;text-transform:uppercase;letter-spacing:.1em}
.person p{color:var(--muted);margin-top:9px}
.photo-note{font-size:.76rem;color:#788371;margin-top:12px}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:24px}
.contact-card{padding:34px;background:#fff;border:1px solid #e2eadf;border-radius:24px}
.contact-list{display:grid;gap:18px;margin-top:22px}
.contact-item{display:flex;gap:13px}
.contact-item strong{display:block}
.contact-item span{color:var(--muted)}
.form{display:grid;gap:15px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}
label{font-weight:800;font-size:.82rem}
input,textarea,select{width:100%;margin-top:7px;padding:14px 15px;border:1px solid #dce6d9;border-radius:14px;background:#fbfdfb;font:inherit;outline:none}
input:focus,textarea:focus{border-color:var(--green-500);box-shadow:0 0 0 4px rgba(96,215,0,.1)}
textarea{min-height:150px;resize:vertical}
.notice{padding:13px 16px;border-radius:13px;background:#edf8e9;color:var(--green-900);display:none;font-weight:700}
footer{background:#10170e;color:#dce7d8;padding:70px 0 25px;margin-top:30px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:50px}
footer p,footer a{color:#aebaa9}
footer h3{color:#fff;margin-bottom:15px}
.footer-links{display:grid;gap:9px}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:45px;padding-top:20px;font-size:.82rem;display:flex;justify-content:space-between;gap:20px}
.reveal{opacity:0;transform:translateY(25px);transition:opacity .8s ease,transform .8s ease}
.reveal.show{opacity:1;transform:none}
.float{animation:float 5s ease-in-out infinite}
@keyframes float{50%{transform:translateY(-12px)}}
@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:900px){
 .nav-links{position:absolute;top:78px;left:0;right:0;background:#f7faf5;padding:20px 4%;display:none;flex-direction:column;align-items:flex-start;border-bottom:1px solid #dce7d8}
 .nav-links.open{display:flex}.menu{display:block}.nav-cta{display:none}
 .hero-grid,.feature,.contact-grid{grid-template-columns:1fr}.hero{min-height:auto;padding:80px 0}.hero-media{height:420px}.cards,.team{grid-template-columns:1fr 1fr}.process{grid-template-columns:1fr 1fr}.stats{grid-template-columns:1fr 1fr}
 .section{padding:75px 0}.feature-img{height:380px}.footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
 h1{font-size:3rem}.section-head{display:block}.section-head p{margin-top:15px}.cards,.team,.split-grid,.process,.stats,.form-row,.footer-grid{grid-template-columns:1fr}.hero-media{height:330px}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:8px}
}
