.menu-page{overflow:hidden}
.menu-hero{max-width:1320px;margin:0 auto;padding:clamp(3.5rem,7vw,7rem) 3rem;display:grid;grid-template-columns:minmax(0,.82fr) minmax(380px,1.18fr);gap:clamp(2.5rem,6vw,6rem);align-items:center}
.menu-hero-copy h1{max-width:8ch;margin:0;font:800 clamp(4.5rem,8vw,7.5rem)/.84 var(--display);letter-spacing:-.04em;text-transform:uppercase}
.menu-hero-copy p{max-width:34rem;margin:2rem 0;color:var(--muted);font-size:1.1rem}
.menu-hero figure,.menu-photo-pair figure,.menu-photo-run figure{margin:0;overflow:hidden}
.menu-hero img{width:100%;height:min(68dvh,650px);object-fit:cover;border:8px solid var(--text)}
.menu-photo-pair{display:grid;grid-template-columns:1.45fr .55fr;min-height:620px;background:var(--surface)}
.menu-photo-pair figure:first-child img{width:100%;height:100%;min-height:620px;object-fit:cover;object-position:center 76%}
.menu-photo-pair figure:last-child{margin:5rem 4rem 5rem 0}
.menu-photo-pair figure:last-child img{width:100%;height:100%;object-fit:cover}
.price-sheet{padding:clamp(4.5rem,8vw,8rem) max(3rem,calc((100vw - 1320px)/2 + 3rem));background:var(--bg)}
.price-sheet-heading{display:flex;justify-content:space-between;gap:2rem;align-items:end;margin-bottom:3.5rem}
.price-sheet h2,.menu-source h2,.menu-contact h2{margin:0;font:750 clamp(3.5rem,6vw,6rem)/.9 var(--display);letter-spacing:-.035em;text-transform:uppercase}
.price-sheet-heading p{margin:0;color:var(--muted)}
.price-columns{display:grid;grid-template-columns:1fr 1fr;gap:4rem 6rem}
.price-group{border-top:2px solid var(--accent);padding-top:1.25rem}
.price-group h3{margin:0 0 1rem;font:750 1.15rem/1.2 var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}
.price-group dl{margin:0}
.price-group dl>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.5rem;padding:1rem 0;border-bottom:1px solid var(--line)}
.price-group dt{font-size:1.05rem}
.price-group dd{margin:0;font:750 1.15rem/1 var(--display);color:var(--text)}
.menu-photo-run{display:grid;grid-template-columns:.78fr 1.22fr .9fr;min-height:520px;background:var(--surface-2)}
.menu-photo-run figure:nth-child(2){margin:4rem 0}
.menu-photo-run img{width:100%;height:100%;min-height:520px;object-fit:cover}
.menu-photo-run .crop-top{object-position:center top}
.menu-photo-run .crop-bottom{object-position:center bottom}
.menu-source{padding:4rem max(3rem,calc((100vw - 1320px)/2 + 3rem));display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3rem;align-items:end;background:var(--surface)}
.menu-source h2{font-size:clamp(2.8rem,5vw,4.75rem)}
.menu-source p{max-width:46rem;margin:1.25rem 0 0;color:var(--muted)}
.menu-contact{padding:clamp(4.5rem,8vw,8rem) max(3rem,calc((100vw - 1320px)/2 + 3rem));display:flex;justify-content:space-between;gap:3rem;align-items:end}
.menu-contact h2{max-width:8ch}
.menu-contact>div{display:flex;gap:.75rem;flex-wrap:wrap}
@media(max-width:860px){
  .menu-hero{padding:3.5rem 1.25rem 5rem;grid-template-columns:1fr;gap:2.5rem}
  .menu-hero-copy h1{font-size:clamp(4rem,18vw,5.5rem)}
  .menu-hero img{height:auto;aspect-ratio:1.06;border-width:5px}
  .menu-photo-pair{grid-template-columns:1fr;min-height:0}
  .menu-photo-pair figure:first-child img{min-height:0;height:auto;aspect-ratio:1.08}
  .menu-photo-pair figure:last-child{margin:0 1.25rem 4rem 26%}
  .menu-photo-pair figure:last-child img{height:auto;aspect-ratio:.82}
  .price-sheet{padding:5rem 1.25rem}
  .price-sheet-heading{display:block;margin-bottom:2.5rem}
  .price-sheet-heading p{margin-top:1rem}
  .price-sheet h2,.menu-source h2,.menu-contact h2{font-size:3.5rem}
  .price-columns{grid-template-columns:1fr;gap:2.75rem}
  .menu-photo-run{grid-template-columns:1fr;min-height:0}
  .menu-photo-run figure:nth-child(2){margin:0}
  .menu-photo-run img{min-height:0;height:auto;aspect-ratio:1.08}
  .menu-photo-run figure:nth-child(2) img{aspect-ratio:.82}
  .menu-source{padding:4rem 1.25rem;grid-template-columns:1fr;gap:1.5rem}
  .menu-contact{padding:5rem 1.25rem;display:block}
  .menu-contact>div{margin-top:2rem;display:grid}
}
