@import url('rotator-3d.css');


/* ----------------------------------------------- General */ 
:root {
  --body-font-size:16px;
  --fontcolor:#36383b;
  --font1:"Barlow", sans-serif;
  --font2:"Open Sans", sans-serif;
  --activeColor:#e21f26;
  --activeColorHover:#F20000;
  --brandgrey:#36383b;
  --brandgreen:#376e6f;
  --brandyellow:#f7b240;
  --brandLightgrey:#f4f5f5;
  --brandgreyBox:#73787d;
  --brandgreyBox10:#f1f1f2;
  --brandgreyBox20:#e3e4e5;
  --brandgreyBox30:#d5d6d8;
  --brandgreyBox40:#c7c9cb;
  --brandgreyHover:#8e8f8f;
  --white:#FFF;
  --white50:rgb(255 255 255 /50%);
  --black:#000;
  --black5:rgb(0 0 0 /5%);
  --black10:rgb(0 0 0 /10%);
  --black20:rgb(0 0 0 /20%);
  --black40:rgb(0 0 0 /40%);
  --lightgrey:#f8f9fa;
  --shadowgrey:#c9c9c9;
  --linegrey:#f0f0f0;
  --superlightgrey:#f5f5f5;
  --mediumgrey:#c9c9c9;
  --grey:#555555;
  --success:#e9f7d9;
  --green:#39b43d;
  --gradPercent:100%;
  
}




/* Scrollbar */
/*::-webkit-scrollbar-track{
	-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
	background-color: var(--antracite);
}

::-webkit-scrollbar{
	width: 12px;
	background-color: var(--antracite);
}

::-webkit-scrollbar-thumb{
	-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.3);
	background-color: var(--brand-rosso);
}*/

/* Text Selection */
/*::selection {
  background: var(--official-green);
}
::-moz-selection {
  background: var(--official-green);
}
*/

.bgbrandLightgrey{
  background: var(--brandLightgrey);
}

.gradGreyLight{
  background: #DDDFDF;
  background: linear-gradient(180deg, rgb(244 246 246) 0%, rgba(252, 252, 252, 1) 100%);
  height: 500px;
}
.prdBckArrow .bigarrow{
  width: 100%;
  height: 100%;
  background: url(../img/arrow-green.svg)no-repeat left bottom;
  background-size: 800px;
  background-position: 50px -150px;
}

.brandgreen{color: var(--brandgreen) !important;}

ul.listedGreenArrow{
  list-style: none;
  padding: 0;
}
ul.listedGreenArrow li{
  padding-left:45px;
  background: url(../img/arrow-up-dx-green.svg) no-repeat 0 0;
  background-size: 18px;
  background-position: 0px 10px;
  font-size: 17px;
  margin-bottom: 10px;
  transition: all 0.3s ease-in-out;
}


ul.listedRedArrow{
  list-style: none;
  padding: 0;
}

ul.listedRedArrow li {
    padding-left: 45px;
    background: url(../img/arrow-up-dx-red.svg) no-repeat 0 0;
    background-size: 18px;
    background-position: 0px 4px;
    font-size: 17px;
    margin-bottom: 10px;
    transition: all 0.3s ease-in-out;
}


/* -- Multiselect -- */
.multiselectLabel{
  text-transform: uppercase;
  color: var(--grey);
  letter-spacing: 1px;
  font-size: 14px;
  display: block;
}

.multiselectComp + .select2-container--default .select2-selection--multiple{
  border-radius: 0;
  min-height: 40px;
}

.multiselectComp + .select2-container--default .select2-selection--multiple .select2-selection__choice{
  border-radius:0 ;
  border: 0;
  background: var(--brandgrey);
  color: var(--white);
  padding-right: 5px;
}

.multiselectComp + .select2-container--default .select2-selection--multiple .select2-selection__choice__remove{
  border-right: 0;
  border-radius:0 ;
  background: var(--activeColor);
  color: var(--white);
  padding-left: 5px;
}

.multiselectComp + .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover, 
.multiselectComp + .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:focus{
  background: var(--activeColorHover);
  color: var(--white);
}

/* -- End Multiselect -- */

.brandgreyBox{
  background: var(--brandgreyBox);
}
.brandgreyBox10{
  background: var(--brandgreyBox10);
}
.brandgreyBox20{
  background: var(--brandgreyBox20);
}
.brandgreyBox30{
  background: var(--brandgreyBox30);
}

.brandgreyBox40{
  background: var(--brandgreyBox40);
}


.social a:link,.social a:visited{
  font-size: 20px;
}
.social a:hover{
  opacity: 0.5;
}


.form-check-input:checked {
    background-color: var(--activeColor);
    border-color: var(--activeColor);
}


.activeColor,.activecolor{
  color: var(--activeColor) !important;
}

.bglightgrey{
  background: var(--lightgrey);
}


.bgVortex{
  background: url(../img/vortex.svg)no-repeat center center var(--brandgreyBox20);
  background-size: 300%;
  padding:100px 0;
  transition: all 0.3s ease-in-out;
}
.bgVortex:hover{
  background: url(../img/vortex.svg)no-repeat center center var(--brandgreyBox30);
  background-size: 300%;
  padding:100px 0;
  transition: all 0.3s ease-in-out;
}


.bgVortex2{
  background: url(../img/vortex2.svg)no-repeat -25% center var(--activeColor);
  padding:100px 0;
  transition: all 0.3s ease-in-out;
  color: var(--white);
}



.bigNumberWrap .bigNumbers{
  font-family: var(--font1);
  font-size: 5em;
  line-height: 1em;
  font-weight: 600;
  color: var(--brandgrey);
} 

.bigNumberWrap .bigNumbersDesc{
  font-family: var(--font1);
  font-size: 3em;
  font-weight: 700;
  font-size: 1.2em;
  text-transform: uppercase;
  letter-spacing: 2px;
}

.imgWrap{
  overflow: hidden;
  position: relative;
}
.imgWrap img{
  transform: scale(1);
  transition: all 0.3s ease-in-out;
}
.imgWrap:hover img{
  transform: scale(1.04);
  transition: all 0.5s ease-in-out;
}

.imgWrap .redTag{
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  background: var(--activeColor);
  color: var(--white);
  padding: 5px 10px;
}

.imgWrap.redSquare:before{
  content: "";
  width: 60px;
  height: 60px;
  background: url(../img/ico-card-hover.svg) no-repeat center center;
  background-size: cover;
  position: absolute;
  top:-15px;
  right:-15px;
  z-index: 2;
  transition: all 0.4s ease-in-out;
  opacity: 0;
  visibility: hidden;
}
.imgWrap.redSquare:hover:before{
  content: "";
  width: 60px;
  height: 60px;
  background: url(../img/ico-card-hover.svg) no-repeat center center;
  background-size: cover;
  position: absolute;
  top:-15px;
  right:-30px;
  z-index: 2;
  transition: all 0.4s ease-in-out;
  opacity: 1;
  visibility: visible;
}


.mapWrapper{
  position: relative;
}
.mapWrapper .globe{
  width: 100%;
}
.mapWrapper .overPointer{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.mapWrapper .overPointer .map-marker-red{
  width: 20px;
  height: 20px;
  background: url(../img/map-marker-red.svg)no-repeat center center;
  background-size: 15px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
.mapWrapper .overPointer .map-marker-blu{
  width: 20px;
  height: 20px;
  background: url(../img/map-marker-blu.svg)no-repeat center center;
  background-size: 15px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}

.mapWrapper .overPointer .map-marker-red .countryInfoBoxWrap,
.mapWrapper .overPointer .map-marker-blu .countryInfoBoxWrap{
  display: none;
  transition: all 0.4s ease-in-out;
  position: absolute;
  top: 20px;
  left:9px;
  padding: 20px;
  background: var(--brandgrey);
  color: var(--white);
  z-index: 3;
  min-width: 0px;
  height: 0px;
  overflow: auto;
}


.mapWrapper .overPointer .map-marker-red.is-active .countryInfoBoxWrap,
.mapWrapper .overPointer .map-marker-blu.is-active .countryInfoBoxWrap{
  display: block;
  min-width: 320px;
  height: 330px;
  box-shadow: 0px 10px 20px var(--shadowgrey);
  transition: all 0.4s ease-in-out;
}

.mapWrapper .overPointer .map-marker.map-marker-blu.is-active,
.mapWrapper .overPointer .map-marker.map-marker-red.is-active {
    z-index: 10;
}

.mapWrapper .overPointer .map-marker-red .countryInfoBoxWrap .countryInfoBox h3,
.mapWrapper .overPointer .map-marker-blu .countryInfoBoxWrap .countryInfoBox h3{
  color: var(--white50);
}
.mapWrapper .overPointer .map-marker-red .countryInfoBoxWrap .countryInfoBox a.cta,
.mapWrapper .overPointer .map-marker-blu .countryInfoBoxWrap .countryInfoBox a.cta{
   background: var(--activeColor);
  color: var(--white);
  padding: 3px 15px;
}

.mapWrapper .overPointer .map-marker-red .countryInfoBoxWrap .countryInfoBox .build,
.mapWrapper .overPointer .map-marker-blu .countryInfoBoxWrap .countryInfoBox .build{
 border-bottom: 1px solid var(--white50);
 padding-bottom: 20px;
}

.mapWrapper .overPointer .map-marker-red .countryInfoBoxWrap .countryInfoBox .build:last-child,
.mapWrapper .overPointer .map-marker-blu .countryInfoBoxWrap .countryInfoBox .build:last-child{
 border-bottom: 0;
 padding-bottom: 0px;
}

.worldwideWidget{
  width: 100%;
  height: 400px;
  padding: 30px;
  overflow: auto;
}

.mapSelector{
  border:1px solid var(--brandgrey);
  border-bottom: 0;

}

.mapSelector div{
  padding: 5px 18px;
  cursor: pointer;
  transition: all 0.3s ease-in-out;
}
.mapSelector div:hover{
  background: var(--superlightgrey);
  transition: all 0.3s ease-in-out;
}
.mapSelector div.active{
  background: var(--brandgrey);
  color: var(--white);
  transition: all 0.3s ease-in-out;
}
.mapSelector div.active:hover{
  background: var(--activeColor);
  color: var(--white);
  transition: all 0.3s ease-in-out;
}

/* General style */

body{
    background: var(--white);
    font-family: var(--font2);
    font-weight: 300;
    font-size: 17px;
    color: var(--fontcolor);
}
.h1,.h2,.h3,.h4,.h5,.h6,
h1,h2,h3,h4,h5,h6{
      font-family: var(--font1);
      font-weight: 600;
      color: var(--brandgrey);
      line-height: 1em;
}
strong{
  font-weight: bolder;
  font-weight: 600;
}

h1.extra,
.h1.extra{
  font-size: 50px;
}
h2.extra,
.h2.extra{
  font-size: 40px;
}

h1.extramedium,
.h1.extramedium{
  font-size: 70px;
  font-weight: 600;
}




a:link,
a:visited{
  color: var(--body-font-color);
  transition: all 0.3s ease-in-out;
  text-decoration: none;
}

a:hover{
  opacity: 0.7;
  text-transform: none;
}


main a.grey:link,
main a.grey:visited{
  color: var(--body-font-color);
  transition: all 0.3s ease-in-out;
  text-decoration: none;
}

main a.grey:hover{
  color: var(--activeColor);
  opacity: 0.7;
  text-transform: none;
}

main a:link,
main a:visited{
  color: var(--activeColor);
  transition: all 0.3s ease-in-out;
  text-decoration: none;
}

main a:hover,
main a:hover .h3{
  color: var(--activeColorHover);
  opacity: 0.7;
  text-transform: none;
}




input[type="submit"].cta-standard,
button.cta-standard,
a.cta-standard{
  background: var(--activeColor);
  color: var(--white) !important;
  font-weight: 400;
  font-size: 16px;
  padding: 7px 20px;
  border: 0;
  width: max-content;
  transition: all 0.3s ease-in-out;
  display: inline-block;
}
input[type="submit"].cta-standard:hover,
button.cta-standard:hover,
a.cta-standard:hover{
  background: var(--activeColorHover);
  transition: all 0.3s ease-in-out;
}

input[type="submit"].cta-standard-grey,
button.cta-standard-grey,
a.cta-standard-grey{
  background: var(--brandgrey);
  color: var(--white) !important;;
  font-weight: 400;
  font-size: 16px;
  padding: 7px 20px;
  border: 0;
  width: max-content;
  transition: all 0.3s ease-in-out;
  display: inline-block;
}
input[type="submit"].cta-standard-grey:hover,
button.cta-standard-grey:hover,
a.cta-standard-grey:hover{
  background: var(--brandgreyHover);
  transition: all 0.3s ease-in-out;
}

input[type="submit"].cta-standard-white,
button.cta-standard-white,
a.cta-standard-white{
  background: var(--white);
  color: var(--fontcolor) !important;
  font-weight: 400;
  font-size: 16px;
  padding: 7px 20px;
  border: 0;
  width: max-content;
  transition: all 0.3s ease-in-out;
  display: inline-block;
}
input[type="submit"].cta-standard-white:hover,
button.cta-standard-white:hover,
a.cta-standard-white:hover{
  background: var(--white);
  transition: all 0.3s ease-in-out;
}


input[type="submit"].cta-standard-outline,
button.cta-standard-outline,
a.cta-standard-outline{
  background: transparent;
  color: var(--brandgrey) !important;
  font-weight: 400;
  font-size: 16px;
  padding: 7px 20px;
  border: 1px solid var(--brandgrey);
  width: max-content;
  transition: all 0.3s ease-in-out;
  display: inline-block;
}

input[type="submit"].cta-standard-outline-wbg,
button.cta-standard-outline-wbg,
a.cta-standard-outline-wbg{
  background: var(--white);
  color: var(--brandgrey) !important;
  font-weight: 400;
  font-size: 16px;
  padding: 7px 20px;
  border: 1px solid var(--brandgrey);
  width: max-content;
  transition: all 0.3s ease-in-out;
  display: inline-block;
}
input[type="submit"].cta-standard-outline-wbg:hover,
button.cta-standard-outline-wbg:hover,
a.cta-standard-outline-wbg:hover{
  background: var(--brandgrey);
  color: var(--white) !important;
  font-weight: 400;
  font-size: 16px;
  padding: 7px 20px;
  border: 1px solid var(--brandgrey);
  width: max-content;
  transition: all 0.3s ease-in-out;
  display: inline-block;
}




a.cta-standard-outline.active,
a.cta-standard-outline.active:hover
a.cta-standard-outline:hover,
input[type="submit"].cta-standard-outline:hover,
a.cta-standard-outline:hover{
  background: transparent;
  border: 1px solid var(--activeColor);
  color: var(--activeColor) !important;
  transition: all 0.3s ease-in-out;
}

input[type="submit"].cta-standard.big,
button.cta-standard.big,
a.cta-standard.big,
input[type="submit"].cta-standard-outline.big,
button.cta-standard-outline.big,
a.cta-standard-outline.big{
  font-size: 18px;
  padding: 12px 30px;
  display: block;
}

input[type="submit"].cta-standard.long,
button.cta-standard.long,
a.cta-standard.long,
input[type="submit"].cta-standard-outline.long,
button.cta-standard-outline.long,
a.cta-standard-outline.long{
  width: 100%;
  text-align: center;
}

.b1{
  border: 1px solid var(--linegrey);
}
.b1b{
  border: 1px solid var(--brandgrey);
}
.bt{
  border-top: 1px solid var(--linegrey);
}

.b1bb{
  border-bottom: 1px solid var(--fontcolor);
}



.bb{
  border-bottom: 1px solid var(--linegrey);
}
.br{
  border-right: 1px solid var(--linegrey);
}


/* Navigation */

.officialogo img{
  height: 60px;
  transition: all 0.3s ease-in-out;
}

.topnav{
  font-size: 14px;
  background: rgb(0 0 0 / 20%);
  color: var(--white);
  position: fixed;
  top:0px;
  z-index: 50;
  width: 100%;
  border-bottom: 1px solid rgb(255 255 255 / 20%);
  -webkit-backdrop-filter: blur(3px);
  backdrop-filter: blur(3px);
  transition: all 0.3s ease-in-out;
}

.topnav .utilityBar{
  border-left: 1px solid rgb(255 255 255 / 20%);
  border-right: 1px solid rgb(255 255 255 / 20%);
}
.topnav,
.topnav .utilityBar{
  height: 80px;
}


.topnav .topnavContent{
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.topnav .topnavContent .officialogoMobile{
  display: none;
}

.topnav i{
  font-size: 18px;
  padding: 9px;
}

.topnav a{
  color: var(--white);
}

.topnav ul.menu{
  margin:0 ;
  padding: 0;
  display: flex;
}

.topnav ul.menu > li{
  list-style:none ;
}


body .topnav ul.menu li > a:link,
body .topnav ul.menu li > a:visited{
  color: var(--white);
  line-height: 5em;
  padding:5px 12px;
  display: block;
  opacity: 1;
  transition: all 0.3s ease-in-out;
  text-transform: uppercase;
  font-weight: 500;
}
.topnav ul.menu li > a:hover{
  color: var(--white50) !important;
}

/*body .topnav:hover ul.menu > li a:link,
body .topnav:hover ul.menu > li a:visited{
  color: var(--white);
}*/



.topnav .submenubar{
  width: 100%;
  background: var(--white);
  /*  border-top:3px solid var(--activeColor);*/
  position: absolute;
  top:85px;
  opacity: 0;
  visibility: hidden;
  left: 0;
  z-index: -1;
  box-shadow: 0px 20px 20px -20px var(--black40);
  transition: all 0.3s ease-in-out;
}


.topnav ul.menu > li.hasChild:hover a + .submenubar,
.topnav ul.menu > li.hasChild a:hover + .submenubar,
.topnav ul.menu > li.hasChild .submenubar:hover{
  top:80px;
  opacity: 1;
  visibility: visible;
}

body .topnav ul.menu > li.hasChild > a.mobile,
body .topnav ul.menu li ul.submenu > li a.mobile{
    display: none;
  }

.topnav .topnavContent .menuWrapper .contactMenu{
    display: none;
  }

.topnav .submenubar .menusubtitle{
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  color: var(--brandgrey);
  letter-spacing: 2px;
  line-height: 2em;
}

.topnav .submenubar .twoColumn {
  display: flex;
  justify-content: center;
}
.topnav .submenubar .twoColumn ul.submenu{
  display: initial;
}
.topnav .submenubar .twoColumn ul.submenu:nth-child(1){
  margin-right: 20px;
}


.topnav .submenubar ul.submenu{
  margin:0 ;
  padding: 10px;
  display: flex;
  justify-content: center;
}


.topnav .submenubar ul.submenu li{
  list-style:none ;
  display: flex;
  flex-wrap: wrap;

}

.topnav .submenubar ul.submenu li a:link,
.topnav .submenubar ul.submenu li a:visited{
  color: var(--black);
  font-size: 12px;
  line-height: 1.3em;
  transition: all 0.3s ease-in-out;
  display: block;
  
}
.topnav .submenubar ul.submenu li a:hover{
  color: var(--black40) !important;
}


.topnav .submenubar .twoColumn ul.submenu li a:link,
.topnav .submenubar .twoColumn ul.submenu li a:visited{
  border-radius: 8px;
}
.topnav .submenubar .twoColumn ul.submenu li a:hover{
  color: var(--grey) !important;
  background: var(--black5);
}


/*.topnav .submenubar ul.submenu.submenu-col-2{
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  column-count: 2;
}
.topnav .submenubar ul.submenu.submenu-col-2 > li a div{
  width: 40px;
  min-height: 40px;
}
.topnav .submenubar ul.submenu.submenu-col-2 > li a{
  display: flex !important;
  flex-direction: row;
  align-items: center;
  width: 300px;
}
*/


/*.topnav .submenubar ul.submenu > li div{
  margin-bottom: 5px;
  min-height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}*/

/*.topnav .submenubar ul.submenu > li a img{
  height: 40px;
}*/

/*.topnav .submenubar ul.submenu > li a:hover img{
  filter: invert(35%) sepia(23%) saturate(2283%) hue-rotate(322deg) brightness(110%) contrast(118%);
  transition: all 0.3s ease-in-out;
}*/

.topnav .hamburgerWrap{
  width: 45px;
  height: 45px;
  display: none;
}

.topnav .hamburger{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 100%;
}
.topnav .hamburger div{
  height: 2px;
  width: 35px;
  background: var(--activeColor);
  transition: all 0.4s ease-in-out;

}
.topnav .hamburger div:last-child{
  margin-top: 8px;
}

.topnav .hamburger.active div{
  transform: rotate(45deg);
  width: 30px;
}
.topnav .hamburger.active div:last-child{
  margin-top: -2px;
  transform: rotate(-45deg);
  width: 30px;
}

/* ricolorazione allo scroll di 100 px*/

.topnav.reWhite{
  background: var(--white);
}
body .topnav.reWhite ul.menu li > a:link, 
body .topnav.reWhite ul.menu li > a:visited{
  color: var(--fontcolor);
}
body .topnav.reWhite ul.menu li > a:hover{
  color: var(--fontcolor) !important;
  opacity: 0.5;
}

.topnav .utilityBar i:hover,
.topnav .utilityBar span:hover{
  opacity: 0.5;
  transition: all 0.4s ease-in-out;
}


.topnav.reWhite .utilityBar{
  border-left: 1px solid rgb(0 0 0 / 7%);
  border-right: 1px solid rgb(0 0 0 / 7%);
  color: var(--brandgrey);
  transition: all 0.4s ease-in-out;
}

.topnav.reWhite .utilityBar i:hover,
.topnav.reWhite .utilityBar span:hover{
  color: var(--brandgrey) !important;
  opacity: 0.5;
  transition: all 0.4s ease-in-out;
}

.topnav .mitLogo{
  margin-top:5px;
}

.topnav .mitLogo .mitw{
  margin-top: 5px;
  display: block;
}
.topnav .mitLogo .mitd{
  display: none;
}

.topnav.reWhite .mitLogo .mitw{
  display: none;
}
.topnav.reWhite .mitLogo .mitd{
  display: block;
}

.topnav.reWhite .officialogo{
  display: none;
}

.topnav.reWhite .officialogoMobile{
  display: block;
}

.topnav.reWhite .officialogoMobile img{
 height: 60px;
}

a.gradLnk{
   color: var(--white);
   position: relative;
   overflow: hidden;
   display: block;
   transition: all 0.4s ease-in-out;
}
a.gradLnk img{
  min-width:100%;
  min-height:100%;
  transition: all 0.4s ease-in-out;
}
a.gradLnk:hover img{
  transform: scale(1.04);
}

a.gradLnk:before{
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  bottom: 0;
  left: 0;
  background: rgb(0,0,0);
  background: linear-gradient(0deg, rgba(0,0,0,var(--gradPercent)) 0%, rgba(0,0,0,0) 100%);
  z-index: 2;
  opacity: 0.5;
  transition: all 0.4s ease-in-out;
}
a.gradLnk .overText{
  position: absolute;
  width: 100%;
  padding: 20px;
  color: var(--white);
  text-align: center;
  bottom: 0;
  left: 0;
  z-index: 3;
}

a.gradLnk:hover:before{
  opacity:1;
  transition: all 0.4s ease-in-out;
}




a.gradLnkRed{
   color: var(--white);
   position: relative;
   overflow: hidden;
   display: block;
   transition: all 0.4s ease-in-out;
}
a.gradLnkRed img{
  min-width:100%;
  min-height:100%;
  transition: all 0.4s ease-in-out;
}
a.gradLnkRed:hover img{
  transform: scale(1.04);
}

a.gradLnkRed:before{
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  bottom: 0;
  left: 0;
  background: rgb(0,0,0);
  background: linear-gradient(0deg, rgba(226,31,38, 100%) 0%, rgba(226,31,38,0%) 50%);
  z-index: 2;
  opacity: 0.8;
  transition: all 0.4s ease-in-out;
}
a.gradLnkRed .overText{
  position: absolute;
  width: calc(100% - 100px);
  padding: 20px;
  padding-bottom: 30px;
  color: var(--white);
  font-family: var(--font1);
  line-height: 1em;
  font-weight: 500;
  font-size: 30px;
  bottom: 0;
  left: 0;
  z-index: 3;
}

a.gradLnkRed:hover:before{
  opacity:1;
  transition: all 0.4s ease-in-out;
}

a.gradLnkRed .arrow{
  position: absolute;
  bottom: 30px;
  right: 30px;
  z-index: 3;
  width: 20px;
  height: 20px;
  background: url('../img/arrow-up-dx.svg') no-repeat center center;
  background-size: cover;
  display: block;
  transition: all 0.4s ease-in-out;
}

a.gradLnkRed:hover .arrow{
  position: absolute;
  bottom: 40px;
  right: 20px;
  z-index: 3;
  width: 20px;
  height: 20px;
  background: url('../img/arrow-up-dx.svg') no-repeat center center;
  background-size: cover;
  display: block;
  transition: all 0.4s ease-in-out;
}


a.gradLnkCustom{
   color: var(--white);
   position: relative;
   overflow: hidden;
   display: block;
   transition: all 0.4s ease-in-out;
}
a.gradLnkCustom img{
  min-width:100%;
  min-height:100%;
  transition: all 0.4s ease-in-out;
}
a.gradLnkCustom:hover img{
  transform: scale(1.04);
  /* filter: brightness(0.5) */
}

a.gradLnkCustom:before{
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  bottom: 0;
  left: 0;
  background: rgb(0,0,0);
  background: linear-gradient(0deg, var(--gradLnkCustom) 0%, rgba(226,31,38,0%) 50%);
  z-index: 2;
  opacity: 0.5;
  transition: all 0.4s ease-in-out;
}

a.gradLnkCustom .overText{
  position: absolute;
  width: calc(100% - 100px);
  padding: 20px;
  padding-bottom: 30px;
  color: var(--white);
  font-family: var(--font1);
  line-height: 1em;
  font-weight: 500;
  font-size: 24px;
  bottom: 0;
  left: 0;
  z-index: 3;
}

a.gradLnkCustom:hover:before{
  opacity:1;
  transition: all 0.4s ease-in-out;
}

a.gradLnkCustom .arrow{
  position: absolute;
  bottom: 30px;
  right: 30px;
  z-index: 3;
  width: 20px;
  height: 20px;
  background: url('../img/arrow-up-dx.svg') no-repeat center center;
  background-size: cover;
  display: block;
  transition: all 0.4s ease-in-out;
}

a.gradLnkCustom .raquo-icon{
  width: 55px;
  height: 55px;
}
a.gradLnkCustom:hover .raquo-icon{
  right: 20px;
}

a.gradLnkCustom:hover .arrow{
  position: absolute;
  bottom: 40px;
  right: 20px;
  z-index: 3;
  width: 20px;
  height: 20px;
  background: url('../img/arrow-up-dx.svg') no-repeat center center;
  background-size: cover;
  display: block;
  transition: all 0.4s ease-in-out;
}







a.gradLnkVert{
   color: var(--white);
   position: relative;
   overflow: hidden;
   display: block;
   transition: all 0.4s ease-in-out;
}
a.gradLnkVert img{
  min-width:100%;
  min-height:100%;
  filter: grayscale(100%);
  transition: all 0.4s ease-in-out;
}
a.gradLnkVert:hover img{
  transform: scale(1.04);
  filter: grayscale(0%);
}

a.gradLnkVert:before{
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  bottom: 0;
  left: 0;
  background: rgb(0,0,0);
  /*background: linear-gradient(0deg, var(--gradPercent) 0%, rgba(0,0,0,0) 50%);*/
  background: linear-gradient(0deg, var(--gradPercent) 0%,rgb(132 132 132 / 87%) 50%);
  z-index: 2;
  transition: all 0.4s ease-in-out;
}

a.gradLnkVert:hover:before{
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  bottom: 0;
  left: 0;
  background: rgb(0,0,0);
  /* background: linear-gradient(0deg, var(--gradPercentHover) 0%, rgba(0,0,0,0) 50%); */
  background: linear-gradient(0deg, var(--gradPercentHover) 0%,rgb(132 132 132 / 50%) 50%);
  z-index: 2;
  transition: all 0.4s ease-in-out;
}


a.gradLnkVert .overText{
    position: absolute;
    width: 90%;
    text-transform: uppercase;
    height: 120px;
    color: var(--white);
    left: 80px;
    bottom: -50px;
    z-index: 3;
    transform: rotate(-90deg);
    transform-origin: left center;
}

a.gradLnkVert .arrow{
  position: absolute;
  bottom: 20px;
  right: 30px;
  z-index: 3;
  width: 30px;
  height: 30px;
  background: url('../img/arrow-up-dx.svg') no-repeat center center;
  background-size: cover;
  display: block;
  transition: all 0.4s ease-in-out;
}

a.gradLnkVert:hover .arrow{
  position: absolute;
  bottom: 30px;
  right: 20px;
  z-index: 5;
  width: 30px;
  height: 30px;
  background: url('../img/arrow-up-dx.svg') no-repeat center center;
  background-size: cover;
  display: block;
  transition: all 0.4s ease-in-out;
}

.raquo-icon::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 151.8 114.7'%3E%3Cg%3E%3Cpath fill='none' stroke='%23fff' stroke-width='3' d='M63.7,4.9l41.1,51.3c.7.9.7,2.2,0,3.1l-40.9,50.3c-.6.7-.5,1.8.2,2.4.3.2.7.4,1.1.4h38.7c.7,0,1.5-.3,1.9-.9l42.4-52.5c.7-.9.7-2.2,0-3.1L105.7,3.3c-.5-.6-1.2-.9-1.9-.9h-38.9c-.9,0-1.6.7-1.6,1.6,0,.4.1.7.3,1'/%3E%3C/g%3E%3Cg%3E%3Cpath fill='none' stroke='%23fff' stroke-width='3' d='M3.5,4.9l41.1,51.3c.7.9.7,2.2,0,3.1L3.6,109.6c-.6.7-.5,1.8.2,2.4.3.2.7.4,1.1.4h38.7c.7,0,1.5-.3,1.9-.9l42.4-52.5c.7-.9.7-2.2,0-3.1L45.5,3.3c-.5-.6-1.2-.9-1.9-.9H4.7c-.9,0-1.6.7-1.6,1.6,0,.4.1.7.3,1'/%3E%3C/g%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 4;
}

.raquo-icon::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  transition: background-color 0.3s ease;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 151.8 114.7'%3E%3Cg%3E%3Cpath fill='black' d='M63.7,4.9l41.1,51.3c.7.9.7,2.2,0,3.1l-40.9,50.3c-.6.7-.5,1.8.2,2.4.3.2.7.4,1.1.4h38.7c.7,0,1.5-.3,1.9-.9l42.4-52.5c.7-.9.7-2.2,0-3.1L105.7,3.3c-.5-.6-1.2-.9-1.9-.9h-38.9c-.9,0-1.6.7-1.6,1.6,0,.4.1.7.3,1'/%3E%3C/g%3E%3Cg%3E%3Cpath fill='black' d='M3.5,4.9l41.1,51.3c.7.9.7,2.2,0,3.1L3.6,109.6c-.6.7-.5,1.8.2,2.4.3.2.7.4,1.1.4h38.7c.7,0,1.5-.3,1.9-.9l42.4-52.5c.7-.9.7-2.2,0-3.1L45.5,3.3c-.5-.6-1.2-.9-1.9-.9H4.7c-.9,0-1.6.7-1.6,1.6,0,.4.1.7.3,1'/%3E%3C/g%3E%3C/svg%3E");
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 151.8 114.7'%3E%3Cg%3E%3Cpath fill='black' d='M63.7,4.9l41.1,51.3c.7.9.7,2.2,0,3.1l-40.9,50.3c-.6.7-.5,1.8.2,2.4.3.2.7.4,1.1.4h38.7c.7,0,1.5-.3,1.9-.9l42.4-52.5c.7-.9.7-2.2,0-3.1L105.7,3.3c-.5-.6-1.2-.9-1.9-.9h-38.9c-.9,0-1.6.7-1.6,1.6,0,.4.1.7.3,1'/%3E%3C/g%3E%3Cg%3E%3Cpath fill='black' d='M3.5,4.9l41.1,51.3c.7.9.7,2.2,0,3.1L3.6,109.6c-.6.7-.5,1.8.2,2.4.3.2.7.4,1.1.4h38.7c.7,0,1.5-.3,1.9-.9l42.4-52.5c.7-.9.7-2.2,0-3.1L45.5,3.3c-.5-.6-1.2-.9-1.9-.9H4.7c-.9,0-1.6.7-1.6,1.6,0,.4.1.7.3,1'/%3E%3C/g%3E%3C/svg%3E");
  mask-size: contain;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  z-index: 1;
}

.raquo-icon {
  position: absolute;
  bottom: 20px;
  right: 30px;
  width: 120px;
  height: 70px;
  z-index: 4;
  transition: all 0.4s ease-in-out;
}

a.gradLnkVert:hover .raquo-icon{
  right: 20px;
}


.fourResHeroTurboden .raquo-icon::after,
a:hover .raquo-icon::after,
a.gradLnkVert:hover .raquo-icon::after {
  background-color: var(--hover-color, #fff);
}




.fourResHeroTurboden .raquo-icon {
  position: absolute;
  top: 20px;
  right: 30px;
  width: 75px;
  height: 57px;
  z-index: 4;
  transition: all 0.4s ease-in-out;
}


a.gradLnkVert .overText .overLabel{
  position: absolute;
  line-height: 1em;
  left: 0;
  z-index: 3;
  width: 100%;
  font-size: 2.5em;
  font-family: var(--font1);
  font-weight: 600;
}

a.gradLnkVert:hover:before{
  opacity:1;
  transition: all 0.4s ease-in-out;
}

.typUsrLnk{
  position: relative;
  border-right: 1px solid var(--activeColor);
  display: block;
  padding-left:20px;
  height: 100%;
  padding-bottom:20px;
}

.typUsrLnk .iconWrap{
  position: relative;
}

.typUsrLnk .iconWrap:after{
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: url(../img/raquo-small.svg)no-repeat top left;
  background-size: 100px;
  background-position: 50px;
  z-index: 2;
  top:0; 
  left: 0;
  transition: all 0.4s ease-in-out;
}
.typUsrLnk:hover .iconWrap:after{
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: url(../img/raquo-small.svg)no-repeat top left;
  background-size: 100px;
  background-position: 65px;
  z-index: 2;
  top:0; 
  left: 0;
  transition: all 0.4s ease-in-out;
}
.typUsrLnk .iconWrap img{
  height: 100px;
}
.typUsrLnk .overText{
  width: 100%;
  padding-left: 70px;
  font-family: var(--font1);
  line-height: 1em;
  font-weight: 500;
  color: var(--brandgrey);
  font-size: 30px;
  transition: all 0.4s ease-in-out;
}
.typUsrLnk:hover .overText{
  color: var(--activeColor);
  transition: all 0.4s ease-in-out;
}



a.teamLnk{
   color: var(--white);
   position: relative;
   overflow: hidden;
   display: block;
   transition: all 0.4s ease-in-out;
}
a.teamLnk img{
  min-width:100%;
  min-height:100%;
  transition: all 0.4s ease-in-out;
}
a.teamLnk:hover img{
  transform: scale(1.04);
}

a.teamLnk:before{
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  bottom: 0;
  left: 0;
  background: rgb(226 31 38 / 80%);
  z-index: 2;
  opacity: 0;
  transition: all 0.4s ease-in-out;
}
a.teamLnk .overText{
  position: absolute;
  width: 100%;
  padding: 20px;
  color: var(--white);
  bottom: 0;
  left: 0;
  z-index: 3;
}

a.teamLnk:hover:before{
  opacity:1;
  transition: all 0.4s ease-in-out;
}


a.teamLnk .overText .job{
  opacity: 0;
  visibility: hidden;
  transition: all 0.4s ease-in-out;
  margin-bottom: -40px;
}

a.teamLnk:hover .overText .job{
  opacity: 1;
  visibility: visible;
  transition: all 0.4s ease-in-out;
  margin-bottom: 0px;
}

a.teamLnk .overText small{
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 2px;
}



a.teamLnk .overText .desc{
  font-size: 14px;
  margin-bottom: 0px;
  opacity: 0;
  visibility: hidden;
  transition: all 0.4s ease-in-out;
}
a.teamLnk:hover .overText .desc{
  font-size: 14px;
  margin-bottom: 20px;
  opacity: 1;
  visibility: visible;
  transition: all 0.4s ease-in-out;
}


.w20{
  width: 20%;
}

/* Search */

#searchBarWrapper{
  background: rgb(255 255 255 / 50%);
    -webkit-backdrop-filter: blur(3px);
  backdrop-filter: blur(3px);
  width: 100%;
  height: 80px;
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  display: none;
}

#searchBarWrapper.active{
  display: block;
}

#closeSearchBarWrapper{
  font-size: 36px;
  color: var(--black);
  position: absolute;
  top:15px;
  right: 20px;
  z-index: 2;
}

#openSearchBar,
#langToggler{
  cursor: pointer;
}



#searchBar{
  display: flex;
  justify-content: center;
}
#searchBarContent{
  width: 80%;
  margin-top: 8px;
  max-height: 80vh;
  padding: 15px;
}

#searchBarContent #megasearch input{
  border-radius: 0;
}
#searchBarContent #megasearch #button-search{
  border: 0;
  background: var(--black);
  color: var(--white);
  width: 50px;
  transition: all 0.3s ease-in-out;
}
#searchBarContent #megasearch #button-search:hover{
  border: 0;
  background: var(--activeColor);
  color: var(--white);
  width: 50px;
  transition: all 0.3s ease-in-out;
}



#langToggler{
  position: relative;
}

.flipOriz{
  transform: rotate(180deg);
}

#langBarWrapper{
  position: absolute;
  z-index: -1;
  top: -45px;
  opacity: 0;
  visibility: hidden;
  background: var(--black);
  width: 120px;
  padding: 5px;
  border-radius: 4px;
  transition: all 0.3s ease-in-out;
}

#langBarWrapper.active{
  opacity: 1;
  top: 50px;
  visibility: visible;
  box-shadow: 0px 0px 20px var(--black);
}




#langBarWrapper a{
  font-size: 14px;
  display: flex;
  align-items: center;
  padding: 5px 10px;
  margin-bottom: 5px;
}

#langBarWrapper a.active{
  background: rgb(0 0 0 / 20%);
  border-radius: 4px;
}


#langBarWrapper a img{
  width: 16px;
  height: 16px;
  border-radius: 50%;
  display: block;
  transition: all 0.3s ease-in-out;
}
#langBarWrapper a.active:hover,
#langBarWrapper a:hover{
  background: var(--antracite);
  color: var(--white);
  border-radius: 4px;
}


#langBarWrapper a:hover img{
  opacity:0.5;
}


/* Hero Owl Slider */

  #HeroVideoNewOwl{
    background: #f1f1f1;
    position: relative;
  }

  
 /* #HeroVideoNewOwl::before{
  content: "";
  position: absolute;
  top:0;
  left: 0;
  width: 100%;
  height: 200px;
  background: linear-gradient(180deg, rgba(0,0,0,1) 0%, rgba(255,255,255,0) 100%);
  display: block;
  z-index: 2;
  }*/

  #HeroVideoNewOwl .item{
    position: relative;
    width: 100%;
    height: 800px;
  }



  #HeroVideoNewOwl .item .HeroVideoImgWrapper:before{
    content:"";
    width: 100%;
    height: 100%;
    display: block;
    /*background: url(img/bck-arrow.svg)no-repeat rgb(0 0 0 / 35%);*/
    background-position: bottom;
    background-size: cover;
    position: absolute;
    z-index: 2;
    top:0;
    left:0;
  }
  #HeroVideoNewOwl .item .HeroVideoImgWrapper{
    width: 100%;
    height: 100%;
    overflow: hidden;
    display: block;
    position: absolute;
    top:0;
    left:0;
  }
  #HeroVideoNewOwl .item .HeroVideoImgWrapper .videoDesktop,
  #HeroVideoNewOwl .item .HeroVideoImgWrapper .videoMobile{
    width: 100%;
    height: 100%;
  }
  #HeroVideoNewOwl .item .HeroVideoImgWrapper img,
  #HeroVideoNewOwl .item .HeroVideoImgWrapper video#bckSlideVideo{
    position: absolute;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    margin: auto;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
  }

  #HeroVideoNewOwl .item .HeroVideoImgWrapper.pulse img{
    transform: scale(1);
    animation: pulse 10s infinite;
  }
    @keyframes pulse {
        0% {
            transform: scale(1);
            box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.7);
        }

        50% {
            transform: scale(1.06);
            box-shadow: 0 0 0 10px rgba(0, 0, 0, 0);
        }

        100% {
            transform: scale(1);
            box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
        }
    }


  #HeroVideoNewOwl .item:before{
    content: "";
    position: absolute;
    top: 0;
    right: 0%;
    height: 100%;
    width: 100%;
    background: url(../img/heroArrow.svg) no-repeat right center;
    background-size: contain;
    z-index: 2;
  }
    

  #HeroVideoNewOwl .item .overText{
    position: absolute;
    top:0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 3;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 4;
    background: rgb(0 0 0 / 30%);
  }

  #HeroVideoNewOwl .item .overText .overTextContentWrapper{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: start;
    width: 70%;
  }

  #HeroVideoNewOwl .item .overText img.logo{
    width: 100px;
    margin-bottom: 50px;
  }
  #HeroVideoNewOwl .item .overText .slideTag{
    color: var(--white);
    font-size: 18px;
    font-weight: 500;
    line-height: 1em;
    background: var(--brand-rosso);
    padding: 5px 10px;
  }
  #HeroVideoNewOwl .item .overText .slideTitle{
    color: var(--white);
    font-family: var(--font2);
    font-size: 90px;
    font-weight: 500;
    line-height: 1em;
    margin-left: -8px
  }
  #HeroVideoNewOwl .item .overText .slideSubTitle{
    color: var(--white);
    font-size: 18px;
    font-weight: 300;
    line-height: 1em;
  }
  #HeroVideoNewOwl .owl-dots {
    position: absolute;
    width: 100%;
    bottom: 40px;
    text-align: right;
    padding-right: 30px;
  }
  #HeroVideoNewOwl .owl-dots .owl-dot span{
    width: 18px;
    height: 3px;
    margin: 3px;
    background: var(--white50);
    display: block;
    transition: opacity .2s ease;
    border-radius:0px;
  }
  #HeroVideoNewOwl .owl-dots .owl-dot.active span{
    background: var(--brand-rosso);
    opacity:1;
  }

  #HeroVideoNewOwl .owl-nav {
    top: 45%;
    position: absolute;
    z-index: 2;
    background: transparent;
    width: 100%;
    display: flex;
    justify-content: space-between;
  }
  #HeroVideoNewOwl .owl-nav button{
    width: 30px;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 20px;
  }
  #HeroVideoNewOwl .owl-nav .owl-prev span,
  #HeroVideoNewOwl .owl-nav .owl-next span,
  #HeroVideoNewOwl .owl-nav .owl-prev i,
  #HeroVideoNewOwl .owl-nav .owl-next i{
    font-size: 36px;
    color:#fff;
  }

  #HeroVideoNewOwl .owl-nav img{
    width: 40px;
  }

  .owl-theme .owl-nav [class*=owl-]:hover{
    background: transparent;
    opacity: 0.5;
    transition: all 0.3s ease-in-out;
  }

  @media (max-width: 768px) {
    /* media query x la heroslider */
    #HeroVideoNewOwl .item .overText h1{
    color: var(--white);
    font-size: 40px;
    font-weight: 500;
    line-height: 1em;
    }
  }

/* End - Hero Owl Slider */



footer ul{
  padding: 0;
}

footer ul li{
  list-style: none;
}

footer a:hover{
  color: var(--activeColor);
}


.footerBrand strong{
  font-size: 18px;
}

.footerBrand .company{
  font-size:11px;
  margin-right:3px;
}

.footerBrand a{
  margin-top: -5px;
}

.footerBrand a img{
  height: 18px;
} 



#newsletterSubscribe input{
  background: var(--superlightgrey);
  border: 0;
  padding: 8px 20px;
}

.arrow-circle-up{
  width: 50px;
  height: 50px;
  background: url(../img/arrow-circle-up.svg)no-repeat center center;
  background-size: cover;
  display: block;
  transition: all 0.4s ease-in-out;
}
.arrow-circle-up:hover{
  width: 50px;
  height: 50px;
  background: url(../img/arrow-circle-up-active.svg)no-repeat center center;
  background-size: cover;
  display: block;
  transition: all 0.4s ease-in-out;
}



.news-case-item:hover h4{
  color: var(--activeColor);
  transition: all 0.4s ease-in-out;
}

.news-case-item .date{
  text-transform: uppercase;
  font-size: 14px;
}

.news-case-item:hover .arrow-circle-up{
  width: 50px;
  height: 50px;
  background: url(../img/arrow-circle-up-active.svg)no-repeat center center;
  background-size: cover;
  display: block;
  transition: all 0.4s ease-in-out;
}

.news-case-item .imgWrap {
  overflow: hidden;
}
.news-case-item .imgWrap img{
  transition: all 0.4s ease-in-out;
}
.news-case-item:hover .imgWrap img{
  transform: scale(1.04);
  transition: all 0.4s ease-in-out;
}

.nwsltrSection .nwsltrSectionTitle{
  transition: all 0.4s ease-in-out;
}
.nwsltrSection:hover .nwsltrSectionTitle{
  color: var(--activeColor);
  transition: all 0.4s ease-in-out;
}
.nwsltrSection img{
  margin-left:10px ;
  transition: all 0.4s ease-in-out;
}
.nwsltrSection:hover img{
  margin-left:20px ;
  transform: rotate(20deg);
  transition: all 0.4s ease-in-out;
}

.copy{
  font-size: 14px;
}
a.social{
  font-size: 24px;
}


.fourResHero{
  position: relative;
  height: 500px;
  overflow: hidden;
  display: flex;
  align-items: center;
}
.fourResHero img{
  opacity:0.9;
  width: 100%;
}
.fourResHero picture{
  width: 100%;
}

.fourResHero h1{
  font-weight: 500;
  font-size: 60px;
}

.fourResHero .textOverlay{
  position: absolute;
  padding:50px 10%;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: end;
  background: rgb(0 0 0 /40%);
  z-index: 3;
}



.fourResHeroTurboden{
  position: relative;
  max-height: 500px;
  overflow: hidden;
  display: flex;
  align-items: center;
}
.fourResHeroTurboden img{
  /* opacity:0.9;
  min-width: 100%;
  max-height: 100%; */
  width: 100%;
}
.fourResHeroTurboden picture{
  width: 100%;
}

.fourResHeroTurboden h1{
  font-weight: 500;
  font-size: 60px;
}

.fourResHeroTurboden .textOverlay{
  position: absolute;
  padding:50px 10%;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /* display: flex;
  flex-direction: column;
  justify-content: end; */
  background: rgb(0 0 0 /40%);
  z-index: 3;
}

.fourResHeroTurboden .arrow{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    background: url(../img/heroArrow.svg) no-repeat 100% top;
    background-size: contain;
    z-index: 2;
}
.fourResHeroTurboden .bgGrad{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    background: linear-gradient(0deg, var(--customColor) 0%, rgba(0,0,0,0) 50%);
    background-size: contain;
    z-index: 2;
}

.outlineraquo{
  position: relative;
}
.outlineraquo:before{
    content: "";
    position: absolute;
    top: 50px;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    background: url(../img/raquo.svg) no-repeat 90% bottom;
    background-size: contain;
    z-index: 2;
}



/*.fourResHero:before{
  content: "";
  position: absolute;
  width: 100%;
  height: 200px;
  background: rgb(0,0,0);
  background: linear-gradient(0deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);
  z-index: 2;
  bottom: 0;
  left:0;
}*/





.breadc a:link,.breadc a:visited{
  font-size: 12px;
  color: var(--brandgrey);
}
.breadc a:hover{
  color: var(--activeColor);
}

ul.advantages{
  margin: 0;
  padding: 0;
}
ul.advantages li{
 list-style: none;
 background: url(../img/check-green.svg)no-repeat;
 background-position: 0px 4px;
 background-size: 20px;
 padding-left: 30px;
 line-height: 1.7em;
}
ul.advantages-w li{
 list-style: none;
 background: url(../img/check-white.svg)no-repeat;
 background-position: 0px 4px;
 background-size: 20px;
 padding-left: 30px;
 line-height: 1.7em;
}


.overgraphWrap{
  position: relative;
}

.overgraph{
  position: absolute;
  left:0;
  bottom: 100px;
  z-index: 2;
  width: 200px;
  height: 200px;
  box-shadow: 0px ox 20px var(--shadowgrey);
  transform: translateX(-50%);
}

.videocard{
  border:0;
}

.videoDesc{
  font-size: 13px;
  line-height: 1.2em;
}
.videocard .minicoverVideo{
  position: relative;  
}

.videocard .minicoverVideo:after{
    content: "";
    background: url(../img/video-play.svg)no-repeat center center;
    background-size: cover;
    width: 45px;
    height: 45px;
    display: block;
    z-index: 2;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    transition: all 0.4s ease-in-out;
}
.videocard:hover .minicoverVideo:after{
    transform: scale(1.1);
    transition: all 0.4s ease-in-out;
}

ul.squaRed{
  margin: 20px;
  padding: 0;
}
ul.squaRed li{
  list-style: none;
  position: relative;
  padding-left: 22px;
  margin-bottom: 10px;
}
ul.squaRed li:before{
  content: "";
  width: 8px;
  height: 8px;
  background: var(--activeColor);
  display: block;
  position: absolute;
  top: 8px;
  left: 0px;
  z-index: 2;
}


ul.tratRed{
  margin: 20px;
  padding: 0;
}
ul.tratRed li{
  list-style: none;
  position: relative;
  padding-left: 30px;
  margin-bottom: 10px;
}
ul.tratRed li:before{
  content: "";
  width: 15px;
  height: 4px;
  border-radius: 4px;
  background: var(--activeColor);
  display: block;
  position: absolute;
  top: 8px;
  left: 0px;
  z-index: 2;
}



a.stepdetailer:link,a.stepdetailer:visited{
  color: var(--brandgrey);
}


ul.turbAccordion{
  margin: 0;
  padding: 0;
}
ul.turbAccordion > li{
  list-style: none;
  border-bottom: 1px solid var(--linegrey);
  padding: 5px;
  padding-right: 30px;
  cursor:pointer;
  position: relative;
  transition: all 0.4s ease-in-out;
}
ul.turbAccordion > li.active{
  list-style: none;
  border-bottom: 2px solid var(--grey);
  padding: 5px;
  padding-right: 30px;
  position: relative;
  transition: all 0.4s ease-in-out;
}
ul.turbAccordion > li:after{
  content: "";
  width: 15px;
  height: 15px;
  background: url(../img/ico-plus.svg)no-repeat center center;
  background-size: 15px;
  display: block;
  position: absolute;
  top: 10px;
  right: 20px;
  z-index: 2;
}

ul.turbAccordion > li.active:after{
  content: "";
  width: 15px;
  height: 15px;
  background: url(../img/ico-minus.svg)no-repeat center center;
  background-size: 15px;
  display: block;
  position: absolute;
  top: 10px;
  right: 20px;
  z-index: 2;
}
ul.turbAccordion > li.active .accTitle{
  font-weight: 600;
}
ul.turbAccordion .accTitle{
  font-size: 18px;
}
ul.turbAccordion > li .accDesc{
  display: none;
}
ul.turbAccordion > li.active .accDesc{
  display: block;
  font-size: 15px;
  padding:20px 0;
}

.nav.nav-pills.lineTab .nav-link{
  background: transparent;
  border-bottom: 3px solid var(--linegrey);
  color: var(--brandgrey) ;
  border-radius:0 ;
  transition: all 0.4s ease-in-out;
}

.nav.nav-pills.lineTab .nav-link.active{
  border-bottom: 3px solid var(--activeColor);
  color: var(--activeColor) ;
  transition: all 0.4s ease-in-out;
}

.nav.nav-pills.lineTab .nav-link.tobrandgreen.active{
  border-bottom: 3px solid var(--brandgreen);
  color: var(--brandgreen) ;
  transition: all 0.4s ease-in-out;
}

.tab-content:not(.container-home) a:link, .tab-content:not(.container-home) a:visited{
  color: var(--brandgrey);
  transition: all 0.4s ease-in-out;
}

.tab-content:not(.container-home) a:link img, .tab-content:not(.container-home) a:visited img{
  transition: all 0.4s ease-in-out;
}

.tab-content:not(.container-home) a:hover{
  color: var(--activeColor);
}
.tab-content:not(.container-home) a:hover img{
  /* filter: brightness(0) saturate(100%) invert(9%) sepia(96%) saturate(7443%) hue-rotate(355deg) brightness(102%) contrast(79%); */
  transition: all 0.4s ease-in-out;
}



a.prdCard:hover{
  opacity: 1;
}

a.prdCard .card{
  background: transparent;
  border-radius: 0;
  transition: all 0.4s ease-in-out;
  position: relative;
}
a.prdCard .card p{
  font-size: 14px;
}
a.prdCard:hover .card{
  opacity: 1;
  border:1px solid var(--activeColor);
  transition: all 0.4s ease-in-out;
}
a.prdCard:hover .card .h5{
  color: var(--activeColor);
  transition: all 0.4s ease-in-out;
}
a.prdCard .card:after{
  content: "";
  width: 60px;
  height: 60px;
  background: url(../img/ico-card-hover.svg) no-repeat center center;
  background-size: cover;
  position: absolute;
  top:-15px;
  right:-15px;
  z-index: 2;
/*  box-shadow: 0px 0px 20px var(--shadowgrey);*/
  transition: all 0.4s ease-in-out;
  opacity: 0;
  visibility: hidden;
}
a.prdCard:hover .card:after{
  opacity: 1;
  visibility: visible;
}
a.prdCard .card img{
/*  transition: all 0.4s ease-in-out;*/
}

a.prdCard:hover .card img{
  /* filter: brightness(0) saturate(100%) invert(9%) sepia(96%) saturate(7443%) hue-rotate(355deg) brightness(102%) contrast(79%); */
  /*transition: all 0.4s ease-in-out;*/
}




a.prdCardCustom:hover{
  opacity: 1;
}

a.prdCardCustom .card{
  background: transparent;
  border-radius: 0;
  transition: all 0.4s ease-in-out;
  position: relative;
}
a.prdCardCustom .card p{
  font-size: 14px;
}
a.prdCardCustom:hover .card{
  opacity: 1;
  border:1px solid var(--prdCardCustom);
  transition: all 0.4s ease-in-out;
}
a.prdCardCustom:hover .card .h5{
  color: var(--prdCardCustom);
  transition: all 0.4s ease-in-out;
}
a.prdCardCustom .card:after{
  content: "";
  width: 60px;
  height: 60px;
  background: url(../img/ico-card-hover-trasp.svg) no-repeat center center var(--prdCardCustom);
  background-size: cover;
  position: absolute;
  border: 3px solid var(--white);
  top:-15px;
  right:-15px;
  z-index: 2;
/*  box-shadow: 0px 0px 20px var(--shadowgrey);*/
  transition: all 0.4s ease-in-out;
  opacity: 0;
  visibility: hidden;
}
a.prdCardCustom:hover .card:after{
  opacity: 1;
  visibility: visible;
}
a.prdCardCustom .card img{
/*  transition: all 0.4s ease-in-out;*/
}







a.refCard:hover{
  opacity: 1;
}

a.refCard .card{
  background: transparent;
  border-radius: 0;
  transition: all 0.4s ease-in-out;
  position: relative;
}
a.refCard .card p{
  font-size: 14px;
}
a.refCard:hover .card{
  opacity: 1;
  border:1px solid var(--activeColor);
  transition: all 0.4s ease-in-out;
}
a.refCard:hover .card .h5{
  color: var(--activeColor);
  transition: all 0.4s ease-in-out;
}
a.refCard .card:after{
  content: "";
  width: 60px;
  height: 60px;
  background: url(../img/ico-card-hover.svg) no-repeat center center;
  background-size: cover;
  position: absolute;
  top:-15px;
  right:-15px;
  z-index: 2;
/*  box-shadow: 0px 0px 20px var(--shadowgrey);*/
  transition: all 0.4s ease-in-out;
  opacity: 0;
  visibility: hidden;
}
a.refCard:hover .card:after{
  opacity: 1;
  visibility: visible;
}
a.refCard .card img{
  transition: all 0.4s ease-in-out;
}

a.refCard:hover .card img{
  filter:  saturate(50%);
  transition: all 0.4s ease-in-out;
}


.neg50{
  margin-top: -50px;
  position: relative;
  z-index: 2;
}

.headspacer{height: 100px}

/*.owl-theme .owl-nav{
  position: absolute;
  bottom: 0;
  left: 0;
  height: 0px;
  width: 100%;
  display: flex;
  justify-content: space-between;
}*/


.owl-theme .owl-next, .owl-theme .owl-prev {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}
.owl-theme .owl-next {
    right: 0;
    display: flex;
}
.owl-theme .owl-prev{
    left: 0;
    display: flex;
}

.owl-theme .owl-nav button{
  width: 50px;
  height: 50px;
}
.owl-theme .owl-nav button img{
  width: 100%;
  height: auto;
}

#owlCaseHistory .owl-nav button.owl-prev,
#owlCaseHistory .owl-nav button.owl-next,
#owlTypicalUsers .owl-nav button.owl-prev,
#owlTypicalUsers .owl-nav button.owl-next,
#owlUserCaseHistory .owl-nav button.owl-prev,
#owlUserCaseHistory .owl-nav button.owl-next,
#owlPeopleManag .owl-nav button.owl-prev,
#owlPeopleManag .owl-nav button.owl-next,
#owlShowCase .owl-nav button.owl-prev,
#owlShowCase .owl-nav button.owl-next{
/*  font-size: 30px;*/
}



.mediArgument a.gradLnk:after{
  content: "";
  position: absolute;
  width: 0%;
  height: 5px;
  top: 0;
  left: 0;
  background: var(--activeColor);
  z-index: 3;
  transition: all 0.4s ease-in-out;
}

.mediArgument a.gradLnk:hover:after{
  width: 100%;
  transition: all 0.4s ease-in-out;
}

.bckParallax{
  background-attachment: fixed;
  background-size: 100%;
  height: 600px;
}

.contactDesc{
  background: var(--white);
  margin-top: -150px;
  position: relative;
  z-index: 2;
}



a.solutionLnk:link,a.solutionLnk:visited{
  color: var(--fontcolor);
  transition: all 0.1s ease-in-out;
}

a.solutionLnk:hover{
  color: var(--activeColor);
  transition: all 0.1s ease-in-out;
}

a.solutionLnk:hover img{
  filter: brightness(0) saturate(100%) invert(9%) sepia(96%) saturate(7443%) hue-rotate(355deg) brightness(102%) contrast(79%);
  transition: all 0.1s ease-in-out;
}



.fullscreen-video-container {
	position: relative;
	min-height: 600px;
  padding: 20px 0;
	width: 100vw;
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-items: center;
}

.fullscreen-video-container video {
  position: absolute;
  width: auto;
  height: auto;
  min-width: 100%;
  min-height: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  z-index : -1;
}



.raquowrapper{
  position: relative;
}
.raquowrapper:after{
  content: "";
  position: absolute;
  bottom: 0;
  right: 10%;
  width: 480px;
  height: 360px;
  background: url(../img/raquo.svg) no-repeat center center;
  background-size: contain;
  z-index: 2;
  transform: translateY(30px);
  transition: all 0.4s ease-in-out;
}

.argumentTitle{
  font-family: var(--font1);
  font-size: 50px;
}

.prdIcoLnd,
.prdIcoLnd2,
.prdIcoLnd3,
.prdIcoLndDx  {
    position: relative;
}
.prdIcoLnd2 {
   text-align: right;
}



.prdIcoLnd img,
.prdIcoLnd2 img,
.prdIcoLnd3 img,
.prdIcoLndDx img{
  height: 100px;
  position: relative;
  z-index: 2;
}

.prdIcoLnd:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 2px;
    background: var(--activeColor);
    top: 50%;
    left: 0;
    z-index: 1;
}

.prdIcoLnd:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 2px;
    background: var(--activeColor);
    top: 50%;
    left: 0;
    z-index: 1;
    transform: translateX(-100%);
}

.prdIcoLnd2:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 2px;
    background: var(--activeColor);
    top: 50%;
    left: 0;
    z-index: 1;
}

.prdIcoLnd2:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 2px;
    background: var(--activeColor);
    top: 50%;
    left: 0;
    z-index: 1;
    transform: translateX(100%);
}

.prdIcoLnd2.green:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 2px;
    background: var(--brandgreen);
    top: 50%;
    left: 0;
    z-index: 1;
}

.prdIcoLnd2.green:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 2px;
    background: var(--brandgreen);
    top: 50%;
    left: 0;
    z-index: 1;
    transform: translateX(100%);
}


.prdIcoLnd3:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 2px;
    background: var(--prdIcoLnd3CustomColor);
    top: 50%;
    left: 0;
    z-index: 1;
}

.prdIcoLnd3:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 2px;
    background: var(--prdIcoLnd3CustomColor);
    top: 50%;
    left: 0;
    z-index: 1;
    transform: translateX(-100%);
}

.prdIcoLndDx:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 2px;
    background: var(--prdIcoLndDx);
    top: 50%;
    left: 0;
    z-index: 1;
}

.prdIcoLndDx:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 2px;
    background: var(--prdIcoLndDx);
    top: 50%;
    left: 0;
    z-index: 1;
    transform: translateX(100%);
}




.imgGradWrap{
  position: relative;
  width: 100%;
  height: 100%;
  display: block;
}
.imgGradWrap::before{
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: linear-gradient(0deg, var(--activeColor) 0%, rgba(0,0,0,0) 50%);
  z-index: 2;
  top: 0;
  left: 0;
}
.imgGradWrap.green::before{
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: linear-gradient(0deg, var(--brandgreen) 0%, rgba(0,0,0,0) 50%);
  z-index: 2;
  top: 0;
  left: 0;
}

.imgGradWrapCustom{
  position: relative;
  width: 100%;
  display: block;
}
.imgGradWrapCustom::before{
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: linear-gradient(0deg, var(--imgGradWrapCustom) 0%, rgba(0,0,0,0) 50%);
  z-index: 2;
  top: 0;
  left: 0;
}

.neg50{
  transform: translateY(-50px);
  display: block;
  position: relative;
  z-index: 2;
}
.neg70{
  display: block;
  position: relative;
  z-index: 2;
  transform: translateY(-70px);
}
.neg100{
  display: block;
  position: relative;
  z-index: 2;
  transform: translateY(-100px);
}


.hr-green{
  border-bottom: 2px solid var(--brandgreen);
}



.nur-dm{
  font-size: 11px;
}




.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
    background-color: var(--activeColor);
    color: var(--white);
}





#owlTurboPrd .prdIcoLined img{
  width: 150px;
}
#owlTurboPrd .prdIcoLined {
  position: relative;
  display: flex;
  justify-content: center;
}
#owlTurboPrd .prdIcoLined:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 2px;
  background: var(--activeColor);
  top: 75px;
  left:0;
  z-index: -1;
}
#owlTurboPrd a .prdIcoLinedLabel{
  font-size: 30px;
  text-align: center;
  font-family: var(--font1);
  font-weight: 500;
  text-transform: uppercase;
  color: var(--brandgrey);
  transition: all 0.4s ease-in-out;
}
#owlTurboPrd a:hover .prdIcoLinedLabel{
  font-size: 30px;
  text-align: center;
  font-family: var(--font1);
  font-weight: 500;
  text-transform: uppercase;
  color: var(--activeColor);
  transition: all 0.4s ease-in-out;
}

.bgRaquo{
  width: 350px;
  height: 270px;
  display: block;
  background-image: url(../img/raquo.svg);
  background-repeat: no-repeat;
  background-position: 20px 0px;
  background-size: 350px;
}

.strenghtsAcc {
  border-top: 1px solid #dfe2e6;
}
.strenghtsAcc li a:link{
  color: var(--brandgreyBox);
  padding-right: 30px;
  position: relative;
  display: block;
}

.strenghtsAcc li a[aria-expanded="false"]::after{
  content: "+";
  position: absolute;
  font-size: 30px;
  color: var(--brandgreyBox40);
  width: 10px;
  height: 10px;
  background-size: 10px;
  position: absolute;
  top: -10px;
  right: 0;
}

.strenghtsAcc li a[aria-expanded="true"]::after{
  content: "-";
  position: absolute;
  font-size: 40px;
  color: var(--brandgreyBox40);
  width: 10px;
  height: 10px;
  background-size: 10px;
  position: absolute;
  top: -20px;
  right: 0;
}
.greenLine{
  position: relative;
  display: block;
  width: 100%;
  height: 2px;
  background: var(--brandgreen);
}
.greenLine:before{
  content: "";
  position: absolute;
  width: 100%;
  height: 2px;
  background: var(--brandgreen);
  top: 0;
  left:0;
  z-index: 2;
  transform: translateX(-100%);
}
.greenLine:after{
  content: "";
  position: absolute;
  width: 100%;
  height: 2px;
  background: var(--brandgreen);
  top: 0;
  left:0;
  z-index: 2;
  transform: translateX(100%);
}

.moodLine{
  position: relative;
  display: block;
  width: 100%;
  height: 2px;
  background: var(--moodLine);
}
.moodLine:before{
  content: "";
  position: absolute;
  width: 100%;
  height: 2px;
  background: var(--moodLine);
  top: 0;
  left:0;
  z-index: 2;
  transform: translateX(-100%);
}
.moodLine:after{
  content: "";
  position: absolute;
  width: 100%;
  height: 2px;
  background: var(--moodLine);
  top: 0;
  left:0;
  z-index: 2;
  transform: translateX(100%);
}





.customHotSpot{
  position: relative;
}

.customHotSpot .hotspotLnk {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  width: 15px;
  height: 15px;
  cursor : pointer;
  z-index: 2;
  background: var(--activeColor);
  border-radius: 50%;
}
/* .customHotSpot .hotspotLnk:before {
  content: "";
  position: relative;
  display: block;
  width: 300%;
  height: 300%;
  box-sizing: border-box;
  margin-left: -100%;
  margin-top: -100%;
  border-radius: 45px;
  background-color: var(--activeColorHover);
  -webkit-animation: pulse-ring 1.25s cubic-bezier(0.215, 0.61, 0.355, 1) infinite;
          animation: pulse-ring 1.25s cubic-bezier(0.215, 0.61, 0.355, 1) infinite;
}
.customHotSpot .hotspotLnk:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: var(--activeColor);
  border-radius: 15px;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
  -webkit-animation: pulse-dot 1.25s cubic-bezier(0.455, 0.03, 0.515, 0.955) -0.4s infinite;
          animation: pulse-dot 1.25s cubic-bezier(0.455, 0.03, 0.515, 0.955) -0.4s infinite;
} */

@-webkit-keyframes pulse-ring {
  0% {
    transform: scale(0.33);
  }
  80%, 100% {
    opacity: 0;
  }
}

@keyframes pulse-ring {
  0% {
    transform: scale(0.33);
  }
  80%, 100% {
    opacity: 0;
  }
}
@-webkit-keyframes pulse-dot {
  0% {
    transform: scale(0.8);
  }
  50% {
    transform: scale(1);
  }
  100% {
    transform: scale(0.8);
  }
}
@keyframes pulse-dot {
  0% {
    transform: scale(0.8);
  }
  50% {
    transform: scale(1);
  }
  100% {
    transform: scale(0.8);
  }
}




/* Nella pagina our-references il cliente voleva che la select non avesse scroll 
e mostrasse già tutte le opzioni */
.select2-container--default .select2-results>.select2-results__options {
    max-height: 500px;
    overflow-y: auto;
}














/* ----------- Media Query  ----------- */

@media (max-width: 575px) {
  #langBarWrapper.active {
    right: -40px;
  }
}

@media (max-width: 767px){
  .typUsrLnk .overText{
    padding-left: 10px;
    font-size: 20px;
  }
  .bigNumberWrap .bigNumbers {
    font-size: 3em;
  }
}

@media (min-width: 768px) {
  a.gradLnkVert .overText .overLabel{
    font-size: 2em;
  }
}


@media (max-width: 768px) {


  .neg50{
    margin-top:0;
  }
  .contactDesc{
    margin-top:0px;
  }
  #HeroVideoNewOwl .item:before{
    background-size: cover;
  }
  

  h1.extramedium,
  .h1.extramedium{
    font-size: 40px;
    font-weight: 600;
    transition: all 0.4s ease-in-out;
  }
  .neg50, .neg70, .neg100{
    transform: translateY(0px);
  }

}

@media (min-width: 992px) {
  a.gradLnkVert .overText .overLabel{
    font-size: 2.5em;
  }
}



 @media (max-width: 1024px) {
  
  .fourResHero h1{
    font-weight: 500;
    font-size: 40px;
  }
  #HeroVideoNewOwl .item .overText .slideTitle{
    font-size: 50px;
  }
  #HeroVideoNewOwl .item .overText .slideSubTitle{
    line-height: 1.3em;
  }
  .raquowrapper:after{
    /* content: "";
    position: absolute;
    bottom: 0;
    right: 15%;
    width: 240px;
    height: 180px;
    background: url(../img/raquo.svg) no-repeat center center;
    background-size: contain;
    z-index: 2;
    right: 0;
    bottom: 0;
    transform: translateY(30px);
    transition: all 0.4s ease-in-out; */
    display: none;
  }
}

@media (min-width: 1400px) {
  a.gradLnkVert .overText .overLabel{
    font-size: 4em;
  }
}


@media (max-width: 1400px) {


  body{
    padding-top: 90px;
  }

  .officialogo{
    display: none;
  }
  
  .mitLogo{
    display: none;
  }

  .topnav, .topnav .utilityBar{
    height: initial;
    background: var(--white);
  }

  .topnav.reWhite .utilityBar{
    border-left: 1px solid var(--white);
    border-right: 1px solid var(--white);
  }

  .topnav .topnavContent {
    color: var(--black);
  }


  .topnav .topnavContent .officialogoMobile{
    transition: all 0.3s ease-in-out;
    display: block;
  }
  
  .topnav.reWhite .officialogoMobile img,
  .officialogoMobile img{
    height: 40px;
  }


  .topnav .submenubar .menusubtitle{
    padding-left: 15px;
  }

  .topnav .topnavContent > div.menuWrapper{
    max-height: calc(100vh - 100px);
    overflow: auto;
    display: none;
  }

  .topnav .topnavContent .utilityBar .contactMenu{
    display: none;
  }

  .topnav .topnavContent .menuWrapper .contactMenu{
    display: block;
  }

  .topnav .hamburgerWrap{
    display: block;
  }

  

  .topnav .topnavContent > div.menuWrapper.active{
    display: block;
    position: absolute;
    background: var(--white);
    padding: 20px;
    width: 100%;
    top: 90px;
    left: 0;
  }

  .topnav .topnavContent > div.menuWrapper.active ul.menu{
    display: initial;
  }

  .topnav .topnavContent{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px;
    transition: all 0.3s ease-in-out;
    /*box-shadow: 0px 0px 20px var(--black20);*/
  }

  body .topnav ul.menu li > a:link, 
  body .topnav ul.menu li > a:visited{
    line-height: 1.5em;
  }

  
  
  #openSearchBar:hover, #langToggler:hover{
    color: var(--black);
  }

  .topnav .topnavContent > div:first-child{
    margin-bottom: 10px;

  }
  
  
  .topnav .submenubar {
    position: relative;
    top: 0;
    z-index: 1;
    display: none;
    opacity: 1;
    visibility: visible;
  }
  .topnav .submenubar ul.submenu{
    display: initial;
  }

  .topnav ul.menu > li a:link, .topnav ul.menu > li a:link,
  .topnav ul.menu > li a:link, .topnav ul.menu > li a:visited{
    color: var(--black);
    font-size: 16px;
  }

  .topnav .submenubar .twoColumn{
    display: initial;
  }

  .topnav ul.menu > li.hasChild > a:not(.mobile){
    display: none;
  }
  .topnav ul.menu > li.hasChild > a.active + .submenubar{
    display: block;
    top: 0;
    box-shadow: none;
    border-radius: 20px;
  }

  .topnav ul.menu > li.hasChild > a.active + .submenubar .submenu a{
    color: var(--black) !important;
  }

  body.home .topnav ul.menu > li.hasChild > a{
    display: none;
  }

  body.home .topnav ul.menu > li.hasChild > a.mobile,
  body .topnav ul.menu > li.hasChild > a.mobile{
    display: block;
    color: var(--black) !important;
  }


  body .topnav .submenubar ul.submenu > li a:link, .topnav .submenubar ul.submenu > li a:link,
  body .topnav .submenubar ul.submenu > li a:link, .topnav .submenubar ul.submenu > li a:visited{
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    font-size: 14px;
  }
  .topnav .submenubar ul.submenu > li a:link, .topnav .submenubar ul.submenu > li a div{
    margin-right: 10px;
  }

  

  #searchBarWrapper {
    background: rgb(0 0 0 / 70%);
    height: 90px;
  }

  #closeSearchBarWrapper {
    top: 15px;
  }

  #langBarWrapper{
    z-index: 3;
  }

  body .topnav ul.menu li ul.submenu > li a.mobile{
    display: block;
  }
}





























/* -------Timeline -------------------*/

.cd-horizontal-timeline {
  opacity: 0;
  margin: 2em auto;
  -webkit-transition: opacity 0.2s;
  -moz-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
.cd-horizontal-timeline::before {
  /* never visible - this is used in jQuery to check the current MQ */
  content: 'mobile';
  display: none;
}
.cd-horizontal-timeline.loaded {
  /* show the timeline after events position has been set (using JavaScript) */
  opacity: 1;
}
.cd-horizontal-timeline .timeline {
  position: relative;
  height: 100px;
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
}
.cd-horizontal-timeline .events-wrapper {
  position: relative;
  height: 100%;
  margin: 0 40px;
  overflow: hidden;
}




.cd-horizontal-timeline .events-wrapper::after, 
.cd-horizontal-timeline .events-wrapper::before {
  /* these are used to create a shadow effect at the sides of the timeline */
  content: '';
  position: absolute;
  z-index: 2;
  top: 0;
  height: 100%;
  width: 20px;
}
.cd-horizontal-timeline .events-wrapper::before {
  left: 0;
}
.cd-horizontal-timeline .events-wrapper::after {
  right: 0;
}


.cd-horizontal-timeline .events-wrapper:after{
  content: "";
  width: 100%;
  position:absolute;
  top:calc(50% - 1px);
  height: 2px;
  background: var(--white);
  display: block;
  z-index: 3;
  mix-blend-mode: overlay;
}


.cd-horizontal-timeline .events {
  /* this is the grey line/timeline */
  position: absolute;
  z-index: 1;
  left: 0;
  top: 49px;
  height: 2px;
  /* width will be set using JavaScript */
  background: #fff;
  -webkit-transition: -webkit-transform 0.4s;
  -moz-transition: -moz-transform 0.4s;
  transition: transform 0.4s;
}

.cd-horizontal-timeline .events ol{
  list-style-type:none !important;
}
.cd-horizontal-timeline .events-content ol{
  list-style-type:none !important;
}


.cd-horizontal-timeline .filling-line {
  /* this is used to create the green line filling the timeline */
  position: absolute;
  z-index: 1;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  background-color: var(--violet); 
  -webkit-transform: scaleX(0);
  -moz-transform: scaleX(0);
  -ms-transform: scaleX(0);
  -o-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: left center;
  -moz-transform-origin: left center;
  -ms-transform-origin: left center;
  -o-transform-origin: left center;
  transform-origin: left center;
  -webkit-transition: -webkit-transform 0.3s;
  -moz-transition: -moz-transform 0.3s;
  transition: transform 0.3s;
}
.cd-horizontal-timeline .events a {
  position: absolute;
  width:100px;
  bottom: 0;
  z-index: 2;
  text-align: center;
  font-size: 22px;
  padding-bottom: 15px;
  color: #383838;
  /* fix bug on Safari - text flickering while timeline translates */
  -webkit-transform: translateZ(0);
  -moz-transform: translateZ(0);
  -ms-transform: translateZ(0);
  -o-transform: translateZ(0);
  transform: translateZ(0);
  color:white;
  padding:5px;
  margin-bottom:20px;
}
/* custom*/
.cd-horizontal-timeline .events a::before {
  content: '';
  position: absolute;
  width:1px;
  height:20px;
  background: #fff;
  bottom:-20px;
  left:50%;
}

.cd-horizontal-timeline .events a::after {
  /* this is used to create the event spot */
  content: '';
  position: absolute;
  left: 50%;
  right: auto;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
  bottom: -29px;
  height: 20px;
  width: 20px;
  border-radius: 50%;
  border: 2px solid #fff;
  background-color: #fff;
  -webkit-transition: background-color 0.3s, border-color 0.3s;
  -moz-transition: background-color 0.3s, border-color 0.3s;
  transition: background-color 0.3s, border-color 0.3s;
  z-index: 3;
}
.no-touch .cd-horizontal-timeline .events a:hover::after {
  background-color: var(--activeColor);
  border-color: var(--activeColor);
}
.cd-horizontal-timeline .events a.selected {
  pointer-events: none;
}
.cd-horizontal-timeline .events a.selected::after {
  background-color: var(--activeColor);
  border-color: var(--activeColor);
}
.cd-horizontal-timeline .events a.older-event::after {
  border-color: var(--activeColor);
}
@media only screen and (min-width: 1100px) {
  .cd-horizontal-timeline {
    margin: 6em auto;
  }
  .cd-horizontal-timeline::before {
    /* never visible - this is used in jQuery to check the current MQ */
    content: 'desktop';
  }
}

ul.cd-timeline-navigation{
  list-style-type: none !important;
}


.cd-timeline-navigation a {
  /* these are the left/right arrows to navigate the timeline */
  position: absolute;
  z-index: 1;
  top: 50%;
  bottom: auto;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  height: 30px;
  width: 30px;
  border-radius: 50%;
  border: 2px solid #fff;
  /* replace text with an icon */
  overflow: hidden;
  color: transparent;
  text-indent: 100%;
  white-space: nowrap;
  -webkit-transition: border-color 0.3s;
  -moz-transition: border-color 0.3s;
  transition: border-color 0.3s;
}
.cd-timeline-navigation a::after {
  /* arrow icon */
  content: '';
  position: absolute;
  height: 16px;
  width: 16px;
  left: 50%;
  top: 50%;
  bottom: auto;
  right: auto;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -moz-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  -o-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  /*background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRw%0D%0AOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIgd2lkdGg9IjE2cHgiIGhl%0D%0AaWdodD0iMzJweCIgdmlld0JveD0iMCAwIDE2IDMyIj48ZyAgdHJhbnNmb3JtPSJ0cmFuc2xhdGUo%0D%0AMCwgMCkiPjxwb2x5Z29uIGZpbGw9IiM3YjlkNmYiIHBvaW50cz0iNiwxMy40IDQuNiwxMiA4LjYs%0D%0AOCA0LjYsNCA2LDIuNiAxMS40LDggIi8+PC9nPjxnICB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLCAx%0D%0ANikiPjxwb2x5Z29uIGZpbGw9IiNkZmRmZGYiIHBvaW50cz0iNiwxMy40IDQuNiwxMiA4LjYsOCA0%0D%0ALjYsNCA2LDIuNiAxMS40LDggIi8+PC9nPjwvc3ZnPg==) no-repeat 0 0;*/
  background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIgd2lkdGg9IjE2cHgiIGhlaWdodD0iMzJweCIgdmlld0JveD0iMCAwIDE2IDMyIj48ZyAgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCwgMCkiPjxwb2x5Z29uIGZpbGw9IiNmZmZmZmYiIHBvaW50cz0iNiwxMy40IDQuNiwxMiA4LjYsOCA0LjYsNCA2LDIuNiAxMS40LDggIi8+PC9nPjxnICB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLCAxNikiPjxwb2x5Z29uIGZpbGw9IiNkZmRmZGYiIHBvaW50cz0iNiwxMy40IDQuNiwxMiA4LjYsOCA0LjYsNCA2LDIuNiAxMS40LDggIi8+PC9nPjwvc3ZnPg==) no-repeat 0 0; 
  /* background: url('../img/download-white.svg') no-repeat 0 0; */
}
.cd-timeline-navigation a.prev {
  left: 0;
  -webkit-transform: translateY(-50%) rotate(180deg);
  -moz-transform: translateY(-50%) rotate(180deg);
  -ms-transform: translateY(-50%) rotate(180deg);
  -o-transform: translateY(-50%) rotate(180deg);
  transform: translateY(-50%) rotate(180deg);
}
.cd-timeline-navigation a.next {
  right: 0;
  color: #fff;
}
.no-touch .cd-timeline-navigation a:hover {
  border-color: var(--violet);
}
.cd-timeline-navigation a.inactive {
  cursor: not-allowed;
}
.cd-timeline-navigation a.inactive::after {
  background-position: 0 -16px;
}
.no-touch .cd-timeline-navigation a.inactive:hover {
  border-color: var(--violet);
}

.cd-horizontal-timeline .events-content {
  position: relative;
  width: 100%;
  margin: 2em 0;
  overflow: hidden;
  -webkit-transition: height 0.4s;
  -moz-transition: height 0.4s;
  transition: height 0.4s;
}
.cd-horizontal-timeline .events-content li {
  position: absolute;
  z-index: 1;
  width: 100%;
  left: 0;
  top: 0;
  -webkit-transform: translateX(-100%);
  -moz-transform: translateX(-100%);
  -ms-transform: translateX(-100%);
  -o-transform: translateX(-100%);
  transform: translateX(-100%);
  padding: 0 5%;
  opacity: 0;
  -webkit-animation-duration: 0.4s;
  -moz-animation-duration: 0.4s;
  animation-duration: 0.4s;
  -webkit-animation-timing-function: ease-in-out;
  -moz-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
}
.cd-horizontal-timeline .events-content li.selected {
  /* visible event content */
  position: relative;
  z-index: 2;
  opacity: 1;
  -webkit-transform: translateX(0);
  -moz-transform: translateX(0);
  -ms-transform: translateX(0);
  -o-transform: translateX(0);
  transform: translateX(0);
}
.cd-horizontal-timeline .events-content li.enter-right, .cd-horizontal-timeline .events-content li.leave-right {
  -webkit-animation-name: cd-enter-right;
  -moz-animation-name: cd-enter-right;
  animation-name: cd-enter-right;
}
.cd-horizontal-timeline .events-content li.enter-left, .cd-horizontal-timeline .events-content li.leave-left {
  -webkit-animation-name: cd-enter-left;
  -moz-animation-name: cd-enter-left;
  animation-name: cd-enter-left;
}
.cd-horizontal-timeline .events-content li.leave-right, .cd-horizontal-timeline .events-content li.leave-left {
  -webkit-animation-direction: reverse;
  -moz-animation-direction: reverse;
  animation-direction: reverse;
}
.cd-horizontal-timeline .events-content li > * {
  max-width: 800px;
  margin: 0 auto;
}
.cd-horizontal-timeline .events-content h2 {
  font-weight: bold;
  font-size: 3em !important;
  font-weight: 700;
  line-height: 1.2;
}
.cd-horizontal-timeline .events-content em {
  display: block;
  font-style: italic;
  margin: 10px auto;
  color: var(--white50);
}
/*
.cd-horizontal-timeline .events-content em::before {
  content: '- ';
}
  */
.cd-horizontal-timeline .events-content p {
  font-size: 1.5em !important;
  color: #fff;
}
.cd-horizontal-timeline .events-content em, .cd-horizontal-timeline .events-content p {
  line-height: 1.6;
}

@media (max-width: 1024px) {
  .cd-horizontal-timeline .events-content p {
    font-size: 1em !important;
  }
}

@media only screen and (min-width: 768px) {
  .cd-horizontal-timeline .events-content h2 {
    font-size: 7rem;
  }
  .cd-horizontal-timeline .events-content em {
    font-size: 1.5em !important;
  }
  .cd-horizontal-timeline .events-content p {
    font-size: 1.8rem;
  }
}

@-webkit-keyframes cd-enter-right {
  0% {
    opacity: 0;
    -webkit-transform: translateX(100%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0%);
  }
}
@-moz-keyframes cd-enter-right {
  0% {
    opacity: 0;
    -moz-transform: translateX(100%);
  }
  100% {
    opacity: 1;
    -moz-transform: translateX(0%);
  }
}
@keyframes cd-enter-right {
  0% {
    opacity: 0;
    -webkit-transform: translateX(100%);
    -moz-transform: translateX(100%);
    -ms-transform: translateX(100%);
    -o-transform: translateX(100%);
    transform: translateX(100%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0%);
    -moz-transform: translateX(0%);
    -ms-transform: translateX(0%);
    -o-transform: translateX(0%);
    transform: translateX(0%);
  }
}
@-webkit-keyframes cd-enter-left {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0%);
  }
}
@-moz-keyframes cd-enter-left {
  0% {
    opacity: 0;
    -moz-transform: translateX(-100%);
  }
  100% {
    opacity: 1;
    -moz-transform: translateX(0%);
  }
}
@keyframes cd-enter-left {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -o-transform: translateX(-100%);
    transform: translateX(-100%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0%);
    -moz-transform: translateX(0%);
    -ms-transform: translateX(0%);
    -o-transform: translateX(0%);
    transform: translateX(0%);
  }
}


/* -------End Timeline -------------------*/


/* Google reCaptcha */

.grecaptcha-badge {
	visibility: hidden;
}

/* Aggiunti Gino */

.mt-100 {
  margin-top: 100px !important;
}

.pagination .page-item a.page-link {
	border:none;
  color: var(--brandgrey);
  margin: 0 2.5px;
}

.pagination .page-item a.page-link:hover {
	color:var(--activeColor);
}

.pagination .page-item.active a.page-link {
	background: var(--activeColor);
  color: var(--white);
	border-radius: 0px;
}

.pagination .page-item.active a.page-link:hover {
	background: var(--brandgrey);
	color: var(--white);
}

.minicoverVideo {
  position: relative;
  overflow: hidden;
  border-radius: 0px;
}

.play-icon-overlay {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
  font-size: 3rem;
  opacity: 0.8;
  transition: opacity 0.3s ease;
}

.minicoverVideo:hover .play-icon-overlay {
  opacity: 1;
}

.card {
  border-radius: 0 !important;
}

section.blocks > .container > .row {
  margin-bottom: 30px;
}

section.blocks .block {
  scroll-margin-top: 100px;
  margin-bottom: 20px;
}

section.blocks .block.blk-title {
  padding: 40px 0 20px 0;
}

