.editorial-item[data-menu-product]{cursor:pointer}
.editorial-item .editorial-order{padding:0;background:transparent;color:inherit;text-align:left}
.editorial-item .editorial-order:focus-visible{outline:3px solid var(--accent);outline-offset:5px}
.menu-reveal[hidden],.menu-reveal-toast[hidden]{display:none}

.menu-reveal{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:clamp(12px,3vw,38px);background:#07100dc9;opacity:0;transition:opacity .3s ease}
.menu-reveal.is-open{opacity:1}
.menu-reveal__panel{--ink:#101710;--paper:#f3f0e7;--lime:#0ae51b;position:relative;display:flex;flex-direction:column;width:min(1200px,100%);height:min(850px,calc(100dvh - clamp(24px,6vw,76px)));min-height:0;overflow:hidden;border:2px solid var(--ink);background:var(--paper);color:var(--ink);box-shadow:12px 12px 0 var(--lime);transform:translateY(24px) rotate(-.6deg) scale(.98);transition:transform .42s cubic-bezier(.22,1,.36,1);will-change:transform}
.menu-reveal.is-open .menu-reveal__panel{transform:none}
.menu-reveal__panel:focus{outline:0}
.menu-reveal__brand{flex:none;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:56px;padding:10px 90px 10px clamp(24px,3vw,42px);border-bottom:2px solid var(--ink);background:var(--lime);font-size:.71rem;font-weight:900;letter-spacing:.16em}
.menu-reveal__brand-name,.menu-reveal__brand-city{white-space:nowrap}
.menu-reveal__brand-city{justify-self:end}
.menu-reveal__brand-star{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round}
.menu-reveal__close{position:absolute;z-index:5;top:7px;right:clamp(12px,2vw,26px);display:grid;place-items:center;width:42px;height:42px;padding:0;border:2px solid var(--ink);border-radius:50%;background:var(--paper);color:var(--ink);cursor:pointer;transition:transform .2s,background .2s}
.menu-reveal__close svg{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round}
.menu-reveal__close:hover{background:var(--ink);color:var(--paper);transform:rotate(90deg)}
.menu-reveal__close:focus-visible,.menu-reveal__add:focus-visible,.menu-reveal__extra input:focus-visible{outline:3px solid var(--ink);outline-offset:3px}

.menu-reveal__content{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(330px,.92fr)}
.menu-reveal__story{position:relative;display:flex;flex-direction:column;justify-content:safe center;min-width:0;min-height:0;overflow-y:auto;overflow-x:hidden;padding:clamp(28px,3.5vw,52px);background:var(--paper);isolation:isolate;scrollbar-width:none}
.menu-reveal__story:before{content:'';position:absolute;inset:0;z-index:-1;background-image:linear-gradient(#1017100b 1px,transparent 1px),linear-gradient(90deg,#1017100b 1px,transparent 1px);background-size:36px 36px;pointer-events:none}
.menu-reveal__number{position:absolute;top:clamp(22px,3vw,42px);right:clamp(24px,4vw,66px);font:900 clamp(4rem,8vw,8rem)/.8 'Barlow Condensed',Impact,sans-serif!important;letter-spacing:-.07em;color:#10171018}
.menu-reveal__eyebrow{position:relative;z-index:1;align-self:flex-start;margin:0 0 clamp(16px,3vh,28px);padding:8px 12px;border:2px solid var(--ink);background:var(--lime);font-size:.72rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase;transform:rotate(-2deg)}
.menu-reveal__story h2{position:relative;z-index:1;width:100%;max-width:100%;margin:0;font-size:clamp(3.5rem,6vw,6rem);font-family:'Barlow Condensed',Impact,sans-serif!important;font-weight:900;line-height:.9;letter-spacing:-.055em;text-transform:uppercase;overflow-wrap:anywhere}
.menu-reveal__description{position:relative;z-index:1;max-width:44ch;margin:clamp(18px,3vh,28px) 0 0;padding-left:18px;border-left:4px solid var(--lime);font-size:clamp(1rem,1.4vw,1.18rem);font-weight:600;line-height:1.45}
.menu-reveal__diet{position:relative;z-index:1;display:inline-flex;align-self:flex-start;margin-top:20px;padding:7px 12px;border:2px solid var(--ink);background:var(--paper);font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.menu-reveal__diet[hidden],.menu-reveal__product-info[hidden],.menu-reveal__ingredients[hidden],.menu-reveal__allergens[hidden]{display:none}
.menu-reveal__mark{position:absolute;z-index:0;right:-3%;bottom:-14%;width:min(58%,370px);aspect-ratio:1;background:url('/assets/madafoka-mf-sticker.png') center/contain no-repeat;font-size:0;transform:rotate(-14deg);pointer-events:none;user-select:none;opacity:.16}

.menu-reveal__details{min-width:0;min-height:0;overflow-y:auto;overflow-x:hidden;padding:clamp(22px,2.5vw,34px);border-left:2px solid var(--ink);background:#e8e7dc;scrollbar-width:none}
.menu-reveal__story::-webkit-scrollbar,.menu-reveal__details::-webkit-scrollbar,.menu-reveal__content::-webkit-scrollbar{display:none}
.menu-reveal__index{display:inline-block;margin:0 0 16px;padding:6px 9px;border:1px solid var(--ink);font-size:.68rem;font-weight:900;letter-spacing:.14em;transform:rotate(2deg)}
.menu-reveal__product-info{margin:0 0 14px;padding:11px 0;border-top:2px solid var(--ink);border-bottom:1px solid #10171055}
.menu-reveal__product-info p{margin:0 0 5px;font-size:.83rem;line-height:1.35;overflow-wrap:anywhere}
.menu-reveal__product-info strong{font-weight:900;text-transform:uppercase}
.menu-reveal__product-info .menu-reveal__base-note{margin:8px 0 0;color:#4d5a4c;font-size:.75rem}
.menu-reveal__base,.menu-reveal__total{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:10px 0;border-top:2px solid var(--ink)}
.menu-reveal__base span,.menu-reveal__total span{font-size:.78rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.menu-reveal__base strong{font:900 2.1rem/1 'Barlow Condensed',Impact,sans-serif!important;white-space:nowrap}
.menu-reveal__extras{min-width:0;margin:15px 0 0;padding:0;border:0}
.menu-reveal__extras legend{font:900 clamp(1.9rem,2.5vw,2.7rem)/.95 'Barlow Condensed',Impact,sans-serif!important;text-transform:uppercase}
.menu-reveal__each{margin:6px 0 11px;color:#4d5a4c;font-size:.78rem;font-weight:700;line-height:1.35}
.menu-reveal__extra-list{display:grid;gap:6px}
.menu-reveal__extra{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:44px;padding:7px 11px;border:2px solid var(--ink);background:#f3f0e7;cursor:pointer;transition:background .18s,transform .18s,box-shadow .18s}
.menu-reveal__extra:hover:not(.is-unavailable){transform:translate(-2px,-2px);box-shadow:3px 3px 0 var(--ink)}
.menu-reveal__extra:has(input:checked){background:var(--lime)}
.menu-reveal__extra.is-unavailable{opacity:.5;cursor:not-allowed}
.menu-reveal__extra input{width:19px;height:19px;margin:0;accent-color:var(--ink)}
.menu-reveal__extra span{font-size:.9rem;font-weight:800;overflow-wrap:anywhere}
.menu-reveal__extra strong{font-size:.82rem;font-weight:900;white-space:nowrap}
.menu-reveal__empty{padding:16px;border:1px dashed var(--ink);font-size:.85rem;font-weight:700}
.menu-reveal__total{margin-top:16px;border-top-width:3px}
.menu-reveal__total output{font:900 2.8rem/1 'Barlow Condensed',Impact,sans-serif!important;white-space:nowrap}
.menu-reveal__count{margin:3px 0 0;font-size:.78rem;font-weight:800}
.menu-reveal__error{min-height:1.3em;margin:10px 0 0;color:#9e2d23;font-size:.8rem;font-weight:800}

.menu-reveal__action{flex:none;display:flex;justify-content:space-between;align-items:center;gap:22px;min-height:70px;padding:10px clamp(24px,4vw,54px);border-top:2px solid var(--ink);background:var(--ink);color:var(--paper)}
.menu-reveal__action-price{font:900 clamp(2rem,3vw,3rem)/1 'Barlow Condensed',Impact,sans-serif!important;white-space:nowrap}
.menu-reveal__add{display:flex;align-items:center;justify-content:space-between;gap:28px;min-width:250px;min-height:52px;padding:12px 20px;border:2px solid var(--lime);background:var(--lime);color:var(--ink);font-size:.85rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em;cursor:pointer;transition:transform .2s,box-shadow .2s}
.menu-reveal__add svg{width:19px;height:19px;flex:none;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.menu-reveal__add:hover:not(:disabled){transform:translate(-3px,-3px);box-shadow:4px 4px 0 var(--paper)}
.menu-reveal__add:disabled{border-color:#6d786c;background:#6d786c;color:var(--paper);cursor:not-allowed}

.menu-reveal-toast{position:fixed;z-index:210;right:24px;bottom:24px;display:flex;align-items:center;gap:20px;max-width:calc(100vw - 36px);padding:16px 20px;border:2px solid #101710;background:#0ae51b;color:#101710;box-shadow:5px 5px 0 #101710}
.menu-reveal-toast.is-visible{animation:menu-toast-pop 2.4s both}
@keyframes menu-toast-pop{0%{opacity:0;transform:translateY(16px) rotate(-2deg)}12%,76%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-8px)}}
.menu-reveal-toast strong{font-size:.9rem;font-weight:900}.menu-reveal-toast a{font-size:.82rem;font-weight:900;text-decoration:underline;text-underline-offset:3px}
.menu-reveal-toast a:focus-visible{outline:3px solid #101710;outline-offset:4px}

@media(max-width:800px){
  .menu-reveal{padding:0}
  .menu-reveal__panel{width:100%;height:100dvh;border:0;box-shadow:none;transform:translateY(24px)}
  .menu-reveal__brand{min-height:54px;padding:9px 70px 9px 20px;font-size:.62rem}
  .menu-reveal__close{top:6px;right:14px;width:40px;height:40px}
  .menu-reveal__content{display:block;overflow:auto;overscroll-behavior:contain;scrollbar-width:none}
  .menu-reveal__story{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;min-height:350px;overflow:hidden;padding:34px 24px 50px}
  .menu-reveal__number{top:18px;right:25px;font-size:5.5rem!important}
  .menu-reveal__eyebrow{margin-bottom:42px}
  .menu-reveal__story h2{max-width:100%;font-size:clamp(3.5rem,12vw,6rem);line-height:1.02}
  .menu-reveal__description{max-width:40ch;margin-top:24px}
  .menu-reveal__mark{right:-7%;bottom:-26%;width:48%;opacity:.16}
  .menu-reveal__details{overflow:visible;padding:32px 24px 48px;border-top:2px solid var(--ink);border-left:0}
  .menu-reveal__index{margin-bottom:22px}
  .menu-reveal__action{min-height:76px;padding:10px 18px max(10px,env(safe-area-inset-bottom));gap:15px}
  .menu-reveal__add{flex:1;min-width:0;min-height:50px;gap:8px}
  .menu-reveal-toast{right:18px;bottom:18px;left:18px;justify-content:space-between}
}
@media(max-width:420px){
  .menu-reveal__brand{grid-template-columns:1fr auto;gap:10px;font-size:.56rem}
  .menu-reveal__brand-star{display:none}
  .menu-reveal__brand-city{justify-self:start}
  .menu-reveal__story{min-height:320px;padding:28px 20px 44px}
  .menu-reveal__story h2{font-size:clamp(3.2rem,13vw,4.8rem)}
  .menu-reveal__description{font-size:.94rem}
  .menu-reveal__mark{width:55%;bottom:-22%}
  .menu-reveal__details{padding:26px 20px 40px}
  .menu-reveal__extra{gap:8px;padding-inline:10px}
  .menu-reveal__extra span,.menu-reveal__extra strong{font-size:.78rem}
  .menu-reveal__action-price{font-size:1.7rem!important}
  .menu-reveal__add{padding-inline:12px;font-size:.72rem;letter-spacing:0}
}
@media(prefers-reduced-motion:reduce){.menu-reveal,.menu-reveal__panel,.menu-reveal__close,.menu-reveal__add,.menu-reveal__extra{transition:none!important}.menu-reveal__panel{will-change:auto}.menu-reveal-toast.is-visible{animation:none}}
