/* Shared visual system based on the Dolphin inspection landing page. */
:root{--navy:#0b3266;--blue:#007fc6;--orange:#ff760f;--ink:#425774;--muted:#425774;--blue-soft:#edf7fc;--line:#dce7ef;--card-shadow:none;--shadow:none}
body{background:#fff;color:var(--navy);font-family:Manrope,Arial,sans-serif;line-height:1.65}
.page-shell,.page-wrap{background:#fff;padding:0 24px}
.page-shell:before,.page-wrap:before{display:none}
.brand-strip{background:var(--navy);color:#fff;text-align:center;font-size:12px;font-weight:800;letter-spacing:1.4px;padding:9px 16px}
.brand-strip span{margin-left:25px;letter-spacing:.3px;font-weight:500}
.site-header{max-width:1200px;min-height:109px;margin:auto;padding:15px 8px;display:grid;grid-template-columns:188px 1fr auto;gap:25px;border:0;border-radius:0;background:#fff;box-shadow:none;backdrop-filter:none}
.brand{width:188px}.brand img{width:188px;height:78px;object-fit:contain}
.main-nav{display:flex;gap:24px;font-size:13px;font-weight:700;justify-content:center}.main-nav a{padding:10px 0;min-height:44px}
.btn{font-size:14px;font-weight:800;border-radius:7px;min-height:54px;line-height:1.4;box-shadow:none}.btn-orange{background:var(--orange);color:#152c49}.btn-blue{background:var(--navy);color:white}
.page-main{max-width:1136px;padding:45px 0 80px;margin:auto}
.page-hero,.location-hero{gap:50px;background:#edf7fc;padding:45px;border-radius:10px;align-items:center}
.hero-copy-card,.location-copy{padding:0;background:transparent;border:0;box-shadow:none}
h1,h2,h3,.location-copy h1,.service-areas-page-card h1{color:var(--navy);font-weight:800}
h1,.location-copy h1,.service-areas-page-card h1{font-size:clamp(36px,4.4vw,59px);line-height:1.1;letter-spacing:-2px}
h2{font-size:clamp(29px,3vw,42px);line-height:1.18;letter-spacing:-1.3px}h3{font-size:21px;line-height:1.35;letter-spacing:-.4px}
.hero-lead,.section-lead{color:var(--ink);font-size:16px;font-weight:500;line-height:1.75}
.section-label{color:var(--blue);font-size:11px;letter-spacing:1.7px;font-weight:800}.section-label span{background:var(--orange);width:23px}.section-label span:last-child{display:none}
.brand-slogan{font-family:inherit;font-style:normal;font-size:16px;color:var(--navy)}.brand-slogan:after{display:none}
.hero-media-card{border:0;box-shadow:none;border-radius:9px;overflow:hidden}.hero-media-card img{height:290px;object-fit:cover}.hero-media-caption{background:white;padding:22px}.hero-media-caption strong{color:var(--navy);font-size:18px}.hero-media-caption span{color:var(--ink);font-size:13px}
.section{margin-top:65px}.content-card,.service-detail,.blog-card,.location-panel,.location-section,.service-areas-page-card{border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:none}
.content-card:before,.service-detail:before,.blog-card:before,.service-areas-directory:before{display:none}
.content-card p,.service-detail p,.blog-card p,.location-copy p{color:var(--ink);font-weight:400;line-height:1.8}
.cta-band{background:var(--navy);border-radius:10px;box-shadow:none}.cta-band h2,.cta-band p{color:white}
.contact-form{border:1px solid var(--line);border-top:4px solid var(--orange);border-radius:10px;box-shadow:0 15px 50px #0b32660c;scroll-margin-top:24px}.field input,.field textarea{border:1px solid #b8cbd9;background:white;border-radius:6px;font:inherit}.field input:focus,.field textarea:focus{outline:2px solid var(--blue);outline-offset:2px}
.service-areas-page-heading{background:#edf7fc;border-radius:9px;padding:32px}.service-areas-directory .area-card,.nearby-links a{background:#fff;border:1px solid var(--line);box-shadow:none;border-radius:7px}.site-footer{background:var(--navy);color:white;padding:35px 24px}.site-footer a{color:white}.footer-links{display:flex;justify-content:center;gap:24px;flex-wrap:wrap;margin:18px 0;font-size:13px}
a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
.home-services{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.home-services article{padding:28px;border:1px solid var(--line);border-radius:10px}.home-services p{color:#425774;font-size:14px}.redesigned-home .header nav{gap:20px}.redesigned-home .section{margin-top:0}
@media(max-width:1000px){.site-header{grid-template-columns:1fr auto;gap:12px}.main-nav{grid-row:2;grid-column:1/-1;flex-wrap:wrap;gap:10px 24px}.header-call{grid-row:1;grid-column:2}.page-hero,.location-hero{grid-template-columns:1fr;gap:28px}.hero-media-card img{height:260px}.redesigned-home .header{flex-wrap:wrap;padding-top:12px;padding-bottom:12px}.redesigned-home .header nav{display:flex;order:3;width:100%;justify-content:center;flex-wrap:wrap;gap:10px 24px}}
@media(max-width:700px){.brand-strip{font-size:10px}.brand-strip span{display:none}.page-shell,.page-wrap{padding:0 20px}.site-header{padding:12px 0}.brand,.brand img{width:145px;height:62px}.main-nav{font-size:12px;gap:5px 19px}.header-call{min-width:0;padding:12px 16px;min-height:46px}.page-main{padding:25px 0 50px}.page-hero,.location-hero{padding:25px;gap:25px}h1,.location-copy h1,.service-areas-page-card h1{font-size:36px;letter-spacing:-1.4px;overflow-wrap:break-word}.hero-media-card img{height:210px}.section{margin-top:40px}.contact-grid,.split-grid,.cards-grid,.location-grid,.home-services{grid-template-columns:1fr}.content-card,.service-detail,.contact-form{padding:25px}.contact-methods strong{overflow-wrap:anywhere}.service-areas-page-heading{padding:23px}.hero-actions .btn{width:100%}.redesigned-home .header nav{font-size:12px;gap:8px 19px}}
