/* Shared, dependency-free improvements for the restaurant and catering demo. */
.catering-page{--nav-solid:rgba(231,221,198,.94);--on-accent:#f2ebda;--footer-bg:#464c33}
.catering-page .nav.solid{background:var(--nav-solid);color:var(--ink);box-shadow:0 1px var(--line)}
.catering-page .menu-jump{background:var(--surface)}
.catering-page .menu-jump a:hover{color:var(--on-accent)}
.catering-page .request,.catering-page .btn:not(.alt):not(.dark){background:#a33b26;color:#fffaf0}
.catering-page .btn.dark{background:var(--ink);color:var(--ground)}
.catering-page .foot{background:var(--footer-bg)}
.catering-page .photo-dialog{background:var(--surface);color:var(--ink)}
.catering-page .dialog-close{background:var(--ground);color:var(--ink);border-color:var(--line)}
.catering-hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.72}
.catering-video-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border:1px solid currentColor;border-radius:99px;background:rgba(25,27,21,.6);color:#fffaf0;font:700 14px/1.3 var(--display);cursor:pointer}
.dish-video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#191b15}
.catering-hero-video[hidden],.catering-video-toggle[hidden],.dish-video[hidden]{display:none}
@media(prefers-color-scheme:dark){html:not([data-theme="light"]) .catering-page{--ground:#191b15;--surface:#22261c;--sunken:#12140f;--ink:#e7ddc6;--muted:#aba48d;--accent:#d8755b;--on-accent:#191b15;--line:#333828;--green:#2c3124;--footer-bg:#12140f;--nav-solid:rgba(25,27,21,.92)}}
html[data-theme="dark"] .catering-page{--ground:#191b15;--surface:#22261c;--sunken:#12140f;--ink:#e7ddc6;--muted:#aba48d;--accent:#d8755b;--on-accent:#191b15;--line:#333828;--green:#2c3124;--footer-bg:#12140f;--nav-solid:rgba(25,27,21,.92)}
html:not(.js) #carta .fam{display:block}
.photo-dialog img[hidden],.plate-mark[hidden]{display:none}
.photo-dialog .dialog-close{position:absolute;top:12px;right:12px;float:none;margin:0}.photo-dialog .dialog-visual{width:100%}
.skip-link{position:fixed;top:10px;left:10px;z-index:200;transform:translateY(-180%);background:#fffaf0;color:#221f1a;padding:14px 20px;font:700 16px/1.4 system-ui;border-radius:4px}.skip-link:focus{transform:none}
.social-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.social-links a{display:inline-flex;align-items:center;min-height:44px;padding:10px 17px;border:1px solid currentColor;border-radius:30px;text-decoration:none;font:600 14px/1.4 var(--display,system-ui);letter-spacing:.04em;opacity:1}.social-links a:hover{background:rgba(255,255,255,.1)}
.restaurant-actions{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.restaurant-actions>div>p{max-width:520px;line-height:1.7}.action-links{display:grid;gap:16px;margin-top:28px}.action-links a{font:600 16px/1.5 var(--display,system-ui);text-underline-offset:5px}
.order-card{background:#f6efdf;color:#221f1a;padding:clamp(24px,4vw,48px);border:1px solid #c9bda0;border-radius:8px}.order-card .eyebrow{color:#92331f}.order-card h3{font:400 clamp(1.8rem,3vw,2.6rem)/1.15 var(--display,system-ui);margin:0 0 20px}.order-card p{font-size:17px;line-height:1.6;color:#51493b}.order-card .order-small{font:14px/1.6 var(--display,system-ui);margin:18px 0 0}.order-button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;background:#a33b26;color:#fffaf0;border-radius:30px;padding:15px 24px;font:700 16px/1.3 var(--display,system-ui);text-decoration:none;margin-top:12px}.order-button:hover{background:#812c1c}
.menu-price-note,.preview-instruction{font:16px/1.65 var(--body,Georgia);max-width:850px;margin:0 0 20px}.menu-price-note{padding:18px 20px;border-left:3px solid #a33b26;background:rgba(128,108,68,.08)}.menu-price-note a{text-underline-offset:3px}.search-status{font:14px/1.5 var(--display,system-ui);min-height:22px;margin:10px 0}.motion-toggle{position:absolute;right:20px;bottom:22px;z-index:5;background:rgba(20,18,14,.8);color:#fff;border:1px solid rgba(255,255,255,.55);border-radius:30px;min-height:44px;padding:10px 16px;font:600 14px/1.4 system-ui;cursor:pointer}
.catering-page .eyebrow,.catering-page .navlink,.catering-page .btn,.catering-page .size span,.catering-page .term b,.catering-page .foot a,.catering-page .direct a,.catering-page .menu-jump a{font-size:14px}.catering-page .reference,.catering-page .hero-note{font-size:14px}.catering-page .hero-note{max-width:480px}.catering-page .tier small{font-size:12px;letter-spacing:0}.catering-page .tier div{padding:12px 8px}.catering-page .dish b{font-size:15px;letter-spacing:.025em}.catering-page .dish-description{display:block;font:16px/1.55 var(--body);color:var(--muted);margin:6px 0 0}.catering-page .menu-body{grid-template-columns:minmax(0,1.25fr) minmax(230px,.75fr);gap:32px}.catering-page .dish-grid{grid-template-columns:1fr;gap:0}.catering-page .dish{padding:0;cursor:default}.catering-page .dish:hover,.catering-page .dish:focus{padding:0;background:transparent}.dish-trigger{display:block;position:relative;width:100%;min-height:64px;padding:18px 30px 18px 12px;border:0;background:transparent;color:inherit;text-align:left;font:inherit;cursor:pointer;border-radius:3px}.dish-trigger::after{content:'↗';position:absolute;right:8px;top:18px;color:var(--accent)}.dish-trigger:hover,.dish-trigger:focus-visible{background:var(--ground)}.dish-trigger:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}
.catering-page .dish-preview{margin:0;isolation:isolate;min-height:330px}.catering-page .dish-preview::after{background:linear-gradient(180deg,transparent,rgba(15,18,8,.45))}.plate-mark{position:absolute;width:68%;aspect-ratio:1;border:1px solid rgba(240,230,208,.22);border-radius:50%;top:9%;left:16%;box-shadow:0 0 0 14px rgba(240,230,208,.025),inset 0 0 0 18px rgba(240,230,208,.025)}.plate-mark::after{content:'G';display:grid;place-items:center;position:absolute;inset:12%;border:1px solid rgba(240,230,208,.12);border-radius:50%;color:rgba(240,230,208,.15);font:400 90px/1 Georgia}.catering-page .preview-label{font-size:14px}.catering-page .preview-note{font:14px/1.6 var(--body);color:#f1e7d1}.catering-page .preview-name{font-size:clamp(1.2rem,2.1vw,1.8rem);line-height:1.2}.preview-photo[hidden]{display:none}.photo-dialog{padding:0;border:0;border-radius:8px;width:min(92vw,510px);max-height:86svh;overflow:auto;background:#f2ebda;color:#221f1a;box-shadow:0 20px 100px rgba(0,0,0,.4)}.photo-dialog::backdrop{background:rgba(15,18,10,.7);backdrop-filter:blur(5px)}.dialog-close{position:sticky;top:12px;z-index:5;float:right;margin:12px;background:#fffaf0;color:#221f1a;border:1px solid #c9bda0;border-radius:30px;padding:10px 16px;min-height:44px;font:700 14px/1.4 system-ui;cursor:pointer}.photo-dialog .dialog-visual{position:relative;background:#464c33;aspect-ratio:4/3;clear:none;overflow:hidden}.dialog-visual img{height:100%;object-fit:cover}.dialog-details{padding:24px}.dialog-details h2{margin:0 0 16px;font:500 24px/1.3 var(--display,system-ui)}.dialog-details p{font:16px/1.65 var(--body,Georgia)}.photo-dialog .plate-mark{top:8%;width:48%;left:26%}
.catering-page .menu-block{scroll-margin-top:166px}.catering-page #menu,.catering-page #request{scroll-margin-top:86px}.catering-page .foot-links{max-width:580px}.catering-page .foot a{line-height:1.6}.catering-page .mobilebar{bottom:max(12px,env(safe-area-inset-bottom))}.catering-page .mobilebar a{font-size:13px;min-height:44px;display:grid;place-items:center}
@media(max-width:820px){.restaurant-actions{grid-template-columns:1fr;gap:32px}.catering-page .menu-body{display:block}.catering-page .dish-preview{display:none}.catering-page .menu-top{grid-template-columns:1fr}.catering-page .tier{max-width:100%;width:100%}.catering-page .hero-copy{padding-bottom:140px}.catering-page .preview-instruction{font-size:15px}.catering-page .nav .wrap{gap:14px}.catering-page .section-head{gap:20px}.catering-page .hero-note{bottom:22px}.catering-page .foot-links{flex-direction:column;gap:12px}}
@media(prefers-reduced-motion:reduce){.motion-toggle{display:none}*,*::before,*::after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}
