/* FOMO V47. Final finishing pass, applied after V46.
   The approved menu, gallery, paired scenes, real feed and sample-review disclosures remain.
   FAQ receives the approved table-detail artwork. Reviews and Instagram have NO photo backdrop. */
:root{--final-ink:#2d211b;--final-copper:#874722;--final-line:#dccbb7;--final-button-radius:12px;--final-text:#665548}

/* Give the table detail its own space while the cream palette remains dominant. */
#faqs{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 18% 0%,#fffdf8 0,transparent 58%),linear-gradient(110deg,#faf5ed,#f4eadd)}
#faqs .faq-table-art{position:absolute;right:-40px;top:56px;bottom:0;width:clamp(420px,38vw,580px);z-index:0;pointer-events:none;opacity:.94;mask-image:linear-gradient(90deg,transparent,#000 42%),linear-gradient(180deg,transparent,#000 22%,#000 85%,transparent);mask-composite:intersect;-webkit-mask-image:linear-gradient(90deg,transparent,#000 42%),linear-gradient(180deg,transparent,#000 22%,#000 85%,transparent);-webkit-mask-composite:source-in}
#faqs .faq-table-art img{width:100%;height:100%;object-fit:cover;object-position:64% 48%;max-width:none;display:block;filter:none}
#faqs .faq-table-art::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#f8f1e78c,transparent 64%);pointer-events:none}
#faqs .gx-faq-layout{position:relative;z-index:1;grid-template-columns:minmax(265px,.82fr) minmax(0,1.42fr);gap:clamp(38px,4.2vw,68px);padding-right:clamp(105px,12vw,185px);align-items:start}
#faqs .gx-faq-aside{min-width:0}
#faqs .gx-faq-main{min-width:0}
#faqs .gx-faq-item{background:#fcf8f1f7;border-color:#dac8b4}
#faqs .gx-faq-item[open]{background:#fffaf5fb;border-color:#cbaa89;box-shadow:0 8px 26px #6137180b}
#faqs .gx-faq-caption{color:#725137;border-color:#cba9897d}
#faqs .gx-faq-caption>span:last-child{color:#725137}
#faqs .gx-faq-item summary{min-height:76px;padding:19px 18px;grid-template-columns:22px minmax(0,1fr) 34px;gap:12px}
#faqs .gx-question-text{font-size:16px;line-height:1.5}
#faqs .gx-answer-inner{padding:0 23px 23px 52px}
#faqs .gx-answer p{font-size:16px!important;line-height:1.7!important;color:var(--final-text)}
#faqs .gx-help{margin-top:27px;border-radius:18px;background:#fffbf5f7;max-width:370px}
#faqs .gx-help-visual{height:143px}
#faqs .gx-help-copy{padding:22px}
#faqs .gx-help-copy>p:not(.gx-help-kicker){font-size:15px;line-height:1.65}
#faqs .gx-faq-note{color:#6b513a}

/* One readable action style. Keep the approved peach primary / espresso secondary colours. */
body :is(.btn,.mn-action){font-family:var(--ds-font,Inter,Arial,sans-serif)!important;border-radius:var(--final-button-radius)!important;font-weight:650!important;line-height:1.4!important;letter-spacing:0!important;text-transform:none;touch-action:manipulation}
body :is(.mn-action,.ps-cta){min-height:46px;font-size:14px;gap:16px}
body :is(.mn-action,.ps-cta,.gx-help-cta,.gx-feedback-cta,.fm-menu){padding:11px 19px}
#our-menu .mn-dish-button{font-size:14px;min-height:46px;min-width:142px;border-radius:12px;padding:11px 17px;text-transform:none;letter-spacing:0}
#our-menu .mn-full-menu{font-size:13px;min-height:46px;border-radius:12px;padding:11px 18px;text-transform:none;letter-spacing:0;min-width:195px}
#our-menu .mn-tab{min-height:60px;font-size:14px}
#our-menu .mn-filter{min-height:40px;font-size:12px;padding:9px 16px}
#our-menu .mn-card{border-radius:16px;border-color:#e1d2bf;box-shadow:0 5px 18px #623f2209}
#our-menu .mn-card-copy>p{font-size:15px;line-height:1.6;margin-top:8px;margin-bottom:16px;min-height:48px}
#our-menu .mn-name-price h3{font-size:22px;line-height:1.18}
#our-menu .mn-price{font-size:22px;line-height:1.18}
#our-menu .mn-featured h3,#our-menu .mn-featured .mn-price{font-size:26px}
#our-menu .mn-results{color:#7a634e;font-size:12px}
#our-menu .mn-browse-button{font-size:13px;min-height:44px}
#our-menu .mn-intro{font-size:16px;line-height:1.65}
.mn-dialog .mn-plan-visit{font-size:14px;min-height:46px;text-transform:none}
body :is(.btn,.mn-action,.ps-cta):focus-visible{outline:3px solid #ae754d;outline-offset:4px}
#kitchen .ps-cta:focus-visible{outline-color:#f6c391}
@media(hover:hover){body :is(.btn,.mn-action):hover>.icon{transform:translateX(2px)}}

/* Predictable headings / secondary text. Approved serif food presentation stays editorial. */
#our-menu #mn-heading{font-size:var(--ds-h2,48px);line-height:1.12;letter-spacing:-.035em}
#reviews .gx-review-heading,#fomo-instagram .ig-heading{margin-bottom:30px}
#reviews .gx-review-body blockquote{color:var(--final-text)}
#reviews .gx-review-card{border-radius:18px}
#reviews .gx-review-card-foot>span:last-child{font-size:11px}
#reviews .gx-sample-label{font-size:10px!important}
#reviews .gx-review-status{font-size:12px!important}
#reviews .gx-rating-value small{font-size:11px}
#fomo-instagram .ig-feed-note{font-size:13px}
#fomo-instagram .ig-follow small{font-size:11px;letter-spacing:.055em}
#fomo-instagram .ig-post-meta{font-size:12px;color:#71553e}
#fomo-instagram .ig-caption{font-weight:650;line-height:1.5}
#fomo-instagram .ig-post-link{border-radius:16px}
#reviews .gx-review-controls button,#fomo-instagram .ig-nav-controls button{width:46px;height:46px;min-height:46px;border-radius:12px}
#fomo-instagram .ig-follow{border-radius:16px}
#visit .ft-email{overflow-wrap:normal;word-break:normal;line-height:1.6}
#visit .ft-grid{align-items:start}
#visit .ft-disclosure{line-height:1.6}
#visit .ft-brand-column>p{color:#d1c1b1}
#visit .ft-column :is(address,dl,a){color:#d1c1b1}

/* Do not let the full-screen headline or card buttons become oversized on narrow laptops. */
@media(min-width:1320px){.header-inner{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:22px}.header-actions{justify-self:end}.desktop-nav{justify-self:center}}
@media(max-width:1200px) and (min-width:961px){#faqs .gx-faq-layout{padding-right:60px;gap:35px;grid-template-columns:minmax(250px,.8fr) minmax(0,1.35fr)}#faqs .faq-table-art{right:-140px;width:430px;opacity:.72}#faqs .gx-question-text{font-size:15px}}
@media(max-width:960px){
 #faqs .gx-faq-layout{grid-template-columns:1fr;padding-right:0;gap:30px}
 #faqs .gx-faq-aside{display:grid;grid-template-columns:1fr .92fr;gap:30px;align-items:center}
 #faqs .gx-help{margin:0;max-width:none}
 #faqs .faq-table-art{right:-70px;top:18px;bottom:auto;width:410px;height:520px;opacity:.44;mask-image:linear-gradient(90deg,transparent,#000 40%),linear-gradient(180deg,transparent,#000 12%,#000 56%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 40%),linear-gradient(180deg,transparent,#000 12%,#000 56%,transparent)}
 #faqs .gx-faq-item{background:#fffaf4f7}
 #our-menu .mn-name-price h3,#our-menu .mn-price{font-size:21px}
 #our-menu .mn-card-copy>p{font-size:14px}
 #our-menu .mn-dish-button{min-width:0;width:100%;padding-inline:14px}
 #our-menu .mn-featured .mn-dish-button{width:auto;min-width:155px}
}
@media(max-width:767px){
 #our-menu #mn-heading{font-size:var(--ds-h2,32px)}
 #our-menu .mn-intro{font-size:16px;line-height:1.6}
 #our-menu .mn-tab{font-size:12px;gap:8px}
 #our-menu .mn-filter{font-size:12px;min-height:40px;padding-inline:14px}
 #our-menu .mn-full-menu{font-size:12px;min-height:44px;min-width:185px}
 #our-menu .mn-featured h3,#our-menu .mn-featured .mn-price{font-size:24px}
 #our-menu .mn-card-copy>p{font-size:14px;min-height:70px;line-height:1.6}
 #our-menu .mn-featured .mn-card-copy>p{font-size:15px;min-height:0}
 #our-menu .mn-dish-button{font-size:13px;min-height:44px;padding:10px 12px}
 #our-menu .mn-photo{height:145px}
 #our-menu .mn-name-price{min-height:70px}
 #our-menu .mn-featured .mn-name-price{min-height:0}
 #reviews .gx-review-status{font-size:11px!important}
 #reviews .gx-review-card-foot>span:last-child{font-size:10px}
 #fomo-instagram .ig-follow small{font-size:10px}
 #fomo-instagram .ig-intro{word-spacing:normal}
 #visit .ft-email{font-size:13px}
}
@media(max-width:600px){
 #faqs .gx-faq-layout{display:flex;flex-direction:column;gap:26px}
 #faqs .gx-faq-aside{display:contents}
 #faqs .gx-faq-main{order:1}
 #faqs .gx-help{order:2;width:100%;margin:0;max-width:none}
 #faqs .faq-table-art{right:-68px;top:0;width:250px;height:360px;opacity:.46;mask-image:linear-gradient(90deg,transparent,#000 48%),linear-gradient(180deg,transparent,#000 20%,#000 70%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 48%),linear-gradient(180deg,transparent,#000 20%,#000 70%,transparent)}
 #faqs .gx-faq-item summary{padding:18px 12px;grid-template-columns:17px minmax(0,1fr) 29px;gap:9px;min-height:78px}
 #faqs .gx-question-text{font-size:15px;line-height:1.5}
 #faqs .gx-answer-inner{padding:0 18px 22px 39px}
 #faqs .gx-answer p{font-size:15px!important;line-height:1.65!important}
 #faqs .gx-help-cta.btn{width:100%;justify-content:space-between}
 #faqs .gx-intro{max-width:290px}
 #reviews .gx-review-heading{margin-bottom:24px}
}
@media(max-width:359px){#our-menu .mn-photo{height:185px}#our-menu .mn-card-copy>p{min-height:0}#our-menu .mn-name-price{min-height:0}#our-menu .mn-tab{font-size:11px}#our-menu .mn-featured .mn-name-price{gap:8px}#our-menu .mn-featured h3,#our-menu .mn-featured .mn-price{font-size:22px}#faqs .gx-question-text{font-size:14px}#visit .ft-email{font-size:12px}}
@media(prefers-reduced-motion:reduce){.faq-table-art,body :is(.btn,.mn-action){transition:none!important;animation:none!important}}
/* Show the complete decorative place setting rather than magnifying a small crop. */
@media(min-width:1201px){#faqs .faq-table-art{top:auto;bottom:80px;height:570px;width:500px;right:-15px;opacity:.92}#faqs .faq-table-art img{object-position:70% 50%}}
