/* 
 * Patna Luxury Beauty Studio - Animations (V3)
 */

 .animate-on-scroll {
    opacity: 0;
    will-change: transform, opacity;
}

/* Fade Up */
.fade-up {
    transform: translateY(40px);
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.fade-up.is-visible {
    opacity: 1;
    transform: translateY(0);
}

/* Fade Left */
.fade-left {
    transform: translateX(40px);
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.fade-left.is-visible {
    opacity: 1;
    transform: translateX(0);
}

/* Fade Right */
.fade-right {
    transform: translateX(-40px);
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.fade-right.is-visible {
    opacity: 1;
    transform: translateX(0);
}

/* Scale Up */
.scale-up {
    transform: scale(0.9);
    transition: opacity 0.8s cubic-bezier(0.175, 0.885, 0.32, 1.275), transform 0.8s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.scale-up.is-visible {
    opacity: 1;
    transform: scale(1);
}

/* Delays */
.delay-100 { transition-delay: 100ms; }
.delay-200 { transition-delay: 200ms; }
.delay-300 { transition-delay: 300ms; }
.delay-400 { transition-delay: 400ms; }

/* Image Hover Zoom */
.hover-zoom {
    overflow: hidden;
}

.hover-zoom img {
    transition: transform 0.6s ease;
}

.hover-zoom:hover img {
    transform: scale(1.05);
}

/* Floating Elements */
@keyframes float {
    0% { transform: translateY(0px); }
    50% { transform: translateY(-15px); }
    100% { transform: translateY(0px); }
}

.floating-element {
    animation: float 6s ease-in-out infinite;
}

.floating-element.delay-1 {
    animation-delay: 1s;
}

.floating-element.delay-2 {
    animation-delay: 2s;
}
