:root{--menu-paper:#f2eee5;--menu-ink:#39382e;--menu-line:rgba(57,56,46,.32)}
body:has(.menu-page){display:flex;flex-direction:column;min-height:100dvh;background:var(--menu-paper);color:var(--menu-ink)}
.menu-page{position:relative;flex:1 0 auto;background:var(--menu-paper);overflow-x:hidden;overflow-y:visible}body:has(.menu-page) footer.subpage-footer{flex:none;margin-top:auto}
.menu-hero{min-height:320px;position:relative;display:flex;align-items:flex-start;padding:130px clamp(34px,5vw,82px) 28px;border-bottom:0}
.menu-hero-copy{position:relative;z-index:1}.menu-hero h1{margin:0;font:400 clamp(100px,14.7vw,236px)/.82 'Instrument Serif',Georgia,serif;letter-spacing:-.035em}
.menu-hero-art{position:absolute;z-index:0;right:-2vw;top:56px;width:min(54vw,820px);height:min(42vw,630px);margin:0;background:url('the-menu-top-plant-stone.webp') center/cover no-repeat;filter:saturate(.88) contrast(.98)}
.menu-index{position:relative;z-index:1;margin-top:10px;padding:18px clamp(34px,5vw,82px) 88px}.menu-note{margin:18px 0 0;font:italic 17px/1.2 'Instrument Serif',Georgia,serif}
.menu-groups{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--menu-line)}
.menu-group{min-height:380px;padding:0 clamp(20px,3vw,52px) 30px;border-right:1px solid var(--menu-line)}.menu-group:first-child{padding-left:0}.menu-group:last-child{border:0;padding-right:0}
.menu-group-heading{display:flex;align-items:center;justify-content:space-between;padding:31px 0 21px}.menu-group h2{margin:0;font:400 clamp(48px,5vw,78px)/.75 'Instrument Serif',Georgia,serif;letter-spacing:-.065em}
.menu-material{display:none}
.menu-item{position:relative;display:grid;width:100%;grid-template-columns:1fr auto;gap:4px;padding:13px 23px 12px 0;border:0;border-top:1px solid var(--menu-line);background:transparent;color:inherit;text-align:left;text-decoration:none}.menu-item strong{font:500 14px/1.2 'DM Mono',monospace;letter-spacing:.11em;text-transform:uppercase}.menu-item em{grid-column:1;margin:0;font:italic 16px/1 'Instrument Serif',Georgia,serif}.menu-item span{position:absolute;right:0;top:15px;font:400 14px/1 Georgia,serif;opacity:.5}.menu-item:not(.menu-item-pending):hover strong{opacity:.62}.menu-item-pending{opacity:.58;cursor:default}
@media(min-width:1025px){.menu-page{margin-top:108px}.menu-hero-art{top:0;height:min(49vw,760px);background-size:contain;background-position:top right}}
@media(max-width:1024px){.menu-hero{min-height:580px}.menu-hero-art{width:52vw;height:43vw}.menu-index{margin-top:0}.menu-material{display:none}.menu-group{padding:0 25px 30px}}
@media(min-width:701px) and (max-width:1024px){.menu-page{min-height:calc(100vh - 58px)}.menu-hero{min-height:650px;padding-top:180px}.menu-hero-art{right:0;top:108px;width:52vw;height:47vw;background-size:contain;background-position:top right}.menu-index{margin-top:-320px}}
/* Keep the tablet composition through narrow-desktop widths; the two-row header needs the same clearance here. */
@media(min-width:1025px) and (max-width:1120px){.menu-page{margin-top:0;min-height:calc(100vh - 58px)}.menu-hero{min-height:650px;padding-top:180px}.menu-hero-art{right:0;top:108px;width:52vw;height:47vw;background-size:contain;background-position:top right}.menu-index{margin-top:-320px}}
@media(max-width:700px){.menu-hero{min-height:460px;padding:120px 22px 88px;align-items:flex-end}.menu-hero h1{font-size:clamp(76px,23vw,116px);line-height:.82}.menu-hero-art{top:96px;right:0;width:63vw;height:76vw}.menu-index{margin-top:-60px;padding:32px 22px 52px}.menu-note{margin-bottom:28px;text-align:left;font-size:18px}.menu-groups{display:block}.menu-group{min-height:0;padding:0 0 38px;border:0}.menu-group h2{font-size:64px}.menu-material{display:block;width:110px;height:62px}.menu-item strong{font-size:12px}.menu-item em{font-size:18px}.subpage-footer{position:relative}}

/* Reversible Menu card experiment: remove menu-groups--cards from the markup to restore the original columns. */
.menu-groups--cards{gap:clamp(14px,1.8vw,28px);border-top:0;align-items:stretch}.menu-groups--cards .menu-group{box-sizing:border-box;min-height:430px;padding:0 clamp(22px,2.7vw,46px) 36px!important;border:1px solid var(--menu-line)!important;background:rgba(255,255,255,.18);box-shadow:0 12px 28px rgba(57,56,46,.055)}.menu-groups--cards .menu-group-heading{padding:34px 0 25px}.menu-groups--cards .menu-note{margin-bottom:0}
@media(max-width:700px){.menu-groups--cards{display:grid;grid-template-columns:1fr;gap:16px}.menu-groups--cards .menu-group{min-height:0;padding:0 22px 30px!important}.menu-groups--cards .menu-group-heading{padding:27px 0 21px}.menu-groups--cards .menu-group h2{font-size:64px}}
