/* vop-r75-width
   Desktop content uses one inset on home, about, and contact.
   Palette A and the type scale are unchanged. No new image files. */

body.vop-pass-r75 .vop-r74-paths {
  display: none !important;
}

@media screen and (min-width: 1024px) {
  body.vop-pass-r75.template-home #main-content .f-section:not(.vop-r74-hero):not(.vop-r74-banner):not(.vop-room-banner) > .container,
  body.vop-pass-r75.template-home #main-content .f-section:not(.vop-r74-hero):not(.vop-r74-banner):not(.vop-room-banner) > .container-fluid,
  body.vop-pass-r75.template-page #main-content .vop-about-viewpoint > .container,
  body.vop-pass-r75.template-page #main-content .vop-about-rooms > .container,
  body.vop-pass-r75.template-page #main-content .vop-about-principles > .container,
  body.vop-pass-r75.template-page #main-content .vop-about-contact > .container,
  body.vop-pass-r75.template-page #main-content .vop-about > .container,
  body.vop-pass-r75.template-page #main-content .vop-about > .container-fluid,
  body.vop-pass-r75.template-contacts #main-content .container,
  body.vop-pass-r75.template-contacts #main-content .container-fluid,
  body.vop-pass-r75.template-contacts .f-page-header .container-fluid,
  body.vop-pass-r75.template-product #main-content .vop-product-promotion > .container,
  body.vop-pass-r75.template-product #main-content .vop-product-promotion > .container-fluid {
    width: min(1840px, calc(100% - 64px)) !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

body.vop-pass-r75.template-home #main-content .f-section:not(.vop-r74-hero) {
  --section-padding-top: 24px !important;
  --section-padding-bottom: 12px !important;
  padding-top: 24px !important;
  padding-bottom: 12px !important;
}

body.vop-pass-r75.template-home #main-content .vop-r74-hero {
  --section-padding-top: 0px !important;
  --section-padding-bottom: 0px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

body.vop-pass-r75.template-home #main-content .vop-r74-categories {
  padding-bottom: 8px !important;
}

body.vop-pass-r75.template-home #main-content .vop-r74-rooms {
  padding-top: 12px !important;
}

body.vop-pass-r75.template-home #main-content .f-section__header,
body.vop-pass-r75.template-home #main-content .f-hotspots-image__header,
body.vop-pass-r75.template-home #main-content .f-collection-list__header-container,
body.vop-pass-r75.template-home #main-content .vop-r74-rooms .f-section__header,
body.vop-pass-r75.template-home #main-content .vop-r74-rooms .f-collection-list__header-container {
  margin-bottom: 16px !important;
}

body.vop-pass-r75.template-page #main-content .vop-about-viewpoint,
body.vop-pass-r75.template-page #main-content .vop-about-rooms,
body.vop-pass-r75.template-page #main-content .vop-about-principles,
body.vop-pass-r75.template-page #main-content .vop-about-contact {
  --section-padding-top: 20px !important;
  --section-padding-bottom: 12px !important;
  padding-top: 20px !important;
  padding-bottom: 12px !important;
}

body.vop-pass-r75.template-page #main-content .vop-about-viewpoint,
body.vop-pass-r75.template-page #main-content .vop-about-rooms,
body.vop-pass-r75.template-page #main-content .vop-about-principles,
body.vop-pass-r75.template-page #main-content .vop-about-contact,
body.vop-pass-r75.template-page #main-content .vop-about .vop-about-viewpoint,
body.vop-pass-r75.template-page #main-content .vop-about .vop-about-questions,
body.vop-pass-r75.template-page #main-content .vop-about .vop-about-scale {
  max-width: none !important;
  width: auto !important;
}

body.vop-pass-r75.template-page #main-content .vop-about-rooms .rte,
body.vop-pass-r75.template-page #main-content .vop-about-principles .rte,
body.vop-pass-r75.template-page #main-content .vop-about-contact .rte,
body.vop-pass-r75.template-page #main-content .vop-about-viewpoint .rte,
body.vop-pass-r75.template-page #main-content .f-page .rte,
body.vop-pass-r75.template-page #main-content .f-main-page .rte {
  max-width: none !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

body.vop-pass-r75.template-page #main-content .vop-osa-about-cards .vop-room-grid {
  width: 100% !important;
  max-width: none !important;
  margin-top: 16px !important;
}

body.vop-pass-r75.template-home #main-content .vop-r74-arrivals .f-featured-slider__container,
body.vop-pass-r75.template-home #main-content .vop-r74-arrivals .f-featured-slider__col-left,
body.vop-pass-r75.template-home #main-content .vop-r74-arrivals .f-featured-slider__products,
body.vop-pass-r75.template-home #main-content .vop-r74-arrivals .swiper,
body.vop-pass-r75.template-home #main-content .vop-r74-arrivals .swiper-wrapper {
  width: 100% !important;
  max-width: none !important;
}

body.vop-pass-r75.template-home #main-content .vop-r74-arrivals .f-product-card__title,
body.vop-pass-r75.template-home #main-content .vop-r74-arrivals .f-product-card__name {
  font-size: 24px !important;
  line-height: 1.2 !important;
  min-height: 2.4em;
}

body.vop-pass-r75.template-home #main-content .vop-r74-arrivals .f-product-card__price {
  font-size: 16px !important;
  line-height: 1.4 !important;
}

body.vop-pass-r75.template-home #main-content .vop-r74-brand {
  padding-top: 16px !important;
  padding-bottom: 16px !important;
}

body.vop-pass-r75.template-home #main-content .vop-r74-brand .f-image-with-text__inner {
  align-items: center !important;
  gap: 28px !important;
}

body.vop-pass-r75.template-home #main-content .vop-r74-brand .f-image-with-text__image,
body.vop-pass-r75.template-home #main-content .vop-r74-brand .f-image-with-text__image-first {
  width: 48% !important;
  max-width: none !important;
  flex: 0 0 48% !important;
  margin: 0 !important;
}

body.vop-pass-r75.template-home #main-content .vop-r74-brand .f-image-with-text__image-first,
body.vop-pass-r75.template-home #main-content .vop-r74-brand .f-image-with-text__image-first responsive-image,
body.vop-pass-r75.template-home #main-content .vop-r74-brand .f-image-with-text__image-first .f-image,
body.vop-pass-r75.template-home #main-content .vop-r74-brand responsive-image,
body.vop-pass-r75.template-home #main-content .vop-r74-brand .f-image {
  aspect-ratio: 1 / 1 !important;
  --aspect-ratio: 1 !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  background: #E7DCCD !important;
}

body.vop-pass-r75.template-home #main-content .vop-r74-brand img {
  object-fit: cover !important;
  object-position: center center !important;
  width: 100% !important;
  height: 100% !important;
}

body.vop-pass-r75.template-product #main-content .vop-product-promotion {
  --section-padding-top: 24px !important;
  --section-padding-bottom: 24px !important;
  padding-top: 24px !important;
  padding-bottom: 24px !important;
}

body.vop-pass-r75.template-product #main-content .vop-product-promotion .f-image-with-text__inner {
  align-items: center !important;
  gap: 28px !important;
}

body.vop-pass-r75.template-product #main-content .vop-product-promotion .f-image-with-text__image,
body.vop-pass-r75.template-product #main-content .vop-product-promotion .f-image-with-text__image-first {
  width: 58% !important;
  max-width: 58% !important;
  flex: 0 0 58% !important;
  margin: 0 !important;
}

body.vop-pass-r75.template-product #main-content .vop-product-promotion .f-image-with-text__content,
body.vop-pass-r75.template-product #main-content .vop-product-promotion .f-content-box {
  width: 42% !important;
  max-width: 42% !important;
  flex: 1 1 42% !important;
  align-self: center !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

body.vop-pass-r75.template-product #main-content .vop-product-promotion responsive-image,
body.vop-pass-r75.template-product #main-content .vop-product-promotion .f-image,
body.vop-pass-r75.template-product #main-content .vop-product-promotion .f-image-with-text__image-first {
  --aspect-ratio: 1.333333 !important;
  aspect-ratio: 4 / 3 !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  background: #E7DCCD !important;
}

body.vop-pass-r75.template-product #main-content .vop-product-promotion img {
  object-fit: cover !important;
  object-position: center center !important;
  width: 100% !important;
  height: 100% !important;
}

body.vop-pass-r75.template-contacts .f-page-header {
  padding-top: 28px !important;
  padding-bottom: 8px !important;
}

body.vop-pass-r75.template-contacts .f-page-header__title {
  font-family: "Cormorant Garamond", Georgia, serif !important;
  font-size: 42px !important;
  line-height: 1.1 !important;
  font-weight: 500 !important;
  color: #3C332C !important;
  margin: 0 !important;
}

body.vop-pass-r75.template-contacts .vop-contact-facts {
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}

body.vop-pass-r75.template-contacts .vop-contact-facts .f-row {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin: 0 !important;
}

body.vop-pass-r75.template-contacts .vop-contact-facts .m\:column,
body.vop-pass-r75.template-contacts .vop-contact-facts .f-contact-information__textblock {
  width: auto !important;
  max-width: none !important;
  background: #F6F1E8;
  border: 1px solid #D9CBBA;
  border-radius: 16px;
  padding: 20px 18px 18px;
  text-align: left !important;
}

body.vop-pass-r75.template-contacts .vop-contact-facts h3 {
  font-family: "Cormorant Garamond", Georgia, serif !important;
  font-size: 24px !important;
  line-height: 1.2 !important;
  font-weight: 500 !important;
  color: #3C332C !important;
  margin: 0 0 8px !important;
}

body.vop-pass-r75.template-contacts .vop-contact-facts .rte,
body.vop-pass-r75.template-contacts .vop-contact-facts .rte p {
  font-family: "DM Sans", sans-serif !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
  color: #2C2622 !important;
  max-width: none !important;
  margin: 0 0 8px !important;
}

body.vop-pass-r75.template-contacts .vop-contact-facts a {
  color: #3C332C;
  text-underline-offset: 3px;
}

body.vop-pass-r75.template-contacts .vop-contact-reference {
  padding-top: 16px !important;
  padding-bottom: 8px !important;
}

body.vop-pass-r75.template-contacts .vop-contact-reference .f-image-with-text__inner {
  align-items: center !important;
  gap: 28px !important;
}

body.vop-pass-r75.template-contacts .vop-contact-reference .f-image-with-text__image,
body.vop-pass-r75.template-contacts .vop-contact-reference .f-image-with-text__image-first {
  width: 56% !important;
  max-width: 56% !important;
  flex: 0 0 56% !important;
  margin: 0 !important;
}

body.vop-pass-r75.template-contacts .vop-contact-reference responsive-image,
body.vop-pass-r75.template-contacts .vop-contact-reference .f-image,
body.vop-pass-r75.template-contacts .vop-contact-reference .f-image-with-text__image-first {
  --aspect-ratio: 1.333333 !important;
  aspect-ratio: 4 / 3 !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  background: #E7DCCD !important;
}

body.vop-pass-r75.template-contacts .vop-contact-reference img {
  object-fit: cover !important;
  object-position: center center !important;
  width: 100% !important;
  height: 100% !important;
}

body.vop-pass-r75.template-contacts .vop-contact-reference .f-richtext__title,
body.vop-pass-r75.template-contacts .vop-contact-reference .f-content-box__heading {
  font-family: "Cormorant Garamond", Georgia, serif !important;
  font-size: 36px !important;
  line-height: 1.15 !important;
  color: #3C332C !important;
}

body.vop-pass-r75.template-contacts .vop-osa-contact-form {
  padding-top: 16px !important;
  padding-bottom: 28px !important;
  background: #F6F1E8 !important;
}

body.vop-pass-r75.template-contacts .vop-osa-contact-form form,
body.vop-pass-r75.template-contacts .vop-osa-contact-form .f-contact-form,
body.vop-pass-r75.template-contacts .vop-osa-contact-form .contact-form,
body.vop-pass-r75.template-contacts .vop-osa-contact-form f-contact {
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
}

body.vop-pass-r75.template-contacts .vop-osa-contact-form .f-contact-content-box {
  align-items: stretch !important;
  gap: 24px !important;
}

body.vop-pass-r75.template-contacts .vop-osa-contact-form .f-contact-form__main {
  background: #F6F1E8 !important;
  border: 1px solid #D9CBBA !important;
  border-radius: 16px !important;
  padding: 24px !important;
}

body.vop-pass-r75.template-contacts .vop-osa-contact-form .f-contact-form__heading {
  font-family: "Cormorant Garamond", Georgia, serif !important;
  font-size: 36px !important;
  line-height: 1.15 !important;
  color: #3C332C !important;
}

body.vop-pass-r75.template-contacts .vop-osa-contact-form .f-info-box,
body.vop-pass-r75.template-contacts .vop-osa-contact-form .f-contact-form__info,
body.vop-pass-r75.template-contacts .vop-osa-contact-form .f-contact-content-box > div:last-child {
  background: #E7DCCD;
  border-radius: 16px;
  padding: 20px 18px;
}

body.vop-pass-r75.template-contacts .vop-osa-contact-form .f-contact-content-box responsive-image,
body.vop-pass-r75.template-contacts .vop-osa-contact-form .f-info-box responsive-image {
  --aspect-ratio: 1.333333 !important;
  aspect-ratio: 4 / 3 !important;
  display: block;
  margin-bottom: 16px;
  border-radius: 12px;
  overflow: hidden;
  background: #F6F1E8;
}

body.vop-pass-r75.template-contacts .vop-osa-contact-form .rte,
body.vop-pass-r75.template-contacts .vop-osa-contact-form .rte p,
body.vop-pass-r75.template-contacts .vop-osa-contact-form .rte li {
  font-size: 16px !important;
  line-height: 1.5 !important;
  color: #2C2622 !important;
  max-width: none !important;
}

body.vop-pass-r75 #scroll-to-top-button.f-button--scroll-top {
  background: #3C332C !important;
  color: #F6F1E8 !important;
  border: 1px solid #3C332C !important;
  border-radius: 50% !important;
  width: 46px !important;
  height: 46px !important;
  min-height: 46px !important;
  padding: 0 !important;
  box-shadow: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body.vop-pass-r75 #scroll-to-top-button.f-button--scroll-top.is-show {
  opacity: 1 !important;
}

body.vop-pass-r75 #scroll-to-top-button.f-button--scroll-top svg,
body.vop-pass-r75 #scroll-to-top-button.f-button--scroll-top svg path {
  color: #F6F1E8 !important;
  fill: #F6F1E8 !important;
  stroke: #F6F1E8 !important;
  opacity: 1 !important;
}

body.vop-pass-r75 #scroll-to-top-button.f-button--scroll-top svg {
  display: block !important;
  width: 16px !important;
  height: 16px !important;
}

@media screen and (max-width: 1023px) {
  body.vop-pass-r75.template-home #main-content .f-section:not(.vop-r74-hero) {
    padding-top: 28px !important;
    padding-bottom: 16px !important;
  }

  body.vop-pass-r75.template-home #main-content .vop-r74-arrivals .f-product-card__title,
  body.vop-pass-r75.template-home #main-content .vop-r74-arrivals .f-product-card__name {
    font-size: 16px !important;
  }

  body.vop-pass-r75.template-home #main-content .vop-r74-brand .f-image-with-text__image,
  body.vop-pass-r75.template-home #main-content .vop-r74-brand .f-image-with-text__image-first,
  body.vop-pass-r75.template-product #main-content .vop-product-promotion .f-image-with-text__image,
  body.vop-pass-r75.template-product #main-content .vop-product-promotion .f-image-with-text__image-first,
  body.vop-pass-r75.template-product #main-content .vop-product-promotion .f-image-with-text__content,
  body.vop-pass-r75.template-product #main-content .vop-product-promotion .f-content-box,
  body.vop-pass-r75.template-contacts .vop-contact-reference .f-image-with-text__image,
  body.vop-pass-r75.template-contacts .vop-contact-reference .f-image-with-text__image-first {
    width: 100% !important;
    max-width: none !important;
    flex: 0 0 100% !important;
  }

  body.vop-pass-r75.template-contacts .vop-contact-facts .f-row {
    grid-template-columns: 1fr 1fr;
  }

  body.vop-pass-r75.template-contacts .f-page-header__title {
    font-size: 36px !important;
  }
}

@media screen and (max-width: 767px) {
  body.vop-pass-r75.template-contacts .vop-contact-facts .f-row {
    grid-template-columns: 1fr;
  }

  body.vop-pass-r75 #scroll-to-top-button.f-button--scroll-top {
    width: 40px !important;
    height: 40px !important;
    min-height: 40px !important;
  }
}
