.menu-page { background: var(--color-warm-ivory); }
.menu-page__twelve-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:var(--space-6); }
.menu-page__hero { position:relative; min-height:46rem; display:grid; align-items:end; overflow:hidden; }
.menu-page__hero-media { position:absolute; inset:0; width:100%; min-width:0; }
.menu-page__hero-media img { width:100%; height:100%; object-fit:cover; object-position:center; }
.menu-page__hero-grid { position:relative; z-index:1; display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:var(--space-6); padding-block:var(--space-9); }
.menu-page__hero-panel { grid-column:2 / span 6; min-width:0; display:flex; flex-direction:column; align-items:flex-start; gap:var(--space-4); padding:clamp(2rem,5vw,4rem); background:rgb(246 241 231 / 94%); }
.menu-page__hero-panel > * { min-width:0; margin:0; }
.menu-page__hero-panel .intro { max-width:48rem; }
.menu-page__hero-action { min-height:2.75rem; }
.menu-page__season-note { color:var(--color-muted-ink); font-size:var(--text-meta); font-weight:700; letter-spacing:.12em; line-height:var(--leading-meta); text-transform:uppercase; }
.menu-page__running-line { width:100%; padding-block:var(--space-3); border-block:1px solid var(--color-juniper-green); }
.menu-page__hero-caption { position:relative; z-index:1; margin:0; padding-block:var(--space-4); color:var(--color-paper-white); font-size:var(--text-meta); font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.menu-page__produce,.menu-page__signatures,.menu-page__plate,.menu-page__desserts,.menu-page__interiors,.menu-page__pathways,.menu-page__contact { padding-block:var(--space-10); }
.menu-page__produce-intro { grid-column:2 / span 6; min-width:0; }
.menu-page__produce-intro .intro { max-width:42rem; }
.menu-page__principles { grid-column:2 / span 10; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--space-6); min-width:0; }
.menu-page__principle { min-width:0; border-top:1px solid var(--color-border); padding-top:var(--space-5); }
.menu-page__principle > :last-child { margin-bottom:0; }
.menu-page__branch-rule { display:block; width:4rem; height:1px; margin-bottom:var(--space-4); background:var(--color-juniper-green); }
.menu-page__principle-label,.menu-page__representative-note { margin:0 0 var(--space-4); padding:var(--space-2) var(--space-3); width:max-content; max-width:100%; background:var(--color-limestone); color:var(--color-deep-juniper); font-size:var(--text-meta); font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.menu-page__signature-board { grid-column:2 / span 10; min-width:0; }
.menu-page__board-heading { max-width:52rem; }
.menu-page__dish-groups { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--space-6); margin-top:var(--space-6); }
.menu-page__dish-group { min-width:0; padding-inline:var(--space-5); border-inline-start:1px solid var(--color-border); }
.menu-page__dish-group:first-child { padding-inline-start:0; border-inline-start:0; }
.menu-page__dish-group > :last-child { margin-bottom:0; }
.menu-page__dish-list { display:flex; flex-direction:column; gap:var(--space-4); }
.menu-page__dish { display:grid; grid-template-columns:minmax(0,1fr) max-content; gap:var(--space-3); align-items:start; min-width:0; padding-bottom:var(--space-4); border-bottom:1px solid var(--color-border); }
.menu-page__dish > div,.menu-page__dish strong { min-width:0; }
.menu-page__dish h4,.menu-page__dessert-row h3 { margin-bottom:var(--space-2); font-family:var(--font-heading); font-size:1.45rem; letter-spacing:-.01em; text-transform:none; }
.menu-page__dish p,.menu-page__dessert-row p { margin:0; color:var(--color-muted-ink); font-size:.875rem; line-height:1.55; }
.menu-page__dish strong,.menu-page__dessert-row strong,.menu-page__cocktail strong { font-variant-numeric:tabular-nums; white-space:nowrap; }
.menu-page__seasonal-italic { color:var(--color-juniper-green); font-size:1.05rem; }
.menu-page__seasonal-marker { margin:var(--space-4) 0 0; color:var(--color-persimmon); font-size:var(--text-meta); font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.menu-page__service-note { color:var(--color-muted-ink); font-size:var(--text-utility); }
.menu-page__plate-grid,.menu-page__interior-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:var(--space-6); align-items:start; }
.menu-page__plate-figure { grid-column:1 / span 7; min-width:0; }
.menu-page__plate-figure img { width:100%; aspect-ratio:4 / 5; object-fit:cover; }
.menu-page__plate-copy { grid-column:8 / span 4; min-width:0; padding-top:var(--space-7); }
.menu-page__plate-copy > :last-child { margin-bottom:0; }
.menu-page__dish-title { margin-bottom:var(--space-3); color:var(--color-juniper-green); font-family:var(--font-heading); font-size:1.5rem; font-style:italic; line-height:1.2; }
.menu-page__plate-notes { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-5); margin-block:var(--space-6); }
.menu-page__plate-notes article { min-width:0; }
.menu-page__plate-notes span { display:grid; place-items:center; width:2rem; height:2rem; margin-bottom:var(--space-3); border:1px solid var(--color-juniper-green); border-radius:50%; font-size:var(--text-meta); font-weight:700; }
.menu-page__plate-notes h3 { font-size:1.55rem; }
.menu-page__plate-notes p { font-size:.875rem; }
.menu-page__kitchen-link { display:flex; flex-direction:column; gap:var(--space-2); }
.menu-page__kitchen-link span { color:var(--color-muted-ink); font-size:var(--text-meta); font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.menu-page__dessert-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:var(--space-6); align-items:start; }
.menu-page__dessert-intro { grid-column:1 / span 4; min-width:0; padding:var(--space-6); background:var(--color-juniper-mist); }
.menu-page__dessert-intro > :last-child { margin-bottom:0; }
.menu-page__dessert-list { grid-column:5 / span 8; min-width:0; }
.menu-page__dessert-row { display:grid; grid-template-columns:minmax(0,1fr) max-content; gap:var(--space-4); align-items:start; padding-block:var(--space-5); border-top:1px solid var(--color-border); }
.menu-page__dessert-row > div,.menu-page__dessert-row strong { min-width:0; }
.menu-page__dessert-pull { margin-top:var(--space-5); color:var(--color-juniper-green); font-size:1.45rem; line-height:1.25; }
.menu-page__cocktails { padding-block:var(--space-10); background:var(--color-juniper-green); color:var(--color-warm-ivory); }
.menu-page__cocktail-panel { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:var(--space-6); padding:clamp(3rem,6vw,4rem); }
.menu-page__cocktail-panel h2,.menu-page__cocktail-panel h3 { color:inherit; }
.menu-page__cocktail-intro { grid-column:2 / span 5; min-width:0; }
.menu-page__cocktail-intro .intro { max-width:40rem; }
.menu-page__cocktail-list { grid-column:2 / span 10; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--space-6); min-width:0; }
.menu-page__cocktail { min-width:0; padding-top:var(--space-5); border-top:1px solid rgb(246 241 231 / 45%); }
.menu-page__cocktail--persimmon { border-top-color:var(--color-persimmon); }
.menu-page__cocktail h3 { display:flex; justify-content:space-between; gap:var(--space-3); font-size:1.8rem; }
.menu-page__cocktail h3 strong { color:var(--color-sky-blue); font-family:var(--font-body); font-size:var(--text-utility); letter-spacing:0; }
.menu-page__cocktail p { margin-bottom:0; font-size:.9375rem; }
.menu-page__cocktail a,.menu-page__lounge-link { color:var(--color-warm-ivory); }
.menu-page__evening-action { grid-column:2 / span 3; min-width:0; justify-self:start; }
.menu-page__interior-figure { grid-column:1 / span 7; min-width:0; margin-left:min(0px, calc((100vw - var(--container-max)) / 2)); }
.menu-page__interior-figure img { width:100%; aspect-ratio:16 / 9; object-fit:cover; }
.menu-page__interior-copy { grid-column:8 / span 4; min-width:0; }
.menu-page__interior-copy > :last-child { margin-bottom:0; }
.menu-page__text-link { color:var(--color-juniper-green); font-weight:700; }
.menu-page__spatial-cues { grid-column:8 / span 4; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--space-5); min-width:0; }
.menu-page__spatial-cues article { min-width:0; border-top:1px solid var(--color-border); padding-top:var(--space-4); }
.menu-page__spatial-cues article:last-child { border-top-color:var(--color-deep-aubergine); }
.menu-page__spatial-cues p:last-child { margin-bottom:0; font-size:.875rem; }
.menu-page__lounge { padding-block:var(--space-10); background:var(--color-deep-aubergine); color:var(--color-warm-ivory); }
.menu-page__lounge-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:var(--space-6); }
.menu-page__lounge h2,.menu-page__lounge h3 { color:inherit; }
.menu-page__lounge-lead { grid-column:2 / span 6; min-width:0; }
.menu-page__lounge-lead .intro { max-width:46rem; }
.menu-page__physical-panel { grid-column:8 / span 4; min-width:0; align-self:start; padding:var(--space-5); border:1px solid rgb(246 241 231 / 42%); background:rgb(255 253 248 / 7%); }
.menu-page__physical-panel > :last-child { margin-bottom:0; }
.menu-page__physical-label { color:var(--color-sky-blue); font-size:var(--text-meta); font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.menu-page__rituals { grid-column:2 / span 10; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--space-6); min-width:0; }
.menu-page__rituals article { min-width:0; padding-top:var(--space-5); border-top:1px solid rgb(246 241 231 / 42%); }
.menu-page__rituals article > :last-child { margin-bottom:0; }
.menu-page__lounge-link { grid-column:2 / span 6; min-width:0; font-weight:700; }
.menu-page__pathways-intro { grid-column:2 / span 6; min-width:0; }
.menu-page__pathways-intro .intro { max-width:52rem; }
.menu-page__pathway-grid { grid-column:2 / span 10; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:var(--space-5); min-width:0; }
.menu-page__pathway { display:flex; flex-direction:column; gap:var(--space-3); min-width:0; min-height:10rem; padding-top:var(--space-4); border-top:1px solid var(--color-juniper-green); color:var(--color-deep-juniper); text-decoration:none; }
.menu-page__pathway span { color:var(--color-muted-ink); font-size:var(--text-meta); font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.menu-page__pathway strong { font-family:var(--font-heading); font-size:1.5rem; font-weight:600; line-height:1.12; }
.menu-page__pathway:hover { color:var(--color-persimmon); text-decoration:underline; }
.menu-page__contact-shell { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); }
.menu-page__contact-panel { grid-column:2 / span 9; display:grid; grid-template-columns:repeat(9,minmax(0,1fr)); gap:var(--space-6); min-width:0; padding:clamp(1.5rem,4vw,3rem); border:1px solid var(--color-border); border-radius:var(--radius-panel); background:var(--color-paper-white); box-shadow:inset 5px 0 0 var(--color-sky-blue); }
.menu-page__contact-intro { grid-column:1 / span 5; min-width:0; }
.menu-page__contact-intro > :last-child { margin-bottom:0; }
.menu-page__contact-details { grid-column:6 / span 4; display:flex; flex-direction:column; gap:var(--space-4); min-width:0; }
.menu-page__contact-details > div { display:grid; grid-template-columns:8rem minmax(0,1fr); gap:var(--space-3); min-width:0; }
.menu-page__contact-details span { color:var(--color-muted-ink); font-size:var(--text-meta); font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.menu-page__contact-details a,.menu-page__contact-details p { min-width:0; margin:0; overflow-wrap:anywhere; }
.menu-page__contact-details small { grid-column:2; color:var(--color-muted-ink); }
.menu-page__contact-link { align-self:flex-start; min-height:2.75rem; display:flex; align-items:center; color:var(--color-juniper-green); font-weight:700; }
@media (max-width:68.75rem){ .menu-page__hero{min-height:auto;display:flex;flex-direction:column;} .menu-page__hero-media{position:relative;order:2;aspect-ratio:4/3;} .menu-page__hero-grid{order:1;padding-block:var(--space-8);} .menu-page__hero-panel{grid-column:1 / -1;} .menu-page__hero-caption{order:3;color:var(--color-muted-ink);} .menu-page__dish-groups{grid-template-columns:repeat(2,minmax(0,1fr));} .menu-page__dish-group:nth-child(3){grid-column:1 / -1;} .menu-page__dish-group:nth-child(3){padding-inline-start:0;border-inline-start:0;} .menu-page__cocktail-list{grid-template-columns:repeat(2,minmax(0,1fr));} .menu-page__cocktail:last-child{grid-column:1 / -1;} }
@media (max-width:63.9375rem){ .menu-page__produce,.menu-page__signatures,.menu-page__plate,.menu-page__desserts,.menu-page__interiors,.menu-page__pathways,.menu-page__contact,.menu-page__cocktails,.menu-page__lounge{padding-block:var(--space-9);} .menu-page__produce-intro,.menu-page__pathways-intro{grid-column:1 / span 5;} .menu-page__principles,.menu-page__signature-board,.menu-page__pathway-grid{grid-column:1 / -1;} .menu-page__principles{grid-template-columns:repeat(2,minmax(0,1fr));} .menu-page__principle:last-child{grid-column:1 / -1;} .menu-page__plate-grid,.menu-page__interior-grid{grid-template-columns:repeat(6,minmax(0,1fr));} .menu-page__plate-figure,.menu-page__interior-figure{grid-column:1 / -1;margin-left:0;} .menu-page__plate-copy,.menu-page__interior-copy,.menu-page__spatial-cues{grid-column:1 / -1;padding-top:0;} .menu-page__spatial-cues{grid-template-columns:repeat(3,minmax(0,1fr));} .menu-page__dessert-grid{grid-template-columns:repeat(6,minmax(0,1fr));} .menu-page__dessert-intro,.menu-page__dessert-list{grid-column:1 / -1;} .menu-page__cocktail-panel,.menu-page__lounge-grid{grid-template-columns:repeat(6,minmax(0,1fr));} .menu-page__cocktail-intro,.menu-page__cocktail-list,.menu-page__evening-action,.menu-page__lounge-lead,.menu-page__physical-panel,.menu-page__rituals,.menu-page__lounge-link{grid-column:1 / -1;} .menu-page__lounge-lead{grid-row:1;} .menu-page__physical-panel{grid-row:2;} .menu-page__rituals{grid-row:3;grid-template-columns:repeat(2,minmax(0,1fr));} .menu-page__rituals article:last-child{grid-column:1 / -1;} .menu-page__lounge-link{grid-row:4;} .menu-page__pathway-grid{grid-template-columns:repeat(2,minmax(0,1fr));} .menu-page__contact-panel{grid-column:1 / -1;} }
@media (max-width:56.25rem){ .menu-page__dessert-grid{gap:var(--space-5);} .menu-page__contact-panel{grid-template-columns:1fr;} .menu-page__contact-intro,.menu-page__contact-details{grid-column:1;} }
@media (max-width:42.5rem){ .menu-page__hero-grid{padding-block:var(--space-7);} .menu-page__hero-panel{padding:0;background:transparent;} .menu-page__hero-panel h1{font-size:2.625rem;line-height:.98;} .menu-page__hero-panel .intro{font-size:1.125rem;line-height:1.5;} .menu-page__hero-action,.menu-page__evening-action{width:100%;} .menu-page__hero-media{aspect-ratio:4/3;} .menu-page__produce,.menu-page__signatures,.menu-page__plate,.menu-page__desserts,.menu-page__interiors,.menu-page__pathways,.menu-page__contact,.menu-page__cocktails,.menu-page__lounge{padding-block:var(--space-8);} .menu-page__twelve-grid,.menu-page__plate-grid,.menu-page__interior-grid,.menu-page__dessert-grid,.menu-page__cocktail-panel,.menu-page__lounge-grid{grid-template-columns:1fr;} .menu-page__produce-intro,.menu-page__principles,.menu-page__signature-board,.menu-page__plate-figure,.menu-page__plate-copy,.menu-page__dessert-intro,.menu-page__dessert-list,.menu-page__interior-figure,.menu-page__interior-copy,.menu-page__spatial-cues,.menu-page__pathways-intro,.menu-page__pathway-grid,.menu-page__contact-panel,.menu-page__cocktail-intro,.menu-page__cocktail-list,.menu-page__evening-action,.menu-page__lounge-lead,.menu-page__physical-panel,.menu-page__rituals,.menu-page__lounge-link{grid-column:1;} .menu-page__principles,.menu-page__dish-groups,.menu-page__cocktail-list,.menu-page__spatial-cues,.menu-page__rituals,.menu-page__pathway-grid{grid-template-columns:1fr;} .menu-page__principle:last-child,.menu-page__dish-group:nth-child(3),.menu-page__cocktail:last-child,.menu-page__rituals article:last-child{grid-column:1;} .menu-page__dish-group,.menu-page__dish-group:first-child,.menu-page__dish-group:nth-child(3){padding-inline:0;border-inline-start:0;} .menu-page__dish-group + .menu-page__dish-group{padding-top:var(--space-5);border-top:1px solid var(--color-border);} .menu-page__plate-notes{grid-template-columns:1fr;} .menu-page__plate-figure img{aspect-ratio:4/5;} .menu-page__interior-figure img{aspect-ratio:4/3;} .menu-page__dessert-intro{padding:var(--space-5);} .menu-page__contact-panel{padding:var(--space-5);} .menu-page__contact-details > div{grid-template-columns:1fr;gap:var(--space-2);} .menu-page__contact-details small{grid-column:1;} .menu-page__pathway{min-height:0;padding-bottom:var(--space-4);} }
@media (max-width:22.5rem){ .menu-page__dish,.menu-page__dessert-row{grid-template-columns:1fr;} .menu-page__dish strong,.menu-page__dessert-row strong{justify-self:start;} }
@media (prefers-reduced-motion:no-preference){ .menu-page__hero-media img,.menu-page__plate-figure img,.menu-page__interior-figure img{animation:menu-page-reveal 700ms ease both;} @keyframes menu-page-reveal{from{opacity:.5;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}} }