:root {
  --background-color--background-primary: var(--base-color-neutral--beige);
  --_typography---plus-jakarta-sans: "Plus Jakarta Sans", sans-serif;
  --text-color--text-primary: var(--base-color-neutral--black);
  --_font-sizes---other-html-tags--body-all-pages: 1vw;
  --_font-sizes---headings--heading-1: 6vw;
  --_font-sizes---headings--heading-2: 3vw;
  --_font-sizes---headings--heading-3: 2vw;
  --_font-sizes---headings--heading-4: 1.5vw;
  --_font-sizes---headings--heading-5: 1.25vw;
  --_font-sizes---headings--heading-6: 1vw;
  --_font-sizes---other-html-tags--all-paragraphs: 1vw;
  --link-color--link-secondary: var(--base-color-neutral--neutral-light);
  --_font-sizes---other-html-tags--all-links: 1vw;
  --_font-sizes---other-html-tags--all-list-items: 1vw;
  --_font-sizes---other-html-tags--all-quotes: 1vw;
  --text-color--text-alternate: var(--base-color-neutral--white);
  --text-color--text-secondary: var(--base-color-neutral--khaki);
  --background-color--background-success\<deleted\|variable-879e2a57-3170-38fd-0ae7-d0e890873ab2\>: var(--base-color-system--success-green\<deleted\|variable-8fc09a81-a1c7-3c5b-2cf2-835ad5d96212\>);
  --text-color--text-success\<deleted\|variable-17518f72-fb93-45b5-ad9e-fdd3f2b1833a\>: var(--base-color-system--success-green-dark\<deleted\|variable-70ae3530-1c64-4d15-f2af-205678316683\>);
  --_font-sizes---text-classes--text-size-tiny: .75vw;
  --_font-sizes---text-classes--text-size-regular: 1vw;
  --background-color--background-alternate: var(--base-color-neutral--white);
  --_font-sizes---text-classes--text-size-small: .875vw;
  --background-color--background-secondary: var(--base-color-neutral--black);
  --text-color--text-tertiary: var(--base-color-neutral--neutral-light);
  --link-color--link-primary: var(--base-color-neutral--black);
  --_font-sizes---text-classes--text-size-large: 2vw;
  --background-color--background-error\<deleted\|variable-89aecd3e-2fe8-312c-65a2-e3e7c57d326c\>: var(--base-color-system--error-red\<deleted\|variable-ad7a5e8d-bd95-fba4-5110-cbccfa2520c4\>);
  --text-color--text-error\<deleted\|variable-4a51c5d2-820c-a0d9-b49e-0e5d273c964f\>: var(--base-color-system--error-red-dark\<deleted\|variable-f7a8b234-8033-a5d6-4d85-0326277c2bf8\>);
  --_font-sizes---text-classes--text-size-medium: 1.25vw;
  --background-color--background-tertiary: var(--base-color-neutral--khaki);
  --_typography---cormorant-garamond: "Cormorant Garamond", sans-serif;
  --border-color--border-alternate: var(--base-color-neutral--white);
  --base-color-neutral--neutral-light: #aaa;
  --border-color--border-secondary: var(--base-color-neutral--black);
  --base-color-neutral--black: #0c0c0c;
  --base-color-neutral--beige: #fbf8f1;
  --base-color-neutral--khaki: #efe9dd;
  --base-color-neutral--white: #fff;
  --base-color-neutral--neutral-lighter: #ccc;
  --_font-sizes---other-html-tags--all-labels-form: 1vw;
  --border-color--border-primary: var(--base-color-neutral--neutral-lighter);
  --link-color--link-alternate: var(--base-color-neutral--white);
  --base-color-system--success-green\<deleted\|variable-8fc09a81-a1c7-3c5b-2cf2-835ad5d96212\>: #cef5ca;
  --base-color-system--success-green-dark\<deleted\|variable-70ae3530-1c64-4d15-f2af-205678316683\>: #114e0b;
  --base-color-system--error-red\<deleted\|variable-ad7a5e8d-bd95-fba4-5110-cbccfa2520c4\>: #f8e4e4;
  --base-color-system--error-red-dark\<deleted\|variable-f7a8b234-8033-a5d6-4d85-0326277c2bf8\>: #3b0b0b;
}

body {
  background-color: var(--background-color--background-primary);
  font-family: var(--_typography---plus-jakarta-sans);
  color: var(--text-color--text-primary);
  font-size: var(--_font-sizes---other-html-tags--body-all-pages);
  --_font-sizes---other-html-tags--body-all-pages: 1vw;
  --_font-sizes---headings--heading-1: 6vw;
  --_font-sizes---headings--heading-2: 3vw;
  --_font-sizes---headings--heading-3: 2vw;
  --_font-sizes---headings--heading-4: 1.5vw;
  --_font-sizes---headings--heading-5: 1.25vw;
  --_font-sizes---headings--heading-6: 1vw;
  --_font-sizes---other-html-tags--all-paragraphs: 1vw;
  --_font-sizes---other-html-tags--all-links: 1vw;
  --_font-sizes---other-html-tags--all-list-items: 1vw;
  --_font-sizes---other-html-tags--all-quotes: 1vw;
  --_font-sizes---text-classes--text-size-tiny: .75vw;
  --_font-sizes---text-classes--text-size-regular: 1vw;
  --_font-sizes---text-classes--text-size-small: .875vw;
  --_font-sizes---text-classes--text-size-large: 2vw;
  --_font-sizes---text-classes--text-size-medium: 1.25vw;
  --_font-sizes---other-html-tags--all-labels-form: 1vw;
  font-weight: 400;
  line-height: 1.5;
}

h1 {
  font-size: var(--_font-sizes---headings--heading-1);
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 500;
  line-height: 1.1;
}

h2 {
  font-size: var(--_font-sizes---headings--heading-2);
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 500;
  line-height: 1.2;
}

h3 {
  font-size: var(--_font-sizes---headings--heading-3);
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 500;
  line-height: 1.2;
}

h4 {
  font-size: var(--_font-sizes---headings--heading-4);
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 500;
  line-height: 1.4;
}

h5 {
  font-size: var(--_font-sizes---headings--heading-5);
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 500;
  line-height: 1.5;
}

h6 {
  font-size: var(--_font-sizes---headings--heading-6);
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 500;
  line-height: 1.5;
}

p {
  font-size: var(--_font-sizes---other-html-tags--all-paragraphs);
  margin-bottom: 0;
}

a {
  color: var(--link-color--link-secondary);
  font-size: var(--_font-sizes---other-html-tags--all-links);
  text-decoration: none;
}

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

li {
  font-size: var(--_font-sizes---other-html-tags--all-list-items);
  margin-bottom: .25vw;
}

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

label {
  font-weight: 500;
}

blockquote {
  font-size: var(--_font-sizes---other-html-tags--all-quotes);
  border-left: .25rem solid #e2e2e2;
  margin-bottom: 0;
  padding: 0 1.25vw;
  line-height: 1.5;
}

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

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

.utility-page_component {
  justify-content: center;
  align-items: center;
  width: 100vw;
  max-width: 100%;
  height: 100vh;
  max-height: 100%;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  display: flex;
}

.utility-page_wrapper {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  text-align: center;
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  max-width: 20rem;
  display: flex;
}

.utility-page_form {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  display: flex;
}

.utility-page_image {
  margin-left: auto;
  margin-right: auto;
}

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

.margin-custom2 {
  margin: 2.5rem;
}

.padding-xlarge {
  padding: 4rem;
}

.margin-xlarge {
  margin: 4rem;
}

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

.padding-xhuge {
  padding: 8rem;
}

.margin-custom1 {
  margin: 1.5rem;
}

.padding-0 {
  padding: 0;
}

.padding-xxhuge {
  padding: 12rem;
}

.padding-huge {
  padding: 6rem;
}

.margin-large {
  margin: 3rem;
}

.padding-xxlarge {
  padding: 5rem;
}

.margin-xxsmall {
  margin: .25rem;
}

.padding-custom3 {
  padding: 3.5rem;
}

.padding-large {
  padding: 3rem;
}

.margin-tiny {
  margin: .125rem;
}

.padding-small {
  padding: 1rem;
}

.padding-custom2 {
  padding: 2.5rem;
}

.margin-custom3 {
  margin: 3.5rem;
}

.padding-custom1 {
  padding: 1.5rem;
}

.margin-huge {
  margin: 6rem;
}

.padding-medium {
  padding: 2rem;
}

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

.margin-xxlarge {
  margin: 5rem;
}

.padding-xxsmall {
  padding: .25rem;
}

.margin-xhuge {
  margin: 8rem;
}

.padding-tiny {
  padding: .125rem;
}

.margin-small {
  margin: 1rem;
}

.margin-medium {
  margin: 2rem;
}

.margin-xxhuge {
  margin: 12rem;
}

.margin-0 {
  margin: 0;
}

.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_checkbox {
  flex-direction: row;
  align-items: center;
  margin-bottom: .5rem;
  padding-left: 0;
  display: flex;
}

.form_checkbox-icon {
  border-radius: .125rem;
  width: .875rem;
  height: .875rem;
  margin: 0 .5rem 0 0;
}

.form_checkbox-icon.w--redirected-checked {
  background-size: 90%;
  border-radius: .125rem;
  width: .875rem;
  height: .875rem;
  margin: 0 .5rem 0 0;
}

.form_checkbox-icon.w--redirected-focus {
  border-radius: .125rem;
  width: .875rem;
  height: .875rem;
  margin: 0 .5rem 0 0;
  box-shadow: 0 0 .25rem 0 #3898ec;
}

.fs-styleguide_background {
  border: 1px solid #0000001a;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  width: 100%;
  display: flex;
}

.fs-styleguide_spacing {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  background-image: linear-gradient(0deg, #ea9b2d29, #fff0);
  grid-template-rows: auto auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-content: start;
  place-items: start stretch;
  display: grid;
  position: relative;
}

.icon-1x1-small {
  flex: none;
  width: 1.25vw;
  height: 1.25vw;
}

.overflow-auto {
  overflow: auto;
}

.spacing-clean {
  margin: 0;
  padding: 0;
}

.icon-1x1-large {
  width: 2.5vw;
  height: 2.5vw;
}

.form_form {
  grid-column-gap: 1.5vw;
  grid-row-gap: 1.5vw;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

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

.fs-styleguide_background-space {
  width: 1px;
  height: 1px;
  margin: 5rem;
}

.text-weight-semibold {
  font-weight: 600;
}

.text-style-strikethrough {
  text-decoration: line-through;
}

.fs-styleguide_item {
  grid-column-gap: 1.125rem;
  grid-row-gap: 1.125rem;
  border-bottom: 1px solid #0000001a;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-content: start;
  place-items: start;
  padding-bottom: 3rem;
  display: grid;
  position: relative;
}

.fs-styleguide_item.is-stretch {
  justify-items: stretch;
}

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

.fs-styleguide_item-header {
  border-bottom: 1px solid #0000001a;
  width: 100%;
  padding-bottom: 2rem;
}

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

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

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

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

.fs-styleguide_2-col {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.fs-styleguide_2-col.is-align-start {
  align-items: start;
}

.form_message-success {
  background-color: var(--background-color--background-success\<deleted\|variable-879e2a57-3170-38fd-0ae7-d0e890873ab2\>);
  color: var(--text-color--text-success\<deleted\|variable-17518f72-fb93-45b5-ad9e-fdd3f2b1833a\>);
  padding: 1.25rem;
}

.fs-styleguide_row {
  grid-column-gap: .75rem;
  grid-row-gap: .75rem;
  flex-direction: row;
  grid-template-rows: auto;
  grid-template-columns: auto;
  grid-auto-columns: auto;
  grid-auto-flow: column;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.heading-style-h3 {
  font-size: var(--_font-sizes---headings--heading-3);
  font-weight: 500;
  line-height: 1.2;
}

.text-rich-text h1, .text-rich-text h2, .text-rich-text h3, .text-rich-text h4 {
  margin-top: 1.5vw;
  margin-bottom: 1vw;
}

.text-rich-text h5, .text-rich-text h6 {
  margin-top: 1.25vw;
  margin-bottom: 1vw;
}

.text-rich-text p {
  margin-bottom: 1vw;
}

.text-rich-text ul, .text-rich-text ol {
  margin-bottom: 1.5vw;
}

.text-rich-text blockquote {
  margin-top: 2vw;
  margin-bottom: 2vw;
}

.pointer-events-auto {
  pointer-events: auto;
}

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

.icon-height-small {
  height: 1rem;
}

.icon-1x1-medium {
  width: 1.75vw;
  height: 1.75vw;
}

.icon-1x1-medium.fb {
  width: 1.55vw;
  height: 1.55vw;
}

.heading-style-h1 {
  font-size: var(--_font-sizes---headings--heading-1);
  text-transform: uppercase;
  font-weight: 500;
  line-height: 1.1;
}

.heading-style-h1.text-style-allcaps.left {
  text-align: left;
}

.padding-global {
  padding-left: 6vw;
  padding-right: 6vw;
}

.text-weight-normal {
  font-weight: 400;
}

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

.max-width-small {
  width: 100%;
  max-width: 20rem;
}

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

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

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

.text-weight-medium {
  font-weight: 500;
}

.overflow-hidden {
  overflow: hidden;
}

.fs-styleguide_section-header {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  border-bottom: 1px solid #ccc;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  padding-bottom: 3rem;
  line-height: 1.4;
  display: grid;
}

.text-size-tiny {
  font-size: var(--_font-sizes---text-classes--text-size-tiny);
}

.max-width-xxlarge {
  width: 100%;
  max-width: 80rem;
}

.fs-styleguide_1-col {
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.overflow-visible {
  overflow: visible;
}

.fs-styleguide_empty-box {
  z-index: -1;
  background-color: #eaa22d0d;
  border: 1px dashed #ea9b2d;
  min-width: 3rem;
  height: 3rem;
  position: relative;
}

.text-weight-light {
  font-weight: 300;
}

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

.max-width-xsmall {
  width: 100%;
  max-width: 16rem;
}

.fs-styleguide_4-col {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.text-size-regular {
  font-size: var(--_font-sizes---text-classes--text-size-regular);
}

.text-weight-xbold {
  font-weight: 800;
}

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

.text-weight-bold {
  font-weight: 700;
}

.max-width-medium {
  width: 100%;
  max-width: 32rem;
}

.fs-styleguide_item-wrapper {
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

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

.fs-styleguide_header-block {
  z-index: 2;
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-items: center start;
  display: grid;
  position: relative;
}

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

.text-style-muted {
  opacity: .6;
}

.text-size-small {
  font-size: var(--_font-sizes---text-classes--text-size-small);
}

.heading-style-h4 {
  font-size: var(--_font-sizes---headings--heading-4);
  font-weight: 500;
  line-height: 1.4;
}

.form_label {
  margin-bottom: .25vw;
}

.max-width-xlarge {
  width: 100%;
  max-width: 64rem;
}

.form_radio-icon {
  width: .875rem;
  height: .875rem;
  margin-top: 0;
  margin-left: 0;
  margin-right: .5rem;
}

.form_radio-icon.w--redirected-checked {
  border-width: .25rem;
  width: .875rem;
  height: .875rem;
}

.form_radio-icon.w--redirected-focus {
  width: .875rem;
  height: .875rem;
  box-shadow: 0 0 .25rem 0 #3898ec;
}

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

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

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

.form_input {
  background-color: var(--background-color--background-primary);
  border-radius: .75vw;
  min-height: 3.5vw;
  margin-bottom: .5vw;
  padding: 1vw 1.25vw;
}

.form_input::placeholder {
  color: var(--text-color--text-tertiary);
}

.form_input.is-select-input {
  background-image: url('../images/caret-down.svg');
  background-position: 95%;
  background-repeat: no-repeat;
  background-size: 1.25vw 1.25vw;
}

.form_input.is-text-area {
  min-height: 8vw;
  padding-top: .75vw;
}

.form_input.is-date {
  background-image: url('../images/calendar-blank.svg');
  background-position: 95%;
  background-repeat: no-repeat;
  background-size: 1.2vw 1.2vw;
}

.heading-style-h6 {
  font-size: var(--_font-sizes---headings--heading-6);
  font-weight: 500;
  line-height: 1.5;
}

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

.fs-styleguide_3-col {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: stretch;
  width: 100%;
  display: grid;
}

.fs-styleguide_3-col.is-align-start {
  align-items: start;
}

.text-style-link {
  color: var(--link-color--link-primary);
  text-decoration: underline;
}

.text-size-large {
  font-size: var(--_font-sizes---text-classes--text-size-large);
}

.text-size-large.text-weight-medium.loader-text {
  text-align: center;
}

.fs-styleguide_header {
  background-color: var(--background-color--background-primary);
  color: var(--text-color--text-alternate);
  background-image: radial-gradient(circle at 100% 100%, #dd23bb40, #0000 40%), radial-gradient(circle at 0 100%, #2d62ff4d, #0000 60%);
  position: relative;
  overflow: hidden;
}

.heading-style-h2 {
  font-size: var(--_font-sizes---headings--heading-2);
  text-transform: uppercase;
  font-weight: 500;
  line-height: 1.2;
}

.page-wrapper {
  background-color: var(--background-color--background-secondary);
  position: relative;
}

.page-wrapper.is-style-guide, .page-wrapper.is-changelog, .page-wrapper.is-licensing {
  background-color: #fff;
}

.fs-styleguide_label {
  background-color: var(--background-color--background-secondary);
  color: var(--text-color--text-alternate);
  border-radius: .25vw;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  padding: .25rem 1rem .3rem;
  display: flex;
}

.fs-styleguide_label.is-tag {
  color: #0c0c0c;
  background-color: #efe9dd;
}

.heading-style-h5 {
  font-size: var(--_font-sizes---headings--heading-5);
  font-weight: 500;
  line-height: 1.5;
}

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

.icon-height-medium {
  height: 2rem;
}

.text-style-allcaps {
  text-align: center;
  text-transform: uppercase;
}

.overflow-scroll {
  overflow: scroll;
}

.form_message-error {
  background-color: var(--background-color--background-error\<deleted\|variable-89aecd3e-2fe8-312c-65a2-e3e7c57d326c\>);
  color: var(--text-color--text-error\<deleted\|variable-4a51c5d2-820c-a0d9-b49e-0e5d273c964f\>);
  margin-top: .75rem;
  padding: .75rem;
}

.icon-height-large {
  height: 3rem;
}

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

.form_component {
  width: 50%;
  margin-bottom: 0;
}

.main-wrapper {
  z-index: 2;
  position: relative;
}

.max-width-xxsmall {
  width: 100%;
  max-width: 12rem;
}

.layer {
  justify-content: center;
  align-items: center;
  position: absolute;
  inset: 0%;
}

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

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

.button {
  background-color: var(--background-color--background-secondary);
  color: var(--text-color--text-alternate);
  text-align: center;
  border-radius: 25vw;
  padding: .65vw 1.35vw;
  font-weight: 500;
  transition: color .1s ease-out, background-color .1s ease-out;
}

.button.is-secondary {
  background-color: var(--background-color--background-alternate);
  color: var(--text-color--text-primary);
}

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

.text-size-medium {
  font-size: var(--_font-sizes---text-classes--text-size-medium);
}

.fs-styleguide_section {
  grid-column-gap: 6rem;
  grid-row-gap: 6rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  place-items: start;
  display: grid;
}

.fs-styleguide_section.is-vertical {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-columns: 1fr;
}

.button-group {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.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;
}

.form_radio {
  flex-direction: row;
  align-items: center;
  margin-bottom: .5rem;
  padding-left: 0;
  display: flex;
}

.fs-styleguide_spacing-all {
  display: none;
}

.spacer-huge {
  width: 100%;
  padding-top: 7vw;
}

.spacer-medium {
  width: 100%;
  padding-top: 2vw;
}

.fs-styleguide_spacer-box {
  background-color: #ea9b2d29;
  border: 1px dashed #ea9b2d;
  width: 100%;
  position: relative;
}

.spacer-xsmall {
  width: 100%;
  padding-top: .5vw;
}

.spacer-small {
  width: 100%;
  padding-top: 1vw;
}

.spacer-xhuge {
  width: 100%;
  padding-top: 9vw;
}

.spacer-tiny {
  width: 100%;
  padding-top: .125vw;
}

.spacer-xxsmall {
  width: 100%;
  padding-top: .25vw;
}

.spacer-xxhuge {
  width: 100%;
  padding-top: 12vw;
}

.spacer-xlarge {
  width: 100%;
  padding-top: 4vw;
}

.spacer-xlarge.thankyou {
  padding-top: 12vw;
}

.spacer-large {
  padding-top: 3vw;
}

.spacer-xxlarge {
  width: 100%;
  padding-top: 5vw;
}

.fs-styleguide_message {
  color: #000;
  background-color: #efe9dd;
  border-radius: .25rem;
  padding: .25rem .5rem;
  font-size: .875rem;
}

.aspect-ratio-square {
  aspect-ratio: 1;
  object-fit: cover;
}

.aspect-ratio-portrait {
  aspect-ratio: 2 / 3;
  object-fit: cover;
}

.aspect-ratio-landscape {
  aspect-ratio: 3 / 2;
  object-fit: cover;
}

.aspect-ratio-widescreen {
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

.background-color-tertiary {
  background-color: var(--background-color--background-tertiary);
}

.fs-styleguide_hero-label {
  color: #000;
  text-transform: uppercase;
  background-color: #efe9dd;
  border-radius: .25vw;
  padding: .25rem 1rem .3rem;
  text-decoration: none;
}

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

.image-overlay-dark {
  z-index: 1;
  background-color: #0003;
  position: absolute;
  inset: 0%;
}

.fs-styleguide_header-image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.changelog_header {
  position: relative;
  overflow: hidden;
}

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

.changelog_header-block {
  z-index: 3;
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  justify-items: start;
  display: grid;
  position: relative;
}

.changelog_label {
  color: #000;
  text-transform: uppercase;
  background-color: #efe9dd;
  border-radius: .25vw;
  padding: .25rem 1rem .3rem;
  text-decoration: none;
}

.changelog_heading-header {
  color: #fff;
  font-size: 6vw;
}

.changelog_version-wrapper {
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
  flex-flow: column;
  display: flex;
}

.changelog_version {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  border-bottom: 1px solid #ccc;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  padding-bottom: 3rem;
  display: grid;
}

.licensing_header {
  position: relative;
  overflow: hidden;
}

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

.licensing_header-block {
  z-index: 3;
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  justify-items: start;
  display: grid;
  position: relative;
}

.licensing_label {
  color: #000;
  text-transform: uppercase;
  background-color: #efe9dd;
  border-radius: .25vw;
  padding: .25rem 1rem .3rem;
  text-decoration: none;
}

.licensing_heading-header {
  color: #fff;
  font-size: 6vw;
}

.licensing_info-wrapper {
  grid-column-gap: 3rem;
  grid-row-gap: 3rem;
  flex-flow: column;
  display: flex;
}

.licensing_info {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  border-bottom: 1px solid #ccc;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  padding-bottom: 3rem;
  display: grid;
}

.hide-just-desktop {
  display: none;
}

.section_home_hero {
  background-color: var(--background-color--background-primary);
}

.nav_component {
  z-index: 10;
  position: absolute;
  inset: 0% 0% auto;
}

.nav {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: center;
  width: 100%;
  display: grid;
  overflow: hidden;
}

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

.nav_brand-image {
  object-fit: cover;
  width: 100%;
  height: 30px;
}

.home_hero-heading {
  position: relative;
}

.home_hero-headline-tagline {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.home_hero-headline-tagline.thankyou {
  grid-column-gap: 15px;
  grid-row-gap: 15px;
}

.home_hero-headline-brand {
  font-family: var(--_typography---cormorant-garamond);
  text-align: center;
  text-transform: uppercase;
  font-size: 10vw;
}

.home_hero-headline-brand.home_h1 {
  z-index: -999999;
  opacity: 0;
  pointer-events: none;
  position: absolute;
}

.home_hero-headline.thankyou {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  text-align: center;
  flex-flow: column;
  display: flex;
}

.home_hero-tagline {
  justify-content: center;
  width: 30vw;
  display: flex;
}

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

.home_hero-image-subheadline-cta {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 115vh;
  min-height: 115vh;
  display: flex;
  position: relative;
  overflow: hidden;
}

.section_home_about {
  background-color: var(--background-color--background-primary);
}

.home_hero-image-wrapper {
  width: 65vw;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.home_subheadline-cta {
  z-index: 2;
  grid-column-gap: 1.5vw;
  grid-row-gap: 1.5vw;
  flex-flow: column;
  display: flex;
  position: absolute;
  top: 45%;
  left: 50%;
  transform: translate(-50%);
}

.home_subheadline {
  width: 40vw;
}

.home_cta-wrapper {
  justify-content: center;
  display: flex;
  overflow: hidden;
}

.nav_padding {
  padding-left: 3vw;
  padding-right: 3vw;
}

.home_about-heading {
  font-family: var(--_typography---cormorant-garamond);
  width: 28vw;
  display: flex;
}

.home_about-content {
  grid-column-gap: 5vw;
  grid-row-gap: 5vw;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.home_about-description {
  grid-column-gap: 1.5vw;
  grid-row-gap: 1.5vw;
  flex-flow: column;
  align-items: flex-start;
  width: 93%;
  display: flex;
}

.home_about-image-wrapper {
  height: 45vw;
  position: relative;
  overflow: hidden;
}

.home_about-heading-description {
  flex-flow: column;
  justify-content: space-between;
  display: flex;
}

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

.section_home_residences {
  background-color: var(--background-color--background-secondary);
}

.home_residences-heading {
  grid-column-gap: 7vw;
  grid-row-gap: 7vw;
  flex-flow: column;
  grid-template-rows: auto;
  grid-template-columns: auto 1fr;
  grid-auto-columns: 1fr;
  place-items: end stretch;
  display: grid;
}

.home_residences-subheadline {
  width: 18vw;
  margin-bottom: 1vw;
}

.home_residences-headline {
  font-family: var(--_typography---cormorant-garamond);
}

.section_home_amenities {
  background-color: var(--background-color--background-secondary);
}

.home_residences-list {
  grid-column-gap: 2vw;
  grid-row-gap: 2vw;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.home_amenities-heading {
  grid-column-gap: .75vw;
  grid-row-gap: .75vw;
  flex-flow: column;
  align-items: center;
  display: flex;
}

.home_amenities-headline {
  font-family: var(--_typography---cormorant-garamond);
}

.home_amenities-grid {
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.home_residences-image-wrapper {
  width: 100%;
  height: 32vw;
  overflow: hidden;
}

.home_residences-image {
  object-fit: cover;
  object-position: 50% 65%;
  width: 100%;
  height: 100%;
}

.home_residences-empty-state {
  display: none;
}

.home_amenities-decription {
  width: 85%;
}

.home_amenities-grid-item {
  grid-column-gap: 2vw;
  grid-row-gap: 2vw;
  border-right: .1vw solid var(--border-color--border-alternate);
  border-bottom: .1vw solid var(--border-color--border-alternate);
  flex-flow: column;
  align-items: center;
  padding: 4vw 1vw;
  display: flex;
}

.home_amenities-grid-item.amenities-item-4 {
  border-right-style: none;
}

.home_amenities-grid-item.amenities-item-5, .home_amenities-grid-item.amenities-item-7, .home_amenities-grid-item.amenities-item-6 {
  border-bottom-style: none;
}

.home_amenities-grid-item.amenities-item-8 {
  border-bottom-style: none;
  border-right-style: none;
}

.section_home_testimonials {
  background-color: var(--background-color--background-primary);
  min-height: 100vh;
}

.home_residences-name-price {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: center;
  display: grid;
}

.home_amenities-cta {
  justify-content: center;
  display: flex;
  overflow: hidden;
}

.section_home_book {
  background-color: var(--background-color--background-tertiary);
  position: relative;
}

.home_testimonials-heading {
  grid-column-gap: 2vw;
  grid-row-gap: 2vw;
  grid-template-rows: auto;
  grid-template-columns: 1fr 2fr;
  grid-auto-columns: 1fr;
  align-items: end;
  display: grid;
}

.home_testimonials-headline {
  font-family: var(--_typography---cormorant-garamond);
}

.home_testimonials-subheadline {
  width: 23vw;
  padding-bottom: 1vw;
}

.home_testimonials-marquee-wrapper {
  grid-column-gap: 2vw;
  grid-row-gap: 2vw;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  height: 100%;
  display: grid;
  position: relative;
  overflow: hidden;
}

.home_testimonials-marquee-1 {
  grid-column-gap: 2vw;
  grid-row-gap: 2vw;
  width: 100%;
  height: 100%;
  display: flex;
}

.testmonials-card_component {
  grid-column-gap: 2vw;
  grid-row-gap: 2vw;
  background-color: var(--background-color--background-tertiary);
  flex-flow: column;
  justify-content: space-between;
  align-items: center;
  width: 33vw;
  height: 25vw;
  padding: 2vw;
  display: flex;
}

.home_testimonials-marquee-2 {
  grid-column-gap: 2vw;
  grid-row-gap: 2vw;
  flex-flow: row;
  justify-content: flex-start;
  align-items: stretch;
  display: flex;
  position: absolute;
  inset: 0% 91vw 0% auto;
}

.home_testimonials-marquee-shadow {
  z-index: 2;
  width: 6vw;
  height: 100%;
}

.home_testimonials-marquee-shadow.is-left {
  background-image: linear-gradient(270deg, #fbf8f100 50%, #fbf8f1);
  position: absolute;
  inset: 0% auto 0% 0%;
}

.home_testimonials-marquee-shadow.is-right {
  background-image: linear-gradient(90deg, #fbf8f100 50%, #fbf8f1);
  position: absolute;
  inset: 0% 0% 0% auto;
}

.footer_component {
  background-color: var(--background-color--background-secondary);
  position: sticky;
  bottom: 0;
}

.section_home_faq {
  background-color: var(--background-color--background-primary);
}

.home_faq-grid {
  grid-column-gap: 5vw;
  grid-row-gap: 5vw;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.home_faq-heading {
  grid-column-gap: 2vw;
  grid-row-gap: 2vw;
  flex-flow: column;
  display: flex;
}

.home_faq-headline {
  font-family: var(--_typography---cormorant-garamond);
}

.home_book_heading {
  grid-column-gap: .75vw;
  grid-row-gap: .75vw;
  flex-flow: column;
  align-items: center;
  display: flex;
}

.home_book-headline {
  font-family: var(--_typography---cormorant-garamond);
}

.footer_padding {
  padding-left: 3vw;
  padding-right: 3vw;
}

.home_book-subheadline {
  width: 30vw;
}

.home_book-form {
  justify-content: center;
  display: flex;
}

.testimonials-card_icon-wrapper {
  width: 8vw;
}

.home_residences-price {
  align-items: center;
  display: flex;
}

.testimonials-card_icon-quote {
  grid-column-gap: 2vw;
  grid-row-gap: 2vw;
  flex-flow: column;
  align-items: center;
  display: flex;
}

.testimonials-card-quote {
  width: 100%;
}

.testimonials-card-guest-name {
  font-family: var(--_typography---cormorant-garamond);
  display: block;
}

.home_faq-lists {
  grid-column-gap: 1.5vw;
  grid-row-gap: 1.5vw;
  flex-flow: column;
  display: flex;
}

.home_testimonials-marquee {
  width: 100%;
  height: 25vw;
  position: relative;
}

.faq-item_component {
  background-color: var(--background-color--background-secondary);
  border-radius: .75vw;
  overflow: hidden;
}

.faq-item_question-wrapper {
  grid-column-gap: 2vw;
  grid-row-gap: 2vw;
  cursor: pointer;
  grid-template-rows: auto;
  grid-template-columns: 1fr auto;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  align-items: start;
  padding: 1vw 1.25vw;
  display: grid;
}

.faq-item_answer {
  padding-left: 1.25vw;
  padding-right: 1.25vw;
}

.faq-item_answer-text {
  width: 95%;
}

.footer_top {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.footer_grid-menu-list {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.footer_grid-list {
  grid-column-gap: .75vw;
  grid-row-gap: .75vw;
  flex-flow: column;
  align-items: stretch;
  display: flex;
}

.footer_grid-list-item {
  grid-column-gap: .5vw;
  grid-row-gap: .5vw;
  flex-flow: column;
  display: flex;
}

.footer_list-item {
  width: -moz-fit-content;
  width: fit-content;
}

.text-color-tertiary {
  color: var(--base-color-neutral--neutral-light);
  text-transform: uppercase;
}

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

.footer_bottom {
  grid-column-gap: 1.5vw;
  grid-row-gap: 1.5vw;
  flex-flow: column;
  width: 100%;
  height: 100%;
  display: flex;
  overflow: hidden;
}

.footer_brand {
  justify-content: space-between;
  align-items: flex-start;
  display: flex;
}

.footer_copyright {
  justify-content: flex-end;
  display: flex;
}

.footer_copyright-tagline {
  justify-content: space-between;
  margin-bottom: 2vw;
  display: flex;
}

.footer_grid-social {
  justify-content: flex-end;
  display: flex;
}

.footer_grid-social-list {
  grid-column-gap: 1.5vw;
  grid-row-gap: 1.5vw;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  place-items: center end;
  width: -moz-fit-content;
  width: fit-content;
  height: -moz-fit-content;
  height: fit-content;
  margin-top: .25vw;
  display: grid;
}

.footer_grid-social-item {
  justify-content: center;
}

.nav_brand-image-wrapper {
  justify-content: center;
  width: auto;
  height: auto;
  display: none;
}

.nav-menu_component {
  z-index: 20;
  -webkit-backdrop-filter: blur(.15rem);
  backdrop-filter: blur(.15rem);
  width: 100%;
  height: 100vh;
  display: none;
  position: fixed;
  inset: 0% auto 0% 0%;
}

.nav-menu {
  grid-column-gap: 6vw;
  grid-row-gap: 6vw;
  background-color: var(--background-color--background-tertiary);
  flex-flow: column;
  justify-content: space-between;
  align-items: stretch;
  width: 28vw;
  height: 100vh;
  padding: 2vw;
  display: flex;
}

.nav-menu_close {
  justify-content: flex-end;
  display: flex;
}

.nav-menu_close-text {
  cursor: pointer;
}

.nav-menu_list {
  grid-column-gap: .75vw;
  grid-row-gap: .75vw;
  flex-flow: column;
  align-items: flex-start;
  display: flex;
}

.nav_menu-list-item {
  font-family: var(--_typography---cormorant-garamond);
}

.nav-menu_bottom {
  grid-column-gap: .5vw;
  grid-row-gap: .5vw;
  flex-flow: column;
  display: flex;
}

.nav-menu_contact, .nav-menu_contact-item {
  flex-flow: column;
  display: flex;
}

.section_villa_heading {
  background-color: var(--background-color--background-primary);
}

.villa_heading {
  grid-column-gap: .75vw;
  grid-row-gap: .75vw;
  flex-flow: column;
  align-items: center;
  width: 100%;
  display: flex;
}

.villa_heading-name {
  font-family: var(--_typography---cormorant-garamond);
}

.villa_heading-summary {
  width: 45vw;
}

.section_villa_info {
  background-color: var(--background-color--background-primary);
}

.villa_info-description {
  grid-column-gap: 1.5vw;
  grid-row-gap: 1.5vw;
  flex-flow: column;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: flex;
}

.villa_info-description-1 {
  width: 95%;
}

.villa_info-details {
  border-style: solid;
  border-width: .1vw;
  border-color: black black var(--border-color--border-secondary);
  border-radius: 1.5vw;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.villa_info-details-item {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  padding: 1.5vw 1vw;
  display: flex;
}

.villa_info-details-item.is-detail-1, .villa_info-details-item.is-detail-2, .villa_info-details-item.is-detail-3 {
  border-right: .1vw solid var(--border-color--border-secondary);
}

.vllla_gallery-grid {
  grid-column-gap: 1.5vw;
  grid-row-gap: 1.5vw;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.villa_gallery {
  grid-column-gap: 1.5vw;
  grid-row-gap: 1.5vw;
  flex-flow: column;
  display: flex;
}

.villa_gallery.is-left, .villa_gallery.is-right {
  padding-top: 3.5vw;
}

.villa_galley-image-item {
  width: 100%;
  position: relative;
  overflow: hidden;
}

.villa_galley-image-item.is-image-1 {
  height: 18vw;
}

.villa_galley-image-item.is-image-4 {
  height: 25vw;
}

.villa_galley-image-item.is-image-2 {
  height: 30vw;
}

.villa_galley-image-item.is-image-3, .villa_galley-image-item.is-image-5 {
  height: 20vw;
}

.villa_galley-image-item.is-image-6 {
  height: 30vw;
}

.villa_galley-image-item.is-image-7 {
  height: 23vw;
}

.villa_galley-image-item.is-image-8 {
  height: 27vw;
}

.villa_galley-image-item.is-image-9 {
  height: 18vw;
}

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

.villa_info-description-grid {
  grid-column-gap: 5vw;
  grid-row-gap: 5vw;
  flex-flow: column;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.villa_info-description-tagline {
  font-family: var(--_typography---cormorant-garamond);
}

.villa_info-amenities-location-cta {
  grid-column-gap: 5vw;
  grid-row-gap: 5vw;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: center;
  display: grid;
}

.villa_info-amenities-cta {
  grid-column-gap: 1.5vw;
  grid-row-gap: 1.5vw;
  flex-flow: column;
  width: 88%;
  display: flex;
}

.villa_info-amenities-wrapper {
  grid-column-gap: 1.5vw;
  grid-row-gap: 1.5vw;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  flex-flow: column;
  padding-top: 2vw;
  padding-bottom: 3vw;
}

.villa_info-amenities-grid {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.villa_info-amenities-item {
  grid-column-gap: 1vw;
  grid-row-gap: 1vw;
  grid-template-rows: auto;
  grid-template-columns: auto 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

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

.villa_info-amenities-list {
  grid-column-gap: 1vw;
  grid-row-gap: 1vw;
  flex-flow: column;
  display: flex;
}

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

.villa_info-location {
  width: 100%;
  height: 30vw;
  position: relative;
  overflow: hidden;
}

.villa_info-amenities-heading {
  font-family: var(--_typography---cormorant-garamond);
}

.villa_info-cta-button-wrapper {
  grid-column-gap: 1.5vw;
  grid-row-gap: 1.5vw;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
  overflow: hidden;
}

.villa_info-cta {
  grid-column-gap: 1.5vw;
  grid-row-gap: 1.5vw;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.villa_info-price {
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.section_villa_gallery {
  background-color: var(--background-color--background-primary);
}

.villa_gallery-image-text {
  grid-column-gap: .5vw;
  grid-row-gap: .5vw;
  background-image: linear-gradient(#0000, #0c0c0cbf);
  padding-top: 1vw;
  padding-bottom: 1vw;
  padding-left: 1vw;
  display: flex;
  position: absolute;
  inset: auto 0% 0%;
}

.villa_info-description-2 {
  width: 95%;
}

.villa_info-location-cta {
  z-index: 2;
  align-items: flex-end;
  display: flex;
}

.villa_info-location-button {
  background-color: var(--background-color--background-alternate);
  border-radius: 25vw;
  justify-content: center;
  align-items: center;
  padding: .65vw;
  display: flex;
}

.villa_info-location-name-cta {
  background-image: linear-gradient(#0000, #000000a6);
  justify-content: space-between;
  align-items: stretch;
  padding: 1vw;
  display: flex;
  position: absolute;
  inset: auto 0% 0%;
}

.villa_info-location-name-title {
  z-index: 3;
}

.home_hero-image-subheadline-cta-wrapper, .home_amenities-icon-wrapper {
  overflow: hidden;
}

.form_form-wrapper {
  grid-column-gap: 1.5vw;
  grid-row-gap: 1.5vw;
  flex-flow: column;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  display: flex;
  overflow: hidden;
}

.form_button-wrapper {
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  overflow: hidden;
}

.form_button {
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.nav_wrapper {
  padding-top: 1.25vw;
  padding-bottom: 1.25vw;
}

.villa_info-details-number-wrapper, .villa_info-amenities-icon-wrapper {
  overflow: hidden;
}

.villa_info-cta-button {
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.villa_info-location-wrapper {
  overflow: hidden;
}

.button_text.is-absolute {
  position: absolute;
  inset: auto 0% -100%;
}

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

.home_residences-item-link {
  grid-column-gap: 1vw;
  grid-row-gap: 1vw;
  flex-flow: column;
  display: flex;
}

.page-404 {
  background-color: var(--background-color--background-primary);
  width: 100%;
  height: 100vh;
  max-height: 100vh;
  position: relative;
  overflow: hidden;
}

.page-404_content-text {
  z-index: 2;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 30% 0% 0%;
}

.page-404_heading {
  grid-column-gap: 1vw;
  grid-row-gap: 1vw;
  flex-flow: column;
  align-items: center;
  display: flex;
}

.page-404_headline {
  font-family: var(--_typography---cormorant-garamond);
}

.page-404_subheadline {
  width: 25vw;
}

.page-404_cta-home {
  z-index: 2;
  width: 100%;
  position: absolute;
  inset: auto 0% 0%;
}

.page-404_button-wrapper {
  border-top: 1px solid var(--border-color--border-secondary);
  justify-content: center;
  width: 100%;
  padding-top: 1.5vw;
  padding-bottom: 1.5vw;
  display: flex;
}

.home_loader {
  z-index: 99;
  background-color: var(--background-color--background-tertiary);
  width: 100vw;
  height: 100vh;
  display: none;
  position: fixed;
  inset: 0%;
}

.home_loader-content {
  grid-column-gap: .5vw;
  grid-row-gap: .5vw;
  flex-flow: column;
  align-items: center;
  display: flex;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.home_loader-brand-logo {
  width: 3vw;
  height: 3vw;
}

.home_loader-brand-text {
  font-family: var(--_typography---cormorant-garamond);
}

.div-block-4 {
  justify-content: flex-start;
  display: flex;
}

.villa_info-info {
  font-family: var(--_typography---cormorant-garamond);
}

.villa_info-currency, .villa_info-price-cms {
  font-size: var(--_font-sizes---headings--heading-2);
  font-weight: 300;
  line-height: 1.2;
}

.home_residences-price-number {
  align-items: center;
  display: flex;
}

.villa_info-amenities {
  grid-column-gap: 1.5vw;
  grid-row-gap: 1.5vw;
  flex-flow: column;
  display: flex;
}

.ms {
  text-decoration: underline;
}

.home_loho_heading {
  max-width: 325px;
}

.text-block {
  font-family: var(--_typography---cormorant-garamond);
  font-size: var(--_font-sizes---headings--heading-4);
  font-weight: 700;
}

.whatsapp {
  max-width: 30px;
  margin-top: 10px;
}

.call_now {
  z-index: 99999;
  aspect-ratio: 1;
  background-color: var(--base-color-neutral--black);
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 60px;
  height: 60px;
  padding: 1rem;
  display: flex;
  position: fixed;
  inset: auto 20px 20px auto;
}

.phone_embed {
  margin-bottom: -4px;
}

.footer_map {
  aspect-ratio: 3 / 2;
  width: 50%;
  max-width: 350px;
  margin-bottom: 2rem;
}

.footer_map.mobile {
  display: none;
}

.code-embed {
  width: 100%;
  height: 100%;
}

@media screen and (min-width: 1280px) {
  .footer_map {
    max-width: 450px;
  }
}

@media screen and (min-width: 1920px) {
  .footer_map {
    max-width: 650px;
  }
}

@media screen and (max-width: 991px) {
  body {
    --_font-sizes---other-html-tags--body-all-pages: 1rem;
    --_font-sizes---headings--heading-1: 4rem;
    --_font-sizes---headings--heading-2: 3rem;
    --_font-sizes---headings--heading-3: 2rem;
    --_font-sizes---headings--heading-4: 1.5rem;
    --_font-sizes---headings--heading-5: 1.25rem;
    --_font-sizes---headings--heading-6: 1rem;
    --_font-sizes---other-html-tags--all-paragraphs: 1rem;
    --_font-sizes---other-html-tags--all-links: 1rem;
    --_font-sizes---other-html-tags--all-list-items: 1rem;
    --_font-sizes---other-html-tags--all-quotes: 1rem;
    --_font-sizes---text-classes--text-size-tiny: .75rem;
    --_font-sizes---text-classes--text-size-regular: 1rem;
    --_font-sizes---text-classes--text-size-small: .875rem;
    --_font-sizes---text-classes--text-size-large: 2rem;
    --_font-sizes---text-classes--text-size-medium: 1.25rem;
    --_font-sizes---other-html-tags--all-labels-form: 1rem;
  }

  li {
    margin-bottom: .25rem;
  }

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

  .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-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;
  }

  .icon-1x1-small {
    width: 1.25rem;
    height: 1.25rem;
  }

  .hide-tablet {
    display: none;
  }

  .icon-1x1-large {
    width: 2.5rem;
    height: 2.5rem;
  }

  .form_form {
    grid-column-gap: 1.5rem;
    grid-row-gap: .75rem;
  }

  .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;
  }

  .text-rich-text h1, .text-rich-text h2, .text-rich-text h3, .text-rich-text h4 {
    margin-top: 1.5rem;
    margin-bottom: 1rem;
  }

  .text-rich-text h5, .text-rich-text h6 {
    margin-top: 1.25rem;
    margin-bottom: 1rem;
  }

  .text-rich-text p {
    margin-bottom: 1rem;
  }

  .text-rich-text ul, .text-rich-text ol {
    margin-bottom: 1.5rem;
    padding-left: 1.5rem;
  }

  .text-rich-text blockquote {
    margin-top: 2rem;
    margin-bottom: 2rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .icon-1x1-medium {
    width: 1.75rem;
    height: 1.75rem;
  }

  .icon-1x1-medium.fb {
    width: 1.4rem;
    height: 1.4rem;
  }

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

  .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;
  }

  .form_label {
    margin-bottom: .25rem;
  }

  .form_input {
    border-radius: .5rem;
    min-height: 3rem;
    margin-bottom: .75rem;
    padding: .5rem 1rem;
  }

  .form_input.is-select-input {
    background-size: 1.25rem 12.5rem;
  }

  .form_input.is-text-area {
    min-height: 8rem;
    padding-top: .75rem;
  }

  .form_input.is-date {
    background-size: 1.25rem 1.25rem;
  }

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

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

  .fs-styleguide_label {
    border-radius: .25rem;
  }

  .form_component {
    width: 95%;
  }

  .main-wrapper {
    position: static;
  }

  .button {
    border-radius: 25rem;
    padding: .65rem 1.35rem;
  }

  .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-xsmall {
    padding-top: .5rem;
  }

  .spacer-small {
    padding-top: 1rem;
  }

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

  .spacer-tiny {
    padding-top: .125rem;
  }

  .spacer-xxsmall {
    padding-top: .25rem;
  }

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

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

  .spacer-xlarge.thankyou {
    padding-top: 11rem;
  }

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

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

  .fs-styleguide_hero-label {
    border-radius: .25rem;
  }

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

  .changelog_label {
    border-radius: .25rem;
  }

  .changelog_heading-header {
    font-size: 4rem;
  }

  .licensing_label {
    border-radius: .25rem;
  }

  .licensing_heading-header {
    font-size: 4rem;
  }

  .hide-just-desktop {
    display: block;
  }

  .home_hero-headline-brand {
    font-size: 7rem;
  }

  .home_hero-tagline {
    width: auto;
  }

  .home_hero-image-wrapper {
    width: 100%;
  }

  .home_subheadline-cta {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
  }

  .home_subheadline {
    width: 36rem;
  }

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

  .home_about-heading {
    justify-content: center;
    width: 30rem;
  }

  .home_about-content {
    grid-column-gap: 0rem;
    grid-row-gap: 0rem;
    grid-template-columns: 1fr;
  }

  .home_about-description {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
  }

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

  .home_about-image-wrapper {
    display: none;
  }

  .home_about-heading-description {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    text-align: center;
    align-items: center;
  }

  .home_residences-heading {
    grid-column-gap: .5rem;
    grid-row-gap: .5rem;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr;
    justify-content: space-between;
  }

  .home_residences-subheadline {
    text-align: center;
    width: 22rem;
    margin-bottom: 0;
  }

  .home_residences-list {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    grid-template-columns: 1fr;
  }

  .home_amenities-heading {
    grid-column-gap: .5rem;
    grid-row-gap: .5rem;
  }

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

  .home_residences-item {
    grid-column-gap: .75rem;
    grid-row-gap: .75rem;
  }

  .home_residences-image-wrapper {
    height: 85vw;
  }

  .home_amenities-decription {
    width: 100%;
  }

  .home_amenities-grid-item {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    border-bottom-width: 1px;
    border-right-width: 1px;
    padding: 5rem 1rem;
  }

  .home_amenities-grid-item.amenities-item-2 {
    border-right-style: none;
  }

  .home_amenities-grid-item.amenities-item-5 {
    border-bottom-style: solid;
  }

  .home_amenities-grid-item.amenities-item-6 {
    border-bottom-style: solid;
    border-right-style: none;
  }

  .home_testimonials-heading {
    grid-column-gap: .5rem;
    grid-row-gap: .5rem;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr;
  }

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

  .home_testimonials-subheadline {
    text-align: center;
    width: 25rem;
    padding-bottom: 0;
  }

  .home_testimonials-marquee-wrapper {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
  }

  .home_testimonials-marquee-1 {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
  }

  .testmonials-card_component {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    width: 28rem;
    height: 20rem;
    padding: 2rem;
  }

  .home_testimonials-marquee-2 {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
  }

  .footer_component {
    position: static;
  }

  .home_faq-grid {
    grid-column-gap: 0rem;
    grid-row-gap: 0rem;
    flex-flow: column;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr;
    align-items: center;
    display: flex;
  }

  .home_faq-heading {
    align-items: center;
  }

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

  .home_book_heading {
    grid-column-gap: .5rem;
    grid-row-gap: .5rem;
  }

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

  .home_book-subheadline {
    width: 30rem;
  }

  .testimonials-card_icon-wrapper {
    width: 6rem;
  }

  .testimonials-card_icon-quote {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
  }

  .home_faq-lists {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
  }

  .home_testimonials-marquee {
    height: 20rem;
  }

  .faq-item_component {
    border-radius: .5rem;
  }

  .faq-item_question-wrapper {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    padding: 1rem 1.25rem;
  }

  .faq-item_answer {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .footer_grid-menu-list {
    grid-column-gap: 3.5rem;
    grid-row-gap: 3.5rem;
  }

  .footer_grid-list {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .footer_grid-list-item {
    grid-column-gap: .5rem;
    grid-row-gap: .5rem;
  }

  .footer_bottom {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
  }

  .footer_copyright-tagline {
    margin-bottom: 1.5rem;
  }

  .footer_grid-social-list {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    margin-top: .25rem;
  }

  .nav_brand-image-wrapper {
    height: 2rem;
  }

  .nav-menu {
    grid-column-gap: 6rem;
    grid-row-gap: 6rem;
    width: 25rem;
    padding: 1.5rem 2rem;
    overflow-y: auto;
  }

  .nav-menu_list, .nav-menu_bottom, .villa_heading {
    grid-column-gap: .5rem;
    grid-row-gap: .5rem;
  }

  .villa_heading-summary {
    width: 25rem;
  }

  .villa_info-description {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
  }

  .villa_info-details {
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr;
  }

  .villa_info-details-item {
    padding: 1.5rem 1rem;
  }

  .villa_info-details-item.is-detail-1 {
    border-bottom: 1px solid var(--border-color--border-secondary);
    border-right-width: 1px;
  }

  .villa_info-details-item.is-detail-2 {
    border-bottom: 1px solid var(--border-color--border-secondary);
    border-right-style: none;
  }

  .villa_info-details-item.is-detail-3 {
    border-right-width: 1px;
  }

  .vllla_gallery-grid {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr;
  }

  .villa_gallery.is-left {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
    padding-top: 0;
  }

  .villa_gallery.is-middle {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
  }

  .villa_gallery.is-right {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
    padding-top: 0;
  }

  .villa_galley-image-item.is-image-1 {
    height: 80vw;
  }

  .villa_galley-image-item.is-image-4 {
    height: 50vw;
  }

  .villa_galley-image-item.is-image-2, .villa_galley-image-item.is-image-3 {
    height: 80vw;
  }

  .villa_galley-image-item.is-image-5, .villa_galley-image-item.is-image-6, .villa_galley-image-item.is-image-7, .villa_galley-image-item.is-image-8, .villa_galley-image-item.is-image-9 {
    height: 50vw;
  }

  .villa_info-description-grid {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr;
  }

  .villa_info-amenities-location-cta {
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr;
  }

  .villa_info-amenities-cta {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
    width: 100%;
  }

  .villa_info-amenities-wrapper {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
    padding-top: 1.5rem;
    padding-bottom: 2rem;
  }

  .villa_info-amenities-item, .villa_info-amenities-list {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .villa_info-location {
    height: 75vw;
  }

  .villa_info-cta-button-wrapper, .villa_info-cta {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
  }

  .villa_gallery-image-text {
    grid-column-gap: .5rem;
    grid-row-gap: .5rem;
    padding-top: .75rem;
    padding-bottom: .75rem;
    padding-left: .75rem;
  }

  .villa_info-location-button {
    padding: .65rem;
  }

  .villa_info-location-name-cta {
    padding: .75rem 1rem;
  }

  .form_form-wrapper {
    grid-column-gap: 1.25rem;
    grid-row-gap: 1.25rem;
  }

  .nav_wrapper {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }

  .home_residences-item-link {
    grid-column-gap: .75rem;
    grid-row-gap: .75rem;
  }

  .page-404_heading {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .page-404_subheadline {
    width: 25rem;
  }

  .page-404_button-wrapper {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }

  .home_loader-content {
    grid-column-gap: .5rem;
    grid-row-gap: .5rem;
  }

  .home_loader-brand-logo {
    width: 3rem;
    height: 3rem;
  }

  .villa_info-amenities {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
  }
}

@media screen and (max-width: 767px) {
  body {
    --_font-sizes---other-html-tags--body-all-pages: .9rem;
    --_font-sizes---headings--heading-1: 2.5rem;
    --_font-sizes---headings--heading-2: 2rem;
    --_font-sizes---headings--heading-3: 1.5rem;
    --_font-sizes---headings--heading-4: 1.25rem;
    --_font-sizes---headings--heading-5: 1rem;
    --_font-sizes---headings--heading-6: .9rem;
    --_font-sizes---other-html-tags--all-paragraphs: .9rem;
    --_font-sizes---other-html-tags--all-links: .9rem;
    --_font-sizes---other-html-tags--all-list-items: .9rem;
    --_font-sizes---other-html-tags--all-quotes: .9rem;
    --_font-sizes---text-classes--text-size-tiny: .75rem;
    --_font-sizes---text-classes--text-size-regular: .9rem;
    --_font-sizes---text-classes--text-size-small: .875rem;
    --_font-sizes---text-classes--text-size-large: 1.5rem;
    --_font-sizes---text-classes--text-size-medium: 1rem;
    --_font-sizes---other-html-tags--all-labels-form: .9rem;
  }

  .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;
  }

  .icon-1x1-large {
    width: 2rem;
    height: 2rem;
  }

  .form_form {
    grid-row-gap: .5rem;
  }

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

  .icon-1x1-medium {
    width: 1.35rem;
    height: 1.35rem;
  }

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

  .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;
  }

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

  .form_input {
    min-height: 2.75rem;
  }

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

  .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: 10rem;
  }

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

  .spacer-xlarge.thankyou {
    padding-top: 10rem;
  }

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

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

  .changelog_heading-header, .licensing_heading-header {
    font-size: 3rem;
  }

  .home_hero-headline-brand {
    font-size: 4.5rem;
  }

  .home_hero-image-subheadline-cta {
    height: 100vh;
    min-height: 100vh;
  }

  .home_subheadline-cta {
    grid-column-gap: 1.25rem;
    grid-row-gap: 1.25rem;
  }

  .home_subheadline {
    width: 26rem;
  }

  .nav_padding {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .home_about-heading {
    width: 25rem;
  }

  .home_residences-subheadline {
    width: 18rem;
  }

  .home_residences-image-wrapper {
    height: 95vw;
  }

  .home_amenities-grid-item {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  .home_testimonials-subheadline {
    width: 20rem;
  }

  .home_testimonials-marquee-wrapper {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .home_testimonials-marquee-1 {
    flex-flow: column;
  }

  .testmonials-card_component {
    width: 100%;
  }

  .home_testimonials-marquee-2 {
    flex-flow: column;
    display: none;
    position: static;
  }

  .home_testimonials-marquee-shadow.is-left, .home_testimonials-marquee-shadow.is-right {
    display: none;
  }

  .footer_padding {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .testimonials-card-quote {
    width: 95%;
  }

  .home_testimonials-marquee {
    height: auto;
  }

  .faq-item_question-wrapper, .faq-item_answer {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .footer_top {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr;
  }

  .footer_grid-menu-list {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr;
  }

  .footer_grid-list {
    grid-column-gap: .75rem;
    grid-row-gap: .75rem;
  }

  .footer_grid-list-item {
    grid-column-gap: .35rem;
    grid-row-gap: .35rem;
  }

  .footer_bottom {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .footer_copyright-tagline {
    grid-column-gap: .75rem;
    grid-row-gap: .75rem;
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
  }

  .footer_grid-social {
    justify-content: flex-start;
  }

  .footer_grid-social-list {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
    margin-top: 0;
  }

  .nav_brand-image-wrapper {
    height: 1.8rem;
  }

  .footer_tagline {
    order: -9999;
  }

  .nav-menu {
    width: 100%;
    height: 100dvh;
  }

  .nav-menu_list {
    grid-column-gap: .25rem;
    grid-row-gap: .25rem;
  }

  .villa_heading-summary {
    width: 20rem;
  }

  .villa_info-description-1 {
    width: 100%;
  }

  .vllla_gallery-grid {
    grid-template-rows: auto auto auto;
  }

  .villa_galley-image-item.is-image-4, .villa_galley-image-item.is-image-5, .villa_galley-image-item.is-image-6, .villa_galley-image-item.is-image-7, .villa_galley-image-item.is-image-8, .villa_galley-image-item.is-image-9, .villa_info-location {
    height: 80vw;
  }

  .villa_info-cta-button-wrapper {
    grid-column-gap: 1.25rem;
    grid-row-gap: 1.25rem;
  }

  .villa_info-description-2 {
    width: 100%;
  }

  .form_form-wrapper {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .page-404_subheadline {
    width: 20rem;
  }

  .home_loader-brand-logo {
    width: 2rem;
    height: 2rem;
  }

  .phone_embed {
    margin-bottom: -6px;
  }

  .footer_map {
    display: none;
  }

  .footer_map.mobile {
    width: 100%;
    max-width: 100%;
    display: flex;
  }
}

@media screen and (max-width: 479px) {
  body {
    --_font-sizes---other-html-tags--body-all-pages: .9rem;
    --_font-sizes---headings--heading-1: 2.5rem;
    --_font-sizes---headings--heading-2: 2rem;
    --_font-sizes---headings--heading-3: 1.5rem;
    --_font-sizes---headings--heading-4: 1.25rem;
    --_font-sizes---headings--heading-5: 1rem;
    --_font-sizes---headings--heading-6: .9rem;
    --_font-sizes---other-html-tags--all-paragraphs: .9rem;
    --_font-sizes---other-html-tags--all-links: .9rem;
    --_font-sizes---other-html-tags--all-list-items: .9rem;
    --_font-sizes---other-html-tags--all-quotes: .9rem;
    --_font-sizes---text-classes--text-size-tiny: .75rem;
    --_font-sizes---text-classes--text-size-regular: .9rem;
    --_font-sizes---text-classes--text-size-small: .875rem;
    --_font-sizes---text-classes--text-size-large: 1.5rem;
    --_font-sizes---text-classes--text-size-medium: 1rem;
    --_font-sizes---other-html-tags--all-labels-form: .9rem;
  }

  .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;
  }

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

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

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

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

  .text-size-large.text-style-allcaps.text-weight-medium.eng {
    text-align: left;
  }

  .heading-style-h2 {
    font-size: var(--_font-sizes---headings--heading-3);
  }

  .spacer-xxhuge, .spacer-xlarge.thankyou {
    padding-top: 9rem;
  }

  .home_hero-headline-brand {
    font-size: 3.5rem;
  }

  .home_subheadline {
    width: 75vw;
  }

  .nav_padding {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .home_about-heading {
    width: 93%;
  }

  .home_about-description {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .home_about-heading-description {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
  }

  .home_residences-subheadline {
    width: 75vw;
  }

  .home_amenities-subheadline {
    width: 75%;
  }

  .home_testimonials-subheadline {
    width: 85%;
  }

  .home_testimonials-marquee-1 {
    grid-column-gap: 1.25rem;
    grid-row-gap: 1.25rem;
  }

  .footer_padding {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .home_book-subheadline {
    width: 75vw;
  }

  .home_faq-lists {
    grid-column-gap: 1.25rem;
    grid-row-gap: 1.25rem;
  }

  .footer_top {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
  }

  .footer_grid-menu-list {
    grid-template-columns: 1fr;
  }

  .nav_brand-image-wrapper {
    height: 1.6rem;
  }

  .villa_heading-summary {
    width: 75vw;
  }

  .vllla_gallery-grid {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .villa_gallery.is-left {
    grid-column-gap: 1.25rem;
    grid-row-gap: 1.25rem;
  }

  .villa_gallery.is-middle, .villa_gallery.is-right {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .villa_info-description-grid {
    grid-column-gap: 1.25rem;
    grid-row-gap: 1.25rem;
  }

  .villa_info-cta-button-wrapper {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr;
  }

  .page-404_subheadline {
    width: 85vw;
  }

  .villa_info-currency, .villa_info-price-cms {
    font-size: var(--_font-sizes---headings--heading-3);
  }

  .text-block {
    font-size: var(--_font-sizes---headings--heading-6);
    text-align: center;
    line-height: 1.1;
  }

  .footer_map.mobile {
    aspect-ratio: 1;
  }
}

#w-node-_9735637c-5392-f5be-3cf8-d2e200606c00-ff9eaaaa {
  justify-self: start;
}

#w-node-_764a6243-c285-c53c-39a1-6747ecf9fa08-ff9eaaaa {
  justify-self: end;
}

#w-node-c77f4283-c37f-0d77-53f2-70c026a7e0a0-ff9eaaaa {
  justify-self: start;
}

#w-node-_1e9a262e-e9f4-efe8-f376-3ce09ba0ee67-ff9eaaaa {
  justify-self: end;
}

#w-node-_3c77de74-975d-7ad6-6d8b-d98bc2b4fa10-ff9eaaaa {
  justify-self: start;
}

#w-node-_543505c2-cabd-9350-192a-f7207068f444-ff9eaaaa {
  justify-self: end;
}

#w-node-eb2df051-3d37-a421-232a-e6a6f5180845-ff9eaaaa {
  justify-self: start;
}

#w-node-_78354c81-fcd9-9029-6dad-bb21fe35629c-ff9eaaaa {
  justify-self: end;
}

#w-node-b1899511-5bb0-ec75-dc62-0073e002ca54-ff9eaaaa, #w-node-b1899511-5bb0-ec75-dc62-0073e002ca58-ff9eaaaa {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-_5daa8621-a506-9601-baa2-f11b8211be13-95bf4460 {
  place-self: center start;
}

#w-node-_93a4e511-dfb2-9009-642a-8a1e95bf4463-95bf4460 {
  justify-self: start;
}

#w-node-_93a4e511-dfb2-9009-642a-8a1e95bf4466-95bf4460 {
  place-self: center;
}

#w-node-_93a4e511-dfb2-9009-642a-8a1e95bf4469-95bf4460 {
  place-self: center end;
}

#w-node-a3cb0049-d5a5-0f0f-21d2-3156474a6476-ff9eaab1 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-d326ebf5-c1c1-c3b8-6cc4-6f2c0c79a578-324ac1f6 {
  place-self: center start;
}

#w-node-d326ebf5-c1c1-c3b8-6cc4-6f2c0c79a579-324ac1f6 {
  justify-self: start;
}

#w-node-d326ebf5-c1c1-c3b8-6cc4-6f2c0c79a57c-324ac1f6 {
  place-self: center;
}

#w-node-d326ebf5-c1c1-c3b8-6cc4-6f2c0c79a581-324ac1f6 {
  place-self: center end;
}

#w-node-_812073fa-74b9-03f0-0e7b-addc3c2cd38b-324ac1f6, #w-node-e80c7b7b-9d68-5bbe-fdc4-f89dddcd116c-324ac1f6 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

@media screen and (max-width: 991px) {
  #w-node-c77f4283-c37f-0d77-53f2-70c026a7e0a0-ff9eaaaa {
    grid-area: span 1 / span 1 / span 1 / span 1;
    justify-self: center;
  }

  #w-node-_1e9a262e-e9f4-efe8-f376-3ce09ba0ee67-ff9eaaaa {
    order: -9999;
    justify-self: center;
  }

  #w-node-eb2df051-3d37-a421-232a-e6a6f5180845-ff9eaaaa {
    justify-self: center;
  }

  #w-node-_78354c81-fcd9-9029-6dad-bb21fe35629c-ff9eaaaa {
    order: -9999;
    justify-self: center;
  }

  #w-node-_53683e29-5687-2511-e9f1-238ef9331fa9-ff9eaab1 {
    grid-area: span 1 / span 2 / span 1 / span 2;
  }

  #w-node-_72be017d-def4-8407-6c50-2bdbd1861346-ff9eaab1 {
    order: 9999;
  }

  #w-node-acda07fd-cab4-b382-9bd8-9bd70d18579a-ff9eaab1 {
    order: -9999;
  }

  #w-node-_812073fa-74b9-03f0-0e7b-addc3c2cd2ec-324ac1f6 {
    grid-area: span 1 / span 2 / span 1 / span 2;
  }

  #w-node-_812073fa-74b9-03f0-0e7b-addc3c2cd357-324ac1f6 {
    order: 9999;
  }

  #w-node-_812073fa-74b9-03f0-0e7b-addc3c2cd39b-324ac1f6 {
    order: -9999;
  }
}

@media screen and (max-width: 767px) {
  #w-node-ab87ac9f-7d50-9be3-f857-55928a6c5c87-ff9eaaaa, #w-node-b1899511-5bb0-ec75-dc62-0073e002ca4e-ff9eaaaa, #w-node-b1899511-5bb0-ec75-dc62-0073e002ca52-ff9eaaaa, #w-node-b1899511-5bb0-ec75-dc62-0073e002ca50-ff9eaaaa, #w-node-b1899511-5bb0-ec75-dc62-0073e002ca56-ff9eaaaa, #w-node-b1899511-5bb0-ec75-dc62-0073e002ca58-ff9eaaaa, #w-node-_53683e29-5687-2511-e9f1-238ef9331fb0-ff9eaab1, #w-node-_53683e29-5687-2511-e9f1-238ef9331fb7-ff9eaab1, #w-node-_812073fa-74b9-03f0-0e7b-addc3c2cd2ff-324ac1f6, #w-node-_812073fa-74b9-03f0-0e7b-addc3c2cd312-324ac1f6 {
    grid-area: span 1 / span 2 / span 1 / span 2;
  }
}


