/* B-only accessibility fixes. Brand assets and product content are unchanged. */
:root { --muted:#616c80; }
h1,h2,h3,[role="heading"] { overflow-wrap:anywhere; }
.site-header .brand { flex-shrink:1; }
.site-header .brand img { flex-shrink:0; }
.site-header .brand .bbt-tagline { min-width:0; white-space:normal; overflow-wrap:anywhere; }
.accessibility-card > *, .accessibility-copy { min-width:0; }
.accessibility-copy a { overflow-wrap:anywhere; }
.site-header, .site-header.is-scrolled, .site-header.is-open { background:#fffef9; }
.visit-card .visit-status, .visit-card .visit-address, .visit-card .visit-address-link,
.visit-card .visit-badge-secondary, .visit-card .visit-note, .visit-card .visit-contact-label,
.visit-card figcaption { color:#fff !important; }
.visit-card .visit-heading .eyebrow { color:#ffe49a; }
html { scroll-behavior:auto; scroll-padding-top:calc(var(--review-nav-top, 90px) + 72px); }
a:focus-visible, button:focus-visible, [tabindex="-1"]:focus-visible {
  outline:3px solid #0058a8;
  outline-offset:4px;
  box-shadow:0 0 0 4px #fffef9;
}
.hero a:focus-visible, .visit-section a:focus-visible {
  outline-color:#fffef9;
  box-shadow:0 0 0 4px #18243b;
}
.skip-link:focus-visible { outline-color:#18243b; }
main:focus { outline:none; }
.reveal:focus-within { opacity:1; transform:none; }
.site-footer a { display:inline-flex; align-items:center; min-height:44px; }
.site-header.is-open { max-height:calc(100dvh - 24px); }
body.menu-open { overflow-y:auto; }
.review-expand::after, .review-expand[aria-expanded="true"]::after { content:none; }
.review-expand .disclosure-icon { font-size:1.25rem; font-weight:400; }
.review-expand { flex-wrap:wrap; }
.product-series-nav a strong { white-space:normal; overflow-wrap:anywhere; }
/* Preserve the photograph: local text definition replaces the full-image dark overlay.
   Photography contrast still requires visual/manual review; this is not certification. */
.hero::after { content:none; }
.hero h1 { text-shadow:0 1px 2px rgba(7,12,22,.9), 0 3px 14px rgba(7,12,22,.5); }
.hero-copy p:not(.eyebrow) { color:#fff; text-shadow:0 1px 2px #070c16, 0 2px 8px rgba(7,12,22,.8); }
.hero .button-outline { background:rgba(7,12,22,.38); border-color:rgba(255,255,255,.8); text-shadow:0 1px 2px #070c16; }
@media (max-width:1020px) {
  .site-header.is-open { height:auto; overflow:visible; grid-template-columns:minmax(0,1fr) auto; }
  .site-header.is-open .nav-links { position:static; grid-column:1 / -1; order:2; max-height:calc(100dvh - 112px); overflow-y:auto; width:100%; }
}
@media (max-width:760px) {
  .accessibility-card { grid-template-columns:minmax(0,1fr); }
  .accessibility-card h2 { max-width:100%; }
}
@media (max-height:500px) {
  .site-header { position:absolute; }
  .product-series-nav { position:static; }
  html { scroll-padding-top:16px; }
}
@media (forced-colors:active) {
  a:focus-visible,button:focus-visible,[tabindex="-1"]:focus-visible { outline:3px solid Highlight; box-shadow:none; }
  .button,.language-switch button,.menu-toggle { border:1px solid ButtonText; }
}
