/* Small repairs that preserve the supplied VT-1 visual identity. */
.hero-band {background:var(--navy-2);border-top:1px solid rgba(255,255,255,.18)}
.hero-band-inner {gap:1.5rem;padding-block:1rem;min-height:62px}
.google-reviews {border-bottom-color:rgba(255,255,255,.5)}
h1,h2,h3 {line-height:1.15}
.eyebrow,nav,.button,.text-link,.area-tags span,.footer-grid h3,.trust-row {font-size:.875rem}
.header-call small,.area-card-copy small {font-size:.75rem;letter-spacing:.08em}
.service-content>p,.reasons-grid p,.footer-grid p,.area-card-copy p {font-size:1rem}
.service-content>p {min-height:0}
.button-primary {background:var(--red-dark)}
.text-link,.eyebrow,nav a:hover {color:#b52330}
.eyebrow.light,.callback-section .eyebrow {color:#ffe2e4}
.callback-section {background:#b52330}
.button-white {color:#b52330}
.contact-actions {display:flex;flex-wrap:wrap;gap:.75rem}
.button-contact-text {border-color:var(--navy);color:var(--navy)}
.button-contact-text:hover {background:var(--navy);color:white}
:focus-visible {outline:3px solid #2563eb;outline-offset:5px}
.hero :focus-visible,.site-footer :focus-visible,.callback-section :focus-visible {outline-color:#fff}
section[id],main[id] {scroll-margin-top:1rem}
.skip-link {position:absolute;left:1rem;top:-100px;background:white;color:var(--navy);padding:.75rem;z-index:100}
.skip-link:focus {top:1rem}
.mobile-menu {display:none}
.service-details ul {list-style:disc}
.legal-content ul {list-style:disc;padding-left:1.5rem}
.faq-list summary {gap:1rem;padding-block:1rem}
.faq-list summary span {flex-shrink:0}
.service-grid>* {min-width:0}
@media(max-width:980px) {
 .mobile-menu {display:block;margin-left:auto}
 .mobile-menu summary {cursor:pointer;border:1px solid var(--line);padding:.5rem .75rem;list-style:none;font-size:.875rem;font-weight:700}
 .mobile-menu summary::-webkit-details-marker {display:none}
 .mobile-menu[open] summary {background:var(--navy);color:white}
 .mobile-menu nav {display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:white;box-shadow:0 12px 18px #14213d26;z-index:25;padding:.75rem 1rem}
 .mobile-menu nav a {padding:.875rem 1rem;border-bottom:1px solid var(--line)}
 .hero-band-inner {flex-wrap:wrap}
}
@media(max-width:680px) {
 .header-inner {gap:.75rem}
 .brand-logo {width:105px}
 .header-call strong {font-size:.875rem;white-space:nowrap}
 .hero-band-inner {font-size:.875rem}
 .hero h1 {line-height:1.15;letter-spacing:-.02em}
 .contact-actions {display:grid}
 .mobile-call {background:var(--red-dark);font-size:.875rem}
 .footer-bottom {padding-bottom:5rem}
}
@media(max-width:360px) {
 .brand-logo {width:85px}
 .header-inner {gap:.5rem}
 .header-call strong {font-size:.8rem}
 .mobile-menu summary {padding:.5rem}
}
