/* One compact table scene. Its controls and phone remain in normal flow. */
.table-hero {
  width:min(1400px,calc(100% - 48px));
  margin:24px auto;
  display:grid;
  grid-template-columns:1fr 1.08fr;
  background:#ffe3d4;
  border-radius:28px;
  overflow:hidden;
}
.table-hero-copy {
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
  padding:42px clamp(28px,3.3vw,48px);
}
.table-hero-intro { font-size:15px; font-weight:500; margin-bottom:22px; }
.table-hero-copy h1 { font-size:clamp(48px,5.1vw,74px); line-height:1.02; letter-spacing:-.058em; }
.table-hero-description { max-width:390px; font-size:18px; line-height:1.5; margin-top:25px; }
.table-hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:25px; }
.table-hero-actions .button { gap:18px; }
.table-hero-actions .button-outline { border-color:#8b6e60; }
.table-hero-proof { font-size:12px; color:#72574b; margin-top:17px; }
.table-hero-scene { position:relative; isolation:isolate; display:grid; grid-template-columns:minmax(90px,1fr) minmax(0,320px); gap:18px; align-items:end; padding:24px; min-width:0; }
.table-hero-photo { position:absolute; inset:0; z-index:-1; width:100%; height:100%; object-fit:cover; object-position:55% center; }
.table-hero-showcase { min-width:0; display:grid; gap:16px; }
.table-hero-tabs { display:flex; padding:4px; border-radius:99px; background:var(--paper); box-shadow:0 3px 14px #29242114; }
.table-hero-tabs button { flex:1; min-width:0; min-height:44px; padding:8px 5px; font-size:13px; font-weight:500; border-radius:99px; background:transparent; }
.table-hero-tabs button[aria-selected=true] { background:var(--ink); color:white; }
.table-hero .showcase-phone { position:relative; inset:auto; transform:none; width:100%; min-height:0; max-width:none; border:5px solid var(--ink); border-radius:32px; padding:24px 0 10px; box-shadow:0 12px 30px #2924212e; }
.table-hero .showcase-phone [role=tabpanel] { min-height:0; }
.table-hero .showcase-phone [role=tabpanel]:not(#showcase-menu) { padding:0 17px; min-height:420px; }
.table-hero .screen-top { padding-bottom:9px; }
.table-hero .screen-title { margin:12px 0; }
.table-hero .screen-title>small { display:none; }
.table-hero .screen-title h3 { font-size:30px; }
.table-hero .screen-bill-line { margin-block:8px; }
.table-hero .screen-bill-total { margin-block:10px; padding-top:9px; }
.table-hero .screen-categories { margin:10px 0 0; }
.table-hero .screen-share { padding:10px 12px; margin-top:10px; }
.table-hero .screen-share small { font-size:10px; }
.table-hero .screen-action { min-height:46px; margin-top:12px; }
.table-hero .screen-action:hover { background:#4c3d32; }
.table-hero .screen-fine { margin-top:6px; }
.table-hero .screen-brand { margin-top:8px; }
.table-hero-qr { justify-self:center; display:grid; justify-items:center; gap:10px; background:var(--paper); border-radius:14px; padding:15px 12px; text-align:center; width:136px; max-width:100%; margin-bottom:28px; box-shadow:0 8px 30px #29242120; }
.table-hero-qr img { width:100px; height:auto; }
.table-hero-qr strong { font-size:19px; letter-spacing:-.035em; line-height:1.05; font-weight:600; }
.table-hero-qr>span { font-size:10px; color:var(--muted); }

/* A short, photo-led menu fits the hero; the full menu retains its richer rows. */
.table-hero .guest-menu-compact .gm-cover { display:none; }
.table-hero .guest-menu-compact .gm-header { padding-block:8px; }
.table-hero .guest-menu-compact .gm-content { padding-top:4px; }
.table-hero .guest-menu-compact .gm-categories { gap:2px; }
.table-hero .guest-menu-compact .gm-categories button { padding-inline:8px; min-height:44px; }
.table-hero .guest-menu-compact .gm-section-title { margin-top:10px; }
.table-hero .guest-menu-compact .gm-items { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.table-hero .guest-menu-compact .gm-dish { display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:auto 1fr; gap:11px; padding:12px 0 0; border:0; }
.table-hero .guest-menu-compact .gm-dish-media { grid-row:1; padding-bottom:23px; }
.table-hero .guest-menu-compact .gm-dish-media img { aspect-ratio:1.6; border-radius:10px; }
.table-hero .guest-menu-compact .gm-dish h4 { font-size:14px; min-height:34px; margin:0; }
.table-hero .guest-menu-compact .gm-dish p,.table-hero .guest-menu-compact .gm-diet { display:none; }
.table-hero .guest-menu-compact .gm-price { margin-top:5px; }
.table-hero .guest-menu-compact .gm-empty { grid-column:1/-1; }
.table-hero .guest-menu-compact .gm-checkout-wrap { padding-top:10px; }

@media(max-width:1180px) {
  .table-hero { grid-template-columns:1fr 1fr; }
  .table-hero-copy { padding:32px 28px; }
  .table-hero-copy h1 { font-size:clamp(42px,5.1vw,60px); }
  .table-hero-description { font-size:16px; }
  .table-hero-actions { gap:10px; }
  .table-hero-actions .button { padding-inline:17px; gap:12px; font-size:14px; }
  .table-hero-scene { grid-template-columns:minmax(0,1fr); padding:22px; }
  .table-hero-showcase { width:min(100%,320px); justify-self:center; }
  .table-hero-qr { display:none; }
}
@media(max-width:760px) {
  .table-hero { width:calc(100% - 24px); margin:12px auto 20px; grid-template-columns:1fr; border-radius:22px; }
  .table-hero-copy { padding:26px 24px 25px; }
  .table-hero-intro { font-size:12px; margin-bottom:14px; }
  .table-hero-copy h1 { font-size:clamp(37px,9.5vw,62px); }
  .table-hero-description { font-size:15px; line-height:1.45; max-width:390px; margin-top:17px; }
  .table-hero-actions { margin-top:18px; gap:10px; }
  .table-hero-actions .button { min-height:46px; padding:10px 16px; gap:14px; font-size:13px; }
  .table-hero-proof { font-size:10px; margin-top:12px; }
  .table-hero-scene { padding:18px; }
  .table-hero-showcase { width:min(100%,340px); }
  .table-hero-photo { object-position:50% center; }
  .table-hero .showcase-phone [role=tabpanel]:not(#showcase-menu) { min-height:0; }
}
@media(max-width:360px) {
  .table-hero-copy { padding-inline:18px; }
  .table-hero-copy h1 { font-size:36px; }
  .table-hero-actions { gap:8px; }
  .table-hero-actions .button { padding-inline:8px; gap:6px; font-size:12px; }
  .table-hero-scene { padding:16px 12px; }
  .table-hero .showcase-phone [role=tabpanel]:not(#showcase-menu) { padding-inline:13px; }
  .table-hero .screen-categories>span { font-size:11px; padding-inline:7px; }
}

/* Keep the current product-link ribbon below the restored hero. */
.table-hero-products { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); width:min(1400px,calc(100% - 48px)); margin:0 auto; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.table-hero-products>a { min-width:0; display:grid; gap:6px; padding:24px 26px; }
.table-hero-products>a:first-child { padding-left:0; }
.table-hero-products>a:last-child { padding-right:0; }
.table-hero-products>a+a { border-left:1px solid var(--line); }
.table-hero-products strong { font-size:18px; font-weight:500; letter-spacing:-.02em; }
.table-hero-products>a>span { display:flex; justify-content:space-between; gap:8px; font-size:12px; color:var(--muted); }
.table-hero-products>a>span>span { font-size:16px; color:var(--ink); }
.table-hero-products a:hover strong { text-decoration:underline; text-underline-offset:5px; }
@media(max-width:1100px) {
  .table-hero-products>a { padding:20px 18px; }
  .table-hero-products strong { font-size:16px; }
  .table-hero-products>a>span { font-size:11px; }
}
@media(max-width:760px) {
  .table-hero-products { width:calc(100% - 40px); grid-template-columns:1fr 1fr; }
  .table-hero-products>a { padding:18px 0; }
  .table-hero-products>a:nth-child(2n) { padding-left:18px; }
  .table-hero-products>a:nth-child(odd) { padding-right:18px; border-left:0; }
  .table-hero-products>a:nth-child(n+3) { border-top:1px solid var(--line); }
  .table-hero-products strong { font-size:16px; }
  .table-hero-products>a>span { font-size:11px; line-height:1.4; }
}
@media(max-width:420px) {
  .table-hero-products>a>span>span { display:none; }
}
@media(max-width:360px) {
  .table-hero-products { width:calc(100% - 32px); }
  .table-hero-products strong { font-size:15px; }
}
