/*
Theme Name: Affordable Plumbing NEPA Professional Edition
Version: 5.4.0
*/
:root{--navy:#061829;--blue:#0878c9;--cyan:#42c7f5;--ink:#0c1724;--muted:#5f7182;--light:#f3f7fa;--line:#dfe8ef;--amber:#f6b73c;--red:#b42318}
*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);line-height:1.55}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.wrap{width:min(1180px,92vw);margin:auto}
.focus-alert{background:#fff3cd;border-bottom:3px solid var(--amber);color:#3d2c05}.focus-alert .wrap{padding:13px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.focus-alert strong{color:#8a4b00}.focus-alert .notice-text{font-size:14px;font-weight:700}.focus-alert .notice-text b{color:var(--red)}.focus-alert a{background:#7a3200;color:#fff;padding:10px 14px;border-radius:8px;font-weight:900;white-space:nowrap}
.notice{background:linear-gradient(90deg,#0069ad,#0d91e5);color:#fff;font-weight:800}.notice .wrap{padding:8px 0;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}
.header{position:sticky;top:0;z-index:30;background:rgba(6,24,41,.97)}.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:12px 0}.identity{display:flex;align-items:center;gap:13px}.identity img{width:118px;height:82px;object-fit:contain;background:#fff;border-radius:10px}.identity strong{display:block;color:#fff;font-size:17px}.identity span{display:block;color:#8ddcff;font-weight:800;font-size:13px;margin-top:4px}.menu{display:flex;gap:17px;align-items:center;color:#eaf7ff;font-weight:800;font-size:13px}.button{display:inline-flex;padding:13px 18px;border-radius:9px;background:#0878c9;color:#fff;font-weight:900}.button.secondary{background:#fff;color:#061829}.button.ghost{background:transparent;border:1px solid rgba(255,255,255,.35)}
.hero{min-height:700px;display:flex;align-items:center;color:#fff;background:linear-gradient(90deg,rgba(5,18,31,.98),rgba(5,18,31,.82),rgba(5,18,31,.22)),url('assets/images/hero-boiler.webp') center/cover}.hero-copy{max-width:790px;padding:72px 0}.eyebrow{color:var(--cyan);text-transform:uppercase;letter-spacing:1.5px;font-size:13px;font-weight:900}.hero h1{font-size:clamp(43px,6.4vw,80px);line-height:.98;margin:16px 0}.hero p{font-size:20px;color:#e0f3ff}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.tagline{font-size:19px;font-weight:900;margin-top:18px}
.quick{background:#0a263e;color:#fff}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr)}.quick-item{padding:22px;text-align:center;background:rgba(255,255,255,.035)}.quick-item strong{display:block;font-size:21px}.quick-item span{color:#bcd2e2;font-size:14px}
.section{padding:76px 0}.light{background:var(--light)}.dark{background:var(--navy);color:#fff}.section-head{max-width:820px;margin-bottom:32px}.section-head h2{font-size:clamp(32px,4.2vw,54px);line-height:1.02;margin:7px 0 12px}.section-head p{color:var(--muted);font-size:18px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden}.card img{height:220px;width:100%;object-fit:cover}.card-body{padding:21px}.card h3{font-size:23px;margin:0 0 7px}.card p{color:var(--muted);margin:0}
.feature{display:grid;grid-template-columns:1.08fr .92fr;border-radius:22px;overflow:hidden;background:#0d2235}.feature img{height:100%;min-height:460px;width:100%;object-fit:cover}.feature-copy{padding:40px}.checks{display:grid;gap:10px;margin-top:20px}.check{background:rgba(255,255,255,.07);padding:11px 13px;border-radius:10px}
.portfolio{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.project{position:relative;border-radius:16px;overflow:hidden;min-height:280px}.project img{width:100%;height:100%;object-fit:cover}.project:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(4,14,24,.9))}.project span{position:absolute;z-index:2;left:18px;bottom:16px;color:#fff;font-size:20px;font-weight:900}
.footer{background:#03101d;color:#c4d6e4;padding:45px 0}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}.footer h3{color:#fff}
@media(max-width:920px){.menu{display:none}.quick-grid,.cards,.portfolio,.feature,.footer-grid{grid-template-columns:1fr}.hero{min-height:620px}.identity img{width:90px;height:68px}.focus-alert .wrap{align-items:flex-start}}

.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.review-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:0 10px 28px rgba(6,24,41,.08)}.review-stars{letter-spacing:3px;color:#f2a900;font-size:22px}.review-card h3{margin:12px 0 6px;font-size:21px}.review-card p{color:var(--muted);margin:0}.review-summary{text-align:center;margin-top:26px}.review-summary p{font-weight:800}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.trust-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:19px;text-align:center;font-weight:900}.trust-card span{display:block;color:var(--blue);font-size:25px;margin-bottom:6px}
.brands{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.brand-pill{background:#fff;border:1px solid var(--line);border-radius:999px;padding:12px 18px;font-weight:900}
.final-cta{background:linear-gradient(135deg,#0878c9,#07375e);color:#fff;border-radius:22px;padding:34px;display:flex;justify-content:space-between;align-items:center;gap:24px}.final-cta h2{font-size:clamp(30px,4vw,48px);line-height:1.02;margin:0}.final-cta p{margin:10px 0 0;color:#d9effc}
@media(max-width:920px){.review-grid,.trust-grid{grid-template-columns:1fr 1fr}.final-cta{flex-direction:column;align-items:flex-start}}
@media(max-width:560px){.review-grid,.trust-grid{grid-template-columns:1fr}}

.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.faq-item{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px}.faq-item h3{margin:0 0 8px;font-size:20px}.proof{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px;align-items:center}.proof img{border-radius:18px;width:100%;height:auto}.footer-links{display:flex;gap:14px;flex-wrap:wrap;margin-top:15px}.footer-links a{text-decoration:underline}@media(max-width:920px){.faq-grid,.proof{grid-template-columns:1fr}}

/* V2.4 refinements */
.identity img{width:150px;height:100px}
@media(max-width:920px){.identity img{width:118px;height:84px}}
.review-card blockquote{margin:12px 0 0;color:var(--muted);font-size:16px}
.review-card .reviewer{display:block;margin-top:14px;font-weight:900;color:var(--ink)}
.review-card .service-tag{display:inline-block;margin-top:10px;padding:5px 9px;border-radius:999px;background:#e8f4fb;color:#075f9c;font-size:12px;font-weight:900}


/* V2.5 production refinements */
html{scroll-behavior:smooth}.skip-link{position:absolute;left:-9999px;top:auto}.skip-link:focus{left:12px;top:12px;z-index:999;background:#fff;color:#061829;padding:10px 14px;border-radius:8px;font-weight:900}.identity-copy{display:block}.service-note{margin-top:14px;padding:12px 14px;border-left:4px solid var(--amber);background:#fff8e7;color:#46330b;border-radius:8px}.service-note strong{color:#7a3200}.local-copy{max-width:900px}.local-copy p{font-size:18px;color:var(--muted)}.service-list{margin:14px 0 0;padding-left:20px;color:var(--muted)}.service-list li{margin:7px 0}.card-body a{display:inline-block;margin-top:14px;color:var(--blue);font-weight:900}.microcopy{font-size:14px;color:var(--muted);margin-top:12px}.hero-badge{display:inline-flex;align-items:center;gap:8px;margin-top:20px;padding:8px 11px;border:1px solid rgba(255,255,255,.3);border-radius:999px;background:rgba(255,255,255,.08);font-size:13px;font-weight:900}.scope-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.scope-card{border:1px solid var(--line);border-radius:18px;padding:24px;background:#fff}.scope-card h3{font-size:24px;margin:0 0 8px}.scope-card p{color:var(--muted);margin:0}.scope-card.good{border-top:5px solid var(--blue)}.scope-card.limit{border-top:5px solid var(--amber)}
@media(max-width:1080px){.menu{gap:11px;font-size:12px}.identity strong{font-size:15px}}
@media(max-width:920px){.header{position:relative}.nav{align-items:flex-start}.menu{display:flex;flex-wrap:wrap;justify-content:flex-end}.menu a:not(.button){display:none}.scope-grid{grid-template-columns:1fr}.hero{min-height:580px}.hero-copy{padding:58px 0}}
@media(max-width:560px){.identity-copy{display:none}.identity img{width:112px;height:78px}.nav{padding:8px 0}.button{padding:11px 14px}.hero h1{font-size:42px}.hero p{font-size:18px}.section{padding:58px 0}}

/* =========================================================
   VERSION 3.0 PRODUCTION HOMEPAGE
   ========================================================= */
.hero-v3{min-height:760px;background:linear-gradient(90deg,rgba(2,13,24,.98) 0%,rgba(4,23,39,.91) 48%,rgba(4,20,34,.44) 100%),url('assets/images/hero-boiler.webp') center/cover no-repeat}
.hero-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);gap:48px;align-items:center;padding:90px 0}
.hero-v3 h1{max-width:900px;font-size:clamp(48px,7vw,88px);letter-spacing:-3px}
.hero-lead{max-width:780px}
.hero-panel{background:rgba(4,17,29,.84);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(10px);border-radius:22px;padding:24px;box-shadow:0 28px 80px rgba(0,0,0,.3)}
.panel-kicker{font-size:12px;letter-spacing:1.7px;text-transform:uppercase;color:var(--cyan);font-weight:900;margin-bottom:8px}
.hero-panel a{display:block;padding:18px 4px;border-top:1px solid rgba(255,255,255,.13);transition:.2s ease}
.hero-panel a:hover{padding-left:10px}.hero-panel strong,.hero-panel span{display:block}.hero-panel strong{font-size:18px}.hero-panel span{color:#bdd3e3;font-size:13px;margin-top:3px}
.hero-proof{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.hero-proof span{border:1px solid rgba(255,255,255,.26);background:rgba(255,255,255,.07);border-radius:999px;padding:7px 11px;font-size:12px;font-weight:900}
.button-lg{padding:15px 22px;font-size:16px}
.credential-strip{background:#071d30;color:#fff;border-top:1px solid rgba(255,255,255,.08)}.credential-grid{display:grid;grid-template-columns:repeat(4,1fr)}.credential-grid div{padding:23px 16px;text-align:center;border-right:1px solid rgba(255,255,255,.09)}.credential-grid div:last-child{border-right:0}.credential-grid strong,.credential-grid span{display:block}.credential-grid strong{font-size:18px}.credential-grid span{font-size:12px;color:#a9c4d6;margin-top:4px}
.split-intro,.local-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.split-intro h2,.local-layout h2{font-size:clamp(34px,4.7vw,58px);line-height:1.02;margin:8px 0}.split-intro p,.local-layout p{font-size:19px;color:var(--muted);margin:8px 0 0}
.center{text-align:center;margin-left:auto;margin-right:auto}.services-v3{background:#eef4f8}.service-feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.service-feature{min-height:390px;position:relative;overflow:hidden;border-radius:22px;background:#061829}.service-feature.large{grid-column:1/-1;min-height:520px}.service-feature img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transition:transform .55s ease}.service-feature:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 18%,rgba(2,12,21,.92) 100%)}.service-feature:hover img{transform:scale(1.035)}.service-overlay{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:28px;color:#fff}.service-overlay h3{font-size:clamp(27px,3vw,42px);line-height:1.03;margin:7px 0}.service-overlay p{max-width:680px;color:#d2e3ee;font-size:17px;margin:0}.service-overlay a{display:inline-block;color:#7edcff;font-weight:900;margin-top:14px}.service-number{font-size:12px;font-weight:900;color:var(--cyan);letter-spacing:1.5px}
.feature-v3{display:grid;grid-template-columns:1.08fr .92fr;align-items:stretch}.feature-media img{height:100%;min-height:580px;width:100%;object-fit:cover;border-radius:22px 0 0 22px}.feature-copy-v3{background:#0b263e;padding:56px;border-radius:0 22px 22px 0}.feature-copy-v3 h2{font-size:clamp(36px,4.6vw,56px);line-height:1.02;margin:10px 0 18px}.feature-copy-v3 p{color:#c6d8e5;font-size:18px}.feature-copy-v3 ul{padding-left:20px;color:#e7f2f8}.feature-copy-v3 li{margin:10px 0}.feature-copy-v3 .button{margin-top:12px}
.portfolio-v3{grid-template-columns:repeat(4,1fr)}.portfolio-v3 .project{min-height:260px;box-shadow:0 14px 36px rgba(6,24,41,.12)}.portfolio-v3 .project:nth-child(1),.portfolio-v3 .project:nth-child(6){grid-column:span 2}.portfolio-v3 .project:hover img{transform:scale(1.04)}.portfolio-v3 .project img{transition:transform .4s ease}
.trust-section{background:#fff}.trust-grid-v3{grid-template-columns:repeat(3,1fr)}.trust-grid-v3 .trust-card{padding:26px;box-shadow:0 10px 32px rgba(6,24,41,.06)}
.local-section{background:linear-gradient(135deg,#e9f5fc,#fff)}.final-section{padding-top:30px}.final-cta-v3{padding:46px}.cta-stack{display:flex;flex-direction:column;gap:12px;min-width:240px}.cta-stack .button{justify-content:center}
.lightbox{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.92);display:none;align-items:center;justify-content:center;padding:30px}.lightbox.open{display:flex}.lightbox img{max-width:min(1200px,92vw);max-height:82vh;object-fit:contain;border-radius:10px}.lightbox-close{position:absolute;right:25px;top:18px;background:none;border:0;color:#fff;font-size:48px;cursor:pointer}.lightbox-caption{position:absolute;bottom:18px;color:#fff;font-weight:900}.lightbox-open{overflow:hidden}
@media(max-width:980px){.hero-layout,.split-intro,.local-layout,.feature-v3{grid-template-columns:1fr}.hero-panel{max-width:620px}.credential-grid{grid-template-columns:1fr 1fr}.feature-media img{border-radius:22px 22px 0 0;min-height:420px}.feature-copy-v3{border-radius:0 0 22px 22px}.portfolio-v3{grid-template-columns:repeat(2,1fr)}.trust-grid-v3{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.hero-v3{min-height:auto}.hero-layout{padding:58px 0;gap:30px}.hero-v3 h1{font-size:46px;letter-spacing:-1.5px}.hero-actions .button{width:100%;justify-content:center}.credential-grid,.service-feature-grid,.portfolio-v3,.trust-grid-v3{grid-template-columns:1fr}.service-feature.large,.portfolio-v3 .project:nth-child(1),.portfolio-v3 .project:nth-child(6){grid-column:auto}.service-feature,.service-feature.large{min-height:410px}.feature-copy-v3{padding:32px 24px}.final-cta-v3{padding:30px 24px}.cta-stack{width:100%}}

/* V3.0.1 gallery/lightbox reliability patch */
.project.lightbox-trigger{cursor:zoom-in;display:block}
.project.lightbox-trigger::after{pointer-events:none}
.project.lightbox-trigger span{pointer-events:none}
.lightbox{visibility:hidden;opacity:0;display:flex;pointer-events:none;transition:opacity .2s ease,visibility .2s ease}
.lightbox.open{visibility:visible;opacity:1;pointer-events:auto}
.lightbox img{box-shadow:0 20px 70px rgba(0,0,0,.55)}
.lightbox-close{z-index:2;line-height:1;width:56px;height:56px;border-radius:50%;background:rgba(0,0,0,.45)}
.lightbox-caption{left:20px;right:20px;text-align:center}
@media(max-width:640px){.lightbox{padding:18px}.lightbox img{max-width:96vw;max-height:78vh}.lightbox-close{right:10px;top:10px;font-size:40px}}

/* Version 3.0.1 content, header and gallery expansion */
.identity{gap:18px;min-width:0}.identity img{width:210px;height:130px;object-fit:contain;flex:0 0 auto}.identity-copy strong{font-size:19px;line-height:1.1}.identity-copy span{display:block;margin-top:5px;font-size:12px;line-height:1.45;color:var(--muted);font-weight:800}.nav{gap:24px}.menu{margin-left:auto}
.component-section{background:#fff}.component-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.component-card{background:#f5f8fa;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 12px 34px rgba(6,24,41,.06)}.component-photo{display:block;height:235px;overflow:hidden;background:#dce6ec}.component-photo img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.component-photo:hover img{transform:scale(1.04)}.component-card>div{padding:21px}.component-card h3{margin:0 0 7px;font-size:22px}.component-card p{margin:0;color:var(--muted)}.other-services{margin-top:22px;padding:22px 24px;background:#071d30;color:#d8e9f3;border-radius:16px;line-height:1.7}.other-services strong{color:#fff}
.featured-project{background:linear-gradient(135deg,#071d30,#0b3658);color:#fff}.featured-project-head{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:28px}.featured-project-head h2{font-size:clamp(38px,5vw,62px);line-height:1.02;margin:8px 0}.featured-project-head p{color:#c9dce8;font-size:18px}.featured-project-gallery{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:16px}.featured-photo{position:relative;min-height:360px;overflow:hidden;border-radius:18px;background:#061829}.featured-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.featured-photo:hover img{transform:scale(1.04)}.featured-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(0,0,0,.85))}.featured-photo span{position:absolute;z-index:2;left:18px;right:18px;bottom:17px;color:#fff;font-weight:900}.portfolio-v3{grid-template-columns:repeat(4,1fr)}
.legal-section{padding-top:35px;background:#eef4f8}.legal-panel{background:#fff;border:1px solid var(--line);border-radius:15px;margin-bottom:14px;overflow:hidden}.legal-panel summary{cursor:pointer;padding:20px 24px;font-size:20px;font-weight:900;color:var(--ink)}.legal-panel[open] summary{border-bottom:1px solid var(--line)}.legal-copy{padding:8px 24px 22px;color:var(--muted);line-height:1.7}.legal-copy p{margin:15px 0}
@media(max-width:1080px){.identity img{width:170px;height:108px}.identity-copy strong{font-size:16px}.component-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:920px){.identity img{width:150px;height:96px}.identity-copy{display:block}.identity-copy span{font-size:10px}.featured-project-head{grid-template-columns:1fr;gap:12px}.featured-project-gallery{grid-template-columns:1fr 1fr}.featured-photo:first-child{grid-column:1/-1}}
@media(max-width:640px){.identity img{width:132px;height:84px}.identity-copy strong{font-size:13px}.identity-copy span{display:none}.component-grid,.featured-project-gallery{grid-template-columns:1fr}.featured-photo:first-child{grid-column:auto}.featured-photo{min-height:310px}}

/* =========================================================
   PROFESSIONAL EDITION 4.0 — VISUAL & MOTION UPGRADE
   ========================================================= */
:root{--copper:#d47b35;--copper-dark:#9c4f19;--ink:#06111d;--steel:#dce8ef}
html{scroll-behavior:smooth}.header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);box-shadow:0 8px 28px rgba(1,18,31,.09)}
.nav{min-height:112px;gap:24px}.identity{gap:18px;min-width:420px}.identity img{width:150px;height:94px;object-fit:contain;border-radius:10px;box-shadow:0 8px 24px rgba(5,25,41,.14)}.identity-copy strong{font-size:20px;letter-spacing:-.3px}.identity-copy span{font-size:14px;font-weight:900;color:#173b55}.identity-copy small{display:block;font-size:11px;line-height:1.35;color:#557083;margin-top:4px}.menu{gap:18px}.menu a{position:relative}.menu>a:not(.button):not(.header-call):after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:2px;background:var(--blue);transition:right .25s ease}.menu>a:hover:after{right:0}.header-call{font-weight:900;color:var(--blue)}.menu-toggle{display:none}
.hero-v3{position:relative;overflow:hidden;min-height:790px;background:linear-gradient(90deg,rgba(2,10,18,.98) 0%,rgba(4,22,38,.91) 50%,rgba(4,20,34,.45) 100%),url('assets/images/hero-boiler.webp') center/cover no-repeat;background-attachment:fixed}.hero-v3:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 40%,rgba(24,144,211,.16),transparent 34%);pointer-events:none}.hero-layout{position:relative;z-index:1}.hero-copy{animation:heroIn .85s ease both}.hero-panel{animation:panelIn .9s .15s ease both}.hero-v3 h1{max-width:930px;font-size:clamp(52px,7vw,92px);line-height:.96;letter-spacing:-3.8px;text-wrap:balance}.hero-lead{font-size:20px;line-height:1.65}.hero-actions .button{box-shadow:0 12px 30px rgba(0,137,209,.28);transition:transform .22s ease,box-shadow .22s ease}.hero-actions .button:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(0,137,209,.36)}
.same-day-banner{position:relative;z-index:5;background:linear-gradient(100deg,#0878b9 0%,#0aa8dc 52%,#0878b9 100%);color:#fff;box-shadow:0 20px 55px rgba(3,63,101,.2)}.same-day-inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;padding:30px 0}.same-day-icon{width:62px;height:62px;border:2px solid rgba(255,255,255,.55);border-radius:50%;display:grid;place-items:center;font-size:22px;animation:pulseRing 2.4s infinite}.banner-kicker{display:block;font-size:12px;letter-spacing:1.7px;text-transform:uppercase;font-weight:900;color:#dff6ff}.same-day-copy h2{font-size:clamp(27px,3.2vw,43px);line-height:1;margin:5px 0 8px;color:#fff}.same-day-copy p{margin:0;color:#e9f9ff;font-weight:800}.banner-points{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:12px}.banner-points span:before{content:"✓";font-weight:900;margin-right:7px}.banner-button{white-space:nowrap;background:#fff!important;color:#075f91!important;border-color:#fff!important;padding:16px 22px!important}.banner-button:hover{transform:translateY(-2px);box-shadow:0 12px 25px rgba(0,0,0,.18)}
.stats-band{background:#071725;color:#fff;border-top:1px solid rgba(255,255,255,.08)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}.stats-grid div{text-align:center;padding:30px 18px;border-right:1px solid rgba(255,255,255,.1)}.stats-grid div:last-child{border-right:0}.stats-grid strong{display:block;font-size:clamp(30px,4vw,50px);letter-spacing:-1px;color:#fff}.stats-grid span{font-size:12px;text-transform:uppercase;letter-spacing:1.2px;color:#a9c8dc;font-weight:800}
.service-feature,.component-card,.project,.review-card,.trust-card{transition:transform .3s ease,box-shadow .3s ease}.service-feature:hover,.component-card:hover,.review-card:hover,.trust-card:hover{transform:translateY(-7px);box-shadow:0 24px 55px rgba(5,25,42,.16)}.featured-photo:hover,.project:hover{transform:translateY(-5px)}
.reveal{opacity:0;transform:translateY(34px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:none}
@keyframes heroIn{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}@keyframes panelIn{from{opacity:0;transform:translateX(35px)}to{opacity:1;transform:none}}@keyframes pulseRing{0%,100%{box-shadow:0 0 0 0 rgba(255,255,255,.2)}50%{box-shadow:0 0 0 12px rgba(255,255,255,0)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-copy,.hero-panel,.same-day-icon{animation:none}.reveal{opacity:1;transform:none;transition:none}.service-feature,.component-card,.project,.review-card,.trust-card{transition:none}.hero-v3{background-attachment:scroll}}
@media(max-width:1120px){.identity{min-width:330px}.identity img{width:126px;height:80px}.identity-copy strong{font-size:17px}.menu{gap:12px}.menu a{font-size:13px}}
@media(max-width:980px){.nav{min-height:96px}.identity{min-width:0}.menu-toggle{display:inline-flex;margin-left:auto;border:1px solid #b8cbd8;background:#fff;border-radius:10px;padding:10px 14px;font-weight:900;color:#12344b}.menu{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;padding:18px 5%;box-shadow:0 18px 35px rgba(4,25,41,.16);flex-direction:column;align-items:stretch}.menu.open{display:flex}.menu .button,.menu .header-call{text-align:center;justify-content:center}.same-day-inner{grid-template-columns:auto 1fr}.banner-button{grid-column:1/-1;justify-self:start}.stats-grid{grid-template-columns:1fr 1fr}.stats-grid div:nth-child(2){border-right:0}}
@media(max-width:640px){.focus-alert{display:none}.notice .wrap{justify-content:center}.notice .wrap span:first-child{display:none}.nav{min-height:84px}.identity img{width:94px;height:63px}.identity-copy strong{font-size:14px}.identity-copy span{font-size:12px}.identity-copy small{display:none}.hero-v3{background-attachment:scroll}.hero-v3 h1{font-size:48px;letter-spacing:-2px}.hero-lead{font-size:17px}.same-day-inner{grid-template-columns:1fr;padding:25px 0}.same-day-icon{display:none}.banner-button{width:100%;justify-content:center}.stats-grid{grid-template-columns:1fr 1fr}.stats-grid div{padding:22px 10px}.stats-grid strong{font-size:30px}.stats-grid span{font-size:10px}}

/* V4.1 project and service refinements */
.featured-project-single{grid-template-columns:minmax(0,760px);justify-content:center}.featured-project-single .featured-photo img{aspect-ratio:16/10;object-fit:cover}.component-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:760px){.component-grid{grid-template-columns:1fr}}


/* =========================================================
   PROFESSIONAL EDITION 4.2 — RELEASE CORRECTIONS
   ========================================================= */
.same-day-banner{order:0}.hero-v3{order:1}
.featured-project-story{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.featured-project-story .featured-photo{min-height:330px}.project-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:22px}.project-facts span{padding:15px 17px;border:1px solid rgba(255,255,255,.18);border-radius:12px;background:rgba(255,255,255,.07);color:#d7e8f3}.project-facts strong{display:block;color:#fff;font-size:12px;text-transform:uppercase;letter-spacing:1px;margin-bottom:3px}.review-grid-expanded{grid-template-columns:repeat(3,1fr)}.review-highlight{background:linear-gradient(145deg,#fff,#edf7fc)}
@media(max-width:980px){.identity{display:grid;grid-template-columns:auto 1fr;align-items:center;max-width:calc(100% - 82px)}.identity img{width:120px;height:78px}.identity-copy{display:block!important}.identity-copy strong{font-size:16px}.identity-copy span{display:block!important;font-size:12px!important;margin-top:3px}.identity-copy small{display:block!important;font-size:10px;line-height:1.3}.menu-toggle{flex:0 0 auto}}
@media(max-width:700px){.focus-alert{display:block}.focus-alert .wrap{padding:8px 0}.focus-alert .notice-text{font-size:11px;line-height:1.35}.focus-alert a{display:none}.notice .wrap{font-size:11px;padding:7px 0}.nav{padding:8px 0;min-height:92px}.identity{gap:9px;max-width:calc(100% - 70px)}.identity img{width:92px;height:65px}.identity-copy strong{font-size:13px;line-height:1.08}.identity-copy span{font-size:11px!important}.identity-copy small{font-size:8.5px;line-height:1.25;margin-top:2px}.menu-toggle{padding:9px 10px;font-size:12px}.same-day-inner{padding:20px 0}.same-day-copy h2{font-size:27px}.same-day-copy p{font-size:13px}.banner-points{font-size:12px}.hero-v3{min-height:620px}.hero-copy{padding:58px 0}.hero-v3 h1{font-size:43px;line-height:1;letter-spacing:-1.8px}.featured-project-story{grid-template-columns:1fr}.featured-project-story .featured-photo{min-height:285px}.project-facts{grid-template-columns:1fr 1fr}.review-grid-expanded{grid-template-columns:1fr}}
@media(max-width:420px){.identity img{width:78px;height:57px}.identity-copy strong{font-size:12px}.identity-copy span{font-size:10px!important}.identity-copy small{font-size:7.8px}.hero-v3 h1{font-size:38px}.project-facts{grid-template-columns:1fr}}


/* =========================================================
   PROFESSIONAL EDITION 4.3 — IMAGE, FLEET & SEO ALIGNMENT
   ========================================================= */
.excavation-media-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:12px;min-height:520px;background:#071725;padding:12px}
.excavation-media-grid img{width:100%;height:100%;min-height:0;object-fit:cover;border-radius:14px}
.excavation-media-grid img:first-child{grid-row:1/3}
.fleet-section{background:#eef5f9}
.fleet-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:34px;align-items:center}
.fleet-copy h2{font-size:clamp(32px,4.2vw,54px);line-height:1.03;margin:8px 0 16px}
.fleet-copy p{font-size:18px;color:var(--muted)}
.fleet-photo{display:block;overflow:hidden;border-radius:20px;box-shadow:0 22px 55px rgba(5,25,42,.16)}
.fleet-photo img{width:100%;aspect-ratio:2/1;object-fit:cover;transition:transform .35s ease}
.fleet-photo:hover img{transform:scale(1.025)}
@media(max-width:900px){.fleet-layout{grid-template-columns:1fr}.excavation-media-grid{min-height:460px}}
@media(max-width:620px){.excavation-media-grid{grid-template-columns:1fr;min-height:0}.excavation-media-grid img:first-child{grid-row:auto}.excavation-media-grid img{height:300px}.fleet-photo img{aspect-ratio:4/3}}


/* =========================================================
   PROFESSIONAL EDITION 5.1 — CURATED BOILER & WATER HEATER PORTFOLIOS
   ========================================================= */
.showcase-section{overflow:hidden}.water-heater-showcase{background:#f3f8fb}.boiler-showcase{background:#fff}
.showcase-feature-grid{display:grid;grid-template-columns:minmax(300px,.86fr) minmax(0,1.5fr);gap:26px;align-items:stretch}.showcase-feature-grid.reverse{grid-template-columns:minmax(0,1.5fr) minmax(300px,.86fr)}.showcase-feature-grid.reverse .showcase-lead{order:2}.showcase-feature-grid.reverse .showcase-grid{order:1}
.showcase-lead{position:relative;overflow:hidden;border-radius:22px;background:#071725;color:#fff;box-shadow:0 22px 55px rgba(5,25,42,.15)}.showcase-photo{display:block;height:520px;overflow:hidden}.showcase-photo img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.showcase-lead:hover .showcase-photo img{transform:scale(1.025)}.showcase-copy{padding:26px 28px 30px}.showcase-copy>span{display:inline-block;margin-bottom:9px;color:#72d3ff;font-size:11px;font-weight:900;letter-spacing:1.3px;text-transform:uppercase}.showcase-copy h3{margin:0 0 12px;color:#fff;font-size:clamp(25px,3vw,38px);line-height:1.05}.showcase-copy p{margin:0;color:#bfd3df;line-height:1.7}
.showcase-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.showcase-tile{position:relative;min-height:320px;overflow:hidden;border-radius:18px;background:#071725;box-shadow:0 14px 34px rgba(5,25,42,.12)}.showcase-tile:after{content:"";position:absolute;inset:38% 0 0;background:linear-gradient(transparent,rgba(2,12,21,.94));pointer-events:none}.showcase-tile img{width:100%;height:100%;min-height:320px;object-fit:cover;transition:transform .35s ease}.showcase-tile:hover img{transform:scale(1.04)}.showcase-tile span{position:absolute;z-index:2;left:18px;right:18px;bottom:17px;color:#fff;font-size:16px;font-weight:900;line-height:1.18}.showcase-tile small{display:block;margin-bottom:5px;color:#7bd8ff;font-size:10px;text-transform:uppercase;letter-spacing:1.15px}
.equipment-three{grid-template-columns:1.05fr .95fr;grid-template-rows:1fr 1fr}.equipment-three img:first-child{grid-row:1/3}.equipment-three img:nth-child(2),.equipment-three img:nth-child(3){grid-column:2}
@media(max-width:980px){.showcase-feature-grid,.showcase-feature-grid.reverse{grid-template-columns:1fr}.showcase-feature-grid.reverse .showcase-lead,.showcase-feature-grid.reverse .showcase-grid{order:initial}.showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.showcase-photo{height:480px}}
@media(max-width:620px){.showcase-grid{grid-template-columns:1fr}.showcase-tile,.showcase-tile img{min-height:390px}.showcase-photo{height:430px}.showcase-copy{padding:23px 21px 26px}.equipment-three{grid-template-columns:1fr;grid-template-rows:auto}.equipment-three img:first-child,.equipment-three img:nth-child(2),.equipment-three img:nth-child(3){grid-row:auto;grid-column:auto}}

/* =========================================================
   PROFESSIONAL EDITION 5.1.1 — GALLERY VARIETY & LAYOUT FIXES
   ========================================================= */
.equipment-three{height:620px;min-height:0;overflow:hidden;border-radius:22px 0 0 22px;align-self:stretch}
.equipment-three img,.feature-media.equipment-three img{min-height:0!important;height:100%!important;border-radius:14px!important}
.capability{overflow:hidden}
.fleet-section{position:relative;z-index:2;clear:both;overflow:hidden}
.fleet-layout{position:relative;isolation:isolate}
.fleet-photo{position:relative;z-index:1}
@media(max-width:980px){.equipment-three{height:auto;min-height:620px;border-radius:22px 22px 0 0}.equipment-three img,.feature-media.equipment-three img{min-height:0!important}}
@media(max-width:620px){.equipment-three{height:auto;min-height:0}.equipment-three img,.feature-media.equipment-three img{height:300px!important}}


/* =========================================================
   PROFESSIONAL EDITION 5.2 — LOCAL REVIEWS & PORTFOLIO CORRECTIONS
   ========================================================= */
.joyce-spotlight{background:linear-gradient(135deg,#061725,#0c3550);color:#fff;padding:78px 0}
.joyce-layout{display:grid;grid-template-columns:auto minmax(0,900px);justify-content:center;gap:30px;align-items:start}
.joyce-mark{font-family:Georgia,serif;font-size:150px;line-height:.72;color:var(--cyan);opacity:.9}
.joyce-spotlight blockquote{margin:8px 0 18px;font-family:Georgia,serif;font-size:clamp(34px,5vw,64px);line-height:1.08;font-weight:700;letter-spacing:-1.5px}
.joyce-spotlight p{margin:0;color:#c6dbe7;font-size:18px}
#reviews .section-head p{max-width:760px;margin-left:auto;margin-right:auto}
.review-grid-expanded{align-items:stretch}
.review-card{display:flex;flex-direction:column}
.review-card blockquote{flex:1}
.review-card .reviewer{font-weight:900;color:#092238;margin-top:18px}
.review-stars{letter-spacing:3px}
@media(max-width:700px){.joyce-spotlight{padding:58px 0}.joyce-layout{grid-template-columns:1fr;gap:8px}.joyce-mark{font-size:90px}.joyce-spotlight blockquote{font-size:36px;letter-spacing:-.8px}.review-grid-expanded{grid-template-columns:1fr}}

/* Version 5.2.1 social profile links */
.social-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.social-links a{display:inline-flex;align-items:center;justify-content:center;padding:9px 13px;border:1px solid rgba(255,255,255,.35);border-radius:999px;text-decoration:none;font-weight:700}.social-links a:hover,.social-links a:focus-visible{background:#fff;color:#111}


/* =========================================================
   PROFESSIONAL EDITION 5.3 — HOURS, WATER HEATERS & STORIES
   ========================================================= */
.business-status{background:#071725;color:#fff;border-bottom:1px solid rgba(255,255,255,.14)}.business-status-inner{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:8px 0}.status-main{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.status-dot{width:11px;height:11px;border-radius:50%;background:#f59e0b;box-shadow:0 0 0 4px rgba(245,158,11,.16)}.business-status.is-open .status-dot{background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.16)}.business-status.is-closed .status-dot{background:#ef4444;box-shadow:0 0 0 4px rgba(239,68,68,.16)}.business-status strong{text-transform:uppercase;letter-spacing:.7px;font-size:13px}.business-status [data-business-detail]{color:#c5d9e6;font-size:13px}.business-status a{font-size:12px;font-weight:900;text-decoration:underline;white-space:nowrap}
.water-heater-guide{background:linear-gradient(180deg,#fff,#eef7fb)}.water-heater-guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.guide-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:25px;box-shadow:0 14px 34px rgba(5,25,42,.08)}.guide-card>span{display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;border-radius:50%;background:#e5f5fd;color:#066cae;font-weight:900}.guide-card h3{font-size:23px;line-height:1.15;margin:17px 0 9px}.guide-card p{margin:0;color:var(--muted)}.water-heater-guide-cta{margin-top:22px;padding:24px 26px;border-radius:18px;background:#071725;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:25px}.water-heater-guide-cta strong{font-size:24px}.water-heater-guide-cta p{margin:5px 0 0;color:#c4d8e5;max-width:820px}
.eynon-case-study{background:#061829;color:#fff}.eynon-case-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:42px;align-items:center}.eynon-case-study h2{font-size:clamp(34px,4.7vw,60px);line-height:1.02;margin:10px 0 18px}.eynon-case-study p{font-size:18px;color:#c4d8e5}.eynon-results{display:grid;gap:10px;padding:25px;border:1px solid rgba(255,255,255,.16);border-radius:20px;background:rgba(255,255,255,.06)}.eynon-results span{padding:12px 14px;border-radius:10px;background:rgba(255,255,255,.08);font-weight:900}.eynon-results p{font-size:15px;margin:8px 0 0}.joyce-spotlight .joyce-layout>div:last-child>p:not(.joyce-attribution){max-width:860px;font-size:18px;line-height:1.7}.joyce-attribution{margin-top:16px!important}.after-hours-note{font-size:13px;color:#9fb7c8}
@media(max-width:900px){.water-heater-guide-grid,.eynon-case-layout{grid-template-columns:1fr}.water-heater-guide-cta{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.business-status-inner{align-items:flex-start}.status-main{gap:7px}.business-status [data-business-detail]{width:100%;padding-left:21px}.water-heater-guide-cta{padding:21px}.guide-card{padding:22px}}

/* Version 5.3.1 urgent corrections */
.eynon-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:34px}
.eynon-photo{display:block;overflow:hidden;border-radius:18px;height:210px;background:#0b2638}
.eynon-photo img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.eynon-photo:hover img{transform:scale(1.035)}
.joyce-layout-with-photo{grid-template-columns:minmax(260px,390px) minmax(0,780px);align-items:center}
.customer-photo{display:block;overflow:hidden;border-radius:24px;box-shadow:0 18px 50px rgba(0,0,0,.28)}
.customer-photo img{display:block;width:100%;height:100%;object-fit:cover}
.joyce-layout-with-photo .customer-photo{aspect-ratio:1/1}
.ellie-spotlight{background:#f4f8fb}
.ellie-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.65fr);gap:48px;align-items:center}
.ellie-spotlight h2{font-size:clamp(34px,4.5vw,58px);line-height:1.04;margin:10px 0 20px;color:#071c2c}
.ellie-spotlight p{font-size:18px;line-height:1.75;color:#365164}
.ellie-photo{aspect-ratio:3/4;max-height:650px}
@media(max-width:900px){.eynon-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.joyce-layout-with-photo,.ellie-layout{grid-template-columns:1fr}.joyce-layout-with-photo .customer-photo,.ellie-photo{max-width:560px;width:100%;margin:0 auto}.ellie-layout>div{order:2}.ellie-layout>.customer-photo{order:1}}
@media(max-width:560px){.eynon-photo-grid{grid-template-columns:1fr 1fr;gap:10px}.eynon-photo{height:150px}.customer-photo{border-radius:18px}}


/* =========================================================
   PROFESSIONAL EDITION 5.4 — HOMEPAGE VALUE POSITIONING
   ========================================================= */
.value-pricing{position:relative;overflow:hidden;background:linear-gradient(135deg,#f7fbfd 0%,#e9f4fa 58%,#fff 100%);border-top:1px solid #d7e6ef;border-bottom:1px solid #cbdde8}
.value-pricing:before{content:"";position:absolute;width:430px;height:430px;border-radius:50%;right:-170px;top:-220px;background:radial-gradient(circle,rgba(13,145,205,.16),rgba(13,145,205,0) 70%);pointer-events:none}
.value-pricing-layout{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(330px,.82fr);gap:48px;align-items:center;padding:76px 0}
.value-pricing-copy h2{font-size:clamp(38px,5vw,64px);line-height:1.02;letter-spacing:-2px;margin:10px 0 22px;max-width:820px}
.value-pricing-copy p{font-size:18px;line-height:1.72;color:var(--muted);max-width:850px}
.value-pricing-lead{font-size:20px!important;color:#193b51!important}
.value-pricing-actions{display:flex;align-items:center;gap:20px;margin-top:28px}
.value-pricing-actions span{max-width:420px;font-size:13px;line-height:1.5;color:#527083;font-weight:800}
.value-pricing-panel{background:linear-gradient(150deg,#071725,#0b2c46);color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:24px;padding:30px;box-shadow:0 28px 65px rgba(5,28,45,.2)}
.value-pricing-kicker{text-transform:uppercase;letter-spacing:1.5px;font-size:12px;font-weight:900;color:#73d7ff;margin-bottom:9px}
.value-pricing-panel ul{list-style:none;margin:0;padding:0}
.value-pricing-panel li{position:relative;padding:16px 0 16px 31px;border-top:1px solid rgba(255,255,255,.12)}
.value-pricing-panel li:before{content:"✓";position:absolute;left:0;top:16px;width:21px;height:21px;border-radius:50%;display:grid;place-items:center;background:#0b8fc9;color:#fff;font-size:12px;font-weight:900}
.value-pricing-panel strong,.value-pricing-panel span{display:block}
.value-pricing-panel strong{font-size:17px;color:#fff}
.value-pricing-panel span{font-size:13px;line-height:1.45;color:#bfd3df;margin-top:4px}
.value-pricing-panel blockquote{margin:20px 0 0;padding:20px 0 0;border-top:1px solid rgba(255,255,255,.18);font-size:clamp(23px,2.4vw,32px);line-height:1.12;font-weight:900;color:#fff}
@media(max-width:980px){.value-pricing-layout{grid-template-columns:1fr;padding:62px 0}.value-pricing-panel{max-width:760px}.value-pricing-actions{align-items:flex-start}}
@media(max-width:640px){.value-pricing-layout{padding:50px 0;gap:30px}.value-pricing-copy h2{font-size:39px;letter-spacing:-1.3px}.value-pricing-lead{font-size:18px!important}.value-pricing-copy p{font-size:16px}.value-pricing-actions{flex-direction:column}.value-pricing-actions .button{width:100%;justify-content:center}.value-pricing-panel{padding:23px}.value-pricing-panel blockquote{font-size:25px}}
