*{box-sizing:border-box}html,body{min-height:100%;margin:0}html{background:#17120e}body{color:#333;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background-color:#17120e;background-image:linear-gradient(rgba(0,0,0,.2),rgba(0,0,0,.2)),var(--business-bg);background-position:center top;background-repeat:no-repeat;background-size:cover;background-attachment:fixed}.menu-shell{width:min(1180px,100%);min-height:100vh;margin:auto;padding:max(18px,env(safe-area-inset-top)) 20px max(24px,env(safe-area-inset-bottom))}.menu-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:28px}.business-brand img{display:block;width:auto;max-width:min(240px,52vw);height:86px;object-fit:contain;border-radius:8px}.business-brand h1{margin:0;text-shadow:0 2px 8px #000}.language-switcher{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.language-button{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:7px 11px;color:#fff;text-decoration:none;background:rgba(0,0,0,.48);border:1px solid rgba(255,255,255,.4);border-radius:999px;backdrop-filter:blur(8px)}.language-button.active,.language-button:hover{background:rgba(255,255,255,.22);border-color:#fff}.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));align-items:start;gap:22px}.gallery-item{display:block;overflow:hidden;background:#fff;border:6px solid rgba(255,255,255,.96);border-radius:12px;box-shadow:0 12px 34px rgba(0,0,0,.35);transition:.2s}.gallery-item:hover{transform:translateY(-4px)}.gallery-item img{display:block;width:100%;height:auto}.unavailable{padding:32px;text-align:center;background:rgba(0,0,0,.6);border:1px solid rgba(255,255,255,.25);border-radius:14px}footer{text-align:center;margin-top:34px;padding:16px 0;font-size:13px;text-shadow:0 1px 3px #000}@media(max-width:767px){body{background-attachment:scroll}.menu-shell{padding-inline:12px}.menu-header{align-items:flex-start;margin-bottom:18px}.business-brand img{height:68px;max-width:180px}.language-button b{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.language-button{min-width:44px;justify-content:center}.gallery{grid-template-columns:1fr;gap:16px}.gallery-item{border-width:4px;border-radius:9px}}/* V2.5 responsive restaurant backgrounds */
body.theme-sand{--theme-bg:linear-gradient(145deg,#f7f1e8 0%,#e5d7c3 48%,#cbbca5 100%)}
body.theme-olive{--theme-bg:linear-gradient(145deg,#f4f0e5 0%,#d9d8bf 48%,#aeb493 100%)}
body.theme-terracotta{--theme-bg:linear-gradient(145deg,#f8eee5 0%,#e5c6ae 48%,#c78f76 100%)}
body.theme-charcoal{--theme-bg:linear-gradient(145deg,#ddd8cf 0%,#aaa49a 45%,#615e59 100%)}
body{background-image:var(--mobile-bg),var(--theme-bg)!important;background-size:cover!important;background-position:center!important;background-attachment:fixed!important;background-repeat:no-repeat!important}
@media (min-width:768px){body{background-image:var(--desktop-bg),var(--theme-bg)!important}}
/* V2.5.1: keep the selected business background visible behind the lightbox. */
body.menu-lightbox-open .menu-shell{visibility:hidden}
body.menu-lightbox-open{overflow:hidden!important}
.fancybox-bg{background:rgba(20,17,13,.30)!important}
.fancybox-is-open .fancybox-bg{opacity:1!important}

/* V2.6.1 modern PRO contact dock */
.business-dock{width:min(720px,calc(100% - 12px));margin:28px auto 8px;padding:10px;border:1px solid rgba(255,255,255,.34);border-radius:24px;background:rgba(255,255,255,.50);box-shadow:0 18px 55px rgba(40,30,20,.16);backdrop-filter:blur(20px) saturate(135%);-webkit-backdrop-filter:blur(20px) saturate(135%)}
.business-dock-primary{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px}.dock-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:9px 13px;border:1px solid rgba(50,42,35,.09);border-radius:14px;background:rgba(255,255,255,.54);color:#302b27;text-decoration:none;font-size:14px;font-weight:650;letter-spacing:-.01em;transition:transform .18s ease,background .18s ease,box-shadow .18s ease}.dock-action:hover{transform:translateY(-2px);background:rgba(255,255,255,.82);box-shadow:0 8px 20px rgba(45,35,25,.10)}.dock-icon{display:inline-flex;width:18px;height:18px;align-items:center;justify-content:center;flex:0 0 18px}.dock-icon svg{display:block;width:100%;height:100%;fill:currentColor}.business-dock-social{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px;margin-top:8px;padding-top:8px;border-top:1px solid rgba(55,45,35,.10)}.social-action{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:13px;color:#4a433d;text-decoration:none;transition:transform .18s ease,background .18s ease,color .18s ease}.social-action:hover{transform:translateY(-2px);background:rgba(255,255,255,.62);color:#171412}.social-action .dock-icon{width:20px;height:20px;flex-basis:20px}
.theme-charcoal .business-dock{background:rgba(24,24,23,.48);border-color:rgba(255,255,255,.16);box-shadow:0 18px 55px rgba(0,0,0,.22)}.theme-charcoal .dock-action{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.09);color:#f7f4ef}.theme-charcoal .dock-action:hover{background:rgba(255,255,255,.16)}.theme-charcoal .business-dock-social{border-top-color:rgba(255,255,255,.12)}.theme-charcoal .social-action{color:#f2eee8}.theme-charcoal .social-action:hover{background:rgba(255,255,255,.11);color:#fff}
@media(max-width:600px){.business-dock{width:100%;margin-top:22px;padding:8px;border-radius:20px}.business-dock-primary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.dock-action{min-width:0;padding:9px 8px;font-size:13px}.business-dock-social{gap:6px}.social-action{width:38px;height:38px}}
@media(max-width:360px){.business-dock-primary{grid-template-columns:1fr}}
/* V3.0 Smart Digital Menu + Table Service */
.digital-search{max-width:760px;margin:0 auto 18px}.digital-search input{width:100%;padding:14px 16px;border:0;border-radius:16px;background:rgba(255,255,255,.9);font-size:16px}.digital-menu{max-width:900px;margin:auto}.digital-category{margin:26px 0}.digital-category>h2{text-shadow:0 2px 8px #000}.digital-products{display:grid;gap:12px}.digital-product{display:flex;gap:14px;padding:13px;background:rgba(255,255,255,.92);color:#24201d;border-radius:16px;box-shadow:0 8px 25px rgba(0,0,0,.14)}.digital-product img{width:110px;height:100px;object-fit:cover;border-radius:12px}.product-copy{flex:1}.product-title{display:flex;justify-content:space-between;gap:12px}.product-title h3{margin:0}.product-copy p{margin:6px 0;color:#625a53}.soldout{opacity:.62}.sold-label{display:inline-block;margin-top:7px}.layout-cards .digital-products{grid-template-columns:repeat(2,minmax(0,1fr))}.layout-cards .digital-product{display:block}.layout-cards .digital-product img{width:100%;height:220px;margin-bottom:10px}.layout-list .digital-product img{display:none}.table-service{position:sticky;bottom:10px;z-index:20;max-width:720px;margin:20px auto 0;padding:10px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:rgba(20,20,20,.88);border-radius:18px;backdrop-filter:blur(12px)}.table-service div{margin-right:auto;padding:0 8px}.table-service button{padding:12px;border:0;border-radius:12px;font-weight:700;cursor:pointer}.table-service button:disabled{opacity:.5}@media(max-width:650px){.layout-cards .digital-products{grid-template-columns:1fr}.digital-product img{width:88px;height:82px}.table-service{bottom:4px}.table-service div{width:100%}.table-service button{flex:1}}

/* V3.22 responsive Smart Digital Menu */
.digital-menu.responsive-menu{display:block}
.digital-category{margin:0 0 18px;border-radius:18px;overflow:hidden;background:rgba(255,255,255,.92);box-shadow:0 8px 28px rgba(25,25,25,.08)}
.category-toggle{appearance:none;width:100%;min-height:68px;border:0;padding:0;background:transparent;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;text-align:left;cursor:pointer;color:inherit}
.category-image{width:116px;height:74px;object-fit:cover;display:block}
.category-name{padding:16px 0;font-size:clamp(1.15rem,2vw,1.5rem);font-weight:900}
.category-chevron{font-size:28px;padding:0 18px;transition:transform .2s ease}.digital-category.is-open .category-chevron{transform:rotate(180deg)}
.digital-category .digital-products[hidden]{display:none!important}
.digital-category .digital-products{padding:14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.digital-category .digital-product{display:grid;grid-template-columns:120px minmax(0,1fr);gap:14px;align-items:stretch;margin:0;padding:0;overflow:hidden;border-radius:15px;background:rgba(255,255,255,.96);border:1px solid rgba(0,0,0,.07)}
.digital-category .digital-product>img{display:block;width:120px;height:100%;min-height:118px;object-fit:cover;border-radius:0}
.digital-category .product-copy{padding:14px 14px 14px 0;min-width:0}.digital-category .digital-product:not(:has(>img)) .product-copy{padding-left:14px}
.digital-category .product-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.digital-search{position:sticky;top:8px;z-index:20;backdrop-filter:blur(8px);padding:8px 0}
@media(max-width:700px){
.digital-category{margin-bottom:12px;border-radius:15px}.category-toggle{min-height:58px;gap:10px}.category-image{width:88px;height:62px}.category-name{font-size:1.08rem;padding:12px 0}.category-chevron{font-size:24px;padding:0 13px}
.digital-category .digital-products{display:block;padding:6px 12px 10px}.digital-category .digital-product{display:grid;grid-template-columns:86px minmax(0,1fr);gap:11px;margin:0;padding:10px 0;border:0;border-bottom:1px solid rgba(0,0,0,.08);border-radius:0;background:transparent}
.digital-category .digital-product:last-child{border-bottom:0}.digital-category .digital-product>img{width:86px;height:86px;min-height:86px;border-radius:12px}.digital-category .product-copy{padding:3px 0}.digital-category .digital-product:not(:has(>img)){grid-template-columns:1fr}.digital-category .digital-product:not(:has(>img)) .product-copy{padding-left:0}
}

/* V3.23.1 category header polish */
.category-toggle{padding-left:18px;padding-right:10px;transition:background .18s ease,transform .18s ease}
.category-toggle:hover{background:rgba(255,255,255,.06)}
.category-toggle:active{transform:scale(.995)}
.category-toggle .category-image{margin-left:-18px}
.category-name{padding-left:4px;letter-spacing:.01em}
.category-chevron{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;margin-right:8px;padding:0;border:1px solid currentColor;border-radius:50%;font-size:0;opacity:.9;transition:transform .22s ease,background .18s ease}
.category-chevron::before{content:"";width:10px;height:10px;border-right:2.5px solid currentColor;border-bottom:2.5px solid currentColor;transform:rotate(45deg) translate(-2px,-2px)}
.digital-category.is-open .category-chevron{transform:rotate(180deg);background:rgba(255,255,255,.08)}
@media(max-width:700px){.category-toggle{padding-left:14px}.category-toggle .category-image{margin-left:-14px}.category-name{padding-left:3px}.category-chevron{width:34px;height:34px;margin-right:4px}}
