.case-card { min-inline-size: 0; background: var(--color-background); }
.case-card__link { display: block; color: var(--color-text); text-decoration: none; }
.case-card__media { aspect-ratio: 720 / 380; overflow: hidden; }
.case-card__image { display: block; inline-size: 100%; block-size: 100%; object-fit: cover; }
.case-card__content { padding: var(--space-8) clamp(var(--space-4), 2.777778vw, var(--space-10)) var(--space-6); font-family: var(--font-heading); }
.case-card__title { margin: 0 0 var(--space-4); font-size: clamp(var(--fs-card-title-min), 1.666667vw, var(--fs-card-title-max)); font-weight: 600; line-height: 1.3; text-transform: uppercase; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.case-card__description { margin: 0; color: var(--color-case-description); font-size: clamp(var(--fs-card-description-min), 1.388889vw, var(--fs-card-description-max)); line-height: 1.25; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.case-card__link:hover .case-card__title { text-decoration: underline; text-underline-offset: 0.2em; }
.case-card__categories { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-8); margin-block-start: var(--space-8); font-family: var(--font-body); font-size: var(--fs-body); line-height: var(--line-height-control); }
.case-card__category { color: var(--color-description); }
.case-card__category--active { color: var(--color-text); }
.case-card__category-divider { color: var(--color-muted); }
.case-card--archive .case-card__content { min-block-size: 16.5rem; }
@media (width < 48rem) {
    .case-card__content { padding-block-start: var(--space-6); }
    .case-card__title { white-space: normal; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
    .case-card__categories { gap: var(--space-4); margin-block-start: var(--space-6); font-size: var(--fs-small); }
    .case-card--archive .case-card__content { min-block-size: 0; }
}
