/* Real dish photographs first; keep the remaining menu concise. */
#menu-grid{display:block}.photo-menu-grid,.text-menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.photo-menu-grid+.text-menu-grid{margin-top:28px;padding-top:28px;border-top:1px solid #d2c1ac}
.chapter-body .photo-menu-grid .dish-photo{padding:0;overflow:hidden;border-top:0;background:#faf7f0}
.photo-menu-grid .dish-photo-frame{overflow:hidden;background:#2b241c}
.photo-menu-grid .dish-photo-frame img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center}
.photo-menu-grid img[src*="menu-charcoal"]{object-position:50% 35%}
.chapter-body .photo-menu-grid .dish-body{padding:21px}
.chapter-body .dish .dish-photo-note{font-size:10px;line-height:1.7;margin:-4px 0 15px;color:#857460}
.photo-menu-grid .dish h3{font-size:19px}
/* Subtle real brand details, without adding another always-open section. */
.about-opening{position:relative;isolation:isolate;overflow:hidden}
.about-opening>p{position:relative;z-index:1}
.lantern-watermark{position:absolute;right:15px;top:-105px;bottom:-100px;width:340px;z-index:0;opacity:.1;overflow:hidden;pointer-events:none}
.lantern-watermark img{width:100%;height:100%;object-fit:cover;object-position:50% 50%;mix-blend-mode:multiply}
#story>.chapter-summary .chapter-image img{transform:scale(1.3);object-position:50% 45%}
#story>.chapter-summary:hover .chapter-image img{transform:scale(1.33)}
.bincho-feature{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:35px;align-items:center;padding:12px 0 15px}
.bincho-photo{position:relative;isolation:isolate;overflow:hidden;background:#1c1813}
.bincho-photo img{width:100%;height:auto;aspect-ratio:2/3;object-fit:cover;object-position:50% 50%}
.bincho-photo:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#18110cf5);pointer-events:none}
.bincho-photo figcaption{position:absolute;left:24px;right:20px;bottom:20px;color:#fff5e5;font-family:var(--serif);font-size:19px;line-height:1.7;z-index:1}
.bincho-photo figcaption>span{display:block;font-family:var(--sans);font-size:9px;letter-spacing:.2em;color:#e3bc87;margin-bottom:8px}
.bincho-copy .eyebrow{margin-bottom:20px}.bincho-copy h2{font-size:30px;line-height:1.65}.bincho-copy>p:last-child{font-size:14px;line-height:2.1}
/* Newly generated explanatory artwork, never presented as an actual product photo. */
.chapter-body .order-with-kiosk{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:38px;align-items:center}
.kiosk-figure{max-width:300px;margin:0 auto}
.kiosk-figure img{width:100%;height:auto;max-height:400px;object-fit:contain}
.kiosk-figure figcaption{font-size:10px;line-height:1.8;text-align:center;color:#796b5b;margin-top:12px}
.order-copy>p:last-child{font-size:14px;line-height:2;margin:20px 0 0;color:#716a60}
@media(min-width:701px) and (max-width:1050px){.photo-menu-grid,.text-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bincho-feature{gap:25px}.chapter-body .order-with-kiosk{gap:25px}}
@media(max-width:700px){
 .photo-menu-grid,.text-menu-grid{grid-template-columns:minmax(0,1fr);gap:14px}
 .photo-menu-grid+.text-menu-grid{margin-top:22px;padding-top:22px}
 .chapter-body .photo-menu-grid .dish-body{padding:20px}
 .photo-menu-grid .dish h3{font-size:21px;line-height:1.55}.chapter-body .dish .dish-photo-note{font-size:11px;margin-top:-2px;grid-column:1/-1}
 .photo-menu-grid .dish-photo-frame img{aspect-ratio:4/3}
 .lantern-watermark{right:-20px;width:235px;top:-45px;bottom:-45px;opacity:.08}
 .bincho-feature{grid-template-columns:minmax(0,1fr);gap:26px;padding-top:0}
 .bincho-photo{max-width:340px;width:100%;margin:auto}.bincho-photo img{aspect-ratio:2/3}
 .bincho-photo figcaption{font-size:19px;left:20px;bottom:18px}
 .bincho-copy .eyebrow{font-size:9px;margin-bottom:12px}.bincho-copy h2{font-size:27px;margin-bottom:18px}.bincho-copy>p:last-child{font-size:14px;line-height:2}
 .chapter-body .order-with-kiosk{grid-template-columns:minmax(0,1fr);gap:24px}
 .kiosk-figure{max-width:230px;width:100%}.kiosk-figure img{max-height:300px}.kiosk-figure figcaption{font-size:10px}
 .chapter-body .order-with-kiosk h2{font-size:27px}.order-copy>p:last-child{font-size:14px}
}
@media(max-width:360px){.chapter-body .photo-menu-grid .dish-body{padding:16px}.photo-menu-grid .dish h3{font-size:20px}.kiosk-figure{max-width:210px}}
@media(prefers-reduced-motion:reduce){#story>.chapter-summary:hover .chapter-image img{transform:scale(1.3)}}
.bincho-copy h2{text-wrap:balance}
@media(max-width:700px){.bincho-copy h2{font-size:25px;letter-spacing:.02em}}

/* Compact two-column menu, with full-size photographs on demand. */
.dish-photo-frame{display:block;position:relative;width:100%;padding:0;border:0;cursor:zoom-in;color:white}
.photo-zoom{position:absolute;right:8px;bottom:8px;display:grid;place-items:center;width:28px;height:28px;border:1px solid #ffffff80;border-radius:50%;background:#21180f99;font-size:20px;line-height:1;pointer-events:none}
.dish-photo-frame:focus-visible{outline:3px solid var(--red);outline-offset:3px}
#viewer.dish-viewer{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:20px;box-sizing:border-box;background:transparent;overflow:hidden}
#viewer.dish-viewer #menu-full{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:auto;height:auto;max-width:calc(100vw - 40px);max-height:calc(100dvh - 150px);object-fit:contain}
#viewer.dish-viewer #close-viewer{position:absolute;right:20px;top:max(20px,env(safe-area-inset-top));z-index:1;border:1px solid #ffffff70;border-radius:30px;background:#21180fcc}
#viewer.dish-viewer form{display:none}
@media(max-width:700px){
 .photo-menu-grid,.text-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .chapter-body .photo-menu-grid .dish-body,.chapter-body .text-menu-grid .dish{padding:12px}
 .chapter-body #menu-grid .dish h3{font-size:16px;line-height:1.55;overflow-wrap:anywhere}
 .chapter-body #menu-grid .dish p{font-size:11px;line-height:1.75;margin:9px 0 12px}
 .chapter-body #menu-grid .dish-body{display:flex;flex-direction:column;align-items:stretch;height:100%;gap:0}
 .chapter-body #menu-grid .dish-photo{display:flex;flex-direction:column}
 .chapter-body #menu-grid .dish-photo .dish-body{flex:1;height:auto}
 .chapter-body #menu-grid .price{font-size:22px;margin-top:auto;line-height:1.4;padding-top:6px}
 .chapter-body #menu-grid .price small{display:block;font-size:9px;margin:2px 0 0}
 .chapter-body #menu-grid .dish .dish-photo-note{font-size:10px}
 .photo-menu-grid .dish-photo-frame{flex-shrink:0}
 .photo-menu-grid .dish-photo-frame img{aspect-ratio:4/3;display:block}
 .chapter-body #menu-grid .japanese-name{font-size:10px}
}
