/* A quieter restaurant identity, shared by the home, menu and events pages. */
html:not(.contrast-mode) {
  --paper: #f7f4ec;
  --white: #fffdf8;
  --ink: #282722;
  --muted: #655e54;
  --border: #dcd4c5;
  --gold: #c7b58b;
  --red: #6c493b;
}
.header { box-shadow: none; }
.desktop-nav { font-weight: 600; gap: 26px; }
.hero { background: var(--paper); }
.hero h1, .section h2, .events-hero h1, .events-contact h2,
.menu-hero h1, .accessibility-page h1 {
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 600;
  letter-spacing: -.015em;
  line-height: 1.12;
}
.hero h1 { font-size: clamp(52px, 6.1vw, 80px); }
.section h2 { font-size: clamp(39px, 4.8vw, 62px); }
.overline, .card-kicker { font-weight: 600; letter-spacing: .055em; }
.hero-photo, .events-photo, .experience-photo {
  border-radius: 3px;
  box-shadow: none;
  border: 1px solid var(--border);
}
.hero-photo span { border-radius: 0; font-weight: 600; }
.button, .header-phone, .press-link {
  border-radius: 3px;
  box-shadow: none;
  font-weight: 600;
  border-width: 1px;
  transition: background .18s, color .18s, border-color .18s;
}
.button:hover, .button:active, .header-phone:hover, .press-link:hover {
  transform: none;
  box-shadow: none;
}
html:not(.contrast-mode) .button.primary,
html:not(.contrast-mode) .food-more .button.primary {
  background: var(--ink); color: var(--white); border-color: var(--ink);
}
html:not(.contrast-mode) .button.primary:hover {
  background: #454139; border-color: #454139;
}
html:not(.contrast-mode) .button.secondary,
html:not(.contrast-mode) .food-more .button.secondary {
  background: transparent; border-color: #a99a81; color: var(--ink);
}
html:not(.contrast-mode) .button.secondary:hover { background: #eee7d9; }
.food-card, .happening-card, .info-panel, .menu-block .card {
  border-radius: 3px;
  box-shadow: none;
}
.food-preview .food-card:hover { transform: none; box-shadow: none; }
.food-card h3, .happening-card h3, .menu-block .card h3 {
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 600;
  letter-spacing: 0;
}
.food-more { padding: 25px 0 0; background: transparent; border: 0; border-radius: 0; }
html:not(.contrast-mode) .visit { background: #ece6d9; }
html:not(.contrast-mode) .events-contact { background: #ece6d9; }
.press-mark { transform: none; border-radius: 2px; }
.press-inner { padding-block: 27px; }
.press h2 { font-weight: 600; }
.photo-caption { border-radius: 2px; font-weight: 600; }
.menu-hero { background: var(--paper); padding-block: 46px 36px; }
.menu-hero h1 { font-size: clamp(46px, 6vw, 72px); }
.menu-nav { background: var(--white); backdrop-filter: none; }
.menu-nav a { border-radius: 3px; font-weight: 600; }
.menu-block .card h3 { border-bottom-width: 1px; }
.menu-block .shared-note { border-radius: 0; background: var(--paper); }
.menu-block .price { color: var(--ink); }
.copyright { letter-spacing: .025em; }
.hero p { font-size: clamp(19px, 2vw, 22px); line-height: 1.7; }
.hero-note { padding-top: 20px; border-top: 1px solid var(--border); }
.button span[aria-hidden] { border-radius: 0; background: transparent; }
.button.secondary span[aria-hidden] { background: transparent; }
.section-heading p, .happening-card p { line-height: 1.7; }
.menu-block .block-title { font-family: Georgia, "Times New Roman", serif; font-weight: 600; }
.menu-block .dots { border-bottom: 0; }
.menu-block .line { justify-content: space-between; }
.menu-block .price { font-variant-numeric: tabular-nums; }
.menu-block .note { max-width: 40ch; }
.menu-block .shared-note b { color: inherit; }
.menu-nav a { background: transparent; }
.drinks-button { box-shadow: none; }
.drinks-button:hover { background: #d6c5a0; box-shadow: none; }
.mobile-nav { display: none; }
@media (max-width: 850px) {
  .mobile-nav { display: flex; justify-content: center; gap: 4px 20px; flex-wrap: wrap; padding-block: 7px; border-top: 1px solid var(--border); }
  .mobile-nav a { display: flex; align-items: center; min-height: 44px; font-size: 16px; font-weight: 600; }
  .mobile-nav a:hover { text-decoration: underline; text-underline-offset: 5px; }
}
.mobile-call { border-radius: 3px; font-weight: 600; }
html:not(.contrast-mode) .mobile-call {
  background: var(--ink); color: var(--white); border-color: var(--ink);
}
@media (max-width: 720px) {
  .hero h1 { font-size: clamp(46px, 11.8vw, 69px); }
  .hero-photo, .events-photo { box-shadow: none; }
  .food-more { padding: 22px 0 0; }
  .press h2 { font-size: 23px; }
}
@media (prefers-reduced-motion: reduce) {
  .button, .header-phone, .press-link { transition: none; }
}

.menu-tools { display: flex; align-items: center; flex-wrap: wrap; gap: 14px 26px; margin-top: 22px; }
.menu-download { display: inline-flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 44px; padding: 9px 16px; border: 1px solid var(--border); background: var(--white); border-radius: 3px; font-size: 16px; font-weight: 600; }
.menu-download:hover { border-color: var(--ink); }
@media (max-width: 720px) { .menu-tools { align-items: stretch; flex-direction: column; gap: 16px; } .menu-download { align-self: flex-start; } }
