/* Performance: faster paint on mobile and slow networks */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
}

main img,
main video,
main iframe {
    content-visibility: auto;
}

main section:not(:first-of-type) {
    content-visibility: auto;
    contain-intrinsic-size: auto 480px;
}

img[loading="lazy"] {
    background: rgba(var(--cs-rgb-olive), 0.06);
}

.cs-portfolio-panel:not(.is-active) {
    content-visibility: hidden;
    contain-intrinsic-size: 0 500px;
}

.cs-infra-photo-item img {
    width: 100%;
    height: auto;
    aspect-ratio: 3 / 2;
    object-fit: cover;
}
