/* Lazy Load Fade Effects */

/* Initial state - hidden */
.lazy-fade,
.scroll-fade {
    opacity: 0;
    transform: translateY(30px);
}

/* Hint browser for smoother animations */
.scroll-fade,
.lazy-fade {
    will-change: opacity, transform;
}

/* One-time fade in for lazy-fade */
.lazy-fade.fade-in {
    opacity: 1;
    transform: translateY(0);
    transition: opacity 0.6s ease, transform 0.6s ease;
}

/* Lazy load images */
/* img[data-src] {
    opacity: 0;
    transition: opacity 0.4s linear;
}

img[data-src].loaded {
    opacity: 1;
} */

/* Staggered animation for grid items (one-time lazy-fade only) */
.lazy-fade:nth-child(1) { transition-delay: 0s; }
.lazy-fade:nth-child(2) { transition-delay: 0.15s; }
.lazy-fade:nth-child(3) { transition-delay: 0.3s; }
.lazy-fade:nth-child(4) { transition-delay: 0.45s; }
.lazy-fade:nth-child(5) { transition-delay: 0.6s; }
.lazy-fade:nth-child(6) { transition-delay: 0.75s; }
