
/* V363 – reliable cuisine flag + photo-first gallery/menu */
.v350-restaurant-detail .v363-cuisine{gap:9px!important}
.v350-restaurant-detail .v363-flag{
 width:34px!important;height:23px!important;object-fit:cover!important;
 border-radius:5px!important;border:1px solid rgba(0,0,0,.14)!important;
 box-shadow:0 2px 5px rgba(0,0,0,.12)!important;flex:0 0 auto!important;
}

/* Gallery: high-resolution sources, natural ratio, zero crop. */
.v350-restaurant-detail .v344-gallery{
 border:2px solid #c09236!important;padding:8px!important;
 background:#fffaf0!important
}
.v350-restaurant-detail .v344-stage{
 display:flex!important;align-items:center!important;justify-content:center!important;
 width:100%!important;height:auto!important;aspect-ratio:auto!important;
 background:#161411!important;overflow:hidden!important
}
.v350-restaurant-detail .v344-stage img{
 display:block!important;width:100%!important;height:auto!important;
 max-width:100%!important;max-height:none!important;
 object-fit:contain!important;object-position:center!important;
 filter:none!important;transform:none!important
}
.v350-restaurant-detail .v344-thumbs button{
 display:flex!important;align-items:center!important;justify-content:center!important;
 min-width:0!important;aspect-ratio:3/2!important;background:#171512!important;
 border:1px solid #d4b66f!important;border-radius:12px!important;overflow:hidden!important
}
.v350-restaurant-detail .v344-thumbs button.is-active{border:2px solid #b57c10!important}
.v350-restaurant-detail .v344-thumbs button img{
 display:block!important;width:100%!important;height:100%!important;
 object-fit:contain!important;object-position:center!important;filter:none!important
}
.v350-restaurant-detail .v344-modal-stage img{
 width:auto!important;height:auto!important;max-width:calc(100vw - 30px)!important;
 max-height:calc(100dvh - 120px)!important;object-fit:contain!important;filter:none!important
}

/* Menu: photographs are larger and never cropped. */
.v350-restaurant-detail .demo-menu-row{
 grid-template-columns:150px minmax(0,1fr) auto!important;
 gap:16px!important;align-items:center!important;padding:15px 0!important
}
.v350-restaurant-detail .demo-menu-photo{
 display:block!important;width:150px!important;height:108px!important;
 object-fit:contain!important;object-position:center!important;
 border:1.5px solid #d2b36b!important;border-radius:15px!important;
 background:#171512!important;padding:3px!important;box-sizing:border-box!important;
 filter:none!important;transform:none!important
}
.v350-restaurant-detail .demo-menu-row h3{font-size:17px!important;color:#201b15!important}
.v350-restaurant-detail .demo-menu-price{
 padding:8px 10px!important;border-radius:10px!important;background:#f8edcf!important;
 color:#6b4a0b!important;border:1px solid #dec58c!important
}
@media(max-width:760px){
 .v350-restaurant-detail .demo-menu-row{
   grid-template-columns:112px minmax(0,1fr)!important;gap:11px!important;
   align-items:start!important
 }
 .v350-restaurant-detail .demo-menu-photo{
   width:112px!important;height:92px!important;border-radius:12px!important
 }
 .v350-restaurant-detail .demo-menu-price{
   grid-column:2!important;justify-self:start!important;margin-top:2px!important
 }
 .v350-restaurant-detail .v344-thumbs{grid-template-columns:repeat(5,minmax(0,1fr))!important}
}
@media(max-width:390px){
 .v350-restaurant-detail .demo-menu-row{grid-template-columns:96px minmax(0,1fr)!important}
 .v350-restaurant-detail .demo-menu-photo{width:96px!important;height:82px!important}
}
