/* 
Theme Name: Kattechs - Child
Theme URI: https://www.kattechs.com
Description: Kattechs - Custom Wordpress Theme - Child
Author: Vannoeur
Author URI: https://www.kattechs.com
Template: kattechs
Version: 1.1.6
Text Domain: kattechs
*/

/* @import url('https://fonts.googleapis.com/css2?family=Jost:wght@400;500;600;700&family=Koh+Santepheap:wght@400;700&display=swap'); */
/* ------------------- */
/* Local Jost (no Google) */
/* ------------------- */

@font-face {
  font-family: 'Jost';
  src: url('/wp-content/uploads/fonts/jost/Jost-400.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Jost';
  src: url('/wp-content/uploads/fonts/jost/Jost-500.woff2') format('woff2');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Jost';
  src: url('/wp-content/uploads/fonts/jost/Jost-600.woff2') format('woff2');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Jost';
  src: url('/wp-content/uploads/fonts/jost/Jost-700.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/* ------------------- */
/* Local Koh Santepheap */
/* ------------------- */

@font-face {
  font-family: 'Koh Santepheap';
  src: url('/wp-content/uploads/fonts/koh-santepheap/KohSantepheap-400.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Koh Santepheap';
  src: url('/wp-content/uploads/fonts/koh-santepheap/KohSantepheap-700.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

:root {
    --light-color: #e8e8e8;
    --white-color: #fff;
    --dark-color: #2a2a2a;
    --primary-color: #d45e00;
    --secondary-color: #002E45;

    --heading-font: 'Jost', sans-serif, 'Koh Santepheap', cursive;
    --body-font: 'Jost', sans-serif, 'Koh Santepheap', cursive;

    --animate-delay-short: 0.5s;
}

.animate__delay-short {
    animation-delay: var(--animate-delay-short);
}

*, body {
    margin: 0 auto;
    padding: 0;
    border: 0;
    font-size: 15px;
    font-family: var(--body-font);
    letter-spacing: 0.035em;
    line-height: 26px;
    -webkit-font-smoothing: initial;
}

body {
    overflow-x: hidden;
}

/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
    color: var(--dark-color);
    line-height: 26px;
}

a:visited {

}

a:hover, a:focus, a:active {
    color: var(--dark-color);
    text-decoration: none;
}

a:focus {
    outline: thin dotted;
}

a:hover, a:active {
    outline: 0;
}

p {
    font-size: 15px;
    font-family: var(--body-font);
    color: var(--dark-color);
    line-height: 26px;
}

h3 {
    font-family: var(--heading-font);
    font-weight: 700 !important;
    letter-spacing: 0;
    font-size: 29px !important;
    margin-bottom: 15px !important;
    color: var(--secondary-color);
    line-height: 1.2 !important;
}

b, strong {
    font-weight: 700 !important;
}

#page {
    border: 0;
}

.ad-site-header .ad-navbar {
    border: 0;
    border-bottom: none;
}

/*--------------------------------------------------------------
## header
--------------------------------------------------------------*/
#loader {
    background: url(assets/images/lapassion-loader-icon-1.2.gif) center center no-repeat;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 999999;
    background-size: 220px 220px;
    background-color: var(--white-color);
}

.ad-site-header.scroll-header .top-header-row a {
    color: var(--white-color);
}

.ad-site-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10;
    -webkit-transition: all .35s ease-out;
    -o-transition: all .35s ease-out;
    transition: all .35s ease-out;
}

.ad-site-header.scroll-header {
    -webkit-box-shadow: 0 0 2px #353232;
    box-shadow: 0 0 2px #353232;
    -webkit-transition: all .35s ease-out;
    -o-transition: all .35s ease-out;
    transition: all .35s ease-out;
}

.ad-site-header .ad-navbar {
    background-size: 100% 100%;
    background-image: linear-gradient(to bottom, rgb(0 0 0 / 69%) 0%, rgb(0 47 71 / 0%) 100%);
}

.ad-site-header.scroll-header .ad-navbar {
    border: none;
    border-top: 2px solid var(--primary-color);
    background: var(--secondary-color);
}

.ad-site-header .container-fluid {
    width: 1600px;
    max-width: 100%;
}

.ad-site-header.scroll-header .header-logo {
    transition: .6s;
    position: relative;
    z-index: 5;
}

.ad-site-header.scroll-header .header-column {
    padding-top: 0;
    position: relative;
    z-index: 20;
    transition: .6s;
}

.header-column {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding-top: 0;
    transition: .6s;
}

.header-col-left {
    width: 40%;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    text-align: left;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.header-col-center {
    width: 20%;
    text-align: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.header-col-right {
    width: 40%;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    text-align: right;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.header-column a {
    color: var(--white-color);
    font-family: var(--heading-font);
}

.scroll-header .header-column a {
    color: var(--white-color);
}

.header-column a:hover {
    text-decoration: none;
}

.header-logo {
    transition: .6s;
}

.header-logo a {
    display: block;
    text-align: center;
    text-decoration: none;
}

.header-logo img {
    width: 110px;
    max-width: 100%;
    height: auto;
    transition: .3s;
    margin: 0 auto;
}

.header-logo-light {
    display: none;
    transition: .3s;
}

.header-logo-dark {
    display: block;
    transition: .3s;
}

.admin-bar .ad-site-header {
    top: 32px;
}

.ad-site-header ul {
    display: block;
    padding-left: 0;
    margin-left: 0;
    margin-bottom: 0;
    list-style-type: none;
    color: var(--dark-color);
    text-align: left;
}

.ad-site-header ul li {
    display: inline-block;
}

.ad-site-header ul li a {
    color: var(--white-color);
    font-size: 13px;
    font-family: var(--body-font);
    font-weight: 500;
    letter-spacing: 0.45px;
    padding: 10px 15px;
    text-transform: uppercase;
    border: 1px solid transparent;
    position: relative;
    text-decoration: none;
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.ad-site-header ul li a:focus {
    border: 1px solid transparent;
    box-shadow: none;
    outline: none;
}

.ad-site-header ul li .arrow {
    display: none;
}

.ad-site-header .ad-navbar ul li.current_page_item a,
.ad-site-header .ad-navbar ul li a:hover {
    color: var(--primary-color);
}

.ad-site-header .ad-navbar ul li ul a:hover,
.ad-site-header .ad-navbar ul li.current_page_item ul a:hover,
.ad-site-header .ad-navbar ul ul li.current_page_item a {
    color: var(--white-color) !important;
    background-color: var(--primary-color);
}

.ad-site-header ul {
    width: 100%;
}

.ad-site-header ul li {
    position: relative;
}

.ad-site-header ul li .sub-menu-wrap {
    position: absolute;
    min-width: 280px;
    left: 0;
    display: block;
    opacity: 0;
    visibility: hidden;
    z-index: 5;
    overflow: hidden;
    transition: .3s !important;
    transition: height 0.3s ease-out;
    padding: 20px 3px 3px 3px;
}

.header-right-menu ul li:last-child .sub-menu-wrap {
    left: auto;
    right: 0;
}

.sub-menu-wrap-inner {
    background-color: var(--white-color);
    box-shadow: 0px 2px 5px 0px rgb(70 70 70 / 20%);
}

.ad-site-header ul .menu-item-has-children:hover .sub-menu-wrap {
    display: block;
    opacity: 1;
    visibility: visible;
    height: auto;
    transition: .3s !important;
    transition: height 0.3s ease-out;
}

.ad-site-header ul li ul.sub-menu li {
    display: block;
}

.ad-site-header ul li ul.sub-menu li a {
    display: block;
    padding: 10px 25px;
    color: var(--dark-color) !important;
    transition: 0.3s;
}

.ad-site-header ul li ul.sub-menu li a::after {
    content: normal;
    background-color: var(--primary-color);
    color: var(--white-color) !important;
    transition: 0.3s;
}

.m-header-right-booking {
    display: none;
}

.scroll-header .ad-site-header ul li .sub-menu-wrap {
    top: 57px;
    transition: .6s !important;
}

.ad-site-header.scroll-header ul li.current-menu-item a {
    color: var(--primary-color) !important;
    border-radius: 5px;
    border: 1px solid transparent;
}

.ad-site-header.scroll-header ul li a::after,
.ad-site-header.scroll-header ul li a:hover::after,
.ad-site-header.scroll-header ul li.current-menu-item a::after {
    background-color: var(--primary-color);
}

.ad-site-header.scroll-header .ad-navbar ul li.current_page_item a,
.ad-site-header.scroll-header .ad-navbar ul li a:hover {
    color: var(--primary-color);
}

.hamburger-inner, .header-language {
    float: left;
    display: inline-block;
}

.header-language {
    margin-left: 70px;
}

.site-left-language.header-language {
    display: none;
}

.header-language .wpml-ls-legacy-list-horizontal a {
    padding: 0px 0px;
    color: #f1f0f0;
}

.header-language .wpml-ls-legacy-list-horizontal li a:after {
    content: '/';
    color: #f1f0f0;
    padding-left: 8px;
    padding-right: 8px;
}

.header-language .wpml-ls-legacy-list-horizontal li:last-child a:after {
    content: '';
}

.header-language .wpml-ls-legacy-list-horizontal li a .wpml-ls-native {
    color: var(--white-color);
}

.header-language .wpml-ls-legacy-list-horizontal li a .wpml-ls-native:before {
    content: '';
    border-bottom: solid 1px #ffffff;
    width: 15px;
    position: relative;
    bottom: -20px;
    left: 0;
    display: block;
}

.header-language .wpml-ls-legacy-list-horizontal {
    padding: 0;
}

.h-mobile-navbar {
    display: none;
}

.hamburger-container {
    display: flex;
    position: relative;
    z-index: 40;
}

.hamburger--squeeze {
    position: relative;
    top: 4px;
}

.hamburger-box {
    width: 30px;
    height: 15px;
    position: relative;
    display: inline-block;
    top: 9px;
}

.hamburger-box-inner, .hamburger-box-inner:before, .hamburger-box-inner:after {

    position: absolute;
    -webkit-transition: -webkit-transform .15s ease;
    -moz-transition: -moz-transform .15s ease;
    transition: transform .15s ease;
    height: 1px;
    width: 30px;
    background-color: var(--white-color);
    border-radius: 0;
}

.hamburger-box-inner:before {
    content: '';
    top: -8px;
    width: 30px;
}

.hamburger-box-inner:after {
    content: '';
    bottom: -8px;
    width: 30px;
}

.hamburger-box-label {
    padding-left: 4px;
    color: var(--white-color);
}

.menu-open.hamburger-open .hamburger-box-label {
    color: var(--light-color);
}

.menu-open.hamburger-open .hamburger-box-inner:before, .menu-open.hamburger-open .hamburger-box-inner:after {
    background-color: var(--light-color);
}

.header-side-menu {
    position: fixed;
    top: 0;
    left: 0;
    min-width: 400px;
    height: 100%;
    padding: 160px 30px 30px 70px;
    background-color: var(--secondary-color);
    z-index: 20;
    -webkit-transform: translateX(-101%);
    -moz-transform: translateX(-101%);
    -ms-transform: translateX(-101%);
    -o-transform: translateX(-101%);
    transform: translateX(-101%);
    -webkit-transition: -webkit-transform .3s cubic-bezier(.5, .1, .2, 1);
    -moz-transition: -moz-transform .3s cubic-bezier(.5, .1, .2, 1);
    transition: transform .3s cubic-bezier(.5, .1, .2, 1);
    transition: .6s;
}

.ad-site-header.scroll-header .header-side-menu {
    padding-top: 80px;
    transition: .6s;
}

.header-side-menu ul {
    padding-left: 0;
    margin-left: 0;
    margin-bottom: 0;
    list-style-type: none;
}

.header-side-menu ul li {
    position: relative;
}

.header-side-menu ul li a {
    color: var(--dark-color);
    padding: 15px 10px !important;
    font-size: 15px;
    line-height: 20px;
    display: block;
    position: relative;
    text-transform: uppercase;
}

.header-side-menu ul li.current-menu-item a {
    background-color: var(--primary-color) !important;
    color: var(--white-color) !important;
}

.header-side-menu ul li:hover a,
.header-side-menu ul li:focus a {
    background: transparent !important;
    border: 1px solid transparent !important;
}

.header-side-menu ul li.current-menu-item a:before, .header-side-menu ul li:hover a:before {
    content: none;
    width: 20px;
    height: 1px;
    background-color: var(--dark-color);
    position: absolute;
    left: -25px;
    top: 20px;
}

.header-side-menu ul li.current-menu-item a:before {
    background-color: var(--primary-color) !important;
}

.menu-overlay {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 10;
    background-color: rgba(0, 0, 0, .4);
    cursor: pointer;
    height: 100vh;
}

.menu-open.hamburger-open .header-side-menu {
    /*display: block;*/
    -webkit-transform: translateX(0%);
    -moz-transform: translateX(0%);
    -ms-transform: translateX(0%);
    -o-transform: translateX(0%);
    transform: translateX(0%)
}

.menu-open.hamburger-open .header-col-left a {
    color: var(--light-color);
}

.menu-open.hamburger-open .hamburger-box-inner:before, .menu-open.hamburger-open .hamburger-box-inner:after {
    background-color: var(--dark-color);
}

.menu-open.hamburger-open .hamburger-box-inner {
    background-color: transparent !important;
    top: 9px;
}

.menu-open.hamburger-open .hamburger-box-inner:before {
    opacity: 1;
    content: '';
    top: -8px;
    width: 25px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition-delay: .12s;
    -moz-transition-delay: .12s;
    transition-delay: .12s;
    -webkit-transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    -moz-transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
}

.menu-open.hamburger-open .hamburger-box-inner:after {
    opacity: 1;
    content: '';
    top: -8px;
    width: 25px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transition-delay: .12s;
    -moz-transition-delay: .12s;
    transition-delay: .12s;
    -webkit-transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    -moz-transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
}

.menu-open.hamburger-open .header-language a .wpml-ls-native {
    color: var(--dark-color);
}

.menu-open.hamburger-open .header-language .wpml-ls-legacy-list-horizontal li a:after {
    color: #777777;
}

.menu-open.hamburger-open .header-language a {
    color: #777777;
}

.menu-open.hamburger-open .header-language .wpml-ls-legacy-list-horizontal li a .wpml-ls-native:before {
    border-bottom: solid 2px var(--dark-color);
}

.header-side-menu {
    padding: 30px 30px;
}

.header-side-menu ul li {
    display: block;
}

.header-side-menu .hamburger-container {
    display: none;
}

.menu-open.hamburger-open .hamburger-container {
    display: none;
}

.menu-open.hamburger-open .header-side-menu .hamburger-container {
    display: block;
}

.menu-open.hamburger-open .header-side-menu .hamburger-container {

}

.menu-open.hamburger-open .header-side-menu .hamburger-inner {
    float: none;
    display: block;
    margin-bottom: 25px;
}

#h-mb-left-menu ul li.current-menu-item a {
    color: var(--white-color) !important;
}


/*menu right*/
.header-right-menu {
    min-width: 170px;
}

.header-right-menu ul {
    padding-left: 0;
    margin-left: 0;
    margin-bottom: 0;
    display: inline-block;
    list-style-type: none;
    text-align: right;
}

.header-right-menu ul ul {
    text-align: left;
}

.h-scroll-booking-widget {
    display: block;
    position: fixed;
    top: 80px;
    right: 25px;
    z-index: 2;
    opacity: 0;
    transform: translateX(100px);
    -webkit-transition: 350ms;
    -o-transition: 350ms;
    transition: 350ms;
}

.admin-bar .h-scroll-booking-widget {
    top: 112px;
}

.h-scroll-booking-widget.scroll-widget {
    opacity: 1;
    transform: translateX(0px);
    -webkit-transition: 350ms;
    -o-transition: 350ms;
    transition: 350ms;
}

.btn-booking {
    color: var(--white-color);
    border: solid 0.1rem #800000;
    background-color: #800000;
    height: 40px;
    min-width: 180px;
    text-align: center;
    line-height: 38px;
    font-size: 15px;
    display: inline-block;
    padding: 0px 25px;
    transition: .3s;
    text-transform: uppercase;
    font-family: TimesNewRoman, Times New Roman, Times, Baskerville, Georgia, serif;
    letter-spacing: 1px;
    -webkit-transition: 350ms;
    -o-transition: 350ms;
    transition: 350ms;
}

.btn-booking:hover {
    color: var(--white-color);
    border: solid 0.1rem var(--primary-color);
    background-color: var(--primary-color);
}

.btn-booking:active, .btn-booking:focus {
    box-shadow: 0 0 0 0.25rem rgb(171 143 34 / 50%);
}

.h-sub-booking-widget.h-scroll-booking-widget {
    transform: translateX(0px);
    opacity: 1;
    top: 180px;
}

.admin-bar .h-sub-booking-widget.h-scroll-booking-widget {
    top: 182px;
}

.page-scroll .h-sub-booking-widget.h-scroll-booking-widget {
    top: 110px;
}

.page-scroll-hero .h-sub-booking-widget.h-scroll-booking-widget {
    top: 80px;
}

.admin-bar.page-scroll .h-sub-booking-widget.h-scroll-booking-widget {
    top: 112px
}

.ad-site-header.scroll-header .header-logo img {
    width: 72px;
}

.ad-site-header.scroll-header ul li a {
    color: var(--light-color);
    line-height: 1;
}

.ad-site-header.scroll-header .header-right-menu ul li:first-child a:before {
    background-color: var(--dark-color);
}

.ad-site-header.scroll-header .hamburger-box-inner, .ad-site-header.scroll-header .hamburger-box-inner:before, .ad-site-header.scroll-header .hamburger-box-inner:after {
    background-color: var(--white-color);
}

.ad-site-header.scroll-header .header-language .wpml-ls-legacy-list-horizontal li a:after {
    color: #848484;
}

.ad-site-header.scroll-header .header-language .wpml-ls-legacy-list-horizontal li a .wpml-ls-native {
    color: var(--dark-color);
}

.ad-site-header.scroll-header .header-language .wpml-ls-legacy-list-horizontal li a .wpml-ls-native:before {
    content: '';
    border-bottom: solid 1px var(--dark-color);
}

.ad-site-header.scroll-header .header-right-menu ul li:first-child a:before {
    border-bottom: solid 1px var(--dark-color);
}

.ad-img-ful img {
    width: 100%;
}

/*--------------------------------------------------------------
## heading slider
--------------------------------------------------------------*/
/*ad header slider*/
.ad-main-header-slider {
    min-height: 100vh;
    position: relative;
}

.ad-header-slider {
    position: relative;
}

.ad-header-slider .owl-item .item {
    width: 100%;
    height: 100vh;
    overflow: hidden;
    background-color: #000000;
    position: relative;
}

.ad-main-header-slider::before {
    content: '';
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: #000000;
    opacity: 0;
    position: absolute;
    z-index: 2;
}

.youtube-background {
    background-image: none !important;
}

.item-image {
    width: 100%;
    height: 100%;
    background-position: center;
    background-size: cover;
}

.item-image {
    animation: zoominoutsinglefeatured 15s infinite ease-in-out;
}

@keyframes zoominoutsinglefeatured {
    0% {
        transform: scale(1.1);
    }
    100% {
        transform: scale(1);
    }
}

.ad-header-video-bg {
    height: 100vh;
    position: relative;
}

.ad-header-video-bg iframe {
    transition: opacity 500ms ease-in-out;
    transition-delay: 250ms;
}

.ad-header-video-bg .youtube-background:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    z-index: 2;
    background-color: #161616;
    opacity: 0.25;
    /*background-image: linear-gradient(rgb(0 0 0 / 35%), rgb(0 0 0 / 0%));*/
}

.ad-header-video-bg .youtube-background iframe {
    max-width: inherit !important;
    transition: opacity 500ms ease-in-out;
    transition-delay: 250ms;
}

.ad-header-slider-video-content {
    width: 80%;
    position: absolute;
    text-align: center;
    left: 50%;
    transform: translateX(-50%);
    bottom: 25%;
    z-index: 2;
}

.ad-header-slider-video-content::before {
    content: '';
    width: 1px;
    height: 62px;
    background: var(--light-color);
    position: absolute;
    bottom: -75px;
    animation: fadeInUp;
    animation-duration: 1s;
}

.ad-header-slider-video-content h1 {
    font-family: var(--heading-font);
    color: var(--light-color);
    font-size: 36px;
    margin-bottom: 13px;
    font-weight: 700;
    text-transform: capitalize;
}

.ad-header-slider-video-content p {
    color: var(--light-color);
}

/* scroll down */
.scroll-down {
    left: 15px;
    position: absolute;
    display: inline-flex;
    align-items: center;
    color: var(--white-color);
    bottom: -135px;
}

.scroll-down-icon {
    transform: scale(0.64);
    width: 70px;
    height: 70px;
    border: 2px solid var(--primary-color);
    line-height: 64px;
    border-radius: 50%;
    text-align: center;
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.scroll-down-icon:hover {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
}

.scroll-down-text a,
.scroll-down-text a:hover,
.scroll-down-text a:focus {
    color: var(--white-color);
    text-decoration: none;
}

/* contact */
.slide-contact a {
    right: 15px;
    position: absolute;
    display: inline-flex;
    align-items: center;
    color: var(--white-color);
    bottom: -135px;
}

.slide-contact a:hover, .slide-contact a:focus {
    color: var(--white-color);
    text-decoration: none;
}

.slide-contact-icon {
    transform: scale(0.64);
    width: 70px;
    height: 70px;
    border: 2px solid var(--primary-color);
    line-height: 64px;
    border-radius: 50%;
    text-align: center;
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.slide-contact-icon:hover {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
}

#contact-form .primary-btn {
    line-height: 40px !important;
    width: 100%;
}

/*--------------------------------------------------------------
## page title
--------------------------------------------------------------*/
.page-title-bg {
    height: 420px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    position: relative;
}

.page-title-bg::before {
    content: '';
    top: 0;
    width: 100%;
    height: 100%;
    /* background-image: linear-gradient(rgb(8 50 63 / 85%),rgb(8 50 63 / 56%)); */
    background-image: linear-gradient(rgb(0 0 0 / 63%), rgb(0 0 0 / 12%));
    position: absolute;
}

.page-title-bg h1.page-title span {
    font-size: 35px;
    line-height: 1;
    color: var(--light-color);
    text-align: center;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-transform: capitalize;
    font-weight: 700 !important;
    letter-spacing: 0.45px;
    z-index: 1;
}

/* .page-title-bg h1.page-title span::before {
    content: '';
    width: 26%;
    height: 2px;
    left: 50%;
    transform: translateX(-50%);
    bottom: -15px;
    background-color: var(--primary-color);
    position: absolute;
    z-index: 2;
} */

.page-title-scroll_down {
    position: absolute;
    color: var(--light-color);
    left: 50%;
    bottom: 92px;
    transform: translateX(-50%);
    margin-bottom: 0;
    cursor: pointer;
}

.page-title-scroll_down::before {
    content: '';
    width: 1px;
    height: 50px;
    background: var(--light-color);
    left: 50%;
    bottom: -60px;
    transform: translateX(-50%);
    position: absolute;
}

/*--------------------------------------------------------------
## block item style 1
--------------------------------------------------------------*/
/* .block-item-s1_t {
    animation: fadeInUp;
    animation-duration: 2s;
} */

.block-item_sub_t {
    font-size: 80px;
    font-weight: 700;
    position: absolute;
    top: -54px;
    color: rgb(8 50 63 / 8%);
}

.block-item-s1_c {
    margin-bottom: 28px;
}

.block-item-s1_img_watermark {
    position: relative;
}

.block-item-s1_img_watermark::before {
    content: '';
    width: 100%;
    height: 100%;
    background-color: rgb(34 48 60 / 5%);
    background-image: url('assets/img/bg-leaf.png');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: bottom right;
    transform: rotateY(-180deg);
    top: 12%;
    left: -14%;
    position: absolute;
    z-index: -1;
}

.block-item-s1_img1,
.block-item-s1_img2 {
    position: relative;
    overflow: hidden;
}

.block-item-s1_img1::before,
.block-item-s1_img2::before {
    content: '';
    width: 100%;
    height: 100%;
    background-color: transparent;
    top: 0;
    left: 0;
    opacity: 0.5;
    position: absolute;
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
    z-index: 1;
}

.block-item-s1_img1:hover::before,
.block-item-s1_img2:hover::before {
    opacity: 1;
}

.block-item-s1_img1 img,
.block-item-s1_img2 img {
    opacity: 1;
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.block-item-s1_img1:hover img,
.block-item-s1_img2:hover img {
    opacity: 0.74;
}

.block-item-s1_icon {
    top: 5%;
    right: 5%;
    position: absolute;
    z-index: 2;
    opacity: 0;
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.block-item-s1_img1:hover .block-item-s1_icon,
.block-item-s1_img2:hover .block-item-s1_icon {
    opacity: 1;
}

/*--------------------------------------------------------------
## block item style 2
--------------------------------------------------------------*/
.block-item-s2_img {
    position: relative;
    overflow: hidden;
}

.block-item-s2_img::before {
    content: '';
    width: 100%;
    height: 100%;
    /*background-image: linear-gradient(rgb(0 0 0 / 12%), rgb(8 50 63));*/
    background: hsla(200, 100%, 13.5%, 0.74);
    top: 0;
    left: 0;
    opacity: 0.25;
    position: absolute;
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
    z-index: 1;
}

.block-item-s2_img:hover::before {
    opacity: 1;
}

.block-item-s2_img img {
    transform: scale(1);
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.block-item-s2_img:hover img {
    transform: scale(1.025);
}

.block-item-s2_c p {
    margin-bottom: 28px;
}

.block-item-s2_title {
    width: 100%;
    color: var(--white-color);
    bottom: 0;
    text-align: left;
    padding: 35px 27px;
    position: absolute;
    transform: scale(1);
    z-index: 1;
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.block-item-s2_title span::before {
    content: '';
    left: 27px;
    background: var(--light-color);
    position: absolute;
    height: 2px;
    width: 14%;
    bottom: 24px;
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.block-item-s2_img:hover .block-item-s2_title span::before {
    width: 28%;
}

.block-item-s2_icon {
    top: 5%;
    right: 5%;
    position: absolute;
    z-index: 2;
    opacity: 0;
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.block-item-s2_img:hover .block-item-s2_icon {
    opacity: 1;
}

/* item carousel */
.img_left .owl-nav {
    margin-top: 0 !important;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: -60px;
}

.img_right .owl-nav {
    margin-top: 0 !important;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: -60px;
}

.block-item-s2 button.owl-prev:hover,
.block-item-s2 button.owl-next:hover,
.block-item-s2 button.owl-prev,
.block-item-s2 button.owl-next {
    width: 50px;
    height: 50px;
    line-height: 48px !important;
    text-align: center;
    color: var(--secondary-color) !important;
    border-radius: 50px !important;
    margin: 2px !important;
    background-color: var(--white-color) !important;
    border: 2px solid var(--secondary-color) !important;
    display: block !important;
}

.block-item-s2 button.owl-prev:hover,
.block-item-s2 button.owl-next:hover {
    color: var(--white-color) !important;
    background-color: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
}

.block-item-s2 button.owl-prev:hover span,
.block-item-s2 button.owl-next:hover span {
    color: var(--white-color) !important;
}

/*--------------------------------------------------------------
## parallax image
--------------------------------------------------------------*/
.parallax-img {
    min-height: 380px;
    background: transparent;
    position: relative;
}

.parallax-img::before {
    content: '';
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgb(0 47 71 / 86%);
    position: absolute;
    z-index: -1;
}

.parallax-img::after {
    content: '';
    width: 11.5%;
    /*height: 150%;*/
    top: -5%;
    right: 0;
    background: var(--white-color);
    position: absolute;
    z-index: -1;
}

.parallax-img h3 {
    font-size: 28px;
    font-weight: 400;
    text-transform: capitalize;
    margin-bottom: 2rem !important;
}

.parallax-img h3, .parallax-img p {
    color: var(--light-color);
}

/*--------------------------------------------------------------
## carousel image
--------------------------------------------------------------*/
.carousel-image-wrap .owl-nav {
    margin: 0 !important;
    width: 100%;
    top: 50%;
    position: absolute;
    transform: translateY(-50%);
}

.carousel-image-wrap .owl-nav .owl-prev,
.carousel-image-wrap .owl-nav .owl-next {
    color: var(--white-color) !important;
    border: 2px solid var(--white-color) !important;
    width: 50px;
    height: 50px;
    line-height: 50px !important;
    text-align: center;
    border-radius: 50px !important;
    transform: translateY(-50%);
    opacity: 0.87;
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.carousel-image-wrap .owl-nav .owl-prev:hover,
.carousel-image-wrap .owl-nav .owl-next:hover {
    background: var(--primary-color);
    border-color: var(--primary-color) !important;
}

.carousel-image-wrap .owl-nav .owl-prev {
    left: 10px;
    margin: 0 !important;
    position: absolute;
}

.carousel-image-wrap .owl-nav .owl-next {
    right: 10px;
    margin: 0 !important;
    position: absolute;
}

p.carouse-image-sub_title {
    margin-bottom: 0;
}

.carousel-image_img {
    position: relative;
    overflow: hidden;
}

.carousel-image_img img {
    transform: scale(1);
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.carousel-image_img:hover img {
    transform: scale(1.1);
}

.carousel-image_img::before {
    content: '';
    width: 100%;
    height: 100%;
    /*background-image: linear-gradient(rgba(0, 79, 146, 0.74), rgba(8, 50, 63, 1));*/
    background: hsla(200, 100%, 13.5%, 0.74);
    top: 0;
    left: 0;
    opacity: 0.25;
    position: absolute;
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
    z-index: 1;
}

.carousel-image_img:hover::before {
    opacity: 1;
}

.carousel-image_img_title {
    width: 100%;
    color: var(--white-color);
    bottom: 0;
    padding: 35px 27px;
    position: absolute;
    transform: scale(1);
    z-index: 1;
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.carousel-image_img_title span::before {
    content: '';
    left: 27px;
    background: var(--light-color);
    position: absolute;
    height: 2px;
    width: 14%;
    bottom: 24px;
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.carousel-image_img:hover .carousel-image_img_title span::before {
    width: 28%;
}

.carousel-image_icon {
    top: 5%;
    right: 5%;
    position: absolute;
    z-index: 2;
    opacity: 0;
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.carousel-image_img:hover .carousel-image_icon {
    opacity: 1;
}

/*--------------------------------------------------------------
## room item
--------------------------------------------------------------*/

.section-card-room {
    padding-top: 70px;
    position: relative;
    overflow: hidden;
}

.section-card-room .room-item {
    position: relative;
}

.section-card-room .room-item::before {
    content: "";
    position: absolute;
    right: -70px;
    bottom: 0;
    width: 90%;
    height: 360px;
    background-color: #eff1ed;
}

.section-card-room .room-desc .meta li {
    list-style: none;
    display: inline-block;
    margin-right: 15px;
}

.room-item {
    background: var(--white-color);
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.room-desc {
    padding: 35px;
    background-color: var(--white-color);
}

.room-desc h3, .room-desc h3 span {
    font-weight: 700 !important;
    font-size: 24px !important;
    text-transform: capitalize;
}

.room-img {
    position: relative;
    overflow: hidden;
}

.room-item:hover .room-img::before {
    opacity: 1;
}

.room-item img {
    transform: scale(1);
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.room-item:hover img {
    transform: scale(1.1);
}

.room-img_icon {
    top: 5%;
    right: 5%;
    position: absolute;
    z-index: 2;
    opacity: 0;
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.room-item:hover .room-img_icon {
    opacity: 1;
}

.room-img_t {
    position: absolute;
    bottom: 0;
    color: var(--white-color);
    padding: 33px 30px;
    width: 100%;
    z-index: 1;
    font-weight: 700;
}

.room-img_t span {
    position: relative;
}

.room-img_t span::before {
    content: '';
    width: 50%;
    height: 2px;
    background: var(--white-color);
    position: absolute;
    bottom: -11px;
    z-index: -1;
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.room-item:hover .room-img_t span::before {
    width: 100%;
}

/*room content modal*/
.modal-content {
    display: block !important;
}

/*.vn-room-modal .modal-xl {*/
/*    max-width: 1200px;*/
/*    margin-top: 2.7rem;*/
/*}*/

.vn-room-modal .modal-content {
    border-radius: 0 !important;
}

.vn-room-modal .close {
    position: absolute;
    top: -30px;
    right: -30px;
    border: none;
    background-color: transparent;
    padding: 0;
    z-index: 30;
}

.vn-room-modal .close i {
    font-size: 15px;
    color: var(--white-color);
    background-color: var(--secondary-color);
    width: 30px;
    height: 30px;
    line-height: 31px !important;
}

.room-content_img {
    background-color: var(--white-color);
    padding: 20px;
    border: 1px solid #e1e6e8;
    position: relative;
    z-index: 1;
    margin: 15px;
}

.room-content_img::after, .room-content_img::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--white-color);
    border: 1px solid #e1e6e8;
    z-index: -2;
}

.room-content_img::before {
    transform: rotate(-2deg);
}

.room-content_img::after {
    transform: rotate(2deg);
}

.room-content_brief {
    padding: 30px 45px;
}

.room-content_brief h3, .room-content_brief h3 span {
    font-weight: 700 !important;
    font-size: 24px !important;
    text-transform: capitalize;
}

.room-content_brief .room-content_p {
    margin: 20px 0 15px;
}

.room-content_brief .room-content_p span {
    color: var(--primary-color);
    font-size: 28px;
    font-weight: 700;
}

.room-content_brief .room-content_c {
    margin-bottom: 20px;
}

.room-gallery-slider {
    overflow: hidden !important;
    display: block !important;
}

.room-gallery-slider_icon {
    top: 5%;
    right: 5%;
    position: absolute;
    z-index: 2;
    opacity: 0;
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.room-gallery-slider_img:hover .room-gallery-slider_icon {
    opacity: 1;
}

.room-content .room-info {
    margin-top: 15px;
    padding: 24px;
    border: 1px solid #e1e6e8;
    background-color: rgba(0, 56, 81, 0.06);
    border-radius: 0;
}

.room-content .room-info h3 {
    text-align: center;
    margin-bottom: 32px !important;
}

.room-content .room-info h3 span {
    font-weight: 700 !important;
    font-size: 22px !important;
    text-transform: capitalize;
    text-align: center;
    margin-top: 15px;
    position: relative;
}

.room-content .room-info h3 span::before {
    content: '';
    width: 34%;
    height: 2px;
    left: 50%;
    transform: translateX(-50%);
    background-color: var(--primary-color);
    position: absolute;
    bottom: -10px;
}

.room-content .room-info h4 {
    text-align: center;
    font-size: 15px;
    font-weight: 400 !important;
    margin-bottom: 20px;
}

.room-content .room-info .room_amenity ul {
    column-count: 3;
    list-style: none;
    padding-left: 20px;
}

.room-content .room-info .room_amenity ul li {
    line-height: 27px;
    list-style: none;
    position: relative;
}

.room-content .room-info .room_amenity ul li::before {
    content: "\f00c";
    font-weight: 700;
    font-family: "Font Awesome 5 Pro";
    position: absolute;
    left: -20px;
    top: 0px;
    color: var(--primary-color);
}

.room-content .room-gallery {
    padding: 15px;
    border: 1px solid var(--secondary-color);
    margin-top: 15px;
    background: #eee;
}

.room-content .room-gallery h3 {
    text-align: center;
    margin-bottom: 26px !important;
}

.room-content .room-gallery h3 span {
    font-weight: 400 !important;
    font-size: 22px !important;
    text-transform: capitalize;
    text-align: center;
    margin-top: 15px;
    position: relative;
}

.room-content .room-gallery h3 span::before {
    content: '';
    width: 34%;
    height: 2px;
    left: 50%;
    transform: translateX(-50%);
    background-color: var(--primary-color);
    position: absolute;
    bottom: -10px;
}

/*room gallery slider navigation*/
room-gallery-slider .owl-nav {
    margin-top: 0 !important;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: -60px;
}

.room-gallery-slider button.owl-prev:hover,
.room-gallery-slider button.owl-next:hover,
.room-gallery-slider button.owl-prev,
.room-gallery-slider button.owl-next {
    width: 50px;
    height: 50px;
    line-height: 50px !important;
    text-align: center;
    color: var(--light-color) !important;
    border-radius: 0 !important;
    margin: 2px !important;
    background-color: var(--secondary-color) !important;
    border: 1px solid var(--secondary-color) !important;
    display: inline-block !important;
}

.room-gallery-slider button.owl-prev:hover,
.room-gallery-slider button.owl-next:hover {
    background-color: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
}

.room-gallery-slider button.owl-prev:hover span,
.room-gallery-sliderbutton.owl-next:hover span {
    color: var(--white-color) !important;
}

/*end room gallery slider navigation*/

/*--------------------------------------------------------------
## dining item
--------------------------------------------------------------*/
.vn-dining-modal .modal-content {
    border-radius: 0 !important;
}

.vn-dining-modal .close {
    position: absolute;
    top: 0;
    right: 0;
    border: none;
    background-color: transparent;
    padding: 0;
    z-index: 30;
}

.vn-dining-modal .close i {
    font-size: 15px;
    color: var(--white-color);
    background-color: var(--secondary-color);
    width: 30px;
    height: 30px;
    line-height: 31px !important;
}

.dining-item {
    padding-top: 35px;
    padding-bottom: 35px;
    background-color: var(--white-color);
}

.dining-item_img {
    position: relative;
}

.dining-item_img::before {
    content: '';
    width: 100%;
    height: 100%;
    border: 1px solid var(--secondary-color);
    position: absolute;
    top: 15px;
    left: 15px;
    z-index: 1;
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.dining-item_brief {
    padding: 45px;
    background-color: var(--white-color);
}

.dining-item_t h3 {
    line-height: 1;
}

.dining-item_t h3 span {
    font-weight: 700 !important;
    font-size: 26px !important;
    text-transform: capitalize;
}

.dining-item_c {
    margin-bottom: 20px;
}

.dining-content_img {
    background-color: var(--white-color);
    padding: 20px;
    border: 1px solid var(--secondary-color);
    position: relative;
    z-index: 1;
    margin: 15px;
}

.dining-content_brief {
    padding: 30px 45px;
}

/*--------------------------------------------------------------
## activity item
--------------------------------------------------------------*/
.activity-item {
    position: relative;
    overflow: hidden;
}

.activity-item_inner::after {
    content: '';
    position: absolute;
    display: block;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background: rgba(0, 0, 0, 0.2);
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.activity-item:hover .activity-item_inner::after {
    background: hsla(200, 100%, 13.5%, 0.74);
}

.activity-item .activity-item_img img {
    transform: scale(1);
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.activity-item:hover .activity-item_img img {
    transform: scale(1.025);
}

.activity-item_brief {
    position: absolute;
    z-index: 2;
    bottom: 0;
    padding: 23px 34px;
    width: 100%;
    line-height: 1;
    background-image: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, .8));
}

.activity-item_t h3 {
    color: var(--white-color);
    line-height: 17px !important;
    margin-bottom: 0 !important;
}

.activity-item_t h3 span {
    font-weight: 400 !important;
    font-size: 13px !important;
    line-height: 1;
    text-transform: capitalize;
    text-align: left;
    position: relative;
}

.activity-item_t h3 span::before {
    content: '';
    width: 26px;
    height: 1px;
    background: var(--white-color);
    position: absolute;
    bottom: 50%;
    left: -35px;
}

.activity-item_img img {
    height: 284px;
    object-fit: cover;
}

.activity-item_icon {
    top: 5%;
    right: 5%;
    position: absolute;
    z-index: 2;
    opacity: 0;
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.activity-item:hover .activity-item_icon {
    opacity: 1;
}

/*--------------------------------------------------------------
## package item
--------------------------------------------------------------*/
.vn-package-modal .modal-content {
    border-radius: 0 !important;
}

.vn-package-modal .close {
    position: absolute;
    top: -30px;
    right: -30px;
    border: none;
    background-color: transparent;
    padding: 0;
    z-index: 30;
}

.vn-package-modal .close i {
    font-size: 15px;
    color: var(--white-color);
    background-color: var(--secondary-color);
    width: 30px;
    height: 30px;
    line-height: 31px !important;
}

.package-item {
    padding-top: 70px;
    padding-bottom: 70px;
    position: relative;
}

.package-item::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: #eff1ed;
    width: 45%;
    height: 360px;
    z-index: -1;
}

.package-item_img {
    position: relative;
}

.package-item_brief {
    padding: 45px;
    background-color: var(--white-color);
}

.package-item_inner {
    padding-left: 66px;
    position: relative;
}

.package-item_inner::before {
    content: "";
    position: absolute;
    top: 10px;
    left: 0;
    width: 50px;
    height: 1px;
    border-top: 1px solid #515151;
}

.package-item_t h3 {
    line-height: 1;
}

.package-item_t h3 span {
    font-weight: 700 !important;
    font-size: 26px !important;
    text-transform: capitalize;
}

.package-item_c {
    margin-bottom: 20px;
    text-align: justify;
}

.package-content_img {
    background-color: var(--white-color);
    padding: 20px;
    border: 1px solid var(--secondary-color);
    position: relative;
    z-index: 1;
    margin: 15px;
}

.package-content_brief {
    padding: 30px 45px;
}

/*--------------------------------------------------------------
## body
--------------------------------------------------------------*/
.site-content-inner {
    border: 0;
}

.primary-btn {
    display: inline-block;
    background-color: var(--secondary-color);
    color: var(--light-color);
    font-size: 12px;
    font-weight: 500;
    padding: 0 40px;
    text-transform: uppercase;
    height: 47px;
    line-height: 47px !important;
    text-align: center;
    border: 1px solid var(--secondary-color);
    border-radius: 1px;
    text-decoration: none;
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.primary-btn.transparent-btn {
    background-color: transparent;
    border: 1px solid var(--white-color);
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.primary-btn.transparent-btn:hover, .primary-btn.transparent-btn:focus,
.primary-btn:hover, .primary-btn:focus {
    color: var(--white-color) !important;
    border-color: var(--primary-color) !important;
    text-decoration: none;
    background-color: var(--primary-color) !important;
}

.primary-btn.transparent-btn-bordered {
    color: var(--secondary-color);
    background-color: transparent;
    border: 1px solid var(--secondary-color);
    outline: none;
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.primary-btn.transparent-btn-bordered:hover {
    background-color: var(--secondary-color);
    color: var(--white-color);
}

.primary-btn.text-only-btn {
    padding: 0;
    background: transparent;
    border: 0;
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.primary-btn.text-only-btn:hover {
    color: var(--primary-color);
}

.primary-btn svg {
    transform: translate(5px, -1px);
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

.primary-btn:hover svg {
    transform: translate(15px,-1px);
}

.section-bg {
    position: relative;
    overflow: hidden;
}

[type=button]:focus, [type=button]:hover, [type=submit]:focus, [type=submit]:hover, button:focus, button:hover {
    background-color: transparent;
}

.scrollDownBtn {
    cursor: pointer;
}

.slbCaption {
    font-size: 15px !important;
    letter-spacing: 0.5 !important;
    padding-top: 0 !important;
    padding-bottom: 20px !important;
}

/*--------------------------------------------------------------
## contact page
--------------------------------------------------------------*/

h4.contact-details {
    margin-bottom: 10px;
    font-size: 15px;
    font-weight: 700;
    margin-top: 5px;
    text-transform: capitalize;
    letter-spacing: 0;
}

h4.contact-details li {
    line-height: 1.7;
    font-size: 1rem;
}

ul.contact-details li a {
    padding: 0;
    font-size: 1rem;
    color: rgba(43, 45, 47, 0.94);
}

#contact-form, #comment-form {
    margin-top: 0;
}

#contact-form input[type="text"], #contact-form input[type="email"], #contact-form input[type="tel"], #contact-form input[type="url"], #contact-form input[type="date"], #contact-form input[type="number"], #contact-form select, #contact-form textarea, #comment-form input[type="text"], #comment-form input[type="email"], #comment-form textarea {
    font-weight: 400;
    font-size: 15px;
    color: rgba(43, 45, 47, 0.94);
    border: 1px solid #777;
    background: #fff;
    padding: 0 15px;
    height: 42px;
    border-radius: 6px;
    margin-bottom: 5px;
}

label {
    font-size: 1rem;
}

.contact-widget-wrp h2 {
    font-size: 24px !important;
    font-weight: 700 !important;
    color: var(--secondary-color);
    margin-bottom: 15px;
}

.contact-widget-wrp p {
    padding-bottom: 0;
}

.contact-widget-wrp section {
    padding-top: 15px;
    padding-bottom: 15px;
}

.contact-widget-wrp section h3, .contact-widget-wrp section p {
    margin-bottom: 0 !important;
}

.contact-widget-wrp section h3 {
    font-size: 17px !important;
    font-weight: 700 !important;
}

/*--------------------------------------------------------------
## footer
--------------------------------------------------------------*/
#site-footer {
    line-height: 1.87;
    padding-top: 70px;
    padding-bottom: 80px;
    position: relative;
}

#site-footer::before {
    content: '';
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: var(--secondary-color);
    opacity: 1;
    position: absolute;
    z-index: -2;
}

#site-footer::after {
    content: '';
    width: 100%;
    height: 80%;
    position: absolute;
    right: 0;
    bottom: 0;
    opacity: 0.045;
    background-image: url(assets/img/palm-leave-bg-1.png);
    background-size: contain;
    background-position: center right;
    background-repeat: no-repeat;
    z-index: -1;
}

.dark-footer {
    color: var(--light-color);
}

.white-footer {
    color: var(--dark-color);
}

#site-footer h3 {
    margin-bottom: 12px !important;
}

#site-footer h3 span {
    color: var(--light-color);
    font-size: 21px !important;
    text-transform: capitalize;
    font-weight: 700 !important;
    font-family: var(--body-font);
}

#site-footer p {
    font-size: inherit;
    color: var(--light-color);
    margin-bottom: 0;
    line-height: 30px !important;
}

#site-footer ul {
    margin-bottom: 0;
}

#site-footer ul li {
    text-align: left;
    width: 49%;
    display: inline-block;
    list-style: none;
    line-height: 30px !important;
}

#site-footer ul li a {
    font-size: inherit;
    color: var(--light-color);
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

#site-footer ul li a:hover,
#site-footer ul li a:focus {
    color: var(--primary-color);
    text-decoration: none;
}

#site-footer u.social-media {
    display: inline-flex;
    margin-bottom: 12px;
}

#site-footer u.social-media li {
    list-style: none;
    margin-top: 3px;
    margin-right: 5px;
    width: 50px;
    height: 50px;
    text-align: center;
    line-height: 47px !important;
    border: 1px solid var(--white-color);
    background: var(--secondary-color);
    border-radius: 50px;
    -webkit-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    -moz-transition: all .3s cubic-bezier(.29, .22, .11, 1);
    transition: all .3s cubic-bezier(.29, .22, .11, 1);
}

#site-footer u.social-media li:hover {
    background-color: var(--primary-color);
    border: 1px solid var(--primary-color);
}

#site-footer u.social-media li .fab {
    color: var(--light-color);
    font-size: 22px;
}

#site-footer u.social-media li svg {
    transform: scale(0.92);
}

#site-footer .copyright a {
    color: var(--primary-color);
    font-size: 15px;
}

#site-footer .copyright,
#site-footer .copyright p,
#site-footer .copyright div {
    font-size: inherit !important;
}

/*--------------------------------------------------------------
## media breakpoints - responsive
>> 575.98px : Extra small devices (portrait phones, less than 576px)
>> 767.98px : Small devices (landscape phones, less than 768px)
>> 991.98px : Medium devices (tablets, less than 992px)
>> 1199.98px: Large devices (desktops, less than 1200px)
--------------------------------------------------------------*/

@media (max-width: 575.98px) {
    html {
        scroll-padding-top: 60px;
    }

    .ad-site-header .container-fluid {
        padding-left: 15px;
        padding-right: 15px;
    }

    .ad-site-header.header-logo img {
        width: 82px;
    }

    .ad-site-header.scroll-header .header-logo img {
        width: 53px;
    }

    .header-side-menu {
        min-width: 80%;
        padding: 25px 15px !important;
        display: block;
        height: 100vh;
    }

    .header-side-menu ul li a {
        font-size: 15px;
        padding: 17px 15px 16px !important;
        line-height: 1 !important;
        text-transform: capitalize;
        border-radius: 1px;
    }

    .header-side-menu ul li.current-menu-item a:before, .header-side-menu ul li:hover a:before {
        top: 19px;
        left: -28px;
    }

    .header-column {
        padding-top: 0px;
        padding-bottom: 0px;
    }

    .header-col-center {
        width: 50%;
    }

    .header-col-left, .header-col-right {
        width: 25%;
    }

    .hamburger-box-label {
        display: none;
    }

    .header-col-right a i {
        font-size: 24px;
        line-height: 50px;
    }

    .header-col-right a label {
        display: none;
    }

    .hamburger-box {
        top: 5px;
    }

    .ad-header-slider-video-content h1 {
        font-size: 24px;
    }

    .ad-header-slider-video-content {
        bottom: 50%;
    }

    .scroll-down {
        left: 10px;
    }

    .slide-contact a {
        right: 10px;
    }

    .dining-content_brief {
        padding: 15px;
    }

    .block-item-s1_img_watermark::before {
        right: -3%;
    }

    #site-footer::after {
        width: 0;
    }
}

@media (max-width: 767.98px) {
    *, body, p {
        font-size: 13px;
    }

    .page-title-bg h1.page-title span {
        font-size: 28px;
        width: 85%;
    }

    .room-desc h3, .room-desc h3 span {
        font-size: 21px;
    }

    .room-desc {
        padding: 22px;
    }

    .align-bottom-btn {
        position: relative;
        transform: translate(0);
        bottom: 0;
        left: 0;
        margin-top: 15px;
        width: 100% !important;
    }

    .dining-item_img::before {
        top: 6px;
        left: 6px;
    }

    .package-item {
        padding: 0;
    }

    .package-item::before {
        display: none;
    }

    .package-item_brief {
        padding: 30px 0;
    }

    .package-item_brief:last-child {
        padding: 30px 0 70px;
    }

    .primary-btn.transparent-btn-bordered {
        margin-top: 0;
        width: 100% !important;
        padding: 0;
        height: 45px !important;
        line-height: 45px !important;
    }

    .section-card-room {
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .section-card-room::before {
        right: unset;
        left: -15px;
    }

    .primary-btn, .primary-btn:focus {
        font-size: 12px;
    }

    .vn-room-modal .close {
        top: 0;
        right: 8px;
    }

    .room-content_brief {
        padding: 15px;
    }

    .room-content .room-info .room_amenity ul {
        column-count: 1;
    }
}

@media (max-width: 991.98px) {
    .h-mobile-navbar {
        display: block;
    }

    .h-desktop-navbar {
        display: none;
    }

    .ad-site-header ul li.current_page_item .arrow,
    .ad-site-header ul li:hover .arrow {
        color: var(--white-color);
    }

    .ad-site-header ul li .arrow {
        display: block;
        position: absolute;
        top: 0;
        right: 0;
        font-size: 15px;
        padding: 15px;
        transform: rotate(0deg);
        transition: all 0.3s;
    }

    .ad-site-header ul li .arrow.on {
        transform: rotate(-180deg);
        transition: 0.3s;
    }

    .ad-site-header ul li .sub-menu-wrap {
        position: relative;
        opacity: 1;
        visibility: visible;
        padding: 0 !important;

    }

    .ad-site-header ul li .sub-menu {
        display: none;
        padding-left: 20px;
    }

    .ad-site-header ul li:hover .sub-menu-wrap {
        position: relative;
        background-color: transparent;
        opacity: 1;
        visibility: inherit;
    }

    .m-header-right-booking {
        display: block;
        text-align: center;
    }

    .sub-menu-wrap-inner {
        background-color: transparent;
        box-shadow: 0px 0px 0px 0px rgb(70 70 70 / 0%);
    }

    .header-side-menu ul li.current-menu-item ul, .header-side-menu ul li:hover ul {
        background-color: transparent;
    }

    .header-side-menu ul li.current-menu-item ul a, .header-side-menu ul li:hover ul a {
        background-color: transparent !important;
        color: var(--dark-color) !important;
    }

    .ad-site-header.scroll-header-body .header-side-menu,
    .ad-site-header.scroll-header-body .menu-overlay {
        margin-top: 32px;
    }

    .section-bg::before {
        opacity: 0;
    }

    .block-item_sub_t {
        display: none;
    }

    .ad-header-slider-video-content {
        width: 90%;
    }

    .activity-item_t h3 span {
        font-weight: 400 !important;
        font-size: 17px !important;
    }

    .room-content .room-info .room_amenity ul {
        column-count: 1;
    }

    .dining-item_brief {
        padding: 15px;
        padding-bottom: 0;
    }

    .parallax-img {
        height: 435px;
    }

    .parallax-img::before {
        z-index: 0;
    }
}

@media (max-width: 1199.98px) {
}

@media (max-width: 1399.98px) {
}