/* Shoko food menu and curated image collection */
.home-menu-teaser{background:radial-gradient(circle at 78% 45%,rgba(215,173,92,.11),transparent 34%),#0b0b09;overflow:hidden}.home-menu-grid{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:7vw;align-items:center}.home-menu-copy p:not(.eyebrow){max-width:520px;font-size:1.05rem}.home-menu-copy .button{margin-top:22px}.home-food-collage{display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:210px 210px;gap:14px;min-width:0}.home-food-collage img{width:100%;height:100%;object-fit:cover;border:1px solid var(--line);box-shadow:0 22px 50px rgba(0,0,0,.35)}.home-food-collage img:first-child{grid-column:1/9;grid-row:1/3}.home-food-collage img:nth-child(2),.home-food-collage img:nth-child(3){grid-column:9/13}.menu-hero{height:min(760px,calc(100vh - 94px));min-height:610px;position:relative;display:flex;align-items:end;overflow:hidden;padding-bottom:78px}.menu-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 44%}.menu-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,4,4,.96) 0%,rgba(4,4,4,.7) 40%,rgba(4,4,4,.12) 76%),linear-gradient(0deg,rgba(4,4,4,.87),transparent 52%)}.menu-hero-content{position:relative;z-index:1}.menu-hero h1{font-size:clamp(4.2rem,9vw,8rem);margin-bottom:.18em}.menu-hero-content>p:not(.eyebrow){max-width:630px;font-size:clamp(1rem,1.8vw,1.22rem)}.menu-intro{display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw;align-items:start}.menu-intro h2{max-width:560px}.menu-intro>div:last-child>p{max-width:650px;font-size:1.08rem}.menu-no-prices{color:var(--gold2)!important;border-left:1px solid var(--gold);padding-left:18px;margin-top:25px}.food-gallery-section{padding:95px 0;background:#11100e;border-block:1px solid rgba(255,255,255,.05);overflow:hidden}.food-gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:35px}.food-gallery-heading h2{font-size:clamp(2.2rem,4vw,3.8rem);margin-bottom:0}.food-gallery-heading>p{max-width:280px;text-align:right}.food-film{display:flex;gap:14px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;padding:0 max(20px,calc((100vw - var(--max))/2)) 24px;scrollbar-color:var(--gold) #25221d}.food-film figure{flex:0 0 clamp(260px,29vw,430px);height:390px;margin:0;scroll-snap-align:start;overflow:hidden;border:1px solid var(--line);background:#090908}.food-film figure:nth-child(5n+2),.food-film figure:nth-child(5n+4){flex-basis:clamp(225px,24vw,355px)}.food-film img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.food-film figure:hover img{transform:scale(1.025)}.menu-content{padding-top:0}.menu-jump{position:sticky;top:0;z-index:12;display:flex;gap:8px;overflow-x:auto;padding:18px 0;background:rgba(8,8,8,.93);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);scrollbar-width:none}.menu-jump::-webkit-scrollbar{display:none}.menu-jump a{flex:0 0 auto;padding:8px 13px;border:1px solid rgba(215,173,92,.3);color:var(--muted);text-decoration:none;text-transform:uppercase;letter-spacing:.12em;font-size:.66rem}.menu-jump a:hover{color:#0b0b09;background:var(--gold)}.menu-section{scroll-margin-top:82px;padding:105px 0;border-bottom:1px solid var(--line)}.menu-section.has-image{display:grid;grid-template-columns:minmax(270px,.62fr) minmax(0,1.38fr);grid-template-areas:'heading heading' 'image items';gap:42px 6vw}.menu-section-heading{grid-area:heading;display:grid;grid-template-columns:70px minmax(0,780px);gap:25px;align-items:start;margin-bottom:10px}.menu-section-number{color:var(--gold);font-family:Georgia,serif;font-size:1.15rem;margin:8px 0 0}.menu-section-heading h2{font-size:clamp(2.7rem,5vw,4.8rem);margin-bottom:.25em}.menu-section-heading p{max-width:720px;margin:0;font-size:1.03rem}.menu-section-image{grid-area:image;position:sticky;top:86px;align-self:start;margin:0;height:520px;overflow:hidden;border:1px solid var(--line);background:#0c0b0a}.menu-section-image img{width:100%;height:100%;object-fit:cover}.menu-items{grid-area:items;display:grid;grid-template-columns:1fr 1fr;gap:0 34px;align-content:start}.menu-section.without-image .menu-items{margin-left:95px;max-width:1040px}.menu-item{padding:24px 0 26px;border-top:1px solid rgba(255,255,255,.09)}.menu-item h3{font-size:1.45rem;margin:0;color:#f3eadc}.menu-item-subtitle{margin:5px 0 0!important;color:var(--gold2)!important;font-size:.78rem!important;text-transform:uppercase;letter-spacing:.1em}.menu-item>p:last-child{margin:9px 0 0;font-size:.91rem;line-height:1.58}.menu-cta{text-align:center;background:linear-gradient(rgba(4,4,4,.77),rgba(4,4,4,.9)),url('/images/shoko-gallery/web/IMG_030.webp') center/cover}.menu-cta .container{display:grid;justify-items:center}.menu-cta h2{font-size:clamp(3.2rem,7vw,6.5rem)}.menu-cta p:not(.eyebrow){max-width:580px;font-size:1.08rem}.menu-cta .button{margin-top:20px}
@media(max-width:960px){.home-menu-grid{grid-template-columns:1fr}.home-menu-copy{max-width:680px}.menu-section.has-image{grid-template-columns:290px minmax(0,1fr);gap:38px}.menu-items{grid-template-columns:1fr}.menu-section.without-image .menu-items{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.home-food-collage{grid-template-rows:260px 155px}.home-food-collage img:first-child{grid-column:1/13;grid-row:1}.home-food-collage img:nth-child(2){grid-column:1/7;grid-row:2}.home-food-collage img:nth-child(3){grid-column:7/13;grid-row:2}.menu-hero{height:calc(100svh - 76px);min-height:620px;padding-bottom:58px}.menu-hero-shade{background:linear-gradient(0deg,rgba(4,4,4,.98) 0%,rgba(4,4,4,.63) 62%,rgba(4,4,4,.18))}.menu-hero h1{font-size:4.2rem}.menu-intro{grid-template-columns:1fr;gap:20px}.food-gallery-section{padding:70px 0}.food-gallery-heading{display:block}.food-gallery-heading>p{text-align:left}.food-film{gap:10px;padding-inline:14px}.food-film figure,.food-film figure:nth-child(5n+2),.food-film figure:nth-child(5n+4){flex-basis:78vw;height:370px}.menu-jump{margin-inline:-14px;padding-inline:14px}.menu-section{padding:78px 0}.menu-section.has-image{display:grid;grid-template-columns:1fr;grid-template-areas:'heading' 'image' 'items';gap:30px}.menu-section-heading{grid-template-columns:42px 1fr;gap:10px}.menu-section-heading h2{font-size:3rem}.menu-section-image{position:relative;top:auto;height:390px}.menu-items,.menu-section.without-image .menu-items{grid-template-columns:1fr;margin-left:0}.menu-item{padding-block:21px}.menu-item h3{font-size:1.35rem}}
