body{font-family:Arial,Helvetica,sans-serif;color:#234538;background:#faf9f4;--nav-menu-bg:#fff;--nav-menu-fg:#234538}header{background:#faf9f4;position:sticky;top:0;z-index:10;border-bottom:1px solid #e8e9dc}.brand{font-size:21px;letter-spacing:-.04em}.brand em{font-family:Georgia,serif;color:#a97b45;font-weight:400}.brand-mark{background:#355d43;color:white;width:43px;height:43px;border-radius:50%;font-size:26px}.nav-links .btn,.btn-primary,.submit-btn{background:#355d43;color:#fff}.btn-light{background:#fff;color:#315941}.hero{padding:70px 0 110px;background:#f0f0e5;overflow:hidden}.hero-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:58px;align-items:center}.hero h1{font:500 clamp(55px,6.9vw,98px)/.98 Georgia,serif;letter-spacing:-.065em;margin:20px 0 22px}.hero h1 em{color:#9e7544;font-weight:400}.hero p{font-size:19px;line-height:1.75;max-width:510px;color:#5d7065}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0}.hero-visual{height:550px;border-radius:230px 230px 24px 24px;box-shadow:25px 25px 0 #d7dec8;border:9px solid #fff}.hero-visual svg{object-fit:cover}.stat-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:-49px;position:relative}.stat{background:#fff;border:1px solid #e4e8dc;border-radius:18px;padding:24px;box-shadow:0 10px 35px #23453812}.stat strong{display:block;font:30px Georgia,serif}.stat span{font-size:13px;color:#62766a}.section-title{font-family:Georgia,serif;font-weight:500}.eyebrow{color:#a17c44}.service-card{background:#fff;border:1px solid #e2e5d9}.service-icon{font-size:35px}.service-card h3{font-family:Georgia,serif;font-weight:500;font-size:28px}.project{background:#fff;border:1px solid #e5e7dc;border-radius:20px;overflow:hidden}.project-art{height:240px;background:#e1ebd8}.project-copy{padding:22px}.project-copy h3{font:26px Georgia,serif;margin:5px 0}.project-copy p{color:#64776d;line-height:1.5}.filter-row button{color:#315941}.filter-row button.active{background:#355d43;color:white}.method{background:#234638;color:white}.method .eyebrow{color:#f3c78c}.method .step{padding:22px;border-left:1px solid #688071}.method .step strong{color:#f3c78c;font-size:13px}.method .step h3{font-family:Georgia,serif;font-size:26px;font-weight:500}.quote{background:#e9ede0}.quote-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}.quote .inquiry-form{background:white;border-radius:24px;padding:30px;box-shadow:0 25px 50px #123a2512}.submit-btn{margin-top:18px}.footer{background:#192f26;color:#fff}.footer a{text-decoration:underline}@media(max-width:800px){.hero-grid,.quote-wrap{grid-template-columns:1fr}.hero-visual{height:450px}.stat-strip{margin-top:22px}.hero{padding-bottom:60px}}@media(max-width:600px){.hero{padding-top:34px}.hero-visual{height:340px;border-radius:145px 145px 20px 20px}.stat-strip{grid-template-columns:1fr}.hero h1{font-size:57px}.quote .inquiry-form{padding:20px}}
/* Photographic portfolio edition */
.hero-visual img,.project-art img,.gallery-art img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
.hero-visual,.project-art,.gallery-art{overflow:hidden}
.hero-visual img{object-position:center}
.project-art img,.gallery-art img{transition:transform .35s ease}
.project:hover .project-art img,.gallery-item:hover .gallery-art img{transform:scale(1.04)}
.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:28px}
.photo-card{background:#fff;border-radius:20px;overflow:hidden;border:1px solid rgba(40,67,70,.12)}
.photo-card img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.photo-card h3,.photo-card p{margin:18px 20px}
.photo-card p{font-size:15px;line-height:1.6;color:#557080}
.photo-feature{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center;margin:48px 0 0;border-radius:24px;overflow:hidden;background:#edf3eb}
.photo-feature img{width:100%;height:100%;min-height:290px;max-height:460px;object-fit:cover}
.photo-feature>div{padding:34px}
.photo-feature h3{font-size:clamp(23px,3vw,36px);line-height:1.15;margin:12px 0}
.photo-feature p{line-height:1.7}
.photo-services{background:#eff7fa}.plumbing-feature{background:#dff2f6}
@media(max-width:780px){.photo-grid{grid-template-columns:1fr}.photo-feature{grid-template-columns:1fr}.photo-feature img{max-height:340px}.photo-feature>div{padding:22px}.hero-visual{transform:none!important}}
