:root{
  --green:#4f8b32;
  --green-deep:#2f611f;
  --green-soft:#eef6e9;
  --ink:#122019;
  --muted:#657269;
  --line:#e3ebe3;
  --soft:#f6f9f4;
  --shadow:0 24px 70px rgba(25,58,35,.12);
}
body{font-family:"Plus Jakarta Sans",sans-serif;letter-spacing:-.012em;overflow-x:hidden}
.wrap{width:min(1180px,calc(100% - 48px))}
header{transition:background .3s ease,box-shadow .3s ease,border-color .3s ease}
header.scrolled{background:rgba(255,255,255,.97);box-shadow:0 10px 35px rgba(18,32,25,.07);border-color:transparent}
header::after{content:"";position:absolute;left:0;bottom:-1px;width:var(--scroll-progress,0%);height:2px;background:var(--green);transition:width .08s linear}
nav{height:84px}.links{gap:32px}.links>a:not(.btn){position:relative}.links>a:not(.btn)::after{content:"";position:absolute;left:0;right:100%;bottom:-6px;height:2px;background:var(--green);transition:right .25s ease}.links>a:not(.btn):hover::after{right:0}
.btn{min-height:48px;border-radius:999px;padding:13px 22px;box-shadow:0 8px 24px rgba(79,139,50,.18)}.btn-outline{box-shadow:none;background:rgba(255,255,255,.72)}
.hero{min-height:760px;position:relative;background-position:center 42%}.hero::after{content:"";position:absolute;inset:auto 0 0;height:130px;background:linear-gradient(transparent,#fff);pointer-events:none}.hero-copy{position:relative;z-index:2;max-width:680px;padding:132px 0 170px}.eyebrow{display:inline-flex;align-items:center;gap:9px;margin-bottom:22px;font-size:.76rem;letter-spacing:.15em}.eyebrow::before{content:"";width:24px;height:2px;border-radius:99px;background:currentColor}.hero h1{font-size:clamp(3rem,6.5vw,6rem);max-width:900px;letter-spacing:-.055em}.hero p{font-size:1.15rem;line-height:1.75;margin:28px 0 36px}.ticks{gap:12px;margin-top:40px;flex-wrap:wrap}.ticks span{padding:8px 13px;border:1px solid rgba(79,139,50,.16);border-radius:999px;background:rgba(255,255,255,.78);backdrop-filter:blur(8px)}
section{padding:125px 0}.section-head{margin-bottom:58px}.section-title{font-size:clamp(2.3rem,4.5vw,4rem)}.section-head p{font-size:1.03rem;line-height:1.8}
.house-grid{gap:70px;grid-template-columns:1.2fr .8fr}.house-card{border-radius:26px;border:1px solid rgba(79,139,50,.08);box-shadow:var(--shadow)}.house-stage{height:570px;background:radial-gradient(circle at 50% 18%,#fff 0,#edf4ef 58%,#e1ebe3 100%)}.scene-help{left:20px;bottom:20px;border-radius:999px;padding:9px 14px;background:rgba(18,32,25,.78);backdrop-filter:blur(10px)}.zone-panel{padding:30px 0}.zone-panel h3{font-size:2.35rem;letter-spacing:-.04em}.zone-panel p{font-size:1.02rem;line-height:1.8}.chips{gap:10px;margin-top:28px}.chip{border-radius:999px;padding:11px 16px;transition:.2s ease}.chip:hover{border-color:#a8c99a;background:var(--green-soft);transform:translateY(-1px)}
.services{background:linear-gradient(180deg,#f7faf5 0%,#f1f6ef 100%)}.cards{gap:22px}.card{min-height:260px;border-radius:20px;padding:32px;border-color:rgba(79,139,50,.12);box-shadow:0 2px 0 rgba(79,139,50,.03);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.card:hover{transform:translateY(-7px);box-shadow:0 22px 50px rgba(25,58,35,.1);border-color:rgba(79,139,50,.28)}.icon{width:52px;height:52px;border-radius:15px;background:var(--green-soft);color:var(--green)}.icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.card h3{font-size:1.22rem;margin-top:26px}.card p{line-height:1.75}
.process-section{background:#fff}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.process-step{position:relative;padding:34px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(145deg,#fff,#f8faf7);overflow:hidden}.process-step::after{content:attr(data-step);position:absolute;right:18px;top:5px;font:800 5.6rem/1 Manrope,sans-serif;color:rgba(79,139,50,.07)}.process-step .step-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:14px;background:var(--green);color:#fff;font-weight:800}.process-step h3{font:700 1.25rem Manrope,sans-serif;margin:24px 0 9px}.process-step p{margin:0;color:var(--muted);line-height:1.75}
.quote{position:relative;background:linear-gradient(135deg,#112019 0%,#192b22 100%);overflow:hidden}.quote::before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;right:-220px;top:-250px;background:radial-gradient(circle,rgba(79,139,50,.25),transparent 68%)}.quote-grid{position:relative;gap:90px}.location{border-radius:16px;background:rgba(255,255,255,.03)}.form{border-radius:24px;padding:38px;box-shadow:0 25px 70px rgba(0,0,0,.22)}.field input,.field textarea,.field select{border-radius:12px;padding:14px 15px;background:#fbfdfb;transition:border-color .2s,box-shadow .2s}.field input:focus,.field textarea:focus,.field select:focus{outline:0;border-color:var(--green);box-shadow:0 0 0 4px rgba(79,139,50,.12)}.checks{border-radius:14px;padding:18px;gap:12px}footer{padding-top:66px}.foot{gap:60px}
.reveal{opacity:0;transform:translateY(34px);transition:opacity .75s cubic-bezier(.2,.75,.2,1),transform .75s cubic-bezier(.2,.75,.2,1)}.reveal.is-visible{opacity:1;transform:none}.reveal-delay-1{transition-delay:.08s}.reveal-delay-2{transition-delay:.16s}
@media(max-width:800px){.wrap{width:min(100% - 30px,1180px)}nav{height:70px}.hero{min-height:700px}.hero-copy{padding:90px 0 150px}.hero h1{font-size:3.2rem}.hero p{font-size:1.02rem}.ticks{gap:8px}.ticks span{font-size:.8rem}.house-grid{gap:38px}.house-stage{height:445px}.process-grid{grid-template-columns:1fr}.quote-grid{gap:45px}.form{padding:24px;border-radius:20px}section{padding:88px 0}.section-head{margin-bottom:42px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.card,.btn,.chip{transition:none}}
