/* A quieter, photo-led visual identity shared across the site. */
:root{--bg:#f5f5f0;--bg-2:#eaece6;--panel:#fff;--line:#d6dcd5;--txt:#172c29;--muted:#526560;--accent:#12674e;--accent-2:#247963;--accent-grad:linear-gradient(110deg,#165f4c,#247d60);--radius:12px;--shadow:0 16px 40px #193d2910}
body{font-family:Arial,Helvetica,sans-serif;letter-spacing:-.01em}body::before,.orb{display:none!important}.wrap{max-width:1240px;padding:0 32px}header{background:rgba(245,245,240,.97);backdrop-filter:blur(15px)}.nav{height:84px}.logo{font-size:1.05rem;letter-spacing:-.03em}.nav-links{gap:22px}.nav-links a{font-size:.86rem}.nav-phone{font-size:.9rem}.btn{border-radius:7px;padding:15px 22px;box-shadow:none;font-size:.93rem}.btn-primary{background:#175f4a;color:#fff;box-shadow:none}.btn-primary:hover{background:#114e3c;box-shadow:none}.btn-ghost{border-color:#9caaa3}.pad{padding-top:78px;padding-bottom:78px}.eyebrow{color:#17644d;letter-spacing:.17em;font-size:.72rem;font-weight:700}.sec{font-size:clamp(1.8rem,3.3vw,2.8rem);line-height:1.13;letter-spacing:-.045em;font-weight:700}.sec-intro{max-width:650px;line-height:1.75}.hero::before{display:none}.hero{padding:65px 0}.hero h1{font-size:clamp(2.4rem,4vw,3.6rem);letter-spacing:-.055em;font-weight:700}.home-hero{background:#16342d;color:#f7faf6;padding:60px 0}.home-hero .hero-grid{grid-template-columns:1.05fr 1fr;gap:65px}.home-hero h1{font-size:clamp(3rem,5.5vw,4.8rem);line-height:1.02;margin:24px 0}.home-hero .grad-text{background:none;-webkit-text-fill-color:#bae8b4;color:#bae8b4}.home-hero .badge{padding:0;border:0;background:none;color:#c1d8ce;font-size:.69rem;letter-spacing:.15em;margin:0}.home-hero p.sub{color:#d0ded7;font-size:1.08rem;line-height:1.8}.home-hero .btn-primary{background:#c6edb7;color:#17352b}.home-hero .btn-ghost{color:#fff;border-color:#809c90}.home-hero .hero-phone{font-size:.87rem;color:#c1d8ce}.home-hero .hero-phone a{text-decoration:underline;color:#fff}.home-hero .hero-trust{font-size:.74rem;color:#b8cec3;border-top:1px solid #526d5f;padding-top:22px;margin-top:27px;gap:18px}.feature-photo{position:relative;margin:0;height:560px;border-radius:10px;overflow:hidden}.feature-photo>img{width:100%;height:100%;object-fit:cover;object-position:center 38%;display:block}.feature-photo:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#092c24e8);pointer-events:none}.feature-photo figcaption{position:absolute;z-index:1;left:28px;bottom:28px;color:#fff}.feature-photo span{font-size:.66rem;letter-spacing:.14em}.feature-photo strong{display:block;font-size:2rem;letter-spacing:-.04em;line-height:1.1;margin:14px 0}.feature-photo a{font-size:.85rem;text-decoration:underline}.proof{background:#e8eddf;border-bottom:1px solid var(--line)}.proof .item{font-size:.8rem;color:#27483b}.card,.tcard,.proj-card,.blog-card{box-shadow:none;border:1px solid var(--line);border-radius:10px}.card:hover,.proj-card:hover,.blog-card:hover{box-shadow:0 12px 26px #183c2110;transform:translateY(-3px)}.card .ic{background:#eaf1e8;color:#175f4a}.card h3{letter-spacing:-.025em}.proj-card .thumb{aspect-ratio:4/3}.proj-card .cbody{padding:24px}.proj-card .cat,.blog-card .cat{color:#17644d;background:#e9f0e6}.proj-card .meta{color:#17644d}.tcard .stars{color:#846109}.quote{background:#e6edde}.form{box-shadow:0 14px 45px #1c44230b}.field input,.field select,.field textarea{background:#fff}.faq details{background:#fff}.subhero{background:#e9eee3}.article-hero{background:#e9eee3}footer{background:#172e27;color:#e9f1e9;--txt:#e9f1e9;--muted:#b8cabe;--accent:#b8e7a8;--line:#42584b}footer a:hover{color:#b8e7a8}.mobile-bar{background:#f5f5f0f7}.mobile-menu-toggle{background:#fff}.nav-links.mobile-open{background:#f5f5f0;top:84px}.area-pill{background:#fff}.lb{color:#fff}.lb .caption{color:#fff}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #438c65;outline-offset:4px}
@media(max-width:1100px){.nav-phone{display:none}.nav-links{gap:16px}}
@media(max-width:880px){.wrap{padding:0 22px}.home-hero .hero-grid{grid-template-columns:1fr;gap:32px}.home-hero{padding:40px 0}.feature-photo{height:420px}.pad{padding-top:52px;padding-bottom:52px}.nav{height:70px}.nav-links.mobile-open{top:70px}.hero h1{font-size:2.7rem}.home-hero h1{font-size:3.5rem}}
@media(max-width:560px){.wrap{padding:0 18px}.logo{font-size:.94rem}.home-hero h1{font-size:clamp(2.7rem,11vw,3.5rem)}.feature-photo{height:360px}.home-hero .hero-actions{gap:10px}.hero-actions .btn{padding:13px 16px}.hero-trust{gap:12px}.feature-photo strong{font-size:1.7rem}.feature-photo figcaption{left:22px;bottom:22px}.sec{font-size:2rem}.card{padding:24px}.mobile-bar .btn{padding:12px 8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
.home-hero h1{font-size:clamp(2.5rem,4.2vw,3.65rem);line-height:1.08}.service-choices .card{display:flex;flex-direction:column;gap:16px}.service-choices .card-cta{margin-top:auto}.quote-extras{margin:14px 0 20px}.quote-extras summary{cursor:pointer;padding:12px 0;font-weight:600}.quote-extras[open] summary{margin-bottom:12px}.feature-photo>img{object-position:center 40%}@media(max-width:560px){.home-hero h1{font-size:clamp(2.2rem,8.6vw,3rem)}}
