/* Shop archive — 2–3 column product grid */
.tjs-page-shop .woocommerce ul.products,
.tjs-page-shop ul.products.columns-3,
.tjs-page-shop ul.products.columns-4,
.woocommerce.tjs-page-shop ul.products {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 1.75rem 1.5rem !important;
}
.tjs-page-shop .woocommerce ul.products::before,
.tjs-page-shop .woocommerce ul.products::after {
  display: none !important;
}
.tjs-page-shop .woocommerce ul.products li.product,
.tjs-page-shop ul.products li.product {
  width: auto !important;
  margin: 0 !important;
  float: none !important;
}
.tjs-page-shop .tjs-product-card__title {
  font-size: 1.05rem;
}
.tjs-page-shop .tjs-product-card__media {
  aspect-ratio: 4 / 5;
}

.tjs-shop-pager {
  margin: 2.5rem 0 1rem;
  text-align: center;
}
.tjs-shop-pager .page-numbers,
.woocommerce-pagination ul.page-numbers {
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: .4rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.tjs-shop-pager .page-numbers li,
.woocommerce-pagination ul.page-numbers li {
  margin: 0;
}
.tjs-shop-pager .page-numbers a,
.tjs-shop-pager .page-numbers span,
.woocommerce-pagination ul.page-numbers a,
.woocommerce-pagination ul.page-numbers span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  height: 42px;
  padding: 0 .65rem;
  border: 1px solid var(--tjs-line, #e8e8e8);
  border-radius: 50%;
  font-weight: 700;
  font-size: .85rem;
  color: var(--tjs-ink, #1a1a1a);
  text-decoration: none;
  background: #fff;
}
.tjs-shop-pager .page-numbers .current,
.tjs-shop-pager .page-numbers a:hover,
.woocommerce-pagination ul.page-numbers .current,
.woocommerce-pagination ul.page-numbers a:hover {
  background: var(--tjs-ink, #1a1a1a);
  border-color: var(--tjs-ink, #1a1a1a);
  color: #fff;
}

@media (max-width: 1100px) {
  .tjs-page-shop .woocommerce ul.products,
  .tjs-page-shop ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 640px) {
  .tjs-page-shop .woocommerce ul.products,
  .tjs-page-shop ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 1rem .75rem !important;
  }
}
