/* Accessibility helpers shared by every page (WCAG 2.2 AA).
   Loaded after each page's own <style>, so keep rules narrow. */

/* 2.4.1 Bypass blocks: hidden until a keyboard user tabs to it */
.skip-link {
  position: absolute;
  left: 12px;
  top: -100px;
  z-index: 10000;
  padding: 12px 18px;
  background: #0c0c0c;
  color: #ffffff;
  font: 600 15px/1.2 system-ui, -apple-system, sans-serif;
  text-decoration: none;
  border: 2px solid #ffffff;
  border-radius: 4px;
}
.skip-link:focus { top: 12px; }

/* The skip-link target should not show a focus ring when it receives focus */
main:focus, main:focus-visible { outline: none !important; box-shadow: none !important; }

/* 2.4.7 / 2.4.11 Focus visible: a clear ring on light AND dark sections */
:focus-visible {
  outline: 3px solid #3d95dc !important;
  outline-offset: 2px !important;
  box-shadow: 0 0 0 5px rgba(12, 12, 12, 0.85) !important;
}

/* 2.2.2 Pause, stop, hide: the home-page reviews strip also pauses for keyboard focus */
.testimonials-track:focus-within,
.testimonials-track.is-paused { animation-play-state: paused !important; }
.a11y-pause { min-height: 44px; margin-left: 12px; }
@media (max-width: 600px) { .a11y-pause { margin-left: 0; } }

/* 2.3.3 / user preference: no motion for people who ask the OS for less */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
    scroll-behavior: auto !important;
  }
}
