/* =========================================
   MEGAMENU
   ========================================= */
.megamenuLayerImage {
  display: table-cell;
  vertical-align: top;
  padding: 0;
  background: none;
  text-align: center;
  max-width: 300px;
  width: 20%;
  overflow: hidden;
  border-left: 0;
}

#megamenuLayer .megamenuLayerWrapper {
  display: inline-block;
  max-height: 300px;
  width: 100%;
}

#megamenuLayer {
  height: 300px !important;
}

/* =========================================
   MENU / HEADER
   ========================================= */
body {
  font-family: 'Montserrat', sans-serif;
  padding: 0 !important;
}

#menu { border-bottom: 0 !important; }
li.column { border: 0 !important; }

#header_responsive .top_buttons .box_menu li a.selectedButt,
#menu li a.selectedButt {
  display: none;
}

#header_responsive #header_top_bar_wrapper {
  background: #f2f2f2;
}

#header_responsive .top_buttons .box_menu li a,
#menu li a {
  font-family: 'Montserrat';
  font-weight: 600;
  color: #000;
  margin: 5px 5px -3px 5px;
  padding: 3px;
}

/* Menu: hover arancione */
#menu li a {
  border-bottom: 2px solid transparent;
  transition: border-color .15s, color .15s;
}
#menu li a:hover {
  border-bottom-color: #EF7D16;
  color: #EF7D16 !important;
}

/* Campo ricerca */
#top_search .box_text_search {
  display: flex !important;
  align-items: center;
  height: 40px !important;
  border: 1px solid #e2e5ea !important;
  border-radius: 8px !important;
  background-color: #fff !important;
  box-shadow: none !important;
  overflow: hidden;
  transition: border-color .15s, box-shadow .15s;
}
#top_search,
#top_search .box_text_search {
  background-color: #fff !important;
}
#top_search .box_text_search:focus-within {
  border-color: #EF7D16 !important;
  box-shadow: 0 0 0 3px rgba(239,125,22,.18) !important;
}
#top_search input.txt_search {
  height: 100% !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: none !important;
  padding: 0 12px 0 14px !important;
  font-size: 14px !important;
  color: #333 !important;
}
#top_search input.txt_search::placeholder {
  color: #9aa1ab;
}

/* =========================================
   MENU UTENTE (popup account)
   ========================================= */
#userBoxTop div#userBox_Title {
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-bottom: 2px solid #EF7D16 !important;
  border-radius: 0 !important;
  padding: 8px 4px !important;
  margin-bottom: 8px !important;
}
#userBoxTop div#userBox_Title span {
  background: transparent !important;
  color: #111 !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: .6px;
  text-transform: uppercase;
}

#userBoxTop > ul > li,
#userBoxTop > ul > li > a {
  background: none !important;
  background-image: none !important;
  list-style: none !important;
}
#userBoxTop > ul > li::before,
#userBoxTop > ul > li::after,
#userBoxTop > ul > li > a::after {
  content: none !important;
  display: none !important;
}
#userBoxTop > ul > li {
  padding: 2px 0 !important;
}
#userBoxTop > ul > li > a {
  display: block;
  padding: 6px 4px !important;
  color: #4b5563 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  border-radius: 6px;
  transition: color .15s, background-color .15s;
}
#userBoxTop > ul > li > a:hover {
  color: #EF7D16 !important;
  background-color: #fff8f0 !important;
}

/* Voce RMA -> "Riparazioni" (testo originale nascosto) */
#userBoxTop.userBox ul li.rma a {
  visibility: visible !important;
  font-size: 0 !important;
  position: relative;
}
#userBoxTop.userBox ul li.rma a::before {
  content: "Riparazioni";
  display: inline !important;
  font-size: 14px;
  color: #4b5563;
}
#userBoxTop.userBox ul li.rma a:hover::before {
  color: #EF7D16;
}

/* Form Log out */
#userBoxTop > form {
  margin: 12px 0 0 0 !important;
  padding: 12px 4px 4px !important;
  border-top: 1px solid #e5e7eb !important;
  background: none !important;
  text-align: left !important;
}
#top_login_1 #userBoxTop > form > input.butt1.b_red {
  float: none !important;
  margin: 0 !important;
  background-color: transparent !important;
  background-image: none !important;
  color: #6b7280 !important;
  border: 1px solid #d1d5db !important;
  border-radius: 8px !important;
  height: 40px !important;
  padding: 0 24px !important;
  font-weight: 600 !important;
  box-shadow: none !important;
  cursor: pointer;
  transition: background-color .15s, color .15s, border-color .15s;
}
#top_login_1 #userBoxTop > form > input.butt1.b_red:hover {
  background-color: #fdecec !important;
  color: #b91c1c !important;
  border-color: #f5b5b5 !important;
}

/* =========================================
   BADGE (New / Garanzia / Service)
   ========================================= */
#mainTableContainer .product-badges span.badge-ribbon-title.bg-custom-badgenew,
#mainTableContainer .product-badges span.badge-ribbon-title.bg-custom-badgewarranty,
#mainTableContainer .product-badges span.badge-ribbon-title.bg-custom-badgeservice {
  display: inline-flex !important;
  align-items: center;
  height: auto !important;
  width: auto !important;
  min-width: 0 !important;
  line-height: 1.4 !important;
  padding: 4px 12px !important;
  margin: 0 6px 8px 0 !important;
  border-radius: 999px !important;
  transform: none !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: .3px;
  text-shadow: none !important;
  box-shadow: none !important;
  filter: none !important;
  background-image: none !important;
}

#mainTableContainer .product-badges span.badge-ribbon-title.bg-custom-badgenew::after,
#mainTableContainer .product-badges span.badge-ribbon-title.bg-custom-badgewarranty::after,
#mainTableContainer .product-badges span.badge-ribbon-title.bg-custom-badgeservice::after {
  content: none !important;
}

#mainTableContainer .product-badges span.badge-ribbon-title.bg-custom-badgenew::before,
#mainTableContainer .product-badges span.badge-ribbon-title.bg-custom-badgewarranty::before,
#mainTableContainer .product-badges span.badge-ribbon-title.bg-custom-badgeservice::before {
  transform: none !important;
  position: static !important;
  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;
}

#mainTableContainer .product-badges span.badge-ribbon-title.bg-custom-badgenew {
  background-color: #1d4ed8 !important;
  color: #fff !important;
  border: 1px solid #1d4ed8 !important;
}

#mainTableContainer .product-badges span.badge-ribbon-title.bg-custom-badgewarranty {
  background-color: #e7f8ef !important;
  color: #15803d !important;
  border: 1px solid #bde8cf !important;
}

#mainTableContainer .product-badges span.badge-ribbon-title.bg-custom-badgeservice {
  background-color: #fff4e0 !important;
  color: #b45309 !important;
  border: 1px solid #fcd9a0 !important;
}

/* =========================================
   BOTTONI
   ========================================= */
/* Colore principale */
#cartBoxRight input.b_green,
#top_cart input.b_green,
#top_cart_1 input.b_green,
#colMid input.butt1,
#colMid .cart_form input.butt1,
#colMid .cart_form_matrix input.butt1,
#colMid .cart_form_disabled input.butt1,
#colMid #sheetAddToCartRow input.butt1,
#cartBoxRight input,
#top_cart input,
#top_cart_1 input {
  background-color: #EF7D16 !important;
  color: #fff !important;
}

/* Forma (con spazio a sinistra per l'icona carrello) */
input.butt1,
form[class*="cart_form"] input[type="submit"] {
  border-radius: 8px !important;
  height: 40px !important;
  padding: 0 18px 0 44px !important;
  font-weight: 600 !important;
  border: 0 !important;
  box-shadow: 0 1px 2px rgba(0,0,0,.12) !important;
  background-position: 14px center !important;
  background-repeat: no-repeat !important;
  cursor: pointer;
}

/* Selettore quantitą */
form[class*="cart_form"] select {
  border-radius: 8px !important;
  height: 40px !important;
  border: 1px solid #e2e5ea !important;
  background-color: #fff !important;
  box-shadow: none !important;
}

/* Feedback: contorno */
#mainTableContainer #addVotoBox input.butt1 {
  background-color: transparent !important;
  background-image: none !important;
  color: #EF7D16 !important;
  border: 1px solid #EF7D16 !important;
  border-radius: 8px !important;
  height: 32px !important;
  padding: 0 14px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  box-shadow: none !important;
  transition: background-color .15s, color .15s;
}
#mainTableContainer #addVotoBox input.butt1:hover {
  background-color: #EF7D16 !important;
  color: #fff !important;
}

/* Invia richiesta */
#mainTableContainer #formRequestInfo input.frm_request_info_submit {
  background-color: #EF7D16 !important;
  background-image: none !important;
  color: #fff !important;
  border: 0 !important;
  outline: none !important;
  border-radius: 8px !important;
  height: 40px !important;
  padding: 0 24px !important;
  font-weight: 600 !important;
  letter-spacing: .4px;
  box-shadow: 0 1px 2px rgba(0,0,0,.12) !important;
  cursor: pointer;
  transition: background-color .15s, box-shadow .15s;
}
#mainTableContainer #formRequestInfo input.frm_request_info_submit:hover {
  background-color: #D96C0B !important;
  box-shadow: 0 4px 10px rgba(239,125,22,.35) !important;
}
#mainTableContainer #formRequestInfo input.frm_request_info_submit:focus-visible {
  box-shadow: 0 0 0 3px rgba(239,125,22,.35) !important;
}

/* Torna al negozio */
#mainTableContainer a#backToShopButton {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  height: 40px !important;
  padding: 0 20px !important;
  background-color: transparent !important;
  background-image: none !important;
  color: #EF7D16 !important;
  border: 1px solid #EF7D16 !important;
  border-radius: 8px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  box-shadow: none !important;
  transition: background-color .15s, color .15s;
}
#mainTableContainer a#backToShopButton:hover {
  background-color: #EF7D16 !important;
  color: #fff !important;
}

/* =========================================
   TITOLI BOX
   ========================================= */
/* Colonne laterali */
#mainTableContainer #categories_Title,
#mainTableContainer #cartBoxRight_Title,
#mainTableContainer div.boxTitle {
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-bottom: 2px solid #EF7D16 !important;
  border-radius: 0 !important;
  padding: 8px 4px !important;
  margin-bottom: 8px !important;
}
#mainTableContainer #categories_Title span,
#mainTableContainer #cartBoxRight_Title span,
#mainTableContainer div.boxTitle span {
  background: transparent !important;
  color: #111 !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: .6px;
}

/* Box centrali (Sottocosto, ecc.) */
#mainTableContainer h2[id$="DownBox_Title"] {
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-bottom: 2px solid #EF7D16 !important;
  border-radius: 0 !important;
  padding: 8px 4px !important;
  margin: 0 0 12px 0 !important;
  text-align: left !important;
}
#mainTableContainer h2[id$="DownBox_Title"] span {
  background: transparent !important;
  color: #111 !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: .6px;
  text-transform: uppercase;
}

/* Titolo prodotto (scheda) */
#sheetBox h1.boxTitle {
  font-weight: 700 !important;
  font-size: 22px !important;
  line-height: 1.3 !important;
  letter-spacing: -.2px;
}

/* Titolo prodotto nelle card: max 3 righe */
#mainTableContainer .bigBox.boxColumns li.column > h2.title {
  height: auto !important;
  max-height: none !important;
  min-height: 3.9em;
  display: -webkit-box !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden !important;
  font-size: 13px !important;
  line-height: 1.3 !important;
  font-weight: 600 !important;
  text-transform: uppercase;
}

/* =========================================
   DISPONIBILITĄ (scheda, card, tabella)
   ========================================= */
#mainTableContainer td.availability a.availabDetails,
#mainTableContainer td.availab a.availabDetails {
  text-decoration: none !important;
}

#mainTableContainer td.availability span.fullAV,
#mainTableContainer td.availability span.inArrivalAV,
#mainTableContainer td.availability span.noAV,
#mainTableContainer td.availab span.fullAV,
#mainTableContainer td.availab span.inArrivalAV,
#mainTableContainer td.availab span.noAV {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 2px 10px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 600;
  white-space: nowrap;
}

#mainTableContainer td.availability span.fullAV::before,
#mainTableContainer td.availability span.inArrivalAV::before,
#mainTableContainer td.availability span.noAV::before,
#mainTableContainer td.availab span.fullAV::before,
#mainTableContainer td.availab span.inArrivalAV::before,
#mainTableContainer td.availab span.noAV::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
}

#mainTableContainer td.availability span.fullAV,
#mainTableContainer td.availab span.fullAV {
  background-color: #e7f8ef;
  color: #15803d !important;
}
#mainTableContainer td.availability span.fullAV::before,
#mainTableContainer td.availab span.fullAV::before { background: #15803d; }

#mainTableContainer td.availability span.inArrivalAV,
#mainTableContainer td.availab span.inArrivalAV {
  background-color: #fff4e0;
  color: #b45309 !important;
}
#mainTableContainer td.availability span.inArrivalAV::before,
#mainTableContainer td.availab span.inArrivalAV::before { background: #b45309; }

#mainTableContainer td.availability span.noAV,
#mainTableContainer td.availab span.noAV {
  background-color: #fdecec;
  color: #b91c1c !important;
}
#mainTableContainer td.availability span.noAV::before,
#mainTableContainer td.availab span.noAV::before { background: #b91c1c; }

/* =========================================
   TABELLA RISULTATI (ricerca / elenco)
   ========================================= */
table#resultsTable {
  border-collapse: collapse !important;
  width: 100%;
}

table#resultsTable thead th {
  background: #fff !important;
  background-image: none !important;
  color: #6b7280 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: .6px;
  text-transform: uppercase;
  text-align: left;
  border: 0 !important;
  border-bottom: 2px solid #EF7D16 !important;
  padding: 10px 12px !important;
}

table#resultsTable tbody tr,
table#resultsTable tbody tr:nth-child(even) {
  background: #fff !important;
  transition: background-color .15s;
}
table#resultsTable tbody tr:hover {
  background: #fff8f0 !important;
}
table#resultsTable tbody td {
  border: 0 !important;
  border-bottom: 1px solid #eef0f3 !important;
  padding: 12px !important;
  vertical-align: middle !important;
  font-size: 14px;
  color: #374151;
}
table#resultsTable tbody td img {
  border-radius: 6px;
}
table#resultsTable tbody td:nth-child(2) {
  font-weight: 500;
  color: #111;
  line-height: 1.4;
}

/* =========================================
   POPUP LOGIN / REGISTRAZIONE
   ========================================= */
#loginAndRegisterTop div.boxTitle {
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-bottom: 2px solid #EF7D16 !important;
  border-radius: 0 !important;
  padding: 8px 4px !important;
  margin-bottom: 12px !important;
  color: #111 !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: .4px;
}
#loginAndRegisterTop div.boxTitle span {
  background: transparent !important;
  color: #111 !important;
  font-size: 15px !important;
  font-weight: 700 !important;
}

#loginAndRegisterTop fieldset input:not([type="checkbox"]):not([type="radio"]) {
  height: 40px !important;
  border: 1px solid #e2e5ea !important;
  border-radius: 8px !important;
  padding: 0 12px !important;
  box-shadow: none !important;
  transition: border-color .15s, box-shadow .15s;
}
#loginAndRegisterTop fieldset input:not([type="checkbox"]):not([type="radio"]):focus {
  outline: none !important;
  border-color: #EF7D16 !important;
  box-shadow: 0 0 0 3px rgba(239,125,22,.18) !important;
}
#loginAndRegisterTop fieldset input[type="checkbox"] {
  margin: 8px 6px 8px 0 !important;
}

/* Accedi */
#loginAndRegisterTop #existentUserBoxTop input.butt1 {
  background-color: #EF7D16 !important;
  background-image: none !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 8px !important;
  height: 40px !important;
  padding: 0 28px !important;
  margin-top: 10px !important;
  font-weight: 600 !important;
  box-shadow: 0 1px 2px rgba(0,0,0,.12) !important;
  cursor: pointer;
  transition: background-color .15s, box-shadow .15s;
}
#loginAndRegisterTop #existentUserBoxTop input.butt1:hover {
  background-color: #D96C0B !important;
  box-shadow: 0 4px 10px rgba(239,125,22,.35) !important;
}
#loginAndRegisterTop #existentUserBoxTop a {
  color: #6b7280 !important;
  text-decoration: none !important;
  transition: color .15s;
}
#loginAndRegisterTop #existentUserBoxTop a:hover {
  color: #EF7D16 !important;
}

/* Registrati */
#loginAndRegisterTop #newUserBoxTop .butt1,
#loginAndRegisterTop #newUserBoxTop input[type="submit"],
#loginAndRegisterTop #newUserBoxTop input[type="button"],
#loginAndRegisterTop #newUserBoxTop a.butt1,
#loginAndRegisterTop #newUserBoxTop button {
  background-color: transparent !important;
  background-image: none !important;
  color: #EF7D16 !important;
  border: 1px solid #EF7D16 !important;
  border-radius: 8px !important;
  height: 40px !important;
  padding: 0 28px !important;
  font-weight: 600 !important;
  box-shadow: none !important;
  cursor: pointer;
  transition: background-color .15s, color .15s;
}
#loginAndRegisterTop #newUserBoxTop .butt1:hover,
#loginAndRegisterTop #newUserBoxTop input[type="submit"]:hover,
#loginAndRegisterTop #newUserBoxTop input[type="button"]:hover,
#loginAndRegisterTop #newUserBoxTop a.butt1:hover,
#loginAndRegisterTop #newUserBoxTop button:hover {
  background-color: #EF7D16 !important;
  color: #fff !important;
}

/* =========================================
   POPUP DI CONFERMA (fancybox)
   ========================================= */
.fancybox-skin {
  border-radius: 12px !important;
  box-shadow: 0 10px 30px rgba(0,0,0,.18) !important;
}

.fancybox-inner .btn_wrapp a.btn {
  display: inline-block;
  min-width: 120px;
  height: 40px !important;
  line-height: 38px !important;
  padding: 0 24px !important;
  border: 1px solid transparent !important;
  border-radius: 8px !important;
  background-image: none !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-align: center;
  text-decoration: none !important;
  box-shadow: none !important;
  cursor: pointer;
  transition: background-color .15s, color .15s, border-color .15s;
}

/* No: azione sicura, pieno arancione */
.fancybox-inner .btn_wrapp a.btn.ko {
  background-color: #EF7D16 !important;
  color: #fff !important;
  border-color: #EF7D16 !important;
}
.fancybox-inner .btn_wrapp a.btn.ko:hover {
  background-color: #D96C0B !important;
  border-color: #D96C0B !important;
}

/* Si: azione distruttiva, contorno grigio */
.fancybox-inner .btn_wrapp a.btn.ok {
  background-color: transparent !important;
  color: #6b7280 !important;
  border-color: #d1d5db !important;
}
.fancybox-inner .btn_wrapp a.btn.ok:hover {
  background-color: #fdecec !important;
  color: #b91c1c !important;
  border-color: #f5b5b5 !important;
}

/* =========================================
   CARRELLO
   ========================================= */
#showCart table.showCartTable thead th {
  background: #fff !important;
  background-image: none !important;
  color: #6b7280 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: .6px;
  text-transform: uppercase;
  border: 0 !important;
  border-bottom: 2px solid #EF7D16 !important;
  padding: 10px 8px !important;
}

#showCart table.showCartTable tbody td {
  border: 0 !important;
  border-bottom: 1px solid #e5e7eb !important;
  padding-top: 14px !important;
  padding-bottom: 14px !important;
}

#showCart table.showCartTable tfoot tr,
#showCart table.showCartTable tfoot td {
  background: #fff !important;
  background-image: none !important;
  border: 0 !important;
}
#showCart table.showCartTable tfoot tr {
  border-bottom: 1px solid #f0f1f3 !important;
}
#showCart table.showCartTable tfoot td {
  border-bottom: 1px solid #f0f1f3 !important;
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}

#showCart table.showCartTable tr.mainTotal td {
  border-top: 2px solid #111 !important;
  border-bottom: 0 !important;
}
#showCart table.showCartTable tr.mainTotal td.mainTotalValue h3 {
  color: #111 !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  margin: 0 !important;
}

#showCart table.showCartTable input.deleteButtonImage {
  opacity: .45;
  filter: grayscale(1);
  transition: opacity .15s, filter .15s;
  cursor: pointer;
}
#showCart table.showCartTable input.deleteButtonImage:hover {
  opacity: 1;
  filter: invert(23%) sepia(90%) saturate(5000%) hue-rotate(350deg);
}

/* =========================================
   CHECKOUT
   ========================================= */
#mainTableContainer input[type="radio"],
#mainTableContainer input[type="checkbox"] {
  accent-color: #EF7D16;
}

#mainTableContainer #frmSendOrder textarea,
#mainTableContainer #frmSendOrder input[type="text"] {
  border: 1px solid #e2e5ea !important;
  border-radius: 8px !important;
  box-shadow: none !important;
  padding: 8px 12px !important;
  transition: border-color .15s, box-shadow .15s;
}
#mainTableContainer #frmSendOrder textarea:focus,
#mainTableContainer #frmSendOrder input[type="text"]:focus {
  outline: none !important;
  border-color: #EF7D16 !important;
  box-shadow: 0 0 0 3px rgba(239,125,22,.18) !important;
}

/* Spedizioni e pagamenti: card */
#mainTableContainer ul#couriersList > li,
#mainTableContainer ul#paymentsList > li {
  list-style: none !important;
  background: #fff !important;
  background-image: none !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 10px !important;
  padding: 12px 14px !important;
  margin: 0 0 10px 0 !important;
  transition: border-color .15s, background-color .15s, box-shadow .15s;
}
#mainTableContainer ul#couriersList > li:hover,
#mainTableContainer ul#paymentsList > li:hover {
  border-color: #f3b77d !important;
}
#mainTableContainer ul#couriersList > li:has(input:checked),
#mainTableContainer ul#paymentsList > li:has(input:checked) {
  border-color: #EF7D16 !important;
  background-color: #fff8f0 !important;
  box-shadow: 0 0 0 3px rgba(239,125,22,.12) !important;
}

/* Coordinate bancarie */
#mainTableContainer ul#paymentsList div.notes h1 {
  background: #f4f5f7 !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 8px !important;
  padding: 10px 14px !important;
  margin: 10px 0 0 0 !important;
  color: #374151 !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.5 !important;
  word-break: break-all;
}

/* Box fattura */
#mainTableContainer div#invoiceCartRequest {
  background: #e7f8ef !important;
  background-image: none !important;
  border: 1px solid #bde8cf !important;
  border-radius: 10px !important;
  color: #15803d !important;
}

/* Totale riepilogo ordine */
#mainTableContainer #frmSendOrder tr.confirmOrder div.confirmOrderTotal h3 {
  color: #111 !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  margin: 0 !important;
}

/* Countdown ritiro corriere */
#couriersList .cd-badge {
  display: inline-block;
  margin-top: 8px;
  padding: 3px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.5;
}
#couriersList .cd-open {
  background: #e7f8ef;
  color: #15803d;
}
#couriersList .cd-closed {
  background: #fff4e0;
  color: #b45309;
}

/* =========================================
   FOOTER
   ========================================= */
#footer_custom_els_container {
  background: #fff !important;
  border-top: 3px solid #EF7D16 !important;
  border-bottom: 0 !important;
}

#foot {
  background: #fff !important;
  border-top: 3px solid #EF7D16 !important;
  color: #6b7280;
}

#footer_custom_els {
  padding: 0 !important;
}

#footer_custom_els::before,
#footer_custom_els::after,
#footer_custom_els_container::before,
#footer_custom_els_container::after,
#foot::before,
#foot::after {
  content: none !important;
  display: none !important;
}

.footer_block {
  display: table-cell;
  width: 5%;
  filter: none !important;
  padding: 28px 0 20px 40px !important;
  line-height: 1.6;
}

/* Blocco esterno del template: titolo vuoto nascosto */
#footer_custom_els > .footer_block > .footer_block_title {
  display: none !important;
  background: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
#footer_custom_els > .footer_block > .footer_block_content {
  background: none !important;
  padding-top: 0 !important;
}

/* Titoli veri delle colonne */
#footer_custom_els .footer_block_content .footer_block_title {
  display: block !important;
  position: static !important;
  color: #111 !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: .6px;
  text-transform: uppercase;
  padding-bottom: 8px !important;
  margin-bottom: 12px !important;
  background-color: transparent !important;
  background-image: linear-gradient(#EF7D16, #EF7D16) !important;
  background-repeat: no-repeat !important;
  background-position: left bottom !important;
  background-size: 28px 2px !important;
}
#footer_custom_els .footer_block_content .footer_block_title::before,
#footer_custom_els .footer_block_content .footer_block_title::after {
  content: none !important;
  display: none !important;
}

/* Link senza quadratini */
.footer_block_page,
.footer_block_page a {
  background: none !important;
  background-image: none !important;
  list-style: none !important;
}
.footer_block_page::before,
.footer_block_page::after,
.footer_block_page a::before,
.footer_block_page a::after {
  content: none !important;
  display: none !important;
}
.footer_block_page {
  padding: 3px 0 !important;
}
.footer_block_page a {
  color: #4b5563 !important;
  font-size: 14px;
  text-decoration: none !important;
  transition: color .15s;
}
.footer_block_page a:hover {
  color: #EF7D16 !important;
}

/* Contatti */
.footer_block_text p {
  color: #4b5563 !important;
  font-size: 14px;
  margin: 0 0 4px 0;
}

/* Metodi di pagamento */
.pay-icons {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  padding: 16px 0;
}
.pay-badge {
  display: inline-flex;
  align-items: center;
  height: 36px;
  padding: 0 14px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #fff;
  color: #6b7280;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .3px;
  transition: color .15s, border-color .15s;
}
.pay-badge:hover {
  color: #111;
  border-color: #EF7D16;
}
.pay-visa {
  font-size: 17px;
  font-weight: 800;
  font-style: italic;
  letter-spacing: .5px;
}
.pay-paypal {
  font-size: 15px;
  font-weight: 800;
  font-style: italic;
}

/* Visualizza altri risultati */
#mainTableContainer .rdy-search-results .pages input.next {
  background-color: transparent !important;
  background-image: none !important;
  color: #EF7D16 !important;
  border: 1px solid #EF7D16 !important;
  border-radius: 8px !important;
  height: 40px !important;
  padding: 0 28px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  box-shadow: none !important;
  cursor: pointer;
  transition: background-color .15s, color .15s;
}

#mainTableContainer .rdy-search-results .pages input.next:hover {
  background-color: #EF7D16 !important;
  color: #fff !important;
}

/* =========================================
   FILTRI DI RICERCA (colonna sinistra)
   ========================================= */

/* Riquadro "Parole: ... / Nuova ricerca" */
#colSx div.rdy-search-params {
  background: #fff8f0 !important;
  background-image: none !important;
  border: 1px solid #f3d9bd !important;
  border-radius: 10px !important;
  padding: 12px 14px !important;
  margin-bottom: 16px !important;
  font-size: 14px;
  color: #374151;
}

#colSx div.rdy-search-params a {
  color: #EF7D16 !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: color .15s;
}
#colSx div.rdy-search-params a:hover {
  color: #D96C0B !important;
  text-decoration: underline !important;
}

/* Titoli dei gruppi di filtri (Disponibilitą, Marca, ...) */
#colSx div.rdy-search-filters fieldset strong.legend {
  display: block;
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-bottom: 2px solid #EF7D16 !important;
  border-radius: 0 !important;
  padding: 8px 4px !important;
  margin-bottom: 8px !important;
  color: #111 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: .6px;
  text-transform: uppercase;
  cursor: pointer;
}

/* Gruppi pił spaziati e opzioni leggibili */
#colSx div.rdy-search-filters fieldset {
  border: 0 !important;
  margin: 0 0 18px 0 !important;
  padding: 0 !important;
}

#colSx div.rdy-search-filters fieldset label {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 4px 4px;
  font-size: 14px;
  color: #4b5563;
  border-radius: 6px;
  cursor: pointer;
  transition: background-color .15s, color .15s;
}
#colSx div.rdy-search-filters fieldset label:hover {
  background-color: #fff8f0;
  color: #EF7D16;
}

css
/* =========================================
   RISULTATI A CARD (vista cubes)
   ========================================= */

/* Card prodotto */
#mainTableContainer .productsWrapper.cubes .content {
  background: #fff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 12px !important;
  box-shadow: none !important;
  overflow: hidden;
  transition: border-color .15s, box-shadow .15s;
}
#mainTableContainer .productsWrapper.cubes .content:hover {
  border-color: #f3b77d !important;
  box-shadow: 0 4px 14px rgba(0,0,0,.06) !important;
}

/* Barra quantitą + Aggiungi: niente grigio, separatore leggero */
#mainTableContainer .productsWrapper.cubes li.cart {
  background: #fff !important;
  background-image: none !important;
  border: 0 !important;
  border-top: 1px solid #eef0f3 !important;
  padding: 12px !important;
  text-align: center;
}

/* Disponibilitą: pillole (stesse della scheda prodotto) */
#mainTableContainer .productsWrapper span.fullAV,
#mainTableContainer .productsWrapper span.inArrivalAV,
#mainTableContainer .productsWrapper span.noAV {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 2px 10px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 600;
  white-space: nowrap;
}
#mainTableContainer .productsWrapper span.fullAV::before,
#mainTableContainer .productsWrapper span.inArrivalAV::before,
#mainTableContainer .productsWrapper span.noAV::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
}
#mainTableContainer .productsWrapper span.fullAV {
  background-color: #e7f8ef;
  color: #15803d !important;
}
#mainTableContainer .productsWrapper span.fullAV::before { background: #15803d; }
#mainTableContainer .productsWrapper span.inArrivalAV {
  background-color: #fff4e0;
  color: #b45309 !important;
}
#mainTableContainer .productsWrapper span.inArrivalAV::before { background: #b45309; }
#mainTableContainer .productsWrapper span.noAV {
  background-color: #fdecec;
  color: #b91c1c !important;
}
#mainTableContainer .productsWrapper span.noAV::before { background: #b91c1c; }

/* Card: altezza automatica, barra carrello nel flusso (niente sovrapposizioni) */
#mainTableContainer .productsWrapper.cubes .content {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
}

#mainTableContainer .productsWrapper.cubes .content > ul {
  height: auto !important;
  position: static !important;
}

#mainTableContainer .productsWrapper.cubes li.cart {
  position: static !important;
  height: auto !important;
  margin-top: 8px !important;
  padding: 12px !important;
}
/* Cornice esterna della card: altezza automatica, un solo bordo */
#mainTableContainer .productsWrapper.cubes div[id^="r_"] {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding-bottom: 0 !important;
}

/* Card senza badge: riserva lo spazio dei badge */
#mainTableContainer .productsWrapper.cubes .content:not(:has(.badge-ribbon-title)) > h2.title {
  margin-top: 34px !important;
}

/* Titolo: altezza minima di 2 righe */
#mainTableContainer .productsWrapper.cubes .content h2.title {
  min-height: 2.8em;
}

/* Titolo card nei risultati: fino a 3 righe, senza taglio */
#mainTableContainer .productsWrapper.cubes .content h2.title {
  height: auto !important;
  max-height: none !important;
  min-height: 2.8em;
  display: -webkit-box !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden !important;
  line-height: 1.3 !important;
  padding-bottom: 2px !important;
}