/* Hero sequence: video beam first, then purple UI fades in */
body {
    --accent-live: #6366f1;
    --accent-live-2: #8b5cf6;
    --accent-glow-live: rgba(99, 102, 241, 0.45);
}

body.hero-intro .nav,
body.hero-intro .hero-content,
body.hero-intro .cta-section,
body.hero-intro .footer {
    opacity: 0;
    transform: translateY(18px);
    pointer-events: none;
    transition: opacity 1.2s ease, transform 1.2s ease;
}

body.hero-ready .nav,
body.hero-ready .hero-content,
body.hero-ready .cta-section,
body.hero-ready .footer {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

/* Kill any green that might leak in */
:root {
    --green-kill: #6366f1 !important;
}

*[style*="green"],
*[style*="#39ff"],
*[style*="#7cff"],
*[style*="#00ff"],
*[style*="lime"] {
    color: var(--accent-live) !important;
    border-color: var(--accent-live) !important;
    background-color: transparent !important;
}

body.hero-intro .video-overlay {
    background:
        linear-gradient(180deg, rgba(10, 10, 11, 0.82) 0%, rgba(10, 10, 11, 0.7) 50%, rgba(10, 10, 11, 0.88) 100%),
        radial-gradient(ellipse at 50% 45%, rgba(57, 255, 20, 0) 0%, transparent 40%);
    transition: background 1.4s ease;
}

body.hero-ready .video-overlay {
    background:
        linear-gradient(180deg, rgba(10, 10, 11, 0.42) 0%, rgba(10, 10, 11, 0.22) 40%, rgba(10, 10, 11, 0.62) 100%),
        radial-gradient(ellipse at 50% 38%, rgba(99, 102, 241, 0.32) 0%, transparent 52%),
        radial-gradient(ellipse at 80% 90%, rgba(139, 92, 246, 0.2) 0%, transparent 45%);
}

body.hero-ready .gradient-text,
body.hero-ready .btn-primary,
body.hero-ready .hero-badge,
body.hero-ready .badge-dot {
    animation: purpleBloom 1.4s ease forwards;
}

@keyframes purpleBloom {
    0% { filter: brightness(0.85); }
    100% { filter: brightness(1); }
}

body.hero-ready .badge-dot {
    background: #818cf8;
    box-shadow: 0 0 16px rgba(129, 140, 248, 0.95);
}

/* Beam emphasis during intro */
body.hero-intro .video-background video {
    filter: saturate(1.15) contrast(1.08) brightness(1.05);
}

body.hero-ready .video-background video {
    filter: saturate(1.08) contrast(1.05);
    transition: filter 1.4s ease;
}
