/* Staggered background photographs retain their complete natural height.
   Only the outer horizontal edge extends offscreen (at most 9% of its width). */
.food-gallery-backdrop{position:absolute;left:0;right:0;top:360px;z-index:0;display:flex;flex-direction:column;align-items:flex-start;gap:24px;overflow:clip;pointer-events:none}
.food-gallery-photo{position:relative;display:block;flex:none;width:33.333vw;min-width:180px;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;border-radius:18px;transform:none}
.food-gallery-photo--1,.food-gallery-photo--3{align-self:flex-start;margin-left:-3vw}
.food-gallery-photo--2{align-self:flex-end;margin-right:-3vw;margin-top:-6vw}
.food-gallery-photo--3{margin-top:-6vw}
.food-gallery-backdrop--pantry .food-gallery-photo--1,.food-gallery-backdrop--pantry .food-gallery-photo--3{align-self:flex-end;margin-left:0;margin-right:-3vw}
.food-gallery-backdrop--pantry .food-gallery-photo--2{align-self:flex-start;margin-right:0;margin-left:-3vw}
.food-view{position:relative}
.food-view > main,.food-view > .eats-account,.food-view > .ale-copyright{position:relative;z-index:1}
.food-view > main{width:100%;max-width:900px;margin-inline:auto}
.food-view #countries > .country{box-sizing:border-box;width:100%;max-width:100%;margin-inline:auto;min-width:0}
.site-brand-banner{position:relative;z-index:2}
@media(max-width:600px){
 .food-gallery-backdrop{gap:48px}
 .food-gallery-photo{border-radius:12px;margin-top:0}
}
.pantry-view #countries{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row dense;gap:28px 20px;padding:28px 22px;border-radius:20px;background:#fbe89c;color:#3c0917;margin:24px 0}
.pantry-view #countries:empty{display:none}
.pantry-view #countries > .country{border:0;background:transparent;box-shadow:none;border-radius:0;margin:0;padding:0;min-width:0}
.pantry-view #countries .country-heading{display:flex;flex-direction:column;gap:10px;text-align:center}
.pantry-view #countries .flag{order:0;width:60px;height:60px;font-size:44px;background:transparent;border:0}
.pantry-view #countries h2{order:1;font-size:clamp(18px,3vw,28px);color:#3c0917;line-height:1.3}
.pantry-view #countries > .pantry-middle{grid-column:1/-1;justify-self:center;width:calc((100% - 20px)/2)}
/* Compact menus retain two readable columns on phones and desktops. */
.menus-view #countries{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.menus-view #countries > .country{margin:0;padding:18px 14px;min-width:0}
.menus-view #countries .country-heading{gap:8px}
.menus-view #countries h2{font-size:clamp(18px,2.5vw,28px)}
.menus-view #countries .flag{width:36px;height:36px;font-size:28px;flex:none}
.menus-view #countries .meal-menus{margin:16px 0}
.menus-view #countries .meal-menus h3{font-size:18px}
.menus-view #countries .meal-menus li,.menus-view #countries .country p{font-size:15px;line-height:1.5}
.menus-view #countries .menu-actions{gap:8px}
.menus-view #countries .menu-action{min-width:0;padding:10px 5px}
.menus-view #countries .menu-action-label{font-size:12px;line-height:1.25;overflow-wrap:normal}
.menus-view #countries .menu-action-icons{gap:3px}
@media(max-width:600px){
 .menus-view #countries{gap:12px}
 .menus-view #countries > .country{padding:16px 10px}
 .menus-view #countries .country-heading{flex-direction:column;align-items:center;text-align:center}
 .menus-view #countries .meal-menus li,.menus-view #countries .country p{font-size:13px}
 .menus-view #countries .menu-actions{grid-template-columns:1fr;display:grid}
 .menus-view #countries .menu-action{min-height:60px}
 .menus-view #countries .menu-action-icons ion-icon,.menus-view #countries .menu-action-icons .material-symbols-outlined{font-size:22px}
}
/* Center the menu's dish links and double its country flag emoji size. */
.menus-view #countries .meal-menus ul{padding-inline:0;list-style:none;text-align:center}
.menus-view #countries .meal-menus li{text-align:center}
.menus-view #countries .meal-menus li a{display:inline-block;text-align:center}
.menus-view #countries .flag{font-size:56px;width:72px;height:72px}
.menus-view #countries .country-heading{flex-direction:column;align-items:center;text-align:center}
/* Compact mobile actions preserve usable tap targets. */
@media(max-width:600px){
 .menus-view #countries .menu-actions{gap:6px;margin-top:12px}
 .menus-view #countries .menu-action{height:auto;min-height:44px;padding:6px 5px;gap:4px;flex-direction:row;align-items:center;justify-content:center;border-radius:12px}
 .menus-view #countries .menu-action-icons{gap:1px;flex-shrink:0;height:auto}
 .menus-view #countries .menu-action-icons ion-icon,.menus-view #countries .menu-action-icons .material-symbols-outlined{font-size:16px;width:16px;height:16px}
 .menus-view #countries .menu-action-label{font-size:10px;line-height:1.15;white-space:normal}
}

/* All meal headings are quieter; dish options use the larger type. */
.menus-view #countries .meal-menus h3{font-size:15px}
.menus-view #countries .meal-menus li{font-size:18px}
@media(max-width:600px){
 .menus-view #countries .meal-menus h3{font-size:13px}
 .menus-view #countries .meal-menus li{font-size:18px}
}

/* Natural-height cards share a responsive grid; an odd middle card occupies
   its own centered row, leaving paired cards at both ends whenever possible. */
.menus-view #countries,.pantry-view #countries,.restaurant-cards{align-items:start}
.menus-view #countries > .country,.restaurant-cards > .restaurant-card{height:auto}
#countries > .country.result-middle,.restaurant-cards > .restaurant-card.result-middle{grid-column:1/-1;justify-self:center;width:calc((100% - var(--result-gap,16px))/2)}
.pantry-view #countries{--result-gap:20px}
.menus-view #countries{--result-gap:16px}
#countries > .result-bottom,.restaurant-cards > .result-bottom{align-self:end}
@media(max-width:600px){.menus-view #countries{--result-gap:12px}}
@media(max-width:650px){.restaurant-cards > .restaurant-card.result-middle{width:100%}}
