/* Category Grid default styles */
.cat-grid {
  display: grid;
  gap: 28px;
  grid-template-columns: repeat(var(--cat-cols, 4), 1fr);
}
.cat-grid[data-columns="6"] { --cat-cols: 6; }
.cat-grid[data-columns="5"] { --cat-cols: 5; }
.cat-grid[data-columns="4"] { --cat-cols: 4; }
.cat-grid[data-columns="3"] { --cat-cols: 3; }
.cat-grid[data-columns="2"] { --cat-cols: 2; }

@media (max-width: 1024px) { .cat-grid { --cat-cols: 3; } }
@media (max-width: 768px)  { .cat-grid { --cat-cols: 2; } }
@media (max-width: 480px)  { .cat-grid { --cat-cols: 1; } }

.cat-card {
  display: block;
  text-decoration: none;
  border-radius: 14px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 6px 18px rgba(0,0,0,.06);
  transition: transform .2s ease, box-shadow .2s ease;
}
.cat-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(0,0,0,.10);
}

.cat-img img, .cat-img--placeholder {
  display: block; width: 100%; height: 220px; object-fit: cover;
  background: #f3f4f6;
}
.cat-title {
  font-size: 1.05rem; line-height: 1.3; margin: 14px 14px 16px;
  color: #111827; text-align: center;
}
.cat-count { color:#6b7280; font-weight: 400; margin-left: 6px; }
.cat-desc { color:#4b5563; font-size:.95rem; margin: 0 16px 18px; text-align: center; }
