/* Mobile app shell. Desktop presentation remains unchanged. */
.mobile-nav,.mobile-topbar{display:none}
@media(max-width:750px){
  :root{--app-nav-height:72px}
  html{background:#fbf5e8;scroll-padding-top:74px}
  body{overflow-x:hidden;padding-top:calc(64px + env(safe-area-inset-top));padding-bottom:calc(var(--app-nav-height) + env(safe-area-inset-bottom));background-attachment:fixed}
  main{margin-inline:12px}
  .header{display:none}
  .mobile-topbar{position:fixed;inset:0 0 auto 0;z-index:100;display:flex;align-items:center;justify-content:space-between;width:100vw;max-width:100vw;height:calc(64px + env(safe-area-inset-top));padding:calc(6px + env(safe-area-inset-top)) 15px 6px;border-bottom:1px solid rgba(41,76,53,.1);background:rgba(251,245,232,.97);box-shadow:0 5px 20px rgba(35,55,39,.1);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);transform:translateZ(0)}
  .mobile-brand{position:relative;color:var(--green);font:italic 700 30px/1 Georgia,serif;letter-spacing:-1.6px}.mobile-brand small{display:block;margin-top:5px;font:700 6px/1 'DM Sans',sans-serif;letter-spacing:2.2px}.mobile-brand:after{content:'';position:absolute;left:0;right:-8px;bottom:-7px;height:6px;background:linear-gradient(176deg,transparent 38%,rgba(185,66,39,.72) 42% 54%,transparent 58%)}
  #mobile-top-order{position:relative;display:grid;place-items:center;width:42px;height:42px;padding:0;border:0;border-radius:50%;background:var(--green);color:#fff;box-shadow:0 5px 15px rgba(41,76,53,.18)}#mobile-top-order span{position:absolute;top:-3px;right:-3px;display:grid;place-items:center;min-width:18px;height:18px;padding:0 4px;border:2px solid #fbf5e8;border-radius:999px;background:#fff;color:var(--green);font:700 8px 'DM Sans',sans-serif}
  .location{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin:8px 0 10px;padding:5px;border:1px solid rgba(41,76,53,.1);border-radius:16px;background:rgba(255,253,247,.62);white-space:normal;overflow:visible}.location-item{display:flex;align-items:center;justify-content:center;min-height:29px;padding:5px 4px;border-radius:11px;color:#655f52;font-size:8px;line-height:1.15;text-align:center}.location-open{background:rgba(79,143,84,.1);color:var(--green);font-weight:700}.location-dot{flex:0 0 6px;width:6px;height:6px;margin-right:5px;box-shadow:none}.location .location-end{display:none}
  .hero{display:grid;grid-template-columns:minmax(0,1fr) 142px;min-height:310px;border-radius:24px;overflow:hidden}
  .hero-copy{z-index:2;padding:27px 0 24px 22px}.hero-copy .eyebrow{font-size:7px;letter-spacing:1.4px}.hero-copy h1{margin-top:10px;font-size:34px;line-height:1.01;letter-spacing:-1.7px}.hero-copy>p{max-width:220px;margin:15px 0 18px;font-size:12px;line-height:1.55}.hero-actions{display:grid;gap:8px;justify-items:start}.hero .button,.hero-secondary{min-height:42px;padding:11px 15px;font-size:11px}.hero-secondary{background:rgba(255,255,255,.68)}
  .hero-art{height:310px;overflow:visible}.hero-art .hero-drink{position:absolute;right:1px;bottom:37px;width:168px;max-width:none;height:210px}.hero-art .art-caption,.hero-art .art-note,.hero-art .round-stamp,.hero-art .art-ring{display:none}.hero:before{inset:32% -10% 0 48%}
  .ticker{display:none}
  .menu-section{padding:42px 0 27px}.section-heading h2{max-width:310px;font-size:32px;line-height:1.05}.section-heading>p{font-size:12px;line-height:1.55}.demo-note{gap:6px}.demo-note span{padding:6px 9px;font-size:9px}.carousel-hint{margin:19px 2px 4px}.carousel-hint .swipe-hint{font-size:10px}
  .carousel-shell{padding:0}.carousel-arrow{display:none}#products{gap:12px;margin-inline:-12px;padding:10px 12px 23px;scroll-padding-left:12px}#products .product{flex-basis:82%;max-width:300px;border-radius:20px}#products .product-art{height:174px;min-height:174px}#products .product-art .drink-svg{height:205px;margin-top:-13px}.product-tag{top:12px;left:12px;padding:6px 8px;font-size:7px}.product-content{padding:16px!important}.product-title-row h3{font-size:22px}.product-title-row>strong{font-size:19px}.product p{margin:8px 0 13px;font-size:11px;line-height:1.5}.product-bottom{padding-top:12px}.product-bottom>span{max-width:125px;font-size:9px}.product-bottom button{min-height:40px;padding:8px 12px;font-size:11px}
  .custom-entry{gap:13px;margin:10px 0 28px;padding:22px 19px;border-radius:20px}.custom-entry-icon{width:43px;height:43px;border-radius:14px}.custom-entry h2{font-size:24px}.custom-entry p{font-size:11px}.custom-entry .button{min-height:46px}
  .how{display:flex;gap:8px;overflow-x:auto;padding:14px;border-radius:18px;scrollbar-width:none}.how::-webkit-scrollbar{display:none}.how-step{flex:0 0 auto;padding-right:8px}.how-step>span{flex-basis:32px;height:32px}.how-step strong{font-size:11px}.how-step small{font-size:9px}.how .pill{display:none}
  footer{margin-top:24px;padding:30px 22px calc(94px + env(safe-area-inset-bottom))}footer .brand{font-size:32px}footer p{font-size:14px}
  .mobile-nav{position:fixed;left:0;right:0;bottom:0;z-index:30;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100vw;max-width:100vw;height:calc(var(--app-nav-height) + env(safe-area-inset-bottom));padding:7px 8px env(safe-area-inset-bottom);border-top:1px solid rgba(41,76,53,.11);background:rgba(255,253,247,.96);box-shadow:0 -8px 30px rgba(30,48,34,.09);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
  .mobile-nav a,.mobile-nav button{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;border:0;background:transparent;color:#6f7569;font:600 9px 'DM Sans',sans-serif}.mobile-nav svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.mobile-nav a:active,.mobile-nav button:active{color:var(--red)}.mobile-create-icon{display:grid;place-items:center;width:34px;height:34px;margin-top:-18px;border:4px solid #fffdf7;border-radius:50%;background:var(--red);color:#fff;font-size:22px;box-shadow:0 5px 14px rgba(185,66,39,.22)}.mobile-nav b{position:absolute;top:1px;right:calc(50% - 21px);display:grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border:2px solid #fff;border-radius:999px;background:var(--red);color:#fff;font-size:8px}
  .order-bar{bottom:calc(var(--app-nav-height) + 8px + env(safe-area-inset-bottom));width:calc(100% - 24px);padding:11px 12px 11px 16px}.order-bar strong{padding:8px 11px}.toast{bottom:calc(var(--app-nav-height) + 76px + env(safe-area-inset-bottom))}
  #cart-dialog{inset:auto 0 0 0;width:100%;max-width:none;max-height:88dvh;margin:0;padding:22px 20px calc(22px + env(safe-area-inset-bottom));border-radius:26px 26px 0 0}#cart-dialog[open]{animation:sheet-in .22s ease-out}.dialog-head{margin-bottom:12px}.dialog-head h2{font-size:27px}.cart-item{padding:14px 0}.whatsapp,.ticket-button{min-height:48px}
  .builder-dialog .builder{grid-template-rows:190px minmax(0,1fr)}.builder-dialog .preview{height:190px;grid-template-columns:1fr 125px;padding:15px 18px}.builder-dialog .preview h2{font-size:24px}.builder-dialog .live-drink{width:125px;height:174px}.builder-dialog .live-drink .drink-svg{max-height:174px}.builder-dialog .preview-label span{font-size:18px}.builder-dialog .preview-label small{font-size:9px}.builder-dialog .config{padding:18px 16px 24px}.builder-dialog .modal-top{top:-18px;margin:-18px -16px 13px;padding:18px 16px 9px}.builder-dialog .config h2{font-size:27px}.option-group{padding:15px 0}.option-title{display:block}.option-title small{display:block;margin-top:3px}.choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.choice{display:flex;align-items:center;justify-content:center;min-height:46px;padding:9px 8px;text-align:center;font-size:10px}.choice span{font-size:9px}.add-row{bottom:-24px;margin:17px -16px -24px;padding:12px 16px calc(12px + env(safe-area-inset-bottom))}.quantity button{min-width:42px}.add-row>.button{min-height:46px;padding:12px;font-size:11px}
  @keyframes sheet-in{from{transform:translateY(35%);opacity:.5}to{transform:translateY(0);opacity:1}}
}
@media(max-width:380px){.hero{grid-template-columns:minmax(0,1fr) 125px}.hero-copy{padding-left:18px}.hero-copy h1{font-size:31px}.hero-copy>p{max-width:190px}.hero-art .hero-drink{right:0;width:150px;height:195px}.mobile-nav{padding-inline:2px}.choices{grid-template-columns:1fr 1fr}}
@media(display-mode:standalone){.mobile-topbar{padding-top:calc(7px + env(safe-area-inset-top))}.mobile-nav{background:rgba(255,253,247,.98)}}
@media(prefers-reduced-motion:reduce){#cart-dialog[open]{animation:none}}

/* Full-screen mobile builder: fixed preview, scrollable choices, fixed action. */
@media(max-width:750px){
  .builder-dialog,.builder-dialog[open]{position:fixed;inset:0;width:100%;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;border-radius:0;overflow:hidden}
  .builder-dialog .builder{display:grid;width:100%;height:100dvh;min-height:0;grid-template-columns:1fr;grid-template-rows:154px minmax(0,1fr);overflow:hidden}
  .builder-dialog .preview{display:grid;width:100%;height:154px;min-height:154px;padding:18px 20px;grid-template-columns:minmax(0,1fr) 128px;grid-template-rows:1fr;overflow:hidden;border-radius:0}
  .builder-dialog .preview>.eyebrow,.builder-dialog .preview>h2,.builder-dialog .preview-decoration{display:none}
  .builder-dialog .preview-label{display:flex;align-items:flex-start;justify-content:center;flex-direction:column;grid-column:1;grid-row:1;align-self:stretch;margin:0;text-align:left}
  .builder-dialog .preview-label:before{content:'TU MICHELADA';margin-bottom:8px;color:var(--red);font:700 8px 'DM Sans',sans-serif;letter-spacing:1.7px}
  .builder-dialog .preview-label span{font-size:27px;line-height:1.05}.builder-dialog .preview-label small{max-width:155px;margin-top:8px;font-size:10px;line-height:1.4}
  .builder-dialog .live-drink{display:block;grid-column:2;grid-row:1;align-self:center;justify-self:center;width:128px;height:150px;min-height:0;margin:0;overflow:visible}
  .builder-dialog .live-drink .drink-svg{display:block;width:128px;height:150px;max-height:150px}
  .builder-dialog .config{display:block;width:100%;height:100%;min-height:0;padding:18px 16px calc(92px + env(safe-area-inset-bottom));overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;background-color:var(--paper);scroll-padding-top:54px;scroll-padding-bottom:96px}
  .builder-dialog .modal-top{position:sticky;top:-18px;z-index:5;display:flex;align-items:center;min-height:57px;margin:-18px -16px 12px;padding:18px 16px 8px;background:linear-gradient(to bottom,var(--paper) 82%,rgba(251,245,230,0))}
  .builder-dialog .modal-top .eyebrow{font-size:8px}.builder-dialog .modal-close{width:38px;height:38px;background:#fffdf7}
  .builder-dialog .config h2{margin-top:0;font-size:27px;line-height:1.08}.builder-dialog .config>.muted{margin:8px 0 15px;font-size:11px}
  .builder-dialog .selection-summary{position:static;margin-bottom:6px;padding:12px 13px;font-size:11px}
  .builder-dialog #options{padding-bottom:4px}.builder-dialog .option-group{padding:14px 0}.builder-dialog .option-title{margin-bottom:9px;font-size:11px}.builder-dialog .option-title small{font-size:9px}
  .builder-dialog .choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.builder-dialog .choice{width:100%;min-height:44px;padding:8px 7px;white-space:normal;font-size:10px;line-height:1.25}
  .builder-dialog .allergy-note{font-size:9px}.builder-dialog .notes-label{font-size:11px}.builder-dialog textarea{min-height:66px;margin-bottom:4px}
  .builder-dialog .add-feedback{min-height:15px;margin-top:5px;font-size:10px}
  .builder-dialog .add-row{position:fixed;left:0;right:0;bottom:0;z-index:6;display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;margin:0;padding:11px 16px calc(11px + env(safe-area-inset-bottom));border-top:1px solid rgba(41,76,53,.1);background:rgba(251,245,230,.96);box-shadow:0 -8px 22px rgba(42,52,37,.07);backdrop-filter:blur(14px)}
  .builder-dialog .quantity{min-width:112px}.builder-dialog .quantity button{min-width:38px;min-height:44px;padding:8px}.builder-dialog .add-row>.button{min-width:0;min-height:44px;padding:10px 12px;gap:8px;font-size:10px}.builder-dialog .add-row>.button span{white-space:nowrap}
}
@media(max-width:370px){.builder-dialog .preview{grid-template-columns:minmax(0,1fr) 110px}.builder-dialog .live-drink,.builder-dialog .live-drink .drink-svg{width:110px}.builder-dialog .preview-label span{font-size:24px}.builder-dialog .quantity{min-width:104px}}
