.menu-page{min-height:100vh;background:var(--cream,#f7f6f1);color:var(--ink,#20251f)}
.menu-header{display:flex;align-items:center;gap:24px;max-width:1180px;margin:0 auto;padding:28px 28px 20px;border-bottom:1px solid var(--line,#deded4)}
.menu-brand{display:flex;align-items:center;justify-content:center;flex:0 0 150px;min-height:58px;color:var(--ink);font-family:Georgia,serif;font-size:24px;font-weight:700;text-decoration:none;text-align:center}
.menu-brand img{display:block;max-width:150px;max-height:64px;object-fit:contain}
.menu-header-copy{flex:1;min-width:0}.menu-eyebrow{font-size:10px;letter-spacing:2px;color:var(--muted,#69736b)}
.menu-header h1{margin:5px 0 0;font-size:clamp(25px,4vw,38px);font-weight:500}
.menu-print{border:1px solid var(--line,#deded4);border-radius:8px;padding:11px 16px;background:var(--paper,#fff);color:var(--ink);font:inherit;cursor:pointer}
.menu-main{max-width:1180px;margin:0 auto;padding:20px 28px 42px}
.menu-gender{display:flex;width:fit-content;margin:0 auto 20px;padding:4px;border:1px solid var(--line,#deded4);border-radius:24px;background:var(--paper,#fff)}
.menu-gender a{min-width:105px;padding:9px 18px;border-radius:20px;color:var(--ink);text-align:center;text-decoration:none;font-size:13px}
.menu-gender a[aria-current=page]{background:var(--green,#304f40);color:#fff}
.menu-price-heading{display:grid;grid-template-columns:minmax(0,1fr) 100px 100px;gap:14px;padding:8px 14px;color:var(--muted,#69736b);font-size:11px;text-align:right}
.menu-price-heading span:first-child{text-align:left}
.menu-category{margin:0 0 18px;padding:18px 20px;background:var(--paper,#fff);border:1px solid var(--line,#deded4);border-radius:14px;break-inside:avoid}
.menu-category h2{margin:0 0 8px;padding-bottom:10px;border-bottom:1px solid var(--line,#deded4);font-family:var(--heading-font,Georgia,serif);font-size:20px;font-weight:500}
.menu-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:34px}
.menu-item{display:grid;grid-template-columns:minmax(0,1fr) 86px 86px;align-items:start;gap:14px;padding:11px 0;border-bottom:1px solid #e9e8e1;font-size:13px}
.menu-item:nth-last-child(-n+2){border-bottom:0}.menu-item-name,.menu-combo-name{min-width:0;overflow-wrap:anywhere}
.menu-price,.menu-member-price{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}
.menu-member-price{color:var(--green,#304f40);font-weight:600}
.menu-combo small{display:block;margin-top:4px;color:var(--muted,#69736b);font-size:11px;line-height:1.45}
.menu-empty{text-align:center;padding:48px 20px;color:var(--muted,#69736b)}
.menu-footer{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:18px 4px;color:var(--muted,#69736b);font-size:11px}
.menu-footer a{color:inherit}
.indicative-menu-note{display:block;margin-top:4px;color:#617267;font-size:10px;font-weight:400;line-height:1.35}
@media(max-width:700px){.menu-header{gap:12px;padding:18px 16px}.menu-brand{flex-basis:74px;min-height:44px;font-size:16px}.menu-brand img{max-width:74px;max-height:45px}.menu-eyebrow{font-size:9px}.menu-header h1{font-size:23px}.menu-print{padding:9px 10px;font-size:12px}.menu-main{padding:16px 14px 32px}.menu-price-heading{grid-template-columns:minmax(0,1fr) 70px 70px;gap:8px;padding:8px 10px}.menu-items{grid-template-columns:1fr}.menu-item,.menu-price-heading{grid-template-columns:minmax(0,1fr) 70px 70px;gap:8px}.menu-item{padding:10px 0}.menu-item:nth-last-child(-n+2){border-bottom:1px solid #e9e8e1}.menu-item:last-child{border-bottom:0}.menu-category{padding:15px 14px}.menu-category h2{font-size:18px}}
@media print{@page{size:A4;margin:12mm}.menu-page{background:#fff;color:#111;font-size:10pt}.menu-header{max-width:none;padding:0 0 12px}.menu-brand{flex-basis:120px}.menu-brand img{max-height:48px}.menu-header h1{font-size:24pt}.menu-print,.menu-gender{display:none}.menu-main{max-width:none;padding:14px 0 0}.menu-price-heading{grid-template-columns:minmax(0,1fr) 76px 76px;padding:6px 10px;font-size:9pt}.menu-items{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px}.menu-item{grid-template-columns:minmax(0,1fr) 64px 64px;gap:8px;padding:7px 0;font-size:9pt}.menu-category{margin-bottom:10px;padding:12px;border-color:#ddd;box-shadow:none;break-inside:avoid}.menu-category h2{font-size:14pt}.menu-combo small{font-size:8pt}.menu-footer{font-size:8pt}}
