/* Fall variation: warm charcoal sampled from the supplied reference, with muted brown accents. */
:root {
  --blue: #a78569;
  --blue-dark: #39352c;
  --paper: #22211c;
  --ink: #e2d6c3;
  --muted: #c0b29f;
  --line: #454139;
  --accent: #e1bc22;
}
body {
  background: radial-gradient(ellipse 1400px 2000px at 20% 0%, rgba(146,118,84,.055), transparent 75%), var(--paper);
  color: var(--ink);
}
::selection { background: #dfc576; color: #22211c; }
.header {
  background: transparent;
  border-top: 0;
  border-bottom: 1px solid transparent;
}
.brand { width: max-content; max-width: 100%; justify-self: start; position: relative; }
.brand-logo {
  display: block;
  height: auto;
  aspect-ratio: 275 / 40;
  background: linear-gradient(to right, #e2d6c3 0 45%, #e1bc22 45% 59%, #e2d6c3 59% 100%);
  -webkit-mask: url('/assets/logo.png') center / contain no-repeat;
  mask: url('/assets/logo.png') center / contain no-repeat;
  filter: none;
  opacity: 1;
}
.brand::after { content: none; }
.header nav a { color: #dbceba; }
.header nav a:hover { color: #d5b28a; }
.button:not(.button-light), .mobile-reserve>span:last-child {
  background: #b99674;
  color: #22211c;
  border: 1px solid #b99674;
}
.button:not(.button-light):hover { background: #c9a985; }
.hero {
  background: transparent;
  color: #e2d6c3;
}
.hero h1, .hero h1 em { color: #e8dbc5; }
.hero-description, .hero-price, .recognition p, .recognition p span { color: #d1c4b0; }
.hero .eyebrow { color: #c9aa82; }
.hero .text-link { color: #e2ceb1; }
.button-light { background: #c6a17d; color: #22211c; border: 1px solid #c6a17d; }
.button-light:hover { background: #d4b18b; }
.recognition { border-color: #5b5143; }
.award-number { color: #d7b16d; }
.hero-photo { background: #22211c; }
.hero-photo img { object-position: 50% 35%; filter: none; }
.hero-photo:after { inset: 0; background: linear-gradient(180deg, #211d1708 50%, #211d179c 100%); }
.hero-photo figcaption { color: #efdfc6; }
.photo-credit { display: block; margin-top: 6px; font-size: 12px; letter-spacing: .015em; }
.intro-strip { background: transparent; border-color: transparent; }
.intro-strip em { color: #e1bc22; }
.intro-strip>p:nth-child(2) { color: #bbad97; }
.intro-strip>a { border-color: #766650; color: #dcc7a7; }
.menu-section { background: transparent; }
.section .eyebrow, .round-heading>span { color: #c7a680; }
.menu-grid, .menu-round, .menu-price span { border-color: #454139; }
.menu-round h3 { color: #e5d3b7; }
.menu-intro>p, .small, .menu-round small, .menu-footer p { color: #c6b8a3; }
.menu-price strong { color: #e8d8ba; }
.menu-price span { color: #c6b99f; }
.dark-link, .contact-line a, .faq details>a { color: #d5b18a; }
.story { background: transparent; }
.story-copy>p:not(.eyebrow) { color: #c9bca8; }
.story-signature>span { color: #e4ceb0; }
.story-signature small { color: #bdaf98; }
.visit { background: transparent; }
.visit-lead, .contact-line { color: #c3b49e; }
.visit-interior { border: 1px solid #454139; }
.visit-interior img { filter: brightness(.9); }
.faq details { border-color: #454139; }
.faq details:last-child { border-color: #454139; }
.faq summary { color: #e0d2bb; }
.faq summary span { color: #d0b089; }
.faq details>p { color: #c3b59f; }
.reserve { background: transparent; color: #e2d6c3; }
.reserve h2, .reserve h2 em { color: #e5d1b2; }
.reserve .eyebrow { color: #d5ae81!important; }
.reserve>p:not(.eyebrow), .reserve .booking-note { color: #cbbda7!important; }
.booking-option { background: rgba(224,204,174,.025); border-color: #5c5345; }
.booking-option:hover { background: rgba(224,204,174,.06); border-color: #8c785e; }
.booking-option strong { color: #e5d3b6; }
.booking-option small { color: #c7b596; }
.booking-option>span:last-child { color: #deb884; }
footer { background: transparent; }
footer>p, footer>small { color: #bdaf98; }
footer>div a { color: #d4b48b; }
footer>small { border-color: #454139; }
.mobile-reserve { background: #22211c; color: #e2d6c3; border-color: #454139; box-shadow: 0 -5px 22px #100e0926; }
.skip { background: #e2d6c3; color: #22211c; }
@media(max-width:760px) {
  .header nav { border-color: transparent; }
  .hero-photo { height: 380px; }
  .hero-photo img { object-position: 50% 30%; }
}

.tasting-only { margin-top: 8px; color: #d1c4b0; font-size: 14px; }
.contact-links { display: inline-flex; align-items: center; gap: 24px; flex-wrap: wrap; margin-top: 7px; }
.visit-interior img { filter: none; object-position: center; }
.hero h1 { font-size: clamp(50px, 4.8vw, 76px); }
@media(max-width:760px) { .hero h1 { font-size: clamp(43px, 9vw, 65px); } .hero-photo { height: 480px; } }

/* One lighting field across the page; quieter accents retain readable contrast. */
.section .eyebrow, .hero .eyebrow, .round-heading>span { color: #c3ad90; }
.reserve .eyebrow { color: #c3ad90!important; }
.recognition { border-color: #49443a; }
.dark-link, .contact-line a, .faq details>a, footer>div a { color: #d0b899; }
.button:not(.button-light), .button-light, .mobile-reserve>span:last-child { background: #b39a7f; border-color: #b39a7f; color: #22211c; }
.button:not(.button-light):hover, .button-light:hover { background: #c0a88d; border-color: #c0a88d; }
