/* Merged from reviewed child theme blind-accessibility-refined-child 1.0.0. */

/*
 * This child layer intentionally targets only the shared theme shell and
 * standard reading/archive components. It does not style the approved .bah
 * homepage discovery sections or the full-screen companion app.
 */

body:not(.blind-accessibility-app-page) .site-header {
  border-block-end-color: #c7d5cc;
  box-shadow: 0 1px 0 rgba(20, 38, 34, 0.035);
}

body:not(.blind-accessibility-app-page) .site-header-inner {
  min-height: 5.5rem;
  gap: clamp(0.75rem, 2vw, 1.5rem);
}

body:not(.blind-accessibility-app-page) .site-brand-copy .wp-block-site-title a {
  text-decoration: none;
  text-decoration-thickness: 0.08em;
  text-underline-offset: 0.2em;
}

body:not(.blind-accessibility-app-page) .site-brand-copy .wp-block-site-title a:hover {
  text-decoration: underline;
}

body:not(.blind-accessibility-app-page) .site-brand-copy .wp-block-site-tagline {
  max-width: 42ch;
}

body:not(.blind-accessibility-app-page) .primary-navigation .wp-block-navigation-item__content {
  min-height: 2.85rem;
  padding-inline: 0.85rem;
  border: 1px solid transparent;
  border-radius: 0.65rem;
  font-weight: 700;
  text-decoration-thickness: 0.075em;
  transition: background-color 140ms ease, border-color 140ms ease;
}

body:not(.blind-accessibility-app-page) .primary-navigation .wp-block-navigation-item__content[aria-current="page"],
body:not(.blind-accessibility-app-page) .primary-navigation .current-menu-item > a,
body:not(.blind-accessibility-app-page) .primary-navigation .current_page_item > a {
  border-color: #b8c9bf;
  background: var(--ba-surface);
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 0.22em;
}

body:not(.blind-accessibility-app-page) .primary-navigation .wp-block-navigation-item__content:hover {
  border-color: #b8c9bf;
  background: var(--ba-surface);
}

body:not(.blind-accessibility-app-page) .primary-navigation :is(.wp-block-navigation__responsive-container-open, .wp-block-navigation__responsive-container-close):focus-visible,
body:not(.blind-accessibility-app-page) .site-header :is(a, button, summary):focus-visible,
body:not(.blind-accessibility-app-page) .site-footer :is(a, button, summary):focus-visible {
  outline: 3px solid var(--ba-focus);
  outline-offset: 3px;
  box-shadow: 0 0 0 2px var(--ba-background);
}

body:not(.blind-accessibility-app-page) .site-footer {
  border-block-start-color: #c7d5cc;
}

body:not(.blind-accessibility-app-page) .site-footer-inner {
  padding-block: 1.5rem;
}

body:not(.blind-accessibility-app-page) .footer-navigation .wp-block-navigation-item__content {
  min-height: 2.75rem;
  padding-inline: 0.7rem;
  border-radius: 0.55rem;
  text-underline-offset: 0.2em;
}

body:not(.blind-accessibility-app-page) .footer-navigation .wp-block-navigation-item__content:hover {
  background: var(--ba-background);
}

body:not(.blind-accessibility-app-page) :is(.ba-widget-region, .post-card, .page-card, .search-result) {
  border-color: #c7d5cc;
  border-radius: 1rem;
}

body:not(.blind-accessibility-app-page) .ba-widget-region {
  padding: clamp(1rem, 2.2vw, 1.35rem);
}

body:not(.blind-accessibility-app-page) .ba-widget-region .widget + .widget {
  padding-block-start: 1.15rem;
}

body:not(.blind-accessibility-app-page) :is(.post-card, .page-card, .search-result) {
  box-shadow: 0 3px 12px rgba(20, 38, 34, 0.035);
}

body:not(.blind-accessibility-app-page) :is(.post-card, .page-card, .search-result):focus-within {
  border-color: var(--ba-primary);
  outline: 2px solid var(--ba-focus);
  outline-offset: 3px;
}

body:not(.blind-accessibility-app-page) .single-article .entry-content {
  max-width: 74ch;
}

body:not(.blind-accessibility-app-page) .single-article .entry-content :is(h2, h3, h4) {
  margin-block: 1.8em 0.65em;
  text-wrap: balance;
}

body:not(.blind-accessibility-app-page) .single-article .entry-content h2 {
  padding-inline-start: 0.75rem;
  border-inline-start: 0.22rem solid var(--ba-accent);
}

body:not(.blind-accessibility-app-page) .single-article .post-meta {
  gap: 0.5rem 1rem;
  padding-block: 0.65rem;
  border-block: 1px solid #d7e2dc;
}

body:not(.blind-accessibility-app-page) .single-article .post-navigation-link a {
  min-height: 2.75rem;
  display: inline-flex;
  align-items: center;
  padding: 0.55rem 0.85rem;
  border: 1px solid #b8c9bf;
  border-radius: 0.55rem;
  background: var(--ba-surface);
  font-weight: 700;
}

body:not(.blind-accessibility-app-page) .single-article .post-navigation-link a:hover {
  border-color: var(--ba-primary);
}

@media (hover: hover) and (pointer: fine) {
  body:not(.blind-accessibility-app-page) :is(.post-card, .page-card, .search-result) {
    transition: border-color 140ms ease, box-shadow 140ms ease;
  }

  body:not(.blind-accessibility-app-page) :is(.post-card, .page-card, .search-result):hover {
    border-color: #9fb5a8;
    box-shadow: 0 7px 20px rgba(20, 38, 34, 0.08);
  }
}

@media (max-width: 47.5rem) {
  body:not(.blind-accessibility-app-page) .site-header-inner {
    min-height: 4.5rem;
  }

  body:not(.blind-accessibility-app-page) .primary-navigation .wp-block-navigation-item__content {
    min-height: 2.9rem;
  }

  body:not(.blind-accessibility-app-page) .site-footer-inner {
    padding-block: 1.15rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.blind-accessibility-app-page) *,
  body:not(.blind-accessibility-app-page) *::before,
  body:not(.blind-accessibility-app-page) *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}

@media (forced-colors: active) {
  body:not(.blind-accessibility-app-page) .primary-navigation .wp-block-navigation-item__content,
  body:not(.blind-accessibility-app-page) .footer-navigation .wp-block-navigation-item__content,
  body:not(.blind-accessibility-app-page) :is(.post-card, .page-card, .search-result) {
    border: 1px solid CanvasText;
  }

  body:not(.blind-accessibility-app-page) :is(.site-header, .site-footer, .ba-widget-region) :focus-visible {
    outline: 3px solid Highlight;
  }
}
