/* AOI shared header. Keep navigation labels readable before the mobile overlay. */
.aoi-site-header .wp-block-columns { padding: 14px clamp(16px, 3vw, 40px) !important; }
.aoi-site-header .aoi-header-row { gap: 12px; min-width: 0; }
.aoi-site-header .wp-block-site-logo { flex: 0 0 35px; }
.aoi-site-header .wp-block-site-logo img { display: block; }
.aoi-site-header .aoi-header-brand {
  flex: 1 1 auto; min-width: 0; margin: 0;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
  font-size: clamp(15px, 1.6vw, 20px); line-height: 1.4;
}
.aoi-site-header .aoi-header-nav { flex: 0 0 auto; min-width: 0; }
.aoi-site-header .wp-block-navigation-item { flex-shrink: 0; }
.aoi-site-header .wp-block-navigation-item__content {
  white-space: nowrap; word-break: normal; overflow-wrap: normal;
}
.aoi-site-header .wp-block-search { width: clamp(180px, 20vw, 240px); max-width: 100%; margin: 0; }
.aoi-site-header .wp-block-search__input { min-width: 0; }
.aoi-site-header .wp-block-navigation__responsive-container-open {
  align-items: center; justify-content: center;
  width: 44px; height: 44px; border: 1px solid currentColor;
  border-radius: 50%; background: #ffffffb3; color: #24122e;
}
.aoi-site-header button:focus-visible, .aoi-site-header a:focus-visible {
  outline: 3px solid #251033; outline-offset: 4px;
}
@media (max-width: 1023px) {
  .aoi-site-header .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; }
  .aoi-site-header .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none; }
}
.aoi-site-header .wp-block-navigation__responsive-container.is-menu-open { padding: clamp(24px, 5vw, 56px); }
.aoi-site-header .is-menu-open .wp-block-navigation__responsive-close { width: min(100%, 48rem); max-width: none; }
.aoi-site-header .is-menu-open .wp-block-navigation__responsive-container-content { align-items: stretch; gap: 28px; }
.aoi-site-header .is-menu-open .wp-block-navigation__container { align-items: flex-start; gap: 20px; }
.aoi-site-header .is-menu-open .wp-block-navigation-item__content { white-space: normal; overflow-wrap: anywhere; }
.aoi-site-header .is-menu-open .wp-block-search { width: min(100%, 24rem); align-self: flex-start; }
.aoi-site-header .is-menu-open .wp-block-navigation__responsive-container-close { min-width: 44px; min-height: 44px; }
