/* fuentes propias (Instrument Serif y Archivo, licencia OFL), servidas desde /fonts */
@font-face{font-family:'Archivo';font-style:normal;font-weight:300;font-display:swap;src:url(fonts/archivo-normal-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Archivo';font-style:normal;font-weight:300;font-display:swap;src:url(fonts/archivo-normal-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Archivo';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/archivo-normal-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Archivo';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/archivo-normal-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Archivo';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/archivo-normal-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Archivo';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/archivo-normal-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Instrument Serif';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/instrument-serif-italic-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Instrument Serif';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/instrument-serif-italic-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Instrument Serif';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/instrument-serif-normal-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Instrument Serif';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/instrument-serif-normal-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}

/* ==========================================================================
   CARMELA RESTAURANTE — Culiacán · Primavera y Plaza Ceiba
   Paleta del manual, actualizada: la terracota se desatura un punto y el
   azul baja a tinta casi negra. Tipografías del manual, usadas en ligera.
     manual  #B07B5A  →  #B98763   arcilla
     manual  #183B59  →  #13202B   tinta
   ========================================================================== */

:root{
  color-scheme:light;
  --bone:#F4F2EE;
  --bone-2:#EAE6E0;
  --ink:#13202B;
  --ink-soft:#606C77;
  --clay:#B98763;
  --clay-ink:#8E6041;
  --line:#DCD6CD;
  --over:#F7F4F0;
  --f-d:"Instrument Serif",Georgia,"Times New Roman",serif;
  --f-b:"Archivo","Helvetica Neue",Arial,sans-serif;
  --gut:clamp(22px,5vw,64px);
  --white:#fff;
  --navy:#13202B;
  --clay-ink-hover:#855A3B;
  --shade-hair:rgba(19,32,43,.04);
  --shade-menu:rgba(10,16,22,.38);
  --shade-menu-stuck:rgba(10,16,22,.3);
  --veil-top:rgba(10,16,22,.42);
  --veil-bottom:rgba(10,16,22,.5);
  --veil-caption:rgba(10,16,22,.55);
  --bone-85:rgba(244,242,238,.85);
  --bone-90:rgba(244,242,238,.9);
  --bone-62:rgba(244,242,238,.62);
  --bone-60:rgba(244,242,238,.6);
  --visor-bg:rgba(13,20,27,.95);
}
:root:not([data-lang="en"]) [lang="en"]{display:none;}
:root[data-lang="en"] [lang="es"]{display:none;}

*,*::before,*::after{box-sizing:border-box;}
html,body{overflow-x:clip;}
body{
  margin:0;background:var(--bone);color:var(--ink);
  font-family:var(--f-b);font-size:.9375rem;font-weight:300;line-height:1.7;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3{font-family:var(--f-d);font-weight:400;line-height:1.04;margin:0;text-wrap:balance;}
p{margin:0;}
img{display:block;max-width:100%;height:auto;}
a{color:inherit;text-decoration:none;}
:focus-visible{outline:1.5px solid var(--clay);outline-offset:4px;}
::selection{background:var(--clay);color:var(--white);}

.pad{padding-inline:var(--gut);}
.rule{height:1px;background:var(--line);border:0;margin:0;}
.hero-wrap{position:relative;}

/* etiqueta pequeña, el único recurso «gráfico» de la página */
.tag{
  font-family:var(--f-b);font-size:.625rem;font-weight:500;letter-spacing:.28em;text-transform:uppercase;
  line-height:1.7;color:var(--clay-ink);
}
h2.tag{margin:0;}

/* ─────────────── encabezado ─────────────── */
.top{
  position:absolute;top:0;left:0;right:0;z-index:20;
  display:flex;align-items:center;gap:20px;
  padding:26px var(--gut);
  transition:background .35s ease,padding .35s ease;
}
.top.stuck{
  position:fixed;background:color-mix(in srgb,var(--bone) 92%,transparent);
  backdrop-filter:blur(14px);padding-block:15px;border-bottom:1px solid var(--line);
  top:env(safe-area-inset-top,0px);
}
.top .mark{margin-right:auto;display:flex;align-items:center;}
.top .mark img{height:26px;width:auto;filter:brightness(0) invert(1);transition:filter .35s ease;}
.top.stuck .mark img{filter:none;}

.menu{display:flex;gap:30px;align-items:center;}
.menu a,.menu button{
  font-family:var(--f-b);font-size:.6875rem;font-weight:400;letter-spacing:.22em;
  text-transform:lowercase;color:var(--over);background:none;border:0;padding:0;cursor:pointer;
  transition:color .3s ease,opacity .3s ease;opacity:.85;
}
.menu a:hover,.menu button:hover{opacity:1;color:var(--clay);}
.top.stuck .menu a,.top.stuck .menu button{color:var(--ink);}
.menu .sep{width:1px;height:11px;background:currentColor;opacity:.3;}
@media (max-width:660px){
  .menu{gap:18px;}
  .menu a,.menu button{font-size:.8125rem;letter-spacing:.14em;padding-block:14px;opacity:.95;}
}
@media (max-width:420px){ .menu .hide-xs{display:none;} }

/* menú desplegable de «casas»: tarjeta clara, esquinas suaves, solo los nombres */
.drop{position:relative;}
.drop-panel{
  position:absolute;top:calc(100% + 16px);left:50%;z-index:30;
  min-width:196px;padding:10px;text-align:center;
  background:var(--bone);border-radius:14px;
  box-shadow:0 1px 0 var(--shade-hair),0 18px 40px -20px var(--shade-menu);
  opacity:0;visibility:hidden;transform:translate(-50%,6px);
  transition:opacity .28s ease,transform .38s cubic-bezier(.2,.8,.2,1),visibility .28s;
}
.drop-panel::before{content:"";position:absolute;left:0;right:0;top:-18px;height:18px;}
.drop.open .drop-panel{opacity:1;visibility:visible;transform:translate(-50%,0);}
@media (hover:hover){
  .drop:hover .drop-panel{opacity:1;visibility:visible;transform:translate(-50%,0);}
}
.menu .drop-panel a{
  display:block;padding:11px 22px;border-radius:9px;opacity:1;
  font-family:var(--f-d);font-size:1.375rem;letter-spacing:-.005em;text-transform:none;line-height:1.15;
  color:var(--ink);transition:background .25s ease,color .25s ease;
}
.top.stuck .menu .drop-panel a{color:var(--ink);}
.menu .drop-panel a:hover,.top.stuck .menu .drop-panel a:hover{background:var(--bone-2);color:var(--clay-ink-hover);}
.top.stuck .drop-panel{box-shadow:0 0 0 1px var(--line),0 18px 40px -22px var(--shade-menu-stuck);}
@media (prefers-reduced-motion:reduce){ .drop-panel{transition:opacity .2s ease,visibility .2s;} }

/* ─────────────── portada ─────────────── */
.hero{position:relative;height:clamp(440px,74dvh,760px);overflow:hidden;background:var(--bone-2);}
.hero picture{display:block;height:100%;}
.hero img{width:100%;height:100%;object-fit:cover;object-position:center 50%;}
.hero::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,var(--veil-top) 0%,rgba(10,16,22,0) 34%,rgba(10,16,22,0) 52%,var(--veil-bottom) 100%);
}
.hero figcaption{
  position:absolute;left:var(--gut);right:var(--gut);bottom:clamp(26px,5vh,46px);z-index:2;
  color:var(--over);font-family:var(--f-d);font-style:italic;font-weight:300;
  font-size:clamp(.875rem,1.6vw,1.0625rem);letter-spacing:.01em;
  display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:baseline;
}
.hero figcaption .horas{font-family:var(--f-b);font-style:normal;font-size:.625rem;font-weight:400;letter-spacing:.24em;text-transform:uppercase;opacity:.85;}

/* ─────────────── frase ─────────────── */
.claim{padding-block:clamp(78px,14vh,170px);text-align:center;}
.claim h1{
  font-size:clamp(3rem,10.5vw,7.5rem);letter-spacing:-.025em;line-height:.9;
}
.claim h1 em{font-style:italic;color:var(--clay-ink);}
.claim p{
  margin:clamp(26px,3.6vw,40px) auto 0;max-width:28ch;color:var(--ink);
  font-family:var(--f-d);font-style:italic;font-weight:400;
  font-size:clamp(1.375rem,2.6vw,2.125rem);line-height:1.3;letter-spacing:-.005em;text-wrap:balance;
}

/* ─────────────── tres imágenes ─────────────── */
.three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);}
.three figure{margin:0;position:relative;overflow:hidden;background:var(--bone-2);}
.three img{width:100%;aspect-ratio:3/4;object-fit:cover;transition:transform 1.1s cubic-bezier(.2,.8,.2,1);}
.three figure:hover img{transform:scale(1.04);}
.three figcaption{
  position:absolute;left:0;right:0;bottom:0;padding:18px 20px;color:var(--over);
  font-size:.625rem;letter-spacing:.24em;text-transform:uppercase;
  background:linear-gradient(0deg,var(--veil-caption),transparent);
}
@media (max-width:720px){
  .three{grid-template-columns:minmax(0,1fr);}
  .three img{aspect-ratio:4/3;}
}
@media (prefers-reduced-motion:reduce){ .three img{transition:none;} }

/* ─────────────── la carta, en una línea ─────────────── */
.carta{padding-block:clamp(64px,11vh,130px);text-align:center;}
.carta .tag{display:block;margin-bottom:clamp(22px,3vw,34px);}
.carta .note{
  margin-top:0;color:var(--ink-soft);font-size:.8125rem;
  letter-spacing:.02em;max-width:44ch;margin-inline:auto;
}
.carta .note a{color:var(--clay-ink);border-bottom:1px solid var(--clay);padding-bottom:1px;}

/* ─────────────── las dos casas ─────────────── */
.casas{border-top:1px solid var(--line);}
.casas-in{display:grid;grid-template-columns:1fr 1fr;}
.casa{padding:clamp(48px,7vw,96px) var(--gut);}
.casa + .casa{border-left:1px solid var(--line);}
@media (max-width:820px){
  .casas-in{grid-template-columns:1fr;}
  .casa + .casa{border-left:0;border-top:1px solid var(--line);}
}
.casa h2{
  font-size:clamp(2.5rem,6vw,4.25rem);letter-spacing:-.02em;margin-block:16px 28px;
}
.casa .dato{
  display:block;color:var(--ink-soft);font-size:.875rem;line-height:1.9;
}
.casa .dato b{font-weight:400;color:var(--ink);}
.casa .dato .tel{color:var(--ink);border-bottom:1px solid var(--clay);padding-bottom:1px;}
.casa .dato .tel:hover{color:var(--clay-ink);}
.casa .acciones{display:flex;gap:26px;flex-wrap:wrap;margin-top:30px;}
.casa .acciones a{
  font-size:.6875rem;letter-spacing:.22em;text-transform:uppercase;font-weight:500;
  color:var(--ink);border-bottom:1px solid var(--clay);padding-bottom:6px;
  transition:color .3s ease,border-color .3s ease;
}
.casa .acciones a:hover{color:var(--clay-ink);}

/* ─────────────── cierre ─────────────── */
.cierre{position:relative;height:clamp(300px,34vw,640px);overflow:hidden;background:var(--bone-2);}
.cierre img{width:100%;height:100%;object-fit:cover;object-position:center 30%;}

/* ─────────────── pie ─────────────── */
footer{
  background:var(--navy);color:var(--bone);
  padding:clamp(52px,7vw,88px) var(--gut) clamp(36px,5vw,52px);
}
.pie{display:flex;justify-content:space-between;gap:26px 40px;flex-wrap:wrap;align-items:flex-end;}
.pie img{height:40px;width:auto;}
.pie .col{font-size:.75rem;color:var(--bone-60);letter-spacing:.04em;line-height:2;}
.pie .col a{color:var(--bone);border-bottom:1px solid transparent;transition:border-color .3s ease,color .3s ease;}
.pie .col a:hover{border-bottom-color:var(--clay);color:var(--white);}
.pie .fin{font-size:.625rem;letter-spacing:.2em;text-transform:uppercase;color:var(--bone-62);}
@media (max-width:620px){ .pie{flex-direction:column;align-items:flex-start;} }

/* ─────────────── página de cada casa ─────────────── */
.intro{padding-block:clamp(72px,12vh,150px) clamp(56px,9vh,110px);text-align:center;}
.intro .tag{display:block;margin-bottom:clamp(16px,2.4vw,24px);}
.intro h1{font-size:clamp(3rem,10vw,7rem);letter-spacing:-.025em;line-height:.92;}
.intro p{
  margin:clamp(26px,4vw,40px) auto 0;max-width:44ch;color:var(--ink-soft);
  font-size:clamp(.9375rem,1.5vw,1.0625rem);line-height:1.85;
}

.galeria{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);}
.galeria figure{margin:0;overflow:hidden;background:var(--bone-2);}
.galeria img{width:100%;height:100%;aspect-ratio:1;object-fit:cover;transition:transform 1.1s cubic-bezier(.2,.8,.2,1);}
.galeria figure:hover img{transform:scale(1.03);}
.galeria figure:first-child{grid-column:span 2;grid-row:span 2;}
.galeria figure:first-child img{aspect-ratio:auto;}
@media (max-width:720px){
  .galeria{grid-template-columns:repeat(2,minmax(0,1fr));}
  .galeria figure:first-child{grid-row:auto;}
  .galeria figure:first-child img{aspect-ratio:4/3;}
  .galeria figure:last-child{grid-column:span 2;}
  .galeria figure:last-child img{aspect-ratio:4/3;}
}
@media (prefers-reduced-motion:reduce){ .galeria img{transition:none;} }
.casas.sola{border-top:0;}
.casa h2 a{transition:color .3s ease;}
.casa h2 a:hover{color:var(--clay-ink);}

/* Instagram, antes del cierre */
.insta{padding-block:clamp(64px,10vh,120px);text-align:center;border-top:1px solid var(--line);}
.insta .tag{display:block;margin-bottom:clamp(16px,2.4vw,24px);}
.insta a{
  font-family:var(--f-d);font-size:clamp(2.25rem,6vw,4rem);letter-spacing:-.02em;line-height:1;
  color:var(--ink);transition:color .3s ease;
}
.insta a:hover{color:var(--clay-ink);}
.insta p{margin-top:clamp(16px,2.4vw,22px);color:var(--ink-soft);font-size:.875rem;}

/* a domicilio (solo visible cuando hay links en carmela.js) */
.casa .domicilio{margin-top:22px;font-size:.75rem;letter-spacing:.04em;color:var(--ink-soft);}
.casa .domicilio a{color:var(--ink);border-bottom:1px solid var(--line);transition:border-color .3s ease;}
.casa .domicilio a:hover{border-bottom-color:var(--clay);}

/* ─────────────── fotos: un solo tono para las dos casas ─────────────── */
.hero img,.three img,.galeria img,.cierre img{filter:sepia(.07) saturate(.93) contrast(.97) brightness(1.01);}

/* ─────────────── entrada suave de las fotos al bajar ─────────────── */
.js .three img,.js .galeria img,.js .cierre img{opacity:0;}
.three img,.galeria img,.cierre img{transition:opacity 1.2s ease,transform 1.1s cubic-bezier(.2,.8,.2,1);}
.js .three img.visto,.js .galeria img.visto,.js .cierre img.visto{opacity:1;}
@media (prefers-reduced-motion:reduce){
  .js .three img,.js .galeria img,.js .cierre img{opacity:1;transition:none;}
}

/* ─────────────── frase del brandbook en el pie ─────────────── */
.pie .pie-frase{
  flex-basis:100%;margin:0 0 clamp(18px,3vw,30px);
  font-family:var(--f-d);font-style:italic;font-size:clamp(1.5rem,3vw,2.25rem);line-height:1.1;
  color:var(--bone-90);letter-spacing:-.005em;
}

/* ─────────────── barra de reservar (solo celular) ─────────────── */
.barra-reservar{display:none;}
@media (max-width:720px){
  .barra-reservar{
    display:flex;align-items:center;justify-content:center;gap:22px;
    position:fixed;left:0;right:0;bottom:0;z-index:40;
    padding:14px var(--gut) calc(14px + env(safe-area-inset-bottom,0px));
    background:color-mix(in srgb,var(--bone) 94%,transparent);
    -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
    border-top:1px solid var(--line);
    transform:translateY(105%);transition:transform .45s cubic-bezier(.2,.8,.2,1);
  }
  .barra-reservar.ver{transform:none;}
  .barra-reservar .rotulo{font-size:.625rem;letter-spacing:.24em;text-transform:uppercase;color:var(--ink-soft);}
  .barra-reservar a{
    font-family:var(--f-d);font-size:1.25rem;line-height:1;color:var(--ink);
    border-bottom:1px solid var(--clay);padding:6px 0 4px;
  }
  footer{padding-bottom:calc(clamp(36px,5vw,52px) + 64px);}
}

/* ─────────────── galería que se amplía ─────────────── */
.galeria img{cursor:zoom-in;}
.visor{
  position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;
  background:var(--visor-bg);opacity:0;transition:opacity .35s ease;
}
.visor.abierto{opacity:1;}
.visor img{max-width:92vw;max-height:84vh;object-fit:contain;filter:sepia(.07) saturate(.93) contrast(.97) brightness(1.01);
  transition:opacity .3s ease;}
.visor button{
  position:absolute;background:none;border:0;color:var(--bone-85);cursor:pointer;padding:14px;
  font-family:var(--f-b);font-size:.6875rem;letter-spacing:.22em;text-transform:lowercase;
}
.visor button:hover{color:var(--clay);}
.visor .cerrar{top:calc(12px + env(safe-area-inset-top,0px));right:calc(var(--gut) - 14px);}
.visor .prev,.visor .next{top:50%;transform:translateY(-50%);font-family:var(--f-d);font-size:2rem;letter-spacing:0;}
.visor .prev{left:calc(var(--gut) - 14px);}
.visor .next{right:calc(var(--gut) - 14px);}
.visor .cuenta{position:absolute;bottom:calc(18px + env(safe-area-inset-bottom,0px));left:0;right:0;text-align:center;
  font-size:.625rem;letter-spacing:.24em;color:var(--bone-60);}
@media (max-width:720px){ .visor .prev,.visor .next{display:none;} .visor img{max-width:100vw;} }

/* ─────────────── transición suave entre páginas ─────────────── */
@view-transition{navigation:auto;}
::view-transition-old(root),::view-transition-new(root){animation-duration:.45s;animation-timing-function:ease;}
@media (prefers-reduced-motion:reduce){ @view-transition{navigation:none;} }

/* ─────────────── la carta (carta.html, generada por carta.py) ─────────────── */
.hero-corto{height:clamp(320px,52dvh,560px);}
.hero-corto img{object-position:center 58%;}

.carta-nav{
  display:flex;justify-content:center;flex-wrap:wrap;gap:6px clamp(18px,3vw,36px);
  margin-top:clamp(30px,4vw,44px);
}
.carta-nav a{
  font-size:.6875rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;
  color:var(--ink);padding-block:10px;border-bottom:1px solid transparent;
  transition:color .25s ease,border-color .25s ease;
}
.carta-nav a:hover{color:var(--clay-ink);border-bottom-color:var(--clay);}

.menu-bloque{
  max-width:1120px;margin-inline:auto;scroll-margin-top:72px;
  padding-block:clamp(56px,9vw,110px) 0;border-top:1px solid var(--line);
}
.menu-bloque > h2{
  font-size:clamp(2.6rem,6.5vw,4.75rem);letter-spacing:-.02em;line-height:1;
  text-align:center;margin-bottom:clamp(36px,5vw,64px);
}
.menu-seccion{margin-bottom:clamp(44px,6vw,72px);}
.menu-seccion > .tag{display:block;text-align:center;margin:0 0 clamp(20px,2.6vw,30px);}
.menu-aviso{
  text-align:center;margin:-14px 0 clamp(20px,2.6vw,30px);
  font-family:var(--f-d);font-style:italic;font-size:1.0625rem;color:var(--ink-soft);
}

.platos{
  list-style:none;margin:0;padding:0;
  display:grid;grid-template-columns:1fr 1fr;column-gap:clamp(36px,6vw,88px);
}
@media (max-width:760px){ .platos{grid-template-columns:1fr;} }
.plato{padding-block:15px 16px;border-bottom:1px solid var(--line);break-inside:avoid;}
.plato-fila{display:flex;justify-content:space-between;align-items:baseline;gap:18px;}
.plato-nombre{
  font-size:.75rem;font-weight:500;letter-spacing:.09em;color:var(--ink);line-height:1.5;
}
.plato-nombre .nuevo{
  font-style:normal;font-size:.5625rem;letter-spacing:.2em;text-transform:uppercase;
  color:var(--clay-ink);margin-right:8px;
}
.plato-precio{
  font-size:.875rem;font-weight:400;color:var(--ink);
  font-variant-numeric:tabular-nums lining-nums;white-space:nowrap;
}
.plato-desc{margin:5px 0 0;font-size:.875rem;line-height:1.6;color:var(--ink-soft);max-width:46ch;}
.plato-var{
  margin:6px 0 0;font-family:var(--f-d);font-style:italic;font-size:1rem;line-height:1.5;color:var(--clay-ink);
}
.menu-extra{
  text-align:center;margin:0 auto clamp(40px,6vw,64px);max-width:60ch;
  font-family:var(--f-d);font-style:italic;font-size:1rem;color:var(--ink-soft);
}
.menu-extra .tag{display:block;font-style:normal;margin-bottom:8px;}

.carta-pie{
  text-align:center;color:var(--ink-soft);font-size:.8125rem;
  padding-block:clamp(10px,2vw,20px) clamp(64px,10vw,120px);max-width:62ch;margin-inline:auto;
}

/* estados pulsado y desactivado (solo opacidad; el aspecto en reposo no cambia) */
a:active,button:active{opacity:.7;}
button:disabled,[aria-disabled="true"]{opacity:.45;cursor:not-allowed;}
@media (prefers-reduced-motion:reduce){ a:active,button:active{opacity:1;} }
