html.mb-navigation-open,html.mb-navigation-open body{overflow:hidden}
.mb-mobile-menu{position:fixed;inset:0 auto 0 0;width:min(370px,calc(100vw - 20px));max-width:none;height:100dvh;max-height:100dvh;margin:0;padding:0;border:0;border-radius:0 20px 20px 0;background:#fffdf5;color:#284b36;box-shadow:12px 0 50px #19382730;overflow:hidden;font-family:inherit}
.mb-mobile-menu[open]{display:flex;flex-direction:column}
.mb-mobile-menu::backdrop{background:#173c2d66;backdrop-filter:blur(3px)}
.mb-nav-brand-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px 12px;border-bottom:1px solid #e3e9db;flex-shrink:0}
.mb-nav-brand-row img{display:block;width:150px;height:46px;object-fit:contain}
.mb-nav-close{display:grid;place-items:center;width:42px;height:42px;flex-shrink:0;padding:9px;border:1px solid #dce4d4;border-radius:50%;background:#fffdf5;color:#315e45}
.mb-nav-close svg,.mb-nav-back svg,.mb-nav-chevron{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.mb-nav-heading{padding:12px 20px 10px;flex-shrink:0}
.mb-nav-heading h2{font-size:24px;font-weight:700;line-height:1.2;letter-spacing:-.035em;margin:4px 0 2px;color:#284b36}
.mb-nav-back{display:flex;align-items:center;gap:5px;max-width:100%;min-height:36px;padding:0 5px 0 0;margin:0 0 6px;border:0;background:transparent;color:#657960;font-size:12px;font-weight:600;text-align:left}
.mb-nav-back[hidden],.mb-nav-panel[hidden]{display:none!important}
.mb-nav-back span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mb-nav-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:4px 12px 18px;scrollbar-width:thin;scrollbar-color:#c6d2bb transparent}
.mb-nav-panel ul{list-style:none;padding:0;margin:0}
.mb-nav-panel li{padding:0;margin:0}
.mb-nav-item{display:flex;align-items:center;gap:12px;width:100%;min-height:54px;padding:9px 10px;border:0;border-radius:11px;background:transparent;color:#294d36;text-decoration:none;text-align:left;font-family:inherit;font-size:14px;font-weight:500;line-height:1.4}
.mb-nav-item:hover,.mb-nav-item:focus-visible{background:#eef4e7}
.mb-nav-item:focus-visible,.mb-nav-view-all:focus-visible,.mb-nav-back:focus-visible,.mb-nav-close:focus-visible,.mb-nav-footer a:focus-visible{outline:2px solid #537c47;outline-offset:-2px}
.mb-nav-icon{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border-radius:50%;background:#edf2e5;color:#527447}
.mb-nav-icon svg{display:block;width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.mb-nav-icon[data-category="kids-snacks"],.mb-nav-icon[data-category="drinks"]{background:#f7e9dc;color:#a16d44}
.mb-nav-icon[data-category="adult-snacks"]{background:#f8efd0;color:#927833}
.mb-nav-icon[data-category="adult-snacks-pasta"]{background:#e4f0ed;color:#4c8075}
.mb-nav-icon[data-category="mixes-sweeteners"]{background:#f4e4df;color:#a57259}
.mb-nav-icon[data-category="protein"]{background:#ece6f2;color:#826b9a}
.mb-nav-age{font-size:11px;font-weight:700}
.mb-nav-label{flex:1;min-width:0;overflow-wrap:anywhere}
.mb-nav-chevron{flex-shrink:0;color:#839479}
.mb-nav-view-all{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:12px 14px;margin:2px 6px 10px;border:1px solid #dbe7d0;border-radius:11px;background:#edf4e6;color:#315e45;font-size:13px;font-weight:700;line-height:1.4;text-decoration:none}
.mb-nav-view-all span{font-size:19px;line-height:1}
.mb-nav-footer{padding:12px 18px max(12px,env(safe-area-inset-bottom));border-top:1px solid #e3e9db;flex-shrink:0;background:#f6f8ef}
.mb-nav-footer a{display:flex;align-items:center;gap:10px;min-height:40px;color:#315e45;text-decoration:none;font-size:13px;font-weight:600}
.mb-nav-footer svg{width:21px;height:21px}
.mb-nav-forward{animation:mb-nav-forward .18s ease-out}.mb-nav-return{animation:mb-nav-return .18s ease-out}
@keyframes mb-nav-forward{from{transform:translateX(16px);opacity:.3}to{transform:translateX(0);opacity:1}}
@keyframes mb-nav-return{from{transform:translateX(-12px);opacity:.3}to{transform:translateX(0);opacity:1}}
@media(min-width:641px){.mb-mobile-menu{display:none!important}}
@media(prefers-reduced-motion:reduce){.mb-nav-forward,.mb-nav-return{animation:none}}
