/**
 * bonus-card__* — styles specific to the /bonus/ bonus-cards grid.
 * Bonus images must render in full, never cropped (explicit project requirement).
 */

.bonus-cards {
  margin-block-end: var(--space-section);
}

.bonus-card {
  display: flex;
  flex-direction: column;
  background: var(--color-bg-dark);
  border-radius: var(--radius-card);
  overflow: hidden;
  height: 100%;
}

.bonus-card__image {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 220px;
  background: var(--color-bg-primary);
  padding: 0.75rem;
}

.bonus-card__image img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
}

.bonus-card__body {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  padding: var(--space-card-padding);
  flex: 1;
}

.bonus-card__title {
  margin: 0;
  font-size: 1.05rem;
}

.bonus-card__text {
  margin: 0;
  font-size: var(--font-size-small);
  flex: 1;
}

.bonus-card__cta {
  margin-block-start: 0.75rem;
  padding-block: 0.65rem;
  font-size: var(--font-size-small);
}
