/* === RESET & BASE === */
@font-face {
  font-family: 'Brush Script';
  src: url('../fonts/BrushScript.woff2') format('woff2'),
       url('../fonts/BrushScript.woff') format('woff'),
       url('../fonts/BrushScript.ttf') format('truetype');
}
*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
.fa-instagram:before {content: "\f16d";}

body {
  font-family: "Jost", sans-serif;
  line-height: 1.6;
  color: #333;
  overflow-x:hidden;
  font-weight: 300;
  letter-spacing:0px;
  font-size: 17px;
}

/*--- preloader ---*/
#preloader {
  position: fixed;
  inset: 0;
  background: #000;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 1;
  transition: opacity .6s ease;
  z-index: 9999;
}

/* Dissolvenza dell'intero preloader */
#preloader.fade-out {
  opacity: 0;
  pointer-events: none;
}

/* Contenitore interno */
.preloader-content {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
}

/* LOGO con entrata a dissolvenza */
.preloader-logo {
  width: 140px;
  height: auto;
  opacity: 0;
  animation: logoFadeIn 0.8s ease forwards;  /* entrata */
}

/* Quando inizia la dissolvenza finale, il logo sfuma */
#preloader.fade-out .preloader-logo {
  animation: logoFadeOut 0.6s ease forwards;
}

/* Animazione entrata */
@keyframes logoFadeIn {
  0%   { opacity: 0; transform: scale(0.95); }
  100% { opacity: 1; transform: scale(1); }
}

/* Animazione uscita */
@keyframes logoFadeOut {
  0%   { opacity: 1; transform: scale(1); }
  100% { opacity: 0; transform: scale(0.95); }
}

/* DOTS */
.dots {
  display: flex;
  gap: 10px;
}

.dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: white;
  animation: jump 0.6s infinite ease-in-out;
}

.dot:nth-child(2) { animation-delay: .1s; }
.dot:nth-child(3) { animation-delay: .2s; }

@keyframes jump {
  0%   { transform: translateY(0); }
  30%  { transform: translateY(-10px); }
  60%  { transform: translateY(0); }
  100% { transform: translateY(0); }
}

/*--- preloader ---*/
a{color:#000;text-decoration:none;}
a:hover {text-decoration:none;}
p strong{font-weight:bold;}
h1, h2, h3, h4, h5, h6 {
  font-family: "Jost", sans-serif;
  font-weight:300;
  margin-bottom: 0.5em;
}
h1{font-weight:300;text-transform:uppercase;font-size: 2.5rem;line-height:45px;}
h2{font-weight:300;text-transform:uppercase;margin-bottom:30px;margin-top:0;font-size: 1.2rem;}
#nero { display: none; }
#bianco { display: block; }
.item .media-slide {
  width: 100%;
  height: 100%;
  object-fit: cover; /* riempie come le foto */
  display: block;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}



input, select, textarea{border: 1px solid rgb(198, 198, 198);border-radius: 0.25rem;line-height: 48px;text-indent: 20px;font-family: 'Helvetica Neue', sans-serif;color:#000;letter-spacing:0.5px;font-weight:400;font-size:15px}
select{height:50px;}
center{margin:auto;}


.top-bar-fixed {
  position: fixed;
  top:0px;
  left: 0;
  width: 100%;
  background:transparent;
  z-index: 999;
}

/* === GRID SYSTEM === */
.container{width: 100%;margin: 0 auto;padding: 0 15px;max-width: 1420px;}
.specchio{background:black;padding:60px 0;color:#fff;margin-top: -2px;}
.specchio.box-0, .specchio.box-6{padding:0;border:0;}
.specchio.box-3{padding-bottom:100px;}
.specchio.box-4{padding-bottom:0;}
.specchio.box-4, .specchio.box-5{background:#f1f1f1;padding:0;color:#000;border-bottom:solid 1px #ddd;}
.specchio .col-8{display: flex;align-items: center;justify-content: center;}
.specchio .testo{margin:0 20px;}
.specchio img{max-width:80%;margin:auto;}

.full-screen{padding:0 !important;background: black;}
.full-screen .testo{padding:60px 90px 90px;margin:auto;}
.full-screen .testo p{color:#bbb;}
.full-screen .testo h1{color:white;font-size: 2rem;text-transform:uppercase;font-weight:normal;margin:40px 0 20px;line-height: 2.4rem;}
.full-screen [class^="col-"] {padding: 0;}
.riepilogo h2{font-size: 1.8rem;}
.elenco{text-align:center;margin-top:80px;margin-bottom:40px;}
.elenco .col-12{margin-bottom:20px;}
.elenco h1{margin-bottom:0.1rem;}
.elenco h3{text-transform:uppercase;font-weight:300;letter-spacing:1px;margin-top:20px;font-size:1.2em;margin-bottom:0;}
.elenco p{font-weight: 400;letter-spacing: 1.5px;font-size: 0.9rem;}
.elenco .btn{display:inline-block;}
.elenco .box{opacity: 1;transform: scale(1);visibility: visible;max-height: 1000px; /* sufficiente per contenere il contenuto */overflow: hidden;transition: opacity 0.5s ease, transform 0.5s ease, max-height 0.5s ease;}
.elenco .box.hide {
  opacity: 0;
  transform: scale(0.95);
  visibility: hidden; /* non viene subito rimossa dal flusso */
  max-height: 0;
  pointer-events: none;
}


.elenco li[rel="4"], .elenco li[rel="3"]{display: none;}


.img-wrapper {
  position: relative;
  width: 100%;
  height:350px; /* o qualunque altezza fissa/responsiva tu voglia */
  overflow: hidden;
}

.img-wrapper img {
  position: absolute;
  top: 0;
  left:46%;
  height: 100%;
  width: auto;
  transform: translateX(-50%);
  max-width:none;
}


.col-4 .img-wrapper {
    position: relative;
}

.col-4 .img-wrapper ::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    background: linear-gradient(to left, rgba(0,0,0,1), rgba(0,0,0,0));
}

.row {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
}

.col {
  flex: 1;
  padding: 0 15px;
  min-width: 0;
}

/* Column sizes */
[class*="col-"] {
  padding: 0 15px;
}

.d-flex {
  display: flex;
}

.justify-center {
  justify-content: center;
}

.align-center{align-items: center;}
.align-left{text-align: left;}
.align-right{text-align: left;}

.gap-05 {
  gap: 0.5rem;
}

.material-symbols-outlined {
  font-size: 1.5rem;
}

[class^="col-"] {
  padding: 0 15px;
  box-sizing: border-box;
}
.col-1 { flex: 0 0 8.3333%; max-width: 8.3333%; }
.col-2 { flex: 0 0 16.6667%; max-width: 16.6667%; }
.col-3 { flex: 0 0 25%; max-width: 25%; }
.col-4 { flex: 0 0 33.3333%; max-width: 33.3333%; }
.col-5 { flex: 0 0 41.6667%; max-width: 41.6667%; }
.col-6 { flex: 0 0 50%; max-width: 50%; }
.col-7 { flex: 0 0 58.3333%; max-width: 58.3333%; }
.col-8 { flex: 0 0 66.6667%; max-width: 66.6667%; }
.col-9 { flex: 0 0 75%; max-width: 75%; }
.col-10 { flex: 0 0 83.3333%; max-width: 83.3333%; }
.col-11 { flex: 0 0 91.6667%; max-width: 91.6667%; }
.col-12 { flex: 0 0 100%; max-width: 100%; }

/* === BUTTONS === */
.btn {display:block;
    border: none;
    font-size: 14px;
    font-weight:300;
    letter-spacing:1px;
    text-transform: uppercase;
    background: transparent;
    color: #000;
    line-height: normal;
    cursor: pointer;
    text-align: center;
    position: relative;
    transition: border-color 0.4s ease;
    margin: 0 10px;
    width:fit-content;
  text-indent:0;
}

.btn:after,
.btn:before {
  position: absolute;
  content: "";
  width: 15px;
  height: 14px;
}

.btn:before {
  border-top: 1px solid #000;
  border-left: 1px solid #000;
  left: 0;
  top: 0;
}

.btn:after {
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  right: 0;
  top: 0;
}

.btn span {
  border: 1px solid transparent; /* inizializza il bordo */
  transition: border 0.3s ease;
  display: block;
  padding:15px 25px;
}

.btn span:after,
.btn span:before {
  position: absolute;
  content: "";
  width: 15px;
  height: 14px;
}

.btn span:before {
  border-bottom: 1px solid #000;
  border-left: 1px solid #000;
  left: 0;
  bottom: 0;
}

.btn span:after {
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  right: 0;
  bottom: 0;
}

.btn span:hover{border: solid 1px #000;}
.btn.acquista{padding: 15px 25px;background-color:#393939;color:#fff !important;margin:0;}

.btn-secondary {background-color:#393939;color:#fff !important;}
.btn-secondary .aggiungi, .btn-secondary .acquista{color:#fff;}
.btn-secondary.logout{margin:0;color:#fff;}
.btn-secondary .btn{color:#fff;}
/* === NAVBAR === */
.navbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1rem 2rem;
  background-color:transparent;
  position: relative;
}



.logo {
  font-weight: bold;
  font-size: 1.2rem;
  display: inline-block;
}

.logo img{width:60px}

/* MENU LINK ORIZZONTALE */
.nav-links {
 list-style: none;
  display: flex;
  justify-content: center;
  gap: 20px;
  align-items: center;
  margin:30px auto;
  height: 40px;
  width: fit-content;
}

.nav-links li a {
  text-decoration: none;
  color:#fcfcfc;
  padding: 10px;
}

.nav-links.scrolled{border-radius: .5rem;padding: .5rem .75rem;backdrop-filter: blur(5px);padding: .5rem .75rem;background: #000000b5;}

.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor: pointer;transition:transform 0.4s cubic-bezier(0.77, 0.2, 0.05, 1.0)}
.hamburger span{display:block;width:25px;height:1px;background:#fff;border-radius:2px; transition:transform 0.4s cubic-bezier(0.77, 0.2, 0.05, 1.0),opacity 0.3s ease,background-color 0.3s ease;}
.hamburger.active span:nth-child(1){transform: rotate(45deg) translateY(8px);}
.hamburger.active span:nth-child(2) {opacity: 0;}
.hamburger.active span:nth-child(3) {transform: rotate(-45deg) translateY(-8px);}

/* === CARD === */
.card {
  border: 1px solid #ddd;
  border-radius: 8px;
  padding: 20px;
  margin-bottom: 20px;
  background: #fff;
  box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}

.card-title {
  font-size: 1.25rem;
  margin-bottom: 0.5em;
}

.card-text {
  color: #555;
}

.icone-top .material-symbols-outlined{font-size:28px;border-radius: .4rem;padding: .5rem .75rem;background: #000000b5;backdrop-filter: blur(5px);}
.login a, .cart a{color:#fff;}
.carousel-home{position:relative;}
.carousel-home .carousel-dots{margin-top:-30px;z-index:99;position:relative;}
.carousel-home .carousel-dots button{margin-top: -30px;}
.carousel{margin-top: -25px;}
.carousel-track {
  overflow-x: auto;
  scroll-behavior: smooth;
  display: flex;
  scrollbar-width: none; /* nasconde la scrollbar su Firefox */
}
.carousel-track::-webkit-scrollbar {
  display: none; /* nasconde la scrollbar su Chrome/Safari */
}
.accordion {
  list-style: none;
  padding: 0;
  margin: 0;
  border-top: 1px solid #ccc;
}

.accordion li {
  border-bottom: 1px solid #ccc;
  overflow: hidden;
}

.header {
  padding: 15px;
  cursor: pointer;
  position: relative;
  font-weight: bold;
}

.header::after {
  content: "+";
  position: absolute;
  right: 20px;
  opacity: 0;
  transition: opacity 0.3s;
}

.header:hover::after {
  opacity: 1;
}

.content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease, opacity 0.4s ease;
  opacity: 0;
  padding: 0 15px;
}

li.active .content {
  max-height: 500px; /* abbastanza alto da contenere tutto */
  opacity: 1;
  padding: 15px;
}

li.active .header::after {
  content: "-";
  opacity: 1;
}




.slider{background: #f1f1f1;}
.slider .container{max-width: 100%;padding:0;}
.slider .row{display: flex;
    flex-wrap: nowrap; /* <-- ESSENZIALE: Forzo gli elementi a stare sulla stessa riga */
    gap:0;
    overflow-x: auto; /* <-- Permetto lo scorrimento orizzontale */
    scroll-snap-type: x mandatory; /* <-- Rende lo scorrimento 'a scatto' per ogni colonna */
    scroll-behavior: smooth; /* <-- Rende lo scorrimento più gradevole */
    /* Nascondo la barra di scorrimento (opzionale, per un look pulito) */
    -ms-overflow-style: none;  /* IE and Edge */
    scrollbar-width: none;  /* Firefox */}
.slider row::-webkit-scrollbar{display:none;}
.slider [class^="col-"]{
    text-align: center;
    padding:0 20px 40px;
    transition: 0.2s;
    border-top: solid 2px #fff;
    border-bottom: solid 2px #fff;
    /* Aggiungo queste per lo slider: */
    flex-shrink: 0; /* <-- ESSENZIALE: Impedisco agli item di restringersi */
    scroll-snap-align: start; /* <-- L'inizio dell'elemento si aggancia */
    /* Per un col-3 (tipicamente 25% su 12 colonne), deve essere meno di 25% per lasciare spazio al gap */
    width: calc(25% - 2px); /* <-- Adatto la larghezza al gap di 3px */
}
.slider-wrapper {
    position: relative; /* <-- Contenitore per posizionare le frecce */
}
.slider a{text-decoration: none;color: #000;}
.slider .img-box{width: 100%;display: flex;align-items: center;justify-content: center;margin-bottom: 20px;}
.slider .img-box img{max-height:500px;width:auto;object-fit:contain;transition: 0.3s;}
.slider [class^="col-"]{border-right:solid 2px #fff;}
.slider [class^="col-"]:hover img{transform: translateY(-4px);}
.slider h3{font-size: 18px;font-weight: 500;margin:0 0 5px;}
.slider-nav-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0, 0, 0, 0.5);
    color: #fff;
    border: none;
    padding: 10px;
    cursor: pointer;
    z-index: 10;
}
.prev-btn {
    left: 0;
}
.next-btn {
    right: 0;
}

/* === UTILITY CLASSES === */
.d-flex {display: flex;}
.align-center {align-items: center;gap: 8px; /* Spazio tra l'icona e il testo */}
.text-center { text-align: center; }
.mt-1 { margin-top: 1rem; }
.mb-1 { margin-bottom: 1rem; }
.pt-1 { padding-top: 1rem; }
.pb-1 { padding-bottom: 1rem; }
.hidden { display: none !important;}
.assistenza, .login, .preferiti, .cart{display:inline-block;margin-left:20px;}
.cambio-lingua{display:inline-flex;}
.cambio-lingua dropdown label, dropdown ul li{width: 43px;text-align:center;display: block;}
.cambio-lingua .animate a{margin-left:70px;}
.stacco{height:400px;text-align:right;color:white;background-image: url(../foto_normal/articoli/dark-bg.jpg);background-attachment: scroll;background-repeat: no-repeat;background-size: cover;background-position: center;}
.stacco .contenuti{text-align:left;margin-left: auto;padding-top:115px;}
.stacco img{width:105px;padding-top:130px;}
.stacco h1{margin-bottom:20px;letter-spacing:1px;}
.stacco .btn{color:white;margin:0;margin: 30px 0 0;display: block;width: fit-content;}
.stacco .btn:after, .stacco .btn:before, .stacco .btn span:after, .stacco .btn span:before{border-color:white;}
.stacco .btn span:hover{border: solid 1px #fff;}
.stacco .col-6 img {display: block;margin-left: auto;margin-right: 50%;margin-top: -10px;}
.stacco.banner-footer{height:400px;}
.interne{margin-top:-100px;display: flex;align-items: center;height:300px;}
.interne h1{margin:150px auto 0;font-size:3rem;text-align: center;line-height: 4rem;display:none;}
.dettaglio h3{position: relative;}
.pre-heading {margin-bottom: 0;
    --preheading-colour: #f2d953;
    border-radius: .125rem;
    font-size: 1rem;
    font-weight: 300;
    line-height: 140%;
    line-height: 1;
    padding-left: .625rem;
    position: relative;
}
.pre-heading:before {
    --tw-translate-y: -50%;
    background-color:#dddddd;
    border-radius: .125rem;
    content: "";
    height: .813rem;
    left: 0;
    position: absolute;
    top:0;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
    width: .125rem;
}
.dettaglio h1{margin-top:0.6rem;}
.dettaglio .btn{margin:0;}
.dettaglio li{margin-left: 20px;line-height:30px;}
.taglie li{list-style:none;display:inline;margin-left:0;}
.foto{margin:0 0 40px;width:95%;}
.foto-sin{float:left;margin:0 40px 0 0;width:40%;}
.foto-des{float:right;margin:0 0 0 80px;width:30%;}
.social.seguici-su{text-align:left;margin-left:-20px;margin-top:0;}
.prezzo{font-size: 40px;margin: 15px 0 25px;}
.section-top{margin-top: 100px;margin-bottom:100px;}
.nascosto{display:none;}
.tab_content a{color:black;}
#tab1{display:block !important;}
.tabs li:nth-child(3), .tabs li:nth-child(4) {display: none;}
.tab_container{margin-top:40px;}
.newsletter{margin: 60px auto 70px;text-align:center;font-size: 0.9rem;}
.newsletter h2{font-size: 1.8rem;letter-spacing: 3px;margin-bottom:10px;}
.newsletter p {margin-bottom: 2.5em;}
.newsletter label{margin-top:1em;display:inline-block;}
.newsletter .btn{display:inline-block;}
.conferma-messaggio h1{color:#000;font-weight: 300;font-size:20px;text-transform: unset;line-height:30px;margin:0;padding:15px 0;}
.conferma-messaggio img{width:80px !important;padding-bottom:0 !important;text-align: center;margin: auto;}
.conferma-messaggio #button{position:absolute;top:30px;right:30px;background: transparent;border:0;}
.dettaglio .ultime-news{display:none;}
.slide-home{background:#000;}
.slide-home .carousel-thumbs{display:none;}
.carousel .item img {
  width: 100%;       /* riempie tutta la larghezza del contenitore */
  height: auto;      /* mantiene proporzioni */
  display: block;    /* rimuove eventuali spazi bianchi sotto l'immagine */
  object-fit: cover; /* riempie il contenitore senza distorcere */
}
.dettaglio .carousel-thumbs {
  display: flex;
  flex-wrap: wrap;       /* permette il ritorno a capo */
  justify-content: center;
  gap: 8px;              /* spazio tra le thumbnail */
  margin-top: 10px;
  padding-bottom: 5px;
}

.dettaglio .carousel-thumbs img {
  width: calc(25% - 6px); /* larghezza circa 25% del contenitore meno gap */
  height: auto;            /* mantiene proporzioni */
  object-fit: cover;
  cursor: pointer;
  border:1px solid transparent;
  transition: border 0.3s, transform 0.3s;
}

.dettaglio .carousel-thumbs img.active{border-color: #dedede;transform: scale(1.02);}
.video-det{float:left;width:40%;margin-right:60px;}
.personalizza{background:#f3f2f2;padding:30px;border-radius:15px;margin:30px 0;width:100%;}
.metal-bg {
  position: relative;
  display: inline-block;
  background: linear-gradient(135deg, #666 0%, #999 50%, #666 100%);
  color: white;
  overflow: hidden;
  border-radius: 10px;
}

/* Striscia luminosa con sfumatura anche ai lati */
.metal-bg::after {
  content: "";
  position: absolute;
  top: 0;
  left: -80%;
  width: 60%;
  height: 100%;
  background: linear-gradient(
    115deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0.05) 10%,
    rgba(255, 255, 255, 0.6) 50%,
    rgba(255, 255, 255, 0.05) 90%,
    rgba(255, 255, 255, 0) 100%
  );
  filter: blur(30px);
  animation: shimmer 2.8s infinite linear;
  pointer-events: none;
}

/* Movimento orizzontale del riflesso */
@keyframes shimmer {
  0% { left: -80%; }
  100% { left: 120%; }
}

.personalizza input[type="text"]{background: #909090;border: solid 1px #ffffff;color: #ffffff;border-radius:0;}
.personalizza::-webkit-input-placeholder { color: #ffffff !important; opacity: 1 !important; }
.personalizza::-moz-placeholder          { color: #ffffff !important; opacity: 1 !important; } /* Firefox 19+ */
.personalizza:-ms-input-placeholder      { color: #ffffff !important; opacity: 1 !important; } /* IE 10+ */
.personalizza::-ms-input-placeholder     { color: #ffffff !important; opacity: 1 !important; } /* Edge legacy */
.personalizza::placeholder               { color: #ffffff !important; opacity: 1 !important; } /* standard */

/* In WebKit a volte serve -webkit-text-fill-color */
.personalizza input[type="text"]{ color: #fff; -webkit-text-fill-color: #fff; }
.personalizza .btn:before {border-top: 1px solid #fff;border-left: 1px solid #fff;}
.personalizza .btn:after{border-top: 1px solid #fff;border-right: 1px solid #fff;}
.personalizza .btn span:after {border-bottom: 1px solid #fff;border-right: 1px solid #fff;}
.personalizza .btn span:before{border-bottom: 1px solid #fff;border-left: 1px solid #fff;}
.personalizza .btn{color:#fff;}
.personalizza .btn span:hover{border: solid 1px #fff;}
.mobile #popBox.semantic-content .widthPercentageOn .modal-inner{background: #e9ebef;}
.testo-su-maglia{max-height:100%;}
.testo-su-maglia img{width:500px;}
.nome_maglia{position: absolute;color: #333;transform: rotate(-11deg);font-size:28px;text-align: center;font-family: 'Brush Script', cursive;font-weight: 400;font-style: normal;width: 300px;top: 230px;left: 135px;line-height: 1.2;}
.dettaglio .cart-btn{width:100%;max-width:100%;}
.collezione{margin-bottom:50px;margin-top: -30px;}
.collezione [class*="col-"]{padding: 0 15px 30px;}
*, *:before, *:after {
  box-sizing: border-box;
}

.dettaglio .carousel-thumbs{display:none;}
.dettaglio .thumbs-light-box [class*="col-"]{padding:3px;}

.lighter-text {
  color: #333333;
  float:left;
}

.main-color-text {
  color: #000000;
  float:right;
}

.shopping-cart .shopping-cart-items button i {
    color: #000000;
    font-size: 18px;
    margin-top: 15px;
    border: 0;
    padding: 0;
    height: auto;
    width: auto;
}

.shopping-cart {
  float: right;
  background: #ffffff;
  width: 240px;
  position: relative;
  border-radius: 3px;
  padding:0 10px;
  border:solid 1px #dfdfdf;
  right: 195px;
}
.shopping-cart .shopping-cart-header {
padding:10px 0;
  border-bottom: 1px solid #9e9e9e;
  border-top: 1px solid #9e9e9e;
  display:inline-block;
      width: 100%;
}
.shopping-cart .shopping-cart-header .shopping-cart-total {
  text-align: center;
}
.shopping-cart .shopping-cart-items {
  padding-top:5px;
  max-height:350px;
  overflow: hidden;   
  overflow-y: scroll;
  text-align: left;
}
.shopping-cart .shopping-cart-items li {
  margin: 20px 0;
  line-height: 18px;
}
.shopping-cart .shopping-cart-items img {
  padding:0 0 30px;
  float: left;
  margin-right: 10px;
  width:60px;
}
.shopping-cart .shopping-cart-items .item-name {
  display: block;
  padding-top: 0px;
}
.shopping-cart .shopping-cart-items .item-price {
  color: #000000;
}
.shopping-cart .shopping-cart-items .item-quantity {
  color: #333333;
}
.shopping-cart-total span{font-size:17px;}

.clearfix:after {
  content: "";
  display: table;
  clear: both;
}
.shopping-cart-items::-webkit-scrollbar-track {
    background-color: #fff !important;
}

.shopping-cart-items::-webkit-scrollbar {
    width: 8px;
}

.shopping-cart-items::-webkit-scrollbar-thumb {
    background-color: #888;
}

.carrello {position:absolute; z-index: 1000; margin-top:16px;}
.carrello button{float:right; vertical-align:middle; border:0; background:#ffffff;}

.varianti{padding:80px 0 100px;}
.varianti .row{gap:10px;}
.product-gallery-container{background-color:#f2f2f2;box-shadow: 0 2px 5px rgba(0,0,0,0.1);border-radius: 8px;flex: 0 0 calc(25% - 10px);}
.product-gallery-container h2{text-align:center;font-size: 1.2em;margin:0 0 50px;color: #333;}
.product-gallery-container .main-product-image {width: 100%;height: auto;display: block;margin-bottom: 15px;border-radius: 4px;transition: opacity 0.3s ease;}
.product-gallery-container .color-variants{display:flex;justify-content:center;gap: 10px;padding:10px 0 20px;}
.product-gallery-container .variant-swatch{width:25px;height:25px;border-radius: 50%;cursor: pointer;box-shadow: 0 1px 3px rgba(0,0,0,0.2);border: 3px solid transparent; transition: border-color 0.2s, transform 0.2s;text-indent: -9999px; overflow: hidden;}
.product-gallery-container .variant-swatch:hover{transform: scale(1.1);box-shadow: 0 3px 6px rgba(0,0,0,0.3);}
.product-gallery-container .variant-swatch.active {border-color: #007bff;transform: scale(1.15);}
.riepilogo [class^="col-"]{padding: 0 10px !important;}
footer{background:black;padding:60px 0 30px;color:white;font-size:0.9rem;line-height:2rem}
footer .dati a{color:white;line-height: 1.4rem;margin-bottom:9px;display: block;}
footer .dati i{margin-bottom:9px;display:none;}
footer a{color:white;}
footer a:hover {color:#d2d2d2;}
footer h2{font-size: 1.0rem;}
footer .dati .fa{display:none;}
footer li{list-style:none;}
footer .social a{color:white;font-size: 1.8rem;margin-right: 5px;}
footer .social .tiktok{width: 23px;margin-bottom: -3px;}
footer .pagamenti{margin-top:30px;}
footer .pagamenti img{filter: brightness(2.2);margin-left: -10px;margin-top: -15px;}
.privacy-footer ul ul li:first-of-type {display: none;}
.privacy {font-size:13px; display:inline-block;line-height:22px;}
.autore{text-align:center;background: black;padding:0 0 20px;}
.autore a{color: white;font-size:0.8rem;}
.cookie-btn i{border: solid 0px #ffffff;display: block;margin-bottom: 17px;width: 40px;height: 40px;color: #fff;-webkit-transition: 1s;-moz-transition: 1s;-o-transition: 1s;transition: 1s;font-size: 20px;line-height: 40px;text-align:center;background: rgb(0 0 0 / 80%);border-radius: 50%;position: fixed;left: 20px;bottom: 33px;overflow: hidden;z-index: 99;}
.selezione select, .selezione input{height:50px;width:100px;font-weight: 400;text-indent: 0;text-align: center;border: 1px solid rgb(198, 198, 198);}
.taglie{margin-bottom:20px;}
/*- sistemare -*/
*, *:before, *:after {
  box-sizing: border-box;
}


.lighter-text {
  color: #333333;
  float:left;
}

.main-color-text {
  color: #000000;
  float:right;
}

.shopping-cart .shopping-cart-items button i {
    color: #ff0000;
    font-size: 18px;
    margin-top: 15px;
    border: 0;
    padding: 0;
    height: auto;
    width: auto;
}

.shopping-cart {
  float: right;
  background: #ffffff;
  width: 240px;
  position: relative;
  border-radius: 3px;
  padding:0 10px 0 15px;
  border:solid 1px #dfdfdf;
  right: 144px;
}
.shopping-cart .shopping-cart-header {
padding:10px 0;
  border-bottom: 1px solid #9e9e9e;
  border-top: 1px solid #9e9e9e;
  display:inline-block;
      width: 100%;
}
.shopping-cart .shopping-cart-header .shopping-cart-total {
  text-align: center;
}
.shopping-cart .shopping-cart-items {font-size: 14px;
  padding-top:5px;
  max-height:350px;
  overflow: hidden;   
  overflow-y: scroll;
  text-align: left;
}
.shopping-cart .shopping-cart-items li {
  margin:10px 0;
  line-height: 18px;
}
.shopping-cart .shopping-cart-items img {
  padding:0 0 20px;
  float: left;
  margin-right:15px;
  width:60px;
}
.shopping-cart .shopping-cart-items .item-name {color: #000;
  display: block;
  padding-top: 0px;
}
.shopping-cart .shopping-cart-items .item-price {
  color: #000000;
}
.shopping-cart .shopping-cart-items .item-quantity {
  color: #333333;
}
.shopping-cart-total span{font-size:17px;color:#000000;}

.clearfix:after {
  content: "";
  display: table;
  clear: both;
}
.carrello{position:absolute;z-index: 1000;margin-top:2px;}
.carrello button{float:right;vertical-align:middle;border:0;background:#ffffff;}
.shopping-cart .btn{color:black;margin:15px 0 15px;}
/*- sistemare -*/


.badge {position:absolute;margin-left:5px;
font-size: 12px;
-webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -o-border-radius: 50%;
    -ms-border-radius: 50%;
width:22px;height:22px;line-height:22px;text-align:center;padding:0 0 0 2px;background-color: #444;
}



.elenco .ordine p{letter-spacing:0;}

.tabella .prodotto {font-size: 14px;text-align:left;}
.tabella td{border: 1px solid #dfdfdf;}
.tabella th{font-family: "Jost", sans-serif;font-weight: 500;}
.tabella input{width:50px;}
.tabella button{border:0;background:transparent;cursor: pointer;}
.tabella i{font-size:17px;}

.coupon .btn{display:inline-block;}

.accedi{border-right: 1px solid #dfdfdf;}
.accedi .btn{display:inline-block;padding: 15px 25px;}
.accedi .btn input{border:0;background:transparent;line-height:1;text-transform:uppercase;text-indent:0;}

.spedizione{margin:50px 0 0;text-align:left;}
.spedizione h2{margin-bottom:10px;}
.spedizione label{margin:5px 0;display:block;}
.spedizione input[type="text"], .spedizione select{width:100%;}
.conferma .btn{margin:auto;padding: 15px 25px;}

.pagamento h2{margin-bottom:0;}

.registrati [class^="col-"]{margin-bottom:10px;padding: 0 5px;}
.registrati{padding:0 3%;}
.registrati .btn{display:inline-block;padding: 15px 25px;}
.registrati select, .registrati input[type="text"], .registrati input[type="password"]{width:100%;}

.login input[type="text"], .login input[type="password"]{border-top-left-radius:0;border-bottom-left-radius:0;width:100%;}
.login .btn{margin:auto;width:100%;}

.recupera{margin:60px 0 80px;}
.recupera .grid{margin:0}

.responsive{font-size:13px;}

.area{margin:60px auto 60px;}
.area .btn{font-size:12px;}
.area .btn span{padding:10px 15px;}
.area .logout span{padding: 15px 25px;}
.area .btn span span{display:inline-block;border:0;padding:0;}
.area center{margin: auto 0 auto auto;}


.contatti select, .contatti input[type="text"], .contatti input[type="password"], .contatti textarea{width:100%;margin:5px 0;}
.contatti .btn{display:inline-block;}

.dati input[type="text"], .dati input[type="password"], .dati select{width:100%;margin:5px 0;}

.page-margin{margin:60px auto 60px;}
.prodotti-elenco{margin:60px auto;}
.prodotti .btn{margin:auto;}
.prodotti h3{margin-top:10px;}
@media (min-width:981px) {
.assistenza, .cambio-lingua, .social-top{display:none;}
.login, .cart, .logo{position: absolute;top:30px;z-index: 99;}
.text-center {margin-top:-15px;}
.logo{margin-left:-100px;top:25px;}
.cart{margin-left:100px;}
.login{margin-left:40px;}
.messaggio{display:none;}
}


/* === RESPONSIVE === */


@media (max-width:368px) {
.mobile .elenco .col-3 { flex: 0 0 100% !important; max-width:100% !important;padding:0 20px;}
.mobile .varianti [class^="col-"]{ flex: 0 0 100% !important; max-width:100% !important;padding:0 20px;}
}

@media (min-width:368px) and (max-width:412px){
.mobile .slider [class^="col-"]{flex: 0 0 100% !important; max-width:100% !important;}
.mobile .varianti [class^="col-"]{flex: 0 0 100% !important; max-width:100% !important;}
}

@media (min-width:412px) and (max-width:600px){
.mobile .slider [class^="col-"]{flex: 0 0 50% !important; max-width:50% !important;}
.mobile .varianti [class^="col-"]{flex: 0 0 calc(50% - 5px) !important; !important; max-width:50% !important;}
}

@media (max-width:600px) {
.row{margin:0;}
[class^="col-"]{flex: 0 0 100% !important;max-width: 100% !important;}
.elenco [class^="col-"]{padding:0;}
.stacco.sezione1375{height:auto;padding-bottom:100px;}
.stacco .contenuti{text-align: center;padding-top:70px;}
.stacco .btn {margin: 30px auto 0;}
.stacco .col-6 img {margin-right:auto;padding-top:100px;}
.full-screen .testo h1{font-size:3.2rem;margin-bottom: 40px;}
.btn{width:fit-content;min-width:auto;margin: 0 5px;}
.btn span{padding: 12px 12px;}
.elenco{margin-top:50px;margin-bottom:50px;}
.mobile .stacco{background-position: left;}
.section-top{margin-top: 70px;margin-bottom: 70px;}
.newsletter input[type="text"]{width:169px;}
.mobile .tab_container{margin-top:50px;}
.interne h1{font-size:1.8rem;line-height:2.2rem;margin: 200px auto 0;}
.filter-btn{margin-bottom: 10px;}
.dettaglio-prodotto .carousel-thumbs{display:none;}
.mobile .slide-home .item{height:70vh;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.mobile .slide-home .item img{height: 100%;width: auto;object-fit: cover;display: block;margin: 0 auto;}
.mobile .nome_maglia{top:184px;left:79px;}
  /*.mobile .nome_maglia{top: 93px;left: 37px;}*/
.box-2 .col-4:nth-child(3){order:4}
.box-2 .col-8:nth-child(4){order:3}
.elenco .col-3 { flex: 0 0 50% !important; max-width: 50% !important;padding:0 10px;}
.collezione [class*="col-"]{ flex: 0 0 50%; max-width: 50%; }
.video-det{float:none;width:100%;margin-right:0;}
.contatti[class^="col-"] {padding: 0;}
.seguici{margin-top:50px;}
.responsive td:before {width:100% !important;}
.mobile .responsive td{width: 100%;} 
.responsive td + td {border-top: 1px dotted #eaeaea !important;}
.dettaglio .descrizione{display: flex;flex-direction: column;}
.dettaglio  .descrizione-testo{order:1;}
.dettaglio .descrizione video{order:2;margin-top:30px;}
.dettaglio .descrizione .social{order:3;}
.riepilogo h2{font-size: 1.8rem;margin-bottom: 10px;margin-top: 20px;}
.mobile .coupon input{width:50%;}
input, select, textarea{font-size:16px;}
}

@media (min-width:600px) and (max-width:768px){
.coupon input{width: 110px;}
.accedi input, .registrati .col-6, .registrati .col-4{flex: 0 0 100%; max-width: 100%;}
}

@media (min-width:600px) and (max-width:980px){
.contenuti{flex: 0 0 70%;}
.elenco .col-3 { flex: 0 0 33% !important; max-width:33% !important;padding:0 20px;}
.mobile .varianti [class^="col-"]{flex: 0 0 calc(33.333333% - 7px) !important; !important; max-width:33.333333% !important;}
.mobile .slider [class^="col-"]{flex: 0 0 50% !important; max-width: 50% !important;}
footer .container{padding: 0 50px;}
}

@media (min-width:769px) and (max-width:980px){
footer .col-3 { flex: 0 0 50%; max-width: 50%; }
}

@media (min-width:769px) and (max-width:1280px){
.personalizza{display: block;width: 210% !important;flex: 0 0 100% !important;max-width: 210% !important;margin-left: -110%;margin-right: 110%;margin-top: 60px;}
.selector-group:first-child{margin-top: 100px;}
.selector-group{display: block;width: 228% !important;flex: 0 0 100% !important;max-width: 228% !important;margin-left: -125%;margin-right: 125%;}
.personalizza input[type="text"]{width: 60%;}
.dettaglio .cart-btn{margin:0;width: 210%;max-width: 210%;margin-left: -110%;margin-right: -100%;}
}

@media (min-width:601px) and (max-width:1539px){
.stacco .contenuti{padding-top: 80px;}
}


@media (max-width: 768px) {
.dettaglio .col-6{flex: 0 0 100% !important;max-width: 100% !important;}
.dettaglio .carousel-thumbs{display:none;}
.carousel{overflow: hidden; /* evita che escano */}
.carousel-track{display: flex;transition: transform 0.3s ease;}
.carousel-track .item {flex: 0 0 100%;   /* ogni slide occupa tutta la larghezza */max-width: 100%;box-sizing: border-box;}
.carousel-track img {width: 100%;height: auto;display: block;object-fit: contain; /* evita deformazioni e ritagli */}
.personalizza{width:100% !important;max-width:100% !important;}
.personalizza input[type="text"]{width: 60%;}
.specchio [class^="col-"]{flex: 0 0 100% !important;max-width: 100% !important;}
.specchio .container{padding:0;}
.specchio.box-4{padding-top:0;}
.specchio.box-2 .col-8, .specchio.box-4 .col-8 {order: 1; /* va sopra */}
.specchio.box-2 .col-4, .specchio.box-4 .col-4 {order: 2; /* va sotto */}
.specchio.box-1 .col-4, .specchio.box-2 .col-4, .specchio.box-3 .col-4 {padding-top:30px;}
.specchio.box-4 .col-8{margin:60px 0 -60px;z-index:999;}
.specchio.box-5{padding:60px 0 40px;margin-top:-60px;} 
.roller{padding:0 !important;}
.stacco{height:200px;padding-bottom:80px;}
.accedi input{margin-bottom:10px;}
}

@media (min-width:769px) and (max-width:1280px){
.specchio.box-4, .specchio.box-5{padding:60px 0;}
}

@media (max-width:980px) {
h1{font-size:2.3rem;line-height:2.7rem;}
h2{font-size: 1.1rem;}
.container {padding: 0 20px;}
[class^="col-"] {padding: 0 20px;}
.assistenza, .cambio-lingua, .social-top{display:none;}
.login, .cart, .logo{position: absolute;top:20px;z-index: 99;}
.text-center {margin-top:-15px;}
.logo{margin-left:10px;}
.cart{margin-left: -120px;margin-top: -5px;}
.login{margin-left:-180px;margin-top: -5px;}
.messaggio{display:none;}
.stacco img{margin:auto;width: 80px;}
.full-screen .testo{padding: 20px 40px 60px;max-width: fit-content;margin:auto;}
.mobile .top-bar-fixed {background: linear-gradient(to bottom, black 0%, rgba(0, 0, 0, 0.5) 50%, transparent 100%);height:90px;}
.logo img{width: 40px;padding-top: 5px;}
.navbar{padding:0;}
.navbar .container{flex-wrap:wrap;position:relative;padding:0;}
.hamburger{display:flex;position: absolute;top:45px;right:40px;z-index: 999;}
.nav-links{flex-direction:column;width:100%;background:#000000b5;margin-top:60px; /* spazio per hamburger */padding:10px 20px;height: 1px;transform: translateY(-20px);
  transition: transform 0.4s ease, opacity 0.4s ease;opacity: 0;
  overflow: hidden;}
.nav-links.show{display: flex;margin: 0;padding: 90px 20px 30px;border-radius: 0;  transform: translateY(0);opacity: 1;height:auto;}
.slider [class^="col-"]{flex: 0 0 33.333333%; max-width: 33.333333%;}
.elenco h3 {line-height: 1.2em;font-size: 1.1em;}
.coupon font{display: block;max-width: 100%;width: 100%;}
footer {padding:30px 0 30px;}
footer h2{margin:40px 0 20px;}

#bianco{display:block !important;}
#nero{display:none !important;}
}

@media (min-width:980px){
.name_input{width:300px;}
.messaggio{margin-bottom:-40px;}
.header-top{margin-top:160px;}
}

@media (min-width:980px) and (max-width:1280px){
.logo{margin-left:-80px;top:25px;}
.cart{margin-left:65px;}
.login{margin-left:5px;}
.mobile .container {max-width:900px;}
.mobile .elenco .col-3 { flex: 0 0 33%; max-width: 33%; }
.specchio img{max-width:100%;}
.slider [class^="col-"]{flex: 0 0 33.333333%; max-width: 33.333333%;}
}

@media (min-width:1280px){
.roller{padding:0;}
}

@media (min-width:1281px) and (max-width:1400px){
.mobile .container {max-width:1100px;}
}

@media (min-width:1401px) and (max-width:1540px){
.mobile .container {max-width:1150px;}
}

@media (min-width:1541px){
.logo{margin-left:-60px;}
.cart{margin-left:70px;}
.login{margin-left:10px;}
}
