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

@keyframes pulse {
    0% {
        text-shadow: 0 0 10px rgba(255, 215, 0, 0.5);
    }
    50% {
        text-shadow: 0 0 20px rgba(255, 215, 0, 0.8);
    }
    100% {
        text-shadow: 0 0 10px rgba(255, 215, 0, 0.5);
    }
}

@keyframes backgroundMove {
    0% {
        transform: translate(-50%, -50%) rotate(0deg);
    }
    100% {
        transform: translate(-50%, -50%) rotate(360deg);
    }
}

@keyframes neonFlicker {
    0%, 19.999%, 22%, 62.999%, 64%, 64.999%, 70%, 100% {
        opacity: 1;
    }
    20%, 21.999%, 63%, 63.999%, 65%, 69.999% {
        opacity: 0.4;
    }
}

.info-card, .schedule-card, .timeline-item {
    animation: fadeIn 0.5s ease-out;
}

.highlight {
    animation: pulse 2s infinite;
}

.logo {
    animation: neonFlicker 10s infinite;
}