/* V130 — global header/menu contrast guarantee.
 * Loaded after every legacy and responsive header stylesheet.
 * Color pairs below meet WCAG 2.1 AA for normal-size text (>= 4.5:1).
 */

.site-header .site-nav a,
.site-header .site-nav .nav-guide-button,
.site-header .nav-actions .nav-link,
.site-header .nav-actions .button,
.site-header .logout-inline-form button {
  opacity: 1;
  font-weight: 850;
  text-shadow: none;
  -webkit-text-fill-color: currentColor;
}

.site-header .site-nav a,
.site-header .site-nav .nav-guide-button,
.site-header .nav-actions .nav-link {
  border: 1px solid transparent;
  background: #ffffff;
  color: #0f2942;
}
.site-header .site-nav a:hover,
.site-header .site-nav a:focus-visible,
.site-header .site-nav .nav-guide-button:hover,
.site-header .site-nav .nav-guide-button:focus-visible,
.site-header .nav-actions .nav-link:hover,
.site-header .nav-actions .nav-link:focus-visible {
  border-color: #9bb8d2;
  background: #e9f3ff;
  color: #0a2c52;
}

.site-header .nav-actions .qr-nav-button {
  border: 1px solid #7ca8df;
  background: #eaf3ff;
  color: #0b2c4a;
  box-shadow: 0 3px 10px rgba(11, 44, 74, .10);
}
.site-header .nav-actions .qr-nav-button:hover,
.site-header .nav-actions .qr-nav-button:focus-visible {
  border-color: #4f82c1;
  background: #d8eaff;
  color: #06284b;
}

.site-header .nav-actions .nav-cta,
.site-header .nav-actions .button.primary {
  border: 1px solid #762500;
  background: linear-gradient(135deg, #b94600 0%, #9a3412 52%, #842b00 100%);
  color: #ffffff;
  box-shadow: 0 8px 20px rgba(111, 35, 0, .26);
}
.site-header .nav-actions .nav-cta:hover,
.site-header .nav-actions .nav-cta:focus-visible,
.site-header .nav-actions .button.primary:hover,
.site-header .nav-actions .button.primary:focus-visible {
  border-color: #5f1d00;
  background: linear-gradient(135deg, #9a3412 0%, #842b00 100%);
  color: #ffffff;
}

.site-header .guest-pill,
.page-index .site-header .guest-pill {
  border: 1px solid #102d49;
  background: #102d49;
  color: #ffffff;
  font-weight: 800;
}
.site-header .guest-pill strong,
.page-index .site-header .guest-pill strong { color: #ffffff; }
.site-header .guest-pill .dot { background: #ff9c4a; box-shadow: 0 0 0 3px rgba(255, 156, 74, .18); }

.site-header .nav-toggle {
  border: 2px solid #537594;
  background: #ffffff;
  color: #0b2c4a;
}
.site-header .nav-toggle span { background: #0b2c4a; }
.site-header .nav-toggle:hover,
.site-header .nav-toggle:focus-visible { border-color: #174f85; background: #eaf3ff; }

@media (max-width: 1800px) {
  .site-header .site-nav-area .site-nav a,
  .site-header .site-nav-area .site-nav .nav-guide-button,
  .site-header .site-nav-area .nav-actions .nav-link,
  .site-header .site-nav-area .nav-actions .button,
  .site-header .site-nav-area .logout-inline-form button {
    min-height: 50px;
    border-width: 1px;
    border-style: solid;
  }
  .site-header .site-nav-area .site-nav a,
  .site-header .site-nav-area .site-nav .nav-guide-button,
  .site-header .site-nav-area .nav-actions .nav-link,
  .site-header .site-nav-area .logout-inline-form button {
    border-color: #c0cfdd;
    background: #ffffff;
    color: #0f2942;
  }
  .site-header .site-nav-area .site-nav a:hover,
  .site-header .site-nav-area .site-nav a:focus-visible,
  .site-header .site-nav-area .site-nav .nav-guide-button:hover,
  .site-header .site-nav-area .site-nav .nav-guide-button:focus-visible,
  .site-header .site-nav-area .nav-actions .nav-link:hover,
  .site-header .site-nav-area .nav-actions .nav-link:focus-visible,
  .site-header .site-nav-area .logout-inline-form button:hover,
  .site-header .site-nav-area .logout-inline-form button:focus-visible {
    border-color: #7fa3c3;
    background: #e9f3ff;
    color: #0a2c52;
  }
  .site-header .site-nav-area .nav-actions .qr-nav-button {
    border-color: #7ca8df;
    background: #eaf3ff;
    color: #0b2c4a;
  }
  .site-header .site-nav-area .nav-actions .nav-cta,
  .site-header .site-nav-area .nav-actions .button.primary {
    border-color: #762500;
    background: linear-gradient(135deg, #b94600, #842b00);
    color: #ffffff;
  }
  .site-header .site-nav-area .guest-pill,
  .page-index .site-header .site-nav-area .guest-pill {
    border-color: #102d49;
    background: #102d49;
    color: #ffffff;
  }
}

@media (prefers-contrast: more) {
  .site-header .site-nav a,
  .site-header .site-nav .nav-guide-button,
  .site-header .nav-actions .nav-link,
  .site-header .nav-actions .button,
  .site-header .guest-pill,
  .site-header .nav-toggle { border-width: 2px; }
}
