/* Animation Styles: Parallax, Transitions, Motion */
/* Content-First Refactor - Phase 4: User Story 2 */

/* Red Police Light Animation */
@keyframes policeLights {
    0%, 100% {
        box-shadow:
            0 0 20px rgba(255, 0, 0, 0),
            0 0 40px rgba(255, 0, 0, 0),
            0 0 60px rgba(255, 0, 0, 0);
    }
    50% {
        box-shadow:
            0 0 20px rgba(255, 0, 0, 0.8),
            0 0 40px rgba(255, 0, 0, 0.6),
            0 0 60px rgba(255, 0, 0, 0.4);
    }
}

/* Glitch Text Effect */
@keyframes glitchText {
    0%, 89%, 100% {
        text-shadow:
            0 0 30px rgba(255, 0, 0, 0.8),
            0 0 60px rgba(255, 0, 0, 0.5),
            0 0 90px rgba(255, 0, 0, 0.3);
        transform: translateX(0);
    }
    90% {
        text-shadow:
            -3px 0 30px rgba(0, 255, 255, 0.9),
            3px 0 30px rgba(255, 0, 255, 0.9),
            0 0 60px rgba(255, 255, 0, 0.4),
            0 0 90px rgba(255, 0, 0, 0.3);
        transform: translateX(2px);
    }
    91% {
        text-shadow:
            2px 0 30px rgba(255, 0, 255, 0.9),
            -2px 0 30px rgba(0, 255, 0, 0.9),
            0 0 60px rgba(0, 255, 255, 0.4),
            0 0 90px rgba(255, 0, 0, 0.3);
        transform: translateX(-1px);
    }
    92% {
        text-shadow:
            0 0 30px rgba(255, 255, 0, 0.9),
            -2px 0 30px rgba(255, 0, 255, 0.9),
            2px 0 30px rgba(0, 255, 255, 0.9),
            0 0 90px rgba(255, 0, 0, 0.3);
        transform: translateX(0);
    }
    93% {
        text-shadow:
            -1px 0 30px rgba(0, 255, 0, 0.9),
            1px 0 30px rgba(255, 0, 255, 0.9),
            0 0 60px rgba(255, 255, 0, 0.4),
            0 0 90px rgba(255, 0, 0, 0.3);
        transform: translateX(1px);
    }
}

/* Scan Line Animation */
@keyframes scanline {
    0% {
        transform: translateY(-100%);
        opacity: 0;
    }
    5% {
        opacity: 0.6;
    }
    95% {
        opacity: 0.6;
    }
    100% {
        transform: translateY(100vh);
        opacity: 0;
    }
}

@keyframes scanline-fast {
    0% {
        transform: translateY(-100%);
    }
    100% {
        transform: translateY(100vh);
    }
}

/* Scan Animation for Form */
@keyframes scan {
    0% { left: -100%; }
    100% { left: 100%; }
}

/* Slide Down Animation */
@keyframes slideDown {
    from {
        transform: translateY(-100%);
    }
    to {
        transform: translateY(0);
    }
}

/* Respect reduced motion preferences */
@media (prefers-reduced-motion: reduce) {
    .hero-bg-image {
        transform: none !important;
    }
    .scanline {
        display: none;
    }
    h1 {
        animation: none;
    }
}

/* Reduced Motion Support Enhanced */
@media (prefers-reduced-motion: reduce) {
    .accordion-content,
    .process-content,
    .evidence-content,
    .credentials,
    .faq-answer,
    .accordion-trigger::after,
    .booking-bar.sticky {
        transition: none !important;
        animation: none !important;
    }
}
