/** START OF GENERIC RULES **/

:root {
    --white: #fff;
    --black: #404040;
    --gold: #AF9D70;
    --blue: #144372;     
    --grey: #6D6F6F;
      
    --blue-lighter: #4e7398;

    --bgFooter:rgba(20, 67, 114, 0.1);
  --fontSlabRoboto: "Roboto Slab", serif;
  --fontBody: "Open Sans", sans-serif;
  --transition3s: all 0.3s linear;
}
.color-blue {
    color:var(--blue)!important;
}
.bluebg {
  background-color: var(--bgFooter);
}

*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html,
body,
ul,
ol {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

button {
  background: none;
  border: 0;
  margin: 0;
  padding: 0;
  cursor: pointer;
}

button:focus,
a:focus {
  box-shadow: none !important;
  outline: none;
}

button:focus,
.btn.focus,
.btn:focus {
  outline: 0;
  box-shadow: none;
}

a {
  text-decoration: none;
  background-color: transparent;
  outline: 0;
  cursor: pointer;
  color:var(--blue);
}

a:hover {
  text-decoration: none;
}





.form-control:focus {
  outline: none;
  border: none;
  box-shadow: none;
}

picture {
  display: block;
/*  height: 100%;
  width: 100%;*/
}


picture img{
  display: block;
 /* height: 100%;
  width: 100%;
  object-fit: cover;
  object-position: center;*/
}

.fit-img{
    height: 100% !important;
    width: 100%;
    object-fit: cover;
    object-position: center;
}


/** END OF GENERIC RULES **/
body {
  background: var(--white);
  font-family: var(--fontBody);
  font-size: 16px;
  line-height: 1.5;
  color: var(--black);
}

h1,
.h1,
h2,
.h2 {
  font-family: var(--fontSlabRoboto);
  text-transform: uppercase;
}

h1,
.h1 {
  font-size: 35px;
  color: var(--blue);
  letter-spacing: 1px;
}

h1 span, .h1 span{
  display: block;
  font-size: 25px;
  color: var(--gold);
  letter-spacing: 0.8px;
}

h2,
.h2 {
  font-size: 25px;
  color: var(--gold);
  letter-spacing: 0.8px;
}

@media screen and (max-width: 991px) {

  h1,
  .h1 {
    font-size: 30px;
  }

  h2,
  .h2 {
    font-size: 22px;
  }
}

@media screen and (max-width: 480px) {

  h1,
  .h1 {
    font-size: 26px;
  }

  h2,
  .h2 {
    font-size: 19px;
  }
}

.marginTop {
  margin-top: 100px;
}

@media screen and (max-width: 991px) {
  .marginTop {
    margin-top: 70px;
  }
}

/** START OF MAIN BUTTON **/
.mainBtn,
.mainBtn2,
.button{
  font-family: var(--fontSlabRoboto);
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 1.5px;
  padding: 15px 30px;
  text-transform: uppercase;
  display: inline-block;
  transition: var(--transition3s);
}

.mainBtn {
  border: 1px solid rgba(0, 0, 0, 0.3);
  color: var(--black);
  background-color: white;
}

.mainBtn2,
.button{
  color: var(--white) !important;
  background-color: var(--blue);
  font-size: 16px;
}

.mainBtn:hover {
  border: 1px solid black;
  color: var(--black);
}


.flight-btn {
    font-size: 14px;
    padding-bottom: 10px;
    display: inline-block;
    background: url(/images/plane.svg) no-repeat left 3px;
    background-size: 20px;
    padding-left: 25px;
      font-family: var(--fontSlabRoboto);
}

/** END OF MAIN BUTTON **/
/** START OF HEADER **/
header {
  background-color: var(--white);
  padding: 15px 0px;
  border-bottom: 2px solid var(--gold);
}

header.active .header-logo img:first-child {
  display: none;
}

header.active .header-logo img:last-child {
  display: block !important;
  width: 140px;
}

.header-logo img:first-child {
  width: 180px;
}

.hamburger {
  display: block;
  position: relative;
  cursor: pointer;
  width: 35px;
  height: 20px;
  margin-top: 5px;
}

.hamburger span {
  background-color: var(--black);
  position: absolute;
  left: 50%;
  width: 100%;
  height: 1px;
  transform: translateX(-50%);
  transition: all .2s linear;
  display: block;
}

.hamburger span:nth-child(1) {
  width: 70%;
  top: 0px;
}

.hamburger:hover span:nth-child(1) {
  top: 15px;
}

.hamburger span:nth-child(2) {
  top: 7px;
}

.hamburger span:nth-child(3) {
  width: 70%;
  top: 15px;
}

.hamburger:hover span:nth-child(3) {
  top: 0;
}

.main-navigation li a {
  background-color: transparent;
  position: relative;
  font-family: var(--fontSlabRoboto);
  font-size: 15px;
  font-weight: 400;
  line-height: 1;
  color: var(--black);
  margin: 0;
  padding: 0px 15px;
  letter-spacing: 1px;
  text-transform: uppercase;
  z-index: 1;
  transition: var(--transition3s);
}

.main-navigation li a:hover,
.main-navigation li a.active{
  opacity: 0.7;
}

header .mainBtn {
  padding: 15px 15px;
}

@media screen and (max-width: 1199px) {
  header .mainBtn {
    padding: 12px 8px;
    font-size: 14px;
  }

  .main-navigation li a {
    padding: 0px 10px;
    font-size: 14px;
  }
}

@media screen and (max-width: 991px) {
  .header-logo img:first-child {
    width: 150px;
  }

  header.active .header-logo img:last-child,
  .header-logo img:last-child {
    width: 100px;
  }

  .hamburger {
    left: calc(100% - 200px);
    position: absolute;
    top: 8px;
  }
}

@media screen and (max-width: 480px) {
  .header-logo img:first-child {
    display: none;
  }

  .header-logo img:last-child {
    display: block !important;
  }

  header .mainBtn {
    padding: 12px 5px;
  }

  .hamburger {
    left: calc(100% - 190px);
  }
}

/** END OF HEADER **/
/** START OF MENU  **/
.nav .menu,
.nav .right-col {
  height: 100vh;
}

.toggler-nav {
  position: absolute;
  top: 0;
  left: 0;
  background: transparent;
  height: 100vh;
  width: 100%;
  backface-visibility: hidden;
  visibility: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  transition: all 2s;
}

.toggler-nav.active {
  height: 100vh;
  visibility: visible;
  backface-visibility: hidden;
}

nav {
  position: fixed;
  z-index: 10000;
  width: 100%;
  height: 30px;
  background: var(--blue);
  display: block !important;
  right: -200vw;
}

.nav .right-col {
  background-color: var(--white);
  opacity: 0;
}

.nav .menu {
  opacity: 0;
  background-color: var(--blue);
  font-family:var(--fontSlabRoboto);
}
/*
.nav .menu,
.menu-holder,
.menu-holder ul {
    overflow-y: scroll;
}  */   
.menu-holder {
    padding-top:50px;
      padding-bottom:50px;
}
.nav .menu ul li {
  margin: 10px 0px;
}

.nav .menu ul li a {
  color: var(--white);
  opacity: 0.9;
  font-size: 25px;
  font-weight: 400;
  letter-spacing: 1px;
  line-height: 1.5;
}

.nav .menu ul li a:hover,
.nav .menu ul li a.active{
  opacity: 0.5;
}

.nav h1 {
  letter-spacing: 10px;
  color: var(--blue);
  font-weight: 600;
}

.contact-details,
.booking-form {
  font-weight: 400;
  color: var(--black);
  font-size: 16px;
}

.right-col {
  font-weight: 400;
}


.nav .mainBtn2 {
  font-size: 18px;
}

.booking-form .form-control {
  font-family: var(--fontBody);
  font-size: 18px;
  border-radius: 0px;
  border: none;
  padding: 15px 25px 25px 60px;
  border-bottom: 2px solid rgba(12, 34, 76, 0.6);
}

.booking-form img {
  width: 25px;
  position: absolute;
  top: 17px;
  left: 25px;
}

.close {
  position: absolute;
  top: 40px;
  left: 20px;
  width: 30px;
  height: 30px;
  margin: 0;
  padding: 0;
  cursor: pointer;
  opacity: 0;
  pointer-events: none;
  display: block;
}

nav .close div::before,
nav .close div::after {
  content: "";
  position: absolute;
  width: 30px;
  height: 2px;
  background-color: var(--white);
  transition: background-color 0.5s ease;
}

nav .close div::before {
  transform: rotate(-45deg);
}

nav .close div::after {
  transform: rotate(45deg);
}

nav .close:hover div::before,
nav .close:hover div::after {
  background-color: var(--blue-lighter);
}

@media screen and (max-width: 1199px) {
  .booking-form .form-control {
    font-size: 16px;
    padding: 15px 25px 15px 40px;
  }

  .booking-form img {
    width: 20px;
    top: 18px;
    left: 20px;
  }
}

@media screen and (max-width: 575px) {
  .nav .menu ul li a {
    font-size: 20px;
  }

  .nav .mainBtn2 {
    font-size: 15px;
  }
}

@media screen and (max-height: 700px) {
  .nav .menu ul li a {
    font-size: 20px;
  }

  .nav .mainBtn2 {
    font-size: 15px;
  }

  .contact-details,
  .booking-form {
    font-size: 16px;
  }

  .contact-details a {
    font-size: 20px;
  }

  .nav .menu {
    padding: 60px 0px 50px;
  }
}
/*
@media screen and (max-height: 550px) {
  .nav .menu {
    padding: 50% 0px 50px;
    overflow-y: auto;
  }
}*/
.right-col .social-icons a:not(:last-child){
    padding-right:12px;
}


@media (min-width: 1200px) {
     .menu .imgAsBg{
        width:45%;  
   }   
}
@media (max-width: 1199px) {
   .menu .imgAsBg{
        display:none;  
   } 
}
/** END OF MENU  **/
/** START OF GENERIC CAROUSEL  
===========================**/
.noSlider-holder {
    height:115px;
}
/*
@media screen and (max-height: 767px) {
    .noSlider-holder {
        height:70px;
    }
}*/

#genericCarousel .carousel-item,
#genericCarousel.carousel::before {
  height: 100vh;
}

#genericCarousel .carousel-item picture {
  display: block;
  height: 100%;
  width: 100%;
}


#genericCarousel .carousel-item picture img{
  display: block;
  height: 100%;
  width: 100%;
  object-fit: cover;
  object-position: center;
}


.carousel-indicators {
  justify-content: flex-end;
  align-items: flex-end;
  margin-right: 5%;
  bottom: 15px;
  z-index: 5;
}

.carousel-control-next,
.carousel-control-prev {
  z-index: 3;
  width: 30px;
}

.carousel-control-prev {
  left: 50px;
}

.carousel-control-next {
  right: 50px;
}

.carousel::before {
  content: '';
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  display: block;
  background: linear-gradient(65deg, rgba(0, 0, 0, 0.6) 5%, rgba(255, 255, 255, 0) 50%, rgba(0, 0, 0, 0.6) 95%);
}

.carousel-indicators [data-bs-target] {
  width: 22px;
  border: 0;
  background: var(--gold);
}

.carousel-indicators .active {
  opacity: 1;
  background: var(--blue-lighter);
  height: 10px;
}

.contentOverSlider {
  position: absolute;
  z-index: 5;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.contentOverSlider p {
  font-family: var(--fontSlabRoboto);
  font-size: 45px;
  line-height: 1.3;
  letter-spacing: 1px;
  padding: 20px 35px 10px;
  color: var(--white);
  background: rgba(0, 0, 0, 0.5);
  text-transform: uppercase;
}

.arrow-container {
  display: block;
  width: 50px;
  height: 50px;
  top: 50%;
  transform: translateY(-50%) rotateZ(-90deg);
}

.carousel-control-prev.arrow-container {
  transform: translateY(-50%) rotateZ(90deg);
}

.bigCarousel .arrow-container {
  top: unset;
}

.bigCarousel .carousel-control-next {
  right: unset;
  left: 100px;
}

.arrow-container:hover {
  cursor: pointer;
}

.arrow-container:hover .arrow {
  top: 50%;
}

.arrow-container:hover .arrow:before {
  transform: translate(-50%, -50%) rotateZ(-30deg);
}

.arrow-container:hover .arrow:after {
  transform: translate(-50%, -50%) rotateZ(30deg);
}

.arrow {
  position: absolute;
  left: 50%;
  transition: all 0.4s ease;
}

.arrow:before,
.arrow:after {
  transition: all 0.4s ease;
  content: "";
  display: block;
  position: absolute;
  transform-origin: bottom right;
  background: var(--white);
  width: 3px;
  height: 30px;
  border-radius: 10px;
  transform: translate(-50%, -50%) rotateZ(-45deg);
}

.arrow:after {
  transform-origin: bottom left;
  transform: translate(-50%, -50%) rotateZ(45deg);
}

.arrow:nth-child(1) {
  opacity: 0.5;
  top: 35%;
}

.arrow:nth-child(2) {
  opacity: 0.8;
  top: 55%;
}

.arrow:nth-child(3) {
  opacity: 1;
  top: 75%;
}

@media screen and (max-width: 991px) {

  #genericCarousel::before,
  #genericCarousel .carousel-item {
    height: 550px !important;
  }
}

@media screen and (max-width: 767px) {
  .carousel-control-prev {
    left: 20px;
  }

  .carousel-control-next {
    right: 20px;
  }

  .bigCarousel .arrow-container {
    top: 50px;
  }

  .bigCarousel .carousel-indicators {
    display: none;
  }

  .bigCarousel .carousel-control-next {
    left: 70px;
  }
}

@media screen and (max-width: 575px) {

  #genericCarousel::before,
  #genericCarousel .carousel-item {
    height: 400px !important;
  }
}

/** END OF GENERIC CAROUSEL  **/



/* Video
=================================== */
.mainVideoSlider {
        position: relative;
        height: 100vh;
    }
.mainVideoSlider video {
    height: 100vh;
    width: 100%;
    object-fit: cover;
}
@media screen and (max-width: 991px) {
    .mainVideoSlider, .mainVideoSlider video {
        height: 450px;
    }
}
@media screen and (max-width: 767px) {
    .mainVideoSlider, .mainVideoSlider video {
        height: 400px;
    }
}
@media screen and (max-width: 480px) {
    .mainVideoSlider, .mainVideoSlider video {
        height: 350px;
    }
}
  /*      
.YTvideo-placement{
    height:calc(100vh - 40px);
} */     
        


/** START BOOKING ROW 
==============================*/
.booking-row form{
  /*color: var(--white);*/
  max-width: 840px;
    margin: auto;
    padding:14px 22px;
    background: rgba(177, 178, 179, 0.2);
}

.booking-row .column {
 /* padding: 30px 40px;*/
  cursor: pointer;
  transition: var(--transition3s);
}
.booking-row .form-label {
  text-transform: uppercase;
  font-size: 14px;
  margin-bottom: 8px;
  letter-spacing: 1px;
}
.booking-row .form-control {
  border-radius: 0px;
  padding: 5px 0px;
  font-size: 20px;
  background: transparent;
  border: none;
/*  color: var(--white);*/
  text-align: left;
  cursor: pointer;
 /* border-bottom: 2px solid var(--white);*/
}


.booking-row .column:nth-child(1), 
.booking-row .column:nth-child(2){  
    width:18%;
    margin-right:2%;
}
.booking-row .column:nth-child(3), 
.booking-row .column:nth-child(4){  
    width:13%;
    margin-right:2%;
       text-align:center;
}
.booking-row .column-btn {  
    width:30%;
}
@media screen and (max-width: 1199px) {
    .booking-row .column:nth-child(1), 
    .booking-row .column:nth-child(2){  
        width:20%;
        margin-right:2%;
    }
    .booking-row .column:nth-child(3), 
    .booking-row .column:nth-child(4){  
        width:15%;
        margin-right:2%;
           text-align:center;
    }
    .booking-row .column-btn {  
        width:22%;
    }   
}
@media screen and (max-width: 767px) {
    .booking-row .column:nth-child(1), 
    .booking-row .column:nth-child(2){  
        width:28%;
        /*display:flex;
        align-items:center;
        margin-bottom:20px;
        justify-content: stretch;*/
    }
    .booking-row .column:nth-child(3), 
    .booking-row .column:nth-child(4){  
        width:18%;
        text-align:left;
        /*display:flex;
        align-items:center;
        justify-content: stretch;*/
    }
    .booking-row .form-control {
        border: 1px solid rgba(0, 0, 0, 0.3);
        padding: 5px 8px;
        font-size: 16px;
        width:100%;
    }
    .booking-row .column-btn {  
        width: 100%;
        margin-top: 20px;
        text-align: center !important;
    }   
    .booking-row .form-label {
      margin-bottom: 0px;
      margin-right:20px;
      font-size:12px;
    }
}

@media screen and (max-width: 767px) {
    .booking-row .column:nth-child(1), 
    .booking-row .column:nth-child(2){  
        width:48%;
    }
    .booking-row .column:nth-child(3), 
    .booking-row .column:nth-child(4){  
        width:48%;
        margin-top: 14px;
    }
}

@media screen and (min-width: 768px) {
    .booking-row .column:nth-child(3) .form-control, 
    .booking-row .column:nth-child(4) .form-control{  
     text-align:center;
    }
}
.booking-row .form-control option {
  color: var(--black);
  cursor: pointer;
}
/*
.booking-row .row .col:hover {
  background: var(--gold);
}*/

.booking-row .mainBtn {
  /*letter-spacing: 1px;
  font-size: 18px;
  background: var(--blue-lighter);
  color: var(--blue);
  width: 100%;
      height: 100%;
  border-radius: 0px;*/
      padding: 15px 20px;
}

@media screen and (max-width: 1199px) {
  .booking-row .form-control {
    font-size: 16px;
  }
  .booking-row .mainBtn {
      padding: 12px 18px;
              font-size: 14px;
        line-height: 1.3;
  }
}
@media screen and (max-width: 991px) {
   .booking-row .mainBtn {
      padding: 10px 14px;
  }   
}
@media screen and (max-width: 575px) {
  .booking-row .form-control {
    font-size: 14px;
  }
}
/** END BOOKING ROW **/
/**HOME WELCOMR**/
.homeWelcome {
  /*background: url("../images/bg.png") no-repeat 102% top;*/
}
@media screen and (min-width: 992px) {
    .homeWelcome .imageCol picture {    
        display: block;
        height: 100%;
        width: 100%;
    }
}

.homeWelcome .row {
  margin-top: 80px;
}
.text-img-column picture{
    margin-top:auto;
}
@media screen and (max-width: 1199px) {
  .homeWelcome .imageCol img {
    height: 700px;
  }
}

@media screen and (max-width: 991px) {
  .homeWelcome img {
    display: none;
  }

  .homeWelcome {
    text-align: center;
  }

  .homeWelcome .row {
    margin-top: 30px;
  }

  .homeWelcome {
    background-size: contain;
  }
}

/**HOME WELCOME**/
/**CAROUSELS**/
.bigCarousel .carousel-item,
.bigCarousel.carousel::before {
  height: 800px;
}
.bigCarousel picture{
    display: block;
    height: 100%;
    width: 100%;
}
    

.miniCarousel .imageCol {
/*  height: 700px;*/
position:relative;
}

.miniCarousel .imageCol::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  display: block;
  /*width: 50%;
  height: 700px;*/
  bottom:0;
  z-index: 1;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.3) 0%, rgba(255, 255, 255, 0) 50%, rgba(0, 0, 0, 0.3) 100%);
}

.revert.miniCarousel .imageCol::before {
  left: 0;
  right: auto;
}

.miniCarousel.carousel::before {
  content: unset;
}

.text-content-carousel {
  border: 5px solid var(--blue);
  position: relative;
  z-index: 2;
  /*left: 100px;*/
}


@media screen and (min-width: 992px) {
    .text-content-carousel {
        right: 100px;
    }
    .revert .text-content-carousel {
      right: unset;
      left: 100px;
    }   
}
.miniCarousel .carousel-indicators {
  margin-right: 5%;
}

.revert.miniCarousel .carousel-indicators {
  margin-right: 0px;
  right: unset;
  left: 0;
  margin-left: 3%;
}

.revert.miniCarousel .carousel-control-prev {
  left: 30px !important;
  right: unset;
}

.revert.miniCarousel .carousel-control-next {
  right: unset;
  left: 80px;
}

.box-text {
  background: var(--white);
  padding: 50px;
}

.miniCarousel .arrow-container {
  top: 7%;
}

.miniCarousel .carousel-control-next {
  right: 30px;
}

.miniCarousel .carousel-control-prev {
  left: unset !important;
  right: 80px;
}

.carousel-inner-box {
  display: inline-flex;
  flex-direction: column;
  background: rgba(0, 0, 0, 0.4);
  position: absolute;
  z-index: 5;
  top: 10%;
  right: 15%;
  color: var(--white);
  width: 400px;
  height: 500px;
  align-items: center;
  justify-content: center;
}

.revert .carousel-inner-box {
  right: unset;
  left: 15%;
}

.revert .carousel-indicators {
  margin-left: unset;
  right: unset;
  left: 100px;
}

.revert .carousel-control-prev {
  left: unset;
  right: 80px;
}

.revert .carousel-control-next {
  right: 30px;
  left: unset;
}

.carousel-inner-box h2 {
  color: var(--white);
}

#reviewsCarousel::before {
  content: unset;
}

#reviewsCarousel .carousel-indicators {
  bottom: -50px;
  left: 50%;
  transform: translateX(-50%);
  right: unset;
  margin: 0;
}

@media screen and (max-width: 1199px) {
  .box-text {
    padding: 30px 15px;
  }
}

@media screen and (max-width: 991px) {

  .text-content-carousel {
    /*left: unset;*/
    top: -80px;
  }
/*
  .revert .text-content-carousel {
    right: unset;
  }*/

  .box-text {
    padding: 35px 15px 20px;
  }

  .miniCarousel .carousel-indicators {
    display: none;
  }

  .miniCarousel .carousel-indicators,
  .revert.miniCarousel .carousel-indicators {
    margin-right: 10%;
  }

  .revert.miniCarousel .carousel-indicators {
    right: 0;
    margin-left: unset;
  }

  .carousel-inner-box {
    height: 400px;
  }
}

@media screen and (max-width: 767px) {

  .bigCarousel .carousel-item,
  .bigCarousel.carousel::before {
    height: 500px;
  }

  .carousel-inner-box {
    top: unset;
    bottom: 0;
    right: unset;
    width: 100%;
    font-size: 15px;
  }

  .revert .carousel-inner-box {
    left: unset;
  }

  .carousel-inner-box .mainBtn2 {
    font-size: 14px;
    padding: 12px 15px;
  }

  .carousel-inner-box {
    height: auto;
  }
}

/**CAROUSELS**/
/** SECTION WITH BOX CONTENT **/
.box-content {
 /* height: 500px;*/
  position: relative;
  transition: var(--transition3s);
}

.box-content:hover {
  filter: grayscale(90%);
}

.box-content .tag {
  display: inline-block;
  padding: 8px 25px;
  margin-left: 30px;
  margin-top: 30px;
  font-size: 18px;
  letter-spacing: 1px;
  background: var(--blue);
  color: var(--white);
  position: absolute;
  top: 0;
}

.box-content-text .heading {
  font-weight: 600;
  font-size: 22px;
}

.box-content-text .miniDesc {
  font-weight: 400;
}
/*
@media screen and (max-width: 1399px) {
  .box-content {
    height: 400px;
  }
}

@media screen and (max-width: 1199px) {
  .box-content {
    height: 350px;
  }
}

@media screen and (max-width: 991px) {
  .box-content {
    height: 400px;
  }
}

@media screen and (max-width: 575px) {
  .box-content {
    height: 350px;
  }
}*/

/** SECTION WITH BOX CONTENT **/
/** REVIEWS HOME **/
.review-name {
  font-size: 22px;
  text-transform: uppercase;
  color: var(--blue);
  margin: 50px 0px 10px;
}

.review-source {
  font-size: 18px;
  text-transform: uppercase;
  color: var(--blue);
}

/** REVIEWS HOME **/
/**CONTACT SECTION**/
.map-container {
  height: 400px;
}
.map-container picture {
  position: relative;
  z-index: 0!important;
  top: 0!important;
  left: 0!important;
      height: 400px;
    overflow: hidden;
}


.map-box {
  display: inline-flex;
  align-items: center;
  padding: 20px 20px;
  background: var(--white);
  color: var(--black);
  margin-left: 25px;
  margin-top: 25px;
  width: 300px;
  transition: var(--transition3s);
  position:absolute;
  z-index:1;
}

.map-box:hover { 
  color: var(--blue-lighter);
}

.map-box .name-company,
.map-box .directions span {
  font-weight: 500;
}

.map-box .company-address {
  font-size: 14px;
  /*color: var(--blue);*/
}

.map-box .directions {
  margin-left: 30px;
  border-left: 1px solid rgba(128, 128, 128, 0.5);
  padding-left: 25px;
}
.map-box .directions span:before {
    content: "";
    width: 25px;
    height: 25px;
    background: url(/images/point.svg) no-repeat center center;
    background-size: 100%;
    display: block;
    margin: auto;
}
.map-box .directions span {
  font-size: 14px;
  margin-top: 10px;
}

.contact-box {
  margin-top: 50px;
  border-right: 5px solid var(--blue);
  border-bottom: 5px solid var(--blue);
  position: relative;
  left: -100px;
}
.contact-box .call {
    position:relative;
    line-height: normal;
}
.contact-box .call:after {
    content:"";
    width: 22px;
    height: 22px;
    margin-left: 8px;
    display: inline-block;
    background: url('/images/phone.svg') no-repeat center center;
    background-size: 100%;
}

.contact-box a {
  color: var(--blue);
}

.contact-box .contact-form {
  margin-left: 120px;
}

.contact-box img {
  width: 20px;
  margin-left: 15px;
}

.contact-row picture {
  position: relative;
  z-index: -1;
  top: -190px;
  left: 20px;
}
@media screen and (max-width: 1500px) {
  .contact-box {
    left: -50px;
  }

  .contact-row picture {
    top: -100px;
  }

  .contact-box .contact-form {
    margin-left: 30px;
  }

 /* .bluebg-footer {
    margin-top: 80px;
  }*/
}

@media screen and (max-width: 1199px) {
  .contact-row picture {
    top: -15px;
  }

  /*.bluebg-footer {
    margin-top: 120px;
  }*/
}

@media screen and (max-width: 991px) {
  .contact-box {
    left: auto;
  }

 /* .bluebg-footer {
    margin-top: 140px;
  }*/
}
@media screen and (max-width: 767px) {
 /* .bluebg-footer {
    margin-top: 40px;
  }*/
}

@media screen and (max-width: 480px) {
  .map-box {
    margin-left: 0px;
    width: 100%;
  }

  .map-box .directions {
    margin-left: 10px;
    padding-left: 8px;
  }
}

/**CONTACT SECTION**/
/** INSTA FEED 
===============================**/
.insta-feed { position: relative;}
.insta-feed:before {
    content:"";
  position: absolute;
  left:0;
  right:0;
  bottom:0;
  top: 60px;
  background-color: var(--bgFooter);
}

figure.effect-layla {
  background: var(--blue);
  border: 10px solid var(--blue);
  position: relative;
  float: left;
  overflow: hidden;
  text-align: center;
 /* height: 300px;*/
}

figure.effect-layla img {
  position: relative;
  object-fit: cover;
  display: block;
  height: 100% !important;
  opacity: 1;
}

figure.effect-layla img,
figure.effect-layla figcaption::before,
figure.effect-layla figcaption::after {
  transition: opacity 0.55s, transform 0.55s;
}

figure.effect-layla:hover figcaption::after {
  transition-delay: 0.15s;
}

figure.effect-layla:hover img {
  opacity: 0.7;
  transform: translate3d(0, 0, 0) scale(1.2);
}

figure.effect-layla figcaption::before,
figure.effect-layla figcaption::after {
  position: absolute;
  content: '';
  opacity: 0;
}

figure.effect-layla figcaption::before,
figure.effect-layla figcaption::after {
  pointer-events: none;
}

figure.effect-layla figcaption::before {
  top: 50px;
  right: 30px;
  bottom: 50px;
  left: 30px;
  border-top: 1px solid var(--white);
  border-bottom: 1px solid var(--white);
  transform: scale(0, 1);
  transform-origin: 0 0;
}

figure.effect-layla figcaption::after {
  top: 30px;
  right: 50px;
  bottom: 30px;
  left: 50px;
  border-right: 1px solid #fff;
  border-left: 1px solid #fff;
  transform: scale(1, 0);
  transform-origin: 100% 0;
}

figure.effect-layla img,
figure.effect-layla figcaption::before,
figure.effect-layla figcaption::after {
  transition: opacity 0.35s, transform 0.35s;
}

figure.effect-layla:hover figcaption::before,
figure.effect-layla:hover figcaption::after {
  opacity: 1;
  transform: scale(1);
}

figure.effect-layla figcaption {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-transform: uppercase;
  font-size: 1.25em;
  backface-visibility: hidden;
}

figure.effect-layla figcaption a {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: var(--white);
  opacity: 0;
  transition: 0.2s linear;
}

figure.effect-layla:hover figcaption a {
  opacity: 1;
}

figure.effect-layla figcaption a:hover {
  color: var(--white);
  text-decoration: underline;
}

.insta-link {
  font-size: 0px;
  display: inline-flex;
  background: var(--blue);
  width: 100px;
  height: 100px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.insta-btn {
  display: inline;
  margin: auto;
}

.insta-btn img {
  width: 40px;
  filter: invert(100%);
}

.insta-link:hover {
  animation: pulse-animation 1s infinite;
}

@keyframes pulse-animation {
  0% {
    box-shadow: 0 0 0 5px rgba(0, 0, 0, 0.2);
  }

  100% {
    box-shadow: 0 0 0 25px rgba(0, 0, 0, 0);
  }
}

@media screen and (max-width: 1199px) {
 /* figure.effect-layla {
    height: 250px;
  }*/

  .insta-link {
    width: 90px;
    height: 90px;
  }
}
/*
@media screen and (max-width: 991px) {
  figure.effect-layla {
    height: 300px;
  }
}
*/
@media screen and (max-width: 575px) {
  figure.effect-layla {
    /*height: 200px;
    border: 5px solid var(--gold);*/
  }

  .insta-btn img {
    width: 35px;
  }

  .insta-link {
    width: 80px;
    height: 70px;
  }

  figure.effect-layla figcaption::before {
    top: 25px;
    right: 30px;
    bottom: 25px;
    left: 30px;
  }

  figure.effect-layla figcaption::after {
    right: 15px;
    left: 15px;
  }
}

/** INSTA FEED **/
/**HOME SECTIONS**/
.bar-home {
  padding-top: 120px;
  background: url(../images/logo-revitup3.png) no-repeat 90% 10%;
  background-size: 300px;
}

.locationHome,
.newsHome,
.reviewsHome {
  margin-top: 120px;
}

@media screen and (max-width: 991px) {
  .bar-home {
    background: none;
    padding-top: 80px;
  }

  .locationHome,
  .newsHome {
    margin-top: 0px;
  }

  .reviewsHome {
    margin-top: 30px;
  }
}

/**HOME SECTIONS**/
/** NEWSLETTER**/
.newsletter-form {
  position: relative;
}

.newsletter-form .form-control {
  border: 1px solid var(--blue);
  border-radius: 0px;
  padding: 20px 10px;
  font-size: 16px;
  color: var(--black);
}

.col-auto.button-holder {
  position: absolute;
  right: 15px;
  top: 10px;
}

@media screen and (max-width: 767px) {
  .col-auto.button-holder {
    position: static;
    margin-top: 20px;
  }
}

/** NEWSLETTER**/
/** FOOTER **/
.contact-details img {
  height: 25px;
  
}

.contact-details li {
    margin-bottom: 10px;
    position:relative;
    display: flex;
    justify-content: end;
    align-items: center;
}
.contact-details .align-start li {
    justify-content: start;
}

.contact-details li:before {
    content:"";
    width:25px;
    height:25px;
    margin-right: 8px;
    display: inline-block;
}
.contact-details li.tel:before {
    background: url('/images/phone.svg') no-repeat left center;
    background-size: 85%;
}
.contact-details li.mail:before {
    background: url('/images/email.svg') no-repeat left center;
    background-size: 85%;
}
.contact-details li.pin:before {
    background: url('/images/point.svg') no-repeat left center;
    background-size: 85%;
}
.contact-details ul a {
 /* font-size: 18px;*/
  display: flex;
  align-items: center;
  justify-content: end;
}
.contact-details a {
  /*font-family: var(--fontBody);*/
  color: var(--black);
  text-align:left;
      justify-content: start;
}
footer .copyright {
  font-size: 14px;
}

footer .copyright a {
  font-size: 14px;
  text-decoration: underline;
}



footer .footer-social a {
  display: inline-block;
   margin:0 8px;
}
footer .footer-social img {
  height: 28px;
}

footer .footer-social span {
  font-family: var(--fontSlabRoboto);
  font-size: 22px;
  position: relative;
  top: 3px;
}

@media screen and (max-width: 991px) {
  footer .footer-social {
    padding-right: 125px;
  }

  .contact-details ul a {
    justify-content: flex-start;
  }
}

@media screen and (max-width: 480px) {
  footer .footer-social {
    padding-right: 0px;
  }
}

/** START OF GALLERY PAGE **/

#galleryBtnContainer .button {
  margin: 10px 15px;
  font-size: 13px;
}

#galleryBtnContainer .button.active {
  background: var(--blue-lighter);
}
/*
.galleryFiltering .photoColumn a,
.galleryFiltering .photoColumn picture {
  height: 400px;
  width: 100%;
}
.galleryFiltering .photoColumn picture img {
    height: 100% !important;
    width: 100%;
    object-fit: cover;
}*/

.galleryFiltering .photoColumn a {
  transition: var(--transition3s);
  filter: brightness(0.8);
}

.galleryFiltering .photoColumn a:hover {
  filter: brightness(1);
}

.photoColumn {
  display: none;
  /* Hide all elements by default */
}

.show {
  display: block;
  /* The "show" class is added to the filtered elements */
}

/*
@media screen and (max-width: 1399px) {
  .galleryFiltering .photoColumn a,
  .galleryFiltering .photoColumn picture {
    height: 300px;
  }
}

@media screen and (max-width: 575px) {
  .galleryFiltering .photoColumn a,
  .galleryFiltering .photoColumn picture {
    height: 250px;
  }

}

@media screen and (max-width: 480px) {
  .galleryFiltering .photoColumn a,
  .galleryFiltering .photoColumn picture {
    height: 150px;
  }
}*/

/** END OF GALLERY PAGE **/

/**CONTACT PAGE **/
.map-contact-container iframe {
  width: 100%;
  height: 100%;
}

.contactform .form-control {
  border: none;
  border-bottom: 1px solid var(--black);
  border-radius: 0px;
  padding: 5px 15px;
  font-size: 15px;
  transition: var(--transition3s);
}

.contactform .form-control:focus {
  border-bottom: 2px solid var(--gold);
}

.contactform label {
  font-size: 15px;
}

.contact-info-details a {
  color: var(--black);
  display: flex;
  align-items: center;
}

.contact-info-details img {
  width: 30px;
  margin-right: 8px;
}

.contact-info-details li {
  margin-bottom: 15px;
}

.bluebg-contact {
  margin-top: 180px;
}

@media screen and (max-width: 991px) {
  .map-contact-container iframe {
    height: 400px;
  }
}

/**CONTACT PAGE **/
/** LISTING PAGES **/
.carousel-inner-box li {
  margin-bottom: 15px;
}

.carousel-inner-box li:last-child {
  margin-bottom: 0px;
}

.carousel-inner-box li img {
  margin-right: 8px;
}
/*
.listing .imageCol {
  height: 700px;
}

@media screen and (max-width: 1199px) {
  .listing .imageCol {
    height: 600px;
  }
}
*/
@media screen and (max-width: 991px) {
 /* .listing .imageCol {
    height: 500px;
  }
*/
  .reviewsListing {
    margin-top: 0px !important;
  }
}
/*
@media screen and (max-width: 575px) {
  .listing .imageCol {
    height: 350px;
  }
}
*/

/** LISTING PAGES **/

/** INNER PAGE **/
/*.innerGallery img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}*/

.innerGallery img:hover {
  filter: grayscale(100%);
}
/*
.innerGallery .item {
  height: 300px;
}

@media screen and (max-width: 1199px) {
  .innerGallery .item {
    height: 250px;
  }
}

@media screen and (max-width: 575px) {
  .innerGallery .item {
    height: 200px;
  }
}*/

/** INNER PAGE **/
.room-details .umb-block-list div {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 20px;
}
.room-details img {
  margin-right: 10px;
  width:24px;
  filter: brightness(0) invert(1); 
}
.room-details.colored-icons img{
    filter:none;
}
 

.room-amenities ul {
  list-style: square;
  padding: 0px 20px;
}

.room-amenities ul li {
  margin-bottom: 15px;
}

.room-amenities .col-md-6:first-child ul {
  direction: rtl;
}

@media screen and (max-width: 767px) {
  .room-amenities .col-md-6:first-child ul {
    direction: ltr;
  }

  .room-amenities ul {
    padding: 0;
  }
}

.gallery-row picture{
       margin: .5px;
 
}

.faq {
  background: #FFFFFF;
  box-shadow: 0 2px 48px 0 rgba(0, 0, 0, 0.06);
  border-radius: 4px;
}

.faq .card {
  border: none;
  background: none;
  border-bottom: 1px dashed #CEE1F8;
}

.faq .card .card-header {
  padding: 0px;
  border: none;
  background: none;
  transition: var(--transition3s);
}

.faq .card .card-header:hover {
  background: rgba(12, 34, 76, 0.1);
  padding-left: 10px;
}

.faq .card .card-header .faq-title {
  font-size: 20px;
  width: 100%;
  padding-left: 30px;
  padding-right: 30px;
  padding-top: 25px;
  padding-bottom: 15px;
  color: var(--black);
  transition: var(--transition3s);
  cursor: pointer;
}

.faq .card .card-header .faq-title .badge {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0px;
  float: left;
  width: 25px;
  height: 25px;
  border-radius: 100px;
  text-align: center;
  background: var(--gold);
  color: var(--white);
  font-size: 12px;
  margin-right: 20px;
}

.faq .card .card-body {
  padding: 30px;
  padding-left: 35px;
  padding-bottom: 16px;
  border-top: 1px solid var(--blue);
}

@media (max-width: 991px) {
  .faq {
    margin-bottom: 30px;
  }

  .faq .card .card-header .faq-title {
    margin-top: 10px;
    font-size: 18px;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 15px;
    padding-bottom: 15px;
  }
}

/*# sourceMappingURL=style.css.map */



/* START SCROLL TO TOP  */
.toTop {
  text-align: right;
}

a.scrollup {
  position: fixed;
    right: 20px;
    bottom: 20px;
  background: var(--blue) url("/images/arrow-top.svg") no-repeat center center;
  background-size: 28px;
  width: 48px;
  height: 48px;
  z-index: 3;
  display: none;
}

.scrollup.is-visible {
  display: inline;
  opacity: 1;
}

@media screen and (max-width: 1199px) {
  a.scrollup {
    right: 5%;
  }
}


.field-validation-valid {
  display: none;
  color: red; }
.field-validation-error {
  display: block;
  color: red;
  text-align: left; 
  font-size:12px;    
}
.field-validation-error:empty {
	display: none;
}  

.asterisk span {
  display: inline;
  font-size: 14px;
}
.form-agree label {
	display:inline;
}
.form-agree .field-validation-error {
	display: inline-block;
}

.form-agree a {
    text-decoration:underline;
    padding-bottom: 0px;
    border-bottom: 0px solid var(--gold);
}
.form-agree a:hover {
    text-decoration:none;
}
.grecaptcha-badge {
	display: none !important;
}
#json-msg {
    padding-top:20px;
}
.status-failure,
.status-busy {
    margin:6px 0 0 0;
}
.status-busy img{
   height: 10px;
}

.attachment-field{
    min-width: 140px;
    background: url(/images/upload-icon.svg) no-repeat top left;
    background-size: 20px;
   /* font-weight: 600;*/
   text-transform:uppercase;
    font-size: 14px;
    /*letter-spacing: 1.4px;*/
    padding-bottom: 8px;
    padding-left: 30px;
}



.sitemap a{
    text-decoration:none;
    color:var(--black);
}
.sitemap a:hover{
    text-decoration:underline;
}
/* SWIPER - GENERAL intro
=============================== */
.swiper-slide {
    text-align: center;
}
.offerCarousel .swiper-slide {
    text-align: left;
}
.swiper-pagination {
    line-height: 0;
    bottom: 10px !important;
}
.swiper-pagination-bullet {
    height: 4px;
    width: 22px;
    background: var(--gold);
    border-radius:0;
    opacity:1;
        
}
.swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: var(--blue-lighter);
    height: 8px;
}

.awardsSwiper {
    margin-top:40px;
    padding-bottom:30px;
}
.awardsSwiper .swiper-slide img{
    margin:auto;
}


.breadcrumb {
    color: var(--blue00);
    font-family: var(--fontManrope);
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 600;
}
.breadcrumb li+li:before {
    padding: 8px;
    color:  var(--blue00);
    content: "\276F";
    font-size: 12px;
    font-weight: 300;
}
.breadcrumb a {
    color: #ABABAB;

    text-decoration: none;
    font-weight: 600;
 }
.breadcrumb a:hover {
    color: var(--gold9E);
    text-decoration: none;
}
@media screen and (max-width: 767px) {
    .breadcrumb {
        font-size:14px;
    }    
}
.cookie-icon {
    position:fixed;
    left:20px;
    bottom:20px;
    opacity: 1;
    width:46px;
    height:46px;
    border-radius: 50%;
    background: rgba(255,255,255,.8);
    padding:6px;
    font-size:8px;
    z-index: 10;
}
/*BOOKING WIDGET*/
.calendar-widget{
    margin-top:40px!important;
}


.awards-all {
    justify-content:center;
}
.awards-all > div{
 padding:10px;   
}

/** START OF MODAL 
=======================*/
.modal {
  z-index: 20000;
}
  .modal .modal-dialog {
    max-width:780px;
  }
.modal .modal-content {
  border-radius: 0px;
  line-height:1.6;
}
.modal .btn-close {
  position: absolute;
  width: 2em;
  height: 2em;
  right: 0px;
  top: 0px;
  opacity: .8;
  border-radius: 0px;
}
@media screen and (max-width: 767px) {
  .modal .modal-body .imgCol {
    height: 300px !important;
  }
    .modal .modal-dialog {
        max-width:400px;
        margin-left: auto;
        margin-right: auto;
    }
}

/*Privacy Policy
============================*/

.wordbreak a{
     word-break: break-word;  
}
.privacyList ul{
    margin:0 0 15px 0px;
    padding-left:10px;
}
.privacyList ul ul{
        padding-left:10px;
}
.privacyList li{
    list-style: circle;
     list-style-position: inside;
}


.simpleText ul {
  list-style: square;
    margin:0 0 15px 15px;
    padding-left:3px;
}


/* END SCROLL TO TOP  */