/* Transições leves e adaptação para toque, sem travar a navegação. */
.pageLoader{position:fixed;inset:0;z-index:99;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;background:#f7f3eb;color:#374151;text-align:center;opacity:1;transition:opacity .38s ease,visibility .38s ease}
.pageLoader.leaving{opacity:0;visibility:hidden;pointer-events:none}
.loaderMark{width:112px;height:112px;display:grid;place-content:center;border:3px solid #fff;border-radius:17px;background:#f7efe2;box-shadow:0 12px 30px #47341918;color:var(--gold);font:30px/1 Georgia,serif;letter-spacing:-1.5px;animation:loaderBreath 1.8s ease-in-out infinite}
.pageLoader>span{font:400 13px/1.5 Rubik,Arial,sans-serif;color:#6b7280}
.loaderDots{display:flex;gap:7px;margin-top:2px}.loaderDots i{width:6px;height:6px;border-radius:50%;background:var(--gold);opacity:.35;animation:loaderDot 1s ease-in-out infinite}.loaderDots i:nth-child(2){animation-delay:.14s}.loaderDots i:nth-child(3){animation-delay:.28s}
@keyframes loaderBreath{50%{transform:scale(1.035)}}@keyframes loaderDot{50%{opacity:1;transform:translateY(-3px)}}
.overlay{opacity:1;transition:opacity .24s ease}
.overlay>.modal,.overlay>.promoDialog,.overlay>.phonebox,.overlay>.checkout,.overlay>.cepbox{opacity:1;transform:translateY(0) scale(1);transition:opacity .24s ease,transform .3s cubic-bezier(.2,.8,.2,1)}
.overlay[data-state="opening"],.overlay[data-state="closing"]{opacity:0;pointer-events:none}
.overlay[data-state="opening"]>.modal,.overlay[data-state="opening"]>.promoDialog,.overlay[data-state="opening"]>.phonebox,.overlay[data-state="opening"]>.checkout,.overlay[data-state="opening"]>.cepbox,.overlay[data-state="closing"]>.modal,.overlay[data-state="closing"]>.promoDialog,.overlay[data-state="closing"]>.phonebox,.overlay[data-state="closing"]>.checkout,.overlay[data-state="closing"]>.cepbox{opacity:0;transform:translateY(15px) scale(.985)}
.deliveryPopover{opacity:1;transform:translateY(0) scale(1);transform-origin:top center;transition:opacity .18s ease,transform .22s cubic-bezier(.2,.8,.2,1)}
.deliveryPopover.opening,.deliveryPopover.closing{opacity:0;transform:translateY(-7px) scale(.985);pointer-events:none}
.stickyBar{opacity:0;transform:translateY(-10px);pointer-events:none;transition:opacity .2s ease,transform .24s cubic-bezier(.2,.8,.2,1)}
.stickyBar.visible{opacity:1;transform:translateY(0);pointer-events:auto}
.cta,.chip,.opt,.card,.flavorcard,.upsellCard,.navlinks a,.navlinks button,.barNav a,.barNav button{transition:background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease}
.cta:active,.chip:active,.opt:active,.card:active,.flavorcard:active,.upsellCard:active{transform:scale(.985)}
.close,.back,.clearCart,.cartActions button{transition:background-color .18s ease,color .18s ease,transform .18s ease}
.close:hover,.back:hover{transform:rotate(8deg);background:#e5e7eb}
@media(min-width:901px) and (max-width:1150px){.shell{gap:20px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.flavorcards{grid-template-columns:1fr}}
@media(max-width:900px){.wrap{width:calc(100% - 36px);max-width:none;padding:0}.cart.open{transition:transform .32s cubic-bezier(.2,.8,.2,1),opacity .25s ease;transform:translateY(0);opacity:1}.cart.open.opening,.cart.open.closing{transform:translateY(105%);opacity:.4;pointer-events:none}.cart.open .cartitems{-webkit-overflow-scrolling:touch}.cart.open .cartfoot{padding-bottom:max(15px,env(safe-area-inset-bottom))}}
@media(max-width:650px){
 body{padding-bottom:76px;overflow-x:hidden}
 .wrap{width:calc(100% - 28px)}
 .top{height:108px}.nav{height:76px;padding:0}
 .navlinks{width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;overflow:visible}
 .navlinks a,.navlinks button{min-width:0;min-height:58px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:5px 2px;font-size:10px;line-height:1.2;text-align:center;white-space:normal}
 .navlinks .uiIcon{width:20px;height:20px}
 .store{gap:10px;margin-top:-30px;min-height:94px}.storeInfo{min-width:0}.store h2{font-size:clamp(20px,6vw,27px);line-height:1.12}.store p{font-size:11px;line-height:1.45}.store p .dot{margin:0 4px}
 .tools{gap:10px}.categoryControl .bellaSelectTrigger,.search input{min-height:48px}
 .field input,.field textarea,.field select,.search input,.barSearch input{font-size:16px}
 .close,.back{min-width:40px;min-height:40px}.quantity button{min-width:38px;min-height:38px}
 .section{margin:30px 0 36px}.section h2{font-size:22px;line-height:29px}.section>p{font-size:14px;line-height:21px}
 .flavorcard{min-width:0}.flavorcard>span:first-child{min-width:0}.mini{max-width:38%;object-fit:cover}
 .mobilecart{left:14px;right:14px;bottom:max(12px,env(safe-area-inset-bottom));width:calc(100% - 28px);min-height:52px;border-radius:9px;background:var(--gold);color:#fff;font-size:15px;z-index:8;box-shadow:0 8px 24px #1f29372b}
 .stickyInner{width:calc(100% - 20px);height:58px;gap:5px}.barCategory{flex:1;min-width:0;width:auto}.barCategory .bellaSelectTrigger{min-height:43px}.barNav{flex:none;gap:0;margin:0}.barNav a,.barNav button{min-width:36px;min-height:42px;padding:3px}.barNav .uiIcon{width:19px;height:19px}
 .overlay{padding:8px}.modal{width:100%;max-height:calc(100dvh - 16px);height:calc(100dvh - 16px);border-radius:12px}.modalphoto{height:145px;padding:10px}.modalphotoInner{border-radius:9px}.modalhead{padding:12px 14px}.modalbody{overscroll-behavior:contain}.modalfooter{padding:10px 12px max(10px,env(safe-area-inset-bottom))}
 .promoDialog{height:calc(100dvh - 16px);max-height:none}.promoBody{overscroll-behavior:contain}
 .phonebox,.checkout,.cepbox{width:100%;max-height:calc(100dvh - 16px);border-radius:12px;overscroll-behavior:contain}.phonebox{padding:22px}.checkout{padding:20px}.cepbox{height:min(720px,calc(100dvh - 16px))}
 .cart.open{inset:8px 8px 0;height:calc(100dvh - 8px);border-radius:12px 12px 0 0}.cart.open .cartheader .closeCart{width:34px;height:34px;display:grid;place-items:center}
 .footer .wrap{display:flex;flex-direction:column;gap:5px}
}
@media(max-width:420px){
 .store p .location{display:flex;gap:3px}.store p .dot{display:none}.mark{width:78px;height:78px;flex:none;font-size:17px}.mark small{font-size:17px}
 .tools{display:grid;grid-template-columns:1fr;gap:9px;margin:14px 0 27px}.categoryControl,.search{width:100%;max-width:none}.search input{width:100%;font-size:16px;padding-left:43px}.search .uiIcon{left:14px;width:18px;height:18px}
 .cards,.flavorcards{grid-template-columns:1fr}.card .photo{aspect-ratio:1}.flavorcard{min-height:182px;padding:12px}.mini{width:102px;height:136px;max-width:39%}.flavorcard b{font-size:15px;line-height:21px}.flavorcard small{font-size:13px;line-height:18px}
 .options{grid-template-columns:repeat(2,minmax(0,1fr))}.opt{min-height:67px}
 .addressgrid{grid-template-columns:minmax(0,1fr) 76px;gap:4px 8px}.addressbox .field input{padding:10px}.checkout h2{font-size:21px}.checkout{padding:18px}.phonebox{padding:20px}.cepinput{font-size:31px}.cepbody{padding:23px 17px}
 .barCategory{min-width:0}.barCategory .bellaSelectTrigger{font-size:12px;padding:8px}.barNav a,.barNav button{min-width:32px}.barNav .uiIcon{width:18px;height:18px}
}
@media(max-width:650px) and (max-height:650px){.modalphoto{height:105px}.modalhead{padding:8px 12px}.modal .group{padding:14px}.modalfooter{padding-top:7px;padding-bottom:7px}.phonebox h2{margin-top:20px}.cepbody p{margin-bottom:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.pageLoader,.loaderMark,.loaderDots i,.overlay,.overlay>*,.deliveryPopover,.stickyBar,.cart,.cta,.chip,.opt,.card,.flavorcard,.upsellCard{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
