/* Mobile QR ordering storefront: applied only on phone-sized screens. */
.qr-table-banner { display:flex; align-items:center; gap:9px; margin:0 0 12px; padding:10px 13px; border:1px solid #a3ae82; border-radius:12px; background:#46533b; color:#fff4df; font-size:13px; font-weight:700; }
.qr-table-banner[hidden] { display:none; }
.qr-table-banner > span:first-child { color:#e5c16c; font-size:11px; }
.qr-table-banner b { margin-left:auto; color:#f0d68d; font-size:11px; letter-spacing:.04em; }

@media (max-width:700px) {
  body.table-qr-visit .hero,
  body.table-qr-visit .benefits { display:none !important; }

  .site-header { position:sticky; top:0; z-index:50; }
  .header-inner { width:100%; height:64px !important; padding:0 14px; gap:9px; }
  .brand { min-width:0; gap:8px; }
  .brand-symbol { width:37px; height:37px; flex:0 0 37px; font-size:25px; }
  .brand strong { max-width:115px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; letter-spacing:1.5px; }
  .brand small { margin-top:2px; font-size:7px; }
  .main-nav { display:none !important; }
  .header-actions { margin-left:auto; gap:7px; }
  .account-trigger { min-width:0; height:38px; justify-content:center; gap:4px; padding:0 9px !important; font-size:10px !important; }
  .account-trigger > span:first-child { display:none; }
  #account-trigger-label { display:inline !important; font-size:10px !important; }
  .cart-trigger-label { display:none !important; }
  .cart-trigger { width:44px; height:40px; justify-content:center; gap:3px; padding:4px !important; }
  .cart-trigger b { width:19px; height:19px; }

  .menu-section.wrap { width:100%; max-width:none; margin:0; padding:15px 14px 90px; }
  .table-qr-visit .menu-section.wrap { padding-top:12px; }
  .qr-table-banner { margin-bottom:12px; min-height:42px; }
  .menu-heading { align-items:center; gap:10px; margin-bottom:12px; }
  .menu-heading .eyebrow { color:#d9c08c !important; font-size:9px; }
  .menu-heading h2 { margin:4px 0 0 !important; color:#fff1d8 !important; font-size:25px !important; line-height:1.12; }
  .menu-search { min-width:104px; max-width:43%; min-height:42px; padding:0 9px !important; border:1px solid #95754a !important; border-radius:22px; background:#36271c !important; }
  .menu-search input { min-width:0; color:#fff4df !important; font-size:12px !important; }
  .menu-search input::placeholder { color:#d9c5a6 !important; opacity:1; }

  .menu-category-rail { position:sticky; top:64px; z-index:40; display:block !important; min-height:0 !important; margin:0 -14px 13px; padding:8px 12px 9px !important; overflow:hidden !important; border:0 !important; border-bottom:1px solid #9d7744 !important; border-radius:0 !important; background:#39291e !important; box-shadow:0 7px 15px #1d130b38; }
  .menu-category-rail > .rail-title,
  .menu-category-rail > .mobile-category-picker,
  .menu-category-rail > .install-app-trigger { display:none !important; }
  .menu-category-rail > .category-tabs { display:flex !important; gap:8px; width:100%; margin:0; padding:0 1px 4px; overflow-x:auto; overflow-y:hidden; border:0 !important; scrollbar-width:none; overscroll-behavior-x:contain; scroll-snap-type:x proximity; }
  .menu-category-rail > .category-tabs::-webkit-scrollbar { display:none; }
  .category-tabs .category-tab { display:flex !important; flex:0 0 auto; align-items:center; justify-content:center; gap:7px; min-height:40px; padding:8px 13px !important; border:1px solid #94734a !important; border-radius:24px !important; background:#59412d !important; color:#fff0d2 !important; font-size:12px !important; font-weight:700; white-space:nowrap; scroll-snap-align:center; }
  .category-tabs .category-tab.active { border-color:#f0d388 !important; background:linear-gradient(135deg,#e8ca7c,#c2954c) !important; color:#2c2117 !important; box-shadow:0 3px 10px #140d0840; }
  .category-tabs .category-tab span { display:inline-grid; min-width:19px; height:19px; place-items:center; padding:0 5px; border-radius:12px; background:#ead9b9 !important; color:#382719 !important; font-size:9px !important; }
  .category-tabs .category-tab.active span { background:#506044 !important; color:#fff8e9 !important; }

  .menu-layout { display:block !important; }
  .menu-main { min-width:0; }
  .featured-menu { margin:0 0 16px !important; padding:14px !important; border:1px solid #8a6d48 !important; border-radius:17px !important; background:linear-gradient(145deg,#57402c,#443222) !important; }
  .featured-heading { align-items:end; margin-bottom:9px !important; }
  .featured-heading .eyebrow { color:#e2c782 !important; }
  .featured-heading h3 { margin:3px 0 0 !important; color:#fff1d8 !important; font-size:20px !important; }
  .featured-note { display:none !important; }
  .featured-products { display:flex !important; grid-template-columns:none !important; gap:11px !important; margin:0 -2px; padding:0 2px 5px; overflow-x:auto; scrollbar-width:none; scroll-snap-type:x mandatory; }
  .featured-products::-webkit-scrollbar { display:none; }
  .featured-card { display:flex !important; flex:0 0 min(77vw,310px); flex-direction:column; overflow:hidden; border:1px solid #a48250 !important; border-radius:13px !important; background:#60472f !important; scroll-snap-align:start; }
  .featured-card img { display:block !important; width:100% !important; height:clamp(175px,57vw,225px) !important; object-fit:cover !important; }
  .featured-card > span { display:grid; gap:4px; padding:10px 12px 12px !important; }
  .featured-card small { color:#e7d1a9 !important; font-size:10px !important; }
  .featured-card b { color:#fff1d8 !important; font-size:16px !important; }
  .featured-card em { color:#f0ce79 !important; font-size:14px !important; }

  .product-category-heading { margin:17px 0 9px !important; padding-bottom:7px; border-bottom:1px solid #9e7c50; color:#f0d28b !important; }
  .product-category-heading h3 { color:#fff1d8 !important; }
  .product-category-products { display:grid !important; grid-template-columns:minmax(0,1fr) !important; gap:13px !important; }
  .product-card { display:grid !important; grid-template-columns:minmax(0,1fr) !important; overflow:hidden; border:1px solid #9d784a !important; border-radius:15px !important; background:#57402c !important; }
  .product-card > .product-art { grid-column:1 !important; grid-row:1 !important; width:100% !important; height:clamp(190px,64vw,265px) !important; min-height:0 !important; aspect-ratio:16/10; }
  .product-card > .product-art img { display:block; width:100% !important; height:100% !important; min-height:0 !important; object-fit:cover !important; }
  .product-card > .product-info { grid-column:1 !important; grid-row:2 !important; min-width:0; padding:13px !important; }
  .product-title-row h3 { color:#fff2df !important; font-size:18px !important; }
  .product-price { color:#f2cf78 !important; font-size:16px !important; }
  .product-category,.product-desc { color:#ead7b8 !important; }
  .product-controls select { min-height:43px; border-color:#aa8c5d !important; background:#efe0c5 !important; color:#302317 !important; }
  .product-card .buy-now-button,.product-card .add-button { min-height:44px; }
  .quick-cart-dock { bottom:max(10px,env(safe-area-inset-bottom)) !important; }
}

@media (min-width:701px) {
  .qr-table-banner { max-width:1160px; margin:12px auto; }
}
