
.case-loop-images {
    position: relative;
}

.case-loop-image--main,
.case-loop-image--hover {
    transition: opacity 0.3s ease;
}

.case-loop-image--hover {
    position: absolute;
    inset: 0;
    opacity: 0;
}

.post-loop:has(.case-loop-image--hover):hover .case-loop-image--hover {
    opacity: 1;
}

.post-loop:has(.case-loop-image--hover):hover .case-loop-image--main {
    opacity: 0;
}

.archive-content {
    & .posts-loop {
        & .post-loop.post-loop-type-cases {
			position: relative;

			:is(body.archive) & {
                font-size: var(--p-s);
            }

            &:not(.is-featured) {
                & .post-title {
                    font-size: calc(.5 * var(--h2));
                }
            }

			& .post-link {
				position: absolute;
				inset: 0;
				opacity: 0;
				z-index: 1;
			}
        }
    }
}
