:root {
  --background-color--background-primary: var(--base-color-neutral--black);
  --text-color--text-alternate: #f9f9f9;
  --text-color--text-primary: var(--base-color-neutral--black);
  --text-color--text-secondary: var(--base-color-neutral--neutral);
  --background-color--background-success: var(--base-color-system--success-green);
  --text-color--text-success: var(--base-color-system--success-green-dark);
  --border-color--border-primary: var(--base-color-neutral--neutral-lightest);
  --background-color--background-alternate: var(--base-color-neutral--white);
  --background-color--background-secondary: var(--base-color-brand--blue);
  --background-color--background-tertiary: var(--base-color-brand--pink);
  --background-color--background-error: var(--base-color-system--error-red);
  --text-color--text-error: var(--base-color-system--error-red-dark);
  --base-color-neutral--neutral-dark: #444;
  --background-color--background-warning: var(--base-color-system--warning-yellow);
  --text-color--text-warning: var(--base-color-system--warning-yellow-dark);
  --base-color-neutral--neutral-darker: #222;
  --base-color-neutral--neutral: #636363;
  --base-color-neutral--neutral-lightest: #eee;
  --base-color-neutral--white: #fff;
  --base-color-brand--blue-light: #d9e5ff;
  --base-color-brand--blue: #2d62ff;
  --base-color-brand--blue-dark: #080331;
  --base-color-brand--pink-light: #ffaefe;
  --base-color-brand--pink: #dd23bb;
  --base-color-brand--pink-dark: #3c043b;
  --base-color-neutral--black: #000;
  --base-color-neutral--neutral-lighter: #ccc;
  --base-color-neutral--neutral-light: #aaa;
  --base-color-neutral--neutral-darkest: #111;
  --base-color-system--success-green: #cef5ca;
  --base-color-system--success-green-dark: #114e0b;
  --base-color-system--warning-yellow: #fcf8d8;
  --base-color-system--warning-yellow-dark: #5e5515;
  --base-color-system--error-red: #f8e4e4;
  --base-color-system--error-red-dark: #3b0b0b;
  --base-color-system--focus-state: #2d62ff;
  --border-color--border-secondary: var(--base-color-brand--blue);
  --border-color--border-alternate: var(--base-color-neutral--neutral-darker);
  --link-color--link-primary: var(--base-color-brand--blue);
  --link-color--link-secondary: var(--base-color-neutral--black);
  --link-color--link-alternate: var(--base-color-neutral--white);
}

body {
  color: #000;
  letter-spacing: -.04em;
  background-color: #fdfdfd;
  font-family: Tex, Arial, sans-serif;
  font-size: 1rem;
  line-height: normal;
}

h1 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 4rem;
  font-weight: 400;
  line-height: 1.1;
}

h2 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.2;
}

h3 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.2;
}

h4 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.4;
}

h5 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5;
}

h6 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
}

p {
  margin-bottom: 0;
}

a {
  color: inherit;
}

ul, ol {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 1.5rem;
}

li {
  margin-bottom: .25rem;
}

img {
  max-width: 100%;
  display: inline-block;
}

label {
  margin-bottom: .25rem;
  font-weight: 500;
}

blockquote {
  border-left: .25rem solid #e2e2e2;
  margin-bottom: 0;
  padding: 0 1.25rem;
  font-size: 1.25rem;
  line-height: 1.5;
}

figure {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

figcaption {
  text-align: center;
  margin-top: .25rem;
}

.global-styles {
  display: block;
  position: fixed;
  inset: 0% auto auto 0%;
}

.margin-xsmall {
  margin: .5rem;
}

.margin-small {
  margin: 1rem;
}

.margin-medium {
  margin: 2rem;
}

.margin-0 {
  margin: 0;
}

.margin-vertical {
  margin-left: 0;
  margin-right: 0;
}

.margin-top {
  margin-bottom: 0;
  margin-left: 0;
  margin-right: 0;
}

.margin-top.margin-custom0 {
  margin-top: 1.25rem;
}

.heading-style-h3 {
  font-size: 2rem;
  line-height: 1.2;
}

.padding-global {
  padding-left: 2.5rem;
  padding-right: 2.5rem;
}

.padding-global.padding-section-large.is-hero {
  padding-top: 11rem;
}

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

.text-style-italic {
  font-style: italic;
}

.text-style-italic.is-hero-1st-line {
  display: block;
}

.overflow-hidden {
  overflow: hidden;
}

.max-width-large {
  width: 100%;
  max-width: 48rem;
}

.form_input::placeholder, .form_input.is-select-input {
  color: var(--text-color--text-secondary);
}

.form_input {
  border: 1px solid var(--border-color--border-primary);
  color: #969696;
  letter-spacing: -.04em;
  background-color: #f1f1f1;
  border-radius: 100vw;
  min-height: 2.5rem;
  padding: .75rem 1rem;
  font-family: Tex, Arial, sans-serif;
  font-size: 1.0625rem;
  line-height: .929412;
}

.form_input::placeholder, .form_input.is-select-input {
  color: var(--text-color--text-secondary);
}

.form_input.is-text-area {
  border-radius: .9375rem;
  min-height: 8rem;
  padding-top: .75rem;
  font-size: 1rem;
}

.form_input.custom_dropdown {
  -webkit-backdrop-filter: saturate(180%) blur(6px);
  backdrop-filter: saturate(180%) blur(6px);
  background-color: #ecececbf;
  border-style: none;
  font-size: 1.125rem;
  position: relative;
}

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

.heading-style-h2 {
  letter-spacing: -.04em;
  font-size: 3.875rem;
  font-weight: 400;
  line-height: 1.2;
}

.heading-style-h2.text-color-alternate {
  line-height: 1;
}

.container-large {
  width: 100%;
  max-width: 80rem;
  margin-left: auto;
  margin-right: auto;
}

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

.align-center {
  margin-left: auto;
  margin-right: auto;
}

.hide {
  display: none;
}

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

.container-medium {
  width: 100%;
  max-width: 64rem;
  margin-left: auto;
  margin-right: auto;
}

.nav_component {
  will-change: filter;
  background-color: #0000;
  width: 100%;
  padding-top: 1rem;
  padding-bottom: 1rem;
  position: relative;
  inset: 0% 0% auto;
}

.nav_container {
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  max-width: 80rem;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.nav_logo {
  height: 3.7rem;
}

.nav_menu {
  flex: 1;
}

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

.nav_menu_link {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  opacity: .75;
  color: #707070;
  justify-content: flex-start;
  align-items: center;
  margin: 0;
  padding: 1rem;
  text-decoration: none;
  transition: opacity .2s;
  display: inline-flex;
}

.nav_menu_link:hover {
  opacity: 100;
}

.nav_menu_link.o-0 {
  opacity: 0;
}

.section_hero {
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  display: flex;
  position: relative;
}

.hero_grid {
  flex-flow: column;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: center;
  display: flex;
}

.nav_fixed {
  z-index: 999;
  position: fixed;
  inset: 0% 0% auto;
}

.nav-middle {
  z-index: 999;
  flex: 1;
  justify-content: center;
  align-items: center;
  display: flex;
  position: relative;
}

.text-style-secondary {
  font-family: Cormorant Garamond, sans-serif;
  font-style: italic;
  font-weight: 400;
}

.text-style-secondary.is-hero-2nd-line {
  margin-top: -14px;
  font-size: 1.20588em;
  line-height: 1.3;
}

.hero-image-container {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  flex-flow: column;
  flex: 1;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 1170px;
  min-height: 516px;
  margin-top: 4.25rem;
  display: flex;
  position: relative;
}

.hero-image_img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.align-right {
  justify-content: flex-end;
  align-items: center;
  width: 100%;
  display: flex;
}

.hero-image-wrapper {
  border-radius: 48px;
  justify-content: center;
  align-items: flex-end;
  width: 100%;
  max-width: 1170px;
  min-height: 516px;
  padding: 1rem;
  display: flex;
  position: relative;
  overflow: hidden;
}

.hero-image-tag {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  color: #4d9cc5;
  justify-content: flex-start;
  align-items: center;
  margin-right: 3.125rem;
  font-size: 1.0625rem;
  display: flex;
  overflow: hidden;
}

.icon-8px {
  flex: none;
  width: .5rem;
  height: .5rem;
}

.section.deprecated {
  display: none;
}

.sub-hero-p {
  text-align: center;
  letter-spacing: -.05em;
  font-family: Tex, Arial, sans-serif;
  font-size: 3.25rem;
  font-weight: 400;
}

.xl-score-layout {
  grid-column-gap: 5px;
  grid-row-gap: 5px;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.xl-score-wrapper {
  justify-content: flex-start;
  align-items: baseline;
  display: flex;
}

.xl-score-label {
  text-align: center;
  font-size: 1.25rem;
}

.xl-score_outof {
  opacity: .4;
  font-size: 3.3125rem;
}

.xl-score_points {
  font-family: Cormorant Garamond, sans-serif;
  font-size: 180px;
}

.xl-scores-wrapper {
  grid-column-gap: 9.375rem;
  grid-row-gap: 9.375rem;
  flex-flow: wrap;
  justify-content: center;
  align-items: flex-start;
  display: flex;
}

.hero-h1 {
  text-align: center;
  font-size: 6.375rem;
  line-height: 1;
}

.hero-search-cta {
  grid-column-gap: 14px;
  grid-row-gap: 14px;
  -webkit-backdrop-filter: blur(40px);
  backdrop-filter: blur(40px);
  color: #ffffffb3;
  background-color: #fff3;
  border-radius: 100vw;
  justify-content: center;
  align-items: center;
  padding: 1.1875rem 2rem;
  font-size: 1.5625rem;
  text-decoration: none;
  display: flex;
  position: relative;
  overflow: hidden;
}

.review-layout {
  grid-template-rows: auto;
  grid-template-columns: 1fr minmax(200px, 2fr);
  grid-auto-rows: auto;
  grid-auto-columns: 1fr;
  grid-auto-flow: column;
  display: grid;
}

.testimonial-container {
  width: 100%;
  max-width: 84rem;
  margin-left: auto;
  margin-right: auto;
}

.guest-experience {
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-start;
  padding-bottom: 24px;
  display: flex;
}

.testimonial-data-img {
  width: 100%;
  padding-right: 4.75rem;
}

.testimonial-cards-grid {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  border-radius: 55px;
  grid-template-rows: minmax(470px, 1fr) minmax(470px, 1fr);
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  margin-left: 80px;
  display: grid;
  overflow: hidden;
}

.testimonial-cards_item {
  position: relative;
  overflow: hidden;
}

.testimonial-card_bg-shadow {
  z-index: 1;
  object-fit: fill;
  background-image: linear-gradient(0deg, #000000ad 20%, #0000 57%), linear-gradient(189deg, #00000080, #0000 40%);
  width: 100%;
  height: 100%;
  position: absolute;
}

.testimonial-card_layout {
  z-index: 2;
  flex-flow: column;
  justify-content: space-between;
  height: 100%;
  padding: 1.5rem;
  display: flex;
  position: relative;
}

.testimonial-card_link {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  color: #fff;
  justify-content: flex-start;
  align-items: center;
  margin-left: auto;
  font-size: 1.125rem;
  display: flex;
}

.testimonial-card-link_room-cover {
  border: 1px solid #fff;
  border-radius: 10px;
  width: 40px;
  height: 40px;
}

.testimonial-card_guest-wrapper {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  flex-flow: column;
  display: flex;
}

.testimonial-guest-pic-wrapper {
  grid-column-gap: 8px;
  grid-row-gap: 8px;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.testimonial-card-review {
  color: #fffc;
}

.testimonial-card-guestinfo {
  color: #fff;
  flex-flow: column;
  font-size: 1.15625rem;
  display: flex;
}

.testimonial-guest-propic {
  object-fit: contain;
  width: 49px;
  height: auto;
}

.testimonial-card_bg {
  z-index: 0;
  object-fit: cover;
  background-image: url("https://cdn.prod.website-files.com/682f9113614ab88401df6cde/682f9113614ab88401df6d29_WhatsApp%20Image%202025-04-22%20at%2013.30.09.jpeg");
  background-position: 0 0;
  background-size: auto;
  width: 100%;
  max-width: none;
  height: 100%;
  position: absolute;
}

.cta-card {
  border-radius: 2.875rem;
  justify-content: flex-start;
  align-items: stretch;
  min-height: 530px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.cta-card_content-wrapper {
  -webkit-backdrop-filter: blur(26px);
  backdrop-filter: blur(26px);
  background-color: #dadada99;
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  max-width: 56ch;
  padding: 5.625rem 4rem;
  display: flex;
}

.gold-tag {
  border-style: undefined;
  -webkit-backdrop-filter: blur(49.0131px);
  backdrop-filter: blur(49.0131px);
  background-color: #fffff7;
  background-image: linear-gradient(270deg, #834f1c40, #be832740 34%, #e7b94c40 50%, #bf872c40 80%, #e7b84c40);
  border-width: 1.25px;
  border-color: #daa21f;
  border-radius: 9px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: .3125rem 1.09375rem;
  text-decoration: none;
  display: flex;
}

.tariffa-text {
  color: #1f1817;
  letter-spacing: -.04em;
  -webkit-text-fill-color: transparent;
  background-image: linear-gradient(-89.62deg, #834f1c, #be8327 34%, #e7b94c 50%, #bf872c 80%, #e7b84c);
  -webkit-background-clip: text;
  background-clip: text;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.5;
  text-decoration: none;
}

.cta-card-button {
  -webkit-backdrop-filter: blur(11.5px);
  backdrop-filter: blur(11.5px);
  background-color: #ffffffb3;
  border-radius: 9999px;
  flex: 0 auto;
  justify-content: center;
  align-items: center;
  padding: .625rem 1.75rem;
  text-decoration: none;
  display: flex;
  overflow: hidden;
}

.cta-card-button-text {
  color: #444;
  letter-spacing: -.04em;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 14px;
  font-weight: 400;
  text-decoration: none;
}

.faq-layout {
  grid-template-rows: auto;
  grid-template-columns: 1fr minmax(200px, 2fr);
  grid-auto-rows: auto;
  grid-auto-columns: 1fr;
  grid-auto-flow: column;
  display: grid;
}

.cta-secondary {
  color: #494949;
  background-color: #ecececbf;
  border-radius: 100vw;
  flex: 0 auto;
  justify-content: center;
  align-items: center;
  padding: .78125rem 1.3125rem;
  font-size: 1.0625rem;
  text-decoration: none;
  display: inline-flex;
  overflow: hidden;
}

.cta-secondary.is-booknow {
  -webkit-backdrop-filter: saturate(180%) blur(16px);
  backdrop-filter: saturate(180%) blur(16px);
  background-color: #c2c2c247;
}

.cta-secondary-text {
  color: #5e5e5e;
  letter-spacing: -.04em;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 17px;
  font-weight: 400;
  text-decoration: none;
}

.faq-header-col {
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-start;
  padding-bottom: 24px;
  display: flex;
}

.faq-item {
  grid-row-gap: 8px;
  background-color: #f1f1ef80;
  border-radius: 14px;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  padding: 1rem 1.4375rem;
  text-decoration: none;
  display: flex;
  overflow: hidden;
}

.faq-question {
  color: #000;
  letter-spacing: -.04em;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1.5rem;
  font-weight: 400;
  text-decoration: none;
}

.faq-answer {
  opacity: .6;
  color: #000;
  letter-spacing: -.04em;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: 400;
  text-decoration: none;
}

.faq-items-wrapper {
  grid-column-gap: .75rem;
  grid-row-gap: .75rem;
  flex-flow: column;
  display: flex;
}

.payment-methods {
  grid-column-gap: 7px;
  flex-wrap: wrap;
  flex: 0 auto;
  justify-content: flex-start;
  align-items: flex-start;
  text-decoration: none;
  display: flex;
}

.payment-method_img {
  object-fit: cover;
}

.show-tablet {
  display: none;
}

.footer-container {
  width: 100%;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
}

.padding-global-sm {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.padding-global-sm.padding-section-medium.is-footer {
  padding-bottom: 1.5rem;
}

.footer-card {
  border-radius: 24px;
  min-height: 564px;
  position: relative;
  overflow: hidden;
}

.footer-card-content {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  -webkit-backdrop-filter: blur(26px);
  backdrop-filter: blur(26px);
  background-color: #dadada99;
  flex-flow: wrap;
  justify-content: space-between;
  align-items: center;
  max-height: none;
  padding: 1.875rem 1.5rem;
  display: flex;
  position: absolute;
  inset: auto 0% 0%;
}

.footer-bg-video {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.footer-info-wrapper {
  grid-row-gap: 8px;
  flex-direction: column;
  flex: none;
  justify-content: flex-start;
  align-items: flex-start;
  max-width: 100%;
  text-decoration: none;
  display: flex;
}

.copyright-notice {
  opacity: .6;
  color: #000;
  letter-spacing: -.05em;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 13px;
  font-weight: 400;
  line-height: 100%;
  text-decoration: none;
}

.links-container {
  grid-column-gap: 8px;
  grid-row-gap: 6px;
  flex-flow: wrap;
  flex: 0 auto;
  justify-content: flex-start;
  align-items: center;
  padding-bottom: 2px;
  text-decoration: none;
  display: flex;
  overflow: hidden;
}

.footer-links {
  opacity: .6;
  color: var(--base-color-neutral--neutral-darker);
  letter-spacing: -.05em;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 13px;
  font-weight: 400;
  line-height: 100%;
  text-decoration: underline;
  transition: opacity .2s;
}

.footer-links:hover {
  opacity: 100;
}

.hero-search-cta-icon {
  flex: none;
  width: auto;
  height: 34px;
}

.hero-search-text {
  flex: none;
}

.pre-nav {
  position: relative;
}

.prenav-gradient-wrapper {
  border: 1px undefined undefined;
  background-image: linear-gradient(267.67deg, #fde7bb, #9e6d38 20%, #e9b86e 50%, #9d6933 66%, #fee9bf 83%, #683e23);
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 1px;
  text-decoration: none;
  display: flex;
}

.prenav-inner-content {
  background-color: #fff;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding-top: 7px;
  padding-bottom: 7px;
  display: flex;
  overflow: hidden;
}

.prenav_star {
  object-fit: cover;
  justify-content: center;
  align-items: center;
  width: 17px;
  height: 17px;
  text-decoration: none;
  display: flex;
}

.tariffa-text-2 {
  color: #111;
  letter-spacing: -.04em;
  -webkit-text-fill-color: transparent;
  background-image: linear-gradient(270deg, #683e23 0%, #9d6933 34%, #d49d4b 50%, #9e6d38 80%, #d49d4b 100%);
  -webkit-background-clip: text;
  background-clip: text;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 16px;
  font-weight: 400;
  line-height: 125%;
  text-decoration: none;
}

.prenav-marquee-row {
  grid-column-gap: 5px;
  grid-row-gap: 5px;
  background-color: #fff;
  flex: none;
  justify-content: center;
  align-items: center;
  display: flex;
  overflow: hidden;
}

.prenav-marquee-row.hide-mobile-portrait {
  display: none;
}

.home-item_layout {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  flex-flow: column;
  display: flex;
}

.home-item_image-wrapper {
  grid-column-gap: 4px;
  grid-row-gap: 4px;
  border-radius: 1.625rem;
  justify-content: flex-end;
  align-items: flex-start;
  min-height: 232px;
  padding: .875rem;
  display: flex;
  position: relative;
  overflow: hidden;
}

.home_image-slider {
  object-fit: cover;
  background-color: #f5f5f5;
  width: 100%;
  max-width: none;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.home-item_guest-container {
  z-index: 2;
  grid-column-gap: 3px;
  grid-row-gap: 3px;
  -webkit-backdrop-filter: blur(9px);
  backdrop-filter: blur(9px);
  color: #fff;
  background-color: #fff6;
  border-radius: 100vw;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: center;
  align-items: center;
  padding-left: 12px;
  padding-right: 12px;
  display: inline-flex;
  position: relative;
}

.home-item_guest-icon {
  width: 12px;
  height: 12px;
}

.home-item_info-wrapper {
  text-decoration: none;
}

.home-item_location {
  color: #7f7e7d;
  font-size: 1.0625rem;
}

.home-item_name {
  font-size: 1.3125rem;
}

.home-wrapper {
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  max-width: 1092px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.home-grid {
  grid-column-gap: 2.8125rem;
  grid-row-gap: 3.125rem;
  grid-template-rows: auto;
  grid-template-columns: repeat(auto-fit, minmax(330px, 1fr));
  grid-auto-flow: row dense;
  max-width: 100%;
  display: grid;
}

.home-header {
  grid-column-gap: 3.125rem;
  grid-row-gap: 3.125rem;
  flex-flow: column;
  margin-bottom: 3.75rem;
  display: flex;
}

.cta-card-background-image {
  z-index: -2;
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  inset: 0%;
}

.image-cover {
  object-fit: cover;
  object-position: 100% 50%;
  width: 100%;
  min-width: 100%;
  max-width: none;
  height: 100%;
  min-height: 100%;
  position: absolute;
  inset: 0%;
}

.inline-link-icon {
  width: 1.5rem;
  height: 1.5rem;
}

.slider-arrow {
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  display: flex;
  position: relative;
}

.slider-arrow.left {
  transform: rotate(-180deg);
}

.slider-button {
  z-index: 2;
  opacity: .75;
  justify-content: center;
  align-items: center;
  width: auto;
  padding-left: 1rem;
  padding-right: 1rem;
  transition: opacity .2s;
  display: flex;
}

.slider-button:hover {
  opacity: 100;
}

.home-slider-img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.home-grid-divider {
  background-color: #9e9e9e73;
  max-width: 536px;
  height: 1px;
  margin: 3.6rem auto;
  display: block;
}

.home-grid-controls-wrapper {
  z-index: 10;
  margin-top: -9.375rem;
  padding-top: 9.375rem;
}

.home-grid-wrapper {
  position: relative;
}

.home-grid_controls-wrapper {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  flex-flow: wrap;
  justify-content: center;
  align-items: center;
  margin-bottom: 3.75rem;
  display: flex;
}

.navbar-padding {
  padding-left: 2.5rem;
  padding-right: 2.5rem;
}

.navbar-padding.padding-section-large.is-hero {
  padding-top: 12.944rem;
}

.footer-home {
  text-decoration: none;
  transition: opacity .2s;
}

.footer-home:hover {
  opacity: .6;
}

.footer-brand {
  height: 5.3rem;
}

.footer-homes-wrapper {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  max-height: 100%;
  display: flex;
}

.footer-homes-collection {
  height: 100%;
  display: flex;
}

.footer-homes-list {
  grid-column-gap: 1.5rem;
  grid-row-gap: .4375rem;
  flex-flow: wrap;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  grid-auto-flow: row;
  display: grid;
}

.footer-homes-list.is-villas {
  grid-template-columns: 1fr;
}

.footer-home-item {
  flex: none;
  overflow: hidden;
}

.custom_dropdown-list {
  background-color: #ececec;
  border-radius: .9375rem;
  max-height: 7.8125rem;
  margin-top: .5625rem;
  padding: 0;
  overflow: auto;
}

.custom_dropdown-list.w--open {
  top: 100%;
  left: 0;
}

.custom_dropdown-toggle {
  grid-column-gap: 7px;
  grid-row-gap: 7px;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  padding: 0;
  display: flex;
}

.dropdown-icon {
  margin: 0;
  position: relative;
}

.dropdown-location-list-wrapper {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  flex-flow: column;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: flex;
}

.dropdown-location-list {
  flex-flow: column;
  width: 100%;
  display: flex;
}

.dropdown-location_item {
  color: #707070;
  white-space: nowrap;
  cursor: pointer;
  border-bottom: 1px solid #ffffff80;
  padding: .5rem 1rem;
  font-size: 1rem;
  line-height: 1.25;
  text-decoration: none;
  display: inline-flex;
}

.dropdown-location_item.w--current {
  text-decoration: underline;
}

.home-toggles-wrapper {
  grid-column-gap: 4px;
  grid-row-gap: 4px;
  display: flex;
}

.home-toggle-input {
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
  color: #707070b5;
  cursor: pointer;
  background-color: #ecececbf;
  border-radius: 100vw;
  flex: 0 auto;
  justify-content: flex-start;
  align-items: center;
  padding: 12.4663px 21.0969px;
  text-decoration: none;
  display: flex;
  overflow: hidden;
}

.home-toggle-input.active {
  color: #000;
  background-color: #fff;
  box-shadow: 0 1px 9px #0003;
}

.toggle-text {
  letter-spacing: -.04em;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1.0625rem;
  font-weight: 400;
  line-height: 15.77px;
  text-decoration: none;
}

.custom-dropdown-wrapper {
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.custom-dropdown-clear_icon {
  justify-content: center;
  align-items: center;
  width: 10716rem;
  height: .625rem;
  display: flex;
}

.custom-dropdown-clear {
  opacity: .6;
  color: #000;
  cursor: pointer;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  transition: transform .2s, opacity .2s;
  display: flex;
}

.custom-dropdown-clear:hover {
  opacity: .4;
  transform: scale(.95);
}

.custom-dropdown-clear:active {
  transform: scale(.7);
}

.cta-card-video-bg {
  object-fit: cover;
  transform-style: preserve-3d;
  width: 100%;
  min-width: 100%;
  max-width: none;
  height: 100%;
  min-height: 100%;
  position: absolute;
  inset: 0%;
  transform: rotateX(0)rotateY(-180deg)rotateZ(0);
}

.home-empty-state {
  color: #7e7e7e;
  text-align: center;
  background-color: #fff0;
  display: none;
}

.prenav_text {
  color: #111;
  letter-spacing: -.04em;
  -webkit-text-fill-color: transparent;
  background-image: linear-gradient(270deg, #683e23, #9d6933 34%, #d49d4b 50%, #9e6d38 80%, #d49d4b);
  -webkit-background-clip: text;
  background-clip: text;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 16px;
  font-weight: 700;
  line-height: 125%;
  text-decoration: none;
}

.home_image-wrapper {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.cta-paragraph {
  color: var(--text-color--text-alternate);
}

.home-item_image-url {
  z-index: 1;
  position: absolute;
  inset: 0%;
}

.icon-1x1-xsm {
  flex: none;
  width: .875rem;
  height: .875rem;
  display: block;
}

.locales-wrapper_toggle {
  grid-column-gap: 6px;
  grid-row-gap: 6px;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

@media screen and (max-width: 991px) {
  .padding-xlarge {
    padding: 3rem;
  }

  .margin-xlarge {
    margin: 3rem;
  }

  .padding-xhuge {
    padding: 6rem;
  }

  .padding-xxhuge {
    padding: 8rem;
  }

  .padding-huge {
    padding: 5rem;
  }

  .margin-large {
    margin: 2.5rem;
  }

  .padding-xxlarge {
    padding: 4rem;
  }

  .padding-large {
    padding: 2.5rem;
  }

  .margin-huge {
    margin: 5rem;
  }

  .padding-medium {
    padding: 1.5rem;
  }

  .margin-xxlarge {
    margin: 4rem;
  }

  .margin-xhuge {
    margin: 6rem;
  }

  .margin-medium {
    margin: 1.5rem;
  }

  .margin-xxhuge {
    margin: 8rem;
  }

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

  .padding-top {
    padding-bottom: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .margin-vertical {
    margin-left: 0;
    margin-right: 0;
  }

  .margin-bottom {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .padding-left {
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 0;
  }

  .padding-vertical {
    padding-left: 0;
    padding-right: 0;
  }

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

  .margin-right {
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
  }

  .margin-top {
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .margin-top.margin-small.align-center-tablet {
    text-align: center;
    text-align: center;
    text-align: center;
  }

  .margin-left {
    margin-top: 0;
    margin-bottom: 0;
    margin-right: 0;
  }

  .padding-right {
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 0;
  }

  .padding-bottom {
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .hide-tablet {
    display: none;
  }

  .fs-styleguide_2-col {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    grid-template-columns: 1fr;
  }

  .max-width-full-tablet {
    width: 100%;
    max-width: none;
  }

  .fs-styleguide_1-col {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
  }

  .fs-styleguide_heading-medium {
    font-size: 3rem;
  }

  .fs-styleguide_4-col {
    grid-template-columns: 1fr;
  }

  .padding-section-large {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }

  .fs-styleguide_3-col {
    grid-template-columns: 1fr;
  }

  .fs-styleguide_section {
    grid-column-gap: 2.5rem;
    grid-template-columns: 1fr;
  }

  .padding-section-medium {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  .spacer-huge {
    padding-top: 5rem;
  }

  .spacer-medium {
    padding-top: 1.5rem;
  }

  .spacer-xhuge {
    padding-top: 6rem;
  }

  .spacer-xxhuge {
    padding-top: 8rem;
  }

  .spacer-xlarge {
    padding-top: 3rem;
  }

  .spacer-large {
    padding-top: 2.5rem;
  }

  .spacer-xxlarge {
    padding-top: 4rem;
  }

  .nav_menu_link.o-0 {
    opacity: 0;
    opacity: 0;
  }

  .nav_button {
    color: #fff;
  }

  .section_hero {
    padding-top: 3rem;
  }

  .hero_grid {
    grid-template-columns: 1fr;
  }

  .fs-styleguide_heading-header {
    font-size: 4rem;
  }

  .review-layout {
    flex-flow: column;
    grid-template-columns: 1fr;
    grid-auto-flow: column;
    display: flex;
  }

  .testimonial-data-img {
    max-width: 360px;
  }

  .testimonial-cards-grid {
    margin-left: 0;
  }

  .cta-card {
    flex-flow: column-reverse wrap;
    min-height: 640px;
  }

  .cta-card_content-wrapper {
    max-width: none;
    padding: 2.472rem;
    position: absolute;
    inset: auto 0% 0%;
  }

  .cta-card-background-video {
    height: 85vw;
    min-height: 650px;
    position: relative;
  }

  .faq-layout {
    flex-flow: column;
    grid-template-columns: 1fr;
    grid-auto-flow: column;
    display: flex;
  }

  .faq-header-col {
    text-align: center;
    justify-content: space-between;
    align-items: center;
  }

  .show-tablet {
    display: block;
  }

  .footer-card-content {
    height: auto;
    max-height: 100%;
  }

  .form-grid {
    flex-flow: column-reverse wrap;
    grid-template-columns: 1fr;
    grid-auto-flow: row;
    display: flex;
  }

  .form-image {
    min-height: 530px;
  }

  .form-wrapper-layout {
    padding-left: 0%;
    padding-right: 0%;
  }

  .divider.is-form-contacts {
    display: none;
  }

  .cta-card-background-image {
    height: 85vw;
    min-height: 650px;
    position: relative;
  }

  .home-desc_p {
    width: auto;
  }

  .home-grid-photos {
    flex-flow: column;
    height: 80vw;
    display: flex;
  }

  .home-photo-grid_left {
    flex: 1;
    width: 100%;
    height: 50%;
    display: block;
  }

  .home-photo-grid_right {
    flex: 0 auto;
    grid-template-rows: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    width: 100%;
    max-width: 100%;
    height: 50%;
    overflow: hidden;
  }

  .home-photo-grid_right-img {
    object-fit: cover;
    display: block;
  }

  .location-right {
    min-width: auto;
  }

  .home-address-wrapper {
    margin-top: 3.375rem;
  }

  .navbar-padding {
    padding-left: .8125rem;
    padding-right: .8125rem;
  }

  .villa-shocase-wrapper {
    min-height: 120vw;
  }

  .select-field, .fs-selectcustom_message {
    display: none;
  }

  .cta-card-video-bg {
    transform: rotate(0);
  }

  .debug {
    flex-flow: column;
    height: 80vw;
    display: flex;
  }

  .home-photo-grid_right-row {
    flex: 0 auto;
    grid-template-rows: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    width: 100%;
    max-width: 100%;
    height: 50%;
    overflow: hidden;
  }
}

@media screen and (max-width: 767px) {
  h1 {
    font-size: 2.5rem;
  }

  h2 {
    font-size: 2rem;
  }

  h3 {
    font-size: 1.5rem;
  }

  h4 {
    font-size: 1.25rem;
  }

  h5 {
    font-size: 1rem;
  }

  h6 {
    font-size: .875rem;
  }

  .padding-xlarge {
    padding: 2rem;
  }

  .margin-xlarge {
    margin: 2rem;
  }

  .padding-xhuge {
    padding: 4rem;
  }

  .padding-xxhuge {
    padding: 4.5rem;
  }

  .padding-huge {
    padding: 3.5rem;
  }

  .margin-large {
    margin: 1.5rem;
  }

  .padding-xxlarge {
    padding: 3rem;
  }

  .padding-large {
    padding: 1.5rem;
  }

  .margin-huge {
    margin: 3.5rem;
  }

  .padding-medium {
    padding: 1.25rem;
  }

  .margin-xxlarge {
    margin: 3rem;
  }

  .margin-xhuge {
    margin: 4rem;
  }

  .margin-medium {
    margin: 1.25rem;
  }

  .margin-xxhuge {
    margin: 4.5rem;
  }

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

  .padding-top {
    padding-bottom: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .margin-vertical {
    margin-left: 0;
    margin-right: 0;
  }

  .margin-bottom {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .padding-left {
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 0;
  }

  .padding-vertical {
    padding-left: 0;
    padding-right: 0;
  }

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

  .margin-right {
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
  }

  .margin-top {
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .margin-left {
    margin-top: 0;
    margin-bottom: 0;
    margin-right: 0;
  }

  .padding-right {
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 0;
  }

  .padding-bottom {
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .hide-mobile-landscape {
    display: none;
  }

  .heading-style-h3 {
    font-size: 1.5rem;
  }

  .heading-style-h1 {
    font-size: 2.5rem;
  }

  .padding-global {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .padding-global.padding-section-large.is-hero {
    padding-top: 7.99939rem;
  }

  .padding-section-small {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

  .fs-styleguide_section-header {
    font-size: .875rem;
  }

  .fs-styleguide_heading-medium {
    font-size: 2rem;
  }

  .max-width-full-mobile-landscape {
    width: 100%;
    max-width: none;
  }

  .heading-style-h4 {
    font-size: 1rem;
  }

  .text-style-nowrap {
    white-space: normal;
  }

  .heading-style-h6 {
    font-size: .75rem;
  }

  .padding-section-large {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  .text-size-large {
    font-size: 1.25rem;
  }

  .heading-style-h2 {
    font-size: 2.5625rem;
  }

  .heading-style-h5 {
    font-size: .875rem;
  }

  .padding-section-medium {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  .spacer-huge {
    padding-top: 3.5rem;
  }

  .spacer-medium {
    padding-top: 1.25rem;
  }

  .spacer-xhuge {
    padding-top: 4rem;
  }

  .spacer-xxhuge {
    padding-top: 4.5rem;
  }

  .spacer-xlarge {
    padding-top: 2rem;
  }

  .spacer-large {
    padding-top: 1.5rem;
  }

  .spacer-xxlarge {
    padding-top: 3rem;
  }

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

  .nav_logo {
    height: 2.8125rem;
  }

  .text-style-secondary.is-hero-2nd-line {
    font-size: 1.3em;
  }

  .sub-hero-p {
    font-size: 1.9rem;
  }

  .xl-score_outof {
    font-size: 2.04713rem;
  }

  .xl-score_points {
    font-size: 111.24px;
  }

  .xl-scores-wrapper {
    grid-column-gap: 5.79375rem;
    grid-row-gap: 5.79375rem;
  }

  .hero-h1 {
    font-size: 8vw;
  }

  .testimonial-data-img {
    width: 340px;
    padding-right: 0;
  }

  .testimonial-cards-grid {
    border-radius: 0;
    flex-flow: column;
    display: flex;
    overflow: visible;
  }

  .testimonial-cards_item {
    border-radius: 24px;
    overflow: hidden;
  }

  .testimonial-card_layout {
    grid-column-gap: 120px;
    grid-row-gap: 120px;
    height: auto;
  }

  .cta-card-background-video {
    min-height: 720px;
  }

  .faq-question {
    font-size: 1.25rem;
  }

  .padding-global-sm {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .prenav-inner-content {
    grid-column-gap: 8px;
    grid-row-gap: 8px;
  }

  .prenav-marquee-row.hide-mobile-portrait {
    display: flex;
  }

  .form-element-wrapper {
    flex-flow: column;
    justify-content: center;
    align-items: center;
  }

  .cta-card-background-image {
    min-height: 720px;
  }

  .home-header-layout {
    flex-flow: column;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .home-divider {
    display: none;
  }

  .home-location {
    font-size: 1.625rem;
  }

  .home-services-left {
    justify-content: space-between;
    align-items: flex-start;
  }

  .service-icon {
    object-fit: contain;
  }

  .book-overlay-shadow {
    background-image: linear-gradient(0deg, #fff, #0000 85%);
  }

  .home-cta-wrapper {
    display: none;
  }

  .home-photos-wrapper {
    margin-top: 5rem;
  }

  .home-grid-photos {
    height: 520px;
  }

  .home-services-layout {
    justify-content: flex-start;
    align-items: flex-start;
  }

  .modal-close-button {
    width: 21px;
  }

  .home-grid-divider {
    width: 50%;
  }

  .home-grid_controls-wrapper {
    justify-content: space-between;
  }

  .navbar-padding {
    padding-left: 0;
    padding-right: 0;
  }

  .navbar-padding.padding-section-large.is-hero {
    padding-top: 7.99939rem;
  }

  .villa-story_img-wrap {
    width: 100%;
    min-width: auto;
  }

  .image-vibes-wrapper {
    height: 100vw;
    min-height: auto;
    max-height: 90vh;
  }

  .image-vibes-small-wrapper {
    width: 60%;
    min-width: 144px;
    height: 25rem;
  }

  .image-vibes-desc {
    max-width: none;
    margin-top: 3.5535rem;
  }

  .villa-showcase-img1 {
    width: 34vw;
    height: 54vw;
  }

  .villa-showcase-img2 {
    width: 53vw;
    height: 79vw;
  }

  .footer-homes-wrapper {
    display: none;
  }

  .f-v-c {
    flex-flow: column;
    justify-content: flex-start;
    align-items: center;
    display: flex;
  }

  .debug {
    height: 520px;
  }
}

@media screen and (max-width: 479px) {
  .margin-horizontal {
    margin-top: 0;
    margin-bottom: 0;
  }

  .padding-top {
    padding-bottom: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .margin-vertical {
    margin-left: 0;
    margin-right: 0;
  }

  .margin-bottom {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .padding-left {
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 0;
  }

  .padding-vertical {
    padding-left: 0;
    padding-right: 0;
  }

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

  .margin-right {
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
  }

  .margin-top {
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .margin-left {
    margin-top: 0;
    margin-bottom: 0;
    margin-right: 0;
  }

  .padding-right {
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 0;
  }

  .padding-bottom {
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
  }

  .form_form {
    min-width: auto;
    max-width: 100%;
  }

  .fs-styleguide_row {
    flex-wrap: wrap;
  }

  .max-width-full-mobile-portrait {
    width: 100%;
    max-width: none;
  }

  .hide-mobile-portrait {
    display: none;
  }

  .nav_logo {
    width: 5.8rem;
  }

  .hero_heading {
    font-size: 2.5rem;
  }

  .hero-h1 {
    font-size: 13.5vw;
  }

  .hero-search-cta {
    width: 100%;
  }

  .testimonial-data-img {
    width: 300px;
    max-width: 100%;
  }

  .cta-card {
    min-height: 680px;
  }

  .hero-search-cta-icon {
    display: none;
  }

  .form-element-wrapper {
    justify-content: flex-start;
    align-items: flex-start;
  }

  .home-section-hero.ishouse {
    padding-top: 5rem;
  }

  .home-rooms-grid {
    grid-template-columns: repeat(auto-fit, 100%);
  }

  .modal-card {
    max-width: 100%;
  }

  .modal-card-header {
    font-size: 28px;
  }

  .home-grid_controls-wrapper {
    grid-row-gap: .5rem;
    justify-content: center;
    align-items: center;
  }

  .villa-p {
    max-width: none;
  }

  .image-vibes-wrapper {
    height: 120vw;
  }

  .image-vibes-small-wrapper {
    height: 15.45rem;
  }

  .fs-selectcustom_dropdown {
    width: 100%;
  }
}

#w-node-_4d503452-de55-ebf9-5442-b46fc8b22add-01df6cd3, #w-node-_87663d73-e4ab-14a9-ec8b-1dadfb9182dc-fb9182d7 {
  align-self: stretch;
}
