.catalog-hero { padding-bottom: 28px; }
.catalog-search { margin: 20px 0 12px; display: flex; gap: 8px; max-width: 640px; }
.catalog-stats { color: var(--muted, #64748b); font-size: 14px; }
.catalog-filters { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 24px; }
.filter-chip {
  display: inline-block;
  padding: 8px 14px;
  border: 1px solid var(--border, #e2e8f0);
  border-radius: 999px;
  text-decoration: none;
  color: inherit;
  font-size: 14px;
  background: #fff;
}
.filter-chip.is-on { background: #0f172a; color: #fff; border-color: #0f172a; }
.catalog-grid h2 { font-size: 16px; margin: 0 0 8px; }
.catalog-grid h2 a { color: inherit; text-decoration: none; }
.pager { display: flex; gap: 16px; align-items: center; justify-content: center; margin: 28px 0 8px; }
.empty-state { padding: 32px 0; }
.how-list { line-height: 1.7; padding-left: 20px; }
.product-page { padding: 32px 0 64px; }
.crumbs { font-size: 14px; color: var(--muted, #64748b); margin-bottom: 16px; }
.product-split { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; align-items: start; }
.product-photo img { width: 100%; height: auto; border-radius: 16px; background: #f8fafc; }
.product-info .price { font-size: 28px; font-weight: 800; margin: 8px 0 16px; }
.product-points { margin-top: 20px; padding-left: 18px; line-height: 1.7; }
.nav a.is-active { font-weight: 700; }
@media (max-width: 900px) {
  .product-split { grid-template-columns: 1fr; }
  .catalog-search { flex-direction: column; }
}
