
:root{
  --green:#2c8b2f;--green-dark:#1f6f23;--green-soft:#eaf5e9;
  --charcoal:#171a1b;--charcoal2:#242829;--text:#222;--muted:#6b7280;
  --light:#f6f7f5;--white:#fff;--border:#dfe3df;--shadow:0 12px 30px rgba(0,0,0,.10);
  --radius:18px;--container:1180px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:#fff;line-height:1.6}
img{max-width:100%;display:block} a{text-decoration:none;color:inherit}
.container{width:min(var(--container),calc(100% - 40px));margin:auto}
.section{padding:84px 0}.section-sm{padding:58px 0}.section-dark{background:var(--charcoal);color:#fff}.section-light{background:var(--light)}
.eyebrow{display:inline-block;color:var(--green);font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:.84rem;margin-bottom:10px}
.section-dark .eyebrow{color:#a9dda6}
h1,h2,h3{line-height:1.12;margin:0 0 18px}h1{font-size:clamp(2.5rem,6vw,5rem)}h2{font-size:clamp(2rem,4vw,3.2rem)}h3{font-size:1.35rem}
p{margin:0 0 18px}.lead{font-size:1.16rem;color:#4b5563;max-width:760px}.section-dark .lead{color:#d7dcda}.accent{color:var(--green)}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:center}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.text-center{text-align:center}.btn-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:14px 22px;border-radius:10px;font-weight:800;border:2px solid transparent;transition:.25s;cursor:pointer}
.btn-primary{background:var(--green);color:#fff}.btn-primary:hover{background:var(--green-dark);transform:translateY(-2px)}
.btn-dark{background:var(--charcoal);color:#fff}.btn-outline{border-color:#fff;color:#fff}.btn-outline:hover{background:#fff;color:var(--charcoal)}
.topbar{background:var(--charcoal);color:#d7dcda;font-size:.9rem}.topbar .container{display:flex;justify-content:space-between;gap:20px;padding:8px 0}
.site-header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--border)}
.navbar{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:78px}.brand{display:flex;align-items:center;gap:12px;font-weight:900;font-size:1.12rem}
.brand-mark{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,var(--green),var(--green-dark));color:#fff;font-size:.75rem;box-shadow:0 6px 18px rgba(44,139,47,.25)}
.brand-text small{display:block;font-size:.64rem;letter-spacing:.16em;color:#70786f}.nav-links{display:flex;align-items:center;gap:22px;font-weight:700}
.nav-links a{position:relative}.nav-links a:not(.btn):after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:2px;background:var(--green);transition:.2s}
.nav-links a:hover:after,.nav-links a.active:after{width:100%}.menu-toggle{display:none;border:0;background:none;font-size:1.8rem}
.hero{position:relative;overflow:hidden;background:linear-gradient(90deg,#fff 0 48%,#eef4ee 48%)}
.hero:before{content:"";position:absolute;top:0;left:46%;width:145px;height:100%;background:var(--green);transform:skewX(-15deg);z-index:1}
.hero-wrap{display:grid;grid-template-columns:1.05fr .95fr;min-height:640px;position:relative;z-index:2}.hero-copy{padding:92px 55px 92px 0;display:flex;flex-direction:column;justify-content:center}
.hero-copy p{font-size:1.12rem;color:#555;max-width:640px}.hero-media{position:relative;min-height:640px}.hero-media img{width:100%;height:100%;object-fit:cover}
.hero-stats{margin-top:-48px;position:relative;z-index:5}.stats-card{background:#fff;box-shadow:var(--shadow);border-radius:16px;display:grid;grid-template-columns:repeat(3,1fr);overflow:hidden}
.stat{padding:24px;text-align:center;border-right:1px solid var(--border)}.stat:last-child{border-right:0}.stat strong{display:block;font-size:1.2rem;color:var(--green-dark)}
.card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:26px;box-shadow:0 8px 24px rgba(0,0,0,.04);transition:.25s}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.icon{width:54px;height:54px;border-radius:14px;background:var(--green-soft);display:grid;place-items:center;font-size:1.6rem;margin-bottom:18px}
.card p{color:#5d655f}.link-arrow{color:var(--green-dark);font-weight:800}
.split-dark{background:var(--charcoal);color:#fff;border-radius:24px;overflow:hidden;display:grid;grid-template-columns:1fr 1fr}.split-dark .copy{padding:50px}.split-dark img{width:100%;height:100%;object-fit:cover;min-height:460px}
.angle-image{clip-path:polygon(10% 0,100% 0,100% 100%,0 100%);overflow:hidden}.angle-image img{width:100%;height:100%;object-fit:cover}
.check-list{display:grid;gap:12px;margin:22px 0}.check-list div{display:flex;gap:10px;align-items:flex-start}.check-list span{color:var(--green);font-weight:900}
.timeline{position:relative;padding-left:38px}.timeline:before{content:"";position:absolute;left:11px;top:6px;bottom:6px;width:2px;background:var(--green)}.timeline-item{position:relative;margin-bottom:34px}
.timeline-item:before{content:"";position:absolute;left:-34px;top:4px;width:14px;height:14px;border-radius:50%;background:var(--green);border:4px solid #fff;box-shadow:0 0 0 2px var(--green)}
.process{counter-reset:steps}.process .card{position:relative}.process .card:before{counter-increment:steps;content:counter(steps);position:absolute;right:20px;top:12px;font-size:3.7rem;font-weight:900;color:#edf2ed}
.testimonial{background:#fff;border-left:5px solid var(--green);padding:24px;border-radius:12px;box-shadow:0 8px 22px rgba(0,0,0,.05)}.testimonial strong{display:block;margin-top:14px}
.form-card{background:#fff;border-radius:20px;padding:32px;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-group{display:grid;gap:7px}.form-group.full{grid-column:1/-1}
label{font-weight:700}input,select,textarea{width:100%;padding:14px;border:1px solid #cfd5d0;border-radius:10px;font:inherit;background:#fff}textarea{min-height:140px;resize:vertical}
input:focus,select:focus,textarea:focus{outline:2px solid rgba(44,139,47,.18);border-color:var(--green)}
.cta-banner{background:linear-gradient(135deg,var(--charcoal),#0f1112);color:#fff;border-radius:24px;padding:52px;display:flex;justify-content:space-between;align-items:center;gap:30px}
.page-hero{background:var(--charcoal);color:#fff;overflow:hidden}.page-hero .inner{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;min-height:430px}.page-hero .copy{padding:70px 30px 70px 0}.page-hero .media{height:430px;clip-path:polygon(18% 0,100% 0,100% 100%,0 100%)}.page-hero img{width:100%;height:100%;object-fit:cover}
.footer{background:#111415;color:#d8dcda;padding:58px 0 24px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:30px}.footer h4{color:#fff;margin:0 0 12px}.footer a{display:block;margin:8px 0;color:#d8dcda}.footer a:hover{color:#9dd69d}.footer-bottom{border-top:1px solid #303636;margin-top:34px;padding-top:20px;font-size:.9rem;color:#9ca3a0}
.reveal{opacity:0;transform:translateY(18px);transition:.55s}.reveal.show{opacity:1;transform:none}
@media(max-width:980px){
 .nav-links{display:none;position:absolute;left:0;right:0;top:78px;background:#fff;flex-direction:column;align-items:flex-start;padding:24px 20px;border-bottom:1px solid var(--border)}
 .nav-links.open{display:flex}.menu-toggle{display:block}.hero{background:#fff}.hero:before{display:none}.hero-wrap,.grid-2,.split-dark,.page-hero .inner{grid-template-columns:1fr}
 .hero-copy{padding:72px 0 36px}.hero-media{min-height:420px}.angle-image,.page-hero .media{clip-path:none}.grid-4{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:700px){
 .topbar .container{flex-direction:column;gap:2px}.section{padding:62px 0}.section-sm{padding:46px 0}.grid-3,.grid-4,.stats-card,.form-grid{grid-template-columns:1fr}
 .stat{border-right:0;border-bottom:1px solid var(--border)}.hero-copy{padding-top:56px}.hero-media{min-height:340px}.hero-stats{margin-top:24px}.split-dark .copy{padding:30px}.split-dark img{min-height:320px}
 .cta-banner{padding:34px;flex-direction:column;align-items:flex-start}.footer-grid{grid-template-columns:1fr}.page-hero .copy{padding:52px 0 26px}.page-hero .media{height:300px}.container{width:min(100% - 28px,var(--container))}
}
