:root {
  --primo: #a81c1c;
  --secondo: #E3C5C4;
  --secondo_2: #EBD6D5;
  --secondo_3: #F2E4E3;
  --secondo_4: #F9F2F1;
  /*--secondo_5: #DEBBBA;
  --secondo_6: #D7AEAC;
  --secondo_7: #D1A19F;*/
  --terzo: #BFCFC2;
  --terzo_2: #D0DCD3;
  --terzo_3: #DCE5DE;
  --quarto: #C8D7E4;
  --bianco: #FFFFFF;
  --nero: #000000;
  --grigio: #f2f2f2;
  --grigio_light: #f9f9f9;
  --grigio-testo: #6c6c6c;
  --nero-trasp: rgba(0, 0, 0, 0.90);
  --bianco-trasp: rgba(255, 255, 255, 0.95);
  --trasp: rgba(0, 0, 0, 0);
}


/*
font-family: "Noto Serif Display", serif;
font-family: "Montserrat", sans-serif;
*/

body {
  color: var(--nero);
  font-family: "Montserrat", sans-serif;
  font-size: 1rem;
  font-weight: 300;
  line-height: 1.5;
  background: var(--bianco);
  overflow-x:hidden;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  letter-spacing: 0px;
  margin: 0px;
  font-family: "Noto Serif Display", serif;
  color: var(--nero);
  font-weight: 500;
}

a {
  font-family: "Montserrat", sans-serif;
  text-decoration: none;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  color: var(--primo);
}

a:hover {
  color: var(--nero);
}

.double-bounce1, .double-bounce2 {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background:var(--primo);
  opacity: 0.6;
  position: absolute;
  top: 0;
  left: 0;

  -webkit-animation: sk-bounce 2.0s infinite ease-in-out;
  animation: sk-bounce 2.0s infinite ease-in-out;
}

.site-navbar .site-navigation .site-menu .has-children .dropdown {
  visibility: hidden;
  opacity: 0;
  top: 100%;
  position: absolute;
  left: 0;
  height: auto;
  text-align: left;
  border-top: 0px;
  -webkit-box-shadow: 0 2px 10px -2px rgba(0, 0, 0, 0.1);
  box-shadow: 0 2px 10px -2px rgba(0, 0, 0, 0.1);
  padding: 0px 0;
  margin-top: 20px;
  margin-left: 0px;
  background: var(--bianco-trasp);
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.site-navbar .site-navigation .site-menu .has-children .dropdown h6{
  font-size: 1.25rem;
  line-height: 1.25rem;
  color: var(--primo);
  font-weight: 500;
  font-style: italic;
}

.site-navbar .site-navigation .site-menu .has-children .dropdown h6 span{
  font-weight: 600;
  font-style:normal;
}

.site-navbar .site-navigation .site-menu .has-children .dropdown ul{
  position: relative;
  margin: 0;
  padding: 0;
  list-style: none;
}

.site-navbar .site-navigation .site-menu .has-children .dropdown ul li{
  position: relative;
  margin-bottom: 0.5rem;
}

.site-navbar .site-navigation .site-menu .has-children .dropdown ul li a:link,
.site-navbar .site-navigation .site-menu .has-children .dropdown ul li a:visited{
  position: relative;
  font-size: 0.625rem;
  line-height: 1.5;
  color: var(--nero);
}

.site-navbar .site-navigation .site-menu .has-children .dropdown ul li a:hover{
  color: var(--primo);
}

.site-navbar .site-navigation .site-menu .has-children .dropdown ul li a::before{
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: -0.3rem;
  height: 1px;
  width: 100%;
  background-color: var(--nero);
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.site-navbar .site-navigation .site-menu .has-children .dropdown ul li a:hover::before{
  width: 0%;
  background-color: var(--primo);
}

.sticky-wrapper .site-navbar{
  border-bottom: 0px;
  background-color: var(--bianco);
}

.site-mobile-menu {
  width: 50%;
  padding-top: 2rem;
  background: var(--bianco-trasp);
  height: calc(100vh);
  -webkit-transform: translateX(100%);
  -ms-transform: translateX(100%);
  transform: translateX(100%);
}

.pre-header{
  position: relative;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  border-bottom: 2px solid var(--grigio);
  height: auto;
  overflow: hidden;
  -webkit-transition: all 1s ease-out;
  -moz-transition: all 1s ease-out;
  -o-transition: all 1s ease-out;
  transition: all 1s ease-out;
}

.is-sticky .pre-header{
  height: 0;
  opacity: 0;
  padding-top: 0rem;
  padding-bottom: 0rem;
  border-bottom: 0px solid var(--grigio);
}

.pre-header ul.lista-contatti,
.pre-header ul.lista-social{
  display: flex;
  align-items: center;
  margin: 0;
  padding: 0;
  list-style: none;
  font-family: "Montserrat", sans-serif;
  font-weight: 300;
}

.pre-header ul.lista-contatti{
  justify-content: flex-start;
}

.pre-header ul.lista-social{
  justify-content: flex-end;
}

.pre-header ul.lista-contatti li a:link,
.pre-header ul.lista-contatti li a:visited{
  font-family: "Montserrat", sans-serif;
  font-size: 0.8rem;
  line-height: 1.2rem;
  color: var(--nero);
  text-decoration: none;
  margin-right: 1rem;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.pre-header ul.lista-contatti li a i{
  color: var(--primo);
  font-size: 1rem;
  line-height: 1.3rem;
}

.pre-header ul.lista-contatti li a:hover{
  color: var(--primo);
}

.pre-header ul.lista-social li a:link,
.pre-header ul.lista-social li a:visited{
  color: var(--primo);
  font-size: 1rem;
  line-height: 1.3rem;
  margin-left: 1rem;
}

.menu-container{
  position: relative;
  padding-top:1.75rem;
  padding-bottom:1.75rem;
}

.menu-container::before{
  content: "";
  display: block;
  position: absolute;
  top:0;
  right:0;
  background-color: var(--grigio);
  height: 100%;
  width: 41.66%;
  z-index: 1;
}

.menu-container .row{
  position: relative;
  z-index: 2;
}

.site-logo{
  position: relative;
  margin: 0;
  padding: 0;
  width: 10.625rem;
  height: 5.438rem;
  text-indent: -9999px;
  z-index: 2;
  background-image: url(../img/logo_header.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.site-navbar .site-navigation .site-menu .has-children > a {
    position: relative;
    padding-right: 20px!important;
}

.sticky-wrapper .site-navbar .site-menu > li{
  position: relative;
  padding: 0 0.2rem;
}

.sticky-wrapper .site-navbar .site-menu > li > a {
  position: relative;
  color: var(--nero)!important;
  font-size: 0.875rem;
  line-height: 0.875rem;
  text-transform: uppercase;
  padding: 0;
}

.sticky-wrapper .site-navbar .site-menu > li > a::after{
  content: "";
  display: block;
  width: 0%;
  height: calc(100% + 1rem);
  border-top:1px solid var(--primo);
  border-bottom:1px solid var(--primo);
  position: absolute;
  top:-0.5rem;
  left:0;
  opacity: 0;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.sticky-wrapper .site-navbar .site-menu > li > a:hover,
.sticky-wrapper .site-navbar .site-menu > li > a.active,
.sticky-wrapper .site-navbar .site-menu > li > a.current {
  color:var(--primo)!important;
  padding: 0;
}

.sticky-wrapper .site-navbar .site-menu > li > a:hover::after,
.sticky-wrapper .site-navbar .site-menu > li > a.active::after,
.sticky-wrapper .site-navbar .site-menu > li > a.current::after {
  width: 100%;
  opacity: 1;
}

.sticky-wrapper.is-sticky .site-navbar .site-menu > li > a:hover, .sticky-wrapper.is-sticky .site-navbar .site-menu > li > a.active {
  color:var(--primo)!important;
}

.user-shop{
  position: relative;
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  list-style: none;
}

.user-shop li{
  position: relative;
  padding: 0 0.8rem;
}

.user-shop li a:link,
.user-shop li a:visited{
  position: relative;
  font-size: 0.875rem;
  line-height: 0.875rem;
  color: var(--nero);
}

.user-shop li a:hover{
  color: var(--primo);
}

.user-shop li form{
  position: relative;
  display: inline-block;
  width: 62px;
}

.user-shop li form input{
  position: relative;
  width: 100%;
  border-radius: 0;
  border: 0;
  border-bottom: 1px solid var(--nero);
  background-color: var(--trasp);
  font-size: 0.875rem;
  line-height: 0.875rem;
}

.user-shop li form input::placeholder{
  font-size: 0.875rem;
  line-height: 0.875rem;
  color: var(--nero);
  font-weight: 300;
}

.user-shop li form input:focus{
  border-bottom: 1px solid var(--primo);
  outline: none;
}

.user-shop li a img{
  position: relative;
  width: 16px;
  height: auto;
  margin-right: 0.4rem;
}

.sticky-wrapper .site-navbar .site-menu-toggle {
  color: var(--nero);
  font-size: 2rem;
  line-height: 2rem;
}

.sticky-wrapper .site-navbar .site-menu-toggle:hover {
  color: var(--primo);
}

.sticky-wrapper.is-sticky .site-navbar .site-menu-toggle {
  color: var(--nero);
}

.site-mobile-menu-header .site-mobile-menu-close .js-menu-toggle i{
  color: var(--nero);
  -webkit-transition: .3s all ease;
  -o-transition: .3s all ease;
  transition: .3s all ease;
}

.site-mobile-menu-header .site-mobile-menu-close .js-menu-toggle:hover i{
  color: var(--primo);
}

.site-mobile-menu .site-nav-wrap > li > a {
  padding-left: 2rem;
  font-size: 1.2rem;
}

.site-mobile-menu .site-nav-wrap a {
  padding: 0.5rem 1.2rem;
  display: block;
  position: relative;
  color: var(--nero);
  text-transform: uppercase;
  font-weight: 300;
}

.site-mobile-menu .site-nav-wrap a::after{
  content: "";
  display: block;
  width: 0%;
  height: 100%;
  border-top:1px solid var(--primo);
  border-bottom:1px solid var(--primo);
  position: absolute;
  top:0;
  left:0;
  opacity: 0;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.site-mobile-menu .site-nav-wrap a:hover,
.site-mobile-menu .site-nav-wrap a.active {
  color:var(--primo)!important;
  /*padding: 0;*/
}

.site-mobile-menu .site-nav-wrap a:hover::after,
.site-mobile-menu .site-nav-wrap a.active::after {
  width: 100%;
  opacity: 1;
}

.site-mobile-menu .site-mobile-menu-body {
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  position: relative;
  padding: 1rem;
  height: calc(100vh - 52px);
  padding-bottom: 150px;
}

.site-mobile-menu .site-nav-wrap > li {
  margin-bottom: 0.4rem;
}

.site-mobile-menu .site-nav-wrap > li > ul > li > a {
  padding-left: 3rem;
  font-size: 0.8rem;
  text-transform: none;
}

.site-mobile-menu .site-nav-wrap > li > ul > li > a:hover {
background-color: var(--grigio);
}

.site-mobile-menu .site-nav-wrap > li > ul > li > a:after{
  display: none;
}

.site-navbar .site-navigation .site-menu .has-children .dropdown > li > a:hover {
    background: var(--grigio);
    color: var(--nero);
}

.hero{
  position: relative;
  z-index: auto;
  width: 100%;
  height: auto;
  background-color: var(--bianco);
  margin: 0;
  padding: 0;
  padding-top: 194px;
}


.slider-hero{
  position: relative;
  z-index: 2;
  width: 100%;
  height: 640px;
  background-color: var(--bianco);
}

.slider-hero .owl-stage-outer{
  height: 640px;
}

.slider-hero .owl-stage-outer .owl-item{
  height: 640px;
  display: block;
  overflow: hidden;
}

.slider-hero .owl-stage-outer .owl-item .item{
  position: relative;
  height: 640px;
}

.slider-hero .owl-stage-outer .owl-item .item.slide_01{
  background-color: var(--secondo);
}

.slider-hero .owl-stage-outer .owl-item .item.slide_02{
  background-color: var(--secondo_2);
}

.slider-hero .owl-stage-outer .owl-item .item.slide_03{
  background-color: var(--secondo_3);
}

.slider-hero .owl-stage-outer .owl-item .item.slide_04{
  background-color: var(--secondo_4);
}

.slider-hero .owl-stage-outer .owl-item .item.slide_05{
  background-color: var(--terzo);
}

.slider-hero .owl-stage-outer .owl-item .item.slide_06{
  background-color: var(--terzo_2);
}

.slider-hero .owl-stage-outer .owl-item .item.slide_07{
  background-color: var(--terzo_3);
}

.slider-hero .owl-stage-outer .owl-item .item::before{
  content: "";
  position: absolute;
  top:0;
  left: 0;
  width: 50%;
  height: 100%;
  display: block;
  background-color: var(--bianco);
}

.hero-text{
  position: relative;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 640px;
  padding: 0;
  margin: 0;
  background-position: right bottom;
  background-repeat: no-repeat;
  z-index: 2;
}

.slide_01 .hero-text{
  background-color: var(--secondo);
  background-image: url(../img/slide_back_01.png);
  background-size: 50%;
}

.slide_02 .hero-text{
  background-color: var(--secondo_2);
  background-image: url(../img/slide_back_02.png);
  background-size: 50%;
}

.slide_03 .hero-text{
  background-color: var(--secondo_3);
  background-image: url(../img/slide_back_03.png);
  background-size: 50%;
}

.slide_04 .hero-text{
  background-color: var(--secondo_4);
  background-image: url(../img/slide_back_04.png);
  background-size: 50%;
}

.slide_05 .hero-text{
  background-color: var(--terzo);
  background-image: url(../img/slide_back_05.png);
  background-size: 50%;
}

.slide_06 .hero-text{
  background-color: var(--terzo_2);
  background-image: url(../img/slide_back_06.png);
  background-size: 50%;
}

.slide_07 .hero-text{
  background-color: var(--terzo_3);
  background-image: url(../img/slide_back_07.png);
  background-size: 50%;
}

.hero-text h2{
  position: relative;
  font-size: 2.75rem;
  line-height: 3.75rem;
  color: var(--primo);
  font-weight: 500;
  font-style: italic;
  text-transform: none;
  margin-bottom: 3.75rem;
  padding: 0;
}

.hero-text h2 span, .hero-text h2 strong {
  position: relative;
  font-size: 3.75rem;
  line-height: 3.75rem;
  font-weight: 600;
  font-style: normal;
  text-transform:capitalize;
}

.hero-text p{
  position: relative;
  width: 60%;
  margin: 0 20% 3.75rem 20%;
  color: var(--nero);
  font-size: 1rem;
  line-height: 1.5rem;
}

.cta-container{
  position: relative;
}

.cta-container-center{
  position: relative;
  width: 100%;
  height: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 2rem 0;
}

.hero-text a.cta:link,
.hero-text a.cta:visited{
  position: relative;
  font-size: 1rem;
  line-height: 1rem;
  font-weight: 300;
  text-transform: uppercase;
  background-color: var(--trasp);
  border-radius: 0;
  border: 0;
  border-top:1px solid var(--nero);
  border-bottom: 1px solid var(--nero);
  color: var(--nero);
  margin: 0!important;
  padding: 1rem;
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
}

.hero-text a.cta:hover{
  color: var(--bianco);
  border-top:1px solid var(--primo);
  border-bottom: 1px solid var(--primo);
  background-color: var(--primo);
}

a.cta:link,
a.cta:visited{
  position: relative;
  font-size: 1rem;
  line-height: 1rem;
  font-weight: 300;
  text-transform: uppercase;
  background-color: var(--trasp);
  border-radius: 0;
  border: 0;
  border-top:1px solid var(--primo);
  border-bottom: 1px solid var(--primo);
  color: var(--primo);
  margin: 0!important;
  padding: 1rem;
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
}

a.cta:hover{
  color: var(--bianco);
  border-top:1px solid var(--primo);
  border-bottom: 1px solid var(--primo);
  background-color: var(--primo);
}

.hero-img{
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 640px;
  padding: 0;
  margin: 0;
  background-color: var(--bianco);
  background-image: url(../img/slide_background.png);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  z-index: 2;
}

.hero-img::before{
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top:50%;
  transform: translate(-50%, -50%);
  z-index: 1;
  background-color: var(--trasp);
  height: calc(100% - 8.125rem);
  aspect-ratio: 1/1;
    // Fallback
    @supports not (aspect-ratio: 1/1) {
    &::before {
      float: left;
      padding-top: 100%;
      content: "";
    }
    &::after {
      display: block;
      content: "";
      clear: both;
    }
  }
}

.slide_01 .hero-img::before{
  border: 2px solid var(--secondo);
}

.slide_02 .hero-img::before{
  border: 2px solid var(--secondo_2);
}

.slide_03 .hero-img::before{
  border: 2px solid var(--secondo_3);
}

.slide_04 .hero-img::before{
  border: 2px solid var(--secondo_4);
}

.slide_05 .hero-img::before{
  border: 2px solid var(--terzo);
}

.slide_06 .hero-img::before{
  border: 2px solid var(--terzo_2);
}

.slide_07 .hero-img::before{
  border: 2px solid var(--terzo_3);
}

.hero-img img{
  position: relative;
  width: 80%!important;
  margin: 0 10% 0 10%;
  z-index: 2;
}

.owl-dots{
  position: absolute;
  bottom:-2.5rem;
  left: 0;
  background-color: var(--trasp);
  width: 100%;
  height: 2rem;
  display: flex;
  justify-content: center;
  align-items: center;
}

.owl-dots .owl-dot{
  position: relative;
  display: block;
  width: 0.6rem;
  height: 0.6rem;
  border: 1px solid var(--nero);
  background-color: var(--trasp);
  border-radius: 50%;
  margin: 0 0.3rem;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.owl-dots .owl-dot:hover{
  border: 1px solid var(--primo);
  background-color: var(--primo);
}

.owl-dots .owl-dot.active{
  border: 1px solid var(--nero);
  background-color: var(--nero);
}

.catalogo-home{
  position: relative;
  background-color: var(--grigio);
  margin-top: 3.75rem;
  margin-bottom: 3.75rem;
}

.eventi-home{
  position: relative;
  background-color: var(--grigio);
  margin-top: 3.75rem;
  margin-bottom: 3.75rem;
}

.col-title{
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  text-align: center;
  aspect-ratio: 1/1;
    // Fallback
    @supports not (aspect-ratio: 1/1) {
    &::before {
      float: left;
      padding-top: 100%;
      content: "";
    }
    &::after {
      display: block;
      content: "";
      clear: both;
    }
  }
}

.col-title h3{
  position: relative;
  font-size: 2.75rem;
  line-height: 3.75rem;
  color: var(--primo);
  font-weight: 500;
  font-style: italic;
  text-transform: none;
  margin-bottom: 3.75rem;
  padding: 0;
  z-index: 2;
}

.col-title h3 span, .col-title h3 strong {
  position: relative;
  font-size: 3.75rem;
  line-height: 3.75rem;
  font-weight: 600;
  font-style: normal;
  text-transform:capitalize;
}

.col-title p{
  position: relative;
  width: 80%;
  margin: 0 10% 0 10%;
  color: var(--nero);
  font-size: 1rem;
  line-height: 1.5rem;
  z-index: 2;
}

.col-title p strong{
  font-weight: 500;
  font-style: italic;
}

.col-title::before{
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top:50%;
  transform: translate(-50%, -50%);
  z-index: 1;
  background-color: var(--trasp);
  height: calc(100% - 13.75rem);
  border:2px solid var(--bianco);
  aspect-ratio: 1/1;
    // Fallback
    @supports not (aspect-ratio: 1/1) {
    &::before {
      float: left;
      padding-top: 100%;
      content: "";
    }
    &::after {
      display: block;
      content: "";
      clear: both;
    }
  }
}

.col-img-dx{
  position: absolute;
  top:0;
  right: 0;
  width: calc(50% + 110px);
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow:hidden;
}

.col-img-dx img{
  position: relative;
  width: 100%;
  height: auto;
}

.col-img-sx{
  position: absolute;
  top:0;
  left: 0;
  width: calc(50% + 110px);
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow:hidden;
}

.col-img-sx img{
  position: relative;
  width: 100%;
  height: auto;
}

.evidenza-home{
  position: relative;
  background-color: var(--grigio);
  margin-top: 3.75rem;
  margin-bottom: 3.75rem;
}


.catalogo-box-prodotto{
  position: relative;
  background-color: var(--bianco);
  width: 100%;
  min-height: 460px;
  height:auto !important;
  height: 460px;
  text-align: center;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.catalogo-box-prodotto::before{
  content: "";
  display: block;
  z-index: 1;
  background-color: var(--trasp);
  position: absolute;
  width: calc(100% - 6.25rem);
  top:3.125rem;
  left: 3.125rem;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  aspect-ratio: 1/1;
    // Fallback
    @supports not (aspect-ratio: 1/1) {
    &::before {
      float: left;
      padding-top: 100%;
      content: "";
    }
    &::after {
      display: block;
      content: "";
      clear: both;
    }
  }
}

.catalogo-box-prodotto:hover::before{
  border: 2px solid var(--bianco);
}

.catalogo-box-prodotto.prod_01::before{
  border: 2px solid var(--secondo);
}

.catalogo-box-prodotto.prod_02::before{
  border: 2px solid var(--secondo_2);
}

.catalogo-box-prodotto.prod_03::before{
  border: 2px solid var(--secondo_3);
}

.catalogo-box-prodotto.prod_04::before{
  border: 2px solid var(--secondo_4);
}

.catalogo-box-prodotto.prod_05::before{
  border: 2px solid var(--terzo);
}

.catalogo-box-prodotto.prod_06::before{
  border: 2px solid var(--terzo_2);
}

.catalogo-box-prodotto.prod_07::before{
  border: 2px solid var(--terzo_3);
}

.catalogo-box-prodotto:hover::before{
  border: 2px solid var(--bianco);
}

.catalogo-box-prodotto.prod_01:hover{
  background-color: var(--secondo);
}

.catalogo-box-prodotto.prod_02:hover{
  background-color: var(--secondo_2);
}

.catalogo-box-prodotto.prod_03:hover{
  background-color: var(--secondo_3);
}

.catalogo-box-prodotto.prod_04:hover{
  background-color: var(--secondo_4);
}

.catalogo-box-prodotto.prod_05:hover{
  background-color: var(--terzo);
}

.catalogo-box-prodotto.prod_06:hover{
  background-color: var(--terzo_2);
}

.catalogo-box-prodotto.prod_07:hover{
  background-color: var(--terzo_3);
}

.catalogo-box-prodotto .img-frame{
  position: relative;
  z-index: 2;
}

.catalogo-box-prodotto .img-frame img{
  position: relative;
  width: 100%;
}

.catalogo-box-prodotto h4{
  position: relative;
  z-index: 2;
  font-size: 1rem;
  line-height: 1rem;
  font-family: "Montserrat", sans-serif;
  font-weight: 300;
  color: var(--nero);
  opacity: 1;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.catalogo-box-prodotto h4 span, .catalogo-box-prodotto h4 strong{
  text-transform: uppercase;
}

.catalogo-box-prodotto:hover h4{
  opacity: 0;
}

.dida-prodotto{
  position: absolute;
  bottom:0;
  left: 0;
  opacity: 0;
  padding: 0 1rem 2.25rem 1rem;
  width: 100%;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.catalogo-box-prodotto:hover .dida-prodotto{
  opacity: 1;
}

.catalogo-box-prodotto .dida-prodotto p{
  position: relative;
  font-size: 0.9rem;
  line-height: 1.5;
  color: var(--nero);
  font-weight: 300;
  font-style: italic;
  margin-bottom: 1rem;
}

a.cta-mini:link,
a.cta-mini:visited{
  position: relative;
  display: inline-block;
  font-size: 0.625rem;
  line-height: 0.625rem;
  font-weight: 300;
  text-transform: uppercase;
  background-color: var(--trasp);
  border-radius: 0;
  border: 0;
  border-top:1px solid var(--nero);
  border-bottom: 1px solid var(--nero);
  color: var(--nero);
  margin: 0!important;
  padding: 0.625rem;
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
}

a.cta-mini:hover{
  color: var(--bianco);
  border-top:1px solid var(--primo);
  border-bottom: 1px solid var(--primo);
  background-color: var(--primo);
}

.evidenza-box-prodotto{
  position: relative;
  background-color: var(--bianco);
  width: 100%;
  min-height: 460px;
  height:auto !important;
  height: 460px;
  text-align: center;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.evidenza-box-prodotto:hover{
  background-color: var(--quarto);
}

.evidenza-box-prodotto::before{
  content: "";
  display: block;
  z-index: 1;
  background-color: var(--trasp);
  position: absolute;
  width: calc(100% - 6.25rem);
  top:3.125rem;
  left: 3.125rem;
  border: 2px solid var(--quarto);
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  aspect-ratio: 1/1;
    // Fallback
    @supports not (aspect-ratio: 1/1) {
    &::before {
      float: left;
      padding-top: 100%;
      content: "";
    }
    &::after {
      display: block;
      content: "";
      clear: both;
    }
  }
}

.evidenza-box-prodotto:hover::before{
  border: 2px solid var(--bianco);
}

.evidenza-box-prodotto .img-frame{
  position: relative;
  z-index: 2;
}

.evidenza-box-prodotto .img-frame img{
  position: relative;
  width: 100%;
}

.evidenza-box-prodotto h4{
  position: relative;
  z-index: 2;
  font-size: 1rem;
  line-height: 1rem;
  font-family: "Montserrat", sans-serif;
  font-weight: 300;
  color: var(--nero);
  opacity: 1;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.evidenza-box-prodotto h4 span, .evidenza-box-prodotto h4 strong{
  text-transform: uppercase;
}

.evidenza-box-prodotto:hover h4{
  opacity: 0;
}

.evidenza-box-prodotto:hover .dida-prodotto{
  opacity: 1;
}

.evidenza-box-prodotto .dida-prodotto p{
  position: relative;
  font-size: 0.9rem;
  line-height: 1.5;
  color: var(--nero)!important;
  font-weight: 300;
  font-style: normal;
  margin-bottom: 1rem;
}

.evidenza-box-prodotto .dida-prodotto p.prezzo{
  position: relative;
  font-size: 1rem;
  line-height: 1.5;
  color: var(--primo);
  font-weight: 300;
  font-style: normal;
  margin-bottom: 0rem;
}

.evidenza-box-prodotto .dida-prodotto p.prezzo span{
  position: relative;
  font-size: 0.8rem;
  line-height: 1.5;
  color: var(--grigio-testo);
  font-weight: 300;
  font-style: normal;
  margin-bottom: 1rem;
  text-decoration: line-through;
}

footer{
  position: relative;
  margin-top: 3.75rem;
}

footer .container{
  position: relative;
  padding-top: 7.5rem;
  padding-bottom: 4.375rem;
  border-top: 2px solid var(--grigio);
}

.logo-footer{
  position: relative;
  display: inline-block;
  margin-bottom: 3.25rem;
}

.logo-footer img{
  position: relative;
  max-width: 10.625rem;
}

footer h5{
  position: relative;
  font-size: 1rem;
  line-height: 1rem;
  color: var(--primo);
  font-weight: 600;
  font-family: "Montserrat", sans-serif;
  margin-bottom: 0.5rem;
}

footer h6{
  position: relative;
  font-size: 1.25rem;
  line-height: 1.25rem;
  color: var(--primo);
  font-weight: 600;
  margin-top: 2.25rem;
  margin-bottom: 2.25rem;
}

ul.contatti-footer{
  position: relative;
  margin: 0;
  padding: 0;
  list-style: none;
}

ul.contatti-footer li{
  position: relative;
  margin-bottom: 0.5rem;
}

ul.contatti-footer li a:link,
ul.contatti-footer li a:visited{
  position: relative;
  font-size: 1rem;
  line-height: 1rem;
  color: var(--nero);
}

ul.contatti-footer li a:hover{
  color: var(--primo);
}

ul.contatti-footer li a::before{
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: -0.3rem;
  height: 1px;
  width: 100%;
  background-color: var(--nero);
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

ul.contatti-footer li a:hover::before{
  width: 0%;
  background-color: var(--primo);
}

ul.contatti-footer li i{
  font-size: 1rem;
  color: var(--primo);
}

ul.lista-social-footer{
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin: 1rem 0 0 0;
  padding: 0;
  list-style: none;
  font-family: "Montserrat", sans-serif;
  font-weight: 300;
}

ul.lista-social-footer li a:link,
ul.lista-social-footer li a:visited{
  color: var(--primo);
  font-size: 1rem;
  line-height: 1rem;
  margin-right: 1rem;
}


.lista-link-footer{
  position: relative;
  margin: 0;
  padding: 0;
  list-style: none;
}

.lista-link-footer li{
  position: relative;
  margin-bottom: 0.5rem;
}

.lista-link-footer li a:link,
.lista-link-footer li a:visited{
  position: relative;
  color: var(--nero);
}

.lista-link-footer li a:hover{
  color: var(--primo);
}

.lista-link-footer li a::before{
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: -0.3rem;
  height: 1px;
  width: 100%;
  background-color: var(--nero);
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.lista-link-footer li a:hover::before{
  width: 0%;
  background-color: var(--primo);
}



.colophone{
  position: relative;
  background-color: var(--grigio);
  text-align: center;
  padding: 1rem;
}

.colophone p{
  font-size: 0.75rem;
  line-height: 0.75rem;
  color: var(--nero);
}

.colophone p a:link,
.colophone p a:visited{
  position: relative;
  color: var(--nero);
}

.colophone p a:hover{
  color: var(--primo);
}

.colophone p a::before{
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: -0.3rem;
  height: 1px;
  width: 100%;
  background-color: var(--nero);
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.colophone p a:hover::before{
  width: 0%;
  background-color: var(--primo);
}

/*START SCROLL TO TOP*/
.topcontrol {
background: var(--bianco);
border-radius: 30px;
bottom: 5px;
box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
color: var(--primo);
border: 1px solid var(--primo);
cursor: pointer;
font-size: 22px;
height: 50px;
line-height: 47px;
opacity: 1;
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
position: fixed;
right: 5px;
text-align: center;
-webkit-transition: all 0.5s ease-out;
-moz-transition: all 0.5s ease-out;
-o-transition: all 0.5s ease-out;
transition: all 0.5s ease-out;
width: 50px;
}
@media only screen and (max-width:768px) {
.topcontrol {display:none;}
}
.topcontrol:hover {
  background: var(--primo);
  color: var(--bianco);
}
/*END SCROLL TO TOP*/

.header-page{
  position: relative;
  z-index: auto;
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
  padding-top: 194px;
}

.header-page.collection_01{
  /*background-color: var(--secondo);*/
}

.header-page .container{
  position: relative;
  z-index: 2;
}

.header-page .container .row{
  align-items: stretch;
}

.header-page-img{
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: auto
  padding: 0;
  margin: 0;
  background-color: var(--grigio);
  z-index: 2;
}

.header-page-img img{
  position: relative;
  width: 100%;
}

.header-page-text{
  position: relative;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 0;
  margin: 0;
  background-position: right bottom;
  background-repeat: no-repeat;
  z-index: 2;
}

.collection_01 .header-page-text{
  background-color: var(--secondo);
  background-image: url(../img/slide_back_01.png);
  background-size: 50%;
}

.collection_02 .header-page-text{
  background-color: var(--secondo_2);
  background-image: url(../img/slide_back_02.png);
  background-size: 50%;
}

.collection_03 .header-page-text{
  background-color: var(--secondo_3);
  background-image: url(../img/slide_back_03.png);
  background-size: 50%;
}

.collection_04 .header-page-text{
  background-color: var(--secondo_4);
  background-image: url(../img/slide_back_04.png);
  background-size: 50%;
}

.collection_05 .header-page-text{
  background-color: var(--terzo);
  background-image: url(../img/slide_back_05.png);
  background-size: 50%;
}

.collection_06 .header-page-text{
  background-color: var(--terzo_2);
  background-image: url(../img/slide_back_06.png);
  background-size: 50%;
}

.collection_07 .header-page-text{
  background-color: var(--terzo_3);
  background-image: url(../img/slide_back_07.png);
  background-size: 50%;
}

.header_01 .header-page-text{
  background-color: var(--quarto);
  background-image: url(../img/slide_back_08.png);
  background-size: 50%;
}

.header-page-text h2{
  position: relative;
  font-size: 2.75rem;
  line-height: 3.75rem;
  color: var(--primo);
  font-weight: 500;
  font-style: italic;
  text-transform: none;
  margin-bottom: 3.75rem;
  padding: 0;
  z-index: 2
}

.header-page-text h2 span, .header-page-text h2 strong {
  position: relative;
  font-size: 3.75rem;
  line-height: 3.75rem;
  font-weight: 600;
  font-style: normal;
  text-transform:capitalize;
}

.header-page-text h3{
  position: relative;
  color: var(--nero);
  font-size: 2.75rem;
  line-height: 2.75rem;
  font-weight: 500;
  font-style: italic;
  z-index: 2;
}

.header-page-text::before{
  content: "";
  display: block;
  z-index: 1;
  width: calc(100% - 13.75rem);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border: 2px solid var(--bianco);
  aspect-ratio: 1/1;
    // Fallback
    @supports not (aspect-ratio: 1/1) {
    &::before {
      float: left;
      padding-top: 100%;
      content: "";
    }
    &::after {
      display: block;
      content: "";
      clear: both;
    }
  }
}

.header-page::before{
  content: "";
  position: absolute;
  bottom:0;
  left: 0;
  width: 50%;
  height: calc(100% - 194px);
  display: block;
  background-color: var(--grigio);
  z-index: 1;
}

.header-page::after{
  content: "";
  position: absolute;
  bottom:0;
  right: 0;
  width: 50%;
  height: calc(100% - 194px);
  display: block;
  z-index: 1;
}

.header-page.collection_01::after{
  background-color: var(--secondo);
}

.header-page.collection_02::after{
  background-color: var(--secondo_2);
}

.header-page.collection_03::after{
  background-color: var(--secondo_3);
}

.header-page.collection_04::after{
  background-color: var(--secondo_4);
}

.header-page.collection_05::after{
  background-color: var(--terzo);
}

.header-page.collection_06::after{
  background-color: var(--terzo_2);
}

.header-page.collection_07::after{
  background-color: var(--terzo_3);
}

.header-page.header_01::after{
  background-color: var(--quarto);
}

.collection-text{
  position: relative;
  background-color: var(--bianco);
}

.collection-text.back-grey{
  background-color: var(--grigio_light);
}

.collection-text .box-text{
  position: relative;
  padding-top: 3.75rem;
  padding-bottom: 3.75rem;
}

.collection-text .box-text p{
  position: relative;
  margin-bottom: 2rem;
}

.collection-text p:last-child{
  margin-bottom: 0rem;
}

.collection-text p strong{
  font-weight: 500;
  font-style: italic;
}

.collection-text .box-text h4{
  position: relative;
  font-size: 1.50rem;
  line-height: 1.50rem;
  color: var(--primo);
  font-weight: 600;
  margin-bottom: 1.50rem;
}

.collection-text .box-text h4 span{
  font-style: italic;
  color: var(--nero);
  font-weight: 400;
}

.collection-text .box-text h4.quote{
  position: relative;
  font-size: 2.4rem;
  line-height: 3.6rem;
  color: var(--primo);
  font-weight: 600;
  margin-bottom: 1.50rem;
}

.collection-text .box-text h4.quote em{
  line-height: 4.8rem;
  font-weight: 400;
}

.collection-text .box-text h4.quote span{
  font-size: 12rem;
  position: absolute;
  line-height: 12rem;
  color: var(--secondo);
}

.collection-text .box-text h4.quote span.quote_01{
  top:-3rem;
  left: -6rem;
}

.collection-text .box-text h4.quote span.quote_02{
  bottom: 2rem;
  right: 0rem;
}

.collection-text .box-text ul{
  position: relative;
  z-index: auto;
  list-style: none;
  padding-left: 1rem;
}

.collection-text .box-text ul li{
  font-size: 1rem;
  line-height: 1.5rem;
  margin-bottom: 1rem;
}

.collection-text .box-text ul li span{
  color: var(--primo);
  font-style: italic;
  font-weight: 600;
}

.img-text{
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
}

.img-text img{
  position: relative;
  width: 100%;
  height: auto;
}

.catalogo-box-prodotto-collezione{
  position: relative;
  background-color: var(--bianco);
  width: 100%;
  min-height: 460px;
  height:auto !important;
  height: 460px;
  text-align: center;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.catalogo-box-prodotto-collezione::before{
  content: "";
  display: block;
  z-index: 1;
  background-color: var(--trasp);
  position: absolute;
  width: calc(100% - 12.50rem);
  top: 3.125rem;
  left: 6.25rem;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
  aspect-ratio: 1/1;
    // Fallback
    @supports not (aspect-ratio: 1/1) {
    &::before {
      float: left;
      padding-top: 100%;
      content: "";
    }
    &::after {
      display: block;
      content: "";
      clear: both;
    }
  }
}

.catalogo-box-prodotto-collezione:hover::before{
  border: 2px solid var(--bianco);
}

.catalogo-box-prodotto-collezione.prod_01::before{
  border: 2px solid var(--secondo);
}

.catalogo-box-prodotto-collezione.prod_02::before{
  border: 2px solid var(--secondo_2);
}

.catalogo-box-prodotto-collezione.prod_03::before{
  border: 2px solid var(--secondo_3);
}

.catalogo-box-prodotto-collezione.prod_04::before{
  border: 2px solid var(--secondo_4);
}

.catalogo-box-prodotto-collezione.prod_05::before{
  border: 2px solid var(--terzo);
}

.catalogo-box-prodotto-collezione.prod_06::before{
  border: 2px solid var(--terzo_2);
}

.catalogo-box-prodotto-collezione.prod_07::before{
  border: 2px solid var(--terzo_3);
}

.catalogo-box-prodotto-collezione:hover::before{
  border: 2px solid var(--bianco);
}

.catalogo-box-prodotto-collezione.prod_01:hover{
  background-color: var(--secondo);
}

.catalogo-box-prodotto-collezione.prod_02:hover{
  background-color: var(--secondo_2);
}

.catalogo-box-prodotto-collezione.prod_03:hover{
  background-color: var(--secondo_3);
}

.catalogo-box-prodotto-collezione.prod_04:hover{
  background-color: var(--secondo_4);
}

.catalogo-box-prodotto-collezione.prod_05:hover{
  background-color: var(--terzo);
}

.catalogo-box-prodotto-collezione.prod_06:hover{
  background-color: var(--terzo_2);
}

.catalogo-box-prodotto-collezione.prod_07:hover{
  background-color: var(--terzo_3);
}

.catalogo-box-prodotto-collezione .img-frame{
  position: relative;
  z-index: 2;
  display: inline-block;
}

.catalogo-box-prodotto-collezione .img-frame img{
  position: relative;
  width: 75%;
  margin: 0 auto;
}

.catalogo-box-prodotto-collezione.doppia-foto .img-frame img{
  position: relative;
  width: 75%;
  margin: 0 auto;
  opacity: 1;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.catalogo-box-prodotto-collezione .img-frame img.img-alternative{
  position: absolute;
  width: 75%;
  margin: 0 auto;
  top:0;
  left: 12.5%;
  opacity: 0;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.catalogo-box-prodotto-collezione.doppia-foto:hover .img-frame img{
  opacity: 0;
}

.catalogo-box-prodotto-collezione:hover .img-frame img.img-alternative{
  opacity: 1;
}


.catalogo-box-prodotto-collezione h4{
  position: relative;
  z-index: 2;
  font-size: 1rem;
  line-height: 1rem;
  margin-bottom: 1rem;
  font-family: "Montserrat", sans-serif;
  font-weight: 300;
  color: var(--nero);
  opacity: 1;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.catalogo-box-prodotto-collezione h4 span{
  text-transform: uppercase;
}

.catalogo-box-prodotto-collezione .citazione p{
  font-size: 0.9rem;
  line-height: 0.9rem;
  width: 80%;
  margin-left: 10%;
  color: var(--primo);
  font-weight: 500;
  font-style:italic;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.catalogo-box-prodotto-collezione:hover h4,
.catalogo-box-prodotto-collezione:hover .citazione p{
  opacity: 0;
}

.catalogo-box-prodotto-collezione:hover .dida-prodotto{
  opacity: 1;
}

.catalogo-box-prodotto-collezione .dida-prodotto p{
  position: relative;
  font-size: 0.9rem;
  line-height: 1.5;
  color: var(--nero);
  font-weight: 300;
  font-style: italic;
  margin-bottom: 1rem;
}

.catalogo-box-prodotto-collezione .dida-prodotto p{
  position: relative;
  font-size: 0.9rem;
  line-height: 1.5;
  color: var(--nero);
  font-weight: 300;
  font-style: normal;
  margin-bottom: 1rem;
}

.catalogo-box-prodotto-collezione .dida-prodotto p.prezzo{
  position: relative;
  font-size: 1rem;
  line-height: 1.5;
  color: var(--nero);
  font-weight: 300;
  font-style: normal;
  margin-bottom: 1rem;
}

.catalogo-box-prodotto-collezione .dida-prodotto p.prezzo span{
  position: relative;
  font-size: 1.2rem;
  line-height: 1.5;
  color: var(--primo);
  font-weight: 300;
  font-style: normal;
  margin-bottom: 1rem;
}

.catalogo-box-prodotto-collezione .dida-prodotto p.prezzo span.prezzo-senza-sconto{
  position: relative;
  font-size: 0.8rem;
  line-height: 1.5;
  color: var(--grigio-testo);
  font-weight: 300;
  font-style: normal;
  margin-bottom: 1rem;
  text-decoration: line-through;
}

.cta-box-container .cta-mini:link,
.cta-box-container .cta-mini:visited{
  margin-left: 0.5rem!important;
  margin-right: 0.5rem!important;
}

.bread .container {
    position: relative;
    padding-top: 1rem;
    padding-bottom: 1rem;
    border-bottom: 2px solid var(--grigio);
}

.bread .container .row ul{
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: 0.75rem;
  line-height: 1rem;
  color: var(--nero);
  text-transform: uppercase;
}

.bread .container .row ul li{
  position: relative;
  padding-right: 0.5rem;
  margin-right: 0.5rem;
}

.bread .container .row ul li a:link,
.bread .container .row ul li a:visited{
  position: relative;
  color: var(--nero);
}

.bread .container .row ul li::after{
  content: "|";
  display: block;
  font-size: 0.75rem;
  line-height: 1rem;
  color: var(--primo);
  font-weight: 500;
  position: absolute;
  right: -2px;
  top:-2px;
}

.bread .container .row ul li:last-child::after{
  display: none;
}

.bread .container .row ul li a:hover{
  color: var(--primo);
}

.bread .container .row ul li a::before{
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: -0.3rem;
  height: 1px;
  width: 100%;
  background-color: var(--nero);
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.bread .container .row ul li a:hover::before{
  width: 0%;
  background-color: var(--primo);
}

.scheda-prodotto{
  position: relative;
  z-index: auto;
  padding-top: 3.75rem;
  padding-bottom: 3.75rem;
}

.scheda-prodotto .container > .row:first-child{
  margin-bottom: 3rem;
}

.scheda-prodotto h2{
  position: relative;
  font-size: 2.75rem;
  line-height: 3.75rem;
  color: var(--primo);
  font-weight: 500;
  font-style: italic;
  text-transform: none;
  margin-bottom: 3.75rem;
  padding: 0;
  z-index: 2;
}

.scheda-prodotto h2 span{
  position: relative;
  font-size: 3.75rem;
  line-height: 3.75rem;
  font-weight: 600;
  font-style: normal;
  text-transform: capitalize;
}

.scheda-prodotto a.img-gallery{
  position: relative;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: auto;
  width: 100%;
  aspect-ratio: 1/1;
    // Fallback
    @supports not (aspect-ratio: 1/1) {
    &::before {
      float: left;
      padding-top: 100%;
      content: "";
    }
    &::after {
      display: block;
      content: "";
      clear: both;
    }
  }
}

.scheda-prodotto a.img-gallery img{
  position: relative;
  z-index: 2;
  transform: scale(0.9);
  width: 100%;
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.scheda-prodotto a.img-gallery:hover img{
  transform: scale(1);
}

.scheda-prodotto a.img-gallery::before{
  content: "";
    display: block;
    z-index: 1;
    width: calc(100% - 13.75rem);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(1);
    aspect-ratio: 1/1;
      // Fallback
      @supports not (aspect-ratio: 1/1) {
      &::before {
        float: left;
        padding-top: 100%;
        content: "";
      }
      &::after {
        display: block;
        content: "";
        clear: both;
      }
    }
}

.scheda-prodotto.prod_01 a.img-gallery::before,
a.img-gallery::before{
  border: 2px solid var(--secondo);
}

.scheda-prezzo{
  position: relative;
  margin-bottom:2rem;
  font-family: "Montserrat", sans-serif;
  font-size: 1.2rem;
  line-height: 1.8rem;
  font-weight: 500;
  color: var(--primo);
}

.scheda-prezzo span.prezzo-partenza{
  font-size: 1rem;
  font-weight: 300;
  color: var(--grigio-testo);
  text-decoration: line-through;
}

.scheda-prezzo span.prezzo-risparmio{
  font-size: 1rem;
  font-weight: 500;
  color: var(--nero);
}

.scheda-prezzo span.prezzo-note{
  font-size: 0.8rem;
  font-weight: 300;
  color: var(--nero);
}

.scheda-prodotto h4.citazione{
  position: relative;
  font-size: 1.25rem;
  line-height: 1.875rem;
  color: var(--primo);
  font-style: italic;
  font-weight: 500;
  margin-bottom: 2rem;
}

.scheda-prodotto p{
  position: relative;
  margin-bottom: 2rem;
}

.scheda-prodotto p strong {
  font-weight: 500;
  font-style: italic;
}

.scheda-prodotto p a:link,
.scheda-prodotto p a:visited{
  position: relative;
  color: var(--nero);
}

.scheda-prodotto p a:hover{
  color: var(--primo);
}

.scheda-prodotto p a::before{
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: -0.3rem;
  height: 1px;
  width: 100%;
  background-color: var(--nero);
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.scheda-prodotto p a:hover::before{
  width: 0%;
  background-color: var(--primo);
}

.box-incisione{
  position: relative;
  z-index: auto;
  margin-bottom: 2rem;
  padding-bottom: 0rem;
  border-bottom:2px solid var(--grigio);
}

.box-incisione form input{
  margin-bottom: 2rem;
}

.box-incisione form button{
  margin-bottom: 2rem!important;
}

.box-incisione h5{
  position: relative;
  margin-bottom: 1rem;
  font-family: "Montserrat", sans-serif;
  font-size: 1.2rem;
  line-height: 1.8rem;
  font-weight: 500;
  color: var(--primo);
}

.box-incisione input{
  position: relative;
  width: 100%;
  border-radius: 0;
  border: 0;
  border-bottom: 1px solid var(--nero);
  background-color: var(--trasp);
  padding: 4px 0;
}

.box-incisione input:focus {
  border-bottom: 1px solid var(--primo);
  outline: none;
}

.box-incisione button {
    position: relative;
    font-size: 0.625rem;
    line-height: 0.625rem;
    font-weight: 300;
    text-transform: uppercase;
    background-color: var(--trasp);
    border-radius: 0;
    border: 0;
    border-top: 1px solid var(--primo);
    border-bottom: 1px solid var(--primo);
    color: var(--primo);
    margin: 0 !important;
    padding: 0.625rem;
    box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
    -webkit-transition: all 0.5s ease-out;
    -moz-transition: all 0.5s ease-out;
    -o-transition: all 0.5s ease-out;
    transition: all 0.5s ease-out;
}

.box-incisione button:hover{
  color: var(--bianco);
  border-top:1px solid var(--primo);
  border-bottom: 1px solid var(--primo);
  background-color: var(--primo);
}

.box-incisione p{
  margin-top: 0rem;
}

.carrello-scheda input,
.carrello-scheda select {
    position: relative;
    width: 100%;
    border-radius: 0;
    border: 0;
    border-bottom: 1px solid var(--nero);
    background-color: var(--trasp);
    padding: 4px 0;
    margin-bottom: 2rem;
    font-size: 1rem;
    line-height: 1rem;
}

.carrello-scheda button{
  position: relative;
  font-size: 1rem;
  line-height: 1rem;
  font-weight: 300;
  text-transform: uppercase;
  background-color: var(--trasp);
  border-radius: 0;
  border: 0;
  border-top:1px solid var(--primo);
  border-bottom: 1px solid var(--primo);
  color: var(--primo);
  margin: 0 0 2rem 0!important;
  padding: 1rem;
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.carrello-scheda button:hover{
  color: var(--bianco);
  border-top:1px solid var(--primo);
  border-bottom: 1px solid var(--primo);
  background-color: var(--primo);
}

.carrello-scheda a:link,
.carrello-scheda a:visited{
  font-size: 1rem;
  line-height: 1rem;
  display: inline-block;
  position: relative;
  color: var(--nero);
}

.carrello-scheda a:hover{
  color: var(--primo);
}

.carrello-scheda a::before{
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: -0.3rem;
  height: 1px;
  width: 100%;
  background-color: var(--nero);
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.carrello-scheda a:hover::before{
  width: 0%;
  background-color: var(--primo);
}

.lista-desideri,
.confronta{
  margin-bottom: 1rem;
}

.carrello-scheda i{
  font-size: 1rem;
  line-height: 1rem;
  color: var(--primo);
}

.carrello-scheda .link_guide{
  position: relative;
  margin-bottom: 2rem;
  margin-top: 0.563rem;
}

.box-scheda-tecnica{
  position: relative;
  z-index: auto;
  margin-top: 2rem;
  margin-bottom: 2rem;
  padding-bottom: 0rem;
}

.box-scheda-tecnica h5{
  position: relative;
  margin-bottom: 1rem;
  font-family: "Montserrat", sans-serif;
  font-size: 1.2rem;
  line-height: 1.8rem;
  font-weight: 500;
  color: var(--primo);
}

.box-scheda-tecnica table{
  position: relative;
  width: 60%;
  margin: 0;
  padding: 0;
}

.box-scheda-tecnica table tr{
  border-bottom: 1px solid var(--grigio);
}

.box-scheda-tecnica table tr td{
  width: 50%;
  font-size: 1rem;
  line-height: 1rem;
  padding: 1rem 0.5rem;
  color: var(--nero);
  font-weight: 300;
}

.box-scheda-tecnica table tr td:first-child{
  font-weight: 500;
  color: var(--primo);
}

.scheda-prodotto.back-grey{
  background-color: var(--grigio_light);
}

.scheda-prodotto.back-grey .catalogo-box-prodotto-collezione{
  background-color: var(--grigio_light)
}

.scheda-prodotto.back-grey .catalogo-box-prodotto-collezione:hover{
  background-color: var(--secondo)
}

h3.sottotitolo_scheda{
  position: relative;
  color: var(--primo);
  font-size: 2.75rem;
  line-height: 2.75rem;
  font-weight: 500;
  z-index: 2;
  margin-bottom: 2rem;
}

.collection-text .box-contatti h4{
  margin-bottom: 0.5rem;
  padding-left: 2.5rem;
}

.collection-text .box-contatti h4 i{
  position: absolute;
  top:0;
  left: 0;
}

.collection-text .box-contatti p{
  margin-bottom: 2rem;
  padding-left: 2.5rem;
}

a.text-link{
  position: relative;
  color: var(--nero);
}

a.text-link:hover{
  color: var(--primo);
}


a.text-link::before{
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: -0.3rem;
  height: 1px;
  width: 100%;
  background-color: var(--nero);
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

a.text-link:hover::before{
  width: 0%;
  background-color: var(--primo);
}

.contact input {
	background: var(--bianco);
  border:0;
	border-bottom: 1px solid var(--nero);
	border-radius: 0px;
	box-shadow: none;
	color: var(--nero);
	font-size: 1rem;
	font-weight:400;
	height: 70px;
	padding: 2rem;
	width: 100%;
	margin-bottom: 2rem;
	font-family: "Montserrat", sans-serif;
}
.contact textarea {
	background: var(--bianco);
  border: 0;
	border-bottom: 1px solid var(--nero);
	border-radius: 0px;
	box-shadow: none;
  color: var(--nero);
	font-size: 1rem;
	font-weight:400;
  margin-bottom: 2rem;
	padding: 2rem;
	width: 100%;
  font-family: "Montserrat", sans-serif;
}
.contact input:focus {
  border: 0;
	border-bottom: 1px solid var(--primo);
  box-shadow: none;
	color: var(--nero);
	background: var(--bianco);
  outline: 0 none;
}
.contact textarea:focus {
  border: 0;
  border-bottom: 1px solid var(--primo);
  box-shadow: none;
	color: var(--nero);
	background: var(--bianco);
  outline: 0 none;
}

.contact button{
  position: relative;
  font-size: 1rem;
  line-height: 1rem;
  font-weight: 300;
  text-transform: uppercase;
  background-color: var(--trasp);
  border-radius: 0;
  border: 0;
  border-top:1px solid var(--primo);
  border-bottom: 1px solid var(--primo);
  color: var(--primo);
  margin: 0!important;
  padding: 1rem;
  box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.contact button:hover{
  border: 0;
  color: var(--bianco);
  border-top:1px solid var(--primo);
  border-bottom: 1px solid var(--primo);
  background-color: var(--primo);
}

.scheda-prodotto h4 strong {
    display: block;
    position: relative;
    font-size: 1.25rem;
    line-height: 1.875rem;
    color: var(--primo);
    font-style: italic;
    font-weight: 500;
    margin-bottom: 2rem;
}

.ap-galleria .ap-miniature {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 15px;
}

.ap-galleria .ap-miniatura {
	width: 80px;
	padding: 0;
	border: 1px solid transparent;
	background: none;
	cursor: pointer;
	opacity: .6;
	transition: opacity .2s, border-color .2s;
}

.ap-galleria .ap-miniatura:hover,
.ap-galleria .ap-miniatura.is-active {
	opacity: 1;
	border-color: #000;
}

.ap-galleria .ap-miniatura img {
	display: block;
	width: 100%;
	height: auto;
}

p.ap-incisione-stato {
    margin-top: -20px;
    color: var(--primo);
}


/* MAPPA */

.mappa{
  position:relative;
  margin: 0;
  padding: 0;
}

#map{
  display: block;
  position: relative;
  width: 100%;
  height: 600px;
}

.leaflet-tile-pane {
  -webkit-filter: grayscale(100%)!important;
  filter: grayscale(100%)!important;
}

/* FINE MAPPA */


/* EVENTI */

.eventi-home_annunci{
  position:relative;
  z-index:auto;
  padding-top:2rem;
  padding-bottom:2rem;
}

.eventi-home_box h4 {
    position: relative;
    font-size: 1.25rem;
    line-height: 1.25rem;
    color: var(--primo);
    font-weight: 600;
    margin-top: 2rem;
    margin-bottom: 1.25rem;
}

.eventi-home_box ul{
  position: relative;
  z-index: auto;
  margin: 0;
  padding: 0;
  list-style: none;
}

.eventi-home_box ul li{
  position: relative;
  z-index: auto;
  margin-bottom: 0.5rem;
}

.eventi-home_box ul li i{
  color: var(--primo);
  margin-right: 0.5rem;
}

/* FINE EVENTI */

/* AVVISI */

.ap-avvisi {
    margin-top: 50px;
}

/* CARRELLO */

.header-page-generic {
  height: 400px;
  overflow: hidden;
}

.header-page-generic .header-page-img, .header-page-generic .header-page-text {
  overflow: hidden;
}

.header-page-generic .header-page-img img {
    position: relative;
    width: 100%;
    top: -38%;
}

.header-page-generic .header-page-text::before {
  content: none;
}

.header-page-generic .header-page-text {
    justify-content: flex-start;
}


.header-page-generic .header-page-text h2 {
    margin-top: 80px;
}

.wc-block-cart-item__wrap a {
  color: var(--primo);
}

.wc-block-cart-item__wrap a {
    color: var(--primo);
    font-size: 1.1em !important;
}

span.price.wc-block-components-product-price, .wc-block-components-product-details.wc-block-components-product-details {
    font-size: 1.2em;
}

span.wc-block-components-product-details__value {
    font-weight: 500;
    color: var(--primo);
}

.wc-block-cart-item__total-price-and-sale-badge-wrapper {
    font-size: 1.1em;
}

.wc-block-components-product-badge.wc-block-components-sale-badge {
    font-size: 0.9em;
}

:root :where(.wp-element-button, .wp-block-button__link) {
 position: relative;
    font-size: 1rem;
    line-height: 1rem;
    font-weight: 300;
    text-transform: uppercase;
    background-color: var(--trasp);
    border-radius: 0;
    border: 0;
    border-top: 1px solid var(--primo);
    border-bottom: 1px solid var(--primo);
    color: var(--primo);
    margin: 0 0 2rem 0 !important;
    padding: 1rem;
    box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
    -webkit-transition: all 0.5s ease-out;
    -moz-transition: all 0.5s ease-out;
    -o-transition: all 0.5s ease-out;
    transition: all 0.5s ease-out;
}

:root :where(.wp-element-button, .wp-block-button__link):hover {
	background-color: var(--primo);
	color: var(--bianco);
}

@media screen and (min-width: 768px) {
  .wc-block-checkout__actions_row.wc-block-checkout__actions_row--justify-flex-end {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
}


h2.woocommerce-notice.woocommerce-notice--success.woocommerce-thankyou-order-received {
  color: var(--primo);
}

.woocommerce ul.order_details {
    margin: 0 0 3em;
    list-style: none;
    margin-top: 30px;
}

.woocommerce-bacs-bank-details h2,
.woocommerce-bacs-bank-details h3,
h2.woocommerce-order-details__title,
.woocommerce .woocommerce-customer-details .woocommerce-column__title,
.wc-block-order-confirmation-additional-fields-wrapper h2,
.woocommerce-Address-title h2 {
    color: var(--primo);
    font-size: 1.2em;
}

table.woocommerce-table.woocommerce-table--order-details.shop_table.order_details {
    margin-top: 30px;
}

.woocommerce table.shop_table {
    border: 1px dashed var(--secondo);
}

.woocommerce table.shop_table th {
  color: var(--primo);
  font-weight: 500;
}

.woocommerce table.shop_table tbody th, .woocommerce table.shop_table tfoot td, .woocommerce table.shop_table tfoot th {
  color: var(--nero);
  font-weight: 500;
  border-top: 1px dashed var(--secondo);
}

.woocommerce ul.order_details li {
    border-right: 1px dashed var(--secondo);
}

.woocommerce table.shop_table td {
    border-top: 1px dashed var(--secondo);
}

.woocommerce .wc-block-order-confirmation-additional-fields-wrapper .wc-block-components-additional-fields-list dt {
    font-weight: 500;
}

.woocommerce-column--billing-address address,
.woocommerce-column--shipping-address address {
  margin-top: 20px;
}

.woocommerce .wc-block-order-confirmation-additional-fields-wrapper .wc-block-components-additional-fields-list {
    margin-top: 20px;
    border: 1px dashed var(--secondo);
}

.woocommerce-MyAccount-navigation, .woocommerce-MyAccount-content {
    display: inline-table;
    margin-top: 50px;
}

.woocommerce-MyAccount-navigation {
    width: 24%;
    vertical-align: top;
}

.woocommerce-MyAccount-content {
    width: 75%;
    vertical-align: top;
}

.woocommerce-MyAccount-navigation ul,
.woocommerce-MyAccount-navigation ul li {
 list-style-type: none;
}

.woocommerce-MyAccount-navigation ul li a {
  display: block;
  text-align: center;
  width: 180px;
  text-align: center;
  padding-top: 7px;
  padding-bottom: 7px;
  /* border-top: 1px solid var(--primo);
  border-bottom: 1px solid var(--primo); */
  border: 1px solid var(--primo);
  margin-bottom: 30px;
  text-transform: uppercase;
  font-size: 0.8em;
}

.woocommerce-MyAccount-navigation ul li a:hover {
  background-color: var(--primo);
  color: var(--bianco);
}

.woocommerce table.my_account_orders .button {
    background-color: var(--trasp);
    border-top: 1px solid var(--primo);
    border-bottom: 1px solid var(--primo);
    color: var(--primo);
    text-transform: uppercase;
    font-size: 0.8em;
    padding-top: 5px;
    padding-bottom: 5px;
    border-radius: 0px;
    margin-top: 5px;
    margin-bottom: 5px;
    font-weight: 500;
}
.woocommerce table.my_account_orders .button:hover {
    background-color: var(--primo);
    color: var(--bianco);
}

.woocommerce-info {
    border-top-color: var(--terzo);
}

.woocommerce-info::before {
    color: var(--terzo);
    background-color: var(--grigio_light);
}

.woocommerce .woocommerce-error .button,
.woocommerce .woocommerce-info .button,
.woocommerce .woocommerce-message .button,
.woocommerce-page .woocommerce-error .button,
.woocommerce-page .woocommerce-info .button,
.woocommerce-page .woocommerce-message .button,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button {
    background-color: var(--trasp);
    border-top: 1px solid var(--primo);
    border-bottom: 1px solid var(--primo);
    color: var(--primo);
    text-transform: uppercase;
    font-size: 0.8em;
    padding-top: 5px;
    padding-bottom: 5px;
    border-radius: 0px;
    margin-top: 5px;
    margin-bottom: 5px;
    font-weight: 500;
}

:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button {
  padding-top: 10px;
  padding-bottom: 10px;
  margin-top: 25px;
}



.woocommerce .woocommerce-error .button:hover,
.woocommerce .woocommerce-info .button:hover,
.woocommerce .woocommerce-message .button:hover,
.woocommerce-page .woocommerce-error .button:hover,
.woocommerce-page .woocommerce-info .button:hover,
.woocommerce-page .woocommerce-message .button:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button:hover,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button:hover {
    background-color: var(--primo);
    color: var(--bianco);
}

header.woocommerce-Address-title.title {
    margin-top: 25px;
    margin-bottom: 15px;
}

.woocommerce form .form-row .input-text, .woocommerce form .form-row select {
    border: 1px solid var(--terzo);
}

.woocommerce-MyAccount-content fieldset legend {
    font-size: 1.2em;
    color: var(--primo);
    margin-top: 30px;
}

#customer_login {
    margin-top: 30px;
}

button.woocommerce-button.button.woocommerce-form-login__submit {
    margin-top: 0px;
}

#customer_login h2 {
    color: var(--primo);
    font-size: 1.5em;
}

.wp-block-woocommerce-empty-cart-block h3 {
    margin-top: 50px;
    font-size: 1.5em;
    color: var(--primo);
}


@media screen and (max-width: 768px) {
 .woocommerce form .form-row-first, .woocommerce form .form-row-last,
 .woocommerce-page form .form-row-first, .woocommerce-page form .form-row-last
  {
      width: 100%;
      float: none;
      padding-right: 0;
      padding-left: 0;
    }
}


@media screen and (max-width: 1024px) {
  .woocommerce-MyAccount-content {
    width: calc(72% - 20px);
    padding: 10px;
    padding-top: 0px;
    margin-left: 20px;
  }
}

@media screen and (max-width: 600px) {
  .woocommerce-MyAccount-navigation {
    width: 100%;
    margin-bottom: 20px;
    margin-top: 0px;
    display: flex;
    flex-wrap: wrap;
  }

    .woocommerce-MyAccount-navigation ul, .woocommerce-MyAccount-navigation ul li {
        list-style-type: none;
        display: inline-flex;
        flex-wrap: wrap;
        justify-content: center;
    }

    .woocommerce-MyAccount-navigation ul li a {
    display: inline;
    text-align: center;
    width: 155px;
    text-align: center;
    padding-top: 7px;
    padding-bottom: 7px;
    border: 1px solid var(--primo);
    margin-bottom: 30px;
    text-transform: uppercase;
    font-size: 1.0em;
    margin: 10px;
}

    .woocommerce-MyAccount-content {
        width:  100% !important;
        padding: 10px;
        padding-top: 0px;
        margin-left: 0px;
        margin-top: 10px;
    }

    .woocommerce .woocommerce-error .button, .woocommerce .woocommerce-info .button, .woocommerce .woocommerce-message .button, .woocommerce-page .woocommerce-error .button, .woocommerce-page .woocommerce-info .button, .woocommerce-page .woocommerce-message .button {
    float: unset;
}

}


/* WISHLIST */

.tinv-wishlist.woocommerce.tinv-wishlist-clear {
    margin-top: 50px;
}

a.tinvwl_add_to_wishlist_button.tinvwl-position-after {
    margin-top: 1px;
    padding: 1rem;
    font-size: 1rem;
    line-height: 1rem;
    text-transform: uppercase;
    /*margin-left: 10px;*/
    border-top: 1px solid var(--primo);
    border-bottom: 1px solid var(--primo);
    color: var(--primo);
    background-color: var(--trasp);
    text-align: center;
    -webkit-transition: all 0.5s ease-out;
    -moz-transition: all 0.5s ease-out;
    -o-transition: all 0.5s ease-out;
    transition: all 0.5s ease-out;
}

a.tinvwl_add_to_wishlist_button.tinvwl-position-after::before {
  background-color: transparent!important;
}

a.tinvwl_add_to_wishlist_button.tinvwl-position-after:hover {
    background-color: var(--primo);
    color: var(--bianco);
}

.tinv-header h2 {
  color: var(--primo);
}

.tinvwl-input-group-btn button, .tinvwl-to-right button {
   margin-top: 0px!important;
}


/* Prodotto gia' in wishlist: niente pulsante. */
a.tinvwl_add_to_wishlist_button.tinvwl-position-after.tinvwl-product-in-list {
	display: none !important;
}


.page-content {
  padding-top: 50px;
  padding-bottom: 50px;
}

.page-content h2, .page-content h3 {
  color: var(--primo);
  margin-bottom: 20px;
}

.tinv-wishlist .product-action .button {
    width: 100%;
    margin-top: -25px;
}

.tinv-wishlist tfoot .tinvwl-to-left+.tinvwl-to-right {
    margin-top: 0px;
}

/* RECESSO */

.ayudawp-euw-wrapper {
    max-width: 100%;
}

.ayudawp-euw-guarantee__notice img {
    max-width: 540px;
    margin-left: auto;
    margin-right: auto;
}

.ayudawp-euw-guarantee__notice {
    max-width: 640px;
    max-width: 100%;
}

@media screen and (min-width: 821px) {

 .ayudawp-euw-field {
    display: inline-table !important;
    width: calc(50% - 0.65rem);
 }

}

.ayudawp-euw-wrapper .ayudawp-euw-form .ayudawp-euw-button {
   border-top: 1px solid var(--primo);
   border-bottom: 1px solid var(--primo);
   color: var(--primo);
   background-color: var(--trasp);
   text-transform: uppercase;
   font-size: 0.8em;
   padding-top: 10px;
   padding-bottom: 10px;
   font-weight: 500;
   border-radius: 0px;
}

.ayudawp-euw-wrapper .ayudawp-euw-form .ayudawp-euw-button:hover {
    background-color: var(--primo);
    color: var(--bianco);
}

/* Contatti */
.wpcf7-acceptance .wpcf7-list-item label {
    display: flex;
    justify-content: flex-start;
    flex-direction: row;
}

.wpcf7-acceptance .wpcf7-list-item label input[type="checkbox"] {
    width: 20px;
    height: 20px;
    margin-right: 10px;
}

input.wpcf7-form-control.wpcf7-submit.has-spinner.contact_btn {
   border: 0px;
   border-top: 1px solid var(--primo);
   border-bottom: 1px solid var(--primo);
   color: var(--primo);
   background-color: var(--trasp);
   text-transform: uppercase;
   font-size: 0.8em;
   padding-top: 8px;
   padding-bottom: 8px;
   font-weight: 500;
   border-radius: 0px;
   width: 200px;
}

input.wpcf7-form-control.wpcf7-submit.has-spinner.contact_btn:hover {
    background-color: var(--primo);
    color: var(--bianco);
}

/* STILE PER MOBILE */

@media (min-width: 320px) {
}

@media (min-width: 576px) {
}

@media (min-width: 768px) {
}

@media (min-width: 992px) {
}

@media (min-width: 1200px) {
}

@media only screen and (max-height: 720px) {
}

@media only screen and (min-width: 1920px) {
}

@media only screen and (min-width: 1720px) {
}

@media only screen and (max-width: 1720px) {
}

@media only screen and (max-width: 1680px) {
}

@media only screen and (max-width: 1500px) {
}

@media only screen and (max-width: 1400px) {
  .hero{
    padding-top: 178px;
  }
  .header-page{
    padding-top: 178px;
  }
  .header-page::after {
    height: calc(100% - 178px);
  }
  .header-page::before{
    height: calc(100% - 178px);
  }
  .site-logo{
    width: 8.75rem;
    height: 4.5rem;
  }
  .sticky-wrapper .site-navbar .site-menu > li > a {
    font-size: 0.7rem;
    line-height: 0.7rem;
  }
  .user-shop li a:link,
  .user-shop li a:visited{
    font-size: 0.7rem;
    line-height: 0.7rem;
  }

  .user-shop li i{
    font-size: 1rem;
    line-height: 1rem;
  }

  .user-shop li form input{
    font-size: 0.7rem;
    line-height: 0.7rem;
  }
  .user-shop li form input::placeholder{
    font-size: 0.7rem;
    line-height: 0.7rem;
  }
  .pre-header ul.lista-contatti li a:link,
  .pre-header ul.lista-contatti li a:visited{
    font-size: 0.7rem;
    line-height: 1rem;
  }
}

@media only screen and (max-width: 1300px) {
}

@media only screen and (max-width: 1280px) {
}

@media only screen and (max-width: 1239px) {
}

@media only screen and (max-width: 1199px) {
  body {
    font-size: 0.8rem;
    line-height: 1.2rem;
  }
  .menu-container::before{
    display: none;
  }
  .site-logo{
    width: 7.5rem;
    height: 3.875rem;
  }
  .user-shop{
    justify-content: center;
    align-items: center;
  }
  .hero-text h2{
    font-size: 2rem;
    line-height: 2.50rem;
    margin-bottom: 2.50rem;
  }

  .hero-text h2 span, .hero-text h2 strong{
    font-size: 2.50rem;
    line-height: 2.50rem;
  }

  .hero-text p{
    width: 80%;
    margin: 0 10% 2.50rem 10%;
    font-size: 0.8rem;
    line-height: 1.2rem;
  }

  .hero-text a.cta:link,
  .hero-text a.cta:visited{
    font-size: 0.8rem;
    line-height: 0.8rem;
    padding: 0.8rem;
  }

  a.cta:link,
  a.cta:visited{
    font-size: 0.8rem;
    line-height: 0.8rem;
    padding: 0.8rem;
  }

  .col-title h3{
    font-size: 2rem;
    line-height: 2.50rem;
    margin-bottom: 2.50rem;
  }

  .col-title h3 span, .col-title h3 strong{
    font-size: 2.50rem;
    line-height: 2.50rem;
  }

  .col-title p{
    font-size: 0.8rem;
    line-height: 1.2rem;
  }
  .catalogo-box-prodotto h4{
    font-size: 0.8rem;
    line-height: 0.8rem;
  }
  .catalogo-box-prodotto .dida-prodotto p{
    font-size: 0.8rem;
    line-height: 1.4rem;
    margin-bottom: 0.8rem;
  }
  .evidenza-box-prodotto h4{
    font-size: 0.8rem;
    line-height: 0.8rem;
  }

  .evidenza-box-prodotto .dida-prodotto p{
    font-size: 0.8rem;
    line-height: 1.4rem;
    margin-bottom: 0.8rem;
  }

  ul.contatti-footer li,
  ul.contatti-footer li a:link,
  ul.contatti-footer li a:visited{
    font-size: 0.8rem;
    line-height: 0.8rem;
  }

  footer h5{
    font-size: 0.8rem;
    line-height: 0.8rem;
  }

  footer h6{
    font-size: 1rem;
    line-height: 1rem;
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
  }

  .hero-img::before{
    height:calc(100% - 14rem);
  }

  .header-page-text h2{
    font-size: 2rem;
    line-height: 2.50rem;
    margin-bottom: 2.50rem;
  }

  .header-page-text h2 span, .header-page-text h2 strong{
    font-size: 2.50rem;
    line-height: 2.50rem;
  }
  .header-page-text h3{
    font-size: 2rem;
    line-height: 2rem;
  }

  .collection-text .box-text h4.quote{
    font-size: 2rem;
    line-height: 3rem;
    margin-bottom: 1rem;
  }

  .collection-text .box-text h4.quote em{
    line-height: 4rem;
  }

  .collection-text .box-text h4.quote span{
    font-size: 8rem;
    line-height: 8rem;
  }

  .collection-text .box-text h4.quote span.quote_01{
    top:-1rem;
    left: -4rem;
  }

  .collection-text .box-text h4.quote span.quote_02{
    bottom: 3rem;
    right: 1rem;
  }
  .collection-text .box-text h4{
    font-size: 1.25rem;
    line-height: 1.25rem;
    margin-bottom: 1.25rem;
  }

  .collection-text .box-text ul li{
    font-size: 0.8rem;
    line-height: 1.2rem;
    margin-bottom: 0.8rem;
  }
  .contact input {
  	font-size: 0.8rem;
  	height: 60px;
  	padding: 1.5rem;
  	margin-bottom: 1.5rem;
  }
  .contact textarea {;
  	font-size: 0.8rem;
    margin-bottom: 1.5rem;
  	padding: 1rem;
  }

  .contact button{
    font-size: 0.8rem;
    line-height: 0.8rem;
    padding: 0.8rem;
  }

  .scheda-prodotto h2{
    font-size: 2rem;
    line-height: 3rem;
    margin-bottom: 3rem;
  }

  h3.sottotitolo_scheda{
    font-size: 2rem;
    line-height: 2rem;
    margin-bottom: 2rem;
  }

  .carrello-scheda button{
    font-size: 0.8rem;
    line-height: 0.8rem;
    padding: 10px;
  }

  a.tinvwl_add_to_wishlist_button.tinvwl-position-after {
    font-size: 0.8rem;
    line-height: 0.8rem;
    padding: 10px;
  }

  .scheda-prezzo{
    font-size: 1.1rem;
    line-height: 1.5rem;
  }

  .scheda-prezzo span.prezzo-partenza{
    font-size: 0.8rem;
  }

  .scheda-prezzo span.prezzo-risparmio{
    font-size: 0.8rem;
  }

  .scheda-prezzo span.prezzo-note{
    font-size: 0.7rem;
  }
  .scheda-prodotto h4 strong {
      font-size: 1.1rem;
      line-height: 1.5rem;
  }

  .box-incisione h5{
    font-size: 1.1rem;
    line-height: 1.5rem;
  }
  .box-scheda-tecnica table tr td{
    font-size: 0.9rem;
    line-height: 0.9rem;
  }

  .carrello-scheda .link_guide{
    font-size: 0.9rem!important;
    line-height: 0.9rem!important;
  }

  .carrello-scheda input,
  .carrello-scheda select {
      font-size: 0.9rem;
      line-height: 0.9rem;
  }

  .catalogo-box-prodotto-collezione h4{
    font-size: 0.8rem;
    line-height: 0.8rem;
  }

  .catalogo-box-prodotto-collezione .citazione p{
    font-size: 0.8rem;
    line-height: 0.8rem;
  }

  .catalogo-box-prodotto-collezione .dida-prodotto p.prezzo{
    font-size: 0.8rem;
  }

  .catalogo-box-prodotto-collezione .dida-prodotto p.prezzo span{
    font-size: 1rem;
  }

  .catalogo-box-prodotto-collezione .dida-prodotto p.prezzo span.prezzo-senza-sconto{
    font-size: 0.7rem;
  }
}

@media only screen and (max-width: 1043px) {
}

@media only screen and (max-height: 910px) {
}

@media only screen and (max-width: 991px) {
  .site-logo{
    width: 6.25rem;
    height: 3.188rem;
  }

  .pre-header ul.lista-contatti li:first-child{
    display: none;
  }

  .pre-header ul.lista-contatti li a span{
    display: none;
  }
  .user-shop li a span.label_header{
    display: none;
  }
  .user-shop li a:link,
  .user-shop li a:visited{
    font-size: 1rem;
    line-height: 1rem;
  }
  .hero-img::before{
    height:calc(100% - 20rem);
  }

  .col-title{
    aspect-ratio: 4/3;
      // Fallback
      @supports not (aspect-ratio: 4/3) {
      &::before {
        float: left;
        padding-top: 75%;
        content: "";
      }
      &::after {
        display: block;
        content: "";
        clear: both;
      }
    }
  }

  .col-img-dx{
    position: absolute;
    top:auto;
    right: auto;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 20rem;
  }

  .col-img-sx{
    position: absolute;
    top:auto;
    right: auto;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 20rem;
  }

  .catalogo-home,
  .evidenza-home,
  .eventi-home{
    padding-bottom: 20rem;
  }

  .img-text img{
    width: auto;
    max-height: 14rem;
    margin-top: 2rem;
  }
}

@media only screen and (max-width: 820px) {

  .woocommerce ul.order_details li {
    margin-bottom: 20px;
  }


}

@media only screen and (max-width: 768px) {
}

@media only screen and (max-width: 767px) {
  body {
    font-size: 0.7rem;
    line-height: 1.1rem;
  }

  .col-title p{
    font-size: 0.7rem;
    line-height: 1.1rem;
  }
  .site-logo{
    width: 5rem;
    height: 2.563rem;
  }
  .user-shop li a:link,
  .user-shop li a:visited{
    font-size: 0.7rem;
    line-height: 0.7rem;
  }
  .site-mobile-menu {
    width: 100%;
  }
  .site-mobile-menu .site-nav-wrap > li > a {
    padding-left: 1rem;
    font-size: 0.8rem;
  }
  .site-mobile-menu .site-nav-wrap > li > ul > li > a {
    padding-left: 2rem;
    font-size: 0.7rem;
  }

  .slider-hero{
    height: auto;
  }

  .slider-hero .owl-stage-outer{
    height: auto;
  }

  .slider-hero .owl-stage-outer .owl-item{
    height: auto;
  }

  .slider-hero .owl-stage-outer .owl-item .item{
    height: auto;
  }

  .slider-hero .owl-stage-outer .owl-item .item::before{
    width: 100%;
  }

  .hero-img{
    height: 320px;
  }

  .hero-img img{
    position: relative;
    width: auto!important;
    height: 100%!important;
    margin: 0 auto 0 auto;
    z-index: 2;
  }

  .hero-img::before{
    height: 80%;
  }

  .hero-text{
    height: 320px;
  }

  .hero-text h2{
    font-size: 1.8rem;
    line-height: 2rem;
    margin-bottom: 1rem;
  }

  .hero-text h2 span, .hero-text h2 strong{
    font-size: 2rem;
    line-height: 2rem;
  }
    .hero-text p{
      width: 90%;
      margin: 0 5% 1rem 5%;
      font-size: 0.7rem;
      line-height: 1.1rem;
    }

    .hero-text a.cta:link,
    .hero-text a.cta:visited{
      font-size: 0.7rem;
      line-height: 0.7rem;
      padding: 0.7rem;
    }

    a.cta:link,
    a.cta:visited{
      font-size: 0.7rem;
      line-height: 0.7rem;
      padding: 0.7rem;
    }

    .col-title h3{
      font-size: 1.8rem;
      line-height: 2rem;
      margin-bottom: 1rem;
    }
    .col-title h3 span, .col-title h3 strong {
      font-size: 2rem;
      line-height: 2rem;
    }
    .col-title::before{
      height: 80%;
    }
    .dida-prodotto{
      position: relative;
      bottom:auto;
      left: auto;
      opacity: 1;
      padding: 1rem 1rem 2rem 1rem;
    }
    .catalogo-box-prodotto:hover h4 {
      opacity: 1;
    }
    .evidenza-box-prodotto:hover h4 {
    opacity: 1;
    }

    .header-page-text::before{
      width:auto;
      height: 80%;
    }
    .header-page-text h2{
      font-size: 1.8rem;
      line-height: 2rem;
      margin-bottom: 1rem;
    }

    .header-page-text h2 span, .header-page-text h2 strong{
      font-size: 2rem;
      line-height: 2rem;
    }
    .header-page-text h3{
      font-size: 1.8rem;
      line-height: 1.8rem;
    }
    .header-page-text{
      padding-top: 6rem;
      padding-bottom:6rem;
    }

    .header-page::before{
      width: 100%;
    }
    .header-page::after{
      display: none;
    }

    .bread .container .row ul{
      font-size: 0.6rem;
      line-height: 0.8rem;
    }

    .catalogo-box-prodotto-collezione:hover h4,
    .catalogo-box-prodotto-collezione:hover p.citazione,
    .catalogo-box-prodotto-collezione:hover .citazione p{
      opacity: 1;
    }
    .collection-text .box-text h4.quote{
      font-size: 1.6rem;
      line-height: 2.4rem;
    }

    .collection-text .box-text h4.quote em{
      line-height: 3rem;
    }

    .collection-text .box-text h4.quote span{
      font-size: 6rem;
      line-height: 6rem;
    }
    .collection-text .box-text h4{
      font-size: 1rem;
      line-height: 1rem;
      margin-bottom: 1rem;
    }
    .collection-text .box-text ul li{
      font-size: 0.7rem;
      line-height: 1.1rem;
      margin-bottom: 0.7rem;
    }
    .contact button{
      font-size: 0.7rem;
      line-height: 0.7rem;
      padding: 0.7rem;
    }
    .scheda-prodotto h2{
      font-size: 1.8rem;
      line-height: 2.4rem;
      margin-bottom: 2.4rem;
    }
    h3.sottotitolo_scheda{
      font-size: 1.8rem;
      line-height: 1.8rem;
      margin-bottom: 1.8rem;
    }

    .scheda-prezzo{
      font-size: 1rem;
      line-height: 1.4rem;
    }

    .scheda-prezzo span.prezzo-partenza{
      font-size: 0.7rem;
    }

    .scheda-prezzo span.prezzo-risparmio{
      font-size: 0.7rem;
    }

    .scheda-prezzo span.prezzo-note{
      font-size: 0.6rem;
    }

    .scheda-prodotto h4 strong {
        font-size: 1rem;
        line-height: 1.5rem;
    }

    .box-incisione h5{
      font-size: 1rem;
      line-height: 1.5rem;
    }

    .box-scheda-tecnica table tr td{
      font-size: 0.8rem;
      line-height: 0.8rem;
    }

    .carrello-scheda .link_guide{
      font-size: 0.8rem!important;
      line-height: 0.8rem!important;
    }

    .carrello-scheda input,
    .carrello-scheda select {
        font-size: 0.8rem;
        line-height: 0.8rem;
    }
}


@media only screen and (max-width: 620px) {
  .collection-text .box-text h4.quote span.quote_01{
    top:-3rem;
    left: 0rem;
  }

  .collection-text .box-text h4.quote span.quote_02{
    bottom: 0rem;
    right: 0rem;
  }

  footer .container {
    padding-top: 3.5rem;
    padding-bottom: 2.375rem;
  }

  .woocommerce ul.order_details {
    display: flex;
    flex-wrap: wrap;
  }

  .woocommerce ul.order_details li {
    width: 45%;
  }

  .woocommerce-column.woocommerce-column--1.woocommerce-column--billing-address.col-1 {
    margin-bottom: 25px;
  }

  footer {
    margin-top: 0rem;
  }

  .collection-text .box-text {
    padding-top: 1.75rem;
    padding-bottom: 1.75rem;
  }

}

@media only screen and (max-width: 575px) {
  /*.site-logo{
    width: 3.75rem;
    height: 1.938rem;
  }*/
  .user-shop li {
    position: relative;
    padding: 0 0.4rem;
}
  .user-shop li.whish-list{
    display: none;
  }
  .user-shop li form {
    width: 50px;
  }
  .hero-img{
    height: 200px;
  }

  .hero-text{
    height: 200px;
  }

  .scheda-prodotto {
    padding-top: 1.75rem;
    padding-bottom: 1.75rem;
  }

}

@media only screen and (max-width: 559px) {
  .col-img-dx img{
    position: relative;
    width: auto;
    height: 100%;
  }

  .col-img-sx img{
    position: relative;
    width: auto;
    height: 100%;
  }
}

@media only screen and (max-width: 479px) {
}

@media only screen and (min-device-width: 320px) and (max-device-width: 480px) and (orientation: landscape) {

}

@media only screen
  and (min-device-width: 375px)
  and (max-device-width: 812px)
  and (orientation: landscape) {
}

/* FINE STILI PER MOBILE */

form.ap-incisione-form button {
    font-size: 0.9em;
}

.ap-ciondolo-immagine img {
    width: 100%;
}



/*
 * Carrello (blocco WooCommerce) su mobile:
 * immagine e dettagli affiancati, totale su una riga a tutta larghezza sotto.
 */
@media (max-width: 767.98px) {

	body .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row {
		display: grid;
		grid-template-columns: 80px minmax(0, 1fr);
		column-gap: 16px;
		row-gap: 12px;
	}

	body .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image {
		grid-column: 1;
		grid-row: 1;
		padding: 0;
	}

	body .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__product {
		grid-column: 2;
		grid-row: 1;
		padding: 0;
	}

	body .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total {
		grid-column: 1 / -1; /* occupa tutta la riga */
		grid-row: 2;
		padding: 0;
		text-align: right;
	}

	body .wc-block-cart table.wc-block-cart-items .wc-block-cart-item__total-price-and-sale-badge-wrapper {
		align-items: flex-end;
	}


	body .wc-block-components-order-summary .wc-block-components-order-summary-item {
		flex-wrap: wrap;
		row-gap: 12px;
	}

	body .wc-block-components-order-summary .wc-block-components-order-summary-item__description {
		flex: 1 1 0;
		min-width: 0;
	}

	body .wc-block-components-order-summary .wc-block-components-order-summary-item__total-price {
		flex: 0 0 100%; /* va a capo e occupa tutta la riga */
		margin-left: 0;
		padding-left: 0;
		text-align: right;
	}

	body .wc-block-components-order-summary .wc-block-cart-item__total-price-and-sale-badge-wrapper {
		align-items: flex-end;
	}


}

/*
 * Wishlist (TI WooCommerce Wishlist) - tablet, da 821px in giu'.
 * Ogni prodotto e' una scheda su tre righe con tutti i campi visibili.
 * Il CSS per cellulare verra' aggiunto dopo, in una media query separata.
 */
@media (max-width: 821px) {

	/* La tabella smette di comportarsi da tabella */
	html body table.tinvwl-table-manage-list,
	html body table.tinvwl-table-manage-list tbody,
	html body table.tinvwl-table-manage-list tfoot,
	html body table.tinvwl-table-manage-list tfoot tr {
		display: block !important;
		width: 100% !important;
	}

	html body table.tinvwl-table-manage-list thead {
		display: none !important;
	}

	/* Riga prodotto */
	html body table.tinvwl-table-manage-list tbody tr.wishlist_item {
		display: grid !important;
		grid-template-columns: 24px 28px 100px minmax(0, 1fr) minmax(0, 1fr);
		grid-template-areas:
			"cb remove thumb name   price"
			"cb remove thumb date   stock"
			"cb remove thumb action action";
		column-gap: 16px;
		row-gap: 10px;
		align-items: center;
		padding: 16px 0;
		border-bottom: 1px solid #e5e5e5;
	}

	/* Celle: tutte visibili, senza larghezze o allineamenti del plugin */
	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td {
		display: block !important;
		width: auto !important;
		min-width: 0;
		float: none !important;
		padding: 0 !important;
		border: 0 !important;
		text-align: left !important;
	}

	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-cb        { grid-area: cb; }
	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-remove    { grid-area: remove; }
	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-thumbnail { grid-area: thumb; }
	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-name      { grid-area: name; font-weight: 600; }
	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-price     { grid-area: price; }
	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-date      { grid-area: date; }
	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-stock     { grid-area: stock; }
	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-action    { grid-area: action; }

	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-thumbnail img {
		display: block;
		width: 100px;
		max-width: none;
		height: auto;
	}

	/* Etichette al posto dell'intestazione nascosta */
	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-price::before,
	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-date::before,
	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-stock::before {
		display: block;
		margin-bottom: 2px;
		font-size: .75em;
		text-transform: uppercase;
		letter-spacing: .05em;
		opacity: .6;
	}
	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-price::before { content: "Prezzo"; }
	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-date::before  { content: "Aggiunto il"; }
	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-stock::before { content: "Disponibilit\00E0"; }

	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-stock p {
		margin: 0;
	}

	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-action .button {
		display: inline-block;
		width: auto;
	}

	/* Piede: azioni di gruppo a sinistra, pulsanti a destra; vanno a capo se serve */
	html body table.tinvwl-table-manage-list tfoot td {
		display: flex !important;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: center;
		gap: 12px;
		width: 100% !important;
		padding: 16px 0 0 !important;
	}

	html body table.tinvwl-table-manage-list tfoot .tinvwl-to-left,
	html body table.tinvwl-table-manage-list tfoot .tinvwl-to-right {
		float: none !important;
		width: auto !important;
	}

	html body table.tinvwl-table-manage-list tfoot .tinvwl-input-group {
		display: flex;
		gap: 8px;
	}

	html body table.tinvwl-table-manage-list tfoot .tinvwl-to-right {
		display: flex;
		flex-wrap: wrap;
		gap: 8px;
	}

	html body table.tinvwl-table-manage-list tfoot .tinvwl-to-right .button {
		margin: 0 !important;
	}

  .tinv-wishlist .product-stock span, .tinv-wishlist .tinvwl-table-manage-list td.product-stock .tinvwl-txt {
        display: inline-table;
        float: left;
        margin-right: 5px;
  }
  
  html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-action .button {
    display: inline-block;
    width: auto;
    min-width: 150px;
    text-align: center;
  } 

  .tinvwl-input-group .form-control {
    font-size: 13px;
  }

  .tinv-wishlist tfoot .tinvwl-to-left+.tinvwl-to-right {
    margin-top: 0;
    width: 100% !important;
    text-align: center;
  }

  .tinv-wishlist tfoot .tinvwl-to-left+.tinvwl-to-right {
    display: flex;
    justify-content: space-between;
    margin-top: 25px;
  }

}

/*
 * Wishlist - cellulare, da 600px in giu'.
 * Da mettere DOPO il blocco tablet: ne riprende le regole e cambia solo la disposizione.
 */
@media (max-width: 600px) {

	/* Riga prodotto: immagine piu' piccola, x in alto a destra, pulsante a tutta larghezza */
	html body table.tinvwl-table-manage-list tbody tr.wishlist_item {
		grid-template-columns: 20px 72px minmax(0, 1fr) 28px;
		grid-template-areas:
			"cb     thumb  name   remove"
			".      thumb  price  ."
			".      thumb  stock  ."
			".      thumb  date   ."
			"action action action action";
		column-gap: 12px;
		row-gap: 6px;
		align-items: start;
		padding: 14px 0;
	}

	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-remove {
		justify-self: end;
	}

	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-thumbnail img {
		width: 72px;
	}

	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-name {
		font-size: 15px;
		line-height: 1.3;
	}

	/* Il prezzo si riconosce da solo: niente etichetta */
	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-price::before {
		content: none;
	}

	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-price {
		font-size: 14px;
	}

	/* Disponibilita' e data: etichetta e valore sulla stessa riga, testo piu' piccolo */
	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-stock,
	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-date {
		display: flex !important;
		align-items: baseline;
		gap: 6px;
		font-size: 13px;
	}

	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-stock::before,
	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-date::before {
		margin-bottom: 0;
		font-size: 11px;
	}

	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-action {
		margin-top: 8px;
	}

	html body table.tinvwl-table-manage-list tbody tr.wishlist_item td.product-action .button {
		display: block;
		width: 100%;
		min-width: 0;
	}

	/* Piede: tutto in colonna, a tutta larghezza */
	html body table.tinvwl-table-manage-list tfoot td {
		flex-direction: column;
		align-items: stretch;
	}

	html body table.tinvwl-table-manage-list tfoot .tinvwl-to-left {
		width: 100% !important;
	}



	html body .tinv-wishlist table.tinvwl-table-manage-list tfoot .tinvwl-to-left + .tinvwl-to-right {
		flex-direction: column;
		gap: 8px;
		margin-top: 4px;
		width: 100% !important;
	}

	html body .tinv-wishlist table.tinvwl-table-manage-list tfoot .tinvwl-to-right .button {
		display: block;
		width: 100%;
		margin: 0 !important;
	}


  	/* Azioni di gruppo: select e pulsante "Apply" sempre sulla stessa riga */
	html body table.tinvwl-table-manage-list tfoot .tinvwl-input-group {
		display: flex !important;
		flex-wrap: nowrap;
		align-items: stretch;
		gap: 8px;
		width: 100% !important;
		box-sizing: border-box;
	}

	html body table.tinvwl-table-manage-list tfoot .tinvwl-input-group select {
		display: block !important;
		flex: 1 1 auto;
		width: auto !important;
		min-width: 0;
		max-width: 100%;
		margin: 0 !important;
		box-sizing: border-box;
	}

	html body table.tinvwl-table-manage-list tfoot .tinvwl-input-group-btn {
		display: block !important;
		flex: 0 0 auto;
		width: auto !important;
		margin: 0 !important;
	}

	html body table.tinvwl-table-manage-list tfoot .tinvwl-input-group-btn .button {
		width: auto !important;
		height: 100%;
		margin: 0 !important;
		padding-left: 16px;
		padding-right: 16px;
		white-space: nowrap;
	}

	/* Sul pulsante resta solo "Apply": "Action" ruberebbe spazio */
	html body table.tinvwl-table-manage-list tfoot .tinvwl-input-group-btn .tinvwl-mobile {
		display: none !important;
	}

  html body .tinv-wishlist table.tinvwl-table-manage-list tfoot .tinvwl-to-right .button {
      display: block;
      width: 100%;
      margin: 0 !important;
      margin-top: 25px !important;
  }

  .tinv-wishlist .product-stock i {
    margin-right: 0px;
}

}