/*
    font-family: 'Amatic SC', cursive;
    font-family: 'Roboto', sans-serif;
*/

* {
  box-sizing: border-box;
}

html {
  overflow-x: hidden !important;
}

body {
  font-family: 'Roboto', sans-serif;
  font-size: 18px;
  font-weight: 300;
  line-height: 1.6;
  color: #444;
  background-color: #fff;
  text-rendering: optimizeLegibility;
  -webkit-text-size-adjust: 100%;
  overflow-x: hidden !important;
}

html,
body {
  margin: 0;
  padding: 0;
}

section,
footer {
  z-index: 3;
}

*:focus,
*:active {
  outline: none;
}

a:link,
a:visited,
a:active {
  -webkit-transition: all .4s ease;
  transition: all .4s ease;
  text-decoration: none;
  color: #444;
}

a:hover {
  color: #ccc;
}

img {
  border: 0;
}

p {
  margin: 2px 0;
  padding: 0;
}

ul,
ol {
  margin: 0;
  padding: 15px 20px;
}

li {
  margin-bottom: 3px;
  padding-left: 35px;
  background-image: url(/img/check.png);
  background-repeat: no-repeat;
  background-position: left top;
}

.twhite li {
  background-image: url(/img/check-w.png);
}

.ulrev {
  padding-left: 0;
  list-style-type: none;
  text-align: right;
}

.ulrev li {
  padding-right: 35px;
  background-image: url(/img/check.png);
  background-repeat: no-repeat;
  background-position: right top;
}

.twhite .ulrev li {
  background-image: url(/img/check-w.png);
}

.z0 {
  z-index: 0;
}

.z1 {
  z-index: 1;
}

.z2 {
  z-index: 2;
}

.z3 {
  z-index: 3;
}

.z4 {
  z-index: 4;
}

.z5 {
  z-index: 5;
}

.z6 {
  z-index: 6;
}

.z7 {
  z-index: 7;
}

.z8 {
  z-index: 8;
}

.z9 {
  z-index: 9;
}

.z10 {
  z-index: 10;
}

hr {
  margin: 10px 0;
  color: #666;
  border-style: solid;
}

.h0,
h1,
h2,
h3,
h4,
h5 {
  font-weight: normal;
  line-height: 1;
  margin: 0;
  padding: 0;
}

h1 {
  font-family: 'Amatic SC', cursive;
  font-size: 96px;
  font-weight: bold;
}

h2 {
  font-family: 'Roboto', sans-serif;
  font-size: 36px;
}

h3 {
  font-family: 'Amatic SC', cursive;
  font-size: 64px;
  font-weight: bold;
}

h3 span svg {
  font-size: 50px !important;
  margin-left: 20px;
}

h4 {
  font-size: 30px;
}

h5 {
  font-family: 'Amatic SC', cursive;
  font-size: 36px;
  font-weight: bold;
}

@media screen and (max-width: 1500px) {
  h1 {
    font-size: 80px;
  }

  h2 {
    font-size: 32px;
  }

  h3 {
    font-size: 54px;
  }

  h4 {
    font-size: 24px;
  }

  h5 {
    font-size: 32px;
  }
}

@media screen and (max-width: 1200px) {
  h1 {
    font-size: 70px;
  }

  h2 {
    font-size: 28px;
  }

  h3 {
    font-size: 44px;
  }

  h4 {
    font-size: 20px;
  }

  h5 {
    font-size: 28px;
  }

  body {
    font-size: 17px;
  }
}

@media screen and (max-width: 768px) {
  h1 {
    font-size: 58px;
  }

  h2 {
    font-size: 24px;
  }

  h3 {
    font-size: 40px;
  }

  h4 {
    font-size: 20px;
  }

  h5 {
    font-size: 28px;
  }
}

@media (max-width: 576px) {
  h1 {
    font-size: 48px;
  }

  h2 {
    font-size: 22px;
  }

  h3 span svg {
    font-size: 30px !important;
  }
}

.ui-datepicker-trigger {
  display: none;
}

.ca,
.ca5,
.ca10,
.ca20,
.ca30,
.ca40,
.ca50,
.ca60,
.ca70 {
  position: relative;
  clear: both;
  width: 100%;
}

.ca5 {
  height: 5px;
}

.ca10 {
  height: 10px;
}

.ca20 {
  height: 20px;
}

.ca30 {
  height: 30px;
}

.ca40 {
  height: 40px;
}

.ca50 {
  height: 50px;
}

.ca60 {
  height: 60px;
}

.ca70 {
  height: 70px;
}

.h100 {
  min-height: 100px !important;
}

.h150 {
  min-height: 150px !important;
}

.h200 {
  min-height: 200px !important;
}

.h250 {
  min-height: 250px !important;
}

.h300 {
  min-height: 300px !important;
}

.h350 {
  min-height: 350px !important;
}

.h400 {
  min-height: 400px !important;
}

.h450 {
  min-height: 450px !important;
}

.h500 {
  min-height: 500px !important;
}

.h550 {
  min-height: 550px !important;
}

.h600 {
  min-height: 600px !important;
}

.t10 {
  font-size: 10px;
}

.t11 {
  font-size: 11px;
}

.t12 {
  font-size: 12px;
}

.t13 {
  font-size: 13px;
}

.t14 {
  font-size: 14px;
}

.t15 {
  font-size: 15px;
}

.t16 {
  font-size: 16px;
}

.t18 {
  font-size: 18px;
}

.t20 {
  font-size: 20px;
}

.t22 {
  font-size: 22px;
}

.t23 {
  font-size: 23px;
}

.t24 {
  font-size: 24px;
}

.t25 {
  font-size: 25px;
}

.t30 {
  font-size: 30px;
}

.t35 {
  font-size: 35px;
}

.t40 {
  font-size: 40px;
}

.t50 {
  font-size: 50px;
}

.w100 {
  font-weight: 100;
}

.w300 {
  font-weight: 300;
}

.w400 {
  font-weight: 400;
}

.w700 {
  font-weight: 700;
}

.w900 {
  font-weight: 900;
}

.twhite,
.twhite a:link,
.twhite a:active,
.twhite a:visited {
  text-decoration: none;
  color: #fff;
}

.twhite a:hover {
  color: #ccc;
}

.tblack,
.tblack a:link,
.tblack a:active,
.tblack a:visited {
  text-decoration: none;
  color: #444;
}

.tblack a:hover {
  color: #444;
}

.tcolor,
.tcolor a:link,
.tcolor a:active,
.tcolor a:visited,
.tcolor a:hover {
  color: #097599;
}

.tcolor2,
.tcolor2 a:link,
.tcolor2 a:active,
.tcolor2 a:visited,
.tcolor2 a:hover {
  color: #71B689;
}

.bcolor {
  background-color: rgba(9, 117, 153, .9) !important;
}

.bcolor2 {
  background-color: rgba(191, 231, 204, .9) !important;
}

.bcolor3 {
  background-color: rgba(255, 255, 255, .9);
}

.bcolor4 {
  background-color: rgba(204, 204, 204, .9) !important;
}

.bcolor5 {
  background-color: rgba(68, 68, 68, .9) !important;
}

.bcolorwhite {
  background-color: #FFF;
}

.bcolorblack {
  background-color: #000
}

.border {
  border-style: dotted;
  border-color: #999;
  border-width: 0px;
}

.tlh1 {
  line-height: 1;
}

.tls-1 {
  letter-spacing: -1pt;
}

.tl {
  text-align: left;
}

.tr {
  text-align: right;
}

.tc {
  text-align: center;
}

.tj {
  text-align: justify;
}

.fl {
  float: left;
}

.fr {
  float: right;
}

.alignw {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(50%);
  transform: translateX(50%);
}

.alignh {
  position: absolute !important;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.barrato {
  text-decoration: line-through;
}

.tshadoww {
  text-shadow: 0 0 10px #fff;
}

.tshadowb {
  text-shadow: 0 0 10px #000;
}

.hidden {
  opacity: 0;
}

.visible {
  opacity: 1;
}

.scrolloff {
  pointer-events: none;
}

.pulsing {
  -webkit-animation: pulsatilla .7s ease-out infinite alternate running;
  animation: pulsatilla .7s ease-out infinite alternate running;
}

@keyframes pulsatilla {
  0% {
    opacity: .5;
  }

  100% {
    opacity: 1;
  }
}

@-webkit-keyframes pulsatilla {
  0% {
    opacity: .5;
  }

  100% {
    opacity: 1;
  }
}

/****************************************effetti sroll*/
.fade-l,
.fade-r,
.fade-t,
.fade-b {
  opacity: 0;
}

.fade-in-left {
  -webkit-animation: fade-in-left .6s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
  animation: fade-in-left .6s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
  opacity: 1;
}

@-webkit-keyframes fade-in-left {
  0% {
    -webkit-transform: translateX(-50px);
    transform: translateX(-50px);
    opacity: 0;
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes fade-in-left {
  0% {
    -webkit-transform: translateX(-50px);
    transform: translateX(-50px);
    opacity: 0;
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}

.fade-in-right {
  -webkit-animation: fade-in-right .6s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
  animation: fade-in-right .6s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
  opacity: 1;
}

@-webkit-keyframes fade-in-right {
  0% {
    -webkit-transform: translateX(50px);
    transform: translateX(50px);
    opacity: 0;
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes fade-in-right {
  0% {
    -webkit-transform: translateX(50px);
    transform: translateX(50px);
    opacity: 0;
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
}

.fade-in-top {
  -webkit-animation: fade-in-top .6s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
  animation: fade-in-top .6s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
  opacity: 1;
}

@-webkit-keyframes fade-in-top {
  0% {
    -webkit-transform: translateY(-50px);
    transform: translateY(-50px);
    opacity: 0;
  }

  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes fade-in-top {
  0% {
    -webkit-transform: translateY(-50px);
    transform: translateY(-50px);
    opacity: 0;
  }

  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}

.fade-in-bottom {
  -webkit-animation: fade-in-bottom .6s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
  animation: fade-in-bottom .6s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
  opacity: 1;
}

@-webkit-keyframes fade-in-bottom {
  0% {
    -webkit-transform: translateY(50px);
    transform: translateY(50px);
    opacity: 0;
  }

  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes fade-in-bottom {
  0% {
    -webkit-transform: translateY(50px);
    transform: translateY(50px);
    opacity: 0;
  }

  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}

@media (max-width: 992px) {

  .fade-l,
  .fade-r,
  .fade-t,
  .fade-b {
    opacity: 1;
  }

  .fade-in-left,
  .fade-in-right,
  .fade-in-top,
  .fade-in-bottom {
    animation-name: none;
    visibility: visible !important;
  }
}

/* delay ***************************************/
.del1 {
  -webkit-animation-delay: .1s !important;
  animation-delay: .1s !important;
}

.del2 {
  -webkit-animation-delay: .2s !important;
  animation-delay: .2s !important;
}

.del3 {
  -webkit-animation-delay: .3s !important;
  animation-delay: .3s !important;
}

.del4 {
  -webkit-animation-delay: .4s !important;
  animation-delay: .4s !important;
}

.del5 {
  -webkit-animation-delay: .5s !important;
  animation-delay: .5s !important;
}

.del6 {
  -webkit-animation-delay: .6s !important;
  animation-delay: .6s !important;
}

.del7 {
  -webkit-animation-delay: .7s !important;
  animation-delay: .7s !important;
}

.del8 {
  -webkit-animation-delay: .8s !important;
  animation-delay: .8s !important;
}

.del9 {
  -webkit-animation-delay: .9s !important;
  animation-delay: .9s !important;
}

.del10 {
  -webkit-animation-delay: 1s !important;
  animation-delay: 1s !important;
}

.del11 {
  -webkit-animation-delay: 1.1s !important;
  animation-delay: 1.1s !important;
}

.del12 {
  -webkit-animation-delay: 1.2s !important;
  animation-delay: 1.2s !important;
}

.del13 {
  -webkit-animation-delay: 1.3s !important;
  animation-delay: 1.3s !important;
}

.del14 {
  -webkit-animation-delay: 1.4s !important;
  animation-delay: 1.4s !important;
}

.del15 {
  -webkit-animation-delay: 1.5s !important;
  animation-delay: 1.5s !important;
}

.del16 {
  -webkit-animation-delay: 1.6s !important;
  animation-delay: 1.6s !important;
}

.del17 {
  -webkit-animation-delay: 1.7s !important;
  animation-delay: 1.7s !important;
}

.del18 {
  -webkit-animation-delay: 1.8s !important;
  animation-delay: 1.8s !important;
}

#boxsent {
  display: none;
}

/****************************************************IN POINT**/
#zero {
  position: relative;
  clear: both;
  width: 100%;
  height: 0;
}

#start {
  position: relative;
  clear: both;
  width: 100%;
  height: 0;
}

#gostart,
#gostart-m {
  position: absolute;
  z-index: 4;
  bottom: 0;
  width: 100%;
  height: 60px;
  cursor: pointer;
  background-color: rgba(9, 117, 153, .9);
}

#gostart-m {
  display: none;
}

#gostart svg,
#gostart-m svg {
  font-size: 50px;
  color: #fff;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transition: all .3s ease;
  -webkit-transform: translate(-50%, -50%);
  -webkit-animation: pulsatilla .7s ease-out infinite alternate running;
  animation: pulsatilla .7s ease-out infinite alternate running;
}

#gostart:hover,
#gostart-m:hover {
  opacity: 1;
}

#gozero {
  position: fixed;
  z-index: 10000;
  right: 15px;
  bottom: -100px;
  cursor: pointer;
  -webkit-animation: gopuls .7s ease-out infinite alternate running;
  animation: gopuls .7s ease-out infinite alternate running;
}

#gozero svg {
  font-size: 50px;
  color: #000;
}

@keyframes gopuls {
  0% {
    opacity: 0;
  }

  70% {
    opacity: 1;
  }

  100% {
    opacity: 1;
  }
}

@-webkit-keyframes gopuls {
  0% {
    opacity: 0;
  }

  70% {
    opacity: 1;
  }

  100% {
    opacity: 1;
  }
}

@media (max-width: 992px) {
  #gozero {
    display: none;
  }

  #gostart {
    display: none;
  }

  #gostart-m {
    display: block;
    background-color: rgba(9, 117, 153, 1);
  }
}

@media (max-width: 576px) {
  #gostart-m {
    height: 40px;
  }

  #gostart-m svg {
    font-size: 30px;
  }
}

/*********************** MENU *************/
/**************** menu mobile **/
nav {
  display: block;
}

nav ul {
  padding: 0;
}

nav ul li {
  position: relative;
  display: inline-block;
  margin: 0;
}

#menumb {
  position: fixed;
  z-index: 101;
  top: 0;
  left: 0;
  display: none;
  width: 100%;
  height: 50px;
  padding: 6px 10px;
  background: #097599;
  font-family: 'Roboto', sans-serif;
}

#menumb:after {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  background: rgba(0, 0, 0, .2);
}

.mb-logo {
  font-size: 18px;
  position: relative;
  float: right;
  text-align: right;
  text-transform: uppercase;
}

.mb-cp {
  font-size: 12px;
  line-height: 1;
  position: relative;
  float: right;
  clear: right;
  text-transform: none;
  color: #fff;
}

a.mb-logo {
  color: #fff;
}

.mb-icon {
  position: relative;
  float: left;
  width: 40px;
  height: 100%;
  cursor: pointer;
}

.line {
  position: absolute;
  left: 50%;
  width: 50%;
  height: 2px;
  -webkit-transition: all .4s ease;
  transition: all .4s ease;
  background: #fff;
}

.line1 {
  top: 35%;
  -webkit-transform: translate3d(-50%, -50%, 0);
  transform: translate3d(-50%, -50%, 0);
}

.line2 {
  top: 50%;
  -webkit-transition: none;
  transition: none;
  -webkit-transform: translate3d(-50%, -50%, 0);
  transform: translate3d(-50%, -50%, 0);
}

.line3 {
  top: 65%;
  -webkit-transform: translate3d(-50%, -50%, 0);
  transform: translate3d(-50%, -50%, 0);
}

.mb-icon.clicked .line {
  left: 45%;
}

.mb-icon.clicked .line1 {
  top: 31%;
  left: 47%;
  -webkit-transform: rotate(-45deg) translate3d(-50%, -50%, 0);
  transform: rotate(-45deg) translate3d(-50%, -50%, 0);
}

.mb-icon.clicked .line2 {
  opacity: 0;
}

.mb-icon.clicked .line3 {
  top: 68%;
  -webkit-transform: rotate(45deg) translate3d(-50%, -50%, 0);
  transform: rotate(45deg) translate3d(-50%, -50%, 0);
}

.closed {
  position: absolute;
  top: 50px;
  left: -20px;
  overflow: hidden;
  width: 0;
  height: 100vh;
  -webkit-transition: all .4s ease;
  transition: all .4s ease;
  background: #097599;
}

.menumb {
  position: relative;
  width: 100%;
}

.vmmb,
.vmtmb {
  font-size: 14px;
  float: left;
  clear: both;
  width: 100%;
  padding: 10px;
  cursor: pointer;
  -webkit-transition: all .4s ease;
  transition: all .4s ease;
  text-align: center;
  text-transform: uppercase;
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, .2);
}

.vmmb.cinquanta,
.vmtmb.cinquanta {
  width: 50%;
  -webkit-transition-delay: .4s;
  transition-delay: .4s;
}

.vmmb.tapped {
  color: #097599;
  background: #fff;
}

.vmmb.room.tapped a {
  color: #097599;
}

.vmmb.room .vsmmb a {
  color: #fff !important;
}

.vmmb a {
  color: #fff;
}

.smmb {
  position: fixed;
  top: 50px;
  right: 0;
  overflow: hidden;
  width: 50%;
  height: 0;
  -webkit-transition: all .4s ease;
  transition: all .4s ease;
}

.smmb.aperto {
  height: 100vh;
  -webkit-transition-delay: .8s;
  transition-delay: .8s;
  border-radius: 2px;
  background-color: rgba(255, 255, 255, .3);
}

.vsmmb {
  font-size: 14px;
  position: relative;
  display: block;
  max-width: 490px;
  padding: 10px;
  text-align: center;
  border-bottom: 1px solid rgba(255, 255, 255, .2);
}

.vsmmb:nth-child(even) {
  background: rgba(255, 255, 255, .3);
}

/**************** menu desktop **/

#menu {
  position: fixed;
  z-index: 2;
  top: 20px;
  left:20px;
  height: calc(100% - 40px);
  width: 60px;
  -webkit-transition: all .3s ease;
}

#menu2 {
  position: fixed;
  z-index: 5;
  top: -100px;
  width: 100%;
  height: 60px;
  background-color: rgba(9, 117, 153, .9);
  -webkit-transition: all .3s ease;
}

#menu2.scrolled {
  top: 0;
}

#menu2 .text1,
#menu2 .text2 {
  position: absolute;
  top: 15px;
  color: #fff;
  left: 70px;
  cursor: pointer;
  font-weight: bold;
  text-transform: uppercase;
}

#menu2 .text2 {
  left: inherit;
  right: 70px;
}

#menu2 h5 {
  position: absolute;
  text-align: center;
  color: #fff;
  margin-top: 10px;
  left: 50%;
  -webkit-transition: all .3s ease;
  -webkit-transform: translateX(-50%);
}

.leftbar,
.closebar,
.rightbar {
  position: fixed;
  height: 100%;
  width: 60px;
  cursor: pointer;
  -webkit-transition: all .3s ease;
  border-right: 1px solid #fff;
  z-index: 3;
}

.leftbar .text11,
.rightbar .text22 {
  position: absolute;
  color: #fff;
  top: 80px;
  -webkit-transition: all .3s ease;
  -webkit-transform: rotate(270deg);
  font-weight: bold;
  width: auto;
  text-transform: uppercase;
  left: 2px;
}

.rightbar .text22 {
  width: max-content;
  top: 115px;
  left: -32px;
}

.leftbar.scrolled .text11,
.rightbar.scrolled .text22 {
  opacity: 0;
}

.leftbar.scrolled,
.closebar.scrolled,
.rightbar.scrolled {
  border: 0;
  background-color: transparent;
  z-index: 7;
}

.leftbar.scrolled,
.rightbar.scrolled {
  height: 60px;
}

.closebar {
  left: -60px;
}

.rightbar {
  right: 0;
  border-right: 0;
  border-left: 1px solid #fff;
}

.leftbar:hover,
.rightbar:hover {
  background-color: rgba(255, 255, 255, .3);
}

.leftbar.mncopen  {
  background-color: rgba(255, 255, 255, .3);
  left: -60px;
}

.closebar.mncopen {
  background-color: rgba(255, 255, 255, .3);
  left: 0;
}

.hamburger,
.close,
.book {
  position: absolute;
  z-index: 2;
  -webkit-transition: all .3s ease;
  left: 0;
  height: 100%;
  width: 60px;
}

.hamburger:before,
.close:before,
.book:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(9, 117, 153, .5);
  z-index: -1;
}

.close {
  left: -60px;
}

.book {
  left: inherit;
  right: 0;
}

.hamburger.scrolled,
.book.scrolled,
.close.scrolled {
  z-index: 6;
  height: auto;
}

.hamburger.mncopen  {
  left: -60px;
}

.close.mncopen  {
  left: 0;
}

.close.scrolled  {
  z-index: 6;
}

.hamburger svg,
.close svg,
.book svg {
  position: fixed;
  font-size: 26px;
  color: #fff;
  top: 20px;
  left: 15px;
  -webkit-transition: all .3s ease;
}

.hamburger.scrolled svg,
.close.scrolled svg,
.book.scrolled svg {
  top: 17px;
}

.close svg {
  left: -30px;
}

.close.mncopen svg {
  left: 18px;
}

.hamburger.mncopen svg {
  left: -30px;
}

.book svg {
  left: inherit;
  right: 15px;
}

#mnc ul {
  padding: 0;
}

#mnc ul li {
  position: relative;
  box-sizing: border-box;
  margin: 0;
}

#mnc {
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 60px;
  overflow: hidden;
  width: 0;
  height: 100vh;
  -webkit-transition: all .6s ease;
  background-color: rgba(255, 255, 255, .9);
}

#mnc.mncopen {
  width: 300px;
}

.menu {
  position: absolute;
  width: 100%;
  -webkit-transition: all .6s ease;
  z-index: 1;
  top: 50%;
  -webkit-transform: translateY(-50%);
}

.menut {
  position: relative;
  margin: 30px;
  width: 100%;
  z-index: 1;
}

ul.menut li,
ul.menu li {
  list-style-type: none;
  background: none;
}

.vm {
  font-family: 'Amatic SC', cursive;
  color: #444;
  font-size: 30px;
  padding: 0 30px !important;
  -webkit-transition: all .4s ease;
  cursor: pointer;
  font-weight: bold;
  line-height: 1.3;
}

.vmt {
  margin-right: 5px !important;
  font-size: 15px;
  font-weight: lighter;
  line-height: 1;
  padding: 0 !important;
}

.lang {
  display: inline-flex;
  font-weight: bold;
}

.vmt:first-child:after {
  content: '/';
  position: relative;
  margin-left: 5px;
  font-weight: lighter;
}

.vm a:hover,
.vmt a:hover {
  color: #088f9e;
  margin-left: 10px;
}

.lang a:hover {
  margin-left: 0 !important;
}

.leftbar .text,
.rightbar .text {
  position: absolute;
  top: 50%;
  -webkit-transition: all .6s ease;
  -webkit-transform: translateY(-50%) rotate(-90deg);
  width: max-content;
  color: #fff;
  font-weight: bold;
}

.rightbar .text {
  right: -17px;
}

.leftbar.scrolled .text,
.rightbar.scrolled .text {
  display: none;
}

@media (max-width: 992px) {
  #menu,
  #menu2,
  #menu:after,
  #mnc,
  .leftbar,
  .closebar,
  .rightbar,
  .hamburger,
  .close,
  .book   {
    display: none;
  }

  #menumb {
    display: block;
  }
}

/*************** NAVIGATION *************/
#navigation,
.navigation,
#navigationbook,
#navigationtelephone {
  display: none;
}

@media (max-width: 992px) {
  #navigationbook {
    font-family: 'Roboto', sans-serif;
    font-size: 15px;
    position: fixed;
    z-index: 100;
    right: 150px;
    bottom: -100px;
    display: block;
    cursor: pointer;
    color: #fff;
    background-color: #097599;
    box-shadow: 2px 2px 4px rgba(0, 0, 0, .8);
    white-space: nowrap;
    padding: 16px;
    text-transform: uppercase;
    -webkit-transition: all .3s ease;
  }

  #navigationtelephone {
    font-size: 26px;
    position: fixed;
    z-index: 80;
    right: 80px;
    bottom: -100px;
    display: block;
    width: 60px;
    height: 60px;
    cursor: pointer;
    color: #fff;
    border-radius: 50%;
    background-color: #097599 !important;
    box-shadow: 2px 2px 4px rgba(0, 0, 0, .8);
    padding: 13px;
    -webkit-transition: all .3s ease;
  }

  #navigation {
    font-size: 26px;
    position: fixed;
    z-index: 100;
    right: 10px;
    bottom: -100px;
    display: block;
    width: 60px;
    height: 60px;
    cursor: pointer;
    color: #fff;
    border-radius: 50%;
    background-color: red;
    box-shadow: 2px 2px 4px rgba(0, 0, 0, .8);
    -webkit-transition: all .3s ease;
  }

  #navigationtelephone.scrolled,
  #navigation.scrolled {
    bottom: 10px;
  }

  #navigationbook.scrolled {
    bottom: 12px;
  }

  #navigation .fa-concierge-bell {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    -webkit-transform: translate(-50%, -55%);
    transform: translate(-50%, -55%);
    opacity: 1;
    color: #FFF;
    font-size: 36px;
  }

  #navigation svg.fa-times {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    -webkit-transform: translate(-50%, -50%) scale(.1, .1);
    transform: translate(-50%, -50%) scale(.1, .1);
    opacity: 0;
  }

  #navigation.clicked .fa-concierge-bell {
    -webkit-transform: translate(-50%, -55%) scale(.1, .1);
    transform: translate(-50%, -55%) scale(.1, .1);
    opacity: 0;
  }

  #navigation.clicked svg.fa-times {
    -webkit-transition-delay: .3s;
    transition-delay: .3s;
    -webkit-transform: translate(-50%, -50%) scale(1, 1);
    transform: translate(-50%, -50%) scale(1, 1);
    opacity: 1;
  }

  ul.navigation {
    position: fixed;
    z-index: 100;
    right: 12px;
    bottom: 80px;
    display: block;
    overflow: hidden;
    width: 100%;
    max-height: 0;
    padding: 0;
    padding-right: 5px;
    list-style: none;
  }

  ul.navigation li {
    font-size: 21px;
    position: relative;
    float: right;
    clear: both;
    width: 50px;
    height: 50px;
    margin: 4px auto;
    -webkit-transition: all .4s ease;
    transition: all .4s ease;
    opacity: 0;
    color: #fff;
    border-radius: 50%;
    background: #000;
    box-shadow: 2px 2px 4px rgba(0, 0, 0, .8);
  }

  ul.navigation li svg {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }

  ul.navigation li label {
    font-size: 15px;
    position: absolute;
    z-index: -1;
    top: 50%;
    right: 60px;
    box-sizing: border-box;
    padding: 6px 12px;
    -webkit-transition: all .8s ease;
    transition: all .8s ease;
    -webkit-transition-delay: 0s !important;
    transition-delay: 0s !important;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    white-space: nowrap;
    color: #fff;
    border-radius: 3px;
    box-shadow: 2px 2px 4px rgba(0, 0, 0, .8);
  }

  ul.navigation li.navihome,
  ul.navigation li.navihome label {
    -webkit-transition-delay: .6s;
    transition-delay: .6s;
    background: #ba68c8;
  }

  ul.navigation li.navimaps,
  ul.navigation li.navimaps label {
    -webkit-transition-delay: .5s;
    transition-delay: .5s;
    background: #009688;
  }

  ul.navigation li.navimail,
  ul.navigation li.navimail label {
    -webkit-transition-delay: .4s;
    transition-delay: .4s;
    background: #00bcd4;
  }

  ul.navigation li.navitel,
  ul.navigation li.navitel label {
    -webkit-transition-delay: .3s;
    transition-delay: .3s;
    background: #3f51b5;
  }

  ul.navigation li.navibook,
  ul.navigation li.navibook label {
    -webkit-transition-delay: .2s;
    transition-delay: .2s;
    background: #e91e63;
  }

  ul.navigation li.naviwhatsapp,
  ul.navigation li.naviwhatsapp label {
    -webkit-transition-delay: .2s;
    transition-delay: .2s;
    background: #25d366;
  }
}

/**************************************************** IMG **/
#imgslider {
  position: relative;
  z-index: -1;
  overflow: hidden;
  width: 100%;
  -webkit-transition: all .4s ease-out;
  transitionz: all .4s ease-out;
}

.imgs {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  width: 100%;
  transform: translate(-50%, -50%) scale(1.05);
  opacity: 0;
  transition: transform 10s, opacity 1s;
}

.imgs.scalata {
  transform: translate(-50%, -50%) scale(1);
  top: 50%;
  left: 50%;
  opacity: 1;
  transition: transform 10s, opacity 1s;
}

.imgs.trans1 {
  transform-origin: 0% 100%;
}

.imgs.trans2 {
  transform-origin: 100% 0%;
}

.imgs.trans3 {
  transform-origin: 100% 100%;
}

.imgs.trans4 {
  transform-origin: 0% 0%;
}

.imgs source,
.imgs img {
  width: 100% !important;
}

.imgs source,
.imgs img {
  width: 100% !important;
}

#imgsliderdx {
  position: absolute;
  z-index: 2;
  top: 0;
  right: 60px;
  width: 30%;
  height: 100%;
  cursor: pointer;
  transition: all .2s ease-out;
  opacity: 0;
}

#imgsliderdx:hover {
  right: 80px;
  opacity: 1;
}

#imgslidersx {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 60px;
  width: 30%;
  height: 100%;
  cursor: pointer;
  transition: all .2s ease-out;
  opacity: 0;
}

#imgslidersx:hover {
  left: 80px;
  opacity: 1;
}

#imgsliderdx svg,
#imgslidersx svg {
  font-size: 50px;
  color: #fff;
  position: absolute;
  top: 50%;
  -webkit-transition: all .3s ease;
  -webkit-transform: translateY(-50%);
}

#imgsliderdx svg {
  right: 0;
}

#gm {
  position: relative;
  z-index: 5;
  width: 100%;
  height: 100%;
}

.gm2 {
  position: relative;
  width: 100%;
  height: 450px;
}

@media (max-width: 992px) {
  #imgsliderdx,
  #imgslidersx {
    height: 500px;
  }

  #imgslider {
    z-index: 1;
  }

  #imgsliderdx {
    right: 0;
  }

  #imgsliderdx:hover {
    right: 30px;
  }

  #imgslidersx {
    left: 0;
  }

  #imgslidersx:hover {
    left: 30px;
  }
}

@media (max-width: 576px) {
  #imgsliderdx,
  #imgslidersx {
    height: 400px;
  }

  #imgsliderdx svg,
  #imgslidersx svg {
    font-size: 30px;
  }
}

/************** BOL **************/
/* #bol {
  position: absolute;
  width: 1000px;
  height: 65px;
  background: transparent;
  bottom: 5px;
  z-index: 99;
  left: 50%;
  margin-left: -500px;
  -webkit-transition: all .3s ease;
}

.input-wrapper,
.select-wrapper,
.submit-wrapper {
  position: relative;
  float: left;
  background: #c5a15a;
  height: 65px;
  margin-left: 5px;
  transition: all .3s ease;
  -webkit-transition: all .3s ease;
}

.input-wrapper {
  width: calc(15% - 5px);
}

.input-wrapper:first_child {
  margin-left: 0px;
}

.select-wrapper {
  width: calc(30% - 5px);
}

.submit-wrapper {
  width: calc(40% - 10px);
  background: #097599;
  margin-right: 5px;
}

.submit-wrapper input {
  font-family: 'Cinzel', serif;
  font-size: 24px !important;
}

.submit-wrapper:hover {
  background: #c5a15a;
}

.ui-datepicker-trigger {
  display: none;
}

.input-wrapper input,
.select-wrapper select,
.submit-wrapper .submit {
  position: absolute;
  cursor: pointer;
  background: transparent !important;
  border: none;
  height: 65px;
  font-size: 20px;
  font-weight: 500;
  color: #fff;
  width: 100%;
  text-align: center;
}

.input-wrapper input,
.select-wrapper select {
  margin-top: 6px;
}

.input-wrapper label,
.select-wrapper label,
.submit-wrapper label {
  position: absolute;
  color: #fff;
  top: 8px;
  text-transform: uppercase;
  font-weight: 300;
  font-size: 14px;
  text-align: center;
  width: 100%;
}

.hasDatepicker {
  background: transparent;
}

.select-wrapper select:focus option {
  font-size: 14px;
  color: #097599;
}

.bol-pulsante {
  display: none;
}

@media (max-width: 992px) {
  #bol {
    width: 100%;
    left: inherit;
    margin-left: inherit;
    bottom: 55px;
  }

  #bol form {
    display: none;
  }

  .bol-pulsante {
    display: block;
    position: absolute;
    bottom: 0;
    width: 100%;
    background: #097599;
    z-index: 3;
    text-align: center;
    font-family: 'Cinzel', serif;
    font-size: 24px !important;
    -webkit-transition: all .3s ease;
    padding: 12px;
  }

  a .bol-pulsante {
    color: #fff;
  }

  .bol-pulsante span {
    position: relative;
    top: -15px;
    text-transform: uppercase;
    font-weight: 300;
    font-size: 14px;
  }

  .bol-pulsante:hover {
    background: #c5a15a;
  }
} */

/************** BENEFIT **************/
#BNFGO {
  position: absolute;
  bottom: 75px;
  right: 50px;
  padding: 10px;
  z-index: 101;
  background-color: #fff;
  min-height: 50px;
  width: 300px;
  -webkit-transition: all .3s ease;
}

#BNFGO.scrolled {
  z-index: 99;
}

#BNFGO .bigp {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 10;
  top: 0;
  left: 0;
  cursor: pointer;
}

#BNFGO svg {
  color: #097599;
  top: -3px;
  position: relative;
}

#BNFGO .gift,
#BNFGO .chiudi,
#BNFGO .apri {
  font-size: 24px !important;
  position: absolute;
  top: -24px;
  transform: translate(-50%, 0);
  left: 50%;
  padding: 5px 10px;
  border-radius: 100%;
  background: #fff;
  cursor: pointer;
  width: 45px;
  height: 45px;
  text-align: center;
  z-index: 100;
}

#BNFGO .chiudi,
#BNFGO .apri {
  top: auto;
  bottom: -20px;
  left: 50%;
  transform: translate(-50%, 0);
  width: 40px;
  height: 40px;
  font-size: 20px;
  padding-top: 10px
}

#BNFGO .chiudi {
  display: none;
}

#BNFGO .square {
  position: relative;
  float: left;
  padding: 0px;
  box-sizing: border-box;
  width: 0px;
  height: 0px;
  overflow: hidden;
}

#BNFGO .square1 {
  text-align: center;
  max-height: 500px;
  width: 100%;
  height: auto;
}

#BNFGO .square2 {
  text-align: left;
}

#BNFGO .square3 {
  text-align: left;
}

#BNFGO .square4 {
  text-align: center;
  font-size: 16px;
}

#BNFGO .puls {
  padding: 10px;
  border-radius: 3px;
  font-weight: 700;
  cursor: pointer;
}

#BNFGO .squaremask:after {
  position: absolute;
  width: 100%;
  height: 100%;
  content: '';
  z-index: -1;
  background-color: rgba(0, 0, 0, 0.2);
  top: 0;
  left: 0;
}

#BNFGO .linea1,
#BNFGO .linea2,
#BNFGO .linea3 {
  font-size: 16px;
}

#BNFGO .linea1,
#BNFGO .titolo {
  font-family: 'Cinzel', serif;
  font-size: 24px;
  color: #097599;
  line-height: 1;
  font-weight: bold;
}

#BNFGO.clicked {
  padding: 30px;
  width: 400px;
  right: 0;
}

#BNFGO.clicked .bigp {
  width: 0;
  height: 0;
}

#BNFGO.clicked .gift {
  top: -24px;
  left: 50%;
  transform: translate(-50%, 0);
}

#BNFGO.clicked .chiudi {
  display: block;
}

#BNFGO.clicked .apri {
  display: none;
}

#BNFGO.clicked .square1 {
  padding: 0px;
  height: 0px;
  width: 0px;
  max-height: 0px;
}

#BNFGO.clicked .square2 {
  height: auto;
  width: 100%;
  max-height: 500px;
}

#BNFGO.clicked .square3 {
  padding: 10px;
  height: auto;
  max-height: 500px;
  width: 100%;
}

#BNFGO.clicked .square4 {
  width: 100%;
  height: auto;
  margin-top: 10px;
}

.pulsazione {
  animation: pulsazioneani .5s ease-in 18 alternate running;
}

@keyframes pulsazioneani {
  0% {
    bottom: 75px;
  }

  100% {
    bottom: 85px;
  }
}

@-webkit-keyframes pulsazioneani {
  0% {
    bottom: 75px;
  }

  100% {
    bottom: 85px;
  }
}

@media (max-width: 992px) {
  #BNFGO {
    position: relative;
    padding: 10px;
    min-height: 50px;
    text-align: left;
    width: 100%;
    line-height: 1;
    left: auto !important;
    right: auto !important;
    bottom: 15px !important;
    top: inherit;
    transform: inherit;
  }

  #BNFGO .gift,
  #BNFGO .chiudi,
  #BNFGO .apri {
    font-size: 20px !important;
    top: -18px;
    width: 40px;
    height: 40px;
  }

  #BNFGO .chiudi,
  #BNFGO .apri {
    top: auto;
    bottom: -10px;
    width: 30px;
    height: 30px;
    font-size: 18px;
    padding-top: 5px;
  }

  #BNFGO .chiudi {
    display: none;
  }

  #BNFGO.clicked {
    position: absolute;
    padding: 25px;
    width: 100%;
    bottom: 0 !important;
    top: inherit !important;
  }

  #BNFGO.clicked .chiudi svg {
    top: 0;
  }

  #BNFGO svg {
    top: 3px;
  }

  .pulsazione {
    animation: none;
  }
}

@media (max-width: 576px) {
  #BNFGO {
    bottom: 38px !important;
  }
}

/******************************************** OLM FASCIA *****/
#olm {
  position: relative;
  clear: both;
  padding: 50px 15%;
}

#olm .scheda,
#olme .scheda {
  z-index: 2;
  display: inline-block;
  -webkit-transition: all .6s ease;
  transition: all .6s ease;
}

#olm .scheda:after,
#olme .scheda:after {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  -webkit-transition: all .6s ease;
  transition: all .6s ease;
  -webkit-transform: scale(1.5, 1.5);
  transform: scale(1.5, 1.5);
  opacity: 0;
}

#olm .scheda:before,
#olme .scheda:before {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  -webkit-transition: all .4s ease;
  transition: all .4s ease;
  -webkit-transition-delay: .2s;
  transition-delay: .2s;
  -webkit-transform: scale(1.5, 1.5);
  transform: scale(1.5, 1.5);
  opacity: 0;
}

#olm .scheda:hover:after,
#olme .scheda:hover:after {
  -webkit-transform: scale(1, 1);
  transform: scale(1, 1);
  opacity: 1;
}

#olm .scheda:hover:before,
#olme .scheda:hover:before {
  -webkit-transform: scale(1, 1);
  transform: scale(1, 1);
  opacity: 1;
}

#olm .img,
#olme .img {
  position: relative;
  z-index: 0;
  top: 0;
  left: 0;
  overflow: hidden;
  width: calc(100% - 40px);
  height: calc(100% - 40px);
  margin: 20px;
  -webkit-transition: all .6s ease;
}

#olm .img img,
#olme .img img {
  -webkit-transition: all 1s ease;
  transition: all 1s ease;
  width: 100%;
}

#olm .scheda:hover .img img,
#olme .scheda:hover .img img {
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
  -webkit-transform: scale(1.3, 1.3);
  transform: scale(1.3, 1.3);
}

#olm .scheda:hover,
#olme .scheda:hover {
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}

#olm .img img,
#olme .img img {
  position: relative;
  vertical-align: top;
}

#olm .inner,
#olme .inner {
  position: absolute;
  z-index: 2;
  top: 20px;
  left: 0;
  width: 100%;
  margin: 0 5px;
  height: auto;
  text-align: right;
  -webkit-transition: all .3s ease;
  padding: 5% 15%;
}

#olm .title,
#olme .title {
  font-family: 'Amatic SC', cursive;
  font-size: 30px;
  font-weight: bold;
  color: #fff;
  line-height: 1;
  text-shadow: -2px 2px 6px #000;
}

#olm .subtitle,
#olme .subtitle {
  font-size: 22px;
  color: #097599;
  line-height: 1;
}

.olm-pulsante {
  position: relative;
  width: 100%;
  top: -10px;
}

a.olm-pulsante {
  color: #fff;
  font-weight: bold;
}

a:hover.olm-pulsante {
  color: #fff !important;
  font-weight: bold;
}

.olm-pulsante:before {
  content: '';
  position: absolute;
  background-color: rgba(191, 231, 204, .75);
  width: 360px;
  height: 30px;
  z-index: -1;
  right: -60px;
}

.olmpallino {
  font-family: 'Roboto', sans-serif;
  position: absolute;
  padding: 1px 0px;
  background-color: red;
  border-radius: 100%;
  color: #FFF;
  font-size: 15px;
  font-weight: 900;
  width: 20px;
  height: 20px;
  text-align: center;
  top: 0;
  left: 165px;
  display: none;
  -webkit-transition: all .3s ease;
}

.vm:hover .olmpallino {
  left: 175px;
}

@media (max-width: 1500px) {
  #olm {
    padding: 50px;
  }
  .olm-pulsante::before {
    width: 320px;
    right: -50px;
  }
}

@media (max-width: 1200px) {
  #olm {
    padding: 50px 0;
  }
}

@media (max-width: 992px) {
  .olmpallino {
    right: 5px;
    left: inherit;
    font-size: 14px;
    padding: 0;
  }
}

@media (max-width: 576px) {

  #olm .scheda {
    height: 400px !important;
  }

  #olm .img img,
  #olme .img img {
    width: 100%;
    height: auto;
  }

  #olm {
    margin-bottom: 0;
    padding: 0;
    padding-top: 35px;
  }
}

/******************************************** PARALLAX *******/
.plx {
  position: relative;
  width: 100%;
  height: 300px;
  -webkit-transition: all .4s ease;
  transition: all .4s ease;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover;
  -moz-background-size: cover;
  -webkit-background-size: cover;
  -o-background-size: cover;
  border-top: 5px solid #fff;
  border-bottom: 5px solid #fff;
}

.plx200 {
  height: 200px !important;
}

.plx400 {
  height: 400px !important;
}

.plx500 {
  height: 500px !important;
}

.plx600 {
  height: 600px !important;
}

.plxvh {
  height: 100vh !important;
}

.plxinfinity {
  height: auto !important;
}

@media (max-width: 1200px) {
  .plx {
    background-attachment: inherit;
  }
}

@media (max-width: 992px) {
  .plxvh {
    height: auto !important;
    border-bottom: 0;
  }
}

/*************** GRID *************************/
.middle {
  position: relative;
  clear: both;
  width: 100%;
  max-width: 1800px;
  margin: 0 auto;
}

.m {
  position: relative;
  float: left;
}

.m-x-0 {
  overflow: hidden !important;
  width: 0;
}

.m-x-1 {
  width: 8.3333333333%;
}

.m-x-2 {
  width: 16.666666667%;
}

.m-x-3 {
  width: 25%;
}

.m-x-4 {
  width: 33.33333333%;
}

.m-x-5 {
  width: 41.66666667%;
}

.m-x-6 {
  width: 50%;
}

.m-x-7 {
  width: 58.33333333%;
}

.m-x-8 {
  width: 66.66666667%;
}

.m-x-9 {
  width: 75%;
}

.m-x-10 {
  width: 83.33333333%;
}

.m-x-11 {
  width: 91.66666667%;
}

.m-x-12 {
  width: 100%;
}

.m-x-ha {
  height: auto !important;
  min-height: 0 !important;
}

.m-x-tl {
  text-align: left;
}

.m-x-tr {
  text-align: right;
}

.m-x-tc {
  text-align: center;
}

.m-x-tj {
  text-align: justify;
}

.m-x-h10 {
  height: 10px !important;
}

.m-x-h100 {
  height: 100px !important;
}

.m-x-h200 {
  height: 200px !important;
}

.m-x-h300 {
  height: 300px !important;
}

.m-x-h400 {
  height: 400px !important;
}

.m-x-h500 {
  height: 500px !important;
}

.m-x-h600 {
  height: auto !important;
  min-height: 600px !important;
}

.m-x-h800 {
  height: auto !important;
  min-height: 800px !important;
}

.m-x-h900 {
  height: auto !important;
  min-height: 900px !important;
}

.m-x-vh {
  height: auto !important;
  min-height: 100vh !important;
}

.m-x-bl {
  border-left-width: 1px;
}

.m-x-br {
  border-right-width: 1px;
}

.m-x-bb {
  border-bottom-width: 1px;
}

.m-x-bt {
  border-top-width: 1px;
}

.m-x-nb {
  border: none !important;
}

.box {
  position: absolute;
  width: 100%;
  z-index: 1;
  text-align: center;
  padding: 200px 0 50px;
}

.box h2 {
  margin-right: 80px;
}

.box:before {
  content: '';
  background-color: rgba(153, 204, 204, .8);
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 30%;
  height: 85%;
  z-index: -1;
}

.box-img-before {
  background-color: rgba(153, 204, 204, .8);
  position: absolute;
  left: 30%;
  width: 500px;
  height: 300px;
  z-index: 1;
  bottom: 0;
}

.box-img {
  position: absolute;
  bottom: 118px;
  height: 400px;
  left: 0;
  z-index: 2;
  width: 700px;
  margin-left: -350px;
  overflow: hidden;
}

.box-img.scrolled {
  left: 50%;
  opacity: 1;
}

.box-img-screen {
  position: absolute;
  width: 700px;
  height: 400px;
  right: 0;
  background-color: #fff;
  -webkit-transition: all .8s ease-out;
  z-index: 2;
}

.box-img.scrolled .box-img-screen{
  right: -700px;
}

.box-img img {
  position: absolute;
  width: 100%;
  height: auto;
  right: -100px;
  -webkit-transition: all .8s ease-out;
}

.box-img.scrolled img {
  right: 0;
}

.deco3 {
  position: absolute;
  left: 5%;
  z-index: 1;
  top: 0;
  opacity: .6;
}

.box-text {
  position: absolute;
  width: 300px;
  bottom: 25%;
  left: calc(50% - 700px);
  text-align: right;
  padding: 20px;
  z-index: 1;
}

.box1 {
  position: absolute;
  width: 125%;
  left: 0;
  top: 50%;
  -webkit-transition: all .8s ease-out;
  -webkit-transform: translateY(-50%);
  padding: 30% 20%;
  z-index: 1;
  overflow: hidden;
  opacity: 0;
}

.box1.scrolled {
  left: -50%;
  opacity: 1;
}

.box1-screen {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  -webkit-transition: all .8s ease-out;
  z-index: 2;
}

.box1.scrolled .box1-screen {
  left: 100%;
}

.box1-l {
  position: absolute;
  width: 125%;
  right: 0;
  top: 50%;
  -webkit-transition: all .8s ease-out;
  -webkit-transform: translateY(-50%);
  padding: 30% 20%;
  z-index: 1;
  overflow: hidden;
  opacity: 0;
}

.box1-l.scrolled {
  right: -50%;
  opacity: 1;
}

.box1-l-screen {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  -webkit-transition: all .8s ease-out;
  z-index: 2;
}

.box1-l.scrolled .box1-l-screen {
  right: 100%;
}

.deco4,
.deco6,
.deco8 {
  position: absolute;
  top: 0;
  right: 5%;
  z-index: 1;
  opacity: .6;
}

#services,
#services2 {
  position: relative;
  margin: 75px 150px;
  height: 800px;
  background-image: url(/img/index-04.jpg);
  background-size: cover;
  background-position: center center;
}

#services2 {
  background-image: url(/img/index-04-2.jpg);
}

#services:after,
#services2:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.9);
}

.box2 {
  position: absolute;
  top: 50%;
  -webkit-transition: all .3s ease;
  -webkit-transform: translateY(-50%);
  z-index: 1;
  text-align: right;
  padding: 20%;
}

.deco5,
.deco7 {
  position: absolute;
  top: 0;
  left: 2%;
  z-index: 1;
  opacity: .6;
}

.box2-img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transition: all .8s ease;
  -webkit-transform: translateY(-50%);
  z-index: 2;
  width: 700px;
  overflow: hidden;
  opacity: 0;
}

.box2-img img {
  width: 100%;
  height: auto;
}

.box2-img.scrolled {
  left: 0;
  opacity: 1;
}

.box2-img-screen {
  position: absolute;
  width: 700px;
  height: 100%;
  right: 0;
  background-color: #fff;
  -webkit-transition: all .8s ease-out;
  z-index: 2;
}

.box2-img.scrolled .box2-img-screen{
  right: -700px;
}

.box2-img-before {
  background-color: rgba(153, 204, 204, .8);
  position: absolute;
  left: -5%;
  bottom: 0;
  width: 80%;
  height: 46%;
  z-index: 1;
}

.box1-2 {
  position: absolute;
  width: 125%;
  left: 0;
  top: 50%;
  -webkit-transition: all .8s ease-out;
  -webkit-transform: translateY(-50%);
  padding: 30% 20%;
  z-index: 1;
  overflow: hidden;
  opacity: 0;
}

.box1-2.scrolled {
  left: -50%;
  opacity: 1;
}

.box1-2-screen {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  -webkit-transition: all .8s ease-out;
  z-index: 2;
}

.box1-2.scrolled .box1-2-screen {
  left: 100%;
}

footer {
  margin-top: 75px;
}

.box3 {
  position: relative;
  width: 100%;
  height: 100%;
  padding: 5%;
}

.box4,
.box4-img {
  position: relative;
  width: 100%;
  height: 100%;
  padding: 0 1% 8%;
}

.box4-img img {
  position: absolute;
  top: 50%;
  -webkit-transition: all .3s ease;
  right: 0;
  width: 343px;
  height: 270px;
  margin-top: -185px;
}

.social {
  font-size: 26px;
}

.col3,
.col2 {
  -webkit-column-count: 3;
  -moz-column-count: 3;
  column-count: 3;
  -webkit-column-gap: 50px;
  -moz-column-gap: 50px;
  column-gap: 50px;
  -webkit-column-rule: 1px solid #ededed;
  -moz-column-rule: 1px solid #ededed;
  column-rule: 1px solid #ededed;
}

.col2 {
  -webkit-column-count: 2;
  -moz-column-count: 2;
  column-count: 2;
}

#home {
  display: none;
}

@media (max-width: 1500px) {
  .box-img {
    width: 600px;
    margin-left: -300px;
    bottom: 138px;
  }
  .box-img::before {
    bottom: 8%;
  }
  .box-text {
    left: calc(50% - 600px);
  }
  #services,
  #services2 {
    margin: 75px;
  }
}

@media (max-width: 1200px) {
  .box-img {
    margin-left: -152px;
    bottom: 152px;
  }
  .box-text {
    left: calc(50% - 500px);
  }
}

@media (max-width: 992px) {
  .box,
  .box-img,
  .box-img-before,
  .box2-img-before,
  .box-text,
  .box1-screen,
  .box1-l-screen,
  .box1-2-screen,
  .box2-img-screen,
  .deco3,
  .deco4,
  .deco5,
  .deco6,
  .deco7,
  .deco8 {
    display: none;
  }

  .box-m,
  .box1,
  .box1-l,
  .box1-2,
  .box2,
  .box2-img {
    position: relative;
    width: 100%;
    height: 100%;
    padding: 35px;
    top: inherit !important;
    left: inherit !important;
    right: inherit !important;
    -webkit-transform: inherit !important;
    opacity: 1 !important;
    text-align: left !important;
  }

  .box2-img {
    padding: 0;
  }

  .box2-img img {
    width: 100%;
    height: auto;
  }

  #deco3 {
    display: none;
  }

  #home {
    margin-top: 110px;
    display: block;
  }

  #services,
  #services2 {
    margin: 0;
    height: auto !important;
  }

  footer {
    margin-top: inherit;
  }
}

@media (max-width: 576px) {
  #home {
    margin-top: 70px;
  }

  .box4 {
    padding: 0 35px 75px;
  }

  .box4-img img {
    position: relative;
    top: inherit;
    -webkit-transition: all .3s ease;
    right: inherit;
    width: 100%;
    height: auto;
    margin-top: inherit;
    padding: 35px 35px 0;
  }

  .box2-img img {
    width: auto;
    height: 100%;
  }
}

/*************** PULSANTE ********************/
.pulsante,
.SW-submit,
.pulsante::after {
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.tblack a.pulsante {
  color: #097599;
}

.bcolor2 a.pulsante {
  color: #71B689;
}

.pulsante,
.SW-submit {
  font-family: 'Amatic SC', cursive;
  font-size: 36px;
  font-weight: bold;
  background: none;
  border: 3px solid #fff;
  display: block;
  padding: 5px 20px;
  position: relative;
  text-transform: uppercase;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.tblack .pulsante {
  border: 3px solid #097599;
}

.bcolor2 .pulsante {
  border: 3px solid #71B689;
}

.SW-submit {
  color: #fff;
  margin-top: 5px;
  cursor: pointer;
  width: 100%;
}

.pulsante::before,
.pulsante::after,
.SW-submit::before,
.SW-submit::after {
  background: #fff;
  content: '';
  position: absolute;
  z-index: -1;
}

.tblack .pulsante::before,
.tblack .pulsante::after {
  background: #097599;
}

.bcolor2 .pulsante::before,
.bcolor2 .pulsante::after {
  background: #71B689;
}

.SW-submit::after,
.SW-submit::before {
  background: #fff;
  z-index: -1;
}

.pulsante:hover,
a:hover.pulsante,
.SW-submit:hover {
  color: #097599;
}

.SW-submit:hover {
  color: #097599;
}

.tblack a:hover.pulsante {
  color: #fff;
}

.pulsante,
.SW-submit {
  overflow: hidden;
}

.pulsante::after,
.SW-submit::after {
  height: 100%;
  left: -35%;
  top: 0;
  transform: skew(50deg);
  transition-duration: 0.6s;
  transform-origin: top left;
  width: 0;
}

.pulsante:hover:after,
.SW-submit:hover::after {
  height: 100%;
  width: 135%;
}

@media (max-width: 1500px) {
  .pulsante,
  .SW-submit {
    font-size: 30px;
  }
}

@media (max-width: 1200px) {
  .pulsante,
  .SW-submit {
    font-size: 26px;
  }
}

@media (max-width: 992px) {
  .pulsante,
  .SW-submit {
    float: inherit !important;
  }
}

@media (max-width: 768px) {
  .pulsante,
  .SW-submit {
    font-size: 24px;
  }
}

/***************** olmd ******************/
#olmd {
  position: relative;
  max-width: 1500px;
  margin: 50px auto;
  padding: 20px;
}

.olmd-colore,
.olmd-colore a:link,
.olmd-colore a:active,
.olmd-colore a:visited,
.olmd-colore a:hover {
  color: #097599;
}

.olmd-sx {
  position: relative;
  float: left;
  width: 55%;
  text-align: left;
}

.olmd-dx {
  position: relative;
  float: right;
  width: 40%;
  padding: 15px;
  text-align: left;
  border: 1px solid #ccc;
  background-color: #fff;
}

.olmd-ca {
  position: relative;
  clear: both;
  width: 100%;
  height: 0;
}

.olmd-ca20 {
  position: relative;
  clear: both;
  width: 100%;
  height: 20px;
}

.olmd-img {
  position: relative;
  width: 100%;
  margin-bottom: 2px;
  border: none !important;
}

.olmd-el {
  font-size: 15px;
  line-height: 1.1;
  width: 100%;
  margin-bottom: 2px;
  padding: 15px;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
  background-color: #ebebeb;
}

.olmd-el:hover {
  background-color: #e4e4e4;
}

.olmd-vantaggi {
  font-size: 14px;
  position: relative;
  clear: both;
  width: 100%;
  margin: 15px 0;
}

.olmd-el.visible-xs {
  display: none;
}

#olmd .share {
  padding: 15px 0;
}

#olmd .share img {
  margin: 0 10px;
}

@media (max-width: 576px) {
  .olmd-el.visible-xs {
    display: block;
  }
}

.olmd-go {
  display: block;
}

.olmd-come {
  display: none;
}

.olmd-box {
  position: relative;
  clear: both;
  width: 100%;
  margin: 25px 0;
  padding: 20px;
  text-align: center;
  border: 1px solid #ccc;
  background-color: #dbdbdb;
}

.olmd-box:after {
  position: absolute;
  z-index: -1;
  top: -5px;
  left: -5px;
  width: 100%;
  height: 100%;
  content: '';
  border: 1px solid #dbdbdb;
}

.olmd-p {
  font-size: 18px;
  font-weight: 700;
  position: relative;
  overflow: hidden;
  width: 90%;
  max-width: 400px;
  margin: 12px auto;
  padding: 15px 15px;
  cursor: pointer;
  text-align: center;
  color: #fff;
  border: 1px solid #097599;
  border-radius: 3px;
  background-color: transparent;
}

.olmd-p:after {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
  opacity: .8;
  background-color: #097599;
}

.olmd-p-content {
  position: relative;
  z-index: 10;
  display: inline-block;
}

.olmd-p:hover:after {
  width: 100%;
  height: 100%;
  -webkit-transition: all .1s ease;
  transition: all .1s ease;
  opacity: 1;
}

.olmd-p a:link,
.olmd-p a:active,
.olmd-p a:visited,
.olmd-p a:hover {
  color: #fff;
}

.olmd-sep {
  position: relative;
  width: 100%;
  margin-bottom: 12px;
  padding-bottom: 12px;
  border-bottom: 1px dotted #ccc;
}

.olmdta-titolo {
  font-family: Georgia, 'Times New Roman', Times, serif;
  font-size: 22px;
  font-weight: 900;
  font-weight: bold;
  font-style: italic;
  line-height: 1;
  position: relative;
  width: 100%;
  color: #097599;
}

.olmdta-testo {
  font-family: Georgia, 'Times New Roman', Times, serif;
  font-size: 16px;
  font-style: italic;
  position: relative;
  clear: both;
  width: 100%;
  margin: 14px 0;
}

.olmdta-info {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 13px;
  font-weight: bold;
  position: relative;
  clear: both;
  width: 100%;
  margin-top: 30px;
  margin-bottom: 15px;
  color: #097599;
}

.olmdta-img {
  position: relative;
  float: left;
  margin-top: -10px;
  margin-right: 15px;
}

.olmdprice,
.olmdtime {
  font-size: 13px;
  line-height: 1;
  position: absolute;
  top: 20px;
  left: 20px;
  padding: 20px;
  text-align: left;
  background: rgba(255, 255, 255, .8);
}

.olmdprice {
  top: auto;
  bottom: 20px;
}

.olmdprice-line2 {
  font-size: 20px;
  font-weight: 900;
  position: relative;
  clear: both;
  color: #097599;
}

.olmdprice-line3 {
  font-weight: 900;
  margin-top: 5px;
  padding: 2px 8px;
  color: #097599;
  color: #fff;
  border-radius: 2px;
  background-color: #097599;
}

.olmdcta {
  position: relative;
  z-index: 1;
  clear: both;
  width: 100%;
  margin-top: 30px;
  padding: 20px;
  text-align: center;
  border: 1px solid #ccc;
  background-color: #dbdbdb;
}

.olmdcta:after {
  position: absolute;
  z-index: -1;
  top: -5px;
  left: -5px;
  width: calc(100% + 8px);
  height: calc(100% + 8px);
  content: '';
  border: 1px solid #dbdbdb;
}

.olmdcta-contact {
  font-weight: 700;
  position: relative;
  width: 100%;
  margin-top: 10px;
  padding: 20px;
  color: #fff;
}

.olmdcta-contact a:link,
.olmdcta-contact a:visited,
.olmdcta-contact a:hover {
  color: #fff;
}

.olmdcta-contact:after {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  opacity: .6;
  background-color: #097599;
}

#olmdelin {
  position: relative;
  clear: both;
  width: 100%;
}

#olmde {
  position: relative;
  clear: both;
  overflow: hidden;
  width: 100%;
  margin-bottom: 2px;
}

.olmde-scheda {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
}

.olmde-img {
  position: realtive;
  width: 100%;
}

.olmde-titolo {
  font-size: 16px;
  font-weight: 900;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 15px;
  background: rgba(255, 255, 255, .8);
}

.olmde-sottotitolo {
  font-size: 13px;
  font-weight: normal;
}

.olmde-arrow {
  position: absolute;
  z-index: 5;
  top: 50%;
  width: 30px;
  height: 40px;
  margin-top: -20px;
  cursor: pointer;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
  opacity: 0;
  color: #fff;
  text-shadow: 0 0 3px #000;
}

.olmde-sx {
  left: 10px;
  text-align: left;
}

.olmde-dx {
  right: 10px;
  text-align: right;
}

#olmde:hover .olmde-arrow {
  opacity: 1;
}

.olmd-tmb {
  position: relative;
  display: block;
  float: left;
  overflow: hidden;
  width: calc(33% - 4px);
  margin: 2px;
  padding: 0 !important;
  cursor: default;
  -webkit-transition: all .6s ease;
  transition: all .6s ease;
  opacity: 1;
}

.olmd-tmb img {
  position: relative;
  display: block;
  -webkit-transition: all .6s ease;
  transition: all .6s ease;
}

.olmd-tmb svg {
  position: absolute;
  z-index: 2;
  bottom: 5%;
  left: -100px;
  -webkit-transition: all .6s ease;
  transition: all .6s ease;
  opacity: 0;
  color: #fff;
}

.olmd-tmb:hover {
  overflow: hidden;
  -webkit-transition: all .2s ease;
  transition: all .2s ease;
  border-radius: 5px;
  background-color: #097599;
}

.olmd-tmb:hover svg {
  left: 10%;
  -webkit-transition: all .2s ease;
  transition: all .2s ease;
  opacity: 1;
}

.olmd-tmb:hover img {
  -webkit-transition: all .2s ease;
  transition: all .2s ease;
  opacity: .4;
}

@media only screen and (max-width: 800px) {
  .olmd-sx {
    width: 100%;
  }

  .olmd-dx {
    width: 100%;
    margin-top: 20px;
    padding: 15px 0;
    border: none;
  }

  .olmd-el {
    width: 100%;
  }

  .olmd-img {
    width: calc(100% + 30px);
    margin-left: -15px;
  }

  .olmd-go {
    display: none;
  }

  .olmd-come {
    display: block;
  }
}

/******************** SLOGAN ************/

#bol {
  position: absolute;
  bottom: 150px;
  left: 50%;
  width: 950px;
  height: 150px;
  margin-left: -475px;
  -webkit-transition: all 1s ease;
  opacity: 0;
}

#bol:before {
  content: '';
  background-image: url(/img/deco2.png);
  position: absolute;
  left: 50%;
  width: 481px;
  height: 310px;
  margin-left: -165px;
  top: 50%;
  margin-top: -155px;
  z-index: -1;
  -webkit-transition: all 1s ease;
}

#SLOGAN {
  position: relative;
  width: 750px;
  height: 100%;
  float: right;
  -webkit-transition: all 1s ease;
  padding: 15px 0;
  background-color: rgba(9, 117, 153, .9);
  border: 1px solid #fff;
  opacity: 0;
  z-index: 4;
  font-family: 'Amatic SC', cursive;
  line-height: .9;
  text-align: center;
  color: #fff;
}

.slogan1,
.slogan2,
.slogan3 {
  position: relative;
  opacity: 0;
  -webkit-transition: all 1s ease;
  text-shadow: 2px 2px 6px #000;
}

.slogan2 {
  font-size: 60px;
}

.slogan3 {
  font-size: 64px;
  font-weight: bold;
}

.slogan2:before {
  content: '';
  background-image: url(/img/deco1.png);
  position: absolute;
  left: 50%;
  width: 317px;
  height: 246px;
  margin-left: -158.5px;
  top: 50%;
  margin-top: -123px;
  z-index: -1;
  -webkit-transition: all 1s ease;
}

#logo {
  position: relative;
  float: left;
  -webkit-transition: all 1s ease;
  width: 200px;
  height: 100%;
  background-color: #fff;
  z-index: 4;
  opacity: 0;
}

#logo img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transition: all .3s ease;
  -webkit-transform: translate(-50%, -50%);
}

@media (max-width: 1200px) {
  .slogan2 {
    font-size: 50px;
  }

  .slogan3 {
    font-size: 54px;
  }

  #SLOGAN {
    width: 660px;
  }

  #bol {
    width: 860px;
    margin-left: -430px;
    bottom: 115px;
    height: 130px;
  }
}

@media (max-width: 992px) {

  #bol:before,
  .slogan2:before {
    display: none;
  }

  #bol {
    width: 100%;
    left: inherit;
    margin-left: inherit;
    bottom: inherit;
    height: 110px;
  }

  #logo {
    width: 138px;
  }

  #SLOGAN {
    width: calc(100% - 138px);
    background-color: rgba(9, 117, 153, 1);
  }

  #logo img {
    width: 100%;
    height: auto;
  }

  .slogan2 {
    font-size: 40px;
  }

  .slogan3 {
    font-size: 44px;
  }
}

@media (max-width: 768px) {
  .slogan2 {
    font-size: 32px;
  }

  .slogan3 {
    font-size: 36px;
  }

  #bol {
    height: 95px;
  }

  #logo {
    width: 120px;
  }

  #SLOGAN {
    width: calc(100% - 120px);
  }
}

@media (max-width: 576px) {
  .slogan2 {
    font-size: 22px;
  }

  .slogan3 {
    font-size: 26px;
  }

  #bol {
    height: 65px;
  }

  #logo {
    width: 70px;
  }

  #SLOGAN {
    width: calc(100% - 70px);
    padding: 8px 0;
  }
}

/*************************************** CTA ******/
#CTA {
  font-size: 15px;
  font-weight: 300;
  line-height: 1.2;
  position: fixed;
  z-index: 666;
  bottom: -100px;
  left: 100px;
  min-width: 100px;
  max-width: 250px;
  padding: 25px;
  padding-left: 55px;
  -webkit-transition: all .7s ease-out;
  transition: all .7s ease-out;
  text-align: left;
  color: #fff;
  border: 1px solid #fff;
  border-radius: 3px;
  background: #8c9454;
}

#CTA a:link,
#CTA a:active,
#CTA a:visited,
#CTA a:hover {
  font-weight: bold;
  color: #fff;
}

#CTA svg {
  font-size: 30px;
  position: absolute;
  top: 50%;
  left: 15px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media (max-width: 992px) {
  #CTA {
    display: none;
  }
}

/***************** PRIVACY ************/
.privacy,
.cookies,
.trattamento {
  position: fixed;
  font-size: 14px !important;
  font-family: verdana;
  z-index: 10000000;
  bottom: 0;
  left: -120%;
  overflow: hidden;
  overflow-y: visible;
  width: 100% !important;
  height: 100% !important;
  padding: 50px;
  -webkit-transition: all .5s ease;
  -o-transition: all .5s ease;
  transition: all .5s ease;
  color: #666 !important;
  background: rgba(255, 255, 255, 0.95) !important;
}

.privacy #close,
.cookies #close,
.trattamento #close_tr {
  position: absolute;
  top: 10px;
  right: 10px;
  cursor: pointer;
  color: #666 !important;
}

.privacybtn {
  cursor: pointer;
  transition: all .4s ease;
}

.privacybtn:hover,
.txtbtn:hover {
  color: #ccc !important;
}

@media (max-width: 768px) {

  .privacy,
  .cookies {
    padding: 15px !important;
  }
}

/*************************STILE FORMS**/
select[class*='ui-datepicker'] {
  padding: 5px;
  color: #000;
  background: inherit;
}

input,
textarea,
select {
  font-family: 'Roboto', sans-serif;
  font-size: 15px;
  font-weight: 300;
  width: calc(100% - 10px);
  margin: 5px;
  padding: 12px;
  transition: all .4s ease;
  color: #fff;
  cursor: pointer;
  border: 1px solid #fff;
  background-color: transparent;
}

textarea {
  height: 98px;
}

select {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  background: url(/img/chevron-down-w.png) no-repeat right center;
  cursor: pointer;
}

input[name*='data_arrivo'],
input[name*='data_partenza'] {
  cursor: pointer;
  background: url(/img/calendar-w.png) no-repeat right center;
}

input[req],
select[req] {
  color: #fff;
  background-color: rgba(255, 0, 0, .1);
}

input[req].error,
select[req].error {
  color: #fff;
  background-color: rgba(255, 0, 0, .1);
}

input[req].error::placeholder,
select[req].error::placeholder {
  color: #fff !important;
}

input[type="checkbox"]:required {
  -webkit-box-shadow: 0px 0px 8px red;
}

label.error {
  display: none !important;
}

input:focus,
textarea:focus,
select:focus {
  color: #097599;
  background: #fff;
}

input:focus::placeholder,
textarea:focus::placeholder,
select:focus::placeholder {
  color: #097599;
}

select:focus {
  color: #097599;
  background: #fff url(/img/chevron-down.png) no-repeat right center;
}

input[name*='data_arrivo']:focus,
input[name*='data_partenza']:focus {
  color: #097599;
  background: #fff url(/img/calendar.png) no-repeat right center;
}

::placeholder {
  color: #fff;
}

::-moz-placeholder {
  opacity: 1;
}

#latestform {
  position: relative;
  width: calc(25% - 10px);
  text-align: left;
  font-size: 14px;
  margin: 5px;
  line-height: 1;
}

input[type='checkbox'] {
  max-width: 13px !important;
}

@media (max-width: 992px) {

  #rc-imageselect,
  .g-recaptcha {
    -webkit-transform: scale(.85);
    transform: scale(.85);
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
  }

  #latestform {
    width: calc(50% - 10px);
  }
}

@media (max-width: 576px) {
  #latestform {
    width: calc(100% - 10px);
  }
}

/********************* listino prezzi *****/

.suite_table {
  font-family: 'Open Sans', sans-serif;
  width: 100%;
  padding: 20px;
  border: 1px solid #999;
  background-color: #FFF;
}

.suite_table td {
  padding: 8px;
  font-size: 16px;
  line-height: 1.1;
}

.suite_col_pari {
  text-align: center;
}

.suite_col_dispari {
  text-align: center;
}

.suite_col_0 {
  font-size: 15px;
  font-weight: bold;
}

.suite_row_0 {
  font-weight: bold;
  text-align: center;
}

.suite_row_pari {
  text-align: center;
  background-color: rgba(191, 231, 204, .7);
}

.suite_row_dispari {
  text-align: center;
  background-color: rgba(191, 231, 204, .9);
}

@media (max-width: 992px) {
  .suite_table {
    padding: 10px;
  }

  .suite_table td {
    padding: 4px;
    font-size: 14px;
  }
}

@media (max-width: 576px) {
  .suite_table {
    padding: 5px;
  }

  .suite_table td {
    padding: 2px;
    font-size: 12px;
  }
}

/***************************** MEDIA ***************************/
@media screen and (max-width: 1500px) {
  .m-xl-0 {
    display: none !important;
    overflow: hidden !important;
    width: 0;
  }

  .m-xl-1 {
    width: 8.3333333333%;
  }

  .m-xl-2 {
    width: 16.666666667%;
  }

  .m-xl-3 {
    width: 25%;
  }

  .m-xl-4 {
    width: 33.33333333%;
  }

  .m-xl-5 {
    width: 41.66666667%;
  }

  .m-xl-6 {
    width: 50%;
  }

  .m-xl-7 {
    width: 58.33333333%;
  }

  .m-xl-8 {
    width: 66.66666667%;
  }

  .m-xl-9 {
    width: 75%;
  }

  .m-xl-10 {
    width: 83.33333333%;
  }

  .m-xl-11 {
    width: 91.66666667%;
  }

  .m-xl-12 {
    width: 100%;
  }

  .m-xl-ha {
    height: auto !important;
    min-height: 0 !important;
  }

  .m-xl-tl,
  .m-xl-tl p {
    text-align: left !important;
  }

  .m-xl-tr,
  .m-xl-tr p {
    text-align: right !important;
  }

  .m-xl-tc,
  .m-xl-tc p {
    text-align: center !important;
  }

  .m-xl-tj,
  .m-xl-tj p {
    text-align: justify !important;
  }

  .m-xl-h100 {
    height: 100px !important;
    min-height: 0 !important;
  }

  .m-xl-h200 {
    height: 200px !important;
    min-height: 0 !important;
  }

  .m-xl-h300 {
    height: 300px !important;
    min-height: 0 !important;
  }

  .m-xl-h400 {
    height: 400px !important;
    min-height: 0 !important;
  }

  .m-xl-h500 {
    height: 500px !important;
    min-height: 0 !important;
  }

  .m-xl-h600 {
    height: 600px !important;
    min-height: 0 !important;
  }

  .m-xl-nb {
    border: none !important;
  }

  .m-xl-bl {
    border-width: 0px !important;
    border-left-width: 1px !important;
  }

  .m-xl-br {
    border-width: 0px !important;
    border-right-width: 1px !important;
  }

  .m-xl-bb {
    border-width: 0px !important;
    border-bottom-width: 1px !important;
  }

  .m-xl-bt {
    border-width: 0px !important;
    border-top-width: 1px !important;
  }

  .col3 {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
  }

  .m-xl-noalign {
    top: auto !important;
    left: auto !important;
    transform: translate(0, 0) !important;
  }
}

@media screen and (max-width: 1200px) {
  .m-l-0 {
    display: none !important;
    overflow: hidden !important;
    width: 0;
  }

  .m-l-1 {
    width: 8.3333333333%;
  }

  .m-l-2 {
    width: 16.666666667%;
  }

  .m-l-3 {
    width: 25%;
  }

  .m-l-4 {
    width: 33.33333333%;
  }

  .m-l-5 {
    width: 41.66666667%;
  }

  .m-l-6 {
    width: 50%;
  }

  .m-l-7 {
    width: 58.33333333%;
  }

  .m-l-8 {
    width: 66.66666667%;
  }

  .m-l-9 {
    width: 75%;
  }

  .m-l-10 {
    width: 83.33333333%;
  }

  .m-l-11 {
    width: 91.66666667%;
  }

  .m-l-12 {
    width: 100%;
  }

  .m-l-ha {
    height: auto !important;
    min-height: 0 !important;
  }

  .m-l-tl {
    text-align: left;
  }

  .m-l-tr {
    text-align: right;
  }

  .m-l-tc {
    text-align: center;
  }

  .m-l-tj {
    text-align: justify;
  }

  .m-l-h100 {
    height: 100px !important;
    min-height: 0 !important;
  }

  .m-l-h200 {
    height: 200px !important;
    min-height: 0 !important;
  }

  .m-l-h300 {
    height: 300px !important;
    min-height: 0 !important;
  }

  .m-l-h400 {
    height: 400px !important;
    min-height: 0 !important;
  }

  .m-l-h500 {
    height: 500px !important;
    min-height: 0 !important;
  }

  .m-l-h600 {
    height: 600px !important;
    min-height: 0 !important;
  }

  .m-l-nb {
    border: none !important;
  }

  .m-l-bl {
    border-width: 0px !important;
    border-left-width: 1px !important;
  }

  .m-l-br {
    border-width: 0px !important;
    border-right-width: 1px !important;
  }

  .m-l-bb {
    border-width: 0px !important;
    border-bottom-width: 1px !important;
  }

  .m-l-bt {
    border-width: 0px !important;
    border-top-width: 1px !important;
  }

  .col3 {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
  }

  .m-l-noalign {
    top: auto !important;
    left: auto !important;
    transform: translate(0, 0) !important;
  }
}

@media screen and (max-width: 992px) {
  .ulrev {
    text-align: left;
  }

  .ulrev li {
    padding-left: 35px;
    padding-right: inherit;
    background-position: left top;
  }

  .m-m-0 {
    display: none !important;
    overflow: hidden !important;
    width: 0;
  }

  .m-m-1 {
    width: 8.3333333333%;
  }

  .m-m-2 {
    width: 16.666666667%;
  }

  .m-m-3 {
    width: 25%;
  }

  .m-m-4 {
    width: 33.33333333%;
  }

  .m-m-5 {
    width: 41.66666667%;
  }

  .m-m-6 {
    width: 50%;
  }

  .m-m-7 {
    width: 58.33333333%;
  }

  .m-m-8 {
    width: 66.66666667%;
  }

  .m-m-9 {
    width: 75%;
  }

  .m-m-10 {
    width: 83.33333333%;
  }

  .m-m-11 {
    width: 91.66666667%;
  }

  .m-m-12 {
    width: 100%;
  }

  .m-m-ha {
    height: auto !important;
    min-height: 0 !important;
  }

  .m-m-boxg .box {
    color: #fff;
    background: rgba(0, 0, 0, .4);
  }

  .m-m-tl {
    text-align: left;
  }

  .m-m-tr {
    text-align: right;
  }

  .m-m-tc {
    text-align: center;
  }

  .m-m-tj {
    text-align: justify;
  }

  .m-m-h50 {
    height: 50px !important;
    min-height: 0 !important;
  }

  .m-m-h100 {
    height: 100px !important;
    min-height: 0 !important;
  }

  .m-m-h200 {
    height: 200px !important;
    min-height: 0 !important;
  }

  .m-m-h300 {
    height: 300px !important;
    min-height: 0 !important;
  }

  .m-m-h400 {
    height: 400px !important;
    min-height: 0 !important;
  }

  .m-m-h500 {
    height: 500px !important;
    min-height: 0 !important;
  }

  .m-m-h600 {
    height: 600px !important;
    min-height: 0 !important;
  }

  .m-m-nb {
    border: none !important;
  }

  .m-m-bl {
    border-width: 0px !important;
    border-left-width: 1px !important;
  }

  .m-m-br {
    border-width: 0px !important;
    border-right-width: 1px !important;
  }

  .m-m-bb {
    border-width: 0px !important;
    border-bottom-width: 1px !important;
  }

  .m-m-bt {
    border-width: 0px !important;
    border-top-width: 1px !important;
  }

  .FGcat-titolo {
    font-size: 18px;
  }

  .m-m-noalign {
    top: auto !important;
    left: auto !important;
    transform: translate(0, 0) !important;
  }
}

@media screen and (max-width: 768px) {
  #imgslider {
    margin-top: 0 !important;
  }

  .m-s-0 {
    display: none !important;
    overflow: hidden !important;
    width: 0;
  }

  .m-s-1 {
    width: 8.3333333333%;
  }

  .m-s-2 {
    width: 16.666666667%;
  }

  .m-s-3 {
    width: 25%;
  }

  .m-s-4 {
    width: 33.33333333%;
  }

  .m-s-5 {
    width: 41.66666667%;
  }

  .m-s-6 {
    width: 50%;
  }

  .m-s-7 {
    width: 58.33333333%;
  }

  .m-s-8 {
    width: 66.66666667%;
  }

  .m-s-9 {
    width: 75%;
  }

  .m-s-10 {
    width: 83.33333333%;
  }

  .m-s-11 {
    width: 91.66666667%;
  }

  .m-s-12 {
    width: 100%;
  }

  .m-s-ha {
    height: auto !important;
    min-height: 0 !important;
  }

  .m-s-tl {
    text-align: left;
  }

  .m-s-tr {
    text-align: right;
  }

  .m-s-tc {
    text-align: center;
  }

  .m-s-tj {
    text-align: justify;
  }

  .m-s-h100 {
    height: 100px !important;
    min-height: 0 !important;
  }

  .m-s-h200 {
    height: 200px !important;
    min-height: 0 !important;
  }

  .m-s-h300 {
    height: 300px !important;
    min-height: 0 !important;
  }

  .m-s-h400 {
    height: 400px !important;
    min-height: 0 !important;
  }

  .m-s-h500 {
    height: 500px !important;
    min-height: 0 !important;
  }

  .m-s-h600 {
    height: 600px !important;
    min-height: 0 !important;
  }

  .m-s-h700 {
    height: 700px !important;
    min-height: 0 !important;
  }

  .m-s-h800 {
    height: 800px !important;
    min-height: 0 !important;
  }

  .m-s-h900 {
    height: 900px !important;
    min-height: 0 !important;
  }

  .m-s-h1000 {
    height: 1000px !important;
    min-height: 0 !important;
  }

  .m-s-nb {
    border: none !important;
  }

  .m-s-bl {
    border-width: 0px !important;
    border-left-width: 1px !important;
  }

  .m-s-br {
    border-width: 0px !important;
    border-right-width: 1px !important;
  }

  .m-s-bb {
    border-width: 0px !important;
    border-bottom-width: 1px !important;
  }

  .m-s-bt {
    border-width: 0px !important;
    border-top-width: 1px !important;
  }

  .col3,
  .col2 {
    -webkit-column-count: 1;
    -moz-column-count: 1;
    column-count: 1;
  }

  .FGcat-titolo {
    font-size: 18px;
  }

  .m-s-noalign {
    top: auto !important;
    left: auto !important;
    transform: translate(0, 0) !important;
  }
}

@media screen and (max-width: 576px) {
  #imgslider {
    height: 500px;
    margin-top: 50px !important;
  }

  .m-xs-0 {
    display: none !important;
    overflow: hidden !important;
    width: 0;
  }

  .m-xs-1 {
    width: 8.3333333333%;
  }

  .m-xs-2 {
    width: 16.666666667%;
  }

  .m-xs-3 {
    width: 25%;
  }

  .m-xs-4 {
    width: 33.33333333%;
  }

  .m-xs-5 {
    width: 41.66666667%;
  }

  .m-xs-6 {
    width: 50%;
  }

  .m-xs-7 {
    width: 58.33333333%;
  }

  .m-xs-8 {
    width: 66.66666667%;
  }

  .m-xs-9 {
    width: 75%;
  }

  .m-xs-10 {
    width: 83.33333333%;
  }

  .m-xs-11 {
    width: 91.66666667%;
  }

  .m-xs-12 {
    width: 100%;
  }

  .m-xs-ha {
    height: auto !important;
    min-height: 0 !important;
  }

  .m-xs-tl {
    text-align: left;
  }

  .m-xs-tr {
    text-align: right;
  }

  .m-xs-tc {
    text-align: center;
  }

  .m-xs-tj {
    text-align: justify;
  }

  .m-xs-h100 {
    height: 100px !important;
    min-height: 0 !important;
  }

  .m-xs-h200 {
    height: 200px !important;
    min-height: 0 !important;
  }

  .m-xs-h300 {
    height: 300px !important;
    min-height: 0 !important;
  }

  .m-xs-h400 {
    height: 400px !important;
    min-height: 0 !important;
  }

  .m-xs-h500 {
    height: 500px !important;
    min-height: 0 !important;
  }

  .m-xs-h600 {
    height: 600px !important;
    min-height: 0 !important;
  }

  .m-xs-nb {
    border: none !important;
  }

  .m-xs-bl {
    border-width: 0px !important;
    border-left-width: 1px !important;
  }

  .m-xs-br {
    border-width: 0px !important;
    border-right-width: 1px !important;
  }

  .m-xs-bb {
    border-width: 0px !important;
    border-bottom-width: 1px !important;
  }

  .m-xs-bt {
    border-width: 0px !important;
    border-top-width: 1px !important;
  }

  .m-xs-noalign {
    top: auto !important;
    left: auto !important;
    transform: translate(0, 0) !important;
  }
}
