/* Accessibility enhancements — loaded after style.css so these take precedence. */

/* Clear, high-contrast keyboard focus for every interactive element. */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible,
.btn:focus-visible {
  outline: 3px solid #1a6fd6;
  outline-offset: 2px;
  border-radius: 4px;
}

/* Make the "skip to main content" link visible when focused. */
.skip-link:focus {
  position: fixed;
  top: 10px;
  left: 10px;
  width: auto;
  height: auto;
  padding: 10px 16px;
  background: #fff;
  color: #111;
  z-index: 10000;
  border-radius: 8px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, .25);
}

/* Ensure white text on the red brand/danger buttons (contrast). */
.btn--red,
.btn--danger,
a.btn--red {
  color: #fff;
}

/* Honour the OS "reduce motion" preference. */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .001ms !important;
    scroll-behavior: auto !important;
  }
}

/* Comfortable tap targets on touch devices. */
@media (pointer: coarse) {
  .btn,
  .navbar__nav a {
    min-height: 42px;
  }
}
