/* ==========================================================================
   AF ROTTERDAM — WOOCOMMERCE OVERRIDES
   ========================================================================== */

/* ── Shop archive page ── */
.woocommerce ul.products {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 2rem;
  margin: 0 !important;
}

.woocommerce ul.products li.product {
  margin: 0 !important;
  width: 100% !important;
  float: none !important;
}

.woocommerce ul.products li.product,
.woocommerce ul.products li.product a img {
  background: var(--afr-white);
  box-shadow: var(--afr-shadow-card);
  transition: box-shadow 0.22s ease, transform 0.22s ease;
}
.woocommerce ul.products li.product:hover {
  box-shadow: var(--afr-shadow-hover);
  transform: translateY(-3px);
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-family: var(--afr-font-display) !important;
  font-size: 1.05rem !important;
  padding: 0 1.25rem !important;
}

.woocommerce ul.products li.product .price {
  font-family: var(--afr-font-display);
  color: var(--afr-navy) !important;
  font-weight: 700;
  padding: 0 1.25rem;
}

.woocommerce ul.products li.product .button {
  margin: 0.75rem 1.25rem 1.25rem !important;
  width: calc(100% - 2.5rem) !important;
  text-align: center !important;
}

/* ── Product single ── */
.woocommerce div.product .woocommerce-product-gallery {
  margin-bottom: 0;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
  font-family: var(--afr-font-display);
  color: var(--afr-navy) !important;
  font-size: 1.75rem !important;
  font-weight: 700;
}

.woocommerce-variation-price .price { color: var(--afr-navy) !important; }

/* ── Tabs on product page ── */
.woocommerce div.product .woocommerce-tabs ul.tabs li {
  background: var(--afr-warm) !important;
  border-radius: 0 !important;
  border: 1px solid var(--afr-border) !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
  background: var(--afr-white) !important;
  border-bottom-color: var(--afr-white) !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  font-family: var(--afr-font-body);
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  font-size: 0.8rem;
  color: var(--afr-dark) !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs::before {
  border-bottom-color: var(--afr-border);
}
.woocommerce div.product .woocommerce-tabs .panel {
  border-color: var(--afr-border) !important;
  border-radius: 0 !important;
}

/* ── Cart page ── */
.woocommerce table.cart td,
.woocommerce table.cart th {
  border-color: var(--afr-border) !important;
  vertical-align: middle;
}
.woocommerce table.cart .product-name a {
  font-family: var(--afr-font-display);
  color: var(--afr-dark);
  font-weight: 600;
}

/* ── Order review ── */
.woocommerce-checkout #order_review {
  background: var(--afr-white);
  border: 1px solid var(--afr-border);
  padding: 1.5rem;
}

/* ── Notices ── */
.woocommerce-message { border-top: 4px solid var(--afr-navy) !important; }
.woocommerce-error   { border-top: 4px solid var(--afr-red) !important; }
.woocommerce-info    { border-top: 4px solid var(--afr-muted) !important; }

/* ── Stars ── */
.woocommerce .star-rating span::before,
.woocommerce p.stars a { color: var(--afr-red) !important; }

/* ── Sale badge ── */
.woocommerce span.onsale {
  background: var(--afr-red) !important;
  border-radius: 0 !important;
  min-height: auto;
  line-height: 1.4;
  padding: 0.35em 0.6em;
  font-family: var(--afr-font-body);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

/* ── Pagination ── */
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  border-radius: 0 !important;
  border-color: var(--afr-border) !important;
}
.woocommerce nav.woocommerce-pagination ul li a:hover { background: var(--afr-navy) !important; color: #fff !important; }
.woocommerce nav.woocommerce-pagination ul li span.current { background: var(--afr-red) !important; color: #fff !important; border-color: var(--afr-red) !important; }
