:root{--ink:#162b25;--deep:#0e241e;--mint:#c7f87b;--paper:#fafbf7;--mist:#eef3eb;--line:#dce5d9;--soft:#52645a;--green:#2b6248}
body{font-size:16px}
.wrap{width:min(1232px,calc(100% - 96px))}
.top{background:var(--deep);color:#fff;border-color:#ffffff20}
.bar{min-height:76px}
.brand{font-size:26px;letter-spacing:-.065em}
.brand>span{background:var(--mint);color:var(--deep);border-radius:10px;width:36px;height:36px}
.brand b{color:var(--mint)}
svg{width:19px;height:19px;flex:none;vertical-align:middle}
.brand svg{width:21px;height:21px}
nav{color:#e2ebe3;gap:34px;font-weight:600}
.button,.button.small{border-radius:9px}
.mint,.dark{background:var(--mint);color:var(--deep)}
.inner{background:var(--paper);color:var(--ink)}
.hero{background:radial-gradient(ellipse at 80% 110%,#23483a,var(--deep) 67%);color:white;border-bottom:1px solid var(--line)}
.hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.13fr);gap:42px;padding-block:39px 48px}
.hero-copy{padding-block:30px}
.eyebrow,.green{color:var(--green);letter-spacing:.14em}
.hero .eyebrow{color:#bfd9c6}
.eyebrow i{display:none}
.hero h1{max-width:11ch;font-size:clamp(47px,5.6vw,87px);line-height:.96;letter-spacing:-.067em;margin:16px 0 22px}
.hero-copy>p,.inner p{color:var(--soft);font-size:17px}
.hero-copy>p{color:#d7e6da}
.search{border:1px solid #dce5d9;border-radius:12px;background:#fff}
.search svg{color:var(--green)}
.quick{color:#d1e0d4;gap:8px}
.quick a{border:1px solid #ffffff35;border-radius:30px;padding:3px 8px;color:#fff}
.quick a:hover{color:var(--mint)}
.hero-image{margin:0;width:100%;min-height:390px;border-radius:18px;background:var(--mist);align-self:center;aspect-ratio:1.42}
.hero-image img{object-position:87% center}
.hero-image::after{display:none}
.section{padding-block:64px}
.section-title{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:23px}
.section-title h2{margin:0}
.section-title>a,.home-guide a{font-weight:700;color:var(--green);text-decoration:underline;text-underline-offset:4px}
.categories{gap:20px}
.category,.category:hover{background:none;border:0;border-radius:0;box-shadow:none;padding:0}
.category-lead{display:block}
.category img{display:block;width:100%;aspect-ratio:1.75;object-fit:cover;border-radius:12px}
.category h3{display:flex;align-items:center;gap:7px;font-size:22px;margin:13px 0 10px}
.category h3>svg{margin-left:auto;color:var(--green);width:16px}
.category-symbol{display:grid;place-items:center;width:31px;height:31px;flex:none;border-radius:8px;background:#e5f2dd;color:#245139}
.category-symbol svg{width:17px;height:17px}
.category ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.category li{padding:6px 0;border-bottom:1px solid var(--line);font-size:14px}
.category a:hover,.service:hover{text-decoration:underline;text-underline-offset:4px}
.catalog .eyebrow{display:none}
.cards{grid-template-columns:1fr;gap:0;border-top:1px solid #ccd9cc}
.service,.service:hover{border:0;border-bottom:1px solid #ccd9cc;box-shadow:none;background:none;border-radius:0;display:grid;grid-template-columns:170px 1fr 208px;gap:22px;align-items:center;padding:15px 4px}
.service .tag{border-radius:0;padding:0;background:none;color:var(--green);align-self:center;font-size:13px;font-weight:700}
.service-bottom{margin:0}
.service-bottom .arrow{border-radius:8px;background:#dcead9;color:var(--ink)}
.filters{margin-bottom:18px}
.filters button{border-radius:999px;background:var(--paper);border-color:#c6d6c5}
.home-guide,.category-hero{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:48px}
.home-guide img,.category-hero img,.service-photo{width:100%;object-fit:cover;border-radius:15px;display:block}
.home-guide img{aspect-ratio:1.75}
.home-guide h2{margin-bottom:12px}
.home-guide p,.detail-info dd{color:var(--soft)}
.inner{border-bottom:1px solid var(--line)}
.category-hero img{aspect-ratio:2}
.crumb{color:var(--green)}
.inner h1{letter-spacing:-.06em}
.service-grid{grid-template-columns:1.18fr .82fr;gap:64px}
.intro-price{border-color:var(--mint);margin-top:20px}
.intro-price strong{color:var(--green)}
.service-photo{aspect-ratio:2.65;margin-top:20px}
.quote{background:#fff;border:1px solid var(--line);border-top:4px solid #89bf4b;border-radius:14px;align-self:start}
.quote h2 svg{color:var(--green);width:23px;height:23px}
.quote input,.quote textarea{border-radius:8px;border-color:#bfcfbe;background:#fff}
.estimate{border-radius:8px}
.detail-info{grid-template-columns:.78fr 1.22fr}
.detail-info dl{margin:0;border-top:1px solid var(--line)}
.detail-info dt{font-family:var(--heading);font-size:21px;font-weight:700;padding-top:15px}
.detail-info dd{margin:4px 0 0;padding-bottom:15px;border-bottom:1px solid var(--line)}
footer .brand b{color:var(--mint)}
@media(max-width:950px){.wrap{width:calc(100% - 56px)}.hero-grid{gap:26px}.hero-image{min-height:300px}.service-grid,.home-guide,.category-hero{gap:28px}}
@media(min-width:661px) and (max-width:800px){.hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,.92fr)}.search .button{padding-inline:12px}.hero-copy{padding-block:12px}}
@media(max-width:660px){.wrap{width:calc(100% - 32px)}.bar{min-height:64px}.brand{font-size:21px}.brand>span{width:29px;height:29px}.hero-grid,.home-guide,.category-hero,.service-grid{grid-template-columns:1fr}.hero-grid{padding-block:20px;gap:12px}.hero-copy{padding-block:8px 14px}.hero h1{font-size:clamp(45px,11vw,66px)}.hero-image{min-height:210px;aspect-ratio:1.7}.section{padding-block:39px}.section-title{align-items:start;flex-direction:column}.section-title>a{font-size:14px}.categories{gap:22px 12px}.category h3{font-size:19px}.category li{font-size:12px}.service,.service:hover{grid-template-columns:1fr auto;gap:5px 12px;padding:13px 0}.service .tag{grid-column:1/-1}.service h3{font-size:18px}.service-bottom small{display:none}.service-bottom strong{font-size:15px}.service-bottom .arrow{display:none}.detail-info h2 br{display:none}}
