.w-age-disclaimer {
  --disclaimer-container-justify-content: center;
  --disclaimer-container-padding-top: var(--spacing-16-rem);
  display: flex;
  justify-content: var(--disclaimer-container-justify-content);
  padding-top: var(--disclaimer-container-padding-top);
}
@media (min-width: 1024px) {
  .w-age-disclaimer {
    --disclaimer-container-justify-content: flex-end;
    --disclaimer-container-padding-top: var(--spacing-24-rem);
  }
}

.w-favorite-button--loading {
  pointer-events: none;
}

.w-text-link {
  display: inline-flex;
  align-items: center;
  transition: all 150ms ease-in-out;
}
.w-text-link__anchor {
  color: var(--text-link-color);
  cursor: pointer;
  text-decoration: var(--text-link-text-decoration, none);
  display: flex;
  flex-direction: var(--text-link-flex-direction, row);
  align-items: center;
  gap: var(--spacing-4-rem);
}
.w-text-link__anchor--button {
  font: inherit;
  text-align: inherit;
}
.w-text-link__anchor--disabled {
  color: var(--color-fg-default-disabled);
  cursor: auto;
}
.w-text-link__anchor:hover {
  --text-link-text-decoration: underline;
}
.w-text-link--default-container {
  --text-link-color: var(--color-fg-brand-link);
}
.w-text-link--light-container {
  --text-link-color: var(--color-fg-brand-link);
}
.w-text-link--dark-container {
  --text-link-color: var(--color-fg-brand-link-inverted);
}
.w-container--theme-light .w-text-link--default-container,
.w-container--theme-subtle .w-text-link--default-container {
  --text-link-color: var(--color-fg-brand-link);
}
.w-container--theme-dark .w-text-link--default-container {
  --text-link-color: var(--color-fg-brand-link-inverted);
}
.w-text-link--size-small {
  --text-link-icon-size: var(--spacing-16-rem);
}
.w-text-link--size-medium {
  --text-link-icon-size: var(--spacing-24-rem);
}
.w-text-link--icon-left {
  --text-link-flex-direction: row-reverse;
}
.w-text-link svg {
  width: var(--text-link-icon-size);
  height: var(--text-link-icon-size);
  color: var(--text-link-color);
}

.w-toast {
  --toast-bg-color: var(--color-container-default-subtle);
  --toast-color: var(--color-fg-default-primary);
  --toast-align-items: center;
  --toast-message-white-space: normal;
  --toast-gap: var(--spacing-16-rem);
  --toast-spacing: var(--spacing-16-rem);
  position: fixed;
  z-index: 1000;
  pointer-events: none;
  bottom: var(--toast-spacing);
  left: 50%;
  transform: translateX(-50%);
}
@media (min-width: 1024px) {
  .w-toast {
    --toast-message-white-space: nowrap;
    left: auto;
    right: var(--toast-spacing);
    transform: none;
  }
}
.w-toast--type-large .w-toast {
  --toast-message-white-space: normal;
  --toast-gap: var(--spacing-8-rem);
}
.w-toast__surface {
  pointer-events: auto;
  display: flex;
  align-items: var(--toast-align-items);
  gap: var(--toast-gap);
  padding: var(--spacing-16-rem);
  min-width: calc(280/var(--size-rem-base)*1rem);
  max-width: min(calc(480 / var(--size-rem-base) * 1rem), 100vw - var(--toast-spacing)*2);
  background-color: var(--toast-bg-color);
  border-radius: var(--corner-radius-md-rem);
  box-shadow: 0 1px 3px 0 rgba(85, 85, 85, .1), 1px 3px 8px 0 rgba(51, 51, 51, .08);
  opacity: 1;
  transform: translateY(0);
  visibility: visible;
  transition:
    opacity 300ms ease-in-out,
    transform 300ms ease-in-out,
    visibility 0s 0s;
}
.w-toast__surface--hidden {
  opacity: 0;
  transform: translateY(16px);
  pointer-events: none;
  visibility: hidden;
  transition:
    opacity 300ms ease-in-out,
    transform 300ms ease-in-out,
    visibility 0s 300ms;
}
.w-toast__sr-only {
  position: absolute;
  width: calc(1/var(--size-rem-base)*1rem);
  height: calc(1/var(--size-rem-base)*1rem);
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.w-toast__message {
  flex: 1;
  color: var(--toast-color);
  white-space: var(--toast-message-white-space);
}
.w-toast__divider {
  display: block;
  flex-shrink: 0;
  width: calc(1/var(--size-rem-base)*1rem);
  height: var(--spacing-24-rem);
  background-color: var(--toast-color);
}
.w-toast__action {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  padding: 0;
  background: none;
  border: none;
  cursor: pointer;
  color: var(--color-bg-brand-primary);
}
.w-toast__close {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: var(--spacing-16-rem);
  height: var(--spacing-16-rem);
  padding: 0;
  margin-left: auto;
  background: none;
  border: none;
  cursor: pointer;
  color: var(--toast-color);
  aspect-ratio: 1/1;
}

.w-featured-amenities {
  padding: var(--spacing-16-rem) var(--spacing-16-rem) var(--spacing-20-rem);
  border-radius: var(--corner-radius-md-rem);
  background: var(--color-container-default-lightest);
  box-shadow: 0 2px 20px 0 rgba(0, 0, 0, .08);
}
.w-featured-amenities__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: var(--spacing-20-rem);
}
.w-featured-amenities__header--compact {
  margin-bottom: var(--spacing-16-rem);
}
.w-featured-amenities__see-all-link {
  text-decoration: none;
  color: var(--color-fg-brand-link);
}
.w-featured-amenities__list {
  display: grid;
  gap: var(--spacing-16-rem);
  grid-template-columns: repeat(2, 1fr);
}
.w-featured-amenities__item {
  display: flex;
  gap: var(--spacing-8-rem);
  align-items: center;
  overflow: hidden;
}
.w-featured-amenities__item-text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.w-featured-amenities__icon-wrapper {
  display: flex;
  align-items: center;
  color: var(--color-fg-default-primary);
}
.w-featured-amenities__skeleton-bar {
  display: block;
  height: calc(17/var(--size-rem-base)*1rem);
  border-radius: var(--corner-radius-md-rem);
  background: var(--color-fg-default-quaternary);
  animation: skeleton-pulse 1.5s ease-in-out infinite;
}
.w-featured-amenities__skeleton-bar--title {
  flex: 1 0 0;
}
.w-featured-amenities__skeleton-bar--see-all {
  flex: 0 0 auto;
  width: calc(139/var(--size-rem-base)*1rem);
}
.w-featured-amenities__skeleton-bar--item {
  width: calc(118/var(--size-rem-base)*1rem);
  max-width: 100%;
}
@media (prefers-reduced-motion: reduce) {
  .w-featured-amenities__skeleton-bar {
    animation: none;
  }
}
.w-featured-amenities--loading .w-featured-amenities__header {
  gap: var(--spacing-24-rem);
}
@keyframes skeleton-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: .4;
  }
}

.w-toggle {
  --toggle-transition-duration: 200ms;
  --toggle-transition-timing: ease;
  --toggle-track-background: var(--color-fg-default-quaternary);
  --toggle-track-checked-background: var(--color-fg-brand-primary);
  --toggle-thumb-background: var(--color-container-default-lightest);
  --toggle-thumb-overlay-background: transparent;
  --toggle-thumb-overlay-background-hover: var( --color-container-default-midtone-hovered );
  --toggle-thumb-overlay-background-pressed: var( --color-container-default-midtone-pressed );
  --toggle-track-width: var(--spacing-48-rem);
  --toggle-track-height: calc(28 / var(--size-rem-base) * 1rem);
  --toggle-thumb-width: var(--spacing-24-rem);
  --toggle-thumb-height: var(--spacing-24-rem);
  --toggle-thumb-offset: var(--spacing-2-rem);
  --toggle-thumb-translate: var(--spacing-20-rem);
  cursor: pointer;
  width: 100%;
}
.w-toggle--xs {
  --toggle-track-width: calc(27 / var(--size-rem-base) * 1rem);
  --toggle-track-height: calc(16 / var(--size-rem-base) * 1rem);
  --toggle-thumb-width: calc(12 / var(--size-rem-base) * 1rem);
  --toggle-thumb-height: calc(12 / var(--size-rem-base) * 1rem);
  --toggle-thumb-offset: var(--spacing-2-rem);
  --toggle-thumb-translate: calc(11 / var(--size-rem-base) * 1rem);
}
.w-toggle--sm {
  --toggle-track-width: calc(41 / var(--size-rem-base) * 1rem);
  --toggle-track-height: var(--spacing-24-rem);
  --toggle-thumb-width: var(--spacing-20-rem);
  --toggle-thumb-height: var(--spacing-20-rem);
  --toggle-thumb-offset: var(--spacing-2-rem);
  --toggle-thumb-translate: calc(17 / var(--size-rem-base) * 1rem);
}
.w-toggle--disabled {
  --toggle-track-background: var(--color-fg-default-disabled);
  --toggle-track-checked-background: var(--color-fg-default-disabled);
  --toggle-thumb-background: var(--color-fg-default-quaternary);
  cursor: auto;
}
.w-toggle--contained {
  display: flex;
  align-items: center;
  height: var(--spacing-32-rem);
  padding: var(--spacing-8-rem) var(--spacing-12-rem);
  border-radius: var(--corner-radius-md-rem);
  border: calc(1/var(--size-rem-base)*1rem) solid var(--color-border-default-subtle, #bec9d8);
  background: var(--color-container-default-subtle, #f2f4f8);
  width: fit-content;
}
.w-toggle--disabled.w-toggle--in-chip {
  --toggle-track-background: var(--color-container-default-tone-20);
  --toggle-track-checked-background: var(--color-container-default-tone-20);
}
.w-toggle__input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.w-toggle__label {
  display: flex;
  width: 100%;
  justify-content: space-between;
  align-items: center;
  gap: var(--spacing-8-rem);
  cursor: inherit;
  user-select: none;
}
.w-toggle__track {
  position: relative;
  display: inline-block;
  flex-shrink: 0;
  width: var(--toggle-track-width);
  height: var(--toggle-track-height);
  background-color: var(--toggle-track-background);
  border-radius: var(--corner-radius-full-rem);
  transition: background-color var(--toggle-transition-duration) var(--toggle-transition-timing);
}
.w-toggle__input:checked + .w-toggle__label .w-toggle__track {
  background-color: var(--toggle-track-checked-background);
}
.w-toggle__thumb {
  position: absolute;
  top: var(--toggle-thumb-offset);
  left: var(--toggle-thumb-offset);
  width: var(--toggle-thumb-width);
  height: var(--toggle-thumb-height);
  background-color: var(--toggle-thumb-background);
  border-radius: var(--corner-radius-full-rem);
  transition: transform var(--toggle-transition-duration) var(--toggle-transition-timing);
}
.w-toggle__thumb::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: var(--corner-radius-full-rem);
  background-color: var(--toggle-thumb-overlay-background);
  transition: background-color var(--toggle-transition-duration) var(--toggle-transition-timing);
}
.w-toggle__input:checked + .w-toggle__label .w-toggle__thumb {
  transform: translateX(var(--toggle-thumb-translate));
}
.w-toggle:not(.w-toggle--disabled) .w-toggle__track:hover .w-toggle__thumb::before {
  background-color: var(--toggle-thumb-overlay-background-hover);
}
.w-toggle:not(.w-toggle--disabled) .w-toggle__track:active .w-toggle__thumb::before,
.w-toggle:not(.w-toggle--disabled) .w-toggle__input:active + .w-toggle__label .w-toggle__track .w-toggle__thumb::before {
  background-color: var(--toggle-thumb-overlay-background-pressed);
}

.w-chip {
  display: flex;
  white-space: nowrap;
  height: var(--spacing-32-rem);
  padding: var(--spacing-8-rem) var(--spacing-12-rem);
  border-radius: var(--corner-radius-md-rem);
  border: calc(1/var(--size-rem-base)*1rem) solid var(--chip-border-color, var(--color-border-default-subtle));
  color: var(--chip-foreground-color, var(--color-fg-default-primary));
  background: var(--chip-background, var(--color-container-default-subtle));
}
.w-chip--filter,
.w-chip--select {
  --chip-foreground-color: var(--color-fg-brand-primary);
  gap: var(--spacing-8-rem);
  align-items: center;
}
.w-chip--fg-default-primary {
  --chip-foreground-color: var(--color-fg-default-primary);
}
.w-chip__leading-icon,
.w-chip__trailing-icon {
  min-width: var(--spacing-16-rem);
  min-height: var(--spacing-16-rem);
  width: var(--spacing-16-rem);
  height: var(--spacing-16-rem);
  fill: currentcolor;
  stroke: currentcolor;
}
.w-chip:disabled,
.w-chip--disabled {
  --chip-border-color: transparent;
  --chip-foreground-color: var(--color-fg-default-disabled-inverted);
  --chip-background: var(--color-container-default-disabled);
  cursor: default;
}
.w-chip--selected:not(:disabled) {
  --chip-border-color: transparent;
  --chip-foreground-color: var(--filled-button-color-fg);
  --chip-background: var(--filled-button-color-container);
}
.w-chip--selected:not(:disabled):hover {
  --chip-background:
    linear-gradient(
      
      0deg,
      var(--filled-button-color-hovered) 0%,
      var(--filled-button-color-hovered) 100% ),
    var(--filled-button-color-container);
}
.w-chip--selected:not(:disabled):active {
  --chip-background:
    linear-gradient(
      
      0deg,
      var(--filled-button-color-pressed) 0%,
      var(--filled-button-color-pressed) 100% ),
    var(--filled-button-color-container);
}
.w-chip--toggleIcon {
  --chip-foreground-color: var(--color-fg-brand-primary);
}
.w-chip__toggle {
  scale: .5;
  margin: calc(-3/var(--size-rem-base)*1rem) calc(-13/var(--size-rem-base)*1rem) 0 calc(-3/var(--size-rem-base)*1rem);
}
.w-chip:not(.w-chip--selected, :disabled):hover {
  --chip-background:
    linear-gradient(
      
      0deg,
      var(--color-container-default-midtone-hovered) 0%,
      var(--color-container-default-midtone-hovered) 100% ),
    var(--color-container-default-subtle);
}
.w-chip:not(.w-chip--selected, :disabled):active {
  --chip-background:
    linear-gradient(
      
      0deg,
      var(--color-container-default-midtone-pressed) 0%,
      var(--color-container-default-midtone-pressed) 100% ),
    var(--color-container-default-subtle);
}
.w-chip__select-content {
  position: relative;
  z-index: 1;
  display: flex;
  gap: var(--spacing-8-rem);
  pointer-events: none;
}
.w-chip__select-native {
  position: absolute;
  inset: 0;
  z-index: 0;
  opacity: 0;
  cursor: pointer;
}
.w-chip--select {
  position: relative;
  width: fit-content;
}
.w-chip--select:focus-within {
  outline: calc(2/var(--size-rem-base)*1rem) auto -webkit-focus-ring-color;
}
.w-chip--image {
  --chip-border-color: transparent;
  --chip-foreground-color: var(--color-fg-default-primary-inverted);
  --chip-background: var(--color-container-default-lightest-on-image-35);
}
.w-chip--image.w-chip--selected:not(:disabled) {
  --chip-background: var(--color-container-default-lightest);
  --chip-foreground-color: var(--color-fg-default-primary);
}
.w-chip--image.w-chip--selected:not(:disabled):hover {
  --chip-background:
    linear-gradient(
      
      0deg,
      var(--color-container-default-midtone-hovered) 0%,
      var(--color-container-default-midtone-hovered) 100% ),
    var(--color-container-default-lightest);
}
.w-chip--image.w-chip--selected:not(:disabled):active {
  --chip-background:
    linear-gradient(
      
      0deg,
      var(--color-container-default-midtone-pressed) 0%,
      var(--color-container-default-midtone-pressed) 100% ),
    var(--color-container-default-lightest);
}
.w-chip--image:not(.w-chip--selected, :disabled) {
  backdrop-filter: blur(calc(var(--effect-bg-blur-on-image-rem) / 2));
}
.w-chip--image:not(.w-chip--selected, :disabled):hover {
  --chip-background:
    linear-gradient(
      
      0deg,
      var(--color-container-default-midtone-hovered) 0%,
      var(--color-container-default-midtone-hovered) 100% ),
    var(--color-container-default-lightest-on-image-35);
}
.w-chip--image:not(.w-chip--selected, :disabled):active {
  --chip-background:
    linear-gradient(
      
      0deg,
      var(--color-container-default-midtone-pressed) 0%,
      var(--color-container-default-midtone-pressed) 100% ),
    var(--color-container-default-lightest-on-image-35);
}

.w-photo-gallery-modal {
  --modal-inline-gutter: var(--spacing-12-rem);
  --modal-block-gutter: var(--spacing-12-rem);
  border: none;
  padding: 0;
  background-color: rgba(0, 0, 0, 0);
  position: fixed;
  overflow: visible;
  width: 100vw;
  height: 100vh;
  inset-block-start: 50%;
  inset-inline-start: 50%;
  transform: translate(-50%, -50%);
  max-inline-size: calc(100% - var(--modal-inline-gutter)*2);
  max-block-size: calc(100% - var(--modal-block-gutter)*2);
}
@media (min-width: 768px) {
  .w-photo-gallery-modal {
    --modal-inline-gutter: var(--spacing-40-rem);
    --modal-block-gutter: var(--spacing-96-rem);
  }
}
@media (min-width: 1280px) {
  .w-photo-gallery-modal {
    --modal-inline-gutter: var(--spacing-80-rem);
    --modal-block-gutter: var(--spacing-96-rem);
    max-width: calc(1280px - var(--modal-inline-gutter) - var(--spacing-40-rem));
  }
}
.w-photo-gallery-modal[open] {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media (min-width: 768px) {
  .w-photo-gallery-modal[open] {
    justify-content: flex-start;
  }
}
.w-photo-gallery-modal::backdrop {
  background-color: var(--color-container-default-tone-80);
}
.w-photo-gallery-modal__panel-container {
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.w-photo-gallery-modal__top-panel {
  display: block;
}
@media (min-width: 1024px) {
  .w-photo-gallery-modal__top-panel {
    display: none;
  }
}
.w-photo-gallery-modal__body {
  overflow: hidden;
  display: flex;
  gap: var(--spacing-16-rem);
}
.w-photo-gallery-modal__left-panel {
  display: none;
  flex-direction: column;
  flex-shrink: 0;
  gap: var(--spacing-32-rem);
  padding: var(--spacing-24-rem);
  border-radius: var(--corner-radius-md-rem);
  background-color: var(--color-container-default-lightest);
}
@media (min-width: 1024px) {
  .w-photo-gallery-modal__left-panel {
    display: flex;
    width: calc(252/var(--size-rem-base)*1rem);
  }
}
@media (min-width: 1280px) {
  .w-photo-gallery-modal__left-panel {
    display: flex;
    width: calc(313/var(--size-rem-base)*1rem);
  }
}
.w-photo-gallery-modal__right-panel {
  position: relative;
  flex: 1 1 auto;
  overflow: hidden;
  min-width: 0;
}
.w-photo-gallery-modal__bottom-panel {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-16-rem);
  padding: var(--spacing-12-rem);
  border-radius: var(--corner-radius-md-rem);
  background-color: var(--color-container-default-lightest);
}
@media (min-width: 768px) {
  .w-photo-gallery-modal__bottom-panel {
    padding: var(--spacing-24-rem);
    flex-direction: row;
    margin-block-start: var(--spacing-40-rem);
    align-items: center;
    justify-content: space-between;
  }
}
@media (min-width: 1024px) {
  .w-photo-gallery-modal__bottom-panel {
    display: none;
  }
}
.w-photo-gallery-modal__category-chips {
  display: flex;
  gap: var(--spacing-12-rem);
  overflow-x: auto;
  margin-bottom: var(--spacing-16-rem);
  scrollbar-width: none;
}
.w-photo-gallery-modal__categories {
  flex: 1 1 auto;
  overflow-y: auto;
  height: 0;
}
.w-photo-gallery-modal__categories > * + * {
  margin-block-start: var(--spacing-8-rem);
}
.w-photo-gallery-modal__category {
  display: block;
  width: 100%;
  text-align: left;
  text-decoration: none;
  color: inherit;
  border: calc(1/var(--size-rem-base)*1rem) solid var(--category-border-color, transparent);
  background-color: var(--category-background-color, transparent);
  border-radius: var(--corner-radius-sm-rem);
  height: var(--spacing-32-rem);
  padding: var(--spacing-8-rem);
}
.w-photo-gallery-modal__category--selected {
  --category-border-color: var(--color-border-default-subtle);
  --category-background-color: var(--color-bg-default-subtle);
}
.w-photo-gallery-modal__category:hover {
  --category-background-color: var( --color-container-default-midtone-hovered );
}
.w-photo-gallery-modal__category:active {
  --category-background-color: var( --color-container-default-midtone-pressed );
}
.w-photo-gallery-modal__category-name {
  display: flex;
  gap: var(--spacing-16-rem);
}
.w-photo-gallery-modal__booking-button {
  margin-block-start: auto;
  white-space: nowrap;
  min-width: unset;
}
@media (min-width: 768px) {
  .w-photo-gallery-modal__booking-button {
    min-width: calc(220/var(--size-rem-base)*1rem);
  }
}
.w-photo-gallery-modal__carousel {
  width: 100%;
}
.w-photo-gallery-modal__close-button {
  position: relative;
  align-self: flex-end;
}
@media (min-width: 768px) {
  .w-photo-gallery-modal__close-button {
    position: absolute;
    top: calc(-1*(var(--spacing-32-rem) + var(--spacing-12-rem)));
    right: 0;
  }
}
@media (min-width: 1024px) {
  .w-photo-gallery-modal__close-button {
    top: calc(-1*(var(--spacing-32-rem) + var(--spacing-8-rem)));
    right: 0;
  }
}
@media (min-width: 1280px) {
  .w-photo-gallery-modal__close-button {
    top: 0;
    right: calc(-1*(var(--spacing-32-rem) + var(--spacing-8-rem)));
  }
}

.w-star-rating {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-4-rem);
}
.w-star-rating__star-wrapper {
  position: relative;
  display: inline-flex;
}
.w-star-rating__star--filled,
.w-star-rating__star--half-filled {
  fill: currentcolor;
}
.w-star-rating__star--half-filled {
  position: absolute;
  top: 0;
  left: 0;
  clip-path: inset(0 50% 0 0);
}

.w-badge {
  display: inline-flex;
  padding: var(--spacing-4-rem) var(--spacing-8-rem);
  align-items: center;
  gap: var(--spacing-4-rem);
  border-radius: var(--corner-radius-full-rem);
}
.w-badge--light-container {
  background: var(--color-container-default-lightest);
}
.w-badge--subtle-container {
  background: var(--color-container-default-subtle);
}
.w-badge--transparent-container > .w-icon,
.w-badge--dark-container > .w-icon {
  color: var(--color-fg-default-primary-inverted);
  fill: var(--color-fg-default-primary-inverted);
}
.w-badge--transparent-container {
  background: none;
}
.w-badge--dark-container {
  background: var(--color-container-default-lightest-on-image-35);
  backdrop-filter: blur(calc(var(--effect-bg-blur-on-image, 20px) / 2));
}
.w-badge__label {
  margin-right: var(--spacing-4-rem);
}
.w-badge--tag {
  border-radius: 0 0 var(--corner-radius-sm-rem) 0;
}
.w-badge--context-booking .w-icon,
.w-badge--context-booking .w-badge__label {
  color: var(--color-fg-default-secondary);
  fill: var(--color-fg-default-secondary);
}
.w-badge--context-accessible .w-icon,
.w-badge--context-accessible .w-badge__label {
  color: var(--color-fg-default-primary-inverted);
  fill: var(--color-fg-default-primary-inverted);
}

.w-divider {
  width: var(--divider-width);
  height: var(--divider-height);
  background-color: var(--divider-background-color);
}
.w-divider--background-light {
  --divider-background-color: var(--color-border-default-subtle);
}
.w-divider--background-dark {
  --divider-background-color: var(--color-border-default-subtle-inverted);
}
.w-divider--direction-horizontal {
  --divider-width: 100%;
  --divider-height: 1px;
}
.w-divider--direction-vertical {
  --divider-width: 1px;
  --divider-height: 100%;
}

.w-modal {
  position: fixed;
  inset: var(--modal-inset, auto auto 0 50%);
  transform: var(--modal-transform, translateX(-50%));
  background-color: var(--color-container-default-lightest);
  border-radius: var(--modal-border-radius, var(--corner-radius-lg-rem) var(--corner-radius-lg-rem) 0 0);
  border: none;
  padding: 0;
  min-height: 0;
  width: var(--modal-width, 100vw);
  max-width: var(--modal-max-width, 100vw);
  max-height: var(--modal-max-height, calc(100vh - var(--spacing-40-rem)));
  height: auto;
  overflow: hidden;
}
@supports (height: 100dvh) {
  .w-modal {
    --modal-max-height: calc(100dvh - var(--spacing-40-rem));
  }
}
@media (min-width: 375px) {
  .w-modal {
    --modal-width: calc(100vw - var(--spacing-24-rem));
    --modal-max-width: calc(640 / var(--size-rem-base) * 1rem);
  }
}
@media (width <= 375px) {
  .w-modal {
    --modal-width: 100vw;
    --modal-max-width: 100vw;
  }
}
@media (min-width: 768px) {
  .w-modal {
    --modal-border-radius: var(--corner-radius-lg-rem);
    --modal-max-height: calc(100vh - var(--spacing-32-rem));
    --modal-inset: 50% auto auto 50%;
    --modal-transform: translate(-50%, -50%);
  }
  @supports (height: 100dvh) {
    .w-modal {
      --modal-max-height: calc(100dvh - var(--spacing-32-rem));
    }
  }
}
@media (min-width: 1024px) {
  .w-modal {
    --modal-max-width: auto;
    --modal-max-height: calc(720 / var(--size-rem-base) * 1rem);
  }
}
@media (min-width: 1024px) {
  .w-modal--size-small .w-modal {
    --modal-width: calc(480 / var(--size-rem-base) * 1rem);
  }
}
@media (min-width: 1024px) {
  .w-modal--size-large .w-modal {
    --modal-width: calc(936 / var(--size-rem-base) * 1rem);
  }
}
.w-modal--layout-keep-in-touch .w-modal {
  --modal-width: 100vw;
  --modal-max-width: 100vw;
  --modal-max-height: calc(100vh - var(--spacing-40-rem));
  --modal-inset: var(--spacing-40-rem) 0 0 50%;
  --modal-transform: translateX(-50%);
  --modal-border-radius: var(--corner-radius-lg-rem) var(--corner-radius-lg-rem) 0 0;
  --modal-header-padding: var(--spacing-16-rem) var(--spacing-20-rem);
  --modal-body-padding: var(--spacing-12-rem);
  --modal-body-padding-lg: var(--spacing-12-rem);
  --modal-footer-padding: var(--spacing-16-rem);
}
@supports (height: 100dvh) {
  .w-modal--layout-keep-in-touch .w-modal {
    --modal-max-height: calc(100dvh - var(--spacing-40-rem));
  }
}
@media (min-width: 768px) {
  .w-modal--layout-keep-in-touch .w-modal {
    --modal-width: calc(100vw - (var(--spacing-64-rem) * 2));
    --modal-max-width: calc(640 / var(--size-rem-base) * 1rem);
  }
}
@media (min-width: 1024px) {
  .w-modal--layout-keep-in-touch .w-modal {
    --modal-width: calc(480 / var(--size-rem-base) * 1rem);
    --modal-max-width: calc(480 / var(--size-rem-base) * 1rem);
    --modal-max-height: calc(100vh - (var(--spacing-40-rem) * 2));
    --modal-inset: 50% auto auto 50%;
    --modal-transform: translate(-50%, -50%);
    --modal-border-radius: var(--corner-radius-lg-rem);
  }
  @supports (height: 100dvh) {
    .w-modal--layout-keep-in-touch .w-modal {
      --modal-max-height: calc(100dvh - (var(--spacing-40-rem) * 2));
    }
  }
}
.w-modal--position-top .w-modal {
  --modal-inset: var(--spacing-40-rem) auto auto 50%;
  --modal-transform: translateX(-50%);
  --modal-max-height: calc(100vh - var(--spacing-40-rem));
}
@supports (height: 100dvh) {
  .w-modal--position-top .w-modal {
    --modal-max-height: calc(100dvh - var(--spacing-40-rem));
  }
}
@media (min-width: 1024px) {
  .w-modal--position-top .w-modal {
    --modal-max-height: calc(100vh - (var(--spacing-40-rem) * 2));
  }
  @supports (height: 100dvh) {
    .w-modal--position-top .w-modal {
      --modal-max-height: calc(100dvh - (var(--spacing-40-rem) * 2));
    }
  }
}
@media (min-width: 768px) {
  .w-modal--position-center .w-modal {
    --modal-width: calc(100vw - var(--spacing-128-rem));
    --modal-max-width: calc(640 / var(--size-rem-base) * 1rem);
    --modal-max-height: calc(100vh - var(--spacing-32-rem));
    --modal-inset: 50% auto auto 50%;
    --modal-transform: translate(-50%, -50%);
    --modal-border-radius: var(--corner-radius-lg-rem);
  }
  @supports (height: 100dvh) {
    .w-modal--position-center .w-modal {
      --modal-max-height: calc(100dvh - var(--spacing-32-rem));
    }
  }
}
@media (min-width: 1024px) {
  .w-modal--position-center .w-modal {
    --modal-width: calc(480 / var(--size-rem-base) * 1rem);
    --modal-max-width: auto;
    --modal-max-height: calc(100vh - (var(--spacing-40-rem) * 2));
  }
  @supports (height: 100dvh) {
    .w-modal--position-center .w-modal {
      --modal-max-height: calc(100dvh - (var(--spacing-40-rem) * 2));
    }
  }
}
.w-modal[open] {
  display: flex;
  flex-direction: column;
}
.w-modal::backdrop {
  background-color: var(--color-container-default-tone-80);
}
.w-modal.w-modal--privacy-notice::backdrop {
  background-color: var(--color-container-default-tone-50);
}
.w-modal__header {
  display: flex;
  flex-shrink: 0;
  gap: var(--spacing-8-rem);
  align-items: center;
  padding: var(--modal-header-padding, var(--spacing-16-rem) var(--spacing-24-rem));
  border-bottom: var(--modal-header-border-bottom, calc(1 / var(--size-rem-base) * 1rem) solid var(--color-border-default-subtle));
}
.w-modal__header.w-modal__header--no-divider {
  border-bottom: none;
}
.w-modal__header-close-button {
  margin-inline-start: auto;
  --button-color: var(--color-fg-default-primary);
  --button-color-hover: var(--color-fg-default-primary);
  --button-color-pressed: var(--color-fg-default-primary);
}
.w-modal__title-truncate {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  min-width: 0;
}
.w-modal__body {
  padding: var(--modal-body-padding, var(--spacing-16-rem) var(--spacing-12-rem));
  flex: 0 1 auto;
  min-height: 0;
  overflow-y: auto;
}
@media (min-width: 1024px) {
  .w-modal--no-footer .w-modal__body {
    border-radius: 0 0 var(--corner-radius-lg-rem) var(--corner-radius-lg-rem);
  }
}
@media (min-width: 1024px) {
  .w-modal__body {
    padding: var(--modal-body-padding-lg, var(--modal-body-padding, var(--spacing-16-rem) var(--spacing-16-rem)));
  }
}
.w-modal--background-subtle .w-modal__body {
  background-color: var(--color-container-default-subtle);
}
.w-modal--background-light .w-modal__body {
  background-color: var(--color-container-default-lightest);
}
.w-modal__footer {
  padding: var(--modal-footer-padding, var(--spacing-24-rem));
  border-top: calc(1/var(--size-rem-base)*1rem) solid var(--color-border-default-subtle);
  display: flex;
  flex-shrink: 0;
  justify-content: end;
  gap: var(--spacing-8-rem);
}
.w-modal__footer-link {
  margin-inline-end: auto;
}
.w-modal--header-borderless .w-modal__header {
  border-bottom: none;
  padding: var(--spacing-16-rem);
}
.w-modal--body-flush .w-modal__body {
  padding: 0;
}
@media (min-width: 1024px) {
  .w-modal--body-flush .w-modal__body {
    padding: 0;
  }
}
.w-modal.w-modal--legal {
  --modal-width: calc(100vw - var(--spacing-24-rem));
  --modal-max-width: calc(350 / var(--size-rem-base) * 1rem);
  --modal-inset: var(--spacing-32-rem) auto auto 50%;
  --modal-transform: translateX(-50%);
  --modal-border-radius: var(--corner-radius-lg-rem);
  --modal-max-height: calc(100vh - var(--spacing-32-rem));
  min-height: calc(350/var(--size-rem-base)*1rem);
  height: var(--modal-max-height);
  overflow: hidden;
}
@supports (height: 100dvh) {
  .w-modal.w-modal--legal {
    --modal-max-height: calc(100dvh - var(--spacing-32-rem));
  }
}
.w-modal.w-modal--legal .w-modal__body {
  flex: 1 1 auto;
  padding: var(--spacing-16-rem);
  overflow-x: hidden;
  overscroll-behavior-x: none;
  touch-action: pan-y;
  -webkit-overflow-scrolling: touch;
}
.w-modal.w-modal--legal .w-modal__body a {
  display: inline;
  overflow-wrap: anywhere;
}
.w-modal.w-modal--legal .w-modal__header {
  box-sizing: border-box;
  height: calc(60/var(--size-rem-base)*1rem);
  min-height: calc(60/var(--size-rem-base)*1rem);
  padding-block: var(--spacing-12-rem);
}
@media (min-width: 768px) {
  .w-modal.w-modal--legal {
    --modal-width: calc(100vw - var(--spacing-128-rem));
    --modal-max-width: calc(640 / var(--size-rem-base) * 1rem);
  }
}
@media (min-width: 1024px) {
  .w-modal.w-modal--legal {
    --modal-width: calc(936 / var(--size-rem-base) * 1rem);
    --modal-max-width: auto;
    --modal-max-height: calc(720 / var(--size-rem-base) * 1rem);
    --modal-inset: 50% auto auto 50%;
    --modal-transform: translate(-50%, -50%);
    height: auto;
  }
  .w-modal.w-modal--legal .w-modal__body {
    padding: var(--modal-body-padding-lg, var(--modal-body-padding, var(--spacing-16-rem) var(--spacing-16-rem)));
  }
}
.w-modal--room-details-booking {
  --room-details-booking-body-inline: var(--spacing-12-rem);
  --room-details-booking-room-inset: var(--spacing-12-rem);
}
@media (min-width: 768px) {
  .w-modal--room-details-booking {
    --room-details-booking-body-inline: var(--spacing-16-rem);
    --room-details-booking-room-inset: calc( var(--spacing-16-rem) + var(--spacing-4-rem) );
  }
}
.w-modal--room-details-booking {
  --modal-header-padding: var(--spacing-8-rem) var(--room-details-booking-room-inset);
  --modal-body-padding: var(--spacing-16-rem) var(--room-details-booking-body-inline) 0;
  --modal-body-padding-lg: var(--spacing-16-rem) var(--spacing-16-rem) 0;
}
.w-modal--room-details-booking .w-modal__header {
  box-sizing: border-box;
  min-height: calc(60/var(--size-rem-base)*1rem);
}
.w-modal--room-details-booking .w-modal__body {
  min-width: 0;
  overflow-x: hidden;
}
.w-modal--room-details-booking .w-modal__header.w-modal__header--no-divider {
  border-bottom: calc(1/var(--size-rem-base)*1rem) solid var(--color-border-default-subtle);
}
.w-modal--room-details-booking .w-modal__footer {
  box-sizing: border-box;
  align-items: center;
  min-height: var(--spacing-80-rem);
  height: var(--spacing-80-rem);
  padding: var(--spacing-12-rem) var(--room-details-booking-room-inset);
  border-top: calc(1/var(--size-rem-base)*1rem) solid var(--color-border-default-subtle, #bec9d8);
  background-color: var(--color-container-default-lightest);
  flex-shrink: 0;
}
@media (min-width: 768px) {
  .w-modal--room-details-booking .w-modal__footer {
    padding: var(--spacing-24-rem) var(--room-details-booking-room-inset);
  }
}
@media (min-width: 1024px) {
  .w-modal--room-details-booking .w-modal__footer {
    padding: var(--spacing-24-rem);
  }
}
.w-modal--room-details-booking .w-modal__header-close-button {
  flex-shrink: 0;
  --button-min-width: 0;
  min-width: 0;
  box-sizing: border-box;
  padding: 0;
}

.w-property-policies-card__container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: var(--spacing-20-rem);
  padding: var(--spacing-24-rem) var(--spacing-16-rem);
  background-color: var(--property-policies-card-background, var(--color-container-default-subtle));
  border-radius: var(--corner-radius-md-rem);
}
@media (min-width: 768px) {
  .w-property-policies-card__container {
    width: 100%;
  }
}
.w-property-policies-card__logo-wrapper {
  display: flex;
  justify-content: center;
  padding: var(--spacing-24-rem);
}
.w-property-policies-card__rating-wrapper {
  display: flex;
  justify-content: center;
  width: 100%;
}
.w-property-policies-card__logo {
  width: 100%;
  height: auto;
  object-fit: contain;
}
.w-property-policies-card__check-times {
  display: flex;
  align-items: center;
  align-self: stretch;
  gap: var(--spacing-16-rem);
}
.w-property-policies-card__check-time {
  display: flex;
  flex: 1 0 0;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: var(--spacing-4-rem);
}
.w-property-policies-card__check-time-label {
  white-space: nowrap;
  color: var(--color-fg-default-secondary);
}
.w-property-policies-card__check-time-value {
  color: var(--color-fg-default-primary);
}
.w-property-policies-card__divider {
  width: 100%;
}
.w-property-policies-card__links {
  display: flex;
  flex-flow: column wrap;
  flex-direction: column;
  align-items: center;
  gap: var(--spacing-16-rem);
}
.w-property-policies-card__policies-list {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-16-rem);
}
.w-property-policies-card__policies-item {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-8-rem);
}

.w-overview-section {
  --overview-section-display: block;
  display: var(--overview-section-display);
  position: relative;
  gap: var(--spacing-24-rem);
}
@media (min-width: 768px) {
  .w-overview-section {
    --overview-section-display: flex;
  }
}
.w-overview-section__image-container {
  position: relative;
  max-width: calc(360/var(--size-rem-base)*1rem);
}
.w-overview-section__image-wrapper {
  width: 100%;
  border-radius: var(--corner-radius-md-rem);
  overflow: hidden;
  position: relative;
}
.w-overview-section__image-wrapper img {
  width: 100%;
}
.w-overview-section__image-overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: var(--spacing-16-rem);
  display: flex;
  justify-content: space-between;
  background:
    linear-gradient(
      to top,
      rgba(0, 0, 0, 0.7),
      rgba(0, 0, 0, 0));
  height: 50%;
  align-items: flex-end;
}
.w-overview-section__image-address-container {
  --image-address-container-display: flex;
  --image-address-container-justify-content: center;
  display: var(--image-address-container-display);
  padding: var(--spacing-8-rem) 0;
  justify-content: var(--image-address-container-justify-content);
}
@media (min-width: 768px) {
  .w-overview-section__image-address-container {
    --image-address-container-justify-content: left;
  }
}
@media (min-width: 1024px) {
  .w-overview-section__image-address-container {
    --image-address-container-display: none;
  }
}
.w-overview-section__content-container {
  width: 100%;
}
.w-overview-section__row {
  display: flex;
  gap: var(--spacing-24-rem);
}
.w-overview-section__amenities-container {
  --amenities-container-display: none;
  width: 100%;
  display: var(--amenities-container-display);
  flex-direction: column;
  gap: var(--spacing-24-rem);
}
@media (min-width: 1024px) {
  .w-overview-section__amenities-container {
    --amenities-container-display: flex;
  }
}
.w-overview-section__amenities {
  border-radius: 0;
  box-shadow: none;
  background: none;
  height: auto;
  padding: 0;
}
.w-overview-section__amenities ul {
  margin-bottom: 0;
}
.w-overview-section__details-container {
  width: 100%;
}
@media (min-width: 1024px) {
  .w-overview-section__details-container {
    width: calc(500/var(--size-rem-base)*1rem);
  }
}
.w-overview-section__location-container {
  display: flex;
  align-items: center;
  gap: var(--spacing-8-rem);
}

.w-rooms-rates-header {
  display: block;
}


/*# sourceMappingURL=c-rooms-rates-header.91917972.css.map*/