/* Home page overrides (v14) — fixes cramped teaser cards + missing deal styles */
.homeCardsGrid{
  display:grid;
  gap: 12px;
  margin-top: 10px;
  /* auto-fit prevents ultra-narrow columns that break cards */
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
}

@media (max-width: 760px){
  .homeCardsGrid{ grid-template-columns: 1fr; }
}

/* Deals teaser card styles (homepage is not .page-deals, so we style locally) */
.homeCardsGrid--deals .dealTop{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
}
.homeCardsGrid--deals .dealBrandRow{
  display:flex;
  gap:12px;
  align-items:center;
}
.homeCardsGrid--deals .dealBrand{
  font-weight:1000;
  color: rgba(17,24,39,.92);
}
.homeCardsGrid--deals .dealName{
  font-weight:800;
  color: rgba(17,24,39,.78);
  margin-top:2px;
  line-height:1.35;
}
.homeCardsGrid--deals .dealCta{
  margin-top:12px;
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:10px;
}
.homeCardsGrid--deals .dealBtn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  font-weight:1000;
}

/* Thumbnail sizing + "see full image" */
.homeCardsGrid--deals .dealMedia{
  width: 140px;
  aspect-ratio: 1 / 1;
  display:block;
  margin-inline: auto;
}
.homeCardsGrid--deals .dealImg,
.homeCardsGrid--deals .dealPlaceholder{
  width:100%;
  height:100%;
  object-fit: contain;
}
@media (max-width: 480px){
  .homeCardsGrid--deals .dealMedia{ width: 120px; }
}
