/* ==========================================================================
   Hideaway Beach Club — Digital Lifestyle Brochure
   styles.css

   Contents
     1. Fonts
     2. Design tokens
     3. Base / reset
     4. Brochure navigation (top bar, page arrows, scroll button, page index)
     5. Page 1 — Introduction
     6. Footer (shared by every page)
     7. Content helpers (reveal animations, background video, carousel, spacers)
     8. Page layouts (generated per page — desktop / tablet / mobile)

   Breakpoints: desktop ≥ 1000px · tablet 750–999px · mobile ≤ 749px
   ========================================================================== */


/* 1. Fonts
   ========================================================================== */

@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("../fonts/montserrat-light.woff") format("woff");
}
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/montserrat-regular.woff") format("woff");
}
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/montserrat-bold.woff") format("woff");
}
@font-face {
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url("../fonts/montserrat-italic-variable.woff") format("woff");
}


/* 2. Design tokens
   ========================================================================== */

:root {
  --navy: #002952;
  --teal-link: #74cdd4;
  --nav-bg: rgba(0, 0, 0, .2);
  --nav-divider: rgba(0, 0, 0, .1);
  --content-width: 1024px;
}


/* 3. Base / reset
   ========================================================================== */

*, *::before, *::after { box-sizing: border-box; }

html, body {
  margin: 0;
  padding: 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 1.5;
  color: #000;
  background: #fff;
}

main { overflow-x: clip; }
section { position: relative; }
figure { margin: 0; }
img { display: block; max-width: 100%; height: auto; }
h1, h2, h3, h4, h5, h6, p { margin: 0; }
a { color: inherit; }

/* Show a block on desktop only, or on tablet + mobile only */
@media (max-width: 999px) { .only-desktop { display: none !important; } }
@media (min-width: 1000px) { .only-tablet-down { display: none !important; } }


/* 4. Brochure navigation
   ========================================================================== */

/* --- Top bar ------------------------------------------------------------- */
.topbar {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 999;
  display: flex;
  align-items: stretch;
  height: 57px;
  background: var(--nav-bg);
  color: #fff;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 32px;
}
.topbar__left { display: flex; align-items: stretch; flex: 1 1 auto; min-width: 0; }
.topbar button {
  appearance: none;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: #fff;
  cursor: pointer;
}
.topbar__menu { display: flex; align-items: center; justify-content: center; width: 57px; height: 57px; }
.topbar__menu svg { width: 24px; height: 24px; fill: #fff; }
.topbar__divider { flex: 0 0 1px; width: 1px; background: var(--nav-divider); }
.topbar__count { display: flex; align-items: center; justify-content: center; width: 42px; white-space: nowrap; }
.topbar__title {
  display: flex;
  align-items: center;
  padding: 0 10px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.topbar__sound { display: none; align-items: center; justify-content: center; width: 57px; height: 57px; }
.topbar__sound svg { width: 20px; height: 20px; fill: currentColor; }
.has-video .topbar__sound { display: flex; }

@media (max-width: 749px) {
  .topbar__menu { width: 38px; }
  .topbar__title { display: none; }
}

/* --- Previous / next page arrows ----------------------------------------- */
.page-arrows { position: fixed; right: 30px; bottom: 60px; z-index: 998; display: flex; }
.page-arrows a,
.page-arrows span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 41px;
  height: 41px;
  background: var(--nav-bg);
  color: #fff;
}
.page-arrows svg { width: 24px; height: 24px; fill: currentColor; }
.page-arrows .prev { border-radius: 2px 0 0 2px; }
.page-arrows .next { border-radius: 0 2px 2px 0; }
.page-arrows .is-disabled { opacity: .5; cursor: default; }

/* --- Scroll-down button (desktop, top of page only) ----------------------- */
.scroll-down {
  position: fixed;
  left: 50%;
  bottom: 20px;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 68px;
  height: 68px;
  margin-left: -34px;
  padding: 0;
  border: 0;
  border-radius: 34px;
  background: var(--nav-bg);
  color: #fff;
  cursor: pointer;
  transition: opacity .3s ease, visibility .3s ease;
}
.scroll-down svg { width: 32px; height: 32px; fill: currentColor; }
.scroll-down.is-hidden { opacity: 0; visibility: hidden; pointer-events: none; }
@media (max-width: 999px) { .scroll-down { display: none; } }

/* --- Page index (opened from the menu button) ---------------------------- */
.page-index {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: none;
  flex-direction: column;
  background: #fff;
}
.page-index.is-open { display: flex; }
.page-index__head {
  position: relative;
  display: flex;
  justify-content: center;
  flex: 0 0 56px;
  height: 56px;
  border-bottom: 1px solid rgba(0, 0, 0, .1);
}
.page-index__tab {
  display: block;
  height: 56px;
  padding: 15px 16px;
  border-bottom: 4px solid #000;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 17.6px;
  color: #000;
}
.page-index__close {
  position: absolute;
  top: 15px;
  right: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 26px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #000;
  cursor: pointer;
}
.page-index__close svg { width: 24px; height: 24px; fill: currentColor; }
.page-index__grid {
  --cols: 1;
  display: flex;
  flex: 1 1 auto;
  flex-wrap: wrap;
  align-content: flex-start;
  overflow-y: auto;
}
@media (min-width: 481px)  { .page-index__grid { --cols: 2; } }
@media (min-width: 961px)  { .page-index__grid { --cols: 3; } }
@media (min-width: 1441px) { .page-index__grid { --cols: 4; } }
@media (min-width: 1921px) { .page-index__grid { --cols: 5; } }

.page-tile {
  position: relative;
  display: block;
  width: calc(100% / var(--cols, 3));
  aspect-ratio: 480 / 322;
  overflow: hidden;
  isolation: isolate;
  transform: translateZ(0);
  color: #fff;
  text-decoration: none;
}
.page-tile__thumb {
  position: absolute;
  inset: 0;
  z-index: 0;
  background-size: cover;
  background-position: 50% 50%;
  transform: scale(1.05);
  transition: transform .6s ease-in-out;
}
.page-tile:hover .page-tile__thumb { transform: scale(1.1); }
.page-tile__shade {
  position: absolute;
  inset: 0;
  z-index: 3;
  display: flex;
  align-items: flex-end;
  padding: 10px;
  background: rgba(0, 0, 0, .6);
  transition: background-color .3s;
}
.page-tile:hover .page-tile__shade,
.page-tile.is-current .page-tile__shade { background: transparent; }
.page-tile__label {
  margin-right: 10px;
  padding: 5px;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 15px;
  font-weight: 700;
  line-height: 22.5px;
}
.page-tile.is-current .page-tile__label { padding: 5px 10px; background: rgba(0, 0, 0, .6); border-radius: 16px; }
body.index-open { overflow: hidden; }


/* 5. Page 1 — Introduction
   ========================================================================== */

.block { position: relative; display: flex; justify-content: center; }
.wrap { width: 100%; max-width: var(--content-width); }

/* Full-screen background video hero (desktop) */
.hero-video { position: relative; height: 100vh; min-height: 50px; overflow: hidden; background: #000; }
.hero-video__poster {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: 50% 50%;
  background-repeat: no-repeat;
}
.hero-video__frame { position: absolute; inset: 0; overflow: hidden; pointer-events: none; }
.hero-video__frame iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  width: max(100%, 177.7778vh);
  height: max(56.25vw, 100%);
  border: 0;
  pointer-events: none;
  transform: translate(-50%, -50%);
}
.hero-video__inner {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 15.883vh 3.541vw 0;
}

/* Still-image hero (tablet + mobile) */
.hero-still {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 512.25px;
  padding: 34px 6.5vw 0;
  background-size: cover;
  background-position: 50% 50%;
  background-repeat: no-repeat;
}
@media (max-width: 749px) { .hero-still { min-height: 265.64px; padding: 0 6.667vw; } }

.hero-title-gif { width: 100%; max-width: 1167px; height: auto; }

/* Centered intro copy */
.intro-copy { min-height: 186.06px; }
.intro-copy .wrap { padding: 100px 0 50px; }
.intro-copy h4 {
  margin: 0 0 .55em;
  font-family: "Montserrat", Arial, sans-serif;
  font-size: 21px;
  font-weight: 300;
  line-height: 2.1;
  color: #000;
  text-align: center;
  white-space: pre-wrap;
}
@media (max-width: 999px) {
  .intro-copy .wrap { padding: 50px 6.5vw 50px; }
  .intro-copy h4 { font-size: 18px; }
}
@media (max-width: 749px) {
  .intro-copy { min-height: 637.55px; }
  .intro-copy .wrap { padding: 50px 6.667vw 25px; }
  .intro-copy h4 { font-size: 14px; }
}


/* 6. Footer (shared by every page)
   ========================================================================== */

.site-footer {
  position: relative;
  display: flex;
  justify-content: center;
  min-height: 410.17px;
  background: var(--navy) url("../images/shared/footer-water.jpg") 50% 0 / cover no-repeat;
  color: #fff;
}
.site-footer .wrap { display: flex; justify-content: space-between; }
.site-footer__col {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: calc(33.3333% - 20px);
  padding-top: 90.7px;
}
.site-footer__col--logo { align-items: center; padding-left: 49.4px; padding-right: 49.4px; }
.site-footer__logo { width: 223px; margin-bottom: 16px; }
.site-footer p {
  margin: 0 0 8.8px;
  font-family: "Montserrat", Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  text-align: center;
}
.site-footer .label { letter-spacing: 3.2px; color: #fff; }
.site-footer .value { color: var(--teal-link); }
.site-footer .value a { color: inherit; text-decoration: underline; }
.site-footer .address { line-height: 27.2px; letter-spacing: 3.2px; white-space: pre-line; }
.site-footer .address span { font-size: .75rem; }
.site-footer__group { margin-bottom: 9px; }
.site-footer__group:first-child { margin-bottom: 9.88px; }
.site-footer__group:last-of-type { margin-bottom: 0; }
.site-footer__col:nth-child(2) .site-footer__group { margin-bottom: 9px; }
.site-footer__social { display: block; width: 39px; height: 39px; margin: 0 auto 16px; }
.site-footer__social img { width: 39px; height: 39px; }

@media (max-width: 999px) {
  .site-footer { min-height: 0; }
  .site-footer .wrap { flex-direction: column; }
  .site-footer__col { width: 100%; padding: 0 6.5vw 50px; }
  .site-footer__col--logo { padding: 110px 6.5vw 50px; }
  .site-footer__logo { width: 260px; }
}
@media (max-width: 749px) {
  .site-footer { min-height: 583.14px; }
  .site-footer__col { padding: 25px 6.667vw 25px; }
  .site-footer__col--logo { padding: 100px 6.667vw 0; }
  .site-footer__logo { width: 219px; }
  .site-footer p { margin-bottom: 6.6px; font-size: 12px; line-height: 18px; }
  .site-footer .label { letter-spacing: 2.4px; }
  .site-footer .address { margin-bottom: 8.8px; font-size: 16px; line-height: 27.2px; letter-spacing: 3.2px; }
  .site-footer__social,
  .site-footer__social img { width: 33.5px; height: 33.5px; }
}


/* 7. Content helpers
   ========================================================================== */

/* --- Reveal-on-scroll animations (0.7s ease-in-out, 20px travel) ---------
   Usage: class="reveal fade-up d15"  (d15 / d30 / d45 / d60 = delay in hundredths of a second, "slow" = 1.4s) */
.reveal-ready .reveal:not(.is-visible) { opacity: 0; }
.reveal.is-visible {
  animation-duration: .7s;
  animation-timing-function: ease-in-out;
  animation-fill-mode: backwards;
}
.reveal.slow { animation-duration: 1.4s; }
.reveal.d15 { animation-delay: .15s; }
.reveal.d30 { animation-delay: .3s; }
.reveal.d45 { animation-delay: .45s; }
.reveal.d60 { animation-delay: .6s; }
.reveal.is-visible.fade-in    { animation-name: fade-in; }
.reveal.is-visible.fade-up    { animation-name: fade-up; }
.reveal.is-visible.fade-down  { animation-name: fade-down; }
.reveal.is-visible.fade-left  { animation-name: fade-left; }
.reveal.is-visible.fade-right { animation-name: fade-right; }
@keyframes fade-in    { from { opacity: 0; } to { opacity: 1; } }
@keyframes fade-up    { from { opacity: 0; transform: translate3d(0, 20px, 0); } to { opacity: 1; transform: none; } }
@keyframes fade-down  { from { opacity: 0; transform: translate3d(0, -20px, 0); } to { opacity: 1; transform: none; } }
@keyframes fade-left  { from { opacity: 0; transform: translate3d(-20px, 0, 0); } to { opacity: 1; transform: none; } }
@keyframes fade-right { from { opacity: 0; transform: translate3d(20px, 0, 0); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) {
  .reveal.is-visible { animation: none; }
  .reveal-ready .reveal:not(.is-visible) { opacity: 1; }
}

/* --- Background video inside a content block (script.js sizes it to cover the box) */
.bg-video { overflow: hidden; }
.bg-video iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  border: 0;
  pointer-events: none;
  transform: translate(-50%, -50%);
}

/* --- Image carousel (drag / swipe, snaps to each slide) ------------------ */
.carousel {
  min-width: 0;
  max-width: 100%;
  overflow-x: auto !important;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
  cursor: grab;
}
.carousel::-webkit-scrollbar { display: none; }
.carousel.is-dragging { cursor: grabbing; scroll-snap-type: none; }
.carousel__track > * { scroll-snap-align: center; }
.carousel img { -webkit-user-drag: none; user-select: none; }
.has-carousel *:not(img) { min-width: 0; }
/* Desktop: first slide starts at the 25px page edge and slides snap to the left */
@media (min-width: 1000px) {
  .carousel { padding-left: 25px !important; scroll-padding-left: 25px; }
  .carousel__track > * { scroll-snap-align: start; }
}

/* --- Vertical spacers between sections ------------------------------------ */
.spacer { display: block; }


/* 8. Page layouts
   ==========================================================================
   Measured from the original brochure at desktop, tablet and mobile widths.
   Class names describe the element (section, col, col-inner, box, title, copy, photo …);
   the number is just the variant. */


/* --- Shared by several pages ----------------------------------------------- */
.box1 { display: flex; flex-grow: 1; }
.row1 { display: flex; flex-wrap: wrap; justify-content: space-between; min-height: 50px; width: 100%; }
.col1 { display: flex; position: relative; flex-direction: column; justify-content: center; flex-grow: 1; flex-basis: 100%; max-width: 100%; }
.col-inner1 { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-grow: 1; overflow: hidden auto; flex-basis: 100%; min-height: 100%; padding-top: 25px; padding-right: 25px; padding-left: 25px; }
.col-inner1::after { content: " "; display: block; height: 25px; }
.box3 { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-grow: 1; flex-basis: 100%; width: 100%; }
.box4 { display: flex; flex-grow: 1; max-width: 1024px; }
.box5 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; }
.col2 { display: flex; position: relative; flex-direction: column; justify-content: center; flex-shrink: 0; flex-basis: 100%; max-width: 100%; width: 100%; }
.col-inner2 { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-grow: 1; padding-top: 50px; padding-right: 6.5vw; padding-left: 6.5vw; }
.col-inner2::after { content: " "; display: block; height: 0; }
.section3 { display: flex; position: relative; justify-content: center; min-height: 86.54px; }
.col3 { display: flex; position: relative; flex-direction: column; justify-content: flex-start; flex-grow: 1; flex-basis: 100%; max-width: 100%; }
.col-inner3 { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; flex-grow: 1; padding-top: 100px; padding-right: 50px; padding-left: 50.35px; }
.col-inner3::after { content: " "; display: block; height: 0; }
.title1 { position: relative; font-family: "Playfair Display", Georgia, serif; font-size: 56px; font-weight: 400; line-height: 58.8px; color: var(--navy); text-align: center; white-space: pre-wrap; margin-bottom: 30.8px; width: 100%; }
.copy1 { position: relative; font-family: Montserrat, Arial, sans-serif; font-size: 21px; font-weight: 300; line-height: 44.1px; text-align: center; white-space: pre-wrap; margin-bottom: 11.55px; width: 100%; }
.section4 { display: flex; position: relative; justify-content: center; min-height: 894.06px; }
.col4 { display: flex; position: relative; flex-direction: column; justify-content: center; flex-grow: 1; flex-basis: 41.6667%; max-width: 41.6667%; }
.col-inner4 { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-grow: 1; padding-top: 25px; padding-right: 3.541vw; padding-left: 3.541vw; }
.col-inner4::after { content: " "; display: block; height: 25px; }
.box7 { display: flex; position: absolute; top: 0; left: 0; width: 100%; height: 100%; flex-direction: column; align-items: flex-start; overflow: hidden; }
.col6 { display: flex; position: relative; flex-direction: column; justify-content: center; flex-grow: 1; flex-basis: 29.1667%; max-width: 29.1667%; }
.col-inner6 { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-grow: 1; padding-top: 25px; padding-right: 25px; padding-left: 25px; }
.col-inner6::after { content: " "; display: block; height: 25px; }
.figure1 { position: relative; overflow: hidden; max-width: 100%; }
.photo1 { overflow: hidden; width: 100%; }
.spacer2 { height: 100px; }
.col7 { display: flex; position: relative; flex-direction: column; justify-content: flex-end; flex-grow: 1; flex-basis: calc(62.5% - 11.25px); max-width: calc(62.5% - 11.25px); }
.col8 { display: flex; position: relative; flex-direction: column; justify-content: center; flex-grow: 1; background-color: rgba(0, 41, 82, 0.9); flex-basis: calc(37.5% - 18.75px); max-width: calc(37.5% - 18.75px); }
.title2 { position: relative; font-family: "Playfair Display", Georgia, serif; font-size: 56px; font-weight: 400; line-height: 58.8px; color: #fff; text-align: center; white-space: pre-wrap; margin-bottom: 30.8px; width: 100%; }
.copy2 { position: relative; font-family: Montserrat, Arial, sans-serif; font-size: 21px; font-weight: 300; line-height: 44.1px; color: #fff; text-align: center; white-space: pre-wrap; margin-bottom: 11.55px; width: 100%; }
.section6 { display: none; }
.col10 { display: flex; position: relative; flex-direction: column; justify-content: center; flex-shrink: 0; order: 2; flex-basis: 100%; max-width: 100%; width: 100%; }
.title3 { position: relative; font-family: "Playfair Display", Georgia, serif; font-size: 44px; font-weight: 400; line-height: 46.2px; color: var(--navy); text-align: center; white-space: pre-wrap; margin-bottom: 24.2px; width: 100%; }
.copy3 { position: relative; font-family: Montserrat, Arial, sans-serif; font-size: 18px; font-weight: 300; line-height: 37.8px; text-align: center; white-space: pre-wrap; margin-bottom: 9.9px; width: 100%; }
.col11 { display: flex; position: relative; flex-direction: column; justify-content: center; flex-grow: 1; flex-basis: 37.5%; max-width: 37.5%; }
.col-inner11 { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; flex-grow: 1; padding-top: 100px; padding-right: 50px; padding-left: 50.35px; }
.col-inner11::after { content: " "; display: block; height: 0; }
.section9 { display: flex; position: relative; justify-content: center; background-color: rgb(226, 226, 226); min-height: 50px; height: 100vh; }
.section11 { display: flex; position: relative; justify-content: center; min-height: 894.06px; }
.col-inner12 { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-grow: 1; padding-top: 25px; padding-right: 3.541vw; padding-left: 3.541vw; }
.col-inner12::after { content: " "; display: block; height: 25px; }
.col-inner14 { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-grow: 1; padding-top: 25px; padding-right: 25px; padding-left: 25px; }
.col-inner14::after { content: " "; display: block; height: 25px; }
.figure3 { position: relative; overflow: hidden; max-width: 100%; }
.photo3 { overflow: hidden; width: 100%; }
.col-inner15 { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-grow: 1; padding-top: 25px; padding-right: 25px; padding-left: 25px; }
.col-inner15::after { content: " "; display: block; height: 25px; }
.spacer5 { height: 112px; }
.section16 { display: flex; position: relative; justify-content: center; min-height: 996px; }
.spacer6 { height: 100px; }
.section23 { display: flex; position: relative; justify-content: center; background-color: rgb(122, 122, 122); min-height: 50px; height: 100vh; }
.title5 { position: relative; font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif; font-size: 56px; font-weight: 400; line-height: 58.8px; color: var(--navy); text-align: center; white-space: pre-wrap; margin-bottom: 30.8px; width: 100%; }
.col-inner34 { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-grow: 1; padding-top: 25px; padding-right: 25px; padding-left: 25px; }
.col-inner34::after { content: " "; display: block; height: 25px; }
.box41 { display: flex; flex-direction: column; align-items: stretch; max-width: 100%; margin-bottom: 16px; width: 100%; }
.col29 { display: flex; position: relative; flex-direction: column; justify-content: center; flex-grow: 1; flex-basis: 45.8333%; max-width: 45.8333%; }
@media (max-width: 999px) {
  .col-inner1::after { content: " "; display: block; height: 0; }
  .col-inner2::after { content: " "; display: block; height: 50px; }
  .col3 { flex-grow: 0; flex-shrink: 0; width: 100%; }
  .col-inner3 { padding-top: 50px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner3::after { content: " "; display: block; height: 50px; }
  .title1 { font-size: 44px; line-height: 46.2px; margin-bottom: 24.2px; }
  .copy1 { font-size: 18px; line-height: 37.8px; margin-bottom: 9.9px; }
  .col4 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; order: 3; width: 100%; }
  .col-inner4 { padding-top: 50px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner4::after { content: " "; display: block; height: 50px; }
  .col6 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; order: 2; width: 100%; }
  .col-inner6 { padding-top: 50px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner6::after { content: " "; display: block; height: 50px; }
  .spacer2 { display: none; }
  .section6 { display: flex; position: relative; justify-content: center; min-height: 569.62px; }
  .col11 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; order: 2; width: 100%; }
  .col-inner11 { padding-top: 50px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner11::after { content: " "; display: block; height: 50px; }
  .section9 { display: none; }
  .col-inner12 { padding-top: 50px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner12::after { content: " "; display: block; height: 50px; }
  .col-inner14 { padding-top: 0; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner14::after { content: " "; display: block; height: 0; }
  .figure3 { width: 693px; }
  .photo3 { width: 693px; }
  .col-inner15::after { content: " "; display: block; height: 0; }
  .spacer5 { display: none; }
  .section16 { min-height: 563.97px; }
  .section23 { display: none; }
  .title5 { font-size: 44px; line-height: 46.2px; margin-bottom: 24.2px; }
  .col-inner34 { padding-top: 0; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner34::after { content: " "; display: block; height: 0; }
  .col29 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; width: 100%; }
}
@media (max-width: 749px) {
  .col-inner2 { padding-top: 25px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner2::after { content: " "; display: block; height: 25px; }
  .col-inner3 { padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner3::after { content: " "; display: block; height: 25px; }
  .title1 { font-size: 35px; line-height: 36.75px; margin-bottom: 19.25px; }
  .copy1 { font-size: 14px; line-height: 29.4px; margin-bottom: 7.7px; }
  .col-inner4 { padding-top: 25px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner4::after { content: " "; display: block; height: 25px; }
  .col-inner6 { padding-top: 25px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner6::after { content: " "; display: block; height: 25px; }
  .title3 { font-size: 35px; line-height: 36.75px; margin-bottom: 19.25px; }
  .copy3 { font-size: 14px; line-height: 29.4px; margin-bottom: 7.7px; }
  .col-inner11 { padding-top: 25px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner11::after { content: " "; display: block; height: 25px; }
  .section11 { min-height: 599.06px; }
  .col-inner12 { padding-top: 0; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner12::after { content: " "; display: block; height: 25px; }
  .col-inner14 { padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner14::after { content: " "; display: block; height: 25px; }
  .figure3 { width: auto; }
  .photo3 { width: 100%; }
  .spacer6 { height: 88px; }
  .title5 { font-size: 35px; line-height: 36.75px; margin-bottom: 19.25px; }
  .col-inner34 { padding-top: 25px; padding-right: 6.667vw; padding-left: 6.667vw; }
}

/* --- Seascape -------------------------------------------------------------- */
.section1 { display: flex; position: relative; justify-content: center; min-height: 50px; height: 100vh; }
.box2 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("https://img.youtube.com/vi/GvLTtgKU4yg/maxresdefault.jpg"); }
.section2 { display: none; }
.box6 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/seascape/hero-mobile.jpg"); }
.spacer1 { height: 100px; }
.col5 { display: flex; position: relative; flex-direction: column; justify-content: flex-start; flex-grow: 1; background-size: cover; background-position: 50% 100%; background-repeat: no-repeat; background-image: url("../images/seascape/the-nature-of-laughter.jpg"); flex-basis: 29.1667%; max-width: 29.1667%; border-top-width: 25px; border-top-style: solid; border-top-color: #fff; border-right-width: 25px; border-right-style: solid; border-right-color: #fff; border-bottom-width: 25px; border-bottom-style: solid; border-bottom-color: #fff; border-left-width: 25px; border-left-style: solid; border-left-color: #fff; }
.col-inner5 { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; flex-grow: 1; padding-top: 4px; }
.col-inner5::after { content: " "; display: block; height: 0; }
.box8 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 100%; background-repeat: no-repeat; background-image: url("../images/seascape/the-nature-of-laughter.jpg"); }
.box9 { display: flex; flex-direction: column; align-items: stretch; max-width: 100%; margin-bottom: 16px; width: 100%; }
.section5 { display: flex; position: relative; justify-content: center; background-color: #fff; min-height: 1114.81px; }
.box10 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("https://img.youtube.com/vi/GfAZcMRvZ-c/maxresdefault.jpg"); }
.col-inner7 { display: flex; flex-direction: column; justify-content: flex-end; align-items: flex-start; flex-grow: 1; padding-top: 19.634vh; padding-left: 3.472vw; }
.col-inner7::after { content: " "; display: block; height: 13.089vh; }
.col-inner8 { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; flex-grow: 1; padding-right: 3.541vw; padding-left: 3.541vw; }
.spacer3 { height: 99.12px; }
.col9 { display: flex; position: relative; flex-direction: column; justify-content: flex-start; flex-shrink: 0; order: 1; background-size: cover; background-position: 0% 100%; background-repeat: no-repeat; background-image: url("../images/seascape/where-life-takes-flight.jpg"); flex-basis: 100%; max-width: 100%; border-top-width: 25px; border-top-style: solid; border-top-color: #fff; border-right-width: 25px; border-right-style: solid; border-right-color: #fff; border-bottom-width: 25px; border-bottom-style: solid; border-bottom-color: #fff; border-left-width: 25px; border-left-style: solid; border-left-color: #fff; width: 100%; }
.col-inner9 { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; flex-grow: 1; padding-top: 426.43px; padding-right: 6.5vw; padding-left: 6.5vw; }
.col-inner9::after { content: " "; display: block; height: 0; }
.box11 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 0% 100%; background-repeat: no-repeat; background-image: url("../images/seascape/where-life-takes-flight.jpg"); }
.section7 { display: flex; position: relative; justify-content: center; min-height: 894.06px; }
.col12 { display: flex; position: relative; flex-direction: column; justify-content: flex-start; flex-grow: 1; background-size: cover; background-position: 0% 100%; background-repeat: no-repeat; background-image: url("../images/seascape/natural-refreshment.jpg"); flex-basis: 62.5%; max-width: 62.5%; border-top-width: 25px; border-top-style: solid; border-top-color: #fff; border-right-width: 25px; border-right-style: solid; border-right-color: #fff; border-bottom-width: 25px; border-bottom-style: solid; border-bottom-color: #fff; border-left-width: 25px; border-left-style: solid; border-left-color: #fff; }
.col-inner10 { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; flex-grow: 1; padding-top: 25px; padding-right: 25px; padding-left: 25px; }
.col-inner10::after { content: " "; display: block; height: 25px; }
.box12 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 0% 100%; background-repeat: no-repeat; background-image: url("../images/seascape/natural-refreshment.jpg"); }
.section8 { display: flex; position: relative; justify-content: center; min-height: 582.9px; }
.box13 { flex-grow: 1; flex-basis: 0%; }
.box14 { position: relative; flex-grow: 1; flex-basis: 0%; }
.carousel1 { flex-grow: 1; overflow: hidden; flex-basis: 0%; padding-right: calc(50vw + -512px); padding-left: calc(50vw + -512px); }
.slides1 { display: grid; grid-auto-flow: column; grid-auto-columns: 1024px; column-gap: 30px; padding-top: 22px; padding-bottom: 24px; }
.box15 { display: grid; position: relative; z-index: 1; column-gap: 0px; }
.box16 { display: grid; overflow: hidden; box-shadow: rgba(0, 0, 0, 0.15) 0px 0px 20px 0px; }
.box17 { display: flex; align-items: stretch; max-width: 100%; }
.figure2 { position: relative; overflow: hidden; max-width: 100%; width: 1024px; }
.photo2 { overflow: hidden; object-fit: cover; width: 1024px; height: 682.66px; }
.box18 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; z-index: -1; background-color: #fff; }
.spacer4 { height: 112.7px; }
@media (max-width: 999px) {
  .section1 { display: none; }
  .section2 { display: flex; position: relative; justify-content: center; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/seascape/hero-mobile.jpg"); min-height: 419.89px; }
  .col5 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; order: 1; width: 100%; }
  .col-inner5 { padding-top: 376.21px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner5::after { content: " "; display: block; height: 107px; }
  .section5 { display: none; }
  .col-inner7::after { content: " "; display: block; height: 0; }
  .spacer3 { display: none; }
  .col-inner9::after { content: " "; display: block; height: 50px; }
  .col12 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; order: 1; width: 100%; }
  .col-inner10 { padding-top: 426.43px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner10::after { content: " "; display: block; height: 50px; }
  .section8 { min-height: 201.44px; }
  .carousel1 { padding-right: 6.5vw; padding-left: 6.5vw; }
  .slides1 { grid-auto-columns: calc(36.25vw + -17.5px); }
  .figure2 { width: auto; }
  .photo2 { width: 100%; height: calc(24.167vw + -11.68px); }
  .spacer4 { display: none; }
}
@media (max-width: 749px) {
  .section2 { min-height: 264.7px; }
  .spacer1 { display: none; }
  .col-inner5 { padding-top: 0; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner5::after { content: " "; display: block; height: 250px; }
  .box9 { margin-bottom: 0; }
  .col-inner9 { padding-top: 204.5px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner9::after { content: " "; display: block; height: 25px; }
  .section7 { min-height: 485.29px; }
  .col-inner10 { padding-top: 250px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner10::after { content: " "; display: block; height: 0; }
  .carousel1 { padding-right: 6.667vw; padding-left: 6.667vw; }
  .slides1 { grid-auto-columns: calc(72.225vw + -5.02px); }
  .photo2 { height: calc(48.147vw + -3.34px); }
}

/* --- Sporting Venues ------------------------------------------------------- */
.box19 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("https://img.youtube.com/vi/C5M_OHbM4JU/maxresdefault.jpg"); }
.section10 { display: none; }
.box20 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/sporting-venues/hero-mobile.jpg"); }
.col13 { display: flex; position: relative; flex-direction: column; justify-content: flex-start; flex-grow: 1; background-size: cover; background-position: 100% 100%; background-repeat: no-repeat; background-image: url("../images/sporting-venues/teeing-off-in-style.jpg"); flex-basis: 29.1667%; max-width: 29.1667%; border-top-width: 25px; border-top-style: solid; border-top-color: #fff; border-right-width: 25px; border-right-style: solid; border-right-color: #fff; border-bottom-width: 25px; border-bottom-style: solid; border-bottom-color: #fff; border-left-width: 25px; border-left-style: solid; border-left-color: #fff; }
.col-inner13 { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; flex-grow: 1; }
.col-inner13::after { content: " "; display: block; height: 0; }
.box21 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 100% 100%; background-repeat: no-repeat; background-image: url("../images/sporting-venues/teeing-off-in-style.jpg"); }
.box22 { display: flex; flex-direction: column; align-items: stretch; max-width: 100%; margin-bottom: 16px; width: 100%; }
.section12 { display: flex; position: relative; justify-content: center; background-color: rgb(226, 226, 226); min-height: 807px; }
.box23 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("https://img.youtube.com/vi/WytcVQ7E4AI/maxresdefault.jpg"); }
.section13 { display: flex; position: relative; justify-content: center; min-height: 955px; }
.col14 { display: flex; position: relative; flex-direction: column; justify-content: flex-start; flex-grow: 1; background-size: cover; background-position: 50% 100%; background-repeat: no-repeat; background-image: url("../images/sporting-venues/courtly-connections.jpg"); flex-basis: 62.5%; max-width: 62.5%; border-top-width: 25px; border-top-style: solid; border-top-color: #fff; border-right-width: 25px; border-right-style: solid; border-right-color: #fff; border-bottom-width: 25px; border-bottom-style: solid; border-bottom-color: #fff; border-left-width: 25px; border-left-style: solid; border-left-color: #fff; }
.col-inner16 { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; flex-grow: 1; padding-top: 25px; padding-right: 25px; padding-left: 25px; }
.col-inner16::after { content: " "; display: block; height: 25px; }
.box24 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 100%; background-repeat: no-repeat; background-image: url("../images/sporting-venues/courtly-connections.jpg"); }
.col15 { display: flex; position: relative; flex-direction: column; justify-content: center; flex-grow: 1; flex-basis: 37.5%; max-width: 37.5%; }
.col-inner17 { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-grow: 1; padding-top: 25px; padding-right: 3.541vw; padding-left: 3.541vw; }
.col-inner17::after { content: " "; display: block; height: 25px; }
.section14 { display: flex; position: relative; justify-content: center; min-height: 421px; }
.col-inner18 { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-grow: 1; padding-top: 25px; padding-right: 18.125vw; padding-left: 18.125vw; }
.col-inner18::after { content: " "; display: block; height: 25px; }
.title4 { position: relative; font-family: "Playfair Display", Georgia, serif; font-size: 56px; font-weight: 400; line-height: 58.8px; color: var(--navy); text-align: center; white-space: pre-wrap; margin-bottom: 30.8px; width: 100%; }
.copy4 { position: relative; font-family: Montserrat, Arial, sans-serif; font-size: 21px; font-weight: 300; line-height: 44.1px; text-align: center; white-space: pre-wrap; margin-bottom: 11.55px; width: 100%; }
.box25 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("https://img.youtube.com/vi/5DD7MFYf9mE/maxresdefault.jpg"); }
.section15 { display: none; }
.col-inner19 { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-grow: 1; padding-right: 6.5vw; padding-left: 6.5vw; }
.col-inner19::after { content: " "; display: block; height: 0; }
.col16 { display: flex; position: relative; flex-direction: column; justify-content: flex-start; flex-shrink: 0; background-color: #fff; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/sporting-venues/rolling-into-fun.jpg"); flex-basis: 100%; max-width: 100%; border-top-width: 25px; border-top-style: solid; border-top-color: #fff; border-right-width: 25px; border-right-style: solid; border-right-color: #fff; border-bottom-width: 25px; border-bottom-style: solid; border-bottom-color: #fff; border-left-width: 25px; border-left-style: solid; border-left-color: #fff; width: 100%; }
.col-inner20 { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; flex-grow: 1; padding-top: 353px; padding-right: 6.5vw; padding-left: 6.5vw; }
.col-inner20::after { content: " "; display: block; height: 0; }
.box26 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/sporting-venues/rolling-into-fun.jpg"); }
.col17 { display: flex; position: relative; flex-direction: column; justify-content: flex-start; flex-grow: 1; background-color: rgb(26, 129, 149); background-size: cover; background-position: 0% 50%; background-repeat: no-repeat; background-image: url("../images/sporting-venues/pop-and-play.jpg"); flex-basis: 62.5%; max-width: 62.5%; border-top-width: 25px; border-top-style: solid; border-top-color: #fff; border-right-width: 25px; border-right-style: solid; border-right-color: #fff; border-bottom-width: 25px; border-bottom-style: solid; border-bottom-color: #fff; border-left-width: 25px; border-left-style: solid; border-left-color: #fff; }
.col-inner21 { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; flex-grow: 1; padding-top: 25px; padding-right: 25px; padding-left: 25px; }
.col-inner21::after { content: " "; display: block; height: 25px; }
.box27 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 0% 50%; background-repeat: no-repeat; background-image: url("../images/sporting-venues/pop-and-play.jpg"); }
@media (max-width: 999px) {
  .section10 { display: flex; position: relative; justify-content: center; background-color: rgb(226, 226, 226); background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/sporting-venues/hero-mobile.jpg"); min-height: 463.17px; }
  .col13 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; order: 1; width: 100%; }
  .col-inner13 { padding-top: 400px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .box22 { align-items: center; }
  .section12 { display: none; }
  .section13 { min-height: 469.91px; }
  .col14 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; order: 2; width: 100%; }
  .col-inner16 { padding-top: 487px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner16::after { content: " "; display: block; height: 0; }
  .col15 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; order: 1; width: 100%; }
  .col-inner17 { padding-top: 50px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner17::after { content: " "; display: block; height: 50px; }
  .section14 { display: none; }
  .col-inner18::after { content: " "; display: block; height: 0; }
  .section15 { display: flex; position: relative; justify-content: center; min-height: 522px; }
  .col-inner19::after { content: " "; display: block; height: 50px; }
  .col-inner20::after { content: " "; display: block; height: 245px; }
  .col17 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; order: 2; width: 100%; }
  .col-inner21 { padding-top: 0; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner21::after { content: " "; display: block; height: 465px; }
}
@media (max-width: 749px) {
  .section10 { min-height: 259.39px; }
  .col-inner13 { padding-top: 200px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner13::after { content: " "; display: block; height: 25px; }
  .box22 { margin-bottom: 0; }
  .section13 { min-height: 612px; }
  .col-inner16 { padding-top: 250px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner16::after { content: " "; display: block; height: 8.83px; }
  .col-inner17 { padding-top: 0; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner17::after { content: " "; display: block; height: 0; }
  .section15 { min-height: 318.47px; }
  .col-inner19 { padding-right: 6.667vw; padding-left: 6.667vw; padding-top: 25px; }
  .col-inner19::after { content: " "; display: block; height: 25px; }
  .col-inner20 { padding-top: 299px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner20::after { content: " "; display: block; height: 25px; }
  .col-inner21 { padding-top: 200px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner21::after { content: " "; display: block; height: 0; }
}

/* --- Sports & Wellness ----------------------------------------------------- */
.box28 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("https://img.youtube.com/vi/Rrrxp7LUBF4/maxresdefault.jpg"); }
.section17 { display: none; }
.box29 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/sports-wellness/hero-mobile.jpg"); }
.col-inner22 { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; flex-grow: 1; padding-top: 100px; padding-right: 25px; padding-left: 25px; }
.col-inner22::after { content: " "; display: block; height: 0; }
.section18 { display: flex; position: relative; justify-content: center; background-color: rgb(226, 226, 226); min-height: 678px; }
.box30 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("https://img.youtube.com/vi/aTBCSp_yZKY/maxresdefault.jpg"); }
.section19 { display: none; }
.box31 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 100%; background-repeat: no-repeat; background-image: url("../images/sports-wellness/video-still-mobile.jpg"); }
.col18 { display: flex; position: relative; flex-direction: column; justify-content: center; flex-grow: 1; flex-basis: 41.6667%; max-width: 41.6667%; }
.col-inner23 { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-grow: 1; padding-top: 25px; padding-right: 2.734vw; padding-left: 3.008vw; }
.col-inner23::after { content: " "; display: block; height: 25px; }
.col19 { display: flex; position: relative; flex-direction: column; justify-content: flex-start; flex-grow: 1; background-color: rgb(26, 129, 149); background-size: cover; background-position: 100% 50%; background-repeat: no-repeat; background-image: url("../images/sports-wellness/movement-with-purpose.jpg"); flex-basis: 58.3333%; max-width: 58.3333%; border-top-width: 50px; border-top-style: solid; border-top-color: #fff; border-right-width: 50px; border-right-style: solid; border-right-color: #fff; border-bottom-width: 50px; border-bottom-style: solid; border-bottom-color: #fff; border-left-width: 50px; border-left-style: solid; border-left-color: #fff; }
.col-inner24 { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; flex-grow: 1; padding-top: 25px; padding-right: 25px; padding-left: 25px; }
.col-inner24::after { content: " "; display: block; height: 25px; }
.box32 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 100% 50%; background-repeat: no-repeat; background-image: url("../images/sports-wellness/movement-with-purpose.jpg"); }
.col20 { display: flex; position: relative; flex-direction: column; justify-content: flex-start; flex-grow: 1; background-size: cover; background-position: 50% 100%; background-repeat: no-repeat; background-image: url("../images/sports-wellness/care-that-carries-forward.jpg"); flex-basis: 29.1667%; max-width: 29.1667%; border-top-width: 25px; border-top-style: solid; border-top-color: #fff; border-right-width: 25px; border-right-style: solid; border-right-color: #fff; border-bottom-width: 25px; border-bottom-style: solid; border-bottom-color: #fff; border-left-width: 25px; border-left-style: solid; border-left-color: #fff; }
.col-inner25 { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; flex-grow: 1; }
.col-inner25::after { content: " "; display: block; height: 0; }
.box33 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 100%; background-repeat: no-repeat; background-image: url("../images/sports-wellness/care-that-carries-forward.jpg"); }
.box34 { display: flex; flex-direction: column; align-items: center; max-width: 100%; margin-bottom: 16px; width: 100%; }
.col-inner26 { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-grow: 1; padding-top: 25px; padding-right: 3.516vw; padding-left: 2.734vw; }
.col-inner26::after { content: " "; display: block; height: 25px; }
.col-inner27 { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-grow: 1; padding-top: 25px; padding-right: 2.734vw; padding-left: 3.516vw; }
.col-inner27::after { content: " "; display: block; height: 25px; }
.col21 { display: flex; position: relative; flex-direction: column; justify-content: flex-start; flex-grow: 1; background-color: rgb(26, 129, 149); background-size: cover; background-position: 100% 50%; background-repeat: no-repeat; background-image: url("../images/sports-wellness/the-game-continues.jpg"); flex-basis: 58.3333%; max-width: 58.3333%; border-top-width: 50px; border-top-style: solid; border-top-color: #fff; border-right-width: 50px; border-right-style: solid; border-right-color: #fff; border-bottom-width: 50px; border-bottom-style: solid; border-bottom-color: #fff; border-left-width: 50px; border-left-style: solid; border-left-color: #fff; }
.box35 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 100% 50%; background-repeat: no-repeat; background-image: url("../images/sports-wellness/the-game-continues.jpg"); }
.col22 { display: flex; position: relative; flex-direction: column; justify-content: flex-start; flex-grow: 1; background-size: cover; background-position: 100% 50%; background-repeat: no-repeat; background-image: url("../images/sports-wellness/naturally-social-2.jpg"); flex-basis: 29.1667%; max-width: 29.1667%; border-top-width: 25px; border-top-style: solid; border-top-color: #fff; border-right-width: 25px; border-right-style: solid; border-right-color: #fff; border-bottom-width: 25px; border-bottom-style: solid; border-bottom-color: #fff; border-left-width: 25px; border-left-style: solid; border-left-color: #fff; }
.col-inner28 { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; flex-grow: 1; }
.col-inner28::after { content: " "; display: block; height: 0; }
.box36 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 100% 50%; background-repeat: no-repeat; background-image: url("../images/sports-wellness/naturally-social-2.jpg"); }
.col-inner29 { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-grow: 1; padding-top: 25px; padding-right: 3.516vw; padding-left: 2.773vw; }
.col-inner29::after { content: " "; display: block; height: 25px; }
.section20 { display: flex; position: relative; justify-content: center; min-height: 378px; }
.section21 { display: flex; position: relative; justify-content: center; min-height: 694px; padding-right: 150px; padding-left: 150px; }
.col23 { display: flex; position: relative; flex-direction: column; justify-content: flex-start; flex-grow: 1; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/sports-wellness/everyday-essentials.jpg"); flex-basis: 50%; max-width: 50%; border-right-width: 15px; border-right-style: solid; border-right-color: #fff; }
.col-inner30 { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; flex-grow: 1; padding-top: 100px; padding-right: 1.953vw; padding-left: 25px; }
.box37 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/sports-wellness/everyday-essentials.jpg"); }
.col24 { display: flex; position: relative; flex-direction: column; justify-content: flex-start; flex-grow: 1; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/sports-wellness/everyday-essentials-2.jpg"); flex-basis: 50%; max-width: 50%; border-left-width: 15px; border-left-style: solid; border-left-color: #fff; }
.col-inner31 { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; flex-grow: 1; padding-top: 100px; padding-right: 25px; padding-left: 25px; }
.box38 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/sports-wellness/everyday-essentials-2.jpg"); }
.section22 { display: none; }
.col25 { display: flex; position: relative; flex-direction: column; justify-content: flex-start; flex-shrink: 0; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/sports-wellness/everyday-essentials.jpg"); flex-basis: 100%; max-width: 100%; border-bottom-width: 15px; border-bottom-style: solid; border-bottom-color: #fff; width: 100%; }
.col-inner32 { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; flex-grow: 1; padding-top: 50px; padding-right: 6.5vw; padding-left: 6.5vw; }
.col-inner32::after { content: " "; display: block; height: 0; }
.col26 { display: flex; position: relative; flex-direction: column; justify-content: flex-start; flex-shrink: 0; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/sports-wellness/everyday-essentials-2.jpg"); flex-basis: 100%; max-width: 100%; border-top-width: 15px; border-top-style: solid; border-top-color: #fff; width: 100%; }
@media (max-width: 999px) {
  .section17 { display: flex; position: relative; justify-content: center; background-color: rgb(226, 226, 226); background-size: cover; background-position: 0% 50%; background-repeat: no-repeat; background-image: url("../images/sports-wellness/hero-mobile.jpg"); min-height: 507px; }
  .col-inner22 { padding-top: 50px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner22::after { content: " "; display: block; height: 50px; }
  .section18 { display: none; }
  .section19 { display: flex; position: relative; justify-content: center; background-color: rgb(226, 226, 226); background-size: cover; background-position: 50% 100%; background-repeat: no-repeat; background-image: url("../images/sports-wellness/video-still-mobile.jpg"); min-height: 332px; }
  .col18 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; order: 2; width: 100%; }
  .col-inner23 { padding-top: 50px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner23::after { content: " "; display: block; height: 50px; }
  .col19 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; order: 1; width: 100%; }
  .col-inner24 { padding-top: 0; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner24::after { content: " "; display: block; height: 400px; }
  .col20 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; order: 1; width: 100%; }
  .col-inner25 { padding-top: 705px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner26 { padding-top: 50px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner26::after { content: " "; display: block; height: 50px; }
  .col-inner27 { padding-top: 50px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner27::after { content: " "; display: block; height: 50px; }
  .col21 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; order: 1; width: 100%; }
  .col22 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; order: 1; width: 100%; }
  .col-inner28 { padding-top: 883px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner29 { padding-top: 50px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner29::after { content: " "; display: block; height: 50px; }
  .section21 { display: none; }
  .section22 { display: flex; position: relative; justify-content: center; min-height: 694px; padding-right: 90px; padding-left: 90px; }
  .col-inner32::after { content: " "; display: block; height: 50px; }
}
@media (max-width: 749px) {
  .section17 { min-height: 252px; }
  .col-inner22 { padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner22::after { content: " "; display: block; height: 25px; }
  .section19 { min-height: 174px; }
  .col-inner23 { padding-top: 0; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner23::after { content: " "; display: block; height: 25px; }
  .col-inner24 { padding-top: 200px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner24::after { content: " "; display: block; height: 0; }
  .col-inner25 { padding-top: 284px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner25::after { content: " "; display: block; height: 25px; }
  .box34 { margin-bottom: 0; }
  .col-inner26 { padding-top: 0; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner26::after { content: " "; display: block; height: 25px; }
  .col-inner27 { padding-top: 0; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner27::after { content: " "; display: block; height: 25px; }
  .col-inner28 { padding-top: 200px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner28::after { content: " "; display: block; height: 25px; }
  .col-inner29 { padding-top: 0; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner29::after { content: " "; display: block; height: 25px; }
  .section22 { padding-right: 45px; padding-left: 45px; }
  .col-inner32 { padding-top: 25px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner32::after { content: " "; display: block; height: 25px; }
}

/* --- Clubhouse Scenes ------------------------------------------------------ */
.box39 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("https://img.youtube.com/vi/Uezln4cXa84/maxresdefault.jpg"); }
.section24 { display: none; }
.box40 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/clubhouse-scenes/hero-mobile.jpg"); }
.col-inner33 { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; flex-grow: 1; padding-top: 100px; padding-right: 69.41px; padding-left: 71.1px; }
.col-inner33::after { content: " "; display: block; height: 0; }
.section25 { display: flex; position: relative; justify-content: center; min-height: 625.17px; }
.col27 { display: flex; position: relative; flex-direction: column; justify-content: center; flex-grow: 1; flex-basis: 33.3333%; max-width: 33.3333%; }
.col28 { display: flex; position: relative; flex-direction: column; justify-content: center; flex-grow: 1; flex-basis: 20.8333%; max-width: 20.8333%; }
.col-inner35 { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-grow: 1; padding-top: 25px; padding-right: 25px; padding-left: 25px; }
.col-inner35::after { content: " "; display: block; height: 25px; }
.box42 { display: flex; flex-direction: column; align-items: center; max-width: 100%; margin-bottom: 16px; width: 100%; }
.figure4 { position: relative; overflow: hidden; max-width: 100%; }
.photo4 { overflow: hidden; width: 100%; }
.col-inner36 { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-grow: 1; padding-top: 100px; padding-right: 3.88vw; padding-left: 3.928vw; }
.col-inner36::after { content: " "; display: block; height: 100px; }
.section26 { display: flex; position: relative; justify-content: center; min-height: 913.35px; }
.col30 { display: flex; position: relative; flex-direction: column; justify-content: flex-start; flex-grow: 1; background-size: cover; background-position: 50% 100%; background-repeat: no-repeat; background-image: url("../images/clubhouse-scenes/breezy-bites.jpg"); flex-basis: 29.1667%; max-width: 29.1667%; border-top-width: 25px; border-top-style: solid; border-top-color: #fff; border-right-width: 25px; border-right-style: solid; border-right-color: #fff; border-bottom-width: 25px; border-bottom-style: solid; border-bottom-color: #fff; border-left-width: 25px; border-left-style: solid; border-left-color: #fff; }
.col-inner37 { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; flex-grow: 1; }
.col-inner37::after { content: " "; display: block; height: 0; }
.box43 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 100%; background-repeat: no-repeat; background-image: url("../images/clubhouse-scenes/breezy-bites.jpg"); }
.box44 { display: flex; flex-direction: column; align-items: stretch; max-width: 100%; margin-bottom: 16px; width: 100%; }
.figure5 { position: relative; overflow: hidden; max-width: 100%; }
.photo5 { overflow: hidden; width: 100%; }
.section27 { display: flex; position: relative; justify-content: center; min-height: 850.59px; }
.col31 { display: flex; position: relative; flex-direction: column; justify-content: center; flex-grow: 1; flex-basis: 4.16667%; max-width: 4.16667%; }
.col-inner38 { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-grow: 1; padding-top: 25px; }
.col-inner38::after { content: " "; display: block; height: 25px; }
.col32 { display: flex; position: relative; flex-direction: column; justify-content: flex-start; flex-grow: 1; background-color: rgb(26, 129, 149); background-size: cover; background-position: 100% 100%; background-repeat: no-repeat; background-image: url("../images/clubhouse-scenes/sunset-socials.jpg"); flex-basis: 50%; max-width: 50%; border-top-width: 25px; border-top-style: solid; border-top-color: #fff; border-right-width: 25px; border-right-style: solid; border-right-color: #fff; border-bottom-width: 25px; border-bottom-style: solid; border-bottom-color: #fff; border-left-width: 25px; border-left-style: solid; border-left-color: #fff; }
.col-inner39 { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; flex-grow: 1; padding-top: 25px; padding-right: 25px; }
.col-inner39::after { content: " "; display: block; height: 25px; }
.box45 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 100% 100%; background-repeat: no-repeat; background-image: url("../images/clubhouse-scenes/sunset-socials.jpg"); }
.col-inner40 { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-grow: 1; padding-top: 25px; padding-right: 3.541vw; padding-left: 3.541vw; }
.col-inner40::after { content: " "; display: block; height: 25px; }
@media (max-width: 999px) {
  .section24 { display: flex; position: relative; justify-content: center; background-color: rgb(122, 122, 122); background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/clubhouse-scenes/hero-mobile.jpg"); min-height: 458.4px; }
  .col-inner33 { padding-top: 50px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner33::after { content: " "; display: block; height: 50px; }
  .col27 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; width: 100%; }
  .col28 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; width: 100%; }
  .col-inner35 { padding-top: 50px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner35::after { content: " "; display: block; height: 0; }
  .figure4 { width: 564px; }
  .photo4 { width: 564px; }
  .col-inner36 { padding-top: 50px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner36::after { content: " "; display: block; height: 50px; }
  .col30 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; order: 1; width: 100%; }
  .col-inner37 { padding-top: 620px; padding-right: 4.947vw; padding-left: 8.132vw; }
  .col-inner37::after { content: " "; display: block; height: 50px; }
  .box44 { align-items: center; }
  .figure5 { width: 681px; }
  .photo5 { width: 681px; }
  .section27 { min-height: 587.51px; }
  .col31 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; width: 100%; }
  .col-inner38 { padding-top: 0; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner38::after { content: " "; display: block; height: 0; }
  .col32 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; width: 100%; }
  .col-inner39 { padding-top: 445.74px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner39::after { content: " "; display: block; height: 0; }
  .col-inner40 { padding-top: 0; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner40::after { content: " "; display: block; height: 50px; }
}
@media (max-width: 749px) {
  .section24 { min-height: 259.28px; }
  .col-inner33 { padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner33::after { content: " "; display: block; height: 25px; }
  .col-inner35 { padding-top: 25px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .figure4 { width: auto; }
  .photo4 { width: 100%; }
  .col-inner36 { padding-top: 25px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner36::after { content: " "; display: block; height: 25px; }
  .col-inner37 { padding-top: 329.46px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner37::after { content: " "; display: block; height: 25px; }
  .figure5 { width: auto; }
  .photo5 { width: 100%; }
  .col-inner38 { padding-top: 25px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner39 { padding-top: 223.37px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner39::after { content: " "; display: block; height: 25px; }
  .col-inner40 { padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner40::after { content: " "; display: block; height: 25px; }
}

/* --- Natural Escapes ------------------------------------------------------- */
.box46 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("https://img.youtube.com/vi/YRNQeollxXc/maxresdefault.jpg"); }
.section28 { display: none; }
.box47 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/natural-escapes/hero-mobile.jpg"); }
.col-inner41 { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; flex-grow: 1; padding-top: 100px; padding-right: 40px; padding-left: 40px; }
.col-inner41::after { content: " "; display: block; height: 0; }
.section29 { display: flex; position: relative; justify-content: center; background-color: #fff; min-height: 690.7px; }
.box48 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("https://img.youtube.com/vi/G6hVh6VuS9c/maxresdefault.jpg"); }
.col-inner42 { display: flex; flex-direction: column; justify-content: flex-end; align-items: flex-start; flex-grow: 1; padding-top: 6.65px; padding-left: 3.472vw; }
.col-inner42::after { content: " "; display: block; height: 103.48px; }
.col-inner43 { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; flex-grow: 1; padding-top: 50px; padding-right: 5.078vw; padding-left: 5.078vw; }
.col-inner43::after { content: " "; display: block; height: 50px; }
.col33 { display: flex; position: relative; flex-direction: column; justify-content: flex-start; flex-shrink: 0; order: 1; background-size: cover; background-position: 0% 100%; background-repeat: no-repeat; background-image: url("../images/natural-escapes/ten-thousand-islands.jpg"); flex-basis: 100%; max-width: 100%; border-top-width: 25px; border-top-style: solid; border-top-color: #fff; border-right-width: 25px; border-right-style: solid; border-right-color: #fff; border-bottom-width: 25px; border-bottom-style: solid; border-bottom-color: #fff; border-left-width: 25px; border-left-style: solid; border-left-color: #fff; width: 100%; }
.col-inner44 { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; flex-grow: 1; padding-top: 400px; padding-right: 6.5vw; padding-left: 6.5vw; }
.col-inner44::after { content: " "; display: block; height: 0; }
.box49 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 0% 100%; background-repeat: no-repeat; background-image: url("../images/natural-escapes/ten-thousand-islands.jpg"); }
.col-inner45 { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-grow: 1; padding-top: 25px; padding-right: 3.541vw; padding-left: 3.541vw; }
.col-inner45::after { content: " "; display: block; height: 25px; }
.col34 { display: flex; position: relative; flex-direction: column; justify-content: flex-start; flex-grow: 1; background-size: cover; background-position: 50% 100%; background-repeat: no-repeat; background-image: url("../images/natural-escapes/the-nature-of-discovery.jpg"); flex-basis: 29.1667%; max-width: 29.1667%; border-top-width: 25px; border-top-style: solid; border-top-color: #fff; border-right-width: 25px; border-right-style: solid; border-right-color: #fff; border-bottom-width: 25px; border-bottom-style: solid; border-bottom-color: #fff; border-left-width: 25px; border-left-style: solid; border-left-color: #fff; }
.col-inner46 { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; flex-grow: 1; }
.box50 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 100%; background-repeat: no-repeat; background-image: url("../images/natural-escapes/the-nature-of-discovery.jpg"); }
.section30 { display: flex; position: relative; justify-content: center; min-height: 894.06px; }
.col-inner47 { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-grow: 1; padding-top: 25px; padding-right: 4.297vw; padding-left: 4.297vw; }
.col-inner47::after { content: " "; display: block; height: 25px; }
.col35 { display: flex; position: relative; flex-direction: column; justify-content: flex-start; flex-grow: 1; background-color: rgb(26, 129, 149); background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/natural-escapes/reeling-in-treasure.jpg"); flex-basis: 62.5%; max-width: 62.5%; border-top-width: 25px; border-top-style: solid; border-top-color: #fff; border-right-width: 25px; border-right-style: solid; border-right-color: #fff; border-bottom-width: 25px; border-bottom-style: solid; border-bottom-color: #fff; border-left-width: 25px; border-left-style: solid; border-left-color: #fff; }
.col-inner48 { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; flex-grow: 1; padding-top: 25px; padding-right: 25px; padding-left: 25px; }
.col-inner48::after { content: " "; display: block; height: 25px; }
.box51 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/natural-escapes/reeling-in-treasure.jpg"); }
@media (max-width: 999px) {
  .section28 { display: flex; position: relative; justify-content: center; background-color: rgb(122, 122, 122); background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/natural-escapes/hero-mobile.jpg"); min-height: 442.19px; }
  .col-inner41 { padding-top: 50px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner41::after { content: " "; display: block; height: 50px; }
  .section29 { display: none; }
  .col-inner42::after { content: " "; display: block; height: 0; }
  .col-inner43::after { content: " "; display: block; height: 0; }
  .col-inner45 { padding-top: 0; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner45::after { content: " "; display: block; height: 50px; }
  .col34 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; order: 1; width: 100%; }
  .col-inner46 { padding-top: 400px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner47 { padding-top: 50px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner47::after { content: " "; display: block; height: 50px; }
  .col35 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; order: 1; width: 100%; }
  .col-inner48 { padding-top: 400px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner48::after { content: " "; display: block; height: 0; }
}
@media (max-width: 749px) {
  .section28 { min-height: 268.7px; }
  .col-inner41 { padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner41::after { content: " "; display: block; height: 25px; }
  .col-inner44 { padding-top: 200px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner44::after { content: " "; display: block; height: 25px; }
  .col-inner45 { padding-top: 25px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner45::after { content: " "; display: block; height: 25px; }
  .col-inner46 { padding-top: 200px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .section30 { min-height: 622.3px; }
  .col-inner47 { padding-top: 25px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner47::after { content: " "; display: block; height: 0; }
  .col-inner48 { padding-top: 25px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner48::after { content: " "; display: block; height: 200px; }
}

/* --- Curated Escapes ------------------------------------------------------- */
.section31 { display: flex; position: relative; justify-content: center; background-color: #fff; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/curated-escapes/hero.jpg"); min-height: 50px; height: 100vh; }
.box52 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/curated-escapes/hero.jpg"); }
.col36 { display: flex; position: relative; flex-direction: column; justify-content: flex-end; flex-grow: 1; flex-basis: 100%; max-width: 100%; }
.col-inner49 { display: flex; flex-direction: column; justify-content: flex-end; align-items: flex-start; flex-grow: 1; overflow: hidden auto; flex-basis: 100%; min-height: 100%; padding-top: 25px; padding-right: 25px; padding-left: 25px; }
.col-inner49::after { content: " "; display: block; height: 0.628vh; }
.box53 { display: flex; flex-direction: column; justify-content: flex-end; align-items: flex-start; flex-grow: 1; flex-basis: 100%; width: 100%; }
.box54 { position: relative; width: 100%; }
.text1 { position: relative; font-family: Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 400; line-height: 24px; white-space: pre-wrap; margin-bottom: 8.8px; }
.text2 { display: none; }
.col37 { display: flex; position: relative; flex-direction: column; justify-content: flex-start; flex-grow: 1; background-size: cover; background-position: 50% 100%; background-repeat: no-repeat; background-image: url("../images/curated-escapes/artis-naples.jpg"); flex-basis: 29.1667%; max-width: 29.1667%; border-top-width: 25px; border-top-style: solid; border-top-color: #fff; border-right-width: 25px; border-right-style: solid; border-right-color: #fff; border-bottom-width: 25px; border-bottom-style: solid; border-bottom-color: #fff; border-left-width: 25px; border-left-style: solid; border-left-color: #fff; }
.col-inner50 { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; flex-grow: 1; }
.col-inner50::after { content: " "; display: block; height: 0; }
.box55 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 100%; background-repeat: no-repeat; background-image: url("../images/curated-escapes/artis-naples.jpg"); }
.col38 { display: flex; position: relative; flex-direction: column; justify-content: center; flex-grow: 1; flex-basis: 29.1667%; max-width: 29.1667%; }
.section32 { display: flex; position: relative; justify-content: center; min-height: 766.89px; }
.col39 { display: flex; position: relative; flex-direction: column; justify-content: flex-end; flex-grow: 1; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/curated-escapes/gulfshore-playhouse.jpg"); flex-basis: 54.1667%; max-width: 54.1667%; }
.col-inner51 { display: flex; flex-direction: column; justify-content: flex-end; align-items: center; flex-grow: 1; padding-left: 1.084vw; }
.col-inner51::after { content: " "; display: block; height: 0.17px; }
.box56 { display: flex; position: absolute; top: 0; left: 0; width: 100%; height: 100%; flex-direction: column; align-items: center; overflow: hidden; }
.box57 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/curated-escapes/gulfshore-playhouse.jpg"); }
.text3 { position: relative; font-family: Arial, Helvetica, sans-serif; font-size: 16px; font-weight: 400; line-height: 24px; color: #fff; white-space: pre-wrap; margin-bottom: 8.8px; width: 100%; }
.section33 { display: flex; position: relative; justify-content: center; min-height: 894.06px; }
.col-inner52 { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-grow: 1; padding-top: 50px; padding-right: 3.541vw; padding-left: 3.541vw; }
.col-inner52::after { content: " "; display: block; height: 25px; }
.col40 { display: flex; position: relative; flex-direction: column; justify-content: flex-start; flex-grow: 1; background-size: cover; background-position: 50% 100%; background-repeat: no-repeat; background-image: url("../images/curated-escapes/fifth-avenue-south.jpg"); flex-basis: 62.5%; max-width: 62.5%; border-top-width: 25px; border-top-style: solid; border-top-color: #fff; border-right-width: 25px; border-right-style: solid; border-right-color: #fff; border-bottom-width: 25px; border-bottom-style: solid; border-bottom-color: #fff; border-left-width: 25px; border-left-style: solid; border-left-color: #fff; }
.col-inner53 { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; flex-grow: 1; }
.col-inner53::after { content: " "; display: block; height: 0; }
.box58 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 100%; background-repeat: no-repeat; background-image: url("../images/curated-escapes/fifth-avenue-south.jpg"); }
.section34 { display: flex; position: relative; justify-content: center; min-height: 894.06px; }
.col41 { display: flex; position: relative; flex-direction: column; justify-content: flex-start; flex-grow: 1; background-size: cover; background-position: 50% 100%; background-repeat: no-repeat; background-image: url("../images/curated-escapes/third-street-south.jpg"); flex-basis: 62.5%; max-width: 62.5%; border-top-width: 25px; border-top-style: solid; border-top-color: #fff; border-right-width: 25px; border-right-style: solid; border-right-color: #fff; border-bottom-width: 25px; border-bottom-style: solid; border-bottom-color: #fff; border-left-width: 25px; border-left-style: solid; border-left-color: #fff; }
.col-inner54 { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; flex-grow: 1; padding-top: 955.87px; padding-left: 0.836vw; }
.col-inner54::after { content: " "; display: block; height: 0; }
.box59 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 100%; background-repeat: no-repeat; background-image: url("../images/curated-escapes/third-street-south.jpg"); }
.col42 { display: flex; position: relative; flex-direction: column; justify-content: center; flex-grow: 1; flex-basis: 37.5%; max-width: 37.5%; }
.col-inner55 { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-grow: 1; padding-top: 25px; padding-right: 3.541vw; padding-left: 3.541vw; }
.col-inner55::after { content: " "; display: block; height: 25px; }
.col43 { display: flex; position: relative; flex-direction: column; justify-content: flex-start; flex-grow: 1; background-size: cover; background-position: 50% 100%; background-repeat: no-repeat; background-image: url("../images/curated-escapes/effortless-arrival-by-air.jpg"); flex-basis: 62.5%; max-width: 62.5%; border-top-width: 25px; border-top-style: solid; border-top-color: #fff; border-right-width: 25px; border-right-style: solid; border-right-color: #fff; border-bottom-width: 25px; border-bottom-style: solid; border-bottom-color: #fff; border-left-width: 25px; border-left-style: solid; border-left-color: #fff; }
.box60 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 100%; background-repeat: no-repeat; background-image: url("../images/curated-escapes/effortless-arrival-by-air.jpg"); }
@media (max-width: 999px) {
  .section31 { min-height: 506.1px; height: auto; }
  .col36 { flex-grow: 0; flex-shrink: 0; width: 100%; }
  .col-inner49 { overflow: visible; flex-basis: auto; min-height: auto; padding-top: 50px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner49::after { content: " "; display: block; height: 0; }
  .box53 { display: block; flex-direction: row; justify-content: normal; align-items: normal; flex-grow: 0; flex-basis: auto; position: relative; }
  .box54 { display: none; }
  .text2 { display: block; position: relative; font-family: Arial, Helvetica, sans-serif; font-size: 12px; font-weight: 400; line-height: 18px; white-space: pre-wrap; margin-bottom: 6.6px; }
  .col37 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; order: 2; width: 100%; }
  .col-inner50 { padding-top: 419.74px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner50::after { content: " "; display: block; height: 50px; }
  .col38 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; order: 1; width: 100%; }
  .col39 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; width: 100%; }
  .col-inner51 { padding-left: 6.5vw; padding-top: 401.66px; padding-right: 6.5vw; }
  .col-inner51::after { content: " "; display: block; height: 0; }
  .col-inner52 { padding-top: 25px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner52::after { content: " "; display: block; height: 50px; }
  .col40 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; order: 1; width: 100%; }
  .col-inner53 { padding-top: 400px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col41 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; width: 100%; }
  .col-inner54 { padding-top: 650.14px; padding-left: 6.5vw; padding-right: 6.5vw; }
  .col-inner54::after { content: " "; display: block; height: 0.78px; }
  .col42 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; width: 100%; }
  .col-inner55 { padding-top: 0; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner55::after { content: " "; display: block; height: 50px; }
  .col43 { flex-grow: 0; flex-basis: 100%; max-width: 100%; flex-shrink: 0; order: 1; width: 100%; }
}
@media (max-width: 749px) {
  .section31 { min-height: 301.45px; }
  .col-inner49 { padding-top: 25px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner50 { padding-top: 203.63px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner50::after { content: " "; display: block; height: 25px; }
  .section32 { min-height: 377.06px; }
  .col-inner51 { padding-left: 6.667vw; padding-top: 204.96px; padding-right: 6.667vw; }
  .text3 { font-size: 12px; line-height: 18px; margin-bottom: 6.6px; }
  .section33 { min-height: 422.55px; }
  .col-inner52 { padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner52::after { content: " "; display: block; height: 25px; }
  .col-inner53 { padding-top: 212.09px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner53::after { content: " "; display: block; height: 25px; }
  .section34 { min-height: 454.47px; }
  .col-inner54 { padding-top: 257.85px; padding-left: 6.667vw; padding-right: 6.667vw; }
  .col-inner54::after { content: " "; display: block; height: 16.31px; }
  .col-inner55 { padding-top: 25.21px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner55::after { content: " "; display: block; height: 25px; }
}

/* --- Home Environments ----------------------------------------------------- */
.section35 { display: flex; position: relative; justify-content: center; background-color: rgb(122, 122, 122); background-size: cover; background-position: 100% 100%; background-repeat: no-repeat; background-image: url("../images/home-environments/hero.jpg"); min-height: 50px; height: 100vh; }
.box61 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 100% 100%; background-repeat: no-repeat; background-image: url("../images/home-environments/hero.jpg"); }
.col44 { display: flex; position: relative; flex-direction: column; justify-content: center; flex-grow: 1; flex-basis: 100%; max-width: 100%; }
.col-inner56 { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-grow: 1; overflow: hidden auto; flex-basis: 100%; min-height: 100%; padding-top: 25px; padding-right: 25px; padding-left: 25px; }
.col-inner56::after { content: " "; display: block; height: 25px; }
.box62 { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-grow: 1; flex-basis: 100%; width: 100%; }
.section36 { display: flex; position: relative; justify-content: center; background-color: rgb(122, 122, 122); background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/home-environments/single-family-homes.jpg"); min-height: 874.76px; }
.box63 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/home-environments/single-family-homes.jpg"); }
.section37 { display: flex; position: relative; justify-content: center; background-color: rgb(122, 122, 122); background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/home-environments/condominiums.jpg"); min-height: 928.15px; }
.box64 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/home-environments/condominiums.jpg"); }
.section38 { display: flex; position: relative; justify-content: center; background-color: rgb(122, 122, 122); background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/home-environments/luxury-villas.jpg"); min-height: 50px; height: 100vh; }
.box65 { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; background-image: url("../images/home-environments/luxury-villas.jpg"); }
.col-inner57 { display: flex; flex-direction: column; justify-content: center; align-items: center; flex-grow: 1; overflow: hidden auto; flex-basis: 100%; min-height: 100%; padding-top: 60.463vh; padding-right: 25px; padding-left: 25px; }
.col-inner57::after { content: " "; display: block; height: 25px; }
.section39 { display: flex; position: relative; justify-content: center; min-height: 151.42px; }
.col-inner58 { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; flex-grow: 1; padding-top: 25px; padding-right: 25px; padding-left: 25px; }
.col-inner58::after { content: " "; display: block; height: 100px; }
.box66 { display: flex; position: relative; flex-direction: column; align-items: flex-start; width: 100%; }
.link1 { align-self: center; margin-bottom: 8.8px; }
.button1 { display: inline-block; position: relative; background-color: #fff; padding-top: 12px; padding-right: 20px; padding-bottom: 12px; padding-left: 20px; border-top-width: 3px; border-top-style: solid; border-top-color: rgb(26, 129, 149); border-right-width: 3px; border-right-style: solid; border-right-color: rgb(26, 129, 149); border-bottom-width: 3px; border-bottom-style: solid; border-bottom-color: rgb(26, 129, 149); border-left-width: 3px; border-left-style: solid; border-left-color: rgb(26, 129, 149); font-family: "Playfair Display", Georgia, serif; font-size: 16px; font-weight: 700; line-height: 16px; letter-spacing: 0.8px; color: rgb(26, 129, 149); white-space: pre-wrap; }
@media (max-width: 999px) {
  .section35 { min-height: 474.81px; height: auto; }
  .col44 { flex-grow: 0; flex-shrink: 0; width: 100%; }
  .col-inner56 { overflow: visible; flex-basis: auto; min-height: auto; padding-top: 50px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner56::after { content: " "; display: block; height: 50px; }
  .box62 { display: none; }
  .section36 { min-height: 444.1px; }
  .section37 { min-height: 464.77px; }
  .section38 { min-height: 513.3px; height: auto; }
  .col-inner57 { overflow: visible; flex-basis: auto; min-height: auto; padding-top: 50px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner57::after { content: " "; display: block; height: 50px; }
  .col-inner58 { padding-top: 50px; padding-right: 6.5vw; padding-left: 6.5vw; }
  .col-inner58::after { content: " "; display: block; height: 50px; }
}
@media (max-width: 749px) {
  .section35 { min-height: 252.76px; }
  .col-inner56 { padding-top: 25px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner56::after { content: " "; display: block; height: 25px; }
  .section36 { min-height: 269.49px; }
  .section37 { min-height: 287.34px; }
  .section38 { min-height: 274.11px; }
  .col-inner57 { padding-top: 25px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner57::after { content: " "; display: block; height: 25px; }
  .section39 { min-height: 48.52px; }
  .col-inner58 { padding-top: 25px; padding-right: 6.667vw; padding-left: 6.667vw; }
  .col-inner58::after { content: " "; display: block; height: 25px; }
}
