/* Condesa menu app: the standard menu board (rail + search + chips + Surprise Me +
   item sheet), skinned in the Condesa design tokens. Loads on /menu/ pages only.
   ink #0B0B0B, ground #141414, panel #1B1B1B, rule #2A2A2A, coral #FF8066,
   lemon #FFFACD, body #E4DFC0, muted #ADABA0, veg #9BC48A. Bayer Sans + Inter. */
.mb{--hdr:72px;--rule:#2A2A2A;--panel:#1B1B1B;--coral:#FF8066;--lemon:#FFFACD;--body:#E4DFC0;
  --muted:#ADABA0;--veg:#9BC48A;--disp:'Bayer Sans',Inter,sans-serif;--ui:Inter,system-ui,sans-serif;
  background:#141414;color:var(--lemon);font-family:var(--ui)}
@media(max-width:1079px){.mb{--hdr:64px}}
.mb h1,.mb h2,.mb h3,.mb h4,.mb p{margin:0}
.mb a{text-decoration:none}

.mboard{max-width:1440px;margin:0 auto;padding:clamp(8px,2vw,24px) clamp(20px,5vw,40px) clamp(64px,8vw,110px);
  display:grid;grid-template-columns:minmax(0,260px) minmax(0,1fr);align-items:start}
.mrail{position:sticky;top:var(--hdr);max-height:calc(100vh - var(--hdr));overflow-y:auto;scrollbar-width:thin;
  border-right:1px solid var(--rule);padding:22px 24px 40px 0}
.mrail-h{padding-bottom:16px;border-bottom:1px solid var(--rule);margin-bottom:22px}
.mrail-h b{display:block;font:400 26px/1 var(--disp);color:var(--lemon)}
.mrail-h i{display:block;margin-top:8px;font:600 11px/1 var(--ui);font-style:normal;letter-spacing:.12em;
  text-transform:uppercase;color:var(--muted)}
.mrg{margin-bottom:26px}
.mrg h4{margin:0 0 8px;font:600 12px/1 var(--ui);letter-spacing:.14em;text-transform:uppercase;color:var(--coral)}
.mrg a{display:flex;justify-content:space-between;gap:12px;padding:9px 12px;border-left:2px solid transparent;
  color:var(--body);font:500 15px/1.3 var(--ui)}
.mrg a:hover{color:var(--lemon);background:rgba(255,250,205,.04)}
.mrg a.on{border-left-color:var(--coral);background:rgba(255,128,102,.1);color:var(--lemon)}
.mrg .ct{font:500 13px/1.3 var(--ui);color:var(--muted)}
.mrg a.on .ct{color:var(--coral)}
.mcontent{padding:18px 0 0 clamp(28px,3vw,52px);min-width:0}

/* utility bar */
.mutil{position:sticky;top:var(--hdr);z-index:20;background:#141414;border-bottom:1px solid var(--rule);
  display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:12px 0}
.msearch{flex:1 1 100%;display:flex;align-items:center;gap:10px;min-height:48px;padding:0 16px;
  border:1.5px solid var(--rule);border-radius:999px;background:var(--panel);color:var(--muted)}
.msearch:focus-within{border-color:var(--coral)}
.msearch input{flex:1;min-width:0;background:none;border:0;outline:none;color:var(--lemon);font:400 16px/1 var(--ui);padding:12px 0}
.msearch input::placeholder{color:var(--muted)}
.mfilters{display:contents}
#mchips{display:flex;flex-wrap:wrap;gap:8px}
.mchip,.msurprise{min-height:40px;padding:0 16px;border-radius:999px;font:600 14px/1 var(--ui);cursor:pointer;
  border:1.5px solid var(--rule);background:transparent;color:var(--lemon);transition:background .25s,color .25s,border-color .25s}
.mchip:hover{border-color:var(--lemon)}
.mchip[aria-pressed=true]{background:var(--coral);border-color:var(--coral);color:#0B0B0B}
.msurprise{border-color:var(--coral);color:var(--coral)}
.msurprise:hover{background:var(--coral);color:#0B0B0B}
.mfilter-toggle{display:none}
.mswitch{display:inline-flex;gap:4px;margin:18px 0 34px;padding:4px;border:1.5px solid var(--rule);border-radius:999px}
.mswitch a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 22px;border-radius:999px;
  font:600 15px/1 var(--ui);color:var(--lemon);transition:background .25s,color .25s}
.mswitch a:hover{color:var(--coral)}
.mswitch a[aria-current=page]{background:var(--coral);color:#0B0B0B}

/* headings */
.mback{display:inline-flex;margin:0 0 18px;font:600 14px/1 var(--ui);color:var(--coral)}
.mback:hover{color:var(--lemon)}
.msec-ey{font:600 13px/1.2 var(--ui);letter-spacing:.12em;text-transform:uppercase;color:var(--coral);margin-bottom:14px!important}
.msec-h{font:400 clamp(48px,7vw,104px)/.9 var(--disp);color:var(--lemon);padding-bottom:6px}
.mintro{margin-top:18px!important;max-width:620px;font:400 18px/1.6 var(--ui);color:var(--body);text-wrap:pretty}
.msec-note{margin-top:16px!important;max-width:720px;padding-left:16px;border-left:2px solid var(--coral);
  font:400 16px/1.6 var(--ui);color:var(--body)}
.mgroup{margin-top:clamp(40px,5vw,64px)}
.mallergy{margin-top:48px!important;padding-top:20px;border-top:1px solid var(--rule);max-width:760px;
  font:400 13px/1.6 var(--ui);color:var(--muted)}

/* signature cards: cut-out dish on the design's stage glow */
.mfeat{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,190px),1fr));gap:36px 22px;margin-top:28px}
.mcard{display:flex;flex-direction:column;color:var(--lemon);min-width:0}
.mph{position:relative;aspect-ratio:1;border-radius:6px;overflow:hidden;
  background:radial-gradient(ellipse at 50% 45%,rgba(255,128,102,.16) 0%,#141414 70%)}
.mph img{position:absolute;inset:6%;width:88%;height:88%;object-fit:contain;
  filter:drop-shadow(0 24px 30px rgba(0,0,0,.55));transition:transform .5s ease}
.mcard:hover .mph img{transform:scale(1.05)}
.mc-b{padding-top:16px}
.mc-h{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.mc-n{font:400 clamp(24px,2vw,30px)/1.05 var(--disp);overflow-wrap:anywhere}
.mcard:hover .mc-n{color:var(--coral)}
.mc-p{font:600 15px/1 var(--ui);color:var(--coral);white-space:nowrap}
.mc-d{margin-top:8px!important;font:400 15px/1.55 var(--ui);color:var(--body)}

/* category tiles */
.mtiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:12px;margin-top:4px}
.mtile{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:150px;padding:20px;
  border-radius:8px;background:var(--panel);border:1.5px solid transparent;overflow:hidden;color:var(--lemon);
  transition:border-color .25s}
.mtile:hover{border-color:var(--coral)}
.mt-ph{position:absolute;right:-6%;top:-22%;width:48%;aspect-ratio:1;pointer-events:none}
.mt-ph img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 16px 22px rgba(0,0,0,.6));transition:transform .5s ease}
.mtile:hover .mt-ph img{transform:rotate(-4deg) scale(1.04)}
.mt-n{position:relative;z-index:1;font:400 clamp(26px,2.2vw,32px)/1 var(--disp)}
.mt-c{position:relative;z-index:1;margin-top:8px;font:500 14px/1 var(--ui);color:var(--muted)}

/* item rows */
.mgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,400px),1fr));column-gap:48px;margin-top:20px}
.mrow{padding:20px 0;border-bottom:1px solid var(--rule);cursor:pointer;outline-offset:4px}
.mr-top{display:flex;align-items:baseline;gap:12px}
.mr-name{flex:0 1 auto;font:400 clamp(22px,1.8vw,27px)/1.1 var(--disp);color:var(--lemon)}
.mrow:hover .mr-name{color:var(--coral)}
.mr-lead{flex:1 1 16px;min-width:16px;border-bottom:1.5px dotted #3a3a3a;transform:translateY(-5px)}
.mr-price{flex:none;font:600 16px/1 var(--ui);color:var(--coral);white-space:nowrap}
.mr-desc{margin-top:8px!important;font:400 15px/1.55 var(--ui);color:var(--body);max-width:62ch;text-wrap:pretty}
.mr-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.mtag{font:600 11px/1 var(--ui);letter-spacing:.04em;padding:5px 10px;border-radius:999px;border:1px solid #3a3a3a;color:var(--muted)}
.mtag-v{background:var(--veg);border-color:var(--veg);color:#0B0B0B}
.mtag-hot{border-color:var(--coral);color:var(--coral)}
.mnav{display:flex;justify-content:space-between;gap:14px;margin-top:48px;padding-top:24px;border-top:1.5px solid var(--lemon);
  font:600 15px/1.3 var(--ui)}
.mnav a{color:var(--coral)}
.mnav a:hover{color:var(--lemon)}

/* view all */
.mall-sec{padding-top:clamp(56px,7vw,96px);scroll-margin-top:calc(var(--hdr) + 80px)}
.mall-h{font:400 clamp(40px,5vw,72px)/.95 var(--disp);padding-bottom:18px;border-bottom:1.5px solid var(--lemon)}
.mall-h a{color:var(--lemon)}
.mall-h a:hover{color:var(--coral)}
.mall-sec .mgrid{margin-top:4px}

/* search results */
#mresults{padding-top:10px}
#mresults .rhead{display:flex;justify-content:space-between;align-items:center;padding:8px 0 16px;
  font:600 13px/1 var(--ui);letter-spacing:.12em;text-transform:uppercase}
#mresults .rhead button{background:none;border:0;cursor:pointer;font:600 14px/1 var(--ui);color:var(--coral)}
#mresults .rrow{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:16px;align-items:baseline;padding:16px 0;
  border-bottom:1px solid var(--rule);color:var(--lemon)}
#mresults .rn{font:400 24px/1.15 var(--disp)}
#mresults .rrow:hover .rn{color:var(--coral)}
#mresults .rc{font:500 13px/1 var(--ui);color:var(--muted)}
#mresults .rp{font:600 16px/1 var(--ui);color:var(--coral)}
#mresults .rempty{font:400 16px/1.5 var(--ui);color:var(--body);padding:12px 0}

/* item sheet */
#mscrim{position:fixed;inset:0;z-index:89;width:100%;height:100%;border:0;background:rgba(0,0,0,.6)}
#msheet{position:fixed;top:0;right:0;z-index:90;width:min(460px,100%);height:100%;overflow-y:auto;
  background:#141414;border-left:1px solid var(--rule);color:var(--lemon);font-family:var(--ui)}
.sh-photo{aspect-ratio:1;background:radial-gradient(ellipse at 50% 45%,rgba(255,128,102,.18) 0%,#141414 70%)}
.sh-photo img{width:100%;height:100%;object-fit:contain;padding:8%;filter:drop-shadow(0 30px 40px rgba(0,0,0,.55))}
.sh-body{padding:32px 28px 44px;display:grid;gap:16px}
.sh-ey{font:600 12px/1 var(--ui);letter-spacing:.12em;text-transform:uppercase;color:var(--coral)}
.sh-name{margin:0;font:400 40px/1 var(--disp)}
.sh-price{font:600 20px/1 var(--ui);color:var(--coral)}
.sh-desc{margin:0;font:400 17px/1.6 var(--ui);color:var(--body)}
.sh-tags{display:flex;flex-wrap:wrap;gap:6px}
.sh-close{justify-self:start;min-height:44px;padding:0 20px;border-radius:999px;border:1.5px solid var(--rule);
  background:none;color:var(--lemon);font:600 14px/1 var(--ui);cursor:pointer}
.sh-close:hover{border-color:var(--lemon)}

@media(max-width:1079px){
  .mboard{grid-template-columns:1fr}
  .mrail{display:none}
  .mcontent{padding:8px 0 0}
  .mfilter-toggle{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;flex:none;
    border-radius:50%;border:1.5px solid var(--rule);background:var(--panel);color:var(--lemon);cursor:pointer}
  .mfilter-toggle[aria-expanded=true]{background:var(--coral);border-color:var(--coral);color:#0B0B0B}
  .mfilters{display:none;flex-basis:100%}
  .mutil.filters-open .mfilters{display:flex;flex-wrap:wrap;gap:8px}
  .mswitch{display:flex;width:100%}
  .mswitch a{flex:1;padding:0 10px;font-size:14px}
  #mresults .rrow{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"n p" "c c";gap:4px 12px}
  #mresults .rn{grid-area:n;font-size:22px}#mresults .rp{grid-area:p}#mresults .rc{grid-area:c}
}
@media(max-width:639px){.msearch{flex-basis:0}.mtile{min-height:120px}.mfeat{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 14px}.mc-n{font-size:22px}}
@media(prefers-reduced-motion:reduce){.mph img,.mt-ph img,.mchip,.mswitch a{transition:none}}
