.nav nav .nav-feature {
  margin: -8px 0;
  padding: 7px 13px;
  border: 1px solid rgba(225, 184, 75, .62);
  color: var(--gold2) !important;
  background: rgba(225, 184, 75, .07);
  letter-spacing: .02em;
}

.nav nav .nav-feature:hover,
.nav nav .nav-feature.is-current {
  background: var(--gold) !important;
  color: #110b13 !important;
  border-color: var(--gold);
}

.nav-booking.is-current {
  box-shadow: 0 0 0 2px #080609, 0 0 0 3px var(--gold2);
}

.booking-page-body {
  background:
    linear-gradient(180deg, rgba(8, 6, 9, .5) 0, rgba(8, 6, 9, .78) 520px, var(--bg) 1040px),
    linear-gradient(90deg, rgba(8, 6, 9, .46), transparent 36%, transparent 66%, rgba(8, 6, 9, .25)),
    url('assets/reservation-background.png') center top / cover no-repeat fixed,
    var(--bg);
}

.booking-page-nav {
  position: absolute;
  background: transparent;
  text-shadow: 0 2px 12px rgba(0, 0, 0, .9);
}

.booking-page-main {
  width: min(calc(100% - 48px), 1180px);
  margin: 0 auto;
  padding: 174px 0 110px;
}

.booking-page-intro {
  max-width: 820px;
  margin-bottom: 42px;
}

.booking-page-intro h1 {
  font-size: clamp(54px, 7vw, 92px);
  margin: 18px 0;
}

.booking-page-intro > p {
  max-width: 720px;
  color: var(--muted);
  font-size: 18px;
}

.booking-page-card {
  display: block;
  width: 100%;
  max-height: none;
  margin: 0;
  padding: 0;
  box-shadow: 18px 18px 0 #1b0f1f;
}

.booking-page-card .booking-shell {
  padding: 44px 50px;
}

.booking-page-card .booking-top h2 {
  font-size: 42px;
}

.booking-loading,
.booking-load-error {
  padding: 45px;
}

.booking-load-error a {
  color: var(--gold2);
  font-weight: 800;
}

@media (max-width: 720px) {
  .nav nav .nav-feature {
    margin: 0;
    padding: 10px 12px;
  }

  .booking-page-main {
    width: calc(100% - 28px);
    padding: 114px 0 80px;
  }

  .booking-page-body {
    background:
      linear-gradient(180deg, rgba(8, 6, 9, .58) 0, rgba(8, 6, 9, .88) 460px, var(--bg) 860px),
      url('assets/reservation-background.png') 58% top / auto 760px no-repeat,
      var(--bg);
  }

  .booking-page-intro h1 {
    font-size: 48px;
  }

  .booking-page-intro > p {
    font-size: 16px;
  }

  .booking-page-card {
    box-shadow: 8px 8px 0 #1b0f1f;
  }

  .booking-page-card .booking-shell {
    padding: 26px 18px;
  }
}
