/* Custom Styles for Extensibility and Micro-animations */
html {
    scroll-behavior: smooth;
}

::selection {
    background-color: #e50914; /* brand-red */
    color: #ffffff;
}

/* Animations */
@keyframes marquee {
    0% { transform: translateX(0%); }
    100% { transform: translateX(-50%); }
}

.animate-marquee {
    animation: marquee 30s linear infinite;
    display: inline-block;
    padding-left: 2rem;
}
.animate-marquee:hover {
    animation-play-state: paused;
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.animate-fade-in-up {
    animation: fadeInUp 1s cubic-bezier(0.16, 1, 0.3, 1) forwards;
    opacity: 0;
}

.animation-delay-100 { animation-delay: 100ms; }
.animation-delay-200 { animation-delay: 200ms; }
.animation-delay-300 { animation-delay: 300ms; }
.animation-delay-400 { animation-delay: 400ms; }
.animation-delay-500 { animation-delay: 500ms; }
.animation-delay-600 { animation-delay: 600ms; }

/* Custom slow slide for hero background */
@keyframes slideUpSlow {
    from { transform: translateY(0) scale(1.05); }
    to { transform: translateY(-5%) scale(1.05); }
}

.slide-up-slow {
    animation: slideUpSlow 20s ease-in-out infinite alternate;
}

/* Scrollbar customization */
::-webkit-scrollbar {
    width: 8px;
}
::-webkit-scrollbar-track {
    background: #0a0a0a;
}
::-webkit-scrollbar-thumb {
    background: #333;
    border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
    background: #e50914;
}
