/*!*********************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/css/style.scss ***!
  \*********************************************************************************************************************************************************************/
@charset "UTF-8";
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                    General                
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                Variables       
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
:root {
  --white: #ffffff;
  --black: #000000;
  --black2: #0F0D0D;
  --yellow: #FFC226;
  --light: #F5F5F5;
  --orange: #DA6F02;
  --grid-padding: 5vw;
  --section-padding: 8rem;
  --cb-m1: cubic-bezier(0.23, 1, 0.32, 1);
  --cb-m2: cubic-bezier(0, 0.96, 0.22, 1);
  --cb-m3: cubic-bezier(0.36, 0.07, 0.19, 0.97);
  --cb-m4: cubic-bezier(0.19, 1.51, 0.29, 0.99);
}
@media (min-width: 768px) and (max-width: 1024px) {
  :root {
    --grid-padding: 3vw;
    --section-padding: 7rem;
  }
}
@media (max-width: 767px) {
  :root {
    --grid-padding: 3.5vw;
    --section-padding: 6.5rem;
  }
}

::selection {
  color: #fdfdfd;
  background: var(--yellow);
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                  Colors
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.bg-white {
  background-color: var(--white);
  color: var(--black);
}

.bg-yellow {
  background-color: var(--yellow);
  color: var(--white);
}

.text-white {
  color: var(--white);
}

.bg-black {
  background-color: var(--black);
  color: var(--white);
}

.text-black {
  color: var(--black);
}

.bg-light {
  background-color: var(--light);
  color: var(--black);
}

.bg-blue {
  background-color: var(--blue);
  color: var(--white);
}

.text-blue {
  color: var(--blue);
}

*,
*:before,
*:after {
  box-sizing: border-box;
  outline: none;
}

html,
body,
div,
span,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
a,
address,
code,
em,
img,
q,
s,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
menu,
nav,
output,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  box-sizing: border-box;
  font-weight: inherit;
  touch-action: manipulation;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
menu,
nav,
section,
body {
  display: block;
}

img,
svg {
  vertical-align: middle;
  user-select: none !important;
  -webkit-user-drag: none;
}

img {
  max-width: 100%;
  height: auto;
}

sub,
sup {
  position: relative;
  font-size: 0.75em;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

a {
  color: inherit;
  text-decoration: inherit;
  touch-action: pan-y;
}
a:hover {
  color: inherit;
}
a:focus {
  outline: none;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                  form elements
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
button,
input,
textarea,
select {
  margin: 0;
  padding: 0;
  color: inherit;
  background: inherit;
  font: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
}

button {
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  touch-action: pan-y;
}

textarea {
  overflow: auto;
  vertical-align: top;
  resize: vertical;
  white-space: revert;
}

.overflow-visible {
  overflow: visible;
}

/*   NOTES! 

     touch-action: manipulation; ~mm~
     Enable panning and pinch zoom gestures, but disable additional non-standard gestures such as double-tap to zoom. Disabling double-tap to zoom removes the need for browsers to delay the generation of click events when the user taps the screen. This is an alias for "pan-x pan-y pinch-zoom" (which, for compatibility, is itself still valid).

  */
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                 Html Main           
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
html {
  -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
  -webkit-text-size-adjust: 100%;
  -webkit-touch-callout: none;
  font-size: 100%;
}
@media (max-width: 1024px) {
  html {
    scroll-behavior: smooth;
  }
}
@media (min-width: 1025px) {
  html {
    font-size: 0.6944444444vw;
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
  html {
    font-size: 0.9765625vw;
  }
}
@media (max-width: 767px) {
  html {
    font-size: 2.3255813953vw;
  }
}
@media screen and (max-width: 414px) {
  html {
    font-size: 2.0161290323vw;
  }
}
@media (min-width: 500px) and (max-width: 766px) {
  html {
    font-size: 1.0080645161vw;
  }
}
@media (orientation: landscape) and (max-height: 450px) {
  html {
    font-size: 1.0080645161vw;
  }
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                   Body          
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
body {
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: geometricPrecision;
  overscroll-behavior: none;
  overflow-x: hidden;
  background-color: var(--white);
  color: var(--black);
  font-family: "Gotham", sans-serif;
  font-size: clamp(16px, 1.8rem, 18px);
  font-weight: 400;
}

section {
  position: relative;
  overflow: hidden;
  background-color: white;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                 Filter Dropdown        
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.filter-container {
  width: 100%;
  position: relative;
  border-top: 1px solid #e0e0e0;
  border-bottom: 1px solid #e0e0e0;
}
@media (max-width: 767px) {
  .filter-container .filter-bar {
    flex-direction: column;
  }
}
.filter-container .filter-bar .filter-group {
  gap: 4rem;
}
@media (max-width: 767px) {
  .filter-container .filter-bar .filter-group {
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 0;
  }
}
.filter-container .filter-bar .filter-group .select-wrapper {
  position: relative;
  width: 15%;
  padding: 1.2rem 3rem 1rem 0;
  border-bottom: 1px solid transparent;
  transition: all 0.4s ease;
}
@media (max-width: 1024px) {
  .filter-container .filter-bar .filter-group .select-wrapper {
    width: 19%;
  }
}
@media (max-width: 767px) {
  .filter-container .filter-bar .filter-group .select-wrapper {
    width: 45%;
  }
}
.filter-container .filter-bar .filter-group .select-wrapper::after {
  content: "";
  position: absolute;
  bottom: -4px;
  height: 1px;
  width: 0;
  left: 0;
  background: var(--black);
  transition: all 0.4s ease;
}
@media (max-width: 767px) {
  .filter-container .filter-bar .filter-group .select-wrapper::after {
    display: none;
  }
}
.filter-container .filter-bar .filter-group .select-wrapper:hover::after {
  width: 100%;
}
.filter-container .filter-bar .filter-group .select-wrapper .custom-select {
  appearance: none;
  -webkit-appearance: none;
  background: transparent;
  border: none;
  font-size: 1.6rem;
  color: var(--black);
  padding: 0.4rem 2.4rem 0.4rem 0;
  cursor: pointer;
  outline: none;
  overflow: hidden;
  width: 100%;
}
.filter-container .filter-bar .filter-group .select-wrapper .chevron {
  background: url(571496731718ded490ab.svg) no-repeat;
  background-size: cover;
  position: absolute;
  right: 0.5rem;
  width: 1.2rem;
  height: 0.6rem;
}
.filter-container .filter-bar .search-section {
  cursor: pointer;
}
@media (max-width: 767px) {
  .filter-container .filter-bar .search-section {
    width: 100%;
  }
}
.filter-container .filter-bar .search-section a.btn {
  display: none;
}
@media (max-width: 767px) {
  .filter-container .filter-bar .search-section a.btn {
    display: flex;
    justify-content: space-between;
  }
}
.filter-container .filter-bar .search-section a svg {
  transition: all 0.3s ease;
}
.filter-container .filter-bar .search-section a:hover svg {
  stroke: var(--yellow);
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                Search filter      
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.s-section {
  display: flex;
  align-items: center;
  position: relative;
  border-bottom: 1px solid transparent;
}
@media (max-width: 767px) {
  .s-section {
    margin-top: 1.6rem;
    border-top: 1px solid #e0e0e0;
    padding-top: 1.5rem;
  }
}
.s-section::after {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 0;
  height: 1px;
  background-color: var(--black);
  transition: width 0.4s ease-in-out;
}
@media (max-width: 767px) {
  .s-section::after {
    display: none;
  }
}
.s-section:hover::after, .s-section:has(.search-input:focus)::after, .s-section:has(.search-input:not(:placeholder-shown))::after {
  width: 100%;
}
.s-section .search-input {
  font-size: 1.6rem;
  color: var(--black);
  border: 0;
  height: 4.8rem;
  width: 100%;
  outline: none;
  background: transparent;
}
@media (max-width: 767px) {
  .s-section .search-input {
    height: 2.5rem;
  }
}
.s-section .search-input::placeholder {
  color: transparent;
}
@media (max-width: 1024px) {
  .s-section .search-input::placeholder {
    color: var(--black);
  }
}
.s-section .s-icon {
  display: flex;
  align-items: center;
  padding-left: 1rem;
  text-decoration: none;
}
.s-section .s-icon svg {
  display: block;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                 Swiper Next & Prev         
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.swiper-nav {
  background-color: var(--yellow);
  width: 9.8rem;
  border-radius: 6rem;
  padding: 0.4rem 0.5rem;
  align-items: center;
  justify-content: space-between;
}
.swiper-nav .next,
.swiper-nav .prev {
  border-radius: 99rem;
  width: 4rem;
  height: 4rem;
  background-size: 1.2rem !important;
  transition: all 0.3s ease;
  cursor: pointer;
}
.swiper-nav .next:hover, .swiper-nav .next.swiper-button-disabled,
.swiper-nav .prev:hover,
.swiper-nav .prev.swiper-button-disabled {
  background-color: var(--yellow) important;
}
.swiper-nav .prev {
  background: var(--white) url(339b25caf3f4ab5a940f.svg) no-repeat center;
  transform: scaleX(-1);
}
.swiper-nav .next {
  background: var(--white) url(339b25caf3f4ab5a940f.svg) no-repeat center;
}

@media (max-width: 1024px) {
  body.page-template-page-contact div.contact-us {
    padding-top: 5rem;
  }
}

.intl-tel-input.separate-dial-code .selected-flag {
  background-color: transparent;
}

.phone-group .flag-container {
  width: 100%;
}
.phone-group .flag-container .selected-dial-code {
  padding-right: 16px;
  font-size: 1.5rem;
  color: var(--black);
  outline: none;
}
.phone-group .flag-container:hover .selected-flag {
  background-color: transparent !important;
}
.phone-group .country-list {
  white-space: normal;
  box-shadow: none;
  border-radius: 8px;
  border: none;
}
.phone-group .country-list li {
  padding: 1rem !important;
}
.phone-group .country-list li .flag-box .iti-flag {
  padding: 0;
}
.phone-group .country-list li span {
  color: var(--black);
  font-size: 1.5rem;
  font-family: "Roboto";
}

.custom-select-wrapper {
  position: relative;
  margin: 0 2.5rem 1.8rem;
}
.custom-select-wrapper .custom-cf7-select {
  display: none !important;
}
@media (max-width: 1024px) {
  .custom-select-wrapper .custom-cf7-select {
    display: block !important;
    margin: 0 0;
    width: 100%;
  }
}
.custom-select-wrapper .select-trigger {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 15px 0;
  font-size: 1.5rem;
  cursor: pointer;
  border-bottom: 1px solid rgb(0, 0, 0);
  color: #000000;
}
@media (max-width: 1024px) {
  .custom-select-wrapper .select-trigger {
    display: none !important;
  }
}
.custom-select-wrapper .select-trigger::after {
  content: "";
  width: 10px;
  height: 10px;
  border-right: 2px solid #000000;
  border-bottom: 2px solid #000000;
  transform: translateY(-2px) rotate(45deg);
  transition: transform 0.3s ease;
  margin-right: 10px;
  margin-top: -5px;
}
.custom-select-wrapper .custom-options {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background: #ffffff;
  border-radius: 8px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
  margin-top: 0;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-10px);
  transition: all 0.3s ease;
  z-index: 999999 !important;
  pointer-events: auto !important;
  overflow: hidden;
}
@media (max-width: 1024px) {
  .custom-select-wrapper .custom-options {
    display: none !important;
  }
}
.custom-select-wrapper .custom-options .custom-option {
  padding: 1.5rem 1.5rem;
  font-size: 1.5rem;
  color: var(--black);
  cursor: pointer;
  border-bottom: 1px solid #f0f0f0;
  transition: background 0.2s;
}
.custom-select-wrapper .custom-options .custom-option:last-child {
  border-bottom: none;
}
.custom-select-wrapper .custom-options .custom-option:hover {
  background-color: #f9f9f9;
}
.custom-select-wrapper.open .select-trigger::after {
  transform: translateY(3px) rotate(225deg);
}
.custom-select-wrapper.open .custom-options {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.trace,
.trace * {
  border: 1px solid darkgray;
}

.p-center {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.flex-center {
  display: flex;
  justify-content: center;
  align-items: center;
}

.overflow-hidden,
.o-hide {
  overflow: hidden !important;
}

.has-bg {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.banner-mobile {
  display: none;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
            Overlay
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: black;
  opacity: 0.4;
  z-index: 1;
  pointer-events: none;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
              Transitions Delay
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.dl-1 {
  transition-delay: 0.1s !important;
}

.dl-2 {
  transition-delay: 0.2s !important;
}

.dl-3 {
  transition-delay: 0.3s !important;
}

.dl-4 {
  transition-delay: 0.4s !important;
}

.dl-5 {
  transition-delay: 0.5s !important;
}

.dl-6 {
  transition-delay: 0.6s !important;
}

.dl-7 {
  transition-delay: 0.7s !important;
}

.dl-8 {
  transition-delay: 0.8s !important;
}

.dl-9 {
  transition-delay: 0.9s !important;
}

.dl-10 {
  transition-delay: 1s !important;
}

.dl-11 {
  transition-delay: 1.1s !important;
}

.dl-12 {
  transition-delay: 1.2s !important;
}

.dl-13 {
  transition-delay: 1.3s !important;
}

.dl-14 {
  transition-delay: 1.4s !important;
}

.dl-15 {
  transition-delay: 1.5s !important;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                    Phone
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
@media (max-width: 767px) {
  .dl-sm-0 {
    transition-delay: 0s !important;
  }
  .h-sm,
  .h-mob {
    display: none !important;
  }
}
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                    Phone & Tab
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
@media (max-width: 1024px) {
  .d-desktop {
    display: none !important;
  }
}
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                          Only Tab
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
@media (min-width: 768px) and (max-width: 1024px) {
  .dl-md-0 {
    transition-delay: 0s !important;
  }
  .h-tab {
    display: none !important;
  }
}
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                      Tab and Desktop
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
@media (min-width: 768px) {
  .d-sm {
    display: none !important;
  }
}
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                       Only Desktop
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
@media (min-width: 1025px) {
  .h-desktop {
    display: none !important;
  }
}
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                  Section  Paddings
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.st,
.st-default {
  padding-top: var(--section-padding);
}

.sb {
  padding-bottom: var(--section-padding);
}

.sy {
  padding-top: var(--section-padding);
  padding-bottom: var(--section-padding);
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                  Grid Paddings
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.pt {
  padding-top: var(--grid-padding);
}

.pb {
  padding-bottom: var(--grid-padding);
}

.py {
  padding-top: var(--grid-padding);
  padding-bottom: var(--grid-padding);
}

.pe-none {
  pointer-events: none;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                    Spacer
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.st-1 {
  padding-top: 1rem;
}

.st-2 {
  padding-top: 2rem;
}

.st-3 {
  padding-top: 3rem;
}

.st-4 {
  padding-top: 4rem;
}

.st-5 {
  padding-top: 5rem;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
              wpml things hide 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.wpml-ls-statics-footer,
.grecaptcha-badge,
.otgs-development-site-front-end {
  display: none;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
              News Section
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.as-16-9,
.as-2-5,
.as-5-4,
.as-1-1,
.as-3-2 {
  object-fit: cover;
  object-position: center;
  width: 100%;
}

.as-16-9 {
  aspect-ratio: 16/9;
}

.as-2-5 {
  aspect-ratio: 2.25/1;
}

.as-1-1 {
  aspect-ratio: 1/1;
}

.as-5-4 {
  aspect-ratio: 5/4;
}

.as-3-2 {
  aspect-ratio: 3/2;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         WatchOut 👀 when not using smooth-scroll lib
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
html::-webkit-scrollbar,
body::-webkit-scrollbar,
main::-webkit-scrollbar {
  display: none;
  width: 0;
}

html,
body,
main {
  scrollbar-width: none;
}

main {
  overflow: hidden;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                    Bootstrap                 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.container {
  width: 100%;
  padding-right: var(--grid-padding);
  padding-left: var(--grid-padding);
  margin-right: auto;
  margin-left: auto;
}

.container-fluid {
  width: 100%;
  padding-right: var(--bs-gutter-x, 0.75rem);
  padding-left: var(--bs-gutter-x, 0.75rem);
  margin-right: auto;
  margin-left: auto;
}

.row {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(var(--bs-gutter-y) * -1);
  margin-right: calc(var(--bs-gutter-x) * -0.5);
  margin-left: calc(var(--bs-gutter-x) * -0.5);
}

.row > * {
  box-sizing: border-box;
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  margin-top: var(--bs-gutter-y);
}

.col {
  flex-grow: 1;
}

.col-auto {
  flex: 0 0 auto;
  width: auto;
}

.col-1 {
  flex: 0 0 auto;
  width: 8.33333333%;
}

.col-2 {
  flex: 0 0 auto;
  width: 16.66666667%;
}

.col-3 {
  flex: 0 0 auto;
  width: 25%;
}

.col-4 {
  flex: 0 0 auto;
  width: 33.33333333%;
}

.col-5 {
  flex: 0 0 auto;
  width: 41.66666667%;
}

.col-6 {
  flex: 0 0 auto;
  width: 50%;
}

.col-7 {
  flex: 0 0 auto;
  width: 58.33333333%;
}

.col-8 {
  flex: 0 0 auto;
  width: 66.66666667%;
}

.col-9 {
  flex: 0 0 auto;
  width: 75%;
}

.col-10 {
  flex: 0 0 auto;
  width: 83.33333333%;
}

.col-11 {
  flex: 0 0 auto;
  width: 91.66666667%;
}

.col-12 {
  flex: 0 0 auto;
  width: 100%;
}

.order-first {
  order: -1 !important;
}

.order-0 {
  order: 0 !important;
}

.order-1 {
  order: 1 !important;
}

.order-2 {
  order: 2 !important;
}

.order-3 {
  order: 3 !important;
}

.order-4 {
  order: 4 !important;
}

.order-5 {
  order: 5 !important;
}

.order-last {
  order: 6 !important;
}

.g-0,
.gx-0 {
  --bs-gutter-x: 0;
}

.g-0,
.gy-0 {
  --bs-gutter-y: 0;
}

.g-1,
.gx-1 {
  --bs-gutter-x: 0.25rem;
}

.g-1,
.gy-1 {
  --bs-gutter-y: 0.25rem;
}

.g-2,
.gx-2 {
  --bs-gutter-x: 0.5rem;
}

.g-2,
.gy-2 {
  --bs-gutter-y: 0.5rem;
}

.g-3,
.gx-3 {
  --bs-gutter-x: 1rem;
}

.g-3,
.gy-3 {
  --bs-gutter-y: 1rem;
}

.g-4,
.gx-4 {
  --bs-gutter-x: 1.5rem;
}

.g-4,
.gy-4 {
  --bs-gutter-y: 1.5rem;
}

.g-5,
.gx-5 {
  --bs-gutter-x: 3rem;
}

.g-5,
.gy-5 {
  --bs-gutter-y: 3rem;
}

.g-6,
.gx-6 {
  --bs-gutter-x: 5rem;
}

.g-6,
.gy-6 {
  --bs-gutter-y: 5rem;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          from Tablet  ⬜           
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
@media (min-width: 768px) {
  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-md-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-md-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-md-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-md-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-md-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-md-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-md-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-md-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-md-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-md-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-md-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-md-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .order-md-first {
    order: -1 !important;
  }
  .order-md-0 {
    order: 0 !important;
  }
  .order-md-1 {
    order: 1 !important;
  }
  .order-md-2 {
    order: 2 !important;
  }
  .order-md-3 {
    order: 3 !important;
  }
  .order-md-4 {
    order: 4 !important;
  }
  .order-md-5 {
    order: 5 !important;
  }
  .order-md-last {
    order: 6 !important;
  }
  .g-md-0,
  .gx-md-0 {
    --bs-gutter-x: 0;
  }
  .g-md-0,
  .gy-md-0 {
    --bs-gutter-y: 0;
  }
  .g-md-1,
  .gx-md-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-md-1,
  .gy-md-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-md-2,
  .gx-md-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-md-2,
  .gy-md-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-md-3,
  .gx-md-3 {
    --bs-gutter-x: 1rem;
  }
  .g-md-3,
  .gy-md-3 {
    --bs-gutter-y: 1rem;
  }
  .g-md-4,
  .gx-md-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-md-4,
  .gy-md-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-md-5,
  .gx-md-5 {
    --bs-gutter-x: 3rem;
  }
  .g-md-5,
  .gy-md-5 {
    --bs-gutter-y: 3rem;
  }
}
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          Not from  Desktop 🖥️          
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
@media (min-width: 1179px) {
  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-lg-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-lg-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-lg-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-lg-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-lg-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-lg-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-lg-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-lg-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-lg-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-lg-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-lg-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-lg-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .order-lg-first {
    order: -1 !important;
  }
  .order-lg-0 {
    order: 0 !important;
  }
  .order-lg-1 {
    order: 1 !important;
  }
  .order-lg-2 {
    order: 2 !important;
  }
  .order-lg-3 {
    order: 3 !important;
  }
  .order-lg-4 {
    order: 4 !important;
  }
  .order-lg-5 {
    order: 5 !important;
  }
  .order-lg-last {
    order: 6 !important;
  }
  .g-lg-0,
  .gx-lg-0 {
    --bs-gutter-x: 0;
  }
  .g-lg-0,
  .gy-lg-0 {
    --bs-gutter-y: 0;
  }
  .g-lg-1,
  .gx-lg-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-lg-1,
  .gy-lg-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-lg-2,
  .gx-lg-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-lg-2,
  .gy-lg-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-lg-3,
  .gx-lg-3 {
    --bs-gutter-x: 1rem;
  }
  .g-lg-3,
  .gy-lg-3 {
    --bs-gutter-y: 1rem;
  }
  .g-lg-4,
  .gx-lg-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-lg-4,
  .gy-lg-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-lg-5,
  .gx-lg-5 {
    --bs-gutter-x: 3rem;
  }
  .g-lg-5,
  .gy-lg-5 {
    --bs-gutter-y: 3rem;
  }
}
.img-fluid {
  max-width: 100%;
  height: auto;
}

.d-inline {
  display: inline !important;
}

.d-inline-block {
  display: inline-block !important;
}

.d-block {
  display: block !important;
}

.d-flex {
  display: flex !important;
}

.flex-wrap {
  flex-wrap: wrap !important;
}

.flex-row {
  flex-direction: row !important;
}

.flex-column {
  flex-direction: column !important;
}

.flex-row-reverse {
  flex-direction: row-reverse !important;
}

.flex-column-reverse {
  flex-direction: column-reverse !important;
}

.jcs,
.justify-content-start {
  justify-content: flex-start !important;
}

.jce,
.justify-content-end {
  justify-content: flex-end !important;
}

.jcc,
.justify-content-center {
  justify-content: center !important;
}

.jcb,
.justify-content-between {
  justify-content: space-between !important;
}

.jca,
.justify-content-around {
  justify-content: space-around !important;
}

.ais,
.align-items-start {
  align-items: flex-start !important;
}

.aie,
.align-items-end {
  align-items: flex-end !important;
}

.aic,
.align-items-center {
  align-items: center !important;
}

.d-inline-flex {
  display: inline-flex !important;
}

.d-none {
  display: none !important;
}

.shadow {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.position-relative {
  position: relative !important;
}

.position-absolute {
  position: absolute !important;
}

.rounded {
  border-radius: 1rem !important;
}

.rounded-0 {
  border-radius: 0 !important;
}

.rounded-circle {
  border-radius: 50% !important;
}

.rounded-pill {
  border-radius: 10rem !important;
}

.border {
  border: 1px solid #dee2e6 !important;
}

.border-0 {
  border: 0 !important;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                  Widths
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.vw-25 {
  width: 25vw !important;
}

.vw-50 {
  width: 50vw !important;
}

.vw-75 {
  width: 75vw !important;
}

.vw-100 {
  width: 100vw !important;
}

.w-25 {
  width: 25% !important;
}

.w-50 {
  width: 50% !important;
}

.w-75 {
  width: 75% !important;
}

.w-100 {
  width: 100% !important;
}

.w-auto {
  width: auto !important;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
              Heights
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.h-25 {
  height: 25% !important;
}

.vh-25 {
  height: 25vh !important;
}

.min-vh-25 {
  min-height: 25vh !important;
}

.h-50 {
  height: 50% !important;
}

.vh-50 {
  height: 50vh !important;
}

.min-vh-38 {
  min-height: 38vh !important;
}
@media screen and (max-width: 1024px) {
  .min-vh-38 {
    min-height: 24vh !important;
  }
}
@media screen and (max-width: 650px) {
  .min-vh-38 {
    min-height: 32vh !important;
  }
}

.min-vh-50 {
  min-height: 50vh !important;
}

.min-vh-51 {
  min-height: 51vh !important;
}

.min-vh-70 {
  min-height: 70vh !important;
}

.h-75 {
  height: 75% !important;
}

.vh-75 {
  height: 75vh !important;
}

.min-vh-75 {
  min-height: 75vh !important;
}

.min-vh-85 {
  min-height: 85vh !important;
}

.vh-85 {
  height: 85vh !important;
}

.h-100 {
  height: 100% !important;
}

.min-vh-100 {
  min-height: 100vh !important;
}

.vh-100 {
  height: 100vh !important;
}

.h-auto {
  height: auto !important;
}

.mt-auto {
  margin-top: auto;
}

.mb-auto {
  margin-bottom: auto;
}

.my-auto {
  margin-top: auto;
  margin-bottom: auto;
}

.mx-auto {
  margin-left: auto;
  margin-right: auto;
}

@media (min-width: 768px) {
  .mt-md-auto {
    margin-top: auto;
  }
  .mb-md-auto {
    margin-bottom: auto;
  }
  .my-md-auto {
    margin-top: auto;
    margin-bottom: auto;
  }
  .mx-md-auto {
    margin-left: auto;
    margin-right: auto;
  }
  .d-md-flex {
    display: flex !important;
  }
  .d-md-none {
    display: none !important;
  }
  .d-md-block {
    display: block !important;
  }
  .d-md-inline {
    display: inline !important;
  }
  .d-md-inline-block {
    display: inline-block !important;
  }
  .d-md-inline-flex {
    display: inline-flex !important;
  }
  .flex-md-row {
    flex-direction: row !important;
  }
  .flex-md-column {
    flex-direction: column !important;
  }
  /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                  Heights
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
  .h-md-25 {
    height: 25% !important;
  }
  .h-md-50 {
    height: 50% !important;
  }
  .vh-md-100 {
    height: 100vh !important;
  }
  .h-md-auto {
    height: auto !important;
  }
  .w-md-25 {
    width: 25% !important;
  }
  .w-md-50 {
    width: 50% !important;
  }
  .w-md-75 {
    width: 75% !important;
  }
  .w-md-100 {
    width: 100% !important;
  }
  .w-md-auto {
    width: auto !important;
  }
}
@media (min-width: 1179px) {
  .mt-lg-auto {
    margin-top: auto;
  }
  .mb-lg-auto {
    margin-bottom: auto;
  }
  .my-lg-auto {
    margin-top: auto;
    margin-bottom: auto;
  }
  .mx-lg-auto {
    margin-left: auto;
    margin-right: auto;
  }
  .flex-lg-center {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .d-lg-flex {
    display: flex !important;
  }
  .d-lg-none {
    display: none !important;
  }
  .d-lg-block {
    display: block !important;
  }
  .d-lg-inline {
    display: inline !important;
  }
  .d-lg-inline-block {
    display: inline-block !important;
  }
  .d-lg-inline-flex {
    display: inline-flex !important;
  }
  .flex-lg-row {
    flex-direction: row !important;
  }
  .flex-lg-column {
    flex-direction: column !important;
  }
  /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                     Heights
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
  .h-lg-25 {
    height: 25% !important;
  }
  .h-lg-50 {
    height: 50% !important;
  }
  .h-lg-75 {
    height: 75% !important;
  }
  .h-lg-100 {
    height: 100% !important;
  }
  .vh-lg-100 {
    height: 100vh !important;
  }
  .h-lg-auto {
    height: auto !important;
  }
  .w-lg-25 {
    width: 25% !important;
  }
  .w-lg-50 {
    width: 50% !important;
  }
  .w-lg-75 {
    width: 75% !important;
  }
  .w-lg-100 {
    width: 100% !important;
  }
  .w-lg-auto {
    width: auto !important;
  }
}
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                    Margin & Padding
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.m-0 {
  margin: 0rem !important;
}

.mt-0 {
  margin-top: 0rem !important;
}

.mb-0 {
  margin-bottom: 0rem !important;
}

.mx-0 {
  margin-left: 0rem !important;
  margin-right: 0rem !important;
}

.my-0 {
  margin-top: 0rem !important;
  margin-bottom: 0rem !important;
}

.p-0 {
  padding: 0rem !important;
}

.pt-0 {
  padding-top: 0rem !important;
}

.pb-0 {
  padding-bottom: 0rem !important;
}

.px-0 {
  padding-left: 0rem !important;
  padding-right: 0rem !important;
}

.py-0 {
  padding-top: 0rem !important;
  padding-bottom: 0rem !important;
}

.m-1 {
  margin: 0.5rem !important;
}

.mt-1 {
  margin-top: 0.5rem !important;
}

.mb-1 {
  margin-bottom: 0.5rem !important;
}

.mx-1 {
  margin-left: 0.5rem !important;
  margin-right: 0.5rem !important;
}

.my-1 {
  margin-top: 0.5rem !important;
  margin-bottom: 0.5rem !important;
}

.p-1 {
  padding: 0.5rem !important;
}

.pt-1 {
  padding-top: 0.5rem !important;
}

.pb-1 {
  padding-bottom: 0.5rem !important;
}

.px-1 {
  padding-left: 0.5rem !important;
  padding-right: 0.5rem !important;
}

.py-1 {
  padding-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
}

.m-2 {
  margin: 1rem !important;
}

.mt-2 {
  margin-top: 1rem !important;
}

.mb-2 {
  margin-bottom: 1rem !important;
}

.mx-2 {
  margin-left: 1rem !important;
  margin-right: 1rem !important;
}

.my-2 {
  margin-top: 1rem !important;
  margin-bottom: 1rem !important;
}

.p-2 {
  padding: 1rem !important;
}

.pt-2 {
  padding-top: 1rem !important;
}

.pb-2 {
  padding-bottom: 1rem !important;
}

.px-2 {
  padding-left: 1rem !important;
  padding-right: 1rem !important;
}

.py-2 {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

.m-3 {
  margin: 1.5rem !important;
}

.mt-3 {
  margin-top: 1.5rem !important;
}

.mb-3 {
  margin-bottom: 1.5rem !important;
}

.mx-3 {
  margin-left: 1.5rem !important;
  margin-right: 1.5rem !important;
}

.my-3 {
  margin-top: 1.5rem !important;
  margin-bottom: 1.5rem !important;
}

.p-3 {
  padding: 1.5rem !important;
}

.pt-3 {
  padding-top: 1.5rem !important;
}

.pb-3 {
  padding-bottom: 1.5rem !important;
}

.px-3 {
  padding-left: 1.5rem !important;
  padding-right: 1.5rem !important;
}

.py-3 {
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important;
}

.m-4 {
  margin: 2rem !important;
}

.mt-4 {
  margin-top: 2rem !important;
}

.mb-4 {
  margin-bottom: 2rem !important;
}

.mx-4 {
  margin-left: 2rem !important;
  margin-right: 2rem !important;
}

.my-4 {
  margin-top: 2rem !important;
  margin-bottom: 2rem !important;
}

.p-4 {
  padding: 2rem !important;
}

.pt-4 {
  padding-top: 2rem !important;
}

.pb-4 {
  padding-bottom: 2rem !important;
}

.px-4 {
  padding-left: 2rem !important;
  padding-right: 2rem !important;
}

.py-4 {
  padding-top: 2rem !important;
  padding-bottom: 2rem !important;
}

.m-5 {
  margin: 2.5rem !important;
}

.mt-5 {
  margin-top: 2.5rem !important;
}

.mb-5 {
  margin-bottom: 2.5rem !important;
}

.mx-5 {
  margin-left: 2.5rem !important;
  margin-right: 2.5rem !important;
}

.my-5 {
  margin-top: 2.5rem !important;
  margin-bottom: 2.5rem !important;
}

.p-5 {
  padding: 2.5rem !important;
}

.pt-5 {
  padding-top: 2.5rem !important;
}

.pb-5 {
  padding-bottom: 2.5rem !important;
}

.px-5 {
  padding-left: 2.5rem !important;
  padding-right: 2.5rem !important;
}

.py-5 {
  padding-top: 2.5rem !important;
  padding-bottom: 2.5rem !important;
}

.m-6 {
  margin: 3rem !important;
}

.mt-6 {
  margin-top: 3rem !important;
}

.mb-6 {
  margin-bottom: 3rem !important;
}

.mx-6 {
  margin-left: 3rem !important;
  margin-right: 3rem !important;
}

.my-6 {
  margin-top: 3rem !important;
  margin-bottom: 3rem !important;
}

.p-6 {
  padding: 3rem !important;
}

.pt-6 {
  padding-top: 3rem !important;
}

.pb-6 {
  padding-bottom: 3rem !important;
}

.px-6 {
  padding-left: 3rem !important;
  padding-right: 3rem !important;
}

.py-6 {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

.m-7 {
  margin: 3.5rem !important;
}

.mt-7 {
  margin-top: 3.5rem !important;
}

.mb-7 {
  margin-bottom: 3.5rem !important;
}

.mx-7 {
  margin-left: 3.5rem !important;
  margin-right: 3.5rem !important;
}

.my-7 {
  margin-top: 3.5rem !important;
  margin-bottom: 3.5rem !important;
}

.p-7 {
  padding: 3.5rem !important;
}

.pt-7 {
  padding-top: 3.5rem !important;
}

.pb-7 {
  padding-bottom: 3.5rem !important;
}

.px-7 {
  padding-left: 3.5rem !important;
  padding-right: 3.5rem !important;
}

.py-7 {
  padding-top: 3.5rem !important;
  padding-bottom: 3.5rem !important;
}

.m-8 {
  margin: 4rem !important;
}

.mt-8 {
  margin-top: 4rem !important;
}

.mb-8 {
  margin-bottom: 4rem !important;
}

.mx-8 {
  margin-left: 4rem !important;
  margin-right: 4rem !important;
}

.my-8 {
  margin-top: 4rem !important;
  margin-bottom: 4rem !important;
}

.p-8 {
  padding: 4rem !important;
}

.pt-8 {
  padding-top: 4rem !important;
}

.pb-8 {
  padding-bottom: 4rem !important;
}

.px-8 {
  padding-left: 4rem !important;
  padding-right: 4rem !important;
}

.py-8 {
  padding-top: 4rem !important;
  padding-bottom: 4rem !important;
}

.m-9 {
  margin: 4.5rem !important;
}

.mt-9 {
  margin-top: 4.5rem !important;
}

.mb-9 {
  margin-bottom: 4.5rem !important;
}

.mx-9 {
  margin-left: 4.5rem !important;
  margin-right: 4.5rem !important;
}

.my-9 {
  margin-top: 4.5rem !important;
  margin-bottom: 4.5rem !important;
}

.p-9 {
  padding: 4.5rem !important;
}

.pt-9 {
  padding-top: 4.5rem !important;
}

.pb-9 {
  padding-bottom: 4.5rem !important;
}

.px-9 {
  padding-left: 4.5rem !important;
  padding-right: 4.5rem !important;
}

.py-9 {
  padding-top: 4.5rem !important;
  padding-bottom: 4.5rem !important;
}

.m-10 {
  margin: 5rem !important;
}

.mt-10 {
  margin-top: 5rem !important;
}

.mb-10 {
  margin-bottom: 5rem !important;
}

.mx-10 {
  margin-left: 5rem !important;
  margin-right: 5rem !important;
}

.my-10 {
  margin-top: 5rem !important;
  margin-bottom: 5rem !important;
}

.p-10 {
  padding: 5rem !important;
}

.pt-10 {
  padding-top: 5rem !important;
}

.pb-10 {
  padding-bottom: 5rem !important;
}

.px-10 {
  padding-left: 5rem !important;
  padding-right: 5rem !important;
}

.py-10 {
  padding-top: 5rem !important;
  padding-bottom: 5rem !important;
}

@media (min-width: 768px) {
  .m-md-0 {
    margin: 0rem !important;
  }
  .mt-md-0 {
    margin-top: 0rem !important;
  }
  .mb-md-0 {
    margin-bottom: 0rem !important;
  }
  .mx-md-0 {
    margin-left: 0rem !important;
    margin-right: 0rem !important;
  }
  .my-md-0 {
    margin-top: 0rem !important;
    margin-bottom: 0rem !important;
  }
  .p-md-0 {
    padding: 0rem !important;
  }
  .pt-md-0 {
    padding-top: 0rem !important;
  }
  .pb-md-0 {
    padding-bottom: 0rem !important;
  }
  .px-md-0 {
    padding-left: 0rem !important;
    padding-right: 0rem !important;
  }
  .py-md-0 {
    padding-top: 0rem !important;
    padding-bottom: 0rem !important;
  }
  .m-md-1 {
    margin: 0.5rem !important;
  }
  .mt-md-1 {
    margin-top: 0.5rem !important;
  }
  .mb-md-1 {
    margin-bottom: 0.5rem !important;
  }
  .mx-md-1 {
    margin-left: 0.5rem !important;
    margin-right: 0.5rem !important;
  }
  .my-md-1 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .p-md-1 {
    padding: 0.5rem !important;
  }
  .pt-md-1 {
    padding-top: 0.5rem !important;
  }
  .pb-md-1 {
    padding-bottom: 0.5rem !important;
  }
  .px-md-1 {
    padding-left: 0.5rem !important;
    padding-right: 0.5rem !important;
  }
  .py-md-1 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .m-md-2 {
    margin: 1rem !important;
  }
  .mt-md-2 {
    margin-top: 1rem !important;
  }
  .mb-md-2 {
    margin-bottom: 1rem !important;
  }
  .mx-md-2 {
    margin-left: 1rem !important;
    margin-right: 1rem !important;
  }
  .my-md-2 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .p-md-2 {
    padding: 1rem !important;
  }
  .pt-md-2 {
    padding-top: 1rem !important;
  }
  .pb-md-2 {
    padding-bottom: 1rem !important;
  }
  .px-md-2 {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }
  .py-md-2 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .m-md-3 {
    margin: 1.5rem !important;
  }
  .mt-md-3 {
    margin-top: 1.5rem !important;
  }
  .mb-md-3 {
    margin-bottom: 1.5rem !important;
  }
  .mx-md-3 {
    margin-left: 1.5rem !important;
    margin-right: 1.5rem !important;
  }
  .my-md-3 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .p-md-3 {
    padding: 1.5rem !important;
  }
  .pt-md-3 {
    padding-top: 1.5rem !important;
  }
  .pb-md-3 {
    padding-bottom: 1.5rem !important;
  }
  .px-md-3 {
    padding-left: 1.5rem !important;
    padding-right: 1.5rem !important;
  }
  .py-md-3 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .m-md-4 {
    margin: 2rem !important;
  }
  .mt-md-4 {
    margin-top: 2rem !important;
  }
  .mb-md-4 {
    margin-bottom: 2rem !important;
  }
  .mx-md-4 {
    margin-left: 2rem !important;
    margin-right: 2rem !important;
  }
  .my-md-4 {
    margin-top: 2rem !important;
    margin-bottom: 2rem !important;
  }
  .p-md-4 {
    padding: 2rem !important;
  }
  .pt-md-4 {
    padding-top: 2rem !important;
  }
  .pb-md-4 {
    padding-bottom: 2rem !important;
  }
  .px-md-4 {
    padding-left: 2rem !important;
    padding-right: 2rem !important;
  }
  .py-md-4 {
    padding-top: 2rem !important;
    padding-bottom: 2rem !important;
  }
  .m-md-5 {
    margin: 2.5rem !important;
  }
  .mt-md-5 {
    margin-top: 2.5rem !important;
  }
  .mb-md-5 {
    margin-bottom: 2.5rem !important;
  }
  .mx-md-5 {
    margin-left: 2.5rem !important;
    margin-right: 2.5rem !important;
  }
  .my-md-5 {
    margin-top: 2.5rem !important;
    margin-bottom: 2.5rem !important;
  }
  .p-md-5 {
    padding: 2.5rem !important;
  }
  .pt-md-5 {
    padding-top: 2.5rem !important;
  }
  .pb-md-5 {
    padding-bottom: 2.5rem !important;
  }
  .px-md-5 {
    padding-left: 2.5rem !important;
    padding-right: 2.5rem !important;
  }
  .py-md-5 {
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important;
  }
  .m-md-6 {
    margin: 3rem !important;
  }
  .mt-md-6 {
    margin-top: 3rem !important;
  }
  .mb-md-6 {
    margin-bottom: 3rem !important;
  }
  .mx-md-6 {
    margin-left: 3rem !important;
    margin-right: 3rem !important;
  }
  .my-md-6 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .p-md-6 {
    padding: 3rem !important;
  }
  .pt-md-6 {
    padding-top: 3rem !important;
  }
  .pb-md-6 {
    padding-bottom: 3rem !important;
  }
  .px-md-6 {
    padding-left: 3rem !important;
    padding-right: 3rem !important;
  }
  .py-md-6 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .m-md-7 {
    margin: 3.5rem !important;
  }
  .mt-md-7 {
    margin-top: 3.5rem !important;
  }
  .mb-md-7 {
    margin-bottom: 3.5rem !important;
  }
  .mx-md-7 {
    margin-left: 3.5rem !important;
    margin-right: 3.5rem !important;
  }
  .my-md-7 {
    margin-top: 3.5rem !important;
    margin-bottom: 3.5rem !important;
  }
  .p-md-7 {
    padding: 3.5rem !important;
  }
  .pt-md-7 {
    padding-top: 3.5rem !important;
  }
  .pb-md-7 {
    padding-bottom: 3.5rem !important;
  }
  .px-md-7 {
    padding-left: 3.5rem !important;
    padding-right: 3.5rem !important;
  }
  .py-md-7 {
    padding-top: 3.5rem !important;
    padding-bottom: 3.5rem !important;
  }
  .m-md-8 {
    margin: 4rem !important;
  }
  .mt-md-8 {
    margin-top: 4rem !important;
  }
  .mb-md-8 {
    margin-bottom: 4rem !important;
  }
  .mx-md-8 {
    margin-left: 4rem !important;
    margin-right: 4rem !important;
  }
  .my-md-8 {
    margin-top: 4rem !important;
    margin-bottom: 4rem !important;
  }
  .p-md-8 {
    padding: 4rem !important;
  }
  .pt-md-8 {
    padding-top: 4rem !important;
  }
  .pb-md-8 {
    padding-bottom: 4rem !important;
  }
  .px-md-8 {
    padding-left: 4rem !important;
    padding-right: 4rem !important;
  }
  .py-md-8 {
    padding-top: 4rem !important;
    padding-bottom: 4rem !important;
  }
  .m-md-9 {
    margin: 4.5rem !important;
  }
  .mt-md-9 {
    margin-top: 4.5rem !important;
  }
  .mb-md-9 {
    margin-bottom: 4.5rem !important;
  }
  .mx-md-9 {
    margin-left: 4.5rem !important;
    margin-right: 4.5rem !important;
  }
  .my-md-9 {
    margin-top: 4.5rem !important;
    margin-bottom: 4.5rem !important;
  }
  .p-md-9 {
    padding: 4.5rem !important;
  }
  .pt-md-9 {
    padding-top: 4.5rem !important;
  }
  .pb-md-9 {
    padding-bottom: 4.5rem !important;
  }
  .px-md-9 {
    padding-left: 4.5rem !important;
    padding-right: 4.5rem !important;
  }
  .py-md-9 {
    padding-top: 4.5rem !important;
    padding-bottom: 4.5rem !important;
  }
  .m-md-10 {
    margin: 5rem !important;
  }
  .mt-md-10 {
    margin-top: 5rem !important;
  }
  .mb-md-10 {
    margin-bottom: 5rem !important;
  }
  .mx-md-10 {
    margin-left: 5rem !important;
    margin-right: 5rem !important;
  }
  .my-md-10 {
    margin-top: 5rem !important;
    margin-bottom: 5rem !important;
  }
  .p-md-10 {
    padding: 5rem !important;
  }
  .pt-md-10 {
    padding-top: 5rem !important;
  }
  .pb-md-10 {
    padding-bottom: 5rem !important;
  }
  .px-md-10 {
    padding-left: 5rem !important;
    padding-right: 5rem !important;
  }
  .py-md-10 {
    padding-top: 5rem !important;
    padding-bottom: 5rem !important;
  }
}
@media (min-width: 1179px) {
  .m-lg-0 {
    margin: 0rem !important;
  }
  .mt-lg-0 {
    margin-top: 0rem !important;
  }
  .mb-lg-0 {
    margin-bottom: 0rem !important;
  }
  .mx-lg-0 {
    margin-left: 0rem !important;
    margin-right: 0rem !important;
  }
  .my-lg-0 {
    margin-top: 0rem !important;
    margin-bottom: 0rem !important;
  }
  .p-lg-0 {
    padding: 0rem !important;
  }
  .pt-lg-0 {
    padding-top: 0rem !important;
  }
  .pb-lg-0 {
    padding-bottom: 0rem !important;
  }
  .px-lg-0 {
    padding-left: 0rem !important;
    padding-right: 0rem !important;
  }
  .py-lg-0 {
    padding-top: 0rem !important;
    padding-bottom: 0rem !important;
  }
  .m-lg-1 {
    margin: 0.5rem !important;
  }
  .mt-lg-1 {
    margin-top: 0.5rem !important;
  }
  .mb-lg-1 {
    margin-bottom: 0.5rem !important;
  }
  .mx-lg-1 {
    margin-left: 0.5rem !important;
    margin-right: 0.5rem !important;
  }
  .my-lg-1 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .p-lg-1 {
    padding: 0.5rem !important;
  }
  .pt-lg-1 {
    padding-top: 0.5rem !important;
  }
  .pb-lg-1 {
    padding-bottom: 0.5rem !important;
  }
  .px-lg-1 {
    padding-left: 0.5rem !important;
    padding-right: 0.5rem !important;
  }
  .py-lg-1 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .m-lg-2 {
    margin: 1rem !important;
  }
  .mt-lg-2 {
    margin-top: 1rem !important;
  }
  .mb-lg-2 {
    margin-bottom: 1rem !important;
  }
  .mx-lg-2 {
    margin-left: 1rem !important;
    margin-right: 1rem !important;
  }
  .my-lg-2 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .p-lg-2 {
    padding: 1rem !important;
  }
  .pt-lg-2 {
    padding-top: 1rem !important;
  }
  .pb-lg-2 {
    padding-bottom: 1rem !important;
  }
  .px-lg-2 {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }
  .py-lg-2 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .m-lg-3 {
    margin: 1.5rem !important;
  }
  .mt-lg-3 {
    margin-top: 1.5rem !important;
  }
  .mb-lg-3 {
    margin-bottom: 1.5rem !important;
  }
  .mx-lg-3 {
    margin-left: 1.5rem !important;
    margin-right: 1.5rem !important;
  }
  .my-lg-3 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .p-lg-3 {
    padding: 1.5rem !important;
  }
  .pt-lg-3 {
    padding-top: 1.5rem !important;
  }
  .pb-lg-3 {
    padding-bottom: 1.5rem !important;
  }
  .px-lg-3 {
    padding-left: 1.5rem !important;
    padding-right: 1.5rem !important;
  }
  .py-lg-3 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .m-lg-4 {
    margin: 2rem !important;
  }
  .mt-lg-4 {
    margin-top: 2rem !important;
  }
  .mb-lg-4 {
    margin-bottom: 2rem !important;
  }
  .mx-lg-4 {
    margin-left: 2rem !important;
    margin-right: 2rem !important;
  }
  .my-lg-4 {
    margin-top: 2rem !important;
    margin-bottom: 2rem !important;
  }
  .p-lg-4 {
    padding: 2rem !important;
  }
  .pt-lg-4 {
    padding-top: 2rem !important;
  }
  .pb-lg-4 {
    padding-bottom: 2rem !important;
  }
  .px-lg-4 {
    padding-left: 2rem !important;
    padding-right: 2rem !important;
  }
  .py-lg-4 {
    padding-top: 2rem !important;
    padding-bottom: 2rem !important;
  }
  .m-lg-5 {
    margin: 2.5rem !important;
  }
  .mt-lg-5 {
    margin-top: 2.5rem !important;
  }
  .mb-lg-5 {
    margin-bottom: 2.5rem !important;
  }
  .mx-lg-5 {
    margin-left: 2.5rem !important;
    margin-right: 2.5rem !important;
  }
  .my-lg-5 {
    margin-top: 2.5rem !important;
    margin-bottom: 2.5rem !important;
  }
  .p-lg-5 {
    padding: 2.5rem !important;
  }
  .pt-lg-5 {
    padding-top: 2.5rem !important;
  }
  .pb-lg-5 {
    padding-bottom: 2.5rem !important;
  }
  .px-lg-5 {
    padding-left: 2.5rem !important;
    padding-right: 2.5rem !important;
  }
  .py-lg-5 {
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important;
  }
  .m-lg-6 {
    margin: 3rem !important;
  }
  .mt-lg-6 {
    margin-top: 3rem !important;
  }
  .mb-lg-6 {
    margin-bottom: 3rem !important;
  }
  .mx-lg-6 {
    margin-left: 3rem !important;
    margin-right: 3rem !important;
  }
  .my-lg-6 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .p-lg-6 {
    padding: 3rem !important;
  }
  .pt-lg-6 {
    padding-top: 3rem !important;
  }
  .pb-lg-6 {
    padding-bottom: 3rem !important;
  }
  .px-lg-6 {
    padding-left: 3rem !important;
    padding-right: 3rem !important;
  }
  .py-lg-6 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .m-lg-7 {
    margin: 3.5rem !important;
  }
  .mt-lg-7 {
    margin-top: 3.5rem !important;
  }
  .mb-lg-7 {
    margin-bottom: 3.5rem !important;
  }
  .mx-lg-7 {
    margin-left: 3.5rem !important;
    margin-right: 3.5rem !important;
  }
  .my-lg-7 {
    margin-top: 3.5rem !important;
    margin-bottom: 3.5rem !important;
  }
  .p-lg-7 {
    padding: 3.5rem !important;
  }
  .pt-lg-7 {
    padding-top: 3.5rem !important;
  }
  .pb-lg-7 {
    padding-bottom: 3.5rem !important;
  }
  .px-lg-7 {
    padding-left: 3.5rem !important;
    padding-right: 3.5rem !important;
  }
  .py-lg-7 {
    padding-top: 3.5rem !important;
    padding-bottom: 3.5rem !important;
  }
  .m-lg-8 {
    margin: 4rem !important;
  }
  .mt-lg-8 {
    margin-top: 4rem !important;
  }
  .mb-lg-8 {
    margin-bottom: 4rem !important;
  }
  .mx-lg-8 {
    margin-left: 4rem !important;
    margin-right: 4rem !important;
  }
  .my-lg-8 {
    margin-top: 4rem !important;
    margin-bottom: 4rem !important;
  }
  .p-lg-8 {
    padding: 4rem !important;
  }
  .pt-lg-8 {
    padding-top: 4rem !important;
  }
  .pb-lg-8 {
    padding-bottom: 4rem !important;
  }
  .px-lg-8 {
    padding-left: 4rem !important;
    padding-right: 4rem !important;
  }
  .py-lg-8 {
    padding-top: 4rem !important;
    padding-bottom: 4rem !important;
  }
  .m-lg-9 {
    margin: 4.5rem !important;
  }
  .mt-lg-9 {
    margin-top: 4.5rem !important;
  }
  .mb-lg-9 {
    margin-bottom: 4.5rem !important;
  }
  .mx-lg-9 {
    margin-left: 4.5rem !important;
    margin-right: 4.5rem !important;
  }
  .my-lg-9 {
    margin-top: 4.5rem !important;
    margin-bottom: 4.5rem !important;
  }
  .p-lg-9 {
    padding: 4.5rem !important;
  }
  .pt-lg-9 {
    padding-top: 4.5rem !important;
  }
  .pb-lg-9 {
    padding-bottom: 4.5rem !important;
  }
  .px-lg-9 {
    padding-left: 4.5rem !important;
    padding-right: 4.5rem !important;
  }
  .py-lg-9 {
    padding-top: 4.5rem !important;
    padding-bottom: 4.5rem !important;
  }
  .m-lg-10 {
    margin: 5rem !important;
  }
  .mt-lg-10 {
    margin-top: 5rem !important;
  }
  .mb-lg-10 {
    margin-bottom: 5rem !important;
  }
  .mx-lg-10 {
    margin-left: 5rem !important;
    margin-right: 5rem !important;
  }
  .my-lg-10 {
    margin-top: 5rem !important;
    margin-bottom: 5rem !important;
  }
  .p-lg-10 {
    padding: 5rem !important;
  }
  .pt-lg-10 {
    padding-top: 5rem !important;
  }
  .pb-lg-10 {
    padding-bottom: 5rem !important;
  }
  .px-lg-10 {
    padding-left: 5rem !important;
    padding-right: 5rem !important;
  }
  .py-lg-10 {
    padding-top: 5rem !important;
    padding-bottom: 5rem !important;
  }
}
.ms-0 {
  margin-left: 0rem !important;
}

.me-0 {
  margin-right: 0rem !important;
}

.ps-0 {
  padding-left: 0rem !important;
}

.pe-0 {
  padding-right: 0rem !important;
}

.ms-1 {
  margin-left: 0.5rem !important;
}

.me-1 {
  margin-right: 0.5rem !important;
}

.ps-1 {
  padding-left: 0.5rem !important;
}

.pe-1 {
  padding-right: 0.5rem !important;
}

.ms-2 {
  margin-left: 1rem !important;
}

.me-2 {
  margin-right: 1rem !important;
}

.ps-2 {
  padding-left: 1rem !important;
}

.pe-2 {
  padding-right: 1rem !important;
}

.ms-3 {
  margin-left: 1.5rem !important;
}

.me-3 {
  margin-right: 1.5rem !important;
}

.ps-3 {
  padding-left: 1.5rem !important;
}

.pe-3 {
  padding-right: 1.5rem !important;
}

.ms-4 {
  margin-left: 2rem !important;
}

.me-4 {
  margin-right: 2rem !important;
}

.ps-4 {
  padding-left: 2rem !important;
}

.pe-4 {
  padding-right: 2rem !important;
}

.ms-5 {
  margin-left: 2.5rem !important;
}

.me-5 {
  margin-right: 2.5rem !important;
}

.ps-5 {
  padding-left: 2.5rem !important;
}

.pe-5 {
  padding-right: 2.5rem !important;
}

.ms-6 {
  margin-left: 3rem !important;
}

.me-6 {
  margin-right: 3rem !important;
}

.ps-6 {
  padding-left: 3rem !important;
}

.pe-6 {
  padding-right: 3rem !important;
}

.ms-7 {
  margin-left: 3.5rem !important;
}

.me-7 {
  margin-right: 3.5rem !important;
}

.ps-7 {
  padding-left: 3.5rem !important;
}

.pe-7 {
  padding-right: 3.5rem !important;
}

.ms-8 {
  margin-left: 4rem !important;
}

.me-8 {
  margin-right: 4rem !important;
}

.ps-8 {
  padding-left: 4rem !important;
}

.pe-8 {
  padding-right: 4rem !important;
}

.ms-9 {
  margin-left: 4.5rem !important;
}

.me-9 {
  margin-right: 4.5rem !important;
}

.ps-9 {
  padding-left: 4.5rem !important;
}

.pe-9 {
  padding-right: 4.5rem !important;
}

.ms-10 {
  margin-left: 5rem !important;
}

.me-10 {
  margin-right: 5rem !important;
}

.ps-10 {
  padding-left: 5rem !important;
}

.pe-10 {
  padding-right: 5rem !important;
}

@media (min-width: 768px) {
  .ms-md-0 {
    margin-left: 0rem !important;
  }
  .me-md-0 {
    margin-right: 0rem !important;
  }
  .ps-md-0 {
    padding-left: 0rem !important;
  }
  .pe-md-0 {
    padding-right: 0rem !important;
  }
  .ms-md-1 {
    margin-left: 0.5rem !important;
  }
  .me-md-1 {
    margin-right: 0.5rem !important;
  }
  .ps-md-1 {
    padding-left: 0.5rem !important;
  }
  .pe-md-1 {
    padding-right: 0.5rem !important;
  }
  .ms-md-2 {
    margin-left: 1rem !important;
  }
  .me-md-2 {
    margin-right: 1rem !important;
  }
  .ps-md-2 {
    padding-left: 1rem !important;
  }
  .pe-md-2 {
    padding-right: 1rem !important;
  }
  .ms-md-3 {
    margin-left: 1.5rem !important;
  }
  .me-md-3 {
    margin-right: 1.5rem !important;
  }
  .ps-md-3 {
    padding-left: 1.5rem !important;
  }
  .pe-md-3 {
    padding-right: 1.5rem !important;
  }
  .ms-md-4 {
    margin-left: 2rem !important;
  }
  .me-md-4 {
    margin-right: 2rem !important;
  }
  .ps-md-4 {
    padding-left: 2rem !important;
  }
  .pe-md-4 {
    padding-right: 2rem !important;
  }
  .ms-md-5 {
    margin-left: 2.5rem !important;
  }
  .me-md-5 {
    margin-right: 2.5rem !important;
  }
  .ps-md-5 {
    padding-left: 2.5rem !important;
  }
  .pe-md-5 {
    padding-right: 2.5rem !important;
  }
  .ms-md-6 {
    margin-left: 3rem !important;
  }
  .me-md-6 {
    margin-right: 3rem !important;
  }
  .ps-md-6 {
    padding-left: 3rem !important;
  }
  .pe-md-6 {
    padding-right: 3rem !important;
  }
  .ms-md-7 {
    margin-left: 3.5rem !important;
  }
  .me-md-7 {
    margin-right: 3.5rem !important;
  }
  .ps-md-7 {
    padding-left: 3.5rem !important;
  }
  .pe-md-7 {
    padding-right: 3.5rem !important;
  }
  .ms-md-8 {
    margin-left: 4rem !important;
  }
  .me-md-8 {
    margin-right: 4rem !important;
  }
  .ps-md-8 {
    padding-left: 4rem !important;
  }
  .pe-md-8 {
    padding-right: 4rem !important;
  }
  .ms-md-9 {
    margin-left: 4.5rem !important;
  }
  .me-md-9 {
    margin-right: 4.5rem !important;
  }
  .ps-md-9 {
    padding-left: 4.5rem !important;
  }
  .pe-md-9 {
    padding-right: 4.5rem !important;
  }
  .ms-md-10 {
    margin-left: 5rem !important;
  }
  .me-md-10 {
    margin-right: 5rem !important;
  }
  .ps-md-10 {
    padding-left: 5rem !important;
  }
  .pe-md-10 {
    padding-right: 5rem !important;
  }
}
@media (min-width: 1179px) {
  .ms-lg-0 {
    margin-left: 0rem !important;
  }
  .me-lg-0 {
    margin-right: 0rem !important;
  }
  .ps-lg-0 {
    padding-left: 0rem !important;
  }
  .pe-lg-0 {
    padding-right: 0rem !important;
  }
  .ms-lg-1 {
    margin-left: 0.5rem !important;
  }
  .me-lg-1 {
    margin-right: 0.5rem !important;
  }
  .ps-lg-1 {
    padding-left: 0.5rem !important;
  }
  .pe-lg-1 {
    padding-right: 0.5rem !important;
  }
  .ms-lg-2 {
    margin-left: 1rem !important;
  }
  .me-lg-2 {
    margin-right: 1rem !important;
  }
  .ps-lg-2 {
    padding-left: 1rem !important;
  }
  .pe-lg-2 {
    padding-right: 1rem !important;
  }
  .ms-lg-3 {
    margin-left: 1.5rem !important;
  }
  .me-lg-3 {
    margin-right: 1.5rem !important;
  }
  .ps-lg-3 {
    padding-left: 1.5rem !important;
  }
  .pe-lg-3 {
    padding-right: 1.5rem !important;
  }
  .ms-lg-4 {
    margin-left: 2rem !important;
  }
  .me-lg-4 {
    margin-right: 2rem !important;
  }
  .ps-lg-4 {
    padding-left: 2rem !important;
  }
  .pe-lg-4 {
    padding-right: 2rem !important;
  }
  .ms-lg-5 {
    margin-left: 2.5rem !important;
  }
  .me-lg-5 {
    margin-right: 2.5rem !important;
  }
  .ps-lg-5 {
    padding-left: 2.5rem !important;
  }
  .pe-lg-5 {
    padding-right: 2.5rem !important;
  }
  .ms-lg-6 {
    margin-left: 3rem !important;
  }
  .me-lg-6 {
    margin-right: 3rem !important;
  }
  .ps-lg-6 {
    padding-left: 3rem !important;
  }
  .pe-lg-6 {
    padding-right: 3rem !important;
  }
  .ms-lg-7 {
    margin-left: 3.5rem !important;
  }
  .me-lg-7 {
    margin-right: 3.5rem !important;
  }
  .ps-lg-7 {
    padding-left: 3.5rem !important;
  }
  .pe-lg-7 {
    padding-right: 3.5rem !important;
  }
  .ms-lg-8 {
    margin-left: 4rem !important;
  }
  .me-lg-8 {
    margin-right: 4rem !important;
  }
  .ps-lg-8 {
    padding-left: 4rem !important;
  }
  .pe-lg-8 {
    padding-right: 4rem !important;
  }
  .ms-lg-9 {
    margin-left: 4.5rem !important;
  }
  .me-lg-9 {
    margin-right: 4.5rem !important;
  }
  .ps-lg-9 {
    padding-left: 4.5rem !important;
  }
  .pe-lg-9 {
    padding-right: 4.5rem !important;
  }
  .ms-lg-10 {
    margin-left: 5rem !important;
  }
  .me-lg-10 {
    margin-right: 5rem !important;
  }
  .ps-lg-10 {
    padding-left: 5rem !important;
  }
  .pe-lg-10 {
    padding-right: 5rem !important;
  }
}
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
              All           
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.offset-1 {
  margin-left: 8.33333333%;
}

.offset-2 {
  margin-left: 16.66666667%;
}

.offset-3 {
  margin-left: 25%;
}

.offset-4 {
  margin-left: 33.33333333%;
}

.offset-5 {
  margin-left: 41.66666667%;
}

.offset-6 {
  margin-left: 50%;
}

.offset-7 {
  margin-left: 58.33333333%;
}

.offset-8 {
  margin-left: 66.66666667%;
}

.offset-9 {
  margin-left: 75%;
}

.offset-10 {
  margin-left: 83.33333333%;
}

.offset-11 {
  margin-left: 91.66666667%;
}

.me-auto {
  margin-right: auto !important;
}

.ms-auto {
  margin-left: auto !important;
}

.gpe {
  padding-right: var(--grid-padding);
}

.gps {
  padding-left: var(--grid-padding);
}

.text-start {
  text-align: left !important;
}

.text-end {
  text-align: right !important;
}

.text-center {
  text-align: center !important;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
               from Tablet  ⬜           
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
@media (min-width: 768px) {
  .offset-md-1 {
    margin-left: 8.33333333%;
  }
  .offset-md-2 {
    margin-left: 16.66666667%;
  }
  .offset-md-3 {
    margin-left: 25%;
  }
  .offset-md-4 {
    margin-left: 33.33333333%;
  }
  .offset-md-5 {
    margin-left: 41.66666667%;
  }
  .offset-md-6 {
    margin-left: 50%;
  }
  .offset-md-7 {
    margin-left: 58.33333333%;
  }
  .offset-md-8 {
    margin-left: 66.66666667%;
  }
  .offset-md-9 {
    margin-left: 75%;
  }
  .offset-md-10 {
    margin-left: 83.33333333%;
  }
  .offset-md-11 {
    margin-left: 91.66666667%;
  }
  .gpe-md {
    padding-right: var(--grid-padding);
  }
  .gps-md {
    padding-left: var(--grid-padding);
  }
  .me-md-auto {
    margin-right: auto !important;
  }
  .ms-md-auto {
    margin-left: auto !important;
  }
  .text-md-start {
    text-align: left !important;
  }
  .text-md-end {
    text-align: right !important;
  }
  .text-md-center {
    text-align: center !important;
  }
}
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          Not from  Desktop 🖥️          
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
@media (min-width: 1179px) {
  .offset-lg-1 {
    margin-left: 8.33333333%;
  }
  .offset-lg-2 {
    margin-left: 16.66666667%;
  }
  .offset-lg-3 {
    margin-left: 25%;
  }
  .offset-lg-4 {
    margin-left: 33.33333333%;
  }
  .offset-lg-5 {
    margin-left: 41.66666667%;
  }
  .offset-lg-6 {
    margin-left: 50%;
  }
  .offset-lg-7 {
    margin-left: 58.33333333%;
  }
  .offset-lg-8 {
    margin-left: 66.66666667%;
  }
  .offset-lg-9 {
    margin-left: 75%;
  }
  .offset-lg-10 {
    margin-left: 83.33333333%;
  }
  .offset-lg-11 {
    margin-left: 91.66666667%;
  }
  .me-lg-auto {
    margin-right: auto !important;
  }
  .ms-lg-auto {
    margin-left: auto !important;
  }
  .gpe-lg {
    padding-right: var(--grid-padding);
  }
  .gps-lg {
    padding-left: var(--grid-padding);
  }
  .text-lg-start {
    text-align: left !important;
  }
  .text-lg-end {
    text-align: right !important;
  }
  .text-lg-center {
    text-align: center !important;
  }
}
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                   Typography                     
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                Headings
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: bold;
}

h1 {
  font-size: 6rem;
  line-height: 1.1;
}

h2 {
  font-size: 4rem;
  line-height: 100%;
  letter-spacing: -1.6px;
  text-transform: uppercase;
}
h2 strong {
  font-family: "Miller-Banner";
  font-weight: 300;
  font-size: 75%;
}

h3 {
  font-size: 3.25rem;
}

h4 {
  font-size: 3rem;
  line-height: 122%;
}

h5 {
  font-size: 2.5rem;
  line-height: 120%;
  letter-spacing: -1.25px;
}

h6 {
  font-size: 2rem;
}

p,
a,
li,
span {
  font-size: 1.6rem;
  font-style: normal;
  font-weight: 400;
  line-height: 140%;
  letter-spacing: -0.5px;
}
p *,
a *,
li *,
span * {
  line-height: inherit;
}

p strong {
  font-weight: 600;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                  Mob & Tab
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
@media (max-width: 1024px) {
  h1 {
    font-size: 6rem;
  }
  h2 {
    font-size: 4.2rem;
  }
  h3 {
    font-size: 4.2rem;
  }
}
@media (max-width: 767px) {
  h1 {
    font-size: 3.5rem;
  }
  h2 {
    font-size: 3rem;
  }
}
.text-up {
  text-transform: uppercase;
}

.gap-1 {
  gap: 1rem;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                 Tiny Editor
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.tiny-editor h1 {
  padding-bottom: 2.5rem;
  line-height: 100%;
}
.tiny-editor h2 strong,
.tiny-editor h2,
.tiny-editor h3 {
  display: block;
  padding-bottom: 1.75rem;
}
.tiny-editor h4,
.tiny-editor h5,
.tiny-editor h6,
.tiny-editor p {
  padding-bottom: 1.5rem;
}
.tiny-editor p:last-child {
  padding-bottom: 0;
}
.tiny-editor.tagline-gotham h2 {
  padding-bottom: 0;
}
.tiny-editor.tagline-gotham h3 {
  font-size: 2.5rem;
  line-height: 115%;
  font-weight: 100;
}
.tiny-editor.tagline-miller h2 {
  padding-bottom: 0;
}
.tiny-editor.tagline-miller h3 {
  font-family: "Miller-Banner";
  font-size: 3rem;
  line-height: 115%;
  font-weight: 300;
  padding-top: 0.5rem;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                 Menu & Header
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
header {
  position: fixed;
  top: 1rem;
  z-index: 101;
  transform: translate3d(0, 0, 0);
  transition: transform 0.7s ease;
  width: 100%;
}
@media (min-width: 768px) and (max-width: 1024px) {
  header {
    top: 0;
  }
}
header > .container {
  position: relative;
  z-index: 2;
  padding-right: 3.1vw;
  padding-left: 3.1vw;
}
header > .container .row {
  position: relative;
}
header > .container .row::after {
  content: "";
  width: 94%;
  height: 1px;
  background-color: rgba(0, 0, 0, 0.1);
  position: absolute;
  bottom: 0;
  left: 2%;
  right: 0;
}
header .row {
  transition: all 0.4s ease;
}
header ul li {
  display: inline-block;
  list-style: none;
}
header .links a {
  text-transform: uppercase;
  color: #0f0d0d;
  font-weight: 600;
  padding: 2rem 0 3rem;
  transition: all 0.3s ease;
  font-size: 1.5rem;
}
header .links a.active:before {
  transform: translateX(0%);
}
header .row-glass {
  padding: 2rem;
  border-radius: 50px;
  min-height: 7.1rem;
}
@media screen and (max-width: 1024px) {
  header .row-glass {
    border-radius: 0;
    padding: 2rem 0;
  }
}
header .w-logo {
  display: none;
}
@media screen and (max-width: 1024px) {
  header.show {
    background: rgba(0, 0, 0, 0.38) !important;
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(6.6px);
    top: 0;
  }
}
header.show .b-logo {
  display: none;
}
header.show .w-logo {
  display: block;
}
header.show > .container .row::after {
  height: 0;
}
header.show .row-glass {
  padding: 2rem 2rem 1.5rem;
  background: rgba(0, 0, 0, 0.21);
  backdrop-filter: blur(8px);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--white) 10%, transparent), inset 1.8px 3px 0px -2px color-mix(in srgb, var(--white) 90%, transparent), inset -2px -2px 0px -2px color-mix(in srgb, var(--white) 80%, transparent), inset -3px -8px 1px -6px color-mix(in srgb, var(--white) 60%, transparent), inset -0.3px -1px 4px 0px color-mix(in srgb, var(--black) 12%, transparent), inset -1.5px 2.5px 0px -2px color-mix(in srgb, var(--black) 20%, transparent), inset 0px 3px 4px -2px color-mix(in srgb, var(--black) 20%, transparent), inset 2px -6.5px 1px -4px color-mix(in srgb, var(--black) 10%, transparent), 0px 1px 5px 0px color-mix(in srgb, var(--black) 10%, transparent), 0px 6px 16px 0px color-mix(in srgb, var(--black) 8%, transparent);
}
@media (min-width: 768px) and (max-width: 1024px) {
  header.show .row-glass {
    background: none;
    box-shadow: none;
    backdrop-filter: unset;
  }
}
@media (max-width: 767px) {
  header.show .row-glass {
    background: none;
    box-shadow: none;
    backdrop-filter: unset;
    padding: 2rem 0rem 1.5rem;
  }
}
header.show .links a {
  color: var(--white);
  padding: 2rem 0 4.4rem;
}
header.show .links svg.menu-arrow {
  fill: var(--white);
}
header.show .lang {
  color: var(--white);
}
header.show .menu-btn .s-menu-lines {
  background-color: var(--white);
}
header.show .menu-btn .s-menu-lines::before, header.show .menu-btn .s-menu-lines::after {
  background-color: var(--white);
}
header.show #d-menu-projects,
header.show #d-menu-locations {
  top: 7rem;
}
header.show #d-menu-projects.active .container .row, header.show #d-menu-projects.is-active .container .row,
header.show #d-menu-locations.active .container .row,
header.show #d-menu-locations.is-active .container .row {
  border: 0;
}
header .menu-locations-grid ul {
  width: 50%;
}
header .menu-locations-grid ul li {
  list-style: none;
  margin-bottom: 1.25rem;
  width: 50%;
}
header .menu-locations-grid ul li a {
  display: inline-block;
  width: 100%;
  padding: 0.4rem 1rem;
}
header .menu-locations-grid ul li:hover a {
  border-radius: 0.6rem;
  background: var(--white);
}
header.header-offers {
  background-color: var(--white);
  top: 0;
}
@media (max-width: 767px) {
  header.header-offers {
    padding: 0 1rem;
  }
}
@media (max-width: 767px) {
  header.header-offers .header-logo {
    margin-left: 0;
  }
}
header.header-offers.show {
  background-color: transparent;
  top: 1rem;
}
@media (max-width: 1024px) {
  header.header-offers.show {
    top: 0;
    background-color: transparent;
  }
}
header.header-offers .jcb {
  padding: 1.5rem 2rem 1.6rem !important;
}
@media (max-width: 1024px) {
  header.header-offers .jcb {
    padding: 1.5rem 0 1.6rem !important;
  }
}
header.header-offers .header-offers-hamburger {
  display: none;
}
header.header-offers .btn {
  padding: 0.5rem 0.6rem 0.5rem 2rem !important;
  font-size: 1.3rem;
}
header.header-offers .btn div {
  color: var(--black);
}
header.header-offers .lang {
  position: relative;
  right: 3rem;
}
@media (max-width: 767px) {
  header.header-offers .lang {
    top: 0 !important;
    transform: none !important;
  }
}
header.header-offers .d-desktop.links {
  padding-right: 0;
}
@media (max-width: 1024px) {
  header.header-offers .d-desktop.links {
    display: block !important;
  }
}
@media (max-width: 767px) {
  header.header-offers .d-desktop.links {
    display: flex !important;
    justify-content: flex-end;
    align-items: center;
  }
}

@media (max-width: 767px) {
  .header-logo {
    width: 15.9rem;
    display: inline-block;
    margin-left: 1rem;
    padding-top: 0.5rem;
  }
}
.header-logo img {
  max-width: 24rem;
}
@media (max-width: 767px) {
  .header-logo img {
    max-width: 100%;
  }
}

.p-top {
  padding-top: calc(var(--grid-padding) + 0.9rem) !important;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                Socials
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
svg.menu-arrow {
  transform: rotate(90deg);
  margin-top: -3px;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                Dropdown Menu
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
#d-menu-projects,
#d-menu-locations {
  position: absolute;
  top: 5.8rem;
  left: 0;
  width: 100%;
  transform: translateY(0);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: all 0.3s ease;
  height: 0;
}
#d-menu-projects.active, #d-menu-projects.is-active,
#d-menu-locations.active,
#d-menu-locations.is-active {
  transform: translateY(15px);
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  display: block;
  height: auto;
  z-index: 1;
}

.dropdown-menu {
  background: rgba(255, 255, 255, 0.6);
  backdrop-filter: blur(17px);
  margin-top: 0;
  overflow: hidden;
}
.dropdown-menu .container > .row .list-wrap,
.dropdown-menu .container > .row .menu-card-wrap {
  padding-top: 4rem;
  padding-bottom: 6rem;
}
.dropdown-menu .container > .row .list-wrap {
  position: relative;
}
.dropdown-menu .container > .row .list-wrap::after {
  content: "";
  position: absolute;
  top: 0;
  right: 1.4rem;
  width: 1px;
  height: 100%;
  background: rgba(0, 0, 0, 0.1);
}

/* Sidebar List Styling */
.list {
  padding: 0.8rem;
  margin-bottom: 0.5rem;
  cursor: pointer;
  border-radius: 12px;
  transition: background 0.3s ease;
  color: var(--black);
  font-weight: 600;
  text-transform: uppercase;
  width: 87%;
}
.list a {
  font-weight: 600;
}
.list .icon {
  background-color: var(--yellow);
  border-radius: 0.7rem;
  width: 4rem;
  height: 4rem;
  margin-right: 1.6rem;
}
.list.active, .list.is-active {
  background: var(--white);
  position: relative;
  transition: all 0.3s ease;
}
.list.active::after, .list.is-active::after {
  background: url(e5f2be1d10a20f3438a3.svg) right center no-repeat;
  background-size: contain;
  width: 15px;
  height: 15px;
  content: "";
  position: absolute;
  right: 1.4rem;
  top: 50%;
  transform: translateY(-58%);
}

/* Right Side Content Management */
.desc-card {
  position: relative;
  min-height: 46rem;
}

.menu-card-wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  display: flex;
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px);
  transition: opacity 0.35s ease, transform 0.35s ease, visibility 0.35s;
  pointer-events: none;
}
.menu-card-wrap.active, .menu-card-wrap.is-active {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
}
.menu-card-wrap.is-hiding {
  opacity: 0;
  transform: translateY(-8px);
}
.menu-card-wrap .menu-card {
  padding: 0 4rem 2rem;
}
.menu-card-wrap .menu-card:hover a img {
  transform: translateY(-0.2rem);
}
.menu-card-wrap .menu-card:hover a p {
  color: var(--orange);
}
.menu-card-wrap .menu-card a img {
  transition: all 0.3s ease;
}
.menu-card-wrap .menu-card a p {
  margin-top: 0.9rem;
  font-size: 1.5rem;
  line-height: 1.2;
  transition: all 0.3s ease;
}
.menu-card-wrap a.btn-white {
  width: auto;
  margin-left: 3.8rem;
  margin-top: 3.2rem;
}

.mob-menu {
  position: fixed;
  z-index: 50;
  left: 100vw;
  top: 0;
  width: 100vw;
  min-height: 100vh;
  height: 100%;
  overflow-y: scroll;
  padding-bottom: 4rem;
  background: var(--white);
  color: var(--black);
  pointer-events: none;
  will-change: transform;
  transition: transform 0.8s cubic-bezier(0.075, 0.82, 0.165, 1) 0.7s;
}
.mob-menu:after, .mob-menu:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  height: 100vh;
}
.mob-menu:before {
  z-index: 1;
  width: 70vw;
  background: var(--yellow);
  transition: transform 0.7s cubic-bezier(0.075, 0.82, 0.165, 1) 0.8s;
}
.mob-menu:after {
  z-index: 2;
  width: 100vw;
  background: var(--yellow);
  transition: width 0.8s cubic-bezier(0.075, 0.82, 0.165, 1) 0.6s;
}
.mob-menu ul,
.mob-menu .mob-hamburger-links {
  padding-top: calc(7rem + 8vh);
  list-style-type: none;
  text-align: center;
  opacity: 0;
  transition: opacity 0.5s ease 0.25s;
}
.mob-menu ul > li,
.mob-menu .mob-hamburger-links > li {
  position: relative;
  margin: 0;
  padding-bottom: calc(1rem + 2.5vh);
}
.mob-menu ul > li.active:before,
.mob-menu .mob-hamburger-links > li.active:before {
  content: "■";
  display: block;
  position: absolute;
  left: -25px;
  color: var(--yellow);
}
.mob-menu ul > li a,
.mob-menu .mob-hamburger-links > li a {
  font-size: 2rem;
  text-transform: uppercase;
  font-weight: 600;
}
.mob-menu ul .social,
.mob-menu .mob-hamburger-links .social {
  position: absolute;
  bottom: 10%;
  right: 5%;
}

/* Animation */
.mob-menu-trigger {
  display: none;
}
.mob-menu-trigger:checked ~ .mob-menu {
  pointer-events: auto;
  transform: translate3d(-100vw, 0, 0);
  transition: transform 1s cubic-bezier(0.075, 0.82, 0.165, 1) 0.2s;
}
.mob-menu-trigger:checked ~ .mob-menu:before {
  transform: translate3d(-70vw, 0, 0);
  transition: transform 1s cubic-bezier(0.075, 0.82, 0.165, 1) 0.1s;
}
.mob-menu-trigger:checked ~ .mob-menu:after {
  width: 0vw;
  transition: width 1.4s cubic-bezier(0.075, 0.82, 0.165, 1) 0.25s;
}
.mob-menu-trigger:checked ~ .mob-menu > ul,
.mob-menu-trigger:checked ~ .mob-menu .mob-hamburger-links {
  opacity: 1;
  transition: opacity 0.8s ease 0.8s;
}
.mob-menu-trigger:checked ~ .menu-close:before {
  transform: rotate(45deg);
  transition: all 0.5s ease;
}
.mob-menu-trigger:checked ~ .menu-close:after {
  top: 0;
  width: 75%;
  left: 0;
  transform: rotate(-45deg);
  transition: all 0.5s ease;
}

/* Close Button */
.menu-close {
  position: fixed;
  right: 2.5rem;
  width: 5rem;
  height: 5rem;
  z-index: 999;
  mix-blend-mode: difference;
}
@media screen and (max-width: 1024px) {
  .menu-close {
    top: 3rem;
    height: 2rem;
    right: 1.2rem;
  }
}
@media screen and (max-width: 650px) {
  .menu-close {
    top: 2.5rem;
  }
}
.menu-close:after, .menu-close:before {
  content: "";
  position: absolute;
  display: block;
  height: 2px;
  width: 75%;
  background: white;
  transition: all 0.8s ease;
  transform-origin: center;
}
.menu-close:after {
  top: 10px;
  width: 50%;
  left: 25%;
}

.mob-site-search {
  padding-top: calc(6rem + 8vh);
  display: none;
}
.mob-site-search form {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  display: flex;
  align-items: end;
  padding-bottom: 1.5rem;
}
.mob-site-search form ::placeholder {
  font-size: 2rem;
  color: var(--black);
  text-indent: 0px;
  padding-left: 0;
  margin-left: -0.5rem;
}
.mob-site-search form input {
  font-size: 2rem;
  width: 100%;
  color: var(--black);
  border: none;
  background-color: transparent;
}
.mob-site-search form svg {
  margin-top: 1rem;
  height: 2.5rem;
  width: 2.5rem;
  fill: var(--black);
}

.dropdown-arrow {
  height: 2rem;
  width: 2.35rem;
  fill: var(--blue);
  transform: rotate(90deg);
  position: absolute;
  top: 1rem;
  right: 2%;
}

.mob-sub-menu {
  padding-top: 1.5rem;
  padding-bottom: 1rem !important;
  display: none;
  border-radius: 6px;
  background: rgba(217, 217, 217, 0.1);
  margin-top: 2rem;
  padding: 2.5rem 0;
  width: 85%;
}
.mob-sub-menu a {
  display: block;
  margin-left: 2rem;
  padding-bottom: 2rem;
  font-size: 1.8rem;
}

.h-sub-menu.active .dropdown-arrow {
  transform: rotate(-90deg);
}
.h-sub-menu.active .mob-sub-menu {
  display: block;
}

.mob-hamburger-links {
  flex-wrap: wrap;
  gap: 2rem 1rem;
  justify-content: center;
}
@media screen and (max-width: 1024px) {
  .mob-hamburger-links {
    padding-top: 2rem !important;
  }
}
@media (max-width: 767px) {
  .mob-hamburger-links {
    gap: 2rem 0;
  }
}
@media screen and (max-width: 1024px) {
  .mob-hamburger-links .col-6 {
    width: 25%;
  }
}
@media screen and (max-width: 768px) {
  .mob-hamburger-links .col-6 {
    width: 32%;
  }
}
@media screen and (max-width: 650px) {
  .mob-hamburger-links .col-6 {
    width: 50%;
  }
}
.mob-hamburger-links a {
  justify-content: space-between;
  display: flex;
  width: 100%;
}

.menu.h-desktop.active .menu-close::before, .menu.h-desktop.active .menu-close::after {
  background-color: var(--black) !important;
}
.menu .mob-tel a.btn::after {
  background-size: 1.7rem;
  background-position: 1.3rem 1.1rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 12 12%27%3E%3Cpath fill=%27%23000%27 d=%27M11.4031 7.98631C9.61489 7.12009 9.30541 7.01045 8.89975 6.92218C8.46702 7.03755 8.13915 7.51872 7.44976 8.30577C7.09699 8.24896 5.1471 7.41519 3.53454 5.17012C3.57502 5.01574 3.90452 4.65176 4.04506 4.48738C4.54885 3.61253 4.34338 3.21557 3.48862 1.20384C3.05216 0.554688 2.409 0.567056 1.1243 0.926906C0 2.01241 0 3.46555 1.20512 6.47789C2.64092 8.54124 4.36913 10.0182 6.12108 10.7071C7.80772 11.3703 9.06046 11.447 9.5388 11.4192C10.2069 11.3603 11.4874 10.7072 11.7786 9.91047C12.0686 8.59728 11.8114 8.17925 11.4031 7.98631Z%27/%3E%3C/svg%3E");
}
.menu .mob-whatsapp a.btn::after {
  background-size: 1.7rem;
  background-position: 1.3rem 1.1rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 12 12%27%3E%3Cpath fill=%27%23000%27 d=%27M8.87937 6.89571C7.98116 6.4537 7.62194 6.35271 7.32728 6.52722C6.97534 6.96635 6.8936 7.05872 6.67542 7.01193C5.02464 5.62398 4.91232 5.42411 4.96359 5.36357C5.18341 5.11028 5.43646 4.66387 5.33325 4.46131C4.94317 3.52842 4.80946 3.20875 4.51125 3.10352C3.50649 3.42572 3.15155 3.84736 3.15155 4.58887C3.15155 5.88635 4.4781 7.17888 6.2262 8.28409C7.47459 8.66162 8.27855 8.6174 9.06802 7.87757C9.21365 7.20748 9.08446 6.99416 8.87937 6.89571Z%27/%3E%3Cpath fill=%27%23000%27 d=%27M6.10651 0C2.85654 0 0.212484 2.62418 0.212484 5.84973C0.212484 6.89299 0.491679 7.91419 1.02058 8.80796L0.00825 11.7941C0.0034 11.9114 0.114653 12 0.203017 11.9927L3.31678 11.0032C4.16886 11.4585 5.1319 11.6988 6.10655 11.6988C9.35621 11.6988 12 9.07492 12 5.84973C12 2.62418 9.35621 0 6.10651 0ZM6.10651 10.4803C3.53224 10.4803 1.43793 8.40304 1.43793 5.84973C1.43793 3.2961 3.53224 1.21855 6.10647 1.21855C8.68039 1.21855 10.7745 3.2961 10.7745 5.84973C10.7745 8.40304 8.68047 10.4803 6.10651 10.4803Z%27/%3E%3C/svg%3E");
}

li#mob-project ul {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  padding-top: 0;
  transition: max-height 0.4s ease, opacity 0.4s ease, padding-top 0.4s ease;
}
li#mob-project ul li {
  padding-bottom: 1.8rem;
  line-height: 1;
}
li#mob-project ul li:last-child {
  padding-bottom: 0;
}
li#mob-project ul li a {
  text-transform: uppercase;
  color: #DA6F02;
  font-size: 1.3rem;
  font-weight: 600;
}
li#mob-project.show ul {
  padding-top: calc(0rem + 2.5vh);
  max-height: 500px;
  opacity: 1;
}

footer {
  background-color: var(--black);
  color: white;
}
footer h6 {
  color: var(--yellow);
  margin-bottom: 2rem;
  font-size: 1.6rem;
}
footer ul li {
  list-style: none;
  margin-bottom: 1.25rem;
}
footer .f-menus {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
footer .f-menus input.wpcf7-submit {
  border: 0;
}
footer .f-menus h6 svg {
  display: none;
}
footer .f-menus svg path {
  stroke: var(--yellow);
}
footer .locations-grid {
  display: flex;
  flex-wrap: wrap;
}
footer .locations-grid ul {
  width: 33%;
  padding-right: 2rem;
}
footer .locations-grid ul.w-40 {
  width: 40%;
}
footer .email-form {
  position: relative;
  display: flex;
  align-items: center;
  border: 1px solid white;
  padding: 0;
  max-width: 24rem;
}
footer .email-form input[type=email] {
  flex: 1;
  background: transparent;
  border: none;
  padding: 1rem 1.2rem;
  color: white;
  font-size: 1.4rem;
  outline: none;
}
footer .email-form input[type=email]::placeholder {
  color: white;
  opacity: 1;
}
footer .email-form input[type=email]:focus {
  outline: none;
}
footer .email-form button {
  background: transparent;
  border: none;
  color: white;
  font-size: 2rem;
  padding: 1rem 1.5rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.3s ease;
}
footer .email-form button:hover {
  opacity: 0.7;
}

.sharp-border {
  width: 100%;
  height: 1px;
  background: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, #fff 48.08%, rgba(0, 0, 0, 0) 100%);
}
@media screen and (max-width: 1024px) {
  .sharp-border {
    display: none;
  }
}

.socials {
  display: inline-flex;
  gap: 2rem;
}
.socials svg {
  transition: transform 0.3s ease;
  cursor: pointer;
  height: 2rem;
  width: 2rem;
  fill: white;
}
.socials svg:hover {
  fill: var(--yellow) !important;
  transform: scale(1.15);
}

.footer-logo {
  cursor: none;
}
.footer-logo img {
  position: relative;
  z-index: 1;
  width: 100%;
  height: auto;
  display: block;
}
.footer-logo .focus {
  border-radius: 50%;
  background-image: radial-gradient(circle, #a18347 0%, rgba(0, 0, 0, 0) 70%);
  height: 50rem;
  width: 50rem;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  mix-blend-mode: color-dodge;
  pointer-events: none;
  transition: opacity 0.3s ease;
  opacity: 0;
  z-index: 22;
  filter: blur(2rem);
}

@media screen and (max-width: 1024px) {
  footer .f-menus .locations-grid {
    display: none;
  }
  footer .f-menus .locations-grid .wpcf7.js,
  footer .f-menus .locations-grid .email-form {
    width: 100%;
    max-width: 100%;
  }
  footer .f-menus h6 {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid rgba(255, 255, 255, 0.293);
    padding-bottom: 1rem;
    margin-bottom: 1rem;
  }
  footer .f-menus h6 svg {
    justify-self: center;
    align-self: center;
    display: inline-block !important;
    margin-left: 1rem;
    width: 1.5rem;
  }
  footer .f-menus.show .locations-grid {
    display: flex;
    margin-top: 1rem;
  }
  footer .f-menus.show svg {
    transform: rotate(-180deg);
  }
  footer .credits {
    flex-direction: column;
    text-align: center;
  }
}
@media screen and (max-width: 1024px) and (max-width: 1024px) {
  footer .credits {
    padding-top: 0 !important;
  }
}
@media screen and (max-width: 1024px) {
  footer .credits .gap-2 {
    flex-wrap: wrap;
    justify-content: center;
  }
  footer .credits .gap-2 span {
    width: 55%;
  }
  footer .credits .gap-2 a {
    width: 47%;
    text-align: center;
  }
  footer .socials {
    display: flex;
    gap: 2rem;
    align-items: center;
    justify-content: center;
    margin-top: 2rem;
  }
}
.mob-extra-menu {
  display: none !important;
}
@media screen and (max-width: 850px) {
  .mob-extra-menu {
    display: flex !important;
  }
}
@media screen and (max-width: 850px) {
  .mob-extra-menu ul.w-40 {
    width: 50%;
  }
}
.mob-extra-menu ul.w-40 li a {
  text-transform: uppercase;
  font-weight: 600;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                     Components
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                     Line Hover            
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.linehover {
  position: relative;
  outline: 0;
  cursor: pointer;
  padding-bottom: 0.25rem;
  transition: color 0.2s ease;
}
.linehover::before {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: var(--yellow);
  transform-origin: right center;
  transform: scale(0, 1);
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.linehover.white::before {
  background-color: white;
}
.linehover.active::before, .linehover:hover::before {
  transform-origin: left center;
  transform: scale(1, 1);
}
.linehover:hover {
  color: var(--yellow);
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                 Video Play Button
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.play-btn {
  position: absolute;
  top: calc(50% - 3rem);
  left: calc(50% - 3rem);
  z-index: 12;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--yellow);
  border-radius: 50%;
  transition: transform 0.2s ease;
  height: 6rem;
  width: 6rem;
}
.play-btn svg {
  height: 1.75rem;
  width: 1.75rem;
  fill: white;
}

.vid-banner {
  position: relative;
  cursor: pointer;
}
.vid-banner:hover .play-btn {
  transform: scale(1.1);
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                Buttons
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.btn1 {
  cursor: pointer;
  user-select: none !important;
  display: inline-block;
}
.btn1:focus {
  outline: 0px;
}
.btn1 {
  border: 2px solid var(--yellow);
  color: var(--yellow);
  padding: 1rem 3rem;
  border-radius: 12rem;
  transition: all 0.2s ease;
}
.btn1:hover {
  color: white;
  background-color: var(--yellow);
}
.btn1.orange {
  color: white;
  background-color: var(--yellow);
}
.btn1.orange:hover {
  color: var(--yellow);
  background-color: transparent;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
             Download Button
    <a href="" class="download-btn"></a> 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.download-btn {
  display: flex;
  width: 4.25rem;
  height: 4.25rem;
  justify-content: center;
  align-items: center;
  background-color: white;
  background-image: url("data:image/svg+xml,%3Csvg width=%2713%27 height=%2713%27 viewBox=%270 0 13 13%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M6.5 1.5V11.5L11.5 6.5%27 stroke=%27%23022169%27 stroke-width=%271.5%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3Cpath d=%27M6.5 11.5L1.5 6.5%27 stroke=%27%23022169%27 stroke-width=%271.5%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.5rem;
  border-radius: 100%;
  box-shadow: 0px 4px 34px 0px rgba(0, 0, 0, 0.25);
  transition: transform 0.2s ease;
}
.download-btn:hover {
  transform: scale(1.1);
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
             Explore Button
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  background-color: var(--yellow);
  border: 1px solid var(--yellow);
  padding: 0.5rem 0.6rem 0.5rem 2rem;
  border-radius: 3rem;
  position: relative;
  text-transform: uppercase;
  font-weight: bold;
  font-size: 1.3rem;
  overflow: hidden;
  transition: transform 0.3s ease;
  gap: 2rem;
}
.btn div {
  position: relative;
  z-index: 2;
  top: 0.1rem;
}
.btn.wb {
  border: 1.5px solid var(--yellow);
  background-color: transparent;
}
.btn.wb::after {
  content: "";
  display: block;
  width: 4rem;
  height: 4rem;
  background-image: url("data:image/svg+xml,%3Csvg width=%2740%27 height=%2740%27 viewBox=%270 0 40 40%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Crect width=%2740%27 height=%2740%27 rx=%2720%27 fill=%27%23FFC226%27/%3E%3Cpath d=%27M25 20H14%27 stroke=%27black%27/%3E%3Cpath d=%27M20 14C20 17.3137 22.6863 20 26 20%27 stroke=%27black%27/%3E%3Cpath d=%27M20 26C20 22.6863 22.6863 20 26 20%27 stroke=%27black%27/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  transition: transform 0.3s ease;
}
.btn::before {
  top: 0.5rem;
  left: auto;
  right: 0.5rem;
  position: absolute;
  content: "";
  display: block;
  width: 4rem;
  height: 4rem;
  background-color: white;
  border-radius: 50%;
  transition: transform 0.3s ease;
  z-index: 1;
}
.btn::after {
  content: "";
  display: block;
  width: 4rem;
  height: 4rem;
  background-image: url("data:image/svg+xml,%3Csvg width=%2740%27 height=%2740%27 viewBox=%270 0 40 40%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Crect width=%2740%27 height=%2740%27 rx=%2720%27 fill=%27white%27/%3E%3Cpath d=%27M25 20H14%27 stroke=%27black%27/%3E%3Cpath d=%27M20 14C20 17.3137 22.6863 20 26 20%27 stroke=%27black%27/%3E%3Cpath d=%27M20 26C20 22.6863 22.6863 20 26 20%27 stroke=%27black%27/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  transition: transform 0.3s ease;
  z-index: 2;
}
.btn:hover::after {
  transform: scale(1.2);
}
.btn:hover div {
  color: var(--black);
}
.btn:hover::before {
  transform: scale(12);
}

.btn-white {
  display: inline-flex;
  align-items: center;
  background-color: var(--white);
  border: 1px solid var(--yellow);
  padding: 0.5rem 0.6rem 0.5rem 2rem;
  border-radius: 3rem;
  position: relative;
  text-transform: uppercase;
  font-weight: bold;
  font-size: 1.3rem;
  overflow: hidden;
  transition: transform 0.3s ease;
  color: #000;
  gap: 2rem;
}
.btn-white div {
  position: relative;
  z-index: 2;
  top: 0.1rem;
}
.btn-white.wb {
  border: 1px solid var(--yellow);
  background-color: transparent;
}
.btn-white.wb::after {
  content: "";
  display: block;
  width: 4rem;
  height: 4rem;
  background-image: url("data:image/svg+xml,%3Csvg width=%2740%27 height=%2740%27 viewBox=%270 0 40 40%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Crect width=%2740%27 height=%2740%27 rx=%2720%27 fill=%27%23FFC226%27/%3E%3Cpath d=%27M25 20H14%27 stroke=%27black%27/%3E%3Cpath d=%27M20 14C20 17.3137 22.6863 20 26 20%27 stroke=%27black%27/%3E%3Cpath d=%27M20 26C20 22.6863 22.6863 20 26 20%27 stroke=%27black%27/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  transition: transform 0.3s ease;
}
.btn-white::before {
  top: 0.5rem;
  left: auto;
  right: 0.5rem;
  position: absolute;
  content: "";
  display: block;
  width: 4rem;
  height: 4rem;
  background-color: var(--yellow);
  border-radius: 50%;
  transition: transform 0.3s ease;
  z-index: 1;
}
.btn-white::after {
  content: "";
  display: block;
  width: 4rem;
  height: 4rem;
  background-image: url("data:image/svg+xml,%3Csvg width=%2740%27 height=%2740%27 viewBox=%270 0 40 40%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Crect width=%2740%27 height=%2740%27 rx=%2720%27 fill=%27%23FFC226%27/%3E%3Cpath d=%27M25 20H14%27 stroke=%27black%27/%3E%3Cpath d=%27M20 14C20 17.3137 22.6863 20 26 20%27 stroke=%27black%27/%3E%3Cpath d=%27M20 26C20 22.6863 22.6863 20 26 20%27 stroke=%27black%27/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  transition: transform 0.3s ease;
  z-index: 2;
}
.btn-white:hover::after {
  transform: scale(1.2);
  background-image: url("data:image/svg+xml,%3Csvg width=%2740%27 height=%2740%27 viewBox=%270 0 40 40%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Crect width=%2740%27 height=%2740%27 rx=%2720%27 fill=%27%23FFC226%27/%3E%3Cpath d=%27M25 20H14%27 stroke=%27black%27/%3E%3Cpath d=%27M20 14C20 17.3137 22.6863 20 26 20%27 stroke=%27black%27/%3E%3Cpath d=%27M20 26C20 22.6863 22.6863 20 26 20%27 stroke=%27black%27/%3E%3C/svg%3E");
}
.btn-white:hover div {
  color: #000;
}
.btn-white:hover::before {
  transform: scale(12);
}

.btn-black {
  border: 0;
  padding: 1.6rem 2.5rem;
  background: rgba(0, 0, 0, 0.3019607843);
  backdrop-filter: blur(1.6rem);
  box-shadow: inset 1px 1px 1px rgba(211, 211, 211, 0.3), inset -1px -1px 1px rgba(255, 255, 255, 0.3), 0 4px 15px rgba(0, 0, 0, 0.05);
  transition: all 0.3s ease;
}
.btn-black:hover {
  background: var(--yellow);
}
.btn-black:hover div {
  color: var(--white);
}
.btn-black div {
  color: var(--white);
  position: relative;
  padding-right: 3rem;
}
.btn-black div::after {
  content: "";
  background: url(e930cd5d6265dff4e826.svg) no-repeat center right;
  background-size: 1.5rem;
  position: absolute;
  width: 1.5rem;
  height: 1.5rem;
  right: 0;
  top: 0;
}
.btn-black::after, .btn-black::before {
  display: none;
}

.location span,
.home-icon span,
.d-icon span,
.check-icon span {
  line-height: 2rem;
}
.location::before,
.home-icon::before,
.d-icon::before,
.check-icon::before {
  flex-shrink: 0;
  display: inline-block;
}

.location {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}
.location::before {
  content: "";
  display: block;
  width: 2rem;
  height: 2rem;
  background-image: url("data:image/svg+xml,%3Csvg width=%2740%27 height=%2746%27 viewBox=%270 0 40 46%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M19.9184 27.4419C15.3943 27.4419 11.6985 23.7674 11.6985 19.222C11.6985 14.6767 15.3943 11.0234 19.9184 11.0234C24.4425 11.0234 28.1383 14.6979 28.1383 19.2433C28.1383 23.7886 24.4425 27.4419 19.9184 27.4419ZM19.9184 14.2094C17.1572 14.2094 14.8845 16.4609 14.8845 19.2433C14.8845 22.0257 17.136 24.2772 19.9184 24.2772C22.7008 24.2772 24.9523 22.0257 24.9523 19.2433C24.9523 16.4609 22.6796 14.2094 19.9184 14.2094Z%27 fill=%27black%27/%3E%3Cpath d=%27M19.9159 45.6871C16.7724 45.6871 13.6077 44.4976 11.1438 42.14C4.87805 36.1079 -2.04617 26.4862 0.566344 15.0379C2.92398 4.65154 11.9934 0 19.9159 0C19.9159 0 19.9159 0 19.9372 0C27.8597 0 36.9291 4.65154 39.2867 15.0591C41.878 26.5074 34.9538 36.1079 28.688 42.14C26.2242 44.4976 23.0594 45.6871 19.9159 45.6871ZM19.9159 3.18599C13.7351 3.18599 5.79137 6.47818 3.68861 15.7388C1.3947 25.7428 7.68172 34.3662 13.374 39.8249C17.0485 43.3719 22.8045 43.3719 26.4791 39.8249C32.1501 34.3662 38.4371 25.7428 36.1857 15.7388C34.0617 6.47818 26.0967 3.18599 19.9159 3.18599Z%27 fill=%27black%27/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}

.location {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}
.location::before {
  content: "";
  display: block;
  width: 2rem;
  height: 2rem;
  background-image: url("data:image/svg+xml,%3Csvg width=%2740%27 height=%2746%27 viewBox=%270 0 40 46%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M19.9184 27.4419C15.3943 27.4419 11.6985 23.7674 11.6985 19.222C11.6985 14.6767 15.3943 11.0234 19.9184 11.0234C24.4425 11.0234 28.1383 14.6979 28.1383 19.2433C28.1383 23.7886 24.4425 27.4419 19.9184 27.4419ZM19.9184 14.2094C17.1572 14.2094 14.8845 16.4609 14.8845 19.2433C14.8845 22.0257 17.136 24.2772 19.9184 24.2772C22.7008 24.2772 24.9523 22.0257 24.9523 19.2433C24.9523 16.4609 22.6796 14.2094 19.9184 14.2094Z%27 fill=%27black%27/%3E%3Cpath d=%27M19.9159 45.6871C16.7724 45.6871 13.6077 44.4976 11.1438 42.14C4.87805 36.1079 -2.04617 26.4862 0.566344 15.0379C2.92398 4.65154 11.9934 0 19.9159 0C19.9159 0 19.9159 0 19.9372 0C27.8597 0 36.9291 4.65154 39.2867 15.0591C41.878 26.5074 34.9538 36.1079 28.688 42.14C26.2242 44.4976 23.0594 45.6871 19.9159 45.6871ZM19.9159 3.18599C13.7351 3.18599 5.79137 6.47818 3.68861 15.7388C1.3947 25.7428 7.68172 34.3662 13.374 39.8249C17.0485 43.3719 22.8045 43.3719 26.4791 39.8249C32.1501 34.3662 38.4371 25.7428 36.1857 15.7388C34.0617 6.47818 26.0967 3.18599 19.9159 3.18599Z%27 fill=%27black%27/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}

.location {
  display: inline-flex;
  align-items: center;
  gap: 0.7rem;
}
.location::before {
  content: "";
  display: block;
  width: 2rem;
  height: 2rem;
  background-image: url("data:image/svg+xml,%3Csvg width=%2740%27 height=%2746%27 viewBox=%270 0 40 46%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M19.9184 27.4419C15.3943 27.4419 11.6985 23.7674 11.6985 19.222C11.6985 14.6767 15.3943 11.0234 19.9184 11.0234C24.4425 11.0234 28.1383 14.6979 28.1383 19.2433C28.1383 23.7886 24.4425 27.4419 19.9184 27.4419ZM19.9184 14.2094C17.1572 14.2094 14.8845 16.4609 14.8845 19.2433C14.8845 22.0257 17.136 24.2772 19.9184 24.2772C22.7008 24.2772 24.9523 22.0257 24.9523 19.2433C24.9523 16.4609 22.6796 14.2094 19.9184 14.2094Z%27 fill=%27black%27/%3E%3Cpath d=%27M19.9159 45.6871C16.7724 45.6871 13.6077 44.4976 11.1438 42.14C4.87805 36.1079 -2.04617 26.4862 0.566344 15.0379C2.92398 4.65154 11.9934 0 19.9159 0C19.9159 0 19.9159 0 19.9372 0C27.8597 0 36.9291 4.65154 39.2867 15.0591C41.878 26.5074 34.9538 36.1079 28.688 42.14C26.2242 44.4976 23.0594 45.6871 19.9159 45.6871ZM19.9159 3.18599C13.7351 3.18599 5.79137 6.47818 3.68861 15.7388C1.3947 25.7428 7.68172 34.3662 13.374 39.8249C17.0485 43.3719 22.8045 43.3719 26.4791 39.8249C32.1501 34.3662 38.4371 25.7428 36.1857 15.7388C34.0617 6.47818 26.0967 3.18599 19.9159 3.18599Z%27 fill=%27black%27/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}

.home-icon {
  display: inline-flex;
  align-items: center;
  gap: 0.7rem;
}
.home-icon::before {
  content: "";
  display: block;
  width: 2rem;
  height: 2rem;
  background-image: url("data:image/svg+xml,%3Csvg width=%2722%27 height=%2722%27 viewBox=%270 0 22 22%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M1.8335 20.166H20.1668%27 stroke=%27%23292D32%27 stroke-width=%271.5%27 stroke-miterlimit=%2710%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3Cpath d=%27M2.7041 20.1658L2.74993 9.13832C2.74993 8.57915 3.01577 8.04754 3.45577 7.6992L9.87244 2.70336C10.5324 2.19003 11.4583 2.19003 12.1274 2.70336L18.5441 7.69003C18.9933 8.03836 19.2499 8.56999 19.2499 9.13832V20.1658%27 stroke=%27%23292D32%27 stroke-width=%271.5%27 stroke-miterlimit=%2710%27 stroke-linejoin=%27round%27/%3E%3Cpath d=%27M11.9168 15.584H10.0835C9.32266 15.584 8.7085 16.1982 8.7085 16.959V20.1673H13.2918V16.959C13.2918 16.1982 12.6777 15.584 11.9168 15.584Z%27 stroke=%27%23292D32%27 stroke-width=%271.5%27 stroke-miterlimit=%2710%27 stroke-linejoin=%27round%27/%3E%3Cpath d=%27M8.7085 12.6048H6.87516C6.371 12.6048 5.9585 12.1923 5.9585 11.6882V10.3132C5.9585 9.80898 6.371 9.39648 6.87516 9.39648H8.7085C9.21266 9.39648 9.62516 9.80898 9.62516 10.3132V11.6882C9.62516 12.1923 9.21266 12.6048 8.7085 12.6048Z%27 stroke=%27%23292D32%27 stroke-width=%271.5%27 stroke-miterlimit=%2710%27 stroke-linejoin=%27round%27/%3E%3Cpath d=%27M15.125 12.6048H13.2917C12.7875 12.6048 12.375 12.1923 12.375 11.6882V10.3132C12.375 9.80898 12.7875 9.39648 13.2917 9.39648H15.125C15.6292 9.39648 16.0417 9.80898 16.0417 10.3132V11.6882C16.0417 12.1923 15.6292 12.6048 15.125 12.6048Z%27 stroke=%27%23292D32%27 stroke-width=%271.5%27 stroke-miterlimit=%2710%27 stroke-linejoin=%27round%27/%3E%3Cpath d=%27M17.4168 6.41602L17.3893 3.66602H13.356%27 stroke=%27%23292D32%27 stroke-width=%271.5%27 stroke-miterlimit=%2710%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}

.check-icon {
  display: inline-flex;
  align-items: center;
  gap: 0.7rem;
}
.check-icon::before {
  content: "";
  display: block;
  width: 2rem;
  height: 2rem;
  background-image: url("data:image/svg+xml,%3Csvg width=%2751%27 height=%2751%27 viewBox=%270 0 51 51%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M19.1159 46.7279H31.8599C42.4799 46.7279 46.7278 42.4799 46.7278 31.86V19.116C46.7278 8.49603 42.4799 4.24805 31.8599 4.24805H19.1159C8.49597 4.24805 4.24799 8.49603 4.24799 19.116V31.86C4.24799 42.4799 8.49597 46.7279 19.1159 46.7279Z%27 stroke=%27%230CA921%27 stroke-width=%273.18599%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3Cpath d=%27M16.4609 25.4875L22.4718 31.4984L34.5149 19.4766%27 stroke=%27%230CA921%27 stroke-width=%273.18599%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}

.d-icon {
  display: inline-flex;
  align-items: center;
  gap: 0.7rem;
}
.d-icon::before {
  content: "";
  display: block;
  width: 2rem;
  height: 2rem;
  background-image: url("data:image/svg+xml,%3Csvg width=%2719%27 height=%2717%27 viewBox=%270 0 19 17%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M0 5.81686C0.872252 5.90273 1.62853 5.97719 2.52672 6.06562C2.41057 3.98928 2.89314 1.99295 1.74997 0.019125C3.10794 0.019125 4.35706 -0.0310399 5.60085 0.0311213C7.376 0.119839 9.18747 0.0961517 10.9108 0.472207C13.5152 1.04053 15.3425 2.72154 16.1138 5.41497C16.33 6.16987 16.8371 5.97126 17.296 5.98627C18.5201 6.0263 19.0988 6.701 18.9787 7.81904C18.1975 7.7618 17.422 7.70499 16.5971 7.64455V9.31205C17.8506 9.34949 19.1306 9.45421 18.9893 11.1853C18.1893 11.1495 17.415 11.098 16.6406 11.0955C16.4999 11.0951 16.2701 11.2683 16.2306 11.4065C15.185 15.0649 12.5658 16.6598 9.10625 16.9125C6.71332 17.0873 4.29854 16.9461 1.84408 16.9461C2.88176 15.114 2.38572 13.1275 2.52269 11.1472C1.7007 11.0195 0.784904 11.2306 0.330579 10.3466C0.147057 9.98953 0.102198 9.55717 0.0106002 9.21941C0.881269 9.29456 1.63583 9.35968 2.45514 9.4304V7.74647C1.70262 7.64245 0.795403 7.8363 0.33851 6.9579C0.150711 6.59685 0.0980093 6.16158 0 5.81686ZM5.03979 5.93258H13.3526C13.4198 3.69305 11.6147 1.4285 9.35392 1.08125C7.95371 0.866184 6.51715 0.901133 5.03979 0.820744V5.93258ZM13.3629 11.148H4.98646C4.98646 12.6472 4.98452 14.0876 4.98896 15.5279C4.98951 15.7035 5.02436 15.879 5.06329 16.2397C6.55264 16.1267 8.03996 16.1382 9.4799 15.8755C11.6467 15.4801 13.3244 13.3343 13.3629 11.148ZM13.6142 9.3412V7.73068H5.05702V9.3412H13.6142Z%27 fill=%27black%27/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}

.project-section .nav {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  width: 100%;
  justify-content: space-between;
  z-index: 3;
  padding: 1.5rem;
}
.project-section .nav svg {
  height: 1.25rem;
  width: 1.25rem;
  fill: white;
  padding-top: 0.1rem;
}
.project-section .nav .next,
.project-section .nav .prev {
  cursor: pointer;
}
.project-section .nav .next:hover .btn-arrow,
.project-section .nav .prev:hover .btn-arrow {
  border-color: var(--yellow);
}
.project-section .nav .next:hover svg,
.project-section .nav .prev:hover svg {
  fill: var(--yellow);
}
.project-section .nav .prev svg {
  transform: scaleX(-1);
}
.project-section .nav .next svg {
  transform: scaleX(1);
}

.g-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1rem 2.5rem;
  border: none;
  border-radius: 99em;
  background-color: color-mix(in srgb, #bbbbbc 12%, transparent);
  backdrop-filter: blur(8px) url(#switcher) saturate(150%);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, #fff 10%, transparent), inset 1.8px 3px 0px -2px color-mix(in srgb, #fff 90%, transparent), inset -2px -2px 0px -2px color-mix(in srgb, #fff 80%, transparent), inset -3px -8px 1px -6px color-mix(in srgb, #fff 60%, transparent), inset -0.3px -1px 4px 0px color-mix(in srgb, #000 12%, transparent), inset -1.5px 2.5px 0px -2px color-mix(in srgb, #000 20%, transparent), inset 0px 3px 4px -2px color-mix(in srgb, #000 20%, transparent), inset 2px -6.5px 1px -4px color-mix(in srgb, #000 10%, transparent), 0px 1px 5px 0px color-mix(in srgb, #000 10%, transparent), 0px 6px 16px 0px color-mix(in srgb, #000 8%, transparent);
  transition: all 0.3s ease;
  cursor: pointer;
}
.g-btn > * {
  position: relative;
  z-index: 3;
}
.g-btn.circle {
  border-radius: 50%;
  aspect-ratio: 1;
  padding: 1.75rem;
}
.g-btn.arrow {
  position: relative;
}
.g-btn.arrow::after {
  content: "";
  width: 1.55rem;
  height: 1.55rem;
  background-image: url("data:image/svg+xml,%3Csvg width=%2743%27 height=%2738%27 viewBox=%270 0 43 38%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M24.1628 37.2617L21.7092 34.8289L36.1813 20.3775H0.000901222V16.8842H36.1813L21.7092 2.43285L24.1628 2.90714e-05L42.7936 18.6309L24.1628 37.2617Z%27 fill=%27white%27/%3E%3C/svg%3E");
  display: inline-block;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  margin-left: 1.25rem;
}
.g-btn:hover {
  background-color: color-mix(in srgb, #bbbbbc 25%, transparent);
  transform: scale(1.02);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, #fff 30%, transparent), inset 1.8px 3px 0px -2px color-mix(in srgb, #fff 100%, transparent), inset -2px -2px 0px -2px color-mix(in srgb, #fff 80%, transparent), inset -3px -8px 1px -6px color-mix(in srgb, #fff 60%, transparent), inset -0.3px -1px 4px 0px color-mix(in srgb, #000 12%, transparent), inset -1.5px 2.5px 0px -2px color-mix(in srgb, #000 20%, transparent), inset 0px 3px 4px -2px color-mix(in srgb, #000 20%, transparent), inset 2px -6.5px 1px -4px color-mix(in srgb, #000 10%, transparent), 0px 1px 5px 0px color-mix(in srgb, #000 10%, transparent), 0px 6px 16px 0px color-mix(in srgb, #000 8%, transparent);
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                Arrow up
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.arrow-up {
  width: 5rem;
  height: 5rem;
  background-color: var(--yellow);
  border-radius: 99rem;
  padding: 1.7rem 1.9rem 1.9rem;
  transition: all 0.3s ease;
}
.arrow-up svg path {
  transition: all 0.3s ease;
}
.arrow-up:hover {
  background-color: var(--black);
}
.arrow-up:hover svg path {
  stroke: var(--white);
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                Button with graphics
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.btn-graphics {
  height: 10.1rem;
  border: 1px solid var(--yellow);
  border-radius: 10rem;
  position: relative;
  align-items: center;
  padding-left: 3.5rem;
}
.btn-graphics:hover div {
  color: var(--yellow);
}
.btn-graphics:hover div svg path {
  stroke: var(--yellow);
}
.btn-graphics img {
  width: 24rem;
  position: absolute;
  bottom: 0;
  right: 0;
}
.btn-graphics div {
  position: relative;
  z-index: 1;
  width: 44%;
  font-size: 2.5rem;
  text-transform: uppercase;
  text-align: left;
  color: var(--black);
  font-weight: 600;
  display: flex;
  align-items: center;
  transition: all 0.3s ease;
}
.btn-graphics div svg {
  width: 4rem;
}
.btn-graphics div svg path {
  transition: all 0.3s ease;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                View icon
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.icon-expand {
  top: 1.4rem;
  right: 1.7rem;
}
.icon-expand img {
  transition: all 0.3s ease;
}
.icon-expand:hover {
  background-color: var(--yellow);
}
.icon-expand:hover img {
  transform: scale(1.2);
}

.line-draw {
  height: 100%;
  width: 1px;
  overflow: hidden;
  transition: height 2s var(--cb-m3);
  position: absolute;
  top: 0;
  left: 0;
}
.line-draw .line {
  height: 100%;
  width: 100%;
  background-color: black;
  transform: translateY(-100%);
  transition: transform 2s var(--cb-m3);
}
.line-draw.h {
  height: 1px;
  width: 100%;
}
.line-draw.h .line {
  transform: translateY(0);
  transform: translateX(-100%);
}
.line-draw.from-center {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.line-draw.from-right {
  left: auto;
  right: 0;
}
.line-draw.from-bottom {
  top: auto;
  bottom: 0%;
}
.line-draw.entered .line {
  transform: translateY(0%);
}
.line-draw.entered.h .line {
  transform: translateX(0);
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

     <div class="position-relative vh-50">
            <div class="line-draw h from-left" data-dpk-call>
                <div class="line"></div>
            </div>
        </div>

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                 Appear On Scroll  
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.appear {
  opacity: 0;
  transition: opacity 0.8s cubic-bezier(0.25, 0.1, 0.25, 1);
}
.appear.entered {
  opacity: 1;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                   Appear from bottom  
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.appear-y {
  opacity: 0;
  transform-origin: 50% 50%;
  will-change: opacity, transform;
  transform: translate(0px, 50px);
  transition: 1s cubic-bezier(0.25, 0.1, 0.25, 1);
}
.appear-y.entered {
  opacity: 1;
  transform: translate3d(0px, 0px, 0px);
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                 img scale in
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.img-detect {
  overflow: hidden;
}
.img-detect img {
  transform: scale(1.25, 1.25);
  transition: transform 3.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.img-detect.entered img {
  transform: scale(1, 1);
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                 For Title <h1..h6> tag
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.appear-title div:first-child span {
  transition-delay: 0.15s;
}
.appear-title div:nth-child(2) span {
  transition-delay: 0.35s;
}
.appear-title div:nth-child(3) span {
  transition-delay: 0.5s;
}
.appear-title div:nth-child(4) span {
  transition-delay: 0.65s;
}
.appear-title div:nth-child(5) span {
  transition-delay: 0.8s;
}
.appear-title div,
.appear-title span {
  overflow: hidden;
  font-size: inherit;
  line-height: 1.1;
}
.appear-title span {
  display: block;
  transition: 1s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition-delay: 0.2s;
  transform: translate3d(0, 105%, 0);
}
.appear-title.entered span {
  transform: translate3d(0, 0, 0);
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
            CN                
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.t-anim {
  -webkit-background-clip: text;
  background-image: radial-gradient(circle at 0 0, #fff 0, #fff 33%, #44474d 66%, #44474d 100%);
  background-position: 100% 100%;
  background-repeat: no-repeat;
  background-size: 300% 200%;
  -webkit-clip-path: inset(1px 1px 1px 0);
  clip-path: inset(1px 1px 1px 0);
  color: transparent;
  transition: background-position 16s;
}

.t-anim.entered {
  background-position: 0 0;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
            Pagination  
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.tool-pagination {
  text-align: center;
  display: flex;
  justify-content: center;
}
.tool-pagination ul {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  width: 90%;
}
.tool-pagination ul li {
  margin-left: 1.5rem;
  list-style: none;
  margin-bottom: 1.5rem;
}
.tool-pagination ul li a {
  border: 1px solid var(--blue);
  padding: 1.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 3rem;
  width: 3rem;
  transition: background-color 0.2s ease;
}
.tool-pagination ul li a:hover {
  background-color: var(--yellow);
  border-color: var(--yellow);
  color: white;
}
.tool-pagination ul .prev,
.tool-pagination ul .next {
  border: none;
  width: 100%;
  padding: 1rem;
}
.tool-pagination ul .prev:hover,
.tool-pagination ul .next:hover {
  background-color: transparent;
  color: black;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                News Details
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.details-page,
.privacy {
  display: flex;
  flex-direction: column;
}
.details-page h1,
.details-page h2,
.details-page h3,
.details-page h4,
.details-page h5,
.details-page h5,
.details-page p,
.privacy h1,
.privacy h2,
.privacy h3,
.privacy h4,
.privacy h5,
.privacy h5,
.privacy p {
  padding-bottom: 3rem;
}
.details-page img,
.privacy img {
  margin-top: 3rem;
  margin-bottom: 3rem;
}
.details-page a,
.privacy a {
  color: var(--yellow);
  transition: all 0.2s ease;
}
.details-page a:hover,
.privacy a:hover {
  border-bottom: 2px solid var(--yellow);
}
.details-page ul,
.privacy ul {
  padding-bottom: 4rem;
}
.details-page ul li,
.privacy ul li {
  margin-left: 2rem;
  padding-bottom: 0.5rem;
}
.details-page blockquote,
.details-page blockquote p,
.privacy blockquote,
.privacy blockquote p {
  font-size: 2.5rem;
}
.details-page blockquote,
.privacy blockquote {
  margin-top: 2rem;
  padding-top: 2rem;
  padding-bottom: 4rem;
  overflow: visible !important;
  padding-left: 4vw;
  background-image: url("data:image/svg+xml,<svg width=\"109\" height=\"109\" viewBox=\"0 0 109 109\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M109 0.948925L106.435 19.7292C99.7671 19.2147 94.8941 20.5868 91.8165 23.8455C88.7388 27.1041 86.858 31.4776 86.1741 36.9659C85.4902 42.4543 85.3192 48.3713 85.6612 54.7172H109V109H65.1435V44.4266C65.1435 28.6477 69.0761 16.8136 76.9412 8.92413C84.9772 1.03468 95.6635 -1.62372 109 0.948925ZM43.8565 0.948925L41.2918 19.7292C34.6235 19.2147 29.7506 20.5868 26.6729 23.8455C23.5953 27.1041 21.7145 31.4776 21.0306 36.9659C20.3467 42.4543 20.1757 48.3713 20.5176 54.7172H43.8565V109H0V44.4266C0 28.6477 3.93255 16.8136 11.7976 8.92413C19.8337 1.03468 30.52 -1.62372 43.8565 0.948925Z\" fill=\"%23fe5e0181\"/></svg>");
  background-repeat: no-repeat;
  background-position: top left;
}
.details-page .img-gallery,
.privacy .img-gallery {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  padding: 2rem 0;
  margin-bottom: 2rem;
}
.details-page .img-gallery img,
.privacy .img-gallery img {
  max-width: 40%;
  margin: 0 1rem;
  margin-bottom: 2rem;
}
@media (min-width: 1025px) {
  .details-page .img-gallery,
  .privacy .img-gallery {
    justify-content: center;
  }
  .details-page .img-gallery img,
  .privacy .img-gallery img {
    max-width: 22%;
  }
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                   Inner Banner               
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.inner-banner {
  background-size: cover;
  background-position: center;
  color: var(--white);
}
.inner-banner h1 {
  text-transform: uppercase;
}
.inner-banner .row {
  min-height: 50rem;
}
.inner-banner .row h1,
.inner-banner .row p {
  max-width: 60rem;
  padding-bottom: 1rem;
}
.inner-banner.hero-center h1 {
  max-width: 100%;
  font-size: 6rem;
}
@media screen and (max-width: 650px) {
  .inner-banner.hero-center h1 {
    font-size: 3.5rem;
  }
}
.inner-banner .b-title {
  position: absolute;
  top: auto;
  bottom: 5rem;
  left: var(--grid-padding);
  color: white;
  z-index: 3;
}
@media (max-width: 767px) {
  .inner-banner .b-title {
    width: 90%;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
}
.inner-banner .b-title h2,
.inner-banner .b-title h2 strong {
  line-height: 1;
}
.inner-banner.has-layer {
  min-height: 60rem;
  margin-top: calc(var(--grid-padding) + 0.9rem) !important;
}
@media (max-width: 1024px) {
  .inner-banner.has-layer {
    margin-top: 0 !important;
  }
}
.inner-banner.has-layer::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background: linear-gradient(239deg, rgba(41, 45, 50, 0) 34.23%, #292D32 95.2%), rgba(41, 45, 50, 0.2);
  height: 100%;
  width: 100%;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                  Single Column              
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.about .single-column.custom-4 p {
  font-size: 2.5rem;
  line-height: 150%;
  font-weight: 300;
}
@media (max-width: 767px) {
  .about .single-column.custom-4 p {
    font-size: 2rem;
  }
}

.single-column h2 {
  padding-bottom: 0 !important;
}
.single-column.has-bg {
  background-size: cover;
  background-position: center;
  min-height: 45vh;
  background-color: lightgray;
  color: var(--white);
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                  Two Column            
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.two-column-img .tiny-editor {
  padding-right: 3.5rem;
}
@media (max-width: 1024px) {
  .two-column-img .tiny-editor {
    padding-right: 0;
  }
}
@media (max-width: 1024px) {
  .two-column-img .tiny-editor {
    padding-bottom: 4rem;
  }
}
@media (max-width: 1024px) {
  .two-column-img .tc-img {
    margin-top: var(--bs-gutter-y);
  }
}

@media (min-width: 1025px) {
  .two-column-img.right .row {
    flex-direction: row-reverse !important;
  }
  .two-column-img.right .row .tiny-editor {
    padding-right: 0;
    padding-left: 3rem;
  }
}
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         Background Color version        
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.two-column-img.v2 .tc-content {
  background-color: var(--yellow);
  display: flex;
}
.two-column-img.v2 .tc-content .tiny-editor {
  margin-top: auto;
  margin-bottom: auto;
}
.two-column-img.v2 .tc-content .btn {
  background-color: white;
  position: relative;
}
.two-column-img.v2 .tc-content .btn::after {
  background-image: url("data:image/svg+xml,%3Csvg width=%2740%27 height=%2740%27 viewBox=%270 0 40 40%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Crect width=%2740%27 height=%2740%27 rx=%2720%27 fill=%27%23FFC226%27/%3E%3Cpath d=%27M25 20H14%27 stroke=%27black%27/%3E%3Cpath d=%27M20 14C20 17.3137 22.6863 20 26 20%27 stroke=%27black%27/%3E%3Cpath d=%27M20 26C20 22.6863 22.6863 20 26 20%27 stroke=%27black%27/%3E%3C/svg%3E");
}
.two-column-img.v2 .container {
  padding: 0 !important;
}
.two-column-img.v2 .tiny-editor {
  background-color: var(--light1);
  padding: var(--grid-padding) !important;
}
.two-column-img.v2 .tc-img {
  background-color: var(--blue1);
  padding: 0;
}
@media (max-width: 1024px) {
  .two-column-img.v2 .tc-img {
    padding: 0 !important;
    margin-top: auto !important;
  }
}

.marque {
  width: 100%;
  pointer-events: none;
  overflow: hidden;
}
.marque .wrapper {
  height: 100%;
  width: 100%;
}
.marque .inner {
  height: 100%;
  width: fit-content;
  align-items: center;
  display: flex;
  position: relative;
  will-change: transform;
}
.marque .inner a,
.marque .inner span {
  white-space: nowrap;
  font-size: 5rem !important;
  line-height: 1;
  text-transform: uppercase;
}
.marque .inner svg {
  max-width: 4rem;
  margin-left: 3rem;
  margin-right: 3rem;
}

.marquee-container.entered .inner svg {
  animation: spin 5s linear infinite;
}
.marquee-container.entered .inner.right {
  animation: marquee 15s linear infinite alternate;
}
.marquee-container.entered .inner.left {
  animation: marquee 15s linear infinite alternate-reverse;
}
@media (max-width: 767px) {
  .marquee-container.entered .inner.right {
    animation: marqueemob 20s linear infinite alternate;
  }
  .marquee-container.entered .inner.left {
    animation: marqueemob 20s linear infinite alternate-reverse;
  }
}

.marquee-container.exited .inner {
  animation-play-state: paused !important;
}
.marquee-container.exited .inner svg {
  animation-play-state: paused !important;
}

@keyframes marquee {
  to {
    transform: translate3d(-45%, 0, 0);
  }
}
@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@keyframes marqueemob {
  to {
    transform: translate3d(-50%, 0, 0);
  }
}
.d-line {
  height: 2px;
  width: 100%;
  background: linear-gradient(90deg, var(--green) 50%, transparent 50%);
  background-repeat: repeat-x;
  background-size: 10px 3px;
  z-index: 1;
  margin-bottom: -2px;
}

@keyframes border-dance {
  0% {
    background-position: 0px 0px;
  }
  100% {
    background-position: 300px 0px;
  }
}
.slider.entered .d-line {
  animation: border-dance 7s infinite linear;
}

.slider.exited .d-line {
  animation-play-state: paused !important;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                 Custom form popup
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.overlay-n {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8); /* Slightly darker for better focus */
  z-index: 99999; /* Bumped up to stay above headers/nav */
  display: flex;
  justify-content: center;
  align-items: center;
  /* Animation hidden state */
  opacity: 0;
  visibility: hidden;
  pointer-events: none; /* Prevents clicking links behind it while hidden */
  transition: all 0.3s ease-in-out;
  /* THIS IS THE TRIGGER CLASS */
}
.overlay-n.show {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.overlay-n.show .modal-box {
  transform: scale(1);
}
.overlay-n .modal-box {
  background: transparent;
  width: 90%;
  max-width: 400px;
  padding: 40px 20px;
  border-radius: 10px;
  position: relative;
  text-align: center;
  /* Entrance animation starting point */
  transform: scale(0.85);
  transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1); /* Slight bounce */
}
.overlay-n .modal-box .close-x {
  position: absolute;
  top: 10px;
  right: 15px;
  font-size: 32px;
  color: #333;
  cursor: pointer;
  line-height: 1;
  transition: color 0.2s;
  color: #ffc226;
}
.overlay-n .modal-box .close-x:hover {
  color: #d9534f;
}

@media (max-width: 1024px) {
  .intl-tel-input.iti-container {
    top: calc(50% - 53px) !important;
    z-index: 99999;
  }
}
.intl-tel-input.iti-container .country-list {
  border-radius: 10px;
}
@media (max-width: 1024px) {
  .intl-tel-input.iti-container .country-list {
    width: 82%;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
}

.phone-group .wpcf7-phonetext {
  padding-left: 100px !important;
}
@media screen and (min-width: 1920px) {
  .phone-group .wpcf7-phonetext {
    padding-left: 135px !important;
  }
}

@media (max-width: 1024px) {
  .c-group {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 1.5rem;
    width: 56%;
  }
  .c-group a.btn-white {
    justify-content: space-between;
  }
  .c-group .btn {
    margin-left: 0 !important;
  }
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                   Forms
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
form input,
form select,
form textarea {
  width: 100%;
  padding: 1.5% 1%;
  border: 1px solid gray;
}
form input[type=checkbox] {
  width: auto;
}
form input[type=submit] {
  cursor: pointer;
  text-indent: 0 !important;
}
form select {
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 fill=%27%23765496%27 viewBox=%270 0 512 512%27%3E%3Cpath d=%27M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z%27 /%3E%3C/svg%3E");
  background-size: 1rem;
  background-repeat: no-repeat;
  background-position: 96% center;
  padding-right: 2rem;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
               extra forms  styles
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
input[type=checkbox].circle-check {
  appearance: none;
  background-color: #fff;
  border-radius: 100%;
  height: 1.2vw;
  padding: 0;
  vertical-align: middle;
  width: 1.2vw;
}
input[type=checkbox].circle-check:checked {
  background-color: #111;
  box-shadow: 0 0 0 0.3vw inset #fdfdfd;
}

form.dpk-form {
  --input-color: #765496;
  --input-bg: #fff;
  --submit-bg: #765496;
  --submit-hover-bg: #fff;
  --focus-color: #765496;
  --font-size: 1rem;
  --border-radius: 5px;
}
form.dpk-form ::placeholder {
  color: var(--input-color);
  font-size: var(--font-size);
}
form.dpk-form input,
form.dpk-form select,
form.dpk-form option,
form.dpk-form textarea {
  border: none;
  background-color: var(--input-bg);
  color: var(--input-color);
  font-size: var(--font-size);
  border-radius: var(--border-radius);
  padding: 0.75rem;
}
form.dpk-form input[type=submit] {
  border-radius: var(--border-radius);
  background-color: var(--submit-bg);
  border: 1px solid var(--submit-bg);
  transition: background-color 0.2s ease-out, color 0.2s ease-out;
  color: var(--submit-hover-bg);
}
form.dpk-form input[type=submit]:hover {
  color: var(--submit-bg);
  background-color: var(--submit-hover-bg);
}
form.dpk-form select:focus,
form.dpk-form input:focus,
form.dpk-form textarea:focus {
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.07), 0 0 8px var(--focus-color);
}

form.line-form {
  --red: #440707;
}
form.line-form input {
  border: none;
}
form.line-form textarea {
  border-color: gray;
  color: black;
}
form.line-form .lf-field {
  position: relative;
  padding: 0 !important;
}
form.line-form .lf-input {
  width: 100%;
  padding: 0;
  text-indent: 0;
  margin: 0;
  height: 3rem;
  line-height: 3rem;
}

.lf-line {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.lf-line, .lf-line::before, .lf-line::after {
  position: absolute;
  pointer-events: none;
}
.lf-line::after, .lf-line::before {
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 2px);
}
.lf-line::after {
  border-bottom: 1.34px solid red;
  transform: translate3d(-101%, 0, 0);
  transition: transform 800ms cubic-bezier(0.19, 1, 0.22, 1);
}
.lf-line::before {
  border-bottom: 1.34px solid #dadada;
}
@media (max-width: 1024px) {
  .lf-line::before {
    border-bottom: 1.34px solid red;
  }
}

.lf-input:focus ~ .lf-line::after {
  transform: translate3d(0, 0, 0);
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
             Contact Form Stuff
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.wpcf7 form {
  position: relative;
}

.wpcf7-form-control-wrap {
  width: 100%;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                 Messages
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.wpcf7-not-valid-tip {
  font-size: 1.2rem !important;
  bottom: -1rem !important;
}

.wpcf7-response-output {
  font-size: 1.25rem !important;
  width: 100%;
  line-height: 1.1;
  border: 1px solid orangered !important;
  color: orangered;
  bottom: -5rem !important;
  left: 0 !important;
}

.sent .wpcf7-response-output {
  color: green;
  border-color: green !important;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
               Submit Button
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.submit-btn {
  position: relative;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
             Spinner
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.wpcf7-spinner {
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
              Checkbox & Radio
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.wpcf7-radio label {
  display: flex !important;
  gap: 1rem;
  align-items: center;
  margin-right: 1rem;
}

.wpcf7-checkbox label {
  display: flex;
  align-items: baseline;
  gap: 1rem;
}

input[type=checkbox] {
  width: 2rem !important;
  height: 2rem !important;
}

.wpcf7-acceptance label {
  display: flex;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                   Pages
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
              Location Details
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.pil-header {
  position: relative;
  width: 100%;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.pill-container {
  position: relative;
  width: 100%;
  height: 100%;
  will-change: transform;
  --blur-opacity: 0;
  --wave-opacity: 0;
}

.pill-shape {
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: inherit;
}
.pill-shape img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.pill-shape::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.166);
  backdrop-filter: blur(32px);
  opacity: var(--blur-opacity);
  border-radius: inherit;
  pointer-events: none;
}

.pill-shape-wave {
  position: absolute;
  inset: -10px;
  border-radius: inherit;
  border: 1.5px solid var(--yellow);
  opacity: 0;
  pointer-events: none;
  animation: wave-grow-fade 2.5s ease-out infinite;
}
.pill-shape-wave:nth-child(3) {
  animation-delay: 0.8s;
}
.pill-shape-wave:nth-child(4) {
  animation-delay: 1.6s;
}

.p-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  z-index: 2;
  pointer-events: none;
}

@media (max-width: 1024px) {
  .pill-container {
    height: 50rem;
  }
  .pil-header {
    display: block;
    height: auto;
  }
  .pill-shape-wave {
    display: none !important;
  }
  .p-content {
    position: static !important;
    transform: none !important;
    padding: 5rem !important;
  }
}
@keyframes wave-grow-fade {
  0% {
    transform: scale(1);
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  100% {
    transform: scale(1.15);
    opacity: 0;
  }
}
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
             About Page
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.yellow-card {
  background: var(--black);
  height: 100%;
  overflow: hidden;
  min-height: 35rem;
  border-radius: 1rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.yellow-card h6 {
  text-transform: uppercase;
  color: var(--white);
  position: absolute;
  top: 2rem;
  left: 2rem;
  z-index: 2;
  width: 85%;
  text-align: left;
}
.yellow-card img {
  aspect-ratio: 3/4;
  object-fit: cover;
  width: 100%;
  height: auto;
}
@media (max-width: 767px) {
  .yellow-card img {
    aspect-ratio: unset;
  }
}
.yellow-card .flip-content {
  padding: 3rem;
  color: var(--white);
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}
.yellow-card .flip-content p {
  font-size: 1.125rem;
  line-height: 1.8;
  margin: 0;
}

.flip-card {
  background-color: transparent;
  width: 100%;
  height: 100%;
  min-height: 35rem;
  perspective: 1000px;
}
@media (max-width: 1024px) {
  .flip-card {
    min-height: 48rem;
  }
}

.flip-card-inner {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 35rem;
  text-align: center;
  transition: transform 0.6s;
  transform-style: preserve-3d;
}
@media (max-width: 767px) {
  .flip-card-inner {
    min-height: 45rem;
  }
}

.flip-card:hover .flip-card-inner {
  transform: rotateY(180deg);
}

.flip-card-front,
.flip-card-back {
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.flip-card-back {
  transform: rotateY(180deg);
}

.flip-slider .yellow-card {
  min-height: 38rem;
}
@media (max-width: 1024px) {
  .flip-slider .yellow-card {
    min-height: 50rem;
  }
}
@media (max-width: 767px) {
  .flip-slider .yellow-card {
    min-height: auto;
  }
}
@media (max-width: 767px) {
  .flip-slider .container.pe-0 {
    padding-right: var(--grid-padding) !important;
  }
}
.flip-slider .flip-card-back {
  min-height: 38rem;
  border-radius: 1rem;
  display: flex;
  padding: 2.5rem;
  flex-direction: column;
  justify-content: space-between;
  background-color: var(--yellow);
  text-align: left;
}
.flip-slider .flip-card-back h5 {
  text-transform: uppercase;
}
.flip-slider .flip-card-back p {
  font-size: 1.5rem;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                  shape
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.separator svg,
.separator img {
  transform: translateY(-10rem);
  width: 100%;
  height: auto;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        Construction Updates
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.percent {
  --percent: 0;
  position: absolute;
  bottom: 3.5rem;
  right: 1rem;
  height: 5rem;
  padding: 0.5rem 0.75rem 0.5rem 2rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  border-radius: 47px;
  border: 1px solid #E2E2E2;
  background: #FFF;
  border-radius: 5rem;
}
.percent .percent-text {
  font-size: 2rem;
  font-weight: 700;
  color: var(--black);
  line-height: 1;
  white-space: nowrap;
}
.percent .percent-circle {
  position: relative;
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
  background: conic-gradient(#f8eab9 calc(var(--percent) * 3.6deg), var(--yellow) calc(var(--percent) * 3.6deg));
  transition: background 0.6s ease-in-out;
  flex-shrink: 0;
}
.percent .percent-circle circle {
  display: none;
}
.percent.v2 {
  right: auto;
  left: 1rem;
  background-color: var(--yellow);
  font-size: 2rem;
  padding: 1rem 1.5rem;
  font-weight: 700;
  border-color: transparent;
  height: inherit;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        Construction Updates
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.gallery-slider .gs-title {
  position: absolute;
  top: auto;
  bottom: 0%;
  left: 0%;
  background-color: white;
  padding: 2rem;
  width: 30rem;
  border-top-right-radius: 1rem;
}
@media (max-width: 767px) {
  .gallery-slider .gs-title {
    width: 100%;
    position: relative;
    padding-left: 0;
    padding-right: 0;
  }
}
@media (max-width: 767px) {
  .gallery-slider .p-icon-expand {
    bottom: auto;
    top: 0;
    right: 0;
  }
}
@media (max-width: 767px) {
  .gallery-slider .swiper-wrapper {
    padding-bottom: 3rem;
  }
}

.map-tooltips {
  display: none;
}

.active-map-tooltip {
  position: fixed;
  z-index: 1005;
  pointer-events: none;
  top: 0;
  left: 0;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0.2s ease;
}
.active-map-tooltip.visible {
  opacity: 1;
  visibility: visible;
}

.map-tooltip-card {
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
  font-family: inherit;
}

#g-map {
  position: relative;
}
#g-map svg g {
  cursor: pointer;
}
#g-map svg g path {
  transition: all 0.3s ease;
}
#g-map svg g[data-side=right]:hover path,
#g-map svg g[data-side=right]:hover polygon, #g-map svg g[data-side=right].hover-active path,
#g-map svg g[data-side=right].hover-active polygon, #g-map svg g[data-side=right].active path,
#g-map svg g[data-side=right].active polygon, #g-map svg g[data-side=left]:hover path,
#g-map svg g[data-side=left]:hover polygon, #g-map svg g[data-side=left].hover-active path,
#g-map svg g[data-side=left].hover-active polygon, #g-map svg g[data-side=left].active path,
#g-map svg g[data-side=left].active polygon {
  fill: var(--orange);
}
#g-map::before {
  content: "";
  position: absolute;
  top: 0;
  width: 100%;
  height: 10rem;
  background: linear-gradient(to bottom, rgb(255, 255, 255) 0%, rgba(255, 255, 255, 0) 100%);
}

#left-info-box {
  left: 0;
}

#right-info-box {
  right: 0;
}

#left-info-box,
#right-info-box {
  position: absolute;
  width: 25%;
  z-index: 2;
  transform: translateY(-50%);
  top: 50%;
}
@media (max-width: 1024px) {
  #left-info-box,
  #right-info-box {
    width: 60%;
    margin: 0 auto;
    position: absolute;
    left: 0;
    right: 0;
  }
}
@media (max-width: 767px) {
  #left-info-box,
  #right-info-box {
    width: 90%;
  }
}
@media (max-width: 1024px) {
  #left-info-box .vimeo-banner,
  #right-info-box .vimeo-banner {
    min-height: 26.3rem;
  }
}
@media (max-width: 767px) {
  #left-info-box .vimeo-banner,
  #right-info-box .vimeo-banner {
    min-height: 18rem;
  }
}
@media (max-width: 1024px) {
  #left-info-box .vimeo-banner iframe,
  #right-info-box .vimeo-banner iframe {
    min-height: 52.3vw;
  }
}
#left-info-box.show-map .map-tooltipss .map-tooltip-card,
#right-info-box.show-map .map-tooltipss .map-tooltip-card {
  display: block;
}
#left-info-box.show-map .map-tooltipss .map-tooltip-card .home-icon,
#right-info-box.show-map .map-tooltipss .map-tooltip-card .home-icon {
  align-items: normal;
}
#left-info-box .btn,
#right-info-box .btn {
  gap: 1rem;
}

.map {
  position: relative;
}

.gm-style-iw-chr {
  display: none !important;
}

.home-slider-pagination {
  position: absolute;
  bottom: 5rem;
  left: 5rem;
  z-index: 10;
  display: flex;
  gap: 1.5rem;
  align-items: flex-end;
}
.home-slider-pagination .swiper-pagination-bullet {
  width: auto;
  height: auto;
  background: transparent;
  opacity: 1;
  border-radius: 0;
  margin: 0 !important;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  cursor: pointer;
  transition: all 0.3s ease;
}
.home-slider-pagination .swiper-pagination-bullet .bullet-line {
  width: 1.5px;
  height: 3rem;
  background-color: #000;
  display: block;
  transition: height 0.3s ease;
}
@media (max-width: 1024px) {
  .home-slider-pagination .swiper-pagination-bullet .bullet-line {
    background-color: #c4c4c4;
  }
}
.home-slider-pagination .swiper-pagination-bullet .bullet-number {
  font-size: 1.4rem;
  color: #000;
  font-weight: 400;
  transition: font-weight 0.3s ease;
}
@media (max-width: 1024px) {
  .home-slider-pagination .swiper-pagination-bullet .bullet-number {
    color: #c4c4c4;
  }
}
.home-slider-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: none !important;
}
.home-slider-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active .bullet-line {
  height: 6rem;
  width: 2px;
}
.home-slider-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active .bullet-number {
  font-weight: 700;
}
.home-slider-pagination .swiper-pagination-bullet:hover .bullet-number {
  font-weight: 600;
}

.inquiry-form {
  background: rgba(255, 255, 255, 0.4);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border-radius: 2rem;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.3);
  overflow: hidden;
}
.inquiry-form h5 {
  border-radius: 1rem;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  padding: 2rem 2.5rem 1.6rem;
  color: #000;
  letter-spacing: 0.05em;
  background: rgba(255, 255, 255, 0.9);
  line-height: 1.2;
}
.inquiry-form form.wpcf7-form {
  margin-top: 2rem;
}
.inquiry-form form.wpcf7-form span.wpcf7-list-item {
  margin: 0 0;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
}
.inquiry-form form.wpcf7-form button.btn div {
  color: var(--black);
}
.inquiry-form input,
.inquiry-form textarea,
.inquiry-form select {
  width: calc(100% - 5rem);
  background: transparent;
  border: none;
  border-bottom: 1px solid rgb(0, 0, 0);
  padding: 0.8rem 0;
  font-size: 1.5rem;
  color: #000;
  outline: none;
  margin: 0 2.5rem 1.8rem;
}
.inquiry-form input::placeholder,
.inquiry-form textarea::placeholder,
.inquiry-form select::placeholder {
  color: rgb(0, 0, 0);
  font-size: 1.4rem;
}
.inquiry-form input:focus,
.inquiry-form textarea:focus,
.inquiry-form select:focus {
  border-bottom-color: rgba(0, 0, 0, 0.17);
}
.inquiry-form textarea {
  resize: none;
  margin-bottom: 4rem;
}
.inquiry-form .phone-group {
  display: flex;
  gap: 2rem;
  margin: 0 2.5rem 1.8rem;
}
.inquiry-form .phone-group input {
  width: 100%;
  margin: 0;
}
.inquiry-form .phone-group [data-name=country_code] {
  width: 10rem;
  flex-shrink: 0;
}
.inquiry-form .phone-group [data-name=phone] {
  flex: 1;
}
.inquiry-form label {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  cursor: pointer;
  font-size: 1.5rem;
  color: var(--black);
  line-height: 1.4;
  margin: 0 2.5rem 1.5rem;
}
.inquiry-form label:has(input[type=radio]:checked) {
  background-color: var(--yellow) !important;
  border-color: var(--yellow) !important;
}
.inquiry-form label input[type=radio] {
  border-radius: 99rem !important;
  width: 1.6rem !important;
  height: 1.6rem !important;
  padding: 0.5rem;
  margin: 0 !important;
  border-width: 1px !important;
}
.inquiry-form label input[type=radio]:checked {
  background-color: var(--white) !important;
  border-color: var(--white) !important;
}
.inquiry-form label input[type=radio]:checked::after {
  left: 0.5rem !important;
  top: 0.2rem !important;
  width: 0.4rem !important;
  height: 0.8rem !important;
  border-width: 0 1px 1px 0 !important;
  border-color: #000 !important;
  border: 1px;
}
.inquiry-form label input[type=checkbox],
.inquiry-form label input[type=radio] {
  appearance: none;
  width: 1.8rem;
  height: 1.8rem;
  border: 2px solid rgba(0, 0, 0, 0.6);
  border-radius: 0.3rem;
  cursor: pointer;
  position: relative;
  flex-shrink: 0;
  margin: 0.1rem 0 0;
  background: transparent;
}
.inquiry-form label input[type=checkbox]:checked,
.inquiry-form label input[type=radio]:checked {
  background-color: #000;
  border-color: #000;
}
.inquiry-form label input[type=checkbox]:checked::after,
.inquiry-form label input[type=radio]:checked::after {
  content: "";
  position: absolute;
  left: 0.6rem;
  top: 0.3rem;
  width: 0.5rem;
  height: 0.9rem;
  border: solid white;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
.inquiry-form label span.wpcf7-list-item-label {
  flex: 1;
  color: var(--black);
  font-size: 1.3rem;
  text-align: left;
}

.wpcf7-form.invalid input {
  border: 1px solid red;
}
.wpcf7-form.invalid span.wpcf7-not-valid-tip {
  display: none;
}

.c-arrow span.wpcf7-form-control-wrap::after {
  background: url(571496731718ded490ab.svg) no-repeat center;
  position: absolute;
  right: 2rem;
  top: 0.5rem;
  content: "";
  width: 11px;
  height: 6px;
  pointer-events: none;
}
@media (max-width: 1024px) {
  .c-arrow span.wpcf7-form-control-wrap::after {
    top: 1.6rem;
  }
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                    Project Section                
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.home-slider .circle {
  position: absolute;
  top: 12rem;
  left: auto;
  right: 7rem;
  transform: none !important;
}
@media (max-width: 1024px) {
  .home-slider .circle {
    top: 8.8rem;
    right: 4rem;
  }
}
.home-slider .circle.g-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  flex-direction: column;
  padding: 5rem;
  width: 46rem;
  height: 46rem;
}
@media (max-width: 1024px) {
  .home-slider .circle.g-btn {
    width: 35rem;
    height: 35rem;
  }
}
.home-slider .circle.g-btn h1, .home-slider .circle.g-btn h2 {
  text-align: center;
  margin: 0 auto;
}
.home-slider .circle.g-btn h1 {
  font-size: 6rem;
  text-transform: uppercase;
  line-height: 1;
}
.home-slider .circle.g-btn h2 {
  width: 75%;
  line-height: 1;
}
.home-slider .circle.g-btn h2 strong {
  line-height: 1;
  padding-bottom: 0;
}
.home-slider .circle.g-btn span {
  padding: 1rem 1.4rem 0.8rem;
  background-color: white;
  color: var(--orange);
  border-radius: 3rem;
  margin-bottom: 1rem;
  display: inline-block;
  text-transform: uppercase;
  font-weight: 600;
  line-height: 1;
}
.home-slider .circle.g-btn {
  color: white;
}

.project-section .nav {
  opacity: 0;
  transition: opacity 0.1s ease;
}
.project-section .swiper-slide:hover .nav {
  opacity: 1;
}
.project-section .swiper-slide a img {
  transition: all 0.3s ease;
}
.project-section .swiper-slide:hover a img {
  transform: scale(1.1, 1.1);
}
@media (max-width: 1024px) {
  .project-section .swiper-slide .nav {
    opacity: 1;
  }
}

.hover {
  transition: transform 0.2s ease;
}
.hover:hover {
  transform: scale(1.015);
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
               Home Partners                
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.logos {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 5rem;
}
.logos img {
  aspect-ratio: auto;
  object-fit: contain;
  width: 100%;
  max-width: 25rem;
  height: 3.7rem;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                    State section               
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
@media (min-width: 1025px) {
  .project-state .col-lg-3 {
    width: 23%;
  }
}
@media (max-width: 1024px) {
  .project-state .sy.g-5 {
    gap: 2rem 0;
    padding-top: 0;
  }
  .project-state .col-lg-3 {
    text-align: center;
  }
}
@media (max-width: 767px) {
  .project-state .sy.g-5 {
    gap: 4rem 0;
  }
}
.project-state .col-lg-3 img {
  max-width: 6rem;
  height: 6rem;
  object-fit: contain;
  aspect-ratio: auto;
}
.project-state h3 {
  padding: 1.75rem 0 0.5rem;
}
@media (max-width: 1024px) {
  .project-state h3 {
    font-size: 2.5rem;
  }
}
.project-state img.line {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 3;
  max-width: 85%;
  width: 100%;
}

.gap-2 {
  gap: 2rem;
}

.offer-section {
  color: white;
  position: relative;
}
.offer-section .row {
  position: relative;
  z-index: 2;
}
@media (max-width: 1024px) {
  .offer-section .row {
    height: auto !important;
  }
}
.offer-section .tiny-editor span {
  padding: 1.9rem 2.5rem 1.5rem;
  background-color: var(--yellow);
  color: var(--black);
  border-radius: 8rem;
  text-transform: uppercase;
  margin-bottom: 1rem;
  display: inline-block;
  font-size: 3rem;
  font-weight: 600;
  line-height: 0.6;
}
.offer-section .d-flex.gap-2 {
  gap: 4rem;
}
.offer-section .d-flex.gap-2 svg {
  margin-bottom: 1rem;
}
.offer-section .btn {
  color: var(--black);
}

.layer {
  background: linear-gradient(242deg, rgba(0, 0, 0, 0) 50.55%, rgba(0, 0, 0, 0.4) 99.07%);
  pointer-events: none;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0%;
  left: 0%;
}

.offer-popup {
  position: fixed;
  width: 50%;
  height: 400px;
  background: #1b1b1b;
  z-index: 9999999;
  top: 50%;
  left: 0;
  right: 0;
  margin: 0 auto;
  transform: translateY(-50%);
}

.project-menu-wrapper {
  position: relative;
  height: 100%;
}
.project-menu-wrapper .scroll-arrow {
  position: absolute;
  right: 25.1px;
  z-index: 10;
  display: none;
}
.project-menu-wrapper .scroll-arrow.visible {
  display: block;
}
.project-menu-wrapper .scroll-arrow.up {
  top: 0;
}
.project-menu-wrapper .scroll-arrow.down {
  bottom: 0;
  right: 25.3px;
}

.tab-menu-scroll {
  max-height: 35rem;
  overflow-y: scroll !important;
  padding-right: 3rem;
  margin: 2rem 0;
  scrollbar-width: thin !important;
  scrollbar-color: #E67E22 #f5f5f5;
}
.tab-menu-scroll::-webkit-scrollbar {
  width: 6px;
}
.tab-menu-scroll::-webkit-scrollbar-track {
  background: #f5f5f5;
}
.tab-menu-scroll::-webkit-scrollbar-thumb {
  background-color: #E67E22;
  background-clip: padding-box;
  border: 2px solid transparent;
  border-radius: 10px;
  transition: all 0.3s ease;
}
.tab-menu-scroll::-webkit-scrollbar-thumb:hover {
  background-color: rgb(232.5914634146, 139.3719512195, 56.9085365854);
  border: 0px solid transparent;
}

/* Map scroller */
/* --- SECTION CONTAINER --- */
.map-scroll-section {
  position: relative;
  width: 100%;
  height: 64.9rem;
  overflow: hidden;
  background: #fdfdfd;
  border-radius: 10px;
  margin-top: 2rem;
}
@media (max-width: 1024px) {
  .map-scroll-section {
    height: 52.2rem;
  }
}

/* --- FLUID NAVIGATION --- */
.map-nav-wrapper {
  position: relative;
  top: 0; /* Adjusted to fit within 649px section */
  width: 100%;
  z-index: 1000;
  display: flex;
  justify-content: center;
}

.map-nav-container {
  border-top: 1px solid #ddd;
  width: 100%;
  padding: 0;
  box-sizing: border-box;
}

.nav-labels {
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding: 1.5rem 0;
}
@media (max-width: 1024px) {
  .nav-labels {
    align-items: center;
  }
}

.nav-item {
  font-size: 1.6rem;
  font-weight: 400;
  color: var(--black);
}
@media (max-width: 1024px) {
  .nav-item {
    text-align: center;
    padding: 0 1rem;
  }
}
.nav-item:last-child {
  padding-right: 0;
}

.nav-item.active {
  color: var(--orange);
  transition: all 0.3s ease;
}

/* --- SLIDER NORMALIZATION --- */
.scroller-container {
  position: relative;
  width: 100%;
  display: flex;
  align-items: center;
}

.custom-scroller {
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  background: transparent;
  cursor: pointer;
  margin: 0;
  z-index: 5;
}

.custom-scroller::-webkit-slider-runnable-track {
  height: 5px;
  background: linear-gradient(to right, #fff5e6 0%, #f3a833 var(--scroll-percent, 0%), transparent var(--scroll-percent, 0%));
}

.custom-scroller::-webkit-slider-thumb {
  -webkit-appearance: none;
}

/* --- MAIN MAP WRAPPER (583px) --- */
.map-main-wrapper {
  width: 100%;
  margin: 0 auto; /* Pushes it down below the nav */
  position: relative;
  margin-top: -1px;
  border-top: 1px solid #ddd;
}
@media (max-width: 767px) {
  .map-main-wrapper {
    height: 40rem;
  }
}

.map-viewport {
  width: 100%;
  height: 100%;
  position: relative;
  border-radius: 10px;
  overflow: hidden;
}
.map-viewport .gm-style-iw-c {
  padding: 4px 6px !important;
  border-radius: 6px !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15) !important;
}
.map-viewport .gm-style-iw-d {
  overflow: hidden !important;
}
.map-viewport .gm-ui-hover-effect,
.map-viewport .gm-style-iw-tc {
  display: none !important;
}

.map-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.radius-circle {
  position: absolute;
  top: 50%;
  left: 48.5%;
  width: 37px;
  height: 37px;
  border: 5px solid #f3a833;
  background: rgba(243, 168, 51, 0.08);
  border-radius: 99rem;
  transform: translate(-50%, -50%);
  z-index: 5;
  pointer-events: none;
}

/* --- STACKED LANDMARKS --- */
.landmark-cards {
  position: absolute;
  top: 0;
  right: 4rem;
  z-index: 10;
  width: 300px;
  height: 100%;
}
@media (max-width: 1024px) {
  .landmark-cards {
    position: absolute;
    bottom: 1rem;
    top: auto;
    left: 0;
    right: 0;
    width: 100%;
    height: auto;
    padding: 0 1rem;
  }
}

.landmark-group {
  position: absolute;
  top: 40px;
  right: 0;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  opacity: 0;
  visibility: hidden;
}
@media (max-width: 1024px) {
  .landmark-group {
    position: absolute;
    top: auto;
    bottom: 0;
    flex-direction: row;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    gap: 0.6rem;
    padding-bottom: 0.5rem;
  }
}

.landmark-card {
  background: var(--white);
  padding: 12px;
  border-radius: 4px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
  font-size: 1.6rem;
  display: flex;
  gap: 0 0.6rem;
  align-items: center;
  line-height: 1.3;
  transition: background 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}
.landmark-card span {
  flex-shrink: 0;
}
@media (max-width: 1024px) {
  .landmark-card {
    flex-shrink: 0;
    font-size: 1.3rem;
    padding: 8px 10px;
    white-space: nowrap;
  }
}
.landmark-card:hover {
  background: #fff5e6;
  box-shadow: 0 6px 20px rgba(243, 168, 51, 0.2);
  transform: translateX(-3px);
}
.landmark-card:hover span {
  animation: bounceLoop 0.8s infinite;
}
.landmark-card.landmark-active {
  background: #fff5e6;
  box-shadow: 0 4px 15px rgba(243, 168, 51, 0.25);
  outline: 1.5px solid #f3a833;
}
.landmark-card.landmark-active span {
  animation: none !important;
  transform: translateY(0);
}

@keyframes bounceLoop {
  0%, 100% {
    transform: translateY(0);
  }
  25% {
    transform: translateY(-6px);
  }
  50% {
    transform: translateY(0);
  }
  75% {
    transform: translateY(-3px);
  }
}
.map-marker-label {
  position: absolute;
  top: 41%;
  left: 48.5%;
  transform: translate(-50%, -50%);
  background: var(--black);
  color: var(--white);
  padding: 1.4rem 1.4rem;
  font-weight: 600;
  border-radius: 1rem;
  white-space: nowrap;
  font-size: 1.6rem;
  z-index: 4;
}

.map-back-btn {
  position: absolute;
  top: 1.2rem;
  left: 1.2rem;
  z-index: 10;
  display: none;
  align-items: center;
  gap: 0.6rem;
  background: var(--white);
  color: var(--black);
  border: none;
  border-radius: 0.8rem;
  padding: 0.8rem 1.4rem;
  font-size: 1.4rem;
  font-weight: 600;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
  cursor: pointer;
  transition: background 0.2s ease;
}
.map-back-btn:hover {
  background: #f5f5f5;
}

.map-marker-label::after {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  background-color: #000000;
  /* Position at the bottom center */
  bottom: -8px; /* Adjust this to control how much the tip sticks out */
  left: 50%;
  /* Rotate to create the triangle shape */
  transform: translateX(-50%) rotate(45deg);
  /* This creates the rounded tip */
  border-bottom-right-radius: 4px;
  /* Ensure the "top" of the diamond is hidden behind the main box */
  z-index: -1;
}

.bg-grey {
  background-color: #f5f5f5;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                  Sticky Icon                
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.floating-sidebar {
  position: fixed;
  z-index: 49;
  right: 3rem;
  bottom: 10%;
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
  align-items: flex-end;
}
@media (max-width: 1024px) {
  .floating-sidebar {
    right: 1rem;
    bottom: 52%;
  }
}
@media (max-width: 767px) {
  .floating-sidebar {
    margin: 0 auto;
    padding: 1.3rem 2.5rem;
    border-radius: 9rem;
    left: 0;
    right: 0;
    flex-direction: row;
    width: 90%;
    align-items: center;
    justify-content: space-between;
    bottom: 2.5rem;
    background-color: color-mix(in srgb, #000 25%, transparent);
    backdrop-filter: blur(8px) url(#switcher) saturate(150%);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, #fff 10%, transparent), inset 1.8px 3px 0px -2px color-mix(in srgb, #fff 90%, transparent), inset -2px -2px 0px -2px color-mix(in srgb, #fff 80%, transparent), inset -3px -8px 1px -6px color-mix(in srgb, #fff 60%, transparent), inset -0.3px -1px 4px 0px color-mix(in srgb, #000 12%, transparent), inset -1.5px 2.5px 0px -2px color-mix(in srgb, #000 20%, transparent), inset 0px 3px 4px -2px color-mix(in srgb, #000 20%, transparent), inset 2px -6.5px 1px -4px color-mix(in srgb, #000 10%, transparent), 0px 1px 5px 0px color-mix(in srgb, #000 10%, transparent), 0px 6px 16px 0px color-mix(in srgb, #000 8%, transparent);
  }
}
.floating-sidebar .contact-item {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  cursor: pointer;
  position: relative;
}
.floating-sidebar .contact-item:hover .content-pill {
  max-width: 30rem;
  opacity: 1;
  transform: translateX(0);
}
.floating-sidebar .contact-item:hover .icon-circle {
  transform: scale(1.1);
}

.icon-circle {
  width: 5rem;
  height: 5rem;
  background: rgba(0, 0, 0, 0.3019607843);
  backdrop-filter: blur(1.6rem);
  box-shadow: inset 1px 1px 1px rgba(211, 211, 211, 0.3), inset -1px -1px 1px rgba(255, 255, 255, 0.3), 0 4px 15px rgba(0, 0, 0, 0.05);
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 2;
  color: var(--white);
  font-size: 2.2rem;
  transition: transform 0.65s ease;
}
@media (max-width: 767px) {
  .icon-circle {
    background: none;
    box-shadow: none;
    backdrop-filter: unset;
    border: 0;
  }
  .icon-circle img {
    width: 3rem;
    height: 3rem;
  }
}

.content-pill {
  background: rgba(0, 0, 0, 0.18);
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
  backdrop-filter: blur(1.2rem);
  -webkit-backdrop-filter: blur(1.2rem);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 3rem;
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 0;
  opacity: 0;
  overflow: hidden;
  white-space: nowrap;
  transform: translateX(20px);
  transition: max-width 0.65s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.65s ease, transform 0.65s cubic-bezier(0.16, 1, 0.3, 1);
  margin-right: 1.2rem;
  padding: 1rem 1.5rem;
  color: var(--white);
  font-weight: 600;
}
@media (max-width: 767px) {
  .content-pill {
    display: none;
  }
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                  Map listing                
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
ul.map-listing {
  flex-wrap: wrap;
  gap: 1rem 2rem;
}
@media (max-width: 1024px) {
  ul.map-listing {
    gap: 0.8rem 1rem;
    margin-bottom: 3rem;
  }
}
ul.map-listing li {
  list-style-type: none;
  padding: 1rem 2rem 0.7rem;
  cursor: pointer;
  border-radius: 6rem;
}
ul.map-listing li:hover {
  background-color: var(--yellow);
}
ul.map-listing li.active, ul.map-listing li.hover-active {
  background-color: var(--yellow);
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                  Map tooltip                
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.map-tooltip {
  position: fixed;
  pointer-events: none;
  padding: 0.8rem 1.6rem;
  background: var(--yellow);
  color: var(--white);
  border-radius: 0.6rem;
  font-size: 1.4rem;
  font-weight: 600;
  z-index: 9999;
  border: 1px solid var(--white);
  opacity: 0;
  transform: translate(-50%, -150%) scale(0.9);
  transition: opacity 0.2s ease, transform 0.2s ease;
  white-space: nowrap;
  left: 0;
  top: 0;
}
.map-tooltip.active {
  opacity: 1;
  transform: translate(-50%, -150%) scale(1);
}
.map-tooltip::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  width: 0.1rem;
  background-color: var(--yellow);
  height: 1rem;
  bottom: -1rem;
  margin: 0 auto;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                 Vimeo Video               
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
/* 1. The Fixed Container with your exact dimensions */
.vimeo-banner {
  width: 100%;
  min-height: 19.3rem;
  position: relative;
  overflow: hidden;
  z-index: 10;
}
.vimeo-banner.h-vimeo-banner {
  height: 100vh !important;
}

/* 2. Positioning the Vimeo iframe to "Cover" the custom box */
.vimeo-banner iframe {
  width: 177.77vh;
  /* Maintains 16:9 ratio width relative to container height */
  height: 100%;
  min-width: 100%;
  min-height: 19.3vw;
  /* 9/16 to maintain ratio */
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
  /* User can't click to pause */
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                Tablet  Responsive         
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
@media (max-width: 767px) {
  .h-section-3 {
    padding-bottom: 3rem;
  }
}
@media screen and (min-width: 1920px) {
  .h-section-3 .row.min-vh-70 {
    min-height: 77vh !important;
  }
}
@media (max-width: 1024px) {
  .h-section-3 .has-bg {
    background-size: contain;
    background-position: top left;
  }
}
@media (max-width: 1024px) {
  .h-section-3 .has-bg .row {
    min-height: auto !important;
  }
}
.h-section-3 .has-bg .p-left {
  padding-left: 6rem;
  padding-top: 0;
  text-align: center;
}
@media (max-width: 1024px) {
  .h-section-3 .has-bg .p-left {
    width: 15rem;
    margin-left: 20rem;
    margin-top: 17rem;
    margin-bottom: 7rem;
    padding-left: 3rem;
  }
}
@media (max-width: 767px) {
  .h-section-3 .has-bg .p-left {
    margin-left: 5rem;
    margin-top: 0;
    margin-bottom: 5rem;
    padding-top: 8.6rem;
  }
}
@media (max-width: 767px) {
  .h-section-3 .has-bg .p-left img {
    width: 6rem;
  }
}

@media (max-width: 767px) {
  .h-section-4 .slider {
    margin-top: 0.5rem;
  }
}
.h-section-4 .slider .swiper h5 a {
  font-size: 2.5rem;
  line-height: 120%;
  font-weight: 600;
  transition: all 0.3s ease;
}
.h-section-4 .slider .swiper h5:hover a {
  color: var(--yellow);
}
.h-section-4 .slider .swiper-slide a {
  display: inline-block;
}
@media (max-width: 767px) {
  .h-section-4 .col-6.d-flex.aic {
    width: 100%;
  }
}

@media (max-width: 767px) {
  .h-section-5 {
    padding-bottom: 0;
  }
}
@media (max-width: 1024px) {
  .h-section-5 img.line {
    display: none;
  }
}
.h-section-5 .stats-3,
.h-section-5 .stats-4 {
  padding-left: 4.5rem;
}
@media (max-width: 1024px) {
  .h-section-5 .stats-3,
  .h-section-5 .stats-4 {
    padding-left: calc(var(--bs-gutter-x) * 0.5);
  }
}

@media (max-width: 767px) {
  .h-section-6 .col-lg-5 {
    padding-bottom: 3rem;
  }
}
.h-section-6 .slider .swiper {
  padding-right: 2rem;
}

.h-section-9 .swiper h5 a {
  font-size: 2.5rem;
  line-height: 120%;
  font-weight: 600;
  transition: all 0.3s ease;
}
.h-section-9 .swiper h5:hover a {
  color: var(--yellow);
}
.h-section-9 .swiper .swiper-slide a {
  display: block;
  overflow: hidden;
}
.h-section-9 .swiper .swiper-slide img.rounded {
  transition: all 0.3s ease;
}
.h-section-9 .swiper .swiper-slide:hover img.rounded {
  transform: scale(1.1, 1.1);
}
.h-section-9 .swiper .nav {
  position: absolute;
  top: 35%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  width: 100%;
  justify-content: space-between;
  z-index: 3;
  padding: 1.5rem;
}

@media (max-width: 1024px) {
  .h-section-10 {
    background: var(--yellow);
  }
}
@media (max-width: 1024px) {
  .h-section-10 .has-bg {
    background: none;
  }
}
@media (max-width: 1024px) {
  .h-section-10 .vh-100 {
    flex-direction: column-reverse;
    height: inherit !important;
    padding-top: 5rem;
  }
}
@media (max-width: 1024px) {
  .h-section-10 .vh-100 .mt-auto {
    margin: 0 auto;
  }
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                Mobile Responsive          
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
@media (max-width: 767px) {
  .h-section-1 {
    margin-bottom: 0;
    padding-bottom: 0;
  }
}

@media (max-width: 767px) {
  .h-section-2 .m-left {
    padding-top: 30rem;
  }
}
.h-section-2 .m-left .tiny-editor h2 {
  padding-bottom: 2rem;
}
@media (max-width: 767px) {
  .h-section-2 .m-right {
    display: none;
  }
}

@media (max-width: 767px) {
  .home-slider {
    padding-left: 0;
    padding-right: 0;
  }
  .home-slider .home-slider-pagination {
    bottom: auto !important;
    top: 32rem !important;
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
    padding-right: 2rem;
  }
  .home-slider .home-slider-pagination .swiper-pagination-bullet {
    flex-direction: column-reverse;
  }
}
@media (max-width: 767px) {
  .home-slider .home-slider-holder {
    display: flex;
    flex-direction: column-reverse;
  }
  .home-slider .home-slider-holder .circle {
    position: relative;
    width: auto;
    background: none;
    box-shadow: none;
    backdrop-filter: none;
    padding: 0;
    width: 100%;
    left: 0;
    right: inherit;
    top: 1.3rem;
    align-items: flex-start;
    height: 30rem;
    padding-right: var(--grid-padding);
    padding-left: var(--grid-padding);
  }
  .home-slider .home-slider-holder .circle span {
    background-color: var(--yellow);
    color: var(--white);
  }
  .home-slider .home-slider-holder .circle .py-md-2 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .home-slider .home-slider-holder .circle h1,
  .home-slider .home-slider-holder .circle h2 {
    color: var(--black);
    text-align: left !important;
    width: 100%;
    font-size: 4rem;
  }
  .home-slider .home-slider-holder .circle .flex-center {
    align-items: flex-start;
    width: 100%;
  }
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                Custom tablet responsive          
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
@media (max-width: 767px) {
  .banner-desktop {
    display: none;
  }
  .banner-mobile {
    display: block;
    height: 350px;
    object-fit: cover;
    width: 100%;
  }
  .ban-overlay {
    position: relative;
  }
  .ban-overlay::after {
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    opacity: 0.6;
    z-index: 1;
    pointer-events: none;
    background: var(--white);
    background: linear-gradient(0deg, rgba(255, 255, 255, 0.2) 0%, rgba(0, 0, 0, 0.83) 100%);
  }
}
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
               Hero
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.hero-minimal {
  color: var(--black2);
  margin-top: 7.5rem;
}
@media screen and (max-width: 1024px) {
  .hero-minimal {
    margin-top: 7rem;
    min-height: 38rem !important;
  }
}
@media screen and (max-width: 850px) {
  .hero-minimal {
    margin-top: 7.8rem;
  }
}
@media screen and (max-width: 650px) {
  .hero-minimal {
    padding-top: 4rem;
    margin-top: 7rem;
    min-height: 35rem !important;
  }
}
.hero-minimal h1,
.hero-minimal h2 {
  color: var(--black2);
}
.hero-minimal h1 {
  font-size: 6rem;
  letter-spacing: -1.6px;
  line-height: 100%;
  text-transform: uppercase;
  padding-bottom: 1rem;
}
@media screen and (max-width: 650px) {
  .hero-minimal h1 {
    font-size: 3.5rem;
  }
}
@media screen and (max-width: 650px) {
  .hero-minimal h3 {
    font-size: 2.5rem;
  }
}
.hero-minimal .hero-media {
  width: 50%;
  position: absolute;
  top: 0.5rem;
  right: 0;
  text-align: right;
}
@media screen and (max-width: 1024px) {
  .hero-minimal .hero-media {
    top: 0;
  }
}
@media screen and (max-width: 650px) {
  .hero-minimal .hero-media {
    width: 60%;
    top: 0.9rem;
  }
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
              Banner has text reveal
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.m-text-reveal p,
.m-text-reveal span {
  color: var(--black) !important;
}

@media (max-width: 1024px) {
  .maison-desc {
    align-items: center !important;
    justify-content: center !important;
  }
}

.has-reveal .b-desc {
  margin-top: calc(var(--grid-padding) + 0.9rem) !important;
  min-height: 140vh;
  flex-direction: column;
}
@media (max-width: 1024px) {
  .has-reveal .b-desc {
    min-height: 90vh;
    margin-top: calc(var(--grid-padding) + 5rem) !important;
  }
}
@media (max-width: 1024px) {
  .has-reveal .b-desc .text-reveal.h-sm {
    display: none;
  }
}
.has-reveal .b-desc .logo-section img {
  width: 74.9rem;
}
@media (max-width: 1024px) {
  .has-reveal .b-desc .logo-section img {
    width: 100%;
  }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .has-reveal .b-desc .logo-section img {
    width: 70%;
  }
}
@media (max-width: 767px) {
  .has-reveal .b-desc .logo-section img {
    width: 45rem;
  }
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
               Generic contact form
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.home .inquiry-form span.wpcf7-not-valid-tip {
  position: absolute;
  left: 2.4rem;
  bottom: -3.5rem !important;
}
.home .inquiry-form .phone-group span.wpcf7-not-valid-tip {
  left: 0;
  bottom: -2.1rem !important;
}
.home .inquiry-form .wpcf7-response-output {
  margin: 0 auto 2rem;
  padding: 0.4rem 1rem;
  width: 80%;
  line-height: 1;
}
@media (max-width: 1024px) {
  .home .inquiry-form .wpcf7-response-output {
    width: 90%;
  }
}

.c-form {
  border-radius: 0;
  box-shadow: none;
  background: none;
  border: 0;
}
.c-form .wpcf7-form {
  margin-top: 0 !important;
}
.c-form .wpcf7-not-valid-tip {
  position: absolute;
  font-size: 1rem !important;
  bottom: -3.4rem !important;
}
.c-form .wpcf7-response-output {
  margin: 2em 0 0 !important;
  text-align: center;
  padding: 0.5rem 1rem !important;
  line-height: 1;
}
.c-form .phone-group span.wpcf7-not-valid-tip {
  bottom: -2rem !important;
}
.c-form .phone-group .selected-dial-code {
  color: #989da4;
}
.c-form .custom-select-wrapper {
  margin: 0 0 1.8rem 0;
}
.c-form .custom-select-wrapper .select-trigger {
  color: #989da4;
  padding: 1.2rem 0.8rem;
}
.c-form .custom-select-wrapper .select-trigger::after {
  transform: translateY(0px) rotate(45deg);
  transform-origin: center center;
}
.c-form .custom-select-wrapper.open .select-trigger::after {
  transform: translateY(5px) rotate(225deg);
  transform-origin: center center;
}
.c-form input,
.c-form textarea,
.c-form label,
.c-form select,
.c-form .phone-group {
  margin-left: 0;
  margin-right: 0;
  width: 100%;
}
.c-form input,
.c-form textarea,
.c-form select,
.c-form .custom-select-wrapper .select-trigger {
  border: 1px solid #758091;
  border-radius: 1.1rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  background-color: var(--white);
}
.c-form input::placeholder,
.c-form textarea::placeholder,
.c-form select::placeholder,
.c-form .custom-select-wrapper .select-trigger::placeholder {
  color: #989da4;
}
.c-form input:focus,
.c-form textarea:focus,
.c-form select:focus,
.c-form .custom-select-wrapper .select-trigger:focus {
  border-bottom-color: #758091;
}
.c-form textarea {
  margin-bottom: 2.5rem;
}
.c-form select {
  margin-bottom: 1.8rem;
  color: #989da4;
}
.c-form label {
  margin-bottom: 0.7rem;
  color: #090a0b;
  align-items: center;
}
.c-form span.wpcf7-checkbox label span, .c-form span.wpcf7-acceptance label span {
  padding-top: 0.3rem;
}
.c-form span.wpcf7-checkbox input[type=checkbox], .c-form span.wpcf7-acceptance input[type=checkbox] {
  padding: inherit;
}
.c-form span.wpcf7-list-item-label {
  font-size: 1.2rem;
}
@media (max-width: 1024px) {
  .c-form span.wpcf7-form-control-wrap {
    display: flex;
  }
}
.c-form .cf-row,
.c-form .phone-group {
  gap: 1.5rem;
}
@media (max-width: 1024px) {
  .c-form .cf-row > div {
    width: 50%;
  }
}
.c-form button.btn {
  min-width: 30rem;
  justify-content: space-between;
}
.c-form button.btn:hover::before {
  transform: scale(19);
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
               Generic contact form gallery
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.cf7-bg {
  padding: 6rem;
  border-radius: 1.5rem;
  background-color: #f5f5f5;
  background-image: radial-gradient(circle at top left, #f9e3aa 0%, transparent 50%), radial-gradient(circle at top right, #ebc399 0%, transparent 50%);
}
@media (max-width: 1024px) {
  .cf7-bg {
    padding: 3rem 2rem;
    margin-bottom: 3rem;
  }
}

.masonry-container {
  column-count: 2;
  column-gap: 2rem;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .masonry-container {
    padding: 0;
  }
}
.masonry-container .card {
  position: relative;
  width: 100%;
  margin-bottom: 2rem;
  border-radius: 1.2rem;
  background-size: cover;
  background-position: center;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  break-inside: avoid;
  cursor: pointer;
  transition: transform 0.3s ease;
}
.masonry-container .card:nth-child(1) {
  height: 218px;
}
.masonry-container .card:nth-child(2) {
  height: 297px;
}
.masonry-container .card:nth-child(3) {
  height: 255px;
}
.masonry-container .card:nth-child(4) {
  height: 262px;
}
.masonry-container .card:hover {
  transform: translateY(-0.5rem);
}
.masonry-container .card:hover .card-overlay {
  background: linear-gradient(to top, rgba(0, 0, 0, 0.7) 0%, transparent 100%);
}
.masonry-container .card-overlay {
  width: 100%;
  padding: 0.9rem;
  box-sizing: border-box;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.1) 50%, transparent 100%);
  display: flex;
  align-items: center;
  gap: 1rem;
  transition: background 0.3s ease;
}
@media (max-width: 767px) {
  .masonry-container .card-overlay {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0.9rem 0.9rem 2rem;
  }
}
.masonry-container .card .brand-badge {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4.6rem;
  height: 4.6rem;
  background: #2a2d32;
  border-radius: 99rem;
  color: var(--white);
  font-size: 1.2rem;
  font-weight: bold;
  flex-shrink: 0;
  box-shadow: 0 0.4rem 1.5rem rgba(0, 0, 0, 0.3);
  padding: 0.6rem;
}
.masonry-container .card h3 {
  color: var(--white);
  font-size: 1.3rem;
  font-weight: 600;
  margin: 0;
  text-transform: uppercase;
  text-shadow: 0 0.2rem 0.4rem rgba(0, 0, 0, 0.3);
  padding-right: 3rem;
}
@media (max-width: 767px) {
  .masonry-container .card h3 {
    padding-right: 0;
    text-align: center;
    line-height: 1.2;
  }
}
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
               Text Reveal
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.text-reveal {
  padding: 8rem 2rem 2rem;
  max-width: 1000px;
  margin: 0 auto;
  text-align: left;
}
.text-reveal h2,
.text-reveal p {
  color: var(--white);
  font-weight: 700;
}
.text-reveal h2 {
  font-size: 4rem;
  line-height: 1.1;
  margin-bottom: 1.5rem;
}
.text-reveal p {
  font-size: 3rem;
  line-height: 1.3;
  font-weight: 600;
}
@media (max-width: 1024px) {
  .text-reveal p {
    font-size: 2rem;
  }
}
.text-reveal p span {
  font-size: 3rem;
  font-weight: 500;
}
@media (max-width: 1024px) {
  .text-reveal p span {
    font-size: 2rem;
  }
}
.text-reveal .char,
.text-reveal .word {
  opacity: 0.2;
  display: inline-block;
  will-change: opacity;
}

@media (max-width: 1024px) {
  .mob-heading {
    padding-top: 1rem;
  }
}
@media (max-width: 767px) {
  .mob-heading {
    width: 100%;
    padding-top: 5rem;
  }
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
               Other Location
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.no-bg {
  background-color: transparent;
  width: 2.8rem;
  height: 2.8rem;
  top: calc(50% - 1rem);
  left: calc(50% - 1rem);
}
.no-bg svg {
  width: 100%;
  height: 100%;
}

.loc-desc {
  width: 100%;
  background: var(--white);
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-bottom-left-radius: 1rem;
  border-bottom-right-radius: 1rem;
  padding: 2rem;
  box-shadow: 0 25px 30px -33px rgba(142, 142, 142, 0.26);
  border: 1px solid #f6f6f6;
}
.loc-desc h4 {
  font-size: 1.4rem;
  text-transform: uppercase;
}
.loc-desc img {
  border-top-left-radius: 1rem;
  border-top-right-radius: 1rem;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

@media (max-width: 1024px) {
  .project-section .nav .prev svg,
  .project-section .nav .next svg {
    height: 1.43rem;
    width: 1.43rem;
  }
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
               Project state
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
@media (max-width: 767px) {
  .project-state .col-lg-3 {
    text-align: center;
  }
  .project-state .col-lg-3 p {
    padding: 0 3rem;
    line-height: 1.3;
  }
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
               Project state
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
@media (max-width: 767px) {
  .property-section .row .col-lg-4 {
    width: 100%;
  }
}

@media (max-width: 767px) {
  .h-section-8 .logos {
    padding-top: 2rem;
    padding-bottom: 0;
  }
  .h-section-8 .logos .swiper-pagination {
    padding-top: 1rem;
    position: relative;
  }
}
.h-section-8 .logos.slider .swiper-nav:has(.swiper-button-lock) {
  display: none !important;
}

.generic-circle {
  top: 9rem;
  width: 46rem;
  height: 46rem;
  background: rgba(255, 255, 255, 0.431372549);
  backdrop-filter: blur(1rem);
  top: 9rem !important;
  right: 6rem !important;
}
@media (max-width: 1024px) {
  .generic-circle {
    top: 6.4rem !important;
    right: 4rem !important;
  }
}
@media (max-width: 767px) {
  .generic-circle {
    top: 0 !important;
  }
}
.generic-circle h1 {
  color: var(--black);
}

@media (max-width: 767px) {
  .filter-section {
    padding-top: 6rem !important;
  }
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
               Button Group
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.btn-group {
  gap: 1.9rem;
}
.btn-group::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: rgba(0, 0, 0, 0.1);
  left: 0;
}
@media (max-width: 767px) {
  .btn-group::after {
    display: none;
  }
}
.btn-group a {
  border-radius: 9rem;
  background-color: var(--white);
  border: 1px solid rgba(0, 0, 0, 0.1);
  text-transform: uppercase;
  font-size: 1.3rem;
  font-weight: 600;
  padding: 1.5rem 1.5rem 1.3rem;
  line-height: 1;
  min-width: 13rem;
  position: relative;
  z-index: 1;
  text-align: center;
  transition: 0.3s all ease;
}
.btn-group a:hover {
  background-color: var(--yellow);
}

.nav-btn {
  margin-top: -2.8rem;
  background: transparent;
}
@media (max-width: 767px) {
  .nav-btn {
    padding-bottom: 0;
    margin-top: 3rem;
  }
  .nav-btn a {
    width: 47%;
  }
}

@media (max-width: 767px) {
  header .container {
    padding: 0;
  }
}
@media (max-width: 767px) {
  header .container .row {
    margin-left: 0;
    margin-right: 0;
    width: 100%;
  }
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
               Generic Card
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.card-body h5 a {
  font-size: 2.5rem;
  line-height: 120%;
  letter-spacing: -1.25px;
  font-weight: 600;
  transition: all 0.3s ease;
}
.card-body h5 a:hover {
  color: var(--yellow);
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
               Banner News
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.banner-news .swiperr {
  padding-bottom: 4rem !important;
}
.banner-news .swiperr .swiper-slide .banner-desc {
  opacity: 1 !important;
  visibility: visible !important;
}
.banner-news .swiper,
.banner-news .swiperr {
  padding-bottom: 10rem;
  padding-top: 7rem;
}
@media (max-width: 767px) {
  .banner-news .swiper,
  .banner-news .swiperr {
    padding-bottom: 7rem;
  }
}
@media (max-width: 767px) {
  .banner-news .swiper .home-slider-pagination,
  .banner-news .swiperr .home-slider-pagination {
    top: 8.4rem !important;
    bottom: auto !important;
    justify-content: flex-end !important;
    right: 2rem !important;
    left: auto;
  }
}
.banner-news .swiper .home-slider-pagination .swiper-pagination-bullet .bullet-line,
.banner-news .swiperr .home-slider-pagination .swiper-pagination-bullet .bullet-line {
  height: 1.3rem !important;
}
.banner-news .swiper .home-slider-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active .bullet-line,
.banner-news .swiperr .home-slider-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active .bullet-line {
  height: 2.9rem !important;
}
.banner-news .swiper .swiper-slide .banner-desc,
.banner-news .swiperr .swiper-slide .banner-desc {
  opacity: 0;
  visibility: hidden;
  transition: opacity 1s ease;
}
.banner-news .swiper .swiper-slide.swiper-slide-active .banner-desc,
.banner-news .swiperr .swiper-slide.swiper-slide-active .banner-desc {
  visibility: visible;
  opacity: 1;
}
@media (max-width: 767px) {
  .banner-news .swiper .home-slider-holder,
  .banner-news .swiperr .home-slider-holder {
    padding: 0 2rem;
  }
}
.banner-news .banner-desc {
  padding-right: 4rem;
}
@media (max-width: 1024px) {
  .banner-news .banner-desc {
    padding-right: 0;
  }
}
@media (max-width: 767px) {
  .banner-news .banner-desc {
    margin-top: 3rem;
    padding-right: calc(var(--bs-gutter-x) * 0.5);
    padding-left: calc(var(--bs-gutter-x) * 0.5);
  }
}
.banner-news .banner-desc h1 {
  font-size: 3rem;
}
@media (max-width: 767px) {
  .banner-news .banner-desc .btn {
    margin-top: 3rem;
  }
}
@media (max-width: 767px) {
  .banner-news.banner-detail .home-slider-holder {
    padding: 0 0;
  }
}
@media (max-width: 767px) {
  .banner-news.banner-detail .home-slider-holder .banner-desc {
    margin-top: 0;
    margin-bottom: 2rem;
  }
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
               Vimeo Video
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
/* 1. The Banner Container */
.has-video {
  width: 100%;
  height: 120vh;
  /* Increased to 120vh */
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

/* 2. The Video Wrapper */
.has-video .vimeo-banner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  overflow: hidden;
}
.has-video .vimeo-banner iframe {
  /* Updated Cover logic for 120vh */
  width: 100vw;
  height: 56.25vw;
  /* 16:9 aspect ratio */
  min-height: 120vh;
  /* Matches the new container height */
  min-width: 213.33vh;
  /* Calculated: 120 * 1.777 (16/9 ratio) */
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
}

/* 3. The Bottom Description */
.b-desc {
  position: relative;
  margin-top: auto;
  /* Keeps content pinned to the bottom of the 120vh */
  z-index: 20;
  padding-bottom: 5rem;
  width: 100%;
  /* Optional: adds shadow to help text pop over the video */
  background: linear-gradient(to top, rgba(0, 0, 0, 0.5), transparent);
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
               Contact Tooltip
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.contact-tooltip {
  background: var(--black);
  color: var(--white);
}
.contact-tooltip h6 {
  color: var(--yellow);
}
@media (max-width: 1024px) {
  .contact-tooltip h6 {
    margin-bottom: 0;
  }
}
@media (max-width: 1024px) {
  .contact-tooltip .mb-3 {
    display: flex;
  }
}
@media (max-width: 1024px) {
  .contact-tooltip .mb-3 .icon {
    width: 8%;
  }
}
@media (max-width: 767px) {
  .contact-tooltip .mb-3 .icon {
    width: 10%;
  }
}
@media (max-width: 1024px) {
  .contact-tooltip .mb-3 .info {
    width: 92%;
  }
}
@media (max-width: 767px) {
  .contact-tooltip .mb-3 .info {
    width: 85%;
  }
}
.contact-tooltip .sharp-border {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, rgba(255, 194, 38, 0.3882352941) 13%, rgba(0, 0, 0, 0) 100%);
}
@media (max-width: 1024px) {
  .contact-tooltip .sharp-border {
    display: block;
  }
}
.contact-tooltip a {
  transition: all 0.3s ease;
}
.contact-tooltip a:hover {
  color: var(--yellow);
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
             News detail
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.g-style h5 {
  text-transform: uppercase;
  padding-top: 1rem;
  padding-bottom: 2rem;
}
.g-style p,
.g-style ul li,
.g-style ol li {
  line-height: 150%;
}
.g-style p a,
.g-style ul li a,
.g-style ol li a {
  text-decoration: underline;
  transition: all 0.3s ease;
  color: #da6f02;
}
.g-style p a:hover,
.g-style ul li a:hover,
.g-style ol li a:hover {
  color: var(--black);
  text-decoration: none;
}
.g-style ul,
.g-style ol {
  margin-left: 3rem;
}
.g-style ul li,
.g-style ol li {
  position: relative;
  list-style: none;
  margin-bottom: 1.7rem;
  padding-left: 4.5rem;
  display: block;
}
.g-style ul li::after,
.g-style ol li::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  background: #d9d9d9 url(579afc92001e6b6a6650.svg) no-repeat center;
  background-size: 1.2rem;
  width: 3rem;
  height: 3rem;
  border-radius: 99rem;
}
.g-style blockquote {
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  padding: 5rem 3rem;
  margin: 3rem 0;
  position: relative;
}
.g-style blockquote p {
  font-size: 2.5rem;
  font-weight: 300;
}
.g-style blockquote::after, .g-style blockquote::before {
  background-image: url(e7a2b219ef79987eeb51.svg);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  position: absolute;
  width: 2rem;
  height: 2rem;
}
.g-style blockquote::after {
  top: 2rem;
  left: 0;
}
.g-style blockquote::before {
  transform: scaleX(-1) scaleY(-1);
  bottom: 2rem;
  right: 0;
}
.g-style .cta-bar {
  background: var(--yellow);
  gap: 5rem;
  padding: 4rem 3.5rem;
}
@media (max-width: 767px) {
  .g-style .cta-bar {
    flex-direction: column;
    gap: 2rem;
    text-align: center;
  }
}
.g-style .cta-bar h3 {
  text-transform: uppercase;
}
@media (max-width: 767px) {
  .g-style .cta-bar h3 {
    font-size: 3rem;
  }
}
.g-style .cta-bar .btn-white:hover {
  border: 1px solid var(--black);
  width: 100%;
}
.g-style .card-body h5 {
  text-transform: none;
  padding-bottom: 0;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
             Share page
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.share-page p {
  text-transform: uppercase;
  font-weight: 600;
  font-size: 1.5rem;
}
.share-page a {
  background-color: var(--yellow);
  border-radius: 99rem;
  width: 3.6rem;
  height: 3.6rem;
  padding: 0.9rem;
}
.share-page a svg {
  width: 100%;
  height: 100%;
}
.share-page .d-flex {
  gap: 0.7rem;
}

@media (max-width: 1024px) {
  .r-intro .card-left {
    padding-top: 0;
    padding-bottom: 3rem;
  }
}
@media (max-width: 767px) {
  .r-intro .card-left {
    padding-bottom: 0;
  }
}
@media (max-width: 767px) {
  .r-intro .card-right {
    width: 100%;
  }
}

.r-info .r-info-h {
  width: 85%;
  text-align: left;
  gap: 2rem 1rem;
}
@media (max-width: 1024px) {
  .r-info .r-info-h {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .r-info .r-info-h {
    gap: 1.6rem 1rem;
  }
}
.r-info .r-info-h .col-61 {
  width: 49%;
}
@media (max-width: 1024px) {
  .r-info .r-info-h .col-61 {
    width: 48%;
  }
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
             Project detail
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.bg-inline {
  background-size: cover;
  background-repeat: no-repeat;
}

.r-logo {
  background-color: var(--black);
  width: 20rem;
  height: 20rem;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 !important;
}
@media (max-width: 767px) {
  .r-logo {
    width: 8rem;
    height: 8rem;
  }
}
.r-logo img {
  top: 0;
  left: 0;
  width: 100%;
}

.tiny-editor-tc p {
  font-size: 2rem;
  font-weight: 300;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
             Amenities Tab
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.amenities-section .container {
  display: flex;
  flex-direction: row;
  gap: 4rem;
  /* Tablet Adjustment */
}
@media (max-width: 1024px) {
  .amenities-section .container {
    flex-direction: column;
    gap: 3rem;
  }
}

.amenities-list {
  list-style: none;
  padding: 0;
}
@media (max-width: 1024px) {
  .amenities-list {
    width: 100%;
    display: flex;
    overflow-x: auto;
    white-space: nowrap;
    border-bottom: 1px solid #e0e0e0;
    padding-bottom: 2.5rem;
    -webkit-overflow-scrolling: touch;
    /* Hide scrollbar for a cleaner look */
  }
  .amenities-list::-webkit-scrollbar {
    display: none;
  }
}
.amenities-list {
  /* 1. THE DEFAULT STATE */
}
.amenities-list li.amenity-item {
  padding: 1.8rem 2.5rem;
  margin-bottom: 0.1rem;
  font-size: 1.4rem;
  font-weight: 600;
  color: #555;
  cursor: pointer;
  text-transform: uppercase;
  line-height: 1;
  /* Stable base border */
  border: 1px solid transparent;
  border-bottom: 1px solid #e0e0e0;
  /* The grey divider */
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
@media (max-width: 1024px) {
  .amenities-list li.amenity-item {
    border: 1px solid transparent;
  }
}
.amenities-list li.amenity-item:hover {
  color: var(--black);
}
.amenities-list {
  /* 2. THE ACTIVE PILL */
}
.amenities-list .amenity-item.show {
  color: var(--black);
  border-color: var(--yellow);
  /* The Yellow Border */
  border-radius: 99rem;
  /* Lift it slightly if you want a shadow effect like the screenshot */
  z-index: 2;
  position: relative;
}
@media (max-width: 1024px) {
  .amenities-list .amenity-item.show {
    border: 1px solid var(--yellow) !important;
  }
}
.amenities-list {
  /* Hide the divider of the item that comes BEFORE the active pill */
}
.amenities-list .amenity-item:has(+ .show) {
  border-bottom-color: transparent;
}

.amenities-display {
  flex: 1;
  width: 100%;
}
.amenities-display img {
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 2rem;
  /* Maintain aspect ratio on mobile */
  aspect-ratio: 16/9;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
             Tab Floor Plans
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
/* Ensure content is hidden when .show is NOT present */
.pf {
  background-color: #f0f0f0;
  padding: 2rem 3rem;
}
@media (max-width: 1024px) {
  .pf {
    background-color: transparent;
    padding: 0;
  }
}

.floorplan-viewer .sidebar {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  flex: 0 0 20%;
}
@media (max-width: 1024px) {
  .floorplan-viewer .sidebar {
    width: 100%;
    flex: auto;
    flex-direction: row !important;
    margin-bottom: 1.5rem;
    gap: 0;
  }
}
.floorplan-viewer .sidebar .room-btn {
  background: none;
  border: none;
  padding: 1.5rem 2.5rem;
  text-align: left;
  font-weight: 600;
  cursor: pointer;
  border-radius: 5rem;
  transition: all 0.5s ease;
  text-transform: uppercase;
  font-size: 1.3rem;
  color: var(--text-dark);
}
@media (max-width: 767px) {
  .floorplan-viewer .sidebar .room-btn {
    text-align: center;
    line-height: 1.2;
    padding: 1rem 1.5rem;
  }
}
.floorplan-viewer .sidebar .room-btn.show, .floorplan-viewer .sidebar .room-btn:hover {
  background-color: var(--yellow);
  outline: none;
}

.main-card {
  background: var(--white);
  border-radius: 1rem;
  box-shadow: 0 0.4rem 2rem rgba(0, 0, 0, 0.08);
  border: 1px solid rgba(0, 0, 0, 0.1);
  flex-grow: 1;
}
.main-card .tabs-header {
  display: flex;
  gap: 2.5rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  margin: 2rem;
}
.main-card .tabs-header .type-btn {
  background: none;
  border: none;
  padding: 1rem 0 1.9rem;
  font-size: 1.3rem;
  font-weight: 600;
  color: var(--text-muted);
  cursor: pointer;
  position: relative;
  transition: color 0.5s;
}
.main-card .tabs-header .type-btn.show, .main-card .tabs-header .type-btn:hover {
  color: var(--black);
}
.main-card .tabs-header .type-btn.show::after, .main-card .tabs-header .type-btn:hover::after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100%;
  height: 0.2rem;
  background: var(--black);
}
.main-card.show {
  opacity: 1;
  visibility: visible;
  height: auto;
  overflow: visible;
  transform: translateY(0);
}

.main-card,
.plans-grid {
  opacity: 0;
  visibility: hidden;
  height: 0;
  overflow: hidden;
  transition: opacity 0.5s ease, transform 0.5s ease;
  transform: translateY(10px);
}
.main-card.show,
.plans-grid.show {
  opacity: 1;
  visibility: visible;
  height: auto;
  overflow: visible;
  transform: translateY(0);
}

.plans-grid {
  justify-content: space-around;
  align-items: flex-end;
  padding: 0;
  gap: 2rem;
}
.plans-grid.show {
  display: grid;
  gap: 30px;
  margin: 2rem;
  padding: 2rem 0 1rem;
}
.plans-grid .plan-item {
  text-align: center;
  padding: 0 8rem;
}
.plans-grid .plan-item img {
  max-width: 100%;
  height: auto;
  transition: opacity 0.5s ease, transform 0.5s ease;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                  Resources section                
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.rs .bg-grey {
  padding: 2.5rem 3rem;
}
.rs .bg-grey h3 {
  padding-bottom: 6rem;
  font-size: 2.5rem;
}
@media (max-width: 1024px) {
  .rs .bg-grey h3 {
    padding-bottom: 4rem;
  }
}
@media (max-width: 1024px) {
  .rs .bg-grey img.icon {
    width: 5rem;
  }
}

.se-date {
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  padding: 1.7rem 0;
}
@media (max-width: 1024px) {
  .se-date {
    gap: 5rem;
  }
}
.se-date p {
  padding-bottom: 0;
}
.se-date span {
  color: #6b7292;
  font-size: 2.5rem;
  font-weight: 600;
}

.s-pie {
  gap: 2.7rem;
  position: relative;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  border-radius: 0;
  padding: 0;
  border: none;
  height: 10rem;
  justify-content: flex-start;
}
.s-pie .percent-circle {
  width: 10rem;
  height: 10rem;
}
.s-pie .percent-text {
  font-size: 3.4rem;
}
@media (max-width: 767px) {
  .s-pie .percent-text {
    font-size: 2.5rem;
  }
}

.cu-s {
  bottom: 5rem;
  top: auto;
  right: 4rem;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                 Generic tab 1                
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.tab-container .tab-menu,
.tab-container2 .tab-menu {
  overflow-x: auto;
  /* Enable swipe on mobile/tablet */
  -webkit-overflow-scrolling: touch;
  /* Smooth swipe for iOS */
  scrollbar-width: none;
  /* Hide scrollbar for Firefox */
}
.tab-container .tab-menu::-webkit-scrollbar,
.tab-container2 .tab-menu::-webkit-scrollbar {
  display: none;
  /* Hide scrollbar for Chrome/Safari */
}
.tab-container .tab-menu .tab-btn,
.tab-container2 .tab-menu .tab-btn {
  position: relative;
  background: #fafafb;
  border: 1px solid #e7eeec;
  margin-bottom: 1.6rem;
  text-align: left;
  padding: 2rem;
  cursor: pointer;
  font-size: 1.6rem;
  color: var(--black);
  transition: all 0.3s ease;
  flex-shrink: 0;
  /* Keeps buttons from squishing */
}
.tab-container .tab-menu .tab-btn:last-child,
.tab-container2 .tab-menu .tab-btn:last-child {
  margin-bottom: 0;
}
.tab-container .tab-menu .tab-btn::after,
.tab-container2 .tab-menu .tab-btn::after {
  background: url(45e05e77fdf59be9fb18.svg) right center no-repeat;
  background-size: contain;
  width: 1.5rem;
  height: 1.5rem;
  content: "";
  position: absolute;
  right: 2rem;
  top: 50%;
  transform: translateY(-58%);
  opacity: 0;
}
.tab-container .tab-menu .tab-btn:hover,
.tab-container2 .tab-menu .tab-btn:hover {
  color: var(--white);
  background: var(--black);
}
.tab-container .tab-menu .tab-btn:hover::after,
.tab-container2 .tab-menu .tab-btn:hover::after {
  opacity: 1;
}
.tab-container .tab-menu .tab-btn.show,
.tab-container2 .tab-menu .tab-btn.show {
  color: var(--white);
  background: var(--black);
}
.tab-container .tab-menu .tab-btn.show::after,
.tab-container2 .tab-menu .tab-btn.show::after {
  opacity: 1;
}
.tab-container .tab-menu .tab-btn,
.tab-container2 .tab-menu .tab-btn {
  /* Compact padding for smaller mobile screens */
}
@media (max-width: 480px) {
  .tab-container .tab-menu .tab-btn,
  .tab-container2 .tab-menu .tab-btn {
    padding: 1.2rem 1.6rem;
    font-size: 1.4rem;
  }
}
.tab-container .tab-menu .tab-btn.tab-proj,
.tab-container2 .tab-menu .tab-btn.tab-proj {
  background: none;
  text-transform: uppercase;
  font-weight: 600;
  border-top: 0;
  border-left: 0;
  border-right: 0;
  margin-bottom: 0;
  padding-left: 0;
}
@media (max-width: 1024px) {
  .tab-container .tab-menu .tab-btn.tab-proj,
  .tab-container2 .tab-menu .tab-btn.tab-proj {
    width: auto !important;
  }
}
@media (max-width: 767px) {
  .tab-container .tab-menu .tab-btn.tab-proj,
  .tab-container2 .tab-menu .tab-btn.tab-proj {
    border: none !important;
  }
}
.tab-container .tab-menu .tab-btn.tab-proj:first-child,
.tab-container2 .tab-menu .tab-btn.tab-proj:first-child {
  border-top: 1px solid #e7eeec;
}
@media (max-width: 1024px) {
  .tab-container .tab-menu .tab-btn.tab-proj:first-child,
  .tab-container2 .tab-menu .tab-btn.tab-proj:first-child {
    border-top: none;
  }
}
.tab-container .tab-menu .tab-btn.tab-proj:hover,
.tab-container2 .tab-menu .tab-btn.tab-proj:hover {
  color: var(--orange);
  padding-left: 2.5rem;
}
.tab-container .tab-menu .tab-btn.tab-proj.show,
.tab-container2 .tab-menu .tab-btn.tab-proj.show {
  color: var(--orange);
  padding-left: 2.5rem;
}
.tab-container .tab-menu .tab-btn.tab-proj::after,
.tab-container2 .tab-menu .tab-btn.tab-proj::after {
  background: url(f8271f674209ce984564.svg) right center no-repeat;
  transition: all 0.3s ease;
  right: auto;
  left: 0;
}
.tab-container .tab-content-wrapper,
.tab-container2 .tab-content-wrapper {
  min-height: 20rem;
}
.tab-container .tab-content-wrapper .bg-c,
.tab-container2 .tab-content-wrapper .bg-c {
  background-color: var(--yellow);
  padding: 4rem;
  height: 100%;
}
@media (max-width: 767px) {
  .tab-container .tab-content-wrapper .bg-c,
  .tab-container2 .tab-content-wrapper .bg-c {
    padding: 2rem;
  }
}
.tab-container .tab-content-wrapper .tab-pane,
.tab-container2 .tab-content-wrapper .tab-pane {
  display: none;
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 0.4s ease, transform 0.4s ease;
}
.tab-container .tab-content-wrapper .tab-pane h3,
.tab-container2 .tab-content-wrapper .tab-pane h3 {
  text-transform: uppercase;
  padding-bottom: 2rem;
}
.tab-container .tab-content-wrapper .tab-pane.show,
.tab-container2 .tab-content-wrapper .tab-pane.show {
  display: block;
  opacity: 1;
  transform: translateY(0);
}
.tab-container .tab-content-wrapper.proj-content-wrapper,
.tab-container2 .tab-content-wrapper.proj-content-wrapper {
  background: none;
  padding: auto;
}
.tab-container .tab-content-wrapper.proj-content-wrapper .img-b,
.tab-container2 .tab-content-wrapper.proj-content-wrapper .img-b {
  height: 37rem;
  object-fit: cover;
}
.tab-container .tab-content-wrapper.proj-content-wrapper .bg-c,
.tab-container2 .tab-content-wrapper.proj-content-wrapper .bg-c {
  background: none;
  padding: 0;
}
.tab-container .tab-content-wrapper.proj-content-wrapper .bg-c .tab-pane.show,
.tab-container2 .tab-content-wrapper.proj-content-wrapper .bg-c .tab-pane.show {
  display: flex !important;
}
@media (max-width: 1024px) {
  .tab-container .tab-content-wrapper.proj-content-wrapper .bg-c .tab-pane.show,
  .tab-container2 .tab-content-wrapper.proj-content-wrapper .bg-c .tab-pane.show {
    gap: 2.5rem;
  }
}
.tab-container .tab-content-wrapper.proj-content-wrapper .bg-c .r-info .btn,
.tab-container2 .tab-content-wrapper.proj-content-wrapper .bg-c .r-info .btn {
  width: auto;
}
.tab-container .tab-content-wrapper.proj-content-wrapper .bg-c .r-info .text p,
.tab-container2 .tab-content-wrapper.proj-content-wrapper .bg-c .r-info .text p {
  margin-bottom: 1.5rem;
}
.tab-container .tab-content-wrapper.proj-content-wrapper .bg-c .r-info .r-info-h,
.tab-container2 .tab-content-wrapper.proj-content-wrapper .bg-c .r-info .r-info-h {
  width: 100%;
}
.tab-container .tab-content-wrapper.proj-content-wrapper .bg-c .r-info .r-info-h .col-61 p,
.tab-container2 .tab-content-wrapper.proj-content-wrapper .bg-c .r-info .r-info-h .col-61 p {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.tab-container .tab-content-wrapper.proj-content-wrapper .bg-c .r-info .r-info-h .col-61 p img,
.tab-container2 .tab-content-wrapper.proj-content-wrapper .bg-c .r-info .r-info-h .col-61 p img {
  width: 3.5rem;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                 Generic tab 2           
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.tab-container2 .tab-menu {
  border-bottom: 1px solid #e7eeec;
  margin-bottom: 2.6rem;
  gap: 5rem;
}
.tab-container2 .tab-menu .tab-btn {
  text-transform: uppercase;
  border: none;
  font-size: 1.5rem;
  font-weight: 600;
  margin-bottom: 0;
  background: none;
  padding: 2rem 0;
  border-bottom: 2px solid transparent;
}
.tab-container2 .tab-menu .tab-btn:hover {
  border-bottom: 2px solid var(--orange);
  background: none;
  color: var(--orange);
}
.tab-container2 .tab-menu .tab-btn::after {
  display: none;
}
.tab-container2 .tab-menu .tab-btn.show {
  border-bottom: 2px solid var(--orange);
  background: none;
  color: var(--orange);
}
.tab-container2 .tab-content-wrapper .bg-c {
  background: none;
  padding: 0;
}
.tab-container2 .tab-content-wrapper .bg-c .percent {
  gap: 1.5rem;
  height: auto;
}
.tab-container2 .tab-content-wrapper .bg-c .percent span {
  font-size: 1.5rem;
  font-weight: 600;
}
.tab-container2 .tab-content-wrapper .tab-pane .img-l,
.tab-container2 .tab-content-wrapper .tab-pane .img-sm {
  object-fit: cover;
}
.tab-container2 .tab-content-wrapper .tab-pane .img-l {
  height: 58rem;
}
@media (max-width: 767px) {
  .tab-container2 .tab-content-wrapper .tab-pane .img-l {
    margin-bottom: 2rem;
    margin-top: 2rem;
    height: auto;
  }
}
.tab-container2 .tab-content-wrapper .tab-pane .img-sm {
  height: 20.3rem;
}
.tab-container2 .tab-content-wrapper .tab-pane.show {
  display: flex !important;
}
@media (max-width: 1024px) {
  .tab-container2 .tab-content-wrapper .tab-pane.show {
    gap: 2.5rem;
  }
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                 Generic tab 2           
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.amenities-row {
  align-items: flex-end;
  gap: 2rem;
  padding: 4rem 0;
  flex-wrap: nowrap;
}
@media (max-width: 767px) {
  .amenities-row {
    padding: 4rem 0 0;
  }
}
.amenities-row .amenity-item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  flex: 1;
}
.amenities-row .amenity-item img {
  width: 4.5rem;
  height: auto;
  margin-bottom: 1.5rem;
}
@media (max-width: 1024px) {
  .amenities-row {
    flex-wrap: wrap;
    justify-content: flex-start !important;
  }
  .amenities-row .amenity-item {
    flex: 0 0 calc(33.33% - 2rem);
    margin-bottom: 3rem;
  }
}
@media (max-width: 767px) {
  .amenities-row .amenity-item {
    flex: 0 0 calc(50% - 2rem);
    text-align: center;
    align-items: center;
  }
}

@media (max-width: 767px) {
  .stats {
    padding-top: 0 !important;
  }
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                 Team Popup         
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.team-popup-overlay .vbox-inline {
  background: var(--white) !important;
  width: 100% !important;
  padding: 0 !important;
  max-width: 100% !important;
  border-top-left-radius: 3rem;
  border-bottom-left-radius: 3rem;
}
.team-popup-overlay .vbox-container {
  padding: 0 0;
}
.team-popup-overlay .vbox-close {
  background: var(--yellow);
  border-radius: 99rem;
  width: 3rem;
  height: 3rem;
  top: 1.5rem;
  right: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
}
@media (max-width: 1024px) {
  .team-popup-overlay .vbox-close {
    top: 2.5rem;
  }
}
@media (max-width: 767px) {
  .team-popup-overlay .vbox-close {
    top: 1.5rem;
  }
}
.team-popup-overlay .vbox-close svg {
  width: 1rem;
  height: 1rem;
}
.team-popup-overlay .vbox-close svg path {
  stroke: var(--black);
}

/* VenoBox Overlay Overrides */
.vbox-overlay.team-popup-overlay {
  background: rgba(0, 0, 0, 0.4);
  backdrop-filter: blur(0.8rem);
}
.vbox-overlay.team-popup-overlay .vbox-container {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
}
.vbox-overlay.team-popup-overlay .vbox-content {
  max-width: 70% !important;
  padding: 0;
  background: transparent;
}
@media (max-width: 767px) {
  .vbox-overlay.team-popup-overlay .vbox-content {
    max-width: 100% !important;
  }
}

/* Internal Popup Styling */
.team-popup-content {
  background: var(--white);
  border-radius: 2rem;
  padding: 6rem 4rem;
  position: relative;
  box-shadow: 0 1rem 5rem rgba(0, 0, 0, 0.1);
  height: 100vh;
  display: flex;
  align-items: center;
}
@media (max-width: 767px) {
  .team-popup-content {
    padding: 3rem 1.8rem;
    overflow-y: auto;
  }
}
.team-popup-content h2 {
  font-size: 2.5rem;
  padding-bottom: 1rem;
}
.team-popup-content .popup-flex {
  display: flex;
  gap: 4rem;
  align-items: flex-start;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  padding: 4rem 0;
}
@media (max-width: 1024px) {
  .team-popup-content .popup-flex {
    gap: 1.5rem;
    border: none;
    padding: 3rem 0;
    flex-direction: column;
  }
}
.team-popup-content .popup-left {
  flex: 0 0 45%;
}
@media (max-width: 1024px) {
  .team-popup-content .popup-left {
    width: 100%;
  }
}
@media (max-width: 1024px) {
  .team-popup-content .popup-left .popup-meta {
    margin-top: 3rem;
  }
}
.team-popup-content .popup-left .popup-img {
  width: 100%;
  border-radius: 1.2rem;
  margin-bottom: 2rem;
  object-fit: cover;
  height: 50rem;
}
@media (max-width: 1024px) {
  .team-popup-content .popup-left .popup-img {
    height: auto;
  }
}
.team-popup-content .popup-left .popup-name {
  font-size: 2.4rem;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 0.5rem;
}
.team-popup-content .popup-left .popup-role {
  font-size: 2.5rem;
  font-weight: 300;
}
.team-popup-content .popup-right {
  flex: 1;
  font-size: 1.5rem;
  line-height: 1.6;
  color: #333;
  padding-top: 1rem;
}
.team-popup-content .popup-right .popup-meta {
  padding-bottom: 2rem;
}
.team-popup-content {
  /* The Orange Close Button */
}
.team-popup-content .popup-close {
  position: absolute;
  top: 2rem;
  right: 2rem;
  width: 4rem;
  height: 4rem;
  background: var(--orange);
  border: none;
  border-radius: 50%;
  color: var(--white);
  font-size: 2.4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: transform 0.2s;
  z-index: 10;
}
.team-popup-content .popup-close:hover {
  transform: scale(1.1);
}

/* Mobile Responsive */
@media (max-width: 1024px) {
  .team-popup-content .popup-flex {
    flex-direction: column;
  }
  .team-popup-content .popup-left {
    flex: 0 0 100%;
  }
}
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                360        
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.video-360 .tab-menu {
  gap: 1.5rem;
  z-index: 5;
  top: 4rem;
  left: 0;
  right: 0;
  border-bottom: none !important;
  margin-bottom: 0;
  justify-content: center;
}
.video-360 .tab-menu .tab-btn {
  border-radius: 9rem;
  background: var(--white);
  padding: 1.5rem 3rem;
  border-bottom: none !important;
}
.video-360 .tab-menu .tab-btn.show, .video-360 .tab-menu .tab-btn:hover {
  background: var(--yellow);
  border: none;
  color: var(--black);
}
@media (max-width: 1024px) {
  .video-360 .vh-85 {
    height: 45vh !important;
  }
}

.tour-container {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 1rem;
}

iframe {
  width: 100%;
  height: 100%;
  border: none;
}

/* The Overlay acts as a shield to stop the zoom scroll */
.tour-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.1);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 10;
  pointer-events: all;
  /* This blocks the mouse from reaching the iframe */
  transition: opacity 0.5s ease;
}
.tour-overlay .arrows {
  background: url(868b8f8d9eee2d44c0b4.png) no-repeat center;
  background-size: contain;
  height: 8rem;
  background-repeat: no-repeat;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 3rem;
  font-weight: 600;
  padding-top: 0.7rem;
  gap: 1rem;
}
.tour-overlay .text p {
  font-weight: 600;
  text-transform: uppercase;
  line-height: 1;
}
@media (max-width: 767px) {
  .tour-overlay .text p {
    font-size: 1rem;
  }
}

/* When the user hovers, we hide the shield so they can interact */
.tour-container:hover .tour-overlay {
  opacity: 0;
  pointer-events: none;
  /* Now the mouse reaches the iframe for 360 view */
}

/* Glass Circle Style */
.glass-circle {
  width: 20rem;
  height: 20rem;
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.3);
  color: var(--white);
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media (max-width: 767px) {
  .glass-circle {
    width: 15rem;
    height: 15rem;
  }
}

.proj-sticky-btn {
  width: 42rem;
  position: absolute;
  bottom: 15rem;
  right: 0;
  z-index: 9;
  display: flex;
  gap: 1rem;
}
@media (max-width: 1024px) {
  .proj-sticky-btn {
    right: 1rem;
    display: flex;
    justify-content: flex-end;
    bottom: 8rem;
    gap: inherit;
  }
}
@media (max-width: 767px) {
  .proj-sticky-btn {
    bottom: 3rem;
  }
}
@media (max-width: 1024px) {
  .proj-sticky-btn a {
    margin-left: 1rem;
  }
}

@media (max-width: 1024px) {
  .page-property-detail .r-info,
  .community-detail-page .r-info {
    width: 100%;
    justify-content: flex-start !important;
    padding-top: 2rem;
  }
}
@media (max-width: 1024px) {
  .page-property-detail .r-info .r-info-h,
  .community-detail-page .r-info .r-info-h {
    width: 74%;
  }
}
@media (max-width: 767px) {
  .page-property-detail .r-info .r-info-h,
  .community-detail-page .r-info .r-info-h {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .page-property-detail .card-left,
  .community-detail-page .card-left {
    padding-top: 0;
  }
}
@media (max-width: 767px) {
  .page-property-detail .card-right,
  .community-detail-page .card-right {
    width: 100%;
  }
}
.page-property-detail .mob-full-img,
.community-detail-page .mob-full-img {
  min-height: 100vh;
}
@media (max-width: 1024px) {
  .page-property-detail .mob-full-img,
  .community-detail-page .mob-full-img {
    min-height: 70rem !important;
  }
}
@media (max-width: 767px) {
  .page-property-detail .mob-full-img,
  .community-detail-page .mob-full-img {
    min-height: 40rem !important;
  }
}

@media (max-width: 767px) {
  .st {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
}

@media (max-width: 767px) {
  .tiny-editor-tc {
    margin-top: 3rem;
  }
}

@media (max-width: 767px) {
  .g-6 {
    --bs-gutter-y: 3rem;
  }
}

@media (max-width: 1024px) {
  .tab-menu-scroll {
    flex-direction: row !important;
    gap: 2rem;
    padding-top: 1rem;
    padding-bottom: 2rem;
  }
}

@media (max-width: 767px) {
  .m-2rem {
    margin-top: 2rem;
  }
}

@media (max-width: 1024px) {
  .cu-v2 .tab-pane {
    gap: 0 !important;
  }
}
@media (max-width: 767px) {
  .cu-v2 .tab-pane.show {
    flex-direction: column-reverse;
  }
}
@media (max-width: 767px) {
  .cu-v2 .tab-pane .col-6 {
    width: 100%;
  }
}

@media (max-width: 1024px) {
  .s-faq .tab-menu {
    flex-direction: unset !important;
    gap: 2rem;
  }
}
@media (max-width: 767px) {
  .s-faq .tab-menu {
    gap: 1rem;
  }
}
@media (max-width: 1024px) {
  .s-faq .tab-menu .tab-btn {
    width: auto !important;
  }
}
@media (max-width: 1024px) {
  .s-faq .tab-menu .tab-btn::after {
    display: none;
  }
}

.media-center .tiny-editor.tagline-miller h2 {
  padding-bottom: 1rem;
}

.bg-yellow a.btn-white {
  border: 1px solid #fbd166;
}

.p-icon-expand {
  top: auto;
  bottom: 2rem;
}

@media (max-width: 1024px) {
  .c-department span.wpcf7-form-control-wrap {
    width: 100%;
  }
}
.c-department span.wpcf7-not-valid-tip {
  bottom: -20px !important;
}
.c-department span.wpcf7-form-control {
  justify-content: flex-start;
  gap: 1rem;
  display: flex;
}
@media (max-width: 1024px) {
  .c-department span.wpcf7-form-control {
    width: 100%;
  }
}
.c-department span.wpcf7-form-control .wpcf7-list-item {
  width: 32%;
}
.c-department span.wpcf7-form-control .wpcf7-list-item label {
  background-color: var(--white);
  border-radius: 1.2rem;
  padding: 1.1rem 0.9rem;
  transition: all 0.3s ease;
  border: 1px solid #758091;
  justify-content: space-between;
  gap: 0.5rem;
  margin-bottom: 0;
}
.c-department span.wpcf7-form-control .wpcf7-list-item label span.wpcf7-list-item-label {
  line-height: 1;
  padding-top: 0.2rem;
}
.c-department span.wpcf7-form-control .wpcf7-list-item label input {
  width: auto;
  margin-bottom: 0;
}
.c-department span.wpcf7-form-control .wpcf7-list-item label:hover {
  background-color: var(--yellow);
  border: 1px solid transparent;
}
.c-department span.wpcf7-list-item-label {
  font-size: 1.3rem;
}

.col-card-3 img.line3 {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 3;
  max-width: 90%;
  width: 100%;
}
@media (max-width: 1024px) {
  .col-card-3 img.line3 {
    display: none;
  }
}
.col-card-3 img.icon {
  width: 6rem;
  height: 6rem;
}
.col-card-3 .col-lg-4 {
  padding-left: 4rem;
  padding-right: 4rem;
}
@media (max-width: 767px) {
  .col-card-3 .col-lg-4 {
    text-align: center;
  }
}
@media (max-width: 1024px) {
  .col-card-3 .col-lg-4:first-child, .col-card-3 .col-lg-4:nth-child(2), .col-card-3 .col-lg-4:nth-child(3) {
    padding-left: calc(var(--bs-gutter-x) * 0.5) !important;
  }
}
.col-card-3 .col-lg-4:nth-child(3) {
  padding-left: 10rem;
}
@media (max-width: 767px) {
  .col-card-3 .col-lg-4:nth-child(3) {
    padding-left: 4rem;
  }
}
.col-card-3 .col-lg-4:nth-child(2) {
  padding-left: 10rem;
}
@media (max-width: 767px) {
  .col-card-3 .col-lg-4:nth-child(2) {
    padding-left: 4rem;
  }
}
.col-card-3 .col-lg-4:first-child {
  padding-left: 10rem;
  padding-right: 10rem;
}
@media (max-width: 767px) {
  .col-card-3 .col-lg-4:first-child {
    padding-left: 4rem;
  }
}

.d-desktop.links {
  padding-right: 8.4rem;
}

.landmark {
  top: 1rem;
  left: 1.5rem;
  gap: 1.5rem;
  max-width: 23rem;
  background: rgba(0, 0, 0, 0.4);
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
  backdrop-filter: blur(1.2rem);
  -webkit-backdrop-filter: blur(1.2rem);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 1rem;
  padding: 2rem;
  color: var(--white);
}
.landmark .d-flex {
  gap: 0.6rem;
}

.align-self-end {
  align-self: flex-end;
}

@media (max-width: 1024px) {
  .c-gal {
    display: none;
  }
}

@media (max-width: 1024px) {
  .mob-col-reverse {
    flex-direction: column-reverse;
  }
}

@media (max-width: 1024px) {
  .other-loc .vid-banner img {
    width: 100%;
  }
}

@media (max-width: 1024px) {
  .cv-info h4 {
    padding-bottom: 1rem;
  }
}
@media (max-width: 767px) {
  .cv-info h4 {
    padding-bottom: 0.5rem;
  }
}

@media (max-width: 767px) {
  .hero-minimal.offers {
    padding-top: 3rem;
    padding-bottom: 1.5rem;
    min-height: auto !important;
  }
}
@media (max-width: 767px) {
  .hero-minimal.offers .hero-media {
    top: 50%;
    transform: translateY(-50%);
  }
}

@media (max-width: 1024px) {
  .pie-info {
    flex-direction: row !important;
    align-items: center !important;
  }
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
              Offers filter : Mobile
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.mob-filter {
  display: none !important;
}

.filter-container {
  position: relative;
  z-index: 3 !important;
}

@media screen and (max-width: 767px) {
  .filter-container {
    padding: 1.5rem 0;
  }
  .filter-container .mob-filter-bar {
    max-height: 0;
    opacity: 0;
    pointer-events: none;
    transition: max-height 0.4s ease, opacity 0.3s ease, margin-top 0.3s ease;
  }
  .filter-container .mob-filter-bar.active {
    max-height: 50rem;
    opacity: 1;
    margin-top: 1.5rem;
    pointer-events: auto;
  }
  .filter-container .mob-filter-bar .filter-group {
    justify-content: flex-start;
    width: 100%;
    gap: 1.5rem;
  }
  .filter-container .mob-filter-bar .filter-group .select-wrapper {
    width: 48% !important;
    border: 1px solid #e0e0e0;
    border-radius: 3rem;
    padding: 1rem 2rem;
  }
  .filter-container .mob-filter-bar .filter-group .select-wrapper .chevron {
    right: 1.8rem;
  }
  .filter-container .mob-filter {
    cursor: pointer;
    display: flex !important;
  }
  .filter-container .mob-filter .arrow {
    transition: transform 0.3s ease;
  }
  .filter-container .mob-filter .arrow.is-open {
    transform: rotate(180deg);
  }
}
@media (max-width: 1024px) {
  .page-residential-apartments .hero-minimal {
    min-height: inherit !important;
  }
}

@media (max-width: 767px) {
  .hero-minimal.min-vh-51 {
    min-height: 25rem !important;
  }
}

@media (max-width: 1024px) {
  .page-invest-reportage .separator {
    margin-top: 8rem;
  }
}
@media (max-width: 767px) {
  .page-invest-reportage .separator {
    margin-top: 14rem;
  }
}
@media (max-width: 767px) {
  .page-invest-reportage .h-section-5 {
    margin-top: 8rem;
  }
}
@media (max-width: 767px) {
  .page-invest-reportage .h-section-5 .pt-md-22 {
    padding-bottom: 4rem;
  }
}

@media (max-width: 1024px) {
  .offers-d-f .sharp-border {
    display: block;
  }
}

@media (max-width: 767px) {
  #blog.sy.pb-0.pt-0 {
    padding-bottom: 3rem !important;
  }
}

.flip-card-o .flip-card-inner {
  min-height: 38rem;
}
.flip-card-o .info-show {
  left: 0;
  right: 0;
  bottom: 0;
  padding: 1.5rem 1.3rem;
  border-radius: 0.8rem;
  width: calc(100% - 2rem);
  opacity: 0;
  visibility: hidden;
  transition: all 0.4s ease;
  position: absolute;
  margin: 0 auto;
  background: rgba(0, 0, 0, 0.26);
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
  backdrop-filter: blur(0.9rem);
  -webkit-backdrop-filter: blur(60.9rem);
  border: 1px solid rgba(255, 255, 255, 0.19);
}
.flip-card-o .info-show h5 {
  display: none;
}
.flip-card-o .info-show p {
  color: var(--white);
  text-align: left;
}
.flip-card-o:hover .info-show {
  opacity: 1;
  visibility: visible;
  bottom: 1rem;
}

#lottieAnim {
  height: 100%;
  width: 100%;
  pointer-events: none;
  top: 41%;
}
@media (max-width: 1024px) {
  #lottieAnim.p-center {
    top: 29%;
  }
}
@media (max-width: 767px) {
  #lottieAnim.p-center {
    top: 19%;
  }
}

.z-10 {
  position: relative;
  z-index: 33;
}

.banner-proj .card-left h1 {
  padding-bottom: 0;
}
.banner-proj .card-right .r-info-h {
  margin-left: auto;
}
.banner-proj .card-right .r-info-h a {
  margin-top: 1rem !important;
}

@media (min-width: 1025px) {
  .h-section-3 .z-10 .min-vh-70 {
    min-height: 77vh !important;
  }
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                 Filter Dropdown        
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.custom-select {
  display: none;
}

#projects-filter {
  width: 100%;
}

.select-wrapper {
  position: relative;
  width: 100%;
  font-family: sans-serif;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  overflow: visible !important;
}
@media (max-width: 1024px) {
  .select-wrapper {
    padding: 1rem 4rem 1rem 2rem !important;
  }
}
.select-wrapper .chevron {
  transition: transform 0.3s ease;
}
.select-wrapper.active .select-options {
  display: block;
}
.select-wrapper.active .chevron {
  transform: rotate(180deg);
}
@media (max-width: 767px) {
  .select-wrapper.active::after {
    display: none !important;
  }
}

.select-styled {
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
}

.select-options {
  position: absolute;
  top: calc(100% + 1rem);
  left: 0;
  right: 0;
  z-index: 9999;
  background: var(--white);
  border: 1px solid #F0F0F0;
  border-radius: 0.5rem;
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.1);
  max-height: 20.6rem;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
  pointer-events: auto;
  display: none;
  margin: 0;
  padding: 0;
  list-style: none;
}
.select-options::-webkit-scrollbar {
  width: 2px;
}
.select-options::-webkit-scrollbar-track {
  background: transparent;
}
.select-options::-webkit-scrollbar-thumb {
  background: var(--yellow);
  border-radius: 1rem;
}

.select-options li {
  padding: 1rem 1.5rem;
  cursor: pointer;
  border-bottom: 1px solid #f2f2f2;
  transition: background 0.15s ease;
  font-size: 1.4rem;
}
.select-options li:last-child {
  border-bottom: none;
}
.select-options li:hover, .select-options li:active {
  background-color: #F0F0F0 !important;
}

.select-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 998;
  display: none;
  background: rgba(0, 0, 0, 0);
}

@media screen and (max-width: 1440px) {
  .lottie-a img {
    width: 30rem;
  }
}

.c-map {
  flex-direction: column-reverse;
}

#offer-wrapper h6 a {
  font-size: 2rem;
  font-weight: 700;
  transition: all 0.3s ease;
}
#offer-wrapper h6:hover {
  color: var(--yellow);
}
#offer-wrapper .cu-blocks:hover .position-relative a img {
  transform: scale(1.1, 1.1);
}
#offer-wrapper .position-relative a {
  display: block;
  overflow: hidden;
  border-radius: 1rem;
}
#offer-wrapper .position-relative a img {
  transition: all 0.3s ease;
}

.offers-banner-info {
  padding-top: 13rem;
}
@media (max-width: 1024px) {
  .offers-banner-info {
    padding-top: 9rem;
    width: 50%;
  }
}
@media (max-width: 767px) {
  .offers-banner-info {
    padding-top: 3rem;
    width: 86%;
  }
}

.offers-c {
  margin-top: -5.3rem;
}
@media (max-width: 1024px) {
  .offers-c {
    margin-top: 0;
  }
}

@media (max-width: 767px) {
  .left.v2.two-column-img .tiny-editor {
    padding: 3rem !important;
  }
}

.banner-offer {
  margin-top: 8rem;
}
@media (max-width: 1024px) {
  .banner-offer {
    margin-top: 7rem;
  }
}
.banner-offer h2 {
  padding-bottom: 0 !important;
}
@media (max-width: 767px) {
  .banner-offer .m-left {
    padding-top: 15rem;
  }
}

@media (max-width: 1024px) {
  .offers-two-col-14 .col-lg-6 {
    margin-top: var(--bs-gutter-y) !important;
  }
}
@media (max-width: 1024px) {
  .offers-two-col-14 .col-lg-6 img {
    height: 25vh;
    object-fit: cover;
  }
}
@media (max-width: 767px) {
  .offers-two-col-14 .col-lg-6 img {
    height: auto;
  }
}
@media (max-width: 1024px) {
  .offers-two-col-14 .g-6 {
    --bs-gutter-x: 0;
  }
}

@media (max-width: 1024px) {
  .offer-sep {
    display: none;
  }
}

.card .card-img-top a {
  display: block;
  overflow: hidden;
  border-radius: 1rem;
}
.card .card-img-top a img {
  transition: all 0.3s ease;
}
.card:hover .card-img-top a img {
  transform: scale(1.1, 1.1);
}

.acf-map {
  width: 100% !important;
  height: 758px !important;
  display: block !important;
  background: #ccc; /* If you see a gray box, the HTML/CSS is fine, but JS/API is failing */
}

.breadcrumbs span {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  line-height: 1;
}
.breadcrumbs span img.b-arrow {
  width: 1rem;
  flex-shrink: 0;
}
.breadcrumbs span a {
  transition: all 0.3s ease;
}
.breadcrumbs span a:hover {
  color: var(--orange);
}

#main-amenity-img {
  transition: opacity 0.4s ease-in-out, transform 0.4s ease-out;
  will-change: opacity, transform;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
               Popup
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
@media (min-width: 1025px) {
  .vbox-container {
    overflow: hidden !important;
  }
}
.vbox-backdrop {
  background: rgba(57, 57, 57, 0.8) !important;
  backdrop-filter: blur(16px) !important;
}

.vbox-open {
  overflow: visible !important;
}

.popup {
  border-radius: 0rem;
  position: relative;
}
.popup * {
  color: var(--orange);
}
.popup p,
.popup span {
  font-size: 1.6rem;
}

.vbox-inline {
  display: flex;
  align-items: center;
  justify-content: center;
  background: none !important;
  box-shadow: none !important;
}
@media (min-width: 1025px) {
  .vbox-inline {
    width: 95% !important;
  }
}

.popup-close {
  position: absolute;
  top: 2.5rem;
  right: 2.5rem;
  width: 3rem;
  height: 3rem;
  cursor: pointer;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  border-radius: 0.6rem;
  border: 1px solid rgba(76, 140, 224, 0.2);
  background: var(--cream);
}

.home .vbox-close {
  display: none !important;
}

.vbox-close svg path {
  stroke: var(--yellow);
}

a.veno-box:hover .gal-desc {
  opacity: 1;
  visibility: visible;
  bottom: 0.9rem;
}
a .gal-desc {
  left: 0;
  right: 0;
  bottom: 0rem;
  padding: 1.5rem 1.3rem;
  background: var(--white);
  border-radius: 0.8rem;
  width: calc(100% - 1.6rem);
  opacity: 0;
  visibility: hidden;
  transition: all 0.4s ease;
}
@media (max-width: 1024px) {
  a .gal-desc {
    opacity: 1 !important;
    visibility: visible !important;
    bottom: 0.8rem;
  }
}
a .gal-desc .row {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
a .gal-desc .row:last-child {
  border-bottom: 0;
  padding-bottom: 0 !important;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                Terms 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.page-terms .content-terms {
  background: transparent;
  margin-top: -10rem;
}
@media (max-width: 767px) {
  .page-terms .content-terms {
    margin-top: -6rem;
  }
}
.page-terms p,
.page-terms ul,
.page-terms ol,
.page-terms h2 {
  padding-bottom: 2rem;
  color: #474E59;
}
.page-terms h2 {
  padding-top: 2rem;
  text-transform: capitalize;
  font-size: 3rem;
}
.page-terms a {
  text-decoration: underline;
  transition: all 0.3s ease;
  color: #474E59;
}
.page-terms a:hover {
  color: var(--yellow);
}
.page-terms p {
  color: #474E59;
}
.page-terms ul,
.page-terms ol {
  padding-left: 2rem;
}
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                FAQ 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
@media (max-width: 767px) {
  .page-faq .hero-minimal {
    padding-top: 4rem;
    min-height: auto !important;
  }
}

.content-faq {
  background: transparent;
  margin-top: -5rem;
}
@media screen and (max-width: 850px) {
  .content-faq {
    margin-top: -10rem;
  }
}
@media (max-width: 767px) {
  .content-faq {
    margin-top: 0;
  }
}
@media (max-width: 767px) {
  .content-faq .accordion .accordian-title h5 {
    font-size: 1.8rem;
  }
}
@media (max-width: 767px) {
  .content-faq .accordion .accordion_item p {
    padding-bottom: 1.5rem;
  }
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                Maison 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.jcc-team .swiper-slide:last-child {
  margin-right: 0 !important;
}

@media (max-width: 1024px) {
  .team.push-down {
    margin-top: 0;
  }
}
.team.slide-step-1 .pattern {
  right: -3.3rem;
}
.team.slide-step-2 .pattern, .team.slide-step-5 .pattern {
  transform: scaley(-1);
  right: -3.3rem;
  top: 0;
}
.team.slide-step-3 .pattern {
  left: -3.3rem;
  transform: scaleX(-1);
}
.team.slide-step-4 .pattern {
  left: -3.3rem;
}
.team h4 {
  text-transform: uppercase;
  font-size: 1.5rem;
  padding-bottom: 1rem;
}
.team:hover img {
  transform: translateY(-0.8rem);
}
.team .card-profile img {
  transition: transform 0.3s ease;
}
.team .card-profile .pattern {
  width: 13rem;
  height: 13rem;
  background: url(3174ebcb18d04d11ca91.svg) no-repeat;
  background-size: contain;
  bottom: 0;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                404 Page Styles
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.error-404 {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #0a0a0a 0%, #1a1a1a 100%);
}
.error-404 .error-content {
  position: relative;
  z-index: 10;
}
.error-404 .error-number {
  font-size: clamp(6rem, 15vw, 12rem);
  line-height: 1;
  font-weight: 700;
  margin-bottom: 1.5rem;
  background: linear-gradient(135deg, #d4af37 0%, #f8e08e 50%, #d4af37 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.error-404 .error-title {
  color: #fff;
  margin-bottom: 1rem;
}
.error-404 .error-subtitle {
  color: #d4af37;
  font-family: "Miller-Banner", serif;
  font-weight: 300;
  margin-bottom: 1.5rem;
}
.error-404 .error-description {
  color: rgba(255, 255, 255, 0.7);
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 3rem;
}
.error-404 .popular-links-title {
  color: rgba(255, 255, 255, 0.5);
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 1rem;
}
.error-404 .popular-links a {
  color: rgba(255, 255, 255, 0.7);
  text-decoration: none;
  transition: color 0.3s ease;
}
.error-404 .popular-links a:hover {
  color: #d4af37;
}
.error-404 .popular-links .separator {
  color: rgba(255, 255, 255, 0.3);
}
.error-404 .decorative-orb-left {
  position: absolute;
  top: 0;
  left: 0;
  width: 400px;
  height: 400px;
  background: radial-gradient(circle, rgba(212, 175, 55, 0.2) 0%, rgba(212, 175, 55, 0.12) 30%, transparent 70%);
  border-radius: 50%;
  pointer-events: none;
  z-index: 1;
  filter: blur(40px);
  animation: float-orb-1 20s ease-in-out infinite;
  opacity: 0.8;
}
.error-404 .decorative-orb-right {
  position: absolute;
  top: 0;
  right: 0;
  width: 500px;
  height: 500px;
  background: radial-gradient(circle, rgba(248, 224, 142, 0.18) 0%, rgba(212, 175, 55, 0.1) 30%, transparent 70%);
  border-radius: 50%;
  pointer-events: none;
  z-index: 1;
  filter: blur(45px);
  animation: float-orb-2 25s ease-in-out infinite;
  opacity: 0.7;
}

@keyframes float-orb-1 {
  0% {
    transform: translate(10vw, 15vh) scale(1);
  }
  25% {
    transform: translate(70vw, 25vh) scale(1.1);
  }
  50% {
    transform: translate(75vw, 70vh) scale(0.95);
  }
  75% {
    transform: translate(20vw, 75vh) scale(1.05);
  }
  100% {
    transform: translate(10vw, 15vh) scale(1);
  }
}
@keyframes float-orb-2 {
  0% {
    transform: translate(-15vw, 20vh) scale(1);
  }
  30% {
    transform: translate(-60vw, 60vh) scale(0.9);
  }
  60% {
    transform: translate(-70vw, 30vh) scale(1.1);
  }
  85% {
    transform: translate(-30vw, 75vh) scale(0.95);
  }
  100% {
    transform: translate(-15vw, 20vh) scale(1);
  }
}
@media (max-width: 768px) {
  .error-404 .error-subtitle {
    font-size: 1.75rem;
  }
  .error-404 .error-description {
    font-size: 1rem;
  }
  .error-404 .decorative-orb-left,
  .error-404 .decorative-orb-right {
    display: none;
  }
}
/*!****************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./node_modules/swiper/swiper-bundle.css ***!
  \****************************************************************************************************************************************************************************************/
/**
 * Swiper 12.0.3
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2025 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: October 21, 2025
 */
:root {
  --swiper-theme-color: #007aff;
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-wrapper-transition-timing-function: initial;
  */
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
  display: block;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
  touch-action: pan-y;
}

.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  backface-visibility: hidden;
}

/* 3D Effects */
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}

.swiper-3d {
  perspective: 1200px;
  .swiper-slide,
  .swiper-cube-shadow {
    transform-style: preserve-3d;
  }
}

/* CSS Mode */
.swiper-css-mode {
  > .swiper-wrapper {
    overflow: auto;
    scrollbar-width: none; /* For Firefox */
    -ms-overflow-style: none; /* For Internet Explorer and Edge */
    &::-webkit-scrollbar {
      display: none;
    }
  }
  > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: start start;
  }
  &.swiper-horizontal {
    > .swiper-wrapper {
      scroll-snap-type: x mandatory;
    }
  }
  &.swiper-vertical {
    > .swiper-wrapper {
      scroll-snap-type: y mandatory;
    }
  }
  &.swiper-free-mode {
    > .swiper-wrapper {
      scroll-snap-type: none;
    }
    > .swiper-wrapper > .swiper-slide {
      scroll-snap-align: none;
    }
  }
  &.swiper-centered {
    > .swiper-wrapper::before {
      content: "";
      flex-shrink: 0;
      order: 9999;
    }
    > .swiper-wrapper > .swiper-slide {
      scroll-snap-align: center center;
      scroll-snap-stop: always;
    }
  }
  &.swiper-centered.swiper-horizontal {
    > .swiper-wrapper > .swiper-slide:first-child {
      margin-inline-start: var(--swiper-centered-offset-before);
    }
    > .swiper-wrapper::before {
      height: 100%;
      min-height: 1px;
      width: var(--swiper-centered-offset-after);
    }
  }
  &.swiper-centered.swiper-vertical {
    > .swiper-wrapper > .swiper-slide:first-child {
      margin-block-start: var(--swiper-centered-offset-before);
    }
    > .swiper-wrapper::before {
      width: 100%;
      min-width: 1px;
      height: var(--swiper-centered-offset-after);
    }
  }
}

/* Slide styles start */
/* 3D Shadows */
.swiper-3d {
  .swiper-slide-shadow,
  .swiper-slide-shadow-left,
  .swiper-slide-shadow-right,
  .swiper-slide-shadow-top,
  .swiper-slide-shadow-bottom,
  .swiper-slide-shadow,
  .swiper-slide-shadow-left,
  .swiper-slide-shadow-right,
  .swiper-slide-shadow-top,
  .swiper-slide-shadow-bottom {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10;
  }
  .swiper-slide-shadow {
    background: rgba(0, 0, 0, 0.15);
  }
  .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper:not(.swiper-watch-progress),
.swiper-watch-progress .swiper-slide-visible {
  .swiper-lazy-preloader {
    animation: swiper-preloader-spin 1s infinite linear;
  }
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* Slide styles end */
.swiper-virtual .swiper-slide {
  -webkit-backface-visibility: hidden;
  transform: translateZ(0);
}

.swiper-virtual.swiper-css-mode {
  .swiper-wrapper::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
  }
}

.swiper-virtual.swiper-css-mode.swiper-horizontal {
  .swiper-wrapper::after {
    height: 1px;
    width: var(--swiper-virtual-size);
  }
}

.swiper-virtual.swiper-css-mode.swiper-vertical {
  .swiper-wrapper::after {
    width: 1px;
    height: var(--swiper-virtual-size);
  }
}

:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-top-offset: 50%;
  --swiper-navigation-sides-offset: 4px;
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  width: var(--swiper-navigation-size);
  height: var(--swiper-navigation-size);
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
  &.swiper-button-disabled {
    opacity: 0.35;
    cursor: auto;
    pointer-events: none;
  }
  &.swiper-button-hidden {
    opacity: 0;
    cursor: auto;
    pointer-events: none;
  }
  .swiper-navigation-disabled & {
    display: none !important;
  }
  svg {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transform-origin: center;
    fill: currentColor;
    pointer-events: none;
  }
}

.swiper-button-lock {
  display: none;
}

.swiper-button-prev,
.swiper-button-next {
  top: var(--swiper-navigation-top-offset, 50%);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
}

.swiper-button-prev {
  left: var(--swiper-navigation-sides-offset, 4px);
  right: auto;
  .swiper-navigation-icon {
    transform: rotate(180deg);
  }
}

.swiper-button-next {
  right: var(--swiper-navigation-sides-offset, 4px);
  left: auto;
}

.swiper-horizontal {
  .swiper-button-prev,
  .swiper-button-next,
  ~ .swiper-button-prev,
  ~ .swiper-button-next {
    top: var(--swiper-navigation-top-offset, 50%);
    margin-top: calc(0px - var(--swiper-navigation-size) / 2);
    margin-left: 0;
  }
  .swiper-button-prev,
  & ~ .swiper-button-prev,
  &.swiper-rtl .swiper-button-next,
  &.swiper-rtl ~ .swiper-button-next {
    left: var(--swiper-navigation-sides-offset, 4px);
    right: auto;
  }
  .swiper-button-next,
  & ~ .swiper-button-next,
  &.swiper-rtl .swiper-button-prev,
  &.swiper-rtl ~ .swiper-button-prev {
    right: var(--swiper-navigation-sides-offset, 4px);
    left: auto;
  }
  .swiper-button-prev,
  & ~ .swiper-button-prev,
  &.swiper-rtl .swiper-button-next,
  &.swiper-rtl ~ .swiper-button-next {
    .swiper-navigation-icon {
      transform: rotate(180deg);
    }
  }
  &.swiper-rtl .swiper-button-prev,
  &.swiper-rtl ~ .swiper-button-prev {
    .swiper-navigation-icon {
      transform: rotate(0deg);
    }
  }
}

.swiper-vertical {
  .swiper-button-prev,
  .swiper-button-next,
  ~ .swiper-button-prev,
  ~ .swiper-button-next {
    left: var(--swiper-navigation-top-offset, 50%);
    right: auto;
    margin-left: calc(0px - var(--swiper-navigation-size) / 2);
    margin-top: 0;
  }
  .swiper-button-prev,
  ~ .swiper-button-prev {
    top: var(--swiper-navigation-sides-offset, 4px);
    bottom: auto;
    .swiper-navigation-icon {
      transform: rotate(-90deg);
    }
  }
  .swiper-button-next,
  ~ .swiper-button-next {
    bottom: var(--swiper-navigation-sides-offset, 4px);
    top: auto;
    .swiper-navigation-icon {
      transform: rotate(90deg);
    }
  }
}

:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  --swiper-pagination-left: auto;
  --swiper-pagination-right: 8px;
  --swiper-pagination-bottom: 8px;
  --swiper-pagination-top: auto;
  --swiper-pagination-fraction-color: inherit;
  --swiper-pagination-progressbar-bg-color: rgba(0,0,0,0.25);
  --swiper-pagination-progressbar-size: 4px;
  --swiper-pagination-bullet-size: 8px;
  --swiper-pagination-bullet-width: 8px;
  --swiper-pagination-bullet-height: 8px;
  --swiper-pagination-bullet-border-radius: 50%;
  --swiper-pagination-bullet-inactive-color: #000;
  --swiper-pagination-bullet-inactive-opacity: 0.2;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-bullet-horizontal-gap: 4px;
  --swiper-pagination-bullet-vertical-gap: 6px;
  */
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
  &.swiper-pagination-hidden {
    opacity: 0;
  }
  .swiper-pagination-disabled > &,
  &.swiper-pagination-disabled {
    display: none !important;
  }
}

/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: var(--swiper-pagination-bottom, 8px);
  top: var(--swiper-pagination-top, auto);
  left: 0;
  width: 100%;
}

/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
  .swiper-pagination-bullet {
    transform: scale(0.33);
    position: relative;
  }
  .swiper-pagination-bullet-active {
    transform: scale(1);
  }
  .swiper-pagination-bullet-active-main {
    transform: scale(1);
  }
  .swiper-pagination-bullet-active-prev {
    transform: scale(0.66);
  }
  .swiper-pagination-bullet-active-prev-prev {
    transform: scale(0.33);
  }
  .swiper-pagination-bullet-active-next {
    transform: scale(0.66);
  }
  .swiper-pagination-bullet-active-next-next {
    transform: scale(0.33);
  }
}

.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
  button& {
    border: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
    appearance: none;
  }
  .swiper-pagination-clickable & {
    cursor: pointer;
  }
  &:only-child {
    display: none !important;
  }
}

.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-vertical > .swiper-pagination-bullets,
.swiper-pagination-vertical.swiper-pagination-bullets {
  right: var(--swiper-pagination-right, 8px);
  left: var(--swiper-pagination-left, auto);
  top: 50%;
  transform: translate3d(0px, -50%, 0);
  .swiper-pagination-bullet {
    margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
    display: block;
  }
  &.swiper-pagination-bullets-dynamic {
    top: 50%;
    transform: translateY(-50%);
    width: 8px;
    .swiper-pagination-bullet {
      display: inline-block;
      transition: 200ms transform, 200ms top;
    }
  }
}

.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-horizontal.swiper-pagination-bullets {
  .swiper-pagination-bullet {
    margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
  }
  &.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
    .swiper-pagination-bullet {
      transition: 200ms transform, 200ms left;
    }
  }
}

.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms right;
}

/* Fraction */
.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit);
}

/* Progress */
.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));
  position: absolute;
  .swiper-pagination-progressbar-fill {
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top;
  }
  .swiper-rtl & .swiper-pagination-progressbar-fill {
    transform-origin: right top;
  }
  .swiper-horizontal > &,
  &.swiper-pagination-horizontal,
  .swiper-vertical > &.swiper-pagination-progressbar-opposite,
  &.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: var(--swiper-pagination-progressbar-size, 4px);
    left: 0;
    top: 0;
  }
  .swiper-vertical > &,
  &.swiper-pagination-vertical,
  .swiper-horizontal > &.swiper-pagination-progressbar-opposite,
  &.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {
    width: var(--swiper-pagination-progressbar-size, 4px);
    height: 100%;
    left: 0;
    top: 0;
  }
}

.swiper-pagination-lock {
  display: none;
}

:root {
  /*
  --swiper-scrollbar-border-radius: 10px;
  --swiper-scrollbar-top: auto;
  --swiper-scrollbar-bottom: 4px;
  --swiper-scrollbar-left: auto;
  --swiper-scrollbar-right: 4px;
  --swiper-scrollbar-sides-offset: 1%;
  --swiper-scrollbar-bg-color: rgba(0, 0, 0, 0.1);
  --swiper-scrollbar-drag-bg-color: rgba(0, 0, 0, 0.5);
  --swiper-scrollbar-size: 4px;
  */
}

.swiper-scrollbar {
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  position: relative;
  touch-action: none;
  background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, 0.1));
  .swiper-scrollbar-disabled > &,
  &.swiper-scrollbar-disabled {
    display: none !important;
  }
  .swiper-horizontal > &,
  &.swiper-scrollbar-horizontal {
    position: absolute;
    left: var(--swiper-scrollbar-sides-offset, 1%);
    bottom: var(--swiper-scrollbar-bottom, 4px);
    top: var(--swiper-scrollbar-top, auto);
    z-index: 50;
    height: var(--swiper-scrollbar-size, 4px);
    width: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
  }
  .swiper-vertical > &,
  &.swiper-scrollbar-vertical {
    position: absolute;
    left: var(--swiper-scrollbar-left, auto);
    right: var(--swiper-scrollbar-right, 4px);
    top: var(--swiper-scrollbar-sides-offset, 1%);
    z-index: 50;
    width: var(--swiper-scrollbar-size, 4px);
    height: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
  }
}

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, 0.5));
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  left: 0;
  top: 0;
}

.swiper-scrollbar-cursor-drag {
  cursor: move;
}

.swiper-scrollbar-lock {
  display: none;
}

/* Zoom container styles start */
.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  > img,
  > svg,
  > canvas {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
  }
}

/* Zoom container styles end */
.swiper-slide-zoomed {
  cursor: move;
  touch-action: none;
}

/* a11y */
.swiper .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}

.swiper-thumbs {
  .swiper-slide-thumb-active {
    /* Styles for active thumb slide */
  }
}

.swiper-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto;
}

.swiper-grid > .swiper-wrapper {
  flex-wrap: wrap;
}

.swiper-grid-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column;
}

.swiper-fade {
  &.swiper-free-mode {
    .swiper-slide {
      transition-timing-function: ease-out;
    }
  }
  .swiper-slide {
    pointer-events: none;
    transition-property: opacity;
    .swiper-slide {
      pointer-events: none;
    }
  }
  .swiper-slide-active {
    pointer-events: auto;
    & .swiper-slide-active {
      pointer-events: auto;
    }
  }
}

.swiper.swiper-cube {
  overflow: visible;
}

.swiper-cube {
  .swiper-slide {
    pointer-events: none;
    backface-visibility: hidden;
    z-index: 1;
    visibility: hidden;
    transform-origin: 0 0;
    width: 100%;
    height: 100%;
    .swiper-slide {
      pointer-events: none;
    }
  }
  &.swiper-rtl .swiper-slide {
    transform-origin: 100% 0;
  }
  .swiper-slide-active {
    &,
    & .swiper-slide-active {
      pointer-events: auto;
    }
  }
  .swiper-slide-active,
  .swiper-slide-next,
  .swiper-slide-prev {
    pointer-events: auto;
    visibility: visible;
  }
  .swiper-cube-shadow {
    position: absolute;
    left: 0;
    bottom: 0px;
    width: 100%;
    height: 100%;
    opacity: 0.6;
    z-index: 0;
    &:before {
      content: "";
      background: #000;
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0;
      right: 0;
      filter: blur(50px);
    }
  }
}

.swiper-cube {
  .swiper-slide-next + .swiper-slide {
    pointer-events: auto;
    visibility: visible;
  }
}

/* Cube slide shadows start */
.swiper-cube {
  .swiper-slide-shadow-cube.swiper-slide-shadow-top,
  .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,
  .swiper-slide-shadow-cube.swiper-slide-shadow-left,
  .swiper-slide-shadow-cube.swiper-slide-shadow-right {
    z-index: 0;
    backface-visibility: hidden;
  }
}

/* Cube slide shadows end */
.swiper.swiper-flip {
  overflow: visible;
}

.swiper-flip {
  .swiper-slide {
    pointer-events: none;
    backface-visibility: hidden;
    z-index: 1;
    .swiper-slide {
      pointer-events: none;
    }
  }
  .swiper-slide-active {
    &,
    & .swiper-slide-active {
      pointer-events: auto;
    }
  }
}

/* Flip slide shadows start */
.swiper-flip {
  .swiper-slide-shadow-flip.swiper-slide-shadow-top,
  .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,
  .swiper-slide-shadow-flip.swiper-slide-shadow-left,
  .swiper-slide-shadow-flip.swiper-slide-shadow-right {
    z-index: 0;
    backface-visibility: hidden;
  }
}

/* Flip slide shadows end */
.swiper-creative {
  .swiper-slide {
    backface-visibility: hidden;
    overflow: hidden;
    transition-property: transform, opacity, height;
  }
}

.swiper.swiper-cards {
  overflow: visible;
}

.swiper-cards {
  .swiper-slide {
    transform-origin: center bottom;
    backface-visibility: hidden;
    overflow: hidden;
  }
}
/*!************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/js/Module/sliders/slider.scss ***!
  \************************************************************************************************************************************************************************************/
.swiper .next,
.swiper .prev {
  cursor: pointer;
}

.swiper-pagination-bullet {
  background-color: gray;
}

.swiper-pagination-bullet-active {
  background-color: var(--yellow) !important;
}

.swiper-scrollbar {
  background-color: var(--yellow) !important;
  height: 2px !important;
  left: 0 !important;
}

.s-nav {
  display: inline-flex;
  background-color: var(--yellow);
  border-radius: 5rem;
  gap: 1.5rem;
  padding: 0.5rem;
}
.s-nav .btn-arrow {
  cursor: pointer;
  height: 4rem;
  width: 4rem;
  background-color: white;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: transform 0.2s ease;
}
.s-nav .btn-arrow:hover {
  transform: scale(1.1);
}
.s-nav .btn-arrow svg {
  height: 2.25rem;
  width: 2.25rem;
}
.s-nav .prev svg {
  transform: rotate(-180deg);
}
/*!*******************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/js/Module/menu/menu.scss ***!
  \*******************************************************************************************************************************************************************************/
.menu-wrapper {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 99;
  width: 100vw;
  pointer-events: none;
}
.menu-wrapper.active {
  pointer-events: all;
}
.menu-wrapper.active .close-wrapper {
  background-color: transparent;
}
.menu-wrapper.active .col-wrapper {
  transform-origin: right left;
  transform: translate3d(0, 0, 0);
}
.menu-wrapper .col-wrapper {
  height: 100vh;
  background: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(62px);
  transform: translate3d(101%, 0, 0);
  transition: transform 800ms cubic-bezier(0.19, 1, 0.22, 1);
}

.c-wrapper {
  width: 100%;
  padding: 12rem 6rem;
  overflow-y: scroll;
  height: 100vh;
}
.c-wrapper::-webkit-scrollbar {
  display: none;
  width: 0;
}

.menu-items {
  display: inline-flex;
  flex-direction: column;
  width: auto;
}
.menu-items a {
  padding-bottom: 1rem;
  margin-bottom: 1rem;
  display: inline-flex;
  color: white;
  font-size: 1rem;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                  Menu Language Switcher           
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.lang {
  position: absolute;
  right: 6.7vw;
  top: 0.6rem;
  z-index: 11;
  font-size: 1.2rem;
  font-weight: 600;
  transition: all 0.4s ease;
}
@media screen and (max-width: 1024px) {
  .lang {
    right: 10vw;
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 768px) {
  .lang {
    right: 11vw;
  }
}
@media screen and (max-width: 650px) {
  .lang {
    right: 17vw;
    top: 3.5rem !important;
  }
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                  Menu Button           
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.menu-btn,
.lang {
  top: 50%;
  transform: translateY(-50%);
}

.menu-btn {
  position: absolute;
  right: 4vw;
  pointer-events: all;
  display: flex;
  z-index: 2222;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  transition: 0.3s cubic-bezier(0.35, 0.07, 0.2, 1);
  transition-property: transform;
}
@media screen and (max-width: 1024px) {
  .menu-btn {
    display: none;
  }
}
.menu-btn .s-menu {
  position: absolute;
  width: 3rem;
  height: 2rem;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.36, 0.07, 0.19, 0.97);
}
.menu-btn .s-menu-lines,
.menu-btn .s-menu-lines:after,
.menu-btn .s-menu-lines:before {
  display: block;
  position: absolute;
  width: 100%;
  height: 3px;
  transform: rotate(0);
  transition: all 0.3s cubic-bezier(0.36, 0.07, 0.19, 0.97);
  content: "";
}
.menu-btn .s-menu-lines {
  top: 50%;
  margin-top: -0.125em;
  background-color: rgba(0, 0, 0, 0.7490196078);
  height: 2px;
}
.menu-btn .s-menu-lines:before {
  top: 0.5em;
  background-color: rgba(0, 0, 0, 0.5019607843);
  height: 1px;
  width: 70%;
  right: 0;
}
.menu-btn .s-menu-lines:after {
  top: -0.5em;
  background-color: #000;
}
.menu-btn .s-menu.open .s-menu-lines {
  background-color: initial;
  transform: translate(-2em);
  transition-delay: 0.05s;
}
.menu-btn .s-menu.open .s-menu-lines:after,
.menu-btn .s-menu.open .s-menu-lines:before {
  top: 0;
  left: 0;
  width: 2em;
}
.menu-btn .s-menu.open .s-menu-lines:before {
  transform: translate(2em) rotate(135deg);
  background-color: var(--yellow);
}
.menu-btn .s-menu.open .s-menu-lines:after {
  transform: translate(2em) rotate(-135deg);
  background-color: var(--yellow);
}

.menu-btn:hover .s-menu-lines {
  transform: scaleX(1);
}
.menu-btn:hover .s-menu-lines:before {
  transform: scaleX(0.75);
  width: 100%;
}
.menu-btn:hover .s-menu-lines:after {
  transform: scaleX(1.25);
}
.menu-btn:hover .s-menu.open .s-menu-lines:before {
  transform: translate(2em) rotate(180deg);
}
.menu-btn:hover .s-menu.open .s-menu-lines:after {
  transform: translate(2em) rotate(-180deg);
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                  Menu Button           
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.menu-list li {
  list-style: none;
  padding-bottom: 3.5rem;
}
.menu-list a {
  position: relative;
  padding-right: 4.5rem;
  font-weight: bold;
  font-size: 3.3rem;
  letter-spacing: -1px;
  transition: color 0.3s ease;
  text-transform: uppercase;
}
.menu-list a::after {
  position: absolute;
  top: 0;
  right: 0;
  content: "";
  display: inline-block;
  width: 2.5rem;
  height: 2.5rem;
  background-image: url("data:image/svg+xml;utf8,<svg width=\"44\" height=\"44\" viewBox=\"0 0 44 44\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M40.3333 22H0\" stroke=\"black\" stroke-width=\"4.88889\"/><path d=\"M22 0C22 12.1503 31.8497 22 44 22\" stroke=\"black\" stroke-width=\"4.88889\"/><path d=\"M22 44C22 31.8497 31.8497 22 44 22\" stroke=\"black\" stroke-width=\"4.88889\"/></svg>");
  background-size: contain;
  background-repeat: no-repeat;
  margin-right: 0.5rem;
  transition: background-image 0.3s ease;
}
.menu-list a:hover {
  color: var(--yellow);
}
.menu-list a:hover::after {
  background-image: url("data:image/svg+xml;utf8,<svg width=\"44\" height=\"44\" viewBox=\"0 0 44 44\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M40.3333 22H0\" stroke=\"%23FFC226\" stroke-width=\"4.88889\"/><path d=\"M22 0C22 12.1503 31.8497 22 44 22\" stroke=\"%23FFC226\" stroke-width=\"4.88889\"/><path d=\"M22 44C22 31.8497 31.8497 22 44 22\" stroke=\"%23FFC226\" stroke-width=\"4.88889\"/></svg>");
}
@media (max-width: 1024px) {
  .menu-list a {
    font-size: 3rem;
    padding-right: 5rem;
  }
}

.arrow-icon {
  position: relative;
  padding-right: 5rem;
  color: #252525;
  transition: color 0.3s ease;
  width: fit-content;
}
.arrow-icon:hover {
  color: var(--yellow);
}
.arrow-icon {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: normal;
  text-transform: uppercase;
}
.arrow-icon::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 3rem;
  height: 3rem;
  background-image: url("data:image/svg+xml;utf8,<svg width=\"26\" height=\"26\" viewBox=\"0 0 26 26\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><rect width=\"26\" height=\"26\" rx=\"13\" fill=\"%23FFC226\"/><path d=\"M16.9913 13H8.21057\" stroke=\"black\" stroke-width=\"1.36842\"/><path d=\"M13 8.21094C13 10.8561 15.1443 13.0004 17.7895 13.0004\" stroke=\"black\" stroke-width=\"1.36842\"/><path d=\"M13 17.7891C13 15.1439 15.1443 12.9996 17.7895 12.9996\" stroke=\"black\" stroke-width=\"1.36842\"/></svg>");
  background-size: contain;
  background-repeat: no-repeat;
}

body.show .menu-close {
  mix-blend-mode: normal;
}
body.show .menu-close::before, body.show .menu-close::after {
  background-color: var(--white);
}
body.m-show header .row-glass {
  background: none;
}
body.m-show .menu-close {
  mix-blend-mode: normal;
  top: 3.5rem;
}
body.m-show .menu-close::before, body.m-show .menu-close::after {
  background-color: var(--black);
}
body.m-show.show .lang {
  color: var(--black);
}
body.m-show.show img.b-logo {
  display: block;
}
body.m-show.show img.w-logo {
  display: none;
}
/*!*********************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/js/Module/animations/gsap-effects.scss ***!
  \*********************************************************************************************************************************************************************************************/
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                Text Scramble
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
[data-dpk-call=textScr] {
  font-family: "Poppins", sans-serif;
  font-weight: 900;
  font-size: 10vw;
  display: inline-flex;
  text-align: center;
  padding: 0;
  line-height: 0.8;
  overflow: hidden;
  border: 1px solid burlywood;
}
[data-dpk-call=textScr] span {
  visibility: hidden;
  display: inline-block;
  position: relative;
  letter-spacing: -0.3vw;
}
[data-dpk-call=textScr] span::before {
  content: attr(data-char);
  position: absolute;
  top: 0;
  left: 0;
  transform: translateY(-103%);
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                 Text Appear Y
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
[data-dpk-call=appearY] {
  font-size: 3rem;
}
[data-dpk-call=appearY] div {
  overflow: hidden;
  line-height: 1;
}
[data-dpk-call=appearY] div span {
  display: block;
  visibility: hidden;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                Growing Texts
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
[data-dpk-call=growB] {
  font-size: 3rem;
}
[data-dpk-call=growB] span {
  will-change: transform;
  display: inline-block;
  transform: rotateX(-90deg) translateY(3rem) translateX(-3rem);
  transform-origin: center bottom;
  color: #fff;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                Text Scramble
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.content {
  display: flex;
  flex-direction: column;
  width: 100vw;
  position: relative;
}

.content__title {
  font-size: 8vw;
  line-height: 0.8;
  text-align: center;
  display: grid;
  gap: 2rem;
}

.dtext2 .char,
.dtext3 .char {
  opacity: 0;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
              Appear Title Via JS
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
h1.splitting .lines,
h2.splitting .lines,
h3.splitting .lines,
h4.splitting .lines {
  overflow: hidden;
}
h1.splitting .lines .words,
h2.splitting .lines .words,
h3.splitting .lines .words,
h4.splitting .lines .words {
  display: block;
  transition: 1.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translate3d(0, 105%, 0);
}
h1.splitting .lines:nth-child(1) .words,
h2.splitting .lines:nth-child(1) .words,
h3.splitting .lines:nth-child(1) .words,
h4.splitting .lines:nth-child(1) .words {
  transition-delay: 0s;
}
h1.splitting .lines:nth-child(2) .words,
h2.splitting .lines:nth-child(2) .words,
h3.splitting .lines:nth-child(2) .words,
h4.splitting .lines:nth-child(2) .words {
  transition-delay: 0.2s;
}
h1.splitting .lines:nth-child(3) .words,
h2.splitting .lines:nth-child(3) .words,
h3.splitting .lines:nth-child(3) .words,
h4.splitting .lines:nth-child(3) .words {
  transition-delay: 0.4s;
}
h1.splitting .lines:nth-child(4) .words,
h2.splitting .lines:nth-child(4) .words,
h3.splitting .lines:nth-child(4) .words,
h4.splitting .lines:nth-child(4) .words {
  transition-delay: 0.6s;
}
h1.splitting .lines:nth-child(5) .words,
h2.splitting .lines:nth-child(5) .words,
h3.splitting .lines:nth-child(5) .words,
h4.splitting .lines:nth-child(5) .words {
  transition-delay: 0.8s;
}
h1.splitting .lines:nth-child(6) .words,
h2.splitting .lines:nth-child(6) .words,
h3.splitting .lines:nth-child(6) .words,
h4.splitting .lines:nth-child(6) .words {
  transition-delay: 1s;
}

.entered h1.splitting .lines .words,
.entered h2.splitting .lines .words,
.entered h3.splitting .lines .words,
.entered h4.splitting .lines .words {
  transform: translate3d(0, 0, 0);
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          Paragraph Reveal Animation
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
[data-dpk-call=paraR] > h2, [data-dpk-call=paraR] > h3, [data-dpk-call=paraR] > h4, [data-dpk-call=paraR] > h5, [data-dpk-call=paraR] > h6, [data-dpk-call=paraR] > p, [data-dpk-call=paraR] > .btn-1 {
  visibility: hidden;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                Image Reveal
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.reveal {
  visibility: hidden;
  position: relative;
  z-index: 2;
  overflow: hidden;
}
.reveal img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  transform-origin: top;
}
/*!*********************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/js/Module/site-search/site-search.scss ***!
  \*********************************************************************************************************************************************************************************************/
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                Search Button on Header
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.site-search {
  cursor: pointer;
}

.search-form-wrap {
  background-color: rgba(15, 23, 42, 0.9137254902);
  backdrop-filter: blur(3px);
  position: fixed;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: 10001;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease;
}
.search-form-wrap .container {
  position: relative;
}
.search-form-wrap.active {
  right: 0;
  opacity: 1;
  pointer-events: auto;
  transition: opacity 0.2s ease;
}
.search-form-wrap.active .search-form input {
  transform: scale3d(1, 1, 1);
  transition: transform 0.2s ease 0.4s;
}
.search-form-wrap.active .close-btn {
  opacity: 1;
}
.search-form-wrap.active .search-btn {
  opacity: 1;
}
.search-form-wrap .search-form {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.search-form-wrap .search-form input:focus {
  background: transparent;
}
.search-form-wrap button.search-btn {
  position: absolute;
  top: 0%;
  right: 10%;
  display: inline-block;
  padding: 0.85em 0;
  text-align: right;
  color: #fff;
  width: 20%;
  opacity: 0;
  transition: opacity 0.25s, transform 0.25s;
  outline: none !important;
  border: none !important;
}
.search-form-wrap button.search-btn svg {
  height: 3rem;
  width: 3rem;
  fill: white;
}
.search-form-wrap input.search-input {
  background-color: transparent;
  border: 0;
  border-bottom: 2px solid var(--yellow);
  color: #fff;
  font-size: 2.5rem;
  width: 100%;
  transform-origin: 0% 50%;
  transform: scale3d(0, 1, 0);
  transition: transform 0.1s ease;
  padding-bottom: 2rem;
  padding-left: 5px;
}
.search-form-wrap button.close-btn {
  background: transparent;
  cursor: pointer;
  height: 4rem;
  width: 4rem;
  opacity: 0;
  position: absolute;
  right: 9.5vw;
  top: 3rem;
  outline: none;
  border: 0;
  z-index: 10002;
  transition: opacity 0.25s ease;
}
.search-form-wrap button.close-btn svg {
  height: 3rem;
  width: 3rem;
}
/*!******************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/js/Module/components/accordian.scss ***!
  \******************************************************************************************************************************************************************************************/
.accordion {
  list-style-type: none;
}
.accordion > li {
  position: relative;
}
.accordion > li:hover .more {
  background-color: var(--yellow);
}
.accordion .accordian-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  padding: 1.5% 0;
  opacity: 1;
  transition: opacity 0.5s ease;
}
.accordion .accordian-title h5 {
  width: 95%;
}
.accordion .accordian-title .more {
  transition: all 0.3s ease;
  opacity: 1;
  font-size: 3rem;
  line-height: 1;
  width: 4rem;
  height: 4rem;
  background: #F5F5F5;
  border-radius: 100%;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
.accordion .accordian-title .more::after, .accordion .accordian-title .more:before {
  content: "";
  position: absolute;
  background-color: var(--black);
  transition: 0.4s all ease;
}
.accordion .accordian-title .more::before {
  width: 1.5px;
  height: 1.2rem;
}
.accordion .accordian-title .more::after {
  height: 1.5px;
  width: 1.2rem;
}
.accordion .accordion_item {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1176470588);
  overflow: hidden;
  height: 0;
  padding-right: 6rem;
}
.accordion .accordion_item p {
  padding-bottom: 1.5%;
}
.accordion li.selected .accordion_item {
  height: auto;
}
.accordion li.selected .more::before {
  opacity: 0;
}
.accordion li.selected .more svg {
  transform: rotate(-90deg);
  transition: transform 0.2s ease;
}
/*!*************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/js/Module/animations/scrollTriggerAni.scss ***!
  \*************************************************************************************************************************************************************************************************/

/*!*******************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/js/Module/smooth-scrollbar/smooth-scrollbar.scss ***!
  \*******************************************************************************************************************************************************************************************************/
[data-scrollbar][data-scroll-container] {
  height: 100vh;
  z-index: 1;
}

.scroll-content {
  height: 100%;
  will-change: transform;
}

.scrollbar-track {
  right: 0;
  background: none;
  z-index: 200;
  width: 7px;
}
.scrollbar-thumb-y {
  background: var(--yellow) !important;
  opacity: 1 !important;
  transition: opacity 200ms ease-in-out;
  border-radius: 0;
}
.scrollbar-thumb-y:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
}
.scrollbar-thumb-y:hover {
  opacity: 1;
}
/*!****************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./node_modules/venobox/dist/venobox.css ***!
  \****************************************************************************************************************************************************************************************/
.vbox-overlay {
  --vbox-tools-color:#fff;
  --vbox-title-background:#101010;
  --vbox-title-width:'auto';
  --vbox-title-radius:0;
  --vbox-share-background:#101010;
  --vbox-share-width:'auto';
  --vbox-share-radius:0;
  --vbox-padding:0;
  --vbox-max-width:100%;
}

.vbox-overlay *, .vbox-overlay :after, .vbox-overlay :before {
  -webkit-backface-visibility: hidden;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.vbox-overlay * {
  -webkit-backface-visibility: visible;
  backface-visibility: visible;
}

.vbox-overlay {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  position: fixed;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  z-index: 999999;
}

.vbox-share, .vbox-title {
  line-height: 1;
  position: fixed;
  z-index: 98;
  text-align: center;
  margin: 0 auto;
  color: var(--vbox-tools-color);
}

.vbox-title {
  font-size: 12px;
  background-color: var(--vbox-title-background);
  width: var(--vbox-title-width);
  border-radius: var(--vbox-title-radius);
  padding: 12px 54px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
}

.vbox-share {
  font-size: 24px;
  padding: 0 0.35em;
  background-color: var(--vbox-share-background);
  width: var(--vbox-share-width);
  border-radius: var(--vbox-share-radius);
}

.vbox-link-btn, button.vbox-link-btn, button.vbox-link-btn:active, button.vbox-link-btn:focus, button.vbox-link-btn:hover {
  border: none !important;
  background: 0 0 !important;
  box-shadow: none !important;
  color: inherit !important;
  padding: 6px 12px;
  outline: 0;
  display: inline-block;
  cursor: pointer;
}

.vbox-share a {
  color: inherit !important;
  padding: 6px 12px;
  display: inline-block;
}

.vbox-share svg {
  z-index: 10;
  vertical-align: middle;
}

.vbox-close {
  cursor: pointer;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 99;
  padding: 6px 15px;
  color: #000;
  color: var(--vbox-tools-color);
  border: 0;
  font-size: 24px;
  display: flex;
  align-items: center;
  opacity: 0.8;
  transition: opacity 0.2s;
}

.vbox-close:hover {
  opacity: 1;
}

.vbox-left-corner {
  cursor: pointer;
  position: fixed;
  left: 0;
  top: 0;
  overflow: hidden;
  line-height: 1;
  font-size: 12px;
  z-index: 99;
  display: flex;
  align-items: center;
  color: var(--vbox-tools-color);
}

.vbox-num {
  display: inline-block;
  padding: 12px 15px;
}

.vbox-left {
  left: 0;
}

.vbox-right {
  right: 0;
}

.vbox-top {
  top: 0;
}

.vbox-bottom {
  bottom: 0;
}

.vbox-next, .vbox-prev {
  position: fixed;
  top: 50%;
  margin-top: -15px;
  overflow: hidden;
  cursor: pointer;
  display: block;
  width: 45px;
  height: 45px;
  z-index: 99;
  opacity: 0.8;
  transition: opacity 0.2s;
}

.vbox-next:hover, .vbox-prev:hover {
  opacity: 1;
}

.vbox-next span, .vbox-prev span {
  position: relative;
  width: 20px;
  height: 20px;
  border: 2px solid transparent;
  border-top-color: var(--vbox-tools-color);
  border-right-color: var(--vbox-tools-color);
  text-indent: -100px;
  position: absolute;
  top: 8px;
  display: block;
}

.vbox-prev {
  left: 15px;
}

.vbox-next {
  right: 15px;
}

.vbox-prev span {
  left: 10px;
  -ms-transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}

.vbox-next span {
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  right: 10px;
}

.vbox-open {
  overflow: hidden;
}

.vbox-container {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  overflow-x: hidden;
  overflow-y: scroll;
  overflow-scrolling: touch;
  -webkit-overflow-scrolling: touch;
  z-index: 20;
  max-height: 100%;
  padding: 30px 0;
}

.vbox-content {
  opacity: 0;
  text-align: center;
  width: 100%;
  position: relative;
  overflow: hidden;
  padding: 0 4%;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100%;
}

.vbox-container img {
  max-width: 100%;
  height: auto;
}

.vbox-child {
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);
  max-width: var(--vbox-max-width);
  text-align: initial;
  padding: var(--vbox-padding);
}

.vbox-child img {
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -o-user-select: none;
  user-select: none;
  display: block;
}

.vbox-fit .vbox-child img, .vbox-fit .vbox-child.venoratio {
  max-height: calc(100vh - 60px);
}

.vbox-inline, .venoratio {
  position: relative;
  width: 100%;
  margin: 0 auto;
}

.venoratio::before {
  display: block;
  padding-top: var(--vb-aspect-ratio);
  content: "";
}

.venoratio > * {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: var(--vbox-padding);
}

.venoratio-1x1 {
  --vb-aspect-ratio:100%;
  max-width: min(var(--vbox-max-width), 100vh - 60px);
}

.venoratio-4x3.vbox-child.venoratio {
  --vb-aspect-ratio:calc(3 / 4 * 100%);
  max-width: min(var(--vbox-max-width), (100vh - 60px) * 4 / 3);
}

.venoratio-16x9.vbox-child.venoratio {
  --vb-aspect-ratio:calc(9 / 16 * 100%);
  max-width: min(var(--vbox-max-width), (100vh - 60px) * 16 / 9);
}

.venoratio-21x9.vbox-child.venoratio {
  --vb-aspect-ratio:calc(9 / 21 * 100%);
  max-width: min(var(--vbox-max-width), (100vh - 60px) * 21 / 9);
}

.venoratio-full {
  --vb-aspect-ratio:calc(100vh - 60px);
}

.vbox-grab .vbox-child img {
  cursor: grab;
}

.vbox-child > iframe {
  border: none !important;
}

.vbox-content.swipe-left {
  margin-left: -200px !important;
}

.vbox-content.swipe-right {
  margin-left: 200px !important;
}

.vbox-preloader {
  -webkit-transform: translateZ(0);
  -moz-transform: translateZ(0);
  -o-transform: translateZ(0);
  transform: translateZ(0);
}

.vbox-preloader .vbox-preloader-inner {
  opacity: 1;
  transition: opacity 0.2s;
}

.vbox-hidden {
  display: none;
}

.vbox-preloader.vbox-hidden .vbox-preloader-inner {
  opacity: 0;
}

.vbox-backdrop {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -webkit-transform: translateZ(-1px);
  -moz-transform: translateZ(-1px);
  -o-transform: translateZ(-1px);
  transform: translateZ(-1px);
  z-index: 0;
}

.vbox-tooltip {
  position: relative;
  display: inline-block;
}

.vbox-tooltip .vbox-tooltip-text {
  visibility: hidden;
  color: #fff;
  text-align: center;
  padding: 0;
  position: absolute;
  z-index: 1;
  bottom: 100%;
  left: 0;
  opacity: 0;
  transition: opacity 0.3s;
  margin-bottom: 2px;
  font-family: sans-serif;
}

.vbox-top .vbox-tooltip .vbox-tooltip-text {
  bottom: auto;
  top: 100%;
  margin-bottom: 0;
  margin-top: 2px;
}

.vbox-tooltip-inner {
  padding: 5px 10px;
  background-color: rgba(0, 0, 0, 0.9);
  border-radius: 6px;
  font-size: 10px;
}

.vbox-tooltip:hover .vbox-tooltip-text {
  visibility: visible;
  opacity: 1;
}

.vbox-overlay {
  --sk-size:40px;
  --sk-color:#333;
}

.sk-center {
  margin: auto;
}

.sk-plane {
  width: var(--sk-size);
  height: var(--sk-size);
  background-color: var(--sk-color);
  animation: sk-plane 1.2s infinite ease-in-out;
}

@keyframes sk-plane {
  0% {
    transform: perspective(120px) rotateX(0) rotateY(0);
  }
  50% {
    transform: perspective(120px) rotateX(-180.1deg) rotateY(0);
  }
  100% {
    transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
  }
}
.sk-chase {
  width: var(--sk-size);
  height: var(--sk-size);
  position: relative;
  animation: sk-chase 2.5s infinite linear both;
}

.sk-chase-dot {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  animation: sk-chase-dot 2s infinite ease-in-out both;
}

.sk-chase-dot:before {
  content: "";
  display: block;
  width: 25%;
  height: 25%;
  background-color: var(--sk-color);
  border-radius: 100%;
  animation: sk-chase-dot-before 2s infinite ease-in-out both;
}

.sk-chase-dot:nth-child(1) {
  animation-delay: -1.1s;
}

.sk-chase-dot:nth-child(2) {
  animation-delay: -1s;
}

.sk-chase-dot:nth-child(3) {
  animation-delay: -0.9s;
}

.sk-chase-dot:nth-child(4) {
  animation-delay: -0.8s;
}

.sk-chase-dot:nth-child(5) {
  animation-delay: -0.7s;
}

.sk-chase-dot:nth-child(6) {
  animation-delay: -0.6s;
}

.sk-chase-dot:nth-child(1):before {
  animation-delay: -1.1s;
}

.sk-chase-dot:nth-child(2):before {
  animation-delay: -1s;
}

.sk-chase-dot:nth-child(3):before {
  animation-delay: -0.9s;
}

.sk-chase-dot:nth-child(4):before {
  animation-delay: -0.8s;
}

.sk-chase-dot:nth-child(5):before {
  animation-delay: -0.7s;
}

.sk-chase-dot:nth-child(6):before {
  animation-delay: -0.6s;
}

@keyframes sk-chase {
  100% {
    transform: rotate(360deg);
  }
}
@keyframes sk-chase-dot {
  100%, 80% {
    transform: rotate(360deg);
  }
}
@keyframes sk-chase-dot-before {
  50% {
    transform: scale(0.4);
  }
  0%, 100% {
    transform: scale(1);
  }
}
.sk-bounce {
  width: var(--sk-size);
  height: var(--sk-size);
  position: relative;
}

.sk-bounce-dot {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: var(--sk-color);
  opacity: 0.6;
  position: absolute;
  top: 0;
  left: 0;
  animation: sk-bounce 2s infinite cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

.sk-bounce-dot:nth-child(2) {
  animation-delay: -1s;
}

@keyframes sk-bounce {
  0%, 100% {
    transform: scale(0);
  }
  45%, 55% {
    transform: scale(1);
  }
}
.sk-wave {
  width: var(--sk-size);
  height: var(--sk-size);
  display: flex;
  justify-content: space-between;
}

.sk-wave-rect {
  background-color: var(--sk-color);
  height: 100%;
  width: 15%;
  animation: sk-wave 1.2s infinite ease-in-out;
}

.sk-wave-rect:nth-child(1) {
  animation-delay: -1.2s;
}

.sk-wave-rect:nth-child(2) {
  animation-delay: -1.1s;
}

.sk-wave-rect:nth-child(3) {
  animation-delay: -1s;
}

.sk-wave-rect:nth-child(4) {
  animation-delay: -0.9s;
}

.sk-wave-rect:nth-child(5) {
  animation-delay: -0.8s;
}

@keyframes sk-wave {
  0%, 100%, 40% {
    transform: scaleY(0.4);
  }
  20% {
    transform: scaleY(1);
  }
}
.sk-pulse {
  width: var(--sk-size);
  height: var(--sk-size);
  background-color: var(--sk-color);
  border-radius: 100%;
  animation: sk-pulse 1.2s infinite cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

@keyframes sk-pulse {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
    opacity: 0;
  }
}
.sk-flow {
  width: calc(var(--sk-size) * 1.3);
  height: calc(var(--sk-size) * 1.3);
  display: flex;
  justify-content: space-between;
}

.sk-flow-dot {
  width: 25%;
  height: 25%;
  background-color: var(--sk-color);
  border-radius: 50%;
  animation: sk-flow 1.4s cubic-bezier(0.455, 0.03, 0.515, 0.955) 0s infinite both;
}

.sk-flow-dot:nth-child(1) {
  animation-delay: -0.3s;
}

.sk-flow-dot:nth-child(2) {
  animation-delay: -0.15s;
}

@keyframes sk-flow {
  0%, 100%, 80% {
    transform: scale(0.3);
  }
  40% {
    transform: scale(1);
  }
}
.sk-swing {
  width: var(--sk-size);
  height: var(--sk-size);
  position: relative;
  animation: sk-swing 1.8s infinite linear;
}

.sk-swing-dot {
  width: 45%;
  height: 45%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-color: var(--sk-color);
  border-radius: 100%;
  animation: sk-swing-dot 2s infinite ease-in-out;
}

.sk-swing-dot:nth-child(2) {
  top: auto;
  bottom: 0;
  animation-delay: -1s;
}

@keyframes sk-swing {
  100% {
    transform: rotate(360deg);
  }
}
@keyframes sk-swing-dot {
  0%, 100% {
    transform: scale(0.2);
  }
  50% {
    transform: scale(1);
  }
}
.sk-circle {
  width: var(--sk-size);
  height: var(--sk-size);
  position: relative;
}

.sk-circle-dot {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

.sk-circle-dot:before {
  content: "";
  display: block;
  width: 15%;
  height: 15%;
  background-color: var(--sk-color);
  border-radius: 100%;
  animation: sk-circle 1.2s infinite ease-in-out both;
}

.sk-circle-dot:nth-child(1) {
  transform: rotate(30deg);
}

.sk-circle-dot:nth-child(2) {
  transform: rotate(60deg);
}

.sk-circle-dot:nth-child(3) {
  transform: rotate(90deg);
}

.sk-circle-dot:nth-child(4) {
  transform: rotate(120deg);
}

.sk-circle-dot:nth-child(5) {
  transform: rotate(150deg);
}

.sk-circle-dot:nth-child(6) {
  transform: rotate(180deg);
}

.sk-circle-dot:nth-child(7) {
  transform: rotate(210deg);
}

.sk-circle-dot:nth-child(8) {
  transform: rotate(240deg);
}

.sk-circle-dot:nth-child(9) {
  transform: rotate(270deg);
}

.sk-circle-dot:nth-child(10) {
  transform: rotate(300deg);
}

.sk-circle-dot:nth-child(11) {
  transform: rotate(330deg);
}

.sk-circle-dot:nth-child(1):before {
  animation-delay: -1.1s;
}

.sk-circle-dot:nth-child(2):before {
  animation-delay: -1s;
}

.sk-circle-dot:nth-child(3):before {
  animation-delay: -0.9s;
}

.sk-circle-dot:nth-child(4):before {
  animation-delay: -0.8s;
}

.sk-circle-dot:nth-child(5):before {
  animation-delay: -0.7s;
}

.sk-circle-dot:nth-child(6):before {
  animation-delay: -0.6s;
}

.sk-circle-dot:nth-child(7):before {
  animation-delay: -0.5s;
}

.sk-circle-dot:nth-child(8):before {
  animation-delay: -0.4s;
}

.sk-circle-dot:nth-child(9):before {
  animation-delay: -0.3s;
}

.sk-circle-dot:nth-child(10):before {
  animation-delay: -0.2s;
}

.sk-circle-dot:nth-child(11):before {
  animation-delay: -0.1s;
}

@keyframes sk-circle {
  0%, 100%, 80% {
    transform: scale(0);
  }
  40% {
    transform: scale(1);
  }
}
.sk-circle-fade {
  width: var(--sk-size);
  height: var(--sk-size);
  position: relative;
}

.sk-circle-fade-dot {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

.sk-circle-fade-dot:before {
  content: "";
  display: block;
  width: 15%;
  height: 15%;
  background-color: var(--sk-color);
  border-radius: 100%;
  animation: sk-circle-fade 1.2s infinite ease-in-out both;
}

.sk-circle-fade-dot:nth-child(1) {
  transform: rotate(30deg);
}

.sk-circle-fade-dot:nth-child(2) {
  transform: rotate(60deg);
}

.sk-circle-fade-dot:nth-child(3) {
  transform: rotate(90deg);
}

.sk-circle-fade-dot:nth-child(4) {
  transform: rotate(120deg);
}

.sk-circle-fade-dot:nth-child(5) {
  transform: rotate(150deg);
}

.sk-circle-fade-dot:nth-child(6) {
  transform: rotate(180deg);
}

.sk-circle-fade-dot:nth-child(7) {
  transform: rotate(210deg);
}

.sk-circle-fade-dot:nth-child(8) {
  transform: rotate(240deg);
}

.sk-circle-fade-dot:nth-child(9) {
  transform: rotate(270deg);
}

.sk-circle-fade-dot:nth-child(10) {
  transform: rotate(300deg);
}

.sk-circle-fade-dot:nth-child(11) {
  transform: rotate(330deg);
}

.sk-circle-fade-dot:nth-child(1):before {
  animation-delay: -1.1s;
}

.sk-circle-fade-dot:nth-child(2):before {
  animation-delay: -1s;
}

.sk-circle-fade-dot:nth-child(3):before {
  animation-delay: -0.9s;
}

.sk-circle-fade-dot:nth-child(4):before {
  animation-delay: -0.8s;
}

.sk-circle-fade-dot:nth-child(5):before {
  animation-delay: -0.7s;
}

.sk-circle-fade-dot:nth-child(6):before {
  animation-delay: -0.6s;
}

.sk-circle-fade-dot:nth-child(7):before {
  animation-delay: -0.5s;
}

.sk-circle-fade-dot:nth-child(8):before {
  animation-delay: -0.4s;
}

.sk-circle-fade-dot:nth-child(9):before {
  animation-delay: -0.3s;
}

.sk-circle-fade-dot:nth-child(10):before {
  animation-delay: -0.2s;
}

.sk-circle-fade-dot:nth-child(11):before {
  animation-delay: -0.1s;
}

@keyframes sk-circle-fade {
  0%, 100%, 39% {
    opacity: 0;
    transform: scale(0.6);
  }
  40% {
    opacity: 1;
    transform: scale(1);
  }
}
.sk-grid {
  width: var(--sk-size);
  height: var(--sk-size);
}

.sk-grid-cube {
  width: 33.33%;
  height: 33.33%;
  background-color: var(--sk-color);
  float: left;
  animation: sk-grid 1.3s infinite ease-in-out;
}

.sk-grid-cube:nth-child(1) {
  animation-delay: 0.2s;
}

.sk-grid-cube:nth-child(2) {
  animation-delay: 0.3s;
}

.sk-grid-cube:nth-child(3) {
  animation-delay: 0.4s;
}

.sk-grid-cube:nth-child(4) {
  animation-delay: 0.1s;
}

.sk-grid-cube:nth-child(5) {
  animation-delay: 0.2s;
}

.sk-grid-cube:nth-child(6) {
  animation-delay: 0.3s;
}

.sk-grid-cube:nth-child(7) {
  animation-delay: 0s;
}

.sk-grid-cube:nth-child(8) {
  animation-delay: 0.1s;
}

.sk-grid-cube:nth-child(9) {
  animation-delay: 0.2s;
}

@keyframes sk-grid {
  0%, 100%, 70% {
    transform: scale3D(1, 1, 1);
  }
  35% {
    transform: scale3D(0, 0, 1);
  }
}
.sk-fold {
  width: var(--sk-size);
  height: var(--sk-size);
  position: relative;
  transform: rotateZ(45deg);
}

.sk-fold-cube {
  float: left;
  width: 50%;
  height: 50%;
  position: relative;
  transform: scale(1.1);
}

.sk-fold-cube:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--sk-color);
  animation: sk-fold 2.4s infinite linear both;
  transform-origin: 100% 100%;
}

.sk-fold-cube:nth-child(2) {
  transform: scale(1.1) rotateZ(90deg);
}

.sk-fold-cube:nth-child(4) {
  transform: scale(1.1) rotateZ(180deg);
}

.sk-fold-cube:nth-child(3) {
  transform: scale(1.1) rotateZ(270deg);
}

.sk-fold-cube:nth-child(2):before {
  animation-delay: 0.3s;
}

.sk-fold-cube:nth-child(4):before {
  animation-delay: 0.6s;
}

.sk-fold-cube:nth-child(3):before {
  animation-delay: 0.9s;
}

@keyframes sk-fold {
  0%, 10% {
    transform: perspective(140px) rotateX(-180deg);
    opacity: 0;
  }
  25%, 75% {
    transform: perspective(140px) rotateX(0);
    opacity: 1;
  }
  100%, 90% {
    transform: perspective(140px) rotateY(180deg);
    opacity: 0;
  }
}
.sk-wander {
  width: var(--sk-size);
  height: var(--sk-size);
  position: relative;
}

.sk-wander-cube {
  background-color: var(--sk-color);
  width: 20%;
  height: 20%;
  position: absolute;
  top: 0;
  left: 0;
  --sk-wander-distance:calc(var(--sk-size) * 0.75);
  animation: sk-wander 2s ease-in-out -2s infinite both;
}

.sk-wander-cube:nth-child(2) {
  animation-delay: -0.5s;
}

.sk-wander-cube:nth-child(3) {
  animation-delay: -1s;
}

@keyframes sk-wander {
  0% {
    transform: rotate(0);
  }
  25% {
    transform: translateX(var(--sk-wander-distance)) rotate(-90deg) scale(0.6);
  }
  50% {
    transform: translateX(var(--sk-wander-distance)) translateY(var(--sk-wander-distance)) rotate(-179deg);
  }
  50.1% {
    transform: translateX(var(--sk-wander-distance)) translateY(var(--sk-wander-distance)) rotate(-180deg);
  }
  75% {
    transform: translateX(0) translateY(var(--sk-wander-distance)) rotate(-270deg) scale(0.6);
  }
  100% {
    transform: rotate(-360deg);
  }
}
/*!*********************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[2].use[1]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[2].use[2]!./src/js/Module/lenis/lenis.scss ***!
  \*********************************************************************************************************************************************************************************/
html.lenis {
  height: auto;
}

.lenis.lenis-smooth {
  scroll-behavior: auto;
}

.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}

.lenis.lenis-stopped {
  overflow: hidden;
}

.lenis.lenis-scrolling iframe {
  pointer-events: none;
}

/*# sourceMappingURL=style.css.map*/