/* Diabec accessibility overrides — WCAG 2.1 AA / EU Accessibility Act
   Loaded after page styles so it wins the cascade. */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
    .scroll-arrow,
    .scroll-down,
    .pricing-arrow,
    [class*="bounce"],
    [class*="pulse"],
    [class*="spin"] {
        animation: none !important;
    }
    /* Replace autoplay hero video with a still poster */
    #heroVid,
    video[autoplay] {
        display: none !important;
    }
    .hero {
        background-image: url('diabec-bg-apothecary.png');
        background-size: cover;
        background-position: center;
    }
}

/* Visible focus ring even on amber/gold buttons */
:focus-visible {
    outline: 2px solid #2c3e1f !important;
    outline-offset: 2px !important;
    box-shadow: 0 0 0 4px rgba(200, 169, 110, 0.45) !important;
}

/* Hero video pause control (homepage) */
.hero-vid-pause {
    position: absolute;
    bottom: 1rem;
    right: 1rem;
    z-index: 5;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.55);
    border: 1px solid rgba(255, 255, 255, 0.6);
    color: #fff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    line-height: 1;
}
.hero-vid-pause:hover { background: rgba(0, 0, 0, 0.75); }

/* Form field error states (checkout + any form) */
input[aria-invalid="true"],
select[aria-invalid="true"],
textarea[aria-invalid="true"] {
    border-color: #c0392b !important;
    box-shadow: 0 0 0 3px rgba(192, 57, 43, 0.15) !important;
}
.field-error {
    display: block;
    color: #c0392b;
    font-size: 0.78rem;
    margin-top: 4px;
    min-height: 1em;
}
