/* Shared site layout and behavior overrides. */
.social-links{display:flex;flex-wrap:wrap;gap:12px;grid-column:1/-1}.social-links a{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:10px 16px;border:1px solid currentColor;border-radius:10px;font-size:1rem;font-weight:700;line-height:1.4;text-decoration:none}.social-links svg{flex:none}.social-links a:hover{background:#126fae;color:#fff;border-color:#126fae}.social-links a:focus-visible{outline:3px solid #2698da;outline-offset:4px}footer .social-links a{color:#fff}footer .social-links a:hover{background:#fff;color:#06274a;border-color:#fff}
:root{--blue:#126fae;--muted:#475f72}
html{scroll-padding-top:100px}body{overflow-wrap:break-word}main{min-width:0}h1{font-size:clamp(2.15rem,4.5vw,4.6rem);overflow-wrap:anywhere}h2{font-size:clamp(1.7rem,3vw,3rem)}h3{line-height:1.3}.eyebrow{font-size:.875rem;letter-spacing:.1em}.page-wipe{display:none}.visual-frame,.wave-orbit{animation:none}
.site-header{gap:20px}.site-header .nav{gap:18px}.site-header .nav a{padding:10px 0;min-height:44px}.site-header .nav a[aria-current]{color:var(--blue)}.brand img{object-fit:contain}.footer-links{display:flex;gap:22px;flex-wrap:wrap;grid-column:1/-1}.footer-links a{padding:10px 0;min-height:44px}footer small{font-size:.875rem;color:#a4b9c9}footer .brand img{background:#fff;mix-blend-mode:normal;filter:none;border-radius:8px}
.breadcrumbs{display:flex;flex-wrap:wrap;gap:9px;font-size:.875rem;line-height:1.6;margin-bottom:25px;color:var(--muted)}.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}.local-hero,.core-hero{padding-top:56px;padding-bottom:64px}.local-hero>p,.core-hero>p{max-width:760px}.local-hero .core-actions{margin-top:25px}
.editorial{max-width:1200px;margin:auto;padding-top:55px;padding-bottom:55px}.editorial>h2{margin-bottom:25px}.editorial>p,.editorial article p{max-width:780px;color:var(--muted)}.editorial p+p{margin-top:17px}.editorial article{margin:30px 0}.editorial article h3{font-size:1.35rem;max-width:780px;margin-bottom:12px}.editorial li{margin:10px 0}.editorial .text-link{display:inline-block;padding:12px 0;font-size:1rem}.checklist{padding-left:22px;max-width:760px}.local-faq{margin:auto;padding-top:50px;padding-bottom:50px;max-width:1200px}.local-faq h2{margin-bottom:24px}.local-faq summary{font-size:1.05rem;line-height:1.5;padding:8px 20px 8px 0;min-height:44px}.local-faq details p{max-width:820px}.service-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.service-choice-grid .local-link-card{height:100%;padding:25px;gap:15px;border:1px solid var(--line);border-radius:16px;display:flex;flex-direction:column}.local-link-card span{font-size:1.1rem;line-height:1.4;font-weight:800}.local-link-card p{font-size:1rem;line-height:1.65;color:var(--muted)}.local-link-card b{font-size:.875rem;color:var(--blue)}.city-link-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:26px 0}.city-link-grid a{padding:13px;border:1px solid var(--line);border-radius:8px;line-height:1.5;font-weight:600}.city-link-grid a:hover{background:var(--ice)}.city-expander{margin-top:25px}.city-expander summary{cursor:pointer;min-height:44px;padding:12px 0;font-weight:800;color:var(--blue)}
.review-placeholder{padding:55px 20px;text-align:center;background:var(--ice)}.review-placeholder h2{margin:0 auto 15px}.review-placeholder p{max-width:720px;margin:auto;color:var(--muted)}.review-placeholder blockquote{max-width:720px;margin:25px auto;padding:22px;background:white;border-radius:12px}.quote-section{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:45px;background:#f3f8fc}.quote-section h2{margin-bottom:20px}.quote-section>div>p{margin:16px 0;color:var(--muted)}.full-quote-form{min-width:0}.full-quote-form label{font-size:.875rem}.full-quote-form input,.full-quote-form textarea,.full-quote-form select{font-size:1rem;min-height:44px;max-width:100%;width:100%}.form-wide{grid-column:1/-1}.form-note{font-size:.875rem;color:var(--muted)}.form-note a,.quote-section>div a,.editorial p a{text-decoration:underline;text-underline-offset:3px}
.hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;overflow:visible}.hero-visual{display:flex;flex-direction:column;gap:0;min-height:0;padding:0;align-items:stretch}.hero-visual .wave-orbit{display:none}.hero-visual .visual-frame{width:100%;height:230px;transform:none;border-width:8px;border-radius:22px 22px 0 0;box-shadow:none}.hero-visual .quote-card{position:relative;inset:auto;width:100%;transform:none;padding:25px;border-radius:0 0 18px 18px;box-shadow:0 16px 34px #06274a1a}.quote-card .full-quote-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0;border:0;box-shadow:none;background:none;margin-top:20px}.quote-card h2{font-size:1.55rem}.quote-card label{margin:0;font-size:.875rem}.quote-card input,.quote-card select{font-size:1rem;margin-top:5px}.quote-card .form-note{font-size:.875rem;font-weight:400}.quote-card button{grid-column:1/-1}.quote-card .eyebrow{font-size:.875rem}.about-art img{width:100%;height:100%;object-fit:contain}.about-art{background:white}.compare{touch-action:pan-y;isolation:isolate}.compare-range{margin:0;touch-action:pan-y}.compare:focus-within{outline:3px solid var(--blue);outline-offset:5px}.comparison-section .compare{max-width:1000px;margin:auto}.mobile-cta{padding-bottom:max(8px,env(safe-area-inset-bottom));height:auto;min-height:66px}.mobile-cta[aria-hidden="true"]{visibility:hidden}.mobile-cta a{min-height:48px}.scroll-reveal{opacity:1;transform:none}.motion-ready .scroll-reveal{opacity:0;transform:translateY(16px);transition:opacity .4s ease,transform .4s ease}.motion-ready .scroll-reveal.in-view{opacity:1;transform:none}
@view-transition{navigation:auto}::view-transition-old(root){animation:fade-out .12s ease}::view-transition-new(root){animation:fade-in .18s ease}@keyframes fade-in{from{opacity:0}to{opacity:1}}@keyframes fade-out{to{opacity:0}}
@media(max-width:1100px){.site-header{gap:14px}.site-header .nav{gap:13px}.header-actions .phone{display:none}.hero{gap:30px}.city-link-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){.hero{grid-template-columns:1fr}.hero-visual{max-width:700px}.quote-section{grid-template-columns:1fr}.site-header{height:auto;min-height:72px;flex-wrap:wrap}.site-header .nav{display:flex;position:static;flex-wrap:wrap;order:3;width:100%;gap:10px 20px;background:white;padding:10px 0;box-shadow:none}.nav-toggle{display:none}.js .nav-toggle{display:block;margin-left:auto;border:1px solid var(--line);border-radius:8px;width:46px;height:46px;background:#fff;font-size:1.5rem;color:var(--navy)}.js .site-header .nav{display:none}.js .site-header .nav.open{display:flex}.header-actions{display:none}.brand img{width:140px;height:55px}.core-hero,.local-hero{padding:40px 20px}.city-link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-page{padding:45px 20px}.service-choice-grid{gap:12px}.service-choice-grid .local-link-card{padding:17px}}
@media(max-width:720px){.hero{padding:40px 20px;gap:32px}.hero-visual{padding:0;min-height:0}.hero-visual .visual-frame{height:200px}.hero-visual .quote-card{padding:20px}.quote-card .full-quote-form{grid-template-columns:1fr}.quote-card input,.quote-card select,.quote-card textarea{font-size:16px}.editorial,.local-faq{padding:40px 20px}.quote-section{padding:45px 20px;gap:25px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.service-card h3{font-size:1rem!important;line-height:1.4;overflow-wrap:anywhere}.service-card span{font-size:.875rem!important}.service-card{min-height:180px!important}.trust-strip{font-size:.875rem}.compare{height:300px}.review-placeholder{padding:40px 20px}.service-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-choice-grid .local-link-card span{font-size:1rem}.service-choice-grid .local-link-card p{font-size:.95rem}.core-actions .btn{max-width:100%;text-align:center}.mobile-cta{display:grid}.footer-links{gap:16px}body{padding-bottom:78px}}
@media(max-width:360px){.service-choice-grid{grid-template-columns:1fr}.city-link-grid{grid-template-columns:1fr 1fr}.btn{padding:12px 14px}.service-card{padding:12px!important}}
@media(prefers-reduced-motion:reduce){.motion-ready .scroll-reveal{opacity:1;transform:none}.mobile-cta{transition:none}::view-transition-old(root),::view-transition-new(root){animation:none}.reveal{animation:none}}
