:root {
    --green: #003828;
    --golden: #e7c666;
    --dark-golden: #C2822A;
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}
a {
  color: inherit;
  text-decoration: none;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}
body {
  line-height: 1;
}
ol,
ul {
  list-style: none;
}
blockquote,
q {
  quotes: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
* {
  box-sizing: border-box;
}
.user-content ul {
  list-style: disc;
  margin-left: 24px;
}
.user-content ul ul {
  margin-left: 20px;
  margin-bottom: 0;
}
.user-content ul li {
  margin-bottom: 0;
}
.user-content ol {
  margin-left: 24px;
  list-style: decimal;
}
.user-content ol ol {
  list-style: lower-latin;
  margin-bottom: 0;
}
.user-content ul ul,
.view ol ol {
  margin-bottom: 0;
}
.user-content li li {
  font-size: 1em;
}
table {
  width: 100%;
  border: none;
  border-collapse: collapse;
  border-spacing: 0;
}
table td,
table th {
  vertical-align: middle;
}
.normal-form input[type="text"],
.normal-form input[type="password"],
.normal-form input[type="datetime"],
.normal-form input[type="datetime-local"],
.normal-form input[type="date"],
.normal-form input[type="month"],
.normal-form input[type="time"],
.normal-form input[type="week"],
.normal-form input[type="number"],
.normal-form input[type="email"],
.normal-form input[type="url"],
.normal-form input[type="search"],
.normal-form input[type="tel"],
.normal-form input[type="color"],
.normal-form textarea,
.normal-form select {
  -webkit-appearance: none;
}
.normal-form textarea {
  overflow: auto;
}
.normal-form input[type="text"]:focus,
.normal-form input[type="password"]:focus,
.normal-form input[type="datetime"]:focus,
.normal-form input[type="datetime-local"]:focus,
.normal-form input[type="date"]:focus,
.normal-form input[type="month"]:focus,
.normal-form input[type="time"]:focus,
.normal-form input[type="week"]:focus,
.normal-form input[type="number"]:focus,
.normal-form input[type="email"]:focus,
.normal-form input[type="url"]:focus,
.normal-form input[type="search"]:focus,
.normal-form input[type="tel"]:focus,
.normal-form input[type="color"]:focus,
.normal-form textarea:focus,
.normal-form select:focus {
  outline: none;
}
strong,
b {
  font-weight: 700;
}
em {
  font-style: italic;
}
sup {
  vertical-align: text-top;
  font-size: 75%;
}
sub {
  vertical-align: bottom;
  font-size: 75%;
}
blockquote {
  font-style: italic;
}
.user-content ul {
  list-style: disc;
  margin-left: 24px;
}
.user-content ul ul {
  margin-left: 20px;
  margin-bottom: 0;
}
.user-content ul li {
  margin-bottom: 0;
}
.user-content ol {
  margin-left: 24px;
  list-style: decimal;
}
.user-content ol ol {
  list-style: lower-latin;
  margin-bottom: 0;
}
.user-content ul ul,
.view ol ol {
  margin-bottom: 0;
}
.user-content li li {
  font-size: 1em;
}
table {
  width: 100%;
  border: none;
  border-collapse: collapse;
  border-spacing: 0;
}
table td,
table th {
  vertical-align: middle;
}
a:not([href]):not([tabindex]):hover,
a:not([href]):not([tabindex]):focus {
  color: inherit;
  text-decoration: none;
}
a:not([href]):not([tabindex]):focus {
  outline: 0;
}

@font-face {
  font-family: 'Montserrat';
  src: url('../fonts/Montserrat-Black.woff2') format('woff2'),
      url('../fonts/Montserrat-Black.woff') format('woff');
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Montserrat';
  src: url('../fonts/Montserrat-ExtraBold.woff2') format('woff2'),
      url('../fonts/Montserrat-ExtraBold.woff') format('woff');
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Montserrat';
  src: url('../fonts/Montserrat-ExtraLight.woff2') format('woff2'),
      url('../fonts/Montserrat-ExtraLight.woff') format('woff');
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Montserrat';
  src: url('../fonts/Montserrat-Bold.woff2') format('woff2'),
      url('../fonts/Montserrat-Bold.woff') format('woff');
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Montserrat';
  src: url('../fonts/Montserrat-SemiBold.woff2') format('woff2'),
      url('../fonts/Montserrat-SemiBold.woff') format('woff');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Montserrat';
  src: url('../fonts/Montserrat-Light.woff2') format('woff2'),
      url('../fonts/Montserrat-Light.woff') format('woff');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Montserrat';
  src: url('../fonts/Montserrat-Medium.woff2') format('woff2'),
      url('../fonts/Montserrat-Medium.woff') format('woff');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Montserrat';
  src: url('../fonts/Montserrat-Regular.woff2') format('woff2'),
      url('../fonts/Montserrat-Regular.woff') format('woff');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Montserrat';
  src: url('../fonts/Montserrat-Thin.woff2') format('woff2'),
      url('../fonts/Montserrat-Thin.woff') format('woff');
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}


@font-face {
  font-family: 'Nunito';
  src: url('../fonts/Nunito-ExtraBold.woff2') format('woff2'),
      url('../fonts/Nunito-ExtraBold.woff') format('woff');
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Nunito';
  src: url('../fonts/Nunito-ExtraLight.woff2') format('woff2'),
      url('../fonts/Nunito-ExtraLight.woff') format('woff');
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Nunito';
  src: url('../fonts/Nunito-Bold.woff2') format('woff2'),
      url('../fonts/Nunito-Bold.woff') format('woff');
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Nunito';
  src: url('../fonts/Nunito-Black.woff2') format('woff2'),
      url('../fonts/Nunito-Black.woff') format('woff');
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Nunito';
  src: url('../fonts/Nunito-Light.woff2') format('woff2'),
      url('../fonts/Nunito-Light.woff') format('woff');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Nunito';
  src: url('../fonts/Nunito-Regular.woff2') format('woff2'),
      url('../fonts/Nunito-Regular.woff') format('woff');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Nunito';
  src: url('../fonts/Nunito-SemiBold.woff2') format('woff2'),
      url('../fonts/Nunito-SemiBold.woff') format('woff');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Nunito';
  src: url('../fonts/Nunito-Medium.woff2') format('woff2'),
      url('../fonts/Nunito-Medium.woff') format('woff');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

body {
  font-size: 0.2rem;
  line-height: 0.24rem;
  font-weight: 400;
  overflow-x: hidden;
  position: relative;
  display: block;
  color: #292929;
  overflow-y: visible;
}
html {
  font-size: 6.944vw;
}
@media screen and (min-width: 1440px) {
  html {
    font-size: 100px;
  }
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  html {
    font-size: 23.529vw;
  }
}
#smooth-wrapper.active {
  inset: 0;
  width: 100%;
  height: 100%;
  position: fixed;
  overflow: hidden;
}
#smooth-content {
  overflow: hidden !important;
  background-color: #fff;
}
.barba-main-frame > main {
  position: relative;
  z-index: 10;
  width: 100%;
}
.barba-main-frame > main:not(:first-child) {
  z-index: 0;
}
.scale-hero-reveal {
  transform: scale(1.2);
}
.barba-main-frame main + main .row-skew-reveal,
.barba-main-frame main + main .fade-top-reveal {
  opacity: 0;
}
.hide-sections section:not(:first-child),
.hide-sections .half-color-frame:not(:first-child) {
  opacity: 0;
}
section {
  transition: opacity 400ms ease;
  overflow: hidden;
}
.block {
  display: block;
}
.relative {
  position: relative;
}
.overflow-hidden {
  overflow: hidden;
}
.overflow-visible {
  overflow: visible;
}
.contain {
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: contain;
}
.cover {
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
}
.m-negative {
  margin: -1px 0;
}
.split-lines {
  padding: 0.1em 0;
  margin: -0.1em 0;
  overflow: hidden;
}
.split-lines span {
  display: block;
}
.stagger-elem {
  opacity: 0;
}
.container-1 {
  width: 100%;
  max-width: 11.8rem;
  margin: auto;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .container-1 {
    max-width: 3.85rem;
  }
}
.container-2 {
  width: 100%;
  max-width: 9.8rem;
  margin: auto;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .container-2 {
    max-width: 3.85rem;
  }
}

.font-travels {
  font-family: 'Montserrat';
}

.font-hoves {
  font-family: 'Nunito';
}

.text-uppercase {
  text-transform: uppercase;
}

.fw-100 {
  font-weight: 100;
}
.fw-300 {
  font-weight: 300;
}
.fw-400 {
  font-weight: 400;
}
.fw-500 {
  font-weight: 500;
}
.title-4xl {
  font-size: 1.8rem;
  line-height: 2.52rem;
  letter-spacing: 0em;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .title-4xl {
    font-size: 1rem;
    line-height: 1.4rem;
  }
}
.title-2xl {
  font-size: 0.9rem;
  line-height: 0.9rem;
  letter-spacing: -0.005rem;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .title-2xl {
    font-size: 0.42rem;
    line-height: 0.5rem;
  }
}
.title {
  font-size: 0.7rem;
  line-height: 0.75rem;
  letter-spacing: -0.02em;
}
.title.white {
  color: #fff;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .title {
    font-size: 0.4rem;
    line-height: 0.45rem;
  }
}
.title-m {
  font-size: 0.5rem;
  line-height: 0.53rem;
  letter-spacing: -0.02rem;
}
.title-s {
  font-size: 0.32rem;
  line-height: 0.36rem;
  letter-spacing: -0.01rem;
}
.text-l {
  font-size: 0.26rem;
  line-height: 0.34rem;
  letter-spacing: -0.01rem;
}
.text {
  font-size: 0.18rem;
  line-height: 0.27rem;
  letter-spacing: 0em;
}
.text.white {
  color: #fff;
}
.media-wrap {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.media-wrap .media {
  display: block;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.media-wrap.aspect {
  aspect-ratio: 16 / 9;
}
.media-wrap.aspect .media {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.media-wrap.reveal-css {
  transition: transform 1000ms cubic-bezier(0.22, 0.61, 0.36, 1),
    -webkit-clip-path 1000ms cubic-bezier(0.22, 0.61, 0.36, 1);
  transition: clip-path 1000ms cubic-bezier(0.22, 0.61, 0.36, 1),
    transform 1000ms cubic-bezier(0.22, 0.61, 0.36, 1);
  transition: clip-path 1000ms cubic-bezier(0.22, 0.61, 0.36, 1),
    transform 1000ms cubic-bezier(0.22, 0.61, 0.36, 1),
    -webkit-clip-path 1000ms cubic-bezier(0.22, 0.61, 0.36, 1);
  transform: translateY(1.5rem);
  -webkit-clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0% 100%);
  clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0% 100%);
}
.media-wrap.reveal-css.animated {
  transform: translateY(0);
  -webkit-clip-path: polygon(0 0%, 100% 0%, 100% 100%, 0% 100%);
  clip-path: polygon(0 0%, 100% 0%, 100% 100%, 0% 100%);
}
.button-1 {
  position: relative;
  display: inline-block;
  font-family: 'Nunito';
  font-size: 0.15rem;
  line-height: 0.2rem;
  letter-spacing: 0em;
  text-transform: uppercase;
  font-weight: 500;
  color: var(--green);
  padding: 0.1rem 0.4rem;
  text-align: center;
  border: 2px solid var(--green);
  border-radius: 0.5rem;
}
.button-1 * {
  backface-visibility: hidden;
}
.button-1 span {
  display: block;
  position: relative;
  transition: padding 800ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition-delay: 0ms;
  overflow: hidden;
}
.button-1 svg {
  display: block;
  position: absolute;
  transform: translate3d(-0.04rem, -50%, 0);
  transition: opacity 800ms cubic-bezier(0.4, 0, 0.09, 0.98),
    transform 800ms cubic-bezier(0.4, 0, 0.09, 0.98);
  opacity: 0;
  transition-delay: 0ms;
  top: 50%;
  right: 0;
  width: 0.18rem;
}
.button-1 i {
  position: relative;
  display: block;
  transition: transform 800ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transform: translateY(0%) skewY(0deg);
  transform-origin: 0 50%;
}
.button-1 span::after {
  content: attr(data-text);
  position: absolute;
  left: 0;
  top: 50%;
  transition: transform 800ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transform: translateY(50%) skewY(-15deg);
  transform-origin: 100% 50%;
}
.button-1:hover span {
  padding-right: 0.33rem;
  transition-delay: 300ms;
}
.button-1:hover svg {
  transform: translate3d(0rem, -50%, 0);
  transition-delay: 300ms;
  opacity: 1;
}
.button-1:hover i {
  transform: translateY(-100%) skewY(-15deg);
}
.button-1:hover span::after {
  transform: translateY(-50%) skewY(0deg);
}
.button-1.color-2 {
  color: #fff;
  border-color: #fff;
}
.button-1.color-2 svg path {
  fill: #fff;
}
.button-1.type-2 {
  padding: 0.25rem 1.2rem;
}
.button-1:not(:last-child) {
  margin-bottom: 0.15rem;
}
.button-1.dimmed {
  opacity: 0.5;
}
.spacer {
  width: 100%;
  height: 10rem;
  background-color: #fff;
}
body.tablet .mouse-frame {
  display: none !important;
}
.barba-transitioning .mouse-frame {
  opacity: 0;
}
.mouse-frame {
  pointer-events: none;
  display: block;
  position: fixed;
  transition: opacity 300ms ease;
  z-index: 450;
  inset: 0;
  width: 100%;
  height: 100%;
}
.mouse-frame .mouse-follower {
  position: absolute;
  transform: translate(-1rem, -1rem);
  top: 0;
  left: 0;
}
.mouse-frame .mouse {
  display: block;
  position: relative;
  transform: scale(1);
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background-color: #c7e3e3;
  opacity: 0.7;
}
.mouse-frame .type {
  display: block;
  position: absolute;
  transition: transform 300ms ease;
  transform: scale(0);
  inset: 0;
  width: 100%;
  height: 100%;
  font-weight: 800;
  font-size: 0.2rem;
  line-height: 1.5rem;
  text-align: center;
  text-transform: uppercase;
  color: #000;
}
.barba-transition-element {
  display: block;
  position: fixed;
  transform: scaleY(0);
  transform-origin: 50% 100%;
  z-index: 500;
  inset: 0;
  width: 100%;
  height: 150%;
  background-color: var(--green);
  pointer-events: none;
}
.preloader {
  display: flex;
  position: fixed;
  align-items: center;
  z-index: 500;
  inset: 0;
  width: 100%;
  height: 100%;
  background-color: var(--green);
}
.preloader .title {
  width: 100%;
  margin: auto;
  color: #fff;
  text-align: center;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .preloader .title {
    font-size: 0.36rem;
    width: 60%;
  }
}
.fixed-book-now-btn.invert,
.menu-open .fixed-book-now-btn {
  color: var(--green);
}
.fixed-book-now-btn.invert .lines div,
.menu-open .fixed-book-now-btn .lines div {
  background-color: var(--green);
}
.fixed-book-now-btn.invert::before,
.menu-open .fixed-book-now-btn::before {
  opacity: 0;
}
.fixed-book-now-btn.invert::after,
.menu-open .fixed-book-now-btn::after {
  opacity: 1;
}
.fixed-book-now-btn {
  display: flex;
  position: fixed;
  transform: scale(0.75);
  transform-origin: 100% 100%;
  z-index: 200;
  right: 0.3rem;
  bottom: 0.27rem;
  width: auto;
  min-width: 0.77rem;
  height: 1.63rem;
  transition: color 600ms cubic-bezier(0.4, 0, 0.09, 0.98);
  border-radius: 0.5rem;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.1);
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.05rem;
  overflow: hidden;
  font-size: 0.16rem;
  line-height: 0.27rem;
  color: #fff;
}
.fixed-book-now-btn span {
  display: block;
  z-index: 5;
  padding-left: 0.05rem;
  padding-right: 0.05rem;
}
.fixed-book-now-btn::before,
.fixed-book-now-btn::after {
  content: "";
  position: absolute;
  transition: opacity 600ms cubic-bezier(0.4, 0, 0.09, 0.98);
  z-index: 1;
  inset: 0;
  width: 100%;
  height: 100%;
  background-size: 100% 100%;
}
.fixed-book-now-btn::before {
  background-image: linear-gradient(var(--gradientRotation), #056867, #1da7a8);
  opacity: 1;
}
.fixed-book-now-btn::after {
  background-image: linear-gradient(var(--gradientRotation), #b4b4b4, #ffffff);
  opacity: 0;
}
.fixed-book-now-btn .lines {
  display: block;
  position: relative;
  width: 0.5rem;
  height: 0.5rem;
  margin: 0 auto;
  z-index: 5;
}
.fixed-book-now-btn .lines div {
  display: block;
  position: absolute;
  transform: translate(-50%, -50%);
  transition: background-color 600ms cubic-bezier(0.4, 0, 0.09, 0.98);
  top: 50%;
  left: 50%;
  width: 100%;
  height: 2px;
  background-color: #fff;
}
.fixed-book-now-btn .lines div:nth-child(1) {
  transform: translate(-50%, -50%) rotate(90deg);
}
.fixed-book-now-btn .lines div:nth-child(2) {
  transform: translate(-50%, -50%) rotate(18deg);
}
.fixed-book-now-btn .lines div:nth-child(3) {
  transform: translate(-50%, -50%) rotate(162deg);
}
.fixed-book-now-btn .lines div:nth-child(4) {
  transform: translate(-50%, -50%) rotate(55deg);
}
.fixed-book-now-btn .lines div:nth-child(5) {
  transform: translate(-50%, -50%) rotate(128deg);
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .fixed-book-now-btn {
    width: auto;
    min-width: 0.72rem;
    height: 1.56rem;
    right: 0.13rem;
    bottom: 0.13rem;
  }
  .fixed-book-now-btn svg {
    width: 0.42rem;
  }
}
@media screen and (orientation: landscape) and (min-width: 767px) {
  .menu-open .main-menu .big-links li:hover {
    transform: translateY(-0.8rem);
  }
  .menu-open .main-menu .big-links li:hover .big-link svg {
    transform: translateY(-50%) rotate(-90deg);
  }
  .menu-open .main-menu .big-links li:hover .submenu {
    opacity: 1;
    pointer-events: all;
  }
}
.main-menu {
  display: block;
  position: fixed;
  z-index: 250;
  inset: 0;
  width: 100%;
  height: 100%;
  background: var(--green);
  background-size: 100% 100%;
}
.main-menu .frame {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 0.62rem 0;
  overflow: hidden;
}
.main-menu .big-links {
  display: flex;
  gap: 0.37rem;
  width: 100%;
  text-align: center;
  max-width: 9.1rem;
  margin: 0 auto;
  flex-direction: column;
}
.main-menu .big-links li {
  display: block;
  position: relative;
  transition: transform 800ms cubic-bezier(0.4, 0, 0.09, 0.98);
  padding-right: 0.3rem;
  margin-right: -0.3rem;
}
.main-menu .big-links .submenu {
  position: absolute;
  transition: opacity 800ms cubic-bezier(0.4, 0, 0.09, 0.98);
  width: 100%;
  opacity: 0;
  top: calc(100% + 0rem);
  transform: translateX(-50%);
  left: 50%;
  pointer-events: none;
}
.main-menu .big-links .submenu .s-inner {
  padding-top: 0.3rem;
}
.main-menu .big-links .submenu .link:not(:last-child) {
  margin-bottom: 0.3rem;
}
.main-menu .big-link {
  display: block;
  position: relative;
  font-size: 0.35rem;
  line-height: 0.7rem;
  letter-spacing: -0.02rem;
  color: #fff;
  padding-right: 0.2rem;
}
.main-menu .big-link svg {
  pointer-events: none;
  display: block;
  position: absolute;
  transform: translateY(-50%);
  transition: transform 400ms cubic-bezier(0.4, 0, 0.09, 0.98);
  width: 0.2rem;
  top: 50%;
  right: -0.2rem;
}
.main-menu .m-foot {
  display: flex;
  justify-content: center;
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
}
.main-menu .small-links {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1.45rem;
  width: 100%;
}
.main-menu .link {
  position: relative;
  display: block;
  color: #fff;
  overflow: hidden;
}
.main-menu .link span {
  display: inline-block;
  transition: transform 800ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transform: translateY(0%) skewY(0deg);
  transform-origin: 0 50%;
}
.main-menu .link::after {
  content: attr(data-text);
  position: absolute;
  left: 0;
  transition: transform 800ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transform: translateY(100%) skewY(-15deg);
  transform-origin: 100% 50%;
}
.main-menu .link:not(:last-child) {
  margin-bottom: 0.15rem;
}
.main-menu .link.dimmed {
  opacity: 0.5;
}
.main-menu .link:hover span {
  transform: translateY(-100%) skewY(-15deg);
}
.main-menu .link:hover::after {
  transform: translateY(0%) skewY(0deg);
}
.main-menu .mobile-lang {
  display: none;
  position: relative;
  position: absolute;
  width: 100%;
  bottom: 0;
  left: 0;
  border-top: 2px solid #fff;
}
.main-menu .mobile-lang .lang {
  color: #fff;
  width: 25%;
  font-size: 0.16rem;
  line-height: 0.1885rem;
  letter-spacing: 0em;
  padding: 0.4rem 0;
  text-align: center;
  border-right: 2px solid #fff;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .main-menu {
    display: block;
    padding-top: 1rem;
  }
  .main-menu .mobile-lang {
    display: flex;
  }
  .main-menu .frame {
    display: block;
    position: relative;
    padding: 0 0.18rem;
    height: 100%;
    max-width: none;
    margin: auto;
    padding-top: 0.4rem;
    overflow-y: auto;
    overflow-x: hidden;
  }
  .main-menu .big-links {
    height: calc(100% - 230px);
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: 0.15rem;
    margin-bottom: 20px;
  }
  .main-menu .big-links li {
    padding-right: 0;
    margin-right: 0;
  }
  .main-menu .big-links .submenu {
    display: block;
    position: relative;
    transform: none;
    left: auto;
    pointer-events: all;
    opacity: 1;
    overflow: hidden;
  }
  .main-menu .big-link {
    position: relative;
    padding-right: 0;
  }
  .main-menu .big-link svg {
    display: none;
  }
  .main-menu .big-link::before,
  .main-menu .big-link::after {
    content: "";
    display: block;
    position: absolute;
    transition: opacity 800ms cubic-bezier(0.4, 0, 0.09, 0.98);
    transform: translateY(-50%);
    width: 0.45rem;
    height: 0.45rem;
    top: 50%;
    right: 0;
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: contain;
  }

  .main-menu .big-link.is-open::before {
    opacity: 1;
  }
  .main-menu .big-link.is-open::after {
    opacity: 0;
  }
  .main-menu .m-foot {
    display: block;
    margin-bottom: 0.2rem;
    position: absolute;
    bottom: 0;
  }
  .main-menu .m-foot .button-1 {
    margin-bottom: 0.4rem;
  }
  .main-menu .small-links {
    display: block;
  }
  .main-menu .small-links li:not(:last-child) {
    margin-bottom: 0.05rem;
  }
}
.scroll-down.scroll-past-top .header {
  transform: translateY(-110%);
}
.stacking-sticky-enter .header {
  transform: translateY(-110%);
}
.menu-open .header {
  transform: translateY(0%);
}
.menu-open.scroll-past-top .header {
  transform: translateY(0%);
}
body.subpage:not(.menu-open) .header {
  background-color: var(--green);
}
.barba-transitioning .header {
  opacity: 0;
}
.scroll-past-top:not(.menu-open) .header {
  background-color: var(--green);
}
.animations-initialised .header::after {
  transform: scaleX(1);
  transition-delay: 1000ms;
}
.animations-initialised .header .menu .m-inner::after {
  transform: scaleY(1);
}
.animations-initialised .header .menu .m-inner:nth-child(1)::after {
  transition-delay: 1200ms;
}
.animations-initialised .header .menu .m-inner:nth-child(2)::after {
  transition-delay: 1300ms;
}
.animations-initialised .header .menu .m-inner:nth-child(3)::after {
  transition-delay: 1400ms;
}
.animations-initialised .header .menu .m-inner:nth-child(4)::after {
  transition-delay: 1500ms;
}
.animations-initialised .header .menu .m-inner:nth-child(5)::after {
  transition-delay: 1600ms;
}
.header {
  display: block;
  position: fixed;
  transition: transform 800ms cubic-bezier(0.4, 0, 0.09, 0.98),
    opacity 800ms cubic-bezier(0.4, 0, 0.09, 0.98), background-color 400ms ease;
  transform: translateY(0%);
  width: 100%;
  z-index: 300;
  top: 0;
  left: 0;
}
.header::after {
  content: "";
  display: block;
  position: absolute;
  transition: transform 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transform: scaleX(0);
  transform-origin: 0% 50%;
  transition-delay: 0ms;
  left: 0;
  bottom: -1px;
  width: 100%;
  height: 1px;
  background-color: #fff;
}
.header .logo-frame {
    display: flex;
    align-items: center;
    padding: 4px 30px;
} 
.header .logo {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 90px;
  width: 100%;
}
.header .logo img {
  display: block;
  width: 100%;
  height: 100%;
} 
.header .grid {
  display: flex;
  justify-content: space-between;
}  
.header .menu {
  display: flex;
  align-items: center;
  margin-bottom: -1px;
}

.header .menu.navbar {
  margin-right: 0;
  margin-left: auto;
}

.header .menu .m-inner {
  display: flex;
  align-items: center;
  position: relative;
  height: 100%;
  transition: padding 800ms cubic-bezier(0.4, 0, 0.09, 0.98);
}
.header .menu .m-inner::after {
  content: "";
  display: block;
  position: absolute;
  transition: transform 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transform: scaleY(0);
  transform-origin: 50% 0%;
  transition-delay: 0ms;
  top: 0;
  left: -1px;
  width: 1px;
  height: 100%;
  background-color: #fff;
}
.header .menu .m-inner:hover {
  padding: 0 0.3rem;
}
.header .lang {
  cursor: pointer;
  color: #fff;
  font-size: 0.16rem;
  line-height: 0.1885rem;
  letter-spacing: 0em;
  padding: 0.445rem 0.445rem;
  text-align: center;
  display: block;
}
.header .lang:hover, 
.header .lang:active {
  color: var(--golden) !important;
}
.header .btn-frame {
  cursor: pointer;
  position: relative;
  display: flex;
  align-items: center;
  width: 1.62rem;
  height: 100%;
}
.header .btn-frame .menu-btn {
  position: relative;
  display: block;
  width: 0.48rem;
  height: 0.16rem;
  margin: auto;
  backface-visibility: hidden;
}
.header .btn-frame .menu-btn::before,
.header .btn-frame .menu-btn::after {
  content: "";
  display: block;
  position: absolute;
  transition: transform 400ms cubic-bezier(0.77, 0, 0.175, 1),
    opacity 400ms cubic-bezier(0.77, 0, 0.175, 1);
  transform: translate(-50%, -50%);
  transition-delay: 0ms;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 2px;
  background-color: #fff;
  opacity: 0;
}
.header .btn-frame svg {
  display: block;
  width: 100%;
}
.header .btn-frame svg line {
  transition: transform 400ms cubic-bezier(0.77, 0, 0.175, 1),
    opacity 400ms cubic-bezier(0.77, 0, 0.175, 1);
  transition-delay: 200ms;
}
.header .btn-frame.active .menu-btn line:first-child {
  transform: translateY(0.06rem);
  transition-delay: 0ms;
  opacity: 0;
}
.header .btn-frame.active .menu-btn line:last-child {
  transform: translateY(-0.06rem);
  transition-delay: 0ms;
  opacity: 0;
}
.header .btn-frame.active .menu-btn::before {
  transform: translate(-50%, -50%) rotate(-45deg);
  transition-delay: 200ms;
  opacity: 1;
}
.header .btn-frame.active .menu-btn::after {
  transform: translate(-50%, -50%) rotate(45deg);
  transition-delay: 200ms;
  opacity: 1;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .header .menu {
    display: block;
  }
  .header .menu .m-inner:not(:last-child) {
    display: none;
  }
  .header .menu .m-inner:hover {
    padding: 0;
  }
  .header .btn-frame {
    width: 1.22rem;
  }
}
body.remove-ticker .horizontal-scroller {
  opacity: 0;
}
.horizontal-scroller {
  display: flex;
  white-space: nowrap;
  opacity: 1;
  transition: opacity 0.2s ease-in-out;
}
.horizontal-scroller .hs-inner {
  display: flex;
  gap: 0.52rem;
  white-space: nowrap;
  width: -moz-max-content;
  width: max-content;
  margin: 0 0.26rem;
}
.horizontal-scroller .hs-text {
  font-size: 0.2rem;
  line-height: 0.25rem;
  letter-spacing: 0em;
  white-space: nowrap;
  color: #fff;
}
.horizontal-scroller.initialized {
  animation: loopHorizontal 40s infinite linear;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .horizontal-scroller .hs-inner {
    gap: 0.4rem;
    margin: 0 0.2rem;
  }
}
@keyframes loopHorizontal {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-50%);
  }
}
.home-hero-section {
  padding-top: 1.1rem;
  padding-bottom: 1.1rem;
  display: flex;
  align-items: center;
  min-height: 100vh;
  overflow: hidden;
}
.home-hero-section .horizontal-scroller {
  position: absolute;
  top: 1.24rem;
  left: 0;
}
.home-hero-section .media-wrap {
  position: absolute;
  inset: 0;
  width: 100%;
  min-height: 100%;
  aspect-ratio: 3 / 2;
}
.home-hero-section .media-wrap::after {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  background: linear-gradient(
    180deg,
    rgba(5, 104, 104, 0.8) 0%,
    rgba(5, 104, 104, 0) 100%
  );
}
.home-hero-section .title-4xl {
  color: #fff;
}
.home-hero-section .sect-text {
  font-size: 0.25rem;
  line-height: 0.2945rem;
  letter-spacing: 0em;
  color: #fff;
  white-space: nowrap;
}
.home-hero-section .grid {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: -moz-min-content;
  width: min-content;
  gap: 0.35rem;
  margin: auto;
}
.home-hero-section .button-wrap {
  margin-top: 0.26rem;
  text-align: center;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .home-hero-section {
    padding-top: 1.1rem;
    padding-bottom: 0.8rem;
    transition: min-height 400ms ease;
    min-height: var(--mobile100vh);
  }
  .home-hero-section .grid {
    display: block;
  }
  .home-hero-section .title-4xl {
    text-align: center;
    margin-bottom: 0.1rem;
  }
  .home-hero-section .sect-text {
    font-size: 0.25rem;
    line-height: 0.2945rem;
    text-align: center;
  }
}
.title-text-section {
  padding-top: 1.2rem;
  padding-bottom: 1.2rem;
  background-color: #fff;
}
.title-text-section .title {
  color: var(--green);
  margin-bottom: 0.45rem;
}
.title-text-section .text {
  color: var(--green);
}
.title-text-section .text-l {
  color: var(--green);
}
.title-text-section.wellness .cnt {
  max-width: 4.8rem;
}
.title-text-section .tt-frame .text-l {
  margin-bottom: 0.05rem;
}
.title-text-section .tt-frame:not(:last-child) {
  margin-bottom: 0.45rem;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .title-text-section {
    padding-top: 0.8rem;
    padding-bottom: 1.1rem;
  }
  .title-text-section .title {
    margin-bottom: 0.25rem;
  }
}
.slider-section-1 .slider-track {
  height: 300vh;
}
.slider-section-1 .media-wrap {
  transition: -webkit-clip-path 800ms cubic-bezier(0.77, 0, 0.175, 1);
  transition: clip-path 800ms cubic-bezier(0.77, 0, 0.175, 1);
  transition: clip-path 800ms cubic-bezier(0.77, 0, 0.175, 1),
    -webkit-clip-path 800ms cubic-bezier(0.77, 0, 0.175, 1);
  aspect-ratio: 33 / 41;
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
  clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
  max-height: calc(100vh - 1rem);
}
.slider-section-1 .media-wrap .media {
  inset: auto;
  left: -10%;
  top: 0;
  width: 120%;
}
.slider-section-1 .media-wrap:hover {
  -webkit-clip-path: polygon(5% 5%, 95% 5%, 95% 95%, 5% 95%);
  clip-path: polygon(5% 5%, 95% 5%, 95% 95%, 5% 95%);
}
.slider-section-1 .image-frame {
  display: flex;
  gap: 1rem;
  width: -moz-max-content;
  width: max-content;
  padding-right: 0.04rem;
}
.slider-section-1 .slide {
  position: relative;
  display: block;
  width: 6.6rem;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .slider-section-1 .media-wrap {
    aspect-ratio: 7 / 12;
  }
  .slider-section-1 .media-wrap .media {
    left: 0;
    width: 100%;
  }
  .slider-section-1 .image-frame {
    gap: 0.35rem;
  }
  .slider-section-1 .slide {
    width: 3.3rem;
  }
}
.slider-section-regular .media-wrap {
  transition: -webkit-clip-path 800ms cubic-bezier(0.77, 0, 0.175, 1);
  transition: clip-path 800ms cubic-bezier(0.77, 0, 0.175, 1);
  transition: clip-path 800ms cubic-bezier(0.77, 0, 0.175, 1),
    -webkit-clip-path 800ms cubic-bezier(0.77, 0, 0.175, 1);
  aspect-ratio: 33 / 41;
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
  clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
  max-height: calc(100vh - 1rem);
}
/* .slider-section-regular .media-wrap .media {
  inset: auto;
  left: -10%;
  top: 0;
  width: 120%;
} */
.slider-section-regular .media-wrap:hover {
  -webkit-clip-path: polygon(5% 5%, 95% 5%, 95% 95%, 5% 95%);
  clip-path: polygon(5% 5%, 95% 5%, 95% 95%, 5% 95%);
}
.slider-section-regular .splide {
  overflow: visible;
}
.slider-section-regular .splide__slide {
  padding-right: 1rem;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .slider-section-regular .media-wrap {
    aspect-ratio: 10 / 10;
  }
  .slider-section-regular .media-wrap .media {
    left: 0;
    width: 100%;
  }
  .slider-section-regular .splide {
    width: calc(100% - 0.5rem);
  }
  .slider-section-regular .splide__slide {
    padding-right: 0;
  }
  .slider-section-regular .splide__track {
    overflow: visible;
  }
}
.icon-list-section {
  padding-top: 1.6rem;
  padding-bottom: 0.34rem;
  background-color: #fff;
}
.icon-list-section .stagger-elem {
  opacity: 0;
}
.icon-list-section .grid {
  display: flex;
  position: relative;
  justify-content: flex-start;
  flex-wrap: wrap;
}
.icon-list-section .grid .g-inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  padding: 0.3rem 0.15rem;
  width: calc(100% / 5);
}
.icon-list-section .grid .g-inner::before {
  content: "";
  display: block;
  position: absolute;
  transition: -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98),
    -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  -webkit-clip-path: circle(0% at 0 0);
  clip-path: circle(0% at 0 0);
  left: 0;
  bottom: -2px;
  width: calc(100% + 2px);
  height: 0;
  border-bottom: 2px solid var(--green);
}
.icon-list-section .grid .g-inner::after {
  content: "";
  display: block;
  position: absolute;
  transition: -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98),
    -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  -webkit-clip-path: circle(0% at 0 0);
  clip-path: circle(0% at 0 0);
  top: 0;
  right: -2px;
  width: 0;
  height: calc(100% + 2px);
  border-right: 2px solid var(--green);
}
.icon-list-section .grid svg,
.icon-list-section .grid img {
  display: block;
  max-width: 100%;
  max-height: 0.52rem;
  margin: 0 auto 0.31rem;
}
.icon-list-section .grid .text {
  width: 100%;
  line-height: 0.22rem;
  text-align: center;
  color: var(--green);
}
.icon-list-section .grid::before {
  content: "";
  display: block;
  position: absolute;
  transition: -webkit-clip-path 2000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 2000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 2000ms cubic-bezier(0.4, 0, 0.09, 0.98),
    -webkit-clip-path 2000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  -webkit-clip-path: circle(0% at 0 0);
  clip-path: circle(0% at 0 0);
  inset: 0;
  width: var(--linewidth);
  height: 100%;
  border: 2px solid var(--green);
  border-right: 0;
  border-bottom: 0;
}
.icon-list-section .grid.animated::before {
  -webkit-clip-path: circle(142% at 0 0);
  clip-path: circle(142% at 0 0);
}
.icon-list-section .grid.animated .g-inner::before {
  -webkit-clip-path: circle(150% at 0 50%);
  clip-path: circle(150% at 0 50%);
  transition-delay: var(--delaylineiconlist);
}
.icon-list-section .grid.animated .g-inner::after {
  -webkit-clip-path: circle(150% at 50% 0);
  clip-path: circle(150% at 50% 0);
  transition-delay: var(--delaylineiconlist);
}
.icon-list-section .title-s {
  color: var(--green);
  text-align: center;
  margin-bottom: 0.6rem;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .icon-list-section {
    padding-top: 1.2rem;
    padding-bottom: 0;
  }
  .icon-list-section .grid {
    display: block;
    width: 70%;
    margin: auto;
  }
  .icon-list-section .grid .g-inner {
    width: 100%;
    margin: auto;
    border-bottom: 2px solid var(--green);
  }
}
.title-text-section-2 {
  margin-top: 1.6rem;
  margin-bottom: 1.6rem;
  background-color: #fff;
}
.title-text-section-2.wide-img {
  margin-bottom: 0;
}
.title-text-section-2 .title {
  color: var(--green);
  margin-bottom: 0.45rem;
}
.title-text-section-2 .text {
  color: var(--green);
}
.title-text-section-2 .grid {
  display: flex;
  justify-content: space-between;
}
.title-text-section-2 .grid .g-inner:first-child {
  width: 5.8rem;
}
.title-text-section-2 .grid .g-inner:last-child {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  width: calc(100% - 4.8rem);
}
.title-text-section-2 .grid .g-inner.ai-fs:last-child {
  align-items: flex-start;
}
.title-text-section-2.pb-2 {
  padding-bottom: 0.8rem;
}
.title-text-section-2.no-padd {
  padding-top: 0;
  padding-bottom: 0;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .title-text-section-2 {
    margin-top: 1.2rem;
    margin-bottom: 1.2rem;
  }
  .title-text-section-2.pb-2 {
    padding-bottom: 1.2rem;
  }
  .title-text-section-2.no-padd {
    padding-top: 0;
    padding-bottom: 0;
  }
  .title-text-section-2 .grid {
    display: block;
  }
  .title-text-section-2 .grid .g-inner:first-child {
    width: 100%;
    margin-bottom: 0.45rem;
  }
  .title-text-section-2 .grid .g-inner:last-child {
    width: 100%;
  }
}
.content-newsletter-form {
  width: 100%;
}
.content-newsletter-form form {
  position: relative;
}
.content-newsletter-form .gform_wrapper.gravity-theme .gform_fields input {
  display: block;
  width: 100%;
  background-color: transparent;
  border: none;
  border-bottom: 2px solid var(--green);
  padding: 0.1rem 0;
  font-family: 'Nunito';
  font-size: 0.18rem;
  line-height: 0.27rem;
  color: var(--green);
  letter-spacing: 0em;
}
.content-newsletter-form
  .gform_wrapper.gravity-theme
  .gform_fields
  input:focus-visible {
  outline: none;
}
.content-newsletter-form
  .gform_wrapper.gravity-theme
  .gform_fields
  input::-moz-placeholder {
  color: var(--green);
}
.content-newsletter-form
  .gform_wrapper.gravity-theme
  .gform_fields
  input::placeholder {
  color: var(--green);
}
.content-newsletter-form .gform_ajax_spinner {
  box-sizing: border-box;
  border: 2px solid #fff0;
  border-left: 2px solid var(--green);
  border-top: 2px solid var(--green);
  border-right: 2px solid var(--green);
  animation: spinner 1.1s infinite linear;
  border-radius: 50%;
  width: 0.16rem;
  height: 0.16rem;
  margin-top: 0.1rem;
  margin-bottom: 0.2rem;
  position: absolute;
  right: -0.2rem;
  top: 0.43rem;
}
@keyframes spinner {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.content-newsletter-form .gform_confirmation_wrapper {
  font-family: 'Nunito';
  font-size: 0.18rem;
  line-height: 0.27rem;
  color: var(--green);
  padding-top: 0.4rem;
}
.content-newsletter-form .gform_wrapper.gravity-theme .gfield_description {
  font-family: 'Nunito';
  font-size: 0.16rem;
  line-height: 0.25rem;
  color: var(--green);
}
.content-newsletter-form .gform_wrapper.gravity-theme .gform_footer {
  padding: 0;
  margin: 0;
}
.content-newsletter-form .gform_wrapper.gravity-theme .gform_footer button {
  background-color: transparent;
  border: none;
  position: absolute;
  top: 0.5rem;
  right: 0;
  padding: 0.05rem;
  cursor: pointer;
}
.content-newsletter-form
  .gform_wrapper.gravity-theme
  .gform_footer
  button
  span {
  display: none;
}
.content-newsletter-form
  .gform_wrapper.gravity-theme
  .gform_footer
  button::after {
  content: url(../../../../../../../../themes/oasis-web/assets/img/svg/menu-arrow-green.svg);
  display: block;
  height: 0.12rem;
  width: 0.2rem;
  transform: rotate(-90deg);
}
.content-newsletter-form .gform_wrapper.gravity-theme .gfield_label {
  opacity: 0;
  visibility: hidden;
}
.content-newsletter-form .gform_wrapper .gform_validation_errors {
  display: none;
}
.content-newsletter-form .gform_wrapper .gfield_validation_message,
.content-newsletter-form .gform_wrapper .validation_message {
  background-color: transparent;
  color: var(--green);
  border: none;
  margin-top: 5px;
  padding: 5px;
  padding-top: 5px;
  padding-left: 0;
}
.content-newsletter-form .gform_wrapper .gfield_error [aria-invalid="true"] {
  border: none;
  border-bottom: 2px solid var(--green);
}
.home .stacking-frame .big-media-section .media-wrap::after {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  background: linear-gradient(
    180deg,
    rgba(5, 104, 104, 0.8) 0%,
    rgba(5, 104, 104, 0) 100%
  );
}
.stacking-frame:not(.villas) {
  overflow: hidden;
}
.stacking-frame:not(.villas) .stacking-sticky {
  width: 100%;
  height: 100vh;
  overflow: hidden;
}
.stacking-frame:not(.villas) .big-media-section:not(:first-child) {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.stacking-frame:not(.villas) .big-media-section:not(:first-child) .media-wrap {
  height: 100%;
}
.stacking-frame.villas {
  overflow: hidden;
}
.stacking-frame.villas .stacking-sticky {
  display: flex;
  align-items: center;
  width: 100%;
  height: 100vh;
  overflow: hidden;
}
.stacking-frame.villas .big-media-section {
  width: 100%;
}
.stacking-frame.villas .big-media-section:not(:first-child) {
  transform: translateY(-50%);
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
}
.stacking-frame.villas .big-media-section:not(:first-child) .media-wrap {
  height: 100%;
}
.stacking-frame.villas .big-media-section.villas .media-wrap::after {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 20%;
  pointer-events: none;
  background: linear-gradient(
    180deg,
    rgba(5, 104, 104, 0.3) 0%,
    rgba(5, 104, 104, 0) 100%
  );
}
.big-media-section {
  z-index: 10;
  overflow: hidden;
}
.banner-area::after {
    content: "";
    display: block;
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    background: linear-gradient(180deg, rgb(0 0 0) 0%, rgba(5, 104, 104, 0) 100%);
}

.banner-cont {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;
  height: calc(100% - 108px);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0 15px;
  z-index: 9;
  justify-content: center;
}

.banner-cont::before, .banner-cont::after {
  content: '';
  width: 1px;
  height: 20%;
  position: absolute;
  top: 18%;
  background: #ddd;
  left: 85px;
}

.banner-cont::after {
  bottom: 20%;
  top: auto;
}

.banner-cont h2 {
  font-size: 4vw;
  line-height: 1.3;
  text-transform: uppercase;
  font-weight: 600;
}

.banner-cont p {
    padding: 10px 0 0 0;
    text-transform: capitalize;
    border-top: 1px solid #fff;
    letter-spacing: 1px;
}

.big-media-section .media-wrap {
  height: 100vh;
}

.big-media-section .media-head {
  z-index: 5;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding: 0.7rem 0.7rem 0;
}

.big-media-section .grid {
  display: flex;
  justify-content: space-between;
  gap: 0.45rem;
}

.big-media-section .grid .g-inner:nth-child(2) {
  width: 5.6rem;
  margin-left: auto;
}

.big-media-section .title-s {
  color: #fff;
}

.big-media-section .text {
  color: #fff;
}

.big-media-section .button-1 {
  margin-left: auto;
  margin-right: 0;
}

.big-media-section .line {
  display: block;
  transition: transform 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transform-origin: 0% 50%;
  transform: scaleX(0);
  width: 100%;
  height: 2px;
  background-color: #fff;
  margin-bottom: 0.4rem;
}

.big-media-section .line.animated {
  transform: scaleX(1);
}

@media screen and (orientation: portrait) and (max-width: 767px) {
  .big-media-section .media-head {
    inset: 0;
    width: 100%;
    height: 100%;
    padding: 0.3rem 0.2rem;
  }

  .big-media-section .line {
    display: none;
  }

  .big-media-section .grid {
    flex-direction: column;
    justify-content: flex-end;
    height: 100%;
    gap: 0.25rem;
  }

  .big-media-section .grid .g-inner {
    width: 100%;
  }

  .big-media-section .grid .g-inner:nth-child(2) {
    width: 100%;
  }

  .big-media-section .title-s {
    position: absolute;
    top: 0.3rem;
    left: 0.2rem;
    max-width: calc(100% - 0.4rem);
  }
}

.big-media-section.villas .media-wrap {
  aspect-ratio: 59 / 39;
  height: auto;
}

@media screen and (orientation: portrait) and (max-width: 767px) {
  .big-media-section.villas .media-wrap {
    aspect-ratio: 17 / 32;
    height: auto;
  }
}

.section-spacer {
  width: 100%;
  height: 1.6rem;
}

.section-spacer.bg-color {
  background-color: var(--green);
  margin-top: -2px;
  margin-bottom: -2px;
}

@media screen and (orientation: portrait) and (max-width: 767px) {
  .section-spacer {
    height: 0.5rem;
  }
}

.section-spacer-s {
  width: 100%;
  height: 0.8rem;
}

.section-spacer-s.bg-color {
  background-color: var(--green);
  margin-top: -2px;
  margin-bottom: -2px;
}

@media screen and (orientation: portrait) and (max-width: 767px) {
  .section-spacer-s {
    height: 0.4rem;
  }
}

.section-spacer-xs {
  width: 100%;
  height: 0.6rem;
}

.section-spacer-xs.bg-color {
  background-color: var(--green);
  margin-top: -2px;
  margin-bottom: -2px;
}

@media screen and (orientation: portrait) and (max-width: 767px) {
  .section-spacer-xs {
    height: 0.3rem;
  }
}

@media screen and (orientation: portrait) and (max-width: 767px) {
  .no-mobile-br br {
    display: none;
  }
}

.hover-card-stack-section {
  background-color: #fff;
}
.hover-card-stack-section .grid {
  display: flex;
  justify-content: flex-end;
}
.hover-card-stack-section .grid .g-inner {
  cursor: pointer;
  position: relative;
  transition: width 1200ms cubic-bezier(0.4, 0, 0.09, 0.98);
  width: 25%;
}
.hover-card-stack-section .grid .g-inner:not(.no-hover):hover {
  width: 50%;
}
.hover-card-stack-section .media-wrap {
  aspect-ratio: 29 / 55;
  max-height: 5.5rem;
}
.hover-card-stack-section .media-wrap .media {
  top: auto;
  bottom: 0;
  height: 105%;
}
.hover-card-stack-section .title-s {
  position: absolute;
  left: 0.2rem;
  bottom: 0.15rem;
  color: #fff;
  max-width: calc(100% - 0.4rem);
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .hover-card-stack-section .grid {
    display: block;
  }
  .hover-card-stack-section .grid .g-inner:not(.no-hover):hover {
    width: 100%;
  }
  .hover-card-stack-section .grid .g-inner {
    transition: none;
    width: 100%;
  }
  .hover-card-stack-section .grid .g-inner:hover {
    width: 100%;
  }
  .hover-card-stack-section .media-wrap {
    aspect-ratio: 19 / 15;
    max-height: none;
  }
  .hover-card-stack-section .media-wrap .media {
    height: 100%;
  }
}

.hover-card-stack-section.type-2 .grid-frame {
    display: flex;
    background: var(--dark-golden);
}

.hover-card-stack-section.type-2 .grid-frame .gf-inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 50%;
    padding: 30px;
}

.location {
  padding: 100px 0 110px;
}

.location .grid-frame {
  background: var(--golden);
}

.location .text {
  margin-bottom: 10px;
  border-bottom: 1px solid #fff;
  padding-bottom: 10px;
  color: #fff;
}

.location .text:nth-child(2) {
  border-top: 1px solid #fff;
  padding-top: 10px;
}

.location .text-l {
  color: #fff !important;
  margin-bottom: 15px;
}

.location-area-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.hover-card-stack-section.type-2 .grid-frame .grid {
  width: 60%;
}

.hover-card-stack-section.type-2 .grid .g-inner {
  width: calc(100% / 3);
}

.hover-card-stack-section.type-2 .grid .g-inner:not(.no-hover):hover {
  width: calc((100% / 3) * 2);
}

.hover-card-stack-section.type-2 .text-l {
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.distance {
	display: grid;
	grid-template-columns: 1fr 1fr;
	padding: 20px 20px 10px;
	background: var(--golden);
	margin: 0 0 10px;
}

@media screen and (orientation: portrait) and (max-width: 767px) {
  .hover-card-stack-section.type-2 .grid-frame {
    display: block;
  }
  .hover-card-stack-section.type-2 .grid-frame .gf-inner {
    display: flex;
    justify-content: center;
    flex-direction: column;
    width: 30%;
    background: var(--dark-golden);
    padding: 30px;
    color: #fff;
  }
  .hover-card-stack-section.type-2 .grid-frame .grid {
    width: 100%;
  }
  .hover-card-stack-section.type-2 .grid {
    display: block;
  }
  .hover-card-stack-section.type-2 .grid .g-inner:not(.no-hover):hover {
    width: 100%;
  }
  .hover-card-stack-section.type-2 .grid .g-inner {
    transition: none;
    width: 100%;
  }
  .hover-card-stack-section.type-2 .grid .g-inner:hover {
    width: 100%;
  }
  .hover-card-stack-section.type-2 .text-l {
    width: 80%;
  }
}
.text-image-section {
  background-color: #fff;
}
.text-image-section .grid {
  display: flex;
}
.text-image-section .grid .g-inner:first-child {
  display: flex;
  align-items: center;
  width: 6rem;
}
.text-image-section .grid .g-inner:last-child {
  width: calc(100% - 6rem);
}
.text-image-section .cnt {
  width: 100%;
  padding-right: 1.2rem;
}
.text-image-section .title {
  color: var(--green);
  margin-bottom: 0.45rem;
}
.text-image-section .text-l {
  color: var(--green);
}
.text-image-section .media-wrap {
  aspect-ratio: 145 / 172;
}
.text-image-section .media-wrap .media {
  height: 110%;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .text-image-section {
    padding-top: 0rem;
    padding-bottom: 0rem;
  }
  .text-image-section .grid {
    display: block;
  }
  .text-image-section .grid .g-inner:first-child {
    width: 100%;
  }
  .text-image-section .grid .g-inner:last-child {
    width: 100%;
  }
  .text-image-section .cnt {
    display: none;
  }
  .text-image-section .media-wrap {
    aspect-ratio: 19 / 23;
  }
  .text-image-section .media-wrap .media {
    height: 100%;
  }
}
.text-image-section.type-2 .grid {
  flex-direction: row-reverse;
}
.text-image-section.type-2 .cnt {
  padding-left: 1.2rem;
  padding-right: 0;
}
.text-image-section.type-2 .text {
  color: var(--green);
  margin-bottom: 0.3rem;
}
.text-image-section.type-3 .text {
  color: var(--green);
  margin-bottom: 0.3rem;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .text-image-section.has-mobile-cnt .grid {
    display: flex;
    flex-wrap: wrap;
  }
  .text-image-section.has-mobile-cnt .cnt {
    display: block;
    padding: 0;
  }
  .text-image-section.has-mobile-cnt .button-1 {
    margin-bottom: 0.3rem;
  }
}
.cube-image-section .media-wrap {
  max-width: 100%;
  margin: auto;
}
.cube-image-section .media-wrap .media {
  height: 100%;
}
.cube-image-section.on-left .media-wrap {
  margin-left: 0;
}
.cube-image-section.on-right .media-wrap {
  margin-right: 0;
}
.cta-section {
  display: flex;
  align-items: center;
  padding-top: 1.6rem;
  padding-bottom: 1.6rem;
  min-height: 100vh;
}
.cta-section .media-wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.cta-section .cnt {
  max-width: 8.1rem;
  margin: auto;
  text-align: center;
}
.cta-section .title {
  color: #fff;
  margin-bottom: 0.4rem;
}
.cta-section .lines {
  display: block;
  position: relative;
  width: 3.14rem;
  height: 3.14rem;
  margin: auto;
  margin-bottom: 0.6rem;
}
.cta-section .lines div {
  display: block;
  position: absolute;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  width: 100%;
  height: 2px;
  background-color: #fff;
}
.cta-section .lines div:nth-child(1) {
  transform: translate(-50%, -50%) rotate(90deg);
}
.cta-section .lines div:nth-child(2) {
  transform: translate(-50%, -50%) rotate(18deg);
}
.cta-section .lines div:nth-child(3) {
  transform: translate(-50%, -50%) rotate(162deg);
}
.cta-section .lines div:nth-child(4) {
  transform: translate(-50%, -50%) rotate(55deg);
}
.cta-section .lines div:nth-child(5) {
  transform: translate(-50%, -50%) rotate(128deg);
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .cta-section {
    transition: min-heoght 400ms ease;
    min-height: var(--mobile100vh);
  }
  .cta-section .lines {
    width: 2.14rem;
    height: 2.14rem;
  }
  .cta-section .cnt {
    max-width: none;
    width: 100%;
  }
}
.title-text-section-3 {
  padding-top: 1.6rem;
  padding-bottom: 1.6rem;
  background-color: #fff;
}
.title-text-section-3 .title {
  color: var(--green);
  margin-bottom: 0.45rem;
}
.title-text-section-3 .title-s {
  color: var(--green);
}
.title-text-section-3 .text {
  color: var(--green);
}
.title-text-section-3 .line {
  display: block;
  transition: transform 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transform-origin: 0% 50%;
  transform: scaleX(0);
  width: 100%;
  height: 2px;
  background-color: var(--green);
  margin-bottom: 0.4rem;
}
.title-text-section-3 .line.animated {
  transform: scaleX(1);
}
.title-text-section-3 .nav-wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 2.15rem;
  margin-left: auto;
  margin-right: 0;
  margin-bottom: 0.45rem;
}
.title-text-section-3 .nav-wrap svg {
  cursor: pointer;
  transition: opacity 800ms cubic-bezier(0.4, 0, 0.09, 0.98);
  position: relative;
  display: block;
  width: 1rem;
}
.title-text-section-3 .nav-wrap svg:hover {
  opacity: 0.4;
}
.title-text-section-3 .nav-wrap svg.next {
  transform: rotate(180deg);
  top: 0.04rem;
}
.title-text-section-3 .grid {
  display: flex;
  justify-content: space-between;
}
.title-text-section-3 .grid .g-inner:first-child {
  width: calc(100% - 5.8rem);
}
.title-text-section-3 .grid .g-inner:last-child {
  width: 5.8rem;
}
.title-text-section-3 .splide__track {
  overflow: visible;
}
.title-text-section-3 .splide__track .splide__slide {
  transition: opacity 400ms ease;
  opacity: 0;
}
.title-text-section-3 .splide__track .splide__slide.is-active {
  opacity: 1;
}

@media screen and (orientation: portrait) and (max-width: 767px) {
  .title-text-section-3 {
    padding-top: 1.2rem;
    padding-bottom: 1.2rem;
  }
  .title-text-section-3 .grid {
    display: block;
  }
  .title-text-section-3 .grid .g-inner:first-child {
    width: 100%;
    margin-bottom: 0.4rem;
  }
  .title-text-section-3 .grid .g-inner:last-child {
    width: 100%;
  }
}
.footer {
    padding: 1rem 0.25rem 0.55rem;
    background-color: var(--green);
}
.footer form {
  position: relative;
}
.footer .gform_wrapper.gravity-theme .gform_fields input {
  display: block;
  width: 100%;
  background-color: transparent;
  border: none;
  border-bottom: 2px solid rgba(255, 255, 255, 0.5);
  padding: 0.1rem 0;
  font-family: 'Nunito';
  font-size: 0.18rem;
  line-height: 0.27rem;
  color: rgba(255, 255, 255, 0.5);
  letter-spacing: 0em;
}
.footer .gform_wrapper.gravity-theme .gform_fields input:focus-visible {
  outline: none;
}
.footer .gform_wrapper.gravity-theme .gform_fields input::-moz-placeholder {
  color: rgba(255, 255, 255, 0.5);
}
.footer .gform_wrapper.gravity-theme .gform_fields input::placeholder {
  color: rgba(255, 255, 255, 0.5);
}
.footer .gform_ajax_spinner {
  box-sizing: border-box;
  border: 2px solid #fff0;
  border-left: 2px solid #fff;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  animation: spinner 1.1s infinite linear;
  border-radius: 50%;
  width: 0.16rem;
  height: 0.16rem;
  margin-top: 0.1rem;
  margin-bottom: 0.2rem;
  position: absolute;
  right: -0.2rem;
  top: 0.43rem;
}
@keyframes spinner {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.footer .gform_confirmation_wrapper {
  font-family: 'Nunito';
  font-size: 0.18rem;
  line-height: 0.27rem;
  color: #fff;
  padding-top: 0.4rem;
}
.footer .gform_wrapper.gravity-theme .gfield_description {
  font-family: 'Nunito';
  font-size: 0.16rem;
  line-height: 0.25rem;
  color: rgba(255, 255, 255, 0.5);
}
.footer .gform_wrapper.gravity-theme .gform_footer {
  padding: 0;
  margin: 0;
}
.footer .gform_wrapper.gravity-theme .gform_footer button {
  background-color: transparent;
  border: none;
  position: absolute;
  top: 0.5rem;
  right: 0;
  padding: 0.05rem;
  cursor: pointer;
}
.footer .gform_wrapper.gravity-theme .gform_footer button span {
  display: none;
}
.footer .gform_wrapper.gravity-theme .gform_footer button::after {
  content: url(../../../../../../../../themes/oasis-web/assets/img/svg/menu-arrow.svg);
  display: block;
  height: 0.12rem;
  width: 0.2rem;
  transform: rotate(-90deg);
}
.footer .gform_wrapper.gravity-theme .gfield_label {
  opacity: 0;
  visibility: hidden;
}
.footer .gform_wrapper .gform_validation_errors {
  display: none;
}
.footer .gform_wrapper .gfield_validation_message,
.footer .gform_wrapper .validation_message {
  background-color: transparent;
  color: rgba(255, 255, 255, 0.5);
  border: none;
  margin-top: 5px;
  padding: 5px;
  padding-top: 5px;
  padding-left: 0;
}
.footer .gform_wrapper .gfield_error [aria-invalid="true"] {
  border: none;
  border-bottom: 2px solid rgba(255, 255, 255, 0.5);
}
.footer .container {
  width: 100%;
  max-width: 1440px;
  margin: auto;
}
.footer .f-head {
  display: flex;
  justify-content: space-between;
  margin-bottom: 0.7rem;
}
.footer .clock {
  font-size: 0.55rem;
  line-height: 0.7rem;
  letter-spacing: 0.06em;
  color: #fff;
}
.footer .clock span {
  display: block;
}
.footer .button-wrap {
  display: flex;
  white-space: nowrap;
  gap: 0.25rem;
  height: 100%;
  width: -moz-min-content;
  width: min-content;
}
.footer .button-wrap .button-1 {
  white-space: nowrap;
  height: 100%;
}
.footer .f-table {
    display: flex;
    position: relative;
    margin-bottom: 0.7rem;
}
.conted {
    display: block;
    color: #fff;
    padding: 0 0 5px;
    border-bottom: 1px solid #fff;
    margin-bottom: 5px;
}
.footer .f-table .t-inner {
  position: relative;
  padding: 0.3rem;
}
.footer .f-table .t-inner:first-child {
  width: calc(100% - (2.75rem * 3));
}
.footer .f-table .t-inner:not(:first-child) {
  display: flex;
  width: 2.75rem;
}
.footer .f-table .t-inner::after {
  content: "";
  display: block;
  position: absolute;
  transition: -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98),
    -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  -webkit-clip-path: circle(0% at 0 0);
  clip-path: circle(0% at 0 0);
  top: 0;
  right: -2px;
  width: 0;
  height: calc(100% + 2px);
  border-right: 2px solid #fff;
}
.footer .f-table::before {
  content: "";
  display: block;
  position: absolute;
  transition: -webkit-clip-path 2000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 2000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 2000ms cubic-bezier(0.4, 0, 0.09, 0.98),
    -webkit-clip-path 2000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  -webkit-clip-path: circle(0% at 0 0);
  clip-path: circle(0% at 0 0);
  inset: 0;
  width: 100%;
  height: 100%;
  border: 2px solid #fff;
  border-right: 0;
}
.footer .f-table.animated::before {
  -webkit-clip-path: circle(142% at 0 0);
  clip-path: circle(142% at 0 0);
}
.footer .f-table.animated .t-inner:nth-child(1)::after {
  -webkit-clip-path: circle(150% at 50% 0);
  clip-path: circle(150% at 50% 0);
  transition-delay: 0ms;
}
.footer .f-table.animated .t-inner:nth-child(2)::after {
  -webkit-clip-path: circle(150% at 50% 0);
  clip-path: circle(150% at 50% 0);
  transition-delay: 200ms;
}
.footer .f-table.animated .t-inner:nth-child(3)::after {
  -webkit-clip-path: circle(150% at 50% 0);
  clip-path: circle(150% at 50% 0);
  transition-delay: 400ms;
}
.footer .f-table.animated .t-inner:nth-child(4)::after {
  -webkit-clip-path: circle(150% at 50% 0);
  clip-path: circle(150% at 50% 0);
  transition-delay: 600ms;
}
.footer .text-l {
  color: #fff;
  margin-bottom: 0.88rem;
}
.footer .address {
  color: rgba(255, 255, 255, 0.7);
}
.footer .link {
  position: relative;
  display: block;
  color: #fff;
  overflow: hidden;
}
.footer .link span {
  display: inline-block;
  transition: transform 800ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transform: translateY(0%) skewY(0deg);
  transform-origin: 0 50%;
}
.footer .link::after {
  content: attr(data-text);
  position: absolute;
  left: 0;
  transition: transform 800ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transform: translateY(100%) skewY(-15deg);
  transform-origin: 100% 50%;
}
.footer .link:not(:last-child) {
  margin-bottom: 0.15rem;
}
.footer .link:hover span {
  transform: translateY(-100%) skewY(-15deg);
}
.footer .link:hover::after {
  transform: translateY(0%) skewY(0deg);
}
.footer .f-foot {
  display: flex;
  justify-content: space-between;
}
.footer .f-foot .logo-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  max-width: 6.08rem;
  gap: 0.56rem;
}
.footer .f-foot .logo-wrap ul {
    display: flex;
    align-items: center;
}
.footer .f-foot .logo-wrap ul li a {
  color: #fff;
  margin-right: 40px;
  opacity: 1 !important;
  transform: translate(0) !important;
}
.footer .f-foot .logo {
  display: block;
}
.footer .f-foot .logo.bm {
  mix-blend-mode: luminosity;
}
.footer .copy-wrap {
  display: flex;
  align-items: flex-end;
}

.footer .copy-wrap .copy {
    display: block;
    text-align: center;
    font-size: 0.14rem;
    line-height: 0.2rem;
    letter-spacing: 0.0005rem;
    color: #fff;
    opacity: 0.7;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .footer {
      padding: 0.5rem 0.2rem 0.3rem;
  }
  .footer .f-head {
    display: block;
    margin-bottom: 0.3rem;
  }
  .footer .container {
    max-width: 3.85rem;
  }
  .footer .clock {
    margin-bottom: 0;
    font-size: 0.35rem;
    line-height: 0.5rem;
  }
  .footer .button-wrap {
    flex-direction: column;
    margin-left: auto;
    margin-right: 0;
  }
  .footer .f-table {
    flex-direction: column;
    margin-bottom: 0.4rem;
  }
  .footer .f-table .t-inner:first-child {
    width: 100%;
  }
  .footer .f-table .t-inner:not(:first-child) {
    width: 100%;
  }
  .footer .f-table .t-inner:not(:last-child) {
    border-right: none;
    border-bottom: 1px solid #fff;
  }
  .footer .f-table::before {
    border: 1px solid #fff;
  }
  .footer .f-foot {
    flex-wrap: wrap;
  }
  .footer .f-foot .logo-wrap {
    width: 100%;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin: auto;
    margin-bottom: 0.3rem;
  }
  .footer .f-foot .logo {
    display: block;
  }
  .footer .copy-wrap {
    margin-right: 0;
    display: flex;
    text-align: center;
    justify-content: flex-start;
    width: 100%;
  }
}
.hero-section-2 {
  padding-top: 2.7rem;
  padding-bottom: 1.6rem;
  background-color: #fff;
}
.hero-section-2 .text {
  color: var(--green);
  text-align: center;
  margin-bottom: 0.2rem;
}
.hero-section-2 .title-2xl {
  color: var(--green);
  text-align: center;
}
.big-media-section-2 {
  overflow: hidden;
}
.big-media-section-2 .media-wrap {
  aspect-ratio: 12 / 5;
}
.big-media-section-2 .media-wrap .media {
    height: 100%;
    object-fit: contain;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .big-media-section-2 .media-wrap {
    aspect-ratio: 7 / 3;
  }
}
.text-button-section {
  margin-top: 1.6rem;
  margin-bottom: 1.06rem;
  background-color: #fff;
}
.text-button-section .grid {
  display: flex;
}
.text-button-section .grid .g-inner:first-child {
  width: 6.78rem;
}
.text-button-section .grid .g-inner:last-child {
  text-align: right;
  width: calc(100% - 6.78rem);
}
.text-button-section .grid .g-inner.no-button-width {
  text-align: left;
  width: 100%;
}
.text-button-section .text-l {
  color: var(--green);
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .text-button-section {
    margin-top: 0.8rem;
    margin-bottom: 0.8rem;
  }
  .text-button-section .grid {
    display: block;
  }
  .text-button-section .grid .g-inner:first-child {
    width: 100%;
    margin-bottom: 0.6rem;
  }
  .text-button-section .grid .g-inner:last-child {
    text-align: left;
    width: 100%;
  }
  .text-button-section .grid .g-inner.no-button-width {
    text-align: left;
    width: 100%;
  }
}
.text-button-section-2 {
  background-color: #fff;
}
.text-button-section-2 .text-l {
  color: var(--green);
}
.text-button-section-2 .text-l:not(:only-child) {
  margin-bottom: 0.45rem;
}
.text-button-section-2 .text {
  color: var(--green);
}
.text-button-section-2 .text a {
  text-decoration: underline;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .text-button-section-2 .grid {
    display: block;
  }
  .text-button-section-2 .grid .g-inner:first-child {
    width: 100%;
    margin-bottom: 0.3rem;
    text-align: center;
  }
  .text-button-section-2 .grid .g-inner:last-child {
    text-align: left;
    width: 100%;
  }
}
.dual-media-section {
  display: flex;
}
.dual-media-section .media-wrap {
  width: 50%;
  aspect-ratio: 36 / 41;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .dual-media-section {
    display: block;
  }
  .dual-media-section .media-wrap {
    width: 100%;
    aspect-ratio: 4 / 3;
  }
}
.single-media-section-1 {
  background-color: #fff;
}
.single-media-section-1 .media-wrap {
  max-width: 4.8rem;
  margin-left: auto;
  margin-right: 0;
  aspect-ratio: 16 / 23;
}
.single-media-section-1 .media-wrap .media {
  height: 110%;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .single-media-section-1 .media-wrap {
    max-width: none;
  }
  .single-media-section-1 .media-wrap .media {
    height: 100%;
  }
}
.single-media-section-2 {
  background-color: #fff;
}
.single-media-section-2 .media-wrap {
  max-width: 3.8rem;
  margin-left: auto;
  margin-right: auto;
  aspect-ratio: 38 / 51;
}
.single-media-section-2 .media-wrap .media {
  height: 110%;
  top: auto;
  bottom: 0;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .single-media-section-2 .media-wrap {
    max-width: none;
  }
  .single-media-section-2 .media-wrap .media {
    top: 0;
    height: 100%;
  }
}
.single-media-section-3 {
  background-color: #fff;
}
.single-media-section-3 .media-wrap {
  aspect-ratio: 49 / 29;
}
.single-media-section-3 .media-wrap .media {
  height: 110%;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .single-media-section-3 .media-wrap {
    aspect-ratio: 4 / 3;
  }
  .single-media-section-3 .media-wrap .media {
    height: 100%;
  }
}
.title-table-section {
  padding-top: 2px;
  padding-bottom: 2px;
  background-color: #fff;
}
.title-table-section .title {
  color: var(--green);
  margin-bottom: 0.45rem;
}
.title-table-section .text-l {
  color: var(--green);
  margin-bottom: 0.45rem;
}
.title-table-section .table {
  display: flex;
  flex-wrap: wrap;
  position: relative;
  margin-bottom: 10px;
}
.title-table-section .table::before {
  content: "";
  display: block;
  position: absolute;
  transition: -webkit-clip-path 2000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 2000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 2000ms cubic-bezier(0.4, 0, 0.09, 0.98),
    -webkit-clip-path 2000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  -webkit-clip-path: circle(0% at 0 0);
  clip-path: circle(0% at 0 0);
  inset: 0;
  width: var(--linewidthtable);
  height: 100%;
  border: 2px solid var(--green);
  border-right: 0;
  border-bottom: 0;
}
.title-table-section .table .t-inner {
  display: flex;
  position: relative;
  flex-direction: column;
  justify-content: space-between;
  gap: 0.6rem;
  width: 50%;
  padding: 0.3rem;
  min-height: 3rem;
}
.title-table-section .table .t-inner::before {
  content: "";
  display: block;
  position: absolute;
  transition: -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98),
    -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  -webkit-clip-path: circle(0% at 0 0);
  clip-path: circle(0% at 0 0);
  left: 0;
  bottom: -2px;
  width: calc(100% + 2px);
  height: 0;
  border-bottom: 2px solid var(--green);
}
.title-table-section .table .t-inner::after {
  content: "";
  display: block;
  position: absolute;
  transition: -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98),
    -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  -webkit-clip-path: circle(0% at 0 0);
  clip-path: circle(0% at 0 0);
  top: 0;
  right: -2px;
  width: 0;
  height: calc(100% + 2px);
  border-right: 2px solid var(--green);
}
.title-table-section .table.animated::before {
  -webkit-clip-path: circle(142% at 0 0);
  clip-path: circle(142% at 0 0);
}
.title-table-section .table.animated .t-inner:nth-child(1)::before {
  -webkit-clip-path: circle(150% at 0 50%);
  clip-path: circle(150% at 0 50%);
  transition-delay: 0ms;
}
.title-table-section .table.animated .t-inner:nth-child(1)::after {
  -webkit-clip-path: circle(150% at 50% 0);
  clip-path: circle(150% at 50% 0);
  transition-delay: 0ms;
}
.title-table-section .table.animated .t-inner:nth-child(2)::before {
  -webkit-clip-path: circle(150% at 0 50%);
  clip-path: circle(150% at 0 50%);
  transition-delay: 200ms;
}
.title-table-section .table.animated .t-inner:nth-child(2)::after {
  -webkit-clip-path: circle(150% at 50% 0);
  clip-path: circle(150% at 50% 0);
  transition-delay: 200ms;
}
.title-table-section .table.animated .t-inner:nth-child(3)::before {
  -webkit-clip-path: circle(150% at 0 50%);
  clip-path: circle(150% at 0 50%);
  transition-delay: 400ms;
}
.title-table-section .table.animated .t-inner:nth-child(3)::after {
  -webkit-clip-path: circle(150% at 50% 0);
  clip-path: circle(150% at 50% 0);
  transition-delay: 400ms;
}
.title-table-section .table.animated .t-inner:nth-child(4)::before {
  -webkit-clip-path: circle(150% at 0 50%);
  clip-path: circle(150% at 0 50%);
  transition-delay: 600ms;
}
.title-table-section .table.animated .t-inner:nth-child(4)::after {
  -webkit-clip-path: circle(150% at 50% 0);
  clip-path: circle(150% at 50% 0);
  transition-delay: 600ms;
}
.title-table-section .table.animated .t-inner:nth-child(5)::before {
  -webkit-clip-path: circle(150% at 0 50%);
  clip-path: circle(150% at 0 50%);
  transition-delay: 800ms;
}
.title-table-section .table.animated .t-inner:nth-child(5)::after {
  -webkit-clip-path: circle(150% at 50% 0);
  clip-path: circle(150% at 50% 0);
  transition-delay: 800ms;
}
.title-table-section .table.animated .t-inner:nth-child(6)::before {
  -webkit-clip-path: circle(150% at 0 50%);
  clip-path: circle(150% at 0 50%);
  transition-delay: 1000ms;
}
.title-table-section .table.animated .t-inner:nth-child(6)::after {
  -webkit-clip-path: circle(150% at 50% 0);
  clip-path: circle(150% at 50% 0);
  transition-delay: 1000ms;
}
.title-table-section .table.animated .t-inner:nth-child(7)::before {
  -webkit-clip-path: circle(150% at 0 50%);
  clip-path: circle(150% at 0 50%);
  transition-delay: 1200ms;
}
.title-table-section .table.animated .t-inner:nth-child(7)::after {
  -webkit-clip-path: circle(150% at 50% 0);
  clip-path: circle(150% at 50% 0);
  transition-delay: 1200ms;
}
.title-table-section .table.animated .t-inner:nth-child(8)::before {
  -webkit-clip-path: circle(150% at 0 50%);
  clip-path: circle(150% at 0 50%);
  transition-delay: 1400ms;
}
.title-table-section .table.animated .t-inner:nth-child(8)::after {
  -webkit-clip-path: circle(150% at 50% 0);
  clip-path: circle(150% at 50% 0);
  transition-delay: 1400ms;
}
.title-table-section .title-s {
  color: var(--green);
}
.title-table-section .title-s small {
  display: block;
  font-size: 0.18rem;
  line-height: 0.22rem;
}
.title-table-section .text {
  color: var(--green);
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .title-table-section .table .t-inner {
    width: 100%;
    gap: 0.3rem;
  }
}
.accordion-section {
  background-color: #fff;
}
.accordion-section .title {
  color: var(--green);
  margin-bottom: 0.45rem;
}
.accordion-section .text-l {
  transition: color 800ms cubic-bezier(0.4, 0, 0.09, 0.98);
  color: var(--green);
}
.accordion-section .text {
  transition: color 800ms cubic-bezier(0.4, 0, 0.09, 0.98);
  color: var(--green);
}
.accordion-section .accordion-frame .line {
  transition: -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98),
    -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  -webkit-clip-path: circle(0% at 0 50%);
  clip-path: circle(0% at 0 50%);
  width: 100%;
  height: 0;
  border-bottom: 2px solid var(--green);
}
.accordion-section .accordion-frame .line.animated {
  -webkit-clip-path: circle(150% at 0 50%);
  clip-path: circle(150% at 0 50%);
}
.accordion-section .accordion {
  cursor: pointer;
  display: block;
  position: relative;
  transition: background-color 800ms cubic-bezier(0.4, 0, 0.09, 0.98);
  padding: 0.24rem 1.1rem 0.24rem 0.3rem;
}
.accordion-section .accordion svg {
  position: absolute;
  transform: translateY(-50%);
  transition: opacity 800ms cubic-bezier(0.4, 0, 0.09, 0.98);
  pointer-events: none;
  top: 50%;
  right: 0.24rem;
  display: block;
  width: 0.45rem;
}
.accordion-section .accordion .plus {
  opacity: 1;
}
.accordion-section .accordion .plus path {
  stroke: var(--green);
}
.accordion-section .accordion .minus {
  opacity: 0;
}
.accordion-section .accordion .minus path {
  stroke: var(--green);
}
.accordion-section .accordion .expander {
  overflow: hidden;
}
.accordion-section .accordion .inner {
  padding-top: 0.1rem;
}
.accordion-section .accordion.is-open .plus {
  opacity: 0;
}
.accordion-section .accordion.is-open .minus {
  opacity: 1;
}
.stacking-frame .half-color-section {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.half-color-section {
  background-color: #fff;
}
.half-color-section .grid {
  display: flex;
  height: 100%;
}
.half-color-section .grid .g-inner:first-child {
  width: 50%;
}
.half-color-section .grid .g-inner:last-child {
  display: flex;
  align-items: center;
  padding: 0.5rem 0;
  padding-left: 1.1rem;
  width: 50%;
}
.half-color-section .media-wrap {
  height: 100%;
}
.half-color-section .cnt {
  width: 100%;
  max-width: 4.8rem;
}
.half-color-section .title {
  transition: color 800ms cubic-bezier(0.4, 0, 0.09, 0.98);
  color: var(--green);
  margin-bottom: 0.32rem;
}
.half-color-section .text {
  transition: color 800ms cubic-bezier(0.4, 0, 0.09, 0.98);
  color: var(--green);
  margin-bottom: 0.32rem;
}
.half-color-section .button-1 {
  transition: border-color 800ms cubic-bezier(0.4, 0, 0.09, 0.98),
    color 800ms cubic-bezier(0.4, 0, 0.09, 0.98);
}
.half-color-section .button-1 svg path {
  transition: fill 800ms cubic-bezier(0.4, 0, 0.09, 0.98);
}
.half-color-section:nth-child(even) {
  background-color: var(--green);
}
.half-color-section:nth-child(even) .button-1 {
  border-color: #fff;
  color: #fff;
}
.half-color-section:nth-child(even) .button-1 svg path {
  fill: #fff;
}
.half-color-section:nth-child(even) .title,
.half-color-section:nth-child(even) .text {
  color: #fff;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .half-color-section .grid {
    flex-wrap: wrap;
  }
  .half-color-section .grid .g-inner:first-child {
    width: 100%;
  }
  .half-color-section .grid .g-inner:last-child {
    display: block;
    padding-left: 0;
    width: 100%;
    max-width: 3.85rem;
    margin: auto;
  }
}
.details-nav-section {
  background-color: #fff;
}
.details-nav-section .grid {
  display: flex;
}
.details-nav-section .grid .g-inner:first-child {
  width: 8.8rem;
}
.details-nav-section .grid .g-inner:last-child {
  width: calc(100% - 8.8rem);
}
.details-nav-section .title-2xl {
  color: var(--green);
}
.details-nav-section .nav-wrap {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  top: 0.2rem;
  width: 2.15rem;
  margin-left: auto;
  margin-right: 0;
  min-height: 0.8rem;
}
.details-nav-section .nav-wrap a {
  display: block;
  width: 1rem;
}
.details-nav-section .nav-wrap svg {
  cursor: pointer;
  transition: opacity 800ms cubic-bezier(0.4, 0, 0.09, 0.98);
  position: relative;
  display: block;
  width: 100%;
}
.details-nav-section .nav-wrap svg:hover {
  opacity: 0.4;
}
.details-nav-section .nav-wrap svg.next {
  transform: rotate(180deg);
  top: 0.04rem;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .details-nav-section .grid {
    display: block;
  }
  .details-nav-section .grid .g-inner:first-child {
    width: 100%;
  }
  .details-nav-section .grid .g-inner:last-child {
    width: 100%;
  }
  .details-nav-section .nav-wrap {
    top: 0;
  }
}
.details-stats-section {
  padding-top: 6px;
  padding-bottom: 6px;
  background-color: #fff;
}
.details-stats-section .grid {
  display: flex;
  position: relative;
  flex-wrap: wrap;
}
.details-stats-section .grid .g-inner {
  position: relative;
  width: 25%;
  padding: 0.3rem;
}
.details-stats-section .grid .g-inner::before {
  content: "";
  display: block;
  position: absolute;
  transition: -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98),
    -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  -webkit-clip-path: circle(0% at 0 0);
  clip-path: circle(0% at 0 0);
  left: 0;
  bottom: -2px;
  width: calc(100% + 2px);
  height: 0;
  border-bottom: 2px solid var(--green);
}
.details-stats-section .grid .g-inner::after {
  content: "";
  display: block;
  position: absolute;
  transition: -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98),
    -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  -webkit-clip-path: circle(0% at 0 0);
  clip-path: circle(0% at 0 0);
  top: 0;
  right: -2px;
  width: 0;
  height: calc(100% + 2px);
  border-right: 2px solid var(--green);
}
.details-stats-section .grid::before {
  content: "";
  display: block;
  position: absolute;
  transition: -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98),
    -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  -webkit-clip-path: circle(0% at 0 0);
  clip-path: circle(0% at 0 0);
  inset: 0;
  width: var(--linewidthdetails);
  height: 100%;
  border: 2px solid var(--green);
  border-right: 0;
  border-bottom: 0;
}
.details-stats-section .grid.animated::before {
  -webkit-clip-path: circle(142% at 0 0);
  clip-path: circle(142% at 0 0);
}
.details-stats-section .grid.animated .g-inner::before {
  -webkit-clip-path: circle(150% at 0 50%);
  clip-path: circle(150% at 0 50%);
  transition-delay: var(--delaylinesingle);
}
.details-stats-section .grid.animated .g-inner:after {
  -webkit-clip-path: circle(150% at 50% 0);
  clip-path: circle(150% at 50% 0);
  transition-delay: var(--delaylinesingle);
}
.details-stats-section .text-l {
  color: var(--green);
}
.details-stats-section .text {
  color: var(--green);
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .details-stats-section .grid {
    display: block;
  }
  .details-stats-section .grid .g-inner {
    width: 100%;
  }
  .details-stats-section .grid .g-inner:not(:last-child) {
    border-right: 0;
    border-bottom: 2px solid var(--green);
  }
}
.amenities-section {
  background-color: #fff;
}
.amenities-section .title-2xl {
  color: var(--green);
  margin-bottom: 0.64rem;
}
.amenities-section .grid {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 1.6rem;
}
.amenities-section .grid .g-inner {
  display: flex;
  position: relative;
  flex-direction: column;
  justify-content: center;
  padding: 0.3rem 0.1rem;
  width: calc(100% / 5);
}
.amenities-section .grid .g-inner::before {
  content: "";
  display: block;
  position: absolute;
  transition: -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98),
    -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  -webkit-clip-path: circle(0% at 0 0);
  clip-path: circle(0% at 0 0);
  left: 0;
  bottom: -2px;
  width: calc(100% + 2px);
  height: 0;
  border-bottom: 2px solid var(--green);
}
.amenities-section .grid .g-inner::after {
  content: "";
  display: block;
  position: absolute;
  transition: -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98),
    -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  -webkit-clip-path: circle(0% at 0 0);
  clip-path: circle(0% at 0 0);
  top: 0;
  right: -2px;
  width: 0;
  height: calc(100% + 2px);
  border-right: 2px solid var(--green);
}
.amenities-section .grid svg,
.amenities-section .grid img {
  display: block;
  max-width: 100%;
  max-height: 0.52rem;
  margin: 0 auto 0.31rem;
}
.amenities-section .grid .text {
  line-height: 0.22rem;
  text-align: center;
  color: var(--green);
}
.amenities-section .grid::before {
  content: "";
  display: block;
  position: absolute;
  transition: -webkit-clip-path 2000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 2000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 2000ms cubic-bezier(0.4, 0, 0.09, 0.98),
    -webkit-clip-path 2000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  -webkit-clip-path: circle(0% at 0 0);
  clip-path: circle(0% at 0 0);
  inset: 0;
  width: var(--linewidth);
  height: 100%;
  border: 2px solid var(--green);
  border-right: 0;
  border-bottom: 0;
}
.amenities-section .grid.animated::before {
  -webkit-clip-path: circle(142% at 0 0);
  clip-path: circle(142% at 0 0);
}
.amenities-section .grid.animated .g-inner::before {
  -webkit-clip-path: circle(150% at 0 50%);
  clip-path: circle(150% at 0 50%);
  transition-delay: var(--delaylineamenities);
}
.amenities-section .grid.animated .g-inner::after {
  -webkit-clip-path: circle(150% at 50% 0);
  clip-path: circle(150% at 50% 0);
  transition-delay: var(--delaylineamenities);
}
.amenities-section .title-s {
  color: var(--green);
  text-align: center;
  margin-bottom: 0.6rem;
}
.amenities-section .button-frame {
  text-align: right;
}
.amenities-section .button-frame .button-1 {
  text-align: center;
}
.amenities-area {
    background: #00382812;
    padding: 100px 0;
}
.amenities-icons {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
.amenities-icons li {
    padding: 20px;
    border: 1px solid #00382869;
    width: calc(33% - 15px);
    display: flex;
}
.amenities-icons li h2 {
    border-left: 1px solid #0038286e;
    padding-left: 15px;
    margin-left: 15px;
    color: #003828;
    text-transform: uppercase;
    display: flex;
    align-items: center;
}
.amenities-icons li img {
    height: 70px;
    opacity: .9;
}
.green {
    color: var(--green);
}

.mb-10 {
    margin-bottom: 10px;
}

.mb-50 {
    margin-bottom: 50px;
}

@media screen and (orientation: portrait) and (max-width: 767px) {
  .amenities-section .grid {
    display: block;
    width: 80%;
    margin: auto;
    margin-bottom: 1rem;
  }
  .amenities-section .grid .g-inner {
    width: 100%;
    margin: auto;
  }
  .amenities-section .button-frame {
    text-align: center;
  }
}
.next-page-title-section {
  background-color: #fff;
}
.next-page-title-section a {
  display: inline-block;
  width: -moz-fit-content;
  width: fit-content;
}
/* .next-page-title-section a:hover svg {
  right: -1.5rem;
} */
.next-page-title-section .text {
  color: var(--green);
}
.next-page-title-section .title {
  color: var(--green);
  max-width: 7.7rem;
}
.next-page-title-section .title svg {
  display: block;
  position: absolute;
  transform: translateY(-50%) rotate(180deg);
  top: 50%;
  right: -1.3rem;
  width: 1rem;
  transition: right 800ms cubic-bezier(0.4, 0, 0.09, 0.98);
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .next-page-title-section .text {
    margin-bottom: 0.1rem;
  }
  .next-page-title-section .title svg {
    position: relative;
    top: 0;
    transform: translateY(0%) rotate(180deg);
    margin-left: auto;
    margin-right: 0;
  }
}
.get-in-touch-section {
  padding-top: 5px;
  padding-bottom: 5px;
  background-color: #fff;
}
.get-in-touch-section .title {
  color: var(--green);
  text-align: center;
  margin-bottom: 0.45rem;
}
.get-in-touch-section .grid {
  position: relative;
  display: flex;
  flex-wrap: wrap;
}
.get-in-touch-section .grid .g-inner {
  position: relative;
  width: calc(100% / 3);
  padding: 0.3rem;
  min-height: 3rem;
}
.get-in-touch-section .grid .g-inner::before {
  content: "";
  display: block;
  position: absolute;
  transition: -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98),
    -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  -webkit-clip-path: circle(0% at 0 0);
  clip-path: circle(0% at 0 0);
  left: 0;
  bottom: -2px;
  width: calc(100% + 2px);
  height: 0;
  border-bottom: 2px solid var(--green);
}
.get-in-touch-section .grid .g-inner::after {
  content: "";
  display: block;
  position: absolute;
  transition: -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98),
    -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  -webkit-clip-path: circle(0% at 0 0);
  clip-path: circle(0% at 0 0);
  top: 0;
  right: -2px;
  width: 0;
  height: calc(100% + 2px);
  border-right: 2px solid var(--green);
}
.get-in-touch-section .grid::before {
  content: "";
  display: block;
  position: absolute;
  transition: -webkit-clip-path 2000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 2000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 2000ms cubic-bezier(0.4, 0, 0.09, 0.98),
    -webkit-clip-path 2000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  -webkit-clip-path: circle(0% at 0 0);
  clip-path: circle(0% at 0 0);
  inset: 0;
  width: var(--linewidthgetintouch);
  height: 100%;
  border: 2px solid var(--green);
  border-right: 0;
  border-bottom: 0;
}
.get-in-touch-section .grid.animated::before {
  -webkit-clip-path: circle(142% at 0 0);
  clip-path: circle(142% at 0 0);
}
.get-in-touch-section .grid.animated .g-inner::before {
  -webkit-clip-path: circle(150% at 0 50%);
  clip-path: circle(150% at 0 50%);
  transition-delay: var(--delayline);
}
.get-in-touch-section .grid.animated .g-inner::after {
  -webkit-clip-path: circle(150% at 50% 0);
  clip-path: circle(150% at 50% 0);
  transition-delay: var(--delayline);
}
.get-in-touch-section .title-s {
  color: var(--green);
  margin: 0.05rem 0 0.05rem;
}
.get-in-touch-section .title-s:nth-child(1) {
  margin: 0 0 0.05rem;
}
.get-in-touch-section .text-l {
  color: var(--green);
  margin: 0.1rem 0 0.05rem;
}
.get-in-touch-section .button-1 {
  margin-top: 0.3rem;
}
.get-in-touch-section .button-1:last-child {
  margin-bottom: 0;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .get-in-touch-section .grid .g-inner {
    width: 100%;
    gap: 0.3rem;
  }
}
.get-in-touch-section.type-2 {
  background-color: var(--green);
}
.get-in-touch-section.type-2 .title-s {
  color: #fff;
}
.get-in-touch-section.type-2 .text-l {
  color: #fff;
}
.get-in-touch-section.type-2 .grid::before {
  border-color: #fff;
}
.get-in-touch-section.type-2 .grid .g-inner::before,
.get-in-touch-section.type-2 .grid .g-inner::after {
  border-color: #fff;
}
.get-in-touch-section.type-2 .button-1 {
  margin-top: 0.3rem;
}
.get-in-touch-section.type-2 .button-1:last-child {
  margin-bottom: 0;
}
.menu-section {
  background-color: #fff;
}
.menu-section .title {
  color: var(--green);
  margin-bottom: 0.45rem;
}
.menu-section .title-s {
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: var(--green);
  margin-bottom: 0.2rem;
}
.menu-section .title-s span {
  display: block;
  font-size: 0.26rem;
  line-height: 0.34rem;
  letter-spacing: -0.01rem;
  font-weight: 300;
}
.menu-section .text {
  color: var(--green);
}
.menu-section .tabs-frame {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  margin-bottom: 0.4rem;
}
.menu-section .tabs-frame .tab {
  cursor: pointer;
  position: relative;
}
.menu-section .tabs-frame .tab::before {
  content: "";
  display: block;
  position: absolute;
  transition: opacity 600ms cubic-bezier(0.4, 0, 0.09, 0.98);
  left: 0;
  bottom: 0;
  width: 100%;
  height: 2px;
  background-color: var(--green);
  opacity: 0;
}
.menu-section .tabs-frame .tab.active::before {
  opacity: 1;
}
.menu-section .text-l {
  color: var(--green);
}
.menu-section .grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 0.46rem;
  row-gap: 0.6rem;
}
.menu-section .grid .g-inner {
  width: 100%;
  max-width: 4.54rem;
}
.directions-hero-section {
  padding-top: 2.68rem;
  padding-bottom: 1.6rem;
  background-color: var(--green);
}
.directions-hero-section .title-2xl {
  color: #fff;
  margin-bottom: 0.45rem;
}
.directions-hero-section .text-l {
  color: #fff;
  max-width: 4.76rem;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .directions-hero-section {
    padding-top: 2.28rem;
    padding-bottom: 1.1rem;
  }
  .directions-hero-section .title-2xl {
    margin-bottom: 0.25rem;
  }
  .directions-hero-section .text-l {
    max-width: none;
  }
}
.list-step-section {
  padding-top: 4px;
  padding-bottom: 6px;
  background-color: var(--green);
}
.list-step-section .text-l {
  color: #fff;
  margin-bottom: 0.45rem;
}
.list-step-section .custom-list {
  position: relative;
  display: block;
  padding: 0.3rem;
  color: #fff;
}
.list-step-section .custom-list p {
  margin-bottom: 0.16rem;
}
.list-step-section .custom-list li {
  padding-left: 0.3rem;
}
.list-step-section .custom-list li::before {
  content: "-";
}
.list-step-section .custom-list li:not(:last-of-type) {
  margin-bottom: 0.16rem;
}
.list-step-section .custom-list .border {
  display: block;
  position: absolute;
  transition: -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98),
    -webkit-clip-path 1000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  -webkit-clip-path: circle(0% at 0 0);
  clip-path: circle(0% at 0 0);
  top: 0;
  right: -2px;
  width: 0;
  height: calc(100% + 2px);
  border-right: 2px solid #fff;
}
.list-step-section .custom-list::before {
  content: "";
  display: block;
  position: absolute;
  transition: -webkit-clip-path 2000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 2000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  transition: clip-path 2000ms cubic-bezier(0.4, 0, 0.09, 0.98),
    -webkit-clip-path 2000ms cubic-bezier(0.4, 0, 0.09, 0.98);
  -webkit-clip-path: circle(0% at 0 0);
  clip-path: circle(0% at 0 0);
  inset: 0;
  width: 100%;
  height: 100%;
  border: 2px solid #fff;
  border-right: 0;
}
.list-step-section .custom-list.animated::before {
  -webkit-clip-path: circle(150% at 0 0);
  clip-path: circle(150% at 0 0);
}
.list-step-section .custom-list.animated .border {
  -webkit-clip-path: circle(150% at 50% 0);
  clip-path: circle(150% at 50% 0);
  transition-delay: 1000ms;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .list-step-section .custom-list {
    padding: 0.26rem;
  }
  .list-step-section .custom-list li {
    position: relative;
    padding-left: 0.1rem;
  }
  .list-step-section .custom-list li::before {
    position: absolute;
    left: 0;
  }
}
.content-section {
  background-color: #fff;
  color: var(--green);
}
.content-section .cnt {
  max-width: 8.8rem;
}
.content-section p {
  font-family: 'Nunito';
  font-size: 0.18rem;
  line-height: 0.27rem;
  font-weight: 400;
  letter-spacing: 0em;
}
.content-section h4 {
  font-family: 'Nunito';
  font-size: 0.26rem;
  line-height: 0.34rem;
  font-weight: 300;
  letter-spacing: -0.01rem;
  margin: 0.3rem 0;
}
.content-section h4 + p {
  margin: 0.3rem 0;
}
.content-section ul {
  display: block;
  font-family: 'Nunito';
  font-size: 0.18rem;
  line-height: 0.27rem;
  font-weight: 400;
  letter-spacing: 0em;
  margin: 0.3rem 0 0.8rem;
}
.content-section ul li {
  padding-left: 0.3rem;
}
.content-section ul li::before {
  content: "-";
}
.content-section ul li:not(:last-child) {
  margin-bottom: 0.16rem;
}
.content-section *:first-child {
  margin-top: 0;
}
.content-section *:last-child {
  margin-bottom: 0;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .content-section ul li {
    position: relative;
    padding-left: 0.1rem;
  }
  .content-section ul li::before {
    position: absolute;
    left: 0;
  }
}
.contact-hero-section {
  padding-top: 2.67rem;
  padding-bottom: 0;
  background-color: var(--green);
}
.contact-hero-section .grid {
  display: flex;
}
.contact-hero-section .grid .g-inner:first-child {
  width: calc(100% - 5.8rem);
}
.contact-hero-section .grid .g-inner:last-child {
  width: 5.8rem;
}
.contact-hero-section .media-wrap {
  aspect-ratio: 58 / 79;
}
.contact-hero-section .cnt {
  max-width: 4.76rem;
}
.contact-hero-section .title-2xl {
  color: #fff;
  margin-bottom: 0.45rem;
}
.contact-hero-section .text {
  color: #fff;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .contact-hero-section {
    padding-top: 2rem;
  }
  .contact-hero-section .grid {
    display: block;
  }
  .contact-hero-section .grid .g-inner:first-child {
    width: 100%;
  }
  .contact-hero-section .grid .g-inner:last-child {
    width: 100%;
  }
  .contact-hero-section .media-wrap {
    aspect-ratio: 4 / 3;
  }
  .contact-hero-section .title-2xl {
    margin-bottom: 0.2rem;
  }
  .contact-hero-section .text {
    margin-bottom: 0.45rem;
  }
}
.contact-form-section {
  background-color: var(--green);
}
.contact-form-section form {
  margin-top: 0.45rem;
}
.contact-form-section form .button-1 {
  background: linear-gradient(90deg,rgb(0, 56, 40) 0%, rgb(194, 130, 42) 100%);
}
.contact-form-section .gform_confirmation_wrapper {
  font-family: 'Nunito';
  font-size: 0.18rem;
  line-height: 0.27rem;
  color: #fff;
  padding-top: 0.4rem;
}
.contact-form-section .gform_ajax_spinner {
  box-sizing: border-box;
  border: 2px solid #fff0;
  border-left: 2px solid #fff;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  animation: spinner 1.1s infinite linear;
  border-radius: 50%;
  width: 0.16rem;
  height: 0.16rem;
  position: absolute;
  right: -0.25rem;
  top: 49%;
  transform: translateY(-50%);
}
@keyframes spinner {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.contact-form-section .gform_wrapper.gravity-theme .gform_footer {
  position: relative;
}
.contact-form-section .gform_wrapper.gravity-theme .gform_fields {
  grid-column-gap: 5%;
  grid-row-gap: 0.45rem;
}
.contact-form-section .gform_wrapper.gravity-theme .gform_fields input,
.contact-form-section .gform_wrapper.gravity-theme .gform_fields textarea {
  display: block;
  width: 100%;
  background-color: transparent;
  border: none;
  border-bottom: 2px solid #fff;
  padding: 0.1rem 0;
  font-family: 'Nunito';
  font-size: 0.18rem;
  line-height: 0.27rem;
  color: rgba(255, 255, 255, 0.5);
  letter-spacing: 0em;
  padding: 0;
  padding-bottom: 5px;
}
.contact-form-section
  .gform_wrapper.gravity-theme
  .gform_fields
  input:focus-visible,
.contact-form-section
  .gform_wrapper.gravity-theme
  .gform_fields
  textarea:focus-visible {
  outline: none;
}
.contact-form-section
  .gform_wrapper.gravity-theme
  .gform_fields
  input::-moz-placeholder,
.contact-form-section
  .gform_wrapper.gravity-theme
  .gform_fields
  textarea::-moz-placeholder {
  color: rgba(255, 255, 255, 0.5);
}
.contact-form-section
  .gform_wrapper.gravity-theme
  .gform_fields
  input::placeholder,
.contact-form-section
  .gform_wrapper.gravity-theme
  .gform_fields
  textarea::placeholder {
  color: rgba(255, 255, 255, 0.5);
}
.contact-form-section input {
  height: 47px;
}
.contact-form-section textarea {
  resize: none;
  height: 1.47rem;
}
.contact-form-section .gform_wrapper.gravity-theme .gfield_label {
  display: none;
}
.contact-form-section .gform_wrapper .gform_validation_errors {
  display: none;
}
.contact-form-section .gform_wrapper .gfield_validation_message,
.contact-form-section .gform_wrapper .validation_message {
  background-color: transparent;
  color: rgba(255, 255, 255, 0.5);
  border: none;
  margin-top: 5px;
  padding: 5px;
  padding-top: 5px;
  padding-left: 15px;
}
.contact-form-section .gform_wrapper.gravity-theme .description,
.contact-form-section .gform_wrapper.gravity-theme .gfield_description,
.contact-form-section .gform_wrapper.gravity-theme .gsection_description,
.contact-form-section .gform_wrapper.gravity-theme .instruction {
  font-family: 'Nunito';
  font-size: 0.16rem;
  line-height: 0.25rem;
}
.contact-form-section .gform_wrapper .gfield_error [aria-invalid="true"] {
  border: none;
  border-bottom: 2px solid rgba(255, 255, 255, 0.5);
}
.contact-form-section .gform_wrapper.gravity-theme #field_submit,
.contact-form-section .gform_wrapper.gravity-theme .gform_footer {
  justify-content: flex-end;
}
.contact-form-section .form-button {
  text-align: right;
  margin-top: 0.23rem;
  margin-bottom: 0;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .contact-form-section .form-button {
    margin-right: 0.2rem;
  }
  .contact-form-section .gform_ajax_spinner {
    right: -0.05rem;
  }
}
.social-links-section {
  background-color: var(--green);
}
.social-links-section .grid {
  display: flex;
  flex-direction: column;
}
.social-links-section p.text {
  margin-bottom: 0.1rem;
}
.social-links-section .social-link {
  margin-bottom: 0.25rem;
  position: relative;
}
.social-links-section .social-link:hover svg {
  transform: translateX(20%);
}
.social-links-section .social-link:last-of-type {
  margin-bottom: 0;
}
.social-links-section .social-link span {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.social-links-section i.title {
  margin-right: 0.3rem;
}
.social-links-section svg {
  width: 1rem;
  height: 0.5rem;
  display: block;
  transition: transform 800ms cubic-bezier(0.4, 0, 0.09, 0.98);
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .social-links-section i.title {
    margin-right: 0.15rem;
    font-size: 0.35rem;
    line-height: 0.4rem;
  }
  .social-links-section svg {
    width: 0.5rem;
    height: 0.25rem;
  }
}
.optiscroll {
  position: relative;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.optiscroll ::-webkit-scrollbar-track {
  -webkit-box-shadow: none !important;
  background-color: transparent;
}
.optiscroll ::-webkit-scrollbar {
  width: 3px !important;
  background-color: transparent;
}
.optiscroll ::-webkit-scrollbar-thumb {
  background-color: transparent;
}
.optiscroll.is-enabled {
  overflow: hidden;
}
.optiscroll.is-enabled > .optiscroll-content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  overflow: scroll;
  -webkit-overflow-scrolling: touch;
  width: 100%;
  height: auto;
}
.optiscroll-v,
.optiscroll-h {
  position: absolute;
  visibility: hidden;
  z-index: 2;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
.optiscroll-v {
  right: 0;
}
.optiscroll-h {
  bottom: 0;
}
.optiscroll.has-vtrack > .optiscroll-v,
.optiscroll.has-htrack > .optiscroll-h {
  visibility: visible;
}
.optiscroll.is-rtl > .optiscroll-v {
  left: 0;
  right: auto;
}
.optiscroll-vtrack,
.optiscroll-htrack {
  display: block;
  position: absolute;
  opacity: 1;
  transform: translate(0%, 0%);
  transition: height 0.2s ease 0s, width 0.2s ease 0s, opacity 0.2s ease 0s;
  box-sizing: border-box;
}
.optiscroll-v {
  top: 4px;
  bottom: 4px;
  width: 0;
}
.optiscroll-h {
  left: 4px;
  right: 4px;
  height: 0;
}
.optiscroll.has-vtrack.has-htrack > .optiscroll-v {
  bottom: 8px;
}
.optiscroll.has-vtrack.has-htrack > .optiscroll-h {
  right: 8px;
}
.optiscroll-vtrack,
.optiscroll-htrack {
  background: rgba(0, 0, 0, 0.3);
  border-radius: 2px;
  box-shadow: 0 0 1px #fff;
  opacity: 0;
}
.optiscroll-vtrack {
  width: 3px;
  right: 4px;
}
.optiscroll-htrack {
  height: 3px;
  bottom: 4px;
}
.optiscroll:hover > .optiscroll-v .optiscroll-vtrack,
.optiscroll:hover > .optiscroll-h .optiscroll-htrack {
  opacity: 1;
}
.optiscroll.has-vtrack.has-htrack.is-rtl > .optiscroll-h {
  right: 4px;
  left: 8px;
}
.optiscroll.is-rtl > .optiscroll-v .optiscroll-vtrack {
  right: auto;
  left: 4px;
}
.optiscroll > .optiscroll-v .optiscroll-vtrack {
  opacity: 1 !important;
  background-color: #b8a3a346;
}
body.popup-modal-active {
  overflow-y: hidden;
}
body.popup-modal-active .header {
  transform: translateY(-110%);
}
body.popup-modal-active .fixed-book-now-btn {
  opacity: 0;
  visibility: hidden;
}
body.popup-modal-active .popup-wrap {
  opacity: 1;
  visibility: visible;
}
.popup-wrap {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 310;
  padding: 0.5rem;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s cubic-bezier(0.4, 0, 0.09, 0.98),
    visibility 0.4s cubic-bezier(0.4, 0, 0.09, 0.98);
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding-right: 0.12rem;
}
.popup-wrap .grid {
  display: flex;
  align-items: center;
}
.popup-wrap::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--green);
  opacity: 0.8;
  z-index: -1;
}
.popup-wrap .popup {
  width: 9.5rem;
  height: auto;
  position: relative;
  border: 0.02rem solid var(--green);
  max-height: 100%;
}
.popup-wrap .popup .popup-inner {
  background-color: #fff;
  align-items: unset;
  width: 100%;
  height: auto;
  max-height: 100%;
}
.popup-wrap .popup .popup-inner .g-inner:first-of-type {
  width: calc(100% - 4.34rem);
  display: block;
  flex-grow: 1;
}
.popup-wrap .popup .popup-inner .g-inner:first-of-type .top-wrap {
  border-bottom: 0.02rem solid var(--green);
}
.popup-wrap .popup .popup-inner .g-inner:first-of-type .top-wrap .close-button {
  width: 1.09rem;
  height: 1.09rem;
  border-right: 0.02rem solid var(--green);
  position: relative;
}
.popup-wrap
  .popup
  .popup-inner
  .g-inner:first-of-type
  .top-wrap
  .close-button:hover
  .close-icon
  span {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.popup-wrap
  .popup
  .popup-inner
  .g-inner:first-of-type
  .top-wrap
  .close-button:hover
  .close-icon
  span:last-of-type {
  transform: translate(-50%, -50%) rotate(45deg);
}
.popup-wrap
  .popup
  .popup-inner
  .g-inner:first-of-type
  .top-wrap
  .close-button
  .close-icon {
  width: 0.4rem;
  height: 0.4rem;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  cursor: pointer;
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.09, 0.98);
}
.popup-wrap
  .popup
  .popup-inner
  .g-inner:first-of-type
  .top-wrap
  .close-button
  .close-icon
  span {
  width: 100%;
  height: 0.02rem;
  background-color: var(--green);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.09, 0.98);
}
.popup-wrap
  .popup
  .popup-inner
  .g-inner:first-of-type
  .top-wrap
  .close-button
  .close-icon
  span:last-of-type {
  height: 100%;
  width: 0.02rem;
}
.popup-wrap .popup .popup-inner .g-inner:first-of-type .top-wrap .logo-wrap {
  padding: 0.23rem;
  width: calc(100% - 1.09rem);
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  height: 1.09rem;
}
.popup-wrap
  .popup
  .popup-inner
  .g-inner:first-of-type
  .top-wrap
  .logo-wrap
  .popup-logo {
  width: auto;
  height: 100%;
}
.popup-wrap .popup .popup-inner .g-inner:first-of-type .popup-img-wrap {
  display: none;
}
.popup-wrap .popup .popup-inner .g-inner:first-of-type .scroll-wrap {
  max-height: calc(100% - 1.09rem);
  height: auto;
  min-height: 4.68rem;
}
.popup-wrap
  .popup
  .popup-inner
  .g-inner:first-of-type
  .scroll-wrap
  .content-wrap {
  padding: 0.63rem 0.4rem;
  height: auto;
  min-height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}
.popup-wrap
  .popup
  .popup-inner
  .g-inner:first-of-type
  .scroll-wrap
  .content-wrap
  .popup-img-wrap {
  display: none;
}
.popup-wrap
  .popup
  .popup-inner
  .g-inner:first-of-type
  .scroll-wrap
  .content-wrap
  .popup-title {
  color: var(--green);
}
.popup-wrap
  .popup
  .popup-inner
  .g-inner:first-of-type
  .scroll-wrap
  .content-wrap
  .popup-text {
  color: var(--green);
  margin-top: 0.4rem;
}
.popup-wrap
  .popup
  .popup-inner
  .g-inner:first-of-type
  .scroll-wrap
  .content-wrap
  .popup-btn {
  margin-top: 0.3rem;
}
.popup-wrap .popup .popup-inner .g-inner:last-of-type {
  width: 4.34rem;
  flex-grow: 1;
  position: relative;
  overflow: hidden;
}
.popup-wrap .popup .popup-inner .popup-img {
  position: absolute;
  width: calc(100% + 0.02rem);
  height: calc(100% + 0.02rem);
  -o-object-fit: cover;
  object-fit: cover;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (orientation: landscape) and (max-height: 505px) {
  .popup-wrap .popup .popup-inner .g-inner:first-of-type .scroll-wrap {
    min-height: 3.68rem;
  }
}
@media screen and (orientation: landscape) and (max-height: 400px) {
  .popup-wrap .popup .popup-inner .g-inner:first-of-type .scroll-wrap {
    min-height: 2.68rem;
  }
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .popup-wrap {
    padding: 0.19rem;
    transition: min-height 400ms ease,
      opacity 0.4s cubic-bezier(0.4, 0, 0.09, 0.98),
      visibility 0.4s cubic-bezier(0.4, 0, 0.09, 0.98);
    min-height: var(--mobile100vh);
    height: 100vh;
  }
  .popup-wrap .grid {
    flex-direction: column;
  }
  .popup-wrap .popup {
    width: 3.9rem;
    height: 100%;
    max-height: 6.55rem;
  }
  .popup-wrap .popup.no-img .popup-inner .g-inner:first-of-type .scroll-wrap {
    height: calc(100% - 0.7rem);
  }
  .popup-wrap .popup .popup-inner {
    overflow: hidden;
    height: 100%;
    max-height: 6.55rem;
  }
  .popup-wrap .popup .popup-inner .g-inner:first-of-type {
    width: 100%;
    flex-grow: unset;
    height: 100%;
    max-height: 6.55rem;
  }
  .popup-wrap .popup .popup-inner .g-inner:first-of-type .top-wrap {
    border-bottom: 0.02rem solid var(--green);
    flex-direction: row;
  }
  .popup-wrap
    .popup
    .popup-inner
    .g-inner:first-of-type
    .top-wrap
    .close-button {
    width: 0.7rem;
    height: 0.7rem;
  }
  .popup-wrap
    .popup
    .popup-inner
    .g-inner:first-of-type
    .top-wrap
    .close-button
    .close-icon {
    width: 0.4rem;
    height: 0.4rem;
  }
  .popup-wrap .popup .popup-inner .g-inner:first-of-type .top-wrap .logo-wrap {
    padding: 0.13rem;
    width: calc(100% - 0.7rem);
    height: 0.7rem;
  }
  .popup-wrap
    .popup
    .popup-inner
    .g-inner:first-of-type
    .top-wrap
    .logo-wrap
    .popup-logo {
    width: auto;
    height: 100%;
  }
  .popup-wrap .popup .popup-inner .g-inner:first-of-type .popup-img-wrap {
    width: 100%;
    height: 2.58rem;
    position: relative;
    display: block;
    overflow: hidden;
  }
  .popup-wrap .popup .popup-inner .g-inner:first-of-type .scroll-wrap {
    max-height: 6.55rem;
    min-height: unset;
    height: calc(100% - 0.7rem - 2.52rem);
  }
  .popup-wrap
    .popup
    .popup-inner
    .g-inner:first-of-type
    .scroll-wrap
    .content-wrap {
    padding: 0.4rem 0.24rem;
  }
  .popup-wrap
    .popup
    .popup-inner
    .g-inner:first-of-type
    .scroll-wrap
    .content-wrap
    .popup-title {
    font-size: 0.3rem;
    line-height: 0.375rem;
  }
  .popup-wrap
    .popup
    .popup-inner
    .g-inner:first-of-type
    .scroll-wrap
    .content-wrap
    .popup-text {
    font-size: 0.26rem;
    line-height: 0.34rem;
    margin-top: 0.32rem;
  }
  .popup-wrap
    .popup
    .popup-inner
    .g-inner:first-of-type
    .scroll-wrap
    .content-wrap
    .popup-btn {
    margin-top: 0.3rem;
  }
  .popup-wrap .popup .popup-inner .g-inner.second {
    display: none;
  }
  .popup-wrap .popup .popup-inner .popup-img {
    position: absolute;
    width: calc(100% + 0.02rem);
    height: calc(100% + 0.02rem);
    -o-object-fit: cover;
    object-fit: cover;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
}
@media screen and (orientation: portrait) and (max-height: 750px) {
  .popup-wrap .popup .popup-inner .g-inner:first-of-type .popup-img-wrap {
    height: 2rem;
  }
  .popup-wrap .popup .popup-inner .g-inner:first-of-type .scroll-wrap {
    height: calc(100% - 0.7rem - 2rem);
  }
}
@media screen and (orientation: portrait) and (max-height: 575px) {
  .popup-wrap .popup .popup-inner .g-inner:first-of-type .popup-img-wrap {
    height: 1.5rem;
  }
  .popup-wrap .popup .popup-inner .g-inner:first-of-type .scroll-wrap {
    height: calc(100% - 0.7rem - 1.5rem);
  }
}
/*!***********************************************************************************************************************************************************************************************!*\
    !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/@splidejs/splide/dist/css/splide-core.min.css ***!
    \***********************************************************************************************************************************************************************************************/
@keyframes splide-loading {
  0% {
    transform: rotate(0);
  }
  to {
    transform: rotate(1turn);
  }
}
.splide__track--draggable {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.splide__track--fade > .splide__list > .splide__slide {
  margin: 0 !important;
  opacity: 0;
  z-index: 0;
}
.splide__track--fade > .splide__list > .splide__slide.is-active {
  opacity: 1;
  z-index: 1;
}
.splide--rtl {
  direction: rtl;
}
.splide__track--ttb > .splide__list {
  display: block;
}
.splide__container {
  box-sizing: border-box;
  position: relative;
}
.splide__list {
  backface-visibility: hidden;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
}
.splide.is-initialized:not(.is-active) .splide__list {
  display: block;
}
.splide__pagination {
  -ms-flex-align: center;
  align-items: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0;
  pointer-events: none;
}
.splide__pagination li {
  display: inline-block;
  line-height: 1;
  list-style-type: none;
  margin: 0;
  pointer-events: auto;
}
.splide:not(.is-overflow) .splide__pagination {
  display: none;
}
.splide__progress__bar {
  width: 0;
}
.splide {
  position: relative;
  visibility: hidden;
}
.splide.is-initialized,
.splide.is-rendered {
  visibility: visible;
}
.splide__slide {
  backface-visibility: hidden;
  box-sizing: border-box;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  list-style-type: none !important;
  margin: 0;
  position: relative;
}
.splide__slide img {
  vertical-align: bottom;
}
.splide__spinner {
  animation: splide-loading 1s linear infinite;
  border: 2px solid #999;
  border-left-color: transparent;
  border-radius: 50%;
  bottom: 0;
  contain: strict;
  display: inline-block;
  height: 20px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 20px;
}
.splide__sr {
  clip: rect(0 0 0 0);
  border: 0;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.splide__toggle.is-active .splide__toggle__play,
.splide__toggle__pause {
  display: none;
}

.splide__toggle.is-active .splide__toggle__pause {
  display: inline;
}

.splide__track {
  overflow: hidden;
  position: relative;
  z-index: 0;
}

.paln-title {
  width: max-content;
  margin: auto;
}

/* popup css */

.custom-model-main {
  text-align: center;
  overflow: hidden;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0; /* z-index: 1050; */
  -webkit-overflow-scrolling: touch;
  outline: 0;
  opacity: 0;
  -webkit-transition: opacity 0.15s linear, z-index 0.15;
  -o-transition: opacity 0.15s linear, z-index 0.15;
  transition: opacity 0.15s linear, z-index 0.15;
  z-index: -1;
  overflow-x: hidden;
  overflow-y: auto;
}

.model-open {
  z-index: 99999;
  opacity: 1;
  overflow: hidden;
}
.custom-model-inner {
  -webkit-transform: translate(0, -25%);
  -ms-transform: translate(0, -25%);
  transform: translate(0, -25%);
  -webkit-transition: -webkit-transform 0.3s ease-out;
  -o-transition: -o-transform 0.3s ease-out;
  transition: -webkit-transform 0.3s ease-out;
  -o-transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;
  display: inline-block;
  vertical-align: middle;
  width: 100%;
  max-width: 600px;
  border-radius: 4px;
  padding: 40px;
  background: #fff;
  margin: 30px auto;
}
.model-open .custom-model-inner {
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
  position: relative;
  z-index: 999;
}
.model-open .bg-overlay {
  background: rgba(0, 0, 0, 0.6);
  z-index: 99;
}

.bg-overlay {
  background: rgba(0, 0, 0, 0);
  height: 100vh;
  width: 100%;
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 0;
  -webkit-transition: background 0.15s linear;
  -o-transition: background 0.15s linear;
  transition: background 0.15s linear;
}

.close-btn {
  position: absolute;
  right: -20px;
  top: -30px;
  cursor: pointer;
  z-index: 99;
  font-size: 50px;
  color: #fff;
  transition: all 0.4s ease;
}
  
.close-btn:hover { 
  transform: rotate(110deg);
}   

@media screen and (min-width:800px){
	.custom-model-main:before {
	  content: "";
	  display: inline-block;
	  height: auto;
	  vertical-align: middle;
	  margin-right: -0px;
	  height: 100%;
	}
}

@media screen and (max-width:799px){
  .custom-model-inner {
    max-width: 90%;
    padding: 20px;
    margin: 30% 0 0;
  }
}

.contact-form .input-block {
	border: 1px solid var(--green);
	width: 100%;
	height: 40px;
	padding: 25px;
	position: relative;
	-moz-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	-webkit-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
	margin: 20px 0;
}

.contact-form .input-block.focus {
  background-color: #fff;
}

.contact-form .input-block.textarea {
  height: auto;
}

.contact-form .input-block.textarea .form-control {
  height: 100%;
  padding: 10px 0;
}

.contact-form .input-block label {
  padding: 0 10px;
  background: #fff;
  position: absolute;
  left: 8px;
  top: 20px;
  font-family: 'Nunito';
  display: block;
  margin: 0;
  font-weight: 300;
  z-index: 1;
  color: var(--green);
  font-size: 16px;
  line-height: 10px;
}

.contact-form .input-block .form-control {
  background-color: transparent;
  border: medium none;
  border-radius: 0;
  font-family: 'Nunito';
  box-shadow: none;
  color: #333;
  font-size: 16px;
  height: 40px;
  padding: 0;
  position: relative;
  top: -20px;
  z-index: 2;
  width: 100%;
}

.contact-form .input-block .form-control:focus {
  outline: none;
}

.contact-form .input-block .form-control:focus label {
  top: 0;
}

.contact-form .square-button {
  background: var(--green);
  color: #fff;
  font-size: 20px;
  text-transform: uppercase;
  font-weight: 400;
  text-align: center;
  border-radius: 2px;
  padding: 0 50px;
  height: 50px;
  border: none;
  width: 100%;
  cursor: pointer;
}

input:-webkit-autofill {
  background-color: transparent !important;
}

.emq-btn-mobile {
  display: none;
}

#error_data {
    margin-bottom: 10px;
    color: red;
}

@media (max-width : 1199px) {
  .banner-cont h2 {
    max-width: 70%;
  }
}

@media (min-width : 992px) {
  .header .menu .m-inner.mobile_menu {
    display: none;
  }
}

@media (max-width : 991px) {
  .banner-cont h2 {
    font-size: 30px;
    line-height: 1.32;
  }

  .header .menu.navbar {
    display: none;
  }

  .amenities-icons li {
    width: calc(50% - 10px);
  }

  .amenities-icons li img {
    height: 50px;
  }

  .amenities-icons li h2 {
    font-size: 18px;
    line-height: 1.2;
  }

  .hover-card-stack-section.location .grid-frame {
    flex-direction: column-reverse;
  }

  .hover-card-stack-section.type-2 .grid-frame .gf-inner,
  .hover-card-stack-section.type-2 .grid-frame .grid {
    width: 100%;
  }

  .amenities-area {
    padding: 80px 0;
  }

  .location {
    padding: 50px 0 50px;
  }

  .footer .f-foot .logo-wrap ul li a {
    margin-right: 20px;
  }

  .mb-50 {
    margin-bottom: 30px;
  }

  .main-menu .big-links li .lang {
    font-size: 0.33rem;
    color: #fff;
    line-height: 0.5rem;
  }
}

@media (max-width: 767px) {
  .banner-cont h2 {
    font-size: 24px;
    max-width: 100%;
    margin-bottom: 10px;
  }

  .text {
    font-size: 0.16rem;
  }

  .banner-cont::before, .banner-cont::after {
    height: 30%;
    top: 8%;
    /* left: 50%; */
    transform: translateX(-50%);
  }

  .banner-cont::after {
    bottom: 8%;
    top: auto;
  }

  .amenities-icons li h2 {
    border-top: 0;
    border-left: 1px solid #00382852;
    margin: 0;
    padding: 15px;
  }

  .main-menu .big-link {
    font-size: 0.25rem;
    line-height: 0.5rem;
    padding-right: 0;
  }

  .amenities-area {
    padding: 50px 0;
  }

  .amenities-icons li {
    width: calc(100% - 0px);
    display: flex !important;
    align-items: center;
    gap: 20px;
    border-color: var(--green);
  }

  .amenities-icons li h2 {
    border-color: var(--green);
  }

  .location-area-title {
      gap: 0.2rem;
      flex-direction: column;
      align-items: self-start;
  }

  .location iframe {
    height: 300px;
  }

  .footer .f-foot .logo-wrap ul {
    gap: 0.15rem;
    flex-direction: column;
    align-items: self-start;
  }

  .paln-title {
    margin: 0;
  }

  .amenities-area {
    background: var(--golden);
  }

  .contact-form .square-button {
    font-size: 18px;
    height: 40px;
  }

  .emq-btn-mobile img {
    height: 26px;
  }

  .emq-btn-mobile {
    position: fixed;
    right: 15px;
    bottom: 15px;
    z-index: 999;
    background: #fff;
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.16), 0 2px 4px rgba(0,0,0,0.23);
  }

  .header .logo img {
    object-fit: contain;
  }

  .distance {
      grid-template-columns: 1fr;
      background: transparent;
      padding: 0;
  }

  .header .logo-frame {
    padding: 7px 20px;
  }
  
  .hover-card-stack-section.type-2 .grid-frame .gf-inner {
    padding: 15px;
    margin: 0;
  }

  .hover-card-stack-section.location .grid-frame {
    display: flex;
    flex-direction: column-reverse;
    gap: 15px;
  }
  
  .footer .f-table .t-inner::after {
    display: none;
  }
}


.amenities-icons .slick-dots{
  position: relative;
  display: flex;
  justify-content: center;
}

.amenities-icons .slick-dots li button:before{
  line-height: 19px;
  /* left: -2px; */
}

.amenities-icons .slick-next, .slick-prev{
  display: none !important;
}

.amenities-icons .slick-dots li{
  border-radius: 50px;
}
