:root {
  --green: #003828;
  --golden: #e7c666;
  --dark-golden: #c2822a;
}
.bg-gradient {
  background: -moz-linear-gradient(
    90deg,
    rgb(237 209 111) 0%,
    rgb(194 130 42) 100%
  );
  background: -webkit-linear-gradient(
    90deg,
    rgb(237 209 111) 0%,
    rgb(194 130 42) 100%
  );
  background: linear-gradient(90deg, rgb(237 209 111) 0%, rgb(194 130 42) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#edd16f",endColorstr="#c2822a",GradientType=1);
}
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: #fff;
  text-decoration: none;
  cursor: pointer;
}
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: 700;
  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: 700;
  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: 400;
  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: 700;
  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: 700;
  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: 400;
  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 (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 (max-width: 767px) {
  .container-1 {
    max-width: 3.85rem;
  }
}
.container-2 {
  width: 100%;
  max-width: 9.8rem;
  margin: auto;
}
@media (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;
}
body:not(.home) .header {
  background-color: var(--green);
}
@media (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 (max-width: 767px) {
  .title-2xl {
    font-size: 0.42rem;
    line-height: 0.5rem;
  }
}
.title {
  font-size: 3vw;
  line-height: 3vw;
  letter-spacing: -0.02em;
}
.title.white {
  color: #fff;
}
@media (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: "Montserrat";
  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;
  background: #fff0;
}
.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;
}
.preloader {
  display: flex;
  position: fixed;
  align-items: end;
  z-index: 500;
  inset: 0;
  width: 100%;
  height: 100%;
  background: var(--green) url(../img/bg-pull-big.png) no-repeat;
  background-size: 50vw;
  background-position: center center;
}
.preloader .title {
  width: 100%;
  margin: 50px 0;
  color: #edd16f;
  text-align: center;
}
@media (max-width: 767px) {
  .preloader .title {
    font-size: 0.26rem;
    line-height: 0.38rem;
    width: 53%;
    margin: 50px auto;
  }
}
.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 rgb(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 (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-lin li:hover {
    transform: translateY(-0.2rem);
  }
  .menu-open .main-menu .big-links li:hover .big-lin 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-link {
  display: block;
  position: relative;
  font-size: 0.55rem;
  line-height: 0.7rem;
  letter-spacing: -0.02rem;
  color: #fff;
  padding-right: 0.2rem;
}
.main-menu .link:hover span {
  transform: translateY(-100%) skewY(-15deg);
}
.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.3rem;
  top: 50%;
  right: -0.2rem;
}
.main-menu .big-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-self: center;
  position: relative;
  top: 0.5rem;
  width: 100%;
  max-width: 1026px;
  margin: 0 auto;
  padding: 0;
  gap: 25px 50px;
}
.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;
  width: max-content;
}
.main-menu .big-links .submenu .link:not(:last-child) {
  margin-bottom: 0.3rem;
}
.main-menu .big-lin {
  display: block;
  position: relative;
  font-size: 0.55rem;
  line-height: 0.7rem;
  letter-spacing: -0.02rem;
  color: #fff;
  padding-right: 0.2rem;
}
body:not(.home) .sticky-container {
  display: none;
}
.main-menu .big-lin 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: space-between;
  width: 100%;
  max-width: 13.18rem;
  margin: 0 auto;
}
.main-menu .small-links {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0.45rem;
  width: 100%;
  max-width: 7.32rem;
}
.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 .small-links .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 (max-width: 767px) {
  .main-menu {
    display: block;
    padding-top: 1.18rem;
  }
  .main-menu .mobile-lang {
    display: flex;
  }
  .main-menu .frame {
    display: block;
    position: relative;
    padding: 0 0.18rem;
    height: calc(100% - 0.2rem);
    max-width: none;
    margin: auto;
    padding-top: 0.4rem;
    overflow-y: auto;
    overflow-x: hidden;
  }
  .main-menu .big-links {
    display: block;
    top: 0;
    margin-bottom: 0.3rem;
  }
  .main-menu .big-links li {
    padding-right: 0;
    margin-right: 0;
  }
  .main-menu .big-links li:not(:last-child) {
    margin-bottom: 0;
  }
  .main-menu .big-links .submenu {
    display: block;
    position: relative;
    transform: none;
    left: auto;
    pointer-events: all;
    opacity: 1;
    overflow: hidden;
  }
  .main-menu .big-lin {
    position: relative;
    padding-right: 0;
  }
  .main-menu .big-lin svg {
    display: none;
  }
  .main-menu .m-foot {
    display: block;
    margin-bottom: 0.2rem;
  }
  .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.15rem;
  }
}
.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: var(--golden);
}
.header .logo-frame {
  display: block;
  padding: 8px 0;
  width: 162px;
}
.header .logo {
  display: block;
  margin: auto;
  width: 100px;
}
.header .logo img {
  display: block;
  width: 100%;
}
.header .grid {
  display: flex;
  justify-content: space-between;
}
.header .menu {
  display: flex;
  align-items: center;
  margin-bottom: -1px;
}
.header .menu .m-inner {
  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: var(--golden);
}
.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 0.445rem;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}
.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 (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 (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, #003828 0%, #fff0 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 (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 (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 (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;
}
.timeline-wrap-sec .slider-section-regular .splide__slide {
  padding-right: 0;
}
@media (max-width: 767px) {
  .slider-section-regular .media-wrap {
    aspect-ratio: 15 / 12;
  }
  .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: 100px;
  margin: 0 auto 20px;
}
.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 (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: 8.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 (max-width: 767px) {
  .title-text-section-2.pb-2 {
    padding-bottom: 0.6rem;
  }
  .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;
  }
}
.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: #fff0;
  border: none;
  border-bottom: 2px solid var(--green);
  padding: 0.1rem 0;
  font-family: "Montserrat";
  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: "Montserrat";
  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: "Montserrat";
  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: #fff0;
  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(../img/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: #fff0;
  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, #003828 0%, #fff0 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, rgb(5 104 104 / 0.3) 0%, #fff0 100%);
}
.big-media-section {
  z-index: 10;
  overflow: hidden;
}
.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;
  margin: 0;
}
.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 (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 {
    gap: 0.25rem;
    height: 100%;
    flex-direction: column;
  }
  .big-media-section .grid .g-inner {
    width: 100%;
  }
  .big-media-section .grid .g-inner:nth-child(2) {
    width: 100%;
    margin-top: auto;
  }
  .big-media-section .title-s {
    position: static;
    max-width: 100%;
    padding: 0;
  }
}
.big-media-section.villas .media-wrap {
  aspect-ratio: 59 / 39;
  height: auto;
}
@media (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;
}
.section-spacer-s {
  width: 100%;
  height: 0.8rem;
}
.section-spacer-s.bg-color {
  background-color: var(--green);
  margin-top: -2px;
  margin-bottom: -2px;
}
@media (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 (max-width: 767px) {
  .section-spacer-xs {
    height: 0.3rem;
  }
}
@media (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 (max-width: 767px) {
  .hover-card-stack-section .grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .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;
}
.hover-card-stack-section.type-2 .grid-frame .gf-inner {
  display: flex;
  align-items: center;
  width: 25%;
}
.hover-card-stack-section.type-2 .grid-frame .grid {
  width: 75%;
}
.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: var(--green);
}
@media (max-width: 767px) {
  .hover-card-stack-section.type-2 .grid-frame {
    display: block;
  }
  .hover-card-stack-section.type-2 .grid-frame .gf-inner {
    display: block;
    width: 100%;
    margin-bottom: 0.4rem;
  }
  .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: 0.4rem;
}
.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 (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 {
    padding: 0 !important;
  }
  .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: 0.4rem;
  padding-right: 0;
}
.text-image-section.type-2 .text {
  color: var(--green);
  margin-bottom: 0.2rem;
}
.text-image-section.type-3 .text {
  color: var(--green);
  margin-bottom: 0.3rem;
}
@media (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%;
  aspect-ratio: 88 / 73;
  margin: auto;
}
.cube-image-section .media-wrap .media {
  height: 100%;
}
@media (max-width: 767px) {
  .cube-image-section .media-wrap {
    width: calc(100% + 0.4rem);
    left: -0.2rem;
    max-width: none;
  }
}
.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;
  color: #fff;
}
.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 (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 (max-width: 767px) {
  .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-top: 1rem;
  padding-bottom: 0.83rem;
  background-color: #0038288a;
}
.footer form {
  position: relative;
}
.footer .gform_wrapper.gravity-theme .gform_fields input {
  display: block;
  width: 100%;
  background-color: #fff0;
  border: none;
  border-bottom: 2px solid rgb(255 255 255 / 0.5);
  padding: 0.1rem 0;
  font-family: "Montserrat";
  font-size: 0.18rem;
  line-height: 0.27rem;
  color: rgb(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: rgb(255 255 255 / 0.5);
}
.footer .gform_wrapper.gravity-theme .gform_fields input::placeholder {
  color: rgb(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: "Montserrat";
  font-size: 0.18rem;
  line-height: 0.27rem;
  color: #fff;
  padding-top: 0.4rem;
}
.footer .gform_wrapper.gravity-theme .gfield_description {
  font-family: "Montserrat";
  font-size: 0.16rem;
  line-height: 0.25rem;
  color: rgb(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: #fff0;
  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(../img/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: #fff0;
  color: rgb(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 rgb(255 255 255 / 0.5);
}
.footer .container {
  width: 100%;
  max-width: 1440px;
  margin: auto;
  padding: 0;
}
.footer .f-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1rem;
}
.footer .button-1:not(:last-child) {
  margin-bottom: 0;
}
.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.8rem;
}
.footer .f-table .t-inner {
  position: relative;
  padding: 0.3rem;
}
.footer .f-table .t-inner:first-child {
  width: calc(100% - (2.75rem * 3));
  display: grid;
}
.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.4rem;
}
.footer .address {
  color: #ddd;
}
.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 {
  display: block;
}
.footer .f-foot .logo.bm {
  mix-blend-mode: luminosity;
}
.footer .copy-wrap {
  display: flex;
  align-items: flex-end;
  margin-right: 0.5rem;
}
@media screen and (orientation: landscape) and (min-width: 1515px) {
  .footer .copy-wrap {
    margin-right: 0;
  }
}
@media (max-width: 767px) {
  .footer .copy-wrap {
    margin-right: 0;
  }
}
.footer .copy-wrap .copy {
	display: flex;
	font-size: 0.16rem;
	line-height: 0.1rem;
	letter-spacing: 0.0005rem;
	color: #fff;
	opacity: 1;
	margin: 0;
	align-items: center;
	gap: 4px;
}
.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%;
}
@media (max-width: 767px) {
  .big-media-section-2 .media-wrap {
    aspect-ratio: 4 / 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 (max-width: 767px) {
  .text-button-section {
    margin-top: 0.6rem;
    margin-bottom: 0.6rem;
  }
  .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 .grid {
  display: flex;
}
.text-button-section-2 .grid .g-inner:first-child {
  width: 7.8rem;
}
.text-button-section-2 .grid .g-inner:last-child {
  text-align: right;
  width: calc(100% - 7.8rem);
}
.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 (max-width: 767px) {
  .text-button-section-2 .grid {
    display: block;
  }
  .text-button-section-2 .grid .g-inner:first-child {
    width: 100%;
    margin-bottom: 0.6rem;
  }
  .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 (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 (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 (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 (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.2rem;
  width: calc(33% - 20px);
  padding: 0.2rem;
  min-height: 4rem;
  border: 1px solid var(--green);
  margin: 10px;
}
.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 (max-width: 767px) {
  .title-table-section .table .t-inner {
    width: 100%;
    gap: 0.3rem;
    margin: inherit;
  }
}
.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);
  margin: 0;
}
.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: 1px 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.1rem;
}
.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.3rem;
}
.accordion-section .accordion .plus {
  opacity: 1;
}
.accordion-section .accordion.active .plus {
  opacity: 0;
}
.accordion-section .accordion .plus path {
  stroke: var(--green);
}
.accordion-section .accordion .minus {
  opacity: 0;
}
.accordion-section .accordion.active .minus {
  opacity: 1;
}
.accordion-section .accordion .minus path {
  stroke: var(--green);
}
.accordion-section .accordion .expander {
  overflow: hidden;
}
.accordion-section .accordion .inner {
  padding-top: 0.1rem;
}
.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 (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 (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 (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;
}
@media (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 (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: 100px;
  padding-bottom: 100px;
  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 (max-width: 767px) {
  .get-in-touch-section .grid .g-inner {
    width: 100%;
    gap: 0.3rem;
  }
}
.get-in-touch-section.type-2 {
  background: var(--green) url(../img/bg-alivation.jpg) no-repeat 100%;
}
.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 (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 (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: "Montserrat";
  font-size: 0.18rem;
  line-height: 0.27rem;
  font-weight: 400;
  letter-spacing: 0em;
}
.content-section h4,
.content-section .title {
  font-family: "Montserrat";
  font-size: 0.36rem;
  line-height: 0.34rem;
  font-weight: 300;
  letter-spacing: -0.01rem;
  margin: 0.3rem 0;
}
.content-section .small_title {
  font-family: "Montserrat";
  font-size: 0.2rem;
  line-height: normal;
  font-weight: 300;
  letter-spacing: normal;
  margin: 0.15rem 0;
}
.content-section h4 + p {
  margin: 0.3rem 0;
}
.content-section ul {
  display: block;
  font-family: "Montserrat";
  font-size: 0.18rem;
  line-height: 0.27rem;
  font-weight: 400;
  letter-spacing: 0em;
  margin: 0.2rem 0;
}
.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 (max-width: 767px) {
  .content-section ul li {
    position: relative;
    padding-left: 0.1rem;
  }
  .content-section ul li::before {
    position: absolute;
    left: 0;
  }
}
.footer-frame.book-now-color-change {
  background: url(../img/bg-alivation.jpg) no-repeat;
  background-size: cover;
}
.contact-hero-section {
  padding-top: 2.67rem;
  padding-bottom: 1rem;
  background: var(--green) url(../img/bg-footer-big.png) no-repeat;
  background-position: bottom left;
  background-size: 28vw;
}
.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: 78 / 88;
	border-radius: 4px;
}
.contact-hero-section .cnt {
  max-width: 5.76rem;
}
.contact-hero-section .title-2xl {
  color: #fff;
  margin-bottom: 0.45rem;
}
.contact-hero-section .text {
  color: #fff;
}
.s-inner {
	padding: 10px 0;
}
@media (max-width: 767px) {
  .contact-hero-section {
    padding-top: 1.6rem;
    background-size: 40vw;
  }
  .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 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: "Montserrat";
  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: #fff0;
  border: none;
  border-bottom: 2px solid #fff;
  padding: 0.1rem 0;
  font-family: "Montserrat";
  font-size: 0.18rem;
  line-height: 0.27rem;
  color: rgb(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: rgb(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: rgb(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: #fff0;
  color: rgb(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: "Montserrat";
  font-size: 0.16rem;
  line-height: 0.25rem;
}
.contact-form-section .gform_wrapper .gfield_error [aria-invalid="true"] {
  border: none;
  border-bottom: 2px solid rgb(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 (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 (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: #fff0;
}
.optiscroll ::-webkit-scrollbar {
  width: 3px !important;
  background-color: #fff0;
}
.optiscroll ::-webkit-scrollbar-thumb {
  background-color: #fff0;
}
.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: rgb(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 (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 (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 (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;
}
.timeline-wrap-sec .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: #fff0;
  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;
}
.swiper-container.timelines-content {
  width: 100%;
  height: 100%;
}
.timeline {
  margin: 80px auto 0;
  list-style-type: none;
  padding: 0;
  text-align: center;
}
.timeline li {
  transition: all 200ms ease-in;
}
.timestamp {
  margin-bottom: 20px;
  padding: 0 40px;
}
.date {
  text-align: center;
  color: var(--green);
  font-size: 21px;
}
.status {
  padding: 0;
  display: block;
  width: 100%;
  border-top: 4px solid #bac5c2;
  position: relative;
  transition: all 200ms ease-in;
}
.status h5 {
  color: var(--green);
  padding-top: 20px;
  font-size: 21px;
}
.timeline_icn {
  content: "";
  width: 20px;
  height: 20px;
  display: block;
  background-color: #e8eeff;
  border-radius: 20px;
  background: var(--green);
  position: absolute;
  margin-left: -10px;
  top: 35px;
  left: 50%;
  transition: all 200ms ease-in;
  z-index: 100;
}
.status p {
  font-size: 18px;
  color: #315d50;
}
.swiper-start .status .icn-start {
  left: 0;
}
.swiper-end .status .icn-end {
  right: 0;
}
.swiper-start .status,
.swiper-end .status {
  margin-top: 44px;
}
.swiper-slide .icn-end,
.swiper-slide .icn-start {
  display: block;
  position: absolute !important;
  width: 40px;
  height: 40px;
  border: 4px solid #ebe4da;
  background: #fff;
  content: "";
  z-index: 9999;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  text-align: center;
  top: -27px;
}
.swiper-slide .icn-end:after,
.swiper-slide .icn-start:after {
  content: "\e872";
  font-family: icons;
  position: relative !important;
  top: 5px;
  color: #ebe4da;
}
.swiper-button-next,
.swiper-button-prev {
  margin-top: -44px;
  z-index: 400;
}
.swiper-container.timelines-content {
  width: 100%;
  height: 300px;
}
.timelines-years {
  width: 400px;
  margin-bottom: 0;
  padding: 20px 0;
  border-bottom: 1px solid #ebe4da;
}
.timelines-years a {
  text-decoration: none;
  font-size: 18px;
  color: var(--green);
  cursor: pointer;
}
@keyframes bot-to-top {
  0% {
    bottom: -60px;
  }
  50% {
    bottom: 40px;
  }
}
@keyframes scale-in {
  from {
    transform: scale(0);
    opacity: 0;
  }
  to {
    transform: scale(1);
    opacity: 1;
  }
}
@keyframes rotate-in {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@keyframes rotate-out {
  from {
    transform: rotate(360deg);
  }
  to {
    transform: rotate(0deg);
  }
}
.thankyou .cta-section {
  padding-top: 130px;
  position: relative;
}
.thankyou .cta-section::after {
  content: "";
  background: rgb(0 0 0 / 0.8);
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.thankyou .cta-section .cnt {
  position: relative;
  z-index: 9;
}
.conted {
  border-bottom: 1px solid #fff;
  display: flex;
  margin: 0 0 8px;
  padding: 0 0 4px;
}
.connect-text {
  position: fixed;
  bottom: 40px;
  right: 50px;
  font-family: "Montserrat";
  background-color: #003324;
  color: #fff;
  z-index: 1000;
  font-size: 14px;
  width: 165px;
  padding: 5px 10px;
  border-radius: 10px;
}
.cube-image-section {
  width: 100%;
  height: 732px;
}
.sticky-container {
  position: fixed;
  right: 2px;
  top: 50%;
  z-index: 1100;
  transform: translateY(-50%);
  display: grid;
  align-items: center;
  justify-content: center;
}
ul.sticky {
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0;
}
.sticky li a {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--accent-gold);
  border-radius: 4px;
  width: 46px;
  height: 44px;
  transition: all 0.6s ease;
}
.sticky li a:hover {
  border-radius: 50px;
}
.sticky li a i {
  color: #fff;
  font-size: 22px;
}
.book-btn,
.book-btn:hover {
  writing-mode: tb-rl;
  padding: 15px 8px;
  margin: 10px 0 0;
  background: var(--accent-gold);
  color: var(--white) !important;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
}
.btn--snakeBorder {
  overflow: hidden;
  position: relative;
}
.btn--snakeBorder::before {
  content: "";
  position: absolute;
  top: 2px;
  left: 2px;
  bottom: 2px;
}
.btn--snakeBorder span {
  position: absolute;
}
.btn--snakeBorder span:nth-child(1) {
  top: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: linear-gradient(to right, var(--golden), var(--white));
  animation: borderAnimation1 2s linear infinite;
}
.btn--snakeBorder span:nth-child(2) {
  top: 0;
  right: 0;
  width: 2px;
  height: 100%;
  background: linear-gradient(to bottom, var(--golden), var(--white));
  animation: borderAnimation2 2s linear infinite;
  animation-delay: 1s;
}
.btn--snakeBorder span:nth-child(3) {
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: linear-gradient(to left, var(--golden), var(--white));
  animation: borderAnimation3 2s linear infinite;
}
.btn--snakeBorder span:nth-child(4) {
  top: 0;
  left: 0;
  width: 2px;
  height: 100%;
  background: linear-gradient(to top, var(--golden), var(--white));
  animation: borderAnimation4 2s linear infinite;
  animation-delay: 1s;
}
@keyframes borderAnimation1 {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(100%);
  }
}
@keyframes borderAnimation2 {
  0% {
    transform: translateY(-100%);
  }
  100% {
    transform: translateY(100%);
  }
}
@keyframes borderAnimation3 {
  0% {
    transform: translateX(100%);
  }
  100% {
    transform: translateX(-100%);
  }
}
@keyframes borderAnimation4 {
  0% {
    transform: translateY(100%);
  }
  100% {
    transform: translateY(-100%);
  }
}
.contact-form-section {
  padding: 100px 0;
  color: var(--green);
}
.contact-form-section form {
  margin-top: 0.45rem;
}
.contact-form-section .gform_confirmation_wrapper {
  font-family: "Montserrat";
  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: #fff0;
  border: none;
  border-bottom: 2px solid #fff;
  padding: 0.1rem 0;
  font-family: "Montserrat";
  font-size: 0.18rem;
  line-height: 0.27rem;
  color: rgb(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: rgb(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: rgb(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: #fff0;
  color: rgb(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: "Montserrat";
  font-size: 0.16rem;
  line-height: 0.25rem;
}
.contact-form-section .gform_wrapper .gfield_error [aria-invalid="true"] {
  border: none;
  border-bottom: 2px solid rgb(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 (max-width: 767px) {
  .contact-form-section .form-button {
    margin-right: 0.2rem;
  }
  .contact-form-section .gform_ajax_spinner {
    right: -0.05rem;
  }
}
.custom-model-main, .custom-model-main-one {
  text-align: center;
  overflow: hidden;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -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;
  padding: 30px;
  background: #fff;
  border-radius: 4px;
}
.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: rgb(0 0 0 / 0.6);
  z-index: 99;
}
.bg-overlay {
  background: #fff0;
  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);
}
.contact-form .input-block {
  border: solid 1px 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;
  border: solid 1px var(--green);
}
.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: "Montserrat";
  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: #fff0;
  border: medium none;
  border-radius: 0;
  font-family: "Montserrat";
  box-shadow: none;
  color: #333;
  font-size: 16px !important;
  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;
}
.form-title {
  margin: 0 0 30px;
}
.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,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
  -webkit-box-shadow: 0 0 0 30px #fff inset !important;
}
.gallery-area {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 20px;
}
.gallery-area img {
  width: 100%;
  height: 300px;
  object-fit: cover;
}
@media screen and (min-width: 800px) {
  .custom-model-main:before, .custom-model-main-one:before {
    content: "";
    display: inline-block;
    height: auto;
    vertical-align: middle;
    margin-right: 0;
    height: 100%;
  }
}
@media screen and (max-width: 767px) {
  .custom-model-inner {
    max-width: 90%;
    padding: 20px;
    margin: 30% 0 0;
    border: none;
  }
  .gallery-area {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 1700px) {
  .slider-section-regular .media-wrap .media {
    left: 0;
    width: 100%;
  }
  .title-text-section-2 .grid .g-inner:first-child {
    width: 12rem;
  }
}
@media (max-width: 1440px) {
  .title-text-section-3 {
    padding-top: 1.2rem;
    padding-bottom: 1.2rem;
  }
  .footer .container {
    padding: 0 30px;
  }
  .footer .f-head {
    margin-bottom: 0.8rem;
  }
  .header .logo {
    width: 85px;
  }
  .amenities-slider .howto_header {
    max-width: 80%;
  }
}
@media (max-width: 991px) {
  .preloader {
    background-size: 80vw;
  }
  .container-1,
  .container-2 {
    max-width: 90%;
  }
  .timeline-wrap-sec .ag-timeline-carousel-nav_box:before,
  .timeline-wrap-sec .ag-timeline-carousel-nav_box:after {
    width: 15%;
  }
  .cube-image-section {
    width: 100%;
    height: auto;
  }
  .header .logo {
    width: 70px;
  }
  .hero-section-2 {
    padding-bottom: 0.6rem;
  }
  .thankyou .cta-section {
    margin-top: 100px;
  }
}
@media (max-width: 767px) {
  .header .logo-frame {
    padding: 8px 0 8px 20px;
    width: 100%;
  }
  .contact-form .square-button {
    font-size: 18px;
    padding: 0 40px;
    height: 40px;
  }
  .thankyou .cta-section {
    margin-top: 80px;
  }
  .cube-image-section img {
    margin: 0;
    transform: scale(1.5);
  }
  .text-image-section.type-2 .grid {
    flex-direction: column-reverse;
  }
  .amenities-section .title-2xl {
    margin-bottom: 0.3rem;
  }
  .header .logo {
    margin: 0;
  }
  .hero-section-2 {
    padding-top: 1.6rem;
  }
  .main-menu .small-links {
    max-width: 100%;
    padding: 0;
  }
  .title-text-section {
    padding-top: 0.6rem;
    padding-bottom: 0.6rem;
  }
  .title-text-section-2 {
    margin-top: 0.6rem;
    margin-bottom: 0.6rem;
  }
  .title-text-section-2 .grid .g-inner:first-child {
    width: 100%;
  }
  .title-text-section-2 .grid .g-inner:last-child {
    justify-content: flex-start;
    width: 100%;
  }
  .section-spacer {
    height: 0.6rem;
  }
  .big-media-section.book-now-color-change .media-wrap {
    height: 350px;
    transform: scale(1.5);
  }
  .title-text-section-3 {
    padding-top: 0.6rem;
    padding-bottom: 0.6rem;
  }
  .title-text-section-3 .nav-wrap svg {
    width: 0.7rem;
  }
  .title-text-section-3 .nav-wrap {
    width: 1.35rem;
  }
  .footer .clock {
    font-size: 0.4rem;
    line-height: 0.45rem;
    margin-bottom: 0.4rem;
  }
  .footer .button-wrap {
    width: 100%;
  }
  .footer {
    padding-top: 0.6rem;
    padding-bottom: 0.3rem;
  }
  .footer .f-head {
    display: block;
    margin-bottom: 0.4rem;
  }
  .footer .button-wrap {
    flex-direction: column;
    margin-left: auto;
    margin-right: 0;
    gap: 0;
  }
  .footer .f-table {
    flex-direction: column;
    margin-bottom: 0.3rem;
  }
  .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: 2px solid #fff;
  }
  .footer .f-foot {
    flex-wrap: wrap;
  }
  .footer .f-foot .logo-wrap {
    width: 80%;
    flex-wrap: wrap;
    justify-content: space-evenly;
    margin: auto;
    margin-bottom: 0.8rem;
  }
  .footer .f-foot .logo {
    display: block;
  }
  .footer .copy-wrap {
    justify-content: flex-start;
    width: 100%;
  }
  .amenities-slider .howto_header {
    max-width: 90%;
  }
  .footer .container {
    padding: 0 15px;
  }
  .title-text-section-3 .title {
    margin-top: 0;
  }
  .main-menu .big-lin {
    font-size: 0.3rem;
    line-height: 0.52rem;
  }
  .preloader {
    background-size: 90vw;
  }
  .footer .link:not(:last-child) {
    margin-bottom: 0.1rem;
  }
  body:not(.home) .header .logo {
    width: 60px;
  }
  .projects .text-image-section .grid {
    display: flex;
    gap: 30px;
    flex-direction: column-reverse;
  }
  .projects .text-image-section .grid .media-wrap.aspect.reveal-css.animated {
    height: 280px;
  }
  .key-hight .title {
    margin-top: 0.3rem;
  }
  .key-hight .text {
    margin-bottom: 0.15rem !important;
  }
  .footer .button-1:not(:last-child) {
    margin-bottom: 0.15rem;
  }
  .book-btn,
  .book-btn:hover {
    padding: 10px 5px;
  }
  .sticky li a {
    width: 40px;
    height: 40px;
  }
  .sticky li a i {
    font-size: 20px;
  }
}
.blog-section .container {
  padding: 0 150px;
  padding-bottom: 120px;
}
.blog-box {
  grid-template-columns: repeat(3, auto);
  display: grid;
  gap: 36px;
}
.blog-card {
  -ms-flex-align: stretch;
  align-items: stretch;
  background: #fff;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  box-shadow: 0 3px 6px rgb(0 0 0 / 0.16), 0 3px 6px rgb(0 0 0 / 0.23);
  pointer-events: auto;
  position: relative;
}
.blog-card .blog-img {
  color: #132628;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  text-decoration: none;
  width: 100%;
}
.blog-card .blog-thumb {
  background: #132628;
  -ms-flex: 0 0 310px;
  flex: 0 0 auto;
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 320px;
  z-index: 0;
}
.blog-card .blog-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.blog-card .blog-content {
  background: 0 0;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex: 1 1 calc(100% - 310px);
  flex: 1 1 calc(100% - 310px);
  position: relative;
  overflow: visible;
  width: 100%;
  height: calc(100% - 310px);
  z-index: 1;
}
.blog-card .blog-content:before {
  background: #fff;
  content: "";
  top: -40px;
  left: 0;
  position: absolute;
  width: calc(100% - 40px);
  height: calc(100% + 40px);
  transition: 0.25s;
  z-index: 0;
}
.blog-card .blog-content-tax {
  font-weight: 300;
  position: relative;
}
.blog-card .blog-content-tax {
  display: inline-block;
  line-height: 1em;
  font-weight: 500;
  font-family: "Montserrat";
  padding-right: 38px;
  position: relative;
}
.blog-card .blog-content-title {
  font-weight: 400;
  line-height: 1.3;
  font-size: 1.6rem;
}
.blog-card .blog-content-tax:after {
  background: var(--golden);
  content: "";
  right: 0;
  bottom: 3px;
  position: absolute;
  width: 30px;
  height: 2px;
}
.blog-card .blog-content-tax:after {
  background: var(--golden);
  content: "";
  right: 0;
  bottom: 3px;
  position: absolute;
  width: 30px;
  height: 2px;
}
.blog-card .blog-content:before {
  background: #fff;
  content: "";
  top: -40px;
  left: 0;
  position: absolute;
  width: calc(100% - 40px);
  height: calc(100% + 40px);
  transition: 0.25s;
  z-index: 0;
}
.blog-card .blog-img:hover .blog-content:before {
  height: calc(100% + 65px);
  top: -65px;
}
.blog-card .blog-content-title {
  font-weight: 400;
  line-height: 1.3;
  margin-top: 25px;
  font-size: 22px;
}
.blog-card .blog-content-inner {
  background: #fff;
  display: block;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  padding: 0 26px 26px;
  position: relative;
  transition: 0.25s;
  width: calc(100% - 40px);
  z-index: 1;
}
.blog-card .blog-content:before {
  height: calc(100% + 30px);
  top: -30px;
}
.blog-card .blog-img:hover img {
  opacity: 0.7;
}
.slider-section-regular .card-slider {
  margin: auto;
  width: 100%;
}
.slider-section-regular .card {
  border-radius: 4px;
  overflow: hidden;
  height: 600px;
  margin: 0 15px;
  transition: all 0.2s linear;
  transform: scale(1);
}
.slider-section-regular .card:hover {
  transform: scale(0.9);
}
.slider-section-regular .card__background img {
  height: 100%;
  object-fit: cover;
}
.tp-project-4-bg {
  position: relative;
  height: 950px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.tp-project-4-bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.tp-project-4-thumb {
  overflow: hidden;
  height: 100%;
  width: 100%;
  position: relative;
}
.tp-project-4-thumb::after {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  background: linear-gradient(180deg, #003828 0%, #fff0 100%);
}
.tp-project-4-overlay {
  position: relative;
  overflow: hidden;
}
.tp-project-4-overlay::after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgb(9 9 11 / 0.2);
  content: "";
  z-index: 2;
}
.tp-project-4-content {
  padding: 0.7rem 0.7rem 0;
  position: absolute;
  text-align: center;
  display: inline-block;
  top: 0;
  left: 0;
  right: 0;
  z-index: 999;
}
#error_data {
	color: red;
	font-family: "Montserrat";
	font-size: 14px;
	margin-bottom: 10px;
}
.slick-list.draggable {
  padding: 0 !important;
}
.amenities-section .title {
  margin-bottom: 50px;
}
.hr-space {
  margin: 50px 0;
}
@media (max-width: 1299px) {
  .slider-section-regular .card {
    height: 400px;
  }
}
@media screen and (max-width: 1024px) {
  .blog-section .container {
    padding: 20px;
  }
  .blog-box {
    grid-template-columns: repeat(1, auto);
    display: grid;
    gap: 36px;
  }
  .blog-card .blog-content-title {
    font-size: 14px;
  }
  .blog-card .blog-content-tax {
    font-size: 14px;
  }
}

.mobile-show {
  display: none;
}

@media (max-width: 767px) {
  .footer .copy-wrap .copy {
    font-size: 0.12rem;
  }
  .main-menu .big-link {
    font-size: 0.3rem;
    line-height: 0.52rem;
  }
  .slider-section-regular .card:hover {
    transform: scale(1);
  }
  .tp-project-4-content {
    top: 0;
    height: 100%;
    text-align: left !important;
    padding: 0.5rem 0.3rem;
  }
  .mobile-show {
    display: block;
  }
  .mobile-hide {
    display: none;
  } 
  .tp-project-4-bg {
    height: 600px;
  }
  .big-media-section .grid .g-inner:nth-child(3) {
    margin-bottom: 0;
  }
  .all-arrow {
    display: flex;
    gap: 20px;
    width: 100%;
    align-items: center;
    z-index: 9999;
    position: relative;
    padding: 30px;
  }
  .all-arrow svg {
    cursor: pointer;
  }
}
