/* Shared Sambiz / Karitab promotion treatment; eligibility stays in promotionBadge. */
.card:has(.promotionBadge) {
  --promotion-edge: #f4ac60;
  --promotion-wash: #fff5e8;
  --promotion-glow: #ffd399;
  --promotion-accent: #a9340a;
  --promotion-shadow: #b84b1218;
  border-color: var(--promotion-edge);
  box-shadow: 0 3px 12px var(--promotion-shadow);
}

.card:has(.promotionDeep) {
  --promotion-edge: #f28d90;
  --promotion-wash: #fff0ef;
  --promotion-glow: #ffb7a7;
  --promotion-accent: #b01832;
  --promotion-shadow: #b0183218;
}

.card:has(.promotionBadge) .thumb {
  background: radial-gradient(ellipse at 50% 48%, #ffffffed 12%, #ffffff80 52%, transparent 78%),
    linear-gradient(135deg, var(--promotion-glow), var(--promotion-wash) 52%, var(--promotion-glow));
}

.card:has(.promotionBadge) .body {
  background: linear-gradient(180deg, #fff 30%, var(--promotion-wash));
}

.card .promotionBadge {
  gap: 5px;
  padding: 5px 9px;
  border-radius: 6px 6px 10px 6px;
  box-shadow: 0 3px 8px var(--promotion-shadow);
  letter-spacing: .1px;
}

.card .promotionHot {
  color: #fff;
  border-color: #ae390b;
  background: linear-gradient(110deg, #ac3109, #c3480a);
}

.card .promotionDeep {
  color: #fff;
  border-color: #ad1630;
  background: linear-gradient(110deg, #ae1532, #c92b28);
}

.card:has(.promotionBadge) .pVN {
  color: var(--promotion-accent);
}

.card:has(.promotionBadge) .pPct,
.card:has(.promotionBadge) .disc {
  color: var(--promotion-accent);
  background: var(--promotion-wash);
}

.card:has(.promotionBadge):hover {
  border-color: var(--promotion-accent);
  box-shadow: 0 6px 20px var(--promotion-shadow);
}

.card:has(.promotionBadge):focus-within {
  outline: 2px solid var(--promotion-accent);
  outline-offset: 2px;
}

@media (max-width: 650px) {
  .card .promotionBadge {
    gap: 3px;
    padding: 3px 6px;
    letter-spacing: 0;
    white-space: normal;
  }
}

@media (prefers-reduced-motion: reduce) {
  .card:has(.promotionBadge) { transition: none; }
}
