/* 
 * Veneto Hair Style di Kazi - Animations
 * Keyframes and Utility Classes for Motion Design
 */

/* -------------------------------------
   KEYFRAMES
   ------------------------------------- */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translate3d(0, 40px, 0);
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes goldShimmer {
    0% {
        background-position: -200% center;
    }

    100% {
        background-position: 200% center;
    }
}

@keyframes float {
    0% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(-10px);
    }

    100% {
        transform: translateY(0px);
    }
}

@keyframes pulse-gold {
    0% {
        box-shadow: 0 0 0 0 rgba(201, 169, 97, 0.4);
    }

    70% {
        box-shadow: 0 0 0 10px rgba(201, 169, 97, 0);
    }

    100% {
        box-shadow: 0 0 0 0 rgba(201, 169, 97, 0);
    }
}

/* -------------------------------------
   ANIMATION CLASSES
   ------------------------------------- */
.animate-fade-up {
    animation-name: fadeInUp;
    animation-duration: 0.8s;
    animation-fill-mode: both;
}

.animate-fade-in {
    animation-name: fadeIn;
    animation-duration: 1s;
    animation-fill-mode: both;
}

.animate-float {
    animation: float 6s ease-in-out infinite;
}

.bg-shimmer {
    background: linear-gradient(to right,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, 0.1) 50%,
            rgba(255, 255, 255, 0) 100%);
    background-size: 200% auto;
    animation: goldShimmer 3s linear infinite;
}

/* -------------------------------------
   STAGGER DELAYS
   ------------------------------------- */
.delay-100 {
    animation-delay: 0.1s;
}

.delay-200 {
    animation-delay: 0.2s;
}

.delay-300 {
    animation-delay: 0.3s;
}

.delay-400 {
    animation-delay: 0.4s;
}

.delay-500 {
    animation-delay: 0.5s;
}

/* -------------------------------------
   HOVER EFFECTS
   ------------------------------------- */
.hover-lift {
    transition: transform 0.3s ease;
}

.hover-lift:hover {
    transform: translateY(-5px);
}

.hover-glow:hover {
    box-shadow: 0 0 20px rgba(201, 169, 97, 0.3);
}

.hover-scale {
    transition: transform 0.3s ease;
}

.hover-scale:hover {
    transform: scale(1.03);
}