/* ================================================================ *\
	#Reset
\* ================================================================ */

* { padding: 0; margin: 0; outline: 0; }

*, *:before, *:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

/* ================================================================ *\
	#Base
\* ================================================================ */

article,
aside,
figcaption,
figure,
footer,
header,
main,
nav,
section { display: block; }

html,
body { height: 100%; }

html { overflow-y: scroll; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
body {
	min-width: 320px;
	background: #fff;
    font-family: "Raleway", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
	font-size: 16px;
	line-height: 1.5;
	color: #111111;
	-webkit-font-smoothing:antialiased;
	font-weight: 400;
}

a { text-decoration: none; color: #fff; }
a:hover { text-decoration: none; }

img { border: 0; vertical-align: middle; max-width: 100%; height: auto; }
strong { font-weight: bold; }
small { font-size: 80%; }

button,
input,
select,
textarea { font-family: inherit; font-size: inherit; color: inherit; -webkit-font-smoothing:antialiased; }

button,
input[type="button"],
input[type="reset"],
input[type="submit"] { cursor: pointer; }

button::-moz-focus-inner,
input::-moz-focus-inner { padding: 0; border: 0; }

button { overflow: visible; }
textarea { overflow: auto; resize: none; }

table { border-collapse: collapse; border-spacing: 0; }
th,
td { padding: 0; }

/* ================================================================ *\
	#Helpers
\* ================================================================ */

.alignleft { float: left; }
.alignright { float: right; }
.hidden { display: none; visibility: hidden; }

/* ------------------------------------------------------------ *\
	Main Styles
\* ------------------------------------------------------------ */
.mobile-view {
  display: none !important;
}

.desktop-view {
  display: block;
}

h1,
h2,
h3,
h4,
h5,
h6 {  }

h1 {}

h2 {}

h3 {}

h4 {}

hr {
    border: 0;
    height: 1px;
    background: #d4e4f1;
}

.shell {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 30px;
    box-sizing: content-box;
}

.hover-images a:hover img,
.hover-images a img + img { display: none; }
.hover-images a:hover img + img { display: inline-block; }

.gallery-items-wrapper {
  display: none;
}

.wrapper {
    position: relative;
	min-height: 100%;
    padding: 10px;
    padding-bottom: 0;
    padding-top: 0;
}

.wrapper:before {
    content: '';
    position: sticky;
    top: 0;
    left: 0;
    display: block;
    background: #fff;
    height: 10px;
    width: 100%;
    z-index: 202;
}

.wrapper:after {
    content: '';
    position: sticky;
    bottom: 0;
    left: 0;
    display: block;
    background: #fff;
    height: 10px;
    width: 100%;
    z-index: 202;
}

.bg-image {
  display: none !important;
}

.parent-image-wrapper {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}

a {
	transition:  all 0.2s ease-in-out;
}

body.active-menu::-webkit-scrollbar {
    display: none;
}

body.active-menu {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

/* ------------------------------------------------------------ *\
    Header
\* ------------------------------------------------------------ */
.header {
    left: 10px;
    right: 10px;
    top: 0;
    padding: 70px 70px 0 70px;
    display: flex;
    align-items: center;
    position: fixed;
    z-index: 50;
    justify-content: space-between;
    transition: all 0.2s;
}

.header ul {
    list-style-type: none;
}

.header-content {
    display: flex;
    align-items: center;
    column-gap: 66px;
}

.header-nav {
    font-size: 18px;
    font-weight: 300;
}

.header-nav ul {
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 50px;
}

.header-nav ul li a {
    position: relative;
}

.header-nav ul li.active a:after {
    display: block;
}

.header-nav ul li a:after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: -14px;
    width: 8px;
    height: 8px;
    background: #fff;
    transform: translateX(-50%);
    display: none;
}

.header-nav ul li:not(.active) a:hover {
    letter-spacing: 2px;
}

.logo img + img {
    display: none;
}

.logo-menu {
    display: none;
}

/* link menu */
.link-menu {
    top: -10px;
    position: relative;
    display: inline-flex;
    align-items: center;
    width: 40px;
    height: 31px;
    font-size: 11px;
    font-weight: 200;
    text-transform: lowercase;
    flex-direction: column;
    justify-content: space-between;
    letter-spacing: 3px;
    text-align: center;
}

.link-menu span {
    display: inline-block;
    width: 100%;
    position: relative;
} 

.link-menu span:before, 
.link-menu span:after {
    content: '';
    background: #fff;
    height: 1px;
    left: 0;
    position: absolute;
    transition: all 0.2s;
    display: block;
    width: 100%;
} 

.link-menu span:before {
    bottom: 9px;
}

.link-menu span:after {
    bottom: 0px;
}

@media only screen and (min-width: 1025px) {
    .link-menu:hover {
        font-size: 0;
    }

    .link-menu:hover span:before {
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
        transform: rotate(90deg);
    }

    .link-menu:hover span:after {
        bottom: 9px;
    }
}


.link-menu img {
    display: none;
}

.active-menu .link-menu span {
    display: none;
}

.active-menu .link-menu {
    font-size: 0;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
}

.active-menu .link-menu img {
    display: inline-block;
    width: 100%;
}

.shrink.header {
    background: #111111;
    padding: 29px 40px 19px;
}

.shrink .logo img {
    display: none;
}

.shrink .logo img + img {
    display: inline-block;
}

.shrink .link-menu {
    top: 0;
}

.active-menu .shrink.header {
    background: transparent;
    z-index: 201;
}

.active-menu .logo {
    display: none;
}

.active-menu .logo-menu {
    display: inline-block;
    position: relative;
    top: 14px;
    left: -19px;
}

.active-menu .header-nav {
    display: none;
}

.active-menu .shrink.header:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: calc(59.5% - 5px);
    background: #F2F1EF;
    z-index: -1;
}

.active-menu .shrink.header:after {
    content: '';
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    width: calc(40.5% - 5px);
    background: #111;
    z-index: -1;
}

/* ------------------------------------------------------------ *\
    Section Paralax
\* ------------------------------------------------------------ */
.section-paralax {
    height: 660px;
    margin-bottom: 10px;
}

.section-paralax-video {
    position: relative;
}

.section-paralax-video video {
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

.section-paralax.section-paralax-alt {
    height: 520px;
}

.section-paralax.section-paralax-alt .paralax-content {
    border: 0;
}

.paralax-image {
    height: 100%;
    background-attachment: fixed;
    background-position: center center;
    background-repeat: no-repeat;
    position: relative;
}

.paralax-image:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4);
    z-index: 0;
}

.paralax-content {
    color: #fff;
    position: absolute;
    left: 50%;
    text-align: center;
    transform: translateX(-50%);
    z-index: 5;
    width: 600px;
    top: 31px;
    bottom: 32px;
    border: 1px solid #23b2a8;
    padding: 34px 25px 20px;
    display: flex;
    align-items: center;
    flex-direction: column;
}

.paralax-content a:not(.btn) {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
}

.paralax-content a:not(.btn):hover ~ * {
    opacity: 0.7;
}

.paralax-content img {
   margin-bottom: 100px;
}

.paralax-content h3 {
    font-size: 80px;
    font-weight: 200;
    line-height: 1.1;
}

.paralax-content h4 {
    font-size: 30px;
    font-weight: 200;
    margin-top: 20px;
}

/* ------------------------------------------------------------ *\
    Buttons
\* ------------------------------------------------------------ */
.btn {
    text-align: center;
    display: inline-block;
    vertical-align: middle;
    background: transparent;
    transition: all 0.2s;
    position: relative;
    color: #fff;
    font-weight: 300;
    font-size: 24px;
    position: relative;
    width: 320px;
    height: 78px;
    border: 0;
}

.btn:before,
.btn:after {
    position: absolute;
}

.btn:before {
    content: '';
    position: absolute;
    right: 50%;
    top: 0;
    width: 50%;
    height: 100%;
    background: #111;
    z-index: 0;
    transition: all 0.2s;
    opacity: 1;
    visibility: visible;
}

.btn:after {
    content: '';
    position: absolute;
    left: 50%;
    top: 0;
    width: 50%;
    height: 100%;
    background: #111;
    z-index: 0;
    transition: all 0.2s;
    opacity: 1;
    visibility: visible;
}

.btn span {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
    width: 100%;
}

.btn:hover:after,
.btn:hover:before {
    width: 0;
    visibility: hidden;
    opacity: 0;
}

.btn-main:hover {
    color: #111111;
    letter-spacing: 4px;
    font-size: 30px;
}

/* Btn secondary */
.btn.btn-secondary {
    width: 600px;
    height: 140px;
    font-size: 54px;
    font-weight: 200;
}

.btn.btn-secondary:before,
.btn.btn-secondary:after {
    background: #008178;
}

.btn.btn-secondary:hover {
    letter-spacing: 4px;
    font-size: 64px;
}

/* btn dark */
.btn.btn-dark:before,
.btn.btn-dark:after {
    background: #005A53;
}

.section-actions {
    text-align: center;
}

.section-actions p {
    font-size: 20px;
    font-style: italic;
    line-height: 1.7;
    margin-bottom: 29px;
}


/* ------------------------------------------------------------ *\
  Rev Slider
\* ------------------------------------------------------------ */
.rev-custom-arrows {
    display: flex;
    align-items: center;
    position: absolute;
    flex-direction: column;
    right: 70px;
    bottom: 39px;
    z-index: 10;
    row-gap: 39px;
}

.custom-arrows {
    display: inline-flex;
    flex-direction: column;
    row-gap: 30px;
}

.custom-arrows .custom-arrow {
    transition: all 0.2s ease-in-out;
    background: url(../../assets/icons/chevron-white.svg);
    width: 35.48px;
    height: 28.84px;
    background-repeat: no-repeat;
    background-position: -13px center;
    position: relative;
}

.custom-arrows .custom-arrow:before {
    content: '';
    position: absolute;
    left: 5px;
    top: 12px;
    width: 18px;
    height: 1px;
    background: #fff;
    display: inline-block;
    transform: rotate(34deg);
    transition: all 0.2s;
    opacity: 1;
}

.custom-arrows .custom-arrow.arrow-next {
    transform: rotate(-180deg);
}


@media only screen and (min-width: 1025px) {
    .custom-arrows .custom-arrow:hover {
        background-position: -5px center;
    }

    .custom-arrows .custom-arrow:hover:before {
        left: -20px;
        transform: rotate(0);
        opacity: 0;
    }
}


.intro #slide-count {
    color: #fff;
    font-size: 15px;
    font-weight: 300;
    display: flex;
    align-items: center;
    position: relative;
}

.intro #slide-count span:first-child {
    position: absolute;
    left: -2px;
    bottom: 14px;
}

.intro #slide-count span:last-child {
    position: absolute;
    bottom: -10px;
    right: -2px;
}

.intro #slide-count span:first-child {
    color: #fff;
}

.intro #slide-count .divider {
    position: relative;
    width: 21px;
    height: 29px;
    display: inline-block;
    background-image: url(../icons/divider.svg);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    position: relative;
}

.intro .next-slide {
    transform: rotate(180deg);
}

.intro {
  position: relative;
  min-height: 100vh;
}

.intro.intro-small .tp-fullwidth-forcer,
.intro.intro-small {
    height: 600px !important;
    margin-bottom: 10px;
    min-height: 600px;
}

@keyframes shrink
{
  0% { opacity: 1; }
  25% { opacity: 0; }
  50% { opacity: 1; }
  75% { opacity: 0; }
  100% { opacity: 1; }
}

@keyframes rotate
{
  0% { transform: rotateY(0deg); }
  50% { transform: rotateY(180deg); }
  100% { transform: rotateY(0deg); }
}

.scroll-down-arrow {
    color: #D9BE9A;
    font-size: 11px;
    font-weight: 300;
    position: absolute;
    right: 50px;
    bottom: 35px;
    display: inline-flex;
    align-items: center;
    flex-direction: column;
}

.scroll-down-arrow span {
    display: inline-block;
    writing-mode: vertical-rl;
    text-orientation: upright;
    animation: shrink 4s infinite;
}

.scroll-down-arrow img {
    margin-top: 5px;
    animation:  rotate 4s infinite;
}

.rev_slider {
  overflow: visible !important;
}

.forcefullwidth_wrapper_tp_banner {
  height: 100% !important;
}

.rev_slider_wrapper {
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
}

/*.rev-video-media .tp-caption,*/
.rev-image-media .tp-caption {
    max-width:        1054px !important;
    margin:           0 auto !important;
    width:            auto !important;
    min-width:        0 !important;
    text-align:       center !important;
    transform:        none !important;
    transform-origin: 0 !important;
    padding: 0 25px !important;
    box-sizing: content-box ;
}

.rev-video-media a .tp-mask-wrap .tp-caption {
    min-width: 0 !important;
    width:     500px !important;
    max-width: 100% !important;
}

.rev-video-media a {
    position:    relative;
    left:        50% !important;
    margin-left: -250px;
}

.rev-image-media .tp-loop-wrap,
.rev-image-media .tp-mask-wrap,
.rev-image-media .tp-parallax-wrap {
    width: 100%;
}

.rev-image-media .tp-parallax-wrap {
    top:    0 !important;
    bottom: 50%;
    width:  100%;
    height: 100%;
}

.rev-image-media .tp-loop-wrap {
    height: 100% !important;
}

.rev-image-media .tp-loop-wrap:before {
    content:    '';
    position:   absolute;
    left:       0;
    top:        0;
    width:      100%;
    height:     100%;
    z-index:    40;
    background: rgba(0, 0, 0, 0.4);
}

.rev-image-media .tp-mask-wrap {
    top:       53%;
    transform: translateY(-50%);
    position:  relative;
    z-index:   60;
}

.rev-video-media .tp-caption > .main_caption_name,
.rev-video-media .tp-caption > a .main_caption_name,
.rev-image-media .tp-caption > .main_caption_name,
.rev-image-media .tp-caption > a .main_caption_name {
    color:       #fff !important;
    position:    relative;
    z-index:     110;
    max-width:   100%;
    white-space: normal;
    font-size:   70px !important;
    line-height: 1 !important;
    margin:      0 auto !important;
    font-weight: 200 !important;
    text-align:  center !important;
    text-transform: uppercase;
}

.rev-video-media .tp-caption > .main_caption_name + .main_caption_name,
.rev-video-media .tp-caption > a .main_caption_name + .main_caption_name,
.rev-image-media .tp-caption > .main_caption_name + .main_caption_name,
.rev-image-media .tp-caption > a .main_caption_name + .main_caption_name {
    font-size:      40px !important;
    line-height:    1.2 !important;
    margin:         23px auto 0 !important;
    font-weight: 200 !important;
    text-transform: none !important;
}

.tparrows {
    width:      45px;
    height:     16px;
    background: transparent;
    top: auto !important;
    transform: none !important;
    bottom: 59px;
    z-index: 200 !important;
    display: none !important;
}

.tparrows:hover {
    background: transparent;
}

.tp-leftarrow {
    left:      71px !important;
    right:     auto !important;

}

.tp-leftarrow:hover:before {
    background:        url(../../assets/icons/arrow-hover.svg);
    opacity:           1;
    background-size:   contain;
    background-repeat: no-repeat;
}

.tp-leftarrow:before {
    transition: all 0.2s ease-in-out;
    content:           '' !important;
    background:        url(../../assets/icons/arrow-light.svg);
    width:             45px;
    height:            16px;
    background-size:   contain;
    background-repeat: no-repeat;
    opacity:           1;
}

.tp-rightarrow {
    left:      161px !important;
}

.tp-rightarrow:hover:before {
    background:        url(../../assets/icons/arrow-hover.svg);
    width:             45px;
    height:            16px;
    opacity:           1;
    background-size:   contain;
    background-repeat: no-repeat;
}

.tp-rightarrow:before {
    transition: all 0.2s ease-in-out;
    content:           '' !important;
    background:        url(../../assets/icons/arrow-light.svg);
    width:             45px;
    height:            16px;
    background-size:   contain;
    background-repeat: no-repeat;
    opacity:           1;
    transform: rotate(-180deg);
}

/* Collapse icon */
.collapse-icon {
    font-weight: 300;
    vertical-align: middle;
    cursor: pointer;
    height: 30px;
    width: 30px;
    display: inline-block;
    position: relative;
    transition: all 0.2s ease-in-out;
    margin-left: 10px;
}

.collapse-minus:before {
    content: '';
    position: absolute;
    left: 0;
    top: 15px;
    width: 30px;
    height: 1px;
    background: #23B2A8;
}

.collapse-plus:before {
    content: '+';
    position: absolute;
    left: 0;
    top: -22px;
    color: #23B2A8;
    line-height: 1;
    font-size: 75px;
    left: -1px;
    font-weight: 100;
}

.active-menu .fullscreen-menu {
    opacity: 1;
    visibility: visible;
}

.fullscreen-menu {
    padding: 10px;
    padding-bottom: 0;
    padding-top: 0;
  visibility: hidden;
  opacity: 0;
  position: fixed;
  left: 0;
  top: 0px;
  width: 100%;
  overflow-y: auto;
  font-weight: 400;
  z-index: 200;
  background: #fff;
  height: 100vh;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.logo-alt {
  display: inline-block;
  position: absolute;
  left: 40px;
  top: 13px;
}

.fullscreen-menu .cols {
    column-gap: 10px;
  background-color: transparent;
  z-index: 10;
  min-height: 100%;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  background-position: center 90%;
  background-repeat: no-repeat;
}

.fullscreen-menu .cols .col-2of3 {
  width: 59.5%;
}

.fullscreen-menu .cols .col-1of3 {
  justify-content: center;
  width: 40.5%;
}

.fullscreen-menu ul {
  list-style-type: none;
}

.main-nav-items {
    padding: 85px 144px 60px 15.6%;
  display: flex;
  flex-direction: column;
  position: relative;
  justify-content: center;
  background: #F2F1EF;
}

.main-nav-items #book-now-form {
  display: none;
}

.logo-secodnary {
  display: inline-block;
  vertical-align: middle;
}

.logo-secondary:hover {
  opacity: 0.8;
}

.top-socials {
  list-style-type: none;
  display: flex;
  flex-wrap: wrap;
  column-gap: 34px;
  row-gap: 25px;
  margin-top: 30px;
  align-items: center;
}

.top-socials li {
  display: inline-block;
  vertical-align: middle;
}

.top-socials li ~ li {}

.sub-menu {
  display: none;
}

.close-menu {
  z-index: 10;
  width: 22px;
  height: 22px;
  position: absolute;
  right: 33px;
  top: 31px;
  background-image: url(../icons/close.svg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

.close-menu:hover {
  background-image: url(../icons/close-blue.svg); 
}

.close-icon {
  display: inline-block;
  vertical-align: middle;
}


/* Nav Main */
.nav-main {
  text-transform: uppercase;
  z-index: 1;
  font-size: 54px;
  font-weight: 400;
  position: relative;
  display: inline-block;
}

.nav-main ul {
  margin-bottom: 0;
}

.nav-main > ul > li > a {
  vertical-align: middle;
  display: inline-block;
  color: #111111;
  transition: all 0.2s ease-in-out;
}

.nav-main .sub-menu {
  padding-left: 0;
  font-size: 20px;
  text-transform: none;
  font-weight: 400;
  margin-top: 7px;
  display: none;
}

.nav-main .sub-menu li {
  display: inline-block;
  vertical-align: middle;
  margin: 16px 0 0 40px;
}

.nav-main .sub-menu li a {
  color: #111;
  transition: all 0.2s ease-in-out;
}

.nav-main > ul > li {
  position: relative;
  line-height: 1.1;
}

.nav-main > ul > li  ~ li {
  margin-top: 15px;
}

.nav-main a:hover,
.nav-main .sub-menu li.active a:first-of-type,
.nav-main > ul > li.active > a:first-of-type{
  color: #23B2A8 !important;
}

.second-nav-items {
    background: #111111;
  padding: 80px 0;
  display: flex;
  flex-direction: column;
  position: relative;
}

.second-nav-items > * {
  position: relative;
  z-index: 1;
}

.second-nav-items .col-inner {
    padding-left: 66px;
}

.nav-secondary {
  font-size: 48px;
  font-weight: 300;
  position: relative;
  display: inline-block;
  text-transform: uppercase;
}

.nav-secondary > ul > li > a {
  color: #fff;
  transition: all 0.2s ease-in-out;
  position: relative;
}

.nav-secondary > ul > li > a:hover,
.nav-secondary > ul > li.active > a {
  color: #54D1C8;  
}

.nav-secondary > ul > li {
  line-height: 1.2;
}

.nav-secondary > ul > li ~ li {
  margin-top: 15px;
}

.nav-secondary .sub-menu {
  font-size: 20px;
}

.nav-secondary .sub-menu a {
  color: #000;
}

.nav-secondary .sub-menu li.active a,
.nav-secondary .sub-menu a:hover {
  color: #fff;
}


@media only screen and (min-width: 1441px) {
    .main-nav-items {
        padding: 85px 96px 60px 16.65%;
    }

    .second-nav-items .col-inner {
        padding-left: 85px;
    }
}

/* ------------------------------------------------------------ *\
  Sections
\* ------------------------------------------------------------ */
.section {}

.section-head {}

.section-head .section-title {
    line-height: 1;
    font-size: 120px;
    font-weight: 200;
    color: #111111;
    text-transform: uppercase;
    display: inline-flex;
    align-items: center;
}

.section-title span {
    color: #008178;
    display: inline-block;
    vertical-align: middle;
    margin-left: -45px;
}

.section-content {
    text-align: center;
    max-width: 900px;
    margin: 0 auto;
    font-style: italic;
}

.section-content a {
    color: #008178;
    text-decoration: underline;
}

.section-content a:hover {
    color: #23B2A8;
    text-decoration: none;
}

.section-dark {
    background: #F2F1EF;
}

/* section bottom */
.section-bottom {
    color: #111111;
    font-size: 30px;
    line-height: 1.65;
    font-weight: 300;
    padding: 64px 0 80px;
}

.section-bottom .section-content {}

/* section accommodations */
.section-accommodation {
    position: relative;
    padding-bottom: 208px;
    margin-bottom: 10px;
}

.section-accommodation .section-head {
    padding-left: 165px;
    margin-bottom: 131px;
}

.section-accommodation .section-title {
    margin-top: -68px;
}

.section-accommodation .section-img {
    position: absolute;
    left: -10px;
    top: -10px;
}

/* Section-amentities */
.section-amentities {
    position: relative;
    margin-bottom: 10px;
}

.section-amentities .section-head {
    padding-left: 165px;
    margin-bottom: 103px;
}

.section-amentities .section-title {
    margin-top: -68px;
}

.section-amentities .section-img {
    position: absolute;
    left: -10px;
    top: -130px;
}

/* section news */
.section-news {
    position: relative;
    margin-bottom: 10px;
    padding: 200px 0 0;
}

.section-news.section-slider {
    padding-bottom: 242px;
}

.section-news .slider-nav-elements {
    left: 60px;
    bottom: 83px;   
    top: auto;
}

.section-news .section-head {
    padding-left: 155px;
    margin-bottom: 123px;
}

.section-news .section-title {}

.section-news .section-img {
    position: absolute;
    left: -10px;
    top: 122px;
}

/* section-booking-dates */
.section-booking-dates {
    margin-bottom: 10px;
}

/* Section welcome */
.section-welcome {
    text-align: center;
    background-image: url(../icons/amad-1.svg);
    background-position: center bottom;
    background-repeat: no-repeat;
    padding: 174px 0 377px;
}

.section-welcome img {
    margin-bottom: 55px;
}

.section-welcome .section-content {
    max-width: 100%;
    font-size: 20px;
    line-height: 1.7;
}

.section-welcome .section-content p {
    margin-bottom: 24px;
}

.section-welcome .section-content > *:last-child {
    margin-bottom: 0;
}


.section-welcome-alt {
    padding: 90px 0 288px;
}

/* section-top */
.section-top {
    position: relative;
    padding-bottom: 180px;
}

.section-top  img {
    position: absolute;
    left: -10px;
    top: 60px;
}

.section-top h3 {
    text-align: center;
    font-size: 80px;
    font-weight: 200;
    text-transform: uppercase;
    margin-bottom: 177px;
    position: relative;
}

.section-top h3:before {
    content: '';
    width: 180px;
    height: 180px;
    border: 1px solid #fff;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: -1;
}

.section-top .section-content {
    font-size: 17px;
    font-style: italic;
    line-height: 1.85;
    position: relative;
}

.section-top .section-content:before {
    content: '';
    position: absolute;
    left: 50%;
    top: -40px;
    width: 20px;
    height: 20px;
    background: #008178;
    transform: translateX(-50%);
}

.section-top.section-top-contacts .cols {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    column-gap: 104px;
}

.section-top.section-top-contacts .section-content {
    max-width: 450px;
    font-size: 20px;
    font-style: normal;
}

.section-top.section-top-contacts .section-content:before {
    display: none;
}

/* section text */
.section-text {
    padding: 180px 0;
}

.section-text .section-content {
    font-size: 17px;
    font-style: italic;
    line-height: 1.85;
    position: relative;
}

.section-text .section-content:before {
    content: '';
    position: absolute;
    left: 50%;
    top: -40px;
    width: 20px;
    height: 20px;
    background: #008178;
    transform: translateX(-50%);
}


/* Lang picker */
.lang-picker {
    position: relative;
}

.selected-lang {
    font-size: 18px;
    font-weight: 300;
    color: #fff;
    text-transform: capitalize;
    cursor: pointer;
    position: relative;
    display: inline-flex;
    align-items: baseline;
    column-gap: 7.3px;
}

.selected-lang:after {
    content: '';
    background-image: url(../icons/chev-white-small.svg);
    width: 8px;
    height: 8px;
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    display: inline-block;
    transform: rotate(0deg);
    transition: all 0.2s;
}

.lang-picker:hover .lang-elements {
    opacity: 1;
    visibility: visible;
}

.lang-picker:hover .selected-lang:after {
    transform: rotate(-90deg);
}

.lang-elements {
    position: absolute;
    left: 0;
    top: 100%;
    list-style-type: none;
    font-size: 15px;
    font-weight: 300;
    display: flex;
    flex-direction: column;
    row-gap: 5px;
    padding-top: 15px;
    visibility: hidden;
    opacity: 0;
    transition: all 0.2s;
}

.lang-elements a {
    display: inline-flex;
    width: 40px;
    height: 40px;
    border: 1px solid #fff;
    align-items: center;
    justify-content: center;
    text-transform: capitalize;
}

.lang-elements li a:hover,
.lang-elements li.active a {
    background: #fff;
    color: #111111;
}


/* ------------------------------------------------------------ *\
  Kareta
\* ------------------------------------------------------------ */
/* box dates */
.box-dates {
    line-height: 1;
    font-size: 18px;
    color: #777777;
    font-weight: 400;
    margin-left: auto;
    display: flex;
    align-items: center;
    column-gap: 8px;
    justify-content: end;
    margin-bottom: 30px;
}

.box-dates span {
    font-size: 50px;
    font-weight: 200;
    color: #008178;
    margin-top: -7px;
}

.box-dates p ~ p:before {
    content: '/';
    margin: 0 6px;
}

/* link more */
.link-more {
    line-height: 1.2;
    white-space: nowrap;
    position: relative;
    font-size: 16px;
    color: #008178;
    padding-right: 50px;
}

.link-more:after {
    content: '';
    position: absolute;
    right: 10px;
    top: 6px;
    width: 30px;
    height: 1px;
    background: #008178;
    transition: all 0.2s;
}

.link-more:before {
    content: '';
    position: absolute;
    right: 0px;
    bottom: 4px;
    width: 40px;
    height: 1px;
    background: #008178;
    transition: all 0.2s;
}

.link-more:hover {
    color: #23B2A8;
}

.link-more:hover:after,
.link-more:hover:before  {
    background: #23b2a8;
    width: 30px;
}

.link-more:hover:after {
    top: 8px;
}

.link-more:hover:before {
    transform: rotate(-90deg);
    right: 10px;
    bottom: 10px;
}

/* box prices */
.box-prices {
    font-size: 13px;
    color: #777777;
    display: flex;
    align-items: center;
    column-gap: 30px;
    margin-bottom: 34px;
}

.box-prices p {
    display: inline-block;
    line-height: 1.4;
    position: relative;
}

/*.box-prices p > span {
    font-style: italic;
}*/

.box-prices p.price-old {}

.box-prices p.price-old  strong {
    position: relative;
    color: #111;
}

.box-prices p.price-old strong:before {
    content: '';
    position: absolute;
    left: -5px;
    right: -5px;
    top: 57%;
    transform: translateY(-50%);
    background: #111;
    height: 1px;
}

.box-prices strong {
    font-size: 20px;
    font-weight: 400;
    color: #008178;
    margin-left: 10px;
    display: inline-block;
}

.box-prices strong span {
    text-transform: uppercase;
    font-size: 15px;
}

.box-bottom {
    display: flex;
    align-items: center;
}

/* boxes main elements */
.boxes .box-image-wrapper {
    position: relative;
    overflow: hidden;
}

.boxes .box-image-wrapper a {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 5;
}

.boxes .box-image {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transition: all 0.3s ease-in-out;
}

.boxes .box-image-wrapper:hover .box-image {
  transform: scale3d(1.2, 1.2, 1.2);
}

.boxes h3 a {
    text-transform: uppercase;
    color: #111111;
    transition: all 0.2s ease-in-out;
}

.boxes h3 a:hover {
  color: #23B2A8;
}

/* Kareta 1 */
.boxes-type-1 {
  display: flex;
  padding: 0;
  row-gap: 100px;
  flex-direction: column;
  margin-bottom: 100px;
  padding-left: 10.92%;
}

.boxes-type-1 .box {
  position: relative;
  align-items: flex-end;
  display: flex;
}

.boxes-type-1 .box-label {
    font-size: 20px;
    font-weight: 400;
    color: #111111;
    line-height: 1;
    padding: 15px 17px;
    letter-spacing: 2px;
}

.boxes-type-1 .box-image-outer {
    width: 49.85%;
}

.boxes-type-1 .box-image-wrapper {
    width: 100%;
    padding-bottom: 100%;
}

.boxes-type-1 .box-content {
    padding: 0 6% 80px;
    flex: 1;
}

.boxes-type-1 .box-content > p {
  line-height: 1.4;
  margin-bottom: 21px;
}

.boxes-type-1 h3 {
  font-size: 42px;
  line-height: 1.1;
  margin-bottom: 20px;
  font-weight: 400;
}

.boxes-type-1 .box-content > *:last-child {
    margin-bottom: 0;
}

/* Kareta 2 */
.boxes-type-2 {
  display: flex;
  padding: 0;
  row-gap: 220px;
  flex-direction: column;
  margin-bottom: 100px;
  padding: 0 5% 167px;
}

.boxes-type-2 .box {
  position: relative;
  align-items: center;
  display: flex;
}

.boxes-type-2 .box:nth-child(odd) .box-image-outer {
    order: 2;
}

.boxes-type-2 .box:nth-child(odd) .box-content {
    padding-right: 5.5%;
}

.boxes-type-2 .box:nth-child(even) .box-content {
    padding-left: 5.5%;
}

.boxes-type-2 .box-label {
    font-size: 16px;
    font-weight: 400;
    color: #111111;
    line-height: 1;
    padding: 0;
    letter-spacing: 2px;
    position: absolute;
    left: 53px;
    top: -36px;
}

.boxes-type-2 .box-image-outer {
    width: 61%;
    position: relative;
}

.boxes-type-2 .box-image-outer:before {
    content: '';
    position: absolute;
    width: 73.25%;
    border: 1px solid #fff;
    left: 20px;
    top: -60px;
    bottom: -20px;
    z-index: 4;
}

.boxes-type-2 .box-image-wrapper {
    width: 100%;
    padding-bottom: 66.71%;
}

.boxes-type-2 .box-content {
    flex: 1;
}

.boxes-type-2 .box-content > p {
  line-height: 1.4;
  margin-bottom: 21px;
}

.boxes-type-2 h3 {
  font-size: 50px;
  line-height: 1.1;
  margin-bottom: 20px;
  font-weight: 400;
}

.boxes-type-2 h3 a {
    text-transform: none;
}

.boxes-type-2 .box-content > *:last-child {
    margin-bottom: 0;
}

/* Kareta 3 */
.boxes-type-3 {
  display: flex;
  padding: 0;
  row-gap: 100px;
  padding: 0 0% 160px 8.8%;
  margin-right: -10px;
  flex-wrap: wrap;
  column-gap: 11%;
}

.boxes-type-3 .box {
  position: relative;
  align-items: center;
  width: 41.38%;
  margin-top: 100px;
}

.boxes-type-3 .box:nth-child(even) {
    width: 47.51%;
    margin-top: 0;
}

.boxes-type-3 .box:nth-child(even) .box-image-wrapper {
    padding-bottom: 73.87%;
}

.boxes-type-3 .box-label {
    font-size: 15px;
    font-weight: 400;
    color: #111111;
    line-height: 1;
    padding: 0;
    letter-spacing: 2px;
    position: absolute;
    left: 38px;
    bottom: -31px;
}

.boxes-type-3 .box-image-outer {
    width: 100%;
    position: relative;
    margin-bottom: 64px;
}

.boxes-type-3 .box-image-outer:before {
    content: '';
    position: absolute;
    width: 89.25%;
    border: 1px solid #fff;
    left: -20px;
    top: -20px;
    bottom: -45px;
    z-index: 4;
}

.boxes-type-3 .box:nth-child(even) .box-image-outer:before {
    width: 77.6%;
    left: -20px;
    top: 33px;
    bottom: -45px;
}

.boxes-type-3 .box:nth-child(even) .box-content{
    padding-right: 130px;
}

.boxes-type-3 .box-dates {
    margin: 0;
}

.boxes-type-3 .box-image-wrapper {
    width: 100%;
    padding-bottom: 66.71%;
}

.boxes-type-3 .box-content {
    flex: 1;
    padding: 0 50px 0 30px;
}

.boxes-type-3 .box-content > p {
  line-height: 1.4;
  margin-bottom: 21px;
}

.boxes-type-3 h3 {
  font-size: 48px;
  line-height: 1.1;
  margin-bottom: 20px;
  font-weight: 300;
}

.boxes-type-3 h3 a {
    color: #005A53;
}

.boxes-type-3 .box-content > *:last-child {
    margin-bottom: 0;
}

.boxes-type-3 .box-bottom {}

.boxes-type-3 .box-bottom .box-dates {
    margin-left: auto;
}

/* Kareta 1 */
.boxes-type-4 {
  display: flex;
  padding: 0;
  row-gap: 100px;
  flex-direction: column;
  padding-left: 12.25%;
}

.boxes-type-4 .box {
  position: relative;
  align-items: center;
  display: flex;
  padding-left: 40px;
}

.boxes-type-4 .box-label {
    font-size: 16px;
    font-weight: 400;
    color: #111111;
    line-height: 1;
    padding: 0;
    letter-spacing: 2px;
    position: absolute;
    left: -34px;
    bottom: 20px;
    display: inline-block;
    transform: rotate(-90deg);
    transform-origin: left top;
}

.boxes-type-4 .box-image-outer {
    width: 47.25%;
    position: relative;
}

.boxes-type-4 .box-image-wrapper {
    width: 100%;
    padding-bottom: 100%;
}

.boxes-type-4 .box-content {
    padding: 0 69px 0 76px;
    flex: 1;
}

.boxes-type-4 .box-content > p {
  line-height: 1.4;
  margin-bottom: 21px;
}

.boxes-type-4 h3 {
  font-size: 42px;
  line-height: 1.1;
  margin-bottom: 20px;
  font-weight: 400;
}

.boxes-type-4 .box-content > *:last-child {
    margin-bottom: 0;
}


/* Kareta 2 */
.boxes-type-5 {
  display: flex;
  padding: 0;
  row-gap: 170px;
  flex-direction: column;
  margin-bottom: 100px;
  padding: 0 0 186px 0;
  margin-left: -10px;
}

.boxes-type-5 .box {
  position: relative;
  align-items: center;
  display: flex;
}

.boxes-type-5 .box:nth-child(even) .box-image-outer {
    order: 2;
    width: 48.91%;
}

.boxes-type-5 .box:nth-child(even) {
    padding-right: 105px;
}

.boxes-type-5 .box:nth-child(even) .box-content {
    padding: 0 72px 0 105px;
}

.boxes-type-5 .box:nth-child(even) .box-content .box-dates {
    justify-content: flex-start;
    margin-left: 20px;
}


.boxes-type-5 .box-label {
    font-size: 16px;
    font-weight: 400;
    color: #111111;
    line-height: 1;
    padding: 0;
    letter-spacing: 2px;
    position: absolute;
    left: 53px;
    top: -36px;
}

.boxes-type-5 .box-image-outer {
    width: 54.55%;
    position: relative;
}

.boxes-type-5 .box-image-wrapper {
    width: 100%;
    padding-bottom: 66.71%;
}

.boxes-type-5 .box-content {
    flex: 1;
    padding: 0 70px 0 90px;
}

.boxes-type-5 .box-content > p {
  line-height: 1.4;
  margin-bottom: 21px;
}

.boxes-type-5 h3 {
  font-size: 42px;
  text-transform: uppercase;
  line-height: 1.1;
  margin-bottom: 20px;
  font-weight: 400;
}

.boxes-type-5 h3 a {
}

.boxes-type-5 .box-content > *:last-child {
    margin-bottom: 0;
}


/* ------------------------------------------------------------ *\
  sliders
\* ------------------------------------------------------------ */
.slider-wrapper {
    position: relative;
}

.section-slider {
    position: relative;
    padding-bottom: 285px;
}

.slider-nav-elements {
    position: absolute;
    left: 81px;
    top: 330px;
    z-index: 20;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    row-gap: 100px;
}

.slider-nav-elements .custom-arrows .custom-arrow {
    background-image: url(../icons/chevron-gray.svg);
}

.slider-nav-elements .custom-arrows .custom-arrow:before {
    background: #777;
}

.slider-nav-elements .slide-count {
    color: #777777;
    font-size: 15px;
    font-weight: 300;
    display: inline-flex;
    align-items: center;
    position: relative;
}

.slider-nav-elements .slide-count span:first-child {
    position: absolute;
    left: -2px;
    bottom: 14px;
    color: #008178;
}

.slider-nav-elements .slide-count span:last-child {
    position: absolute;
    bottom: -10px;
    right: -2px;
}


.slider-nav-elements .slide-count .divider {
    position: relative;
    width: 21px;
    height: 29px;
    display: inline-block;
    background-image: url(../icons/divider-gray.svg);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    position: relative;
}

.boxes-type-1.slider-single {
    margin-top: -100px;
}

.boxes.slider-single {
    display: block;
    margin-bottom: 0;
    height: auto;
}

.boxes.slider-single .box {

}

/* ------------------------------------------------------------ *\
    Footer
\* ------------------------------------------------------------ */
.scroll-top-wrapper {
    position: fixed;
    right: 40px;
    bottom: 40px;
    z-index: 100;
    transform: rotate(-90deg);
}

.scroll-top-wrapper .scroll-top {
    display: none;
}

.scroll-top-wrapper.custom-arrows .custom-arrow {
     background-image: url(../icons/chevron-gray.svg);
}

.scroll-top-wrapper.custom-arrows .custom-arrow:before {
    background: #777;
}

.footer {
    padding: 208px 0 34px;
    background-color: #F2F1EF;
    background-image: url(../icons/amar-2.svg);
    background-position: center top;
    background-repeat: no-repeat;
    color: #111111;
}

.footer a {
    color: #111;
}

.footer ul {
    list-style-type: none;
}

.footer-content {
    display: flex;
    justify-content: space-between;
}

.footer .aside {
    
}

.footer .aside > p span {
    font-size: 24px;
}

.footer .aside > p {
    font-size: 30px;
    line-height: 1;
}

.footer .aside p ~ p {
    margin-top: 8px;
}

.powered-by {
    margin-top: 60px;
    margin-bottom: 69px;
    font-size: 12px;
    letter-spacing: 10px;
    
}

.powered-by a {
    color: #C1B5A9;
}

.powered-by a:hover {
    color: #555;
}

.logo-footer {
    margin-bottom: 40px;
    display: block;
    display: inline-flex;
    align-items: center;
    column-gap: 37px;
}

.footer-nav {
    font-size: 22px;
    font-weight: 400;
    margin-bottom: 88px;
}

.footer-nav ul {
    columns: 2;
    -webkit-columns: 2;
    -moz-columns: 2;
}

.footer-nav ul li ~ li {
    margin-top: 13px;
}

.footer-nav a {
    position: relative;
}

.footer-nav a:before {
    content: '';
    position: absolute;
    left: -18px;
    top: 8px;
    width: 10px;
    height: 10px;
    background: #008178;
    visibility: hidden;
    opacity: 0;
}

.footer-nav li.active a,
.footer-nav a:hover {
    color: #008178;
}

.footer-nav li.active a:before {
    visibility: visible;
    opacity: 1;
}

.footer-socials {
    margin-bottom: 66px;
    display: flex;
    align-items: center;
    column-gap: 50px;
}

.footer-socials a {
    display: inline-block;
}

.footer-links {
    display: flex;
    font-size: 15px;
    margin-bottom: 24px;
    column-gap: 60px;
}

.footer-links a {
    color: #777777;
}

.footer-links li.active a,
.footer-links a:hover {
    color: #23B2A8;
}

.credits {
    color: #777777;
    font-size: 15px;
}

.footer .credits a {
    font-weight: 700;
    color: #777777;
}

.credits a:hover {
    color: #23B2A8;
}

/* Breadcrumbs */
.breadcrumbs {
    display: flex;
    align-items: center;
    justify-content: center;
    list-style-type: none;
    font-size: 14px;
    font-weight: 400;
    color: #777777;
    font-style: italic;
    padding-top: 20px;
    margin-bottom: 108px;
}

.breadcrumbs li {
    position: relative;
}

.breadcrumbs li.active a {
    color: #111111;
}

.breadcrumbs li ~ li:before {
    content: '•';
    display: inline-block;
    vertical-align: middle;
    margin: 0 4px 0 6px;
}

.breadcrumbs a {
    color: #777777;
}

.breadcrumbs li a:hover {
    color: #23B2A8;
}


/* ------------------------------------------------------------ *\
  Filters wrapper
\* ------------------------------------------------------------ */
.filters-wrapper {
    position: relative;
    z-index: 5;
    font-size: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 86px;
    margin-top: 120px;
    margin-bottom: -30px;
    font-weight: 300;
    text-transform: uppercase;
}

.filters-wrapper ul {
    list-style-type: none;
    display: flex;
    align-items: center;
    column-gap: 56px;
}


.filters-wrapper ul li a {
  color: #111111;
  display: block;
  transition: all 0.2s ease-in-out;
  line-height: 1;
}

.filters-wrapper ul li.active a,
.filters-wrapper ul li a:hover {
  color: #008178;
}

.filter-arrow {
  transition: all 0.2s ease-in-out;
  background: url(../../assets/icons/chevron-gray.svg);
  flex: 0 0 35.48px;
  height: 28.84px;
  background-repeat: no-repeat;
  background-position: -13px center;
  position: relative;
}

.filter-arrow:before {
    content: '';
    position: absolute;
    left: 5px;
    top: 12px;
    width: 18px;
    height: 1px;
    background: #777777;
    display: inline-block;
    transform: rotate(34deg);
    transition: all 0.2s;
    opacity: 1;
}

.filter-prev {
  transform: rotate(180deg);
}

.filter-next {
}

.filter-arrow:hover {
    background: url(../../assets/icons/chevron-gray.svg);
  background-position: left center;
}


@media only screen and (min-width: 1025px) {
    .filter-arrow:hover {
        background-position: -5px center;
    }

    .filter-arrow:hover:before {
        left: -20px;
        transform: rotate(0);
        opacity: 0;
    }
}

/* gallery-elements */
.gallery-elements {
  display: flex;
  flex-wrap: wrap;
  padding: 0 5.07% 180px ;
  column-gap: 5.94%;
  row-gap: 220px;
  justify-content: space-between;
  align-items: center;
}

.gallery-elements .gallery-item {
  width: 47.03%;
  position: relative;
}

.gallery-elements .gallery-image-wrapper-outer {
    position: relative;
}

.gallery-elements .gallery-image-wrapper-outer:before {
    content: '';
    width: 83.32%;
    height: 83.32%;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    border: 1px solid #fff;
    z-index: 1;
}

.gallery-elements .gallery-item:nth-child(even) .gallery-image-wrapper-outer {
    padding: 15%;
}

.gallery-elements .gallery-item:nth-child(even) .gallery-image-wrapper-outer:before {
    width: 100%;
    height: 100%;
}

.gallery-elements .gallery-item:nth-child(even) .gallery-image-wrapper {
    margin-bottom: 0;
}

.gallery-elements .gallery-content {
  padding: 0 60px 0 20px;
  position: absolute;
  left: 0;
}

.gallery-elements .gallery-item:nth-child(even) .gallery-content {
    left: 15%;
    bottom: auto;
    top: 87%;
    z-index: 6;
}

.gallery-elements .gallery-image-wrapper {
  position: relative;
  width: 100%;
  padding-bottom: 100%;
  margin-bottom: 12px;
  overflow: hidden;
}

.gallery-elements .gallery-image-wrapper a {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 5;
}

.gallery-elements .gallery-image {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transition: all 1s ease;
}

.gallery-elements .gallery-image-wrapper:hover .gallery-image {
  transform: scale3d(1.3, 1.3, 1.3);
}

.gallery-elements h3 {
  font-size: 20px;
  font-weight: 400;
  line-height: 1.2;
}

.gallery-elements h3 a {
  color: #111111;
  transition: all 0.2s ease-in-out;
}

.gallery-elements h3 a:hover {
  color: #23B2A8;
}

.map-wrapper {
    width: 491px;
    height: 491px;
}

.map-wrapper iframe {
    width: 100%;
    height: 100%;
}

/* Contacts form */
.form-wrapper-contacts.form-wrapper {
  position: relative;
  margin-bottom: 140px;
  margin-top: 103px;
}

.form-wrapper-contacts .form-wrapper .shell {
  max-width: 1100px;
}

.form-wrapper-contacts .form-title {
  font-size: 70px;
  color: #111111;
  text-align: center;
  margin-bottom: 81px;
  font-weight: 200;
  line-height: 1.2;
}

.form-wrapper-contacts .form-row {
  display: flex;
  align-items: baseline;
  position: relative;
  border-bottom: 1px solid #CFCFCF;
  padding-bottom: 4px;
}

#contact-form .form-col .form-row {
  margin-top: 0;
}

#contact-form .btn {
    width: 250px;
    height: 50px;
    font-size: 24px;
    border: 0;  
}

#contact-form .form-row .input-container {
  flex-grow: 1;
}

.form-wrapper-contacts .checkboxes-outer {
  text-align: center;
}

.checkboxes-outer .checkboxes-wrapper {
  display: inline-block;
  margin-top: 70px;
  text-align: left;
}

#contact-form .form-label { 
  font-size: 15px;
  font-style: italic;
  font-weight: 400;
  color: #008178;
  text-transform: lowercase;
  margin-right: 20px;
  line-height: 1;
  white-space: nowrap;
}

#contact-form .form-row ~ .form-row {
  margin-top: 48px;
}

#contact-form .form-row .input-container input {
  width: 100%;
  border: 0;
  background: transparent;
  font-size: 20px;
  color: #111;
  font-weight: 400;
}


.form-wrapper-contacts .form-row-textarea {
  display: block;
  border: 0;
}

.form-wrapper-contacts .form-row-textarea + .checkboxes-wrapper {
  display: none;
}

.form-wrapper-contacts .form-row-textarea .form-label {
  position: static;
  margin-bottom: 5px;
  display: block;
}

.form-wrapper-contacts .form-row-textarea textarea {
  border: 1px solid #CFCFCF;
  height: 208px;
  background: transparent;
  width: 100%;
  font-size: 15px;
  padding: 14px;
  line-height: 1.4;
  color: #111;
  font-weight: 400;
}

#contact-form .form-actions {
  margin-top: 90px;
  text-align: center;
}

#contact-form .form-actions .recaptcha-wrapper {
  transform: scale(0.95) !important;
  position: relative;
  left: -9px;
  margin-top: 26px;
  margin-bottom: 63px;
}

#contact-form .form-row-textarea .form-label {
  padding-bottom: 4px;
  display: inline-block;
}

.form-wrapper-contacts .form-buttons {
  text-align: center;
  margin-top: 88px;
}

.form-wrapper-contacts .recaptcha-wrapper {
  margin-top: 50px;
}

#contact-form .form-cols {
  display: flex;
  width: 100%;
}

#contact-form .form-col {
  flex-basis: 50%;
}

#contact-form .form-col ~ .form-col {
  margin-left: 100px;
}

/* Checkboxes */
.checkboxes-wrapper {
  display: inline-block;
  text-align: left;
}

.checkboxes-wrapper .checkbox-wrapper {
  display: block;
}

.checkbox-wrapper {
  position: relative;
  cursor: pointer;
  padding-left: 26px;
  font-size: 16px;
}

.checkbox-wrapper ~ .checkbox-wrapper {
  margin-top: 7px;
}

.checkbox-wrapper input {
  visibility: hidden;
  height: 0;
  width: 0;
  display: none;
}

.checkbox-wrapper a {
  display: inline-block;
  margin-top: 0;
  position: relative;
  top: 0;
  transition: all 0.2s ease-in-out;
  text-decoration: underline;
  font-size: 15px;
  font-weight: 400;
  color: #008178;
}

.checkbox-wrapper a:hover {
  text-decoration: none;
}

.checkbox-wrapper .check-text {
  display: inline-block;
  font-size: 15px;
  color: #111;
  line-height: 1.5;
  transition: all 0.2s ease-in-out;
}

.checkbox-wrapper .checkmark {
  position: absolute;
  left: 0px;
  top: 2px;
  height: 20px;
  width: 20px;
  border: 1px solid #CFCFCF;
  background: transparent;
}

.checkbox-wrapper input:checked ~ .checkmark:after {
  display: block;
}

.checkbox-wrapper .checkmark:after {
  display: none;
  content: '';
  width: 10px;
  height: 10px;
  background: #008178;
  position: absolute;
  left: 4px;
  top: 4px;
}


/* ------------------------------------------------------------ *\
  Booking dates
\* ------------------------------------------------------------ */
.section-booking-dates {
    text-align: center;
    padding:    30px 0;
}

.section-booking-dates .form-row {
    display: flex;
    align-items: center;
    position: relative;
    column-gap: 16px;
}

.section-booking-dates .box-date-calendar .input-container:after {
  content:        '';
  width: 15.24px;
  height: 11px;
  background-image: url(../../assets/icons/chev-down.svg);
  background-size: cover;
  background-repeat: no-repeat;
  position: absolute;
  right: 0;
  top: 12px;
  z-index: 0;
}

.section-booking-dates .form-body {
    padding: 0 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 103px;
    flex-wrap: wrap;
    row-gap: 20px;
}


.section-booking-dates .box-actions {
  display: inline-block;
  vertical-align: middle;
}

.section-booking-dates .form-label {
    margin-top: 6px;
    font-size:      18px;
    font-weight: 400;
    color:          #111111;
    text-align: left;
}

.section-booking-dates .input-container {
    display: inline-block;
    position: relative;
}

.section-booking-dates .input-container:hover input {
    color: #008178;
}

.section-booking-dates .input-container:hover:after {
  background-image: url(../../assets/icons/chev-down-alt.svg);
}

.btn-book-now {
    font-size:      20px;
    color:          #fff;
    border:         1px solid #008178;
    font-weight: 300;
    background:     transparent;
    transition:     all 0.2s ease-in-out;
    border-radius: 0;
    width: 260px;
    height: 60px;
    background: #008178;
    display: flex;
    align-items: center;
    justify-content: center;
    display: none;
    position: absolute;
    top: 30px;
    left: 42%;
}

.btn-book-now:hover {
    border-color: #23B2A8;
    background: #23B2A8;
    letter-spacing: 2px;
}

.active-menu .btn-book-now {
    display: flex;
}

/*
.main-nav-items .btn-book-now {
    position: absolute;
    right: 0;
    top: 0;
    z-index: 10;
}*/

#form-availability .submit-button {
    font-size:      18px;
    color:          #fff;
    border:         1px solid #008178;
    font-weight: 400;
    background:     transparent;
    transition:     all 0.2s ease-in-out;
    border-radius: 0;
    width: 270px;
    height: 56px;
    background: #008178;
}

#form-availability .submit-button:hover {
  border-color: #23B2A8;
  background: #23B2A8;
  letter-spacing: 2px;
}

.ui-datepicker {
    z-index: 400 !important;
}

.section-booking-dates input {
    display:        inline-block;
    vertical-align: bottom;
    border:         0;
    font-size:      26px;
    color:          #111111;
    width: 160px;
    font-weight: 600;
    cursor:         pointer;
    background: transparent;
    z-index: 10;
    position: relative;
    text-align: right;
    padding-right: 25px;
}



.section-booking-dates .input-container:hover input::-webkit-input-placeholder {
    color:     #008178;
}

.section-booking-dates .input-container:hover input:-ms-input-placeholder {
    color:     #008178;
}

.section-booking-dates .input-container:hover input::placeholder {
    color:     #008178;
}


.section-booking-dates input::-webkit-input-placeholder {
    color:     #111111;
    font-size: 26px;
}

.section-booking-dates input:-ms-input-placeholder {
    color:     #111111;
    font-size: 26px;
}

.section-booking-dates input::placeholder {
    color:     #111111;
    font-size: 26px;
}


/* 02 page content */
.breadcrumbs + .page-content {
    margin-top: -80px;
}

.page-content {
  font-size: 17px;
  padding-bottom: 161px;
  color: #111;
  margin-bottom: 80px;
}

.page-content.page-content-prod {
  margin-bottom: 80px;
}

.page-content > *:last-child,
.page-content .article > *:last-child,
.page-content .shell > *:last-child {
    margin-bottom: 0;
}

.page-content .section-animated-image {
    padding: 0;
    background-image: none;
    margin-bottom: 104px;
}

.page-content .article .page-price {
    margin-bottom: 90px;
}

.product-info {
  display: flex;
  flex-wrap: wrap;
  row-gap: 10px;
  column-gap: 7.4%;
  margin-bottom: 80px;
  color: #006768;
}

.product-info .box {
  width: 28.4%;
  padding: 16px 18px;
}

.product-info h4 {
  font-size: 24px;
  color: #00D5C7;
  margin-bottom: 6px;
  font-style: italic;
  font-weight: 400;
}

.product-info p {
  font-size: 18px;
  font-weight: 400;
  letter-spacing: -1px;
}

.page-actions {
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 130px;
    margin-top: 117px;
}

.article {
  margin-bottom: 75px;
}

.article:last-of-type {
  margin-bottom: 0;
}

.article > *:last-child {
  margin-bottom: 0;
}

.article > p {
  margin-bottom: 65px;
  line-height: 1.55;
}

.article a {
  color: #008178;
  font-size: 16px;
  font-weight: 600;
  text-decoration: underline;
  transition: all 0.2s ease-in-out;
}

.article a:hover {
  text-decoration: none;
  color: #23B2A8;
}

.article > div >  a {
  color: #008178;
  font-size: 16px;
  font-weight: 600;
  text-decoration: underline;
  transition: all 0.2s ease-in-out;
}

.article > div >  a:hover {
    color: #23B2A8;
  text-decoration: none;
}

.article h3 {
  color: #005A53;
  font-size: 30px;
  font-weight: 400;
  margin-bottom: 10px;
  line-height: 1.2;
}

.page-content .icons-wrapper + p {
  margin-top: 70px;
}

.article > ol {
  margin-bottom: 70px;
  padding-left: 40px;
  counter-reset: item;
  list-style-type: none;
  font-weight: 400;
  font-size: 17px;
}

.article > ol li {
  position: relative;
}

.article > ol li:before {
  display: inline-block;
  content: counter(item) ".";
  counter-increment: item;
  margin-left: -20px;
  color: #008178;
  margin-right: 7px;
  font-weight: 700;
  font-size: 18px;
}

.article p + ol,
.article p + ul {
  margin-top: -55px;
}

.article ul {
  list-style-type: none;
}

.article > ul {
  padding-left: 40px;
  margin-bottom: 70px;
  font-weight: 400;
  font-size: 17px;
}

.article > ol + ul,
.article > ul + ol {
  margin-top: -55px;
}

.article ul li {
  position: relative;
}

.article > ul li:before {
  content: '';
  position: absolute;
  left: -19px;
  top: 8px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #008178;
}

.catalog-wrapper {
    margin-bottom: 60px;
}

/* page nav */
.page-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 47px;
  width: 100%;
  justify-content: space-between;
  padding: 0 70px;
}

.page-nav a {
  transition: all 0.2s ease-in-out;
  background: url(../../assets/icons/chevron-gray.svg);
  width: 35.48px;
  height: 28.84px;
  background-repeat: no-repeat;
  background-position: -13px center;
  position: relative;
}

.page-nav a:before {
    content: '';
    position: absolute;
    left: 5px;
    top: 12px;
    width: 18px;
    height: 1px;
    background: #777;
    display: inline-block;
    transform: rotate(34deg);
    transition: all 0.2s;
    opacity: 1;
}

.page-nav .page-prev {
  transform: rotate(180deg);
}

@media only screen and (min-width: 1025px) {
    .page-nav a:hover {
        background-position: -5px center;
    }

    .page-nav a:hover:before {
        left: -20px;
        transform: rotate(0);
        opacity: 0;
    }
}


/* List icons */
.list-icons {
    list-style-type: none;
    display:         flex;
    flex-wrap:       wrap;
    margin: 0 auto 55px;
    justify-content: center;
    column-gap: 37px;
    row-gap: 45px;
    max-width: 1260px;
    align-items: flex-end;
}

.list-icons li {
  width:      90px;
  position:   relative;
  text-align: center;
}

.list-icons li a {
    position: absolute;
    left:     0;
    top:      0;
    width:    100%;
    height:   100%;
    z-index:  50;
}

.list-icons img {
  transition: all 0.2s ease-in-out;
}

.list-icons li > p {
  line-height: 1.1;
  font-size: 20px;
  font-weight: 600;
  margin-top: 20px;
}

.list-icons li:hover img {
  transform: scale(1.1);
  opacity: 0.6;
}

.list-icons li:hover > p {
  color: #EF5729;
}

.list-icons .list-tooltip {
    position:         absolute;
    visibility:       hidden;
    opacity:          0;
    bottom:           120%;
    width:            180px;
    background-color: #111;
    color:            #fff;
    font-size:        13px;
    line-height:      1.1;
    padding:          14px 8px;
    z-index:          50;
    text-align:       center;
}

.icons-wrapper-alt .list-icons .list-tooltip {
  bottom: 144%;
}

.top-center {
    transform: translateX(-50%);
    left:      50%;
}

.list-icons .list-tooltip:after {
    content:      '';
    position:     absolute;
    top:          100%;
    width:        0;
    height:       0;
    border-style: solid;
    border-width: 12.8px 8px 0 8px;
    border-color: #111 transparent transparent transparent;
}

.list-icons .list-tooltip.top-center:after {
    left:      50%;
    transform: translateX(-50%);
}

.list-icons .list-tooltip.top-left:after {
    transform: none;
    left:      50px;
}

.list-icons .list-tooltip.top-right:after {
    transform: none;
    left:      auto;
    right:     50px;
}

.list-icons .list-tooltip h4 {
    color:          #fff;
    font-weight:    400;
    
    font-size:      14px;
    text-transform: uppercase;
    margin-bottom:  6px;
}

.list-icons .list-tooltip p {
  font-weight: 300;
  font-size: 13px;
}

.list-icons li:hover .list-tooltip {
    visibility: visible;
    opacity:    1;
    visibility: visible;
}

/* Lists Logos */
.list-logos {
    text-align:    center;
    margin-bottom: 40px;
}

.list-logos ul {
    list-style-type: none;
}

.list-logos ul li {
    display:        inline-block;
    vertical-align: middle;
    margin:         0 24px 50px;
}

.list-logos ul li a {
    display: block;
}

.list-logos ul li a img {
    transition: all 0.3s ease-in-out;
    max-height: 150px;
    width: auto;
}

.list-logos ul li a:hover img {
    transform: scale(1.1);
}

.page-head {
  text-align: center;
  position: relative;
  margin: 0 auto 80px;
}

.page-head h2 {
    font-size: 60px;
    color: #111111;
    font-weight: 300;
    line-height: 1.1;
    text-transform: uppercase;
}

.page-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  row-gap: 40px;
}

.page-dates {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    color: #777777;
    font-weight: 300;
    column-gap: 60px;
}

.page-dates span {
    font-size: 50px;
    font-weight: 200;
    color: #008178;
    line-height: 1;
    position: relative;
    top: -5px;
}

.page-dates p {
    display: inline-flex;
    align-items: center;
    column-gap: 5px;
}

.page-dates p ~ p {
    position: relative;
}

.page-dates p ~ p:before {
    content: '/';
    color: #CCCCCC;
    font-size: 56px;
    display: inline-block;
    vertical-align: middle;
    font-weight: 200;
    position: absolute;
    left: -46px;
    top: -18px;
}

/* page price */
.page-price {
    color: #999999;
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 60px;
    font-size: 15px;
}

.page-price .price > span {
}

.page-price .price.price-old {
    position: relative;
}

.page-price .price.price-old .wrapper-price {
  color: #111111;
}

.page-price .price {
    display: flex;
    column-gap: 12px;
    flex-direction: column;
}

.page-price .wrapper-price {
    position: relative;
    color: #008178;
}

.page-price .price.price-old .wrapper-price {
    color: #111111;
}

.page-price .price.price-old .wrapper-price:before {
    content: '';
    position: absolute;
    left: -5px;
    right: -5px;
    top: 54%;
    height: 1px;
    background: #111;
}

.page-price .wrapper-price strong {
  font-size: 38px;
  font-weight: 300;
}

.page-price .wrapper-price span {
  font-size: 29px;
  text-transform: uppercase;
  font-weight: 300;
}

/* List links alt*/
/*a.inserted-file:first-of-type {
    margin-top: -40px !important;
}
*/
a.inserted-file {
  font-style: normal !important;
  color: #111111 !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  text-decoration: none !important;
  position: relative;
  margin-left: 90px;
  transition: all 0.2s ease-in-out !important;
  display: inline-block !important;
}

a.inserted-file:before {
  content: '';
  width: 32px;
  height: 32px;
  display: inline-block;
  vertical-align: middle;
  position: absolute;
  left: -45px;
  top: -5px;
  background-size: contain;
  transition: all 0.2s ease-in-out;
  background-repeat: no-repeat;
}

a.inserted-file ~ a.inserted-file {
  margin-top: 20px;
}

.inserted-file:hover {
  color: #008178 !important;
}

a.inserted-file[href$='.doc']::before,
a.inserted-file[href$='.docx']::before,
a.inserted-file[href$='.odt']::before,
a.inserted-file[href$='.txt']::before {
  background-image: url(../../assets/icons/page_actions/action-2.svg);
}

a.inserted-file[href$='.doc']:hover::before,
a.inserted-file[href$='.docx']:hover::before,
a.inserted-file[href$='.odt']:hover::before,
a.inserted-file[href$='.txt']:hover::before {
  background-image: url(../../assets/icons/page_actions/action-2-alt.svg);
}


a.inserted-file[href$='.xlsx']::before,
a.inserted-file[href$='.xls']::before {
  background-image: url(../../assets/icons/page_actions/action-3.svg);
}

a.inserted-file[href$='.xlsx']:hover::before,
a.inserted-file[href$='.xls']:hover::before {
  background-image: url(../../assets/icons/page_actions/action-3-alt.svg);
}

a.inserted-file[href$='.pdf']::before {
  background-image: url(../../assets/icons/page_actions/action-1.svg);
}

a.inserted-file[href$='.pdf']:hover::before {
  background-image: url(../../assets/icons/page_actions/action-1-alt.svg);
}

a.inserted-file[href$='.pptx']::before {
  background-image: url(../../assets/icons/page_actions/action-4.svg);
}

a.inserted-file[href$='.pptx']:hover::before {
  background-image: url(../../assets/icons/page_actions/action-4-alt.svg);
}


/* THUMBS */
.list-thumbnails {
  margin-bottom: 80px;
}

.list-thumbnails ul {
  list-style-type: none;
  display: flex;
  flex-wrap: wrap;
  column-gap: 65px;
  row-gap: 80px;
  justify-content: center;
}

.list-thumbnails li {
  display: inline-block;
  vertical-align: top;
}

.list-thumbnails .thumbnail-image {
  height: 350px;
  overflow: hidden;
}

.list-thumbnails .thumbnail-image a {
  height: 100%;
  width: auto;
}

.list-thumbnails .thumbnail-image:hover img {
  transform: scale3d(1.1, 1.1, 1.1);
}

.list-thumbnails a {
  font-size: 17px;
  text-decoration: none !important;
  line-height: 1.4;
}

.list-thumbnails .thumbnail-image + a {
  margin-top: 10px;
  text-align: left;
}

.list-thumbnails .thumbnail-image img {
  height: 100%;
  width: auto;
  transition: all 0.4s ease-in-out;
}


/* Slider images */
.slider-gallery-images {
  margin: 0 auto 94px;
  position: relative;
  height: 580px;
  max-width: 870px;
}

.slider-gallery-images .slick-track,
.slider-gallery-images .slick-list,
.slider-gallery-images .slider-images {
  height: 100%;
}

.slider-gallery-images .slick-slide img {
  margin: 0 auto;
  height: 100%;
  width: auto;
}

.slider-gallery-images .slick-slide a {
  height: 100%;
  display: block;
}

/* OLD */
.slider-images .slick-arrow {
    position: absolute;
    transition: all 0.2s ease-in-out;
    background: url(../../assets/icons/chevron-gray.svg);
    width: 35.48px;
    height: 28.84px;
    background-repeat: no-repeat;
    background-position: -13px center;
    font-size: 0;
    border: 0;
    left: -60px;
    top: 65%;
}

.slider-images .slick-arrow:before {
    content: '';
    position: absolute;
    left: 5px;
    top: 12px;
    width: 18px;
    height: 1px;
    background: #777777;
    display: inline-block;
    transform: rotate(34deg);
    transition: all 0.2s;
    opacity: 1;
}

.slider-images .slick-prev {
  transform: rotate(-180deg);
}

.slider-images .slick-next {
    top: 50%;
}

.slider-images .slick-arrow:hover {
    background-position: -5px center;
}

.slider-images .slick-arrow:hover:before {
    left: -20px;
    transform: rotate(0);
    opacity: 0;
}

.slider-gallery-images .paging-info {
    
}

.slider-gallery-images .paging-info {
    color: #777777;
    font-size: 15px;
    font-weight: 300;
    display: inline-flex;
    align-items: center;
    position: absolute;
    left: -46px;
    bottom: 60px;
}

.slider-gallery-images .paging-info span:first-child {
    position: absolute;
    left: -2px;
    bottom: 14px;
    color: #008178;
}

.slider-gallery-images .paging-info span:last-child {
    position: absolute;
    bottom: -10px;
    right: -2px;
}


.slider-gallery-images .paging-info .divider {
    position: relative;
    width: 21px;
    height: 29px;
    display: inline-block;
    background-image: url(../icons/divider-gray.svg);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    position: relative;
}


.page-gallery {
    padding: 0 80px 80px 80px;
}

/* ------------------------------------------------------------ *\
  Media Queries
\* ------------------------------------------------------------ */
@media only screen and (max-width: 1600px) {
    .btn-book-now {
        left: 40%;
    }
}

@media only screen and (max-width: 1450px) {
    .btn-book-now {
        left: 35%;
    }
}

@media only screen and (max-width: 1300px) {
    .active-menu .shrink.header:after {
        width: calc(40.5% - 10px);
    }

    .active-menu .shrink.header:before {
        width: calc(59.5% - 0px);
    }
}

@media only screen and (max-width: 1250px) {
    .slider-nav-elements {
        left: 40px;
        top: 200px;
    }

    .boxes-type-1 .box-prices {
        flex-direction: column;
        align-items: baseline;
    }

    .section-head .section-title {
        font-size: 90px;
    }

    .btn-book-now {
        left: 30%;
    }
}

@media only screen and (max-width: 1100px) {
    .header {
        padding-left: 40px;
        padding-right: 40px;
    }

    .header-nav ul {
        column-gap: 30px;
    }

    .logo {
        max-width: 224px;
    }
}


/*
  ##Device = Tablets, Ipads (landscape)
  ##Screen = B/w 768px to 1024px
*/
@media only screen and (max-width: 1024px) {
    .btn-book-now {
        width: 160px;
        height: 50px;
        font-size: 18px;
        left: 35%;
        top: 40px;
    }

    .section-top h3 {
        font-size: 50px;
    }

    .section-top h3:before {
        width: 90px;
        height: 90px;
    }

    .section-top img {
        top: 0;
        max-width: 60px;
    }

    .slider-gallery-images {
        padding: 0 80px;
    }

    .slider-gallery-images .paging-info {
        left: 29px;
    }

    .page-bottom {
        flex-direction: column;
    }

    .boxes-type-4 .box-content {
        padding: 0 30px;
    }

    .boxes-type-4 h3 {
        font-size: 28px;
    }

    .section-news .slider-nav-elements {
        left: 30px;
    }

    .boxes-type-3 h3 {
        font-size: 32px;
    }


    .boxes-type-3 .box-content,
    .boxes-type-3 .box:nth-child(even) .box-content {
        padding: 0 30px;
    }

    .boxes-type-3 {
        padding-left: 4%;
    }

    .paralax-image {
        background-attachment: unset;
    }

    .boxes-type-2 h3 {
        font-size: 32px;
    }

    .section-head .section-title {
        font-size: 60px;
    }

    .section-title span {
        margin-left: -25px;
    }

    .nav-main {
        font-size: 40px;
    }

    .main-nav-items {
        padding-right: 50px;
        padding-left: 5%;
    }


    .active-menu .shrink.header:after {
        width: calc(40.5% - 5px);
    }

    .active-menu .shrink.header:before {
        width: calc(59.5% - 5px);
    }

    .second-nav-items .col-inner {
        padding-left: 40px;
        padding-right: 20px;
    }

    .nav-secondary {
        font-size: 32px;
    }

    .header-nav {
        display: none;
    }

    .rev-video-media .tp-caption > .main_caption_name, .rev-video-media .tp-caption > a .main_caption_name, .rev-image-media .tp-caption > .main_caption_name, .rev-image-media .tp-caption > a .main_caption_name {
        font-size: 46px !important;
    }

    .rev-video-media .tp-caption > .main_caption_name + .main_caption_name, .rev-video-media .tp-caption > a .main_caption_name + .main_caption_name, .rev-image-media .tp-caption > .main_caption_name + .main_caption_name, .rev-image-media .tp-caption > a .main_caption_name + .main_caption_name {
        font-size: 28px !important;
    }

    .rev-custom-arrows {
        right: auto;
        left: 50%;
        transform: translateX(-50%);
        flex-direction: row;
        width: 170px;
    }

    .rev-custom-arrows .custom-arrows {
        flex-direction: row;
        width: 100%;
        justify-content: space-between;
    }

    .rev-custom-arrows .custom-arrows .arrow-prev {
        order: 2;
    }

    .intro #slide-count {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
    }

    .boxes-type-1 .box {
        align-items: center;
    }

    .boxes-type-1 h3 {
        font-size: 32px;
    }

    .logo-footer {
        justify-content: flex-end;
        transform: scale(0.7);
    }

    .footer-inner {
        padding-left: 40px;
    }
}

@media only screen and (max-width: 980px) {
    .section-top.section-top-contacts .cols {
        flex-direction: column;
        row-gap: 40px;
    }
}

/*
  ##Device = Low Resolution Tablets, Mobiles (Landscape)
  ##Screen = B/w 481px to 767px
*/

@media only screen and (max-width: 767px) {
    .header {
        padding: 44px 14px 0px 14px;
    }

    .logo {
        max-width: 123px;
    }

    .logo img {
        display: none;
    }

    .logo img + img {
        display: inline-block;
    }

    .header-content {
        column-gap: 32px;
    }

    .shrink.header {
        padding: 25px 15px 15px;
    }

    .rev-image-media .tp-caption {
        padding: 0 10px !important;
    }

    .rev-video-media .tp-caption > .main_caption_name, .rev-video-media .tp-caption > a .main_caption_name, .rev-image-media .tp-caption > .main_caption_name, .rev-image-media .tp-caption > a .main_caption_name {
        font-size: 30px !important;
        line-height: 1.2 !important;
    }

    .rev-video-media .tp-caption > .main_caption_name + .main_caption_name, .rev-video-media .tp-caption > a .main_caption_name + .main_caption_name, .rev-image-media .tp-caption > .main_caption_name + .main_caption_name, .rev-image-media .tp-caption > a .main_caption_name + .main_caption_name {
        font-size: 20px !important;
    }

    .rev-custom-arrows {
        bottom: 49px;
    }

    .fullscreen-menu .cols {
        flex-direction: column;
        row-gap: 10px;
    }

    .fullscreen-menu .cols .col-2of3,
    .fullscreen-menu .cols .col-1of3 {
        width: 100%;
    }

    .active-menu .shrink.header:after,
    .active-menu .shrink.header:before,
    .active-menu .logo-menu {
        display: none;
    }

    .active-menu .shrink.header {
        background: #111;
    }

    .active-menu .logo {
        display: none;
    }

    .active-menu .btn-book-now {
        position: static;
    }

    .fullscreen-menu {
        padding-top: 80px;
    }

    .main-nav-items {
        padding: 22px 14px;
    }

    .nav-main {
        font-size: 32px;
    }

    .nav-main .sub-menu {
        font-size: 18px;
    }

    .nav-main .sub-menu li {
        margin-left: 20px;
    }

    .nav-secondary {
        font-size: 26px;
    }

    .second-nav-items .col-inner {
        padding: 0;
    }

    .second-nav-items {
        padding: 35px 23px;
    }

    .top-socials {
        column-gap: 27px;
    }

    .active-menu .link-menu {
        width: 25px;
        height: 25px;
    }

    .section-booking-dates input {
        font-size: 24px;
    }


    .section-booking-dates input::-webkit-input-placeholder {
        font-size: 24px;
    }

    .section-booking-dates input:-ms-input-placeholder {
        font-size: 24px;
    }

    .section-booking-dates input::placeholder {
        font-size: 24px;
    }

    .section-welcome img {
        max-width: 180px;
    }

    .section-welcome {
        padding-top: 130px;
        padding-bottom: 375px;
    }

    .section-welcome .section-content {
        font-size: 15px;
    }

    .section-welcome {
        background-size: 112% 6%;
        background-position: center 84%;
    }

    .boxes-type-1 .box {
        flex-direction: column;
    }

    .boxes-type-1 {
        padding-left: 14px;
        padding-right: 14px;
    }

    .boxes-type-1 .box-image-outer {
        width: 240px;
        margin-bottom: 25px;
    }

    .mobile-view {
        display: block !important;
    }

    .boxes-type-1 .box-image-outer .box-label {
        display: none;
    }

    .boxes-type-1 .box-content > .box-dates {
        display: none !important;
    }

    .boxes-type-1 .box-dates {
        margin: 0;
        margin-left: auto;
        display: flex !important;
    }

    .boxes-type-1 .box-content {
        padding: 0;
    }

    .boxes-type-1 .box-label {
        padding: 0;
        font-size: 14px;
        margin-bottom: 12px;
    }

    .boxes-type-1 h3 {
        font-size: 26px;
    }

    body {
        font-size: 15px;
    }

    .box-dates {
        font-size: 14px;
    }

    .box-dates span {
        font-size: 36px;
    }

    .link-more {
        font-size: 14px;
        line-height: 1.3;
    }


    .section-slider {
        padding-bottom: 243px;
    }

    .boxes-type-1.slider-single {
        margin-top: -170px;
    }

    .section-news .slider-nav-elements,
    .slider-nav-elements {
        left: 50%;
        top: auto;
        bottom: 142px;
        transform: translateX(-50%);
        flex-direction: row;
        width: 170px;
    }

    .slider-nav-elements .custom-arrows {
        flex-direction: row;
        width: 100%;
        justify-content: space-between;
    }

    .slider-nav-elements .custom-arrows .arrow-prev {
        order: 2;
    }

    .slider-nav-elements .slide-count {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
    }

    .section-head .section-title {
        font-size: 28px;
        font-weight: 300;
    }

    .section-title span {
        margin-left: -12px;
    }

    .section-img {
        max-width: 40px;
    }

    .section-accommodation .section-img {
        top: -50px;
    }

    .section-accommodation .section-head {
        padding-left: 45px;
        margin-bottom: 50px;
    }

    .section-accommodation .section-title {
        margin-top: 0;
        position: relative;
        top: -13px;
    }

    .boxes-type-2 .box-content > .box-dates {
        display: none !important;
    }

    .boxes-type-2 .box {
        flex-direction: column;
    }

    .boxes-type-2 .box:nth-child(odd) .box-image-outer {
        order: 1;
    }

    .boxes-type-2 .box:nth-child(odd) .box-content{
        order: 2;
    }

    .boxes-type-2 .box-label {
        position: static;
    }

    .boxes-type-2 .box-image-outer .box-label {
        display: none;
    }

    .boxes-type-2 .box-image-outer:before {
        display: none;
    }

    .boxes-type-2 {
        padding-left: 14px;
        padding-right: 14px;
    }

    .boxes-type-2 .box-image-outer {
        width: 270px;
        margin-bottom: 25px;
    }

    .boxes-type-2 .box-dates {
        margin: 0;
        margin-left: auto;
        display: flex !important;
    }

    .boxes-type-2 .box-content {
        padding: 0;
    }

    .boxes-type-2 .box-label {
        padding: 0;
        font-size: 14px;
        margin-bottom: 12px;
    }

    .boxes-type-2 h3 {
        font-size: 26px;
    }

    .boxes-type-2 .box-prices {
        flex-direction: column;
        align-items: baseline;
    }

    .boxes-type-2 {
        row-gap: 90px;
        padding-left: 14px;
        padding-right: 14px;
        padding-bottom: 130px;
        margin-bottom: 0;
    }

    .boxes-type-2 .box:nth-child(even) .box-content {
        padding: 0;
    }

    .section-actions p {
        font-size: 16px;
        padding: 0 40px;
    }

    .btn {
        width: 270px;
        height: 60px;
        font-size: 20px;
    }

    .section-accommodation {
        padding-bottom: 92px;
    }

    .paralax-content {
        width: auto;
        transform: none;
        left: 14px;
        top: 14px;
        right: 14px;
        bottom: 14px;
    }

    .paralax-content h3 {
        font-size: 44px;
    }

    .paralax-content h4 {
        font-size: 24px;
    }

    .section-welcome-alt {
        padding: 70px 0 155px;
    }

    .section-amentities .section-img {
        top: -71px;
    }

    .section-amentities .section-head {
        padding-left: 50px;
        margin-bottom: 50px;
    }

    .section-amentities .section-title {
        margin-top: 0;
        position: relative;
        top: -13px;
    }

    .boxes-type-3 {
        padding-left: 0;
        flex-direction: column;
        margin-right: 0;
        padding: 0 14px 99px;
    }

    .boxes-type-3 .box:nth-child(even),
    .boxes-type-3 .box {
        margin-top: 0;
        width: 100%;
    }

    .boxes-type-3 .box-image-outer:before {
        display: none !important;
    }

    .boxes-type-3 .box-content, .boxes-type-3 .box:nth-child(even) .box-content {
        padding: 0;
    }

    .boxes-type-3 .box-label {
        font-size: 14px;
        padding: 0;
        left: 0;
        bottom: -24px;
    }

    .boxes-type-3 .box-image-outer {
        margin-bottom: 46px;
    }

    .boxes-type-3 h3 {
        font-size: 26px;
    }

    .boxes-type-3 .box-prices {
        flex-direction: column;
        align-items: baseline;
    }

    .boxes-type-4 .box-content > .box-dates {
        display: none !important;
    }

    .boxes-type-4 .box {
        flex-direction: column;
    }

    .boxes-type-4 .box:nth-child(odd) .box-image-outer {
        order: 1;
    }

    .boxes-type-4 .box:nth-child(odd) .box-content{
        order: 2;
    }

    .boxes-type-4 .box-image-outer:before {
        display: none;
    }

    .boxes-type-4 {
        padding-left: 14px;
        padding-right: 14px;
    }

    .boxes-type-4 .box-image-outer {
        width: 240px;
        margin-bottom: 0px;
    }

    .boxes-type-4 .box-image-wrapper {
        margin-bottom: 20px;
    }

    .boxes-type-4 .box-dates {
        margin: 0;
        margin-left: auto;
        display: flex !important;
    }

    .boxes-type-4 .box-content {
        padding: 0;
    }

    .boxes-type-4 .box-image-outer .box-label {
        display: none;
    }

    .boxes-type-4 .box-label {
        padding: 0;
        font-size: 14px;
        margin-bottom: 12px;
        display: block;
        transform: none;
        position: static;
    }

    .boxes-type-4 h3 {
        font-size: 26px;
    }

    .boxes-type-4 .box-prices {
        flex-direction: column;
        align-items: baseline;
    }

    .boxes-type-4 {
        row-gap: 90px;
        padding-left: 14px;
        padding-right: 14px;
        padding-bottom: 0px;
        margin-bottom: 0;
    }

    .boxes-type-4 .box:nth-child(even) .box-content {
        padding: 0;
    }

    .boxes-type-4 .box {
        padding-left: 0;
    }

    .section-news.section-slider {
        padding-bottom: 0;
    }

    .slider-wrapper {
        padding-bottom: 208px;
    }

    .section-news .slider-nav-elements {
        bottom: 115px;
    }

    .section-news {
        padding-top: 99px;
    }

    .section-news .section-img {
        top: 59px;
    }

    .section-news .section-head {
        padding-left: 50px;
        margin-bottom: 52px;
    }

    .section-paralax.section-paralax-alt {
        height: 440px;
    }

    .btn.btn-secondary {
        width: 270px;
        height: 100px;
        font-size: 36px;
    }

    .btn.btn-secondary:hover {
        font-size: 38px;
    }

    .section-bottom {
        padding: 55px 0;
        font-size: 16px;
    }

    .footer {
        background-size: contain;
        padding: 64px 0 70px;
    }

    .footer-nav {
        display: none;
    }

    .footer-content {
        flex-direction: column;
    }

    .logo-footer {
        flex-direction: column;
        transform: scale(1);
        row-gap: 27px;
    }

    .logo-footer img:first-child {
        width: 77px;
    }

    .logo-footer img:last-child {
        width: 190px;
    }

    .footer .aside {
        text-align: center;
    }

    .footer .aside > p span {
        font-size: 19px;
    }

    .footer .aside > p {
        font-size: 24px;
    }

    .footer-inner {
        padding: 0;
    }

    .footer-inner .footer-socials {
        display: none;
    }

    .footer .aside .footer-socials {
        margin-top: 50px;
        display: flex !important;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        row-gap: 20px;
    }

    .footer .aside .footer-socials img {
        transform: scale(0.8);
    }

    .powered-by {
        margin: 60px 0 50px;
    }

    .powered-by a {
        display: flex;
        flex-direction: column;
        align-items: center;
        row-gap: 6px;
    }

    .powered-by img {
        max-width: 151px;
    }

    .footer-links {
        flex-direction: column;
        row-gap: 10px;
    }

    .credits {
        text-align: center;
        font-size: 15px;
    }

    .scroll-top-wrapper {
        right: 20px;
        bottom: 20px;
    }

    /*page content*/
    .page-content {
      padding-left: 25px;
      padding-right: 25px;
      padding-bottom: 60px;
      font-size: 16px;
      margin-bottom: 40px;
    }

    .page-content .shell {
      padding: 0;
    }

    .page-head h2 {
      font-size: 32px;
      line-height: 1.2;
    }

    .list-icons li {
      width: 40px;
    }

    .list-icons {
      column-gap: 27px;
    }

    .page-nav .page-prev:before {
        margin-right: 4px;
    }

    .article > p {
      font-size: 15px;
    }

    .page-head {
      margin-bottom: 60px;
    }

    .list-logos {
      display: flex;
      flex-wrap: wrap;
    }

    .list-logos ul li {
      width: 80px;
      margin: 0;
    }

    .list-thumbnails li {
      width: 45%;
    }

    .list-thumbnails ul {
      column-gap: 10%;
      row-gap: 30px;
    }

    .list-thumbnails .thumbnail-image {
      height: auto;
    }

    .slider-gallery-images {
      padding: 0;
    }

   
    .slider-images .slick-arrow {
      top: auto;
      bottom: -45px;
    }

    .slider-images .slick-prev {
      left: 20px;
      margin-left: 0;
    }

    .slider-images .slick-arrow.slick-next {
        left: auto;
        right: 20px;
        margin: 0;
    }


    .article h3 {
      font-size: 28px;
    }

    .article > ul,
    .article > ol {
      font-size: 15px;
      padding-left: 40px;
    }

    a.inserted-file {
      margin-left: 50px;
    }

    .article {
      margin-bottom: 30px;
    }

    .page-nav .page-next:after {
        margin-left: 4px;
    }

    .slider-gallery-images {
        height: 250px;
    }

    .article > ol li:before {
        font-size: 15px;
    }

    .page-bottom {
      flex-direction: column;
      row-gap: 30px;
    }

    .page-price {
        flex-direction: column;
        row-gap: 20px;
    }

    .page-price .wrapper-price strong {
      font-size: 18px;
    }

    .page-price .wrapper-price span {
      font-size: 14px;
    }

    .page-price .price.price-old .wrapper-price:before {
      height: 1px;
    }

    .page-dates span {
      font-size: 22px;
    }

    .page-dates {
      font-size: 18px;
    }

    .page-dates p ~ p:before {
      font-size: 30px;
      font-size: 30px;
      left: -36px;
      top: -10px;
    }

    .page-gallery {
      margin-bottom: 0px;
      padding-left: 25px;
      padding-right: 24px;
      padding-bottom: 40px;
    }

    .page-nav {
        margin-bottom: 40px;
    }

    .page-actions {
        margin-top: 50px;
        flex-direction: column;
        row-gap: 20px;
    }

    .slider-gallery-images .paging-info {
        top: auto;
        bottom: -45px;
        right: auto;
          left: 50%;
          transform: translateX(-50%);
    }


    .intro.intro-small .tp-fullwidth-forcer, .intro.intro-small {
        height: 300px !important;
        min-height: 300px !important;
    }

    .breadcrumbs {
        margin-bottom: 80px;
    }

    .section-top img {
        top: 79px;
        max-width: 40px;
    }

    .section-top h3 {
        font-size: 26px;
        margin-bottom: 96px;
    }


    .section-text .section-content,
    .section-top .section-content {
        font-size: 15px;
        line-height: 1.5;
    }

    .section-top {
        padding-bottom: 90px;
    }

    .section-text {
        padding: 90px 0;
    }


    .boxes-type-5 {
        margin: 0;
        padding: 0 14px;
        row-gap: 100px;
        padding-bottom: 90px;
    }

    .boxes-type-5 .box:nth-child(even),
    .boxes-type-5 .box:nth-child(even) .box-content,
    .boxes-type-5 .box-content {
        padding: 0;
    }

    .boxes-type-5 .box:nth-child(even) .box-content {
        order: 2;
    }

    .boxes-type-5 .box:nth-child(even) .box-image-outer {
        width: 100%;
        order: 1;
    }

    .boxes-type-5 .box {
        flex-direction: column;
    }

    .boxes-type-5 .box-image-outer {
        width: 100%;
        margin-bottom: 25px;
    }

    .boxes-type-5 .box-content > .box-dates {
        display: none;
    }


    .boxes-type-5 .box:nth-child(even) .box-content .box-dates,
    .boxes-type-5 .box-bottom .box-dates {
        display: flex !important;
        margin: 0;
        margin-left: auto;
    }


    .boxes-type-5 h3 {
        font-size: 26px;
    }

     .boxes-type-5 .box-prices {
        flex-direction: column;
        align-items: baseline;
    }

    .filters-wrapper ul {
      flex-wrap: wrap;
      column-gap: 20px;
      row-gap: 5px;
      align-items: center;
      justify-content: center;
    }

    .filter-arrow {
      width: 20px;
      height: 28px;
    }

    .filters-wrapper {
      column-gap: 25px;
      margin-bottom: 0px;
      font-size: 21px;
      margin-top: 70px;
    }

    .gallery-elements .gallery-item {
        width: 100%;
    }

    .gallery-elements h3 {
        font-size: 17px;
    }

    .gallery-elements .gallery-content {
        padding-right: 40px;
    }

    .section-top.section-top-contacts .section-content {
        font-size: 16px;
    }

    .section-top.section-top-contacts h3 {
        margin-bottom: 60px;
    }

    .map-wrapper {
        width: 100%;
        max-width: 350px;
        height: 350px;
    }

    .form-wrapper-contacts .form-title {
      padding-left: 0;
      font-size: 32px;
      margin-bottom: 26px;
    }

    #contact-form .form-cols {
      flex-direction: column;
    }

    #contact-form .form-label {
      white-space: nowrap;
    }

    #contact-form .form-col ~ .form-col {
      margin-left: 0;
      margin-top: 40px;
    }
    
    .mobile-view {
      display: block;
    }  

    .desktop-view {
      display: none;
    }

    .form-wrapper-contacts .checkboxes-outer .checkboxes-wrapper {
      margin-top: 20px;
    }

    #contact-form .form-actions {
      margin-top: 40px;
    }

    #contact-form .submit-button {
      width: 100%;
      max-width: 260px;
    }

    .form-wrapper-contacts.form-wrapper {
        margin-top: 50px;
      margin-bottom: 50px;
    }

    #contact-form .form-row .input-container input {
      font-size: 16px;
    }

    .btn-book-now {
        height: 60px;
        font-size: 20px;
    }

    .active-menu .header {
        padding-top: 0 !important;
        padding-left: 0 !important;
        padding-bottom: 0 !important;
        top: 10px;
    }

}