:root {
  --wine: #9f3948;
  --wine-dark: #792c39;
  --cream: #191819;
  --ivory: #101112;
  --ink: #eee8de;
  --muted: #bcb4aa;
  --jade: #e5c28f;
  --jade-deep: #141516;
  --bronze: #d5ae78;
  --line: #71563b;
  --champagne: linear-gradient(110deg, #b7803e, #f0d3a1 23%, #fff0cd 41%, #d4a164 65%, #f1d3a2 82%, #b98144);
  --gold-border: linear-gradient(125deg, #815528, #e7c490 25%, #9e6e3b 52%, #efd5a7 78%, #8c5f30);
  color-scheme: dark;
}
body { background: #101112; color: #eee8de; }
body * { letter-spacing: 0; }
.menu-header, .site-header { background: #111112f5; border-bottom: 1px solid #b58c555c; }
.header-inner { gap: 22px; }
.menu-brand b, .brand b { color: #eed0a0; }
.menu-brand small, .brand small { color: #c3b7a5; }
.menu-header nav a:hover, .mobile-home { color: #efd3a6; }
.language-switcher { background: #191819; border-color: #b58c5570; border-radius: 4px; }
.language-switcher a { color: #e5c28f; border-radius: 2px; }
.language-switcher a.active { background: #59212b; color: #fff0cd; }
.menu-button, .button, .menu-card-actions button {
  background: var(--champagne); color: #211710; border: 1px solid #d5ae78; border-radius: 4px;
}
.menu-button:hover, .button:hover, .menu-card-actions button:hover { background: #f0d3a1; color: #211710; border-color: #f0d3a1; }
.menu-button-ghost, .button-outline, .menu-card-actions .copy-menu { background: #10111255; color: #edd6b5; border-color: #bb925e; }
.menu-button-ghost:hover, .button-outline:hover, .menu-card-actions .copy-menu:hover { background: #57202a; color: #fff0cd; }
.menu-hero { min-height: 450px; background: #131415; }
.menu-hero-overlay { background: linear-gradient(90deg, #0b0c0df0, #0b0c0db8 48%, #0b0c0d28), linear-gradient(0deg, #101112, transparent 35%); }
.menu-hero-content { padding: 56px 0 64px; }
.menu-hero h1 { font-size: 56px; line-height: 1.16; max-width: 740px; }
.menu-hero h1 em, .catalog-heading h2, .policy-heading h2, .menu-contact h2, .lead-copy h2 {
  color: #eed0a0; background-image: var(--champagne); background-clip: text; -webkit-background-clip: text; -webkit-text-fill-color: transparent;
}
.menu-intro { max-width: 630px; color: #e0d9cf; font-size: 14px; }
.menu-tools { background: #191819; padding: 28px 0; border-block: 1px solid #a77e494d; }
.search-field>div, .guest-field input { background: #101112; color: #eee8de; border-color: #967248; border-radius: 4px; }
.search-field input { background: transparent; color: #eee8de; min-width: 0; }
input::placeholder, textarea::placeholder { color: #aaa197; opacity: 1; }
.search-field button { color: #e5c28f; width: 32px; height: 36px; padding: 0; }
.filters button { background: #111213; color: #ddd5c9; border-color: #705b45; border-radius: 4px; }
.filters button.active { background: #63242f; color: #ffe9c8; border-color: #d5ae78; }
.filters button:hover { background: #3b2228; border-color: #d5ae78; color: #fff0cd; }
.menu-catalog, .menu-policy { padding: 56px 0; background: #101112; }
.catalog-heading { margin-bottom: 28px; }
.catalog-heading h2, .policy-heading h2, .no-pork-note h2, .menu-contact h2 { font-size: 32px; line-height: 1.25; }
.catalog-heading p, .policy-heading p { color: #d5ae78; }
.catalog-heading>span b { color: #f0d3a1; }
.menu-grid { gap: 20px; }
.menu-card, .menu-card.asian, .menu-card.no-pork, .menu-card.thinh-yen {
  background: #191718; border: 1px solid #bd925e; border-image: var(--gold-border) 1; padding: 28px; box-shadow: none;
}
.menu-card.asian { background: #161f20; }
.menu-card.no-pork { background: #17201d; }
.menu-card.thinh-yen { background: #2a171d; }
.menu-card-head { border-color: #96724870; }
.menu-card h3 { font-size: 28px; line-height: 1.2; color: #f0d3a1; }
.menu-card-kicker { color: #cbbba1; }
.menu-price { color: #f0d3a1; font-size: 28px; }
.menu-price small { color: #bcb4aa; }
.menu-badge { background: #25443b; color: #e2eee7; border-radius: 2px; }
.menu-badge.gold { background: #dcc298; color: #211710; }
.dish-list li { color: #e0d9cf; border-color: #6c5b4866; font-size: 13px; line-height: 1.75; }
.dish-list li:before { color: #c0a17b; }
.dish-list li.signature-dish { color: #f1d3a2; }
.menu-empty h3 { color: #f0d3a1; }
.no-pork-note { background: #16201d; padding: 40px 0; border-block: 1px solid #b58c5555; }
.no-pork-note>.menu-wrap { gap: 40px; }
.no-pork-note>.menu-wrap>p { color: #d2dad5; }
.menu-policy { background: #151516; }
.policy-heading { max-width: 1000px; }
.policy-heading h2 { white-space: normal; }
.policy-cards article { background: #1b191a; border-color: #71563b; border-radius: 4px; padding: 26px; }
.policy-cards h3 { color: #edcfa1; font-size: 24px; line-height: 1.3; }
.policy-cards p, .policy-cards li { color: #d2c9bf; }
.menu-contact { background: #351016; padding: 48px 0; border-block: 1px solid #b58c55; }
.menu-contact .contact-grid { gap: 48px; }
.menu-contact h2 { margin-bottom: 16px; }
.menu-footer { background: #101112; color: #bcb4aa; }
.menu-toast { background: #351016; border: 1px solid #b58c55; border-radius: 4px; }
.menu-mobile-cta { background: #171516; border-top: 1px solid #b58c55; }
.menu-mobile-cta a:last-child { background: #59212b; }
.guest-field p.error { color: #ffb3ba; }
/* Keep the enquiry page in the same visual family. */
.lead-section { background: #101112; }
.lead-copy p, .lead-copy .eyebrow { color: #d2c9bf; }
.lead-copy h2 { font-size: 38px; line-height: 1.25; }
.direct-contact, .contact-channels a { border-color: #9c754360; }
.direct-contact a b, .contact-channels a { color: #efd3a6; }
.lead-form { background: #1a1718; border: 1px solid #bd925e; border-image: var(--gold-border) 1; box-shadow: none; }
.field label, .field legend { color: #e5c28f; }
.field input, .field select, .field textarea { background: #111213; color: #eee8de; border-color: #806448; }
.form-helper, .form-result { color: #d2c9bf; }
@media(max-width:900px) {
  .header-inner { gap: 12px; }
  .menu-card { padding: 24px; }
}
@media(max-width:640px) {
  .menu-hero { min-height: 500px; }
  .menu-hero-content { padding: 40px 0; }
  .menu-hero h1 { font-size: 36px; }
  .menu-hero-overlay { background: linear-gradient(0deg, #101112, #101112dc 52%, #10111265); }
  .menu-hero-content>div { margin-top: 20px; }
  .menu-hero-content .menu-button { min-height: 44px; }
  .menu-catalog, .menu-policy { padding: 36px 0; }
  .catalog-heading h2, .policy-heading h2, .no-pork-note h2, .menu-contact h2 { font-size: 26px; }
  .menu-card, .menu-card.asian, .menu-card.no-pork, .menu-card.thinh-yen { padding: 20px; }
  .menu-card-head { display: flex; gap: 12px; }
  .menu-card h3, .menu-price { font-size: 24px; }
  .menu-price { margin-top: 0; text-align: right; }
  .no-pork-note>.menu-wrap, .menu-contact .contact-grid { gap: 24px; }
  .lead-copy h2 { font-size: 30px; }
}
