


/*GENERAL CSS*/
body, html{
  margin: 0;
  padding: 0;
  font-family: "Barlow Condensed", sans-serif;
   line-height: 1.6;
}

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

img{
  border: 0;
}


.mktg_cont{
display:none;
}


 a{
	text-decoration: none;
  transition: all 0.2s linear;

	}



a:link, a:visited{
text-decoration: none;
outline:none;
}

a:hover, a:active{
	text-decoration: none !important;
}


h1, h2, h3, h4, h5, h6 {
      margin: 0;
    padding: 0;
}

p{
  margin: 0;
  padding: 0;
}




.icon-scroll {
  position: absolute;
  bottom: 0%;
  left: 50%;
  width: 30%;
  height: 6.205em;
  /*transform: translateX(-50%) scale(2);*/
  z-index: 85;
  text-align: center;
}


      .arrow
      {
        position: absolute;
        top: 0;
        left: -2px;
        height: 50px;
        width: 2px;
       /*  background: #fff; per nascondere la linea */
        animation: animate 1.3s ease infinite;
      }
      .arrow:before
      {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 2vw;
      height: 2vw;
        border-bottom: 2px solid #fff;
        border-right: 2px solid #fff;
        transform: rotate(45deg);
      }
      
      
      .arrow_grey
      {
          position: absolute;
          top: 0;
          left: -2px;
          height: 50px;
          width: 2px;
         /*  background: #fff; per nascondere la linea */
          animation: animate 1.3s ease infinite;
      }
      .arrow_grey:before
      {
          content: '';
          position: absolute;
          bottom: 0;
          left: 0;
          width: 2vw;
        height: 2vw;
          border-bottom: 2px solid #888;
          border-right: 2px solid #888;
          transform: rotate(45deg);
      }
@keyframes animate
{
    0%
    {
        transform: translateY(0);
        opacity: 0.3;
    }
   /* 50%
    {
        transform: translateY(80px);
        opacity: 1;
    }*/
    100%
    {
        transform: translateY(50px);
        opacity: 1;
    }
}

.line-rep-scroll{
  width: 1px;
  height: 1px;
  border-right: 2px solid transparent;
  margin: auto;
  position: absolute;
  left:-1px;
  right:0;
}

.line-rep-scroll:after{
  content: '';
  position: absolute;
  width: 1px;
  left:-1px;
  height: 150px;
  /*background: #fff;*/
  top:-20px;
  border-right: 2px dashed #fff;
/*margin-left: -3px;
  top: 6px;
  border-radius: 3px;*/
  animation-duration: 2.2s;
  animation-iteration-count: infinite;
  animation-name: scroll2;
}




@keyframes scroll2{
  0%{opacity: 0;}
  100%{
    opacity: 1;
    transform: translateY(40px);
  }
}



.flex-a{
  display:flex;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
padding: 0;
  -webkit-flex: 0 1 auto;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-around;
  -webkit-justify-content: space-around;
  align-items: center;
}

.flex-a-start{
  display:flex;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
padding: 0;
  -webkit-flex: 0 1 auto;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-around;
  -webkit-justify-content: space-around;
  align-items: flex-start;
}

.flex-b{
  display:flex;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  -webkit-flex: 0 1 auto;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: center;
}


.flex-b-stop{
  display:flex;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: center;
}



.flex-b-start{
  display:flex;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  -webkit-flex: 0 1 auto;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: flex-start;
}



.flex-b-end{
  display:flex;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  -webkit-flex: 0 1 auto;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: flex-end;
}


.flex-only-align{
  display:flex;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  align-items: center;
}

.flex-c{
  display:flex;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  -webkit-flex: 0 1 auto;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: center;
  -webkit-justify-content:center;
  align-items: center;
}
.flex-c-left{
  display:flex;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  -webkit-flex: 0 1 auto;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: left;
  -webkit-justify-content:left;
  align-items: center;
}

.flex-c-end{
  display:flex;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  -webkit-flex: 0 1 auto;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: center;
  -webkit-justify-content:center;
  align-items: flex-end;
}

.flex-c-start{
  display:flex;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  -webkit-flex: 0 1 auto;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: flex-end;
  -webkit-justify-content:center;
  align-items: flex-start;
}
.flex-c-loghi_hp{
  display:flex;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  -webkit-flex: 0 1 auto;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: flex-end;
  -webkit-justify-content:left;
  align-items: flex-start;
}


.flex-c-block{
  display:flex;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
  justify-content: center;
  -webkit-justify-content:center;
  align-items: flex-start;
	text-align: center;
}



.flex-c-block-countdown{
  display:flex;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
  justify-content: center;
  -webkit-justify-content:center;
  align-items: center;
	text-align: center;
}



.clear{
  clear:both;
}

.icomenu{
  height: 27px;
  width: 27px;
  cursor: pointer;
}

/* Zoom in Keyframes */
@-webkit-keyframes zoomin {
  0% {transform: scale(1);}
  50% {transform: scale(1.2);}
  100% {transform: scale(1);}
}
@keyframes zoomin {
  0% {transform: scale(1);}
  50% {transform: scale(1.2);}
  100% {transform: scale(1);}
} /*End of Zoom in Keyframes */


.anim_in {
  -webkit-animation-name: acc_in;
          animation-name: acc_in;
  -webkit-animation-duration: 0.65s;
          animation-duration: 0.65s;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  -webkit-animation-direction: normal;
          animation-direction: normal;
  -webkit-animation-timing-function: ease-in-out;
          animation-timing-function: ease-in-out;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  -webkit-animation-delay: 0s;
          animation-delay: 0s;
}

.anim_out {
  -webkit-animation-name: acc_out;
          animation-name: acc_out;
  -webkit-animation-duration: 0.75s;
          animation-duration: 0.75s;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  -webkit-animation-direction: alternate;
          animation-direction: alternate;
  -webkit-animation-timing-function: ease-in-out;
          animation-timing-function: ease-in-out;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  -webkit-animation-delay: 0s;
          animation-delay: 0s;
}

@-webkit-keyframes acc_in {
  0% {
    opacity: 0;
 -webkit-transform: translateY(20px);
                  -moz-transform: translateY(20px);
                   -ms-transform: translateY(20px);
                    -o-transform: translateY(20px);
                       transform: translateY(20px);
  }
  100% {
    opacity: 1;
 -webkit-transform: translateY(0px);
                  -moz-transform: translateY(0px);
                   -ms-transform: translateY(0px);
                    -o-transform: translateY(0px);
                       transform: translateY(0px);
  }
}

@keyframes acc_in {
  0% {
    opacity: 0;
 -webkit-transform: translateY(20px);
                  -moz-transform: translateY(20px);
                   -ms-transform: translateY(20px);
                    -o-transform: translateY(20px);
                       transform: translateY(20px);
  }
  100% {
    opacity: 1;
 -webkit-transform: translateY(0px);
                  -moz-transform: translateY(0px);
                   -ms-transform: translateY(0px);
                    -o-transform: translateY(0px);
                       transform: translateY(0px);
  }
}
@-webkit-keyframes acc_out {
  0% {
    opacity: 1;
 -webkit-transform: translateY(0px);
                  -moz-transform: translateY(0px);
                   -ms-transform: translateY(0px);
                    -o-transform: translateY(0px);
                       transform: translateY(0px);
  }
  100% {
    opacity: 0;
 -webkit-transform: translateY(20px);
                  -moz-transform: translateY(20px);
                   -ms-transform: translateY(20px);
                    -o-transform: translateY(20px);
                       transform: translateY(20px);
  }
}
@keyframes acc_out {
  0% {
    opacity: 1;
 -webkit-transform: translateY(0px);
                  -moz-transform: translateY(0px);
                   -ms-transform: translateY(0px);
                    -o-transform: translateY(0px);
                       transform: translateY(0px);
  }
  100% {
    opacity: 0;
 -webkit-transform: translateY(20px);
                  -moz-transform: translateY(20px);
                   -ms-transform: translateY(20px);
                    -o-transform: translateY(20px);
                       transform: translateY(20px);
  }
}

/*FINE ACCORDION*/


input[type="checkbox"] {
    -webkit-appearance: checkbox;
    border-radius: 0;
}
input[type="radio"] {
    -webkit-appearance: radio;
    border-radius: 0;
}

input, textarea, button {
    -webkit-appearance: none;
    -webkit-font-smoothing: antialiased;
    resize: none;
}


.loading{
	opacity: 0.5;
}

.finish{
	opacity: 1;
}



/*ICO ANIMENU DESK*/


 .animenu {
      /*padding: 15px 15px;*/
      display: inline-block;
      cursor: pointer;
      transition-property: opacity, filter;
      transition-duration: 0.15s;
      transition-timing-function: linear;
      font: inherit;
      color: inherit;
      text-transform: none;
      background-color: transparent;
      border: 0;
      margin: 0;
      overflow: visible;
      position: fixed;
      z-index: 99999999999999999999;
	    right: 2vw;
	    /*top: 5.3vh;*/
      top: 4.5vh;
     /* mix-blend-mode: difference;*/
      }

.shrink .animenu{
  top: 3vh;
}


   /*   .animenu::after{
        content: '';
        width: 2vw;
        height: 2vw;
        border-radius: 100%;
        background-color: rgb(39, 62, 93);
        position: absolute;
        z-index: 999999988;
        top: -1.5vh;
        right: 0vw;
      }*/

/*
        .animenu:hover {
          opacity: 0.8;
        }
        .animenu.is-active:hover {
          opacity: 0.8;
        }

        .animenu.is-active:hover .animenu-inner, .animenu:hover .animenu-inner, .animenu:hover .animenu-inner::before, .animenu:hover .animenu-inner::after{
          background-color: #ededed;
        }
*/

.back_menu_white{
  width: 25vh;
  height: 25vh;
  background-color: #fff;
  clip-path: circle(50% at 100% 0);
  position: fixed;
  top: 0;
  right: 0;
  z-index: 999;
  transition: all 0.2s ease-out;
display: inline;

}


.shrink .back_menu_white{
display: none;

}

.animenu-box {
  width: 30px;
  height: 30px;
  display: inline-block;
  position: relative;
  z-index: 9999999999999;
  cursor: pointer;
}

.animenu-inner, .animenu-inner::before, .animenu-inner::after {
  width: 22px;
  height: 1px;
  /*border-radius: 1px;*/
  position: absolute;
  z-index: 9999999999999;
  /*
  transition-property: transform;
  transition-duration: 0.15s;
  transition-timing-function: ease;
  */

  transition: width 0.14s ease-in, transform 0.15s ease;

}

/*
.animenu-box:hover .animenu-inner {

-webkit-transition: all 0.1s ease-in;
-moz-transition: all 0.1s ease-in;
-ms-transition: all 0.1s ease-in;
-o-transition: all 0.1s ease-in;
transition: all 0.1s ease-in;

width: 80%;
}
*/

.animenu-box:hover .animenu-inner::before {

-webkit-transition: all 0.14s ease-in;
-moz-transition: all 0.14s ease-in;
-ms-transition: all 0.14s ease-in;
-o-transition: all 0.14s ease-in;
transition: all 0.14s ease-in;

width: 150%;
}

.animenu-box:hover .animenu-inner::after {

-webkit-transition: all 0.24s ease-in;
-moz-transition: all 0.24s ease-in;
-ms-transition: all 0.24s ease-in;
-o-transition: all 0.24s ease-in;
transition: all 0.24s ease-in;

width: 150%;
}

.animenu-inner::before, .animenu-inner::after {
  content: "";
  display: block;
}

.animenu-white, .animenu-white::before, .animenu-white::after{
  background-color: #fff;
}

.animenu-red, .animenu-red::before, .animenu-red::after{
  background-color: #aa1e1e;
}

.animenu-black, .animenu-black::before, .animenu-black::after{
  background-color: #2288A9;
}

/*
   * Slider
   */
.animenu--slider .animenu-inner {
  top: 0; }
  .animenu--slider .animenu-inner::before {
    top: 5px;
    transition-property: transform, opacity;
    transition-timing-function: ease;
    transition-duration: 0.15s; }
  .animenu--slider .animenu-inner::after {
    top: 10px; }

.animenu--slider.is-active .animenu-inner {
  color: #fff;
  transform: translate3d(0, 5px, 0) rotate(45deg); }
  .animenu--slider.is-active .animenu-inner::before {
    transform: rotate(-45deg) translate3d(-5.71429px, -2px, 0);
    opacity: 0;
    color: #fff;
    width: 22px;
  }
  .animenu--slider.is-active .animenu-inner::after {
    color: #fff;
    transform: translate3d(0, -10px, 0) rotate(-90deg); width: 22px;}



/*FINE GENERAL CSS*/