/* =========================================================================
   IDENTIDAD — Menu page
   ========================================================================= */
[data-lang="en"] .only-es{display:none!important;}
[data-lang="es"] .only-en{display:none!important;}

body.menu-page{background:var(--bosque);}

/* shared site header: transparent "light" nav overlaid on the hero photo
   (like the homepage), scrolling away above the sticky category controls. */
.menu-page .site-header{position:absolute;top:0;left:0;right:0;background:transparent;border-bottom-color:transparent;}

/* flavor filters hidden for now (kept in DOM) */
.mc-row.mc-row--filter{display:none;}
.menu-page .mc-row--nav{border-bottom:0;}

/* ---- top (scrolls away) ---- */
.menu-masthead{padding:clamp(1.4rem,3vw,2rem) var(--gutter) 0;}
.menu-masthead .brand{display:inline-flex;align-items:center;gap:.7rem;color:var(--crema);}
.menu-masthead .brand .mark{width:38px;height:38px;}
.menu-masthead .brand .wordmark{font-family:var(--font-ui);font-weight:500;font-size:.76rem;letter-spacing:.3em;text-transform:uppercase;line-height:1.1;}
.menu-masthead .brand .wordmark small{display:block;font-size:.6rem;letter-spacing:.34em;color:var(--crema-dim);}
.menu-hero{position:relative;overflow:hidden;background:var(--carbon);
  min-height:80vh;display:flex;align-items:flex-end;
  padding:clamp(3rem,8vw,6rem) var(--gutter) clamp(2.4rem,5vw,3.6rem);}
.menu-hero__bg{position:absolute;inset:0;z-index:0;}
.menu-hero__bg picture{display:block;width:100%;height:100%;}
.menu-hero__bg img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;}
.menu-hero__scrim{position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(180deg,color-mix(in oklab,var(--carbon) 34%,transparent) 0%,transparent 32%,color-mix(in oklab,var(--bosque) 50%,transparent) 74%,var(--bosque) 100%),
    linear-gradient(90deg,color-mix(in oklab,var(--carbon) 44%,transparent) 0%,color-mix(in oklab,var(--carbon) 12%,transparent) 44%,transparent 72%),
    linear-gradient(color-mix(in oklab,var(--bosque) 16%,transparent),color-mix(in oklab,var(--bosque) 16%,transparent));}
.menu-hero__inner{position:relative;z-index:2;max-width:var(--maxw);margin-inline:auto;width:100%;}
.menu-hero .eyebrow{margin-bottom:1rem;text-shadow:0 1px 12px rgba(0,0,0,.6);}
.menu-hero h1{font-family:var(--font-display);font-weight:500;text-transform:uppercase;
  font-size:clamp(3rem,11vw,7rem);line-height:.92;letter-spacing:.01em;color:var(--crema);
  text-shadow:0 2px 24px rgba(0,0,0,.45);}
.menu-hero p{margin-top:1.2rem;max-width:48ch;color:var(--crema);font-size:var(--t-md);
  text-shadow:0 1px 18px rgba(0,0,0,.55);}
@media (max-width:680px){
  .menu-hero{align-items:flex-start;min-height:58vh;
    padding-top:clamp(8.5rem,26vw,12rem);text-align:center;}
  .menu-hero__inner{display:flex;flex-direction:column;align-items:center;}
  .menu-hero__bg img{object-position:center bottom;}
  .menu-hero__scrim{
    background:
      linear-gradient(180deg,color-mix(in oklab,var(--carbon) 44%,transparent) 0%,color-mix(in oklab,var(--carbon) 16%,transparent) 26%,transparent 54%,color-mix(in oklab,var(--bosque) 48%,transparent) 88%,var(--bosque) 100%),
      linear-gradient(color-mix(in oklab,var(--bosque) 14%,transparent),color-mix(in oklab,var(--bosque) 14%,transparent));}
}

/* =========================================================================
   Sticky controls
   ========================================================================= */
.menu-controls{position:sticky;top:0;z-index:40;background:color-mix(in oklab,var(--bosque) 94%,transparent);
  backdrop-filter:blur(10px);border-bottom:1px solid var(--hair-dark);}
.mc-row{display:flex;align-items:center;gap:1rem;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter);}
.mc-row--nav{padding-block:.65rem;border-bottom:1px solid var(--hair-dark);}
.mc-row--filter{padding-block:.6rem;}

.mc-home{flex:none;display:flex;align-items:center;color:var(--crema);}
.mc-home .mark{width:30px;height:30px;}

/* category nav */
.cat-nav{flex:1;display:flex;gap:.35rem;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;}
.cat-nav::-webkit-scrollbar{display:none;}
.cat-nav a{flex:none;scroll-snap-align:start;font-family:var(--font-ui);font-weight:500;font-size:.72rem;
  letter-spacing:.14em;text-transform:uppercase;color:var(--crema-dim);white-space:nowrap;
  padding:.6rem .85rem;border-radius:var(--radius);transition:color var(--dur) var(--ease),background var(--dur) var(--ease);}
.cat-nav a:hover{color:var(--crema);}
.cat-nav a.is-active{color:var(--bosque-700);background:var(--lima);}
.cat-nav a.is-dim{opacity:.32;pointer-events:none;}

/* lang toggle (reuse look) */
.lang-toggle{flex:none;display:flex;align-items:center;gap:.1rem;font-family:var(--font-ui);font-weight:500;font-size:.72rem;letter-spacing:.12em;}
.lang-toggle button{background:none;border:0;color:var(--crema-faint);cursor:pointer;padding:.3rem .45rem;font:inherit;text-transform:uppercase;transition:color var(--dur) var(--ease);}
.lang-toggle button[aria-pressed="true"]{color:var(--lima);}
.lang-toggle button:hover{color:var(--crema);}
.lang-toggle .sep{color:var(--crema-faint);}

/* filter row */
.filter-label{flex:none;font-family:var(--font-ui);font-weight:500;font-size:.64rem;letter-spacing:.24em;text-transform:uppercase;color:var(--oro);}
.chips{flex:1;display:flex;gap:.45rem;overflow-x:auto;scrollbar-width:none;padding-block:.15rem;-webkit-overflow-scrolling:touch;}
.chips::-webkit-scrollbar{display:none;}
.chip{flex:none;font-family:var(--font-display);font-weight:300;font-size:.8rem;letter-spacing:.04em;
  color:var(--crema-dim);background:transparent;border:1px solid var(--hair-dark);border-radius:var(--radius-pill);
  padding:.52em 1.05em;cursor:pointer;white-space:nowrap;min-height:38px;
  transition:color var(--dur) var(--ease),background var(--dur) var(--ease),border-color var(--dur) var(--ease);}
.chip:hover{color:var(--crema);border-color:var(--hair-oro);}
.chip[aria-pressed="true"]{color:var(--bosque-700);background:var(--lima);border-color:var(--lima);}
.mc-count{flex:none;display:flex;align-items:center;gap:.8rem;}
.count-txt{font-family:var(--font-display);font-size:.78rem;letter-spacing:.04em;color:var(--crema-dim);white-space:nowrap;}
.count-txt b{color:var(--lima);font-weight:500;}
.clear-btn{font-family:var(--font-ui);font-weight:500;font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;
  background:none;border:0;color:var(--crema-faint);cursor:pointer;padding:.4rem .2rem;transition:color var(--dur) var(--ease);}
.clear-btn:hover{color:var(--lima);}
.clear-btn[hidden]{display:none;}
button:focus-visible,a:focus-visible{outline:2px solid var(--lima);outline-offset:2px;}

/* =========================================================================
   Sections + items
   ========================================================================= */
.menu-body{max-width:var(--maxw);margin-inline:auto;padding:clamp(2rem,5vw,3.5rem) var(--gutter) 0;}
.m-section{padding-block:clamp(2rem,5vw,3.6rem);scroll-margin-top:160px;border-top:1px solid var(--hair-dark);}
@media (max-width:680px){.m-section{scroll-margin-top:62px;}}
.m-section:first-child{border-top:0;}
.m-section[hidden]{display:none;}
.m-sec-head{display:flex;align-items:baseline;gap:1.1rem;margin-bottom:clamp(1.6rem,3vw,2.6rem);flex-wrap:wrap;}
.m-sec-head h2{font-family:var(--font-display);font-weight:500;text-transform:uppercase;
  font-size:clamp(1.7rem,4vw,2.9rem);line-height:1;letter-spacing:.02em;color:var(--lima);}
.m-sec-head .sub{font-family:var(--font-ui);font-weight:500;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;
  color:var(--bosque-700);background:var(--oro);padding:.4em .8em;border-radius:var(--radius);}
.m-sec-note{flex-basis:100%;font-family:var(--font-display);font-weight:500;font-size:.95rem;letter-spacing:.02em;color:var(--oro);margin-top:.1rem;}

.m-list{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(1.4rem,2.4vw,2.4rem) clamp(2rem,4vw,4rem);}
.m-list--single{grid-template-columns:1fr;max-width:62ch;}

.m-item{display:flex;gap:1.1rem;align-items:flex-start;}
.m-item[hidden]{display:none;}
.m-ico{width:46px;height:64px;}
.m-ico span{font-size:.5rem;}
/* real icon images: fit inside the 46×64 box without distorting (keeps row height) */
img.m-ico{object-fit:contain;object-position:center top;}
.m-body{flex:1;min-width:0;}
.m-head{display:flex;align-items:baseline;gap:.6rem;}
.m-name{font-family:var(--font-display);font-weight:500;text-transform:uppercase;font-size:1.06rem;
  letter-spacing:.04em;line-height:1.2;color:var(--crema);}
.m-dots{flex:1;min-width:14px;align-self:flex-end;border-bottom:1px dotted color-mix(in oklab,var(--crema) 28%,transparent);transform:translateY(-4px);}
.m-price{flex:none;font-family:var(--font-display);font-weight:500;font-size:1rem;letter-spacing:.04em;color:var(--lima);}
.m-price.is-mp{color:var(--oro);font-size:.86rem;letter-spacing:.1em;}
.m-desc{margin:.5rem 0 0;font-family:var(--font-body);font-size:.95rem;line-height:1.55;color:var(--crema-dim);}
.m-note{display:inline-block;margin-top:.5rem;font-family:var(--font-display);font-size:.66rem;letter-spacing:.12em;
  text-transform:uppercase;color:var(--teal);border:1px solid color-mix(in oklab,var(--teal) 45%,transparent);
  border-radius:var(--radius-pill);padding:.18em .7em;}
.m-tags{list-style:none;margin:.7rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem;}
.m-tag{font-family:var(--font-display);font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;color:var(--oro);
  border:1px solid var(--hair-oro);border-radius:var(--radius-pill);padding:.2em .72em;
  transition:color var(--dur) var(--ease),background var(--dur) var(--ease),border-color var(--dur) var(--ease);}
.m-tag.is-match{color:var(--bosque-700);background:var(--lima);border-color:var(--lima);}

/* no-match state */
.no-match{display:none;text-align:center;padding:4rem 0;}
.no-match.show{display:block;}
.no-match p{font-family:var(--font-display);font-size:1.1rem;color:var(--crema-dim);letter-spacing:.02em;}

/* mp footnote */
.mp-foot{max-width:var(--maxw);margin:0 auto;padding:0 var(--gutter) clamp(3rem,6vw,5rem);font-family:var(--font-display);
  font-weight:500;font-size:.82rem;letter-spacing:.04em;color:var(--crema-dim);}

/* =========================================================================
   Footer (shared look, compact)
   ========================================================================= */
.menu-foot{background:var(--carbon);border-top:1px solid var(--hair-dark);margin-top:clamp(2rem,5vw,4rem);
  padding:clamp(2.4rem,5vw,3.6rem) var(--gutter);}
.menu-foot .inner{max-width:var(--maxw);margin-inline:auto;display:flex;justify-content:space-between;align-items:center;gap:2rem;flex-wrap:wrap;}
.menu-foot .l{display:flex;align-items:center;gap:1rem;color:var(--crema);}
.menu-foot .l .mark{width:46px;height:46px;}
.menu-foot .meta{font-family:var(--font-display);font-size:.82rem;letter-spacing:.03em;color:var(--crema-dim);line-height:1.6;text-align:right;}
.menu-foot .meta a{color:var(--crema-dim);}
.menu-foot .meta a:hover{color:var(--lima);}

@media (max-width:760px){
  .m-list{grid-template-columns:1fr;}
  .mc-row--filter{flex-wrap:nowrap;}
  .filter-label{display:none;}
  .menu-foot .inner{flex-direction:column;align-items:flex-start;}
  .menu-foot .meta{text-align:left;}
}
@media (max-width:520px){
  .mc-count .count-txt{font-size:.72rem;}
}
