/* ===========================
   GREY AI MEDIA AGENCY
   Keyframe Animations — v2
   =========================== */

/* Pulse glow — badge dot & CTA */
@keyframes pulseGlow {
    0%, 100% {
        box-shadow: 0 0 6px rgba(56, 189, 248, 0.4);
        opacity: 1;
    }
    50% {
        box-shadow: 0 0 18px rgba(56, 189, 248, 0.7);
        opacity: 0.6;
    }
}

/* Scroll indicator bounce */
@keyframes scrollBounce {
    0%, 100% { transform: translateY(0); opacity: 1; }
    50%       { transform: translateY(12px); opacity: 0.4; }
}

/* Logo marquee */
@keyframes marqueeScroll {
    0%   { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

/* Gradient text shimmer */
@keyframes gradientShift {
    0%   { background-position: 0% 50%; }
    50%  { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

/* Story progress fill */
@keyframes storyProgress {
    from { width: 0%; }
    to   { width: 100%; }
}

/* Floating decoration */
@keyframes float {
    0%, 100% { transform: translateY(0); }
    50%       { transform: translateY(-14px); }
}

/* Fade slide up */
@keyframes slideUp {
    from { opacity: 0; transform: translateY(28px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* Mobile menu stagger delays */
.mobile-menu__link {
    transition: opacity 0.4s ease, transform 0.4s ease, color 0.3s ease;
}
.mobile-menu.active .mobile-menu__list li:nth-child(1) .mobile-menu__link { transition-delay: 0.06s; }
.mobile-menu.active .mobile-menu__list li:nth-child(2) .mobile-menu__link { transition-delay: 0.12s; }
.mobile-menu.active .mobile-menu__list li:nth-child(3) .mobile-menu__link { transition-delay: 0.18s; }
.mobile-menu.active .mobile-menu__list li:nth-child(4) .mobile-menu__link { transition-delay: 0.24s; }
.mobile-menu.active .mobile-menu__list li:nth-child(5) .mobile-menu__link { transition-delay: 0.30s; }
.mobile-menu.active .mobile-menu__list li:nth-child(6) .mobile-menu__link { transition-delay: 0.36s; }

/* Story progress class */
.progress-bar__fill--active {
    animation: storyProgress linear forwards;
}

/* Dashboard bar grow on scroll */
.dashboard-mockup__bar {
    animation: none; /* controlled by GSAP */
}

/* Reduced motion overrides */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
    html { scroll-behavior: auto; }
    .marquee__track { animation: none; }
    .hero__scroll-line      { animation: none; }
    .hero__badge-dot        { animation: none; }
    .hero__title-line       { clip-path: inset(0 0% 0 0) !important; }
    .gradient-text          { animation: none; }
}
