/**
 * Murphy Radio - Animations CSS
 * Defines animations for the website
 */

/* Base state for animated elements - invisible */
.animate-on-scroll {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.8s ease, transform 0.8s ease;
    will-change: opacity, transform;
}

/* Animated state - visible with transition */
.animate-on-scroll.fade-in {
    opacity: 1;
    transform: translateY(0);
}

/* Different animation delays for staggered effects */
.delay-100 { transition-delay: 0.1s; }
.delay-200 { transition-delay: 0.2s; }
.delay-300 { transition-delay: 0.3s; }
.delay-400 { transition-delay: 0.4s; }
.delay-500 { transition-delay: 0.5s; }

/* Different animation directions */
.from-left {
    transform: translateX(-40px);
}
.from-left.fade-in {
    transform: translateX(0);
}

.from-right {
    transform: translateX(40px);
}
.from-right.fade-in {
    transform: translateX(0);
}

.from-bottom {
    transform: translateY(50px);
}
.from-bottom.fade-in {
    transform: translateY(0);
}

.zoom-in {
    transform: scale(0.9);
}
.zoom-in.fade-in {
    transform: scale(1);
}

/* Fade in only (no movement) */
.fade-only {
    transform: none;
}

/* For elements that should be animated with higher priority */
.animate-on-scroll.priority {
    transition-duration: 0.6s;
}
