
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700;900&family=Manrope:wght@500;700;800&display=swap');
:root{--ink:#172018;--muted:#66705f;--leaf:#1f6b45;--deep:#0e3224;--lime:#bdd776;--gold:#c9a24d;--cream:#faf6eb;--stone:#e9dfcf;--paper:#fffdf7;--line:rgba(23,32,24,.14);--shadow:0 24px 70px rgba(56,48,30,.16);--radius:30px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',system-ui,sans-serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,textarea,select{font:inherit}.nav{position:fixed;z-index:50;top:18px;left:50%;transform:translateX(-50%);width:min(1180px,92vw);display:flex;align-items:center;justify-content:space-between;padding:10px 12px 10px 18px;background:rgba(255,253,247,.9);backdrop-filter:blur(18px);border:1px solid var(--line);border-radius:999px;box-shadow:var(--shadow)}.brand{font-family:Manrope,sans-serif;font-weight:900;color:var(--deep);letter-spacing:-.04em}.links{display:flex;gap:2px}.links a{padding:11px 14px;border-radius:999px;color:var(--muted);font-weight:900;font-size:14px}.links a.active,.links a:hover{background:var(--deep);color:white}.phone{background:var(--leaf);color:white;border-radius:999px;padding:13px 17px;font-weight:900}.hero{padding:120px max(5vw,28px) 72px;min-height:92vh;display:grid;grid-template-columns:.95fr 1.05fr;gap:34px;align-items:center;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;right:-12vw;top:8vh;width:54vw;height:54vw;background:radial-gradient(circle,var(--lime),transparent 62%);opacity:.34}.hero>*{position:relative}.eyebrow{text-transform:uppercase;letter-spacing:.18em;color:var(--leaf);font-weight:900;font-size:12px}.display,.page-title,.h2{font-family:Manrope,sans-serif;letter-spacing:-.075em;line-height:.86;margin:14px 0}.display{font-size:clamp(58px,8vw,118px)}.page-title{font-size:clamp(54px,7.2vw,104px)}.h2{font-size:clamp(40px,5.5vw,78px)}.lead{font-size:clamp(18px,2vw,22px);line-height:1.52;color:var(--muted);max-width:720px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.btn{border:1px solid var(--line);border-radius:999px;padding:15px 20px;min-height:52px;background:white;font-weight:900;display:inline-flex;align-items:center;justify-content:center;gap:9px;cursor:pointer}.btn.primary{background:var(--leaf);color:white;border-color:var(--leaf)}.btn.gold{background:var(--gold);border-color:var(--gold);color:#221a09}.visual{border-radius:46px;overflow:hidden;box-shadow:var(--shadow);background:white;padding:12px}.visual img{width:100%;height:620px;object-fit:cover;border-radius:36px}.proof-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:14px}.proof{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:16px}.proof b{display:block;font-size:28px;color:var(--deep);font-family:Manrope}.section{padding:96px max(5vw,28px)}.section.white{background:var(--paper)}.section.green{background:linear-gradient(135deg,var(--deep),#22583c);color:white}.section.green .lead,.section.green .intro{color:#dfe8d7}.section-head{display:grid;grid-template-columns:1fr minmax(280px,520px);gap:28px;align-items:end;margin-bottom:38px}.intro{font-size:18px;line-height:1.62;color:var(--muted)}.surface-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:18px}.surface-tabs{display:grid;gap:12px}.surface{display:grid;grid-template-columns:80px 1fr;gap:16px;align-items:center;background:white;border:1px solid var(--line);border-radius:26px;padding:16px;cursor:pointer}.surface.active{background:var(--deep);color:white}.surface img{height:80px;width:80px;object-fit:cover;border-radius:18px}.surface p{margin:.25rem 0 0;color:var(--muted)}.surface.active p{color:#dfe8d7}.surface-panel{min-height:540px;border-radius:34px;overflow:hidden;box-shadow:var(--shadow);display:grid;align-content:end;padding:24px;color:white;background:linear-gradient(0deg,rgba(14,50,36,.82),rgba(14,50,36,.1)),var(--surface) center/cover}.surface-panel h3{font:900 64px/.9 Manrope,sans-serif;letter-spacing:-.07em;margin:0 0 10px}.surface-panel .lead{color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.35)}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.card{background:white;border:1px solid var(--line);border-radius:30px;overflow:hidden;box-shadow:var(--shadow)}.card img{height:220px;width:100%;object-fit:cover}.card div{padding:22px}.card h3{font:900 25px/1 Manrope,sans-serif;letter-spacing:-.04em;margin:0 0 10px}.card p{line-height:1.56;color:var(--muted);margin:0}.service-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.service-row{background:white;border:1px solid var(--line);border-radius:24px;padding:20px;display:grid;grid-template-columns:44px 1fr;gap:14px}.tick{width:44px;height:44px;border-radius:50%;background:#e7f1d2;color:var(--deep);display:grid;place-items:center;font-weight:900}.journey{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.stage{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:28px;padding:24px}.stage b{font:900 50px/1 Manrope;color:var(--lime)}.stage h3{font:900 28px/1 Manrope;letter-spacing:-.04em}.gallery{columns:3 280px;column-gap:16px}.pin{break-inside:avoid;display:block;margin:0 0 16px;border-radius:30px;overflow:hidden;background:white;border:1px solid var(--line);box-shadow:var(--shadow);position:relative}.pin img{width:100%;object-fit:cover}.pin span{position:absolute;left:14px;bottom:14px;background:rgba(14,50,36,.88);color:white;border-radius:999px;padding:10px 12px;font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:900}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px}.filters button{border:1px solid var(--line);background:white;border-radius:999px;padding:12px 16px;font-weight:900;cursor:pointer}.filters button.active{background:var(--leaf);color:white}.compare{height:590px;border-radius:36px;overflow:hidden;position:relative;box-shadow:var(--shadow);background:#ddd}.compare img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.compare .after{clip-path:inset(0 0 0 50%)}.range{position:absolute;left:30px;right:30px;bottom:28px;accent-color:var(--leaf);z-index:4}.badge{position:absolute;top:18px;background:rgba(14,50,36,.88);color:white;border-radius:999px;padding:10px 13px;text-transform:uppercase;font-size:12px;font-weight:900;letter-spacing:.12em;z-index:3}.reviews{display:grid;grid-template-columns:1.05fr .95fr;gap:18px}.review-main{background:var(--deep);color:white;border-radius:34px;padding:28px;box-shadow:var(--shadow)}.stars{color:var(--lime);letter-spacing:.08em}.review-main blockquote{font:900 clamp(28px,3.8vw,52px)/.98 Manrope;margin:18px 0;letter-spacing:-.055em}.review-list{display:grid;gap:14px}.quote{display:grid;grid-template-columns:.95fr 1.05fr;gap:20px}.quote-card{background:white;border:1px solid var(--line);border-radius:34px;padding:26px;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.form-grid input,.form-grid select,.form-grid textarea{border:1px solid var(--line);background:#fff;border-radius:18px;padding:15px;color:var(--ink);width:100%}.form-grid textarea{grid-column:1/-1;min-height:126px}.summary{background:#eef5dd;border:1px solid var(--line);border-radius:22px;padding:16px;margin-top:14px;color:var(--deep);font-weight:800}.map{min-height:520px;border-radius:34px;overflow:hidden;background:white;position:relative;box-shadow:var(--shadow);border:1px solid var(--line)}.map iframe{width:100%;height:100%;border:0}.map-card{position:absolute;left:20px;bottom:20px;background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:22px;padding:18px;display:grid;gap:5px}.footer{padding:32px max(5vw,28px);background:var(--deep);color:white;display:flex;justify-content:space-between;gap:20px}.toast{position:fixed;right:22px;bottom:22px;z-index:100;background:var(--deep);color:white;border-radius:999px;padding:14px 18px;font-weight:900;opacity:0;transform:translateY(12px);transition:.25s}.toast.show{opacity:1;transform:none}@media(max-width:960px){.links{display:none}.hero,.surface-grid,.section-head,.reviews,.quote{grid-template-columns:1fr}.cards,.journey,.proof-strip{grid-template-columns:1fr 1fr}.visual img{height:440px}.footer{display:block}}@media(max-width:620px){.phone{display:none}.hero,.section{padding-left:22px;padding-right:22px}.cards,.journey,.proof-strip,.service-list,.form-grid{grid-template-columns:1fr}.display,.page-title{font-size:54px}.surface{grid-template-columns:1fr}.compare{height:410px}}
