/* Accessibility helpers for the public site — additive only.
   Loaded LAST in <head> so it can restore keyboard focus visibility
   without editing the legacy stylesheet (which sets *:focus{outline:none}). */

/* Skip-to-content link: off-screen until focused by keyboard users (WCAG 2.4.1) */
.acr-skip-link {
    position: absolute;
    left: 8px;
    top: -56px;
    z-index: 100000;
    display: inline-block;
    padding: 10px 16px;
    background: #ff7a00;
    color: #fff;
    font-weight: 600;
    text-decoration: none;
    border-radius: 0 0 8px 8px;
    box-shadow: 0 4px 14px rgba(0, 0, 0, .25);
    transition: top .15s ease;
}
.acr-skip-link:focus {
    top: 0;
    color: #fff;
    outline: 2px solid #fff;
    outline-offset: 2px;
}

/* Restore a visible focus ring for keyboard navigation (WCAG 2.4.7).
   Mouse/touch focus stays ring-free because :focus-visible only matches keyboard. */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible,
[role="button"]:focus-visible,
.btn:focus-visible {
    outline: 2px solid #ff7a00 !important;
    outline-offset: 2px !important;
    border-radius: 4px;
}

/* Honor users who prefer reduced motion (WCAG 2.3.3) */
@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: .001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .001ms !important;
    }
}
