/* ==========================================================================
   Negozio — il catalogo dentro il mondo del sigillo.
   Riscrive il minimo indispensabile della veste WooCommerce di serie.
   ========================================================================== */

.page-band__nota {
  margin: var(--step-0) 0 0;
  color: var(--text-secondary);
  max-width: 52ch;
}

/* --- Griglia del catalogo ------------------------------------------------ */

.woo ul.products {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(46%, 14rem), 1fr));
  gap: var(--step-3) var(--step-2);
  list-style: none;
  margin: 0;
  padding: 0;
}

/* WooCommerce assegna classi a colonne fisse: qui comanda la griglia. */
.woo ul.products li.product {
  width: auto !important;
  margin: 0 !important;
  float: none !important;
  text-align: center;
}

.woo ul.products li.product a { text-decoration: none; color: inherit; }

/* Il barattolo su tela calda, con l'ombra dal CSS come in home. */
.woo ul.products li.product img {
  width: min(100%, 12rem);
  height: auto;
  margin: 0 auto var(--step-0);
  filter: drop-shadow(0 6px 10px oklch(30% 0.06 55 / 0.18))
          drop-shadow(0 16px 28px oklch(30% 0.06 55 / 0.12));
  transition: transform 260ms var(--ease-press);
}

.woo ul.products li.product a:hover img { transform: translateY(-6px); }

.woo ul.products li.product .woocommerce-loop-product__title {
  font-family: var(--font-display);
  font-size: 1.15rem;
  font-weight: 700;
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin: 0 0 0.2rem;
  padding: 0;
}

.woo ul.products li.product .price { display: none; }

/* --- Ordinamento e conteggio -------------------------------------------- */

.woo .woocommerce-result-count,
.woo .woocommerce-ordering {
  font-size: 0.9rem;
  color: var(--text-secondary);
  margin-bottom: var(--step-2);
}

.woo .woocommerce-ordering select {
  font: inherit;
  font-size: 0.9rem;
  padding: 0.5rem 0.7rem;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  background: var(--surface-raised);
  color: var(--text);
}

/* --- Scheda prodotto ----------------------------------------------------- */

.woo div.product {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
  gap: var(--step-4);
  align-items: start;
}

.woo div.product .woocommerce-product-gallery {
  width: auto !important;
  float: none !important;
  margin: 0 !important;
}

.woo div.product .woocommerce-product-gallery img {
  filter: drop-shadow(0 10px 18px oklch(30% 0.06 55 / 0.20))
          drop-shadow(0 28px 55px oklch(30% 0.06 55 / 0.14));
}

.woo div.product .summary {
  width: auto !important;
  float: none !important;
  margin: 0 !important;
}

.woo div.product .product_title {
  font-size: clamp(2rem, 1.5rem + 2vw, 3rem);
  margin-bottom: var(--step-1);
}

.woo div.product .woocommerce-product-details__short-description {
  font-size: 1.1rem;
  color: var(--text-secondary);
  margin-bottom: var(--step-1);
}

/* Il posto del prezzo, finche' il listino non c'e'. */
.woo-listino {
  border-block: 1px solid var(--border-subtle);
  padding-block: var(--step-0);
  margin-block: var(--step-1);
  color: var(--text-secondary);
}

.woo-listino a { font-weight: 600; }

/* Selettore pezzatura */
.woo table.variations { border: 0; margin-bottom: var(--step-1); }
.woo table.variations td { padding: 0.4rem 0 !important; border: 0; }
.woo table.variations label { font-weight: 600; }

.woo table.variations select {
  font: inherit;
  padding: 0.6rem 0.8rem;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  background: var(--surface-raised);
  color: var(--text);
  min-width: 10rem;
}

.woo .woocommerce-tabs { grid-column: 1 / -1; margin-top: var(--step-3); }

.woo .woocommerce-tabs ul.tabs {
  display: flex;
  flex-wrap: wrap;
  gap: var(--step-1);
  list-style: none;
  margin: 0 0 var(--step-1);
  padding: 0 0 var(--step-0);
  border-bottom: 1px solid var(--border-subtle);
}

.woo .woocommerce-tabs ul.tabs li { margin: 0; }

.woo .woocommerce-tabs ul.tabs a {
  text-decoration: none;
  color: var(--text-secondary);
  font-weight: 600;
  font-size: 0.95rem;
}

.woo .woocommerce-tabs ul.tabs li.active a { color: var(--honey-deep); }

.woo .woocommerce-tabs .panel { max-width: var(--measure); }
.woo .woocommerce-tabs h2 { font-size: 1.5rem; margin-bottom: var(--step-0); }

.woo section.related { grid-column: 1 / -1; margin-top: var(--step-4); }
.woo section.related > h2 { margin-bottom: var(--step-2); }

@media (max-width: 52rem) {
  .woo div.product { grid-template-columns: 1fr; gap: var(--step-2); }
}

/* --- Avvisi e paginazione ------------------------------------------------ */

.woo .woocommerce-message,
.woo .woocommerce-info,
.woo .woocommerce-error {
  background: var(--honey-wash);
  border: 1px solid var(--border-subtle);
  border-radius: var(--radius);
  padding: var(--step-0) var(--step-1);
  margin-bottom: var(--step-1);
  list-style: none;
}

.woo .woocommerce-error { background: oklch(from var(--danger) 94% 0.04 h); }

.woo nav.woocommerce-pagination ul {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  list-style: none;
  margin: var(--step-3) 0 0;
  padding: 0;
  border: 0;
}

.woo nav.woocommerce-pagination li { border: 0; }

.woo nav.woocommerce-pagination a,
.woo nav.woocommerce-pagination span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.6rem;
  padding: 0.55rem 0.8rem;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  text-decoration: none;
  color: var(--text);
}

.woo nav.woocommerce-pagination span.current {
  background: var(--honey);
  border-color: var(--honey);
  color: oklch(24% 0.04 58);
  font-weight: 600;
}
