img[loading="lazy"],
img[decoding="async"] {
    opacity: 0;
    transition: opacity 0.25s ease-in-out;
}

img[loading="lazy"].is-loaded,
img[decoding="async"].is-loaded {
    opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
    img[loading="lazy"],
    img[decoding="async"] {
        opacity: 1;
        transition: none;
    }
}
