/* ============================================================
   Sparkns Racks — Homepage "Product Categories" Section
   Section container only. Cards use the shared product-card.css component.
   ============================================================ */

.sr-products {
  background: #f2f2f2;
  padding: clamp(64px, 9vw, 120px) 32px;
}

.sr-products__head {
  text-align: center;
  margin: 0 auto clamp(40px, 6vw, 64px);
  max-width: 720px;
}

.sr-products__eyebrow {
  display: block;
  font-family: 'Space Grotesk', 'Inter', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--sr-green, #8FBF5C);
  margin-bottom: 16px;
}

.sr-products__title {
  font-family: 'Archivo Black', sans-serif;
  font-size: clamp(26px, 3.5vw, 44px);
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -0.01em;
  text-transform: uppercase;
  color: #111111;
  margin: 0 0 20px;
}

.sr-products__accent {
  width: 64px;
  height: 4px;
  background: var(--sr-green, #8FBF5C);
  border-radius: 2px;
  margin: 0 auto 24px;
}

.sr-products__desc {
  font-family: 'Inter', sans-serif;
  font-size: clamp(14px, 1.2vw, 16px);
  line-height: 1.7;
  color: #555;
  margin: 0;
}

/* Grid wrapper — forces 5 cols on desktop for the 5 category cards */
#hm-cat-grid {
  max-width: 1400px;
  margin: 0 auto;
}

#hm-cat-grid .sr-sm-pcat__grid {
  grid-template-columns: repeat(5, 1fr);
  gap: clamp(14px, 1.8vw, 22px);
}

/* Description text extension (homepage cards only) */
.sr-hm-cat-card .sr-sm-pcat__desc {
  font-family: 'Inter', sans-serif;
  font-size: 12.5px;
  line-height: 1.55;
  color: #777;
  margin: 2px 0 2px;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Responsive overrides */
@media (max-width: 1280px) {
  #hm-cat-grid .sr-sm-pcat__grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
  }
}

@media (max-width: 1024px) {
  #hm-cat-grid .sr-sm-pcat__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
}

@media (max-width: 700px) {
  .sr-products { padding: clamp(48px, 8vw, 80px) 20px; }
}

@media (max-width: 480px) {
  #hm-cat-grid .sr-sm-pcat__grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }
}
