/* v176 - Responsive celular/tablet con menú lateral desplegable. Solo presentación pública. */
*,*::before,*::after{box-sizing:border-box}
.content,.menu,.dl-lunch-inline,.dl-lunch-public,.featured-lunch,.featured-promo{min-width:0;max-width:100%}
.dl-lunch-public-row,.dl-lunch-public-row span,.dl-lunch-name,.dl-lunch-inline p,.dl-lunch-inline h2,.dl-lunch-inline h3{min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:normal}
@media(max-width:1024px){
  .layout{display:block!important;width:100%!important;max-width:100%!important;padding:18px 16px 60px!important}
  .side{display:block!important;position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:min(320px,86vw)!important;max-width:86vw!important;padding:88px 16px 24px!important;background:#fff!important;z-index:1200!important;overflow-y:auto!important;transform:translateX(-105%)!important;transition:transform .22s ease!important;box-shadow:0 18px 45px rgba(0,0,0,.22)!important}
  .side.dl-side-open{transform:translateX(0)!important}
  .side nav{display:grid!important;grid-template-columns:1fr!important;margin:14px 0 22px!important}
  .side nav button{font-size:14px!important;padding:11px 12px!important}
  .dl-mobile-menu-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;border:1px solid #0e746b!important;background:#fff!important;color:#0e746b!important;border-radius:11px!important;padding:9px 11px!important;font-weight:800!important;cursor:pointer!important}
  .dl-side-backdrop{display:none;position:fixed;inset:0;background:rgba(0,0,0,.38);z-index:1190}
  .dl-side-backdrop.dl-side-open{display:block}
  .content{width:100%!important;max-width:100%!important;margin:0!important}
  .featured-lunch,.featured-promo{width:100%!important;max-width:100%!important}
  .dl-lunch-inline{width:100%!important;max-width:100%!important;overflow:hidden}
  .dl-lunch-public{width:100%!important;grid-template-columns:minmax(0,1fr)!important}
  #lunchPublicSoups,#lunchPublicSeconds,#lunchPublicSpecials{grid-template-columns:minmax(0,1fr)!important;width:100%!important;min-width:0!important}
  .dl-lunch-public #lunchPublicSpecialsWrap{grid-column:auto!important;min-width:0!important}
}
@media(max-width:760px){
  .layout{padding:14px 10px 48px!important}
  .featured-lunch,.featured-promo{grid-template-columns:1fr!important;height:auto!important;min-height:0!important;max-height:none!important;gap:12px!important}
  #featuredLunchImage,#featuredPromoImage{width:100%!important;min-width:0!important;max-width:none!important;height:auto!important;aspect-ratio:4/3!important}
  .dl-lunch-inline{padding:14px 12px!important;margin:12px 0 22px!important;border-radius:14px!important}
  .dl-lunch-public-row{padding:11px 8px!important}
  .dl-lunch-selectable{width:100%!important;min-width:0!important;flex-wrap:wrap!important}
  .dl-lunch-stepper{margin-left:auto!important}
}
@media(max-width:520px){
  .topbar{height:auto!important;min-height:68px!important;padding:8px 10px!important;gap:8px!important;flex-wrap:wrap!important}
  .top-actions{margin-left:auto!important;gap:6px!important;flex-wrap:wrap!important;justify-content:flex-end!important}
  .dl-share-menu-top,.order-btn{font-size:10px!important;padding:9px 8px!important;white-space:nowrap!important}
  .welcome h1{font-size:34px!important;line-height:1.02!important}
}

@media(min-width:1025px){.dl-mobile-menu-btn,.dl-side-backdrop{display:none!important}}
@media(max-width:520px){.dl-mobile-menu-btn{font-size:11px!important;padding:9px 8px!important}.side{padding-top:116px!important}}
