.card {
  border-radius: var(--Corner-radius-Medium);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.default {
  background-color: var(--Base-Surface-Subtle-Normal);
}

.featured {
  background-color: var(--Main-Grey-White);
}

.default,
.featured {
  border: 1px solid var(--Base-Border-Subtle);
}

.image {
  width: 100%;
  height: 12.5rem; /* 200px */
}

.content {
  display: grid;
  gap: var(--Spacing-x-one-and-half);
  padding: var(--Spacing-x2) var(--Spacing-x3);
  grid-template-rows: auto 1fr auto;
  flex-grow: 1;
}

.description {
  color: var(--Base-Text-Medium-contrast);
}

.ctaContainer {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--Spacing-x1);
  width: 100%;
}

.ctaButton {
  width: 100%;
}

@media (min-width: 1367px) {
  .card:not(.alwaysStack) .ctaContainer {
    grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
  }

  .card:not(.alwaysStack) .ctaContainer:has(:only-child) {
    grid-template-columns: 1fr;
  }
}
