.menu-hero{background:var(--ink);color:white;text-align:center;padding:75px 20px 58px;position:relative;overflow:hidden}.menu-hero:before{content:"";position:absolute;width:500px;height:500px;background:radial-gradient(circle,rgba(230,50,36,.2),transparent 65%);left:50%;top:-250px;transform:translateX(-50%)}.menu-hero>*{position:relative}.menu-hero h1{font-size:clamp(60px,8vw,98px);margin:20px 0 14px}.menu-hero p{color:#bcb1a8;margin:0}.menu-wrap{padding:38px clamp(20px,7vw,105px) 90px;min-height:600px}.menu-tools{display:flex;justify-content:space-between;align-items:center;gap:25px;position:sticky;top:78px;z-index:15;background:var(--paper);padding:14px 0}.filters{display:flex;gap:7px;overflow:auto;scrollbar-width:none}.filters button{white-space:nowrap;border:1px solid #ded2c6;background:white;border-radius:30px;padding:10px 16px;font-size:12px;font-weight:700}.filters button:hover,.filters button.active{background:var(--red);border-color:var(--red);color:white}.search{min-width:240px;border:1px solid #ded2c6;background:white;border-radius:30px;padding:10px 16px;display:flex;gap:7px}.search input{border:0;outline:0;background:none;width:100%;font:12px 'DM Sans'}.menu-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:11px;border-bottom:1px solid #e6dbcf;margin:5px 0 25px}.menu-meta strong{color:var(--ink)}.menu-grid{grid-template-columns:repeat(4,1fr)}.empty-state{text-align:center;padding:80px}.empty-state span{font-size:50px}.empty-state h2{font:800 30px 'League Spartan';margin:15px 0 5px}.empty-state p{color:var(--muted)}
@media(max-width:1000px){.menu-tools{flex-direction:column;align-items:stretch}.menu-grid{grid-template-columns:repeat(3,1fr)}.search{min-width:0}.menu-tools{top:78px}}
@media(max-width:720px){.menu-hero{padding:55px 18px 45px}.menu-hero h1{font-size:62px;letter-spacing:-2px}.menu-wrap{padding:15px 12px 60px}.menu-tools{top:68px;margin:0 -2px;padding:12px 2px}.filters{order:2}.search{order:1}.menu-grid{grid-template-columns:1fr 1fr}.menu-meta{padding:0 4px}}

.menu-wrap{width:min(calc(100% - 32px),1200px);margin-inline:auto;padding-inline:0}
@media(max-width:720px){.menu-wrap{width:min(calc(100% - 32px),1200px);padding-inline:0}}
