.menu-heading{padding:40px 5% 45px}.back-link{display:inline-block;color:var(--muted);font-size:14px;margin-bottom:35px}.menu-heading .eyebrow{margin-bottom:12px}.menu-heading h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(3rem,5vw,5rem);font-weight:400;letter-spacing:-2px;line-height:1.1;margin:0}.menu-types{position:sticky;top:0;z-index:5;display:grid;grid-template-columns:repeat(4,1fr);padding:0 5%;background:var(--ink);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.menu-types a{text-align:center;font-size:16px;padding:20px 12px;border-bottom:3px solid transparent}.menu-types a[aria-current=page]{border-bottom-color:var(--lime);color:var(--lime)}.menu-types a:hover{background:#24271d}.menu-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:6%;padding:50px 5% 85px}.category-sidebar{position:sticky;top:105px;align-self:start;max-height:calc(100dvh - 135px);overflow-y:auto;padding-right:16px;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.category-sidebar .eyebrow{color:var(--muted);margin:0 0 15px}.category-sidebar nav{display:flex;flex-direction:column;gap:2px}.category-sidebar a{display:block;font-size:14px;padding:9px 12px;border-left:2px solid transparent;line-height:1.5}.category-sidebar a:hover,.category-sidebar a[aria-current=location]{color:var(--lime);background:#20231a;border-left-color:var(--lime)}.dish-section{scroll-margin-top:100px;margin-bottom:64px}.dish-section-title{display:flex;gap:22px;align-items:baseline;padding-bottom:22px;border-bottom:1px solid var(--line)}.dish-section-title .eyebrow{margin:0;color:var(--lime)}.dish-section-title h2{font-size:clamp(2rem,3.4vw,3rem);letter-spacing:-1px}.dish{padding:24px 0;border-bottom:1px solid var(--line)}.dish-top{display:flex;justify-content:space-between;align-items:baseline;gap:24px}.dish h3{font-family:Arial,Helvetica,sans-serif;font-size:18px;letter-spacing:0;font-weight:500;line-height:1.5;margin:0;overflow-wrap:anywhere}.dish-price{flex-shrink:0;color:var(--lime);font-size:16px;font-weight:700;margin:0}.dish-description{color:var(--muted);font-size:14px;line-height:1.7;max-width:750px;margin:10px 0 0}.serving-note{color:var(--lime);font-size:14px;padding:16px 20px;border-left:2px solid var(--lime);background:#20231a;margin:20px 0 0}.menu-info{border-top:1px solid var(--line);padding-top:20px;max-width:680px;font-size:14px;color:var(--muted)}.mobile-category{display:none}@media(max-width:950px){.menu-layout{grid-template-columns:190px minmax(0,1fr);gap:4%}.dish-top{gap:16px}.dish h3{font-size:16px}.dish-price{font-size:14px}}@media(max-width:700px){.menu-heading{padding:25px 6% 30px}.back-link{margin-bottom:25px}.menu-types{padding:0 3%}.menu-types a{font-size:14px;padding:17px 5px}.mobile-category{position:sticky;top:60px;z-index:4;display:flex;align-items:center;gap:15px;padding:12px 6%;background:var(--ink);border-bottom:1px solid var(--line)}.mobile-category label{font-size:14px;color:var(--muted)}.mobile-category select{width:100%;min-width:0;min-height:44px;border:1px solid var(--line);padding:8px 12px;background:var(--ink);color:var(--paper);font:inherit;font-size:16px;border-radius:0}.mobile-category select:focus-visible{outline:2px solid var(--lime);outline-offset:2px}.menu-layout{display:block;padding:30px 6% 55px}.category-sidebar{display:none}.dish-section{scroll-margin-top:150px;margin-bottom:45px}.dish-section-title{gap:14px}.dish-section-title h2{font-size:32px}.dish{padding:21px 0}.dish-top{gap:12px}.dish-price{max-width:100px;text-align:right;white-space:normal}.dish-description{font-size:14px}.menu-heading h1{font-size:52px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Carry the homepage category cards through every menu. */
.category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:36px 5% 0;gap:0}
.category-card{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:22px;min-height:160px;padding:24px;border:1px solid var(--line);margin:0 -1px -1px 0;transition:background .2s,color .2s}
.category-card .card-number{color:var(--muted);font-size:12px}
.category-name{font-family:Georgia,'Times New Roman',serif;font-size:clamp(1.35rem,2.1vw,1.85rem);line-height:1.2;padding-right:24px;overflow-wrap:anywhere}
.category-arrow{position:absolute;right:20px;top:20px;color:var(--lime);font-size:24px}
.category-card:hover,.category-card:focus-visible{background:var(--lime);color:var(--ink);z-index:1}
.category-card:hover .card-number,.category-card:focus-visible .card-number,.category-card:hover .category-arrow,.category-card:focus-visible .category-arrow{color:var(--ink)}
.menu-heading h1{letter-spacing:-.035em}.dish-description{font-size:16px}.category-sidebar a{min-height:44px;display:flex;align-items:center}
@media(max-width:950px){.category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:24px 6%}.category-card{min-height:135px;padding:18px;gap:20px}.category-name{font-size:1.3rem;padding-right:0}.category-arrow{right:15px;top:12px}.menu-heading h1{font-size:clamp(2.5rem,9vw,3.25rem)}.dish-description{font-size:16px}.dish-top{flex-wrap:wrap}.dish-price{max-width:none;text-align:left}.menu-types a{overflow-wrap:anywhere}}

/* Keep both navigation levels together, including before the first scroll. */
.menu-navigation{display:contents}
@media(max-width:700px){
 body.menu-page{--menu-navigation-height:140px;padding-top:var(--menu-navigation-height)}
 .menu-navigation{position:fixed;inset:0 0 auto;z-index:20;display:block;background:var(--ink);padding-top:env(safe-area-inset-top,0px);box-shadow:0 5px 18px #0003}
 .menu-navigation .menu-types{position:static;grid-template-columns:repeat(4,minmax(0,1fr));padding:0 3%}
 .menu-navigation .menu-types a{min-height:48px;display:flex;align-items:center;justify-content:center;padding:12px 3px;font-size:.875rem}
 .menu-navigation .mobile-category{position:static;padding:8px 5%;gap:10px}
 .mobile-category label{font-size:.875rem;flex-shrink:0}
 .mobile-category select{font-size:1rem}
 .menu-page .dish-section{scroll-margin-top:calc(var(--menu-navigation-height) + 12px)}
}

/* Compact on-demand subcategories across desktop and mobile. */
.menu-navigation{display:block;position:sticky;top:0;z-index:20;background:var(--ink)}
.menu-navigation .menu-types{position:static}
.menu-layout{display:block;max-width:1200px;margin:auto}
.subcategory-control{padding:10px 5%;border-bottom:1px solid var(--line)}
#subcategory-trigger{display:flex;align-items:center;gap:16px;width:100%;min-height:44px;border:1px solid var(--line);background:var(--ink);color:var(--paper);padding:10px 16px;font:inherit;text-align:left;cursor:pointer}
.selected-category{margin-left:auto;color:var(--lime);font-size:.875rem}
#subcategory-trigger:focus-visible,.popup-close:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
.menu-page .dish-section{scroll-margin-top:calc(var(--menu-navigation-height,150px) + 12px)}
#subcategory-dialog{width:min(540px,calc(100% - 32px));max-height:80dvh;padding:0;border:1px solid var(--line);background:var(--ink);color:var(--paper);overflow:auto;overscroll-behavior:contain}
#subcategory-dialog::backdrop{background:#000a}
.popup-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;position:sticky;top:0;background:var(--ink);border-bottom:1px solid var(--line)}
.popup-heading h2{font-size:1.75rem;letter-spacing:-.02em}
.popup-close{width:44px;height:44px;flex-shrink:0;border:1px solid var(--line);background:transparent;color:var(--paper);font-size:28px;cursor:pointer}
.popup-categories{display:flex;flex-direction:column;padding:8px 22px 22px}
.popup-categories a{display:block;padding:14px 8px;min-height:48px;border-bottom:1px solid var(--line);font-size:1rem}
.popup-categories a:hover,.popup-categories a[aria-current=location]{color:var(--lime);background:#20231a}
body:has(#subcategory-dialog[open]){overflow:hidden}
@media(max-width:700px){.menu-navigation{position:fixed}.subcategory-control{padding:8px 5%}#subcategory-trigger{gap:10px;font-size:.875rem}.selected-category{max-width:60%;overflow-wrap:anywhere}}
.product-badge{display:inline-block;border:1px solid var(--line);padding:3px 9px;font-size:14px;color:var(--paper);margin:8px 0 0}

@media(max-width:700px){body.menu-page{--menu-navigation-height:185px}}

/* Consistent product names in both languages; source titles remain editable. */
.dish h3{text-transform:lowercase}
