/* Animation utility classes */
.animate-in {
    will-change: opacity, transform;
}

/* Lazy image blur-in effect */
img[loading="lazy"] {
    opacity: 0;
    filter: blur(8px);
    transition: opacity 0.5s ease, filter 0.5s ease;
}

img[loading="lazy"].is-loaded {
    opacity: 1;
    filter: blur(0);
}

/* Reduce motion overrides */
@media (prefers-reduced-motion: reduce) {
    .animate-in,
    .wp-block-heading {
        opacity: 1 !important;
        transform: none !important;
        will-change: auto;
    }

    img[loading="lazy"] {
        opacity: 1;
        filter: none;
        transition: none;
    }
}
