:root {
  --color-4: #ff7577;
  --color-2: #ece8e4;
  --primary: #7f4b43;
  --color: #fff;
  --gradient-1: #16bffd;
  --gradient-2: #cb3066;
  --color-3: #e95d5f;
}

body {
  color: #333;
  font-family: Andada Pro, sans-serif;
  font-size: 14px;
  line-height: 20px;
}

h1 {
  margin-top: 0;
  margin-bottom: 10px;
  font-size: 38px;
  font-weight: 700;
  line-height: 44px;
}

h2 {
  margin-top: 0;
  margin-bottom: 10px;
  font-size: 32px;
  font-weight: 700;
  line-height: 36px;
}

p {
  margin-bottom: 20px;
  font-family: Poppins, sans-serif;
  font-size: 15px;
  line-height: 25px;
}

a {
  color: var(--color-4);
  font-weight: 600;
  text-decoration: none;
}

strong {
  font-weight: 600;
}

.nav {
  z-index: 20;
}

.hero {
  position: relative;
}

.block {
  padding-top: 100px;
  padding-bottom: 100px;
}

.block.grey {
  background-color: var(--color-2);
}

.block.grey.nopad {
  background-color: var(--primary);
  padding: 0;
}

.block.darkgrey, .block.dark {
  background-color: var(--primary);
}

.hero-image {
  aspect-ratio: auto;
  object-fit: cover;
  width: 100%;
  height: 80vh;
}

.mask, .slider {
  height: auto;
}

.brand {
  display: flex;
}

.logo-text {
  color: var(--color-4);
  justify-content: center;
  align-items: center;
  margin-left: 14px;
  font-size: 25px;
  font-weight: 800;
  display: flex;
}

.navbar {
  background-color: #fff;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  padding-top: 7px;
  padding-bottom: 7px;
  display: flex;
  position: sticky;
  top: 0;
}

.container {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
  display: flex;
}

.container.light {
  color: #fff;
}

.container.toppad {
  margin-top: 66px;
}

.heading {
  color: #000000bd;
  text-align: center;
  margin-bottom: 46px;
  font-size: 37px;
  font-weight: 600;
}

.heading._2 {
  font-size: 30px;
  font-weight: 400;
}

.heading.light {
  color: #ffffffbd;
}

.eyebrow {
  color: #00000070;
  text-align: center;
  margin-bottom: 35px;
  font-family: Poppins, sans-serif;
}

.eyebrow.light {
  color: #ffffffa1;
}

.nav-link {
  color: #000000ab;
  margin-left: 3px;
  margin-right: 3px;
  padding: 10px 16px;
  font-family: Poppins, sans-serif;
  font-weight: 600;
}

.nav-link:hover {
  background-color: var(--color-2);
  border-radius: 20px;
}

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

.nav-link.booking {
  border: 1px solid var(--color-4);
  background-color: var(--color);
  color: var(--color-4);
  border-radius: 20px;
}

.paragraph {
  color: #0000009c;
  width: 100%;
  font-size: 1rem;
}

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

.paragraph.light {
  color: #ffffffe3;
}

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

.hero-overlay {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
  position: absolute;
  inset: 0%;
}

.hero-overlay.gradient {
  background-image: linear-gradient(133deg, var(--gradient-1), var(--gradient-2));
}

.hero-heading {
  color: #fff;
  text-align: center;
  margin-bottom: 27px;
  font-size: 70px;
  font-weight: 400;
  line-height: 1.1em;
  position: relative;
}

.hero-line {
  background-color: #fff;
  width: 110px;
  height: 1px;
  margin-top: 17px;
  margin-bottom: 17px;
}

.hero-text {
  color: #fff;
  text-align: center;
  max-width: 800px;
  font-family: Poppins, sans-serif;
  font-size: 1.13rem;
  line-height: 1.6em;
  position: relative;
}

.button-container {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  justify-content: center;
  align-items: center;
  margin-top: 43px;
  display: flex;
  position: relative;
}

.button {
  background-color: #fff0;
  border: 1px solid #ffffff9c;
  border-radius: 1000px;
  padding: 14px 23px;
  font-family: Poppins, sans-serif;
  font-size: 1.13rem;
  font-weight: 400;
}

.button.highlight {
  border-style: none;
  border-color: var(--color-3);
  background-color: var(--color-3);
  background-image: url('../images/AdobeStock_391991850.jpeg'), linear-gradient(156deg, var(--gradient-1), var(--gradient-2));
  background-position: 50%, 0 0;
  background-size: auto, auto;
  background-attachment: fixed, scroll;
  font-weight: 400;
}

.button.highlight.nogradient {
  background-color: var(--color-3);
  background-image: none;
}

.button.dark {
  color: #383838;
  border-color: #38383d;
}

.button.white {
  color: var(--color-3);
  background-color: #fff;
}

.hero-mover {
  position: sticky;
  top: 0;
  bottom: 0;
  overflow: hidden;
}

.interaction-height {
  height: 100vh;
  margin-top: 0;
  position: absolute;
}

.inline-image {
  border-radius: 20px;
  max-width: 1280px;
  margin: 40px auto;
  display: block;
}

.list-container {
  grid-column-gap: 8px;
  grid-row-gap: 8px;
  border: 1px solid var(--color-2);
  text-align: left;
  border-radius: 20px;
  flex-flow: wrap;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  grid-auto-flow: row;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 410px;
  margin-top: 15px;
  padding: 20px;
  display: grid;
}

.list-item {
  text-align: center;
  text-transform: uppercase;
  border-radius: 20px;
  font-family: Poppins, sans-serif;
  font-size: .9rem;
}

.slider-2 {
  aspect-ratio: 3 / 2;
  border-radius: 20px;
  max-width: 1280px;
  height: auto;
  margin: 60px auto;
  overflow: hidden;
}

.mask-2 {
  height: auto;
}

.caption-overlay {
  color: #fff;
  text-align: center;
  background-color: #00000038;
  margin-left: auto;
  margin-right: auto;
  padding-top: 7px;
  padding-bottom: 30px;
  font-family: Poppins, sans-serif;
  font-size: 16px;
  position: absolute;
  inset: auto 0% 0%;
}

.slide, .slide-contents {
  position: relative;
}

.slide-nav {
  margin-bottom: -6px;
}

.code-embed {
  color: #ffffff9e;
  text-align: center;
  background-color: #00000029;
  margin-bottom: 0;
  padding-top: 6px;
  padding-bottom: 6px;
  font-family: Poppins, sans-serif;
}

.calendar-container {
  border-radius: 20px;
  width: 100%;
  max-width: 1280px;
  margin: 26px auto 9px;
  overflow: hidden;
}

.code-embed-2 {
  margin: -5px -5px -9px;
}

.nav-menu {
  margin-left: auto;
  margin-right: auto;
}

.banner-image {
  object-fit: cover;
  width: 100%;
  max-height: 70vh;
}

.big-list-container {
  grid-column-gap: 8px;
  grid-row-gap: 8px;
  border: 1px solid var(--color-2);
  text-align: left;
  border-radius: 20px;
  flex-flow: wrap;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  grid-auto-flow: row;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-top: 15px;
  padding: 20px;
  display: grid;
}

.sublist-heading {
  color: var(--color-3);
  text-align: left;
  margin-bottom: 7px;
  padding-left: 18px;
  font-family: Poppins, sans-serif;
  font-weight: 600;
}

.sublist-list {
  margin-bottom: 9px;
  padding-left: 36px;
  font-family: Poppins, sans-serif;
}

.inline-image-grid {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  place-items: stretch stretch;
  max-width: 1280px;
  margin-top: 50px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
}

.inline-image-in-grid {
  object-fit: cover;
  border-radius: 20px;
  margin-left: auto;
  margin-right: auto;
}

.subhead {
  color: var(--color-3);
  font-family: Poppins, sans-serif;
  font-size: 18px;
  font-weight: 400;
  display: block;
}

.small-inline-image-container {
  border-radius: 20px;
  margin-top: 11px;
  margin-bottom: 46px;
  position: relative;
}

.small-inline-image {
  border-radius: 20px;
}

.inline-image-caption {
  z-index: 10;
  background-color: var(--color-2);
  color: #353535;
  border-radius: 70px;
  height: 26px;
  margin-bottom: -13px;
  margin-right: -13px;
  padding: 3px 15px;
  font-family: Poppins, sans-serif;
  position: absolute;
  inset: auto 0% 0% auto;
}

.map-container {
  border-radius: 20px;
  width: 100%;
  overflow: hidden;
}

.gradient {
  background-image: url('../images/AdobeStock_391991850.jpeg'), linear-gradient(133deg, var(--gradient-1), var(--gradient-2));
  background-position: 50% 0, 0 0;
  background-size: cover, auto;
}

.logo-container.gradient {
  background-image: url('../images/AdobeStock_391991850.jpeg');
  background-position: 0 0;
  background-size: cover;
}

.nav-container {
  width: 100%;
  max-width: none;
  display: flex;
}

.logo-container-container {
  justify-content: center;
  align-items: center;
  width: 100%;
  padding-top: 35px;
  display: flex;
}

.last-slide-overlay {
  color: #fff;
  text-align: center;
  background-color: #00000038;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  padding-top: 7px;
  padding-bottom: 30px;
  font-family: Poppins, sans-serif;
  font-size: 16px;
  display: flex;
  position: absolute;
  inset: 0%;
}

.last-slide-overlay.gradient {
  padding-top: 0;
  padding-bottom: 0;
}

.hero-overlay-colour {
  z-index: 0;
  opacity: 1;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  background-color: #d99ead;
  background-image: url('../images/AdobeStock_391991850.jpeg');
  background-size: cover;
  position: absolute;
  inset: 0%;
}

.flourish-container {
  background-image: url('../images/AdobeStock_391991850.jpeg');
  background-position: 50%;
  background-size: auto;
  background-attachment: fixed;
}

.flourish {
  width: 100px;
}

.video {
  margin-left: auto;
  margin-right: auto;
}

.video-container {
  border-radius: 20px;
  max-width: 1280px;
  margin-top: 46px;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

@media screen and (max-width: 991px) {
  .block {
    padding-left: 10px;
    padding-right: 10px;
  }

  .logo {
    width: 230px;
  }
}

@media screen and (max-width: 767px) {
  .hero-heading {
    font-size: 40px;
  }

  .hero-text {
    font-size: .9rem;
  }

  .button-container {
    flex-flow: wrap;
  }
}

@media screen and (max-width: 479px) {
  .block {
    padding: 54px 10px;
  }

  .logo {
    width: 160px;
  }

  .navbar {
    padding-top: 0;
    padding-bottom: 0;
  }

  .container {
    padding-left: 11px;
    padding-right: 11px;
  }

  .heading {
    margin-bottom: 26px;
    font-size: 29px;
    line-height: 1.2em;
  }

  .eyebrow {
    margin-bottom: 7px;
  }

  .nav-link {
    text-align: center;
    margin-left: 6px;
    margin-right: 6px;
    padding-left: 11px;
    padding-right: 11px;
  }

  .nav-link.booking {
    background-color: var(--color);
    color: #0000009e;
  }

  .nav-link.booking:hover {
    background-color: var(--color-2);
  }

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

  .nav-menu {
    text-align: center;
    background-color: #fff;
    flex-flow: wrap;
    justify-content: center;
    align-items: center;
    margin-top: -23px;
    padding-top: 21px;
    padding-bottom: 21px;
    display: flex;
  }

  .menu-button {
    background-color: var(--color);
    color: var(--color-3);
    border-radius: 20px;
    padding-top: 8px;
    padding-bottom: 8px;
  }

  .menu-button.w--open {
    background-color: var(--color-3);
    color: var(--color);
    border-radius: 100px;
    padding-top: 8px;
    padding-bottom: 8px;
  }

  .big-list-container {
    grid-template-columns: 1fr;
  }

  .inline-image-grid {
    margin-top: 19px;
  }

  .nav-container {
    justify-content: center;
    align-items: center;
  }
}

#w-node-_429213c6-14e4-fbcb-1b56-0526d19e13ca-61578f9a {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-f47852ee-b92b-ec38-b107-59f65e9ec850-d107b424 {
  grid-area: span 3 / span 1 / span 3 / span 1;
  align-self: stretch;
}

#w-node-_1e80737c-2e35-4f1d-091f-d3b3282dda7f-d107b424 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-_83692f83-9417-c468-e9c5-5ce97b55054a-d107b424 {
  grid-area: span 2 / span 1 / span 2 / span 1;
}

#w-node-_36c204f9-a583-c6c0-ee95-ccc20e601ce6-d107b424 {
  place-self: stretch stretch;
}

#w-node-_6ff06850-3126-62c3-cff3-225fc7617578-d107b424 {
  align-self: stretch;
}

#w-node-f1c2dfe6-4a19-f181-af8d-3ed9f5e27851-d107b424 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-e80da429-dd7c-19f8-41b8-c85a96b53a04-d107b424, #w-node-a087fda1-b647-1885-d156-c5540bdf98d8-d107b424 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-b4bd5997-3c46-9f76-cb3a-afabbd605e21-d107b424 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-eca33b5b-6ab7-16fd-ef36-55cbee81b2b5-d107b424, #w-node-e8e9875f-d1ab-a738-4bae-ff92ff345446-d107b424 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_73980c84-6afe-73c3-51a7-866ea24879f4-d107b424, #w-node-c8178ffb-33f4-b076-6690-92e1fe454916-d107b424 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-_08d9f5b6-22c7-9843-0255-4357287b6815-d107b424, #w-node-_426924ec-c8cb-9315-6b78-4eaf708fc026-d107b424 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_2f597ced-418c-9c55-1080-5bd206217c5d-d107b424 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-_2f597ced-418c-9c55-1080-5bd206217c5e-d107b424, #w-node-_2f597ced-418c-9c55-1080-5bd206217c5f-d107b424 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_9a36aa43-07ca-5b7a-48bb-51deb8ad08b8-d107b424, #w-node-_2f6ce925-c558-5f48-89ec-44a379fa1c85-d107b424, #w-node-_0efd546a-1578-b383-010c-ae8fa729a66a-d107b424 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-_77b1cddc-95da-02a5-3acb-7d863996cb4f-d107b424 {
  grid-area: span 2 / span 1 / span 2 / span 1;
}

#w-node-_1a3bfe09-97f4-3718-69a6-78b1c9dab20d-d107b424, #w-node-_00d9fe25-4f45-f5f2-22cb-4db44c90ed23-d107b424 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_775a7b73-47bc-0605-dda9-c939975cf1b3-d107b424 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#w-node-_775a7b73-47bc-0605-dda9-c939975cf1b4-d107b424, #w-node-_775a7b73-47bc-0605-dda9-c939975cf1b5-d107b424 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-_775a7b73-47bc-0605-dda9-c939975cf1b6-d107b424 {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

@media screen and (max-width: 479px) {
  #w-node-f47852ee-b92b-ec38-b107-59f65e9ec850-d107b424 {
    grid-area: span 1 / span 1 / span 1 / span 1;
    align-self: stretch;
  }
}


