@font-face {
  font-family: FA Brands;
  src: url('../fonts/fa-brands-400.woff2') format("woff2"), url('../fonts/fa-brands-400.ttf') format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: FA;
  src: url('../fonts/fa-regular-400.woff2') format("woff2"), url('../fonts/fa-regular-400.ttf') format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: FA;
  src: url('../fonts/fa-light-300.woff2') format("woff2"), url('../fonts/fa-light-300.ttf') format("truetype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Fa Slab;
  src: url('../fonts/fa-slab-press-regular-400.woff2') format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

:root {
  --shade-50: #f5f5f5;
  --_semantic---typography--body: var(--typography--body-font);
  --_semantic---colours-text--body: #3d3f4c;
  --typography--header-font: orpheuspro, sans-serif;
  --_semantic---colours-text--heading: var(--blue-500);
  --_semantic---colours-text--text-alternate: color-mix(in srgb, var(--shade-100), black 20%);
  --_semantic---colours-text--heading-alternate: var(--shade-50);
  --_semantic---accents--primary-accent: var(--accent-alpha);
  --radius--small: .25rem;
  --_semantic---accents--secondary-accent: var(--blue-500);
  --radius--large: 1rem;
  --_semantic---colours-bg--bg-navbar: color-mix(in srgb, var(--_semantic---colours-bg--bg-alternate) 75%, transparent);
  --_semantic---colours-bg--bg-alternate: var(--blue-500);
  --_semantic---colours-bg--bg-secondary: var(--shade-100);
  --_semantic---borders--border-colour: color-mix(in srgb, var(--_semantic---colours-bg--bg-alternate) 15%, transparent);
  --_semantic---accents--tertiary-accent: var(--accent-bravo);
  --_semantic---radius--button: var(--radius--small);
  --_semantic---colours-text--icons: var(--blue-500);
  --_semantic---radius--image: var(--radius--small);
  --_semantic---radius--card: var(--radius--small);
  --_semantic---colours-bg--bg-primary: var(--shade-50);
  --radius--x-small: .125rem;
  --_semantic---bg-blur: .5rem;
  --blue-500: #0a1240;
  --shade-100: #eee;
  --border--blueborder: color-mix(in srgb, var(--_semantic---colours-bg--bg-alternate) 80%, white);
  --accent-alpha: #c99846;
  --accent-bravo: #f8c869;
  --radius--medium: .5rem;
  --typography--body-font: effra, sans-serif;
  --_semantic---typography--headings: var(--typography--header-font);
}

body {
  background-color: var(--shade-50);
  font-family: var(--_semantic---typography--body);
  color: var(--_semantic---colours-text--body);
  letter-spacing: .01rem;
  flex-flow: column;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  display: flex;
}

h1 {
  font-family: var(--typography--header-font);
  color: var(--_semantic---colours-text--heading);
  margin-top: 0;
  margin-bottom: 1rem;
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1.2;
}

h2 {
  font-family: var(--typography--header-font);
  color: var(--_semantic---colours-text--heading);
  margin-top: 0;
  margin-bottom: 1rem;
  font-size: 1.75rem;
  font-weight: 500;
  line-height: 1.2;
}

h3 {
  font-family: var(--typography--header-font);
  color: var(--_semantic---colours-text--heading);
  margin-top: 0;
  margin-bottom: .75rem;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.2;
}

h4 {
  font-family: var(--typography--header-font);
  color: var(--_semantic---colours-text--heading);
  margin-top: 0;
  margin-bottom: .75rem;
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.2;
}

h5 {
  font-family: var(--typography--header-font);
  color: var(--_semantic---colours-text--heading);
  margin-top: 0;
  margin-bottom: .75rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.2;
}

h6 {
  color: var(--_semantic---colours-text--heading);
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: .75rem;
  font-size: .875rem;
  font-weight: 500;
  line-height: 18px;
}

a {
  color: var(--_semantic---colours-text--body);
  text-decoration: none;
}

.nav_logo {
  width: 100%;
  max-height: 3rem;
}

.nav_brand-link {
  justify-content: flex-start;
  align-items: center;
  padding-left: 0;
  display: flex;
}

.navbar {
  background-color: #0000;
  padding-top: 1rem;
  padding-left: 2rem;
  padding-right: 2rem;
  position: fixed;
  inset: 0% 0% auto;
}

.nav_link {
  color: var(--_semantic---colours-text--text-alternate);
  padding: 1rem;
  font-size: 16px;
  line-height: 1;
  transition: transform .3s, color .3s;
}

.nav_link:hover {
  color: var(--_semantic---colours-text--heading-alternate);
  transform: translate(0, -.125rem);
}

.nav_link.w--current {
  color: var(--_semantic---accents--primary-accent);
}

.nav_link.cta {
  border-radius: var(--radius--small);
  background-color: var(--_semantic---accents--primary-accent);
  color: var(--_semantic---accents--secondary-accent);
  padding: .75rem 1.25rem;
}

.container {
  z-index: 20;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 2rem;
  padding-right: 2rem;
  position: relative;
}

.nav_wrapper {
  z-index: 2;
  justify-content: space-between;
  padding-top: 1rem;
  padding-bottom: 1rem;
  display: flex;
  position: relative;
}

.nav_menu {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  align-items: center;
  display: flex;
}

.section_hero {
  background-image: radial-gradient(circle, #000000a6, #00000059), url('../images/2R0A0469_highres.jpg');
  background-position: 0 0, 0 0;
  background-size: auto, cover;
  flex-flow: column;
  justify-content: center;
  align-items: stretch;
  min-height: 80svh;
  display: flex;
}

.section_hero.small {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  min-height: 30svh;
  padding-top: 7rem;
  padding-bottom: 5rem;
}

.section_hero.small.food-drink {
  background-image: radial-gradient(circle, #000000a6, #00000059), url('../images/2R0A9562_highres.jpg');
  background-position: 0 0, 50% 70%;
}

.section_hero.small.about {
  background-image: radial-gradient(circle, #000000a6, #00000059), url('../images/2R0A9475-Editar_highres.jpg');
  background-position: 0 0, 50% 41%;
  background-attachment: scroll, scroll;
}

.section_hero.small.events {
  background-image: radial-gradient(circle, #000000a6, #00000059), url('../images/2R0A9774_highres.jpg');
  background-position: 0 0, 50%;
}

.section_hero.event {
  background-image: linear-gradient(180deg, var(--_semantic---colours-bg--bg-alternate), var(--_semantic---colours-bg--bg-secondary));
  flex-flow: column;
  justify-content: center;
  align-items: center;
  min-height: 8rem;
}

.section_hero.event-alt {
  background-color: var(--_semantic---colours-bg--bg-alternate);
  background-image: none;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  min-height: 7rem;
}

.section_hero.home {
  background-image: none;
  background-position: 0 0;
  padding-top: 7rem;
  padding-bottom: 7rem;
  position: relative;
}

.section {
  padding-top: 6rem;
  padding-bottom: 6rem;
}

.section.secondary {
  z-index: 1;
  background-color: var(--_semantic---colours-bg--bg-secondary);
  box-shadow: 0 0rem 0rem 1px var(--_semantic---borders--border-colour);
  position: relative;
}

.section.alternate {
  z-index: 1;
  background-color: var(--_semantic---colours-bg--bg-alternate);
  color: var(--_semantic---colours-text--text-alternate);
  position: relative;
  box-shadow: 0 0 2rem #00000026;
}

.section.no-top-border {
  z-index: 1;
  background-color: var(--_semantic---colours-bg--bg-secondary);
  box-shadow: 0 1px 0rem 0 var(--_semantic---borders--border-colour);
  position: relative;
}

.content-wrapper {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  flex-flow: column;
  display: flex;
}

.content-wrapper.footer_links {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
}

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

.content-wrapper.large {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
}

.content-wrapper.small {
  grid-column-gap: .25rem;
  grid-row-gap: .25rem;
}

.content-wrapper.horz-cent {
  justify-content: center;
  align-items: center;
}

.content-wrapper.menu {
  grid-column-gap: .25rem;
  grid-row-gap: .25rem;
  justify-content: flex-start;
  align-items: flex-start;
}

.content-wrapper.horizontal {
  grid-column-gap: .375rem;
  grid-row-gap: .375rem;
  flex-flow: wrap;
}

.content-wrapper.left {
  align-items: flex-start;
}

.content-wrapper.hero {
  justify-content: center;
  align-items: center;
}

.content-wrapper.left-align {
  align-items: flex-start;
}

.heading {
  font-family: var(--typography--header-font);
  color: var(--_semantic---colours-text--heading);
  margin-top: 0;
  margin-bottom: 0;
  font-size: 3rem;
  font-weight: 500;
  line-height: 1.2;
}

.heading.large {
  font-size: 2.5rem;
}

.heading.large.text-alternate {
  color: var(--_semantic---colours-text--heading-alternate);
}

.heading.footer {
  color: var(--_semantic---colours-text--heading-alternate);
  font-size: 1.5rem;
}

.heading.x-large {
  font-size: 3rem;
}

.heading.medium {
  font-size: 1.75rem;
}

.heading.medium.text-alternate {
  z-index: 4;
  position: relative;
}

.heading.medium.heading-alternate {
  z-index: 4;
  color: var(--_semantic---colours-text--heading-alternate);
  position: relative;
}

.heading.small {
  font-size: 1.5rem;
}

.heading.x-small {
  font-size: 1.25rem;
}

.heading.hero {
  color: var(--_semantic---colours-text--heading-alternate);
  text-align: center;
  font-size: 5rem;
  font-weight: 400;
}

.heading.footer-heading {
  color: var(--_semantic---colours-text--heading-alternate);
  font-size: 1.5rem;
}

.eyebrow {
  background-color: var(--_semantic---accents--tertiary-accent);
  background-image: linear-gradient(175deg, var(--_semantic---accents--tertiary-accent), var(--_semantic---accents--primary-accent));
  color: var(--_semantic---accents--secondary-accent);
  text-transform: uppercase;
  border-radius: 20px;
  padding: .125rem;
  font-size: .875rem;
  font-weight: 500;
  line-height: 1;
}

.footer {
  background-color: var(--_semantic---colours-bg--bg-alternate);
  margin-top: auto;
}

.section_footer {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.footer_grid {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  flex-flow: wrap;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.footer_grid._3-col {
  grid-template-columns: 1fr 1fr 1fr;
}

.footer_link {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  color: var(--_semantic---colours-text--text-alternate);
  text-decoration: none;
  display: flex;
}

.input {
  border: 1.5px solid var(--_semantic---borders--border-colour);
  border-radius: var(--radius--small);
}

.input:focus {
  border-color: var(--_semantic---accents--primary-accent);
}

.input::placeholder {
  color: color-mix(in hsl, var(--_semantic---colours-text--body) 40%, transparent 60%);
}

.input.area {
  min-height: 8rem;
}

.button {
  border-radius: var(--_semantic---radius--button);
  box-shadow: inset 0 0 0 1.5px var(--_semantic---accents--primary-accent);
  color: var(--_semantic---accents--secondary-accent);
  background-color: #0000;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  padding: .75rem 1.5rem;
  line-height: 1;
  transition: color .3s, background-color .3s;
  display: flex;
}

.button:hover {
  background-color: var(--_semantic---accents--primary-accent);
}

.button.secondary {
  background-color: var(--_semantic---accents--primary-accent);
  color: var(--_semantic---colours-text--heading);
}

.button.secondary:hover {
  background-color: color-mix(in srgb, black 5%, var(--_semantic---accents--primary-accent) 95%);
}

.button.tertiary {
  color: var(--_semantic---accents--primary-accent);
}

.button.tertiary:hover {
  color: var(--_semantic---colours-text--heading);
}

.footer_logo {
  object-fit: contain;
  object-position: 0% 50%;
  width: 80%;
  max-height: 1.9rem;
}

.fa {
  font-family: Fa Slab, Arial, sans-serif;
  font-weight: 400;
  line-height: 1;
}

.fa.footer {
  min-width: 1.25rem;
  min-height: 1.25rem;
  font-weight: 300;
}

.fa.card_large {
  color: var(--_semantic---colours-text--icons);
  font-size: 3rem;
}

.fa.contact_icon {
  color: var(--_semantic---colours-text--icons);
  font-size: 1.75rem;
}

._2-col-grid {
  grid-column-gap: 4rem;
  grid-row-gap: 4rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  align-items: center;
  display: grid;
}

.image_context {
  border-radius: var(--_semantic---radius--image);
  box-shadow: 0 .5rem 2rem #00000040;
}

.image_context.full-width {
  z-index: 20;
  width: 100%;
  position: relative;
}

.card {
  border-radius: var(--_semantic---radius--card);
  background-color: var(--shade-50);
  color: var(--_semantic---colours-text--body);
  transform-style: preserve-3d;
  flex-flow: column;
  height: 100%;
  text-decoration: none;
  transition: transform .3s, box-shadow .3s;
  display: flex;
  overflow: hidden;
  box-shadow: 0 1rem 2rem #00000014;
}

.card:hover {
  transform: translate3d(0, 0, 1rem);
  box-shadow: 0 0 2rem 1px #00000026;
}

.card_wrapper {
  width: 100%;
  height: 100%;
  position: relative;
}

.card_content {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  background-color: var(--_semantic---colours-bg--bg-primary);
  flex-flow: column;
  padding: 2rem;
  display: flex;
}

.card_content.align-left {
  align-items: flex-start;
}

._6-col-grid {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  perspective: 100rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.card_image {
  aspect-ratio: 3 / 2;
  object-fit: cover;
  width: 100%;
  min-height: 20svh;
}

.card_image.square {
  aspect-ratio: 3 / 2;
  object-position: 50% 50%;
}

.card_image.full-height {
  aspect-ratio: 1;
  object-position: 50% 50%;
  height: 100%;
}

.card_image.full-height.rotisserie {
  object-position: 100% 50%;
}

.nav_container {
  border: 1px solid #0000;
  border-radius: 50rem;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 2rem;
  padding-right: 2rem;
  position: relative;
}

.text-alternate {
  color: var(--_semantic---colours-text--text-alternate);
}

.card_content-overlay {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  background-image: linear-gradient(0deg, var(--_semantic---colours-bg--bg-navbar), transparent);
  flex-flow: column;
  padding: 1rem 2rem;
  display: flex;
  position: absolute;
  inset: auto 0% 0%;
}

.unsplash-image {
  object-fit: contain;
  object-position: 50% 50%;
  width: 100%;
  height: auto;
  display: block;
}

._3-col-grid {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.grid_opening-hours {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: min-content 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.non-breaking {
  white-space: nowrap;
}

.map {
  z-index: 20;
  border-radius: var(--_semantic---radius--image);
  box-shadow: 0 .5rem 2rem #00000040;
}

.gradient-blur {
  z-index: 0;
  -webkit-backdrop-filter: blur(.5rem);
  backdrop-filter: blur(.5rem);
  position: absolute;
  inset: 0%;
}

.form-label {
  margin-bottom: 0;
  font-weight: 400;
  line-height: 1;
}

.input-group {
  grid-column-gap: .5rem;
  grid-row-gap: .5rem;
  flex-flow: column;
  display: flex;
}

.form {
  grid-column-gap: .75rem;
  grid-row-gap: .75rem;
  flex-flow: column;
  max-width: 60ch;
  display: flex;
}

.events-list {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.events-item {
  perspective: 1600px;
}

.empty-state {
  border-radius: var(--_semantic---radius--card);
  background-color: #0000;
  padding: 0;
}

.menu-item {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  flex-flow: wrap;
  grid-template-rows: auto;
  grid-template-columns: 1fr min-content;
  grid-auto-columns: 1fr;
  display: grid;
}

.menu-list {
  grid-column-gap: 4rem;
  grid-row-gap: 2rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.menu_name, .menu_price {
  color: var(--_semantic---colours-text--heading);
  line-height: 1;
}

.menu_section {
  grid-column-gap: 1.5rem;
  grid-row-gap: 1.5rem;
  flex-flow: column;
  display: flex;
}

.list {
  grid-column-gap: .75rem;
  grid-row-gap: .75rem;
  flex-flow: column;
  margin-bottom: 0;
  padding-left: 1rem;
  list-style-type: disc;
  display: flex;
}

.list-item {
  background-image: url('../images/check-slab-regular-full.svg');
  background-position: 0%;
  background-repeat: no-repeat;
  background-size: 1.25rem;
  background-attachment: scroll;
  padding-left: 2rem;
  list-style-type: none;
}

.list-item.white {
  background-image: url('../images/check-slab-press-regular-full.svg');
}

.event-gallary-item {
  perspective: 1600px;
}

.event-gallary-list {
  grid-column-gap: 2rem;
  grid-row-gap: 2rem;
  flex-flow: wrap;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.hero-subheading {
  color: var(--_semantic---colours-text--text-alternate);
  text-align: center;
  font-size: 1.25rem;
  font-weight: 400;
}

.spacer.small {
  height: .5rem;
}

.spacer.x-small {
  height: .125rem;
}

.heading-2, .heading-3, .heading-4 {
  margin-top: 0;
}

.heading-5 {
  margin-bottom: 1rem;
}

.image_gallery-thumbnail {
  border-radius: var(--_semantic---radius--image);
  box-shadow: 0 .5rem 2rem #00000026;
}

.image_gallery-thumbnail.full-width {
  width: 100%;
}

.lightbox-link {
  transform-style: preserve-3d;
  transition: transform .3s;
}

.lightbox-link:hover {
  transform: translate3d(0, 0, 4rem);
}

.div-block {
  border-radius: 50rem;
  margin: 1px;
  position: absolute;
  inset: 0%;
}

.nav_blur {
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  border-radius: 50rem;
  position: absolute;
  inset: 0%;
}

.image_wrapper {
  position: relative;
}

.image_bg-accent {
  border-radius: var(--_semantic---radius--image);
  background-image: linear-gradient(45deg, var(--_semantic---accents--primary-accent), var(--_semantic---accents--tertiary-accent));
  transform-style: preserve-3d;
  padding: .25rem;
  position: absolute;
  inset: 0%;
  transform: translate3d(-1rem, 1rem, 0);
}

.image_bg-accent.alt {
  transform-style: preserve-3d;
  transform: translate3d(1rem, -1rem, 0);
}

.image_bg-accent.hole {
  transform: none;
}

.menu-section_separator {
  background-color: var(--_semantic---colours-text--text-alternate);
  width: 60%;
  max-width: 10rem;
  height: 1px;
  margin: 2rem auto;
}

.image_bg-accent-hole {
  border-radius: var(--radius--x-small);
  background-color: var(--shade-50);
  width: 100%;
  height: 100%;
  position: relative;
  inset: 0%;
}

.image_bg-accent-hole.alt {
  background-image: linear-gradient(83deg, var(--_semantic---accents--primary-accent), var(--_semantic---accents--tertiary-accent));
  transform-style: preserve-3d;
  transform: translate3d(1rem, -1rem, 0);
}

.image_bg-accent-hole.hole {
  transform: none;
}

.eyebrow-text {
  background-color: var(--_semantic---colours-bg--bg-primary);
  color: var(--_semantic---colours-text--heading);
  text-transform: uppercase;
  border-radius: 20px;
  width: 100%;
  height: 100%;
  padding: .375rem .5rem .25rem;
  font-size: .875rem;
  font-weight: 500;
  line-height: 1;
}

.eyebrow-text.alt {
  background-color: var(--_semantic---colours-bg--bg-alternate);
  color: var(--_semantic---accents--tertiary-accent);
  font-weight: 400;
}

.list-item-2 {
  list-style-type: none;
}

.inline-link {
  border-bottom: 1.5px solid var(--_semantic---accents--primary-accent);
  color: var(--_semantic---colours-text--heading);
  transition: color .3s;
}

.inline-link:hover {
  color: var(--_semantic---accents--primary-accent);
}

.flex-horiz {
  grid-column-gap: 1rem;
  grid-row-gap: 1rem;
  display: flex;
}

.footer_partner-logo {
  filter: brightness(200%) grayscale();
  object-fit: contain;
  object-position: 50% 50%;
  width: 80%;
  max-height: 3rem;
}

.footer_logo-link {
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.section_book-now {
  z-index: 1000;
  background-color: var(--_semantic---colours-bg--bg-navbar);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  border-radius: 8rem;
  justify-content: center;
  align-items: center;
  margin-left: 2rem;
  margin-right: 2rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
  display: none;
  position: fixed;
  inset: auto 0% 1rem;
  box-shadow: 0 -2px 4rem #0003;
}

.booking-widget {
  margin: -1rem;
}

.booking-widget_wrapper {
  margin-bottom: -3px;
  overflow: hidden;
}

.nav_bg {
  background-color: var(--_semantic---colours-bg--bg-navbar);
  opacity: 0;
  -webkit-backdrop-filter: blur(var(--_semantic---bg-blur));
  backdrop-filter: blur(var(--_semantic---bg-blur));
  border-radius: 20rem;
  position: absolute;
  inset: 0%;
}

.hero-image_wrapper {
  background-image: radial-gradient(circle, #000, #0000);
  position: absolute;
  inset: 0%;
  overflow: hidden;
}

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

.hero-overlay {
  z-index: 10;
  background-image: radial-gradient(circle, #0006, #0009);
  position: absolute;
  inset: 0%;
}

@media screen and (max-width: 991px) {
  body {
    --_semantic---typography--body: var(--typography--body-font);
    --_semantic---colours-text--body: #3d3f4c;
    --_semantic---colours-text--heading: var(--blue-500);
    --_semantic---colours-text--text-alternate: color-mix(in srgb, var(--shade-100), black 20%);
    --_semantic---colours-text--heading-alternate: var(--shade-50);
    --_semantic---accents--primary-accent: var(--accent-alpha);
    --_semantic---accents--secondary-accent: var(--blue-500);
    --_semantic---colours-bg--bg-navbar: color-mix(in srgb, var(--_semantic---colours-bg--bg-alternate) 75%, transparent);
    --_semantic---colours-bg--bg-alternate: var(--blue-500);
    --_semantic---colours-bg--bg-secondary: var(--shade-100);
    --_semantic---borders--border-colour: color-mix(in srgb, var(--_semantic---colours-bg--bg-alternate) 15%, transparent);
    --_semantic---accents--tertiary-accent: var(--accent-bravo);
    --_semantic---radius--button: var(--radius--small);
    --_semantic---colours-text--icons: var(--blue-500);
    --_semantic---radius--image: var(--radius--small);
    --_semantic---radius--card: var(--radius--small);
    --_semantic---colours-bg--bg-primary: var(--shade-50);
    --_semantic---typography--headings: var(--typography--header-font);
  }

  .nav_logo {
    max-height: 2.5rem;
  }

  .nav_brand-link {
    flex: 0 auto;
    order: -1;
  }

  .navbar {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .nav_wrapper {
    justify-content: space-between;
    padding-top: .75rem;
    padding-bottom: .75rem;
  }

  .nav_menu {
    border-radius: var(--radius--large);
    background-color: var(--_semantic---colours-bg--bg-navbar);
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
    margin-top: 1rem;
    padding: 1rem;
    left: 1rem;
    right: 1rem;
  }

  .section {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  .heading.hero {
    font-size: 4rem;
  }

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

  .button.tertiary {
    align-items: center;
  }

  .fa.hamburger {
    color: var(--_semantic---colours-text--heading-alternate);
    font-family: Fa Slab, Arial, sans-serif;
  }

  ._2-col-grid {
    grid-template-columns: 1fr;
  }

  ._6-col-grid {
    grid-template-columns: 1fr 1fr;
  }

  .card_image.full-height {
    aspect-ratio: 16 / 9;
  }

  ._3-col-grid, .events-list {
    grid-template-columns: 1fr;
  }

  .menu-button {
    padding: 1rem;
  }

  .menu-button.w--open {
    background-color: #0000;
    transition: transform .3s cubic-bezier(.6, -.28, .735, .045);
    transform: rotate(-90deg);
  }

  .section_book-now {
    display: flex;
  }
}

@media screen and (max-width: 767px) {
  .section {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  .footer_grid, .footer_grid._3-col, ._6-col-grid {
    grid-template-columns: 1fr;
  }

  .card_image.full-height {
    aspect-ratio: 3 / 2;
  }

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

@media screen and (max-width: 479px) {
  .nav_logo {
    max-height: 1.75rem;
  }

  .container {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .nav_wrapper {
    align-items: center;
    padding-top: .6rem;
    padding-bottom: .6rem;
  }

  .heading.hero {
    font-size: 3rem;
  }

  .nav_container {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .section_book-now {
    margin-left: 1.5rem;
    margin-right: 1.5rem;
  }
}

@media screen and (max-width: 991px) {
  #w-node-_435808a4-00d0-d5d3-3b17-436cef0b995e-7bb26661, #w-node-_52c392dd-eaa6-ef1e-1a86-f6ee9f4bf290-7bb26661, #w-node-_0bc80be7-567f-f5af-3311-587fb067f951-7bb26661, #w-node-dccbe887-d2aa-d461-d89f-99244dbda323-7bb26661 {
    grid-column: span 1 / span 1;
  }

  #w-node-_82797691-5222-6676-1152-b5e5e1022aa3-de74ec33, #w-node-_1ff460ee-3006-93df-ccca-9018d1c23d51-de74ec33 {
    order: -9999;
  }

  #w-node-f0538205-514a-417f-1c3f-8746cbc73708-ca5d9086, #w-node-f0538205-514a-417f-1c3f-8746cbc736ed-ca5d9086 {
    grid-column: span 1 / span 1;
  }
}


@font-face {
  font-family: 'FA Brands';
  src: url('../fonts/fa-brands-400.woff2') format('woff2'), url('../fonts/fa-brands-400.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'FA';
  src: url('../fonts/fa-regular-400.woff2') format('woff2'), url('../fonts/fa-regular-400.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'FA';
  src: url('../fonts/fa-light-300.woff2') format('woff2'), url('../fonts/fa-light-300.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Fa Slab';
  src: url('../fonts/fa-slab-press-regular-400.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}