/* === SHARAFI MAIN CSS (CLEANUP NOTES) =========================================
   - Comments added for maintainability.
   - Duplicate/invalid meta/scripts handled in HTML.
   - Performance tips: compress + cache CSS/JS on server (Brotli/Gzip), serve images as WebP/AVIF.
   ============================================================================ */

@font-face {
  font-family: Icofont;
  src: url('../fonts/icofont.woff2') format("woff2"), url('../fonts/icofont.woff2') format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Tt Norms;
  src: url('../fonts/TT-Norms-Regular.otf') format("opentype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Tt Norms;
  src: url('../fonts/TT-Norms-Medium.otf') format("opentype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Tt Norms;
  src: url('../fonts/TT-Norms-Thin.otf') format("opentype");
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}

:root {
  --white: white;
  --fonts--paragraph: "Tt Norms", "Times New Roman", sans-serif;
  --primary-black: #4f4c4d;
  --fonts--heading: "Tt Norms", "Times New Roman", sans-serif;
  --heading: #fff;
  --primary: #153e4d;
  --secondary: white;
  --border: #242423;
  --paragraph: #e9e9e9;
  --background: #141212;
  --transparent: #fff0;
  --radius--border-full: 200px;
  --tertiary: #1c1c1c;
  --primary-brown: #8f8370;
  --heading-2: black;
  --radius--border: 10px;
  --radius--border-xl: 40px;
  --radius--border-sm: 5px;
  --border-2: #c9c9c9;
  --radius--button: 10px;
  --radius--border-lg: 20px;
  --z-radius--border\<deleted\|variable-3dac4dda-1030-6a8c-7acf-5872290de064\>: 6px;
  --paragraph-2: #292929;
  --fonts--icons: "Tt Norms", "Times New Roman", sans-serif;
  --size--hero-section-height: 101vh;
}

.w-layout-grid {
  grid-row-gap: 16px;
  grid-column-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.w-layout-blockcontainer {
  max-width: 940px;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

@media screen and (max-width: 991px) {
  .w-layout-blockcontainer {
    max-width: 728px;
  }
}

@media screen and (max-width: 767px) {
  .w-layout-blockcontainer {
    max-width: none;
  }
}

body {
  background-color: var(--white);
  font-family: var(--fonts--paragraph);
  color: var(--primary-black);
  letter-spacing: .3px;
  font-size: 22px;
  line-height: 1.5em;
}

h1 {
  font-family: var(--fonts--heading);
  color: var(--heading);
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 70px;
  font-weight: 500;
  line-height: 1.3em;
}

h2 {
  font-family: var(--fonts--heading);
  color: var(--primary-black);
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 48px;
  font-weight: 500;
  line-height: 1.4em;
}

h3 {
  font-family: var(--fonts--heading);
  color: var(--heading);
  text-transform: uppercase;
  margin-top: 20px;
  margin-bottom: 10px;
  font-size: 36px;
  font-weight: 400;
  line-height: 1.4em;
}

h4 {
  font-family: var(--fonts--heading);
  color: var(--heading);
  text-transform: uppercase;
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 30px;
  font-weight: 400;
  line-height: 1.4em;
}

h5 {
  font-family: var(--fonts--heading);
  color: var(--heading);
  text-transform: uppercase;
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 24px;
  font-weight: 400;
  line-height: 1.4em;
}

h6 {
  font-family: var(--fonts--heading);
  color: var(--heading);
  text-transform: uppercase;
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.4em;
}

p {
  font-family: var(--fonts--paragraph);
  color: var(--primary-black);
  margin-bottom: 0;
  font-size: 15px;
  line-height: 2.0em;
}

a {
  color: inherit;
  text-decoration: none;
}

ul {
  grid-column-gap: 12px;
  grid-row-gap: 12px;
  flex-flow: column;
  margin-top: 0;
  margin-bottom: 10px;
  padding-left: 0;
  display: flex;
  overflow: hidden;
}

ol {
  grid-column-gap: 12px;
  grid-row-gap: 12px;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  margin-top: 0;
  margin-bottom: 10px;
  padding-left: 0;
  display: flex;
}

li {
  font-family: var(--fonts--paragraph);
  color: var(--heading);
  background-image: url('../images/christmas-stars-1_1christmas-stars (1).avif');
  background-position: 0 6px;
  background-repeat: no-repeat;
  background-size: 18px;
  padding-top: 2px;
  padding-bottom: 2px;
  padding-left: 35px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5em;
  overflow: hidden;
}

img {
  object-fit: cover;
  width: 100%;
  display: inline-block;
}

label {
  font-family: var(--fonts--paragraph);
  letter-spacing: 1px;
  text-transform: capitalize;
  margin-bottom: 6px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.5em;
  display: block;
}

blockquote {
  background-color: var(--primary);
  color: var(--heading);
  letter-spacing: .5px;
  border: 1px #000;
  margin-top: 30px;
  margin-bottom: 40px;
  padding: 30px 28px;
  font-size: 24px;
  font-weight: 500;
  line-height: 30px;
}

.style-card-head {
  border-radius: 0;
  justify-content: center;
  align-items: center;
  width: 100%;
  min-height: 200px;
  display: flex;
  position: relative;
}

.style-card-head.secondary-color {
  background-color: var(--secondary);
}

.style-card-head.primary-color {
  background-color: var(--primary);
}

.style-card-head.border-color {
  background-color: var(--border);
}

.style-card-head.heading-color {
  background-color: var(--heading);
}

.style-card-head.paragraph-color {
  background-color: var(--paragraph);
}

.style-card-head.background-color {
  background-color: var(--background);
}

.style-guide-heading-wrapper {
  grid-column-gap: 15px;
  grid-row-gap: 15px;
  background-color: #000;
  border-radius: 10px;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin-bottom: 50px;
  padding: 10px 18px;
  display: flex;
}

.style-card-wrapper {
  border: 1px solid var(--border);
  border-radius: 20px;
  width: 100%;
  max-width: 280px;
  height: 100%;
  overflow: hidden;
  box-shadow: 0 10px 30px #1e234033;
}

.style-guide-contents-wrapper {
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 1000px;
  margin-bottom: 60px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  position: relative;
}

.style-guide-heading {
  color: #fff;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 36px;
  line-height: 46px;
}

.container {
  z-index: 100;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 1640px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}

.container._1040px {
  max-width: 1040px;
}

.container.nav-container {
  padding-left: 10px;
  padding-right: 10px;
}

.color-name {
  color: #fff;
  background-color: #000;
  border-radius: 6px;
  padding: 5px 10px;
  font-weight: 500;
  position: absolute;
  inset: 15px 20px auto auto;
}

.color-name.reverse-color {
  color: #000;
  background-color: #fff;
}

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

.style-guide-grid {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
  flex-flow: wrap;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  justify-content: center;
  align-items: center;
  width: 100%;
  display: flex;
}

.nav-menu-left-sidebar {
  grid-column-gap: 60px;
  grid-row-gap: 60px;
  flex-flow: row;
  justify-content: flex-start;
  align-items: center;
  display: flex;
  position: relative;
}

.navbar-main {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  border: 1px solid var(--transparent);
  border-radius: var(--radius--border-full);
  background-color: var(--tertiary);
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 12px 30px;
  display: flex;
}

.hamburger-menu {
  cursor: pointer;
  padding: 0;
  transition: transform .3s;
}

.hamburger-menu:hover {
  transform: scale(.96);
}

.hamburger-menu.w--open {
  background-color: #0000;
}

.navbar-rounded {
  z-index: 100;
  background-color: #fff0;
  flex-flow: column;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  transform: translate(0);
}

.progress-bar-line {
  background-color: var(--primary);
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
  width: 0%;
  height: 100%;
}

.primary-button {
  background-color: var(--primary-brown);
  color: var(--heading);
  letter-spacing: 1px;
  text-transform: uppercase;
  white-space: pre-line;
  justify-content: center;
  align-items: center;
  min-height: 46px;
  margin-top: 0;
  padding: 12px 30px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.2em;
  transition: all .35s;
  display: flex;
  position: relative;
  overflow: hidden;
}

.primary-button:where(.w-variant-de7ecc0b-32af-c871-5aec-aaea19fd964a) {
  border: 1px solid var(--primary-black);
  background-color: var(--transparent);
  letter-spacing: 2px;
  text-transform: uppercase;
  padding: 12px 30px;
}

.primary-button:where(.w-variant-d6cbf13c-23dd-26f5-59dc-6f0346e898d1) {
  border: 1px solid var(--secondary);
  background-color: var(--transparent);
  min-height: 64px;
  font-size: 20px;
}

.primary-button:hover {
  background-color: var(--primary-black);
}

.primary-button:hover:where(.w-variant-de7ecc0b-32af-c871-5aec-aaea19fd964a) {
  background-color: var(--primary-brown);
}

.primary-button.submit-button {
  width: 100%;
  padding-top: 19px;
  padding-bottom: 19px;
}

.primary-button.user-button {
  width: 100%;
  min-height: 60px;
  padding-top: 19px;
  padding-bottom: 19px;
}

.primary-button.room-button {
  border: 1px solid var(--secondary);
  background-color: var(--transparent);
  cursor: pointer;
  padding: 12px 28px;
}

.primary-button.room-button:hover {
  background-color: var(--primary-black);
}

.primary-button.cc-nav {
  border: 1px solid var(--secondary);
  background-color: #0000;
  font-weight: 400;
}

.primary-button.cc-nav:hover {
  background-color: var(--primary-brown);
}

.primary-button.gray-button {
  background-color: var(--primary-black);
}

.nav-link {
  z-index: 2;
  font-family: var(--fonts--heading);
  color: var(--heading);
  white-space: nowrap;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  max-height: 1.4em;
  font-size: 40px;
  font-weight: 400;
  line-height: 1.4em;
  text-decoration: none;
  transition: color .3s ease-out;
  display: flex;
  position: relative;
  overflow: hidden;
}

.nav-link:where(.w-variant-dc1fbd61-4f46-43b0-25e9-63fc8771ebc1) {
  font-family: var(--fonts--heading);
  font-size: 40px;
}

.nav-link:hover {
  color: var(--heading);
}

.nav-link:focus {
  color: var(--heading);
  border-bottom-color: #0956af;
  font-weight: 700;
}

.nav-link:focus-visible, .nav-link[data-wf-focus-visible] {
  outline-offset: 0px;
  outline: 2px solid #0050bd;
}

.nav-link.w--current {
  color: var(--heading);
  border-bottom-color: #0956af;
  font-weight: 600;
}

.hamburger-line {
  background-color: var(--primary-brown);
  width: 20px;
  height: 2px;
}

.hamburger-line._2 {
  width: 15px;
}

.hamburger-line._3 {
  width: 25px;
}

.default-text:where(.w-variant-de7ecc0b-32af-c871-5aec-aaea19fd964a) {
  color: var(--primary-black);
}

.default-text.black-heading:where(.w-variant-de7ecc0b-32af-c871-5aec-aaea19fd964a) {
  color: var(--white);
}

.default-text.black-heading {
  color: #000;
}

.default-text.primary-color {
  color: var(--primary);
}

.progress-bar {
  z-index: 101;
  height: 3px;
  position: fixed;
  inset: 0% 0% auto;
  overflow: hidden;
}

.close-navbar-icon {
  z-index: 100;
  background-color: var(--primary);
  cursor: pointer;
  border-radius: 100%;
  padding: 0;
  transition: transform .3s;
  position: absolute;
  inset: 48px 40px auto auto;
}

.close-navbar-icon:hover {
  transform: scale(.96);
}

.close-navbar-icon.w--open {
  z-index: 101;
  background-color: #0000;
  position: absolute;
  inset: 40px 40px auto auto;
}

.button-text-wrapper-26px {
  z-index: 2;
  white-space: nowrap;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  height: 26px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.site-logo {
  vertical-align: text-bottom;
  object-fit: contain;
  min-width: 70px;
  max-width: 70px;
}

.heading {
  margin-top: 0;
  margin-bottom: 0;
}

.heading:where(.w-variant-cee29522-b041-273f-4bb3-af3481e578f1) {
  color: var(--white);
}

.heading:where(.w-variant-f9dbd0ed-8b54-6953-400a-c71dac2b5a44) {
  background-color: var(--white);
}

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

.heading.text-aboreto {
  color: var(--heading);
  font-family: Aboreto, sans-serif;
  font-size: 2.1875rem;
  line-height: 2.5rem;
}

.service-card {
  z-index: 1;
  grid-column-gap: 18px;
  grid-row-gap: 18px;
  border-radius: var(--radius--border);
  background-color: var(--tertiary);
  cursor: none;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 29px 23px 34px 26px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.image-24px {
  max-width: 24px;
}

.footer-container {
  border: 1px solid var(--border);
  border-radius: var(--radius--border-xl);
  background-image: linear-gradient(122deg, var(--tertiary), var(--background));
  justify-content: space-between;
  align-items: flex-end;
  padding: 84px 72px 78px;
  display: flex;
}

.footer {
  grid-column-gap: 80px;
  grid-row-gap: 80px;
  background-color: #161616;
  background-image: url('../images/Vector-13.png');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  flex-flow: column;
  margin-top: 0;
  padding-top: 3rem;
  display: flex;
}

.footer:where(.w-variant-2cc22f17-ebe1-ac5a-e52d-ef3134b0fe93) {
  background-color: var(--white);
  color: var(--primary-black);
}

.footer.cc-new {
  background-color: var(--white);
  padding-bottom: 0;
}

.footer.cc-new.bg-grey {
  background-color: #403d3e;
}

.footer-text {
  max-width: 360px;
  margin-bottom: 0;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
}

.footer-link-wrapper {
  grid-column-gap: 5px;
  grid-row-gap: 5px;
  flex-flow: column;
  flex: none;
  text-decoration: none;
  transition: all .3s ease-in-out;
  display: flex;
}

.footer-link-wrapper:where(.w-variant-3bb5ab52-3c2d-0c7e-8634-04d47dfe9831) {
  color: var(--primary-black);
}

.footer-link {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  font-family: var(--fonts--paragraph);
  color: var(--paragraph);
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  max-height: 24px;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.4em;
  text-decoration: none;
  transition: color .3s ease-out;
  display: flex;
  overflow: hidden;
}

.footer-link:hover, .footer-link:focus {
  color: var(--heading);
}

.footer-link:focus-visible, .footer-link[data-wf-focus-visible] {
  outline-offset: 0px;
  outline: 2px solid #0050bd;
}

.mask {
  z-index: 10000;
  width: 100%;
  height: auto;
  position: relative;
  overflow: hidden;
}

.mask.mt-10rem {
  margin-top: 10rem;
}

.mask.cc-right-align {
  justify-content: flex-end;
  align-items: stretch;
  display: flex;
  overflow: visible;
}

.nav-border {
  background-color: var(--primary);
  border-radius: 2px;
  width: 100%;
  height: 2px;
}

.link-list {
  grid-column-gap: 48px;
  grid-row-gap: 48px;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.footer-block {
  grid-column-gap: 38px;
  grid-row-gap: 38px;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.footer-block.end {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  justify-content: flex-start;
  align-items: flex-end;
}

.horizontal-left-center-11px-gap {
  grid-column-gap: 11px;
  grid-row-gap: 11px;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

._16px-text {
  font-size: 16px;
  line-height: 24px;
}

.margin-bottom-23px {
  margin-bottom: 23px;
}

.social-icons-container {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.social-icon-wrapper {
  border: 1px solid var(--heading);
  background-color: #0000;
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  transition: background-color .3s;
  display: flex;
}

.social-icon-wrapper:where(.w-variant-2cc22f17-ebe1-ac5a-e52d-ef3134b0fe93), .social-icon-wrapper:hover, .social-icon-wrapper.cc-new {
  background-color: var(--primary-brown);
}

.footer-icon {
  object-fit: contain;
  max-width: 1rem;
  max-height: 1.5rem;
}

.works-slider {
  background-color: var(--transparent);
  width: 100%;
  height: 100%;
  margin-top: 0;
  position: static;
}

.hidden {
  display: none;
}

.portfolio-thumbnail-420px {
  aspect-ratio: 1;
  border-radius: var(--radius--border-sm);
  max-height: 420px;
}

.portfolio-slide {
  z-index: 1;
  border-radius: var(--radius--border);
  background-color: var(--tertiary);
  cursor: none;
  width: 100%;
  padding: 20px;
  position: relative;
  overflow: hidden;
}

.mask-visible {
  width: 100%;
  overflow: visible;
}

.slider-nav-arrow {
  justify-content: flex-start;
  align-items: flex-start;
  margin-left: 0;
  margin-right: 0;
  display: flex;
  inset: -100px auto auto 0%;
  overflow: visible;
}

.slider-nav-arrow.right-arrow {
  justify-content: flex-end;
  align-items: flex-start;
  inset: -100px 0% auto auto;
}

.navigation-icon-wrapper {
  background-color: var(--primary-brown);
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 70px;
  height: 70px;
  transition: all .35s;
  display: flex;
}

.navigation-icon-wrapper:hover {
  background-color: var(--primary-black);
}

.navigation-icon-image {
  min-width: 24px;
  max-width: 24px;
}

._20px-text-black {
  color: var(--heading-2);
  margin-top: 0;
  margin-bottom: 0;
  font-size: 20px;
  line-height: 32px;
}

.accordion {
  border: 1px solid var(--border);
  border-radius: var(--radius--border);
  background-color: var(--tertiary);
  cursor: pointer;
  flex-flow: column;
  width: 100%;
  padding: 8px 0;
  transition: border-color .3s;
  display: flex;
}

.accordion:hover {
  border-color: var(--border-2);
  color: var(--heading);
}

.accordion.w--current {
  border-color: var(--border-2);
  background-color: var(--tertiary);
}

.plus-sign-vertical {
  background-color: var(--secondary);
  border-radius: 20px;
  width: 18px;
  height: 2px;
  position: absolute;
  transform: rotate(90deg);
}

.plus-sign {
  background-color: var(--heading);
  border-radius: 20px;
  width: 18px;
  height: 2px;
  position: absolute;
}

._2-column-block-top {
  grid-column-gap: 50px;
  grid-row-gap: 50px;
  justify-content: space-between;
  align-items: flex-start;
  display: flex;
}

.contact-form-wrapper {
  grid-column-gap: 71px;
  grid-row-gap: 71px;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 696px;
  margin-bottom: 0;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.contact-form {
  grid-column-gap: 25px;
  grid-row-gap: 25px;
  flex-flow: column;
  width: 100%;
  display: flex;
}

.input-field {
  border-style: none none solid;
  border-width: 1px;
  border-color: var(--border-2);
  font-family: var(--fonts--paragraph);
  color: var(--heading);
  cursor: none;
  background-color: #fff0;
  min-height: 56px;
  margin-bottom: 0;
  padding: 20px 0;
  font-size: 20px;
  line-height: 30px;
  transition: border-color .3s;
}

.input-field:hover {
  border-color: var(--primary) var(--primary) var(--white);
}

.input-field:focus {
  border-color: var(--primary);
}

.input-field::placeholder {
  color: var(--paragraph);
}

.input-field.text-area {
  min-height: 110px;
  margin-bottom: 25px;
}

.input-field.cc-text-color-black, .input-field.cc-text-color-black::placeholder {
  color: var(--tertiary);
}

.contact-bottom-svg {
  z-index: 2;
  max-width: 376px;
  position: absolute;
  inset: auto auto 0% 0%;
}

.contact-bottom-svg-top-right {
  max-width: 235px;
  position: absolute;
  inset: 2% 2% auto auto;
}

._4-column-grid {
  grid-column-gap: 28px;
  grid-row-gap: 28px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.horizontal-wrapper-24px {
  justify-content: flex-start;
  align-items: center;
  min-width: 24px;
  max-width: 24px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.slider-wrapper {
  z-index: 3;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 900px;
  margin-top: 0;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

.text:where(.w-variant-3bb5ab52-3c2d-0c7e-8634-04d47dfe9831) {
  color: var(--primary-black);
}

.text.smaller {
  font-size: 24px;
}

.full-image {
  height: 100%;
}

.hover-from-bottom {
  z-index: -1;
  background-color: var(--primary);
  position: absolute;
  inset: auto 0% 0%;
}

._5px-rounded-mask {
  border-radius: var(--radius--border-sm);
  position: relative;
  overflow: hidden;
}

.hover-from-top {
  z-index: -1;
  background-color: var(--primary);
  position: absolute;
  inset: 0% 0% auto;
}

.navbar-hide-show-effect {
  z-index: 2;
  flex-flow: column;
  align-items: center;
  height: 1px;
  display: none;
  position: absolute;
  inset: 120vh 0% auto;
}

.cursor-mouse-wrapper {
  z-index: 101;
  pointer-events: none;
  mix-blend-mode: difference;
  justify-content: center;
  align-items: center;
  display: none;
  position: fixed;
  inset: 0%;
}

.cursor-mouse {
  background-color: var(--secondary);
  border-radius: 50%;
  width: 10px;
  height: 10px;
}

.custom-button {
  z-index: 5;
  background-color: var(--transparent);
  justify-content: center;
  align-items: center;
  height: auto;
  margin-top: 0;
  margin-bottom: 0;
  padding: 0;
  display: flex;
  position: absolute;
  inset: 0%;
}

.custom-button.black {
  color: var(--heading-2);
}

.main-cursor {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.main-cursor.horizontal {
  display: none;
}

.side-parts {
  background-color: var(--secondary);
  width: 0;
  height: 0;
}

.main-part {
  background-color: var(--tertiary);
  width: 2px;
  height: 20px;
}

.arrow-part {
  background-color: var(--tertiary);
  width: 15px;
  height: 2px;
}

.arrow-part.left {
  transform: translate(5px, 9px)rotate(45deg);
}

.arrow-part.right {
  transform: translate(-5px, 7px)rotate(-45deg);
}

.nav-menu-wrapper {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.bar-wrapper {
  position: relative;
  overflow: hidden;
}

.bars {
  grid-column-gap: 5px;
  grid-row-gap: 5px;
  flex-flow: column;
  display: flex;
}

.image-show-effect {
  width: 100%;
  height: 100%;
  display: none;
  position: absolute;
  inset: 0%;
}

.image-show-effect:where(.w-variant-bcda6897-16d3-eabc-c9c3-40a76628bd33) {
  height: 105%;
}

.white-background-image {
  z-index: 1;
  background-color: var(--secondary);
  width: 100%;
  height: 100%;
  position: relative;
}

.primary-background-image {
  background-color: var(--primary);
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.absolute-hover {
  z-index: -1;
  background-color: var(--primary);
  width: 100%;
  height: 0%;
  position: absolute;
  inset: 0%;
}

.absolute-hover.background-color-linear {
  background-color: #0000;
  background-image: linear-gradient(180deg, var(--background), var(--background) 80%, var(--transparent));
}

.half-part {
  z-index: 1;
  background-color: #000;
  width: 100%;
  height: 50%;
  position: fixed;
  inset: 0% 0% auto;
}

.half-part.lower-half {
  inset: auto 0% 0%;
}

.loader {
  z-index: 102;
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100vw;
  height: 100vh;
  padding-left: 20px;
  padding-right: 20px;
  display: none;
  position: fixed;
  inset: 0%;
  overflow: clip;
}

.your-profession {
  z-index: 2;
  grid-column-gap: 5px;
  grid-row-gap: 5px;
  color: #fff;
  text-transform: uppercase;
  justify-content: flex-start;
  align-items: center;
  font-size: 70px;
  font-weight: 700;
  line-height: 1em;
  display: flex;
  position: relative;
  overflow: hidden;
}

.profession-middle-text {
  color: var(--primary);
  font-weight: 800;
}

.site-title-wrapper {
  z-index: 2;
  color: var(--heading);
  text-transform: uppercase;
  font-size: 70px;
  line-height: 1em;
  position: relative;
  overflow: hidden;
}

.site-name {
  font-weight: 700;
}

.loading-banner {
  background-color: var(--primary);
  border-radius: 10px;
  width: 100%;
  display: none;
  position: absolute;
  inset: 0%;
}

.success-message {
  border-radius: var(--radius--border);
  background-color: var(--primary);
  font-family: var(--fonts--paragraph);
  color: var(--tertiary);
  max-width: 450px;
  margin-top: -20px;
  font-size: 16px;
  font-weight: 400;
  line-height: 26px;
}

.error-message {
  border-radius: var(--radius--border);
  color: var(--tertiary);
  background-color: #ff0e0e;
  margin-top: -20px;
  padding: 20px;
  font-weight: 500;
}

.nx-button-wrapper {
  z-index: 1;
  border-radius: 50px;
  justify-content: center;
  align-items: center;
  padding: 2px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.button {
  z-index: 1;
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  background-color: var(--tertiary);
  color: #fff;
  text-transform: uppercase;
  border-radius: 50px;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 14px 36px;
  font-size: 18px;
  font-weight: 600;
  display: flex;
  position: relative;
}

.button-text-wrapper {
  z-index: 2;
  white-space: nowrap;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  height: 1.2em;
  display: flex;
  position: relative;
  overflow: hidden;
}

.button-gradient {
  background-image: linear-gradient(90deg, #0000, #fff 50%, #0000);
  width: 50%;
  height: 900%;
  position: absolute;
  transform: rotate(60deg);
}

.cursor-circle {
  border: 1px solid var(--secondary);
  border-radius: 550%;
  width: 30px;
  height: 30px;
  position: absolute;
}

.cursor-mouse-pointer {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.site-wrapper {
  overflow: clip;
}

.title {
  grid-column-gap: 12px;
  grid-row-gap: 12px;
  color: #fff;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 10px;
  font-size: 20px;
  font-weight: 400;
  line-height: 30px;
  display: flex;
}

.primary-title-divider-loop {
  background-color: #fff;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.title-divider {
  background-color: var(--border);
  border-radius: 20px;
  width: 40px;
  height: 2px;
  position: relative;
  overflow: hidden;
}

._10px-diamond {
  background-color: var(--secondary);
  width: 10px;
  height: 10px;
  transform: rotate(45deg);
}

.nav-link-wrapper {
  color: var(--heading);
  justify-content: center;
  align-items: center;
  padding: 5px 12px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.absolute-hover-bottom {
  background-color: var(--secondary);
  width: 100%;
  height: 0%;
  position: absolute;
  top: auto;
  left: 0%;
  right: 0%;
  transform: rotate(45deg);
}

.absolute-hover-bottom:where(.w-variant-de7ecc0b-32af-c871-5aec-aaea19fd964a) {
  height: 0%;
  transform: rotate(45deg);
}

.absolute-hover-bottom.primary {
  background-color: var(--primary);
}

.contents {
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 50%;
  display: flex;
}

._2-column-block {
  grid-column-gap: 60px;
  grid-row-gap: 45px;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

._2-column-block.margin-bottom-50px {
  margin-bottom: 50px;
}

.secondary-button {
  z-index: 1;
  background-color: var(--tertiary);
  border-radius: 50px;
  justify-content: center;
  align-items: center;
  padding: 15px 36px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.text-merge-title {
  grid-column-gap: 5px;
  grid-row-gap: 0px;
  justify-content: center;
  align-items: center;
  position: relative;
  overflow: hidden;
}

.text-merge-title:where(.w-variant-3b8e95ea-9b2e-7686-f185-61f88b486bd6), .text-merge-title.white-bg-black-text, .text-merge-title.white-bg-black-text-4 {
  background-color: var(--white);
}

.product-bar-texts-vertical {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  text-align: center;
  flex-flow: column;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  min-width: 500px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  overflow: hidden;
}

.absolute-style-text {
  background-color: var(--white);
  width: 200%;
  display: none;
  position: absolute;
  inset: 0%;
}

.absolute-style-text:where(.w-variant-cee29522-b041-273f-4bb3-af3481e578f1), .absolute-style-text.text-white-8 {
  background-color: var(--primary-brown);
}

.gradient-color {
  z-index: -1;
  background-image: linear-gradient(90deg, var(--transparent), var(--secondary) 50%, var(--transparent));
  width: 50%;
  height: 900%;
  position: absolute;
}

.dynamic-gradient-title {
  border-radius: 50px;
  justify-content: center;
  align-items: center;
  margin-bottom: 10px;
  padding: 2px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.title-bar {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  text-align: center;
  flex-flow: column;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1.5fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  place-items: center;
  width: 100%;
  margin-bottom: 65px;
  display: flex;
}

.title-bar.text-white.mb-0 {
  margin-bottom: 0;
}

.gradient-title {
  z-index: 1;
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  background-color: var(--tertiary);
  color: var(--heading);
  text-transform: uppercase;
  border-radius: 50px;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 6px 23px;
  font-size: 18px;
  font-weight: 500;
  display: flex;
  position: relative;
}

._2px-height-border {
  z-index: 1;
  background-color: #fff;
  width: 100%;
  height: 1px;
  margin-right: auto;
}

._2px-height-border.right {
  margin-left: auto;
  margin-right: 0;
}

._8px-circle-title {
  background-color: var(--secondary);
  border-radius: 50%;
  width: 8px;
  height: 8px;
}

.gradient-color-initial-90 {
  background-image: linear-gradient(90deg, var(--transparent), #ffffff80 50%, var(--transparent));
  width: 50%;
  height: 400%;
  position: absolute;
  transform: rotate(90deg);
}

.partner-logo {
  object-fit: contain;
  width: auto;
  max-width: 130px;
  height: 50px;
}

.mt-20px-mb-45px {
  margin-top: 20px;
  margin-bottom: 45px;
}

.counter-number-wrapper {
  height: 1em;
}

.animated-counter {
  opacity: .4;
  font-family: var(--fonts--heading);
  color: var(--primary);
  flex: none;
  margin-bottom: 10px;
  font-size: 120px;
  line-height: 1em;
  display: flex;
  overflow: hidden;
}

.animated-counter:where(.w-variant-239ede22-5cb1-2d61-48c0-e3df33f47585) {
  font-size: 90px;
}

.counter-title {
  color: var(--primary-black);
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.4em;
}

.counter-title:where(.w-variant-239ede22-5cb1-2d61-48c0-e3df33f47585) {
  font-size: 18px;
}

.counter-title:where(.w-variant-925116d6-eb4d-e944-1965-18c7c8842e2f) {
  background-color: var(--white);
  color: var(--primary-black);
}

.counter-number-text {
  color: var(--white);
  margin-top: 0;
  margin-bottom: 0;
}

.counter-number-text:where(.w-variant-239ede22-5cb1-2d61-48c0-e3df33f47585), .counter-number-text:where(.w-variant-925116d6-eb4d-e944-1965-18c7c8842e2f) {
  color: var(--primary-black);
}

.postfix {
  color: var(--primary);
  margin-top: 0;
  margin-bottom: 0;
  font-size: 70px;
  line-height: 96px;
}

.margin-bottom-8px {
  margin-bottom: 8px;
}

.vertical-center-align {
  text-align: center;
  flex-flow: row;
  justify-content: center;
  align-items: center;
  display: flex;
}

.counter-symbol-wrapper {
  justify-content: center;
  align-items: center;
  display: none;
}

.counter-number-wrapper-reverse {
  height: 1em;
  transform: translate(0, -1000%);
}

.infinity-item-container {
  justify-content: space-around;
  align-items: center;
  min-width: 100%;
  display: flex;
}

.infinity-item-container.inline {
  container-type: inline-size;
}

.infinity-slider-carousel {
  z-index: 1;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding-top: 30px;
  padding-bottom: 30px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.mb-20px {
  margin-bottom: 20px;
}

.project-nav {
  justify-content: center;
  align-items: center;
  height: 40%;
  margin-top: 0;
  margin-bottom: auto;
  display: flex;
  left: auto;
  right: 0%;
}

.infinity-text {
  color: var(--heading);
  text-transform: uppercase;
  width: 25rem;
  min-width: 25rem;
  height: 25rem;
  margin-right: 1rem;
  font-size: 5cqw;
  font-weight: 700;
  line-height: 1em;
}

.white-button {
  z-index: 1;
  background-color: var(--secondary);
  color: var(--heading-2);
  border-radius: 50px;
  justify-content: center;
  align-items: center;
  padding: 15px 36px;
  font-size: 18px;
  font-weight: 500;
  line-height: 28px;
  display: flex;
  position: relative;
  overflow: hidden;
}

._20px-text {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 20px;
  line-height: 1.4em;
}

.skill-bar {
  z-index: 1;
  background-color: var(--secondary);
  color: #fff;
  border-radius: 50px;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  min-height: 48px;
  padding-left: 20px;
  padding-right: 20px;
  font-weight: 600;
  display: flex;
  position: relative;
  overflow: hidden;
}

.section {
  padding-top: 5rem;
  padding-bottom: 5rem;
}

.section.relative {
  position: relative;
}

.section.relative.bg-color-brown, .section.cc-bg-brown {
  background-color: var(--primary-brown);
}

.section.cc-full-section {
  padding-top: 3rem;
  padding-bottom: 0;
}

.section.cta-new-section {
  background-image: url('../images/Rectangle-1909123623.png');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  padding-top: 6rem;
  padding-bottom: 6rem;
}

.section.cc-about-hero {
  padding-top: 10rem;
  padding-bottom: 3rem;
}

.section.pd-10 {
  padding-top: 8rem;
  padding-bottom: 10rem;
}

.section.cc-hero-new {
  justify-content: flex-end;
  align-items: stretch;
  padding-top: 9.5rem;
  display: flex;
}

.section.pb-15 {
  padding-bottom: 15rem;
}

.section.cc-about-new, .section.cc-marea-hero {
  padding-top: 10rem;
}

.section.cc-video-hero {
  background-image: url('../images/Marasi-Bay-Brochure-2-2.png');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  height: 100vh;
  padding-top: 0;
  padding-bottom: 0;
}

.section.pd-0 {
  padding-top: 0;
  padding-bottom: 0;
}

.section.bg-pattern {
  background-image: url('../images/Vector-12.png');
  background-position: 50% 60%;
  background-repeat: no-repeat;
  background-size: contain;
}

.section.cc-video-hero-other {
  background-image: url('../images/project-hero-1.jpg');
  background-position: 50%;
  height: 75vh;
  padding-top: 0;
  padding-bottom: 0;
}

.section.cc-video-hero-other.cc-news {
  background-image: url('../images/marea-hero.jpg');
}

.section.bg-pattern-big {
  background-image: url('../images/Vector-14.png');
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: cover;
}

.section.bg-image-section {
  background-image: url('../images/project-hero-2.jpg');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  justify-content: space-between;
  align-items: center;
  height: 90vh;
  display: flex;
}

.section.marquee-section {
  position: relative;
}
.section.cta-new-section-v2 {
  background-image: none;
  background-color: transparent;
  padding-top: 6rem;
  padding-bottom: 6rem;
}

.reg-input,
.reg-textarea {
  background-color: #ffffff;
  color: #111111;
  border: 1px solid rgba(0, 0, 0, 0.18);
}

.reg-input::placeholder,
.reg-textarea::placeholder {
  color: #8b8b8b;
}

.reg-label {
  color: #1a1a1a;
  font-weight: 500;
  letter-spacing: 0.05em;
}

.reg-card {
  background-color: #f2f2f2;
  border: 1px solid rgba(0, 0, 0, 0.08);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12);
}

.reg-submit {
  background-color: #111111;
  color: #ffffff;
}

/* Left side text clarity */
.cta-new-section-v2 .reg-kicker-text,
.cta-new-section-v2 .reg-title,
.cta-new-section-v2 .reg-desc,
.cta-new-section-v2 .reg-chip {
  color: #111111;
}

.cta-new-section-v2 .reg-kicker-line {
  background-color: #bfa76a;
}

.cta-new-section-v2 .reg-chip {
  background: rgba(0, 0, 0, 0.05);
  border: 1px solid rgba(0, 0, 0, 0.08);
}


.reg-card {
  background: rgba(28, 28, 28, 0.85); /* footer-like dark glass */
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 18px;

  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);

  box-shadow:
    0 30px 80px rgba(0, 0, 0, 0.45),
    inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

.reg-input,
.reg-textarea {
  background: rgba(255, 255, 255, 0.04);
  color: #ffffff;

  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 12px;
}

.reg-input::placeholder,
.reg-textarea::placeholder {
  color: rgba(255, 255, 255, 0.45);
}

.reg-input:focus,
.reg-textarea:focus {
  border-color: #bfa76a;
  outline: none;
  box-shadow: 0 0 0 2px rgba(191, 167, 106, 0.18);
}

.reg-label {
  color: rgba(255, 255, 255, 0.75);
  letter-spacing: 0.08em;
  font-weight: 500;
}

.reg-submit {
  background: #ffffff;
  color: #111111;
  border-radius: 14px;
  font-weight: 600;
}

.reg-submit:hover {
  background: #f3f3f3;
}

.reg-footnote {
  color: rgba(255, 255, 255, 0.45);
}

/* Make the form card match the footer glass exactly */
.cta-new-section-v2 .reg-card{
  background: rgba(34, 34, 34, 0.72) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.06) !important;
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
}


.section.cta-new-section-v3 {
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  justify-content: center;
  align-items: center;
  height: 70vh;
  padding-top: 6rem;
  padding-bottom: 6rem;
  display: flex;
}

.section.cc-video-hero-project {
  background-image: url('../images/Marasi-Bay-Brochure-2-1.png');
  background-position: 50%;
  height: 75vh;
  padding-top: 0;
  padding-bottom: 0;
}

.section.cc-video-hero-project.cc-news {
  background-image: url('../images/Marasi-Bay-Brochure-2.png');
}

.section.cc-video-hero-home {
  background-image: linear-gradient(#0000004d, #0000004d);
  height: 100vh;
  padding-top: 0;
  padding-bottom: 0;
}

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

.gradient-color-2 {
  background-image: linear-gradient(90deg, #fe4d581a, #4252ff 50%, #b264f31a);
  width: 50%;
  height: 900%;
  position: absolute;
}

.mt-10px {
  margin-top: 10px;
}

._30px-text {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 30px;
  line-height: 1.2em;
}

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

._3-column-grid {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.testimonials-vertical-wrapper {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  flex-flow: column;
  justify-content: space-between;
  display: flex;
}

.testimonial-contents-5px-gap {
  flex-flow: column;
  justify-content: flex-start;
  align-items: stretch;
  width: 100%;
  display: flex;
}

._14px-text {
  font-size: 14px;
  line-height: 24px;
}

.space-between-center {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

._16px-star-icon {
  color: var(--secondary);
  font-family: Material Icons, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 16px;
}

.vertical-left-top {
  flex-direction: column;
  align-items: flex-start;
  display: flex;
  position: relative;
}

.vertical-left-top.gap-1-5rem {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
}

.clip-overlay-top {
  background-image: linear-gradient(180deg, var(--background), var(--transparent));
  pointer-events: none;
  width: 100%;
  height: 35%;
  position: absolute;
  inset: 0% 0% auto;
}

.testimonial-white-30px-padding {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  background-color: var(--tertiary);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  padding: 20px 30px 30px;
  display: flex;
  overflow: hidden;
  box-shadow: 0 10px 45px #0000001a;
}

.testimonial-star-wrapper {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  flex-flow: row;
  justify-content: flex-start;
  align-items: center;
  display: flex;
  overflow: hidden;
}

.testimonial-client-image {
  height: 100%;
}

.image-40px {
  max-width: 40px;
}

.testimonial-image-wrapper {
  background-color: #f5f5f5;
  border-radius: 1000px;
  width: 100%;
  max-width: 45px;
  height: 45px;
  overflow: hidden;
}

.mt-15px-mb-25px {
  margin-top: 15px;
  margin-bottom: 25px;
}

._20px-text-600 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.5em;
}

.clip-overlay-bottom {
  background-image: linear-gradient(0deg, var(--background), var(--transparent));
  pointer-events: none;
  width: 100%;
  height: 40%;
  position: absolute;
  inset: auto 0% 0%;
}

.horizontal-left-center-15px-gap {
  grid-column-gap: 15px;
  grid-row-gap: 15px;
  flex-flow: row;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.work-info-divider {
  border-radius: var(--radius--button);
  background-color: var(--secondary);
  width: 4px;
  height: 90px;
  position: absolute;
  top: 0;
  left: 10%;
}

.horizontal-slider-section {
  height: 200vw;
  position: relative;
}

.camera {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100vw;
  height: 100vh;
  display: flex;
  position: sticky;
  top: 0;
}

.frame {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  flex-flow: row;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: flex-start;
  align-items: flex-end;
  width: 100%;
  display: flex;
}

.item {
  flex: none;
  justify-content: flex-start;
  align-items: center;
  width: 100vw;
  height: 45vh;
  display: flex;
}

.portfolio-card {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.portfolio-horizontal {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
}

.portfolio-thumbnail {
  height: 100%;
  min-height: 300px;
}

.frame-reverse {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  flex-flow: row;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

.full-width-height {
  width: 100%;
  height: 100%;
}

.portfolio-info-card {
  border-radius: var(--radius--border-lg);
  background-color: var(--secondary);
  text-align: center;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  padding: 30px 25px;
  display: flex;
  position: absolute;
  inset: auto 15px 20px;
}

.black-overlay {
  pointer-events: none;
  background-color: #0009;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.dropdown-contents {
  background-color: #fff0;
  width: 100%;
  display: flex;
  position: static;
  overflow: hidden;
}

.dropdown-faq-block {
  background-color: var(--transparent);
  cursor: pointer;
  flex-direction: column;
  width: 100%;
  padding-left: 0;
  display: flex;
}

.dropdown-faq-block.w--current {
  background-color: var(--transparent);
}

.dropdown-switch {
  grid-column-gap: 20px;
  background-color: #fff0;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 17px 12px 17px 0;
  text-decoration: none;
  display: flex;
  position: relative;
  overflow: visible;
}

.dropdown-border {
  background-color: var(--primary);
  width: 100%;
  height: 100%;
}

._40px-rounded-border-icon {
  border: 1px solid var(--border-2);
  color: var(--heading);
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 35px;
  height: 35px;
  font-family: Material Icons, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 18px;
  display: flex;
}

.dropdown-title {
  color: var(--primary-black);
  font-size: 18px;
  font-weight: 500;
  line-height: 26px;
}

.dropdown-texts {
  margin-top: 0;
  margin-bottom: 0;
  padding-bottom: 17px;
}

._24px-text {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 24px;
  line-height: 36px;
}

.blog-hover-divider {
  background-color: var(--primary);
  height: 0%;
  position: absolute;
  inset: 0%;
}

.heading-category-wrapper {
  grid-column-gap: 7px;
  grid-row-gap: 7px;
  justify-content: center;
  align-items: flex-start;
  padding-left: 18px;
  position: relative;
}

.blog-divider {
  background-color: var(--border);
  width: 2px;
  height: 100%;
  position: absolute;
  inset: 0% auto 0% 0%;
}

.blog-body {
  grid-column-gap: 15px;
  grid-row-gap: 15px;
  width: 100%;
  padding: 30px 10px;
}

.blog-card {
  border-radius: var(--z-radius--border\<deleted\|variable-3dac4dda-1030-6a8c-7acf-5872290de064\>);
  text-align: left;
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
  box-shadow: 0 8px 25px #00000012;
}

.blog-thubnail-mask {
  justify-content: center;
  align-items: flex-end;
  width: 100%;
  display: flex;
  position: relative;
  overflow: hidden;
}

.horizontal-left-center-8px-gap-wrap {
  grid-column-gap: 8px;
  grid-row-gap: 8px;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.horizontal-left-center-5px-gap {
  grid-column-gap: 5px;
  grid-row-gap: 5px;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.blog-thumbnail-300px {
  height: 300px;
}

.blog-thumbnail-300px._160px {
  height: 160px;
}

.text-link-with-border {
  grid-column-gap: 2px;
  grid-row-gap: 2px;
  flex-flow: column;
  margin-top: 10px;
  font-size: 14px;
  font-weight: 500;
  line-height: 24px;
  transition: color .35s;
  display: flex;
}

.text-link-with-border:hover {
  color: var(--primary);
}

.text-link-with-border._24px-text {
  font-size: 24px;
  line-height: 36px;
}

.link-border {
  background-color: var(--secondary);
  width: 100%;
  height: 2px;
}

.link-border-secodnary {
  background-color: var(--primary);
  width: 100%;
  height: 2px;
  position: absolute;
  inset: 0%;
}

.bottom-style {
  z-index: -1;
  width: 100%;
  height: 45px;
  position: absolute;
  top: auto;
  bottom: 21%;
  left: 100px;
  overflow: hidden;
  transform: skew(-15deg)rotate(-20deg);
}

.bottom-style.black {
  z-index: 1;
  width: 90%;
  height: 30px;
  bottom: 17%;
  left: 220px;
  overflow: hidden;
}

.mb-50px {
  margin-bottom: 50px;
}

.image-wrapper {
  justify-content: center;
  align-items: center;
  width: 50%;
  display: flex;
  position: relative;
}

.image-wrapper.sticky {
  position: sticky;
  top: 125px;
}

.hero-section-slide {
  background-color: #fff0;
  height: 100%;
  padding-top: 150px;
  padding-bottom: 140px;
  position: relative;
}

.container-z-3 {
  z-index: 3;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 1440px;
  min-height: auto;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
  position: relative;
}

.black-absolute-full {
  background-color: var(--border-2);
  position: absolute;
  inset: 0%;
}

.black-heading {
  color: var(--heading-2);
  margin-top: 0;
  margin-bottom: 0;
}

.primary-absolute-full {
  background-color: var(--primary);
  position: absolute;
  inset: 0%;
}

.image-30px {
  max-width: 30px;
}

.linear-background {
  z-index: 1;
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  background-image: linear-gradient(0deg, #000, #0000);
  flex-flow: column;
  justify-content: flex-end;
  align-items: flex-start;
  width: 100%;
  height: 100%;
  padding-bottom: 20px;
  padding-left: 20px;
  padding-right: 20px;
  display: flex;
  position: absolute;
  inset: auto 0% 0%;
}

.testimonial-body {
  border: 1px solid var(--transparent);
  border-radius: var(--radius--border);
  background-color: var(--tertiary);
  margin-top: 20px;
  margin-bottom: -45px;
  padding: 50px 30px 80px 40px;
}

._60px-image-wrapper {
  border-radius: 50%;
  width: 100%;
  max-width: 80px;
  height: 80px;
  overflow: hidden;
}

.client-info-wrapper {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  flex-flow: row;
  justify-content: flex-start;
  align-items: center;
  padding-left: 40px;
  display: flex;
}

.center-arrow-right, .center-arrow-left {
  justify-content: center;
  align-items: center;
  max-width: 45px;
  display: flex;
  overflow: visible;
}

.testimonial-margin {
  margin-right: 10%;
}

.quote-rating-wrapper {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  justify-content: space-between;
  align-items: center;
  padding-left: 40px;
  padding-right: 30px;
  display: flex;
}

._18px-text {
  font-size: 18px;
  line-height: 1.6em;
}

._5px-gap {
  grid-column-gap: 5px;
  grid-row-gap: 5px;
}

.slider-vertical-wrapper {
  overflow: hidden;
}

.logo-text-divider {
  grid-column-gap: 25px;
  grid-row-gap: 25px;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.logo-divider {
  background-color: var(--secondary);
  width: 100%;
  height: 1px;
}

.logo-text-no-wrap {
  color: var(--white);
  white-space: nowrap;
  font-size: 20px;
  line-height: 32px;
}

.service-infinity-card {
  border-top: 1px solid var(--border);
  justify-content: center;
  align-items: center;
  padding-top: 25px;
  padding-bottom: 25px;
  display: flex;
  position: relative;
}

.full-width {
  width: 100%;
}

.team-card-body-510px {
  background-color: var(--tertiary);
  justify-content: center;
  align-items: flex-end;
  width: 100%;
  min-height: 510px;
  padding-bottom: 40px;
  padding-left: 20px;
  padding-right: 20px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.team-image-rounded {
  aspect-ratio: 2 / 3;
  max-height: 450px;
}

.social-image-filter-white {
  filter: brightness(0%) invert();
  max-width: 20px;
}

.socials-links-wrapper {
  z-index: 2;
  grid-column-gap: 12px;
  grid-row-gap: 12px;
  flex: 1;
  grid-template-rows: auto;
  grid-template-columns: repeat(auto-fit, 36px);
  justify-content: center;
  align-self: center;
  place-items: center;
  display: flex;
  position: absolute;
  bottom: 40px;
}

.social-links {
  color: #fff;
  background-color: #fff0;
  border: 2px solid #fff;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 100%;
  min-width: 45px;
  max-width: 45px;
  height: 45px;
  font-size: 20px;
  font-weight: 400;
  line-height: 20px;
  transition: background-color .3s, border-color .4s ease-out;
  display: flex;
}

.social-links:hover {
  color: #fff;
  background-color: #0956af;
  border-color: #fff0;
}

.team-hover-color {
  background-color: var(--primary);
  border-radius: 50%;
  width: 800px;
  height: 800px;
  display: block;
  position: absolute;
  inset: -25% 0% 0% -50%;
}

.team-image-wrapper-20px-padding {
  z-index: 1;
  width: 100%;
  padding-left: 20px;
  padding-right: 20px;
  position: absolute;
  top: -60px;
}

.z-index-1 {
  z-index: 1;
  position: relative;
}

.team-image-border {
  background-color: #1a94ff;
  justify-content: center;
  align-items: flex-end;
  display: flex;
  position: relative;
  overflow: hidden;
}

.team-card-1 {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  flex-flow: column;
  justify-content: flex-end;
  align-items: flex-end;
  width: 100%;
  max-width: 400px;
  margin-top: 80px;
  display: flex;
  position: relative;
}

.team-image-hover {
  background-color: #00000080;
  border-radius: 50%;
  width: 700px;
  height: 700px;
  display: block;
  position: absolute;
  inset: -17% 0% 0% -54%;
}

.absolute-hover-auto {
  z-index: 1;
  position: absolute;
  inset: 0%;
}

.team-card-overlay-style {
  border-radius: 10px;
  width: 100%;
  position: relative;
}

._16px-500-primary {
  color: var(--primary);
  font-size: 14px;
  font-weight: 500;
  line-height: 26px;
}

.team-member-card-absolute {
  z-index: 1;
  grid-column-gap: 8px;
  grid-row-gap: 8px;
  border-radius: var(--radius--border);
  background-color: var(--background);
  flex-flow: column;
  justify-content: center;
  align-items: center;
  padding: 20px;
  display: flex;
  position: absolute;
  inset: auto 10px 10px;
  box-shadow: 0 8px 28px #0068c81a;
}

.portrait-full {
  aspect-ratio: 2 / 3;
  height: 100%;
  max-height: 700px;
}

.thumbnail-wrapper-580px-height {
  border-radius: var(--radius--border);
  background-color: var(--tertiary);
  width: 100%;
  height: 100%;
  position: relative;
  overflow: clip;
}

.socials-links-wrapper-absolute {
  z-index: 1;
  grid-column-gap: 12px;
  grid-row-gap: 12px;
  flex: 1;
  grid-template-rows: auto;
  grid-template-columns: repeat(auto-fit, 36px);
  justify-content: center;
  align-self: center;
  place-items: center;
  display: flex;
  position: absolute;
  inset: 0%;
}

.social-links-rounded {
  border: 1px solid var(--secondary);
  color: var(--secondary);
  background-color: #fff0;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  padding: 10px;
  font-family: Icofont, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 16px;
  transition: background-color .3s, border-color .4s ease-out;
  display: flex;
}

.social-links-rounded:hover {
  background-color: var(--primary);
  color: #000;
  border-color: #fff0;
}

.team-member-name {
  color: var(--heading-2);
  margin-top: 0;
  margin-bottom: 12px;
  font-size: 24px;
  font-weight: 700;
  line-height: 34px;
}

.team-card-default {
  background-color: var(--secondary);
  border-radius: 15px;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  padding-left: 25px;
  padding-right: 25px;
  display: flex;
  position: relative;
}

.team-member-thumbnail-default {
  z-index: 2;
  border-radius: 15px;
  margin-top: -25%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
}

.hover-color-team-rounded {
  background-color: var(--primary);
  border-radius: 15px;
  height: 0%;
  position: absolute;
  inset: 0%;
}

.full-portrait {
  aspect-ratio: 4 / 5;
  height: 100%;
}

.socials-links-wrapper-12px-gap {
  grid-column-gap: 12px;
  grid-row-gap: 12px;
  grid-template-rows: auto;
  grid-template-columns: repeat(auto-fit, 36px) 200px 200px 200px;
  justify-content: center;
  align-self: center;
  place-items: center start;
  display: flex;
}

.margin-bottom-24px {
  margin-bottom: 24px;
}

.social-links-40px {
  background-color: var(--background);
  color: var(--primary);
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  font-family: Icofont, sans-serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 20px;
  transition: background-color .3s, color .4s ease-out;
  display: flex;
  box-shadow: 0 10px 30px #0000001a;
}

.social-links-40px:hover {
  background-color: var(--primary);
  color: var(--heading-2);
  border-color: #fff0;
}

.team-body-relative {
  z-index: 1;
  text-align: center;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 30px;
  padding-bottom: 40px;
  display: flex;
  position: relative;
}

.member-designation {
  color: var(--paragraph-2);
  font-size: 16px;
  font-weight: 700;
  line-height: 18px;
}

._5px-circle {
  background-color: var(--border-2);
  border-radius: 50%;
  width: 5px;
  height: 5px;
}

.blog-category {
  z-index: 1;
  border-top-left-radius: var(--radius--border);
  border-top-right-radius: var(--radius--border);
  background-color: var(--background);
  min-width: 120px;
  padding: 4px 30px;
  position: absolute;
  bottom: 0;
}

.blog-category-left-shape {
  background-color: var(--transparent);
  box-shadow: 15px 15px 0 0 var(--background);
  border-radius: 50%;
  width: 30px;
  height: 30px;
  position: absolute;
  inset: auto auto 0% -30px;
}

.blog-category-right-shape {
  background-color: var(--transparent);
  box-shadow: -15px 15px 0 0 var(--background);
  border-radius: 50%;
  width: 30px;
  height: 30px;
  position: absolute;
  top: auto;
  bottom: 0%;
  right: -30px;
}

.mask-10px-rounded-full {
  border-radius: var(--radius--border);
  width: 100%;
  position: relative;
  overflow: hidden;
}

._24px-link {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 24px;
  line-height: 36px;
  transition: color .35s;
}

._24px-link:hover {
  color: var(--primary);
}

._14px-link {
  font-size: 14px;
  line-height: 24px;
  transition: color .3s;
}

._14px-link:hover {
  color: var(--primary);
}

.blog-list-card {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  text-align: left;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
  position: relative;
  overflow: hidden;
  box-shadow: 0 8px 25px #00000012;
}

._2-column-grid {
  grid-column-gap: 28px;
  grid-row-gap: 28px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.blog-card-body-blur {
  z-index: 2;
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  padding: 20px 20px 20px 30px;
  display: flex;
  position: absolute;
  top: auto;
  bottom: 0;
  right: auto;
}

.image-min-height-480px {
  min-height: 480px;
}

.mask-56px {
  max-height: 56px;
  overflow: hidden;
}

.blog-mask-card {
  border-radius: var(--radius--border-lg);
  position: relative;
  overflow: hidden;
}

._22px-text {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 22px;
  line-height: 34px;
}

.pricing-card-wrapper {
  border-radius: var(--radius--border-lg);
  justify-content: flex-end;
  align-items: center;
  width: 100%;
  max-width: 337px;
  padding: 2px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.pricing-card {
  z-index: 1;
  border: 1px solid var(--secondary);
  border-radius: var(--radius--border-lg);
  background-color: var(--tertiary);
  color: #fff;
  text-align: left;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  transition: border-color .5s;
  display: flex;
  position: relative;
  overflow: hidden;
}

.pricing-card:hover {
  border-color: var(--primary);
}

.horizontal-left-center-20px-gap {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.horizontal-left-center-20px-gap.wrap {
  flex-flow: wrap;
}

.banner-title {
  background-color: var(--primary);
  color: var(--heading);
  padding: 6px 28px;
}

.project-cover {
  aspect-ratio: 3 / 2;
  max-height: 560px;
}

.mt-10px-mb-20px {
  margin-top: 10px;
  margin-bottom: 20px;
}

.rich-text-block img {
  margin-top: 25px;
  margin-bottom: 45px;
}

.rich-text-block p {
  margin-bottom: 20px;
}

.rich-text-block h3 {
  margin-top: 15px;
  margin-bottom: 25px;
}

.rich-text-block h4 {
  margin-top: 15px;
  margin-bottom: 20px;
}

.rich-text-block h2 {
  margin-bottom: 30px;
}

.rich-text-block h5 {
  margin-bottom: 15px;
}

.rich-text-block ol {
  margin-top: 20px;
  margin-bottom: 30px;
  list-style-type: none;
}

.rich-text-block ul {
  margin-top: 20px;
  margin-bottom: 30px;
}

.rich-text-block h1 {
  margin-bottom: 30px;
}

.project-details-block {
  text-align: center;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  max-width: 1000px;
  margin-bottom: 40px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.project-main-image-wrapper {
  border-radius: 20px;
  width: 100%;
  margin-bottom: 60px;
  overflow: hidden;
}

.margin-20px {
  margin-top: 20px;
  margin-bottom: 20px;
}

.horizontal-left-10px-gap {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.divider {
  z-index: 1;
  background-color: #e0e0e0;
  width: 100%;
  height: 1px;
  position: relative;
}

.banner {
  z-index: 1;
  justify-content: flex-start;
  align-items: center;
  min-height: 75vh;
  margin-top: -150px;
  padding-top: 160px;
  padding-bottom: 80px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.breadcrumb-block {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  justify-content: flex-start;
  align-items: center;
  margin-top: 15px;
  display: flex;
}

.breadcrumb {
  font-family: var(--fonts--paragraph);
  color: var(--white);
}

.separator {
  background-color: #e0e0e0;
  width: 1px;
  height: 15px;
}

.info-block {
  grid-column-gap: 15px;
  grid-row-gap: 15px;
  flex-flow: wrap;
  justify-content: center;
  align-items: center;
  display: flex;
  position: relative;
}

._16px-text-600-uppercase {
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 16px;
  font-weight: 600;
  line-height: 28px;
}

.text-merge-wrapper {
  grid-column-gap: 5px;
  grid-row-gap: 5px;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.blog-head {
  background-color: var(--tertiary);
  text-align: center;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  max-width: 1000px;
  margin: -100px auto 60px;
  padding: 50px 25px;
  display: flex;
  position: relative;
}

._60px-title {
  margin-top: 15px;
  margin-bottom: 25px;
  font-size: 60px;
  line-height: 1.2em;
}

._14px-text-500 {
  font-size: 14px;
  font-weight: 500;
  line-height: 24px;
}

.author-image {
  border-radius: 50%;
  width: 55px;
  height: 55px;
}

.blog-contents {
  width: 100%;
  max-width: 840px;
  margin-left: auto;
  margin-right: auto;
}

.author-block {
  grid-column-gap: 12px;
  grid-row-gap: 12px;
  flex-direction: row;
  align-items: center;
  font-size: 15px;
  font-weight: 600;
  display: flex;
}

.author-block:hover {
  color: #1a94ff;
}

.pagination-button {
  background-color: var(--secondary);
  border-style: none;
  border-radius: 0;
  margin-top: 50px;
  padding-top: 6px;
  padding-bottom: 6px;
  font-weight: 500;
  transition: color .3s, background-color .3s;
}

.pagination-button:hover {
  background-color: var(--primary);
  color: var(--heading);
}

.default-closed {
  width: 100%;
}

.utility-page-wrap {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100vw;
  max-width: 100%;
  display: flex;
  overflow: clip;
}

.utility-page-content {
  text-align: center;
  flex-direction: column;
  margin-top: 200px;
  display: flex;
}

.utility-page-form {
  flex-direction: column;
  align-items: stretch;
  display: flex;
}

.image-show-style {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: none;
  position: absolute;
  inset: 0%;
}

.bg-color-column {
  z-index: 1;
  background-color: var(--tertiary);
  width: 100%;
  height: 100%;
  position: relative;
}

.bg-column-mask {
  width: 100%;
  position: relative;
  overflow: hidden;
}

.primary-color-column {
  background-color: var(--background);
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0%;
  bottom: auto;
  right: 0%;
}

.blog-slide {
  padding-top: 300px;
  padding-bottom: 100px;
}

.blog-widget {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  flex-direction: column;
  display: flex;
}

.featured-posts-wrapper {
  grid-column-gap: 28px;
  grid-row-gap: 28px;
  flex-direction: column;
  display: flex;
}

.sidebar-search-input {
  border-style: none none solid;
  border-width: 1px;
  border-color: #eee #eee var(--tertiary);
  background-color: var(--transparent);
  font-family: var(--fonts--paragraph);
  color: var(--heading);
  letter-spacing: .7px;
  height: 52px;
  margin-bottom: 0;
  padding-left: 23px;
  font-size: 16px;
  line-height: 1em;
}

.sidebar-search-input:focus {
  border-color: #eee;
}

.sidebar-search-input::placeholder {
  color: var(--paragraph);
}

.sidebar-title {
  background-color: var(--primary);
  font-family: var(--fonts--heading);
  color: var(--heading);
  text-transform: uppercase;
  margin-top: 20px;
  margin-bottom: 0;
  padding: 13px 20px 12px;
  font-size: 20px;
  line-height: 30px;
}

.category-container {
  flex-direction: column;
  display: flex;
}

.blog-sidebar {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
  flex-flow: column;
  width: 100%;
  min-width: 255px;
  max-width: 400px;
  display: flex;
}

.sidebar-search-filter {
  margin-bottom: 0;
  position: relative;
}

.sidebar-search-icon {
  color: var(--secondary);
  background-color: #0000;
  justify-content: flex-start;
  align-items: center;
  font-family: Material Icons Outlined, sans-serif;
  font-size: 20px;
  line-height: 20px;
  display: flex;
  position: absolute;
  inset: 0% 0 0% auto;
}

.sidebar-category-block {
  grid-column-gap: 15px;
  grid-row-gap: 15px;
  border-bottom: 1px solid var(--border);
  letter-spacing: .7px;
  align-items: center;
  padding-top: 15px;
  padding-bottom: 10px;
  font-weight: 500;
  transition: border-color .4s, color .5s, padding .45s;
  display: flex;
}

.sidebar-category-block:hover {
  border-bottom-color: var(--primary);
  color: var(--primary);
  padding-left: 10px;
}

.icon {
  font-family: Material Icons Outlined, sans-serif;
  font-size: 25px;
  font-weight: 400;
  line-height: 25px;
}

._16px-link {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 16px;
  line-height: 28px;
  transition: color .35s;
}

._16px-link:hover {
  color: var(--primary);
}

.blog-list-body {
  grid-column-gap: 8px;
  grid-row-gap: 8px;
  width: 100%;
  padding-left: 5px;
  padding-right: 5px;
}

.snippet-56px {
  max-height: 56px;
  overflow: hidden;
}

.mask-full {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.inline {
  display: inline-flex;
}

.site-line-wrapper {
  z-index: -2;
  justify-content: space-around;
  display: none;
  position: fixed;
  inset: 0%;
}

.site-line-wrapper.cc-show {
  display: flex;
}

.line {
  background-color: #41414166;
  justify-content: center;
  align-items: flex-start;
  width: 1px;
  height: 100%;
  display: flex;
}

.line-infinity {
  background-image: linear-gradient(180deg, var(--transparent), white);
  width: 2px;
  height: 20px;
}

.address-tab-link {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  border-left: 4px solid var(--border);
  color: var(--paragraph);
  background-color: #0000;
  justify-content: flex-start;
  align-items: flex-start;
  padding: 25px 10px 25px 20px;
  transition: color .25s, border-color .3s cubic-bezier(.25, .46, .45, .94);
  display: flex;
}

.address-tab-link:hover {
  border-left-color: var(--primary);
}

.address-tab-link.w--current {
  border-left-color: var(--primary);
  opacity: 1;
  background-color: #0000;
}

.landscape-image {
  aspect-ratio: 3 / 2;
  height: 100%;
  max-height: 670px;
}

.heading-color-change-on-scroll {
  grid-column-gap: 15px;
  grid-row-gap: 15px;
  text-align: center;
  flex-flow: column;
  align-items: center;
  max-width: 1200px;
  margin-bottom: 40px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.heading-color-change-on-scroll.cc-white-bg {
  background-color: var(--white);
}

.color-transition-text {
  color: var(--primary-black);
  margin-top: 0;
  margin-bottom: 0;
  font-size: clamp(27px, 3vw, 44px);
}

.text-overlay {
  background-color: var(--white);
  opacity: .3;
  pointer-events: none;
  position: absolute;
  inset: 0%;
}

.text-overlay.second-line, .text-overlay.third-line {
  pointer-events: none;
}

.image-32px {
  max-width: 32px;
}

.arc-wrapper {
  border: 1px solid var(--border);
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 150px;
  height: 150px;
  display: flex;
}

.submenu-links-wrapper {
  grid-column-gap: 0px;
  grid-row-gap: 10px;
  flex-flow: column;
  grid-auto-columns: 1fr;
  display: flex;
}

.nav-dropdown-contents-body {
  border: 1px solid var(--border);
  background-color: var(--tertiary);
  min-width: 420px;
  margin-top: 20px;
  top: 32px;
  overflow: hidden;
}

.nav-dropdown-contents {
  background-color: #0000;
}

.nav-dropdown-contents.mega-menu-wrapper {
  width: 100%;
  bottom: auto;
  left: 0%;
  right: auto;
}

.nav-dropdown-links-block {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  place-items: center start;
  display: grid;
}

.submenu-link {
  grid-column-gap: 5px;
  grid-row-gap: 5px;
  font-family: var(--fonts--paragraph);
  color: var(--heading);
  white-space: nowrap;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  margin-right: 0;
  padding: 8px 0;
  font-size: 15px;
  font-weight: 600;
  line-height: 24px;
  transition: transform .3s cubic-bezier(.25, .46, .45, .94), color .35s;
  display: flex;
  transform: translate(-20px);
}

.submenu-link:hover {
  color: var(--primary);
  transform: translate(0);
}

.submenu-link.w--current {
  color: #30aca6;
}

.nav-dropdown-wrapper {
  z-index: 1;
  margin-left: 0;
  margin-right: 0;
}

.nav-dropdown-wrapper:hover {
  z-index: 2;
}

.nav-dropdown-wrapper.mega {
  position: static;
}

.submenu-block {
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
  overflow: hidden;
}

.submenu-block:hover {
  color: #e41e1e;
}

.hover-divider {
  background-color: var(--primary);
  width: 20px;
  height: 1px;
}

.nav-dropdown-icon {
  z-index: 2;
  margin-bottom: -2px;
  font-family: Material Icons, sans-serif;
  position: relative;
}

.input-field-60px {
  border: 1px solid var(--border-2);
  font-family: var(--fonts--paragraph);
  color: var(--paragraph-2);
  cursor: none;
  background-color: #fff;
  border-radius: 6px;
  min-height: 60px;
  margin-bottom: 0;
  padding: 16px 6px 16px 20px;
  font-size: 15px;
  line-height: 20px;
  transition: border-color .3s;
}

.input-field-60px:hover {
  border-color: var(--primary);
}

.input-field-60px:focus {
  color: #211f54;
  border-color: #ee3623;
}

.input-field-60px::placeholder {
  color: var(--paragraph-2);
}

.contact-card-with-bg-image {
  z-index: 1;
  grid-column-gap: 12px;
  grid-row-gap: 12px;
  border: 1px solid var(--border);
  background-color: var(--tertiary);
  text-align: center;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  padding: 43px 30px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.absolute-full-image {
  z-index: -1;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.hover-overlay {
  background-color: #000000b3;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.cta-conainer {
  grid-column-gap: 60px;
  grid-row-gap: 60px;
  border-radius: var(--radius--border-lg);
  background-image: linear-gradient(#000000b3, #000000b3), url('../images/1140_11140.webp');
  background-position: 0 0, 50%;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
  background-attachment: scroll, fixed;
  justify-content: space-between;
  align-items: center;
  padding: 80px 70px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.contents-40 {
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  width: 40%;
  display: flex;
  position: relative;
}

.cta-section {
  background-color: var(--tertiary);
  padding-top: 50px;
  padding-bottom: 50px;
}

._2-col-grid {
  grid-column-gap: 25px;
  grid-row-gap: 25px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.contents-full {
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

.image-16px {
  max-width: 16px;
}

.horizontal-left-center-30px-gap-wrap {
  grid-column-gap: 30px;
  grid-row-gap: 20px;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.nav-dropdown-padding {
  padding: 40px;
}

.mb-25px {
  margin-bottom: 25px;
}

.service-slide {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  flex-flow: column;
  justify-content: flex-end;
  align-items: flex-start;
  width: 100%;
  height: 80vh;
  padding-bottom: 60px;
  padding-left: 25px;
  padding-right: 10px;
  display: flex;
}

._4-col-full-grid {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: flex-start;
  align-items: center;
  display: grid;
}

.initial-image {
  height: 100%;
  position: absolute;
  inset: 0%;
}

.service-col-divider-wrapper {
  z-index: -1;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  background-color: #00000080;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-items: end;
  height: 100%;
  display: grid;
  position: absolute;
  inset: 0%;
}

.white-gradient-divider {
  background-image: linear-gradient(0deg, var(--border-2), var(--transparent));
  width: 1px;
  height: 100%;
}

.absolute-hero-title {
  z-index: 0;
  opacity: 0;
  pointer-events: none;
  text-align: center;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
  display: flex;
  position: absolute;
  inset: 0%;
  container-type: inline-size;
}

._120px-text-stroked {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 120px;
}

.absolute-hero-title-initial {
  z-index: auto;
  pointer-events: none;
  text-align: center;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
  display: flex;
  position: absolute;
  inset: 0%;
  container-type: inline-size;
}

.service-full-height-slider {
  z-index: 1;
  position: relative;
}

.sidebar {
  grid-column-gap: 60px;
  grid-row-gap: 60px;
  flex-flow: column;
  width: 100%;
  max-width: 380px;
  display: flex;
}

.main-block {
  width: 100%;
  max-width: 900px;
}

.widget {
  grid-column-gap: 28px;
  grid-row-gap: 28px;
  border: 1px solid var(--border);
  background-color: var(--tertiary);
  flex-flow: column;
  justify-content: flex-start;
  align-items: stretch;
  padding: 40px 35px;
  display: flex;
}

.widget-link-block {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  background-color: var(--background);
  text-transform: uppercase;
  justify-content: space-between;
  align-items: center;
  padding: 12px 18px 12px 20px;
  transition: padding .4s, color .4s, background-color .5s cubic-bezier(.25, .46, .45, .94);
  display: flex;
}

.widget-link-block:hover, .widget-link-block.w--current {
  background-color: var(--primary);
  padding-right: 10px;
}

._40px-icon-wrapper {
  background-color: var(--secondary);
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  display: flex;
}

.vertical-left-top-20px-gap {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.sidebar-title-divider-wrapper {
  grid-column-gap: 5px;
  grid-row-gap: 5px;
  justify-content: flex-start;
  align-items: center;
  margin-top: 12px;
  display: flex;
  overflow: hidden;
}

.title-divider-50px {
  background-color: var(--primary);
  width: 50px;
  height: 2px;
}

.title-divider-5px {
  background-color: var(--primary);
  width: 5px;
  height: 2px;
}

.team-cover-image {
  aspect-ratio: 2 / 3;
  height: 100%;
}

.team-cover-image-wrapper {
  background-color: var(--secondary);
  max-width: 400px;
  overflow: hidden;
}

.user-primary-link {
  color: var(--primary);
  transition: color .3s;
}

.user-primary-link:hover {
  color: var(--secondary);
}

.form-footer {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  flex-flow: column;
  margin-top: 60px;
  font-weight: 500;
  line-height: 25px;
}

.users-form-wrapper {
  width: 48%;
  margin-left: auto;
  margin-right: 0;
}

.users-form-label {
  text-transform: capitalize;
  margin-bottom: 4px;
  font-size: 16px;
  font-weight: 600;
  line-height: 26px;
}

.form-header {
  margin-bottom: 30px;
}

.users-form-block {
  width: 100%;
  padding-left: 0;
  padding-right: 0;
  position: relative;
}

.users-page-wrapper {
  flex-flow: row;
  justify-content: flex-end;
  align-items: center;
  width: 100%;
  max-width: none;
  height: auto;
  min-height: 100vh;
  position: relative;
}

.users-bg-image {
  width: 48%;
  height: 100%;
  position: absolute;
  inset: 0% auto 0% 0%;
}

.users-form {
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  height: 100%;
  margin-top: 100px;
  display: flex;
}

.users-input-field {
  border: 1px solid var(--border);
  background-color: var(--tertiary);
  color: #0c0c0c;
  cursor: none;
  border-radius: 180px;
  min-height: 54px;
  margin-bottom: 15px;
  padding-left: 50px;
  transition: border-color .2s;
}

.users-input-field:hover, .users-input-field:focus {
  border-color: var(--primary);
}

.users-input-field.password {
  background-image: url('../images/key_1key.avif');
  background-position: 20px;
  background-repeat: no-repeat;
  background-size: 20px;
}

.users-input-field.email {
  background-image: url('../images/email-3_1email (3).avif');
  background-position: 20px;
  background-repeat: no-repeat;
  background-size: 20px;
}

.users-input-field.name {
  background-image: url('../images/user-1_1user (1).avif');
  background-position: 20px;
  background-repeat: no-repeat;
  background-size: 20px;
}

.lock-image {
  max-width: 200px;
}

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

.popup-search-input {
  font-family: var(--fonts--paragraph);
  color: #fff;
  background-color: #fff0;
  border: 1px #000;
  border-bottom: 1px solid #fff;
  margin-bottom: 0;
}

.popup-search-input::placeholder {
  color: #fff;
}

.search-field-wrapper {
  margin-bottom: 0;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

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

.search-button-wrapper {
  grid-column-gap: 25px;
  grid-row-gap: 25px;
  border-left: 1px solid #eee;
  justify-content: flex-start;
  align-items: center;
  min-height: 26px;
  padding-left: 30px;
  display: flex;
}

.search-button-absolute {
  color: #fff;
  background-color: #3898ec00;
  padding: 0;
  font-family: Material Icons, sans-serif;
  font-size: 25px;
  font-weight: 400;
  line-height: 25px;
  position: absolute;
  inset: 0% 0 0% auto;
}

.icon-svg-20-px {
  width: 100%;
  min-width: 15px;
  max-width: 20px;
  transition: transform .28s ease-out;
}

.icon-svg-20-px:hover {
  opacity: 1;
  transform: scale(1.1);
}

.close-icon-white {
  color: #fff;
  cursor: pointer;
  border-radius: 50%;
  padding: 6px;
  font-family: Material Icons, sans-serif;
  font-size: 25px;
  font-weight: 400;
  line-height: 25px;
  transition: color .42s cubic-bezier(.25, .46, .45, .94), background-color .4s, transform .5s cubic-bezier(.165, .84, .44, 1);
  position: absolute;
  inset: -63px 30px auto auto;
}

.close-icon-white:hover {
  color: #fff;
  background-color: #da000b;
  transform: rotate(180deg);
}

.search-popup {
  z-index: 100;
  background-color: #000;
  width: 100%;
  display: none;
  position: fixed;
  top: -15px;
  left: 0%;
  right: 0%;
  overflow: hidden;
}

.cart-button {
  background-color: var(--transparent);
  padding: 0;
}

.cart-quantity {
  background-color: var(--primary);
  color: var(--heading);
  justify-content: center;
  align-items: center;
  min-width: 15px;
  height: 15px;
  margin-left: 0;
  padding-left: 0;
  padding-right: 0;
  font-size: 10px;
  line-height: 10px;
  display: flex;
  position: absolute;
  top: -5.5px;
  left: 15px;
}

.log-button {
  background-color: var(--transparent);
  font-family: var(--fonts--icons);
  font-size: 20px;
  line-height: 1em;
}

.cart-container {
  background-color: var(--tertiary);
  height: 101vh;
  margin-top: -15px;
}

.close-icon-white-static {
  color: #fff;
  cursor: pointer;
  border-radius: 50%;
  padding: 6px;
  font-family: Material Icons, sans-serif;
  font-size: 25px;
  font-weight: 400;
  line-height: 25px;
  transition: color .42s cubic-bezier(.25, .46, .45, .94), background-color .4s, transform .5s cubic-bezier(.165, .84, .44, 1);
}

.close-icon-white-static:hover {
  color: #fff;
  background-color: #da000b;
  transform: rotate(180deg);
}

.close-button {
  width: auto;
  height: auto;
}

.version-released-date {
  width: 30%;
}

.utility-block {
  grid-column-gap: 60px;
  grid-row-gap: 60px;
  justify-content: space-between;
  width: 100%;
}

.utility-block-wrapper {
  grid-column-gap: 60px;
  grid-row-gap: 60px;
  border-bottom: 1px solid #e7eaee;
  margin-bottom: 60px;
  padding-bottom: 60px;
}

.version-details {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  width: 70%;
}

.changelog-section {
  min-height: 50vh;
  margin-top: 100px;
  margin-bottom: 0;
  padding-left: 20px;
  padding-right: 20px;
}

.margin-top-15px {
  margin-top: 15px;
}

.version-no {
  background-color: var(--primary);
  color: var(--heading-2);
  border-radius: 30px;
  padding: 2px 17px;
  font-size: 20px;
  font-weight: 600;
  line-height: 26px;
}

.license-section {
  margin-top: 80px;
}

.span-link {
  font-weight: 600;
  text-decoration: underline;
}

.bottom-overlay {
  background-image: linear-gradient(0deg, var(--background), var(--background) 8%, var(--transparent));
  height: 70%;
  position: absolute;
  inset: auto 0% 0%;
}

.checkout-quantity-block {
  font-size: 16px;
  font-weight: 500;
  line-height: 140%;
}

.checkout-total-price-block {
  justify-content: space-between;
  align-items: center;
  margin-top: 17px;
  margin-bottom: 20px;
  display: flex;
}

.checkout-product-title {
  font-size: 16px;
  line-height: 140%;
}

.total-block {
  grid-column-gap: 14px;
  grid-row-gap: 14px;
  border-bottom: 1px solid #141414;
  flex-flow: column;
  width: 100%;
  margin-bottom: 0;
  padding-top: 17px;
  padding-bottom: 40px;
  display: flex;
}

.checkout-product-price {
  color: var(--heading);
  font-weight: 600;
}

.checkout-product-info {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.checkbox-billing {
  margin-top: 0;
}

.sub-total-text {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 20px;
  font-weight: 600;
  line-height: 28px;
}

.checkout-field {
  border-color: var(--border);
  background-color: var(--background);
  border-radius: 10px;
  height: 56px;
  transition: border-radius .3s, border-color .3s;
}

.checkout-field:hover, .checkout-field:focus {
  border-color: var(--primary);
  border-radius: var(--radius--border-xl);
}

.order-item-list {
  margin-bottom: 0;
}

.checkout-label {
  margin-bottom: 6px;
}

.billing-address-toggle {
  justify-content: flex-start;
  align-items: center;
}

.checkout-image {
  width: 100%;
  height: 100%;
}

.block-contents {
  background-color: #0000;
  border-style: none;
  margin-bottom: 20px;
  padding: 0;
}

.checkout-title {
  width: 100%;
  margin-top: 20px;
  font-size: 30px;
  line-height: 42px;
}

.checkout-title.with-border {
  border-bottom: 1px solid var(--border-2);
  padding-bottom: 8px;
}

.checkout-left-bar {
  flex-flow: column;
  flex: 0 auto;
  width: 100%;
  max-width: 700px;
  margin-right: 0;
  display: flex;
}

.checkout-product-info-block {
  flex: none;
  margin-left: 0;
  margin-right: 0;
}

.checkout-header {
  margin-bottom: 30px;
}

.block {
  border-radius: 10px;
  flex-flow: column;
  width: 100%;
  margin-bottom: 0;
  display: flex;
}

.apple-pay-button {
  background-color: #000;
  border-radius: 180px;
  height: 45px;
  transition: color .5s, background-color .5s;
}

.apple-pay-button:hover {
  color: #000;
  background-color: #fff;
}

.apple-pay-button._60px {
  height: 60px;
}

.checkout-sub-title {
  width: 100%;
  margin-top: 0;
  font-size: 20px;
  line-height: 30px;
}

.checkout-sub-title.with-border {
  border-bottom: 1px solid var(--border);
  padding-bottom: 8px;
}

.block-card {
  background-color: var(--tertiary);
  flex-flow: column;
  width: 100%;
  margin-bottom: 20px;
  padding: 40px;
  display: flex;
  box-shadow: 0 10px 45px #00000012;
}

.checkout-image-wrapper {
  justify-content: center;
  align-items: center;
  width: 120px;
  height: 80px;
  padding: 0;
  display: flex;
  overflow: hidden;
}

.checkout-products-wrapper {
  border-bottom: 1px solid var(--border);
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0;
  padding-top: 20px;
  padding-bottom: 20px;
}

.line-item {
  margin-bottom: 0;
}

.sticky-right-bar {
  border-radius: 20px;
  flex-flow: column;
  flex: none;
  width: 100%;
  max-width: 620px;
  padding: 45px 50px;
  display: flex;
  position: sticky;
  top: 100px;
  box-shadow: 0 10px 45px -10px #00000012;
}

.total-text {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 30px;
  font-weight: 800;
  line-height: 140%;
}

.confirmation-price-block {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  flex-flow: column;
  flex: none;
  width: 100%;
  max-width: 740px;
  margin-bottom: 0;
  display: flex;
  overflow: hidden;
}

.text-merge {
  grid-column-gap: 5px;
  grid-row-gap: 5px;
  color: var(--white);
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.no-image-product {
  grid-column-gap: 5px;
  grid-row-gap: 5px;
  flex: none;
  align-items: center;
  margin-left: 0;
  margin-right: 0;
  display: flex;
}

.order-qty-block {
  grid-column-gap: 5px;
  grid-row-gap: 5px;
}

.thank-you-container {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  max-width: 600px;
  display: flex;
}

.order-product {
  font-weight: 500;
}

.order-confirmation {
  background-color: #fff0;
  min-height: auto;
  margin-top: 60px;
  padding: 0;
}

.order-item {
  border-bottom: 1px solid #3d5779;
  justify-content: space-between;
  margin-bottom: 20px;
  padding-bottom: 20px;
}

.order-item.no-border {
  border-bottom-style: none;
}

.order-block {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  flex-flow: column;
  width: 100%;
  max-width: 740px;
  margin-bottom: 0;
  padding-top: 40px;
  padding-bottom: 40px;
  display: flex;
  overflow: hidden;
}

.order-confirm-price {
  color: var(--primary);
  margin-top: 0;
  margin-bottom: 0;
  font-size: 20px;
  font-weight: 700;
  line-height: 28px;
}

.details-wrapper {
  text-align: left;
  border-bottom: 1px solid #eee;
  justify-content: space-between;
  align-items: center;
  padding-top: 20px;
  padding-bottom: 20px;
  font-size: 20px;
  font-weight: 600;
  line-height: 140%;
  display: flex;
}

.details-wrapper.no-border {
  border-bottom-style: none;
  padding-bottom: 0;
}

.checkout-container {
  z-index: 1;
  grid-column-gap: 60px;
  grid-row-gap: 60px;
  background-color: #f5f5f500;
  flex-flow: row;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
  display: flex;
  position: relative;
}

.absolute-linear {
  background-image: linear-gradient(180deg, var(--background), var(--transparent) 50%, var(--background));
  position: absolute;
  inset: 0%;
}

.divider-2 {
  background-color: #ebf0f2;
  width: 100%;
  height: 1px;
}

.cart-quantity-border {
  border-color: var(--border);
  border-radius: var(--radius--border-sm);
  background-color: var(--background);
}

.cart-item-wrapper {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  display: flex;
  position: relative;
}

.remove-button-icon-cart {
  font-family: var(--fonts--icons);
}

.cart-info-wrapper {
  grid-column-gap: 6px;
  grid-row-gap: 6px;
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  margin-left: 0;
  margin-right: 0;
}

.cart-thumbnail {
  width: 90px;
  height: 90px;
}

.mask-10px-rounded {
  border-radius: var(--radius--border);
  position: relative;
  overflow: hidden;
}

.remove-item {
  color: #f81515;
}

.cart-list {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
  flex-flow: column;
  padding-top: 40px;
  display: flex;
}

.no-padding {
  padding-top: 0;
  padding-bottom: 0;
}

.cart-qty-remove-icon-wrapper {
  flex-flow: column;
  justify-content: flex-end;
  align-items: flex-end;
  display: flex;
}

.web-payments-button-wrapper {
  margin-top: 10px;
  margin-bottom: 10px;
}

.cart-header {
  padding-top: 20px;
}

.close-icon-rotate-white {
  color: #e41e1e;
  cursor: pointer;
  border-radius: 50%;
  padding: 6px;
  font-family: Material Icons, sans-serif;
  font-size: 25px;
  font-weight: 400;
  line-height: 25px;
  transition: color .42s cubic-bezier(.25, .46, .45, .94), background-color .4s, transform .5s cubic-bezier(.165, .84, .44, 1);
}

.close-icon-rotate-white:hover {
  color: #fff;
  background-color: #da000b;
  transform: rotate(180deg);
}

.default-button-white {
  border-radius: var(--radius--border-full);
  background-color: var(--secondary);
  color: var(--tertiary);
  white-space: pre-line;
  justify-content: center;
  align-items: center;
  min-height: 60px;
  margin-top: 0;
  padding: 15px 36px;
  font-size: 18px;
  font-weight: 500;
  line-height: 28px;
  transition: background-color .5s cubic-bezier(.25, .46, .45, .94);
  display: flex;
  position: relative;
  overflow: hidden;
}

.default-button-white:hover {
  background-color: var(--primary);
  color: var(--tertiary);
}

.team-section {
  z-index: 1;
  background-color: #fff0;
  width: 100%;
  height: 100%;
  margin-bottom: 200px;
  position: relative;
}

.cta-block-with-2-buttons {
  grid-column-gap: 60px;
  grid-row-gap: 60px;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.user-account-wrapper {
  background-color: var(--transparent);
  max-width: 1440px;
  min-height: 60vh;
  margin-top: 100px;
  margin-left: auto;
  margin-right: auto;
}

.default-button {
  background-color: var(--primary);
  color: var(--heading);
  white-space: pre-line;
  justify-content: center;
  align-items: center;
  min-height: 60px;
  margin-top: 0;
  padding: 15px 36px;
  font-size: 18px;
  font-weight: 500;
  line-height: 28px;
  transition: background-color .5s cubic-bezier(.25, .46, .45, .94);
  display: inline-block;
  position: relative;
  overflow: hidden;
}

.default-button:hover {
  background-color: var(--primary);
  color: var(--tertiary);
}

.checkbox-field {
  margin-bottom: 40px;
}

.hero-image-absolute {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
  overflow: hidden;
}

.hero-divider {
  background-color: #e3e3e3;
  width: 100%;
  height: 1px;
}

.hero-slide-paragraph {
  color: var(--paragraph);
  max-width: 700px;
}

.hero-slide-image {
  object-position: 50% 20%;
  min-width: 100vw;
  height: 100vh;
}

.hero-slide-image.imgae-fit-center {
  object-position: 50% 50%;
}

.hero-slide-image.cc-95vh {
  height: 95vh;
}

.hero-slider-agency {
  z-index: 1;
  background-color: var(--transparent);
  justify-content: center;
  align-items: center;
  height: 100%;
  display: flex;
  overflow: hidden;
}

.hero-image-overlay {
  z-index: 0;
  pointer-events: none;
  background-image: linear-gradient(#000000b3, #0000 20%, #0000), linear-gradient(#0006, #0006);
  position: absolute;
  inset: 0%;
}

.hero-heading {
  color: var(--heading);
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 0;
  font-size: clamp(50px, 4vw, 70px);
}

.hero-slide {
  height: 100vh;
  padding-top: 300px;
  padding-bottom: 180px;
}

.hero-slide.cc-95vh {
  height: 95vh;
}

.hero-divider-mask {
  max-width: 520px;
  margin-bottom: 20px;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

.hero-paragraph-wrapper {
  margin-top: 20px;
  margin-bottom: 45px;
  overflow: hidden;
}

.slider-contents {
  z-index: 1;
  text-align: center;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  position: relative;
}

.top-header {
  z-index: 10;
  border-bottom: 1px solid var(--border-2);
  padding-top: 15px;
  padding-bottom: 15px;
}

.icon-16px {
  object-fit: contain;
  max-width: 16px;
  height: 16px;
}

.text-14px {
  font-size: 14px;
}

.navbar {
  z-index: 11;
  background-color: var(--transparent);
  padding-top: 20px;
  padding-bottom: 20px;
  position: static;
}

.navbar-menu-wrapper {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  place-items: center stretch;
  display: grid;
}

.hero-slider-wrapper {
  z-index: 1;
  justify-content: flex-start;
  align-items: center;
  width: 100vw;
  min-width: 100vw;
  height: 100vh;
  display: flex;
  position: relative;
}

.hero-slider-wrapper._90vh {
  height: 95vh;
}

.hero-reservation-form-wrapper {
  z-index: 2;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  background-color: #ffffff1f;
  max-width: 1640px;
  margin-bottom: 0;
  margin-left: auto;
  margin-right: auto;
  padding: 20px 40px;
  position: absolute;
  inset: auto 20px 30px;
}

.hero-reservation-form {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  grid-template-rows: auto;
  grid-template-columns: .25fr 1fr 1fr 1fr .25fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  align-items: center;
  display: grid;
}

.reservation-input {
  background-color: var(--transparent);
  color: var(--paragraph);
  border: 1px #000;
  width: 100%;
  max-width: 240px;
  min-height: 40px;
  margin-bottom: 0;
  padding: 5px 0;
  font-size: 14px;
  line-height: 1em;
}

.reservation-input::placeholder {
  color: var(--paragraph);
}

.reservation-form-inputs {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: flex-start;
  align-items: center;
  display: grid;
}

.title-inputs {
  grid-column-gap: 4px;
  grid-row-gap: 4px;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  display: flex;
}

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

.counter-title-wrapper {
  max-width: 180px;
  margin-left: -20px;
}

.counter-card-wrapper {
  border-right: 1px solid var(--border);
  justify-content: center;
  align-items: center;
  width: 100%;
  display: flex;
}

.counter-card-wrapper._1st {
  justify-content: flex-start;
  align-items: center;
}

.counter-card-wrapper.last {
  border-right-style: none;
  justify-content: flex-end;
}

.subtitle-block {
  grid-column-gap: 25px;
  grid-row-gap: 25px;
  text-align: center;
  justify-content: center;
  align-items: center;
  width: 100%;
  display: flex;
}

.subtitle-divider {
  background-image: linear-gradient(90deg, var(--background), var(--primary));
  width: 100%;
  max-width: 45px;
  height: 2px;
}

.subtitle-divider:where(.w-variant-cee29522-b041-273f-4bb3-af3481e578f1) {
  background-image: linear-gradient(90deg, var(--primary-brown), var(--white));
}

.subtitle-divider.rotate-reverse {
  transform: rotate(180deg);
}

.subtitle-divider.rotate-reverse:where(.w-variant-cee29522-b041-273f-4bb3-af3481e578f1), .subtitle-divider.rotate-reverse.text-white-5, .subtitle-divider.text-white-3 {
  background-image: linear-gradient(90deg, var(--primary-brown), var(--white));
}

.subtitle-title {
  letter-spacing: 4px;
  text-transform: uppercase;
  font-size: 20px;
  font-weight: 400;
}

.subtitle-title:where(.w-variant-cee29522-b041-273f-4bb3-af3481e578f1) {
  color: var(--white);
}

.subtitle-title:where(.w-variant-f9dbd0ed-8b54-6953-400a-c71dac2b5a44), .subtitle-title:where(.w-variant-345947ea-84a3-0eec-ae79-2757fd80a046) {
  background-color: var(--white);
}

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

.subtitle-title.cc-white-bg {
  background-color: var(--white);
}

.about-images-grid {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.about-image-portrait {
  aspect-ratio: 2 / 3;
  width: 100%;
  height: 100%;
  max-height: 800px;
}

.solid-border-wrapper {
  z-index: 2;
  padding: 10px;
  position: absolute;
  inset: 0%;
}

.border-solid {
  z-index: 1;
  grid-column-gap: 24px;
  grid-row-gap: 24px;
  border: 2px solid var(--secondary);
  text-align: center;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding-left: 25px;
  padding-right: 25px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.blog-thubnail-mask-2 {
  width: 100%;
  overflow: hidden;
}

.blog-hover-divider-2 {
  background-color: #051e33;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.text-link-with-border-2 {
  color: var(--heading);
  transition: color .35s;
}

.blog-card-2 {
  text-align: left;
  border-radius: 6px;
  justify-content: flex-start;
  align-items: flex-end;
  width: 100%;
  height: 100%;
  display: flex;
  position: relative;
}

.blog-body-2 {
  z-index: 1;
  grid-column-gap: 12px;
  grid-row-gap: 12px;
  background-image: linear-gradient(90deg, var(--tertiary), var(--background) 60%);
  width: 100%;
  margin-bottom: -10px;
  margin-left: -190px;
  padding: 40px 20px 50px 25px;
  position: relative;
}

._6px-diamond {
  background-color: #94a5b0;
  width: 6px;
  height: 6px;
  transform: rotate(45deg);
}

.link-border-2 {
  background-color: #051e33;
  border-radius: 2px;
  width: 100%;
  height: 1px;
}

.link-border-secodnary-2 {
  background-color: #94a5b0;
  border-radius: 2px;
  width: 100%;
  height: 1px;
  position: absolute;
  inset: 0%;
}

.blog-thumbnail-portrait {
  aspect-ratio: 2 / 3;
  max-height: 450px;
}

.blog-divider-2 {
  background-color: var(--border-2);
  width: 100%;
  height: 1px;
  margin-top: 10px;
  margin-bottom: 10px;
  position: relative;
  inset: 0% auto 0% 0%;
}

.subtitle-block-left {
  grid-column-gap: 25px;
  grid-row-gap: 25px;
  text-align: center;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  margin-bottom: 10px;
  display: flex;
  overflow: hidden;
}

.about-image-wrapper-left {
  width: 90%;
  max-width: 600px;
  margin-top: 60px;
}

.about-paragraph {
  width: 80%;
  max-width: 680px;
}

.room-slide {
  z-index: 1;
  margin-right: 1.5rem;
  position: relative;
  overflow: hidden;
}

.room-slide.cc-swiper {
  width: 100%;
  height: 100%;
  margin-right: 0;
  overflow: visible;
}

.room-thumbnail-wrapper {
  overflow: hidden;
}

.room-details-body {
  z-index: 1;
  position: absolute;
  inset: auto 20px 20px;
}

.room-title-price {
  margin-bottom: 20px;
}

.room-info {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  border-top: 1px solid var(--border-2);
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  padding-top: 20px;
  display: flex;
}

.room-thumbnail {
  aspect-ratio: 2 / 3;
  max-height: 600px;
}

.room-price-on-card {
  color: var(--paragraph);
}

.room-price-on-card.discounted-price {
  opacity: .7;
  font-size: 16px;
  text-decoration: line-through;
}

.room-price-block {
  grid-column-gap: 4px;
  grid-row-gap: 4px;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.room-price-with-currency {
  grid-column-gap: 2px;
  grid-row-gap: 2px;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.room-beds-baths-info {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  display: flex;
}

.icon-24px {
  max-width: 24px;
}

.room-overlay {
  z-index: 0;
  background-image: linear-gradient(0deg, var(--background), var(--transparent) 80%);
  pointer-events: none;
  position: absolute;
  inset: 0%;
}

.sticky-vh--300px {
  height: 300vh;
}

.testimonials-sticky {
  z-index: 1;
  justify-content: center;
  align-items: flex-start;
  max-height: 80vh;
  display: flex;
  position: relative;
}

.progress-line-testimonial {
  background-color: var(--border);
  width: 3px;
  height: 100%;
  position: absolute;
  inset: 0% auto 0% 0%;
}

.testimonials-grid {
  z-index: 1;
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  justify-content: flex-start;
  align-items: center;
  max-height: 80vh;
  margin-left: 60px;
  display: flex;
  position: relative;
  overflow: clip;
}

.complete-line {
  background-color: var(--primary);
  width: 100%;
  height: 15%;
}

.service-divider {
  z-index: 1;
  background-color: var(--primary);
  width: 100%;
  height: 2px;
  position: relative;
  overflow: hidden;
}

.service-complete-line {
  background-color: var(--secondary);
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0% auto 0% 0%;
}

.lightbox-link {
  z-index: 1;
  width: 25vw;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.package-price {
  margin-top: auto;
  font-size: 30px;
  font-weight: 500;
}

.package-thumbnail {
  aspect-ratio: 2 / 3;
}

.package-border-body {
  z-index: 1;
  grid-column-gap: 24px;
  grid-row-gap: 24px;
  border: 2px solid var(--secondary);
  text-align: center;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 50px 25px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.package-border-wrapper {
  z-index: 2;
  background-color: #0006;
  padding: 10px;
  position: absolute;
  inset: 0%;
}

.package-offer-item:nth-child(2n) {
  margin-top: 60px;
}

.package-offer-item:last-child {
  margin-top: 120px;
}

.banner-image {
  z-index: -1;
  height: 100%;
  position: absolute;
  inset: 0% auto auto 0%;
}

.bg-absolute {
  background-color: var(--background);
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.bg-absolute:where(.w-variant-bcda6897-16d3-eabc-c9c3-40a76628bd33) {
  background-color: var(--white);
  height: 105%;
  display: none;
}

.navbar-main-block {
  z-index: 100;
  background-color: var(--transparent);
  width: 100%;
  position: fixed;
}

.floating-video {
  z-index: 2;
  aspect-ratio: 3 / 2;
  width: 70vw;
  min-width: 940px;
  height: 45vh;
  min-height: 600px;
  position: absolute;
  top: 0;
}

.video-bg {
  background-color: var(--primary);
  width: 100%;
  min-height: 540px;
}

.video-container {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  display: flex;
  position: relative;
}

.about-cards {
  grid-column-gap: 40px;
  grid-row-gap: 40px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: flex-start;
  align-items: stretch;
  width: 100%;
  margin-top: 40px;
  margin-bottom: 0;
  padding-top: 0;
  display: grid;
}

.animated-counter-2 {
  margin-bottom: 10px;
  font-size: 60px;
  font-weight: 700;
  line-height: 1em;
  display: flex;
  overflow: hidden;
}

.room-card {
  z-index: 1;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
}

.room-items {
  margin-bottom: 2%;
}

.room-flexbox {
  grid-column-gap: 24px;
  grid-row-gap: 24px;
  flex-flow: wrap;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  align-items: center;
  display: grid;
}

.sticky-vh--200px {
  height: 200vh;
}

.camera-top-align {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  width: 100vw;
  height: 100vh;
  display: flex;
  position: sticky;
  top: 0;
}

.why-choose-cards {
  grid-column-gap: 40px;
  grid-row-gap: 40px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  align-items: flex-start;
  margin-top: -360px;
  display: grid;
}

.why-choose-card {
  z-index: 1;
  width: 100%;
  position: relative;
  overflow: hidden;
}

.why-choose-card.top-center {
  margin-top: 150px;
}

.why-choose-card.top-left {
  margin-top: 300px;
}

.why-choose-card.bottom-left {
  margin-top: 60px;
}

.why-choose-card.bottom-center {
  margin-top: -120px;
}

.why-choose-card.bottom-right {
  margin-top: -240px;
}

.serial-number {
  z-index: 3;
  border: 1px solid var(--secondary);
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  padding: 7px;
  font-size: 24px;
  font-weight: 600;
  line-height: 1em;
  display: flex;
  position: absolute;
  inset: 30px 30px auto auto;
}

.why-choose-border-solid {
  z-index: 1;
  grid-column-gap: 12px;
  grid-row-gap: 12px;
  background-color: var(--primary);
  flex-flow: column;
  justify-content: flex-end;
  align-items: flex-start;
  width: 92%;
  height: 100%;
  margin-top: -138px;
  margin-left: auto;
  margin-right: auto;
  padding: 40px 25px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.why-choose-image-portrait {
  aspect-ratio: 2 / 3;
  width: 100%;
  height: 100%;
  max-height: 700px;
}

.title-bar-left {
  z-index: 2;
  grid-column-gap: 14px;
  grid-row-gap: 14px;
  flex-flow: column;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1.5fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  place-items: flex-start center;
  width: 100%;
  margin-bottom: 65px;
  display: flex;
  position: relative;
}

.black-overlay-top {
  background-image: linear-gradient(180deg, var(--background), var(--transparent));
  opacity: .7;
  pointer-events: none;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.plus-sign-wrapper {
  z-index: 1;
  justify-content: center;
  align-items: center;
  display: flex;
  position: relative;
}

.faq-images {
  z-index: 1;
  justify-content: center;
  align-items: center;
  width: 50%;
  padding-top: 100px;
  padding-bottom: 100px;
  display: flex;
  position: relative;
}

.faq-image-top-left {
  width: 33%;
  position: absolute;
  inset: 0% auto auto 0%;
}

.faq-center-image {
  width: 80%;
  position: relative;
}

.faq-image-bottom-right {
  width: 33%;
  position: absolute;
  inset: auto 0% 0% auto;
}

.portrait-image {
  aspect-ratio: 2 / 3;
}

.faq-contents {
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  width: 40%;
  min-height: 900px;
  display: flex;
  position: relative;
}

.faq-blocks {
  border-top: 1px solid var(--border);
  flex-flow: column;
  margin-bottom: 40px;
  display: flex;
}

.faq-border-wraooer {
  background-color: var(--border);
  width: 100%;
  height: 1px;
  position: absolute;
  inset: auto auto 0% 0%;
  overflow: hidden;
}

.room-details-contents {
  background-color: var(--white);
}

.room-details-sidebar {
  grid-column-gap: 40px;
  grid-row-gap: 40px;
  background-color: var(--primary-brown);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  min-width: 390px;
  padding: 36px;
  display: flex;
  position: sticky;
  top: 100px;
}

.room-images {
  grid-column-gap: 12px;
  grid-row-gap: 12px;
  flex-flow: row;
  grid-template-rows: auto;
  grid-template-columns: 1.4fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: flex-start;
  align-items: stretch;
  display: grid;
}

.room-gallery {
  grid-column-gap: 12px;
  grid-row-gap: 12px;
  flex-flow: row;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  height: 100%;
  display: grid;
}

.gallery-lightbox {
  z-index: 1;
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.room-details-image {
  height: 100%;
}

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

.room-title-body {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  text-align: center;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  margin-bottom: 40px;
  display: flex;
}

.room-heading {
  color: var(--primary-black);
  margin-top: 0;
  margin-bottom: 0;
  font-size: 60px;
}

.room-hover-wrapper {
  background-color: var(--background);
  font-family: var(--fonts--heading);
  justify-content: center;
  align-items: center;
  font-size: 40px;
  line-height: 1em;
  display: none;
  position: absolute;
  inset: 0%;
}

.room-details-rich-text blockquote {
  background-color: var(--primary-brown);
  margin-top: 40px;
  margin-bottom: 60px;
}

.room-details-rich-text h3 {
  background-color: var(--primary-brown);
  text-align: center;
  justify-content: center;
  align-items: center;
  margin-top: 0;
  margin-bottom: 1.5em;
  padding: 16px;
  font-size: 30px;
  display: flex;
}

.room-details-rich-text h4 {
  background-color: var(--primary-brown);
  justify-content: center;
  align-items: center;
  margin-top: 0;
  margin-bottom: 1.5em;
  padding: 12px;
  font-size: 24px;
  display: flex;
}

.room-details-rich-text h5 {
  color: var(--primary-black);
  margin-top: 1em;
  margin-bottom: 1em;
  padding-left: 40px;
  padding-right: 40px;
  font-size: 20px;
}

.room-details-rich-text h6 {
  color: var(--primary-black);
  margin-top: 1em;
  margin-bottom: 1em;
  padding-left: 40px;
  padding-right: 40px;
  font-size: 16px;
}

.room-details-rich-text h2 {
  background-color: var(--primary-brown);
  text-align: center;
  justify-content: center;
  align-items: center;
  margin-top: 1em;
  margin-bottom: 1em;
  padding: 20px;
  font-size: 40px;
  display: flex;
}

.room-details-rich-text h1 {
  background-color: var(--primary-brown);
  text-align: center;
  justify-content: center;
  align-items: center;
  margin-top: 1em;
  margin-bottom: 1em;
  padding: 24px;
  font-size: 60px;
  display: flex;
}

.room-details-rich-text p {
  color: var(--primary-black);
  margin-top: 1em;
  margin-bottom: 1em;
  padding-left: 40px;
  padding-right: 40px;
}

.room-details-rich-text ol, .room-details-rich-text ul {
  margin-top: 40px;
  margin-bottom: 60px;
  padding-left: 40px;
  padding-right: 40px;
}

.room-details-rich-text li {
  color: var(--primary-black);
  background-image: url('../images/christmas-stars_1christmas-stars.avif');
  font-size: 18px;
}

.details-column {
  grid-column-gap: 40px;
  grid-row-gap: 40px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr .5fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  align-items: flex-start;
  margin-top: 60px;
  display: grid;
}

.room-meta {
  grid-column-gap: 20px;
  grid-row-gap: 30px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.heading-with-divider {
  grid-column-gap: 2px;
  grid-row-gap: 2px;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.heading-divider {
  background-color: var(--border-2);
  width: 70%;
  max-width: 128px;
  height: 1px;
}

.category-card-with-image {
  grid-column-gap: 18px;
  grid-row-gap: 18px;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  height: 100%;
  min-height: 180px;
  padding: 40px 20px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.category-title {
  z-index: 1;
  color: var(--heading);
  text-align: center;
  letter-spacing: .4px;
  text-transform: uppercase;
  font-size: 24px;
  font-weight: 400;
  line-height: 1.3em;
  position: relative;
}

.category-image-wrapper {
  justify-content: flex-end;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
  position: absolute;
  top: 0%;
  bottom: 0%;
  right: 0%;
}

.white-overlay {
  background-color: var(--primary);
  pointer-events: none;
  display: none;
  position: absolute;
  inset: 0%;
}

.category-grid {
  grid-column-gap: 1px;
  grid-row-gap: 1px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
  overflow: hidden;
  box-shadow: 0 15px 23px #00000012;
}

.category-grid.col-4 {
  grid-template-columns: 1fr 1fr 1fr 1fr;
}

.amenities-icon {
  z-index: 1;
  max-width: 32px;
  position: relative;
}

.price-sidebar {
  grid-column-gap: 5px;
  grid-row-gap: 5px;
  font-family: var(--fonts--heading);
  flex-flow: wrap;
  justify-content: center;
  align-items: flex-end;
  font-size: 48px;
  font-weight: 400;
  line-height: 1em;
  display: flex;
}

.price-block-sidebar {
  grid-column-gap: 12px;
  grid-row-gap: 12px;
  border-top: 1px solid var(--border-2);
  border-bottom: 1px solid var(--border-2);
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-top: 16px;
  margin-bottom: 16px;
  padding-top: 20px;
  padding-bottom: 20px;
  display: flex;
}

.room-sidebar-info-wrapper {
  grid-column-gap: 24px;
  grid-row-gap: 24px;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

.additional-services {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  flex-flow: column;
  display: flex;
}

.addtional-service-block {
  grid-column-gap: 18px;
  grid-row-gap: 18px;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.icon-32px {
  max-width: 32px;
}

.icon-40px {
  max-width: 40px;
}

.margin-bottom-5px {
  margin-bottom: 5px;
}

.gallery-columns {
  column-count: 3;
  column-gap: 7px;
}

.blog-category-small {
  z-index: 1;
  background-color: var(--background);
  font-family: var(--fonts--paragraph);
  min-width: 70px;
  padding: 4px 23px;
  font-size: 14px;
  position: absolute;
  inset: 10px auto auto 10px;
}

.booking-body {
  z-index: 110;
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  justify-content: center;
  align-items: center;
  padding-left: 20px;
  padding-right: 20px;
  display: none;
  position: fixed;
  inset: 0%;
}

.book-form {
  grid-column-gap: 24px;
  grid-row-gap: 24px;
  flex-flow: column;
  display: flex;
}

.book-form-wrapper {
  z-index: 2;
  grid-column-gap: 30px;
  grid-row-gap: 30px;
  background-color: var(--primary-brown);
  flex-flow: column;
  width: 100%;
  max-width: 680px;
  margin-bottom: 0;
  margin-left: auto;
  margin-right: auto;
  padding: 40px;
  display: flex;
  position: relative;
}

.heading-center-allign {
  text-align: center;
  margin-top: 0;
  margin-bottom: 0;
}

.book-input-field {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  border-style: none none solid;
  border-width: 1px;
  border-color: black black var(--border-2);
  background-color: var(--transparent);
  color: var(--paragraph);
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  min-height: 48px;
  padding: 8px 0;
  font-size: 16px;
  line-height: 1em;
  display: block;
}

.book-input-field::placeholder {
  color: var(--paragraph);
}

.book-input-field.text-area {
  min-height: 120px;
}

.book-input-field.make-it-hidden {
  display: none;
}

.input-grid {
  grid-column-gap: 24px;
  grid-row-gap: 24px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.form-button {
  border: 1px solid var(--secondary);
  background-color: var(--transparent);
  color: var(--heading);
  letter-spacing: 1px;
  white-space: pre-line;
  justify-content: center;
  align-items: center;
  padding: 10px 30px;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.2em;
  transition: color .2s, background-color .2s;
  display: flex;
  position: relative;
  overflow: hidden;
}

.form-button:where(.w-variant-de7ecc0b-32af-c871-5aec-aaea19fd964a) {
  border: 1px solid var(--secondary);
  background-color: var(--transparent);
  letter-spacing: 1px;
  text-transform: uppercase;
  padding: 12px 24px;
}

.form-button:hover {
  background-color: var(--secondary);
  color: var(--primary);
}

.form-button.contact-button {
  margin-top: 25px;
}

.form-button.contact-button.cc-page {
  border-color: var(--tertiary);
  color: var(--secondary);
  background-color: #4f4c4d;
  width: 100%;
  margin-top: 0;
}

.form-close-overlay-click {
  z-index: 1;
  position: absolute;
  inset: 0%;
}

.list {
  grid-column-gap: 8px;
  grid-row-gap: 8px;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  margin-top: 30px;
  margin-bottom: 50px;
  padding-left: 0;
  display: flex;
}

.portrait-max-690px {
  aspect-ratio: 2 / 3;
  max-height: 690px;
}

.about-us-sub-grid {
  grid-column-gap: 50px;
  grid-row-gap: 50px;
  grid-template-rows: auto;
  grid-template-columns: 1fr .75fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  margin-top: 50px;
  display: grid;
}

.about-us-sub-grid.cc-no-grid {
  grid-column-gap: 2.5rem;
  grid-row-gap: 2.5rem;
  flex-flow: column;
  grid-template-columns: .75fr;
  justify-content: flex-start;
  align-items: flex-start;
  margin-top: 0;
  display: flex;
  overflow: visible;
}

.list-item-14px {
  background-image: url('../images/up-right-arrow_1up-right-arrow.png');
  font-size: 14px;
  line-height: 24px;
}

.grid-2-column-1-6 {
  grid-column-gap: 40px;
  grid-row-gap: 40px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  place-items: stretch stretch;
  display: grid;
}

.grid-2-column-1-6.cc-centered {
  place-items: center stretch;
}

.grid-2-column-1-6.cc-1-cok {
  grid-template-columns: 1fr;
  max-width: 40rem;
}

.grid-2-column-1-6.cc-1-cok.cc-centerd-align {
  place-items: center;
  max-width: none;
}

.vertical-left-top-2 {
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  height: 100%;
  display: flex;
}

.about-us-image-wrapper {
  z-index: 1;
  width: 100%;
  position: relative;
  overflow: hidden;
}

.bg-absolute-delayed {
  background-color: var(--background);
  width: 100%;
  height: 100%;
  display: none;
  position: absolute;
  inset: 0%;
}

.bg-absolute-delayed:where(.w-variant-bcda6897-16d3-eabc-c9c3-40a76628bd33) {
  background-color: var(--white);
  height: 105%;
  display: block;
}

.hero-section {
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100vh;
  margin-top: 0;
  display: flex;
}

.hero-section._100vh {
  height: 95vh;
  position: sticky;
  top: 5rem;
  transform: scale(.9);
}

.hero-mask-wrapper {
  z-index: 1;
  justify-content: center;
  align-items: center;
  width: 100vw;
  height: 100vh;
  display: flex;
  overflow: hidden;
}

.hero-mask-wrapper._90vh {
  height: 95vh;
}

.first-image-wrapper {
  position: absolute;
  inset: 0%;
}

.rotate-heading {
  font-family: var(--fonts--paragraph);
  writing-mode: tb-rl;
  margin: 0;
  font-size: 40px;
  font-weight: 600;
  transform: rotate(180deg);
}

.rotate-heading-wrapper {
  position: absolute;
  inset: auto auto 20px 20px;
}

.hero-form-title {
  margin-top: 0;
  margin-bottom: 0;
}

._3-column-grid-1-from-mobile {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.package-summery-mask {
  position: relative;
  overflow: hidden;
}

.camera-fixed-till-mobile {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100vw;
  height: 100vh;
  display: flex;
  position: sticky;
  top: 0;
}

._4-column-grid-2-col-in-mobile {
  grid-column-gap: 5px;
  grid-row-gap: 5px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

._2-column-grid-1-from-tab {
  grid-column-gap: 28px;
  grid-row-gap: 28px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.footer-logo {
  object-fit: contain;
  max-width: 170px;
}

._24px-text-white {
  color: #fff;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 24px;
  line-height: 36px;
}

._24px-text-white.cc-footer-link-head {
  font-family: Aboreto, sans-serif;
}

.horizontal-left-center-20px-gap-2 {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.footer-wrapper {
  border-top: 1px solid var(--heading);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  place-items: stretch stretch;
  margin-top: 4rem;
  padding-top: 60px;
  display: grid;
  overflow: hidden;
}

.footer-wrapper.new-footer {
  grid-template-columns: .75fr .75fr .5fr;
}

.vertical-left-stretch-20px-gap {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  flex-flow: column;
  justify-content: flex-start;
  align-items: stretch;
  display: flex;
}

.footer-block-coluimn {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.footer-block-coluimn.cc-new {
  width: 100%;
}

.footer-links {
  grid-column-gap: 24px;
  grid-row-gap: 24px;
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.footer-icon-primary {
  background-color: var(--primary-brown);
  cursor: pointer;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 100%;
  min-width: 40px;
  max-width: 40px;
  height: 40px;
  padding: 0;
  display: flex;
}

.secondary-paragraph {
  color: #e9e9e9;
}

.secondary-paragraph:where(.w-variant-2cc22f17-ebe1-ac5a-e52d-ef3134b0fe93) {
  color: var(--primary-black);
}

.footer-border {
  background-color: var(--secondary);
  border-radius: 2px;
  width: 100%;
  height: 1px;
}

.footer-border:where(.w-variant-3bb5ab52-3c2d-0c7e-8634-04d47dfe9831) {
  background-color: var(--primary-black);
}

.package-cover-image {
  aspect-ratio: 3 / 2;
  max-height: 700px;
}

.package-cover-wrapper {
  z-index: 1;
  width: 100%;
  max-width: 50%;
  margin-top: 20px;
  margin-bottom: 60px;
  position: relative;
}

.text-block {
  color: var(--heading);
  font-size: 48px;
  font-weight: 700;
  line-height: 1em;
}

.pacakge-contents {
  background-image: linear-gradient(180deg, var(--transparent), var(--background));
  flex-flow: column;
  justify-content: flex-end;
  align-items: flex-start;
  height: 100%;
  max-height: 300px;
  padding: 30px 40px 40px;
  display: flex;
  position: absolute;
  inset: auto 0 0;
}

.default-state {
  grid-column-gap: 15px;
  grid-row-gap: 15px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: flex-start;
  align-items: center;
  margin-top: 20px;
  margin-bottom: 0;
  display: grid;
}

.mt-40px {
  margin-top: 40px;
}

.room-flex {
  grid-column-gap: 1%;
  grid-row-gap: 1%;
  flex-flow: wrap;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.room-items-grid {
  width: 50%;
  margin-bottom: 2%;
}

.room-items-grid:nth-child(2n) {
  margin-left: auto;
}

.room-thumbnail-portrait {
  aspect-ratio: 2 / 3;
  max-height: 700px;
}

.collection-list-wrapper {
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
}

.search-close-icon {
  background-color: var(--primary);
  color: var(--secondary);
  cursor: pointer;
  border-radius: 50%;
  padding: 6px;
  font-family: Material Icons, sans-serif;
  font-size: 25px;
  font-weight: 400;
  line-height: 25px;
  transition: color .42s cubic-bezier(.25, .46, .45, .94), background-color .4s, transform .5s cubic-bezier(.165, .84, .44, 1);
  position: absolute;
  inset: 40px 10px auto auto;
}

.search-close-icon:hover {
  color: #fff;
  background-color: #da000b;
  transform: rotate(180deg);
}

.search-container {
  border-radius: 1px;
  width: 100%;
  max-width: 860px;
  margin-left: auto;
  margin-right: auto;
  padding: 100px 60px 60px;
  position: relative;
}

.button-background {
  z-index: 1;
  background-color: var(--secondary);
  width: 150%;
  display: none;
  position: absolute;
  top: 0%;
  bottom: 0%;
  transform: skew(-45deg);
}

.button-background:where(.w-variant-de7ecc0b-32af-c871-5aec-aaea19fd964a) {
  height: auto;
  left: auto;
  right: auto;
}

.nav-menu-desktop {
  z-index: 100;
  background-color: var(--primary-brown);
  flex-flow: row;
  justify-content: space-between;
  align-items: center;
  width: 50vw;
  min-width: 50vw;
  height: 100%;
  display: flex;
  position: relative;
  overflow: auto;
}

.menu-column {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
  text-align: center;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 40px;
  display: flex;
  position: relative;
}

.menu-column._2nd-col {
  grid-column-gap: 60px;
  grid-row-gap: 60px;
  background-color: var(--primary-black);
}

.menu-column._3rd-col {
  grid-column-gap: 80px;
  grid-row-gap: 80px;
  font-family: var(--fonts--heading);
  color: var(--primary);
  background-image: linear-gradient(#fffc, #fffc), url('../images/pexels-gulru-sude-330689650-29641811.jpg');
  background-position: 0 0, 50%;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
  display: none;
}

._15px-500-paragraph {
  color: var(--paragraph-2);
  font-weight: 500;
}

.vertical-center-5px-gap {
  grid-column-gap: 5px;
  grid-row-gap: 5px;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

._48px-heading {
  font-family: var(--fonts--heading);
  font-size: 48px;
  line-height: 1em;
}

.menu-room-image {
  max-height: 150px;
}

.menu-room-card {
  z-index: 1;
  border: 1px solid var(--border);
  text-align: left;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
  position: relative;
  overflow: hidden;
}

.absolute-room-name {
  grid-column-gap: 4px;
  grid-row-gap: 4px;
  font-family: var(--fonts--heading);
  background-color: #0009;
  flex-flow: column;
  justify-content: flex-end;
  align-items: flex-start;
  padding: 14px;
  font-size: 24px;
  display: flex;
  position: absolute;
  inset: 0%;
}

.menu-rooms {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  flex-flow: column;
  justify-content: center;
  align-items: stretch;
  height: 100%;
  display: flex;
}

.menu-logo {
  z-index: 2;
  max-width: 240px;
  margin-bottom: 40px;
  position: relative;
}

._18px-text-500 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.4em;
}

.close-icon-navbar-large {
  background-color: var(--primary-brown);
  color: var(--secondary);
  cursor: pointer;
  border-radius: 50%;
  padding: 14px;
  font-family: Material Icons, sans-serif;
  font-size: 25px;
  font-weight: 400;
  line-height: 1em;
  transition: color .42s cubic-bezier(.25, .46, .45, .94), background-color .4s, transform .4s cubic-bezier(.165, .84, .44, 1);
}

.close-icon-navbar-large:hover {
  background-color: #e41e1e;
  transform: scale(1.1)rotate(180deg);
}

.nav-menu-desktop-wrapper {
  z-index: 100;
  background-color: var(--primary);
  flex-flow: row;
  justify-content: flex-start;
  align-items: center;
  width: 50%;
  max-width: 50%;
  height: 100%;
  display: none;
  position: fixed;
  inset: 0%;
  overflow: hidden;
}

.book-now-button-wrapper {
  width: 100%;
  margin-top: 20px;
}

.nav-image-wrapper {
  pointer-events: none;
  display: none;
  position: absolute;
  inset: 0%;
}

.nav-image-wrapper:where(.w-variant-dc1fbd61-4f46-43b0-25e9-63fc8771ebc1) {
  pointer-events: none;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0% auto auto 0%;
}

.nav-image, .nav-image:where(.w-variant-dc1fbd61-4f46-43b0-25e9-63fc8771ebc1) {
  height: 100%;
}

.room-price-text-merge {
  grid-column-gap: 5px;
  grid-row-gap: 5px;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.room-nav-items {
  color: var(--white);
}

.nav-link-small {
  z-index: 2;
  font-family: var(--fonts--heading);
  color: var(--heading);
  white-space: nowrap;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  max-height: 1.4em;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.4em;
  text-decoration: none;
  transition: color .3s ease-out;
  display: flex;
  position: relative;
  overflow: hidden;
}

.nav-link-small:where(.w-variant-dc1fbd61-4f46-43b0-25e9-63fc8771ebc1) {
  font-family: var(--fonts--heading);
  font-size: 40px;
}

.nav-link-small:hover {
  color: var(--heading);
}

.nav-link-small:focus {
  color: var(--heading);
  border-bottom-color: #0956af;
  font-weight: 700;
}

.nav-link-small:focus-visible, .nav-link-small[data-wf-focus-visible] {
  outline-offset: 0px;
  outline: 2px solid #0050bd;
}

.nav-link-small.w--current {
  color: var(--heading);
  border-bottom-color: #0956af;
  font-weight: 600;
}

.nav-links-desktop {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
  justify-content: flex-start;
  align-items: center;
  display: none;
}

.nav-link-wrapper-small {
  color: var(--heading);
  justify-content: center;
  align-items: center;
  padding: 5px 12px;
  display: flex;
  position: relative;
  overflow: hidden;
}

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

.paragraph {
  color: #e9e9e9;
}

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

.text-color-black.text-color-green {
  color: #898989;
}

.text-color-black.heading-aboreto.text-30 {
  font-size: 1.875rem;
  line-height: 2.25rem;
}

.text-color-black.payment-plan-text {
  color: #8f8370;
  letter-spacing: -.01em;
  font-size: 1.5rem;
  line-height: 2rem;
}

.text-color-black.no-margin {
  text-transform: none;
  margin-top: 0;
  margin-bottom: 0;
}

.text-color-black.no-margin.small-head {
  font-size: 1.25rem;
  line-height: 1.5rem;
}

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

.text-color-white.xl-para {
  font-size: 1.125rem;
  line-height: 1.5rem;
}

.swiper-wrapper {
  justify-content: flex-start;
  align-items: stretch;
  display: flex;
  overflow: visible;
}

.swiper-slide {
  flex: 1;
  width: 100%;
}

.swiper-slide.cc-1 {
  min-width: 55rem;
}

.swiper-slide.cc-2 {
  flex: 1;
  min-width: 26.5rem;
}

.rooms-prev {
  background-color: var(--primary-black);
  background-image: url('../images/left-arrow-1_1left-arrow (1).png');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: 32px;
  border-radius: 50%;
  width: 3rem;
  height: 3rem;
  overflow: hidden;
}

.rooms-next {
  background-color: var(--primary-black);
  background-image: url('../images/left-arrow-1_1left-arrow (1).png');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: 32px;
  border-radius: 50%;
  width: 3rem;
  height: 3rem;
  overflow: hidden;
  transform: rotate(180deg);
}

.cl-projects {
  width: 100%;
  display: flex;
}

.ci-project {
  flex: none;
  width: 100%;
}

.ci-room.swiper-slide {
  width: auto;
}

.projects-prev {
  background-color: var(--primary-brown);
  background-image: url('../images/left-arrow-1_1left-arrow (1).png');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: 32px;
  border-radius: 50%;
  width: 3.5rem;
  height: 3.5rem;
}

.projects-next {
  background-color: var(--primary-brown);
  background-image: url('../images/left-arrow-1_1left-arrow (1).png');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: 32px;
  border-radius: 50%;
  width: 3.5rem;
  height: 3.5rem;
  transform: rotate(180deg);
}

.projects-slider {
  background-color: #0000;
  height: auto;
}

.hide {
  display: none;
}

.slider-overflow-hide {
  overflow: hidden;
}

.right-arrow-2 {
  inset: auto 0% 0% auto;
}

.hero-slider-arrow {
  background-color: var(--primary-brown);
  background-image: url('../images/left-arrow-1_1left-arrow (1).png');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: 32px;
  border-radius: 50%;
  width: 2.5rem;
  min-width: 2.5rem;
  height: 2.5rem;
  min-height: 2.5rem;
  inset: auto 0% 0% auto;
}

.hero-slider-arrow.right-arrow {
  bottom: 4rem;
  right: 3rem;
  transform: rotate(180deg);
}

.hero-slider-arrow.left-arrow {
  bottom: 4rem;
  right: 6rem;
  transform: none;
}

.project-slider-arrow {
  background-color: var(--primary-black);
  background-image: url('../images/left-arrow-1_1left-arrow (1).png');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: 32px;
  border-radius: 50%;
  width: 2rem;
  min-width: 2rem;
  height: 2rem;
  min-height: 2rem;
  inset: 0% auto auto 25%;
}

.project-slider-arrow.left-arrow {
  left: 30%;
  transform: none;
}

.project-slider-arrow.right-arrow {
  inset: 0% 30% auto auto;
  transform: rotate(180deg);
}

._3-col-grid {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
}

.heading-2:where(.w-variant-2d074461-c212-5575-ca01-d1d9fc1804ed) {
  color: var(--white);
}

.slider-list {
  justify-content: flex-start;
  align-items: stretch;
  height: 100%;
  display: flex;
}

.slider-item {
  flex: none;
  width: 100%;
  margin-right: 1.5vw;
}

.slider-item.swiper-slide {
  width: 50%;
  margin-right: 0;
}

.slider-item.splide__slide {
  margin-right: 2.5rem;
}

.wrapper-nav {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  justify-content: space-between;
  align-items: center;
  max-width: 56.25rem;
  margin-top: 1.5rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.wrapper-nav.cc-main-arrow-wrap {
  z-index: 1000;
  grid-column-gap: 15rem;
  grid-row-gap: 15rem;
  justify-content: center;
  align-items: center;
  height: 27px;
  position: absolute;
  inset: -1.25% 0% auto;
}

.wrapper-nav.cc-inside-arrow {
  z-index: 1000;
  margin-top: 0;
  margin-bottom: 1rem;
}

.slider-navigation {
  border: 1px solid var(--primary-brown);
  color: var(--primary-brown);
  border-radius: 1.5625rem;
  justify-content: center;
  align-items: center;
  width: 5rem;
  padding: .5rem;
  transition: all .35s;
  display: flex;
}

.slider-navigation:hover {
  background-color: var(--primary-brown);
  color: var(--white);
}

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

.slider-navigation.main-prev {
  width: 3rem;
  height: 2.5px;
}

.slider-navigation.main-next {
  width: 3rem;
  height: 2.5px;
  transform: rotate(180deg);
}

.left-arrow {
  justify-content: center;
  align-items: center;
  display: flex;
  transform: rotate(90deg);
}

.slider-wrapper.swiper {
  max-width: none;
}

.main-swiper.swiper {
  z-index: 0;
  position: relative;
  overflow: visible;
}

.main-wrapper {
  display: flex;
}

.main-wrapper.swiper-wrapper {
  position: relative;
}

.main-slide {
  flex: none;
  width: 100%;
}

.main-slide.swiper-slide {
  overflow: hidden;
}

.main-project-wrap {
  position: relative;
}

.mask-2 {
  height: 100vh;
}

.navigation-menu {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  justify-content: flex-start;
  align-items: center;
  display: flex;
  position: static;
}

.icon-x-small {
  flex: none;
  justify-content: center;
  align-items: center;
  width: 16px;
  height: 16px;
  display: flex;
}

.logo-link {
  padding: 16px;
}

.navigation-button-block {
  grid-column-gap: 8px;
  grid-row-gap: 8px;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  display: flex;
}

.navigation-link {
  grid-column-gap: 12px;
  color: var(--secondary);
  letter-spacing: -.02em;
  flex: none;
  align-items: center;
  padding: 8px;
  font-size: 18px;
  line-height: 1.4;
  display: flex;
  position: relative;
}

.navigation-link.hide {
  display: none;
}

.navigation-link.cc-new {
  border-bottom: 1px solid #0000;
  font-size: 1rem;
  transition: all .35s;
}

.navigation-link.cc-new:hover {
  border-bottom: 1px solid var(--secondary);
}

.navigation-link.cc-new.w--current {
  border-bottom-color: var(--secondary);
}

.navigation-link.cc-new.cc-dd {
  padding-right: 1.5rem;
}

.navigation-left {
  grid-column-gap: 24px;
  flex: 1;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
}

.navigation-dot {
  background-color: #000;
  border-radius: 6px;
  flex: none;
  justify-content: center;
  align-items: center;
  width: 6px;
  height: 6px;
  display: flex;
  position: absolute;
  inset: auto auto auto 0%;
}

.navigation-container {
  justify-content: space-between;
  align-items: center;
  width: 100%;
  max-width: 1640px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.navigation-grid {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  width: 100%;
}

.navigation {
  z-index: 10000000;
  background-color: #0000;
  width: 100%;
  padding: 1rem 5%;
  position: absolute;
}

.navigation.cc-new {
  border-top: 1px solid #4f4c4d42;
  border-bottom-style: none;
  margin-top: 1rem;
  padding-top: 0;
  padding-bottom: 0;
  position: absolute;
}

.button-primary {
  grid-column-gap: 8px;
  grid-row-gap: 8px;
  color: #f5f5f5;
  letter-spacing: -.02em;
  background-color: #141414;
  border-radius: 99px;
  flex: none;
  justify-content: center;
  align-items: center;
  height: 56px;
  padding: 12px 24px;
  font-size: 18px;
  font-weight: 700;
  line-height: 24px;
  transition: background-color .3s;
  display: flex;
}

.button-primary:hover {
  background-color: #3d3d3d;
}

.button-video-play {
  background-color: #f5f5f5;
  border-radius: 99px;
  justify-content: center;
  align-items: center;
  width: 56px;
  height: 56px;
  padding: 16px;
  transition: background-color .3s;
  display: flex;
}

.button-video-play:hover {
  color: #fff;
  background-color: #000;
}

.sticky-section-wrapper {
  height: 200vh;
}

.nav-logo {
  width: 4rem;
}

.nav-logo.cc-new {
  width: 6.125rem;
}

.nav-logo.cc-full-name {
  width: auto;
  max-width: 12.5rem;
}

.image-abot-wrapper {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.max-height-350 {
  aspect-ratio: 2 / 3;
  object-position: 50% 50%;
  flex: 1;
  max-height: 350px;
}

.max-height-350.hide-mobile {
  aspect-ratio: auto;
}

.v-flex-2-5 {
  grid-column-gap: 2.5rem;
  grid-row-gap: 2.5rem;
  flex-flow: column;
  display: flex;
}

.v-flex-2-5.cc-40cent {
  width: 40%;
}

.max-height-650 {
  object-position: 50% 30%;
  max-height: 650px;
}

.nav-link-txt {
  font-size: 1rem;
  line-height: 1.125rem;
}

.seprator-nav-v-line {
  background-color: var(--primary-black);
  width: 1px;
  height: 50%;
}

.mobile-contact-link-wrapper {
  display: none;
}

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

.content-wrapper.mt-4rem {
  margin-top: 4rem;
}

.content-wrapper.mt-4rem.cc-centered {
  justify-content: center;
  align-items: center;
  display: flex;
}

.content-wrapper.mt-4rem.pb-rem {
  padding-bottom: 3rem;
}

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

.content-wrapper.cc-centered.mt-2 {
  margin-top: 2rem;
}

.content-wrapper.cc-h-flex {
  display: flex;
}

.content-wrapper.cc-h-flex.cc-center {
  justify-content: flex-start;
  align-items: center;
}

.content-wrapper.cc-h-flex.right-align {
  justify-content: flex-end;
  align-items: stretch;
}

.content-wrapper.mt-40px.h-flex {
  display: flex;
}

.content-wrapper.mt-40px.h-flex.cc-gap-2 {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
}

.content-wrapper.cc-icons-wrap {
  grid-column-gap: 6.25rem;
  grid-row-gap: 6.25rem;
  justify-content: center;
  align-items: center;
  margin-top: 3.125rem;
  display: flex;
}

.content-wrapper.cc-icons-wrap.tm-0 {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  margin-top: 0;
}

.content-wrapper.cc-icons-wrap-third {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  justify-content: space-between;
  align-items: stretch;
  display: flex;
}

.content-wrapper.cc-plan-wrap {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  justify-content: center;
  align-items: center;
  margin-top: 3.125rem;
  display: flex;
}

.content-wrapper.cc-plan-wrap.tm-0 {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  margin-top: 0;
}

.max-weidth-35rem {
  max-width: 50rem;
}

.hp-wrap {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.hp-wrap.text-align-center {
  text-align: center;
}

.hp-wrap.text-align-center.gap-2-5 {
  grid-column-gap: 2.5rem;
  grid-row-gap: 2.5rem;
}

.hp-wrap.gap-2-5rem {
  grid-column-gap: 2.5rem;
  grid-row-gap: 2.5rem;
  flex-flow: column;
  display: flex;
}

.hp-wrap.gap-0-25 {
  grid-column-gap: .25rem;
  grid-row-gap: .25rem;
}

.f-footer-small {
  background-color: #fff;
  padding: 32px 5%;
  position: relative;
}

.f-footer-small.cc-bg-grey {
  background-color: #403d3e;
}

.f-footer-link {
  color: var(--primary-black);
  letter-spacing: -.01em;
  flex: 0 auto;
  padding-top: 4px;
  padding-bottom: 4px;
  font-size: 14px;
  line-height: 24px;
  text-decoration: none;
  transition: color .3s;
}

.f-footer-link:hover {
  color: var(--primary-brown);
}

.f-footer-logo-xs {
  width: auto;
  height: 48px;
  overflow: visible;
}

.f-footer-social-group {
  grid-column-gap: 16px;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.f-footer-group {
  justify-content: flex-end;
  align-items: center;
  display: flex;
}

.f-footer-menu {
  grid-column-gap: 24px;
  flex: none;
  justify-content: flex-end;
  align-items: center;
  display: flex;
}

.f-container-large {
  width: 100%;
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

.f-footer-social {
  color: var(--primary-black);
  background-color: #f3f5fb;
  border-radius: 100px;
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  transition: color .35s;
  display: flex;
}

.f-footer-social:hover {
  color: var(--primary-brown);
}

.f-footer-detail {
  margin-bottom: 0;
  font-size: 12px;
  font-weight: 500;
  line-height: 16px;
}

.f-footer-detail.text-white {
  color: #fff;
}

.f-footer-line {
  background-color: #e4e6f1;
  width: 1px;
  height: 24px;
  margin-left: 16px;
  margin-right: 16px;
}

.f-footer-vertical-divider {
  background-color: #e4e6f1;
  width: 1px;
  height: 16px;
}

.f-icon-regular {
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  transition: color .2s;
  display: flex;
}

.f-footer-bottom {
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.f-footer-brand {
  align-items: center;
  display: flex;
}

.f-footer-social-row-large {
  flex-direction: column;
  align-items: flex-start;
  margin-left: 60px;
  display: flex;
}

.white-bg {
  background-color: var(--white);
  justify-content: flex-start;
  align-items: center;
}

.white-bg.mt-30 {
  margin-top: 30px;
}

.white-bg.about-text-grey-bg {
  background-color: var(--primary-black);
  color: var(--heading);
  padding: 1.5rem 1rem;
}

.about-hero-img-div {
  aspect-ratio: 2;
  background-image: linear-gradient(#0000004d, #0000004d), url('../images/SH01-HQ.png');
  background-position: 0 0, 50% 10%;
  background-repeat: repeat, no-repeat;
  background-size: auto, cover;
  justify-content: center;
  align-items: center;
  padding: 3rem;
  display: flex;
}

.max-width-65rem {
  max-width: 65rem;
}

.sharafi-section-logo {
  width: 10rem;
}

.sharafi-section-logo.cc-white-bh {
  background-color: var(--white);
}

.card-over-card-wrapper {
  background-color: var(--primary-brown);
  background-image: linear-gradient(#00000040, #00000040), url('../images/SH3-HQ.png');
  background-position: 0 0, 100%;
  background-repeat: repeat, no-repeat;
  background-size: auto, 650px;
  justify-content: flex-end;
  align-items: stretch;
  display: flex;
  position: relative;
}

.card-over-card-image {
  width: 30%;
}

.card-over-card-content-wrap {
  background-color: var(--white);
  width: 100%;
  margin: 2rem 25rem 2rem 2rem;
  padding: 3.5rem;
  box-shadow: 0 2px 5px #0003;
}

.page-loader {
  z-index: 2147483647;
  background-color: var(--white);
  width: 100vw;
  height: 100vh;
  display: none;
  position: fixed;
  inset: 0%;
}

.page-loader.hide {
  display: none;
}

.preloader {
  background-image: url('../images/b5224e552e9adb67cdb43734369dfa8c219d12b4.png');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
  position: relative;
}

.text-animation-wrapper {
  grid-column-gap: .875rem;
  grid-row-gap: .875rem;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.text-animation-wrapper.hide {
  display: none;
}

.text-animation-txt-wrap {
  display: flex;
}

.txt-img-wrap {
  overflow: hidden;
}

.sharafi-loader-logo {
  object-fit: cover;
  width: 10rem;
  height: 100%;
}

.sharafi-loader-logo.h, .sharafi-loader-logo.s {
  object-fit: fill;
  width: 30vw;
}

.loader-txt-wrapper {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  color: var(--heading);
  justify-content: center;
  align-items: center;
  margin-top: .5rem;
  display: flex;
}

.page-loader-txt {
  text-align: center;
  font-size: 1.5rem;
}

.xl-para {
  font-size: 1.125rem;
  line-height: 1.5rem;
}

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

.button-wrapper.cc-left-align {
  justify-content: flex-start;
  align-items: center;
}

.three-video-set {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.three-video-set.right-align {
  justify-content: flex-end;
  align-items: center;
}

.three-video-set.cc-center-align {
  justify-content: center;
  align-items: center;
}

.btn {
  color: #4f4c4d;
  letter-spacing: -.02em;
  background-color: #fff;
  border: 1px solid #4f4c4d;
  font-family: Tt Norms, Times New Roman, sans-serif;
  font-size: 1rem;
  line-height: 1.5rem;
}

.btn.big-btn {
  padding: 1.25rem 1.875rem;
}

.hero-img-new {
  object-fit: cover;
  width: 85vw;
  max-height: 70vh;
}

.hero-img-new.cc-about {
  width: 70vw;
}

.hero-img-new.cc-marea-hero {
  width: 100%;
  max-height: 60vh;
  margin-top: 3.75rem;
}

.max-width-25rem {
  max-width: 25rem;
}

.left-align-85vw-img {
  width: 85vw;
  max-height: 55vh;
  margin-bottom: 3rem;
}

.img-text-wrapper-after-about {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  display: flex;
}

.img-text-wrapper-after-about.cc-60cent {
  width: 60%;
}

.img-text-wrapper-after-about.cc-60cent.negative-margin {
  justify-content: flex-start;
  align-items: flex-start;
}

.mera-img {
  width: 50%;
  height: 100%;
}

.mera-img.cc-65 {
  width: 65%;
}

.mera-fisr-wrapper {
  justify-content: flex-start;
  align-items: flex-start;
  margin-bottom: -80px;
  display: flex;
  overflow: visible;
}

.left-div {
  width: 50%;
  padding-right: 1.5rem;
}

.left-div._40cent {
  width: 40%;
}

.right-div {
  width: 50%;
  padding-left: 1.5rem;
}

.right-div.cc-right-align {
  justify-content: flex-end;
  align-items: center;
  display: flex;
}

.right-div.cc-centered {
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.right-div._60cent {
  width: 60%;
}

.right-div.v-flex-apart {
  flex-flow: column;
  justify-content: space-between;
  align-items: stretch;
  display: flex;
}

.right-div.v-flex-apart.gap-2 {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
}

.df-swiper-nav {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  justify-content: flex-end;
  align-items: center;
  display: flex;
}

.df-auto-swiper.swiper {
  overflow: visible;
}

.df-slide-card {
  position: relative;
}

.df-slide-card.cc-1 {
  max-width: 55rem;
  height: 100%;
}

.df-slide-card.cc-2 {
  max-width: 26.5rem;
  height: 100%;
}

.df-slide-card.cc-pro-1 {
  height: 100%;
  display: flex;
}

.df-slide-card.cc-pro-1.cc-new {
  flex-flow: column;
  height: auto;
  transition: all .35s;
}

.df-slide-card.cc-pro-1.cc-new:hover {
  box-shadow: 0 4px 7.2px #0000002b;
}

.df-slide-card.cc-pro-2 {
  margin-top: 3.75rem;
  display: flex;
}

.slider-img-1 {
  height: auto;
}

.slide-image-name-text-wrfapper {
  grid-column-gap: 6.25rem;
  grid-row-gap: 6.25rem;
  color: #4f4c4d;
  letter-spacing: -.02em;
  background-color: #fff;
  justify-content: space-between;
  align-items: center;
  padding: 1.25rem 1rem;
  font-size: 1.5rem;
  line-height: 1.75rem;
  display: flex;
  position: absolute;
  inset: auto 0% 0% auto;
}

.slide-image-name-text-wrfapper.cc-2 {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
}

.slide-image-name-text-wrfapper.cc-small-txt {
  font-size: .875rem;
  line-height: 1.25rem;
}

.slide-image-name-text-wrfapper.cc-small-txt.cc-new {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.slide-image-name-text-wrfapper.cc-news-card {
  background-color: #fafafa;
  font-size: .875rem;
  line-height: 1.25rem;
  position: static;
}

.slide-image-name-text-wrfapper.cc-news-card.cc-new {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.slide-image-name-text-wrfapper.cc-news-card-news-page {
  background-color: #0000;
  border-left: 1px solid #8f8370;
  margin-top: 1.5rem;
  font-size: .875rem;
  line-height: 1.25rem;
  position: static;
}

.slide-image-name-text-wrfapper.cc-news-card-news-page.cc-new {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.arrow-icon {
  width: 2rem;
}

.slider-img-2 {
  height: 100%;
}

.project--grid {
  grid-column-gap: 4.25rem;
  grid-row-gap: 4.25rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  place-items: stretch stretch;
}

.projec-wrapper-card {
  height: 100%;
}

.projec-wrapper-card.cc-3 {
  justify-content: flex-end;
  align-items: stretch;
  display: flex;
}

.projec-wrapper-card.cc-2 {
  justify-content: center;
  align-items: flex-start;
  margin-top: 90px;
  display: flex;
}

.projec-wrapper-card.cc-second {
  padding-top: 2rem;
}

.projec-wrapper-card.cc-third {
  padding-top: 4rem;
}

.small-para {
  font-size: .875rem;
  line-height: 1.25rem;
}

.text-bold {
  font-weight: 500;
}

.cc-right-align {
  justify-content: flex-end;
  align-items: stretch;
  display: flex;
}

.bottom-navigation {
  z-index: 2147483647;
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  color: #fff;
  background-color: #4f4c4d;
  justify-content: center;
  align-items: center;
  max-width: 22.5rem;
  margin-left: auto;
  margin-right: auto;
  padding: 1rem 1.25rem;
  font-size: 1rem;
  line-height: 1.5rem;
  display: flex;
  position: fixed;
  inset: auto 0% 2%;
}

.about-hero-imag-wrapper {
  display: flex;
}

.hero-text-wrapper {
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  margin-left: -9.375rem;
  display: flex;
}

.about-hero-txt {
  color: var(--primary-black);
}

.about-hero-txt.text-color-green {
  color: #898989;
}

.number-wrapper-main {
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.counter-number-text-between {
  color: #fff;
  font-size: 3.75rem;
  line-height: 4rem;
}

.heading-style-h6 {
  color: #fff;
  letter-spacing: .64px;
  text-transform: capitalize;
  font-size: 18px;
  line-height: 1.5;
}

.heading-style-h6.change-max-width {
  color: #1e1e1e;
  max-width: 236px;
}

.heading-style-h6.change-max-width.text-white {
  color: #4f4c4d;
  text-align: center;
  font-size: 1rem;
}

.number-wrapper {
  grid-column-gap: 6rem;
  grid-row-gap: 6rem;
  justify-content: center;
  align-items: center;
  display: flex;
}

.counter-item {
  grid-column-gap: 25px;
  grid-row-gap: 25px;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.counter-number {
  color: #ad8661;
  font-size: 60px;
  line-height: 55px;
}

.counter-number.text-white {
  color: #8f8370;
}

.inline-number-wrap {
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.v-flex-text-card {
  text-align: center;
  flex-flow: column;
  flex: 1;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.v-flex-text-card.cc-gap-0-875 {
  grid-column-gap: .875rem;
  grid-row-gap: .875rem;
  flex: 1;
}

.number-wrapper-img-text-card {
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  height: 100%;
  display: flex;
}

.number-txt-wrapper {
  grid-column-gap: 3.5rem;
  grid-row-gap: 3.5rem;
}

.h-flex-number {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  color: #4f4c4d;
  justify-content: flex-start;
  align-items: center;
  font-size: 1.25rem;
  line-height: 1.5rem;
  display: flex;
}

.number-txt-gold {
  color: #8f8370;
  font-family: Tt Norms, Times New Roman, sans-serif;
  font-size: 2.125rem;
  line-height: 2.25rem;
}

.galler-grid {
  grid-column-gap: .8125rem;
  grid-row-gap: .8125rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1.75fr 1fr;
  margin-top: 2.5rem;
}

.galler-grid.cc-second {
  grid-template-columns: 1fr 1fr 1fr;
  margin-top: 13px;
}

.gallery-img {
  height: 100%;
}

.page-load-animation-img {
  height: 100%;
  position: absolute;
  inset: 0%;
}

.scroll-down-show {
  z-index: 100;
  width: 5rem;
  height: 5rem;
  position: absolute;
  bottom: 5%;
}

.hero-bg-video {
  justify-content: center;
  align-items: center;
  height: 100%;
  display: flex;
}

.image-wrapper-after-hero {
  position: relative;
}

.after-hero-sh-logo {
  max-width: 20rem;
}

.image-wrapper-for-logo {
  justify-content: center;
  align-items: center;
  display: flex;
  position: absolute;
  inset: 0%;
}

.text-wrapper-center-negative {
  justify-content: center;
  align-items: center;
  margin-top: -5rem;
  display: flex;
  position: relative;
}

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

.max-width-34rem {
  max-width: 34rem;
}

.icons {
  width: auto;
  height: 53px;
}

.small-h2 {
  color: #000;
  text-transform: none;
  font-size: 2.5rem;
  line-height: 3rem;
}

.xs-text {
  font-size: .875rem;
  line-height: 1rem;
}

.icon_small {
  width: auto;
  height: 47px;
}

.overlap-img-wrapper {
  justify-content: flex-end;
  align-items: stretch;
  height: 100%;
  display: flex;
  position: relative;
}

.overlap_under-img {
  z-index: 0;
  width: auto;
  max-width: 30rem;
  position: relative;
}

.overlap_over-img {
  width: 100%;
  max-width: 25rem;
  position: absolute;
  inset: auto auto -30% 0%;
}

.properties-card {
  background-color: #fff;
  border-bottom-right-radius: 9px;
  border-bottom-left-radius: 9px;
  flex-flow: column;
  min-width: 24.375rem;
  text-decoration: none;
  display: flex;
  box-shadow: 0 4px 6.1px #0000000f;
}

.property-card-img {
  height: 22.5rem;
  max-height: 22.5rem;
}

.property-card-img-wrapper {
  position: relative;
}

.blur-over-img {
  background-image: linear-gradient(#fff0, #fff);
  height: 4rem;
  position: absolute;
  inset: auto 0% 0%;
}

.property-card-text-wrapper {
  padding: 1.5rem 1.5rem 2rem;
}

.text-color-black-property-card {
  color: var(--primary-black);
  text-transform: none;
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 500;
}

.text-color-black-property-card.text-color-green {
  color: #898989;
}

.arrow-wrap {
  background-color: #4f4c4d;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 3rem;
  min-width: 3rem;
  max-width: 3rem;
  height: 3rem;
  min-height: 3rem;
  max-height: 3rem;
  display: flex;
}

.arrow-wrap.hide {
  display: none;
}

.arrow-img {
  width: auto;
}

.small-date-txt {
  color: #8f8370;
}

.news-grid {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1.5fr 1fr;
  place-items: stretch stretch;
  height: 100%;
}

.text-news-card-head {
  color: var(--primary-black);
  text-transform: none;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.75rem;
}

.text-news-card-head.text-color-green {
  color: #898989;
}

.heading-3 {
  font-family: Tt Norms, Times New Roman, sans-serif;
}

.heading-new {
  font-family: Aboreto, sans-serif;
  font-size: 2.5rem;
  font-weight: 400;
  line-height: 3rem;
}

.socila-icon-wrapper {
  justify-content: flex-end;
  align-items: flex-end;
  width: 100%;
  display: flex;
}

.footer-top-content-wrapper {
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.footer-centered-bootem {
  color: var(--secondary);
  background-color: #050505;
  justify-content: center;
  align-items: center;
  padding-top: 1rem;
  padding-bottom: 1rem;
  font-family: Arial, Helvetica Neue, Helvetica, sans-serif;
  font-size: 1rem;
  line-height: 1.25rem;
  display: flex;
}

.heading-aboreto {
  font-family: Aboreto, sans-serif;
  font-size: 2.375rem;
  line-height: 2.5rem;
}

.heading-aboreto.cc-center-align {
  text-align: center;
}

.heading-aboreto.text-color-black.line-left-head {
  border-left: 1px solid #8f8370;
  padding-left: 1.5rem;
}

.max-width-38rem {
  max-width: 38rem;
}

.text-color-light-brown {
  color: #97918b;
}

.text-btn {
  grid-column-gap: .625rem;
  grid-row-gap: .625rem;
  color: #8f8370;
  justify-content: flex-start;
  align-items: center;
  transition: opacity .35s;
  display: flex;
}

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

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

._100cent-img {
  height: 100%;
}

._100cent-img.max-h-586 {
  max-height: 30rem;
}

._100cent-img.invert-filter {
  filter: invert();
}

.metrics-border {
  background-color: #7a7776;
  width: 2px;
  height: 100%;
  position: relative;
}

.metrics-block {
  z-index: 1;
  max-height: 320px;
  padding: 16px 24px 16vw;
  position: sticky;
  top: 144px;
}

.metrics-block._2 {
  margin-top: 120px;
}

.metrics-block._3 {
  margin-top: 240px;
}

.metrics-block._4 {
  margin-top: 360px;
}

.metrics-block._5 {
  max-height: 450px;
  margin-top: 480px;
}

.container-2 {
  flex: 1;
  max-width: 1920px;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 80px;
  padding-right: 80px;
}

.metrics-subtitle {
  color: #c1bbaf;
  cursor: default;
  font-size: 18px;
}

.metrics-subtitle.cc-light {
  color: #153e4d;
}

.metrics-grid {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  margin-top: 4rem;
  display: grid;
  position: relative;
}

.metrics-title {
  letter-spacing: -2.88px;
  font-size: min(96px, 5vw);
  line-height: 1.25;
}

.metrics-title.cc-light {
  color: #153e4d;
}

.metrics-title-mask {
  position: absolute;
  bottom: 24px;
  right: 24px;
  overflow: clip;
}

.metrics-border-inner {
  transform-origin: 50% 0;
  background-color: #c1bbaf;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}

.metrics-border-wrap {
  z-index: 0;
  justify-content: space-between;
  align-items: center;
  display: flex;
  position: absolute;
  inset: 0%;
}

.icons_big {
  width: auto;
  height: 75px;
}

._2-img-grid {
  grid-template-rows: auto;
}

.no-width {
  width: auto;
}

.image-bg-content-div {
  background-color: #4f4c4d;
  max-width: 30rem;
  padding: 3.125rem 2.125rem 4rem;
}

.verticalline {
  background-color: #000;
  width: 1px;
  height: 4rem;
}

.marquee-bg-div {
  z-index: 0;
  background-color: #8f8370;
  height: 15rem;
  min-height: 15rem;
  position: absolute;
  inset: auto 0% 0%;
}

.amneties-grid {
  grid-column-gap: 2rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
}

.image-and-text-a.neties-wrap {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  text-align: center;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.icon-img-amneties {
  width: auto;
  height: 95px;
}

.news-grid-main {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  place-items: stretch stretch;
  height: 100%;
}

.news-img {
  min-height: 18rem;
  max-height: 18rem;
}

.news-img.cc-bottom-align {
  object-position: 50% 0%;
}

.heading-text-contact {
  border-left: 1px solid #000;
  padding-left: 1.5rem;
}

._3-icon-wrap-contact {
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
  grid-template-rows: auto;
}

.contact-icon-wrap {
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.text-color-light-black {
  opacity: .5;
  color: #131313;
}

._2-field-wrap {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  display: flex;
}

.max-width-42 {
  max-width: 44rem;
}

.icon-2 {
  margin-right: 0;
}

.dropdown-list {
  background-color: #ddd;
}

.dropdown-list.w--open {
  background-color: var(--heading);
  padding: .875rem;
}

.nav-dd-link {
  border-bottom: 1px solid #0000;
  margin-bottom: .5rem;
  padding: 0;
  font-size: 1rem;
  line-height: 1.5rem;
  transition: all .35s;
}

.nav-dd-link:hover {
  border-bottom-color: var(--heading-2);
}

.nav-dd-link.w--current {
  border-bottom-color: var(--heading-2);
  color: var(--heading-2);
}

.h2 {
  text-transform: capitalize;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 60px;
  font-weight: 500;
  line-height: 120%;
}

.h2.cc-light {
  color: #16110e;
  text-transform: none;
  font-family: Aboreto, sans-serif;
  font-size: 2.5rem;
}

.paragraph-large {
  color: #c5c5c5;
  text-align: left;
  margin-bottom: 0;
  font-size: 18px;
  font-weight: 300;
  line-height: 150%;
}

.paragraph-large.paragraph-color {
  color: #c5c5c5;
}

.paragraph-large.paragraph-color.mobile-text-center.cc-light {
  color: var(--background);
  font-family: Tt Norms, Times New Roman, sans-serif;
}

.testimonial-wrap {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
  justify-content: space-between;
  align-items: flex-end;
  display: flex;
  position: relative;
}

.testimonial-layout {
  width: 100%;
  margin-top: 130px;
}

.h5 {
  text-transform: capitalize;
  margin: 0;
  font-size: 26px;
  font-weight: 500;
  line-height: 130%;
}

.h5.mobile-text-center {
  color: var(--background);
  font-family: Tt Norms, Times New Roman, sans-serif;
  font-weight: 400;
}

.testimonial-slider-wrap {
  margin-top: -230px;
}

.loop-testimonal-unit {
  grid-column-gap: 40px;
  grid-row-gap: 40px;
  flex: none;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.testimonial-image-wrap {
  border-radius: 8px;
  flex: none;
  overflow: hidden;
}

.testimonial-loop-slider-wrap {
  grid-column-gap: 40px;
  grid-row-gap: 40px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.container-founder {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 0;
  padding-left: 60px;
  padding-right: 60px;
}

.section-founder {
  padding-top: 100px;
  padding-bottom: 100px;
}

.testimonial-text-wrap {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
  flex-flow: column;
  display: flex;
}

.testimonial-image {
  object-fit: cover;
  object-position: 75% 50%;
  border-radius: 8px;
}

.testimonial-loop-slider {
  grid-column-gap: 40px;
  grid-row-gap: 40px;
  flex: none;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

@media screen and (min-width: 1280px) {
  .section.cc-video-hero, .section.cc-video-hero-home {
    background-image: linear-gradient(#0000004d, #0000004d);
    background-position: 0 0;
  }

  .heading-style-h6 {
    font-size: 20px;
  }
}

@media screen and (max-width: 991px) {
  h1 {
    font-size: 50px;
  }

  h2 {
    font-size: 42px;
    line-height: 58px;
  }

  h3 {
    font-size: 30px;
  }

  li {
    font-size: 13px;
    line-height: 22px;
  }

  .container {
    width: 100%;
    max-width: 820px;
  }

  .container._1040px {
    max-width: 820px;
  }

  .nav-menu-left-sidebar {
    z-index: 2;
    grid-column-gap: 30px;
    grid-row-gap: 30px;
  }

  .navbar-main {
    z-index: 1;
    padding-top: 20px;
    padding-bottom: 20px;
  }

  .hamburger-menu {
    z-index: 2;
    transition: transform .3s;
  }

  .hamburger-menu:hover {
    transform: scale(.96);
  }

  .hamburger-menu.w--open {
    background-color: #0000;
  }

  .nav-link, .nav-link:where(.w-variant-dc1fbd61-4f46-43b0-25e9-63fc8771ebc1) {
    font-size: 30px;
  }

  .hamburger-line._2 {
    width: 15px;
  }

  .hamburger-line._3 {
    width: 25px;
  }

  .close-navbar-icon {
    background-color: var(--transparent);
    transition: transform .3s;
    position: absolute;
    inset: 20px 20px auto auto;
  }

  .close-navbar-icon:hover {
    transform: scale(.96);
  }

  .footer-container {
    grid-column-gap: 50px;
    grid-row-gap: 50px;
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
  }

  .footer-text {
    max-width: none;
  }

  .footer-link-wrapper {
    text-align: center;
    border-bottom: 1px #fff3;
  }

  .footer-link {
    width: 100%;
  }

  .footer-block {
    grid-column-gap: 15px;
    grid-row-gap: 15px;
  }

  .footer-block.end {
    justify-content: center;
    align-items: flex-start;
  }

  .margin-bottom-23px {
    margin-bottom: 10px;
  }

  .social-icons-container {
    margin-top: 40px;
  }

  ._2-column-block-top {
    flex-flow: column;
  }

  ._2-column-block-top.reverse {
    flex-flow: wrap-reverse;
  }

  .input-field {
    cursor: text;
  }

  .contact-bottom-svg {
    max-width: 280px;
  }

  .contact-bottom-svg-top-right {
    max-width: 180px;
  }

  ._4-column-grid {
    grid-template-columns: 1fr 1fr;
  }

  .slider-wrapper {
    width: 100%;
  }

  .nav-menu-wrapper {
    z-index: 10;
    border-right: 1px solid var(--border);
    background-color: var(--background);
    width: 100%;
    max-width: 340px;
    height: 100vh;
    margin-top: -15px;
    padding-top: 75px;
    padding-left: 30px;
    padding-right: 30px;
    position: fixed;
    overflow: auto;
  }

  ._5px-hover-style {
    background-color: var(--tertiary);
    width: 8px;
    height: 100%;
    padding: 0;
    display: block;
    position: absolute;
    inset: 0% auto 0% 0%;
  }

  .bar-wrapper {
    justify-content: flex-end;
    align-items: center;
  }

  .your-profession, .site-title-wrapper {
    font-size: 55px;
  }

  .contents {
    width: 100%;
  }

  ._2-column-block {
    flex-flow: column;
  }

  .infinity-item-container {
    min-width: 150%;
  }

  ._30px-text {
    font-size: 26px;
  }

  ._3-column-grid {
    grid-template-columns: 1fr 1fr;
  }

  .testimonials-vertical-wrapper.hide-in-tablet {
    display: none;
  }

  .testimonial-white-30px-padding {
    width: 100%;
  }

  ._20px-text-600 {
    font-size: 18px;
  }

  .dropdown-faq-block {
    align-items: stretch;
    min-width: auto;
  }

  .bottom-style {
    width: 80%;
  }

  .bottom-style.black {
    width: 70%;
  }

  .image-wrapper {
    width: 100%;
  }

  .image-wrapper.sticky {
    position: relative;
  }

  .hero-section-slide {
    padding-bottom: 60px;
  }

  .container-z-3 {
    width: 100%;
  }

  .socials-links-wrapper, .socials-links-wrapper-absolute {
    grid-column-gap: 10px;
  }

  .team-member-name {
    font-size: 22px;
    line-height: 32px;
  }

  .socials-links-wrapper-12px-gap {
    grid-column-gap: 10px;
  }

  .image-min-height-480px {
    min-height: 360px;
  }

  .project-main-image-wrapper {
    width: auto;
  }

  .info-block {
    width: 100%;
  }

  ._60px-title {
    font-size: 48px;
  }

  .blog-contents {
    min-width: auto;
  }

  .blog-sidebar {
    max-width: none;
  }

  .address-tab-link {
    border-bottom: 4px solid var(--border);
    border-left-style: none;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
  }

  .address-tab-link.w--current {
    border-bottom-color: var(--primary);
  }

  .submenu-links-wrapper {
    flex-flow: column;
    display: flex;
  }

  .nav-dropdown-contents-body {
    box-shadow: none;
  }

  .nav-dropdown-contents-body.w--open {
    position: static;
  }

  .nav-dropdown-contents {
    padding-top: 10px;
    display: block;
    position: static;
  }

  .nav-dropdown-contents.w--open {
    transform: none;
  }

  .nav-dropdown-links-block {
    grid-template-columns: 1fr;
  }

  .nav-dropdown-wrapper {
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    margin-left: 0;
    display: flex;
  }

  .cta-conainer {
    flex-flow: column;
  }

  .contents-40 {
    width: 100%;
  }

  .nav-dropdown-padding {
    max-height: 240px;
    overflow: auto;
  }

  .service-slide {
    height: auto;
    min-height: 70vh;
    padding-left: 15px;
    position: relative;
    overflow: hidden;
  }

  ._4-col-full-grid {
    grid-template-columns: 1fr 1fr;
  }

  .initial-image {
    display: none;
  }

  .service-col-divider-wrapper {
    display: block;
  }

  .white-gradient-divider {
    display: none;
  }

  .absolute-hero-title {
    opacity: 100;
    pointer-events: auto;
    justify-content: flex-start;
    align-items: center;
    inset: 10vh 0% auto;
  }

  ._120px-text-stroked {
    font-size: 40px;
  }

  .absolute-hero-title-initial {
    pointer-events: auto;
    margin-bottom: 60px;
    position: static;
  }

  .sidebar {
    max-width: none;
  }

  .users-input-field {
    cursor: auto;
  }

  .sticky-right-bar, .thank-you-container {
    max-width: none;
  }

  .checkout-container {
    flex-flow: column;
    width: 100%;
  }

  .absolute-linear {
    background-image: linear-gradient(180deg, var(--transparent), var(--transparent) 50%, var(--background));
  }

  .close-icon-rotate-white {
    color: #fff;
  }

  .team-section {
    margin-bottom: 0;
  }

  .cta-block-with-2-buttons {
    grid-column-gap: 30px;
    grid-row-gap: 30px;
    text-align: center;
    flex-flow: column;
    max-width: 560px;
    margin-left: auto;
    margin-right: auto;
  }

  .hero-heading {
    font-size: 44px;
  }

  .hero-reservation-form-wrapper {
    bottom: 10px;
    left: 10px;
    right: 10px;
  }

  .hero-reservation-form {
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr 1fr;
  }

  .counter-card-wrapper.no-border-on-tab {
    border-right-style: none;
  }

  .about-images-grid {
    grid-template-columns: 1fr;
  }

  .about-image-portrait {
    aspect-ratio: 1;
    max-height: 600px;
  }

  .about-image-wrapper-left {
    display: none;
  }

  .about-paragraph {
    width: 100%;
    max-width: none;
  }

  .lightbox-link {
    width: 49vw;
  }

  .package-offer-item:nth-child(2n) {
    margin-top: 0;
    transform: translate(0, 50%);
  }

  .package-offer-item:last-child {
    margin-top: 0;
  }

  .floating-video {
    width: 90%;
    min-width: auto;
    height: auto;
    min-height: auto;
  }

  .video-bg {
    min-height: 400px;
  }

  .sticky-vh--200px {
    height: auto;
  }

  .camera-top-align {
    width: auto;
    height: auto;
  }

  .why-choose-cards {
    grid-template-columns: 1fr 1fr;
    margin-top: 0;
  }

  .why-choose-card.top-center, .why-choose-card.top-left, .why-choose-card.bottom-left, .why-choose-card.bottom-center, .why-choose-card.bottom-right {
    margin-top: 0;
  }

  .why-choose-border-solid {
    width: 95%;
    padding: 30px 20px;
  }

  .faq-images, .faq-contents {
    width: 100%;
  }

  .room-details-sidebar {
    width: 100%;
    min-width: auto;
    position: static;
  }

  .room-images {
    grid-template-columns: 1.4fr;
  }

  .room-heading {
    font-size: 48px;
  }

  .details-column {
    flex-flow: wrap-reverse;
    grid-template-rows: auto;
    grid-template-columns: 1fr;
    grid-auto-flow: column;
    display: flex;
  }

  .category-grid, .category-grid.col-4 {
    grid-template-columns: 1fr 1fr 1fr;
  }

  .grid-2-column-1-6 {
    grid-template-columns: 1fr;
  }

  .rotate-heading-wrapper {
    max-height: 530px;
    display: none;
  }

  .hero-form-title {
    text-align: center;
    font-size: 30px;
  }

  ._3-column-grid-1-from-mobile, ._4-column-grid-2-col-in-mobile {
    grid-template-columns: 1fr 1fr;
  }

  ._2-column-grid-1-from-tab {
    grid-template-columns: 1fr;
  }

  .footer-wrapper {
    grid-template-columns: 1fr 1fr;
  }

  .footer-block-coluimn {
    width: 100%;
  }

  .footer-block-coluimn.last-with-border {
    border-top: 1px solid #e0e0e0;
    padding-top: 60px;
  }

  .package-cover-wrapper {
    max-width: none;
    margin-bottom: 0;
  }

  .nav-menu-desktop {
    width: 100vw;
    min-width: 100vw;
  }

  .menu-column {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    padding: 20px;
  }

  .menu-column._2nd-col {
    grid-column-gap: 40px;
    grid-row-gap: 40px;
  }

  .menu-column._3rd-col {
    display: none;
  }

  ._48px-heading {
    font-size: 38px;
  }

  .absolute-room-name {
    font-size: 18px;
  }

  .menu-logo {
    max-width: 200px;
  }

  .nav-menu-desktop-wrapper {
    width: 100%;
    max-width: 100%;
    display: none;
  }

  .room-nav-items:last-child {
    display: none;
  }

  .nav-link-small {
    font-size: 16px;
  }

  .nav-link-small:where(.w-variant-dc1fbd61-4f46-43b0-25e9-63fc8771ebc1) {
    font-size: 30px;
  }

  .nav-links-desktop {
    display: none;
  }

  .nav-link-wrapper-small {
    padding: 3px 9px;
  }

  .project-slider-arrow.left-arrow {
    left: 15%;
  }

  .project-slider-arrow.right-arrow {
    right: 15%;
  }

  .wrapper-nav.cc-main-arrow-wrap {
    padding-left: 2.5vw;
    padding-right: 2.5vw;
    top: -1%;
  }

  .navigation-menu {
    background-color: #fff;
    padding: 16px;
    position: absolute;
  }

  .menu-button {
    background-color: #f5f5f5;
    border-radius: 100px;
    justify-content: center;
    align-items: center;
    width: 56px;
    height: 56px;
    padding: 17px;
    display: flex;
  }

  .navigation-left {
    flex: 0 auto;
    justify-content: flex-start;
    align-items: center;
  }

  .navigation-grid {
    grid-template-columns: 1fr 1fr;
  }

  .content-wrapper.cc-icons-wrap, .content-wrapper.cc-icons-wrap-third {
    grid-column-gap: 4rem;
    grid-row-gap: 4rem;
  }

  .f-footer-group {
    grid-row-gap: 16px;
    flex-direction: column;
  }

  .f-footer-bottom {
    grid-row-gap: 24px;
    flex-direction: column;
  }

  .f-footer-social-row-large {
    margin-left: 0;
  }

  .card-over-card-wrapper {
    background-image: linear-gradient(#0000, #0000), url('../images/SH3-HQ.png');
    background-size: auto, 350px 100%;
  }

  .card-over-card-content-wrap {
    margin-right: 10rem;
  }

  .three-video-set {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .img-text-wrapper-after-about.cc-60cent.negative-margin {
    width: 100%;
    margin-top: 2rem;
  }

  .mera-fisr-wrapper {
    margin-bottom: 0;
  }

  .heading-style-h6.change-max-width {
    max-width: 100%;
  }

  .number-txt-wrapper {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
    grid-template-columns: 1fr;
  }

  .after-hero-bg-img {
    height: 23rem;
  }

  .overlap_under-img {
    max-width: 20rem;
  }

  .overlap_over-img {
    max-width: 15rem;
  }

  ._100cent-img {
    height: 100%;
  }

  .metrics-block {
    padding-left: 16px;
    padding-right: 16px;
  }

  .container-2 {
    padding-left: 48px;
    padding-right: 48px;
  }

  .metrics-subtitle {
    letter-spacing: .2px;
    font-size: min(16px, 1.8vw);
  }

  .metrics-title {
    letter-spacing: -2px;
  }


  .h2 {
    grid-column-gap: 26px;
    grid-row-gap: 26px;
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr 1fr;
    grid-auto-columns: 1fr;
    justify-items: stretch;
  }

  .h5.mobile-text-center {
    font-weight: 400;
  }

  .testimonial-loop-slider-wrap {
    display: none;
  }

  .container-founder {
    margin-bottom: 0;
    padding-left: 40px;
    padding-right: 40px;
  }

  .testimonial-image {
    height: 500px;
  }
}

@media screen and (max-width: 767px) {
  h1 {
    font-size: 40px;
  }

  h2 {
    font-size: 38px;
    line-height: 52px;
  }

  h3 {
    font-size: 26px;
  }

  h4 {
    font-size: 27px;
  }

  .style-card-wrapper {
    max-width: 200px;
  }

  .container {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    max-width: 600px;
    display: block;
  }

  .container._1040px {
    max-width: 600px;
  }

  .primary-button:where(.w-variant-d6cbf13c-23dd-26f5-59dc-6f0346e898d1) {
    min-height: 56px;
    font-size: 18px;
  }

  .primary-button.cc-nav {
    display: none;
  }

  .primary-button.cc-nav.for-mobile {
    border-color: var(--background);
    color: var(--heading-2);
    display: block;
  }

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

  .site-logo {
    max-width: 120px;
  }

  .footer-container {
    padding: 64px 45px 54px;
  }

  .footer {
    margin-top: 60px;
    padding-top: 40px;
    padding-bottom: 0;
  }

  .footer.cc-new {
    margin-top: 0;
    padding-top: 20px;
  }

  .link-list {
    grid-row-gap: 30px;
    flex-flow: wrap;
  }

  .works-slider {
    overflow: hidden;
  }

  .portfolio-slide {
    padding: 20px;
  }

  .slider-nav-arrow.right-arrow {
    justify-content: flex-end;
    align-items: flex-start;
  }

  .navigation-icon-wrapper {
    width: 60px;
    height: 60px;
  }

  .plus-sign-vertical, .plus-sign {
    width: 14px;
  }

  .contact-form-wrapper {
    grid-column-gap: 45px;
    grid-row-gap: 45px;
  }

  ._4-column-grid {
    grid-column-gap: 24px;
    grid-row-gap: 24px;
  }

  .slider-wrapper {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    display: block;
  }

  .your-profession {
    flex-flow: column;
    justify-content: center;
    align-items: center;
  }

  .product-bar-texts-vertical {
    grid-column-gap: 5px;
    grid-row-gap: 5px;
    min-width: auto;
  }

  .title-bar {
    flex-flow: column;
    margin-bottom: 40px;
    display: flex;
  }

  .partner-logo {
    height: 40px;
  }

  .animated-counter {
    font-size: 90px;
  }

  .counter-title {
    font-size: 16px;
    line-height: 22px;
  }

  .infinity-item-container {
    min-width: 200%;
  }

  .infinity-text {
    width: 15rem;
    min-width: 15rem;
    height: 15rem;
  }

  .section.marquee-section {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  ._30px-text {
    font-size: 22px;
  }

  ._3-column-grid {
    grid-template-columns: 1fr;
  }

  .horizontal-slider-section {
    height: auto;
    margin-top: 60px;
    margin-bottom: 60px;
    padding-left: 20px;
    padding-right: 20px;
  }

  .camera {
    width: auto;
    height: auto;
    position: static;
  }

  .frame {
    flex-flow: column;
    justify-content: center;
    align-items: center;
  }

  .item {
    width: 100%;
    height: auto;
  }

  .portfolio-horizontal {
    flex-flow: column;
  }

  .frame-reverse {
    display: none;
  }

  .dropdown-title {
    width: 100%;
  }

  ._24px-text {
    font-size: 20px;
  }

  .bottom-style {
    left: 69px;
  }

  .bottom-style.black {
    bottom: 15%;
    left: 161px;
  }

  .image-wrapper.sticky {
    top: auto;
  }

  .container-z-3 {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    display: block;
  }

  .center-arrow-right, .center-arrow-left {
    justify-content: center;
    align-items: flex-start;
  }

  .logo-text-divider {
    grid-column-gap: 15px;
    grid-row-gap: 15px;
  }

  .socials-links-wrapper {
    justify-items: start;
  }

  .team-member-card-absolute {
    padding: 32px 24px;
  }

  .socials-links-wrapper-absolute {
    justify-items: start;
  }

  .socials-links-wrapper-12px-gap {
    justify-content: start;
    justify-items: start;
  }

  .member-designation {
    font-size: 14px;
  }

  ._24px-link {
    font-size: 20px;
  }

  ._2-column-grid {
    grid-template-columns: 1fr;
  }

  ._22px-text {
    font-size: 20px;
  }

  .horizontal-left-10px-gap.hide-in-landscape {
    display: none;
  }

  .info-block {
    font-size: 15px;
  }

  ._60px-title {
    font-size: 36px;
    line-height: 52px;
  }

  .blog-slide {
    padding-top: 240px;
  }

  ._16px-link {
    font-size: 20px;
  }

  .site-line-wrapper.cc-show {
    display: none;
  }

  .address-tab-link {
    padding-left: 10px;
  }

  .color-transition-text {
    font-size: 24px;
  }

  .input-field-60px {
    min-height: 60px;
    padding-top: 16px;
    padding-bottom: 16px;
  }

  .cta-conainer {
    padding-left: 40px;
    padding-right: 40px;
  }

  .service-slide {
    padding-bottom: 20px;
  }

  ._4-col-full-grid {
    grid-template-rows: auto auto auto auto;
    grid-template-columns: 1fr;
  }

  .service-col-divider-wrapper {
    grid-template-rows: auto auto auto auto;
    grid-template-columns: 1fr;
    place-items: end stretch;
  }

  .white-gradient-divider {
    width: 100%;
    height: 1px;
  }

  .users-form-wrapper {
    width: 100%;
  }

  .users-page-wrapper {
    min-height: 80vh;
    margin-bottom: 0;
  }

  .users-bg-image {
    width: 100%;
    display: none;
  }

  .search-button-wrapper {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    padding-left: 20px;
  }

  .icon-svg-20-px {
    max-width: 15px;
  }

  .log-button {
    font-size: 15px;
  }

  .version-released-date {
    width: 100%;
  }

  .utility-block {
    grid-column-gap: 30px;
    grid-row-gap: 30px;
    flex-flow: column;
  }

  .version-details {
    width: 100%;
  }

  .changelog-section {
    margin-top: 40px;
  }

  .sticky-right-bar {
    padding: 25px 30px 40px;
  }

  .total-text {
    font-size: 28px;
    line-height: 140%;
  }

  .order-item {
    flex-flow: wrap;
  }

  .order-confirm-price {
    font-size: 16px;
    line-height: 24px;
  }

  .details-wrapper {
    padding-bottom: 15px;
    font-size: 16px;
    line-height: 140%;
  }

  .checkout-container {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    display: block;
  }

  .cta-block-with-2-buttons {
    flex-flow: column;
  }

  .hero-slider-agency {
    min-height: 620px;
  }

  .hero-heading {
    font-size: 36px;
  }

  .slider-contents {
    width: 100%;
  }

  .top-header {
    padding-top: 10px;
    padding-bottom: 10px;
  }

  .icon-16px {
    max-width: 14px;
    height: 14px;
  }

  .text-14px {
    font-size: 12px;
  }

  .hero-reservation-form-wrapper {
    display: none;
  }

  .subtitle-block {
    grid-column-gap: 16px;
    grid-row-gap: 16px;
  }

  .subtitle-title {
    letter-spacing: 3px;
    font-size: 18px;
  }

  .room-slide {
    width: 100%;
  }

  .room-slide.cc-swiper {
    width: 100%;
    height: 100%;
  }

  .testimonials-grid {
    margin-left: 30px;
  }

  .lightbox-link {
    width: 100%;
  }

  .package-price {
    font-size: 24px;
  }

  .package-border-body {
    padding: 35px 14px;
  }

  .package-border-wrapper {
    padding: 5px;
  }

  .video-bg {
    min-height: 280px;
  }

  .room-flexbox {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    grid-template-columns: 1fr 1fr;
  }

  .camera-top-align {
    width: auto;
    height: auto;
    position: static;
  }

  .why-choose-cards {
    grid-template-rows: auto;
    grid-template-columns: 1fr;
  }

  .why-choose-border-solid {
    margin-top: -50px;
  }

  .title-bar-left {
    flex-flow: column;
    margin-bottom: 40px;
    display: flex;
  }

  .room-details-image.landscape-in-mobile {
    aspect-ratio: 3 / 2;
  }

  .room-heading {
    font-size: 36px;
  }

  .room-details-rich-text h3 {
    font-size: 26px;
  }

  .room-details-rich-text h4 {
    font-size: 20px;
  }

  .room-details-rich-text h5 {
    font-size: 18px;
  }

  .room-details-rich-text h2 {
    font-size: 36px;
  }

  .room-details-rich-text h1 {
    font-size: 48px;
  }

  .category-card-with-image {
    min-height: 120px;
  }

  .category-title {
    font-size: 20px;
  }

  .category-grid, .category-grid.col-4 {
    grid-template-columns: 1fr 1fr;
  }

  .gallery-columns {
    column-count: 2;
  }

  .about-us-sub-grid {
    flex-flow: column;
    grid-template-columns: 1fr;
  }

  .hero-section {
    min-height: 900px;
  }

  ._3-column-grid-1-from-mobile {
    grid-column-gap: 16px;
    grid-row-gap: 16px;
  }

  .package-summery-mask {
    display: none;
  }

  ._4-column-grid-2-col-in-mobile {
    grid-column-gap: 24px;
    grid-row-gap: 24px;
  }

  .landscape-in-mobile {
    aspect-ratio: 3 / 2;
  }

  ._2-column-grid-1-from-tab {
    grid-template-columns: 1fr;
  }

  ._24px-text-white {
    font-size: 28px;
    line-height: 140%;
  }

  .footer-wrapper {
    grid-column-gap: 50px;
    grid-row-gap: 50px;
    flex-flow: column;
  }

  .package-cover-wrapper {
    grid-column-gap: 40px;
    grid-row-gap: 40px;
    flex-flow: wrap-reverse;
    display: flex;
  }

  .pacakge-contents {
    background-image: none;
    max-height: none;
    padding: 0;
    position: static;
  }

  .room-flex {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    flex-flow: column;
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr;
    grid-auto-columns: 1fr;
    display: grid;
  }

  .room-items-grid {
    width: 100%;
  }

  .room-items-grid:nth-child(2n) {
    margin-left: 0;
  }

  ._48px-heading {
    font-size: 30px;
  }

  .menu-room-image {
    min-height: 200px;
  }

  .menu-logo {
    max-width: 160px;
  }

  ._18px-text-500 {
    font-size: 16px;
  }

  .nav-link-small {
    font-size: 26px;
  }

  .swiper-slide.cc-1 {
    flex: 0 auto;
    min-width: auto;
  }

  ._3-col-grid {
    grid-template-columns: 1fr;
  }

  .slider-item {
    flex: none;
    height: 100%;
  }

  .wrapper-nav.cc-main-arrow-wrap {
    margin-top: 0;
    top: 0%;
  }

  .navigation-link {
    color: var(--tertiary);
  }

  .navigation-link.hide-mobile {
    display: none;
  }

  .navigation-link.cc-new {
    color: var(--tertiary);
  }

  .menu-button {
    background-color: var(--primary-brown);
    color: var(--white);
  }

  .menu-button.w--open {
    background-color: var(--primary-brown);
  }

  .max-height-350 {
    aspect-ratio: auto;
    flex: 0 auto;
    width: 100%;
  }

  .max-height-350.hide-mobile {
    display: none;
  }

  .mobile-contact-link-wrapper {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    justify-content: center;
    align-items: center;
    margin-top: 3.5rem;
    display: flex;
  }

  .content-wrapper.cc-h-flex {
    flex-flow: column;
  }

  .content-wrapper.mt-40px.h-flex.cc-gap-2 {
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
    flex-flow: column;
  }

  .content-wrapper.cc-icons-wrap, .content-wrapper.cc-icons-wrap-third {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
  }

  .content-wrapper.cc-plan-wrap {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    flex-flow: column;
  }

  .about-hero-img-div {
    aspect-ratio: 2 / 3;
  }

  .card-over-card-wrapper {
    background-image: linear-gradient(#0000, #0000), url('../images/SH3-HQ.png');
    background-size: auto, cover;
  }

  .card-over-card-content-wrap {
    margin-right: 2rem;
  }

  .three-video-set, .img-text-wrapper-after-about {
    flex-flow: column;
  }

  .mera-img, .mera-img.cc-65 {
    width: 100%;
  }

  .mera-fisr-wrapper {
    flex-flow: column;
  }

  .left-div {
    width: 100%;
    margin-bottom: 1.5rem;
    padding-right: 0;
  }

  .left-div._40cent {
    width: 100%;
  }

  .right-div {
    width: 100%;
    margin-top: 1.5rem;
    padding-left: 0;
  }

  .right-div._60cent {
    width: 100%;
  }

  .df-slide-card {
    width: 100%;
    max-height: 26rem;
  }

  .df-slide-card.cc-1 {
    max-width: none;
  }

  .df-slide-card.cc-pro-1 {
    flex-flow: column;
  }

  .df-slide-card.cc-pro-1.cc-new {
    max-height: none;
  }

  .df-slide-card.cc-pro-2 {
    flex-flow: column;
  }

  .slide-image-name-text-wrfapper {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    font-size: 1rem;
    line-height: 1.25rem;
  }

  .slide-image-name-text-wrfapper.cc-small-txt, .slide-image-name-text-wrfapper.cc-news-card, .slide-image-name-text-wrfapper.cc-news-card-news-page {
    position: relative;
  }

  .project--grid {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .cc-right-align {
    justify-content: flex-start;
    align-items: stretch;
  }

  .hero-text-wrapper {
    margin-left: -3rem;
  }

  .about-hero-txt {
    font-size: 1.875rem;
    line-height: 1.25em;
  }

  .number-wrapper-main {
    flex-flow: column;
  }

  .number-wrapper {
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
    flex-flow: wrap;
  }

  .counter-item {
    width: 122.641px;
  }

  .counter-number {
    font-size: 40px;
    line-height: 45px;
  }

  .galler-grid, .galler-grid.cc-second {
    grid-template-columns: 1fr;
  }

  .after-hero-bg-img {
    height: 24rem;
  }

  .text-wrapper-center-negative {
    margin-top: -5rem;
  }

  .news-grid {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    grid-template-columns: 1fr;
  }

  .metrics-border {
    width: 100%;
    height: 2px;
  }

  .metrics-block {
    margin-top: 16px;
    padding-bottom: 30vw;
    position: relative;
    top: 0;
  }

  .metrics-block._2, .metrics-block._3, .metrics-block._4, .metrics-block._5 {
    margin-top: 16px;
  }

  .metrics-subtitle {
    font-size: 16px;
  }

  .metrics-grid {
    grid-template-rows: auto auto auto auto auto;
    grid-template-columns: 1fr;
  }

  .metrics-title {
    letter-spacing: -1px;
    font-size: min(96px, 16vw);
  }


  .metrics-border-wrap {
    flex-flow: column;
    transform: rotate(0);
  }

  .verticalline {
    width: 100%;
    height: 1px;
  }

  .marquee-bg-div {
    height: 10rem;
    min-height: 10rem;
  }

  .amneties-grid {
    grid-template-columns: 1fr 1fr 1fr;
  }

  .news-grid-main {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    grid-template-columns: 1fr;
  }

  .dropdown-list.w--open {
    position: relative;
  }

  .dropdown {
    width: 100%;
  }

  .h2 {
    grid-template-columns: 1fr 1fr;
  }

  .paragraph-large.paragraph-color.mobile-text-center {
    text-align: left;
  }

  .testimonial-wrap {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    flex-flow: column;
  }

  .testimonial-layout {
    margin-top: 0;
  }

  .testimonial-slider-wrap {
    margin-top: 0;
    padding-bottom: 0;
  }

  .loop-testimonal-unit {
    grid-column-gap: 30px;
    grid-row-gap: 30px;
  }

  .testimonial-image-wrap {
    width: 100%;
  }

  .testimonial-loop-slider-wrap {
    grid-column-gap: 30px;
    grid-row-gap: 30px;
    margin-bottom: 30px;
  }

  .container-founder {
    padding-left: 30px;
    padding-right: 30px;
  }

  .section-founder {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  .testimonial-image {
    width: 100%;
    max-width: none;
  }
}

@media screen and (max-width: 479px) {
  h1 {
    font-size: 36px;
  }

  h2 {
    font-size: 32px;
    line-height: 48px;
  }

  h3, h4 {
    font-size: 24px;
  }

  h5 {
    font-size: 20px;
  }

  .container {
    align-items: center;
    padding-left: 15px;
    padding-right: 15px;
  }

  .navbar-main {
    padding-left: 20px;
    padding-right: 20px;
  }

  .primary-button:where(.w-variant-d6cbf13c-23dd-26f5-59dc-6f0346e898d1) {
    min-height: 52px;
    font-size: 16px;
  }

  .primary-button.user-button {
    min-height: 54px;
    padding: 15px 32px;
  }

  .nav-link:where(.w-variant-dc1fbd61-4f46-43b0-25e9-63fc8771ebc1) {
    font-size: 24px;
  }

  .nav-link.w--current {
    padding-top: 0;
    padding-bottom: 0;
  }

  .site-logo {
    max-width: 100px;
  }

  .footer-container {
    padding-left: 20px;
    padding-right: 20px;
  }

  .footer {
    grid-column-gap: 40px;
    grid-row-gap: 40px;
    padding-top: 20px;
  }

  .footer-link {
    font-size: 14px;
    line-height: 22px;
  }

  .footer-link.w--current {
    padding-top: 0;
    padding-bottom: 0;
  }

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

  .link-list {
    grid-column-gap: 30px;
  }

  .portfolio-slide {
    padding: 10px;
  }

  .slider-nav-arrow, .slider-nav-arrow.right-arrow {
    top: -60px;
  }

  .navigation-icon-wrapper {
    width: 45px;
    height: 45px;
  }

  ._20px-text-black {
    font-size: 18px;
    line-height: 28px;
  }

  ._4-column-grid {
    grid-template-columns: 1fr;
  }

  .slider-wrapper {
    align-items: center;
    margin-top: 60px;
  }

  .your-profession, .site-title-wrapper {
    font-size: 50px;
  }

  .gradient-title {
    padding: 5px 20px;
    font-size: 15px;
    line-height: 26px;
  }

  ._8px-circle-title {
    display: none;
  }

  .partner-logo {
    max-width: 130px;
  }

  .animated-counter {
    font-size: 70px;
  }

  .margin-bottom-8px {
    margin-bottom: 6px;
  }

  .infinity-item-container {
    min-width: 300%;
  }

  .infinity-slider-carousel {
    padding-top: 20px;
    padding-bottom: 20px;
  }

  ._20px-text {
    font-size: 16px;
  }

  .section {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  .section.pb-15 {
    padding-bottom: 10rem;
  }

  ._30px-text {
    font-size: 24px;
  }

  .clip-overlay-top {
    display: none;
  }

  .testimonial-white-30px-padding {
    padding-left: 15px;
    padding-right: 15px;
  }

  .image-40px, .clip-overlay-bottom {
    display: none;
  }

  .dropdown-faq-block {
    grid-row-gap: 0px;
    justify-content: center;
    align-items: center;
  }

  .dropdown-switch {
    justify-content: space-between;
    padding: 15px 0;
  }

  .dropdown-title {
    white-space: pre-wrap;
    font-size: 16px;
  }

  .dropdown-texts {
    padding: 0 0 15px;
    font-size: 14px;
    line-height: 24px;
  }

  ._24px-text {
    font-size: 18px;
  }

  .heading-category-wrapper {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    padding-left: 15px;
  }

  .blog-body {
    padding: 22px 15px 22px 16px;
  }

  .blog-thumbnail-300px {
    height: 240px;
  }

  .bottom-style {
    height: 35px;
    left: 40px;
  }

  .bottom-style.black {
    height: 20px;
    bottom: 12%;
    left: 62px;
  }

  .container-z-3 {
    align-items: center;
    padding-bottom: 0;
    padding-left: 15px;
    padding-right: 15px;
  }

  ._18px-text {
    font-size: 16px;
  }

  .logo-text-no-wrap {
    font-size: 16px;
    line-height: 24px;
  }

  .team-card-body-510px {
    min-height: 420px;
  }

  .team-image-rounded {
    max-height: 380px;
  }

  .socials-links-wrapper {
    grid-template-columns: repeat(auto-fit, 30px);
  }

  .team-image-hover {
    top: -30%;
  }

  .portrait-full {
    object-fit: cover;
    width: 100%;
    height: 100%;
  }

  .socials-links-wrapper-absolute {
    grid-template-columns: repeat(auto-fit, 30px);
  }

  .team-member-name {
    margin-bottom: 10px;
    font-size: 20px;
    line-height: 30px;
  }

  .team-card-default {
    padding-left: 20px;
    padding-right: 20px;
  }

  .team-member-thumbnail-default {
    object-fit: cover;
    width: 100%;
    height: 100%;
  }

  .socials-links-wrapper-12px-gap {
    grid-template-columns: repeat(auto-fit, 30px);
  }

  .margin-bottom-24px {
    margin-bottom: 16px;
  }

  ._24px-link {
    font-size: 18px;
  }

  .blog-list-card {
    flex-flow: column;
  }

  ._22px-text {
    font-size: 18px;
  }

  .banner {
    min-height: 60vh;
  }

  .separator {
    display: none;
  }

  .info-block {
    flex-flow: column;
  }

  .blog-head {
    margin-top: -30px;
  }

  ._60px-title {
    font-size: 30px;
    line-height: 40px;
  }

  .blog-slide {
    padding-top: 140px;
    padding-bottom: 90px;
  }

  ._16px-link {
    font-size: 18px;
  }

  .blog-list-body {
    padding: 22px 15px 22px 16px;
  }

  .heading-color-change-on-scroll {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
  }

  .color-transition-text {
    font-size: 20px;
  }

  .input-field-60px {
    min-height: 54px;
    padding-left: 18px;
    padding-right: 18px;
    font-size: 16px;
    line-height: 18px;
  }

  .input-field-60px::placeholder {
    font-size: 16px;
    line-height: 16px;
  }

  .cta-conainer {
    padding: 60px 25px;
  }

  ._2-col-grid {
    grid-template-columns: 1fr;
  }

  .service-slide {
    min-height: 50vh;
  }

  .white-gradient-divider {
    display: none;
  }

  .absolute-hero-title {
    top: 5vh;
  }

  ._120px-text-stroked {
    font-size: 30px;
  }

  .absolute-hero-title-initial {
    margin-bottom: 40px;
  }

  .hide-in-mobile {
    display: none;
  }

  .widget {
    padding: 25px 20px 35px;
  }

  .widget-link-block {
    font-size: 16px;
  }

  .search-button-wrapper {
    grid-column-gap: 12px;
    grid-row-gap: 12px;
    padding-left: 12px;
  }

  .icon-svg-20-px {
    max-width: 15px;
  }

  .license-section {
    margin-top: 40px;
  }

  .total-block {
    margin-top: 40px;
    padding-bottom: 0;
  }

  .checkout-product-info {
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .checkout-image {
    width: 80%;
    height: 80%;
  }

  .block-contents {
    margin-bottom: 15px;
  }

  .block-card {
    padding-left: 20px;
    padding-right: 20px;
  }

  .checkout-image-wrapper {
    width: 100%;
    height: 100%;
  }

  .checkout-products-wrapper {
    grid-column-gap: 15px;
    grid-row-gap: 15px;
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
  }

  .sticky-right-bar {
    padding-left: 24px;
    padding-right: 24px;
  }

  .total-text {
    font-size: 24px;
    line-height: 140%;
  }

  .checkout-container {
    align-items: center;
    padding-left: 15px;
    padding-right: 15px;
  }

  .close-icon-rotate-white {
    top: -34px;
  }

  .subscription {
    grid-column-gap: 30px;
    grid-row-gap: 30px;
    flex-flow: column;
    margin-bottom: 50px;
  }

  .hero-slide-paragraph {
    font-size: 14px;
  }

  .hero-slider-agency {
    border-radius: 10px;
  }

  .hero-heading {
    font-size: 30px;
  }

  .hero-slide {
    padding-bottom: 120px;
  }

  .hero-paragraph-wrapper {
    margin-top: 15px;
    margin-bottom: 30px;
  }

  .counter-title-wrapper {
    margin-left: 20px;
  }

  .counter-card-wrapper {
    border-bottom: 1px solid var(--border);
    border-right-style: none;
    justify-content: flex-start;
    align-items: center;
  }

  .counter-card-wrapper._1st {
    border-right-style: none;
  }

  .counter-card-wrapper.last {
    justify-content: flex-start;
    align-items: center;
  }

  .subtitle-divider {
    max-width: 30px;
  }

  .subtitle-title {
    letter-spacing: 2px;
    font-size: 16px;
  }

  .blog-card-2 {
    flex-flow: column;
  }

  .blog-body-2 {
    margin: -13px -10px 0 0;
    padding: 22px 15px 22px 16px;
  }

  .blog-thumbnail-portrait {
    height: 240px;
  }

  .room-thumbnail {
    height: 400px;
  }

  .room-beds-baths-info {
    display: none;
  }

  .sticky-vh--300px {
    height: auto;
  }

  .testimonials-sticky {
    max-height: none;
  }

  .progress-line-testimonial {
    display: none;
  }

  .testimonials-grid {
    max-height: none;
    margin-left: 0;
  }

  .package-offer-item:nth-child(2n) {
    transform: none;
  }

  .video-bg {
    min-height: 140px;
  }

  .about-cards {
    grid-column-gap: 24px;
    grid-row-gap: 24px;
    grid-template-columns: 1fr;
  }

  .room-flexbox {
    grid-template-columns: 1fr;
  }

  .why-choose-image-portrait {
    max-height: 400px;
  }

  .room-details-sidebar {
    grid-column-gap: 30px;
    grid-row-gap: 30px;
    padding: 24px;
  }

  .room-details-rich-text blockquote {
    padding: 20px;
    font-size: 20px;
  }

  .room-details-rich-text h3 {
    font-size: 24px;
  }

  .room-details-rich-text h5, .room-details-rich-text h6 {
    padding-left: 20px;
    padding-right: 20px;
  }

  .room-details-rich-text h2 {
    font-size: 30px;
  }

  .room-details-rich-text h1 {
    font-size: 40px;
  }

  .room-details-rich-text p, .room-details-rich-text ol, .room-details-rich-text ul {
    padding-left: 20px;
    padding-right: 20px;
  }

  .category-title {
    font-size: 16px;
  }

  .category-grid, .category-grid.col-4 {
    grid-template-columns: 1fr;
  }

  .price-sidebar {
    font-size: 32px;
  }

  .price-block-sidebar {
    margin-top: 10px;
    margin-bottom: 10px;
    padding-top: 14px;
    padding-bottom: 14px;
  }

  .icon-32px {
    max-width: 26px;
  }

  .icon-40px {
    max-width: 32px;
  }

  .book-form {
    grid-column-gap: 16px;
    grid-row-gap: 16px;
  }

  .book-form-wrapper {
    padding: 30px 24px;
  }

  .input-grid {
    grid-column-gap: 16px;
    grid-row-gap: 16px;
    grid-template-columns: 1fr;
  }

  .hero-section {
    min-height: auto;
  }

  ._3-column-grid-1-from-mobile {
    grid-template-columns: 1fr;
  }

  .camera-fixed-till-mobile {
    width: auto;
    height: auto;
    position: static;
  }

  ._4-column-grid-2-col-in-mobile {
    grid-template-columns: 1fr;
  }

  .footer-logo {
    max-width: 100px;
  }

  ._24px-text-white {
    font-size: 24px;
    line-height: 140%;
  }

  .footer-links {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
  }

  .default-state {
    grid-template-columns: 1fr;
  }

  .room-thumbnail-portrait {
    height: 400px;
  }

  .search-container {
    padding-left: 20px;
    padding-right: 20px;
  }

  .menu-column._2nd-col {
    display: none;
  }

  .menu-logo {
    max-width: 200px;
  }

  ._18px-text-500 {
    font-size: 15px;
  }

  .close-icon-navbar-large {
    background-color: var(--primary-black);
    padding: 9px;
    font-size: 18px;
    top: -34px;
  }

  .nav-menu-desktop-wrapper {
    display: none;
  }

  .nav-link-small:where(.w-variant-dc1fbd61-4f46-43b0-25e9-63fc8771ebc1) {
    font-size: 24px;
  }

  .nav-link-small.w--current {
    padding-top: 0;
    padding-bottom: 0;
  }

  .hero-slider-arrow.right-arrow {
    width: 2rem;
    min-width: 2rem;
    height: 2rem;
    min-height: 2rem;
    right: 1rem;
  }

  .hero-slider-arrow.left-arrow {
    width: 2rem;
    min-width: 2rem;
    height: 2rem;
    min-height: 2rem;
    right: 3.5rem;
  }

  .project-slider-arrow.left-arrow {
    left: 2%;
  }

  .project-slider-arrow.right-arrow {
    right: 2%;
  }

  .wrapper-nav.cc-main-arrow-wrap {
    grid-column-gap: 11.5rem;
    grid-row-gap: 11.5rem;
  }

  .navigation {
    padding-top: 16px;
    padding-bottom: 16px;
  }

  .button-primary {
    width: 100%;
  }

  .button-video-play {
    display: none;
  }

  .nav-logo.cc-new {
    width: 4rem;
  }

  .max-height-350 {
    aspect-ratio: auto;
  }

  .content-wrapper.cc-icons-wrap {
    flex-flow: column;
  }

  .content-wrapper.cc-icons-wrap.tm-0 {
    justify-content: flex-start;
    align-items: flex-start;
  }

  .content-wrapper.cc-icons-wrap-third, .content-wrapper.cc-plan-wrap {
    flex-flow: column;
  }

  .content-wrapper.cc-plan-wrap.tm-0 {
    justify-content: flex-start;
    align-items: flex-start;
  }

  .f-footer-menu {
    flex-direction: column;
  }

  .f-footer-line.cc-mobile {
    width: 100%;
    height: 1px;
    margin: 1rem 0;
  }

  .f-footer-vertical-divider {
    display: none;
  }

  .f-footer-brand {
    flex-flow: column;
  }

  .card-over-card-content-wrap {
    margin: 1rem;
    padding: 1.5rem;
  }

  .sharafi-loader-logo.h, .sharafi-loader-logo.s {
    width: 5rem;
  }

  .page-loader-txt {
    font-size: .75rem;
  }

  .three-video-set.right-align.mobile-left {
    justify-content: flex-start;
    align-items: flex-start;
  }

  .hero-img-new {
    width: 90vw;
    max-height: 90vh;
  }

  .hero-img-new.cc-about {
    width: 100vw;
  }

  .left-align-85vw-img {
    width: 90vw;
    max-height: 90vh;
    margin-top: 2.5rem;
  }

  .df-slide-card.cc-pro-2 {
    margin-top: 0;
  }

  .slider-img-1 {
    height: 100%;
  }

  .project--grid {
    grid-template-columns: 1fr;
  }

  .projec-wrapper-card.cc-2 {
    margin-top: 0;
  }

  .bottom-navigation {
    font-size: .875rem;
    line-height: 1.25rem;
    bottom: 3%;
  }

  .about-hero-imag-wrapper {
    flex-flow: column;
  }

  .hero-text-wrapper {
    margin-top: .5rem;
    margin-left: 0;
  }

  .heading-style-h6 {
    font-size: 16px;
  }

  .number-wrapper {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
  }

  .v-flex-text-card.cc-gap-0-875, .v-flex-text-card.left-align-mobile {
    justify-content: flex-start;
    align-items: flex-start;
  }

  .text-wrapper-center-negative {
    margin-top: -3rem;
  }

  .overlap_under-img {
    width: 100%;
    max-width: 15rem;
  }

  .overlap_over-img {
    max-width: 10rem;
    bottom: -45%;
  }

  .news-grid {
    grid-template-columns: 1fr;
  }

  .footer-top-content-wrapper {
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
  }

  .metrics-block {
    padding-bottom: 50vw;
  }

  .container-2 {
    padding-left: 16px;
    padding-right: 16px;
  }

  .metrics-grid {
    flex-flow: column;
    grid-template-rows: auto auto auto auto auto;
  }

  .metrics-title {
    letter-spacing: -.5px;
    font-size: min(96px, 20vw);
  }


  .no-width.mobile-hide {
    display: none;
  }

  .amneties-grid {
    grid-row-gap: 3rem;
    grid-template-columns: 1fr 1fr;
  }

  .news-grid-main {
    grid-template-columns: 1fr;
  }

  ._3-icon-wrap-contact {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    grid-template-columns: 1fr;
  }

  ._2-field-wrap {
    flex-flow: column;
  }

  .h2 {
    grid-template-columns: 1fr;
  }

  .testimonial-wrap {
    flex-flow: column-reverse;
    align-items: center;
  }

  .testimonial-layout {
    margin-top: 42px;
  }

  .h5.mobile-text-center {
    text-align: center;
  }

  .testimonial-slider-wrap {
    margin-top: -100px;
    padding-bottom: 83px;
  }

  .testimonial-loop-slider-wrap {
    margin-bottom: 0;
  }

  .container-founder {
    padding-left: 20px;
    padding-right: 20px;
  }

  .testimonial-image {
    width: 100%;
    height: 300px;
  }
}

#w-node-_677f283f-72d9-ef81-0029-6273ce2bb2b4-ce2bb2b1 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_677f283f-72d9-ef81-0029-6273ce2bb2c7-ce2bb2b1 {
  justify-self: start;
}

#w-node-_677f283f-72d9-ef81-0029-6273ce2bb2ca-ce2bb2b1 {
  justify-self: end;
}

#w-node-ac2971f4-6f26-e7be-f7cd-a20c97325007-1dffdf68 {
  place-self: center end;
}

#w-node-_482d8786-bcb2-b95f-3ef0-70db0f65a398-e46eb9f4, #w-node-_482d8786-bcb2-b95f-3ef0-70db0f65a39e-e46eb9f4, #w-node-_482d8786-bcb2-b95f-3ef0-70db0f65a3a4-e46eb9f4, #w-node-_482d8786-bcb2-b95f-3ef0-70db0f65a3aa-e46eb9f4, #w-node-_482d8786-bcb2-b95f-3ef0-70db0f65a3b0-e46eb9f4 {
  align-self: start;
}

#w-node-_482d8786-bcb2-b95f-3ef0-70db0f65a3b6-e46eb9f4 {
  align-self: auto;
}

@media screen and (max-width: 991px) {
  #w-node-eaf9169e-097d-5536-dfea-bcb2a1f3154b-a1f31535, #w-node-eaf9169e-097d-5536-dfea-bcb2a1f3156b-a1f31535, #w-node-d890f356-49a1-3bfd-0f16-a1386bc56679-3321ffb5, #w-node-d890f356-49a1-3bfd-0f16-a1386bc566cc-3321ffb5 {
    grid-area: span 1 / span 2 / span 1 / span 2;
  }
}


@font-face {
  font-family: 'Icofont';
  src: url('../fonts/icofont.woff2') format('woff2'), url('../fonts/icofont.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Tt Norms';
  src: url('../fonts/TT-Norms-Regular.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Tt Norms';
  src: url('../fonts/TT-Norms-Medium.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Tt Norms';
  src: url('../fonts/TT-Norms-Thin.otf') format('opentype');
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}


  /* Floating contact bar */
  .floating-contact{
    position: fixed;
    right: 22px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 9999;

    display: flex;
    flex-direction: column;
    gap: 10px;

    padding: 10px;
    border-radius: 16px;

    background: rgba(12, 12, 12, 0.28);
    border: 1px solid rgba(255, 255, 255, 0.14);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);

    box-shadow: 0 14px 40px rgba(0,0,0,0.25);
  }

  .floating-contact__item{
    width: 66px;
    height: 70px;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    border-radius: 12px;
    text-decoration: none;

    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.10);

    transition: transform .18s ease, background .18s ease, border-color .18s ease;
  }

  .floating-contact__item:hover{
    transform: translateY(-2px);
    background: rgba(255,255,255,0.10);
    border-color: rgba(255,255,255,0.18);
  }

  .floating-contact__icon{
    font-size: 22px;
    line-height: 1;
    color: #fff;
    opacity: 0.95;
    margin-bottom: 6px;
  }

  .floating-contact__label{
    font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    font-size: 9px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.92);
    white-space: nowrap;
  }

  /* Mobile: move it to bottom-right so it doesn't cover content */
  @media (max-width: 768px){
    .floating-contact{
      top: auto;
      bottom: 18px;
      right: 14px;
      transform: none;
      flex-direction: row;
      padding: 10px;
      border-radius: 18px;
    }

    .floating-contact__item{
      width: 74px;
      height: 62px;
    }
  }

/* =========================
   Register split section
   ========================= */
.reg-split{
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: 56px;
  align-items: center;
}

@media (max-width: 991px){
  .reg-split{ grid-template-columns: 1fr; gap: 32px; }
}

.reg-copy{
  max-width: 560px;
}

.reg-kicker{
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 18px;
  opacity: 0.95;
}

.reg-kicker-line{
  width: 42px;
  height: 2px;
  background: rgba(255,255,255,0.65);
  border-radius: 99px;
}

.reg-kicker-text{
  font-size: 12px;
  letter-spacing: 0.26em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.72);
}

.reg-title{
  margin: 0 0 14px;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.reg-desc{
  margin: 0 0 22px;
  color: rgba(255,255,255,0.74);
  font-size: 16px;
  line-height: 1.7;
}

.reg-meta{
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.reg-chip{
  padding: 10px 12px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.14);
  background: rgba(255,255,255,0.06);
  color: rgba(255,255,255,0.78);
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

/* Card */
.reg-card{
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,0.14);
  background: rgba(10,10,10,0.35);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow: 0 22px 70px rgba(0,0,0,0.35);
  overflow: hidden;
}

.reg-form{
  padding: 24px;
}

.reg-grid{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px 16px;
}

@media (max-width: 520px){
  .reg-grid{ grid-template-columns: 1fr; }
}

.reg-span-2{ grid-column: span 2; }
@media (max-width: 520px){
  .reg-span-2{ grid-column: auto; }
}

.reg-label{
  display: block;
  margin: 0 0 8px;
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.70);
}

.reg-input{
  width: 100%;
  height: 52px;
  padding: 0 14px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,0.14);
  background: rgba(255,255,255,0.06);
  color: rgba(255,255,255,0.92);
  outline: none;
  transition: border-color .2s ease, background .2s ease, transform .2s ease;
}

.reg-input::placeholder{ color: rgba(255,255,255,0.45); }

.reg-input:focus{
  border-color: rgba(255,255,255,0.30);
  background: rgba(255,255,255,0.08);
}

.reg-textarea{
  height: 120px;
  padding: 14px;
  resize: vertical;
}

.reg-submit{
  margin-top: 16px;
  width: 100%;
  height: 54px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.22);
  background: rgba(255,255,255,0.10);
  color: #fff;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-size: 12px;

  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;

  transition: transform .18s ease, background .18s ease, border-color .18s ease;
}

.reg-submit:hover{
  transform: translateY(-1px);
  background: rgba(255,255,255,0.14);
  border-color: rgba(255,255,255,0.28);
}

.reg-submit-arrow{
  font-size: 16px;
  opacity: 0.9;
}

.reg-footnote{
  margin: 12px 0 0;
  font-size: 12px;
  color: rgba(255,255,255,0.45);
  line-height: 1.6;
}

.reg-card{
  opacity: 0;
  transform: translateY(20px);
  animation: regFade 0.8s ease forwards;
  animation-delay: 0.2s;
}

@keyframes regFade{
  to{
    opacity: 1;
    transform: translateY(0);
  }
}

.reg-kicker-line{
  background: linear-gradient(90deg, #bfa36a, rgba(255,255,255,0.2));
}


/* Footer luxury layer */
.footer{
  position: relative;
  overflow: hidden;
}

.footer-lux-overlay{
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(800px 400px at 18% 25%, rgba(255,255,255,0.06), transparent 60%),
    radial-gradient(900px 500px at 80% 70%, rgba(255,255,255,0.04), transparent 62%),
    linear-gradient(180deg, rgba(0,0,0,0.0), rgba(0,0,0,0.35));
  opacity: 1;
}

.footer-watermark{
  position: absolute;
  left: 6%;
  top: 12%;
  font-size: clamp(90px, 12vw, 220px);
  letter-spacing: -0.06em;
  color: rgba(255,255,255,0.04);
  font-weight: 500;
  pointer-events: none;
  user-select: none;
  transform: translateZ(0);
}


.footer-wrapper{
  position: relative;
  border: 1px solid rgba(255,255,255,0.10);
  border-radius: 22px;
  background: rgba(255,255,255,0.04);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  padding: 48px 44px;
  box-shadow: 0 28px 70px rgba(0,0,0,0.35);
}

@media (max-width: 767px){
  .footer-wrapper{ padding: 28px 18px; }
}

/* Headings = more premium */
.cc-footer-link-head{
  letter-spacing: 0.24em;
  text-transform: uppercase;
  font-size: 12px;
  opacity: 0.85;
  margin-bottom: 18px;
}

/* Links feel more luxury */
.footer-link-wrapper{
  padding: 10px 0;
  border-bottom: 1px solid rgba(255,255,255,0.08);
}

.footer-link .text{
  opacity: 0.78;
  transition: opacity .2s ease, transform .2s ease;
}

.footer-link-wrapper:hover .footer-link .text{
  opacity: 1;
  transform: translateX(2px);
}

/* Contact icons: circular chips */
.footer-icon-primary{
  border: 1px solid rgba(255,255,255,0.12);
  background: rgba(255,255,255,0.06);
  border-radius: 999px;
  width: 38px;
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
}


/* =========================
   Premium Footer Social Icons
   (Dock-style: glass + border + soft glow)
   ========================= */
.footer .social-icons-container{
  gap: 12px; /* slightly more breathing room */
}

.footer .social-icon-wrapper{
  position: relative;
  width: 54px;   /* a bit more premium than 48 */
  height: 54px;
  border-radius: 14px;

  border: 1px solid rgba(255,255,255,0.14);
  background: rgba(255,255,255,0.05);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);

  box-shadow: 0 16px 40px rgba(0,0,0,0.35);
  transition: transform .18s ease, background .18s ease, border-color .18s ease;
}

/* subtle inner sheen */
.footer .social-icon-wrapper::before{
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: linear-gradient(135deg, rgba(255,255,255,0.14), rgba(255,255,255,0.02));
  opacity: 0.35;
  pointer-events: none;
}

/* soft glow hover */
.footer .social-icon-wrapper:hover{
  transform: translateY(-2px);
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.22);
}

/* make the icon itself cleaner + centered */
.footer .footer-icon{
  max-width: 18px;
  max-height: 18px;
  opacity: 0.92;
  transition: opacity .18s ease, transform .18s ease;
}

.footer .social-icon-wrapper:hover .footer-icon{
  opacity: 1;
  transform: scale(1.03);
}


/* =========================
   Footer Luxury Line Sweep (very subtle)
   ========================= */
.footer{
  position: relative;
  overflow: hidden;
}

/* thin moving line */
.footer::after{
  content: "";
  position: absolute;
  top: 0;
  left: -40%;
  width: 180%;
  height: 1px;

  background: linear-gradient(
    90deg,
    transparent,
    rgba(255,255,255,0.14),
    rgba(255,255,255,0.35),
    rgba(255,255,255,0.14),
    transparent
  );

  opacity: 0.55;
  pointer-events: none;

  animation: footerLuxLine 14s linear infinite;
}

/* soft diagonal sweep glow (barely there) */
.footer::before{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    120deg,
    transparent 0%,
    rgba(255,255,255,0.04) 45%,
    rgba(255,255,255,0.08) 50%,
    rgba(255,255,255,0.04) 55%,
    transparent 100%
  );
  transform: translateX(-35%);
  opacity: 0.25;
  pointer-events: none;

  animation: footerLuxSweep 18s ease-in-out infinite;
}

@keyframes footerLuxLine{
  0%   { transform: translateX(-10%); }
  100% { transform: translateX(10%); }
}

@keyframes footerLuxSweep{
  0%   { transform: translateX(-35%); }
  50%  { transform: translateX(10%); }
  100% { transform: translateX(-35%); }
}

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce){
  .footer::before,
  .footer::after{ animation: none; }
}


/* =========================
   Latest News (Luxury Editorial)
   ========================= */
.news-lux{
  margin-top: 2.5rem;
}

.news-lux__head{
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 22px;
}

.news-lux__title{
  margin: 0;
}

.news-lux__sub{
  margin: 10px 0 0;
  color: rgba(0,0,0,0.55);
  font-size: 18px;
  line-height: 1.6;
  max-width: 520px;
}

.news-lux__cta{
  text-decoration: none;
  color: rgba(0,0,0,0.75);
  border: 1px solid rgba(0,0,0,0.14);
  background: rgba(255,255,255,0.55);
  padding: 10px 14px;
  border-radius: 999px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-size: 11px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  transition: transform .18s ease, background .18s ease, border-color .18s ease;
}

.news-lux__cta:hover{
  transform: translateY(-1px);
  background: rgba(255,255,255,0.75);
  border-color: rgba(0,0,0,0.20);
}

.news-lux__grid{
  display: grid;
  grid-template-columns: 1.7fr 1fr;
  gap: 26px;
  align-items: stretch;
}

/* Card base */
.news-card{
  display: block;
  text-decoration: none;
  border-radius: 18px;
  overflow: hidden;
  background: rgba(255,255,255,0.75);
  border: 1px solid rgba(0,0,0,0.10);
  box-shadow: 0 18px 55px rgba(0,0,0,0.10);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.news-card:hover{
  transform: translateY(-3px);
  box-shadow: 0 26px 70px rgba(0,0,0,0.14);
  border-color: rgba(0,0,0,0.16);
}

.news-card__media{
  position: relative;
  overflow: hidden;
  background: #111;
}

.news-card__img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transform: scale(1.01);
  transition: transform .6s ease;
}

.news-card:hover .news-card__img{
  transform: scale(1.06);
}

.news-card__shade{
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0.0) 20%, rgba(0,0,0,0.35) 100%);
  pointer-events: none;
}

.news-card__tag{
  position: absolute;
  left: 16px;
  top: 16px;
  padding: 8px 10px;
  border-radius: 999px;
  background: rgba(255,255,255,0.85);
  border: 1px solid rgba(0,0,0,0.12);
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(0,0,0,0.75);
}

.news-card__body{
  padding: 18px 18px 20px;
}

.news-card__date{
  color: rgba(0,0,0,0.45);
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-bottom: 10px;
}

.news-card__title{
  margin: 0;
  color: rgba(0,0,0,0.82);
  font-size: 18px;
  line-height: 1.35;
  font-weight: 500;
}

.news-card__desc{
  margin: 12px 0 0;
  color: rgba(0,0,0,0.60);
  font-size: 14px;
  line-height: 1.7;
}

.news-card__read{
  margin-top: 14px;
  color: rgba(0,0,0,0.70);
  font-size: 12px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  opacity: 0.9;
}

/* Featured sizing */
.news-card--featured .news-card__media{
  height: 360px;
}

.news-card--featured .news-card__title{
  font-size: 22px;
}

/* Stack column */
.news-lux__stack{
  display: flex;
  flex-direction: column;
  gap: 18px;
  height: 100%;
}

.news-card--small .news-card__media{
  height: 168px;
}

.news-card--small .news-card__desc{
  display: none; /* small cards: keep it tight */
}

/* Responsive */
@media (max-width: 991px){
  .news-lux__grid{
    grid-template-columns: 1fr;
  }
  .news-card--featured .news-card__media{
    height: 320px;
  }
}

@media (max-width: 520px){
  .news-lux__head{
    align-items: flex-start;
    flex-direction: column;
  }
}


/* ===========================
   Latest Properties – Luxury Upgrade
   =========================== */

.properties-card.is-lux{
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 14px 40px rgba(0,0,0,.12);
  transform: translateZ(0);
  transition: transform .35s ease, box-shadow .35s ease;
  background: transparent;
}

.properties-card.is-lux:hover{
  transform: translateY(-6px);
  box-shadow: 0 22px 60px rgba(0,0,0,.18);
}

/* image */
.properties-card.is-lux .property-card-img-wrapper{
  position: relative;
}

.properties-card.is-lux .property-card-img{
  height: 26rem;              /* bigger, more premium */
  max-height: 26rem;
  width: 100%;
  object-fit: cover;
  transform: scale(1.01);
  transition: transform .8s ease;
}

.properties-card.is-lux:hover .property-card-img{
  transform: scale(1.06);
}

/* remove the old white fade (you had blur-over-img) */
.properties-card.is-lux .blur-over-img{ display:none; }

/* luxury shade */
.property-card-shade{
  position:absolute;
  inset:0;
  background:
    radial-gradient(1200px 500px at 80% 0%, rgba(255,255,255,.12), transparent 55%),
    linear-gradient(to top, rgba(0,0,0,.62), rgba(0,0,0,.08) 55%, rgba(0,0,0,0));
  pointer-events:none;
}

/* moving thin luxury line (subtle) */
.property-card-line{
  position:absolute;
  inset:-40% -60%;
  background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,.12) 50%, transparent 100%);
  height: 1px;
  top: 60%;
  transform: rotate(-8deg);
  opacity: .35;
  pointer-events:none;
  animation: luxuryLineDrift 10s linear infinite;
}

@keyframes luxuryLineDrift{
  0%   { transform: translateX(-6%) rotate(-8deg); }
  100% { transform: translateX(6%)  rotate(-8deg); }
}

/* glass panel */
.property-card-text-wrapper.is-glass{
  position:absolute;
  left: 14px;
  right: 14px;
  bottom: 14px;
  padding: 14px 16px 12px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(16,16,16,.46);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

/* meta row */
.property-meta{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:10px;
  opacity:.92;
}

.property-chip{
  font-size:.78rem;
  letter-spacing:.08em;
  text-transform: uppercase;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.08);
}

.property-dot{
  width:4px;
  height:4px;
  border-radius:50%;
  background: rgba(255,255,255,.55);
}

.property-meta-text{
  font-size:.85rem;
  color: rgba(255,255,255,.82);
}

/* title + cta */
.property-title-row{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap:12px;
}

.text-color-black-property-card.is-white{
  color:#fff;
  margin:0;
  font-weight: 500;
}

.property-cta{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding: 10px 12px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(255,255,255,.06);
  transition: transform .25s ease, background .25s ease, border-color .25s ease;
  white-space: nowrap;
}

.properties-card.is-lux:hover .property-cta{
  transform: translateX(2px);
  background: rgba(255,255,255,.10);
  border-color: rgba(255,255,255,.26);
}

.property-cta-dot{
  width:7px;
  height:7px;
  border-radius:50%;
  background: rgba(255,255,255,.75);
  box-shadow: 0 0 18px rgba(255,255,255,.25);
}

.property-cta-text{
  font-size:.85rem;
  color: rgba(255,255,255,.88);
}

.property-cta-arrow{
  font-size: 1rem;
  color: rgba(255,255,255,.88);
  transform: translateY(-1px);
}


/* News page: same home layout */
.news-lux__grid{
  display: grid;
  grid-template-columns: 1.7fr 1fr;
  gap: 26px;
  align-items: stretch;
}

.news-lux__stack{
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.news-pill-tag{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 10px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,0.12);
  background: rgba(255,255,255,0.85);
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  width: fit-content;
  margin-bottom: 12px;
}

.news-read-link{
  margin-top: 14px;
  font-size: 12px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(0,0,0,0.65);
}

.news-grid--page{
  margin-top: 34px;
}

@media (max-width: 991px){
  .news-lux__grid{ grid-template-columns: 1fr; }
}


/* =========================
   Insights Section – Luxury Clean
   ========================= */

.insights-lux{
  position: relative;
  padding: 54px 0;
  overflow: hidden;
}

.insights-lux__grid{
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  align-items: center;
  gap: 54px;
}

/* subtle animated luxury line (background) */
.insights-lux__line{
  position: absolute;
  inset: -40% -60%;
  height: 1px;
  top: 42%;
  opacity: .22;
  pointer-events: none;
  background: linear-gradient(90deg, transparent 0%, rgba(143,131,112,.65) 50%, transparent 100%);
  transform: rotate(-8deg);
  animation: insightsLuxLine 12s linear infinite;
}

@keyframes insightsLuxLine{
  0%   { transform: translateX(-7%) rotate(-8deg); }
  100% { transform: translateX(7%)  rotate(-8deg); }
}

/* brand mark (watermark vibe) */
.insights-lux__brand{
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

.insights-lux__logo{
  width: min(520px, 90%);
  height: auto;
  opacity: .10;              /* watermark */
  filter: grayscale(100%);
  transform: translateY(0);
}

/* content */
.insights-lux__content{
  position: relative;
  max-width: 560px;
}

.insights-lux__kicker{
  font-size: 12px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: rgba(143,131,112,.85);
  margin-bottom: 14px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.insights-lux__kicker::before{
  content:"";
  width: 28px;
  height: 1px;
  background: rgba(143,131,112,.55);
}

.insights-lux__title{
  margin: 0 0 16px 0;
  line-height: 1.15;
}

.insights-lux__desc{
  margin: 0;
  color: rgba(19,19,19,.65);
  line-height: 1.8;
  font-size: 15px;
}

.insights-lux__actions{
  margin-top: 22px;
}

/* premium button (matches dock language) */
.lux-btn{
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
  border-radius: 999px;
  border: 1px solid rgba(143,131,112,.35);
  background: rgba(255,255,255,.55);
  transition: transform .22s ease, background .22s ease, border-color .22s ease;
}

.lux-btn:hover{
  transform: translateY(-2px);
  background: rgba(255,255,255,.78);
  border-color: rgba(143,131,112,.55);
}

.lux-btn__dot{
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: rgba(143,131,112,.85);
  box-shadow: 0 0 18px rgba(143,131,112,.25);
}

.lux-btn__text{
  font-size: 12px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: rgba(19,19,19,.75);
}

.lux-btn__arrow{
  color: rgba(143,131,112,.85);
  font-size: 16px;
  transform: translateY(-1px);
}

/* responsive */
@media (max-width: 991px){
  .insights-lux__grid{
    grid-template-columns: 1fr;
    gap: 28px;
  }
  .insights-lux__brand{
    order: 2;
  }
  .insights-lux__content{
    order: 1;
    max-width: 100%;
  }
  .insights-lux__logo{
    opacity: .08;
  }
}


/* Force logo visible (overrides Webflow IX inline opacity:0) */
.insights-lux__brand,
.insights-lux__logo{
  opacity: 1 !important;
  visibility: visible !important;
  display: block !important;
}

.insights-lux__logo{
  opacity: .22 !important;
}


/* =========================
   CONTACT PAGE (LUX UPGRADE)
   ========================= */

.contact-lux-section .container.cc-white-bg {
  position: relative;
  overflow: hidden;
}

/* Subtle animated “luxury line” background */
.contact-lux-bg-lines {
  position: absolute;
  inset: -40% -20%;
  pointer-events: none;
  opacity: 0.35;
  background:
    linear-gradient(115deg,
      rgba(0,0,0,0) 0%,
      rgba(0,0,0,0) 44%,
      rgba(0,0,0,0.08) 50%,
      rgba(0,0,0,0) 56%,
      rgba(0,0,0,0) 100%);
  animation: contactLuxSweep 14s linear infinite;
  transform: translateX(-30%);
}

@keyframes contactLuxSweep {
  0%   { transform: translateX(-35%) translateY(0) rotate(0deg); }
  100% { transform: translateX(35%) translateY(-6%) rotate(0deg); }
}

.contact-lux-grid {
  gap: 3rem;
}

.contact-eyebrow {
  letter-spacing: .18em;
  text-transform: uppercase;
  font-size: 12px;
  opacity: .55;
  color: #131313;
}

.contact-sub {
  opacity: .65;
  color: #131313;
  margin-bottom: 0;
}

.contact-lux-title {
  border-left: 1px solid rgba(0,0,0,.18);
  padding-left: 1.75rem;
}

/* Left cards */
.contact-lux-cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}

.contact-lux-card {
  border: 1px solid rgba(0,0,0,.12);
  border-radius: 18px;
  background: rgba(255,255,255,.72);
  backdrop-filter: blur(10px);
  padding: 1.2rem 1.2rem;
  display: flex;
  gap: 1rem;
  transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}

.contact-lux-card:hover {
  transform: translateY(-4px);
  border-color: rgba(0,0,0,.22);
  box-shadow: 0 20px 50px rgba(0,0,0,.08);
}

.contact-lux-card-wide {
  grid-column: 1 / -1;
}

.contact-lux-icon {
  width: 44px;
  height: 44px;
  border-radius: 14px;
  border: 1px solid rgba(0,0,0,.12);
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255,255,255,.8);
  flex: 0 0 auto;
}

.contact-lux-icon-img {
  width: 18px;
  height: 18px;
  opacity: .8;
}

.contact-lux-card-head {
  font-weight: 600;
  color: #131313;
  margin-bottom: .2rem;
}

.contact-lux-card-text {
  opacity: .6;
  margin-bottom: .35rem;
}

.contact-lux-link {
  color: #131313;
  opacity: .75;
  text-decoration: none;
  border-bottom: 1px solid rgba(0,0,0,.18);
  width: fit-content;
  transition: opacity .3s ease, border-color .3s ease;
}

.contact-lux-link:hover {
  opacity: 1;
  border-bottom-color: rgba(0,0,0,.35);
}

/* Mini CTA line */
.contact-mini-cta {
  display: flex;
  align-items: center;
  gap: .75rem;
  opacity: .75;
}

.contact-mini-cta-dot {
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: rgba(0,0,0,.45);
}

.contact-mini-cta-text {
  font-size: 14px;
  color: #131313;
}

/* Form panel */
.contact-form-panel {
  border: 1px solid rgba(0,0,0,.12);
  border-radius: 22px;
  background: rgba(255,255,255,.82);
  backdrop-filter: blur(12px);
  padding: 2rem;
  box-shadow: 0 24px 60px rgba(0,0,0,.08);
}

.contact-form-title {
  margin-bottom: .35rem;
}

.contact-form-lux .input-field {
  border-bottom-color: rgba(0,0,0,.22);
}

.contact-form-lux .input-field:hover {
  border-bottom-color: rgba(0,0,0,.38);
}

.contact-form-lux .input-field:focus {
  border-bottom-color: rgba(0,0,0,.65);
}

/* Premium button look (without changing your existing primary system) */
.contact-lux-btn-wrap {
  margin-top: .5rem;
}

.contact-lux-btn {
  border-radius: 999px;
  padding-left: 26px;
  padding-right: 26px;
  letter-spacing: .06em;
}

/* Footer note */
.contact-form-footnote {
  margin-top: 1rem;
  font-size: 12px;
  opacity: .55;
  padding-left: .25rem;
}

/* Responsive */
@media (max-width: 991px) {
  .contact-lux-cards { grid-template-columns: 1fr; }
  .contact-form-panel { padding: 1.5rem; }
}


/* =========================
   ABOUT CTA – Luxury upgrade
   ========================= */

.cta-lux{
  position: relative;
  overflow: hidden;
}

.cta-lux__wrap{
  position: relative;
  min-height: 420px;
  display: grid;
  place-items: center;
}

/* Animated luxury line in the background */
.cta-lux__line{
  position: absolute;
  inset: -60% -50%;
  height: 1px;
  top: 52%;
  opacity: .22;
  pointer-events: none;
  background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,.55) 50%, transparent 100%);
  transform: rotate(-9deg);
  animation: ctaLuxLine 14s linear infinite;
}

@keyframes ctaLuxLine{
  0%   { transform: translateX(-8%) rotate(-9deg); }
  100% { transform: translateX(8%)  rotate(-9deg); }
}

/* Premium glass panel */
.cta-lux__panel{
  position: relative;
  width: min(820px, 92%);
  padding: 42px 46px;
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,.16);
  background: #4f4c4d;
  backdrop-filter: blur(14px);
  box-shadow: 0 30px 80px rgba(0,0,0,.35);
  text-align: center;
}

.cta-lux__kicker{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: rgba(255,255,255,.75);
  margin-bottom: 14px;
}

.cta-lux__kicker::before{
  content:"";
  width: 28px;
  height: 1px;
  background: rgba(255,255,255,.35);
}

.cta-lux__title{
  margin: 0 0 14px 0;
  letter-spacing: .04em;
  line-height: 1.1;
}

.cta-lux__desc{
  margin: 0 auto;
  max-width: 640px;
  opacity: .82;
  line-height: 1.85;
  font-size: 15px;
}

/* Premium pill button */
.cta-lux__actions{
  margin-top: 22px;
  display: grid;
  gap: 12px;
  justify-items: center;
}

.cta-lux-btn{
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 12px 18px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.22);
  background: rgba(255,255,255,.06);
  transition: transform .22s ease, background .22s ease, border-color .22s ease;
}

.cta-lux-btn:hover{
  transform: translateY(-2px);
  background: rgba(255,255,255,.10);
  border-color: rgba(255,255,255,.35);
}

.cta-lux-btn__dot{
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: rgba(255,255,255,.85);
  box-shadow: 0 0 18px rgba(255,255,255,.18);
}

.cta-lux-btn__text{
  font-size: 12px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: rgba(255,255,255,.85);
}

.cta-lux-btn__arrow{
  color: rgba(255,255,255,.75);
  font-size: 16px;
  transform: translateY(-1px);
}

.cta-lux__note{
  font-size: 12px;
  letter-spacing: .06em;
  color: rgba(255,255,255,.55);
}

/* Responsive */
@media (max-width: 767px){
  .cta-lux__wrap{ min-height: 360px; }
  .cta-lux__panel{ padding: 30px 22px; border-radius: 18px; }
}


/* =========================
   Founder Section – Power / Luxury (reference style)
   ========================= */

.founder-hero{
  position: relative;
  padding: 0;
  overflow: hidden;
  background: #fff;
}

.founder-hero__container{
  max-width: 1200px; /* keep same container feel */
}

.founder-hero__grid{
  display: grid;
  grid-template-columns: 1fr 1.35fr;
  align-items: stretch;
  min-height: 560px;
}

/* LEFT image block */
.founder-hero__media{
  position: relative;
  background: linear-gradient(180deg, rgba(0,0,0,.12), rgba(0,0,0,.18));
  border-right: 1px solid rgba(0,0,0,.10);
  overflow: hidden;
}

.founder-hero__img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 15%;
  display: block;
  transform: scale(1.02);
}

/* Optional: soft fade on the right edge like the ref */
.founder-hero__media::after{
  content:"";
  position: absolute;
  top: 0; right: 0;
  width: 42%;
  height: 100%;
  background: linear-gradient(90deg, rgba(255,255,255,0) 0%, #fff 80%);
  pointer-events: none;
}

/* RIGHT content */
.founder-hero__content{
  position: relative;
  padding: 64px 64px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 14px;
}

.founder-hero__kicker{
  font-size: 12px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: rgba(19,19,19,.55);
}

.founder-hero__title{
  margin: 0;
  font-family: "Aboreto", serif;
  letter-spacing: .06em;
  line-height: 1.1;
  color: rgba(19,19,19,.92);
}

.founder-hero__text{
  margin: 8px 0 0 0;
  max-width: 620px;
  line-height: 1.9;
  color: rgba(19,19,19,.60);
  font-size: 18px;
}

.founder-hero__meta{
  margin-top: 18px;
  display: grid;
  gap: 4px;
}

.founder-hero__name{
  font-weight: 600;
  color: rgba(19,19,19,.85);
}

.founder-hero__role{
  font-size: 12px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: rgba(19,19,19,.45);
}

/* Big quote mark (power detail) */
.founder-hero__quoteMark{
  position: absolute;
  right: 36px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 220px;
  line-height: 1;
  color: rgba(0,0,0,.07);
  font-family: "Aboreto", serif;
  pointer-events: none;
}

/* Responsive */
@media (max-width: 991px){
  .founder-hero__grid{
    grid-template-columns: 1fr;
    min-height: unset;
  }
  .founder-hero__media{
    height: 420px;
    border-right: none;
    border-bottom: 1px solid rgba(0,0,0,.10);
  }
  .founder-hero__media::after{ display: none; }
  .founder-hero__content{
    padding: 40px 22px;
  }
  .founder-hero__quoteMark{
    right: 10px;
    font-size: 160px;
    opacity: .55;
  }
}


/* =========================
   Project Page Hero – Luxury Upgrade
   ========================= */

.project-hero-lux__container{
  position: relative;
  overflow: hidden;
}

.project-hero-lux__wrap{
  gap: 44px;
  align-items: center;
}

.project-hero-lux__line{
  position: absolute;
  inset: -70% -50%;
  height: 1px;
  top: 46%;
  opacity: .20;
  pointer-events: none;
  background: linear-gradient(90deg, transparent 0%, rgba(143,131,112,.65) 50%, transparent 100%);
  transform: rotate(-8deg);
  animation: projectLuxLine 16s linear infinite;
}

@keyframes projectLuxLine{
  0%   { transform: translateX(-10%) rotate(-8deg); }
  100% { transform: translateX(10%)  rotate(-8deg); }
}

/* Images become premium framed cards */
.project-hero-lux__grid{
  gap: 16px;
}

.project-hero-lux__imgCard{
  border-radius: 22px;
  overflow: hidden;
  border: 1px solid rgba(0,0,0,.10);
  background: #fff;
  box-shadow: 0 30px 80px rgba(0,0,0,.10);
  transform: translateZ(0);
}

.project-hero-lux__img{
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Right column typography */
.project-hero-lux__kicker{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: rgba(143,131,112,.95);
  margin-bottom: 2px;
}

.project-hero-lux__kickerLine{
  width: 28px;
  height: 1px;
  background: rgba(143,131,112,.65);
}

.project-hero-lux__title{
  margin: 0;
  max-width: 520px;
  letter-spacing: .06em;
  line-height: 1.1;
}

.project-hero-lux__desc{
  margin: 0;
  max-width: 560px;
  line-height: 1.85;
  color: rgba(19,19,19,.65);
}

/* Stats as mini luxury blocks */
.project-hero-lux__stats{
  margin-top: 16px;
  display: grid;
  grid-template-columns: 1fr auto 1fr auto 1fr;
  align-items: center;
  gap: 18px;
  padding: 18px 18px;
  border-radius: 18px;
  border: 1px solid rgba(0,0,0,.10);
  background: rgba(255,255,255,.70);
  backdrop-filter: blur(10px);
  box-shadow: 0 22px 60px rgba(0,0,0,.06);
}

.project-hero-lux__stat{
  display: grid;
  gap: 6px;
  justify-items: center;
  text-align: center;
}

.project-hero-lux__statValue{
  font-size: 26px;
  color: rgba(19,19,19,.90);
  letter-spacing: .04em;
}

.project-hero-lux__statLabel{
  font-size: 12px;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: rgba(19,19,19,.50);
}

.project-hero-lux__statDivider{
  width: 1px;
  height: 44px;
  background: rgba(0,0,0,.12);
}

/* Responsive */
@media (max-width: 991px){
  .project-hero-lux__wrap{
    flex-direction: column;
    gap: 26px;
  }
  .project-hero-lux__stats{
    grid-template-columns: 1fr;
    gap: 12px;
    text-align: left;
  }
  .project-hero-lux__stat{
    justify-items: start;
    text-align: left;
  }
  .project-hero-lux__statDivider{
    display: none;
  }
}


/* =========================
   Project Section: "Refined Living" – Luxury panel
   ========================= */

.works-lux{
  position: relative;
  overflow: hidden;
}

/* keep your bg-image-section background as-is */
.works-lux__wrap{
  position: relative;
  min-height: 460px;
  display: flex;
  align-items: center;
  justify-content: flex-end; /* right aligned like your current layout */
  padding: 40px 0;
}

/* subtle animated luxury line */
.works-lux__line{
  position: absolute;
  inset: -70% -50%;
  height: 1px;
  top: 58%;
  opacity: .22;
  pointer-events: none;
  background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,.55) 50%, transparent 100%);
  transform: rotate(-9deg);
  animation: worksLuxLine 16s linear infinite;
}

@keyframes worksLuxLine{
  0%   { transform: translateX(-10%) rotate(-9deg); }
  100% { transform: translateX(10%)  rotate(-9deg); }
}

/* premium glass panel */
.works-lux__panel{
  position: relative;
  width: min(560px, 92%);
  padding: 34px 34px;
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(10,10,10,.42);
  backdrop-filter: blur(14px);
  box-shadow: 0 30px 90px rgba(0,0,0,.35);
}

.works-lux__kicker{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: rgba(255,255,255,.78);
  margin-bottom: 12px;
}

.works-lux__kickerLine{
  width: 28px;
  height: 1px;
  background: rgba(255,255,255,.40);
}

.works-lux__title{
  margin: 0 0 10px 0;
  color: rgba(255,255,255,.92);
  letter-spacing: .06em;
  line-height: 1.1;
}

.works-lux__desc{
  margin: 0;
  color: rgba(255,255,255,.72);
  line-height: 1.85;
  font-size: 15px;
  max-width: 520px;
}

/* features */
.works-lux__features{
  margin-top: 18px;
  display: grid;
  gap: 10px;
  padding-top: 16px;
  border-top: 1px solid rgba(255,255,255,.14);
}

.works-lux__feature{
  display: flex;
  align-items: center;
  gap: 10px;
  color: rgba(255,255,255,.72);
  font-size: 13px;
  letter-spacing: .04em;
}

.works-lux__dot{
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: rgba(255,255,255,.85);
  box-shadow: 0 0 18px rgba(255,255,255,.16);
}

/* responsive */
@media (max-width: 767px){
  .works-lux__wrap{
    justify-content: center;
    min-height: 420px;
  }
  .works-lux__panel{
    padding: 26px 20px;
    border-radius: 18px;
  }
}


/* =========================
   Payment Plan – Luxury Timeline
   ========================= */

.payment-lux{
  position: relative;
  overflow: hidden;
}

.payment-lux__head{
  gap: 10px;
}

.payment-lux__kicker{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-size: 12px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: rgba(143,131,112,.95);
}

.payment-lux__kickerLine{
  width: 28px;
  height: 1px;
  background: rgba(143,131,112,.65);
}

.payment-lux__title{
  margin: 0;
  letter-spacing: .12em;
  line-height: 1.05;
}

.payment-lux__desc{
  margin: 0;
  line-height: 1.9;
  color: rgba(19,19,19,.65);
}

/* rail behind cards */
.payment-lux__railWrap{
  position: relative;
  margin-top: 28px;
  padding: 18px 0 6px;
}

.payment-lux__rail{
  position: absolute;
  left: 6%;
  right: 6%;
  top: 50%;
  height: 1px;
  background: rgba(0,0,0,.10);
  transform: translateY(-50%);
}

.payment-lux__railGlow{
  position: absolute;
  left: 12%;
  right: 12%;
  top: 50%;
  height: 1px;
  opacity: .35;
  background: linear-gradient(90deg, transparent 0%, rgba(143,131,112,.75) 50%, transparent 100%);
  transform: translateY(-50%);
  animation: payLuxGlow 14s linear infinite;
  pointer-events: none;
}

@keyframes payLuxGlow{
  0%   { transform: translateY(-50%) translateX(-10%); }
  100% { transform: translateY(-50%) translateX(10%); }
}

/* cards grid */
.payment-lux__grid{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
  align-items: stretch;
}

/* premium card */
.payment-lux__card{
  position: relative;
  padding: 22px 20px;
  border-radius: 18px;
  border: 1px solid rgba(0,0,0,.10);
  background: rgba(255,255,255,.72);
  backdrop-filter: blur(12px);
  box-shadow: 0 22px 60px rgba(0,0,0,.06);
}

.payment-lux__top{
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 12px;
}

.payment-lux__step{
  font-size: 12px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: rgba(19,19,19,.45);
}

.payment-lux__badge{
  font-size: 12px;
  letter-spacing: .14em;
  text-transform: uppercase;
  padding: 8px 10px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,.12);
  color: rgba(19,19,19,.72);
  background: rgba(255,255,255,.7);
}

.payment-lux__cardTitle{
  margin: 0 0 8px 0;
  font-family: "Aboreto", serif;
  letter-spacing: .06em;
  color: rgba(19,19,19,.88);
  line-height: 1.2;
}

.payment-lux__cardText{
  margin: 0;
  line-height: 1.75;
  color: rgba(19,19,19,.65);
  font-size: 14px;
}

.payment-lux__muted{
  color: rgba(19,19,19,.48);
}

/* CTA */
.payment-lux__cta{
  border-radius: 999px;
  padding-left: 26px;
  padding-right: 26px;
}

/* responsive */
@media (max-width: 991px){
  .payment-lux__grid{
    grid-template-columns: 1fr 1fr;
  }
  .payment-lux__rail,
  .payment-lux__railGlow{
    display: none;
  }
}

@media (max-width: 560px){
  .payment-lux__grid{
    grid-template-columns: 1fr;
  }
}


/* =========================
   social media design
   ========================= */

   .footer-socials-wrapper {
  display: flex;
  gap: 14px;
  margin-top: 22px;
}

.footer-socials-wrapper a {
  width: 40px;
  height: 40px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  background: rgba(255, 255, 255, 0.06);
  backdrop-filter: blur(10px);
  transition: all 0.3s ease;
}

.footer-socials-wrapper a:hover {
  background: rgba(255, 255, 255, 0.18);
  transform: translateY(-2px);
}

.footer-socials-wrapper i {
  font-size: 16px;
}


/* HERO SECTION */
.marea-hero{
  position: relative;
  min-height: 80vh;
  display: flex;
  align-items: flex-end;
  padding: 0 !important; /* we control spacing inside */
  overflow: hidden;
}

/* Background image layer */
.marea-hero-bg{
  position: absolute;
  inset: 0;
  background-image: url("../images/home-project.jpg"); /* use your best hero image */
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  transform: scale(1.02);
}

/* Split layout wrapper */
.marea-split {
  background: #fff;
}

.marea-split-inner {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 48px;
  align-items: center;
}

/* Left content */
.marea-left .marea-tag {
  margin-bottom: 12px;
}

.marea-left .marea-title {
  margin: 0 0 14px 0;
}

.marea-left .marea-desc {
  margin: 0 0 22px 0;
  max-width: 52ch;
}

/* Facts strip (luxury + clean) */
.marea-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  padding: 16px;
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 16px;
  background: #fff;
  margin-bottom: 24px;
}

.marea-fact-label {
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  opacity: 0.65;
  margin-bottom: 6px;
}

.marea-fact-value {
  font-size: 18px;
  line-height: 1.25;
  opacity: 0.9;
}

/* Right image */
.marea-right {
  width: 100%;
}

.marea-image {
  width: 100%;
  height: 520px;
  object-fit: cover;
  border-radius: 22px;
  display: block;
}

/* Responsive */
@media (max-width: 991px) {
  .marea-split-inner {
    grid-template-columns: 1fr;
    gap: 26px;
  }

  .marea-image {
    height: 420px;
  }

  .marea-facts {
    grid-template-columns: 1fr;
  }
}


/* ===============================
   MATCH REGISTER TYPO STYLE (MAREA ONLY)
   =============================== */

/* FEATURED PROJECT label should look like REGISTER label */
.marea-split .marea-tag{
  font-family: var(--fonts--heading);
  color: #111111;
  text-transform: uppercase;
  letter-spacing: 0.22em;
  font-size: 12px;
  opacity: 0.7;
}

/* Title: same feeling as "REGISTER YOUR INTEREST" */
.marea-split .marea-title{
  font-family: var(--fonts--heading);
  color: #111111;
  text-transform: uppercase;
  letter-spacing: 0.10em;   /* wide tracking like REGISTER */
  font-weight: 400;         /* lighter luxury weight */
  text-shadow: none !important;
  filter: none !important;
  margin: 0 0 18px 0;
}

/* Description: cleaner + closer to REGISTER style */
.marea-split .marea-desc{
  font-family: var(--fonts--heading);
  color: #111111;
  font-size: 18px;
  line-height: 1.8;
  opacity: 0.75;
  letter-spacing: 0.01em;
}


/* Optional dark/soft overlay (helps text readability) */
.marea-hero-bg::after{
  content:"";
  position:absolute;
  inset:0;
  background: linear-gradient(
    90deg,
    rgba(0,0,0,0.55) 0%,
    rgba(0,0,0,0.18) 55%,
    rgba(0,0,0,0.00) 100%
  );
}

/* Content positioning */
.marea-hero-inner{
  position: relative;
  z-index: 2;
  width: 100%;
  padding-top: 6rem;
  padding-bottom: 6rem;
}

/* The small info card (like Imtiaz) */
.marea-hero-card{
  max-width: 520px;
  padding: 28px 28px 24px;
  border-radius: 16px;
  background: rgba(20,20,20,0.65);
  border: 1px solid rgba(255,255,255,0.12);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: 0 24px 70px rgba(0,0,0,0.35);
}

/* Typography inside card */
.marea-hero-card .small-h2,
.marea-hero-card p,
.marea-hero-card .xs-text{
  color: #fff;
}

.marea-hero-card .white-bg{
  opacity: 0.85;
}

/* Icons row inside card */
.marea-hero-icons{
  margin-top: 16px;
  margin-bottom: 18px;
  gap: 18px;
}

/* Make small icons white if your svg is dark */
.marea-hero-card .icon_small{
  filter: brightness(0) invert(1);
  opacity: 0.9;
}

/* Mobile */
@media (max-width: 767px){
  .marea-hero{
    min-height: 70vh;
  }
  .marea-hero-card{
    max-width: 100%;
  }
}


.marea-hero {
  min-height: 92vh;   /* key difference */
  max-height: 100vh;
  align-items: flex-end;
}


.marea-hero-card {
  max-width: 460px;      /* ↓ smaller than before */
  padding: 22px 22px 20px;
}


.marea-hero-card .small-h2 {
  font-size: 26px;
  line-height: 1.2;
}

.marea-hero-card p {
  font-size: 14px;
  line-height: 1.6;
}


.marea-hero-icons {
  gap: 14px;
}

.marea-hero-icons .xs-text {
  font-size: 12px;
}

.marea-hero-inner {
  padding-bottom: 5rem;
}


/* HERO base */
.marea-hero{
  position: relative;
  min-height: 92vh;
  overflow: hidden;
  border-radius: 18px;              /* gives premium frame */
}

/* Background image */
.marea-hero-bg{
  position:absolute;
  inset:0;
  background-image: url("../images/home-project.jpg"); /* your image */
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  transform: scale(1.03);
}

/* Premium overlays: vignette + readability + depth */
.marea-hero-bg::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(90% 80% at 20% 60%, rgba(0,0,0,0.55), rgba(0,0,0,0) 60%),
    radial-gradient(70% 80% at 80% 50%, rgba(0,0,0,0.25), rgba(0,0,0,0) 60%),
    linear-gradient(180deg, rgba(0,0,0,0.15), rgba(0,0,0,0.40));
}

/* Thin border frame like luxury sites */
.marea-hero::after{
  content:"";
  position:absolute;
  inset:0;
  border: 1px solid rgba(255,255,255,0.10);
  border-radius: 18px;
  pointer-events: none;
}


/* Card clarity (stronger than before) */
.marea-hero-card{
  max-width: 460px;
  padding: 22px 22px 20px;
  border-radius: 16px;

  /* clearer glass */
  background: rgba(16,16,16,0.80);
  border: 1px solid rgba(255,255,255,0.14);

  /* premium depth */
  box-shadow:
    0 24px 70px rgba(0,0,0,0.45),
    inset 0 1px 0 rgba(255,255,255,0.08);

  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}


/* Text readability */
.marea-hero-card .small-h2{
  color: #fff;
  font-size: 28px;
  line-height: 1.15;
  margin-bottom: 10px;
}

.marea-hero-card .white-bg{
  color: rgba(255,255,255,0.82);
  font-size: 14px;
  line-height: 1.6;
  margin-bottom: 16px;
}

/* Icons + small text */
.marea-hero-card .xs-text{
  color: rgba(255,255,255,0.78);
  font-size: 12px;
  line-height: 1.35;
}

.marea-hero-icons{
  display:flex;
  gap: 18px;
  margin-bottom: 18px;
}

.marea-hero-card .icon_small{
  width: 18px;
  height: 18px;
  filter: brightness(0) invert(1);
  opacity: 0.95;
  margin-bottom: 8px;
}


/* Button inside hero card */
.marea-hero-card .primary-button{
  border-radius: 12px;
}

.marea-hero-card .button-background{
  background: rgba(255,255,255,0.12) !important;
}


.marea-hero-card .default-text{
  color: #fff !important;
  letter-spacing: 0.08em;
}

/* Hover */
.marea-hero-card .primary-button:hover .button-background{
  background: rgba(255,255,255,0.20) !important;
}


.marea-hero{
  cursor: pointer;
}
.marea-hero:hover .marea-hero-bg{
  transform: scale(1.06);
  transition: transform .6s ease;
}
.marea-hero-bg{
  transition: transform .6s ease;
}


.marea-hero-inner{
  position: relative;
  z-index: 2;
  padding: 6rem 0;
}

.marea-hero-card{
  margin-left: 0;
  margin-bottom: 10px;
}


.marea-hero-card::before{
  content:"FEATURED PROJECT";
  display:block;
  color: rgba(255,255,255,0.65);
  letter-spacing: 0.16em;
  font-size: 11px;
  margin-bottom: 8px;
}

/* ===========================
   MAREA HERO (IMTIAZ STYLE)
=========================== */

.marea-hero {
  position: relative;
  min-height: 92vh;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  padding: 0 !important;
}

/* Background image */
.marea-hero-bg {
  position: absolute;
  inset: 0;
  background-image: url("../images/home-project.jpg"); /* change to your preferred image */
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  transform: scale(1.03);
}

/* Premium overlay for readability */
.marea-hero-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(80% 70% at 15% 70%, rgba(0,0,0,0.65), rgba(0,0,0,0) 60%),
    linear-gradient(180deg, rgba(0,0,0,0.20), rgba(0,0,0,0.45));
}

/* Container holds text + card */
.marea-hero-inner {
  position: relative;
  z-index: 2;
  width: 100%;
  padding: 0 0 5rem 0;
}

/* TEXT ON IMAGE */
.marea-hero-text {
  position: absolute;
  left: 0;
  bottom: 180px; /* distance above the card */
  max-width: 520px;
}

/* Featured label */
.marea-tag {
  font-size: 11px;
  letter-spacing: 0.18em;
  color: rgba(255,255,255,0.72);
  margin-bottom: 12px;
  font-weight: 500;
}

/* Title */
.marea-title {
  font-size: 38px;
  line-height: 1.12;
  margin-bottom: 14px;
  font-weight: 600;
  color: #fff;
  text-shadow: 0 2px 12px rgba(0,0,0,0.35);
}

/* Description */
.marea-desc {
  font-size: 20px;
  line-height: 1.65;
  color: rgba(255,255,255,0.90);
  text-shadow: 0 2px 12px rgba(0,0,0,0.30);
}

/* SMALL CARD (icons + button only) */
.marea-hero-card {
  position: absolute;
  left: 0;
  bottom: 70px;
  max-width: 460px;
  padding: 18px 20px 18px;
  border-radius: 16px;

  background: rgba(14,14,14,0.72);
  border: 1px solid rgba(255,255,255,0.14);

  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);

  box-shadow: 0 30px 70px rgba(0,0,0,0.45),
              inset 0 1px 0 rgba(255,255,255,0.08);
}

/* Icons row */
.marea-hero-icons {
  display: flex;
  gap: 18px;
  margin-bottom: 16px;
}

/* Icons to white */
.marea-hero-card .icon_small {
  width: 18px;
  height: 18px;
  filter: brightness(0) invert(1);
  opacity: 0.95;
  margin-bottom: 8px;
}

/* Icon text */
.marea-hero-card .xs-text {
  color: rgba(255,255,255,0.80);
  font-size: 15px;
  line-height: 1.35;
}

/* Button inside hero card - make it readable */
.marea-btn-wrap .button-background {
  background: rgba(255,255,255,0.12) !important;
}

.marea-btn-wrap .default-text {
  color: #4f4c4d !important;
  letter-spacing: 0.10em;
}

.marea-btn-wrap .primary-button:hover .button-background {
  background: rgba(255,255,255,0.20) !important;
}

/* Improve font rendering */
.marea-hero, .marea-hero * {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

/* RESPONSIVE */
@media (max-width: 991px) {
  .marea-hero-text {
    bottom: 210px;
    max-width: 520px;
  }
}

@media (max-width: 767px) {
  .marea-hero {
    min-height: 80vh;
  }

  .marea-hero-text,
  .marea-hero-card {
    left: 16px;
    right: 16px;
    max-width: none;
  }

  .marea-hero-text {
    bottom: 220px;
  }

  .marea-hero-card {
    bottom: 50px;
  }

  .marea-hero-icons {
    gap: 12px;
  }

  .marea-title {
    font-size: 30px;
  }
}

/* TITLE / TEXT stays on LEFT */
.marea-hero-text{
  left: 0;
  right: auto;
  text-align: left;
}

/* CARD moves to RIGHT */
.marea-hero-card{
  left: auto;
  right: 0;
}

/* On tablet/mobile keep both centered/stacked */
@media (max-width: 767px){
  .marea-hero-text,
  .marea-hero-card{
    left: 16px;
    right: 16px;
    max-width: none;
  }

  .marea-hero-text{
    text-align: left;
  }
}


.cc-video-hero-other {
  position: relative;
  height: 100vh;
  min-height: 600px;
  overflow: hidden;
  padding: 0;
}

/* Video full cover */
.cc-video-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}


/* ===== Mission & Vision Section ===== */
.sharafi-mv {
  background-color: #4f4c4d;
  padding: 50px 0;
  color: #ffffff;
}

.sharafi-mv-inner {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 80px;
  align-items: center;
}

/* Text Blocks */
.mv-item {
  max-width: 520px;
}

.mv-eyebrow {
  font-size: 14px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.75);
  margin-bottom: 18px;
}

.mv-text {
  font-size: 22px;
  line-height: 1.8;
  color: rgba(255,255,255,0.95);
}

/* Divider */
.mv-divider {
  width: 1px;
  height: 140px;
  background-color: rgba(255,255,255,0.25);
}

/* Responsive */
@media (max-width: 991px) {
  .sharafi-mv-inner {
    grid-template-columns: 1fr;
    gap: 50px;
    text-align: center;
  }

  .mv-divider {
    display: none;
  }

  .mv-item {
    margin: 0 auto;
  }
}


.cc-video-hero-project {
  position: relative;
  height: 100vh; /* or 70vh if you want smaller */
  overflow: hidden;
}

.cc-video-hero-project .hero-bg-video,
.cc-video-hero-project video {
  width: 100%;
  height: 100%;
}

.cc-video-hero-project video {
  object-fit: cover;
}


/* SECTION */
.amenities-slider {
  padding: 4rem 0;
  background: transparent; /* keep your site background */
}

.amenities-slider__container {
  position: relative;
}

/* VIEWPORT */
.amenities-slider__viewport {
  overflow: hidden;
  width: 100%;
  padding: 0.5rem 0;
}

/* TRACK */
.amenities-slider__track {
  display: flex;
  gap: 2rem;
  transition: transform 450ms ease;
  will-change: transform;
}

/* SLIDE (2 visible like example) */
.amenities-slider__slide {
  flex: 0 0 calc(50% - 1rem); /* 2 big cards */
  border-radius: 22px;
  overflow: hidden;
  position: relative;
  transform: scale(0.98);
  filter: brightness(0.65);
  transition: transform 450ms ease, filter 450ms ease;
}

/* IMAGE */
.amenities-slider__slide img {
  width: 100%;
  height: 420px;               /* adjust */
  object-fit: cover;
  display: block;
}

/* ACTIVE STYLE */
.amenities-slider__slide.is-active {
  transform: scale(1);
  filter: brightness(1);
  box-shadow: 0 24px 60px rgba(0,0,0,0.18);
}

/* ARROWS */
.amenities-slider__arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 54px;
  height: 54px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,0.08);
  background: rgba(255,255,255,0.85);
  backdrop-filter: blur(8px);
  font-size: 30px;
  line-height: 54px;
  text-align: center;
  cursor: pointer;
  z-index: 5;
  transition: transform 200ms ease, background 200ms ease;
}

.amenities-slider__arrow:hover {
  background: rgba(255,255,255,0.95);
  transform: translateY(-50%) scale(1.04);
}

.amenities-slider__arrow--left { left: -18px; }
.amenities-slider__arrow--right { right: -18px; }

/* DOTS */
.amenities-slider__dots {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin-top: 18px;
}

.amenities-slider__dot {
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: rgba(0,0,0,0.25);
  border: none;
  cursor: pointer;
}

.amenities-slider__dot.is-active {
  width: 18px;
  background: rgba(0,0,0,0.55);
}

/* RESPONSIVE */
@media (max-width: 991px) {
  .amenities-slider__slide {
    flex: 0 0 85%;
  }
  .amenities-slider__arrow--left { left: 8px; }
  .amenities-slider__arrow--right { right: 8px; }
  .amenities-slider__slide img { height: 360px; }
}


/* HEADER */
.amenities-slider__header {
  text-align: center;
  margin-bottom: 2.5rem;
}

.amenities-slider__title {
  font-size: 2.4rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-weight: 400;
  color: #1c1c1c; /* adjust if section is dark */
}

/* If section background is dark */
.amenities-slider.dark .amenities-slider__title {
  color: #ffffff;
}


<div class="amenities-slider__header">
  <span class="amenities-slider__eyebrow">Explore</span>
  <h2 class="amenities-slider__title">Gallery</h2>
</div>


.amenities-slider__eyebrow {
  display: block;
  font-size: 0.75rem;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  color: #8a8a8a;
  margin-bottom: 0.6rem;
}


/* ====== SECTION LOOK ====== */
.amenities-slider {
  padding: 6rem 0;
  background: #ffffff;
  overflow: hidden;
}

.amenities-slider__header {
  text-align: center;
  margin-bottom: 2.5rem;
}

.amenities-slider__eyebrow {
  display: block;
  font-size: 0.75rem;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  color: #8a8a8a;
  margin-bottom: 0.6rem;
}

.amenities-slider__title {
  font-size: 2.2rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-weight: 400;
  color: #1c1c1c;
}

/* ====== VIEWPORT (scroll + snap) ====== */
.amenities-slider__viewport {
  position: relative;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  padding: 0.5rem 0 2rem;
  cursor: grab;

  /* luxury fade edges */
  -webkit-mask-image: linear-gradient(to right, transparent 0, #000 8%, #000 92%, transparent 100%);
  mask-image: linear-gradient(to right, transparent 0, #000 8%, #000 92%, transparent 100%);
}

.amenities-slider__viewport::-webkit-scrollbar {
  display: none;
}

.amenities-slider__viewport:active {
  cursor: grabbing;
}

/* ====== TRACK ====== */
.amenities-slider__track {
  display: flex;
  gap: 1.8rem;
  padding: 0 2rem;
}

/* ====== SLIDE (3 visible) ====== */
.amenities-slider__slide {
  flex: 0 0 calc((100% - (1.8rem * 2)) / 3); /* 3 cards */
  scroll-snap-align: center;
  border-radius: 26px;
  overflow: hidden;
  background: #f2f2f2;
  box-shadow: 0 18px 45px rgba(0,0,0,0.18);
  transform: translateZ(0);
  transition: transform 250ms ease, filter 250ms ease, opacity 250ms ease;
}

.amenities-slider__slide img {
  width: 100%;
  height: 420px;
  object-fit: cover;
  display: block;
  transform: scale(1.02);
}

/* center highlight (JS will toggle .is-active) */
.amenities-slider__slide {
  filter: saturate(0.92);
  opacity: 0.78;
}

.amenities-slider__slide.is-active {
  opacity: 1;
  filter: saturate(1);
  transform: scale(1.03);
}

/* ====== DOTS ====== */
.amenities-slider__dots {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin-top: 1.2rem;
}

.amenities-slider__dots button {
  width: 10px;
  height: 10px;
  border-radius: 99px;
  border: 0;
  background: rgba(0,0,0,0.18);
  cursor: pointer;
}

.amenities-slider__dots button.is-active {
  width: 30px;
  background: rgba(0,0,0,0.55);
}

/* ====== RESPONSIVE ====== */
@media (max-width: 991px) {
  .amenities-slider__slide {
    flex: 0 0 calc((100% - 1.8rem) / 2); /* 2 cards */
  }
  .amenities-slider__slide img { height: 360px; }
}

@media (max-width: 767px) {
  .amenities-slider__track { padding: 0 1rem; }
  .amenities-slider__slide {
    flex: 0 0 86%; /* 1 big card on mobile */
  }
  .amenities-slider__slide img { height: 320px; }
}


/* Allow drag on desktop + prevent text/image selection while dragging */
.amenities-slider__viewport {
  cursor: grab;
  user-select: none;
}

.amenities-slider__viewport:active {
  cursor: grabbing;
}

/* Makes dragging work reliably on images (otherwise browser thinks you're dragging the image itself) */
.amenities-slider__slide img {
  pointer-events: none;
  user-drag: none;
  -webkit-user-drag: none;
}

/* Ensures pointer events are treated correctly */
.amenities-slider__track {
  touch-action: pan-x;
}


/* ===== Footer section base safety ===== */
.footer-section, .section.footer {
  position: relative;
  overflow: visible; /* important: don't clip footer content */
}

/* If your big rounded footer card has a class, put it here */
.footer-card, .footer-main-card, .footer-container-card {
  height: auto !important;
  min-height: unset !important;
  max-height: none !important;
}

/* Prevent hidden clipping on inner wrappers */
.footer-section * {
  max-height: none;
}

/* ===== Mobile layout ===== */
@media (max-width: 767px) {
  /* Give space so floating buttons don’t cover footer */
  .footer-section, .section.footer {
    padding-bottom: 110px; /* adjust if your floating buttons are taller */
  }

  /* Make the big footer card stack nicely */
  .footer-card, .footer-main-card, .footer-container-card {
    width: 100%;
    padding: 22px 16px !important;
    border-radius: 22px !important;
  }

  /* Stack columns instead of 3-column layout */
  .footer-grid, .footer-columns, .footer-content, .footer-inner,
  .content-wrapper.footer, .footer-wrapper {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  /* Reduce top logo spacing so it doesn't push content out */
  .footer-logo, .footer-brand, .footer-mark {
    margin-bottom: 10px !important;
    max-width: 120px;
  }

  /* Make long address/email wrap */
  .footer-section a, .footer-section p, .footer-section li {
    word-break: break-word;
    overflow-wrap: anywhere;
  }

  /* Ensure bottom copyright is visible */
  .footer-bottom, .copyright, .footer-copyright {
    margin-top: 14px !important;
    padding: 10px 0 0 !important;
    position: relative;
    z-index: 2;
  }
}


/* =========================
   NEWS PAGE – LUX EDITORIAL
   ========================= */

.section.cc-news-lux{
  padding-top: 9rem;
  padding-bottom: 6rem;
  background: var(--white);
}

.news-top{
  width: 100%;
  max-width: 1240px;
  margin: 0 auto 2.2rem auto;
}

.news-kicker{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom: 18px;
}

.news-kicker-line{
  width: 46px;
  height: 1px;
  background: var(--primary-brown);
  opacity: .9;
}

.news-kicker-text{
  font-size: 12px;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--primary-black);
  opacity: .75;
}

.news-top-row{
  display:flex;
  align-items:flex-end;
  justify-content: space-between;
  gap: 18px;
}

.news-page-title{
  font-family: "Playfair Display", serif;
  font-weight: 500;
  font-size: 56px;
  line-height: 1.05;
  color: var(--primary-black);
  text-transform: none;
}

.news-search{
  display:flex;
  align-items:center;
  gap: 10px;
  border: 1px solid rgba(0,0,0,.12);
  border-radius: 999px;
  padding: 12px 16px;
  min-width: 320px;
  background: rgba(255,255,255,.6);
}

.news-search i{ opacity: .6; }
.news-search-input{
  border: none;
  outline: none;
  width: 100%;
  background: transparent;
  font-size: 14px;
  color: var(--primary-black);
}

/* Featured Hero */
.news-hero{
  width: 100%;
  max-width: 1240px;
  margin: 0 auto 1.5rem auto;
  border-radius: 28px;
  overflow: hidden;
  position: relative;
  box-shadow: 0 26px 70px rgba(0,0,0,.12);
}

.news-hero-link{
  display:block;
  position: relative;
  min-height: 520px;
}

.news-hero-media{
  position:absolute;
  inset:0;
  background-size: cover;
  background-position: center;
  transform: scale(1);
  transition: transform .9s ease;
}

.news-hero-overlay{
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(0,0,0,.05), rgba(0,0,0,.62));
}

.news-hero-content{
  position:absolute;
  left: 40px;
  right: 40px;
  bottom: 34px;
  color: #fff;
  max-width: 860px;
}

.news-hero-title{
  font-family: "Playfair Display", serif;
  font-size: 40px;
  line-height: 1.15;
  margin: 14px 0 10px 0;
  color: #fff;
  text-transform: none;
}

.news-hero-excerpt{
  color: rgba(255,255,255,.85);
  font-size: 15px;
  line-height: 1.65;
  max-width: 660px;
  margin-top: 0;
}

.news-hero-cta{
  display:flex;
  align-items:center;
  gap: 10px;
  margin-top: 18px;
  font-size: 14px;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.news-cta-arrow{ transform: translateX(0); transition: transform .35s ease; }

.news-hero:hover .news-hero-media{ transform: scale(1.05); }
.news-hero:hover .news-cta-arrow{ transform: translateX(6px); }

/* Meta */
.news-meta{
  display:flex;
  align-items:center;
  gap: 10px;
  font-size: 12px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: rgba(255,255,255,.82);
}

.news-meta.small{
  color: rgba(0,0,0,.65);
  font-size: 11px;
}

.news-chip{
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.3);
  background: rgba(0,0,0,.18);
  backdrop-filter: blur(10px);
}

.news-dot{
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: currentColor;
  opacity: .65;
}

/* Proof badge */
.news-proof{
  display:flex;
  align-items:center;
  gap: 10px;
  margin-top: 14px;
}

.news-proof-label{
  font-size: 12px;
  letter-spacing: .10em;
  text-transform: uppercase;
  color: rgba(255,255,255,.72);
}

.news-proof-badge{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.22);
  backdrop-filter: blur(10px);
  color: #fff;
  transition: background .35s ease, transform .35s ease;
}

.news-proof-badge:hover{
  background: rgba(255,255,255,.18);
  transform: translateY(-1px);
}

/* Filters */
.news-filters{
  width: 100%;
  max-width: 1240px;
  margin: 0 auto 26px auto;
  display:flex;
  gap: 10px;
  flex-wrap: wrap;
}

.news-filter{
  border: 1px solid rgba(0,0,0,.14);
  border-radius: 999px;
  padding: 10px 14px;
  background: transparent;
  font-size: 12px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--primary-black);
  opacity: .85;
  transition: all .25s ease;
}

.news-filter:hover{ background: rgba(0,0,0,.04); }
.news-filter.is-active{
  border-color: rgba(0,0,0,.18);
  background: rgba(0,0,0,.06);
  opacity: 1;
}

/* Grid */
.news-grid{
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

.news-card{
  border-radius: 22px;
  overflow: hidden;
  border: 1px solid rgba(0,0,0,.08);
  background: #fff;
  box-shadow: 0 18px 50px rgba(0,0,0,.06);
  transition: transform .35s ease, box-shadow .35s ease;
}

.news-card:hover{
  transform: translateY(-4px);
  box-shadow: 0 26px 70px rgba(0,0,0,.10);
}

.news-card-media{
  position: relative;
  aspect-ratio: 16/10;
  overflow: hidden;
}

.news-card-media img{
  width:100%;
  height:100%;
  object-fit: cover;
  transform: scale(1);
  transition: transform .9s ease;
}

.news-card:hover .news-card-media img{ transform: scale(1.05); }

.news-card-body{
  padding: 18px 18px 20px 18px;
}

.news-card-title{
  font-family: "Playfair Display", serif;
  font-size: 22px;
  line-height: 1.22;
  margin: 10px 0 10px 0;
  color: var(--primary-black);
  text-transform: none;
}

.news-card-excerpt{
  font-size: 14px;
  line-height: 1.65;
  color: rgba(0,0,0,.68);
  margin: 0;
}

.news-card-cta{
  display:flex;
  justify-content: space-between;
  align-items:center;
  margin-top: 16px;
  font-size: 12px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--primary-black);
  opacity: .85;
}

.news-loadmore{
  width: 100%;
  max-width: 1240px;
  margin: 34px auto 0 auto;
  display:flex;
  justify-content: center;
}

/* Responsive */
@media (max-width: 991px){
  .news-page-title{ font-size: 44px; }
  .news-hero-link{ min-height: 440px; }
  .news-grid{ grid-template-columns: repeat(2, 1fr); }
  .news-search{ min-width: 260px; }
}

@media (max-width: 767px){
  .news-top-row{ flex-direction: column; align-items: flex-start; }
  .news-search{ width: 100%; min-width: 0; }
  .news-hero-content{ left: 18px; right: 18px; bottom: 18px; }
  .news-hero-title{ font-size: 30px; }
  .news-grid{ grid-template-columns: 1fr; }
}


/* =========================
   NEWSLETTER CTA – LUXURY
   ========================= */

.section.cc-newsletter-cta{
  padding-top: 6rem;
  padding-bottom: 6rem;
  background: linear-gradient(
    180deg,
    rgba(0,0,0,0.02),
    rgba(0,0,0,0.06)
  );
}

.newsletter-cta-card{
  max-width: 1240px;
  margin: 0 auto;
  padding: 48px 56px;
  border-radius: 28px;
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 48px;

  background: rgba(255,255,255,0.85);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);

  border: 1px solid rgba(0,0,0,0.08);
  box-shadow: 0 40px 90px rgba(0,0,0,0.08);
}

/* Left */
.newsletter-kicker{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom: 16px;
}

.newsletter-line{
  width: 42px;
  height: 1px;
  background: var(--primary-brown);
}

.newsletter-kicker-text{
  font-size: 12px;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--primary-black);
  opacity: .75;
}

.newsletter-title{
  font-family: "Playfair Display", serif;
  font-size: 42px;
  line-height: 1.15;
  font-weight: 500;
  margin-bottom: 14px;
  color: var(--primary-black);
  text-transform: none;
}

.newsletter-desc{
  font-size: 15px;
  line-height: 1.7;
  color: rgba(0,0,0,0.68);
  max-width: 520px;
}

.newsletter-trust{
  margin-top: 22px;
  display:flex;
  align-items:center;
  gap:10px;
  font-size: 12px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: rgba(0,0,0,0.55);
}

.newsletter-dot{
  width:4px;
  height:4px;
  background: currentColor;
  border-radius:50%;
}

/* Right */
.newsletter-cta-form{
  display:flex;
  flex-direction: column;
  justify-content: center;
}

.newsletter-form{
  display:flex;
  gap: 12px;
}

.newsletter-input{
  flex:1;
  padding: 16px 18px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,0.15);
  font-size: 14px;
  outline: none;
  background: rgba(255,255,255,0.9);
}

.newsletter-input::placeholder{
  color: rgba(0,0,0,0.45);
}

.newsletter-button{
  padding: 16px 26px;
  border-radius: 999px;
  border: none;
  background: var(--primary-black);
  color: #fff;
  font-size: 13px;
  letter-spacing: .18em;
  text-transform: uppercase;
  cursor: pointer;
  display:flex;
  align-items:center;
  gap: 8px;
  transition: all .35s ease;
}

.newsletter-button:hover{
  background: var(--primary-brown);
}

.newsletter-arrow{
  transform: translateX(0);
  transition: transform .35s ease;
}

.newsletter-button:hover .newsletter-arrow{
  transform: translateX(6px);
}

.newsletter-note{
  margin-top: 12px;
  font-size: 12px;
  color: rgba(0,0,0,0.45);
}

/* Responsive */
@media (max-width: 991px){
  .newsletter-cta-card{
    grid-template-columns: 1fr;
    padding: 36px 32px;
  }

  .newsletter-title{
    font-size: 34px;
  }

  .newsletter-form{
    flex-direction: column;
  }

  .newsletter-button{
    justify-content: center;
  }
}


/* change the font size */

:root {
  /* HERO / TITLES */
  --h1-size: 88px;
  --h2-size: 64px;
  --h3-size: 48px;
  --h4-size: 36px;

  /* CONTENT */
  --text-lg: 24px;
  --text-md: 20px;
  --text-sm: 18px;
}


h1 {
  font-size: var(--h1-size);
  line-height: 1.05;
}

h2 {
  font-size: var(--h2-size);
  line-height: 1.1;
}

h3 {
  font-size: var(--h3-size);
  line-height: 1.15;
}

h4 {
  font-size: var(--h4-size);
}

p,
.text,
.body-text {
  font-size: var(--text-md);
  line-height: 1.6;
}


.heading-xl,
.hero-heading {
  font-size: var(--h1-size);
}

.heading-lg {
  font-size: var(--h2-size);
}

.heading-md {
  font-size: var(--h3-size);
}

.text-large {
  font-size: var(--text-lg);
}

.text-regular {
  font-size: var(--text-md);
}

@media (max-width: 991px) {
  :root {
    --h1-size: 64px;
    --h2-size: 48px;
    --h3-size: 36px;
    --text-md: 18px;
  }
}

@media (max-width: 479px) {
  :root {
    --h1-size: 44px;
    --h2-size: 32px;
    --h3-size: 24px;
    --text-md: 16px;
  }
}


/* ===== Legacy Timeline (Luxury / BIG SCALE) ===== */

.legacy-section{
  background: #ffffff;
  padding: 140px 0;
}

.legacy-container{
  width: min(1400px, calc(100% - 64px));
  margin: 0 auto;
}

/* Header */
.legacy-header{
  max-width: 900px;
  margin-bottom: 72px;
}

.legacy-kicker{
  font-family: var(--fonts--heading);
  color: #111111;
  text-transform: uppercase;
  letter-spacing: 0.26em;
  font-size: 13px;
  opacity: 0.65;
  margin-bottom: 18px;
}

.legacy-title{
  font-family: var(--fonts--heading);
  color: #111111;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-weight: 400;
  font-size: clamp(48px, 4.5vw, 72px);
  line-height: 1.08;
  margin: 0 0 22px 0;
}

.legacy-subtitle{
  font-family: var(--fonts--heading);
  color: #111111;
  opacity: 0.70;
  font-size: 22px;
  line-height: 1.85;
  margin: 0;
}

/* Timeline layout */
.legacy-timeline{
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 28px;
  align-items: stretch;
}

/* Subtle baseline */
.legacy-line{
  position: absolute;
  left: 0;
  right: 0;
  top: 30px;
  height: 1px;
  background: rgba(17,17,17,0.12);
}

/* Cards */
.legacy-item{
  position: relative;
  background: #ffffff;
  border: 1px solid rgba(17,17,17,0.10);
  border-radius: 22px;
  padding: 28px 26px 26px 26px;
  box-shadow: 0 28px 80px rgba(17,17,17,0.08);
}

/* Dot on the line */
.legacy-item::before{
  content: "";
  position: absolute;
  top: 22px;
  left: 26px;
  width: 12px;
  height: 12px;
  border-radius: 999px;
  background: #111111;
  box-shadow: 0 0 0 8px rgba(17,17,17,0.10);
}

/* Year */
.legacy-year{
  font-family: var(--fonts--heading);
  color: #111111;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  font-size: 16px;
  margin: 22px 0 14px 0;
}

/* Text */
.legacy-text{
  font-family: var(--fonts--heading);
  color: #111111;
  opacity: 0.72;
  font-size: 18px;
  line-height: 1.85;
  margin: 0;
}

/* Tablet */
@media (max-width: 991px){
  .legacy-section{
    padding: 100px 0;
  }

  .legacy-container{
    width: min(1200px, calc(100% - 48px));
  }

  .legacy-timeline{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .legacy-line{
    display: none;
  }
}

/* Mobile */
@media (max-width: 479px){
  .legacy-section{
    padding: 72px 0;
  }

  .legacy-container{
    width: calc(100% - 32px);
  }

  .legacy-title{
    font-size: 36px;
    letter-spacing: 0.08em;
  }

  .legacy-subtitle{
    font-size: 18px;
  }

  .legacy-timeline{
    grid-template-columns: 1fr;
  }

  .legacy-item{
    padding: 22px 20px;
  }

  .legacy-text{
    font-size: 16px;
  }
}
