/* Owner-supplied dining photography: preserve full composition and readable copy. */
#booking-intro:has(.sasho-meal-intro-photo){display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(28px,4vw,56px);align-items:center}
.sasho-meal-intro-copy{min-width:0}
#booking-intro .sasho-meal-intro-copy .sasho-lead{max-width:none}
.sasho-meal-intro-photo{margin:0;min-width:0}
.sasho-meal-intro-photo img{display:block;width:100%;height:auto}
.sasho-meal-gallery{max-width:760px;margin:32px auto 44px}
.sasho-meal-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.sasho-meal-pair figure{margin:0;min-width:0}
.sasho-meal-pair img{display:block;width:100%;height:auto;aspect-ratio:2/3;object-fit:contain}
.sasho-meal-pair figcaption{font-size:17px;line-height:1.8;margin-top:14px;color:#f7f6ee;overflow-wrap:anywhere}
.sasho-menu .sasho-meal-caption{font-size:13px;line-height:1.9;color:#c7d2ca;margin:18px 0 0}
@media(max-width:899px){#booking-intro:has(.sasho-meal-intro-photo){grid-template-columns:1fr;gap:30px}.sasho-meal-intro-photo{max-width:640px;width:100%;margin:0 auto}.sasho-meal-pair{gap:20px}}
@media(max-width:559px){.sasho-meal-gallery{margin:28px auto 36px;max-width:400px}.sasho-meal-pair{grid-template-columns:1fr;gap:30px}.sasho-meal-pair figcaption{font-size:16px;margin-top:10px}}

.sasho-meal-gallery > h2{font-size:clamp(20px,2vw,26px);font-weight:400;line-height:1.6;margin:0 0 24px}
