/* Enchanted Play Bistro — La carta */
body.menu-page{background:
  radial-gradient(70% 45% at 50% 0%,rgba(201,162,76,.2),transparent 70%),
  radial-gradient(40% 30% at 0% 60%,rgba(169,89,47,.1),transparent 70%),
  radial-gradient(40% 30% at 100% 85%,rgba(201,162,76,.08),transparent 70%),
  var(--f9);color:var(--parch)}
.m-motes{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden}
.mmote{position:absolute;border-radius:50%;background:var(--gold-l);box-shadow:0 0 8px 1px rgba(230,204,136,.6);opacity:0;animation:mrise linear infinite;will-change:transform,opacity}
@keyframes mrise{0%{transform:translate3d(0,0,0);opacity:0}15%{opacity:.85}100%{transform:translate3d(40px,-70vh,0);opacity:0}}
main,.mfoot{position:relative;z-index:1}

/* cabecera */
.mtop{position:sticky;top:0;z-index:50;background:rgba(13,27,19,.9);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1.5px solid rgba(201,162,76,.3)}
body.admin-bar .mtop{top:32px}
.mnav{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;height:74px}
.mnav-brand{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}
.mnav-brand img{height:48px;width:auto}
.mcats{overflow-x:auto;scrollbar-width:none;border-top:1.5px solid rgba(201,162,76,.14)}
.mcats::-webkit-scrollbar{display:none}
.mcats-in{display:flex;gap:8px;width:max-content;margin:0 auto;padding:10px var(--pad)}
.ench .mcats a{flex:none;padding:9px 16px;border-radius:999px;border:1.5px solid rgba(201,162,76,.35);font:600 11.5px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--parch-2);transition:background .25s,color .25s,border-color .25s}
.ench .mcats a:hover{border-color:var(--gold);color:var(--gold-l)}
.ench .mcats a.on{background:var(--gold);border-color:var(--gold);color:var(--f9)}

/* portada */
.mhero{display:grid;justify-items:center;text-align:center;gap:18px;padding:clamp(48px,7vw,96px) var(--pad) clamp(24px,4vw,48px)}
.mhero-crown{width:clamp(110px,12vw,160px);filter:drop-shadow(0 12px 24px rgba(201,162,76,.35))}
.mhero .eyebrow{justify-content:center}
.mhero h1{font-size:clamp(2.8rem,6.6vw,6.2rem);line-height:.95;font-weight:700;color:var(--parch);max-width:12em}
.mhero-drag{width:min(560px,86vw);margin-top:10px}
.menu-page .hero-fade{opacity:0;transform:translateY(18px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.menu-page.entered .hero-fade{opacity:1;transform:none}
.menu-page.entered .hero-fade.d1{transition-delay:.3s}.menu-page.entered .hero-fade.d2{transition-delay:.45s}.menu-page.entered .hero-fade.d3{transition-delay:.6s}

.mgroup-h{display:flex;align-items:center;justify-content:center;gap:22px;margin:clamp(40px,6vw,80px) auto clamp(28px,4vw,48px);padding:0 var(--pad);max-width:900px}
.mgroup-h::before,.mgroup-h::after{content:"";flex:1;height:1.5px;background:linear-gradient(90deg,transparent,var(--gold))}
.mgroup-h::after{background:linear-gradient(90deg,var(--gold),transparent)}
.mgroup-h span{font:600 clamp(22px,2.6vw,32px)/1 'Cinzel',var(--serif);letter-spacing:.24em;text-transform:uppercase;color:var(--gold-l)}

/* hojas de papiro */
.sheets{display:grid;gap:clamp(36px,5vw,72px);padding:0 var(--pad)}
.sheet{position:relative;width:100%;max-width:960px;margin:0 auto;scroll-margin-top:150px;
  border-style:solid;border-width:104px 80px 116px;
  border-image:url(../imagenes/papiro.webp) 170 120 180 fill / 104px 80px 116px stretch;
  color:#2a1d12;filter:drop-shadow(0 34px 38px rgba(0,0,0,.55))}
.sheet.rv{transform:translateY(40px) scale(.97);transform-origin:50% 0}
.sheet.rv.in{transform:none}
.sheet-in{position:relative;margin:-44px 0 0;padding:0 56px 56px}
.sheet-h{display:grid;justify-items:center;text-align:center;gap:8px;margin-bottom:34px}
.sheet-h .num{font:italic 600 22px/1 var(--serif);color:var(--copper)}
.ench .sheet-h h2{font:700 clamp(26px,3.3vw,42px)/1.05 'Cinzel',var(--serif);letter-spacing:.05em;color:#2a1d12}
.sheet-h .kick{font:600 12px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--copper-d)}
.orn{display:flex;align-items:center;gap:12px;width:min(260px,70%);margin-top:4px}
.orn::before,.orn::after{content:"";flex:1;height:1.5px;background:linear-gradient(90deg,transparent,rgba(122,61,30,.6))}
.orn::after{background:linear-gradient(90deg,rgba(122,61,30,.6),transparent)}
.orn img{width:18px;animation:twinkle 4s ease-in-out infinite}
.sheet-h .note{max-width:34em;margin-top:6px;padding:12px 20px;border:1.5px dashed rgba(122,61,30,.4);border-radius:16px;font:italic 500 18px/1.35 var(--serif);color:#5a3b22}
.sub-h{display:flex;align-items:center;gap:16px;margin:34px 0 22px;font:600 14px/1 'Cinzel',var(--serif);letter-spacing:.2em;text-transform:uppercase;color:var(--copper-d)}
.sheet-h+.sub-h{margin-top:0}
.sub-h::before,.sub-h::after{content:"";flex:1;height:1.5px;background:rgba(122,61,30,.3)}
.items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 56px}
.it{display:grid;gap:6px;align-content:start;position:relative;cursor:pointer;border-radius:18px;padding:12px 16px;margin:-12px -16px;transition:background .45s var(--ease),box-shadow .45s var(--ease),opacity .45s,transform .45s var(--ease)}
.it:hover{background:rgba(255,247,220,.28)}
.it:focus-visible{outline:2px solid var(--gold-d);outline-offset:2px}
.it.lit{background:radial-gradient(120% 140% at 0% 0%,rgba(255,246,212,.92),rgba(240,214,150,.6));box-shadow:0 0 0 1.5px var(--gold),0 0 34px 6px rgba(230,204,136,.75),0 16px 30px -14px rgba(122,61,30,.55);transform:scale(1.025);z-index:2}
.ench .it.lit h3{color:var(--f7)}
.it.lit .it-h b{color:var(--copper);text-shadow:0 0 14px rgba(230,204,136,.95)}
.it.lit .it-h i{border-bottom-color:var(--gold)}
.it::after{content:"✦";position:absolute;top:-10px;right:-8px;font-size:20px;color:var(--gold);opacity:0;transform:scale(0) rotate(-90deg);transition:opacity .4s,transform .6s cubic-bezier(.3,1.6,.5,1);text-shadow:0 0 10px rgba(230,204,136,.9)}
.it.lit::after{opacity:1;transform:none;animation:twinkle 2.6s ease-in-out .6s infinite}
.has-lit .it:not(.lit){opacity:.5}
.burst{position:fixed;z-index:60;width:9px;height:9px;pointer-events:none;background:var(--gold-l);clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);box-shadow:0 0 6px var(--gold);animation:burst .85s cubic-bezier(.2,.7,.3,1) forwards}
@keyframes burst{to{transform:translate(var(--dx),var(--dy)) scale(.2) rotate(140deg);opacity:0}}
.it-h{display:flex;align-items:baseline;gap:10px}
.ench .it-h h3{font:700 clamp(20px,1.8vw,24px)/1.15 var(--serif);color:#2a1d12;letter-spacing:0}
.it-h i{flex:1;min-width:18px;border-bottom:2px dotted rgba(122,61,30,.45);transform:translateY(-5px)}
.it-h b{font:700 21px/1 var(--serif);color:var(--copper-d);white-space:nowrap}
.it-meta{flex:none;font:600 10.5px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#7a5a3a;white-space:nowrap}
.ench .it p{font-size:15px;line-height:1.5;color:#4a3522}
.ench .it .ing{font:italic 600 16px/1.3 var(--serif);color:var(--copper-d)}
.ench .it .it-x{font:italic 600 16px/1.3 var(--serif);color:var(--f7)}
.it-tag{justify-self:start;margin-top:2px;padding:5px 10px;border-radius:999px;background:rgba(26,52,35,.12);color:var(--f7);font:600 10.5px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase}
.compact .items{gap:18px 48px}
.compact .it{gap:3px}
.ench .compact .it p{font-size:14px}
.ench .sheet-fig{position:absolute;bottom:6%;width:230px;pointer-events:none;display:none;filter:drop-shadow(0 18px 24px rgba(0,0,0,.45));animation:float 8s ease-in-out infinite}
.sheet-fig.l{left:-330px}
.sheet-fig.r{right:-330px}
.sheet:nth-child(even) .sheet-fig{animation-delay:-3s}
@media (min-width:1500px){.ench .sheet-fig{display:block}}

/* cierre */
.mcta{display:grid;justify-items:center;text-align:center;gap:26px;padding:clamp(64px,9vw,120px) var(--pad) clamp(56px,7vw,96px)}
.mcta img{width:min(420px,80vw)}
.mcta h2{font-size:clamp(2.2rem,4.6vw,4.2rem);line-height:1;max-width:14em}
.mcta-btns{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.mfoot{border-top:1.5px solid rgba(201,162,76,.4);background:rgba(13,27,19,.8);padding:48px 0 calc(32px + env(safe-area-inset-bottom))}
.mfoot-in{display:grid;justify-items:center;text-align:center;gap:14px}
.mfoot-in>img{width:180px}
.mfoot p{font-size:14.5px;color:#d9cdb0;max-width:40em}
.mfoot-links{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 22px}
.ench .mfoot-links a{font:600 12px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase}

@media (max-width:900px){
  .items{grid-template-columns:1fr;gap:26px}
  .compact .items{grid-template-columns:1fr;gap:16px}
  .sheet{border-width:74px 40px 84px;border-image-width:74px 40px 84px}
  .sheet-in{margin:-26px 0 0;padding:0 30px 40px}
}
@media (max-width:640px){
  .mnav{height:64px}
  .mnav .pill-line span{display:none}
  .mnav .pill-line{padding:11px 13px}
  .mnav-brand img{height:38px}
  .sheet{border-width:60px 26px 70px;border-image-width:60px 26px 70px}
  .sheet-in{margin:-18px 0 0;padding:0 22px 32px}
  .it-h{flex-wrap:wrap}
  .it-meta{order:3;flex-basis:100%}
  .sheet-h .note{font-size:16px}
  .mcta-btns .pill{width:100%;justify-content:space-between}
}
