/* Shared navigation and focused reading paths. */
.site-header .site-shell{position:relative;display:flex;justify-content:space-between;align-items:center;gap:20px}
.site-header .site-identity{display:block;min-width:0}
.site-header .site-brand{font:800 22px/1.25 Arial,Helvetica,sans-serif;text-decoration:none}
.site-header .brand-region{display:block;margin-top:5px;color:#526c7b;font:700 13px/1.4 Arial,Helvetica,sans-serif;letter-spacing:.08em}
.compact-menu{position:static;margin:0}
.compact-menu>summary{display:flex;align-items:center;justify-content:center;gap:12px;min-height:58px;padding:14px 24px;border-radius:6px;background:#005e83;color:#fff;font:800 21px/1.2 Arial,Helvetica,sans-serif;cursor:pointer;list-style:none}
.compact-menu>summary::-webkit-details-marker{display:none}
.compact-menu>summary:focus-visible{outline:3px solid #102a44;outline-offset:4px}
.site-header .compact-menu .site-links{position:absolute;z-index:50;top:calc(100% - 8px);right:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;align-items:stretch;gap:12px;width:min(600px,100%);margin:0;padding:22px;background:#fff;border:1px solid #d4e2e8;box-shadow:0 14px 30px #102a4426}
.site-header .compact-menu:not([open]) .site-links{display:none}
.site-header .compact-menu .site-link{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:62px;padding:12px;border:1px solid #c7d8e3;border-radius:6px;background:#fff;color:#005e83;font:700 15px/1.3 Arial,Helvetica,sans-serif;text-align:center;text-decoration:none;box-sizing:border-box}
.site-header .compact-menu .site-link[aria-current="page"]{background:#005e83;color:#fff;border-color:#005e83}
.site-header .compact-menu .site-link:hover{background:#edf5f8;color:#005e83}
.site-header .compact-menu .site-link[aria-current="page"]:hover{background:#004b69;color:#fff}
.site-header .compact-menu .site-link:focus-visible{outline:3px solid #005e83;outline-offset:3px}
#advertising-questions{scroll-margin-top:24px}
.ai-next{background:#f8f4e9}
@media(max-width:650px){.site-header .site-shell{width:calc(100% - 32px);padding:18px 0;gap:12px}.site-header .site-brand{font-size:18px}.compact-menu>summary{padding:14px 18px}.site-header .compact-menu .site-links{padding:16px;gap:12px}.site-header .compact-menu .site-link{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Bold, readable title-case tab labels; mobile-only homepage cleanup. */
body .button,body .site-link,body summary,body [role="tab"],body .intro-book,body .intro-verify,body .ai-action,body .business-guide-card strong{font-weight:900!important;text-transform:none!important}
body .ad-groups summary{line-height:1.3;padding-right:52px;overflow-wrap:break-word}
@media(max-width:700px){
 #flood-home-proof .layout>.home-flood-art{display:none!important}
 .contact .contact-bbb{display:block;margin-top:4px}
 .contact .contact-separator{display:none}
}

/* Real actions have a visible raised edge even before interaction. */
html body .raised-action{
 position:relative;cursor:pointer;touch-action:manipulation;
 box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 5px 0 #07364d,0 9px 14px rgba(6,37,56,.23)!important;
 transform:translateY(0)!important;
 transition:transform .24s ease,box-shadow .24s ease!important;
}
html body .raised-action.scroll-raised,html body .raised-action:focus-visible{
 transform:translateY(-5px)!important;
 box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 9px 0 #07364d,0 17px 22px rgba(6,37,56,.26)!important;
}
@media(hover:hover){html body .raised-action:hover{transform:translateY(-5px)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 9px 0 #07364d,0 17px 22px rgba(6,37,56,.26)!important}}
html body .raised-action:active{transform:translateY(3px)!important;box-shadow:inset 0 1px 2px rgba(0,0,0,.14),0 2px 0 #07364d,0 4px 6px rgba(6,37,56,.18)!important;transition-duration:.08s!important}
html body .ad-groups details{overflow:visible}
html body .ad-groups details>summary.raised-action{border-radius:6px}
html body #flood-home-proof .quote{box-shadow:none;transform:none;cursor:default}
@media(prefers-reduced-motion:reduce){html body .raised-action,html body .raised-action:hover,html body .raised-action.scroll-raised,html body .raised-action:active{transform:none!important;transition:none!important}}

/* Shorter homepage with an on-demand service area. */
#bbb-menu-revision #service-area{padding:24px 0!important;scroll-margin-top:24px}
#bbb-menu-revision .service-area-tab>summary{position:relative;list-style:none;background:#005e83;color:#fff;padding:25px 56px 25px 24px;border-radius:6px;font:900 clamp(23px,3vw,34px)/1.2 Arial,sans-serif;cursor:pointer}
.service-area-tab>summary::-webkit-details-marker{display:none}
.service-area-tab>summary small{display:block;margin-top:10px;font:600 15px/1.4 Arial,sans-serif}
.service-toggle{position:absolute;right:22px;top:24px;font-size:30px}
.service-area-tab[open] .service-toggle{transform:rotate(45deg)}
.service-area-content{padding:26px 0 8px}
.service-area-content img{display:block;width:100%;height:auto}
#bbb-menu-revision #bbb-open-blue-proof{padding-top:24px}
#bbb-menu-revision #bbb-open-blue-proof .trust-section{padding:36px 24px}
#bbb-menu-revision #bbb-open-blue-proof .intro{margin-bottom:24px}
#bbb-menu-revision #bbb-open-blue-proof .resource-grid{gap:22px;margin-top:28px}

/* Booking is BBB blue. Static statements never receive button styling. */
html body #bbb-menu-revision a.booking-action,html body a.booking-action{background:#005e83!important;border-color:#005e83!important;color:#fff!important;text-decoration:none}
html body #bbb-menu-revision .booking-circle{background:#005e83}
html body #bbb-menu-revision .booking-center{background:#087da4;color:#fff;border-color:#52caff}
html body #bbb-menu-revision #flood-home-proof p.quote-trust-line{background:none!important;color:#005e83!important;border:0!important;box-shadow:none!important;padding:0!important}
html body #bbb-open-blue-proof .resource-grid>a{display:block;padding:18px;border-radius:6px;background:#fff;color:#005e83}
html body #bbb-open-blue-proof .resource-grid>a:nth-child(2){background:#fff5d6}
html body #bbb-open-blue-proof .resource-grid>a:nth-child(3){background:#c9f0fb}
html body #bbb-open-blue-proof .resource-grid>a .link-title{color:#005e83}
html body #bbb-open-blue-proof .resource-grid>a .description{color:#294858}
html body #flood-home-proof .bbb-search-preview{background:#fff9e7;border:1px solid #e7d99d;padding:12px;border-radius:8px}
html body #flood-home-proof .bbb-search-preview figcaption{padding:12px 0 0;color:#005e83}

/* Every booking CTA must be a transformable, comfortably tappable control. */
html body a.booking-action{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:14px 22px;border:2px solid #005e83;border-radius:6px;font-weight:900;line-height:1.3;text-align:center;vertical-align:middle}
/* Preserve contrast when legacy pale summary-hover rules are present. */
html body #bbb-menu-revision .ad-home-questions details>summary:hover,
html body #bbb-menu-revision .ad-home-questions details>summary:focus-visible{background:#005e83!important;color:#fff!important}
html body .question-tabs a.raised-action{font-weight:900}
html body .gallery-card a.raised-action{border-radius:4px}
