/* Catalog card styling with a five-column desktop grid for the homepage. */
.home-special-offers { scroll-margin-top: 110px; }
.home-special-offers .catalog-product-list {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 16px;
  margin-top: 24px;
}
.home-special-offers .catalog-product-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: 0 12px 28px rgba(0,0,0,.08);
  transition: transform 180ms, box-shadow 180ms, border-color 180ms;
}
.home-special-offers .catalog-product-card:hover {
  transform: translateY(-3px);
  border-color: var(--color-primary-pale);
  box-shadow: 0 18px 36px rgba(0,0,0,.12);
}
.home-special-offers .catalog-product-card__img {
  position: relative;
  height: 220px;
  padding: 16px;
  background: linear-gradient(180deg, #f5f8fb 0%, #eef3f7 100%);
  display: flex;
  align-items: center;
  justify-content: center;
}
.home-special-offers .catalog-product-card__img img {
  max-width: 100%;
  max-height: 227px;
  object-fit: contain;
}
.home-special-offers .catalog-product-card__body {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  justify-content: center;
  gap: 10px;
  padding: 16px 16px 18px;
}
.home-special-offers .catalog-product-card__title {
  color: var(--color-primary);
  font-size: var(--text-md);
  font-weight: 700;
  line-height: 1.3;
}
.home-special-offers__more { margin-top: 3rem; text-align: center; }
@media (max-width: 1023px) {
  .home-special-offers .catalog-product-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .home-special-offers .catalog-product-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-special-offers .catalog-product-card__img { height: 200px; }
  .home-special-offers .catalog-product-card__img img { max-height: 204px; }
}
@media (max-width: 520px) {
  .home-special-offers .catalog-product-list { grid-template-columns: 1fr; }
}
