body .btn-primary,
body button.btn-primary,
body a.btn-primary,
body input.btn-primary,
body .product-add-to-cart .btn,
body #add-to-cart-or-refresh .btn {
    background-color: #000000 !important;
    border-color: #000000 !important;
    color: #ffffff !important;
}

/* Prezzo nella pagina prodotto (tema Classic) */
.current-price,
.current-price span,
.current-price-value,
#product-prices .current-price span,
.product-price,
.product-prices .price {
    color: #000000 !important;
}

@media (max-width: 767px) {
  /* Riduce il padding laterale della card prodotto */
  .product-miniature,
  .js-product-miniature {
    padding-left: 5px;
    padding-right: 5px;
  }

  /* Fa in modo che il contenitore immagine occupi tutta la larghezza */
  .product-miniature .thumbnail-container,
  .product-miniature .product-thumbnail {
    width: 100%;
  }

  /* L'immagine si adatta al contenitore invece di avere un max-width fisso */
  .product-miniature img {
    width: 100%;
    height: auto;
    max-width: 100%;
  }

  /* Se il layout è a griglia con colonne Bootstrap, riduci il gutter */
  .products .product,
  .product-miniature-wrapper {
    padding-left: 5px;
    padding-right: 5px;
  }
}

/* Rende nero tutto il testo del sito */
body,
p, span, div, a, li, td, th,
h1, h2, h3, h4, h5, h6,
label, input, textarea, select,
.text, .content, 
#header, #footer, #main,
.product-title, .product-description,
.category-name, .breadcrumb {
    color: #000000 !important;
}

/* Etichetta "NUOVO" (PrestaShop) - Sfondo bordeaux molto scuro e testo bianco */
.product-flags .product-flag.new,
span.product-flag.new {
    background-color: #4A0E17 !important;
    color: #ffffff !important;
}

/* Mostra il titolo del prodotto per intero, senza troncamento */
.product-title,
.product-title a,
h3.product-title,
h3.product-title a {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: unset !important;
    -webkit-line-clamp: unset !important;
    display: block !important;
    -webkit-box-orient: unset !important;
}
.product-title,
.product-title a {
    height: auto !important;
    max-height: none !important;
}

/* Selettori alternativi usati da diversi temi PrestaShop */
.product-miniature .product-title,
.product-miniature .product-title a,
.js-product-title,
.product_desc h3,
.product-miniature h3,
.product-miniature h3 a,
article .product-title,
.thumbnail-container .product-title {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: unset !important;
    -webkit-line-clamp: unset !important;
    display: block !important;
    -webkit-box-orient: unset !important;
    height: auto !important;
    max-height: none !important;
}

/* Pulsante Carrello nell'header (Desktop e Mobile) - Sfondo Bordeaux molto scuro e testo/icone bianche */
#_desktop_cart .cart-preview,
#_desktop_cart .cart-preview .shopping-cart,
#_desktop_cart a,
.blockcart .cart-preview,
#_mobile_cart .cart-preview,
#_mobile_cart a,
#_mobile_cart .shopping-cart,
.mobile-cart,
#header .cart-preview {
    background-color: #4A0E17 !important;
    color: #ffffff !important;
}

/* Icone e testi del carrello (Desktop e Mobile) */
#_desktop_cart svg,
#_desktop_cart i,
#_desktop_cart span,
.blockcart svg,
.blockcart i,
.blockcart span,
#_mobile_cart svg,
#_mobile_cart i,
#_mobile_cart span,
.mobile-cart svg,
.mobile-cart i,
.mobile-cart span {
    color: #ffffff !important;
    fill: #ffffff !important;
}

@media (max-width: 991px) {
    #_mobile_cart .cart-preview,
    #_mobile_cart a,
    .mobile-cart,
    #header .cart-preview,
    body .cart-preview {
        background-color: #4A0E17 !important;
        color: #ffffff !important;
    }
}

/* Escludi i loghi dei metodi di pagamento (Apple Pay, Visa, ecc.) dal nero forzato */
#ps_checkout_payment_method_logo_block_container,
#ps_checkout_payment_method_logo_block_container *,
#ps_checkout_payment_method_logos_container,
#ps_checkout_payment_method_logos_container * {
    color: initial !important;
    fill: initial !important;
    background-color: initial !important;
    filter: none !important;
}

/* Contenitore del bottone */
.product-add-to-cart {
  margin-top: 12px;
  width: 100%;
}

.product-add-to-cart .add-to-cart-or-refresh {
  display: flex;
  justify-content: center;
}

/* Bottone Aggiungi al carrello */
.product-add-to-cart .add-to-cart-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100%;
  padding: 10px 16px;
  background-color: #222222;
  color: #ffffff;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  text-decoration: none;
  border: none;
  border-radius: 2px;
  transition: background-color 0.2s ease, transform 0.15s ease;
  cursor: pointer;
}

.product-add-to-cart .add-to-cart-link:hover {
  background-color: #000000;
  color: #ffffff;
  transform: translateY(-1px);
}

.product-add-to-cart .add-to-cart-link:active {
  transform: translateY(0);
}

/* Icona dentro il bottone */
.product-add-to-cart .add-to-cart-link i.material-icons {
  font-size: 18px;
  line-height: 1;
}

/* Card prodotto: assicurati che il bottone stia bene sotto prezzo/nome */
.product-miniature .product-description {
  display: flex;
  flex-direction: column;
}

/* Responsive: bottone leggermente più piccolo su mobile */
@media (max-width: 575px) {
  .product-add-to-cart .add-to-cart-link {
    font-size: 12px;
    padding: 8px 12px;
  }
}

#content-wrapper #subcategories,
section#main #subcategories,
#subcategories.card {
    display: none !important;
}

/* Limita l'altezza del contenitore delle sottocategorie */
ul.subcategories-list, 
#subcategories, 
.category-subcategories {
    max-height: 200px !important;
    overflow-y: auto !important;
    border: 1px solid #e0e0e0;
    padding: 10px !important;
    margin-bottom: 20px !important;
}