.ds-coupon-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: calc(var(--ds-spacing-unit) * 6);
}

.ds-coupon-card {
  padding: calc(var(--ds-spacing-unit) * 6);
  text-decoration: none;
  color: inherit;
  display: flex;
  flex-direction: column;
  gap: calc(var(--ds-spacing-unit) * 3);
}

.ds-coupon-card.is-disabled {
  opacity: 0.7;
  pointer-events: none;
}

.ds-coupon-card__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: calc(var(--ds-spacing-unit) * 3);
}

.ds-coupon-card__title {
  font-weight: 800;
  margin: 0;
  font-size: 1.1rem;
  letter-spacing: -0.01em;
}

.ds-coupon-card__store {
  color: var(--ds-color-secondary);
  margin-top: calc(var(--ds-spacing-unit) * 1);
  font-size: 0.85rem;
}

.ds-coupon-card__badge {
  background: var(--ds-color-text);
  color: var(--ds-color-background);
  padding: calc(var(--ds-spacing-unit) * 2) calc(var(--ds-spacing-unit) * 3);
  border-radius: 999px;
  font-weight: 800;
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  white-space: nowrap;
}

.ds-coupon-card__desc {
  color: var(--ds-color-secondary);
  margin: 0;
}

.ds-coupon-card__expires {
  margin-top: auto;
  padding-top: calc(var(--ds-spacing-unit) * 3);
  border-top: var(--ds-border-width) solid var(--ds-color-border);
  color: var(--ds-color-secondary);
  font-size: 0.82rem;
}

