/* Product browsing: the whole card opens details; no quick-add control. */
.menu-home{background:#f8fafc;color:#294356}
.menu-home .restaurant-header{min-height:180px;background:#f0f6fa;border-bottom:1px solid #e6edf3}
.menu-home .restaurant-header-inner,.menu-home .home-content{box-sizing:border-box;width:100%;max-width:1200px;margin:0 auto;padding-left:28px;padding-right:28px}
.menu-home .restaurant-header-inner{min-height:180px;gap:22px}
.menu-home .restaurant-logo{width:92px;height:92px;flex:0 0 92px;border:4px solid white;border-radius:22px;box-shadow:0 4px 20px #29435612}
.menu-home .restaurant-logo img{width:100%;height:100%;border-radius:17px;object-fit:cover}
.menu-home .restaurant-identity{min-width:0}.menu-home .restaurant-identity h1{margin:0 0 10px;font-size:32px;font-weight:700;line-height:1.2;letter-spacing:-.035em;overflow-wrap:anywhere;color:#294356}
.menu-home .restaurant-status{font-size:12px;font-weight:600;gap:6px}
.menu-home .service-strip{display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center;margin:0;padding:20px 0;border-bottom:1px solid #e5edf3;font-size:12px;line-height:1.6;color:#7c91a2}.menu-home .service-strip strong{color:#406279;font-weight:600}
.menu-home .menu-toolbar{margin:24px 0 18px}.menu-home .menu-search{min-height:48px;border:1px solid #dfe8f0;border-radius:12px;box-shadow:none;background:#fff}.menu-home .menu-search #search{height:48px;min-width:0;font-size:14px}.menu-home .menu-search svg{width:19px;height:19px}
.menu-home .home-menu-links{gap:16px;align-items:center}.menu-home .home-categories{gap:8px;max-width:100%;min-width:0;padding:2px 0 8px;scrollbar-width:thin}.menu-home .home-categories button{flex-shrink:0;min-height:40px;padding:10px 18px;border:1px solid #dfe8f0;border-radius:10px;background:#fff;font-size:12px;font-weight:600;white-space:nowrap;color:#607d92;box-shadow:none}.menu-home .home-categories button.active{background:var(--brand);border-color:var(--brand);color:#fff}
.menu-home .home-loyalty{flex-shrink:0;border-radius:10px;font-size:11px}.menu-home .menu-products-title{margin:28px 0 18px;font-size:23px;letter-spacing:-.03em;color:#294356}.menu-home .menu-products-title:after{background:#e1eaf1}
.menu-home .home-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:0}
.menu-home .home-product{box-sizing:border-box;position:relative;display:flex;align-items:stretch;gap:20px;width:100%;max-width:none;min-width:0;min-height:174px;margin:0;padding:20px;border:1px solid #e1e9f0;border-radius:14px;background:#fff;box-shadow:none;transition:border-color .16s,box-shadow .16s}
.menu-home .home-product[hidden]{display:none!important}
.menu-home .home-product-copy{display:flex;flex-direction:column;justify-content:flex-start;flex:1;min-width:0;padding:0;gap:0}
.menu-home .home-product-copy h3{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin:0 0 8px;color:#294356;font-size:16px;font-weight:650;line-height:1.45;letter-spacing:-.015em}
.menu-home .home-product-copy>p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin:0;color:#8296a7;font-size:12px;line-height:1.65}
.menu-home .home-product-bottom{margin-top:auto;padding-top:14px}.menu-home .home-product-bottom strong{color:#294356;font-size:17px;font-weight:650;line-height:1.3;letter-spacing:-.02em}.menu-home .home-product-bottom small{display:block;margin-top:5px;font-size:10px;line-height:1.5;color:#5b917a}
.menu-home .home-product-image{position:static;display:grid;place-items:center;flex:0 0 132px;width:132px;min-width:0;max-width:132px;height:132px;min-height:0;align-self:center;overflow:hidden;border-radius:11px;background:#f5f8fa}.menu-home .home-product-image img{display:block;width:100%;height:100%;min-height:0;max-height:none;aspect-ratio:1;object-fit:cover;border-radius:11px}.menu-home .home-product-image>span{font-size:40px}
.menu-home .home-product-meta{margin:0 0 8px}.menu-home .featured-flag{display:inline-block;margin:0;padding:3px 7px;background:#fdf5e6;border:0;border-radius:5px;color:#a67823;font-size:9px;font-weight:600;line-height:1.4}
.menu-home .home-product .product-open{position:absolute;inset:0;z-index:1;display:block;width:100%;height:100%;min-width:0;min-height:0;margin:0;padding:0;border:0;border-radius:14px;background:transparent;box-shadow:none;cursor:pointer;appearance:none}
.menu-home .home-product .product-open:disabled{background:transparent;opacity:1;cursor:default}.menu-home .home-product .product-open:focus-visible{outline:3px solid var(--brand);outline-offset:3px}.menu-home .product-availability{margin-top:8px;color:#a07145;font-size:10px;line-height:1.5}.menu-home .product-availability[hidden]{display:none}
.menu-home .recent-order-banner{min-height:72px;margin:20px 0 0;padding:16px 18px;border:1px solid #d7e8f3;border-radius:12px;box-shadow:none}.menu-home .recent-order-banner strong{font-size:14px}.menu-home .recent-order-banner small{font-size:11px;line-height:1.6}
.menu-home .home-store-details{margin-top:32px;border:1px solid #e1e9f0;border-radius:13px;background:#fff}.menu-home .home-bottom-note{margin-bottom:20px;font-size:11px}.menu-home .home-content{padding-bottom:120px}
.menu-home .home-bottom-nav{box-sizing:border-box;min-height:76px;gap:70px;border-top:1px solid #e1e9f0;background:#fffffffa;box-shadow:0 -4px 20px #29435606}.menu-home .home-cart-button{min-height:46px;border-radius:11px;font-size:13px}.menu-home .home-bottom-nav>a{font-size:10px}
@media(hover:hover){.menu-home .home-product:has(.product-open:not(:disabled)):hover{border-color:#c6d8e6;box-shadow:0 5px 18px #29435608}}
@media(max-width:850px){.menu-home .home-products{grid-template-columns:1fr}.menu-home .home-menu-links{flex-wrap:wrap}.menu-home .home-categories{flex:1 1 100%}.menu-home .home-product-image{flex-basis:128px;width:128px;max-width:128px;height:128px}}
@media(max-width:600px){.menu-home .restaurant-header,.menu-home .restaurant-header-inner{min-height:150px}.menu-home .restaurant-header-inner,.menu-home .home-content{padding-left:18px;padding-right:18px}.menu-home .restaurant-header-inner{gap:16px}.menu-home .restaurant-logo{width:74px;height:74px;flex-basis:74px;border-width:3px;border-radius:19px}.menu-home .restaurant-logo img{border-radius:15px}.menu-home .restaurant-identity h1{font-size:25px}.menu-home .restaurant-status{font-size:11px}.menu-home .service-strip{gap:8px 16px;padding:16px 0;font-size:11px}.menu-home .menu-toolbar{margin:20px 0 14px}.menu-home .menu-search,.menu-home .menu-search #search{height:46px;min-height:46px}.menu-home .menu-search #search{font-size:13px}.menu-home .home-categories button{min-height:38px;padding:8px 14px;font-size:11px}.menu-home .home-loyalty{font-size:10px}.menu-home .menu-products-title{margin:24px 0 15px;font-size:21px}.menu-home .home-products{gap:12px}.menu-home .home-product{min-height:142px;gap:14px;padding:16px;border-radius:12px}.menu-home .home-product-copy h3{font-size:14px;line-height:1.4;margin-bottom:6px}.menu-home .home-product-copy>p{font-size:11px;line-height:1.6}.menu-home .home-product-bottom{padding-top:12px}.menu-home .home-product-bottom strong{font-size:16px}.menu-home .home-product-bottom small{font-size:9px}.menu-home .home-product-image{flex-basis:100px;width:100px;max-width:100px;height:100px;border-radius:9px}.menu-home .home-product-image img{border-radius:9px}.menu-home .home-bottom-nav{gap:12px;min-height:72px;padding-bottom:max(10px,env(safe-area-inset-bottom))}.menu-home .home-cart-button{min-height:44px;font-size:12px}.menu-home .home-store-details summary{padding:15px}.menu-home .home-content{padding-bottom:110px}}
@media(max-width:350px){.menu-home .restaurant-header-inner,.menu-home .home-content{padding-left:14px;padding-right:14px}.menu-home .home-product{gap:12px;padding:13px}.menu-home .home-product-image{flex-basis:86px;width:86px;max-width:86px;height:86px}.menu-home .home-product-copy h3{font-size:13px}.menu-home .home-bottom-nav{gap:5px}.menu-home .home-cart-button{font-size:11px;padding-left:12px;padding-right:12px}}
.menu-home .home-categories button:focus-visible,.menu-home .home-bottom-nav :is(a,button):focus-visible{outline:3px solid var(--brand);outline-offset:3px}
.menu-home .home-no-results{padding:25px 20px;border:1px dashed #d6e2eb;border-radius:12px;background:#fff;color:#7c91a2;font-size:13px;line-height:1.7;text-align:center}
@media(max-width:600px){.menu-home .menu-search #search{font-size:16px}}
