:root {
    --primo: #8E9696;
    --secondo: #9B835B;
    --terzo: #3A2D32;
    --quarto: #0F4C5C;
    --quinto:#293F14;
    --bianco: #FFFFFF;
    --nero: #353838;
    --black:#000000;
    --grigio: #c4c4c4;
    --grigio-light: #f2f2f2;
    --nero-trasp: rgba(0, 0, 0, 0.90);
    --nero-trasp-2: rgba(0, 0, 0, 0.20);
    --nero-trasp-3: rgba(0, 0, 0, 0.40);
    --bianco-trasp: rgba(255, 255, 255, 0.98);
    --trasp: rgba(0, 0, 0, 0);
    --primo-trasp: rgba(142, 150, 150, 0.8);
    --secondo-trasp: rgba(155, 131, 91, 0.8);
    --terzo-trasp: rgba(58, 45, 50, 0.8);
    --quarto-trasp: rgba(15, 76, 92, 0.8);
    --quinto-trasp: rgba(41, 63, 20, 0.8);
}

body {
  margin: 0;
  font-family: "DM Sans", sans-serif;
  font-size: 1.2rem;
  font-weight: 300;
  line-height: 1.5;
  color: var(--nero);
  background-color: var(--bianco)
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
  font-family: "Playfair Display", serif;
}

p strong{
  font-weight: 700;
}

a{
  -webkit-transition: all 0.6s ease-out;
  -moz-transition: all 0.6s ease-out;
  -o-transition: all 0.6s ease-out;
  transition: all 0.6s ease-out;
}

.hero, .bg-image {
  background-color: var(--primo);
}

.site-navigation{
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.logo {
  display: inline-block;
}

.logo img{
  position: relative;
  height: 60px;
  width: auto;
  filter: brightness(0) invert(1);
}

.site-nav .site-navigation .site-menu > li.active > a {
    color: var(--secondo);
}

.site-nav.fixed-header .site-navigation .site-menu > li.active > a {
    color: var(--secondo);
}

.site-nav .site-navigation .site-menu > li > a {
  font-size: 1.1rem;
  padding: 0.7rem;
  display: inline-block;
  text-decoration: none !important;
  color: var(--bianco);
  letter-spacing: 1px;
  text-transform:lowercase;
  font-weight: 500;
  font-family: "DM Sans", sans-serif;
}

.site-nav .site-navigation .site-menu > li > a:hover {
  color: var(--secondo);
}

.site-nav.fixed-header .site-navigation .site-menu > li > a {
  color: var(--nero);
}

.site-nav.fixed-header .site-navigation .site-menu > li > a:hover {
  color: var(--secondo);
}

.site-nav .site-navigation .site-menu .has-children:hover > a, .site-nav .site-navigation .site-menu .has-children:focus > a, .site-nav .site-navigation .site-menu .has-children:active > a {
  color: var(--secondo);
}

.site-nav .site-navigation .site-menu .has-children .dropdown {
    visibility: hidden;
    opacity: 0;
    top: 100%;
    z-index: 999;
    position: absolute;
    text-align: left;
    -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: 1.25rem 0;
    margin-top: 1.25rem;
    margin-left: 0px;
    background: var(--bianco-trasp);
    -webkit-transition: all 0.6s ease-out;
    -moz-transition: all 0.6s ease-out;
    -o-transition: all 0.6s ease-out;
    transition: all 0.6s ease-out;
}

.site-nav .site-navigation .site-menu .has-children .dropdown > li > a {
  font-family: "DM Sans", sans-serif;
  padding: 0.625rem 1.25rem;
  display: block;
}

.site-nav .site-navigation .site-menu .has-children .dropdown a {
    font-size: 0.8rem;
    text-transform: lowercase!important;
    line-height: 0.8rem;
    font-weight: 500;
    text-transform: none;
    letter-spacing: normal;
    -webkit-transition: all 0.6s ease-out;
    -moz-transition: all 0.6s ease-out;
    -o-transition: all 0.6s ease-out;
    transition: all 0.6s ease-out;
    color: var(--nero);
}

.site-nav .site-navigation .site-menu .has-children .dropdown a:hover {
    color: var(--secondo)!important;
}

.site-nav{
  position: absolute;
  top: 0;
  z-index: 9;
  width: 100%;
}

.site-nav.fixed-header{
  position:fixed;
  top: 0;
  z-index: 1000;
  width: 100%;
  background-color: var(--bianco-trasp);
  -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);
  -webkit-animation: slide-bottom 0.6s cubic-bezier(0.455, 0.030, 0.515, 0.955) both;
	        animation: slide-bottom 0.6s cubic-bezier(0.455, 0.030, 0.515, 0.955) both;
}

@-webkit-keyframes slide-bottom {
  0% {
    -webkit-transform: translateY(-100px);
            transform: translateY(-100px);
            opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
            opacity: 1;
  }
}
@keyframes slide-bottom {
  0% {
    -webkit-transform: translateY(-100px);
            transform: translateY(-100px);
            opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
            opacity: 1;
  }
}


.site-nav.fixed-header .logo img{
  filter: brightness(1) invert(0);
}


.burger.light:before,
.burger.light span,
.burger.light:after {
  background: var(--bianco);
  -webkit-transition: all 0.6s ease-out;
  -moz-transition: all 0.6s ease-out;
  -o-transition: all 0.6s ease-out;
  transition: all 0.6s ease-out;
}

.burger.light:hover:before,
.burger.light:hover span,
.burger.light:hover:after {
  background: var(--secondo);
}

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

.site-mobile-menu .site-nav-wrap > li > ul > li > a {
  padding-left: 2.5rem;
  font-size: 0.9rem;
}

.site-mobile-menu .site-nav-wrap li.active > a {
  color: var(--secondo);
}

.site-mobile-menu .site-nav-wrap a:hover {
  color: var(--secondo);
}

.site-mobile-menu-close > span:before,
.site-mobile-menu-close > span:after {
    position: absolute;
    content: "";
    width: 2px;
    height: 30px;
    background: var(--primo);
    -webkit-transition: all 0.6s ease-out;
    -moz-transition: all 0.6s ease-out;
    -o-transition: all 0.6s ease-out;
    transition: all 0.6s ease-out;
}

.site-mobile-menu-close:hover > span:before,
.site-mobile-menu-close:hover > span:after {
    background: var(--secondo);
}

.site-mobile-menu {
    width: 33%;
    position: fixed;
    right: 0;
    z-index: 2000;
    padding-top: 20px;
    background: var(--bianco-trasp);
    height: calc(100vh);
    -webkit-transform: translateX(100%);
    -ms-transform: translateX(100%);
    transform: translateX(100%);
    -webkit-transition: 0.8s all cubic-bezier(0.23, 1, 0.32, 1);
    -o-transition: 0.8s all cubic-bezier(0.23, 1, 0.32, 1);
    transition: 0.8s all cubic-bezier(0.23, 1, 0.32, 1);
}


/* HERO SLIDER */

.slider-hero{
  position: relative;
  z-index: 2;
  width: 100%;
  height: 100vh;
}

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

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

.slider-hero .owl-stage-outer .owl-item .item{
  position: relative;
  height: 100vh;
}

.slider-hero .owl-stage-outer .owl-item .item .container{
  position: absolute;
  left: 0.75rem;
  bottom: 0.75rem;
  width:calc(50% - 0.75rem);
  height: auto;
  background-color: var(--nero-trasp-2);
  padding: 4rem 4rem 4rem 4rem;
  border:1px solid var(--bianco);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  z-index: 2;
}

.slider-hero .owl-stage-outer .owl-item.active .item .container{
  -webkit-animation: box-animation 3s cubic-bezier(0.250, 0.460, 0.450, 0.940) both 1s;
	        animation: box-animation 3s cubic-bezier(0.250, 0.460, 0.450, 0.940) both 1s;
}

@-webkit-keyframes box-animation {
  0% {
    -webkit-transform: translateX(2rem);
            transform: translateX(2rem);
            opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
            opacity: 1;
  }
}
@keyframes box-animation {
  0% {
    -webkit-transform: translateX(2rem);
            transform: translateX(2rem);
            opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
            opacity: 1;
  }
}

/*.slider-hero .owl-stage-outer .owl-item .item .container-02{
  position: absolute;
  right: 0;
  bottom:0;
  width:50%;
  height: 50%;
  background-color: var(--primo-trasp);
  padding: 0.75rem 0.75rem 6rem 0.75rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  z-index: 2;
}

.slider-hero .owl-stage-outer .owl-item .item .container-03{
  position: absolute;
  left: 0;
  bottom:0;
  width:50%;
  height: 50%;
  background-color: var(--terzo-trasp);
  padding: 0.75rem 0.75rem 6rem 0.75rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  z-index: 2;
}

.slider-hero .owl-stage-outer .owl-item .item .container-04{
  position: absolute;
  right: 0;
  bottom:0;
  width:50%;
  height: 50%;
  background-color: var(--quinto-trasp);
  padding: 0.75rem 0.75rem 6rem 0.75rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  z-index: 2;
}

.slider-hero .owl-stage-outer .owl-item .item .container-05{
  position: absolute;
  left: 0;
  bottom:0;
  width:50%;
  height: 50%;
  background-color: var(--quarto-trasp);
  padding: 0.75rem 0.75rem 6rem 0.75rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  z-index: 2;
}*/

.slider-hero .owl-stage-outer .owl-item .item h1{
  position: relative;
  margin: 0;
  padding: 0;
  color: var(--bianco);
  font-weight: 700;
  font-size: 7rem;
  line-height: 7rem;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
  width: 80%;
}

.slider-hero .owl-stage-outer .owl-item .item h1 em,
.slider-hero .owl-stage-outer .owl-item .item h2 em{
  font-weight: 400;
  font-style: italic;
}

.slider-hero .owl-stage-outer .owl-item .item h2{
  position: relative;
  margin: 0;
  padding: 0;
  color: var(--bianco);
  font-weight: 700;
  font-size: 5rem;
  line-height: 5rem;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
  width: 80%;
}

.slider-hero .owl-stage-outer .owl-item .item p{
  font-size: 1.2rem;
  color: var(--bianco);
  padding-bottom: 1rem;
  margin-bottom: 2rem;
  font-weight: 300;
  width: 80%;
}

.slider-hero .owl-stage-outer .owl-item .item .cta-container{
  position: relative;
}

.slider-hero .owl-stage-outer .owl-item .item .cta-container .cta{
  position: relative;
  display: inline-block;
  font-size: 1.2rem;
  line-height: 1.2rem;
  padding: 1.2rem 2.4rem;
  border: 1px solid var(--bianco);
  background-color: var(--trasp);
  font-weight: 500;
  text-transform: lowercase;
}

.slider-hero .owl-stage-outer .owl-item .item .cta-container .cta:hover{
  color: var(--primo);
  background-color: var(--bianco);
  border: 1px solid var(--bianco);
}

.img-hero{
  position: absolute;
  top:0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1;
}

.img-hero img{
  position: relative;
  height: auto!important;
  width: 100%!important;
  transform: none;
  z-index: 1;
}

.img-hero::before{
  content: "";
  display: block;
  position: absolute;
  top:0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000000;
  background: -webkit-linear-gradient(180deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 30%);
  background: -moz-linear-gradient(180deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 30%);
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 30%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#000000", endColorstr="#000000", GradientType=0);
  z-index: 2;
}

.owl-nav{
  position: absolute;
  display: flex;
  bottom:0.75rem;
  right: 0.75rem;
}

.owl-nav .owl-prev{
  margin-right: 0.375rem;
}

.owl-nav .owl-next{
  margin-left: 0.375rem;
}

.owl-nav .owl-prev .nav-button,
.owl-nav .owl-next .nav-button{
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.2rem;
  line-height: 1.2rem;
  padding: 1.2rem 1.2rem;
  /*width: 3.875rem;
  height: 3.875rem;*/
  background-color: var(--nero-trasp-2);
  border: 1px solid var(--bianco);
  color: var(--bianco);
  -webkit-transition: all 0.6s ease-out;
  -moz-transition: all 0.6s ease-out;
  -o-transition: all 0.6s ease-out;
  transition: all 0.6s ease-out;
}

.owl-nav .owl-prev .nav-button:hover,
.owl-nav .owl-next .nav-button:hover{
  background-color: var(--bianco);
  border-color: var(--bianco);
  color: var(--primo);
}

/* FINE HERO SLIDER */

/* VIDEO INTRO */

.section_video {
	position: absolute;
	top: 0;
	left: 0;
	min-height: 100%;
	min-width: 100%;
	overflow: hidden;
	z-index: -1;
}
.section_video video {
	position: absolute;
	top: 0;
	left: 0;
	min-height: 100%;
	min-width: 100%;
	z-index: 1;
  /*filter: grayscale(1);*/
}

.section_video::before{
  position: absolute;
  content: "";
  display: block;
  top:0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #000000;
  background: -webkit-linear-gradient(180deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 30%);
  background: -moz-linear-gradient(180deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 30%);
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 30%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#000000", endColorstr="#000000", GradientType=0);
  z-index: 2;
}

/* FINE VIDEO INTRO */

.title_home{
  position: relative;
  margin: 0;
  padding: 0;
  color: var(--primo);
  font-weight: 700;
  font-size: 5rem;
  line-height: 5rem;
  margin-bottom: 4rem;
}

.title_home em{
  font-weight: 400;
  font-style: italic;
  color: var(--secondo);
}

.paragraph_home{
  position: relative;
  margin: 0;
  padding: 0;
  color: var(--nero);
  font-size: 1.2rem;
  font-weight: 300;
  line-height: 1.5;
  margin-bottom: 4rem;
}

.paragraph_home strong{
  font-weight: 700;
}

input.cta{
  -webkit-transition: all 0.6s ease-out;
  -moz-transition: all 0.6s ease-out;
  -o-transition: all 0.6s ease-out;
  transition: all 0.6s ease-out;
}

.cta,
input.cta{
  position: relative;
  display: inline-block;
  font-size: 1.2rem;
  line-height: 1.2rem;
  padding: 1.2rem 2.4rem;
  border: 1px solid var(--primo);
  background-color: var(--trasp);
  font-weight: 500;
  text-transform: lowercase;
}

.cta:hover,
input.cta:hover{
  color: var(--bianco);
  background-color: var(--secondo);
  border: 1px solid var(--secondo);
}

.back_white{
  position: relative;
  background-color: var(--bianco);
  background-image: url(../images/back_white.png);
  background-size: contain;
  background-position: bottom center;
  background-repeat: no-repeat;
}

.back_grey {
  position: relative;
  background-color: var(--grigio-light) !important;
  background-image: url(../images/back_grey.png);
  background-size: contain;
  background-position: bottom center;
  background-repeat: no-repeat;
}

.service-img a{
  display: inline-block;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  aspect-ratio: 16/9;
    // Fallback
    @supports not (aspect-ratio: 16/9) {
    &::before {
      float: left;
      padding-top: 56.25%;
      content: "";
    }

    &::after {
      display: block;
      content: "";
      clear: both;
    }
  }
}

.service-img a img{
  position: relative;
  height: 100%;
  -webkit-transition: all 0.6s ease-out;
  -moz-transition: all 0.6s ease-out;
  -o-transition: all 0.6s ease-out;
  transition: all 0.6s ease-out;
}

.service:hover .service-img a img{
  transform: scale(1.1);
}

.service h3 {
  margin-bottom: 2rem;
  font-size: 2rem;
  line-height: 2rem;
  font-weight: 700;
  color: var(--primo);
}

.service h3 em{
  font-weight: 400;
  font-style: italic;
  color: var(--secondo);
}

.service p {
  position: relative;
  color: var(--nero);
  min-height: 15rem;
  height:auto !important;
  height: 15rem;
  margin-bottom: 2rem;
}

.more {
  position: relative;
  display: inline-block;
  padding-bottom: 0.5rem;
  text-transform: lowercase;
}
  .more:before,
  .more:after {
    position: absolute;
    width: 100%;
    content: "";
    height: 1px;
    background-color: var(--grigio);
    bottom: 0;
    -webkit-transition: .3s all ease;
    -o-transition: .3s all ease;
    transition: .3s all ease;
    left: 0;
  }
.more:after {
  width: 0;
  background-color: var(--secondo);
}
.more:hover:after {
  width: 100%;
}

.more:hover{
  color: var(--secondo);
}

.box-prodotto_home{
  position: relative;
  display: flex;
  background-color: var(--bianco);
  justify-content: center;
  align-items: center;
  width: 100%;
  height: auto;
  overflow: hidden;
  margin-bottom: 1.5rem;
  aspect-ratio: 16/9;
    // Fallback
    @supports not (aspect-ratio: 16/9) {
    &::before {
      float: left;
      padding-top: 56.25%;
      content: "";
    }
    &::after {
      display: block;
      content: "";
      clear: both;
    }
  }
}

.box-prodotto_home img{
  position: relative;
  z-index: 1;
  -webkit-transition: all 0.6s ease-out;
  -moz-transition: all 0.6s ease-out;
  -o-transition: all 0.6s ease-out;
  transition: all 0.6s ease-out;
}

.box-prodotto_home:hover img{
  transform: scale(1.15);
  filter: grayscale(1);
}

.box-prodotto_home::after{
  content: "";
  position: absolute;
  top:0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  background: #000000;
  background: -webkit-linear-gradient(0deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 30%);
  background: -moz-linear-gradient(0deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 30%);
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 30%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#000000", endColorstr="#000000", GradientType=0);
  -webkit-transition: all 0.6s ease-out;
  -moz-transition: all 0.6s ease-out;
  -o-transition: all 0.6s ease-out;
  transition: all 0.6s ease-out;
}

.box-prodotto_home:hover::after{
  opacity: 0;
}

.box-prodotto_home .box-prodotto_home_dida{
  position: absolute;
  top:calc(100% - 5.5rem);
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--trasp);
  -webkit-transition: all 0.6s ease-out;
  -moz-transition: all 0.6s ease-out;
  -o-transition: all 0.6s ease-out;
  transition: all 0.6s ease-out;
  padding: 2rem;
  z-index: 3;
}

.box-prodotto_home:hover .box-prodotto_home_dida{
  top:0%;
  background-color: var(--secondo-trasp);
}

.box-prodotto_home .box-prodotto_home_dida h3{
  margin-bottom: 2rem;
  font-size: 2rem;
  line-height: 2rem;
  font-weight: 700;
  color: var(--bianco);
  -webkit-transition: all 0.6s ease-out;
  -moz-transition: all 0.6s ease-out;
  -o-transition: all 0.6s ease-out;
  transition: all 0.6s ease-out;
}

.box-prodotto_home .box-prodotto_home_dida p{
  opacity: 0;
  color: var(--bianco);
  -webkit-transition: all 0.6s ease-out;
  -moz-transition: all 0.6s ease-out;
  -o-transition: all 0.6s ease-out;
  transition: all 0.6s ease-out;
}

.box-prodotto_home:hover .box-prodotto_home_dida p{
  opacity: 1;
}

.box-prodotto_home .box-prodotto_home_dida h3 em{
  font-weight: 400;
  font-style: italic;
  color: var(--secondo);
  -webkit-transition: all 0.6s ease-out;
  -moz-transition: all 0.6s ease-out;
  -o-transition: all 0.6s ease-out;
  transition: all 0.6s ease-out;
}

.box-prodotto_home:hover .box-prodotto_home_dida h3 em{
  color: var(--bianco);
}

.servizi {
  overflow: hidden;
  border-radius: 0px;
  -webkit-transition: .3s all ease;
  -o-transition: .3s all ease;
  transition: .3s all ease;
  position: relative;
  top: 0; }
  .servizi:hover {
    -webkit-box-shadow: 0 15px 30px 0 rgba(0, 0, 0, 0.1);
    box-shadow: 0 15px 30px 0 rgba(0, 0, 0, 0.1);
    top: -4px; }
  .servizi h3,
  .servizi .h3 {
    margin-bottom: 2rem;
    font-size: 1.6rem;
    line-height: 1.6rem;
    font-weight: 700;
    color: var(--primo);
  }
  .servizi h3 em {
    font-weight: 400;
    font-style: italic;
    color: var(--secondo);
  }
  .servizi .servizi-inner {
    padding: 30px;
    background-color: var(--bianco);
    z-index: 2;
    position: relative;
  }
  .servizi .servizi-img {
    background-color: #000;
    z-index: 1;
    position: relative;
    -webkit-transition: .3s all ease;
    -o-transition: .3s all ease;
    transition: .3s all ease;
  }

  .servizi .servizi-img a{
    display: inline-block;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    aspect-ratio: 16/9;
      // Fallback
      @supports not (aspect-ratio: 16/9) {
      &::before {
        float: left;
        padding-top: 56.25%;
        content: "";
      }

      &::after {
        display: block;
        content: "";
        clear: both;
      }
    }
  }

  .servizi .servizi-img a img{
    position: relative;
    height: 100%;
    -webkit-transition: all 0.6s ease-out;
    -moz-transition: all 0.6s ease-out;
    -o-transition: all 0.6s ease-out;
    transition: all 0.6s ease-out;
  }

  .servizi:hover .servizi-img a img{
    transform: scale(1.1);
  }


  .servizi p {
    position: relative;
    color: var(--nero);
    min-height: 9rem;
    height:auto !important;
    height: 9rem;
    margin-bottom: 2rem;
  }


  .box-case_home a h3,
  .box-news_home a h3{
    margin-bottom: 2rem;
    font-size: 2rem;
    line-height: 2rem;
    font-weight: 700;
    color: var(--primo);
    -webkit-transition: all 0.6s ease-out;
    -moz-transition: all 0.6s ease-out;
    -o-transition: all 0.6s ease-out;
    transition: all 0.6s ease-out;
  }

  .box-news_home a h3{
    min-height: 6rem;
    height:auto !important;
    height: 6rem;
  }

  .box-case_home a h3 em,
  .box-news_home a h3 em{
    font-weight: 400;
    font-style: italic;
    color: var(--secondo);
  }

  .box-news_home p{
    min-height: 6rem;
    height:auto !important;
    height: 6rem;
  }

.box-case_home .img-link,
.box-news_home .img-link{
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: auto;
  overflow:hidden;
  margin-bottom: 1.5rem;
  aspect-ratio: 4/3;
    // Fallback
    @supports not (aspect-ratio: 4/3) {
    &::before {
      float: left;
      padding-top: 75%;
      content: "";
    }
    &::after {
      display: block;
      content: "";
      clear: both;
    }
  }
}

.box-case_home .img-link img,
.box-news_home .img-link img{
  position: relative;
  z-index: auto;
  /*filter: grayscale(1);*/
  width: 100%;
  -webkit-transition: all 0.6s ease-out;
  -moz-transition: all 0.6s ease-out;
  -o-transition: all 0.6s ease-out;
  transition: all 0.6s ease-out;
}

.box-case_home:hover .img-link img,
.box-news_home:hover .img-link img{
  filter: grayscale(0);
  transform: scale(1.15);
}

.showroom-block h3{
  margin-top: 1rem;
  margin-bottom: 2rem;
  font-size: 2rem;
  line-height: 2rem;
  font-weight: 700;
  color: var(--primo);
}

.showroom-block ul{
  position: relative;
  margin: 0;
  padding: 0;
  list-style: none;
}

.showroom-block ul li{
  position: relative;
  margin: 0 0 1.5rem 0;
  padding: 0 0 0 2.5rem;
  list-style: none;
}

.showroom-block ul li span{
  position: absolute;
  font-size: 1.5rem;
  color: var(--secondo);
  top:0.3rem;
  left:0.2rem;
}

.section-contact {
  background-color: var(--grigio-light);
  z-index: 9;
  position: relative;
  margin-top: -100px !important;
}

/* mappa */


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

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

/* fine mappa */

/* FOOTER */

footer.site-footer{
  position: relative;
  background-color: var(--primo);
  font-size: 1rem;
  color: var(--bianco);
  background-image: url(../images/back_grey.png);
  background-size: contain;
  background-position: bottom center;
  background-repeat: no-repeat;
}

.site-footer .widget .links {
  width: 100%;
}

footer .social{
  display: flex;
  align-items: center;
  justify-content: center;
}

footer .social li{
  position: relative;
  margin: 0 0.5rem;
}

.site-footer .widget h3,
.site-footer .widget .h3 {
    font-size: 1.5rem;
    font-weight: 400;
    text-transform: none;
    margin-bottom: 1rem;
    color: var(--grigio-light);
}

footer .contatti{
  position: relative;
  padding: 0;
}

footer .contatti li{
  position: relative;
  padding: 0 0 0 1.5rem;
}

footer .contatti li span{
  position: absolute;
  top:5px;
  left:2px;
}

.site-footer .links a {
  color: var(--bianco);
  position: relative;
  display: inline-block;
  text-transform: lowercase;
}

.site-footer .links a:hover {
  color: var(--terzo);
}

.site-footer .links a::before {
  content: "";
  position: absolute;
  bottom:-3px;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: var(--bianco);
}

.site-footer .links a::after {
  content: "";
  position: absolute;
  bottom:-3px;
  left: 0;
  width: 0%;
  height: 1px;
  background-color: var(--terzo);
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.site-footer .links a:hover::after {
  width: 100%;
}

a.link-footer {
  color: var(--bianco);
  position: relative;
  display: inline-block;
}

a.link-footer:hover {
  color: var(--terzo);
}

a.link-footer::before {
  content: "";
  position: absolute;
  bottom:-3px;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: var(--bianco);
}

a.link-footer::after {
  content: "";
  position: absolute;
  bottom:-3px;
  left: 0;
  width: 0%;
  height: 1px;
  background-color: var(--terzo);
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

a.link-footer:hover::after {
  width: 100%;
}

.logo_footer{
  position: relative;
  width: 80%;
  margin-left: 10%;
}

/* FINE FOOTER */

.form-contact .form-control {
    background-color: transparent;
    border: none;
    border-bottom: 1px solid var(--primo);
    border-radius: 0;
    padding-left: 0;
    padding-right: 0;
}

.form-contact .form-control:hover, .form-contact .form-control:active, .form-contact .form-control:focus {
  border-bottom: 1px solid var(--secondo);
}


/* PAGINA INTERNA */

.header_page{
  position: relative;
  width: 100%;
  height: 50vh;
  overflow: hidden;
}

.header_page .img-bg{
  position: absolute;
  top:0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1;
}

.header_page .img-bg img{
  position: relative;
  z-index: 1;
  width: 100%;
  height: auto;
}

.header_page .img-bg::before{
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: var(--nero-trasp-3);
  z-index: 2;
}

.header_page .container-fluid{
  position: relative;
  z-index: 2;
  height: 100%;
}

.header_page .container-fluid .row{
  position: relative;
  height: 100%;
}

.titolo_pagina{
  position: relative;
  margin: 0;
  padding: 0;
  color: var(--bianco);
  font-weight: 700;
  font-size: 5rem;
  line-height: 5rem;
  margin-bottom: 4rem;
}

.titolo_pagina em{
  font-weight: 400;
  font-style: italic;
  color: var(--bianco);
}

.brand-container{
  position: relative;
}

.brand-box{
  position: relative;
  width: 100%;
  border: 1px solid var(--grigio-light);
  background-color: var(--bianco);
  margin-bottom: 1.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  aspect-ratio: 1/1;
    // Fallback
    @supports not (aspect-ratio: 1/1) {
    &::before {
      float: left;
      padding-top: 100%;
      content: "";
    }
    &::after {
      display: block;
      content: "";
      clear: both;
    }
  }
}

.brand-box img{
  position: relative;
  width: 100%;
  transform: scale(0.8);
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.brand-box:hover img{
  transform: scale(1);
}

.media-1:after{
  background-color: var(--secondo-trasp);
}

.media-1 .media-1-content .category{
  color: var(--grigio-light);
}

.cta-small{
  position: relative;
  display: inline-block;
  font-size: 0.8rem;
  line-height: 0.8rem;
  padding: 0.8rem 1.6rem;
  border: 1px solid var(--bianco);
  background-color: var(--trasp);
  color: var(--bianco);
  font-weight: 500;
  text-transform: lowercase;
  opacity: 0;
  visibility: hidden;
  bottom: -10px;
}

.media-1:hover .cta-small{
  opacity: 1;
  visibility: visible;
  bottom: 0;
}

.cta-small:hover{
  color: var(--secondo);
  background-color: var(--bianco);
  border: 1px solid var(--bianco);
}

.media-1 .media-1-content h3, .media-1 .media-1-content .h3 {
    position: relative;
    color: var(--bianco);
    font-size: 1.5rem;
    -webkit-transition: .4s all ease-in-out;
    -o-transition: .4s all ease-in-out;
    transition: .4s all ease-in-out;
    opacity: 0;
    visibility: hidden;
    bottom: -10px;
    margin-bottom: 10px;
}

.media-1:hover h3, .media-1:hover .h3 {
    bottom: 0px;
    opacity: 1;
    visibility: visible;
}

.box-gallery{
  position: relative;
  display: flex;
  background-color: var(--bianco);
  justify-content: center;
  align-items: center;
  width: 100%;
  height: auto;
  overflow: hidden;
  margin-bottom: 1.5rem;
  aspect-ratio: 16/9;
    // Fallback
    @supports not (aspect-ratio: 16/9) {
    &::before {
      float: left;
      padding-top: 56.25%;
      content: "";
    }
    &::after {
      display: block;
      content: "";
      clear: both;
    }
  }
}

.box-gallery img{
  position: relative;
  z-index: 1;
  -webkit-transition: all 0.6s ease-out;
  -moz-transition: all 0.6s ease-out;
  -o-transition: all 0.6s ease-out;
  transition: all 0.6s ease-out;
}

.box-gallery:hover img{
  transform: scale(1.15);
}

.title_inner{
  position: relative;
  margin: 0;
  padding: 0;
  color: var(--primo);
  font-weight: 700;
  font-size: 5rem;
  line-height: 5rem;
  margin-bottom: 2rem;
}

.title_inner em{
  font-weight: 400;
  font-style: italic;
  color: var(--secondo);
}

h3.subtitle_inner{
  position: relative;
  margin: 0;
  padding: 0;
  font-style: italic;
  color: var(--secondo);
  font-weight: 700;
  font-size: 3rem;
  line-height: 3rem;
  margin-bottom: 4rem;
}

h4.minititle_inner{
  position: relative;
  margin: 0;
  padding: 0;
  color: var(--primo);
  font-weight: 700;
  font-size: 2rem;
  line-height: 2rem;
  margin-bottom: 2rem;
}

.formati{
  position: relative;
  font-size: 1rem;
  margin-bottom: 2rem;
  width: 100%;
}

.formati thead tr,
.formati tbody tr{
  position: relative;
  border-bottom: 1px solid var(--secondo);
}

.formati tbody tr:last-child{
  border-bottom: 0px solid var(--secondo);
}

.formati thead tr th{
  position: relative;
  text-transform: lowercase;
  padding: 0 1rem 1rem 0;
  text-align: left;
  vertical-align: top;
}

.formati tbody tr td{
  position: relative;
  padding: 1rem 1rem 1rem 0;
  text-align: left;
  vertical-align: top;
}

.breadcrumb{
  position: absolute;
  bottom: 1rem;
  left: 0.75rem;
  z-index: 2;
  margin: 0;
  padding: 0;
  font-size: 1rem;
  line-height: 1rem;
  text-transform: lowercase;
  color: var(--bianco);
}

.breadcrumb li{
  position: relative;
  padding-right: 1rem;
  margin-right: 1rem;
}

.breadcrumb li::before{
  content: "|";
  position: absolute;
  top:0;
  right: 0;
  font-size: 1rem;
  line-height: 1rem;
  color: var(--bianco);
}

.breadcrumb li:last-child::before{
  display: none;
}

.breadcrumb li a:link,
.breadcrumb li a:visited{
  position: relative;
  color: var(--bianco);
}

.breadcrumb li a:hover{
  color: var(--secondo);
}

.breadcrumb li a::before {
  content: "";
  position: absolute;
  bottom:-3px;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: var(--bianco);
}

.breadcrumb li a::after {
  content: "";
  position: absolute;
  bottom:-3px;
  left: 0;
  width: 0%;
  height: 1px;
  background-color: var(--secondo);
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.breadcrumb li a:hover::after {
  width: 100%;
}

ul.showroom-page{
  position: relative;
  margin: 0;
  padding: 0;
  list-style: none;
  min-height: 400px;
  height:auto !important;
  height: 400px;
}

ul.showroom-page li{
  position: relative;
  margin: 0 0 1.5rem 0;
  padding: 0 0 0 2.5rem;
  list-style: none;
}

ul.showroom-page li span{
  position: absolute;
  font-size: 1.5rem;
  color: var(--secondo);
  top:0.3rem;
  left:0.2rem;
}

.box-case_page a h3,
.box-news_page a h3,
.brand-container h3{
  margin-bottom: 0.5rem;
  font-size: 2rem;
  line-height: 2rem;
  font-weight: 700;
  color: var(--primo);
  -webkit-transition: all 0.6s ease-out;
  -moz-transition: all 0.6s ease-out;
  -o-transition: all 0.6s ease-out;
  transition: all 0.6s ease-out;
}

.brand-container h3 {
  font-size: 2.4rem;
  margin-bottom:2rem;
}


.box-news_page a h3{
  min-height: 6rem;
  height:auto !important;
  height: 6rem;
}

.box-case_page a h3{
  min-height: 2rem;
  height:auto !important;
  height: 2rem;
}

.box-case_page a h3 em,
.box-news_page a h3 em{
  font-weight: 400;
  font-style: italic;
  color: var(--secondo);
}

.box-news_page p{
  min-height: 6rem;
  height:auto !important;
  height: 6rem;
}

.box-case_page p{
  min-height: 1.2rem;
  height:auto !important;
  height: 1.2rem;
}

.box-case_page .img-link,
.box-news_page .img-link{
position: relative;
display: flex;
justify-content: center;
align-items: center;
width: 100%;
height: auto;
overflow:hidden;
margin-bottom: 1.5rem;
aspect-ratio: 5/3;
  // Fallback
  @supports not (aspect-ratio: 5/3) {
  &::before {
    float: left;
    padding-top: 60%;
    content: "";
  }
  &::after {
    display: block;
    content: "";
    clear: both;
  }
}
}

.box-news_page,
.box-case_page{
  position: relative;
  padding-bottom: 3rem;
  margin-bottom: 1.5rem;
  border-bottom:1px solid var(--grigio);
}

.box-case_page .img-link img,
.box-news_page .img-link img{
position: relative;
z-index: auto;
/*filter: grayscale(1);*/
width: 100%;
-webkit-transition: all 0.6s ease-out;
-moz-transition: all 0.6s ease-out;
-o-transition: all 0.6s ease-out;
transition: all 0.6s ease-out;
}

.box-case_page:hover .img-link img,
.box-news_page:hover .img-link img{
filter: grayscale(0);
transform: scale(1.15);
}

.title_news,
.title_case{
  position: relative;
  margin: 0;
  padding: 0;
  color: var(--primo);
  font-weight: 700;
  font-size: 3rem;
  line-height: 3rem;
  margin-bottom: 2rem;
}

.title_news em,
.title_case em{
  font-weight: 400;
  font-style: italic;
  color: var(--secondo);
}

h3.subtitle_news,
h3.subtitle_case{
  position: relative;
  margin: 0;
  padding: 0;
  font-family: "DM Sans", sans-serif;
  color: var(--nero);
  font-weight: 600;
  font-size: 2rem;
  line-height: 3rem;
  margin-bottom: 2rem;
}

p.data{
  font-size: 1rem;
  line-height: 1rem;
  color: var(--secondo);
}

.text-link{
  position: relative;
  display: inline-block;
  color: var(--nero);
  font-weight: 300;
}

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

.text-link::before {
  content: "";
  position: absolute;
  bottom:0px;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: var(--nero);
}

.text-link::after {
  content: "";
  position: absolute;
  bottom:0px;
  left: 0;
  width: 0%;
  height: 1px;
  background-color: var(--secondo);
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.text-link:hover::after {
  width: 100%;
}

.border-right{
  border-right: 1px solid var(--grigio);
}
/* FINE PAGINA INTERNA */


/* paginazione */
span.page-numbers.current, a.page-numbers {
  /*padding-left: 0.5rem;
  padding-right: 0.5rem;*/
  display: inline-block;
  text-align: center;
  font-size: 0.8rem;
  line-height: 2rem;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  background-color: var(--primo);
  color: var(--bianco);
  border: 1px solid var(--primo);
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

span.page-numbers.current{
  background-color: var(--secondo);
  border: 1px solid var(--secondo);
}

a.page-numbers:hover{
  background-color: var(--secondo);
  border: 1px solid var(--secondo);
  color: var(--bianco);
}

a.page-numbers.next,
a.page-numbers.prev{
  border: 1px solid var(--primo);
  background-color: var(--bianco);
  color: var(--primo);
}

a.page-numbers.next:hover,
a.page-numbers.prev:hover{
  border: 1px solid var(--secondo);
  background-color: var(--secondo);
  color: var(--bianco);
}

.testo-news {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* STILI 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) {
  .img-hero img {
    position: relative;
    height: 100% !important;
    width: auto !important;
    transform: none;
    z-index: 1;
  }

  /*.header_page .img-bg img {
    position: relative;
    z-index: 1;
    width: auto;
    height: 100%;
  }*/
}

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

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

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

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

@media only screen and (max-width: 1280px) {
  .site-nav .site-navigation .site-menu > li > a {
    font-size: 1rem;
    padding: 0.5rem;
  }
}

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

@media only screen and (max-width: 1199px) {
  .site-nav .site-navigation .site-menu > li > a {
    font-size: 0.8rem;
    padding: 0.4rem;
  }
  .slider-hero .owl-stage-outer .owl-item .item .container{
    left: 0.75rem;
    width:calc(60% - 1.5rem);
    padding: 2rem 2rem 2rem 2rem;
  }
}

@media only screen and (max-width: 1043px) {
  .site-nav .site-navigation .site-menu > li > a {
    font-size: 0.7rem;
    padding: 0.3rem;
  }
}

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

@media only screen and (max-width: 991px) {
	
   .header_page .img-bg img {
    position: relative;
    z-index: 1;
    width: auto;
    height: 100%;
  }
	
  .fixed-header .burger.light:before,
  .fixed-header .burger.light span,
  .fixed-header .burger.light:after {
    background: var(--primo);
  }

  .fixed-header .burger.light:hover:before,
  .fixed-header .burger.light:hover span,
  .fixed-header .burger.light:hover:after {
    background: var(--secondo);
  }

  .service p {
    min-height: 3rem;
    height: auto !important;
    height: 3rem;
    margin-bottom: 1rem;
  }

  .slider-hero .owl-stage-outer .owl-item .item .container{
    left: 0.75rem;
    bottom: 6rem;
    width:calc(100% - 1.5rem);
    max-width: none!important;
    padding: 2rem 2rem 2rem 2rem;
  }

  .slider-hero .owl-stage-outer .owl-item .item h1{
    font-size: 4rem;
    line-height: 4rem;
    padding-bottom: 0.5rem;
    margin-bottom: 0.5rem;
    width: 100%;
  }

  .slider-hero .owl-stage-outer .owl-item .item h2{
    font-size: 3rem;
    line-height: 3rem;
    padding-bottom: 0.5rem;
    margin-bottom: 0.5rem;
    width: 100%;
  }

  .slider-hero .owl-stage-outer .owl-item .item p{
    font-size: 1.1rem;
    padding-bottom: 0.5rem;
    margin-bottom: 1rem;
    width: 100%;
  }

  .slider-hero .owl-stage-outer .owl-item .item .cta-container .cta{
    font-size: 1.1rem;
    line-height: 1.1rem;
    padding: 1.1rem 2.2rem;
  }

  .title_home{
    font-size: 3.5rem;
    line-height: 3.5rem;
    margin-bottom: 2rem;
  }
  .paragraph_home{
    font-size: 1.1rem;
    margin-bottom: 2rem;
  }

  .cta,
  input.cta{
    font-size: 1.1rem;
    line-height: 1.1rem;
    padding: 1.1rem 2.2rem;
  }

  .service h3 {
    margin-bottom: 1.8rem;
    font-size: 1.8rem;
    line-height: 1.8rem;
  }

  .box-prodotto_home .box-prodotto_home_dida h3 {
    margin-bottom: 1.8rem;
    font-size: 1.8rem;
    line-height: 1.8rem;
  }

  .servizi h3, .servizi .h3 {
    margin-bottom: 1rem;
    font-size: 1.4rem;
    line-height: 1.4rem;
  }

  .servizi p {
    min-height: 6rem;
    height: auto !important;
    height: 6rem;
    margin-bottom: 1rem;
  }

  .box-case_home a h3, .box-news_home a h3 {
    margin-bottom: 1.8rem;
    font-size: 1.8rem;
    line-height: 1.8rem;
  }
  .showroom-block h3 {
    margin-top: 1rem;
    margin-bottom: 1.6rem;
    font-size: 1.8rem;
    line-height: 1.8rem;
    font-weight: 700;
    color: var(--primo);
  }

  .logo_footer {
    position: relative;
    width: 40%;
    margin-left: 30%;
  }
  .site-footer .widget h3, .site-footer .widget .h3 {
    font-size: 1.4rem;
  }

  .site-footer .widget .links li{
    font-size: 0.9rem;
  }

  .site-footer p{
    font-size: 0.9rem;
    line-height: 1.4rem;
  }
  .titolo_pagina {
    font-size: 4rem;
    line-height: 4rem;
    margin-bottom: 3rem;
  }
  .breadcrumb {
    bottom: 0.8rem;
    font-size: 0.8rem;
    line-height: 0.8rem;
  }
  .breadcrumb li::before {
    font-size: 0.8rem;
    line-height: 0.8rem;
  }
  .media-1 .media-1-content h3, .media-1 .media-1-content .h3 {
      font-size: 1.2rem;
  }
  .media-1 .media-1-content .category {
    font-size: 12px;
  }
  .cta-small {
    font-size: 0.7rem;
    line-height: 0.7rem;
    padding: 0.7rem 1.4rem;
  }
  .title_inner{
    font-size: 4rem;
    line-height: 4rem;
    margin-bottom: 1rem;
  }
  h3.subtitle_inner{
    font-size: 2.2rem;
    line-height: 2.2rem;
    margin-bottom: 3rem;
  }
  .box-case_page a h3,
  .box-news_page a h3{
    font-size: 1.8rem;
    line-height: 1.8rem;
  }
  .title_news, .title_case {
    font-size: 2.2rem;
    line-height: 2.2rem;
    margin-bottom: 3rem;
  }

  h3.subtitle_news, h3.subtitle_case {
    font-size: 1.6rem;
    line-height: 2.4rem;
    margin-bottom: 1.6rem;
  }
  p.data {
    font-size: 0.9rem;
    line-height: 0.9rem;
  }
}

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

@media only screen and (max-width: 767px) {
  .v-h-full {
    height: 100vh;
    min-height: 100vh;
    padding-top: 0rem;
    padding-bottom: 0rem;
  }

  .site-mobile-menu {
      width: 50%;
  }
}

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

@media only screen and (max-width: 575px) {
  body {
    font-size: 1rem;
  }
  .site-mobile-menu {
      width: 66%;
  }
  .section {
    padding-top: 3.5rem;
    padding-bottom: 3.5rem;
  }

  .logo img{
    height: 40px;
  }

  .slider-hero .owl-stage-outer .owl-item .item .container{
    left: 0.75rem;
    bottom: 4rem;
    width:calc(100% - 1.5rem);
    padding: 2rem 2rem 2rem 2rem;
  }

  .slider-hero .owl-stage-outer .owl-item .item h1{
    font-size: 3.5rem;
    line-height: 3.5rem;
    padding-bottom: 0.5rem;
    margin-bottom: 0.5rem;
    width: 100%;
  }

  .slider-hero .owl-stage-outer .owl-item .item h2{
    font-size: 2.5rem;
    line-height: 2.5rem;
    padding-bottom: 0.5rem;
    margin-bottom: 0.5rem;
    width: 100%;
  }

  .slider-hero .owl-stage-outer .owl-item .item p{
    font-size: 1rem;
    padding-bottom: 0.5rem;
    margin-bottom: 1rem;
    width: 100%;
  }

  .slider-hero .owl-stage-outer .owl-item .item .cta-container .cta{
    font-size: 1rem;
    line-height: 1rem;
    padding: 1rem 2rem;
  }
  .owl-nav .owl-prev .nav-button,
  .owl-nav .owl-next .nav-button{
    font-size: 0.6rem;
    line-height: 0.6rem;
    padding: 0.6rem 0.6rem;
  }

  .title_home{
    font-size: 2.5rem;
    line-height: 2.5rem;
    margin-bottom: 2rem;
  }

  .paragraph_home{
    font-size: 1rem;
    margin-bottom: 2rem;
  }

  .cta,
  input.cta{
    font-size: 1rem;
    line-height: 1rem;
    padding: 1rem 2rem;
  }

  .service h3 {
    margin-bottom: 1.6rem;
    font-size: 1.6rem;
    line-height: 1.6rem;
  }

  .box-prodotto_home .box-prodotto_home_dida h3 {
    margin-bottom: 1.6rem;
    font-size: 1.6rem;
    line-height: 1.6rem;
  }

  .servizi h3, .servizi .h3 {
    margin-bottom: 1rem;
    font-size: 1.2rem;
    line-height: 1.2rem;
  }

  .servizi p {
    min-height: 4.5rem;
    height: auto !important;
    height: 4.5rem;
    margin-bottom: 1rem;
  }

  .box-case_home a h3, .box-news_home a h3 {
    margin-bottom: 1.6rem;
    font-size: 1.6rem;
    line-height: 1.6rem;
  }
  .showroom-block h3 {
    margin-top: 1rem;
    margin-bottom: 1.6rem;
    font-size: 1.6rem;
    line-height: 1.6rem;
    font-weight: 700;
    color: var(--primo);
  }
  .section-contact {
    margin-top: 0px !important;
  }
  .logo_footer {
    position: relative;
    width: 60%;
    margin-left: 20%;
  }
  .site-footer .widget h3, .site-footer .widget .h3 {
    font-size: 1.2rem;
  }

  .site-footer .widget .links li{
    font-size: 0.8rem;
  }

  .site-footer p{
    font-size: 0.8rem;
    line-height: 1.2rem;
  }
  .titolo_pagina {
    font-size: 3rem;
    line-height: 3rem;
    margin-bottom: 2rem;
  }

  .breadcrumb {
    bottom: 0.6rem;
    font-size: 0.6rem;
    line-height: 1.2rem;
  }

  .breadcrumb li::before {
    font-size: 0.6rem;
    line-height: 1.2rem;
  }

  .media-1 .media-1-content{
    top:60%;
    transform: translateY(0%);
  }

  .media-1 .media-1-content h3,
  .media-1 .media-1-content .h3 {
    position: relative;
    color: var(--nerov);
    font-size: 1rem;
    -webkit-transition: .4s all ease-in-out;
    -o-transition: .4s all ease-in-out;
    transition: .4s all ease-in-out;
    opacity: 1;
    visibility:visible;
    bottom: 0px;
    margin-bottom: 10px;
}

  .media-1 .media-1-content .category {
    position: relative;
    -webkit-transition: .3s all ease-in-out;
    -o-transition: .3s all ease-in-out;
    transition: .3s all ease-in-out;
    opacity: 1;
    bottom: 0px;
    visibility: visible;
    color: var(--nero);
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .2em;
}

  .cta-small {
    font-size: 0.6rem;
    line-height: 0.6rem;
    padding: 0.6rem 1.2rem;
    color: var(--nero);
    border: 1px solid var(--nero);
    opacity: 1;
    bottom:0;
    visibility: visible;
  }
  .title_inner{
    font-size: 3rem;
    line-height: 3rem;
    margin-bottom: 0.5rem;
  }
  h3.subtitle_inner{
    font-size: 1.5rem;
    line-height: 1.5rem;
    margin-bottom: 2rem;
  }

  .media-1:after {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #FFFFFF;
    background: -webkit-linear-gradient(0deg, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0.8) 50%, rgba(255, 255, 255, 0) 100%);
    background: -moz-linear-gradient(0deg, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0.8) 50%, rgba(255, 255, 255, 0) 100%);
    background: linear-gradient(0deg, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0.8) 50%, rgba(255, 255, 255, 0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFFFFF", endColorstr="#FFFFFF", GradientType=0);
    content: "";
    -webkit-transition: .3s all ease;
    -o-transition: .3s all ease;
    transition: .3s all ease;
    opacity: 1;
    visibility: visible;
  }

  span.page-numbers.current, a.page-numbers {
    font-size: 0.6rem;
    line-height: 1.5rem;
    width: 1.5rem;
    height: 1.5rem;
  }

  .box-case_page a h3,
  .box-news_page a h3{
    font-size: 1.6rem;
    line-height: 1.6rem;
  }

  .title_news, .title_case {
    font-size: 1.5rem;
    line-height: 1.4rem;
    margin-bottom: 2rem;
  }

  h3.subtitle_news, h3.subtitle_case {
    font-size: 1.2rem;
    line-height: 1.8rem;
    margin-bottom: 1.2rem;
  }

  p.data {
    font-size: 0.8rem;
    line-height: 0.8rem;
  }
}

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

@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 MOBILE */

div#slide-marchi {
    margin-top: 100px;
    margin-bottom: 100px;
}

.marquee-wrapper {
    overflow: hidden;
    width: 100%;
}

.marquee-track {
    display: flex;
    width: max-content;
    animation: marquee 200s linear infinite;
}

.marquee-wrapper:hover .marquee-track {
    /* animation-play-state: paused; */
}

.marquee-item {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 30px;
    flex-shrink: 0;
}

.marquee-item img {
    max-height: 100px;
    width: auto;
    object-fit: contain;
    filter: grayscale(100%);
    transition: filter 0.3s;
}

.marquee-item img:hover {
    filter: grayscale(0%);
}

@keyframes marquee {
    0%   { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}