:root {
  --stb-paper: #efe3c7;
  --stb-muted: #b8afa0;
  --stb-red: #a2110d;
}

:is(#main-hero, #main-nav, #status-bar, #services, #deals, #work, #reviews, #faq, #site-footer, #mobile-menu, #dropdown-nav, #walkin-mode) {
  background-color: #000;
  color: var(--stb-paper);
  border-color: rgba(239, 227, 199, .15);
}

:is(#main-hero, #main-nav, #services, #work, #reviews, #faq, #site-footer, #mobile-menu, #dropdown-nav, #walkin-mode) .text-ink {
  color: var(--stb-paper);
}

:is(#main-hero, #work, #reviews, #faq, #site-footer, #walkin-mode) .text-sub {
  color: var(--stb-muted);
}

:is(#main-hero, #work, #reviews, #faq, #site-footer, #walkin-mode) [class*="border-ink/"] {
  border-color: rgba(239, 227, 199, .2);
}

#main-nav {
  background: rgba(0, 0, 0, .92);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

#main-nav img { filter: invert(1); }

#primary-booking-button,
#hero-booking-button {
  background: var(--stb-paper);
  color: #260705;
}

#primary-booking-button:hover,
#hero-booking-button:hover {
  background: var(--stb-red);
  color: var(--stb-paper);
}

#main-hero button:first-child:hover,
#reviews button:hover {
  background: var(--stb-paper);
  color: #260705;
}

#reviews button { border-color: rgba(239, 227, 199, .35); }

#walkin-mode .service-card {
  background: #130a08;
  color: var(--stb-paper);
  border-color: rgba(239, 227, 199, .2);
}

#walkin-mode .service-ribbon {
  background: #760e09;
  color: var(--stb-paper);
  border-color: rgba(239, 227, 199, .55);
}

#walkin-mode .service-book-button {
  background: var(--stb-paper);
  color: #480c07;
}

#walkin-mode .service-book-button:hover {
  background: var(--stb-red);
  color: var(--stb-paper);
}

#mobile-menu .mobile-link:hover { color: #e44535; }

#main-hero { min-height: 520px; }
#main-hero .hero-heading { width: clamp(22rem, 52vw, 62rem); }
#main-hero .hero-copy { margin-top: clamp(32px, 4.5svh, 56px); }
#main-hero .hero-actions { margin-top: 28px; }

:is(#services, #deals, #work, #faq, #reviews) .heading-large { text-align: center; }
.liquid-services-heading { text-align: center; }

#reviews-container {
  display: grid;
  align-items: center;
  min-height: 100px;
  overflow-wrap: anywhere;
}
#reviews-container .review-slide {
  grid-area: 1 / 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  visibility: hidden;
}
#reviews-container .review-slide.is-active { visibility: visible; }
#reviews-container blockquote {
  width: 100%;
  height: 6.25em;
  line-height: 1.25;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
  overflow: hidden;
}

@media (max-width: 768px) {
  #main-hero { min-height: 420px; }
  #main-hero .hero-heading { width: 78vw; }
}
