/* Reuse the catalogue's 15:8 media fill and lower-left alignment. */
.page-home .cases .case-card-media {
  height: auto;
  aspect-ratio: 15 / 8;
  background: #f3f4f6;
}

.page-home .cases .case-card-image,
.page-home .cases .case-card-video {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  margin: 0;
  object-fit: cover;
  object-position: left bottom;
  transform: none;
}

.page-home .cases .case-card-image--empty {
  background: #f3f4f6;
}

.page-home .cases .case-card-video {
  position: absolute;
  inset: 0;
  opacity: 0;
  pointer-events: none;
}

.page-home .cases .case-card-media:is(.is-starting, .is-playing) .case-card-video {
  opacity: 1;
}

.page-software-approach .software-approach-projects {
  --cases-card-radius: 24px;
  --cases-project-card-padding: 20px;
  --cases-project-client-size: 18px;
  --cases-project-title-size: 14px;
  --cases-project-badge-size: 12px;
}

.page-software-approach .software-approach-projects .cases-project-card__title {
  overflow: visible;
  text-overflow: clip;
}

@media (min-width: 800px) {
  .page-software-approach .software-approach-projects {
    --cases-project-card-padding: calc(20px + (100vw - 800px) * 4 / 560);
    --cases-project-client-size: calc(18px + (100vw - 800px) * 2 / 560);
    --cases-project-title-size: 16px;
  }
}

@media (min-width: 1360px) {
  .page-software-approach .software-approach-projects {
    --cases-project-card-padding: calc(24px + (100vw - 1360px) * 8 / 240);
    --cases-project-client-size: calc(20px + (100vw - 1360px) * 4 / 240);
    --cases-project-title-size: calc(16px + (100vw - 1360px) * 2 / 240);
  }
}

@media (min-width: 1600px) {
  .page-software-approach .software-approach-projects {
    --cases-project-card-padding: 32px;
    --cases-project-client-size: 24px;
    --cases-project-title-size: calc(18px + (100vw - 1600px) * 2 / 320);
  }
}

@media (min-width: 1920px) {
  .page-software-approach .software-approach-projects {
    --cases-project-title-size: 20px;
    --cases-project-badge-size: 14px;
  }
}
