/* =====================================================================
   recetas.com — hoja de estilo
   Diseño dirigido por la tipografía. Las fotos del archivo miden 250 px
   de media, así que nunca se estiran: la retícula se construye a su
   tamaño real y el peso visual lo llevan el texto y el espacio.
   Sin fuentes web: cero peticiones extra, LCP mínimo.
   ===================================================================== */

:root{
  --tinta:#211d19;
  --tinta-2:#5d554c;
  --tinta-3:#8b8175;
  --papel:#faf8f4;
  --papel-2:#f2ede4;
  --linea:#e2dad0;
  --acento:#b23c0d;
  --acento-claro:#fdf1ea;
  --serif:ui-serif,Georgia,"Iowan Old Style","Times New Roman",serif;
  --sans:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  /* Ancho maximo del contenido. Cambialo aqui y afecta a todo el sitio:
     cabecera, contenido, pie y la barra de cookies. */
  --ancho:1300px;
  --r:10px;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--papel);color:var(--tinta);
  font:17px/1.65 var(--sans);
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit}

.contenedor{max-width:var(--ancho);margin:0 auto;padding:0 22px}
.saltar{position:absolute;left:-9999px}
.saltar:focus{left:12px;top:12px;background:#fff;padding:10px 14px;border-radius:6px;z-index:50}

/* ---------- cabecera ---------- */
.cabecera{border-bottom:1px solid var(--linea);background:var(--papel)}
.cabecera__fila{display:flex;align-items:center;justify-content:space-between;
  gap:20px 24px;min-height:96px;flex-wrap:wrap;padding-block:10px}
.marca{font:600 25px/1 var(--serif);letter-spacing:-.02em;text-decoration:none}
.marca span{color:var(--acento)}
.nav{display:flex;gap:22px;font-size:15px}
.nav a{color:var(--tinta-2);text-decoration:none;padding:6px 0;
  border-bottom:2px solid transparent}
.nav a:hover{color:var(--acento);border-bottom-color:var(--acento)}

/* ---------- portada ---------- */
.portada{padding:64px 0 44px;max-width:38ch}
.portada__titulo{
  font:400 clamp(38px,6.4vw,60px)/1.08 var(--serif);
  letter-spacing:-.025em;margin:0 0 18px;
}
.portada__sub{font-size:19px;color:var(--tinta-2);margin:0;line-height:1.55}

.bloque{margin:0 0 58px}
.bloque__titulo{
  font:400 27px/1.2 var(--serif);margin:0 0 22px;padding-bottom:11px;
  border-bottom:1px solid var(--linea);letter-spacing:-.01em;
}

/* ---------- retícula de tarjetas (unidad: 250 px) ---------- */
.reticula{display:grid;gap:26px 22px;
  grid-template-columns:repeat(auto-fill,minmax(215px,1fr))}
.reticula--ancha{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}

.tarjeta__enlace{text-decoration:none;display:block}
.tarjeta__marco{
  aspect-ratio:4/3;background:var(--papel-2);border-radius:var(--r);
  overflow:hidden;display:grid;place-items:center;
  border:1px solid var(--linea);
}
.tarjeta__marco img{width:100%;height:100%;object-fit:cover}
/* Fotos por debajo de 200 px: no se estiran, se centran sobre el fondo */
.tarjeta__marco.es-menuda img{width:auto;height:auto;max-height:86%;
  object-fit:contain;border-radius:4px}
.tarjeta__sinfoto{width:44px;height:44px;border-radius:50%;
  border:2px solid var(--linea)}
.tarjeta__titulo{
  font:500 17px/1.32 var(--serif);margin:12px 0 4px;letter-spacing:-.005em;
}
.tarjeta__enlace:hover .tarjeta__titulo{color:var(--acento)}
.tarjeta__meta{margin:0;font-size:13.5px;color:var(--tinta-3);
  display:flex;gap:12px}

/* ---------- ficha de receta ---------- */
.miga{font-size:13.5px;color:var(--tinta-3);padding:22px 0 0}
.miga a{text-decoration:none}
.miga a:hover{color:var(--acento)}

.receta__cabecera{padding:26px 0 32px}
.receta__titulo{
  font:400 clamp(33px,5.2vw,50px)/1.09 var(--serif);
  letter-spacing:-.025em;margin:0 0 16px;
}
.receta__entrada{font-size:19px;color:var(--tinta-2);margin:0 0 6px;max-width:62ch}

.fichas{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0 0}
.ficha{
  display:flex;align-items:center;gap:11px;
  background:#fff;border:1px solid var(--linea);border-radius:12px;
  padding:11px 17px 11px 14px;min-width:132px;
}
.ficha__ico{color:var(--acento);opacity:.9;flex:0 0 22px}
.ficha dt{font-size:11px;text-transform:uppercase;letter-spacing:.08em;
  color:var(--tinta-3);margin:0 0 2px;white-space:nowrap}
.ficha dd{margin:0;font:500 17px/1.15 var(--sans);white-space:nowrap}
.ficha dd span{color:var(--tinta-3);font-weight:400;font-size:14px}
.ficha small{display:block;color:var(--tinta-3);font-weight:400;font-size:12px;margin-top:2px}
.ficha--nota{background:var(--acento-claro);border-color:#f0d7c7}

/* La foto se muestra a su tamaño real, enmarcada. Nunca ampliada. */
.receta__foto{margin:0 0 44px}
.foto__marco{
  position:relative;overflow:hidden;isolation:isolate;
  background:var(--papel-2);border:1px solid var(--linea);
  border-radius:var(--r);padding:26px;display:grid;place-items:center;
  max-width:min(100%, max(560px, calc(var(--fw) * 2.1)));margin:0 auto;
}
/* La misma foto, ampliada y desenfocada, rellena el marco: lo pequeño
   parece intencionado en vez de insuficiente. */
.foto__marco::before{
  content:"";position:absolute;inset:-10%;z-index:-1;
  background-image:var(--bg);background-size:cover;background-position:center;
  filter:blur(34px) saturate(1.15);opacity:.42;transform:scale(1.15);
}
.foto__marco::after{
  content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(180deg,rgba(250,248,244,.42),rgba(250,248,244,.66));
}
.foto__marco img{
  width:min(100%,var(--fw));border-radius:6px;
  box-shadow:0 4px 20px rgba(33,29,25,.22),0 0 0 5px #fff;
}
.receta--hero .foto__marco{padding:0;border:0;background:none;max-width:100%}
.receta--hero .foto__marco::before,.receta--hero .foto__marco::after{display:none}
.receta--hero .foto__marco img{width:100%;border-radius:var(--r);box-shadow:none}
.receta--feature .foto__marco{padding:30px}

.receta__cuerpo{display:grid;gap:52px;grid-template-columns:1fr;
  align-items:start;margin-bottom:52px}
@media(min-width:900px){
  .receta__cuerpo{grid-template-columns:340px 1fr;gap:64px}
  .ingredientes{position:sticky;top:22px}
}
.ingredientes h2,.pasos h2{
  font:400 25px/1.2 var(--serif);margin:0 0 18px;padding-bottom:10px;
  border-bottom:1px solid var(--linea);
}

/* ---------- escalador de raciones ---------- */
.escalador{display:flex;align-items:center;gap:9px;margin:0 0 20px;
  font-size:14px;color:var(--tinta-2)}
.escalador__b{
  width:31px;height:31px;border:1px solid var(--linea);background:#fff;
  border-radius:8px;font-size:17px;line-height:1;cursor:pointer;color:var(--tinta);
}
.escalador__b:hover{border-color:var(--acento);color:var(--acento)}
.escalador__n{font:600 17px/1 var(--sans);min-width:26px;text-align:center}

/* ---------- lista de ingredientes: cantidades alineadas ---------- */
.ingredientes__grupo{font:600 13px/1.3 var(--sans);text-transform:uppercase;
  letter-spacing:.08em;color:var(--acento);margin:22px 0 9px}
.lista-ing{list-style:none;margin:0;padding:0}
.lista-ing__item{
  display:grid;grid-template-columns:3.2em 5.4em 1fr;gap:8px;
  padding:8px 0;border-bottom:1px solid var(--linea);font-size:15.5px;
  align-items:baseline;
}
.lista-ing__item.es-opcional{opacity:.72}
.cant{font:600 15.5px/1.4 var(--sans);text-align:right;font-variant-numeric:tabular-nums}
.uni{color:var(--tinta-3);font-size:14px}
.nom a{text-decoration:none;border-bottom:1px solid var(--linea)}
.nom a:hover{color:var(--acento);border-bottom-color:var(--acento)}
.nom em{color:var(--tinta-3);font-style:normal;font-size:14px}

/* ---------- pasos: el número como pieza tipográfica ---------- */
.lista-pasos{list-style:none;margin:0;padding:0;counter-reset:p}
.paso{display:grid;grid-template-columns:56px 1fr;gap:18px;
  padding:20px 0;border-bottom:1px solid var(--linea)}
.paso:last-child{border-bottom:0}
.paso__n{
  font:400 40px/1 var(--serif);color:var(--acento);opacity:.34;
  font-variant-numeric:lining-nums;
}
.paso__txt h3{font:600 16px/1.3 var(--sans);margin:0 0 5px}
.paso__txt p{margin:0;line-height:1.68}
.notas{margin-top:30px;background:var(--acento-claro);border-radius:var(--r);
  padding:18px 22px}
.notas h3{font:600 14px/1.3 var(--sans);text-transform:uppercase;
  letter-spacing:.07em;margin:0 0 7px;color:var(--acento)}
.notas p{margin:0;font-size:15.5px}

.etiquetas{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 52px}
.etiquetas a{font-size:13.5px;text-decoration:none;background:#fff;
  border:1px solid var(--linea);border-radius:100px;padding:6px 14px;color:var(--tinta-2)}
.etiquetas a:hover{border-color:var(--acento);color:var(--acento)}

.boton{display:inline-block;background:var(--acento);color:#fff;
  text-decoration:none;padding:12px 22px;border-radius:var(--r);font-size:15px}

.pie{border-top:1px solid var(--linea);padding:34px 0;margin-top:20px;
  color:var(--tinta-3);font-size:14px}
.pie p{margin:0}

@media(prefers-reduced-motion:no-preference){
  .tarjeta__enlace,.nav a{transition:color .16s ease}
}

/* ---------- buscador ---------- */
.buscador input{
  font:15px var(--sans);padding:8px 13px;border:1px solid var(--linea);
  border-radius:100px;background:#fff;min-width:230px;color:var(--tinta);
}
.buscador input:focus{outline:2px solid var(--acento);outline-offset:1px;border-color:transparent}
.buscador--grande{display:flex;gap:9px;margin:22px 0 8px;max-width:520px}
.buscador--grande input{flex:1;font-size:17px;padding:12px 18px}
.buscador--grande button{
  font:15px var(--sans);padding:12px 22px;border:0;border-radius:100px;
  background:var(--acento);color:#fff;cursor:pointer;
}

/* ---------- archivos ---------- */
.archivo__cab{padding:26px 0 34px}
.archivo__cab > .archivo__titulo,
.archivo__cab > .archivo__cuenta{max-width:62ch}
.archivo__titulo{
  font:400 clamp(31px,4.6vw,44px)/1.12 var(--serif);
  letter-spacing:-.022em;margin:0 0 14px;
}
.archivo__texto{color:var(--tinta-2);font-size:17px}
.archivo__texto p{margin:0 0 10px}
.archivo__cuenta{color:var(--tinta-3);font-size:14.5px;margin:14px 0 0;
  text-transform:uppercase;letter-spacing:.06em}
.vacio{color:var(--tinta-2);padding:36px 0 60px;font-size:17px}
.vacio em{color:var(--acento);font-style:normal}

.relacionado{background:var(--acento-claro);border-radius:var(--r);
  padding:20px 24px;margin:0 0 34px}
.relacionado h2{font:600 13px/1.3 var(--sans);text-transform:uppercase;
  letter-spacing:.08em;color:var(--acento);margin:0 0 10px}
.relacionado ul{margin:0;padding:0 0 0 18px;columns:2;column-gap:34px}
.relacionado li{margin:4px 0;font-size:15.5px}
@media(max-width:640px){.relacionado ul{columns:1}}

/* imagen de relleno: se muestra sin recortar */
.tarjeta__marco img.es-relleno{object-fit:contain;background:var(--papel-2)}

/* ---------- paginación ---------- */
.paginacion{display:flex;flex-wrap:wrap;gap:7px;align-items:center;
  justify-content:center;margin:46px 0 64px}
.pg{min-width:40px;height:40px;display:grid;place-items:center;padding:0 12px;
  border:1px solid var(--linea);border-radius:9px;background:#fff;
  text-decoration:none;font-size:15px;color:var(--tinta-2)}
.pg:hover{border-color:var(--acento);color:var(--acento)}
.pg--act{background:var(--acento);border-color:var(--acento);color:#fff;font-weight:600}
.pg--sep{border:0;background:none;min-width:20px;color:var(--tinta-3)}
.pg--nav{font-size:14.5px}

/* ---------- índice de ingredientes ---------- */
.abecedario{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 36px;
  position:sticky;top:0;background:var(--papel);padding-block:12px;z-index:5;
  border-bottom:1px solid var(--linea)}
.abecedario a{width:34px;height:34px;display:grid;place-items:center;
  border:1px solid var(--linea);border-radius:8px;text-decoration:none;
  font:600 14px var(--sans);color:var(--tinta-2);background:#fff}
.abecedario a:hover{border-color:var(--acento);color:var(--acento)}
.letra{margin:0 0 34px;scroll-margin-top:70px}
.letra__t{font:400 30px/1 var(--serif);color:var(--acento);margin:0 0 14px;
  padding-bottom:8px;border-bottom:1px solid var(--linea)}
.lista-ingredientes{list-style:none;margin:0;padding:0;
  columns:4;column-gap:30px}
@media(max-width:900px){.lista-ingredientes{columns:2}}
@media(max-width:520px){.lista-ingredientes{columns:1}}
.lista-ingredientes li{break-inside:avoid;margin:0 0 4px}
.lista-ingredientes a{text-decoration:none;font-size:15.5px;
  display:flex;justify-content:space-between;gap:10px;padding:3px 0}
.lista-ingredientes a:hover{color:var(--acento)}
.lista-ingredientes span{color:var(--tinta-3);font-size:13px;
  font-variant-numeric:tabular-nums}

@media(max-width:700px){
  .cabecera__fila{padding-block:12px}
  .buscador input{min-width:0;width:100%}
  .buscador{width:100%;order:3}
}

/* =====================================================================
   PORTADA
   ===================================================================== */
.protagonista{background:#211d19;color:#f6f1ea;margin-bottom:56px}
.protagonista__caja{display:grid;gap:0;align-items:stretch;
  grid-template-columns:1fr;padding-left:0;padding-right:0}
@media(min-width:820px){.protagonista__caja{grid-template-columns:1.05fr .95fr}}
.protagonista__foto{background:#17140f;display:grid;place-items:center;min-height:280px;overflow:hidden}
.protagonista__foto img{width:100%;height:100%;object-fit:cover;opacity:.94}
.protagonista__txt{padding:44px 34px 48px;display:flex;flex-direction:column;justify-content:center}
@media(max-width:819px){.protagonista__txt{padding:32px 22px 40px}}
.etiqueta-mini{font:600 11.5px/1 var(--sans);text-transform:uppercase;
  letter-spacing:.16em;color:#e2884f;margin:0 0 14px}
.protagonista__titulo{font:400 clamp(30px,4.4vw,46px)/1.1 var(--serif);
  letter-spacing:-.02em;margin:0 0 16px;color:#fff}
.protagonista__meta{display:flex;flex-wrap:wrap;gap:18px;margin:0 0 26px;
  color:#c3b8a9;font-size:14.5px}
.protagonista__meta span{position:relative}
.protagonista__meta span+span::before{content:"·";position:absolute;left:-11px;color:#6d6154}
.protagonista .boton{align-self:flex-start;background:#e2884f;color:#211d19;font-weight:600}
.protagonista .boton:hover{background:#f0a06b}

.intro-sitio{padding:0 0 48px;max-width:52ch}
.intro-sitio__t{font:400 clamp(26px,3.4vw,34px)/1.2 var(--serif);
  letter-spacing:-.018em;margin:0 0 10px}
.intro-sitio__p{color:var(--tinta-2);font-size:18px;margin:0 0 22px}
.atajos{display:flex;flex-wrap:wrap;gap:9px}
.atajos a{background:#fff;border:1px solid var(--linea);border-radius:100px;
  padding:9px 18px;text-decoration:none;font-size:14.5px;color:var(--tinta-2)}
.atajos a:hover{border-color:var(--acento);color:var(--acento)}

.bloque__sub{color:var(--tinta-3);margin:-12px 0 20px;font-size:15.5px}
.masver{margin:24px 0 0}
.masver a{text-decoration:none;font-size:15.5px;color:var(--acento);
  border-bottom:1px solid transparent}
.masver a:hover{border-bottom-color:var(--acento)}

/* mosaico de categorías */
.mosaico{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(168px,1fr))}
.mosaico__i{position:relative;display:block;aspect-ratio:5/3;border-radius:var(--r);
  overflow:hidden;text-decoration:none;background:#2c2620;border:1px solid var(--linea)}
.mosaico__i img{width:100%;height:100%;object-fit:cover;opacity:.6;
  transition:opacity .2s ease,transform .3s ease}
.mosaico__i:hover img{opacity:.45;transform:scale(1.04)}
.mosaico__n{position:absolute;left:14px;bottom:12px;right:14px;color:#fff;
  font:500 16.5px/1.25 var(--serif);text-shadow:0 1px 4px rgba(0,0,0,.55)}
.mosaico__c{position:absolute;right:11px;top:10px;background:rgba(0,0,0,.45);
  color:#fff;border-radius:100px;padding:3px 10px;font-size:12px;
  font-variant-numeric:tabular-nums}

/* nube de ingredientes */
.nube{display:flex;flex-wrap:wrap;gap:8px}
.nube a{background:#fff;border:1px solid var(--linea);border-radius:100px;
  padding:8px 15px;text-decoration:none;font-size:14.5px;color:var(--tinta-2);
  display:inline-flex;gap:8px;align-items:baseline}
.nube a:hover{border-color:var(--acento);color:var(--acento)}
.nube a span{color:var(--tinta-3);font-size:12.5px;font-variant-numeric:tabular-nums}
.nube--serif a{font-family:var(--serif);font-size:16px}

/* tarjetas de artículo */
.articulos{display:grid;gap:26px 22px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.articulos--lista{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:34px 26px}
.art a{text-decoration:none;display:block}
.art__foto{aspect-ratio:3/2;border-radius:var(--r);overflow:hidden;
  background:var(--papel-2);border:1px solid var(--linea);margin-bottom:11px}
.art__foto img{width:100%;height:100%;object-fit:cover}
.art h2,.art h3{font:500 17.5px/1.3 var(--serif);margin:0 0 6px;letter-spacing:-.005em}
.art a:hover h2,.art a:hover h3{color:var(--acento)}
.art p{margin:0;color:var(--tinta-2);font-size:15px;line-height:1.55}
.art__fecha{color:var(--tinta-3);font-size:13px;margin-top:7px}

/* =====================================================================
   PIEZAS DE TEXTO (reportajes, diccionario, vídeo)
   ===================================================================== */
.contenedor--texto{max-width:760px}
.pieza__cab{padding:22px 0 26px}
.pieza__titulo{font:400 clamp(30px,4.6vw,44px)/1.13 var(--serif);
  letter-spacing:-.022em;margin:0 0 14px}
.pieza__entrada{font-size:19px;color:var(--tinta-2);margin:0 0 12px;line-height:1.55}
.pieza__firma{color:var(--tinta-3);font-size:14px;margin:0}
.pieza__foto{margin:0 0 34px}
.prosa{font-size:17.5px;line-height:1.75;color:#332e28}
.prosa p{margin:0 0 1.15em}
.prosa h2{font:400 27px/1.25 var(--serif);margin:1.7em 0 .5em}
.prosa h3{font:600 19px/1.3 var(--sans);margin:1.5em 0 .4em}
.prosa ul,.prosa ol{padding-left:1.3em;margin:0 0 1.15em}
.prosa li{margin:.3em 0}
.prosa img{border-radius:var(--r);margin:1.2em 0}
.prosa figure{margin:1.4em 0}
.prosa figcaption{font-size:14px;color:var(--tinta-3);margin-top:6px}
.prosa a{color:var(--acento)}
.prosa blockquote{margin:1.4em 0;padding:2px 0 2px 20px;
  border-left:3px solid var(--acento);color:var(--tinta-2);font-style:italic}
.prosa table{width:100%;border-collapse:collapse;margin:1.3em 0;font-size:15.5px}
.prosa th,.prosa td{border:1px solid var(--linea);padding:8px 11px;text-align:left}
.prosa th{background:var(--papel-2);font-weight:600}

/* vídeo */
.video-caja{position:relative;aspect-ratio:16/9;border-radius:var(--r);
  overflow:hidden;background:#000;margin:0 0 30px}
.video-caja iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.tarjeta__marco--video{aspect-ratio:16/9;position:relative}
.tarjeta__marco--video img{width:100%;height:100%;object-fit:cover}
.play{position:absolute;inset:0;margin:auto;width:54px;height:54px;border-radius:50%;
  background:rgba(33,29,25,.62);pointer-events:none}
.play::after{content:"";position:absolute;top:50%;left:53%;transform:translate(-50%,-50%);
  border-style:solid;border-width:9px 0 9px 15px;border-color:transparent transparent transparent #fff}

/* =====================================================================
   PIE
   ===================================================================== */
.pie{background:#211d19;color:#b6aa9b;border-top:0;margin-top:72px;padding:52px 0 30px}
.pie__rejilla{display:grid;gap:34px 26px;
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr));margin-bottom:40px}
.pie__col--marca{grid-column:span 2;min-width:250px}
@media(max-width:700px){.pie__col--marca{grid-column:span 1}}
.pie__logo{height:56px;width:auto;display:block;margin:0 0 14px}
.pie__lema{font-size:14.5px;line-height:1.65;margin:0 0 18px;max-width:38ch;color:#9d9183}
.pie__cifras{list-style:none;margin:0;padding:0;display:grid;
  grid-template-columns:1fr 1fr;gap:9px 16px;font-size:13px}
.pie__cifras strong{color:#fff;font-variant-numeric:tabular-nums;
  font-family:var(--serif);font-size:18px;font-weight:400;display:block}
.pie__cifras span{color:#8a7d6d}
.pie__t{font:600 11.5px/1.3 var(--sans);text-transform:uppercase;
  letter-spacing:.13em;color:#8a7d6d;margin:0 0 13px}
.pie__t a{color:inherit;text-decoration:none}
.pie__t a:hover{color:#e2884f}
.pie__col ul{list-style:none;margin:0;padding:0}
.pie__col li{margin:0 0 7px}
.pie__col a{color:#cbc0b2;text-decoration:none;font-size:14.5px}
.pie__col a:hover{color:#e2884f}
.pie__legal{border-top:1px solid #3a332c;padding-top:22px;display:flex;
  flex-wrap:wrap;gap:8px 22px;align-items:baseline;font-size:13.5px}
.pie__legal p{margin:0}
.pie__nota{color:#7d7264}

/* ---------- logotipo ---------- */
.marca{display:inline-flex;align-items:center;line-height:0}
.marca img{height:70px;width:auto;display:block}
@media(max-width:820px){.marca img{height:54px}}
@media(max-width:520px){.marca img{height:44px}}
.pie__logo{height:70px;width:auto;display:block;margin:0 0 16px}

/* la marca tipográfica queda de reserva si el logo no cargara */
.marca--txt{font:600 25px/1 var(--serif);letter-spacing:-.02em;text-decoration:none}
.marca--txt span{color:var(--acento)}

/* =====================================================================
   MEGAMENÚ
   ===================================================================== */
.mega{position:relative}
.mega__disparo{display:inline-flex;align-items:center;gap:5px}
.mega__flecha{transition:transform .18s ease;opacity:.65}
.mega:hover .mega__flecha,.mega:focus-within .mega__flecha{transform:rotate(180deg);opacity:1}
.mega__panel{
  position:absolute;left:50%;top:100%;transform:translateX(-50%) translateY(6px);
  z-index:40;padding-top:14px;opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .16s ease,transform .16s ease;
}
.mega:hover .mega__panel,.mega:focus-within .mega__panel{
  opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.mega__caja{
  background:#fff;border:1px solid var(--linea);border-radius:14px;
  box-shadow:0 14px 40px rgba(33,29,25,.13);padding:20px 22px 16px;width:min(700px,92vw);
}
.mega__caja::before{
  content:"";position:absolute;top:8px;left:50%;transform:translateX(-50%) rotate(45deg);
  width:13px;height:13px;background:#fff;border-left:1px solid var(--linea);
  border-top:1px solid var(--linea);border-radius:3px 0 0 0;
}
.mega__cols{display:grid;grid-template-columns:repeat(3,1fr);gap:2px 12px}
@media(max-width:640px){.mega__cols{grid-template-columns:repeat(2,1fr)}}
.mega__i{
  display:flex;align-items:center;gap:10px;padding:8px 9px;border-radius:9px;
  text-decoration:none;color:var(--tinta);font-size:14.5px;
}
.mega__i:hover{background:var(--acento-claro);color:var(--acento)}
.mega__ico{color:var(--acento);display:flex;flex:0 0 20px;opacity:.85}
.mega__i:hover .mega__ico{opacity:1}
.mega__n{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mega__c{color:var(--tinta-3);font-size:12px;font-variant-numeric:tabular-nums}
.mega__pie{
  display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:14px;padding-top:13px;
  border-top:1px solid var(--linea);
}
.mega__pie a{font-size:13.5px;color:var(--tinta-2);text-decoration:none}
.mega__pie a:hover{color:var(--acento)}
/* en pantallas táctiles el panel estorbaría: el enlace lleva a /recetas/ */
@media(hover:none){.mega__panel{display:none}}

/* =====================================================================
   BANDERAS
   ===================================================================== */
.nube--banderas a{font-family:var(--serif);font-size:16px;padding-left:9px}
.bandera{border-radius:2px;box-shadow:0 0 0 1px rgba(33,29,25,.13);flex:0 0 auto;
  align-self:center}
.archivo__cab--bandera{display:flex;gap:22px;align-items:flex-start;flex-wrap:wrap}
.archivo__cab--bandera > :not(.bandera-grande){flex:1 1 22ch;min-width:0}
.bandera-grande{
  width:132px;height:auto;border-radius:6px;flex:0 0 auto;
  box-shadow:0 2px 10px rgba(33,29,25,.18),0 0 0 1px rgba(33,29,25,.10);
}
@media(max-width:560px){.bandera-grande{width:92px}}

/* héroe con entradilla de reportaje */
.protagonista__entrada{color:#c3b8a9;font-size:16.5px;line-height:1.6;margin:0 0 24px;max-width:46ch}

/* mosaico: sin foto, degradado cálido en vez de hueco negro */
.mosaico__i{background:linear-gradient(150deg,#3a3129,#241f1a)}
.mosaico__i:has(img){background:#2c2620}

/* ---------- ilustración por defecto en artículos ---------- */
.art__foto--def img{object-fit:cover}
.pieza__foto--def{margin:0 0 34px}
.pieza__foto--def img{width:100%;height:auto;max-height:280px;object-fit:cover;
  border-radius:var(--r);border:1px solid var(--linea)}

/* ---------- acepciones del diccionario ---------- */
.acepciones__n{font:600 11.5px/1 var(--sans);text-transform:uppercase;
  letter-spacing:.13em;color:var(--acento);margin:0 0 16px}
.acepciones{list-style:none;counter-reset:ac;margin:0;padding:0}
.acepcion{counter-increment:ac;position:relative;padding:0 0 4px 46px;margin:0 0 22px}
.acepcion:last-child{margin-bottom:0}
.acepcion::before{
  content:counter(ac);position:absolute;left:0;top:1px;
  width:30px;height:30px;border-radius:50%;display:grid;place-items:center;
  background:var(--acento-claro);color:var(--acento);
  font:600 14px/1 var(--sans);
}
.acepcion .prosa{font-size:17px}
.acepcion .prosa p:last-child{margin-bottom:0}

/* =====================================================================
   CINTA DE PAÍS
   ===================================================================== */
.cinta-pais{
  background:linear-gradient(180deg,var(--papel-2),var(--papel));
  border-bottom:1px solid var(--linea);margin-bottom:8px;
}
.cinta-pais__caja{display:flex;align-items:center;gap:26px;padding:34px 22px 32px;flex-wrap:wrap}
.cinta-pais__medalla{
  width:104px;height:104px;border-radius:50%;overflow:hidden;flex:0 0 auto;
  display:grid;place-items:center;background:#fff;
  box-shadow:0 3px 14px rgba(33,29,25,.16),0 0 0 4px #fff,0 0 0 5px var(--linea);
}
.cinta-pais__medalla img{width:100%;height:100%;object-fit:cover}
.cinta-pais__titulo{font:400 clamp(29px,4.4vw,42px)/1.12 var(--serif);
  letter-spacing:-.022em;margin:6px 0 8px}
.cinta-pais__n{margin:0;color:var(--tinta-3);font-size:13.5px;
  text-transform:uppercase;letter-spacing:.07em}
.cinta-pais + .contenedor .miga{padding-top:16px}
@media(max-width:560px){
  .cinta-pais__caja{gap:18px;padding:24px 22px}
  .cinta-pais__medalla{width:74px;height:74px}
}

/* =====================================================================
   FICHA DE INGREDIENTE
   ===================================================================== */
.ficha-ing{display:grid;gap:28px;grid-template-columns:1fr;margin:10px 0 4px}
@media(min-width:880px){.ficha-ing{grid-template-columns:minmax(0,1fr) 320px;gap:46px;align-items:start}}
.ficha-ing__texto{font-size:17px;line-height:1.7;color:var(--tinta-2)}
.ficha-ing__texto p{margin:0;max-width:68ch}
.archivo__pag{color:var(--tinta-3);font-size:.62em}

.panel-ing{background:#fff;border:1px solid var(--linea);border-radius:var(--r);
  padding:18px 20px 20px}
.panel-ing__cifras{list-style:none;margin:0 0 18px;padding:0;display:grid;
  grid-template-columns:repeat(3,1fr);gap:12px}
.panel-ing__cifras strong{display:block;font:400 21px/1.1 var(--serif);color:var(--tinta)}
.panel-ing__cifras span{font-size:12px;color:var(--tinta-3)}
.panel-ing__bloque{border-top:1px solid var(--linea);padding-top:14px;margin-top:14px}
.panel-ing__bloque h2{font:600 11px/1.3 var(--sans);text-transform:uppercase;
  letter-spacing:.12em;color:var(--acento);margin:0 0 10px}
.panel-ing__lista{list-style:none;margin:0;padding:0}
.panel-ing__lista li{display:flex;justify-content:space-between;gap:10px;
  font-size:14.5px;padding:3px 0}
.panel-ing__lista a{text-decoration:none;color:var(--tinta-2)}
.panel-ing__lista a:hover{color:var(--acento)}
.panel-ing__lista span{color:var(--tinta-3);font-size:12.5px;font-variant-numeric:tabular-nums}
.nube--mini a{font-size:13.5px;padding:5px 11px}

.barra{display:grid;grid-template-columns:52px 1fr 34px;gap:9px;align-items:center;
  font-size:13px;margin:0 0 7px}
.barra__l{color:var(--tinta-2)}
.barra__t{height:7px;background:var(--papel-2);border-radius:4px;overflow:hidden}
.barra__f{display:block;height:100%;border-radius:4px}
.barra__f--facil{background:#6f9451}
.barra__f--media{background:#d08a2c}
.barra__f--dificil{background:#b4442a}
.barra__v{color:var(--tinta-3);text-align:right;font-variant-numeric:tabular-nums}

/* =====================================================================
   MENÚ MÓVIL
   ===================================================================== */
.hamburguesa{display:none;width:44px;height:44px;border:1px solid var(--linea);
  background:#fff;border-radius:10px;cursor:pointer;padding:0;
  flex-direction:column;gap:4px;align-items:center;justify-content:center}
.hamburguesa span{display:block;width:19px;height:2px;background:var(--tinta);border-radius:2px}
.hamburguesa[aria-expanded="true"]{border-color:var(--acento)}

.cajon{position:fixed;inset:0;z-index:90}
.cajon__fondo{position:absolute;inset:0;background:rgba(33,29,25,.5)}
.cajon__panel{
  position:absolute;top:0;right:0;bottom:0;width:min(340px,88vw);background:var(--papel);
  overflow-y:auto;padding:16px 18px 40px;box-shadow:-8px 0 32px rgba(33,29,25,.2);
  animation:entra .2s ease;
}
@keyframes entra{from{transform:translateX(100%)}to{transform:translateX(0)}}
.cajon__cab{display:flex;align-items:center;justify-content:space-between;
  padding:0 0 12px;border-bottom:1px solid var(--linea);margin-bottom:14px}
.cajon__t{font:600 12px/1 var(--sans);text-transform:uppercase;
  letter-spacing:.13em;color:var(--tinta-3)}
.cajon__x{background:none;border:0;font-size:30px;line-height:1;cursor:pointer;
  color:var(--tinta-2);padding:0 4px}
.cajon__buscar input{width:100%;font:15px var(--sans);padding:11px 15px;
  border:1px solid var(--linea);border-radius:100px;background:#fff;margin-bottom:14px}
.cajon__l{display:block;padding:11px 4px;text-decoration:none;color:var(--tinta);
  font-size:16px;border-bottom:1px solid var(--linea)}
.cajon__l:hover{color:var(--acento)}
.cajon__t2{font:600 11px/1 var(--sans);text-transform:uppercase;letter-spacing:.13em;
  color:var(--acento);margin:22px 0 8px}
.cajon__cats a{display:flex;align-items:center;gap:10px;padding:9px 4px;
  text-decoration:none;color:var(--tinta-2);font-size:15px}
.cajon__cats a span:last-child{margin-left:auto;color:var(--tinta-3);font-size:12px}
.cajon__ico{color:var(--acento);display:flex;opacity:.85}

@media(max-width:880px){
  .nav{display:none}
  .cabecera .buscador{display:none}
  .hamburguesa{display:flex}
  .cabecera__fila{min-height:74px;flex-wrap:nowrap}
}

/* =====================================================================
   COOKIES
   ===================================================================== */
.cookies{position:fixed;left:0;right:0;bottom:0;z-index:95;
  background:#211d19;border-top:3px solid var(--acento);
  box-shadow:0 -8px 34px rgba(33,29,25,.28)}
.cookies__caja{
  max-width:var(--ancho);margin:0 auto;padding:22px;
  display:grid;gap:18px 34px;align-items:center;
}
@media(min-width:900px){
  .cookies__caja{grid-template-columns:minmax(0,1fr) auto}
  .cookies__opts{grid-column:1/-1}
  .cookies__btns{margin-top:0}
}
.cookies__txt h2{font:600 12px/1.3 var(--sans);text-transform:uppercase;
  letter-spacing:.13em;color:#e2884f;margin:0 0 8px}
.cookies__txt p{margin:0;font-size:14.5px;line-height:1.6;color:#c3b8a9;max-width:78ch}
.cookies__txt a{color:#e2884f}
.cookies__opts{display:grid;gap:10px;margin:4px 0;padding:16px 0 0;
  border-top:1px solid #3a332c;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.cookies__opts label{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;
  color:#b6aa9b;cursor:pointer}
.cookies__opts input{margin-top:2px;accent-color:#e2884f;width:16px;height:16px}
.cookies__opts strong{color:#fff;font-weight:600}
.cookies__btns{display:flex;flex-wrap:wrap;gap:9px;justify-content:flex-end;align-items:center}
.ck-b{font:14.5px var(--sans);padding:11px 20px;border-radius:100px;cursor:pointer;
  border:1px solid #4a4239;white-space:nowrap}
.ck-b--pri{background:#e2884f;border-color:#e2884f;color:#211d19;font-weight:600}
.ck-b--pri:hover{background:#f0a06b}
.ck-b--sec{background:transparent;color:#e8e0d6}
.ck-b--sec:hover{border-color:#e2884f;color:#fff}
.ck-b--fant{background:none;border-color:transparent;color:#8a7d6d}
.ck-b--fant:hover{color:#e2884f}
@media(max-width:560px){
  .cookies__caja{padding:18px}
  .cookies__btns{justify-content:stretch}
  .ck-b{flex:1 1 100%;text-align:center}
  .ck-b--fant{order:3}
}
.pie__legal a{color:#cbc0b2;text-decoration:none}
.pie__legal a:hover{color:#e2884f}

/* =====================================================================
   ARTÍCULO CON BARRA LATERAL
   ===================================================================== */
.pieza-cols{display:grid;grid-template-columns:1fr;gap:44px;margin-bottom:20px}
@media(min-width:1000px){
  .pieza-cols{grid-template-columns:minmax(0,1fr) 320px;gap:64px;align-items:start}
  .lateral{position:sticky;top:22px}
}
.pieza-cols .pieza__cab{padding-top:14px}
.pieza-cols .prosa{max-width:68ch}
.pieza-cols .pieza__entrada{max-width:62ch}

.lateral__b{background:#fff;border:1px solid var(--linea);border-radius:var(--r);
  padding:17px 19px 19px;margin:0 0 18px}
.lateral__b h2{font:600 11px/1.3 var(--sans);text-transform:uppercase;
  letter-spacing:.12em;color:var(--acento);margin:0 0 13px}

.lat-recetas{list-style:none;margin:0;padding:0}
.lat-recetas li{border-bottom:1px solid var(--linea)}
.lat-recetas li:last-child{border-bottom:0}
.lat-recetas a{display:flex;gap:11px;align-items:center;padding:9px 0;text-decoration:none}
.lat-recetas__f{width:64px;height:48px;flex:0 0 64px;border-radius:6px;overflow:hidden;
  background:var(--papel-2);border:1px solid var(--linea)}
.lat-recetas__f img{width:100%;height:100%;object-fit:cover}
.lat-recetas__t{font:500 14.5px/1.35 var(--serif);color:var(--tinta)}
.lat-recetas__t small{display:block;font:400 12px/1 var(--sans);color:var(--tinta-3);margin-top:3px}
.lat-recetas a:hover .lat-recetas__t{color:var(--acento)}

.lat-lista{margin:0;padding:0;list-style:none;counter-reset:ll}
.lat-lista li{counter-increment:ll;display:flex;gap:10px;padding:7px 0;
  border-bottom:1px solid var(--linea);font-size:14.5px}
.lat-lista li:last-child{border-bottom:0}
.lat-lista li::before{content:counter(ll);color:var(--acento);opacity:.5;
  font:400 17px/1.2 var(--serif);flex:0 0 16px}
.lat-lista a{text-decoration:none;color:var(--tinta-2);line-height:1.4}
.lat-lista a:hover{color:var(--acento)}

.lateral__b--cta{background:var(--acento-claro);border-color:#f0d7c7}
.lat-cta{display:block;padding:8px 0;text-decoration:none;font-size:14.5px;
  color:var(--tinta-2);border-bottom:1px solid #f0d7c7}
.lat-cta:last-child{border-bottom:0}
.lat-cta:hover{color:var(--acento)}

/* =====================================================================
   CABECERA EN MÓVIL: más aire
   ===================================================================== */
@media(max-width:880px){
  .contenedor{padding:0 26px}
  .cabecera__fila{min-height:86px;gap:16px;padding-block:14px}
  .marca img{height:58px}
}
@media(max-width:520px){
  .contenedor{padding:0 22px}
  .cabecera__fila{min-height:78px;padding-block:13px}
  .marca img{height:52px}
  .hamburguesa{width:44px;height:44px}
}
@media(max-width:380px){
  .contenedor{padding:0 18px}
  .marca img{height:46px}
}

/* =====================================================================
   ÍNDICE DE PAÍSES
   ===================================================================== */
.continentes{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 34px;
  position:sticky;top:0;background:var(--papel);padding-block:12px;z-index:5;
  border-bottom:1px solid var(--linea)}
.continentes a{border:1px solid var(--linea);border-radius:100px;padding:7px 15px;
  text-decoration:none;font-size:14px;color:var(--tinta-2);background:#fff}
.continentes a:hover{border-color:var(--acento);color:var(--acento)}

.continente{margin:0 0 38px;scroll-margin-top:72px}
.continente__t{font:400 27px/1.2 var(--serif);margin:0 0 18px;padding-bottom:10px;
  border-bottom:1px solid var(--linea);display:flex;align-items:baseline;
  justify-content:space-between;gap:14px;flex-wrap:wrap}
.continente__t span{font:400 13px/1 var(--sans);color:var(--tinta-3);
  text-transform:uppercase;letter-spacing:.07em;font-variant-numeric:tabular-nums}

.paises{display:grid;gap:9px;grid-template-columns:repeat(auto-fill,minmax(212px,1fr))}
.pais{display:flex;align-items:center;gap:11px;padding:11px 14px;
  background:#fff;border:1px solid var(--linea);border-radius:10px;
  text-decoration:none;color:var(--tinta)}
.pais:hover{border-color:var(--acento);box-shadow:0 2px 10px rgba(33,29,25,.07)}
.pais__b{flex:0 0 32px;height:24px;display:grid;place-items:center}
.pais__b img{border-radius:3px;box-shadow:0 0 0 1px rgba(33,29,25,.14)}
.pais__sinb{width:32px;height:24px;border-radius:3px;background:var(--papel-2);
  box-shadow:0 0 0 1px var(--linea)}
.pais__n{flex:1;min-width:0;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pais:hover .pais__n{color:var(--acento)}
.pais__c{color:var(--tinta-3);font-size:12.5px;font-variant-numeric:tabular-nums}
.pie__t a{color:inherit;text-decoration:none}
.pie__t a:hover{color:#e2884f}

/* ---------- páginas legales ---------- */
.tabla-datos{width:100%;border-collapse:collapse;margin:1.2em 0;font-size:15.5px}
.tabla-datos th{text-align:left;font-weight:600;color:var(--tinta-2);
  width:32%;vertical-align:top;padding:10px 14px 10px 0;
  border-bottom:1px solid var(--linea);white-space:nowrap}
.tabla-datos td{padding:10px 0;border-bottom:1px solid var(--linea);vertical-align:top}
@media(max-width:520px){
  .tabla-datos th{white-space:normal;width:40%}
}
.dato{font-variant-numeric:tabular-nums}
.dato a{color:var(--acento);text-decoration:none;border-bottom:1px solid transparent}
.dato a:hover{border-bottom-color:var(--acento)}
.pie__legales{display:flex;flex-wrap:wrap;gap:6px 10px;margin:0}

/* ---------- firma de la receta ---------- */
.firma{color:var(--tinta-3);font-size:14.5px;margin:0 0 4px}
.firma a{color:var(--tinta-2);text-decoration:none;border-bottom:1px solid var(--linea)}
.firma a:hover{color:var(--acento);border-bottom-color:var(--acento)}
.receta__video{margin:34px 0 0}
.receta__video h3{font:600 13px/1.3 var(--sans);text-transform:uppercase;
  letter-spacing:.1em;color:var(--acento);margin:0 0 12px}

/* ---------- bloque editorial de portada ---------- */
.sobre{display:grid;gap:34px;grid-template-columns:1fr;margin:8px 0 64px;
  padding-top:40px;border-top:1px solid var(--linea)}
@media(min-width:920px){.sobre{grid-template-columns:minmax(0,1fr) 280px;gap:52px;align-items:start}}
.sobre__txt{font-size:16.5px;line-height:1.75;color:var(--tinta-2);max-width:70ch}
.sobre__txt h2{font:400 25px/1.25 var(--serif);color:var(--tinta);margin:0 0 12px;
  letter-spacing:-.012em}
.sobre__txt h2+p{margin-top:0}
.sobre__txt h2:not(:first-child){margin-top:32px}
.sobre__txt p{margin:0 0 14px}
.sobre__txt ul{margin:0 0 14px;padding-left:20px}
.sobre__txt li{margin:0 0 8px}
.sobre__txt strong{color:var(--tinta);font-weight:600}
.sobre__txt a{color:var(--acento);text-decoration:none;border-bottom:1px solid transparent}
.sobre__txt a:hover{border-bottom-color:var(--acento)}
.sobre__lat{background:#fff;border:1px solid var(--linea);border-radius:var(--r);padding:20px 22px}
.sobre__lat h2{font:600 11px/1.3 var(--sans);text-transform:uppercase;
  letter-spacing:.12em;color:var(--acento);margin:0 0 14px}
.sobre__cifras{list-style:none;margin:0;padding:0}
.sobre__cifras li{padding:9px 0;border-bottom:1px solid var(--linea)}
.sobre__cifras li:last-child{border-bottom:0}
.sobre__cifras strong{display:block;font:400 24px/1.1 var(--serif);color:var(--tinta)}
.sobre__cifras span{font-size:13px;color:var(--tinta-3)}

/* ---------- datos de contacto en imagen ---------- */
.contacto{display:inline-flex;align-items:center;gap:9px;vertical-align:middle}
.contacto__img{display:block;height:19px;width:auto;
  /* la imagen es tinta oscura: en fondos claros se ve tal cual */
  image-rendering:auto}
.contacto__c{
  font:11px/1 var(--sans);text-transform:uppercase;letter-spacing:.07em;
  padding:5px 9px;border:1px solid var(--linea);border-radius:100px;
  background:#fff;color:var(--tinta-3);cursor:pointer;
}
.contacto__c:hover{border-color:var(--acento);color:var(--acento)}
.contacto__c.es-ok{border-color:#6f9451;color:#6f9451}

/* ---------- subcategorías de sección ---------- */
.subcats{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 30px;padding-bottom:16px;
  border-bottom:1px solid var(--linea)}
.subcats a{display:inline-flex;align-items:baseline;gap:7px;background:#fff;
  border:1px solid var(--linea);border-radius:100px;padding:7px 15px;
  text-decoration:none;font-size:14px;color:var(--tinta-2)}
.subcats a:hover{border-color:var(--acento);color:var(--acento)}
.subcats a.es-act{background:var(--acento);border-color:var(--acento);color:#fff}
.subcats span{font-size:12px;color:var(--tinta-3);font-variant-numeric:tabular-nums}
.subcats a.es-act span{color:rgba(255,255,255,.75)}
.mega__caja--sec{width:min(460px,92vw)}
.mega__cols--2{grid-template-columns:repeat(2,1fr)}
.abecedario a.es-act{background:var(--acento);border-color:var(--acento);color:#fff}

/* ---------- especiales ---------- */
.especiales{display:grid;gap:24px 22px;
  grid-template-columns:repeat(auto-fill,minmax(250px,1fr));margin:0 0 52px}
.esp a{text-decoration:none;display:block}
.esp__foto{aspect-ratio:3/2;border-radius:var(--r);overflow:hidden;
  background:var(--papel-2);border:1px solid var(--linea);margin-bottom:12px}
.esp__foto img{width:100%;height:100%;object-fit:cover}
.esp h2{font:500 18px/1.3 var(--serif);margin:0 0 7px;letter-spacing:-.006em}
.esp a:hover h2{color:var(--acento)}
.esp p{margin:0;color:var(--tinta-2);font-size:14.5px;line-height:1.55}
@media(min-width:820px){
  .esp--grande{grid-column:span 2}
  .esp--grande .esp__foto{aspect-ratio:2/1}
  .esp--grande h2{font-size:26px;line-height:1.2}
  .esp--grande p{font-size:16px}
}

.aviso-salud{background:var(--acento-claro);border-left:3px solid var(--acento);
  padding:11px 16px;border-radius:0 8px 8px 0;font-size:14px;color:var(--tinta-2);
  margin:16px 0 0;max-width:62ch}

/* ---------- tablas de referencia ---------- */
.tablas-i{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));
  margin:0 0 52px}
.tabla-c{display:flex;gap:14px;align-items:flex-start;padding:18px 20px;
  background:#fff;border:1px solid var(--linea);border-radius:var(--r);text-decoration:none}
.tabla-c:hover{border-color:var(--acento);box-shadow:0 2px 12px rgba(33,29,25,.07)}
.tabla-c__ico{color:var(--acento);flex:0 0 20px;margin-top:2px}
.tabla-c__t{font:500 17px/1.3 var(--serif);color:var(--tinta)}
.tabla-c:hover .tabla-c__t{color:var(--acento)}
.tabla-c__t small{display:block;font:400 14px/1.5 var(--sans);color:var(--tinta-3);margin-top:5px}

/* las tablas heredadas traen su propio marcado: lo normalizamos */
.prosa--tabla table{width:100%;border-collapse:collapse;margin:1em 0;font-size:15.5px}
.prosa--tabla td,.prosa--tabla th{padding:7px 12px;border-bottom:1px solid var(--linea);
  text-align:left;vertical-align:top}
.prosa--tabla tr:nth-child(even){background:rgba(242,237,228,.5)}
.prosa--tabla td:last-child{text-align:right;font-variant-numeric:tabular-nums;
  color:var(--tinta-2);white-space:nowrap}
.prosa--tabla h2,.prosa--tabla h3{font:400 22px/1.25 var(--serif);margin:1.6em 0 .4em;
  padding-bottom:8px;border-bottom:1px solid var(--linea)}
.prosa--tabla img{max-width:100%;height:auto;border-radius:6px;vertical-align:middle}
/* solo se ocultan los espaciadores de 1 px del maquetado antiguo */
.prosa--tabla img[width="1"],.prosa--tabla img[height="1"]{display:none}
.prosa--tabla td img{margin:2px 0}
.lat-lista--sinnum li::before{display:none}
.lat-lista--sinnum li{padding-left:0}

/* ---------- tablas de temporada: nombres + rejilla ---------- */
/* El original guarda la cuadricula de meses como UNA imagen y los nombres
   como lista de texto. Se reproduce igual, pero con scroll en movil. */
.prosa--tabla .subcat{display:flex;flex-wrap:wrap;gap:7px;list-style:none;
  margin:0 0 22px;padding:0}
.prosa--tabla .subcat li{border:1px solid var(--linea);border-radius:100px;
  padding:7px 15px;background:#fff;font-size:14px;color:var(--tinta-2)}
.prosa--tabla .subcat li.active{background:var(--acento);border-color:var(--acento);color:#fff}
.prosa--tabla .subcat a{text-decoration:none;color:inherit}
.prosa--tabla #sth{display:block;overflow-x:auto;border-collapse:collapse;
  margin:0 0 20px;-webkit-overflow-scrolling:touch}
.prosa--tabla #sth th{font:600 12px/1 var(--sans);color:var(--tinta-3);
  text-transform:uppercase;letter-spacing:.06em;padding:0 0 10px;text-align:center;
  border-bottom:1px solid var(--linea);background:none}
.prosa--tabla #sth td{padding:0;border:0;vertical-align:top;text-align:left}
.prosa--tabla ul.sm{list-style:none;margin:0;padding:0;font-size:13.5px}
.prosa--tabla ul.sm li{height:31.3px;line-height:31.3px;white-space:nowrap;
  padding-right:14px;color:var(--tinta-2);overflow:hidden;text-overflow:ellipsis;
  max-width:15ch}
.prosa--tabla #sth img{max-width:none;border-radius:0;display:block}
@media(max-width:760px){
  .prosa--tabla ul.sm li{font-size:12px;max-width:11ch}
}


/* ---------- megamenú de Utilidades ---------- */
.mega__caja--util{width:min(560px,92vw)}
.util{display:grid;grid-template-columns:1fr 1fr;gap:6px 26px}
@media(max-width:560px){.util{grid-template-columns:1fr}}
.util__g h3{font:600 10.5px/1.3 var(--sans);text-transform:uppercase;
  letter-spacing:.13em;color:var(--acento);margin:0 0 9px}
.util__g a{display:block;padding:7px 9px;border-radius:8px;text-decoration:none;
  color:var(--tinta);font-size:14.5px}
.util__g a:hover{background:var(--acento-claro);color:var(--acento)}
.prosa--tabla .subcat li a{display:block;margin:-7px -15px;padding:7px 15px;border-radius:100px}
.prosa--tabla .subcat li:has(a):hover{border-color:var(--acento);color:var(--acento)}
