:root{--ink:#18212b;--muted:#5b6775;--line:#dfe6ee;--bg:#f7fafc;--soft:#eef5f6;--brand:#116466;--brand2:#0b3d4a;--accent:#f4a261;--white:#fff}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.6}.wrap{max-width:1120px;margin:auto;padding:0 20px}.top{background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.nav{display:flex;gap:16px;align-items:center;justify-content:space-between;padding-top:14px;padding-bottom:14px}.brand{font-weight:800;color:var(--brand2);text-decoration:none;font-size:1.05rem}.navlinks{display:flex;gap:8px;overflow:auto;white-space:nowrap}.navlinks a{color:var(--ink);text-decoration:none;font-size:.9rem;padding:8px 10px;border-radius:999px;background:#f1f5f8}.hero{background:linear-gradient(135deg,#eaf7f5,#fff);padding:38px 0 34px;border-bottom:1px solid var(--line)}.hero-grid{display:grid;gap:26px}.pill{display:inline-flex;background:#d9f0ed;color:var(--brand2);border-radius:999px;padding:6px 12px;font-size:.82rem;font-weight:700}.hero h1{font-size:clamp(1.9rem,4.2vw,3.05rem);line-height:1.06;margin:14px 0}.lead{font-size:1.05rem;color:#344454;max-width:680px}.cta-row{display:flex;flex-wrap:wrap;gap:12px}.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--brand);color:#fff;text-decoration:none;font-weight:800;border-radius:12px;padding:13px 18px;box-shadow:0 8px 20px rgba(17,100,102,.18)}.btn.alt{background:#fff;color:var(--brand2);border:1px solid var(--line);box-shadow:none}.quote-card,.side-panel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:0 12px 28px rgba(20,35,50,.08)}.section{padding:42px 0}.section.soft{background:var(--soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.split{display:grid;gap:28px}.prose{max-width:780px}.prose h2,.side-panel h2,.quote-card h2{line-height:1.15;margin-top:0;color:var(--brand2)}ul{padding-left:20px}.side-panel ul{list-style:none;padding:0;margin:0 0 20px}.side-panel li{border-bottom:1px solid var(--line);padding:9px 0}.side-panel a{color:var(--brand2);font-weight:700}.steps{display:grid;gap:16px}.steps div{background:#fff;border-left:4px solid var(--accent);padding:18px;border-radius:14px}details{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px;margin:10px 0}summary{font-weight:800;cursor:pointer}.breadcrumbs{font-size:.88rem;color:var(--muted);padding-top:18px}.notice{border-left:4px solid var(--accent);background:#fff8ed;padding:14px;border-radius:12px}.grid,.two,.three{display:grid;gap:18px}.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px}form{display:grid;gap:12px}input,textarea,select{width:100%;font:inherit;border:1px solid var(--line);border-radius:10px;padding:12px;background:#fff}label{font-weight:700}.small{font-size:.88rem;color:var(--muted)}footer{padding:32px 0;background:#10232b;color:#dbe8ec}footer p{color:#b8c8ce}@media(min-width:760px){.hero-grid{grid-template-columns:minmax(0,1fr) 340px;align-items:center}.split{grid-template-columns:minmax(0,1fr) 320px}.steps{grid-template-columns:repeat(3,1fr)}.two{grid-template-columns:repeat(2,1fr)}.three{grid-template-columns:repeat(3,1fr)}}
/* Local service photo gallery */
.photo-strip{padding:28px 0 10px;background:#fff}
.photo-grid{display:grid;gap:14px}
.service-photo{margin:0;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 12px 28px rgba(20,35,50,.08)}
.service-photo img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.service-photo figcaption{padding:10px 14px;color:var(--muted);font-size:.92rem}
@media(min-width:760px){.photo-grid{grid-template-columns:2fr 1fr 1fr}.photo-grid.two{grid-template-columns:2fr 1fr}.photo-grid figure:first-child{grid-row:span 2}}
/* Mobile-first conversion CTA */
.mobile-sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:30;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px 12px;background:rgba(255,255,255,.96);border-top:1px solid var(--line);box-shadow:0 -10px 30px rgba(0,0,0,.08)}
.mobile-sticky-cta .btn{min-height:44px;padding:10px 12px;border-radius:12px;font-size:.92rem}
@media(min-width:760px){.mobile-sticky-cta{display:none}footer{padding-bottom:36px}}
@media(max-width:759px){footer{padding-bottom:92px}.nav{align-items:flex-start}.cta-row .btn{width:100%}}
/* Homepage hero quote form */
.quote-card-form{align-self:start}.quote-card-form h2{margin-bottom:8px}.form-intro{margin:0 0 14px;color:var(--muted);font-size:.95rem}.mini-quote{display:grid;gap:10px}.mini-quote label{display:grid;gap:5px;font-weight:800;font-size:.9rem;color:var(--ink)}.mini-quote input,.mini-quote textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:11px 12px;font:inherit;background:#fff;color:var(--ink)}.mini-quote textarea{resize:vertical;min-height:92px}.mini-quote .btn,.mini-quote button{width:100%;border:0;cursor:pointer;font:inherit}.mini-quote .form-note,.mini-quote .small{margin:0;color:var(--muted);font-size:.82rem;line-height:1.35}.hp-field{display:none!important}
@media(min-width:900px){.hero-grid{grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);align-items:start}.quote-card-form{position:sticky;top:92px}}
@media(max-width:759px){.hero{padding-top:30px}.quote-card-form{margin-top:6px}.mini-quote input,.mini-quote textarea{min-height:46px}.mini-quote .btn,.mini-quote button{min-height:48px}.hero-grid{gap:18px}}

/* Portfolio image expansion: six-image local-service gallery */
.image-plan-section .section-kicker{font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#476174;font-size:.78rem;margin:0 0 .45rem}
.image-plan-section .gallery-intro{max-width:760px;color:#475569;margin:0 0 1.15rem}
.image-plan-section .photo-grid{align-items:stretch}
.image-plan-section .service-photo{background:#fff;border:1px solid rgba(15,23,42,.10);border-radius:18px;overflow:hidden;box-shadow:0 12px 30px rgba(15,23,42,.08)}
.image-plan-section .service-photo img{display:block;width:100%;aspect-ratio:16/9;height:auto;object-fit:cover;background:#e2e8f0}
.image-plan-section .service-photo figcaption{font-size:.92rem;line-height:1.35;color:#334155;padding:.8rem .95rem}

/* Clean top hero image placement */
.hero-inline-photo{margin:14px 0 14px;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 12px 28px rgba(20,35,50,.08);max-width:560px}
.hero-inline-photo img{display:block;width:100%;height:auto;max-height:260px;aspect-ratio:16/9;object-fit:cover}
.hero-inline-photo figcaption{padding:8px 12px;color:var(--muted);font-size:.84rem;line-height:1.35}
@media(min-width:900px){.hero-inline-photo{max-width:540px}.hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(340px,.85fr)}}
@media(max-width:759px){.hero h1{font-size:clamp(1.85rem,8.5vw,2.45rem)}.hero-inline-photo img{max-height:220px}}

/* Local service design polish */
.hero{padding:58px 0 52px;background:linear-gradient(135deg,#e7f4f1 0%,#ffffff 58%,#f7fbf8 100%);}
.trust-band{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;}
.trust-grid{display:grid;gap:14px;}
.trust-item{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:0 12px 28px rgba(20,35,50,.08);}
.trust-item strong{display:block;color:var(--brand2);line-height:1.2;margin-bottom:5px;}
.trust-item p{margin:0;color:var(--muted);font-size:.92rem;}
.section .wrap,.section .prose,.side-panel,.quote-card,.service-photo{border-radius:18px;}
.steps>div,.compact-symptom-list,.prose details{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 10px 24px rgba(20,35,50,.06);}
.section:nth-of-type(even){background:#fff;}
.section:nth-of-type(odd):not(.hero):not(.trust-band){background:var(--bg);}
@media(min-width:760px){.trust-grid{grid-template-columns:repeat(3,1fr)}.hero{padding:68px 0 60px;}}


/* SOP v3 service-site polish */
.trust-band{background:#fff;border-top:1px solid rgba(15,23,42,.08);border-bottom:1px solid rgba(15,23,42,.08);}
.trust-band-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;padding:1rem 0;}
.trust-band-item,.section .prose,.side-panel,.quote-card,.service-photo,.steps>div{border-radius:18px;box-shadow:0 12px 30px rgba(15,23,42,.08);}
.trust-band-item{background:#fff;padding:1rem;border:1px solid rgba(15,23,42,.08);}
.trust-band-item strong{display:block;color:#0f172a;margin-bottom:.25rem;}
.hero{padding-top:clamp(3rem,7vw,5.5rem);padding-bottom:clamp(3rem,7vw,5rem);}
.hero .lead{font-size:clamp(1.05rem,2vw,1.25rem);line-height:1.65;}
.photo-grid{align-items:stretch;}
.service-photo figcaption{font-size:.95rem;line-height:1.45;}
@media (max-width:760px){.trust-band-grid{grid-template-columns:1fr}.hero{padding-top:2rem}.navlinks{gap:.45rem}}
