:root {
  --light-cream: #fafaf8;
  --light-grey: #5c5a53;
  --dark-grey: #3c3a34;
  --dark-cream: #e2ded5;
  --forest-green: #838a7b;
}

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

body {
  background-color: var(--light-cream);
  color: var(--light-grey);
  font-family: Raleway, sans-serif;
  font-size: 16px;
  line-height: 20px;
}

h1 {
  color: var(--dark-grey);
  margin-top: 0;
  margin-bottom: 24px;
  font-family: Cormorant Garamond, sans-serif;
  font-size: 8vw;
  font-weight: 400;
  line-height: 110%;
}

h2 {
  color: var(--dark-grey);
  margin-top: 0;
  margin-bottom: 24px;
  font-family: Cormorant Garamond, sans-serif;
  font-size: 6vw;
  font-weight: 400;
  line-height: 120%;
}

h3 {
  color: var(--dark-grey);
  margin-top: 0;
  margin-bottom: 24px;
  font-family: Cormorant Garamond, sans-serif;
  font-size: 5vw;
  font-weight: 400;
  line-height: 110%;
}

h4 {
  color: var(--dark-grey);
  margin-top: 0;
  margin-bottom: 16px;
  font-family: Cormorant Garamond, sans-serif;
  font-size: 4.5vw;
  font-weight: 400;
  line-height: 110%;
}

h5 {
  color: var(--dark-grey);
  margin-top: 0;
  margin-bottom: 8px;
  font-family: Cormorant Garamond, sans-serif;
  font-size: 3.2vw;
  font-weight: 400;
  line-height: 120%;
}

h6 {
  color: var(--dark-grey);
  margin-top: 0;
  margin-bottom: 8px;
  font-family: Cormorant Garamond, sans-serif;
  font-size: 2vw;
  font-weight: 400;
  line-height: 120%;
}

p {
  color: var(--light-grey);
  margin-bottom: 16px;
  font-family: Raleway, sans-serif;
  font-size: 1.4vw;
  line-height: 160%;
}

a {
  color: var(--dark-grey);
  font-family: Raleway, sans-serif;
  font-size: 1.7vw;
  font-style: italic;
  line-height: 120%;
  text-decoration: underline;
}

ul {
  margin-top: 16px;
  margin-bottom: 16px;
  padding-left: 32px;
}

li {
  padding-bottom: 8px;
  font-size: 1.4vw;
  line-height: 160%;
}

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

label {
  color: var(--light-grey);
  margin-bottom: 5px;
  font-family: Raleway, sans-serif;
  font-size: 1.4vw;
  font-weight: 400;
  line-height: 140%;
  display: block;
}

em {
  font-style: italic;
}

figure {
  margin-bottom: 10px;
}

figcaption {
  text-align: center;
  margin-top: 5px;
  font-size: 1.1vw;
  line-height: 140%;
}

.section {
  padding-top: 144px;
  padding-bottom: 144px;
}

.section.top-padding-192 {
  padding-top: 192px;
}

.section.padding-192 {
  padding-top: 192px;
  padding-bottom: 192px;
}

.section.bottom-padding-192 {
  padding-bottom: 192px;
}

.section.bottom-padding-192.no-top-padding.bottom-padding-120 {
  padding-bottom: 84px;
}

.section.no-bottom-padding {
  padding-top: 65px;
  padding-bottom: 0;
}

.section.no-bottom-padding._1 {
  display: none;
}

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

.section.padding-96 {
  padding-top: 96px;
  padding-bottom: 96px;
}

.section.bg-color-2 {
  background-color: var(--dark-cream);
}

.section.bg-color-1 {
  background-color: var(--forest-green);
}

.section.bg-color-1.overlap-section-top {
  background-color: #af666e;
  margin-top: -240px;
}

.container {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 5vw;
  padding-right: 5vw;
}

.container.room-slider-section {
  overflow: hidden;
}

.styleguide-section-wrapper {
  align-items: flex-start;
  display: flex;
}

.styleguide-title-wrapper {
  z-index: 2;
  width: 25%;
  padding-right: 32px;
  position: -webkit-sticky;
  position: sticky;
  top: 64px;
}

.styleguide-content-wrapper {
  width: 75%;
  padding-left: 8px;
}

.style-guide-color-grid {
  grid-column-gap: 56px;
  grid-row-gap: 56px;
  grid-template-columns: 1fr 1fr 1fr;
}

.styleguide-color {
  width: 200px;
  height: 200px;
  margin-bottom: 8px;
}

.styleguide-color.dark-cream {
  border: 1px solid var(--dark-cream);
  background-color: var(--dark-cream);
}

.styleguide-color.forest-green {
  border: 1px solid var(--forest-green);
  background-color: var(--forest-green);
}

.styleguide-color.light-grey {
  border: 1px solid var(--light-grey);
  background-color: var(--light-grey);
}

.styleguide-color.dark-grey {
  border: 1px solid var(--dark-grey);
  background-color: var(--dark-grey);
}

.styleguide-heading-wrapper {
  border-top: 1px solid var(--light-grey);
  padding-top: 16px;
  padding-bottom: 16px;
  display: flex;
}

.styleguide-heading-wrapper.last {
  border-bottom: 1px solid var(--light-grey);
}

.styleguide-heading-content {
  width: 85%;
}

.styleguide-heading-label {
  width: 15%;
  padding-right: 16px;
}

.display {
  font-size: 12vw;
}

.feature-paragraph {
  margin-bottom: 54px;
  font-family: Cormorant Garamond, sans-serif;
  font-size: 2vw;
  line-height: 140%;
}

.feature-paragraph.medium-width {
  max-width: 80vw;
  margin-left: auto;
  margin-right: auto;
}

.small-text {
  color: var(--light-grey);
  margin-bottom: 8px;
  font-family: Raleway, sans-serif;
  font-size: 1.1vw;
  line-height: 140%;
}

.small-text.right-arrow-text {
  width: 120px;
  transform-origin: 0 0;
  color: var(--light-cream);
  white-space: nowrap;
  position: absolute;
  top: 138px;
  bottom: auto;
  left: 0%;
  right: auto;
  transform: rotate(-90deg);
}

.small-text.left-arrow-text {
  width: 120px;
  transform-origin: 100% 100%;
  color: var(--light-cream);
  text-align: left;
  white-space: nowrap;
  position: absolute;
  top: auto;
  bottom: 112px;
  left: auto;
  right: 0%;
  transform: rotate(-90deg);
}

.styleguide-buttons-wrapper {
  border-top: 1px solid var(--light-grey);
  padding-top: 32px;
  padding-bottom: 16px;
}

.button {
  border: 1px solid var(--dark-grey);
  background-color: var(--dark-grey);
  color: var(--light-cream);
  text-align: left;
  cursor: pointer;
  background-image: url('../images/dark_btn_arrow.svg');
  background-position: 86% 42%;
  background-repeat: no-repeat;
  background-size: auto;
  padding: 16px 96px 16px 32px;
  transition: background-position .3s;
}

.button:hover {
  background-position: 90% 42%;
}

.button.light {
  border-color: var(--light-cream);
  background-color: var(--light-cream);
  color: var(--dark-grey);
  background-image: url('../images/light_btn_arrow.svg');
}

.button.outline {
  color: var(--dark-grey);
  background-color: rgba(0, 0, 0, 0);
  background-image: url('../images/light_btn_arrow.svg');
}

.button.secondary {
  color: var(--dark-grey);
  background-color: rgba(0, 0, 0, 0);
  background-image: url('../images/light_btn_arrow.svg');
  border-style: none;
  padding-left: 0;
}

.button.secondary.margin-right {
  margin-right: 40px;
}

.styleguide-single-button {
  margin-top: 24px;
  margin-bottom: 24px;
  margin-right: 56px;
  display: inline-block;
}

.styleguide-single-button.light {
  background-color: var(--forest-green);
  padding: 24px;
}

.button-rounded {
  width: 90px;
  height: 90px;
  border: 1px solid var(--dark-grey);
  background-color: var(--dark-grey);
  background-image: url('../images/dark_btn_arrow.svg');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: auto;
  border-radius: 50%;
}

.button-rounded.light {
  border-color: var(--light-cream);
  background-color: var(--light-cream);
  background-image: url('../images/light_btn_arrow.svg');
}

.button-rounded.outline {
  background-color: rgba(0, 0, 0, 0);
  background-image: url('../images/light_btn_arrow.svg');
}

.hero4 {
  padding-top: 30vh;
  padding-left: 5vw;
  position: relative;
}

.hero1 {
  min-height: 170vh;
  position: relative;
}

.hero1-content-wrapper {
  width: 100%;
  min-height: 100vh;
  justify-content: flex-start;
  align-items: flex-end;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 5vh;
  padding-left: 5vw;
  padding-right: 5vw;
  display: flex;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
}

.hero1-content {
  width: 100%;
  padding-left: 10vw;
  position: relative;
}

.light {
  color: var(--light-cream);
  text-align: left;
}

.light.centralizado {
  text-align: center;
  margin-bottom: 75px;
}

.hero-badge {
  margin-bottom: 16px;
}

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

.subhero-section {
  background-color: var(--dark-cream);
  padding-top: 24px;
  padding-bottom: 24px;
}

.form-input {
  color: var(--dark-grey);
  letter-spacing: 10%;
  background-color: rgba(0, 0, 0, 0);
  border: 1px rgba(0, 0, 0, 0);
  border-bottom: 2px dotted rgba(92, 90, 83, .5);
  margin-bottom: 0;
  padding-left: 0;
  padding-right: 0;
  font-family: Raleway, sans-serif;
  font-size: 1.5vw;
  font-style: italic;
  line-height: 140%;
  transition: border-color .3s;
}

.form-input:focus {
  border-bottom-color: var(--light-grey);
  color: var(--dark-grey);
}

.form-input::-ms-input-placeholder {
  color: rgba(60, 58, 52, .6);
}

.form-input::placeholder {
  color: rgba(60, 58, 52, .6);
}

.form-input.light {
  color: var(--light-cream);
  border-bottom-color: rgba(250, 250, 248, .6);
}

.form-input.light:focus {
  border-bottom-color: #fafaf8;
}

.form-input.light::-ms-input-placeholder {
  color: rgba(250, 250, 248, .7);
}

.form-input.light::placeholder {
  color: rgba(250, 250, 248, .7);
}

.booking-form-block {
  margin-bottom: 0;
}

.booking-form {
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.submit-button {
  border: 1px solid var(--dark-grey);
  background-color: var(--dark-grey);
  color: var(--light-cream);
  cursor: pointer;
  background-image: url('../images/dark_btn_arrow.svg');
  background-position: 86% 42%;
  background-repeat: no-repeat;
  background-size: auto;
  padding: 16px 96px 16px 32px;
  font-family: Raleway, sans-serif;
  font-size: 1.7vw;
  font-style: italic;
  line-height: 120%;
  transition: background-position .3s;
}

.submit-button:hover {
  background-position: 90% 42%;
}

.submit-button.light {
  border-color: var(--light-cream);
  background-color: var(--light-cream);
  color: var(--dark-grey);
  background-image: url('../images/light_btn_arrow.svg');
}

.two-column-body-grid {
  grid-column-gap: 130px;
  grid-template-rows: auto;
}

.two-column-body-grid._1-row {
  grid-template-rows: auto;
}

.two-column-body-wrapper {
  padding-bottom: 96px;
  padding-left: 10vw;
  padding-right: 10vw;
}

.heading-wrapper {
  padding-bottom: 96px;
}

.heading-wrapper.inner-spacing {
  padding-bottom: 11px;
  padding-left: 5vw;
}

.heading-wrapper.centered {
  text-align: center;
}

.heading-wrapper.width-small.centered {
  margin-left: auto;
  margin-right: auto;
}

.overlap-image-wrapper {
  height: 70vh;
  overflow: hidden;
}

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

.div-block {
  padding-left: 10vh;
}

.divider._288px {
  height: 288px;
}

.divider._288px.mobile-none._200px {
  height: 100px;
}

.divider._144px {
  height: 144px;
}

.divider._96px {
  height: 96px;
}

.home-room-slider-wrapper {
  overflow: hidden;
}

.grid-layout-content-wrapper.left-padding20 {
  padding-left: 20vw;
}

.card-image-wapper {
  align-items: flex-end;
  display: flex;
  overflow: hidden;
}

.card-content-wrapper {
  padding-top: 24px;
}

.split-section-wrapper {
  grid-template-rows: auto;
  display: flex;
}

.testimonial-wrapper {
  flex-direction: column;
  align-items: flex-end;
  padding-left: 5vw;
  padding-right: 5vw;
  display: flex;
}

.testimonial-content {
  margin-bottom: 40px;
}

.testimonial-profile {
  align-items: center;
  display: flex;
}

.testimonial-profile-image-wrapper {
  width: 90px;
  height: 90px;
  border-radius: 50%;
  margin-right: 16px;
  overflow: hidden;
}

.paragraph-width-medium {
  max-width: 60vw;
  margin-left: auto;
  margin-right: auto;
}

.full-frame-image-wrapper {
  height: 100vh;
  background-image: url('https://d3e54v103j8qbb.cloudfront.net/img/background-image.svg');
  background-position: 50%;
  background-size: cover;
  background-attachment: fixed;
  justify-content: flex-start;
  align-items: flex-end;
  padding-bottom: 3vw;
  padding-left: 5vw;
  padding-right: 5vw;
  display: flex;
  overflow: hidden;
}

.full-frame-image-wrapper.homepage {
  background-image: url('../images/Foto-Dra-Marina.jpg');
  background-position: 50%;
  background-size: cover;
  background-attachment: fixed;
}

.full-frame-image-wrapper.gastronomy {
  background-image: url('../images/restaurant_outdoorArea.jpg');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
}

.full-frame-image-wrapper.experiences {
  background-image: url('../images/beachSurfing.jpg');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
}

.full-frame-image-wrapper.hotel {
  background-image: url('../images/Foto-Dra-Marina.jpg');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
}

.full-frame-image-wrapper.contact {
  background-image: url('../images/older-woman-enjoying-her-time-beach.jpg');
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
}

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

.grid-list-item-wrapper {
  border-top: 1px solid var(--light-grey);
  padding-top: 32px;
  padding-bottom: 32px;
  font-style: normal;
  text-decoration: none;
  display: flex;
}

.grid-list-item-wrapper.last {
  border-bottom: 1px solid var(--light-grey);
}

.grid-list-item-image-wrapper {
  width: 25%;
  overflow: hidden;
}

.grid-list-item-content-wrapper {
  width: 60%;
  padding-left: 10%;
}

.grid-list-item-number-wrapper {
  width: 15%;
  position: relative;
}

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

.cta-1-grid {
  grid-column-gap: 8px;
  grid-row-gap: 16px;
  grid-template: ". . . Area-2 Area-2 . . . . . Area-4 Area-4" minmax(auto, 1fr)
                 "Area Area . . . . Area-3 Area-3 Area-3 . Area-4 Area-4" minmax(auto, 1fr)
                 / 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
}

.cta-wrapper {
  position: relative;
}

.cta-area-1, .cta-area-2, .cta-area-3, .cta-area-4 {
  overflow: hidden;
}

.cta-1-link-block {
  justify-content: center;
  align-items: center;
  font-style: normal;
  text-decoration: none;
  display: flex;
  position: absolute;
  top: 0%;
  bottom: 0%;
  left: 0%;
  right: 0%;
}

.cta-1-arrow {
  margin-left: 32px;
}

.footer-wrapper {
  border-top: 0px solid var(--light-grey);
  padding-top: 56px;
  padding-bottom: 16px;
}

.footer-top-row {
  padding-bottom: 96px;
  display: flex;
}

.footer-bottom-row {
  justify-content: space-between;
  display: flex;
}

.footer-menu {
  width: 25%;
  margin-right: 17px;
}

.footer-contact {
  width: 30%;
}

.footer-logo {
  width: 42%;
  flex-direction: column;
  justify-content: space-between;
  padding-right: 10%;
  display: flex;
}

.footer-link {
  margin-bottom: 8px;
  font-family: Cormorant Garamond, sans-serif;
  font-size: 2.2vw;
  font-style: normal;
  line-height: 140%;
  text-decoration: none;
  transition: color .3s;
  display: block;
}

.footer-link:hover {
  color: rgba(131, 138, 123, .7);
}

.footer-contact-link {
  align-items: flex-start;
  margin-bottom: 8px;
  font-family: Cormorant Garamond, sans-serif;
  font-size: 2.2vw;
  font-style: normal;
  line-height: 140%;
  text-decoration: none;
  transition: color .3s;
  display: flex;
}

.footer-contact-link:hover {
  color: rgba(131, 138, 123, .7);
}

.footer-contact-icon {
  margin-right: 16px;
  padding-top: 10px;
}

.footer-secondary-link {
  margin-right: 32px;
  font-size: 1.1vw;
  font-style: normal;
  line-height: 140%;
  text-decoration: none;
  transition: color .3s;
}

.footer-secondary-link:hover {
  color: rgba(131, 138, 123, .7);
}

.footer-logo-link {
  margin-bottom: 24px;
}

.footer-social-link {
  width: 40px;
  margin-right: 32px;
}

.hero2 {
  min-height: 100vh;
  background-color: var(--forest-green);
  flex-direction: column;
  display: flex;
}

.hero2-image-wrapper {
  width: 70%;
  height: 85%;
  position: absolute;
  top: 10%;
  bottom: 0%;
  left: auto;
  right: 0%;
  overflow: hidden;
}

.hero-content {
  width: 100%;
  padding-bottom: 5vh;
  padding-left: 5vw;
  position: relative;
}

.hero2-content-wrapper {
  width: 100%;
  flex: 1;
  justify-content: flex-start;
  align-items: flex-end;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 5vh;
  padding-left: 5vw;
  padding-right: 5vw;
  display: flex;
  position: relative;
}

.hero2-image-overlay {
  background-image: linear-gradient(87deg, rgba(37, 30, 22, .45), rgba(56, 44, 32, 0));
  position: absolute;
  top: 0%;
  bottom: 0%;
  left: 0%;
  right: 0%;
}

.room-type-wrapper {
  padding-bottom: 196px;
  display: flex;
}

.room-type-wrapper:nth-child(2n) {
  flex-direction: row-reverse;
}

.room-type-image-wrapper {
  width: 50%;
  align-items: flex-end;
  display: flex;
  overflow: hidden;
}

.room-type-content-wrapper {
  width: 50%;
  flex-direction: column;
  justify-content: space-between;
  display: flex;
}

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

.room-amenity-icon {
  width: 40px;
  margin-right: 8px;
}

.collection-item {
  padding-left: 0;
  padding-right: 0;
}

.room-amenity-section {
  border-top: 1px solid var(--light-grey);
  padding-top: 40px;
}

.right-padding {
  padding-right: 5vw;
}

.left-padding {
  padding-left: 5vw;
}

.room-type-btn-wrapper {
  justify-content: flex-start;
  margin-top: 64px;
  display: flex;
}

.full-frame-slider-wrapper {
  overflow: hidden;
}

.full-frame-slider {
  height: 100vh;
  background-color: rgba(0, 0, 0, 0);
  position: relative;
}

.left-arrow {
  width: 20vw;
  height: 90vh;
  align-items: center;
  padding-left: 1vw;
  display: flex;
}

.right-arrow {
  width: 20vw;
  height: 90vh;
  justify-content: flex-end;
  align-items: center;
  padding-right: 1vw;
  display: flex;
}

.full-frame-single-slide-wrapper {
  width: 100%;
  height: 100%;
}

.full-frame-single-slide-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.slide-nav {
  max-width: 1440px;
  text-align: left;
  margin-left: auto;
  margin-right: auto;
  padding-left: 5vw;
  padding-right: 5vw;
}

.slider-mask {
  padding-bottom: 50px;
}

.cta-2-link-block {
  justify-content: center;
  align-items: center;
  font-style: normal;
  text-decoration: none;
  display: flex;
  position: absolute;
  top: 0%;
  bottom: 0%;
  left: 0%;
  right: 0%;
}

.cta-2-grid {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template: "." minmax(auto, 1fr)
                 "." minmax(auto, 1fr)
                 / 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
}

.centered-paragraph {
  text-align: center;
  padding-top: 96px;
}

.hero3 {
  width: 100%;
  min-height: 100vh;
  align-items: flex-end;
  padding-left: 5vw;
  padding-right: 5vw;
  display: flex;
  position: relative;
}

.footer-container {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 5vw;
  padding-right: 5vw;
}

.banner {
  justify-content: center;
  align-items: center;
  padding-left: 5vw;
  padding-right: 5vw;
  display: flex;
}

.subtitle {
  color: var(--light-grey);
  margin-bottom: 8px;
  font-family: Raleway, sans-serif;
  font-size: 1.7vw;
  line-height: 140%;
}

.subtitle.light {
  color: var(--light-cream);
}

.italics {
  font-style: italic;
}

.banner-collection-list {
  justify-content: space-around;
  display: flex;
}

.banner-collection-item {
  border-right: 1px solid var(--light-grey);
  text-align: center;
  flex: 1;
  padding-top: 16px;
  padding-bottom: 8px;
}

.banner-title {
  border-right: 1px solid var(--light-grey);
  padding-top: 16px;
  padding-bottom: 8px;
  padding-right: 56px;
}

.home-room-slider {
  width: 100%;
  height: auto;
  background-color: rgba(0, 0, 0, 0);
}

.home-room-mask {
  width: 70vw;
  margin-left: auto;
  margin-right: auto;
  overflow: visible;
}

.home-room-single-slide {
  margin-right: 25px;
  padding-left: 0;
  padding-right: 5vw;
}

.room-slider-collection-item {
  height: 100%;
}

.room-slide-wrapper {
  height: 100%;
  flex-direction: column;
  justify-content: flex-end;
  font-style: normal;
  text-decoration: none;
  display: flex;
}

.room-slide-image-wrapper {
  height: 70vh;
  transform-origin: 50% 100%;
  flex-direction: column;
  justify-content: flex-end;
  display: flex;
}

.room-slide-content-wrapper {
  padding-top: 32px;
  display: flex;
}

.hide {
  display: none;
}

.room-slide-title {
  width: 40%;
  margin-right: 50px;
  padding-right: 0;
}

.room-slide-description {
  width: 60%;
  padding-left: 38px;
}

.room-slide-image {
  width: 100%;
  height: 100%;
  transform-origin: 50% 100%;
  object-fit: cover;
}

.room-slider-collection-list-wrapper, .room-slider-collection-list {
  height: 100%;
}

.room-slide-image-container {
  height: 100%;
  position: relative;
  overflow: hidden;
}

.hero-arrow {
  position: absolute;
  top: auto;
  bottom: -64px;
  left: auto;
  right: 0%;
}

.mobile-only {
  display: none;
}

.room-slider-right-arrow {
  z-index: 2;
  width: 10vw;
  padding-top: 10vh;
  position: absolute;
  top: 0%;
  bottom: 0%;
  left: auto;
  right: 0%;
}

.room-slider-left-arrow {
  z-index: 2;
  width: 10vw;
  padding-top: 75vh;
}

.grid-halves {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1.25fr;
}

.main-content {
  border-right: 1px solid var(--light-grey);
  padding-top: 24px;
  padding-bottom: 24px;
  padding-right: 5vw;
}

.secondary-content {
  padding-top: 24px;
  padding-bottom: 24px;
  padding-left: 5vw;
}

.width-small {
  max-width: 40vw;
}

.room-flex-thirds {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  display: flex;
}

.room-item {
  width: 32%;
}

.image-cover {
  width: 100%;
  height: 100%;
  object-fit: cover;
  margin-bottom: 16px;
}

.grid-layout {
  grid-template-rows: auto;
  display: flex;
}

.grid-layout-section-content {
  width: 50%;
}

.grid-layout-section-content.space-between {
  flex-direction: column;
  justify-content: space-between;
  display: flex;
}

.grid-split-section {
  grid-row-gap: 144px;
  grid-template-rows: auto;
}

.grid-split-section._2row {
  grid-row-gap: 96px;
  grid-template-rows: auto auto;
}

.grid-split-section._3row {
  grid-row-gap: 144px;
  grid-template-rows: auto auto auto;
}

.image-container {
  align-items: flex-end;
  display: flex;
  overflow: hidden;
}

.content-container {
  flex-direction: column;
  justify-content: center;
  display: flex;
}

.medium-height {
  height: 70vh;
}

.small-height {
  height: 50vh;
}

.split-section {
  width: 50%;
}

.split-section.padding-top {
  padding-top: 48px;
}

.btn-wrapper {
  margin-top: 64px;
  display: none;
}

.cta-3-grid {
  grid-column-gap: 16px;
  grid-row-gap: 56px;
  grid-template: "Area-2 Area-2 Area-2 Area-2 Area-2 . Area Area Area Area" minmax(auto, 1fr)
                 "Area-3 Area-3 Area-3 Area-3 Area-3 Area-3 Area-3 Area-3 Area-3 Area-3" minmax(auto, 1fr)
                 / 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
  padding-left: 5vw;
  padding-right: 5vw;
}

.newsletter-form {
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.newsletter-input {
  width: 30%;
}

.large-height {
  height: 75vh;
}

.full-frame-video {
  height: 100%;
}

.booking-input {
  width: 15%;
}

.cta-4-grid {
  grid-column-gap: 16px;
  grid-row-gap: 56px;
  grid-template: "Area-2 Area-2 Area-2 Area-2 Area-2 Area-2 Area-2 Area-2 Area-2 Area-2" minmax(auto, 1fr)
                 "Area-3 Area-3 Area-3 Area-3 Area-3 Area-3 Area-3 Area-3 Area-3 Area-3" minmax(auto, 1fr)
                 / 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
  padding-left: 5vw;
  padding-right: 5vw;
}

.extra-small-height {
  height: 35vh;
}

.right-padding10 {
  padding-right: 10vw;
}

.hero-paragraph {
  padding-left: 15vw;
  padding-right: 5vw;
}

.hero-image-overlay {
  background-color: rgba(56, 44, 32, .4);
  position: absolute;
  top: 0%;
  bottom: 0%;
  left: 0%;
  right: 0%;
}

.hero-image-wrapper {
  position: absolute;
  top: 0%;
  bottom: 0%;
  left: 0%;
  right: 0%;
  overflow: hidden;
}

.hero-content-wrapper {
  width: 100%;
  flex: 1;
  justify-content: flex-start;
  align-items: flex-end;
  margin-left: auto;
  margin-right: auto;
  padding-left: 5vw;
  padding-right: 5vw;
  display: flex;
  position: relative;
}

.grid-layout-2 {
  flex-wrap: wrap;
  grid-template-rows: auto;
  display: flex;
}

.grid-layout-2-section-center {
  width: 100%;
  padding-left: 20vw;
  padding-right: 20vw;
}

.grid-layout-2-section-left {
  width: 40%;
}

.grid-layout-2-section-right {
  width: 60%;
}

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

.contact-input {
  text-align: left;
  margin-bottom: 40px;
}

.form-message {
  color: var(--dark-grey);
  background-color: rgba(0, 0, 0, 0);
  border: 1px rgba(0, 0, 0, 0);
  border-bottom: 2px dotted rgba(92, 90, 83, .5);
  padding-left: 0;
  font-size: 1.5vw;
  font-style: italic;
  line-height: 140%;
  transition: border-color .3s;
}

.form-message:focus {
  border-bottom-color: var(--light-grey);
}

.form-message::-ms-input-placeholder {
  color: rgba(60, 58, 52, .6);
}

.form-message::placeholder {
  color: rgba(60, 58, 52, .6);
}

.contact-info {
  margin-top: 40px;
}

.contact-link {
  align-items: flex-start;
  margin-bottom: 24px;
  font-family: Cormorant Garamond, sans-serif;
  font-size: 2.2vw;
  font-style: normal;
  line-height: 140%;
  text-decoration: none;
  transition: color .3s;
  display: flex;
}

.contact-link:hover {
  color: rgba(131, 138, 123, .7);
}

.maps-wrapper {
  height: 75vh;
  overflow: hidden;
}

.map {
  height: 100%;
}

.tab-link {
  background-color: rgba(0, 0, 0, 0);
  margin-right: 56px;
  padding-left: 0;
  padding-right: 0;
  font-family: Cormorant Garamond, sans-serif;
  font-size: 2.2vw;
  font-style: normal;
  line-height: 140%;
}

.tab-link.w--current {
  border-bottom: 1px solid var(--light-grey);
  background-color: rgba(0, 0, 0, 0);
}

.tab-pane {
  padding-top: 64px;
}

.hero1-arrow {
  position: absolute;
  top: auto;
  bottom: 0%;
  left: 0%;
  right: auto;
}

.nav-link {
  padding-top: 1vh;
  padding-bottom: 1vh;
  font-family: Cormorant Garamond, sans-serif;
  font-size: 5vw;
  font-style: normal;
  text-decoration: none;
  display: inline-block;
}

.nav-link.w--current {
  color: var(--forest-green);
}

.nav-link._1, .nav-link._2 {
  color: #fff;
}

.nav-link._3 {
  display: none;
}

.nav-link._4, .nav-link._5 {
  color: #fff;
}

.navigation-bar {
  z-index: 99;
  width: 100%;
  height: 60px;
  background-color: rgba(0, 0, 0, 0);
  justify-content: space-between;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  padding-left: 5vw;
  padding-right: 5vw;
  display: flex;
  position: relative;
}

.navigation-bar.dark {
  background-color: var(--light-cream);
  margin-top: 0;
  display: block;
}

.nav-logo {
  z-index: 99;
  align-self: center;
  padding-left: 0;
  position: relative;
}

.nav-logo.mobile-only, .nav-logo.mobile-none {
  max-height: 60px;
}

.nav-buttons {
  z-index: 99;
  flex: 1;
  justify-content: flex-end;
  display: flex;
  position: relative;
}

.book-button {
  margin-right: 32px;
  padding: 16px;
}

.menu-button {
  cursor: pointer;
  align-self: center;
  align-items: center;
  padding: 0 0 0 16px;
  font-size: 1.4vw;
  text-decoration: none;
  display: flex;
}

.menu-button.w--open {
  background-color: rgba(0, 0, 0, 0);
}

.nav-links-container {
  z-index: 98;
  min-height: 100vh;
  background-color: var(--dark-cream);
  flex-direction: column;
  justify-content: space-between;
  padding-top: 60px;
  padding-left: 5vw;
  padding-right: 5vw;
  display: none;
  position: absolute;
  top: 0%;
  bottom: 0%;
  left: 0%;
  right: 0%;
}

.nav-links-container.dark {
  background-color: #8b4f58;
  display: block;
}

.nav-links-container.light {
  background-color: #8b4f58;
}

.nav-primary-wrapper {
  flex: 1;
  align-items: center;
  padding-left: 5vw;
  padding-right: 5vw;
  display: flex;
}

.nav-secondary-wrapper {
  color: #fff;
  border-top: 1px solid #fff;
  justify-content: space-between;
  padding-top: 16px;
  padding-bottom: 16px;
  display: flex;
}

.nav-social-wrapper {
  align-items: center;
  display: flex;
}

.nav-social-link {
  width: 32px;
  margin-right: 32px;
}

.nav-social-link.first {
  margin-left: 56px;
}

.nav-social-link.last {
  margin-right: 0;
}

.nav-secondary-link {
  margin-bottom: 8px;
  margin-right: 56px;
  font-family: Cormorant Garamond, sans-serif;
  font-size: 2.2vw;
  font-style: normal;
  line-height: 140%;
  text-decoration: none;
  transition: color .3s;
}

.nav-secondary-link:hover {
  color: rgba(131, 138, 123, .7);
}

.nav-secondary-link.first {
  margin-right: 56px;
}

.nav-secondary-link.last {
  margin-right: 0;
}

.nav-primary-links-wrapper {
  width: 100%;
  flex-direction: column;
  align-items: flex-start;
  padding-right: 0;
  display: flex;
}

.nav-image-wrapper {
  width: 50%;
  align-items: center;
  display: flex;
}

.nav-image-wrapper.medium-height {
  position: relative;
  overflow: hidden;
}

.main-nav-image {
  position: absolute;
  top: auto;
  bottom: 0%;
  left: 0%;
  right: 0%;
}

.secondary-nav-image {
  align-self: center;
  position: absolute;
  top: auto;
  bottom: 0%;
  left: 0%;
  right: 0%;
}

.secondary-nav-image._1, .secondary-nav-image._2, .secondary-nav-image._3, .secondary-nav-image._4, .secondary-nav-image._5 {
  display: none;
}

.logo-light.mobile-only, .logo-light.mobile-none {
  max-height: 60px;
}

.lottie-btn {
  width: 40px;
  margin-bottom: 0;
  margin-left: 8px;
  padding-top: 4px;
}

.no-margin {
  color: #fff;
  margin-bottom: 0;
}

.nav-container {
  width: 100%;
  max-width: 100%;
  justify-content: space-between;
  display: flex;
  position: relative;
}

.navigation-bar-dark {
  z-index: 99;
  width: 100%;
  height: 60px;
  background-color: rgba(0, 0, 0, 0);
  justify-content: space-between;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  padding-left: 5vw;
  padding-right: 5vw;
  display: flex;
}

.btn-explore {
  justify-content: center;
  align-items: center;
  display: flex;
  position: absolute;
  top: 0%;
  bottom: 0%;
  left: 0%;
  right: 0%;
}

.arrow-img {
  width: 90px;
}

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

.slider-arrow-image {
  width: 90px;
  height: 90px;
}

.room-subhero-section {
  background-color: var(--dark-cream);
  padding-top: 24px;
  padding-bottom: 24px;
}

.rooms-collection-list-wrapper {
  width: 100%;
  padding-left: 5vw;
  padding-right: 5vw;
}

.collection-image-wrapper {
  height: 70vh;
  margin-bottom: 16px;
  overflow: hidden;
}

.booking-wrapper {
  z-index: 9999;
  width: 100%;
  background-color: var(--dark-cream);
  align-items: center;
  padding-left: 5vw;
  padding-right: 5vw;
  display: none;
  position: fixed;
  top: 0%;
  bottom: 0%;
  left: 0%;
  right: 0%;
}

.booking-content {
  align-items: center;
  display: flex;
  position: relative;
}

.boking-image-wrapper {
  width: 45%;
  align-items: flex-end;
  display: flex;
  overflow: hidden;
}

.booking-form-wrapper {
  width: 55%;
}

.main-booking-form-block {
  margin-bottom: 0;
}

.main-booking-form {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.main-booking-input {
  width: 30%;
  margin-bottom: 64px;
}

.booking-close-btn {
  height: 60px;
  align-items: center;
  margin-right: 80px;
  text-decoration: none;
  display: flex;
  position: absolute;
  top: 0%;
  bottom: auto;
  left: auto;
  right: 5vw;
}

.room-slider-next {
  width: 10vw;
  height: 45.5vh;
  padding-top: 10vh;
  position: absolute;
  top: 24.5vh;
  bottom: auto;
  left: auto;
  right: 0%;
}

.room-slider-previous {
  width: 10vw;
  height: 45.5vh;
  padding-top: 10vh;
  position: absolute;
  top: 24.5vh;
  bottom: auto;
  left: 0%;
  right: auto;
}

.collection-list-wrapper {
  flex: 1;
}

.room-link-block {
  width: 100%;
  text-decoration: none;
}

.collection-content-wrapper {
  align-items: center;
  padding-top: 8px;
  padding-bottom: 0;
  display: flex;
}

.collection-arrow-img {
  margin-bottom: 8px;
  margin-left: 20px;
  margin-right: 20px;
}

.banner-collection-list-wrapper {
  flex: 1;
}

.raleway {
  font-family: Raleway, sans-serif;
}

.styleguide-icons-content {
  width: 85%;
  justify-content: space-between;
  display: flex;
}

.icon {
  width: 48px;
  height: 48px;
}

.grid-arrow {
  display: none;
  position: absolute;
  top: 0%;
  bottom: auto;
  left: 0%;
  right: auto;
}

.lottie-mobile {
  width: 40px;
  margin-bottom: 0;
  margin-left: 8px;
  padding-top: 4px;
  display: none;
}

.utility-page-wrap {
  width: 100vw;
  height: 100vh;
  max-height: 100%;
  max-width: 100%;
  background-color: var(--dark-cream);
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  display: flex;
}

.utility-page-content {
  width: 50%;
  text-align: center;
  flex-direction: column;
  flex: 1;
  justify-content: center;
  align-self: center;
  align-items: center;
  padding-left: 5vw;
  padding-right: 5vw;
  display: flex;
  position: relative;
}

.nav-link-light {
  color: var(--light-cream);
  font-size: 1.4vw;
}

._404-grid {
  max-width: 100%;
  min-height: 100vh;
  grid-row-gap: 64px;
  grid-template-rows: auto auto auto;
  grid-template-columns: 1fr 1.25fr 1fr;
  padding: 15vh 5vw 5vh;
  position: absolute;
  top: 0%;
  bottom: 0%;
  left: 0%;
  right: 0%;
}

._404-grid-1 {
  overflow: hidden;
}

._404-grid-2 {
  padding-right: 10vw;
}

._404-grid-4 {
  overflow: hidden;
}

._404-grid-3 {
  padding-left: 10vw;
}

._404-grid-image {
  width: 100%;
  height: 100%;
  opacity: .6;
  object-fit: cover;
}

.navigation-dark {
  z-index: 998;
  margin-top: 0;
  display: none;
  position: fixed;
  top: 0%;
  bottom: auto;
  left: 0%;
  right: 0%;
}

.navigation-light {
  z-index: 1001;
  display: block;
  position: fixed;
  top: 0%;
  bottom: auto;
  left: 0%;
  right: 0%;
}

.nav-link-dark {
  font-size: 1.4vw;
}

.testimonial-section {
  padding-top: 144px;
  padding-bottom: 144px;
}

.hero-bg-image {
  background-image: url('../images/Banner.jpg');
  background-position: 50%;
  background-size: cover;
  background-attachment: scroll;
  position: absolute;
  top: 0%;
  bottom: 0%;
  left: 0%;
  right: 0%;
}

.hero-bg-overlay {
  background-image: linear-gradient(359deg, rgba(56, 44, 32, 0), rgba(139, 79, 88, .7));
  position: absolute;
  top: 0%;
  bottom: 0%;
  left: 0%;
  right: 0%;
}

.card-image-wapper-fixed {
  overflow: hidden;
}

.card-image-wapper-fixed.extra-large-height {
  height: 90vh;
}

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

.loader {
  z-index: 9999;
  background-color: var(--dark-cream);
  justify-content: center;
  align-items: center;
  display: none;
  position: fixed;
  top: 0%;
  bottom: 0%;
  left: 0%;
  right: 0%;
}

.loader-logo-wrapper {
  width: 100%;
  max-width: 300px;
  text-align: center;
}

.loader-line {
  height: 1px;
  background-color: var(--light-grey);
  transform-origin: 50% 100%;
  margin-top: 32px;
}

.full-frame-video-wrapper {
  height: 100vh;
  justify-content: flex-start;
  align-items: flex-end;
  overflow: hidden;
}

.close-icon {
  margin-left: 8px;
}

.popup {
  z-index: 9998;
  justify-content: center;
  align-items: center;
  display: none;
  position: fixed;
  top: 0%;
  bottom: 0%;
  left: 0%;
  right: 0%;
}

.popup-info {
  width: 60vw;
  background-color: var(--light-cream);
  align-items: center;
  display: flex;
  position: relative;
}

.popup-overlay {
  background-color: rgba(60, 58, 52, .75);
  position: absolute;
  top: 0%;
  bottom: 0%;
  left: 0%;
  right: 0%;
}

.popup-image-wrapper {
  width: 45%;
  align-self: stretch;
}

.popup-content-wrapper {
  width: 55%;
  padding: 64px 32px;
}

.popup-close-btn {
  height: 60px;
  align-items: center;
  margin-right: 24px;
  text-decoration: none;
  display: flex;
  position: absolute;
  top: 0%;
  bottom: auto;
  left: auto;
  right: 0%;
}

.popup-close-icon {
  margin-left: 8px;
}

.hero-bg-wrapper {
  position: absolute;
  top: 0%;
  bottom: 0%;
  left: 0%;
  right: 0%;
  overflow: hidden;
}

.hero-content-centered {
  text-align: center;
  padding-top: 30vh;
  padding-left: 5vw;
  padding-right: 5vw;
  position: relative;
}

.blog-post {
  max-width: 80%;
  margin-left: auto;
  margin-right: auto;
}

.blog-post img {
  margin-top: 56px;
  margin-bottom: 56px;
}

.blog-collection-list-wrapper {
  width: 100%;
}

.blog-flex-thirds {
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  display: flex;
}

.blog-item {
  width: 32%;
}

.collection-link-block {
  width: 100%;
  cursor: pointer;
  text-decoration: none;
}

.blog-list-item {
  flex-wrap: wrap;
  margin-bottom: 144px;
  display: flex;
}

.blog-list-item:nth-child(2n) {
  flex-direction: row-reverse;
}

.blog-list-item:last-child {
  margin-bottom: 0;
}

.blog-image-container {
  width: 50%;
  align-items: flex-end;
  display: flex;
  overflow: hidden;
}

.blog-content-container {
  width: 50%;
  flex-direction: column;
  justify-content: center;
  display: flex;
}

.filter-section {
  background-color: var(--dark-cream);
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding-top: 24px;
  padding-bottom: 24px;
  display: flex;
}

.filter-link {
  margin-bottom: 8px;
  font-family: Cormorant Garamond, sans-serif;
  font-size: 2.2vw;
  font-style: normal;
  line-height: 140%;
  text-decoration: none;
  transition: color .3s;
  display: block;
}

.filter-link:hover {
  color: rgba(131, 138, 123, .7);
}

.filter-link.w--current {
  color: rgba(60, 58, 52, .7);
}

.filter-collection-item {
  text-align: center;
  padding: 16px 32px 8px;
}

.filter-collection-list {
  justify-content: flex-start;
  display: flex;
}

.filter-collection-list-wrapper {
  flex: 1;
}

.filter-wrapper {
  padding: 16px 32px 8px;
}

.filter-banner {
  justify-content: flex-start;
  align-items: center;
  padding-left: 5vw;
  padding-right: 5vw;
  display: flex;
}

.fab-button {
  z-index: 99999;
  position: fixed;
  top: auto;
  bottom: 2vw;
  left: auto;
  right: 2vw;
}

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

.text-span {
  font-size: 1.1vw;
}

.image, .image-2 {
  filter: brightness(200%);
}

.heading {
  font-size: 4vw;
}

.heading-2, .heading-3 {
  font-size: 2.5vw;
}

.empty-state, .empty-state-2, .empty-state-3 {
  display: none;
}

.body {
  font-family: Montserrat, sans-serif;
}

.image-3 {
  max-width: 300px;
}

@media screen and (min-width: 1280px) {
  .section.bg-color-1.overlap-section-top {
    background-color: #af666e;
  }

  .display.light {
    font-size: 9vw;
  }

  .light.right-align {
    display: none;
  }

  .hero-bg-image {
    background-image: url('../images/Banner.jpg');
    background-size: cover;
    background-attachment: scroll;
  }

  .hero-bg-overlay {
    background-image: linear-gradient(359deg, rgba(56, 44, 32, 0), rgba(139, 79, 88, .7));
  }

  .popup {
    display: none;
  }
}

@media screen and (min-width: 1440px) {
  h1 {
    font-size: 7vw;
  }

  p {
    font-size: 1.2vw;
  }

  a {
    font-size: 1.4vw;
  }

  li, label {
    font-size: 1.2vw;
  }

  .section.bg-color-1.overlap-section-top {
    background-color: #af666e;
  }

  .container {
    padding-left: 10vw;
    padding-right: 10vw;
  }

  .display {
    font-size: 10vw;
  }

  .feature-paragraph {
    font-size: 2vw;
  }

  .feature-paragraph.medium-width {
    max-width: 60vw;
  }

  .button {
    font-size: 1.4vw;
  }

  .hero1-content-wrapper {
    padding-left: 10vw;
    padding-right: 10vw;
  }

  .form-input {
    font-size: 1.2vw;
  }

  .booking-form-block {
    padding-left: 10vh;
    padding-right: 10vh;
  }

  .submit-button {
    font-size: 1.4vw;
  }

  .card-image {
    width: 100%;
  }

  .paragraph-width-medium {
    max-width: 50vw;
  }

  .full-frame-image-wrapper {
    padding-left: 10vw;
    padding-right: 10vw;
  }

  .footer-link, .footer-contact-link {
    font-size: 2vw;
  }

  .hero2 {
    flex-direction: column;
  }

  .hero2-content-wrapper {
    padding-left: 10vw;
    padding-right: 10vw;
  }

  .slide-nav {
    max-width: 1600px;
    padding-left: 80px;
    padding-right: 80px;
  }

  .hero3 {
    padding-left: 10vw;
    padding-right: 10vw;
  }

  .room-flex-thirds {
    grid-column-gap: 16px;
    grid-row-gap: 16px;
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr 1fr;
    grid-auto-columns: 1fr;
  }

  .form-message {
    font-size: 1.2vw;
  }

  .nav-logo {
    width: 250px;
  }

  .menu-button {
    font-size: 1.2vw;
  }

  .nav-links-container {
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr;
    grid-auto-columns: 1fr;
  }

  .nav-primary-wrapper {
    padding-left: 10vw;
    padding-right: 10vw;
  }

  .nav-secondary-link {
    font-size: 2vw;
  }

  .logo-light {
    width: 250px;
  }

  .logo-light.mobile-none {
    width: auto;
  }

  .navigation-bar-dark, .rooms-collection-list-wrapper, .booking-wrapper {
    padding-left: 10vw;
    padding-right: 10vw;
  }

  .nav-link-light, .nav-link-dark {
    font-size: 1.2vw;
  }

  .loader {
    display: none;
  }

  .loader-line {
    color: #8b4f58;
  }

  .blog-collection-list-wrapper {
    padding-left: 10vw;
    padding-right: 10vw;
  }

  .blog-flex-thirds {
    grid-column-gap: 16px;
    grid-row-gap: 16px;
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr 1fr;
    grid-auto-columns: 1fr;
  }

  .filter-link {
    font-size: 2vw;
  }
}

@media screen and (min-width: 1920px) {
  .section.bg-color-1.overlap-section-top {
    background-color: #af666e;
  }

  .loader {
    display: none;
  }
}

@media screen and (max-width: 991px) {
  h1 {
    font-size: 11vw;
  }

  h2 {
    font-size: 8vw;
  }

  h3 {
    font-size: 6.5vw;
  }

  h4 {
    font-size: 5vw;
  }

  h5 {
    font-size: 4vw;
  }

  h6 {
    font-size: 3vw;
  }

  p {
    font-size: 2vw;
  }

  a {
    font-size: 2.5vw;
  }

  li, label {
    font-size: 2vw;
  }

  figcaption {
    font-size: 1.6vw;
  }

  .section {
    padding-top: 64px;
    padding-bottom: 64px;
  }

  .section.top-padding-192 {
    padding-top: 96px;
  }

  .section.padding-192 {
    padding-top: 64px;
    padding-bottom: 64px;
  }

  .section.bottom-padding-192 {
    padding-bottom: 64px;
  }

  .section.bg-color-1.overlap-section-top {
    margin-top: -128px;
    padding-top: 128px;
  }

  .style-guide-color-grid {
    grid-column-gap: 32px;
    grid-row-gap: 32px;
  }

  .styleguide-color {
    width: 140px;
    height: 140px;
  }

  .feature-paragraph {
    font-size: 3vw;
  }

  .small-text {
    font-size: 1.6vw;
  }

  .small-text.right-arrow-text {
    top: 316px;
  }

  .button {
    text-align: center;
    padding-left: 32px;
  }

  .button.secondary {
    border-style: solid;
    padding-left: 32px;
  }

  .button.secondary.margin-right {
    margin-bottom: 32px;
    margin-right: 0;
  }

  .hero4 {
    padding-top: 40vh;
    padding-left: 0;
  }

  .hero1 {
    min-height: 100vh;
  }

  .hero1-content-wrapper {
    position: relative;
  }

  .hero1-content {
    padding-bottom: 15vw;
    padding-left: 0;
  }

  .subhero-section {
    display: none;
  }

  .form-input {
    font-size: 2vw;
  }

  .booking-form {
    flex-wrap: wrap;
  }

  .submit-button {
    font-size: 2.5vw;
  }

  .two-column-body-grid {
    grid-column-gap: 64px;
  }

  .two-column-body-wrapper {
    padding-bottom: 48px;
    padding-left: 5vw;
    padding-right: 5vw;
  }

  .heading-wrapper {
    padding-bottom: 48px;
  }

  .heading-wrapper.width-small {
    max-width: 50vw;
  }

  .divider._288px {
    height: 144px;
  }

  .divider._144px {
    height: 96px;
  }

  .divider._96px {
    height: 48px;
  }

  .paragraph-width-medium {
    max-width: 75vw;
  }

  .full-frame-image-wrapper {
    height: 50vh;
  }

  .grid-list-item-wrapper {
    padding-top: 16px;
    padding-bottom: 16px;
  }

  .cta-1-grid {
    width: 100%;
  }

  .footer-top-row {
    flex-wrap: wrap;
    padding-bottom: 48px;
  }

  .footer-bottom-row {
    flex-wrap: wrap;
  }

  .footer-menu, .footer-contact {
    width: 50%;
  }

  .footer-logo {
    width: 100%;
  }

  .footer-link {
    font-size: 3vw;
  }

  .footer-contact-link {
    margin-bottom: 16px;
    font-size: 3vw;
  }

  .footer-contact-icon {
    padding-top: 0;
  }

  .footer-bottom-links {
    width: 100%;
    margin-bottom: 16px;
  }

  .footer-secondary-link {
    font-size: 2vw;
  }

  .footer-social-links {
    padding-top: 48px;
    padding-bottom: 56px;
  }

  .footer-social-link {
    width: 40px;
  }

  .hero-content {
    padding-bottom: 15vh;
    padding-left: 0;
  }

  .room-type-wrapper {
    padding-bottom: 98px;
  }

  .room-type-image-wrapper.large-height.right-padding {
    height: auto;
  }

  .room-amenity-wrapper {
    flex-direction: column;
  }

  .room-amenity-icon {
    margin-right: 0;
  }

  .room-amenity-section {
    margin-top: 24px;
    padding-top: 16px;
  }

  .room-type-btn-wrapper {
    flex-direction: column;
    margin-top: 32px;
  }

  .full-frame-slider {
    height: 70vh;
  }

  .cta-2-grid {
    width: 100%;
  }

  .centered-paragraph {
    padding-top: 64px;
  }

  .banner {
    align-items: stretch;
    padding-left: 0;
    padding-right: 0;
  }

  .subtitle {
    font-size: 2.5vw;
  }

  .banner-collection-item {
    padding-left: 32px;
    padding-right: 32px;
  }

  .banner-title {
    align-items: center;
    padding-right: 32px;
    display: flex;
  }

  .room-slide-image-wrapper {
    height: 55vh;
  }

  .room-slide-content-wrapper {
    flex-wrap: wrap;
  }

  .room-slide-title {
    width: 100%;
    padding-right: 0;
  }

  .room-slide-description {
    width: 100%;
    padding-left: 0;
  }

  .hero-arrow {
    bottom: -32px;
  }

  .room-slider-left-arrow {
    padding-top: 60vh;
  }

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

  .main-content {
    border-bottom: 1px solid var(--light-grey);
    border-right-style: none;
  }

  .secondary-content {
    padding-left: 0;
  }

  .grid-split-section, .grid-split-section._3row {
    grid-row-gap: 96px;
  }

  .medium-height {
    height: 40vh;
  }

  .small-height {
    height: 35vh;
  }

  .btn-wrapper {
    margin-top: 32px;
  }

  .cta-3-grid {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  .newsletter-form {
    flex-wrap: wrap;
  }

  .large-height {
    height: 55vh;
  }

  .booking-input {
    width: 30%;
    margin-bottom: 32px;
  }

  .cta-4-grid {
    width: 100%;
    grid-row-gap: 32px;
    grid-template-rows: minmax(auto, .5fr) minmax(auto, 1fr);
    grid-template-areas: "Area-2 Area-2 Area-2 Area-2 Area-2 Area-2 Area-2 Area-2 Area-2 Area-2"
                         "Area-3 Area-3 Area-3 Area-3 Area-3 Area-3 Area-3 Area-3 Area-3 Area-3";
    padding-left: 0;
    padding-right: 0;
  }

  .extra-small-height {
    height: 20vh;
  }

  .hero-content-wrapper {
    padding-left: 0;
    padding-right: 0;
  }

  .grid-layout-2-section-center {
    padding-left: 15vw;
    padding-right: 15vw;
  }

  .form-message {
    font-size: 2vw;
  }

  .contact-link {
    font-size: 3vw;
  }

  .maps-wrapper {
    height: 50vh;
  }

  .tab-link {
    font-size: 3vw;
  }

  .nav-link {
    font-size: 6.5vw;
  }

  .menu-button {
    font-size: 2vw;
  }

  .nav-primary-wrapper {
    padding-left: 0;
    padding-right: 0;
  }

  .nav-secondary-wrapper {
    margin-bottom: 7vh;
  }

  .nav-social-link {
    width: 40px;
  }

  .nav-secondary-link {
    margin-right: 32px;
    font-size: 3vw;
  }

  .btn-explore {
    width: 80px;
    height: 80px;
    top: auto;
    bottom: 16px;
    left: auto;
    right: 16px;
  }

  .arrow-img {
    display: none;
  }

  .collection-image-wrapper {
    height: 50vh;
  }

  .boking-image-wrapper.large-height.left-padding {
    display: none;
  }

  .booking-form-wrapper {
    width: 100%;
  }

  .main-booking-form {
    flex-wrap: wrap;
  }

  .main-booking-input {
    width: 30%;
    margin-bottom: 32px;
  }

  .room-slider-next, .room-slider-previous {
    height: 55vh;
    top: 0;
  }

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

  .no-padding-tablet {
    padding-left: 0;
    padding-right: 0;
  }

  .nav-link-light {
    font-size: 2vw;
  }

  ._404-grid-2 {
    padding-right: 5vw;
  }

  ._404-grid-3 {
    padding-left: 5vw;
  }

  .nav-link-dark {
    font-size: 2vw;
  }

  .testimonial-section {
    padding-top: 64px;
    padding-bottom: 64px;
  }

  .card-image-wapper-fixed.extra-large-height {
    height: 65vh;
  }

  .full-frame-video-wrapper {
    height: 50vh;
  }

  .hero-arrow-image {
    height: 80px;
  }

  .popup-info {
    width: 90vw;
  }

  .hero-content-centered {
    padding-top: 40vh;
    padding-left: 0;
  }

  .blog-post {
    max-width: 100%;
  }

  .blog-post img {
    margin-top: 32px;
    margin-bottom: 32px;
  }

  .filter-link {
    font-size: 3vw;
  }

  .filter-collection-item {
    padding-left: 32px;
    padding-right: 32px;
  }

  .filter-wrapper {
    align-items: center;
    padding-right: 32px;
    display: flex;
  }

  .filter-banner {
    align-items: stretch;
    padding-left: 0;
    padding-right: 0;
  }

  .fab-button {
    width: 80px;
  }
}

@media screen and (max-width: 767px) {
  .section.top-padding-192 {
    padding-top: 64px;
  }

  .style-guide-color-grid {
    grid-column-gap: 8px;
    grid-row-gap: 32px;
  }

  .styleguide-color {
    width: auto;
    height: 120px;
  }

  .hero1-content-wrapper {
    padding-top: 10vh;
  }

  .hero-badge {
    width: 80px;
  }

  .subhero-section {
    display: none;
  }

  .two-column-body-wrapper {
    padding-left: 0;
    padding-right: 0;
  }

  .heading-wrapper {
    padding-bottom: 32px;
  }

  .overlap-image {
    margin-bottom: 52px;
  }

  .split-section-wrapper {
    flex-wrap: wrap;
    grid-template-columns: 1fr;
  }

  .split-section-wrapper.reverse-wrap {
    flex-wrap: wrap-reverse;
  }

  .testimonial-wrapper {
    padding-left: 0;
    padding-right: 0;
  }

  .paragraph-width-medium {
    max-width: 100%;
  }

  .full-frame-image-wrapper {
    height: 100vh;
  }

  .footer-top-row {
    flex-wrap: wrap;
  }

  .footer-menu, .footer-contact {
    width: 50%;
  }

  .footer-logo {
    width: 100%;
  }

  .hero-content {
    padding-top: 10vh;
    padding-bottom: 5vh;
  }

  .full-frame-slider {
    height: 100vh;
  }

  .left-arrow, .right-arrow {
    display: none;
  }

  .room-slide-image-wrapper {
    height: 70vh;
  }

  .hero-arrow {
    top: auto;
    bottom: 0%;
    left: auto;
    right: 0%;
  }

  .room-item {
    margin-right: 16px;
  }

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

  .medium-height {
    height: 65vh;
  }

  .small-height {
    height: 50vh;
  }

  .large-height {
    height: 70vh;
  }

  .extra-small-height {
    height: 35vh;
  }

  .grid-layout-2 {
    grid-template-columns: 1fr;
  }

  .contact-info {
    width: 50%;
  }

  .maps-wrapper {
    height: 100vh;
  }

  .hero1-arrow {
    top: auto;
    bottom: 0%;
    left: auto;
    right: 0%;
  }

  .book-button {
    margin-right: 16px;
  }

  .nav-secondary-wrapper {
    flex-wrap: wrap;
    margin-top: 2vh;
    margin-bottom: 2vh;
  }

  .nav-image-wrapper.medium-height {
    height: 70vh;
  }

  .main-nav-image, .secondary-nav-image._1 {
    top: 0%;
    bottom: auto;
    left: 0%;
    right: 0%;
  }

  .room-collection-list {
    display: flex;
  }

  .booking-wrapper {
    min-height: 100vh;
  }

  .booking-content {
    padding-top: 10vh;
    padding-bottom: 10vh;
  }

  .booking-close-btn {
    z-index: 2;
    margin-right: 0;
  }

  .icon {
    width: 32px;
  }

  .full-frame-video-wrapper {
    height: 100vh;
  }

  .popup-info {
    width: 100vw;
    min-height: 100vh;
    align-items: stretch;
  }

  .popup-image-wrapper {
    width: 25%;
  }

  .popup-content-wrapper {
    width: 75%;
    align-self: center;
    padding-top: 24px;
    padding-bottom: 24px;
  }

  .popup-close-btn {
    z-index: 2;
  }

  .blog-item {
    margin-right: 16px;
  }
}

@media screen and (max-width: 479px) {
  h1 {
    font-size: 15.5vw;
  }

  h2 {
    font-size: 15vw;
    line-height: 100%;
  }

  h3 {
    margin-bottom: 8px;
    font-size: 12vw;
  }

  h4 {
    font-size: 9vw;
  }

  h5 {
    font-size: 7vw;
  }

  h6 {
    font-size: 6vw;
  }

  p, a {
    font-size: 4.5vw;
  }

  ul {
    padding-left: 16px;
  }

  li {
    font-size: 4.5vw;
  }

  label {
    font-size: 5vw;
  }

  figcaption {
    font-size: 4vw;
  }

  .section.bottom-padding-192 {
    padding-bottom: 64px;
  }

  .section.padding-96 {
    padding-top: 64px;
    padding-bottom: 64px;
  }

  .styleguide-section-wrapper {
    flex-wrap: wrap;
  }

  .styleguide-title-wrapper {
    width: 100%;
    background-color: var(--light-cream);
    margin-bottom: 32px;
    padding-top: 60px;
    padding-right: 0;
    top: 0;
  }

  .styleguide-content-wrapper {
    width: 100%;
    padding-left: 0;
  }

  .style-guide-color-grid {
    grid-template-rows: auto auto auto;
    grid-template-columns: 1fr 1fr;
  }

  .styleguide-heading-content {
    width: 100%;
  }

  .styleguide-heading-label {
    display: none;
  }

  .display {
    font-size: 26vw;
  }

  .feature-paragraph {
    font-size: 6.5vw;
  }

  .small-text {
    font-size: 4vw;
  }

  .small-text.right-arrow-text {
    top: 156px;
  }

  .button {
    width: 100%;
    background-position: 80%;
    font-size: 4.5vw;
    font-style: italic;
  }

  .button:hover {
    background-position: 86%;
  }

  .hero4 {
    padding-top: 35vh;
    padding-left: 0;
  }

  .hero1-content-wrapper {
    padding-top: 0;
  }

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

  .form-input {
    font-size: 5vw;
  }

  .submit-button {
    font-size: 4.5vw;
  }

  .two-column-body-grid {
    grid-template: "."
                   "."
                   "."
                   / 1fr;
  }

  .two-column-body-wrapper {
    padding-bottom: 64px;
  }

  .heading-wrapper {
    padding-bottom: 8px;
  }

  .heading-wrapper.inner-spacing {
    padding-left: 0;
  }

  .heading-wrapper.centered {
    text-align: left;
  }

  .heading-wrapper.width-small {
    max-width: 100vw;
  }

  .overlap-image-wrapper {
    height: 65vh;
  }

  .overlap-image {
    margin-bottom: 26px;
  }

  .divider._288px, .divider._144px, .divider._96px {
    height: 64px;
  }

  .grid-layout-content-wrapper {
    margin-bottom: 80px;
  }

  .grid-layout-content-wrapper.left-padding {
    order: 1;
  }

  .grid-layout-content-wrapper.last {
    margin-bottom: 0;
  }

  .testimonial-wrapper {
    align-items: flex-start;
  }

  .testimonial-profile-image-wrapper {
    width: 80px;
    height: 80px;
  }

  .full-frame-image-wrapper {
    height: 65vh;
    margin-top: 32px;
  }

  .full-frame-image-wrapper.experiences {
    background-position: 100%;
  }

  .full-frame-image-wrapper.hotel {
    background-position: 30% 100%;
  }

  .full-frame-image-wrapper.contact {
    background-position: 50%;
  }

  .grid-list-item-wrapper {
    flex-wrap: wrap;
    padding-top: 40px;
    padding-bottom: 40px;
  }

  .grid-list-item-image-wrapper {
    width: 100%;
    order: -1;
    padding-right: 0%;
  }

  .grid-list-item-content-wrapper {
    width: 100%;
    padding-left: 0%;
  }

  .grid-list-item-number-wrapper {
    width: 100%;
  }

  .cta-1-grid {
    grid-column-gap: 16px;
    grid-row-gap: 8px;
    grid-template: "Area Area Area . . ." minmax(auto, .5fr)
                   "Area Area Area . Area-4 Area-4" minmax(auto, .5fr)
                   ". . . . Area-4 Area-4" minmax(auto, 1fr)
                   "Area-2 Area-2 Area-2 . . ."
                   "Area-2 Area-2 Area-2 Area-3 Area-3 Area-3"
                   ". . . Area-3 Area-3 Area-3"
                   / 1fr 1fr 1fr 1fr 1fr 1fr;
    grid-auto-columns: 1fr;
  }

  .cta-area-1 {
    padding-left: 0;
  }

  .cta-1-link-block {
    text-align: center;
    flex-direction: column;
  }

  .footer-wrapper {
    padding-top: 48px;
  }

  .footer-top-row {
    padding-bottom: 48px;
  }

  .footer-bottom-row {
    flex-direction: column;
  }

  .footer-menu, .footer-contact {
    width: 100%;
    margin-top: 48px;
  }

  .footer-logo {
    padding-right: 0%;
  }

  .footer-link {
    margin-bottom: 16px;
    font-size: 8vw;
  }

  .footer-contact-link {
    margin-bottom: 16px;
    font-size: 6.5vw;
  }

  .footer-contact-icon {
    width: 24px;
    padding-top: 8px;
  }

  .footer-secondary-link {
    margin-bottom: 16px;
    margin-right: 0;
    font-size: 4vw;
    display: block;
  }

  .footer-social-links {
    padding-top: 32px;
    padding-bottom: 0;
  }

  .hero2-image-wrapper {
    width: 80%;
    height: 100%;
    top: auto;
    bottom: 0%;
    left: auto;
    right: 0%;
  }

  .hero-content {
    padding-top: 0;
    padding-bottom: 10vh;
  }

  .room-type-wrapper {
    flex-wrap: wrap;
    padding-bottom: 80px;
  }

  .room-type-image-wrapper {
    width: 100%;
  }

  .room-type-image-wrapper.large-height.right-padding {
    height: 55vh;
  }

  .room-type-content-wrapper {
    width: 100%;
    flex-direction: column-reverse;
    order: 1;
    align-content: flex-end;
  }

  .room-amenity-wrapper {
    padding-left: 4px;
    padding-right: 4px;
  }

  .room-amenity-section {
    border-bottom: 1px solid var(--light-grey);
    margin-bottom: 32px;
    padding-bottom: 16px;
  }

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

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

  .room-type-btn-wrapper {
    flex-wrap: wrap;
  }

  .full-frame-slider {
    height: 50vh;
  }

  .cta-2-link-block {
    text-align: center;
    flex-wrap: wrap;
    align-content: center;
  }

  .cta-2-grid {
    grid-row-gap: 8px;
    grid-template-rows: minmax(auto, .25fr) minmax(auto, .25fr) minmax(auto, .25fr) minmax(auto, .25fr) minmax(auto, .25fr) minmax(auto, .25fr) minmax(auto, .25fr);
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  }

  .banner {
    flex-direction: column;
    align-items: stretch;
  }

  .subtitle {
    font-size: 5.5vw;
  }

  .banner-collection-item {
    width: 33%;
    border-right-style: none;
    padding-left: 0;
    padding-right: 0;
  }

  .banner-title {
    border-bottom: 1px solid var(--light-grey);
    text-align: center;
    border-right-style: none;
    justify-content: center;
  }

  .home-room-mask {
    width: 85vw;
    margin-left: 5vw;
  }

  .home-room-single-slide {
    padding-left: 0;
  }

  .room-slide-wrapper {
    justify-content: flex-start;
    overflow: hidden;
  }

  .room-slide-image-wrapper {
    height: 45vh;
  }

  .room-slide-content-wrapper {
    flex-wrap: wrap;
  }

  .room-slide-title, .room-slide-description {
    width: 100%;
  }

  .hero-arrow {
    bottom: -48px;
    right: -2vw;
  }

  .mobile-only {
    display: block;
  }

  .room-slider-left-arrow {
    display: none;
  }

  .main-content {
    padding-top: 0;
  }

  .room-flex-thirds {
    width: 270%;
  }

  .room-item {
    width: 90%;
  }

  .grid-layout {
    flex-wrap: wrap;
  }

  .grid-layout-section-content {
    width: 100%;
  }

  .grid-split-section {
    grid-row-gap: 24px;
    grid-template-rows: auto auto auto auto auto auto;
    grid-template-columns: 1fr;
  }

  .grid-split-section._2row {
    grid-row-gap: 24px;
  }

  .grid-split-section._3row {
    grid-row-gap: 24px;
    grid-template-rows: auto auto auto auto auto auto;
  }

  .content-container {
    margin-bottom: 56px;
  }

  .medium-height {
    height: 50vh;
  }

  .small-height {
    height: 40vh;
  }

  .split-section {
    width: 100%;
  }

  .cta-3-grid {
    grid-column-gap: 8px;
    grid-row-gap: 16px;
    grid-template: "Area-2 Area-2 Area-2 Area-2 Area-2 Area-2" minmax(auto, .75fr)
                   "Area Area Area Area Area Area" minmax(auto, 1fr)
                   "Area-3 Area-3 Area-3 Area-3 Area-3 Area-3"
                   "Area-3 Area-3 Area-3 Area-3 Area-3 Area-3"
                   / 1fr 1fr 1fr 1fr 1fr 1fr;
    grid-auto-columns: 1fr;
  }

  .newsletter-input {
    width: 100%;
    margin-bottom: 40px;
  }

  .large-height {
    height: 55vh;
  }

  .booking-input {
    width: 100%;
  }

  .cta-4-grid {
    grid-column-gap: 8px;
    grid-template: "Area-2 Area-2 Area-2 Area-2 Area-2 Area-2 Area-2 Area-2 Area-2 Area-2" minmax(auto, .3fr)
                   "Area-3 Area-3 Area-3 Area-3 Area-3 Area-3 Area-3 Area-3 Area-3 Area-3" minmax(auto, 1fr)
                   / 1fr 1fr 1fr 1fr;
    grid-auto-columns: 1fr;
  }

  .hero-paragraph, .grid-layout-2-section-center {
    padding-left: 0;
    padding-right: 0;
  }

  .grid-layout-2-section-left {
    width: 100%;
    order: 1;
  }

  .grid-layout-2-section-right {
    width: 100%;
  }

  .form-message {
    font-size: 5vw;
  }

  .contact-info {
    width: 100%;
  }

  .contact-link {
    margin-bottom: 16px;
    font-size: 8vw;
  }

  .maps-wrapper {
    height: 80vh;
    margin-top: 32px;
  }

  .tab-link {
    white-space: nowrap;
    margin-right: 32px;
    font-size: 6.5vw;
  }

  .hero1-arrow {
    bottom: 5vh;
  }

  .nav-link {
    font-size: 13vw;
  }

  .book-button {
    margin-right: 0;
  }

  .menu-button {
    width: 48px;
    height: 48px;
    background-color: var(--dark-grey);
    border-radius: 50%;
    justify-content: center;
    align-items: center;
    margin-left: 16px;
    padding-left: 0;
    display: flex;
  }

  .nav-links-container {
    position: fixed;
  }

  .nav-secondary-wrapper {
    border-top-width: 0;
    margin-top: 0;
  }

  .nav-social-wrapper {
    width: 100%;
    border-top: 1px solid var(--light-grey);
    margin-top: 16px;
    padding-top: 16px;
  }

  .nav-secondary-link {
    margin-bottom: 16px;
    margin-right: 24px;
    font-size: 8vw;
  }

  .nav-primary-links-wrapper {
    width: 100%;
  }

  .nav-image-wrapper.medium-height {
    display: none;
  }

  .logo-light.mobile-only {
    max-width: 80%;
  }

  .lottie-btn {
    margin-left: 0;
    display: none;
  }

  .mobile-none {
    display: none;
  }

  .no-padding-mobile {
    padding-left: 0;
    padding-right: 0;
  }

  .cta-grid-image-wrapper.first {
    padding-left: 5vw;
  }

  .room-subhero-section {
    padding-top: 8px;
    padding-bottom: 8px;
  }

  .rooms-collection-list-wrapper {
    padding-bottom: 24px;
    padding-left: 5vw;
    overflow: scroll;
  }

  .tabs-menu {
    padding-bottom: 16px;
    display: flex;
    overflow: scroll;
  }

  .booking-wrapper {
    align-items: flex-start;
    display: none;
    overflow: scroll;
  }

  .main-booking-input {
    width: 100%;
  }

  .room-slider-next {
    width: 8vw;
    height: 45vh;
    padding-top: 0;
  }

  .room-slider-previous {
    display: none;
  }

  .room-link-block {
    width: 100%;
  }

  .collection-content-wrapper {
    justify-content: center;
  }

  .styleguide-icons-content {
    width: 100%;
    flex-wrap: wrap;
  }

  .lottie-mobile {
    width: 32px;
    margin-left: 0;
    display: block;
  }

  .utility-page-content {
    width: 100%;
  }

  .nav-link-light {
    font-size: 4.5vw;
  }

  ._404-grid {
    display: none;
  }

  .nav-link-dark {
    font-size: 4.5vw;
  }

  .full-frame-video-wrapper {
    height: 65vh;
    margin-top: 32px;
  }

  .popup-info {
    width: 100vw;
    min-height: 100vh;
    flex-wrap: wrap;
    align-content: flex-start;
  }

  .popup-image-wrapper {
    width: 100%;
    height: 35vh;
  }

  .popup-content-wrapper {
    width: 100%;
    padding-left: 5vw;
    padding-right: 5vw;
  }

  .popup-close-btn {
    width: 48px;
    height: 48px;
    background-color: var(--light-cream);
    border-radius: 50%;
    justify-content: center;
    margin-top: 24px;
    margin-right: 5vw;
  }

  .popup-close-icon {
    margin-left: 0;
  }

  .hero-content-centered {
    padding-top: 35vh;
    padding-left: 0;
  }

  .blog-post img {
    margin-top: 24px;
    margin-bottom: 24px;
  }

  .blog-collection-list-wrapper {
    padding-bottom: 24px;
    padding-left: 5vw;
    overflow: scroll;
  }

  .blog-flex-thirds {
    width: 270%;
  }

  .blog-item {
    width: 90%;
  }

  .collection-link-block {
    width: 100%;
  }

  .blog-list-item {
    margin-bottom: 24px;
  }

  .blog-image-container {
    width: 100%;
  }

  .blog-content-container {
    width: 100%;
    margin-top: 24px;
    margin-bottom: 56px;
  }

  .filter-section {
    padding-top: 8px;
    padding-bottom: 8px;
    display: block;
  }

  .filter-link {
    margin-bottom: 16px;
    font-size: 8vw;
  }

  .filter-collection-item {
    width: 33%;
    border-right-style: none;
    padding-left: 16px;
    padding-right: 16px;
  }

  .filter-wrapper {
    padding-left: 16px;
    padding-right: 16px;
  }

  .filter-banner {
    align-items: stretch;
    padding-left: 5vw;
    padding-right: 5vw;
    overflow: scroll;
  }
}

#w-node-a924dcd2-d5c0-7326-f66e-1c36f049af06-f049af02 {
  grid-area: Area;
}

#w-node-a924dcd2-d5c0-7326-f66e-1c36f049af09-f049af02 {
  grid-area: Area-2;
}

#w-node-a924dcd2-d5c0-7326-f66e-1c36f049af0c-f049af02 {
  grid-area: Area-3;
}

#w-node-_027eff61-ae59-0e17-5d3e-471a76193097-76193093 {
  grid-area: Area-2;
}

#w-node-_027eff61-ae59-0e17-5d3e-471a7619309a-76193093 {
  grid-area: Area-3;
}

@media screen and (max-width: 479px) {
  #w-node-c30c76bc-a3a5-9b87-8909-ab48b26c483d-c1d24455 {
    grid-column-end: 1.99537;
    grid-row: 4 / 5;
    grid-column-start: 1;
  }

  #offer2.w-node-_0c5d86fd-7772-3e67-d1c0-e43075770958-c1d24455 {
    grid-column-end: 1.99537;
    grid-column-start: 1;
    grid-row-end: 4.98148;
    grid-row-start: 3.98611;
  }
}


