:root{--papel:#EFE7D7;--papel-hondo:#F0F0F0;--papel-carta:#F0F0F0;--papel-tinte:#EAEBD1;--papel-alto:#E8EDD4;--verde:#2C3A24;--verde-hoja:#3E4E32;--tinta:#2C3A24;--tinta-84:rgba(44,58,36,0.82);--tinta-70:rgba(44,58,36,0.78);--tinta-66:rgba(44,58,36,0.76);--oro:#6B5313;--bronce:#5E4A18;--oro-deco:#DAAC40;--oro-24:rgba(107,83,19,.24);--oro-12:rgba(107,83,19,.10);--oro-borde:rgba(107,83,19,.78);--linea:rgba(44,58,36,.16);--linea-fina:rgba(44,58,36,.09);--borde-control:rgba(44,58,36,.52);--sombra-1:0 1px 2px rgba(44,58,36,.04),0 10px 24px -16px rgba(44,58,36,.22);--sombra-2:0 2px 6px rgba(44,58,36,.05),0 22px 44px -22px rgba(44,58,36,.26);--sombra-3:0 6px 16px rgba(44,58,36,.06),0 44px 70px -34px rgba(94,74,24,.38);--sombra-icono:drop-shadow(0 10px 14px rgba(44,58,36,.18));--t-epigrafe:.82rem;--t-apoyo:.92rem;--t-corrido:1.06rem;--display:'Clash Display','Arial Black',system-ui,sans-serif;--texto:'Cabinet Grotesk',system-ui,-apple-system,sans-serif;--canal:clamp(1.25rem,5.4vw,6.5rem);--ancho:1280px;--curva:cubic-bezier(.2,.8,.2,1);--tablero:860px;--contra:rotateZ(45deg) rotateX(-55deg);--k-poste:.8192}@view-transition{navigation:auto}::view-transition-old(root){animation:.3s ease both esfumar}::view-transition-new(root){animation:.4s .06s ease both aparecer}@keyframes esfumar{to{opacity:0}}@keyframes aparecer{from{opacity:0;translate:0 10px}}@media (prefers-reduced-motion:reduce){@view-transition{navigation:none}}*,*::before,*::after{box-sizing:border-box}html{overflow-x:clip;scroll-behavior:smooth;scroll-padding-top:5.5rem;-webkit-text-size-adjust:100%}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;background:var(--papel);color:var(--tinta);font-family:var(--texto);font-size:clamp(1.06rem,.35vw+.95rem,1.14rem);line-height:1.65;-webkit-font-smoothing:antialiased}img,video,svg{display:block;max-width:100%}img{height:auto}h1,h2,h3,h4{font-family:var(--display);font-weight:600;margin:0;line-height:.92;letter-spacing:-.03em;text-wrap:balance}p{margin:0}ul,ol{margin:0;padding:0;list-style:none}a{color:inherit;text-decoration:none}::selection{background:var(--oro-deco);color:var(--verde)}:focus-visible{outline:2px solid var(--oro);outline-offset:4px;border-radius:2px}.solo-lectores{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.salto-contenido{position:fixed;top:.6rem;left:.6rem;z-index:200;transform:translateY(-200%);background:var(--verde);color:var(--papel);padding:.7rem 1.1rem;font-weight:700;font-size:.85rem;transition:transform .2s}.salto-contenido:focus{transform:none}.contenedor{width:100%;max-width:var(--ancho);margin-inline:auto;padding-inline:var(--canal)}.grano{position:fixed;inset:0;z-index:60;pointer-events:none;opacity:.05;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='.42'/%3E%3C/svg%3E")}

/* barra de progreso de lectura — scroll-driven nativo, 0 KB de JS */
.progreso{position:fixed;inset:0 0 auto;height:2px;z-index:90;pointer-events:none;
  background:transparent}
.progreso i{display:block;height:100%;width:100%;background:var(--verde);
  transform-origin:0 50%;scale:0 1}
@supports (animation-timeline:scroll()){
  .progreso i{animation:avance linear both;animation-timeline:scroll(root block)}
}
@keyframes avance{to{scale:1 1}}

/* ───────────── 3 · TIPOGRAFÍA DE SECCIÓN ───────────── */
.sobretitulo{font-family:var(--texto);font-size:var(--t-epigrafe);font-weight:700;
  letter-spacing:.3em;text-transform:uppercase;color:var(--bronce);
  margin-bottom:1.4rem;display:flex;align-items:center;gap:.7rem;flex-wrap:wrap}
.sobretitulo--claro{color:var(--tinta-84)}

.punto-vivo{width:7px;height:7px;border-radius:50%;background:var(--oro);flex:none;
  box-shadow:0 0 0 0 var(--oro-24);animation:latir 2.6s ease-out infinite}
@keyframes latir{
  0%{box-shadow:0 0 0 0 rgba(107,83,19,.42)}
  70%,100%{box-shadow:0 0 0 12px rgba(107,83,19,0)}}

.titulo-seccion{font-size:clamp(1.7rem,3.4vw,3.1rem);max-width:21ch}
.titulo-grande{font-size:clamp(2rem,5vw,4.2rem);max-width:16ch}
.titulo-grande em,.titulo-seccion em{font-style:normal;color:var(--oro)}

.parrafo-guia{font-size:clamp(1.08rem,1vw + .8rem,1.22rem);color:var(--tinta-84);
  max-width:62ch;margin-top:1.6rem;line-height:1.7}
.parrafo-guia strong{color:var(--tinta);font-weight:700}
.parrafo-guia + .parrafo-guia{margin-top:1.1rem}

.nota-pie{margin-top:1.6rem;font-size:var(--t-apoyo);color:var(--tinta-66);max-width:70ch;
  line-height:1.65}

/* rótulo de dato pendiente de auditoría (nunca se inventa una cifra) */
.pendiente{display:inline-flex;align-items:center;gap:.45em;
  font-size:.8rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--bronce);border:1px dashed var(--oro-borde);padding:.2em .6em;
  white-space:nowrap;vertical-align:middle}

/* ───────────── 4 · BOTONES Y ENLACES ───────────── */
.boton{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;
  font-family:var(--texto);font-size:var(--t-epigrafe);font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;
  padding:1.05rem 1.75rem;border:1px solid transparent;cursor:pointer;
  position:relative;text-align:center;line-height:1.25;
  transition:color .3s var(--curva),border-color .3s var(--curva),
             background-color .3s var(--curva),translate .3s var(--curva)}
/* macizo: tinta verde sobre papel. Un bloque de oro #DAAC40 de este tamaño
   grita sobre blanco; el verde profundo es lo que se lee premium. */
.boton--tinta{background:var(--verde);color:var(--papel);box-shadow:var(--sombra-1)}
.boton--tinta:hover{background:var(--verde-hoja);box-shadow:var(--sombra-2);translate:0 -2px}
.boton--linea{border-color:var(--oro-borde);color:var(--bronce);background:transparent}
.boton--linea:hover{border-color:var(--bronce);background:var(--oro-12);translate:0 -2px}
.boton--filete{border-color:var(--borde-control);color:var(--verde);background:var(--papel-hondo)}
.boton--filete:hover{border-color:var(--verde);box-shadow:var(--sombra-1);translate:0 -2px}
.boton--grande{padding:1.25rem 2.3rem;font-size:.9rem}
.boton--bloque{width:100%}

.enlace-verificar{display:inline-flex;align-items:center;gap:.5rem;color:var(--bronce);
  font-size:.86rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  padding-block:.35rem;border-bottom:1px solid var(--oro-borde);
  transition:border-color .3s,gap .3s}
.enlace-verificar:hover{border-color:var(--bronce);gap:.85rem}
.enlace-correo{color:var(--bronce);border-bottom:1px solid var(--oro-borde)}
.enlace-correo:hover{border-color:var(--bronce)}

.acciones{display:flex;flex-wrap:wrap;align-items:center;gap:1.2rem 1.8rem;margin-top:2.4rem}

/* ───────────── 5 · REVEALS (recetario §2) ───────────── */
.reveal{opacity:1}                      /* nunca invisible por defecto */
@supports (animation-timeline:view()){
  @media (prefers-reduced-motion:no-preference){
    .reveal{opacity:0;translate:0 32px;animation:subir linear both;
      animation-timeline:view();animation-range:entry 4% cover 28%}
  }
}
@keyframes subir{to{opacity:1;translate:0 0}}
.sin-timeline .reveal{opacity:0;translate:0 32px;
  transition:opacity .8s var(--curva),translate .8s var(--curva)}
.sin-timeline .reveal.dentro{opacity:1;translate:0 0}
@media (prefers-reduced-motion:reduce){
  .reveal,.sin-timeline .reveal{opacity:1!important;translate:none!important;animation:none!important}
}
.forzar-visible .reveal{opacity:1!important;translate:none!important;animation:none!important}

/* ───────────── 6 · CABECERA (idéntica en las seis páginas) ───────────── */
.cabecera{position:fixed;inset:0 0 auto;z-index:80;
  display:flex;align-items:center;gap:2rem;padding:1.1rem var(--canal);
  view-transition-name:cabecera;
  transition:background-color .4s,border-color .4s,padding .4s}
.cabecera::before{content:'';position:absolute;inset:0;z-index:-1;
  background:linear-gradient(to bottom,rgba(239,231,215,.94),rgba(239,231,215,0));
  transition:opacity .4s}
/* sobre papel la cabecera fija no puede ser una placa opaca: es papel velado
   con desenfoque y un filete de color, y su relieve lo da una sombra suave */
.cabecera.compacta{background:rgba(240,240,240,.84);border-bottom:1px solid var(--linea);
  padding-block:.7rem;backdrop-filter:blur(16px) saturate(1.4);
  box-shadow:0 18px 40px -34px rgba(44,58,36,.55)}
.cabecera.compacta::before{opacity:0}

.marca{display:flex;align-items:baseline;gap:.5rem;font-family:var(--display);
  margin-right:auto;flex:none}
.marca__nombre{font-size:1.28rem;font-weight:700;letter-spacing:-.04em}
.marca__sufijo{font-size:.8rem;font-weight:700;letter-spacing:.2em;
  text-transform:uppercase;color:var(--bronce)}

.nav__lista{display:flex;gap:1.35rem;align-items:center}
.nav__lista a{font-size:.88rem;letter-spacing:.04em;color:var(--tinta-84);
  position:relative;padding-block:.3rem;transition:color .3s}
.nav__lista a::after{content:'';position:absolute;left:0;bottom:0;width:0;height:1px;
  background:var(--oro);transition:width .35s var(--curva)}
.nav__lista a:hover{color:var(--verde)}
.nav__lista a:hover::after{width:100%}
.nav__lista a[aria-current="page"]{color:var(--verde);font-weight:700}
.nav__lista a[aria-current="page"]::after{width:100%;background:var(--oro)}
.nav__cta-movil{display:none}

.cabecera__cta{font-size:.8rem;padding:.85rem 1.3rem;flex:none}

.hamburguesa{display:none;background:none;border:0;padding:.6rem;cursor:pointer;color:var(--verde)}
.hamburguesa__caja{display:grid;gap:6px;width:26px}
.hamburguesa__caja i{display:block;height:1.5px;background:currentColor;
  transition:translate .3s var(--curva),rotate .3s var(--curva)}
.hamburguesa[aria-expanded="true"] i:first-child{translate:0 3.75px;rotate:45deg}
.hamburguesa[aria-expanded="true"] i:last-child{translate:0 -3.75px;rotate:-45deg}

/* ───────────── 7 · VÍDEO A SANGRE ───────────── */
/* El vídeo a sangre bruta con texto blanco encima no vale sobre papel:
   queda estridente y parte la página en dos materiales distintos. Aquí se
   encuadra —margen, esquina suave y sombra de color—, se desatura un punto
   y se funde con el papel justo donde vive el titular. */
.lienzo-video{position:absolute;inset:0;z-index:0;overflow:hidden;
  background:var(--papel-tinte);border-radius:0;box-shadow:none}
/* La desaturación fuerte era la otra mitad del problema: dejaba la imagen
   lavada además de tapada. El vídeo vuelve a su color, con un punto de
   contraste para que aguante el ligero velo que lleva encima. */
/* brightness por debajo de 1: dos de los vídeos vienen con el cielo quemado
   y subir el contraste sin bajar el brillo sólo empeoraba el blanco plano */
.lienzo-video__pieza{width:100%;height:100%;object-fit:cover;
  filter:saturate(1.08) contrast(1.05) brightness(.95)}
.lienzo-video__velo{position:absolute;inset:0}
/* ── EL VELO DEJA DE SER UNA PANTALLA ──
   Antes: .985 / .93 / .55 / .62 / .94 / .97. Protegía el texto tapando la
   imagen entera; el vídeo quedaba al 3–7 % justo donde había glifos y al
   45 % en el centro. Se arreglaba el contraste rompiendo la fotografía.

   Ahora el velo es sólo un unificador de color —una capa, .10 a .34, la
   imagen se ve al 66–90 % y en el centro nunca baja del 88 %— y NO garantiza
   ningún contraste. Esa responsabilidad se traslada íntegra a .panel-tinta.

   Y el tinte deja de ser papel para ser VERDE. Lavar la foto de blanco la
   dejaba lechosa: los cielos quemados de dos de los vídeos se volvían niebla.
   Un viñeteado de tinta verde asienta la imagen, le devuelve el cuerpo y es
   además la «mezcla de oscuro» que se pidió. El centro queda casi limpio,
   que es donde está la fotografía que interesa. */
   Se descartó el viñeteado radial: dejaba el centro casi limpio y en dos de
   los vídeos el centro es justo el cielo quemado, así que la parte lavada se
   quedaba lavada. Un tinte parejo, algo más denso al pie, asienta cualquier
   fotograma sin apagar los buenos. */
.lienzo-video__velo--heroe{
  background:linear-gradient(to top,
    rgba(44,58,36,.30) 0%,
    rgba(44,58,36,.20) 40%,
    rgba(44,58,36,.14) 72%,
    rgba(44,58,36,.22) 100%)}
/* en las bandas interiores el velo mantiene la diagonal, pero ya sólo como
   gesto de composición: de .28 a .14, nunca como protección de texto. */
.lienzo-video__velo--denso{
  background:linear-gradient(102deg,
    rgba(44,58,36,.28) 0%,rgba(44,58,36,.20) 48%,rgba(44,58,36,.14) 100%)}
/* velo de TINTA: el que llevan los vídeos que viven dentro de una banda
   oscura. Viñeteado verde, no papel, para que el vídeo se funda con la
   banda en vez de recortarse contra ella. Centro al 72 % de imagen. */
.lienzo-video__velo--tinta{
  background:radial-gradient(112% 126% at 50% 44%,
    rgba(34,47,28,.26) 0%,rgba(34,47,28,.56) 58%,rgba(34,47,28,.84) 100%)}
/* la banda interior no lleva cabecera encima: su encuadre es simétrico */
.seccion--medio .lienzo-video{inset:clamp(1.4rem,3vw,3rem) var(--canal)}

/* ───────────── 8 · PORTADA (hero de cada página) ───────────── */
.portada{position:relative;min-height:100svh;display:flex;flex-direction:column;
  justify-content:flex-end;padding:9.5rem var(--canal) 4.5rem;isolation:isolate;overflow:hidden;
  background:var(--papel)}
.portada--interior{min-height:min(86svh,760px)}
.portada__cuerpo{position:relative;z-index:2;width:100%;max-width:var(--ancho);
  margin-inline:auto}

.miga{display:flex;align-items:center;gap:.6rem;font-size:var(--t-epigrafe);letter-spacing:.14em;
  text-transform:uppercase;color:var(--tinta-66);margin-bottom:1.5rem}
.miga a{color:var(--tinta-70);transition:color .3s}
.miga a:hover{color:var(--bronce)}
.miga i{font-style:normal;color:var(--tinta-66)}

.portada__titulo{display:grid;gap:.1em;margin-bottom:1.8rem;max-width:none}
/* El titular iba a 70px dentro de una columna de 643px: unos 11 caracteres
   por línea, con huérfanas como "a terceros.". Bajar el tope y equilibrar el
   salto arregla la medida sin quitarle presencia. */
.portada__linea{display:block;font-size:clamp(1.9rem,4.4vw,3.8rem);line-height:.96;
  letter-spacing:-.035em;text-wrap:balance}
.portada__linea--oro{color:var(--oro)}
.portada__linea--menor{font-size:clamp(1.05rem,2.2vw,1.85rem);font-weight:400;
  color:var(--tinta-84);letter-spacing:0}

.portada__entrada{max-width:58ch;color:var(--tinta-84);line-height:1.68;
  font-size:clamp(1.08rem,.9vw + .82rem,1.2rem)}
.portada__entrada strong{color:var(--tinta);font-weight:700}
.portada__micro{margin-top:1.4rem;font-size:.98rem;line-height:1.6;
  color:var(--tinta-84);max-width:54ch}

/* ficha de datos bajo la portada */
.portada__ficha{display:flex;flex-wrap:wrap;gap:0;margin:2.8rem 0 0;
  border-top:1px solid var(--linea)}
.portada__ficha > div{padding:1.1rem 1.6rem 0 0;margin-right:1.6rem;
  border-right:1px solid var(--linea)}
.portada__ficha > div:last-child{border-right:0}
.portada__ficha dt{font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;
  color:var(--tinta-66);margin-bottom:.3rem}
.portada__ficha dd{margin:0;font-family:var(--display);font-size:1.3rem;font-weight:600;
  color:var(--oro);letter-spacing:-.02em}
.portada__ficha dd i{font-style:normal;font-size:.66em;color:var(--tinta-84);
  letter-spacing:.1em;margin-left:.15em}

.portada__estacion{position:relative;z-index:2;width:100%;max-width:var(--ancho);
  margin:2.6rem auto 0;padding-top:1.5rem;border-top:1px solid var(--linea);
  display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1.6rem}
.portada__estacion-eti{font-size:var(--t-epigrafe);letter-spacing:.2em;text-transform:uppercase;
  color:var(--tinta-66)}
.portada__estacion-cta{font-family:var(--display);font-size:clamp(1.05rem,1.5vw,1.35rem);
  font-weight:600;color:var(--bronce);border-bottom:1px solid var(--oro-borde);padding-bottom:.2rem}
.portada__estacion-cta:hover{border-color:var(--bronce)}
.portada__estacion-alt{font-size:.95rem;color:var(--tinta-84);border-bottom:1px solid transparent}
.portada__estacion-alt:hover{color:var(--verde);border-color:var(--tinta-66)}

.portada__desliz{position:absolute;right:var(--canal);bottom:2.6rem;z-index:2;
  width:1px;height:70px;background:var(--linea);overflow:hidden}
.portada__desliz span{display:block;width:100%;height:34%;background:var(--verde);
  animation:bajar 2.4s ease-in-out infinite}
@keyframes bajar{0%{translate:0 -100%}60%,100%{translate:0 300%}}

/* portada partida: texto + aguacate 3D */
.portada__rejilla{display:grid;grid-template-columns:1fr .68fr;gap:clamp(1rem,4vw,3.5rem);
  align-items:center;width:100%;max-width:var(--ancho);margin-inline:auto;
  position:relative;z-index:2}
.portada__objeto{position:relative;aspect-ratio:1;width:100%;max-width:460px;
  justify-self:center}

/* ───────────── 9 · EL AGUACATE 3D (componente aprobado) ───────────── */
.hass3d{position:relative;width:100%;height:100%;--halo:138,100,16}
.hass3d::before{content:"";position:absolute;inset:-18%;border-radius:50%;
  background:radial-gradient(circle at 50% 52%,rgba(var(--halo),.16),rgba(var(--halo),0) 64%);
  filter:blur(26px)}
.hass3d__flota{position:absolute;inset:0;animation:flotar-hass 7s ease-in-out infinite}
@keyframes flotar-hass{0%,100%{translate:0 -1.2%}50%{translate:0 1.2%}}
.hass3d__in{position:absolute;inset:0;
  transform:perspective(1200px) rotateX(var(--ry,0deg)) rotateY(var(--rx,0deg)) translateZ(0);
  transition:transform .55s cubic-bezier(.2,.8,.2,1);will-change:transform}
.hass3d.activo .hass3d__in{transition-duration:.12s}
.hass3d__in img{width:100%;height:100%;object-fit:contain;
  filter:drop-shadow(0 30px 38px rgba(44,58,36,.28)) drop-shadow(0 6px 10px rgba(94,74,24,.16))}
.hass3d__brillo{position:absolute;inset:0;pointer-events:none;mix-blend-mode:soft-light;
  background:radial-gradient(34% 34% at var(--mx,42%) var(--my,32%),
             rgba(240,240,240,.85),rgba(240,240,240,0) 70%)}
/* anillo isométrico bajo el fruto: lo ata a la retícula del sitio */
.hass3d__anillo{position:absolute;left:50%;top:78%;width:78%;aspect-ratio:1;
  translate:-50% -50%;border:1px solid var(--oro-24);border-radius:50%;
  transform:scaleY(.34);pointer-events:none}
.hass3d__anillo::after{content:'';position:absolute;inset:16%;border:1px dashed var(--oro-12);
  border-radius:50%}
@media (prefers-reduced-motion:reduce){
  .hass3d__flota{animation:none}
  .hass3d__in{transform:none!important}
}

/* ───────────── 10 · CINTA (marquee) ───────────── */
.cinta{overflow:hidden;border-block:1px solid var(--linea);padding:.9rem 0;
  background:var(--papel-hondo);
  mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.cinta__tira{display:flex;gap:2.2rem;width:max-content;align-items:center;
  animation:mq 34s linear infinite}
.cinta:hover .cinta__tira{animation-play-state:paused}
@keyframes mq{to{translate:-50% 0}}
.cinta__tira span{font-family:var(--display);font-size:.98rem;font-weight:500;
  letter-spacing:.02em;color:var(--tinta-84);white-space:nowrap}
.cinta__tira b{color:var(--bronce);font-size:.82rem}
@media (prefers-reduced-motion:reduce){.cinta__tira{animation:none}}

/* ───────────── 11 · SECCIONES GENÉRICAS ───────────── */
.seccion{padding:clamp(5.5rem,11vw,10rem) 0;border-top:1px solid var(--linea)}
.seccion--hondo{background:var(--papel-hondo)}
.seccion--carta{background:var(--papel-tinte)}
.seccion--medio{position:relative;isolation:isolate;overflow:hidden;
  padding:clamp(7rem,13vw,11rem) 0;background:var(--papel)}
.seccion--medio > .contenedor{position:relative;z-index:2}

.par{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,5rem);align-items:start}
.par > *,.rejilla > *,.calibrador > *,.cotiza > *,.datos > *,.cifras > *{min-width:0}
.par--desigual{grid-template-columns:1fr .82fr}

/* placa isométrica: el sello gráfico del sitio */
.placa{position:relative;width:76px;height:76px;display:grid;place-items:center;flex:none}
.placa::before,.placa::after{content:'';position:absolute;inset:12px;
  transform:scaleY(.5736) rotate(45deg)}
.placa::before{background:linear-gradient(140deg,rgba(218,172,64,.42),rgba(218,172,64,.10));
  border:1px solid rgba(107,83,19,.30);
  box-shadow:0 10px 22px -14px rgba(94,74,24,.55)}
.placa::after{inset:22px;border:1px dashed var(--oro-24);background:none}
.placa img{position:relative;width:52px;height:52px;
  filter:var(--sombra-icono);
  transition:translate .45s var(--curva)}
.placa--grande{width:104px;height:104px}
.placa--grande img{width:72px;height:72px}

/* tarjeta */
.rejilla{display:grid;gap:1px;background:var(--linea);border:1px solid var(--linea);
  margin-top:clamp(2rem,4vw,3rem)}
.rejilla--2{grid-template-columns:repeat(2,1fr)}
.rejilla--3{grid-template-columns:repeat(3,1fr)}
.rejilla--4{grid-template-columns:repeat(4,1fr)}

.tarjeta{background:var(--papel-carta);padding:clamp(1.7rem,3vw,2.6rem);
  display:flex;flex-direction:column;gap:.7rem;transition:background-color .4s}
.tarjeta:hover{background:var(--papel-alto)}
.tarjeta:hover .placa img{translate:0 -6px}
.seccion--hondo .tarjeta{background:var(--papel)}
.seccion--hondo .tarjeta:hover{background:var(--papel-alto)}
.tarjeta h3{font-size:1.22rem;margin-top:.4rem}
.tarjeta p:not([class]){font-size:1.02rem;line-height:1.6;color:var(--tinta-84)}
.tarjeta__pie{margin-top:auto;padding-top:1rem;font-size:.8rem;letter-spacing:.16em;
  text-transform:uppercase;color:var(--bronce)}

/* banda de datos */
.datos{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:3rem;
  background:var(--linea);border-block:1px solid var(--linea)}
.dato{background:var(--papel-carta);padding:2.8rem 2rem;display:flex;flex-direction:column;
  gap:.5rem;transition:background-color .4s}
.dato:hover{background:var(--papel-alto)}
.dato__icono{width:56px;height:56px;margin-bottom:.8rem;
  filter:var(--sombra-icono);transition:translate .45s var(--curva)}
.dato:hover .dato__icono{translate:0 -6px}
.dato__cifra{font-family:var(--display);font-size:clamp(2rem,3.4vw,2.9rem);font-weight:700;
  color:var(--oro);line-height:1;letter-spacing:-.045em;display:flex;align-items:baseline;gap:.2em}
.dato__unidad{font-size:.42em;font-weight:500;letter-spacing:.1em;color:var(--tinta-84)}
.dato__texto{font-size:1rem;color:var(--tinta-84);line-height:1.6}
.dato__texto strong{color:var(--tinta)}

/* lista de comprobación */
.lista-check{display:grid;gap:1px;background:var(--linea);border:1px solid var(--linea);
  margin-top:2.2rem}
.lista-check li{background:var(--papel-carta);padding:1.35rem 1.7rem;display:flex;gap:1rem;
  align-items:flex-start;font-size:1.02rem;line-height:1.6;color:var(--tinta-84);
  transition:background-color .35s}
.lista-check li:hover{background:var(--papel-alto)}
.seccion--hondo .lista-check li{background:var(--papel)}
.seccion--hondo .lista-check li:hover{background:var(--papel-alto)}
.lista-check li b{color:var(--tinta);font-weight:700}
.lista-check__n{font-family:var(--display);font-size:.9rem;font-weight:700;color:var(--oro);
  flex:none;padding-top:.2rem}

/* ficha de cifras */
.cifras{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;
  margin:2.6rem 0;background:var(--linea);border-block:1px solid var(--linea)}
.cifras li{background:var(--papel-hondo);padding:1.7rem 1.4rem;display:flex;
  flex-direction:column;gap:.35rem}
.cifras b{font-family:var(--display);font-size:clamp(1.1rem,2.1vw,1.7rem);font-weight:700;
  color:var(--oro);letter-spacing:-.03em;line-height:1.1}
.cifras span{font-size:var(--t-epigrafe);letter-spacing:.12em;text-transform:uppercase;
  color:var(--tinta-84);line-height:1.45}

/* figura con marco */
.figura{margin:0;border:1px solid var(--linea);padding:.7rem;background:var(--papel-carta);
  box-shadow:var(--sombra-1)}
.figura img{width:100%;object-fit:cover}
.figura figcaption{margin-top:.8rem;padding:0 .3rem .3rem;font-size:var(--t-apoyo);
  letter-spacing:.02em;line-height:1.55;color:var(--tinta-84)}

/* franja de cierre */
.cierre-franja{position:relative;isolation:isolate;overflow:hidden;
  padding:clamp(5rem,10vw,8rem) 0;text-align:center;border-top:1px solid var(--linea)}
.cierre-franja__cuerpo{position:relative;z-index:2;max-width:64ch;margin-inline:auto;
  padding-inline:var(--canal)}
.cierre-franja img.emblema{width:110px;height:110px;margin:0 auto 1.8rem;
  filter:drop-shadow(0 18px 26px rgba(44,58,36,.22))}
.cierre-franja h2{font-size:clamp(1.8rem,4vw,3.2rem)}
.cierre-franja p{margin:1.6rem auto 2.4rem;color:var(--tinta-84);max-width:56ch;
  font-size:var(--t-corrido);line-height:1.65}
.cierre-franja .acciones{justify-content:center}

/* ═══════════════════════════════════════════════════════════════════════
   12 · LA ESCENA ISOMÉTRICA — pieza acotada, sin secuestro de scroll
   ═══════════════════════════════════════════════════════════════════════ */
.operacion{padding:clamp(4.5rem,9vw,8rem) 0;border-top:1px solid var(--linea)}

/* la escena sólo existe con JS y en escritorio: si no, manda la lista */
.escena{display:none}
.con-js .escena{display:block}
.con-js .cadena-lista{display:none}
.con-js .operacion.ver-lista .escena,
.con-js .operacion.ver-lista .escena-nota{display:none}
.con-js .operacion.ver-lista .cadena-lista{display:grid}

.escena{position:relative;
  height:clamp(480px,78svh,720px);      /* NUNCA más de una pantalla */
  margin-top:clamp(1.8rem,3.5vw,2.8rem);
  border:1px solid var(--linea);
  background:
    radial-gradient(120% 80% at 50% 26%,rgba(218,172,64,.16),transparent 62%),
    var(--papel-hondo);
  box-shadow:var(--sombra-2),inset 0 0 90px rgba(44,58,36,.04);
  overflow:hidden;                       /* recorta la losa: marco de visor */
  isolation:isolate;
  cursor:grab}
.escena:active{cursor:grabbing}

/* esquinas de encuadre */
.escena__esquina{position:absolute;width:18px;height:18px;z-index:6;pointer-events:none;
  border:1px solid rgba(107,83,19,.5)}
.escena__esquina--ne{top:10px;right:10px;border-left:0;border-bottom:0}
.escena__esquina--no{top:10px;left:10px;border-right:0;border-bottom:0}
.escena__esquina--se{bottom:10px;right:10px;border-left:0;border-top:0}
.escena__esquina--so{bottom:10px;left:10px;border-right:0;border-top:0}

/* punto de fuga: ancestro con perspective, sin overflow ni filtros */
.escena__marco{position:absolute;inset:0;perspective:1900px;perspective-origin:50% 46%;
  transform:translate3d(var(--par-x,0px),var(--par-y,0px),0);
  transition:transform .45s ease-out}

.camara{position:absolute;inset:0;transform-style:preserve-3d;
  transform:translate3d(var(--cam-x,0px),var(--cam-y,0px),0) scale(var(--cam-s,.85));
  transition:transform .85s var(--curva)}

/* EL TABLERO: rotateX(55°) rotateZ(-45°) = perspectiva isométrica */
.tablero{position:absolute;left:50%;top:50%;
  width:var(--tablero);height:var(--tablero);
  margin:calc(var(--tablero) / -2) 0 0 calc(var(--tablero) / -2);
  transform-style:preserve-3d;
  transform:rotateX(55deg) rotateZ(-45deg)}

/* ── el suelo ──
   Sobre verde oscuro la retícula dorada funcionaba; sobre blanco desaparece.
   Aquí la rejilla es verde al 9 % (fina) y al 20 % (maestra), el canto de la
   losa es papel entintado cada vez más oscuro, y el volumen lo da una sombra
   de color bajo la losa: nada de negros. */
.suelo{position:absolute;top:-8%;left:-8%;right:-18%;bottom:-18%;
  pointer-events:none;transform-style:preserve-3d}
.suelo__canto{position:absolute;inset:0;transform:translateZ(var(--z));
  background:#DFE0C2;border:1px solid rgba(44,58,36,.12)}
.suelo__canto--fondo{background:#E3E0DD;box-shadow:0 34px 60px 4px rgba(44,58,36,.26)}
.suelo__rejilla{position:absolute;inset:0;background-color:#F9F3DB;
  background-image:
    radial-gradient(58% 52% at 44% 40%,rgba(218,172,64,.20),rgba(218,172,64,0) 72%),
    repeating-linear-gradient(0deg,rgba(44,58,36,.09) 0 1px,transparent 1px 43px),
    repeating-linear-gradient(90deg,rgba(44,58,36,.09) 0 1px,transparent 1px 43px),
    repeating-linear-gradient(0deg,rgba(44,58,36,.20) 0 1.5px,transparent 1.5px 172px),
    repeating-linear-gradient(90deg,rgba(44,58,36,.20) 0 1.5px,transparent 1.5px 172px);
  box-shadow:inset 0 0 140px 24px rgba(44,58,36,.07)}
.suelo__grafico{position:absolute;left:0;top:0;width:100%;height:100%;overflow:visible}
.losa{fill:none;stroke:rgba(44,58,36,.34);stroke-width:.45}
.losa--interior{stroke:rgba(44,58,36,.15);stroke-width:.28;stroke-dasharray:3 3}
.parcela{fill:url(#surcos);stroke:rgba(44,58,36,.26);stroke-width:.3}
.ruta__base{fill:none;stroke:rgba(44,58,36,.26);stroke-width:.9;
  stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:2.6 2.2}
/* el flujo sigue siendo oro: es el único hilo dorado que se lee sobre papel */
.ruta__flujo{fill:none;stroke:var(--oro);stroke-width:1.8;stroke-linejoin:round;
  stroke-linecap:round;stroke-dasharray:7 340;animation:fluir 9s linear infinite}
@keyframes fluir{to{stroke-dashoffset:-347}}

/* ── el nodo ── */
.nodo{position:absolute;left:calc(var(--x) * 1%);top:calc(var(--y) * 1%);
  width:0;height:0;pointer-events:none;transform-style:preserve-3d;
  --poste-h:calc(var(--alto) * var(--k-poste));
  --icono:56px;--desc:9px;--sombra:44px;--dur:7s}
.nodo--cadena{--icono:92px;--desc:12px;--sombra:74px;--dur:6s}

.nodo__sombra{position:absolute;left:0;top:0;width:var(--sombra);height:var(--sombra);
  margin:calc(var(--sombra) / -2);border-radius:50%;
  background:radial-gradient(closest-side,rgba(44,58,36,.34),rgba(44,58,36,.16) 52%,rgba(44,58,36,0) 80%);
  opacity:0;transition:opacity .7s var(--curva),scale .5s var(--curva)}

.nodo__poste{position:absolute;left:0;top:0;width:1.5px;height:var(--poste-h);
  margin:calc(var(--poste-h) * -1) 0 0 -.75px;transform-origin:bottom center;
  transform:var(--contra);
  background:linear-gradient(to top,rgba(44,58,36,.05),rgba(44,58,36,.46));
  opacity:0;transition:opacity .7s var(--curva),background .4s}
.nodo__poste::after{content:'';position:absolute;left:50%;bottom:-2px;width:5px;height:5px;
  margin-left:-2.5px;border-radius:50%;background:var(--oro);
  box-shadow:0 0 0 3px rgba(107,83,19,.14)}

.nodo__eje{position:absolute;left:0;top:0;width:0;height:0;transform-style:preserve-3d;
  transform:translateZ(var(--alto));
  animation:flotar-nodo var(--dur) ease-in-out infinite;animation-delay:var(--retardo,0s)}
@keyframes flotar-nodo{
  0%,100%{transform:translateZ(var(--alto))}
  50%{transform:translateZ(calc(var(--alto) + 15px))}}

.nodo__alza{position:absolute;left:0;top:0;width:0;height:0;transform-style:preserve-3d;
  transform:translateZ(0);transition:transform .55s var(--curva)}

/* El rótulo cuelga del icono en una lámina contra-rotada. Si el nodo vuela
   bajo, esa lámina se hunde por debajo del plano del suelo y el compositor 3D
   se come media palabra («VIVERO» quedaba en «VERO»). Por eso los data-alto
   de index.html se han subido a la banda 165–225 px: las piezas flotan más
   sobre el territorio y ningún rótulo toca el suelo. El poste sigue midiendo
   alto × sen 55°, así que la pieza y su poste no se separan nunca. */
.nodo__cara{position:absolute;left:0;top:0;width:0;height:0;transform:var(--contra);
  opacity:0;scale:.45;
  transition:opacity .75s var(--curva) var(--retardo,0s),
             scale .75s var(--curva) var(--retardo,0s)}

.escena.esta-viva .nodo__cara{opacity:1;scale:1}
.escena.esta-viva .nodo__sombra{opacity:1;transition-delay:var(--retardo,0s)}
.escena.esta-viva .nodo__poste{opacity:1;transition-delay:var(--retardo,0s)}

/* jerarquía de foco: la pieza en curso manda, el resto retrocede */
.escena.esta-viva .nodo:not(.esta-encima):not(.es-actual) .nodo__cara{opacity:.76}
.escena.esta-viva .nodo:not(.esta-encima):not(.es-actual) .nodo__poste{opacity:.6}
.escena.esta-viva .nodo:not(.esta-encima):not(.es-actual) .nodo__sombra{opacity:.6}

.nodo__boton{position:absolute;left:0;top:0;translate:-50% calc(-50% + var(--desc));
  display:flex;flex-direction:column;align-items:center;gap:.4rem;
  width:max-content;max-width:calc(160px / var(--cam-s,.85));
  background:none;border:0;padding:.4rem;margin:0;
  cursor:pointer;pointer-events:auto;color:inherit;font:inherit}
.nodo__icono{width:var(--icono);height:var(--icono);
  filter:drop-shadow(0 14px 18px rgba(44,58,36,.24));
  transition:filter .45s var(--curva),scale .45s var(--curva)}
/* ─── LOS RÓTULOS DE LOS NODOS ───────────────────────────────────────────
   Era el texto más ilegible del proyecto y aquí se corrige por tres vías:

   1 · CONTRA-ESCALA. La cámara encoge TODO el tablero con scale(--cam-s),
       que vale entre 0,55 y 0,92 según el encuadre. Un rótulo declarado a
       .8rem acababa dibujado a 7–10 px reales. Con
       font-size:calc(.84rem / var(--cam-s)) el tamaño EN PANTALLA deja de
       depender del encuadre: siempre ≈13,4 px.
   2 · COLOR. Texto a --hueso pleno sobre placa casi opaca → 15,7:1
       (antes --hueso-52 sobre fondo al 72 % → 4,96:1).
   3 · COLOCACIÓN. Se abandona el nowrap de una línea larga con .14em de
       interletrado: ahora el rótulo se compone en caja centrada de 9em como
       máximo, en dos líneas si hace falta, y el interletrado baja a .06em.
       Ocupa más sitio y muestra menos de golpe: legibilidad por encima de
       densidad, tal como se pidió. El nombre completo y su dato siguen
       siempre a la vista en el mando de abajo. */
.nodo__rotulo{display:block;max-width:min(9em,142px);text-align:center;text-wrap:balance;
  font-family:var(--texto);font-size:calc(.84rem / var(--cam-s,.85));
  font-weight:700;letter-spacing:.06em;line-height:1.3;
  text-transform:uppercase;color:var(--verde);padding:.34em .7em;
  background:rgba(240,240,240,.96);border:1px solid rgba(44,58,36,.12);
  box-shadow:0 10px 20px -12px rgba(44,58,36,.5);
  transition:color .35s,border-color .35s,background-color .35s}
.nodo--cadena .nodo__rotulo{border-color:var(--oro-borde)}
.nodo__num{font-family:var(--display);font-weight:700;color:var(--oro);font-size:1.05em;
  letter-spacing:0;margin-right:.42em}
.nodo--ambiente .nodo__rotulo{opacity:0;
  transition:opacity .3s,color .35s,background-color .35s,border-color .35s}
.nodo--ambiente.esta-encima .nodo__rotulo,
.nodo--ambiente.es-actual .nodo__rotulo{opacity:1}

.nodo.esta-encima .nodo__alza,
.nodo.es-actual .nodo__alza{transform:translateZ(40px)}
.nodo.esta-encima .nodo__icono,
.nodo.es-actual .nodo__icono{scale:1.12;
  filter:drop-shadow(0 20px 26px rgba(44,58,36,.3)) drop-shadow(0 0 22px rgba(218,172,64,.85))}
.nodo.esta-encima .nodo__rotulo,
.nodo.es-actual .nodo__rotulo{color:var(--verde);background:var(--oro-deco);border-color:var(--bronce)}
/* el número era oro sobre oro en la chapa activa: no se veía */
.nodo.esta-encima .nodo__num,
.nodo.es-actual .nodo__num{color:var(--verde)}
.nodo.esta-encima .nodo__sombra,
.nodo.es-actual .nodo__sombra{scale:.78;opacity:.85}
.nodo.esta-encima .nodo__poste,
.nodo.es-actual .nodo__poste{background:linear-gradient(to top,rgba(107,83,19,0),var(--oro))}
.nodo__boton:focus-visible{outline:none}
.nodo__boton:focus-visible .nodo__rotulo{outline:2px solid var(--verde);outline-offset:3px}

/* velo inferior de la escena */
.escena::after{content:'';position:absolute;inset:auto 0 0;height:110px;z-index:4;
  pointer-events:none;
  background:linear-gradient(to top,var(--papel-hondo) 8%,rgba(240,240,240,.6) 52%,transparent)}

/* leyenda dentro de la escena */
/* la leyenda pasa a placa opaca: antes flotaba a .62rem y 2,4:1 sobre la
   rejilla del suelo, que es el fondo más ruidoso de todo el sitio */
.escena__leyenda{position:absolute;left:1rem;top:1rem;z-index:6;display:flex;
  flex-direction:column;gap:.5rem;pointer-events:none;
  padding:.7rem .9rem;background:rgba(240,240,240,.94);border:1px solid var(--linea);
  box-shadow:var(--sombra-1)}
.escena__leyenda li{display:flex;align-items:center;gap:.6rem;font-size:var(--t-epigrafe);
  letter-spacing:.1em;text-transform:uppercase;color:var(--tinta-84)}
.escena__leyenda i{width:9px;height:9px;flex:none;transform:scaleY(.5736) rotate(45deg);
  background:rgba(44,58,36,.16);border:1px solid rgba(44,58,36,.3)}
.escena__leyenda li:first-child i{background:var(--oro);border-color:var(--oro)}

/* ── EL MANDO: recorrer las 21 piezas sin pelearse con el scroll ── */
.mando{border:1px solid var(--linea);border-top:0;background:var(--papel-carta);
  box-shadow:var(--sombra-1);
  display:grid;grid-template-columns:1fr auto;gap:1.4rem 2rem;
  padding:clamp(1.1rem,2.2vw,1.6rem) clamp(1.1rem,2.4vw,1.8rem)}
.mando__pieza{display:grid;grid-template-columns:auto 1fr;gap:.2rem 1.2rem;
  align-items:start;min-height:104px}
.mando__icono{grid-row:1 / span 3;width:64px;height:64px;filter:var(--sombra-icono)}
.mando__meta{font-size:var(--t-epigrafe);letter-spacing:.16em;text-transform:uppercase;
  color:var(--tinta-84);display:flex;align-items:baseline;gap:.5rem}
.mando__meta b{font-family:var(--display);font-size:1.5rem;font-weight:700;color:var(--oro);
  letter-spacing:-.04em}
.mando__meta em{font-style:normal;color:var(--oro)}
.mando__nombre{font-size:clamp(1.15rem,2vw,1.6rem);margin:.25rem 0 .45rem}
.mando__dato{font-size:var(--t-corrido);color:var(--tinta-84);line-height:1.6;max-width:64ch}
.mando__dato b{color:var(--tinta);font-weight:700}
.mando__dato i{font-style:italic}

.mando__lado{display:flex;flex-direction:column;align-items:flex-end;gap:.9rem;
  justify-content:space-between}
.mando__pasos{display:flex;align-items:center;gap:.5rem}
.paso{width:46px;height:46px;display:grid;place-items:center;flex:none;cursor:pointer;
  background:var(--papel-hondo);border:1px solid var(--oro-borde);color:var(--bronce);
  font-size:1.2rem;line-height:1;transition:background-color .3s,border-color .3s,color .3s}
.paso:hover{background:var(--oro-deco);border-color:var(--bronce);color:var(--verde)}
.paso--auto{width:auto;padding:0 1.05rem;height:46px;font-family:var(--texto);
  font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;gap:.55rem;
  display:inline-flex;align-items:center}
.paso--auto[aria-pressed="true"]{background:var(--oro-deco);border-color:var(--bronce);color:var(--verde)}
.paso--auto i{font-style:normal}

.riel{display:flex;gap:4px;align-items:center;flex-wrap:wrap;justify-content:flex-end;
  max-width:340px}
.riel button{width:12px;height:12px;padding:0;border:0;cursor:pointer;background:none}
.riel button i{display:block;width:100%;height:100%;background:rgba(44,58,36,.22);
  transform:scaleY(.5736) rotate(45deg);transition:background-color .3s,scale .3s}
.riel button:hover i{background:var(--oro)}
.riel button[aria-current="true"] i{background:var(--verde);scale:1.35}

.mando__ayuda{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:.7rem 1.6rem;
  align-items:center;padding-top:1rem;border-top:1px solid var(--linea);
  font-size:.86rem;line-height:1.6;color:var(--tinta-84)}
.mando__ayuda kbd{font-family:var(--texto);font-size:1em;border:1px solid var(--borde-control);
  padding:.12em .5em;color:var(--verde);background:var(--papel-hondo)}
.mando__ayuda button{background:none;border:0;padding:0;cursor:pointer;color:var(--bronce);
  font:inherit;font-size:.86rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700;
  border-bottom:1px solid var(--oro-borde)}
.mando__ayuda button:hover{border-color:var(--bronce)}
.mando__ayuda a{color:var(--bronce);border-bottom:1px solid var(--oro-borde);
  font-size:.86rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700}
.mando__ayuda a:hover{border-color:var(--bronce)}
.mando__ayuda .separa{margin-left:auto}

.escena-nota{margin-top:1rem;font-size:var(--t-apoyo);line-height:1.6;color:var(--tinta-84)}

/* lista de las 21 piezas: fuente única de la verdad y respaldo sin JS */
.cadena-lista{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;
  background:var(--linea);border:1px solid var(--linea);margin-top:2rem}
.cadena-lista li{background:var(--papel-carta);padding:1.5rem 1.7rem;display:grid;
  grid-template-columns:auto 1fr;gap:.2rem 1.1rem;transition:background-color .35s}
.cadena-lista li:hover{background:var(--papel-alto)}
.cadena-lista img{grid-row:1 / span 2;width:52px;height:52px;filter:var(--sombra-icono)}
.cadena-lista h3{font-size:1.1rem;display:flex;align-items:baseline;gap:.6rem}
.cadena-lista h3 b{font-size:.86rem;color:var(--bronce);letter-spacing:.06em}
.cadena-lista p{font-size:1rem;line-height:1.6;color:var(--tinta-84);margin-top:.45rem}
.cadena-lista p b{color:var(--tinta)}
.cadena-lista p i{font-style:italic}

.solo-movil{display:none}

/* ═══════════ 13 · CALENDARIO — cinta de 52 semanas ISO ═══════════ */
.ventanas{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;margin-top:3rem;
  background:var(--linea);border:1px solid var(--linea)}
.ventana{background:var(--papel-carta);padding:clamp(2rem,3.4vw,3rem);transition:background-color .4s}
.ventana:hover{background:var(--papel-alto)}
.ventana__rango{font-family:var(--display);font-size:clamp(2.2rem,5vw,4rem);font-weight:700;
  color:var(--oro);line-height:1;letter-spacing:-.055em;display:flex;align-items:center;gap:.15em}
.ventana__rango span{font-weight:400;color:var(--tinta-66);font-size:.55em}
.ventana__meses{margin-top:.9rem;font-size:.86rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--tinta-84)}
.ventana__texto{margin-top:1.3rem;color:var(--tinta-84);font-size:var(--t-corrido);line-height:1.7}
.ventana__texto strong{color:var(--tinta)}
.ventana.es-vigente{background:var(--papel-hondo);box-shadow:inset 3px 0 0 var(--oro),var(--sombra-1)}
.ventana__marca{display:inline-block;margin-top:1.2rem;font-size:.8rem;letter-spacing:.16em;
  text-transform:uppercase;color:var(--verde);background:var(--oro-deco);padding:.25em .6em;
  opacity:0}
.ventana.es-vigente .ventana__marca{opacity:1}

.anillo{margin-top:3rem;border:1px solid var(--linea);padding:1.6rem 1.4rem 1.2rem;
  background:var(--papel-hondo)}
.anillo__tira{display:flex;gap:2px;align-items:flex-end;height:76px}
.anillo__tira li{flex:1 1 0;height:34%;background:rgba(44,58,36,.10);
  transition:height .5s var(--curva),background-color .5s}
.anillo__tira li.es-principal{height:100%;background:var(--oro)}
.anillo__tira li.es-intermedia{height:70%;background:rgba(107,83,19,.45)}
.anillo__ejes{display:flex;justify-content:space-between;margin-top:.7rem;
  font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--tinta-84)}
.anillo__clave{display:flex;flex-wrap:wrap;gap:.6rem 1.6rem;margin-top:1.2rem;
  padding-top:1rem;border-top:1px solid var(--linea);font-size:.88rem;color:var(--tinta-84)}
.anillo__clave span{display:flex;align-items:center;gap:.5rem}
.anillo__clave i{width:14px;height:8px;flex:none}
.anillo__clave i.p{background:var(--oro)}
.anillo__clave i.s{background:rgba(107,83,19,.45)}
.anillo__clave i.n{background:rgba(44,58,36,.10)}

.aviso{margin-top:2.4rem;padding:1.7rem 2rem;border:1px solid var(--linea);
  border-left:2px solid var(--bronce);background:var(--papel-hondo);box-shadow:var(--sombra-1);color:var(--tinta-84);font-size:var(--t-corrido);
  line-height:1.65;max-width:82ch}
.aviso__eti{display:block;font-size:var(--t-epigrafe);letter-spacing:.18em;text-transform:uppercase;
  color:var(--bronce);margin-bottom:.6rem}
.aviso strong{color:var(--verde)}

/* ═══════════ 14 · PILA ISOMÉTRICA (empaque / corte del terreno) ═══════════ */
.pila{position:relative;height:clamp(360px,48vw,540px);margin-top:2.5rem;overflow:hidden}
.pila__marco{position:absolute;inset:0;perspective:1600px;perspective-origin:50% 44%}
/* OJO: la escala va DELANTE de las rotaciones. Un scale() 2D no toca Z, así
   que entre la rotación del tablero y la contra-rotación de las hojas
   rompería la cancelación y aplastaría los rótulos. */
.pila__eje{position:absolute;left:var(--pila-x,50%);top:52%;width:300px;height:300px;
  margin:-150px 0 0 -150px;transform-style:preserve-3d;
  transform:scale(var(--pila-s,1)) rotateX(55deg) rotateZ(-45deg)}
.capa{position:absolute;inset:0;transform-style:preserve-3d;
  transform:translateZ(calc(var(--n) * var(--sep,58px)));
  transition:transform .55s var(--curva)}
.capa:hover{transform:translateZ(calc(var(--n) * var(--sep,58px) + 26px))}
.capa__placa{position:absolute;inset:0;
  background:linear-gradient(140deg,rgba(232,180,78,calc(var(--op,.13) + .2)),rgba(239,231,215,.9));
  border:1px solid rgba(107,83,19,.34);
  box-shadow:0 26px 40px -22px rgba(44,58,36,.35)}
.capa__placa::after{content:'';position:absolute;inset:14px;border:1px dashed rgba(107,83,19,.3)}
.capa--llena .capa__placa{background:
  repeating-linear-gradient(45deg,rgba(107,83,19,.26) 0 2px,transparent 2px 11px),
  linear-gradient(140deg,rgba(218,172,64,.34),rgba(239,231,215,.9))}
/* Rótulo e icono se contra-rotan y luego se desplazan: con transform-origin
   en 0 0, la traslación que sigue a --contra ya está en espacio de pantalla. */
.capa__rotulo{position:absolute;left:100%;top:50%;width:calc(250px / var(--pila-s,1));
  transform-origin:0 0;transform:var(--contra) translate(118px,-50%);
  text-align:left;pointer-events:none;
  padding:.55rem .85rem;background:var(--papel-hondo);
  border:1px solid var(--linea);border-left:2px solid var(--oro);
  box-shadow:var(--sombra-2)}
/* guía del rótulo hasta el canto de la placa */
.capa__rotulo::before{content:'';position:absolute;left:-108px;top:50%;width:106px;height:1px;
  background:rgba(107,83,19,.5)}
/* la pila se escala con --pila-s, así que sus rótulos se contra-escalan
   igual que los de la escena: si no, caían por debajo de 10 px */
.capa__rotulo b{display:block;font-family:var(--display);font-weight:600;color:var(--oro);
  font-size:calc(1.02rem / var(--pila-s,1))}
.capa__rotulo i{display:block;font-style:normal;color:var(--tinta-84);
  font-size:calc(.88rem / var(--pila-s,1));margin-top:.25rem;line-height:1.5}
.capa__icono{position:absolute;left:50%;top:50%;width:64px;height:64px;
  transform-origin:0 0;transform:var(--contra) translate(-50%,-50%);
  filter:drop-shadow(0 12px 16px rgba(44,58,36,.26))}
@media (prefers-reduced-motion:reduce){.capa{transition:none}}

/* lluvia sobre el corte del terreno */
.pila__lluvia{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:3}
.pila__lluvia i{position:absolute;top:-14%;width:1px;height:22%;
  background:linear-gradient(to bottom,transparent,rgba(44,58,36,.2));
  animation:llover 2.4s linear infinite}
@media (prefers-reduced-motion:reduce){.pila__lluvia{display:none}}
@keyframes llover{to{translate:0 560%}}

/* ═══════════ 15 · PRODUCTO — calibrador isométrico ═══════════ */
.calibrador{display:grid;grid-template-columns:1fr .92fr;gap:clamp(1.6rem,4vw,3.4rem);
  align-items:start;margin-top:clamp(2rem,4vw,3rem)}
.calibrador__mando{border:1px solid var(--linea);background:var(--papel-carta);
  padding:clamp(1.4rem,2.8vw,2.2rem);box-shadow:var(--sombra-1)}
.calibrador__eti{font-size:var(--t-epigrafe);letter-spacing:.18em;text-transform:uppercase;
  color:var(--bronce);margin-bottom:1rem}
.chips{display:flex;flex-wrap:wrap;gap:.5rem}
.chip{font-family:var(--display);font-size:1.1rem;font-weight:600;letter-spacing:-.02em;
  min-width:58px;padding:.65rem .5rem;background:var(--papel-hondo);border:1px solid var(--oro-borde);
  color:var(--tinta-84);cursor:pointer;
  transition:background-color .25s,color .25s,border-color .25s}
.chip:hover{border-color:var(--bronce);color:var(--verde)}
.chip[aria-pressed="true"]{background:var(--oro-deco);border-color:var(--bronce);color:var(--verde)}

.lectura{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:1.6rem;
  background:var(--linea);border:1px solid var(--linea)}
.lectura div{background:var(--papel-hondo);padding:1.2rem 1.1rem}
.lectura dt{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--tinta-84)}
.lectura dd{margin:.45rem 0 0;font-family:var(--display);font-size:1.38rem;font-weight:700;
  color:var(--oro);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.lectura dd small{font-size:.62em;font-weight:500;color:var(--tinta-84);letter-spacing:.04em}

.caja-iso{position:relative;height:clamp(300px,38vw,430px);overflow:hidden;
  border:1px solid var(--linea);border-radius:clamp(8px,1vw,16px);
  box-shadow:var(--sombra-2),inset 0 0 70px rgba(44,58,36,.04);background:
    radial-gradient(110% 80% at 50% 30%,rgba(218,172,64,.2),transparent 60%),var(--papel-hondo)}
.caja-iso__marco{position:absolute;inset:0;perspective:1500px;perspective-origin:50% 42%}
.caja-iso__eje{position:absolute;left:50%;top:54%;width:280px;height:280px;
  margin:-140px 0 0 -140px;transform-style:preserve-3d;
  transform:scale(var(--caja-s,1)) rotateX(55deg) rotateZ(-45deg)}
.caja-iso__fondo{position:absolute;inset:0;
  background:linear-gradient(140deg,rgba(218,172,64,.34),rgba(239,231,215,.85));
  border:1px solid rgba(107,83,19,.34)}
.caja-iso__fondo::after{content:'';position:absolute;inset:10px;border:1px dashed rgba(107,83,19,.3)}
/* paredes: las dos del fondo, altas; las dos del frente, sólo un reborde,
   para que no tapen la fruta. En isométrico el fondo queda arriba-izquierda. */
.caja-iso__pared{position:absolute;
  background:linear-gradient(to top,rgba(107,83,19,.30),rgba(218,172,64,.16));
  border:1px solid rgba(107,83,19,.34)}
.caja-iso__pared--n{left:0;top:0;width:100%;height:54px;transform-origin:top center;
  transform:rotateX(90deg)}
.caja-iso__pared--o{left:0;top:0;width:54px;height:100%;transform-origin:center left;
  transform:rotateY(-90deg)}
.caja-iso__pared--s{left:0;bottom:0;width:100%;height:16px;transform-origin:bottom center;
  transform:rotateX(-90deg)}
.caja-iso__pared--e{right:0;top:0;width:16px;height:100%;transform-origin:center right;
  transform:rotateY(90deg)}
.fruto{position:absolute;left:var(--fx);top:var(--fy);width:0;height:0;
  transform-style:preserve-3d;transform:translateZ(14px);
  animation:asentar .5s var(--curva) both;animation-delay:var(--d,0s)}
/* max-width:none es obligatorio: el bloque contenedor (.fruto) mide 0 px de
   ancho y el max-width:100% de la base dejaría la imagen en un hilo. */
.fruto img{position:absolute;left:0;top:0;width:var(--dm);height:var(--dm);
  max-width:none;transform-origin:0 0;transform:var(--contra) translate(-50%,-50%);
  filter:drop-shadow(0 8px 9px rgba(44,58,36,.30));
  animation:entra-fruto .45s ease both;animation-delay:var(--d,0s)}
/* OJO: la opacidad NO puede animarse en .fruto. Una animación de opacidad
   sobre un elemento con preserve-3d lo aplana y la contra-rotación de la
   imagen se vendría abajo. El desvanecido va en la hoja (la propia img). */
@keyframes asentar{from{transform:translateZ(80px)}to{transform:translateZ(14px)}}
@keyframes entra-fruto{from{opacity:0}to{opacity:1}}
@media (prefers-reduced-motion:reduce){.fruto,.fruto img{animation:none}}
.caja-iso__cinta{position:absolute;left:1.2rem;bottom:1.1rem;z-index:4;
  font-size:var(--t-epigrafe);letter-spacing:.14em;text-transform:uppercase;color:var(--tinta-84)}
.caja-iso__cinta b{color:var(--bronce)}

/* tabla de calibres */
.tabla-caja{border:1px solid var(--linea);padding:clamp(1.4rem,3vw,2.4rem);
  background:var(--papel-carta);margin-top:clamp(2.4rem,4.5vw,3.4rem);overflow-x:auto;
  box-shadow:var(--sombra-1)}
.tabla-calibres{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;
  min-width:520px}
.tabla-calibres caption{caption-side:bottom;margin-top:1.2rem;font-size:var(--t-apoyo);
  color:var(--tinta-84);text-align:left;line-height:1.65}
.tabla-calibres caption b{color:var(--tinta)}
.tabla-calibres thead th{font-family:var(--texto);font-size:.8rem;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;color:var(--bronce);text-align:left;
  padding:0 1rem .8rem 0;border-bottom:1px solid var(--linea)}
.tabla-calibres tbody th{font-family:var(--display);font-size:1.2rem;font-weight:700;
  color:var(--verde);text-align:left;padding:.75rem 1rem .75rem 0;width:4.8rem}
.tabla-calibres tbody td{font-size:1rem;color:var(--tinta-84);padding:.75rem 1rem .75rem 0;
  white-space:nowrap}
.tabla-calibres tbody tr{border-bottom:1px solid var(--linea-fina);transition:background-color .3s}
.tabla-calibres tbody tr:hover,.tabla-calibres tbody tr.es-elegida{background:rgba(218,172,64,.18)}
.tabla-calibres tbody td:last-child{width:100%;padding-right:0}
.barra{display:block;height:3px;width:calc(var(--p) * 1%);background:var(--oro);opacity:.85}

/* ═══════════ 16 · QUIÉNES SOMOS — nómina y hitos ═══════════ */
.nomina{margin-top:2.4rem;border:1px solid var(--linea);background:var(--papel-hondo);
  padding:clamp(1.5rem,3vw,2.4rem);box-shadow:var(--sombra-1)}
.nomina__malla{display:flex;flex-wrap:wrap;gap:6px}
.nomina__malla i{width:13px;height:13px;background:var(--oro);opacity:.85;
  transform:scaleY(.5736) rotate(45deg)}
.nomina__malla i.es-aprendiz{background:transparent;border:1px solid var(--oro)}
.nomina__clave{display:flex;flex-wrap:wrap;gap:.6rem 1.8rem;margin-top:1.4rem;
  padding-top:1.1rem;border-top:1px solid var(--linea);font-size:var(--t-apoyo);
  color:var(--tinta-84)}
.nomina__clave span{display:flex;align-items:center;gap:.55rem}
.nomina__clave i{width:11px;height:11px;background:var(--oro);
  transform:scaleY(.5736) rotate(45deg);flex:none}
.nomina__clave i.hueco{background:transparent;border:1px solid var(--oro)}

.hitos{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:2.6rem;
  background:var(--linea);border:1px solid var(--linea)}
.hito{background:var(--papel-carta);padding:2rem 1.8rem;display:flex;flex-direction:column;
  gap:.6rem;position:relative;transition:background-color .4s}
.hito:hover{background:var(--papel-alto)}
.hito__ano{font-family:var(--display);font-size:1.7rem;font-weight:700;color:var(--oro);
  letter-spacing:-.04em;line-height:1}
.hito h3{font-size:1.1rem}
.hito p:not([class]){font-size:1rem;line-height:1.6;color:var(--tinta-84)}
.hito img{width:46px;height:46px;margin-bottom:.4rem;
  filter:var(--sombra-icono);transition:translate .4s var(--curva)}
.hito:hover img{translate:0 -5px}

.valores{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;margin-top:2.6rem;
  background:var(--linea);border:1px solid var(--linea)}
.valor{background:var(--papel-hondo);padding:1.6rem 1.2rem;text-align:center;
  transition:background-color .4s}
.valor:hover{background:var(--papel)}
.valor img{width:52px;height:52px;margin:0 auto .9rem;
  filter:var(--sombra-icono);transition:translate .4s var(--curva)}
.valor:hover img{translate:0 -5px}
.valor b{display:block;font-family:var(--display);font-size:1.08rem;font-weight:600}
.valor span{display:block;margin-top:.4rem;font-size:.9rem;line-height:1.5;color:var(--tinta-84)}

/* ═══════════ 17 · NOTICIAS — mesa isométrica ═══════════ */
.mesa{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.2rem,2.6vw,2rem);
  margin-top:clamp(2.4rem,5vw,3.6rem);perspective:1600px}
.nota{position:relative;background:var(--papel-carta);border:1px solid var(--linea);
  padding:clamp(1.4rem,2.4vw,2rem);display:flex;flex-direction:column;gap:.9rem;
  transform:rotateX(11deg) rotateZ(var(--giro,-3deg)) translateZ(0);
  transform-origin:50% 90%;
  box-shadow:0 30px 44px -28px rgba(44,58,36,.42);
  transition:transform .55s var(--curva),border-color .4s,background-color .4s,box-shadow .4s}
.nota:hover,.nota:focus-within{transform:rotateX(0deg) rotateZ(0deg) translateY(-8px);
  border-color:rgba(107,83,19,.4);background:var(--papel-hondo);box-shadow:var(--sombra-3)}
/* El ordinal es un <p> con texto real, lo lee el lector de pantalla: no es
   decorativo por mucho que se use como adorno. A alfa .45 medía 1,93:1.
   Va a color pleno (4,92:1). */
.nota__n{font-family:var(--display);font-size:3.4rem;font-weight:700;color:var(--oro);
  line-height:.8;letter-spacing:-.06em}
.nota img{width:60px;height:60px;filter:var(--sombra-icono)}
.nota h2,.nota h3{font-size:clamp(1.15rem,1.9vw,1.5rem)}
.nota__eti{font-size:var(--t-epigrafe);letter-spacing:.16em;text-transform:uppercase;color:var(--bronce)}
.nota p:not([class]){font-size:var(--t-corrido);color:var(--tinta-84);line-height:1.7}
.nota__mas{margin-top:auto;padding-top:1rem;font-size:.82rem;letter-spacing:.12em;
  text-transform:uppercase;font-weight:700;color:var(--bronce);
  border-top:1px solid var(--linea)}
@media (prefers-reduced-motion:reduce){
  .nota{transform:none}.nota:hover,.nota:focus-within{transform:none}
}

.temporada{display:grid;grid-template-columns:auto 1fr auto;gap:1.4rem 2rem;
  align-items:center;margin-top:2.6rem;border:1px solid var(--linea);
  border-left:2px solid var(--oro);padding:1.8rem 2rem;background:var(--papel-hondo);
  box-shadow:var(--sombra-1)}
.temporada img{width:66px;height:66px;filter:var(--sombra-icono)}
.temporada b{display:block;font-family:var(--display);font-size:1.3rem;color:var(--bronce)}
.temporada p{font-size:1.03rem;line-height:1.65;color:var(--tinta-84);margin-top:.4rem;max-width:60ch}

/* ═══════════ 18 · CONTACTO — etiqueta de embarque viva ═══════════ */
.cotiza{display:grid;grid-template-columns:1fr .88fr;gap:clamp(1.8rem,4vw,3.4rem);
  align-items:start;margin-top:clamp(2rem,4vw,3rem)}
.formulario{border:1px solid var(--linea);padding:clamp(1.6rem,3.4vw,2.6rem);
  background:var(--papel-carta);display:grid;gap:1.2rem;box-shadow:var(--sombra-2)}
.campo{display:grid;gap:.45rem}
.campo label{font-size:var(--t-epigrafe);letter-spacing:.14em;text-transform:uppercase;color:var(--bronce)}
.campo input{background:transparent;border:0;border-bottom:1px solid var(--borde-control);
  color:var(--verde);font:inherit;font-size:var(--t-corrido);padding:.65rem 0;
  transition:border-color .3s}
.campo input::placeholder{color:var(--tinta-66)}
.campo input:focus{outline:none;border-color:var(--bronce);box-shadow:0 1px 0 var(--bronce)}
.campo input:user-invalid{border-color:#AD367E}
.formulario .boton{margin-top:.5rem}
.formulario__aviso{font-size:.95rem;line-height:1.55;color:var(--bronce);min-height:1.4em}

.etiqueta{position:relative;border:1px solid rgba(107,83,19,.34);background:var(--papel-hondo);
  padding:clamp(1.6rem,3.4vw,2.4rem);
  transform:rotateX(9deg) rotateZ(-2deg);transform-origin:50% 0;
  box-shadow:0 36px 56px -34px rgba(44,58,36,.5);
  transition:transform .6s var(--curva)}
.etiqueta:hover{transform:none}
.etiqueta::before{content:'';position:absolute;left:1.6rem;top:.9rem;width:26px;height:9px;
  border:1px solid rgba(44,58,36,.28);border-radius:9px}
.etiqueta__cabeza{display:flex;justify-content:space-between;align-items:baseline;
  gap:1rem;padding:1.4rem 0 1rem;border-bottom:1px dashed rgba(107,83,19,.42)}
.etiqueta__marca{font-family:var(--display);font-size:1.1rem;font-weight:700;letter-spacing:-.02em}
.etiqueta__marca span{color:var(--bronce)}
.etiqueta__ref{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--tinta-84)}
.etiqueta__cuerpo{display:grid;gap:1px;background:var(--linea);border:1px solid var(--linea);
  margin-top:1.4rem}
.etiqueta__cuerpo div{background:var(--papel);padding:.95rem 1.1rem;display:flex;
  justify-content:space-between;align-items:baseline;gap:1rem}
.etiqueta__cuerpo dt{font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--tinta-84)}
.etiqueta__cuerpo dd{margin:0;font-family:var(--display);font-size:1.1rem;font-weight:600;
  color:var(--oro);text-align:right;overflow-wrap:anywhere}
.etiqueta__cuerpo dd.vacio{color:var(--tinta-66);font-weight:400;font-family:var(--texto);
  font-size:.95rem}
.etiqueta__pie{margin-top:1.3rem;display:flex;gap:1rem;align-items:center;
  font-size:var(--t-apoyo);line-height:1.55;color:var(--tinta-84)}
.etiqueta__pie img{width:40px;height:40px;flex:none}
.etiqueta__codigo{display:flex;gap:2px;margin-top:1.2rem;height:32px;align-items:flex-end}
.etiqueta__codigo i{flex:0 0 var(--w,3px);background:rgba(44,58,36,.72)}
@media (prefers-reduced-motion:reduce){.etiqueta{transform:none}}

/* acordeón de objeciones */
.acordeon{margin:3rem 0 2.6rem;border-top:1px solid var(--linea)}
.acordeon details{border-bottom:1px solid var(--linea)}
.acordeon summary{cursor:pointer;padding:1.3rem 2.5rem 1.3rem 0;position:relative;
  font-family:var(--display);font-size:clamp(1.08rem,1.5vw,1.28rem);font-weight:500;
  letter-spacing:-.02em;list-style:none;transition:color .3s}
.acordeon summary::-webkit-details-marker{display:none}
.acordeon summary:hover{color:var(--bronce)}
.acordeon summary::after{content:'+';position:absolute;right:.4rem;top:50%;translate:0 -50%;
  color:var(--bronce);font-size:1.3rem;font-weight:400;transition:rotate .3s}
.acordeon details[open] summary::after{rotate:45deg}
.acordeon details p{padding:0 3rem 1.5rem 0;color:var(--tinta-84);font-size:var(--t-corrido);
  line-height:1.7;max-width:82ch}

/* mapa de destinos */
.mapa{margin:0;border:1px solid var(--linea);padding:1.4rem;background:var(--papel-carta);
  box-shadow:var(--sombra-1)}
.regimenes{margin:2.4rem 0;border-top:1px solid var(--linea)}
.regimenes li{display:grid;grid-template-columns:12rem 1fr;gap:1rem;padding:1.1rem 0;
  border-bottom:1px solid var(--linea);align-items:baseline}
.regimenes b{font-family:var(--display);font-size:1.08rem;font-weight:600;color:var(--bronce)}
.regimenes span{font-size:1rem;line-height:1.6;color:var(--tinta-84)}

/* sellos de certificación */
.sellos{display:grid;grid-template-columns:repeat(2,1fr);gap:1.4rem;margin-top:2.8rem}
.sello-caja{border:1px solid var(--linea);padding:clamp(1.6rem,3.4vw,2.6rem);display:grid;
  gap:1.4rem;background:var(--papel-carta);box-shadow:var(--sombra-1);
  transition:border-color .4s,box-shadow .4s}
.sello-caja:hover{border-color:rgba(107,83,19,.4);box-shadow:var(--sombra-2)}
.sello-caja__marca{width:auto;height:60px;object-fit:contain;object-position:left}
.sello-caja h3{font-size:1.22rem}
.sello-caja__ggn{margin-top:.4rem;font-family:var(--display);font-size:.95rem;
  letter-spacing:.08em;color:var(--bronce)}
.sello-caja__texto{margin:.9rem 0 1.3rem;font-size:1.02rem;line-height:1.6;color:var(--tinta-84)}

/* cita */
.cita{margin:0}
.cita__titular{font-size:clamp(1.7rem,4.2vw,3.4rem);max-width:22ch}
.cita__texto{margin-top:1.8rem;max-width:62ch;color:var(--tinta-84);font-size:1.16rem;
  line-height:1.72}
.cita__firma{margin-top:1.8rem;display:flex;flex-wrap:wrap;align-items:baseline;gap:.9rem;
  padding-top:1.2rem;border-top:1px solid var(--linea);max-width:62ch}
.cita__firma b{font-family:var(--display);font-size:1.1rem;font-weight:600;color:var(--bronce)}
.cita__firma span{font-size:.88rem;letter-spacing:.14em;text-transform:uppercase;color:var(--tinta-84)}

/* ───────────── 19 · PIE (idéntico en las seis páginas) ───────────── */
.pie{border-top:1px solid var(--linea);padding:clamp(4.5rem,8vw,7rem) 0 2.4rem;
  background:var(--papel-hondo)}
.pie__rejilla{display:grid;grid-template-columns:1.3fr .8fr .9fr 1.1fr;
  gap:clamp(1.8rem,4vw,3.5rem)}
.pie__marca img{width:92px;height:92px;margin-bottom:1.2rem}
.pie__lema{font-size:1rem;color:var(--tinta-84);max-width:34ch;line-height:1.7}
.pie__titulo{font-size:var(--t-epigrafe);font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  color:var(--bronce);font-family:var(--texto);margin-bottom:1.1rem}
.pie ul li{padding-block:.45rem;font-size:1rem;line-height:1.55;color:var(--tinta-84)}
.pie a{transition:color .3s}
.pie a:hover{color:var(--bronce)}
.pie__oferta{margin-top:1.5rem;display:grid;gap:.5rem}
.pie__oferta label{font-size:var(--t-epigrafe);letter-spacing:.14em;text-transform:uppercase;
  color:var(--tinta-84)}
.pie__oferta-fila{display:flex;gap:.5rem;flex-wrap:wrap}
.pie__oferta input{flex:1 1 11rem;min-width:0;background:var(--papel);
  border:1px solid var(--borde-control);color:var(--verde);font:inherit;font-size:1rem;padding:.75rem .8rem}
.pie__oferta input:focus{outline:none;border-color:var(--bronce)}
.pie__oferta .boton{padding:.75rem 1.1rem;font-size:.8rem}
.pie__oferta-aviso{font-size:.92rem;line-height:1.5;color:var(--bronce);min-height:1.2em}
.pie__legal{max-width:var(--ancho);margin:clamp(2.5rem,5vw,3.5rem) auto 0;
  padding:1.4rem var(--canal) 0;border-top:1px solid var(--linea);
  display:flex;flex-wrap:wrap;justify-content:space-between;gap:.8rem;
  font-size:var(--t-apoyo);line-height:1.6;color:var(--tinta-84)}

/* ═══════════════════════════════════════════════════════════════════════
   20 · SUPERFICIE DE TINTA — el panel oscuro y las bandas a sangre
   ─────────────────────────────────────────────────────────────────────
   POR QUÉ EXISTE ESTA SECCIÓN
   La ronda anterior protegía el texto sobre vídeo subiendo el velo hasta
   .985. El contraste se arreglaba, pero la imagen se perdía: el vídeo se
   veía al 45 % en el centro y al 3–7 % justo donde había texto. Se cambió
   un problema por otro.

   La salida no es bajar el velo —eso devuelve el fallo de contraste— sino
   dejar de proteger el texto tapando la imagen entera y protegerlo EN LOCAL:

   1 · el velo baja a un unificador de color (§ 7: .10–.24, la imagen se ve
       al 76–90 %) y ya no se le pide que garantice nada;
   2 · el texto que va sobre imagen se monta en .panel-tinta, un bloque de
       fondo verde casi opaco con desenfoque de fondo y padding generoso que
       cubre SÓLO el área del texto. Dentro va texto claro, y la imagen
       respira alrededor;
   3 · una o dos secciones por página pasan a banda oscura a sangre completa
       (.seccion--tinta): es el contrapunto que a un sitio todo-blanco le
       falta, y el que devuelve profundidad a la escena isométrica.

   POR QUÉ EL PANEL NO PUEDE FALLAR
   El fondo del panel es rgba(57,72,45,.90) en su punto más translúcido. En
   el peor caso imaginable —vídeo blanco puro, 255,255,255— el fondo que
   queda compuesto bajo los glifos es #4F5A46, y sobre él:
     · hueso #ECDDC7 al 87 % ....... 6,89:1  (exige 4,5)
     · oro   #DAAC40 ............... 5,27:1  (exige 4,5)
   Sobre el panel sin vídeo detrás esos mismos colores dan 10,8:1 y 8,6:1.
   No hay fotograma que lo baje de AA: el contraste es por construcción.

   EL ORO VUELVE, Y SÓLO AQUÍ
   El #DAAC40 original del sitio hermano da 1,74:1 sobre el papel #EFE7D7:
   es ilegible y sobre papel sigue prohibido para texto (ahí manda el
   oscurecido #6B5313). Sobre tinta pasa a 7,2–8,6:1, así que dentro de
   panel y de banda se recupera el oro de verdad como acento.

   CÓMO ESTÁ HECHO — sin duplicar componentes
   La superficie de tinta redefine las VARIABLES (--papel-*, --tinta-*,
   --oro, --bronce, --linea, sombras) y toda tarjeta, ficha, tabla, lista o
   botón que se apoye en ellas se resuelve sola. Sólo se listan a mano los
   pocos sitios que llevaban un color literal escrito.
   OJO: --verde NO se redefine. Además de tinta se usa como FONDO
   (.boton--tinta) y como texto oscuro sobre chapa de oro (.chip, .paso,
   .ventana__marca, .nodo activo); redefinirlo los rompería todos.
   ═══════════════════════════════════════════════════════════════════════ */

.panel-tinta,
.seccion--tinta{
  /* PAPEL → TINTA: los tres planos del blanco se invierten */
  --papel:#2C3A24;
  --papel-hondo:#283620;
  --papel-carta:#34432A;
  --papel-tinte:#313F26;
  --papel-alto:#404F33;

  /* TINTA → HUESO · ratios medidos sobre #2C3A24 */
  --tinta:#ECDDC7;                    /* 14,87:1 */
  --tinta-84:rgba(236,221,199,0.82);   /* 10,77:1 · texto corrido */
  --tinta-70:rgba(236,221,199,0.78);   /*  8,52:1 · apoyos y pies  */
  --tinta-66:rgba(236,221,199,0.76);   /*  7,74:1 · metadatos      */

  /* ORO · el de verdad, el del sitio hermano */
  --oro:#DAAC40;                      /*  8,56:1 · cifras y acentos */
  --bronce:#E3C063;                   /* 10,20:1 · epígrafes y enlaces */
  --oro-deco:#DAAC40;
  --oro-24:rgba(218,172,64,.26);
  --oro-12:rgba(218,172,64,.12);
  --oro-borde:rgba(218,172,64,.55);   /* 3,55:1 · borde de control */

  --linea:rgba(218,172,64,.20);
  --linea-fina:rgba(218,172,64,.11);
  --borde-control:rgba(236,221,199,.46);

  /* sobre tinta la profundidad ya no la da una sombra de color sino la
     oscuridad: las sombras de papel no se ven y hay que rehacerlas */
  --sombra-1:0 1px 2px rgba(24,35,19,.30),0 12px 26px -18px rgba(24,35,19,.70);
  --sombra-2:0 2px 8px rgba(24,35,19,.34),0 26px 48px -24px rgba(24,35,19,.78);
  --sombra-3:0 8px 20px rgba(24,35,19,.38),0 48px 74px -36px rgba(24,35,19,.82);
  --sombra-icono:drop-shadow(0 12px 16px rgba(24,35,19,.55));

  color:var(--tinta-84);
}

/* ── EL PANEL ──────────────────────────────────────────────────────────
   Bloque de diseño, no mancha: borde de oro fino, esquina del mismo radio
   que el lienzo de vídeo que lo sostiene y desenfoque de fondo para que la
   imagen se lea a través como material, no como ruido. */
.panel-tinta{
  position:relative;
  padding:clamp(1.6rem,2.9vw,2.9rem) clamp(1.5rem,2.7vw,2.7rem);
  background:linear-gradient(152deg,
    rgba(48,62,38,.93) 0%,rgba(57,72,45,.90) 55%,rgba(40,54,32,.94) 100%);
  -webkit-backdrop-filter:blur(18px) saturate(1.18);
  backdrop-filter:blur(18px) saturate(1.18);
  border:1px solid rgba(218,172,64,.34);
  border-radius:clamp(8px,1vw,16px);
  box-shadow:0 2px 10px rgba(24,35,19,.28),0 40px 70px -34px rgba(24,35,19,.72);
}
/* variante tira: una sola línea de contenido, altura mínima */
.panel-tinta--tira{padding:clamp(.95rem,1.6vw,1.3rem) clamp(1.2rem,2.1vw,1.8rem)}
/* la ficha de datos del hero pierde ~86 px por el acolchado del panel: los
   separadores se estrechan y la cifra baja un punto para que los cuatro
   campos sigan cabiendo en una sola fila (si no, «GGN» se descuelga y deja
   una celda vacía con filete al lado, que se lee como un error) */
.panel-tinta .portada__ficha > div{padding-right:1.05rem;margin-right:1.05rem}
.panel-tinta .portada__ficha dd{font-size:1.15rem}
.panel-tinta .portada__ficha dt{letter-spacing:.14em}

/* anchos: el panel cubre el área del texto, nunca el encuadre entero.
   Se alinea a la izquierda del raíl de 1280 px, que es el mismo raíl de la
   cabecera y de todas las secciones: si se centrara, se desalinearía. */
.portada__panel{max-width:min(100%,54rem)}
/* 55rem, no 50: por debajo de eso la ficha de datos del hero interior deja
   «Coordenadas» descolgada en una segunda fila con un hueco al lado */
.portada--interior .portada__panel{max-width:min(100%,55rem)}
.banda-panel{max-width:min(100%,56rem)}
.cierre-franja__cuerpo.panel-tinta{max-width:min(100%,68ch)}

/* ── LA BANDA A SANGRE ────────────────────────────────────────────────── */
.seccion--tinta{
  position:relative;isolation:isolate;border-top:0;
  background:
    radial-gradient(120% 90% at 22% 0%,rgba(218,172,64,.07),transparent 58%),
    linear-gradient(168deg,#364529 0%,#2C3A24 52%,#293720 100%);
}
/* la costura con el papel se ve: filete de oro arriba y abajo */
.seccion--tinta::before,
.seccion--tinta::after{content:'';position:absolute;left:0;right:0;height:1px;background:rgba(218,172,64,.34);z-index:3;pointer-events:none}.seccion--tinta::before{top:0}.seccion--tinta::after{bottom:0}.cierre-franja .lienzo-video{inset:clamp(1.4rem,3vw,3rem) var(--canal)}.panel-tinta .boton--tinta,.seccion--tinta .boton--tinta{background:var(--oro);color:#2C3A24;border-color:var(--oro);box-shadow:0 2px 10px rgba(24,35,19,.34)}.panel-tinta .boton--tinta:hover,.seccion--tinta .boton--tinta:hover{background:#EDD593;border-color:#EDD593;color:#2C3A24}.panel-tinta .boton--filete,.seccion--tinta .boton--filete{background:transparent;color:var(--tinta);border-color:var(--borde-control)}.panel-tinta .boton--filete:hover,.seccion--tinta .boton--filete:hover{border-color:var(--oro);background:var(--oro-12)}.panel-tinta .punto-vivo,.seccion--tinta .punto-vivo{box-shadow:0 0 0 0 rgba(218,172,64,.34);animation:latir-oro 2.6s ease-out infinite}@keyframes latir-oro{0%{box-shadow:0 0 0 0 rgba(218,172,64,.42)}70%,100%{box-shadow:0 0 0 12px rgba(218,172,64,0)}}.panel-tinta .placa::before,.seccion--tinta .placa::before{background:linear-gradient(140deg,rgba(218,172,64,.24),rgba(218,172,64,.04));border-color:var(--oro-24);box-shadow:0 12px 24px -16px rgba(24,35,19,.8)}.panel-tinta .placa img,.seccion--tinta .placa img,.seccion--tinta .dato__icono,.seccion--tinta .cadena-lista img,.seccion--tinta .mando__icono,.seccion--tinta .hito img,.seccion--tinta .valor img{filter:brightness(1.2) saturate(1.08) var(--sombra-icono)}.seccion--tinta .tabla-calibres tbody th,.seccion--tinta .aviso strong,.seccion--tinta .mando__ayuda kbd{color:var(--tinta)}.seccion--tinta .tabla-calibres tbody tr:hover,.seccion--tinta .tabla-calibres tbody tr.es-elegida{background:rgba(218,172,64,.14)}.seccion--tinta .hass3d{--halo:232,180,78}.seccion--tinta .hass3d__in img{filter:drop-shadow(0 34px 44px rgba(24,35,19,.66)) drop-shadow(0 0 44px rgba(218,172,64,.20))}.seccion--tinta .sello-caja:hover{border-color:var(--oro-24)}.seccion--tinta .sello-caja__marca{height:76px;padding:.6rem .95rem;background:#EDE5D4;border-radius:6px;object-position:center;max-width:100%;box-shadow:0 12px 24px -16px rgba(24,35,19,.9)}.seccion--tinta .mapa{background:#EDE5D4;border-color:rgba(218,172,64,.30);box-shadow:0 18px 40px -26px rgba(24,35,19,.9)}.cierre-franja.seccion--tinta img.emblema{filter:brightness(1.2) saturate(1.08) drop-shadow(0 20px 30px rgba(24,35,19,.7))}.seccion--tinta .escena{border-color:rgba(218,172,64,.22);background:radial-gradient(120% 80% at 50% 26%,rgba(218,172,64,.10),transparent 62%),#222F1C;box-shadow:var(--sombra-2),inset 0 0 110px 26px rgba(24,35,19,.62)}.seccion--tinta .escena__esquina{border-color:rgba(218,172,64,.5)}.seccion--tinta .suelo__canto{background:#222F1C;border-color:rgba(218,172,64,.09)}.seccion--tinta .suelo__canto--fondo{background:#1B2514;box-shadow:0 0 130px 50px rgba(20,20,20,.6)}.seccion--tinta .suelo__rejilla{background-color:#2F4124;background-image:radial-gradient(58% 52% at 44% 40%,rgba(218,172,64,.13),rgba(218,172,64,0) 72%),repeating-linear-gradient(0deg,rgba(218,172,64,.11) 0 1px,transparent 1px 43px),repeating-linear-gradient(90deg,rgba(218,172,64,.11) 0 1px,transparent 1px 43px),repeating-linear-gradient(0deg,rgba(218,172,64,.22) 0 1.5px,transparent 1.5px 172px),repeating-linear-gradient(90deg,rgba(218,172,64,.22) 0 1.5px,transparent 1.5px 172px);box-shadow:inset 0 0 190px 30px rgba(27,37,20,.95)}.seccion--tinta .losa{stroke:rgba(218,172,64,.5)}.seccion--tinta .losa--interior{stroke:rgba(218,172,64,.16)}.seccion--tinta .parcela{stroke:rgba(218,172,64,.34)}.seccion--tinta .ruta__base{stroke:rgba(218,172,64,.62)}.seccion--tinta .nodo__sombra{background:radial-gradient(closest-side,rgba(24,34,17,.92),rgba(24,34,17,.5) 52%,rgba(24,34,17,0) 80%)}.seccion--tinta .nodo__poste{background:linear-gradient(to top,rgba(218,172,64,.05),rgba(218,172,64,.75))}.seccion--tinta .nodo__poste::after{box-shadow:0 0 8px rgba(218,172,64,.8)}.seccion--tinta .nodo__icono{filter:brightness(1.2) saturate(1.08) drop-shadow(0 14px 22px rgba(20,20,20,.6))}.seccion--tinta .nodo__rotulo{color:var(--tinta);background:rgba(27,37,20,.94);border-color:transparent;box-shadow:0 12px 22px -12px rgba(20,20,20,.9)}.seccion--tinta .nodo--cadena .nodo__rotulo{border-color:var(--oro-borde)}.seccion--tinta .nodo.esta-encima .nodo__rotulo,.seccion--tinta .nodo.es-actual .nodo__rotulo{color:#222F1C;background:var(--oro);border-color:var(--oro)}.seccion--tinta .nodo.esta-encima .nodo__num,.seccion--tinta .nodo.es-actual .nodo__num{color:#222F1C}.seccion--tinta .nodo.esta-encima .nodo__icono,.seccion--tinta .nodo.es-actual .nodo__icono{filter:drop-shadow(0 20px 30px rgba(20,20,20,.6)) drop-shadow(0 0 26px rgba(218,172,64,.7))}.seccion--tinta .escena::after{background:linear-gradient(to top,#222F1C 6%,rgba(31,41,26,.55) 52%,transparent)}.seccion--tinta .escena__leyenda{background:rgba(27,37,20,.90);border-color:var(--linea);box-shadow:0 14px 26px -18px rgba(20,20,20,.9)}.seccion--tinta .escena__leyenda i{background:var(--oro-24);border-color:var(--oro-24)}.seccion--tinta .escena__leyenda li:first-child i{background:var(--oro);border-color:var(--oro)}.seccion--tinta .riel button i{background:rgba(218,172,64,.24)}.seccion--tinta .riel button[aria-current="true"] i{background:var(--oro);scale:1.35}@media (max-width:1200px){.valores{grid-template-columns:repeat(3,1fr)}.mando{grid-template-columns:1fr}.mando__lado{align-items:flex-start;flex-direction:row;flex-wrap:wrap;gap:1rem 1.4rem}.riel{justify-content:flex-start;max-width:none}}@media (max-width:1080px){.cabecera__cta{display:none}.hamburguesa{display:block}.marca,.hamburguesa{position:relative;z-index:2}.nav{position:fixed;inset:0;z-index:-1;background:var(--papel-hondo);display:flex;flex-direction:column;justify-content:center;gap:2rem;padding:6rem var(--canal) 3rem;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .4s var(--curva),visibility .4s}.nav.esta-abierta{opacity:1;visibility:visible;pointer-events:auto;z-index:1}.nav__lista{flex-direction:column;align-items:flex-start;gap:.3rem}.nav__lista a{font-family:var(--display);font-size:clamp(1.5rem,6vw,2.3rem);font-weight:600;letter-spacing:-.03em;color:var(--verde)}.nav__lista a[aria-current="page"]{color:var(--bronce)}.nav__cta-movil{display:inline-flex;align-self:flex-start}.par,.par--desigual,.calibrador,.cotiza{grid-template-columns:1fr}.portada__rejilla{grid-template-columns:1fr}.portada__objeto{max-width:300px;margin-top:2rem}.datos,.rejilla--4{grid-template-columns:repeat(2,1fr)}.hitos{grid-template-columns:repeat(2,1fr)}.pie__rejilla{grid-template-columns:1fr 1fr}.mesa{grid-template-columns:1fr}.nota{transform:none}}@media (max-width:1100px){.con-js .escena,.con-js .mando,.escena-nota{display:none!important}.con-js .cadena-lista{display:grid}.cadena-lista{grid-template-columns:1fr}.rejilla--3{grid-template-columns:repeat(2,1fr)}.valores{grid-template-columns:repeat(2,1fr)}.lectura{grid-template-columns:1fr 1fr}.temporada{grid-template-columns:1fr;text-align:left}}@media (max-width:760px){.caja-iso__eje{--caja-s:.72!important}.pila{display:none}.solo-movil{display:block}.etiqueta,.nota{transform:none}.tabla-calibres{min-width:0}.portada{min-height:92svh;padding-top:7.5rem;padding-bottom:3.5rem}.lienzo-video{inset:4.2rem var(--canal) 1rem}.lienzo-video__velo--denso{background:linear-gradient(to bottom,rgba(44,58,36,.14),rgba(44,58,36,.26))}.lienzo-video__velo--heroe{background:linear-gradient(to top,rgba(44,58,36,.26) 30%,rgba(44,58,36,.16) 70%,rgba(44,58,36,.10) 100%)}.portada__panel,.portada--interior .portada__panel,.banda-panel{max-width:100%}.portada--interior{min-height:auto;padding-bottom:3.5rem}.portada__desliz{display:none}.datos,.ventanas,.rejilla--2,.rejilla--3,.rejilla--4,.sellos,.hitos,.cifras{grid-template-columns:1fr}.cifras{grid-template-columns:repeat(2,1fr)}.valores{grid-template-columns:repeat(2,1fr)}.regimenes li{grid-template-columns:1fr;gap:.25rem}.pie__rejilla{grid-template-columns:1fr}.portada__ficha>div{padding-right:1rem;margin-right:1rem}.anillo__tira{height:56px}.tabla-calibres{min-width:440px}}@media (max-width:480px){:root{--canal:1.1rem}.portada__linea{font-size:clamp(1.6rem,8.5vw,2.2rem)}.boton{font-size:.8rem;padding:.95rem 1.2rem;width:100%}.acciones{gap:.9rem}.enlace-verificar{font-size:.84rem}.dato{padding:1.6rem 1.15rem}.lectura{grid-template-columns:1fr}.valores{grid-template-columns:1fr}.acordeon summary{font-size:1.04rem;padding-right:2rem}.acordeon details p{padding-right:.5rem}.portada__ficha>div{border-right:0;width:50%;margin-right:0;padding-right:.5rem}.cadena-lista li{grid-template-columns:1fr}.cadena-lista img{grid-row:auto;margin-bottom:.5rem}.tabla-calibres{min-width:360px}}@media (prefers-reduced-motion:reduce){.lienzo-video__pieza{display:none}.lienzo-video{background-size:cover;background-position:center;filter:saturate(1.08) contrast(1.05) brightness(.95)}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media print{.grano,.cabecera,.lienzo-video,.escena,.mando,.progreso{display:none!important}.con-js .cadena-lista{display:grid!important}body{background:#fff;color:#000}}.portada__desliz{background:rgba(44,58,36,.28)}.portada__desliz span{background:var(--verde);box-shadow:0 0 0 1px rgba(240,240,240,.45)}.portada__ggn{font-family:var(--display);font-weight:400;font-size:clamp(1.05rem,2.2vw,1.7rem);line-height:1.1;letter-spacing:-.02em;color:var(--tinta-70);margin:-1.2rem 0 1.6rem}.portada__panel .portada__ggn,.panel-oscuro .portada__ggn{color:var(--hueso-72,rgba(240,237,226,.72))}.portada{padding-left:0;padding-right:0}.portada__cuerpo{padding-inline:var(--canal)}.portada::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(to top,rgba(34,47,28,.90) 0%,rgba(34,47,28,.78) 24%,rgba(34,47,28,.42) 50%,rgba(34,47,28,.14) 70%,rgba(34,47,28,0) 88%),linear-gradient(to right,rgba(34,47,28,.62) 0%,rgba(34,47,28,.28) 38%,rgba(34,47,28,0) 66%)}.portada__panel{background:none !important;backdrop-filter:none !important;border:0 !important;box-shadow:none !important;border-radius:0 !important;padding:0 !important;max-width:min(100%,52rem)}.portada .portada__linea,.portada h1{color:#ECDDC7;text-shadow:0 2px 18px rgba(34,47,28,.55)}.portada .portada__linea--oro{color:var(--oro-deco,#E8B44E)}.portada .portada__entrada,.portada .portada__micro,.portada .portada__ggn{color:rgba(255,255,255,.88);text-shadow:0 1px 12px rgba(34,47,28,.5)}.portada .portada__entrada strong{color:#fff}.portada .miga,.portada .miga a,.portada .miga i,.portada .sobretitulo{color:rgba(255,255,255,.86);text-shadow:0 1px 10px rgba(34,47,28,.6)}.portada .portada__ficha{border-top:1px solid rgba(255,255,255,.24)}.portada .portada__ficha *{color:rgba(255,255,255,.9)}@media (max-width:52rem){.portada::after{background:linear-gradient(to top,rgba(34,47,28,.92) 0%,rgba(34,47,28,.80) 34%,rgba(34,47,28,.46) 62%,rgba(34,47,28,.12) 92%)}}.idioma{display:flex;align-items:center;gap:.15rem;flex:none;padding:.2rem;border:1px solid var(--linea);border-radius:999px;background:rgba(255,255,255,.55)}.idioma a{font-family:var(--display);font-size:.72rem;font-weight:700;letter-spacing:.1em;line-height:1;padding:.44rem .62rem;border-radius:999px;color:var(--tinta-66);transition:color .3s,background-color .3s}.idioma a:hover{color:var(--verde)}.idioma a[aria-current]{background:var(--verde);color:var(--papel)}.idioma a:focus-visible{outline:2px solid var(--verde);outline-offset:2px}@media (max-width:1080px){.cabecera{gap:.9rem}.idioma{position:relative;z-index:2}}@media (max-width:480px){.idioma a{font-size:.68rem;padding:.4rem .5rem}}.seccion--medio .lienzo-video,.cierre-franja .lienzo-video{inset:0 !important}.panel-tinta{background:none !important;-webkit-backdrop-filter:none !important;backdrop-filter:none !important;border:0 !important;border-radius:0 !important;box-shadow:none !important;padding:0 !important}.panel-tinta--tira{background:rgba(34,47,28,.62) !important;padding:.7rem 1.1rem !important;border-radius:2px !important;display:inline-flex}.seccion--medio,.cierre-franja{position:relative;isolation:isolate}.seccion--medio>.lienzo-video::after,.cierre-franja>.lienzo-video::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(to top,rgba(34,47,28,.88) 0%,rgba(34,47,28,.74) 26%,rgba(34,47,28,.38) 54%,rgba(34,47,28,.10) 74%,rgba(34,47,28,0) 90%),linear-gradient(to right,rgba(34,47,28,.58) 0%,rgba(34,47,28,.24) 40%,rgba(34,47,28,0) 68%)}.seccion--medio .banda-panel,.cierre-franja .cierre-franja__cuerpo{position:relative;z-index:3}.seccion--medio .titulo-grande,.cierre-franja .titulo-grande,.seccion--medio h2,.cierre-franja h2,.seccion--medio h3,.cierre-franja h3{color:#ECDDC7;text-shadow:0 2px 18px rgba(34,47,28,.55)}.seccion--medio p,.cierre-franja p,.seccion--medio li,.cierre-franja li,.seccion--medio .lectura,.cierre-franja .lectura{color:rgba(255,255,255,.88);text-shadow:0 1px 12px rgba(34,47,28,.5)}.seccion--medio strong,.cierre-franja strong{color:#fff}.seccion--medio .sobretitulo,.cierre-franja .sobretitulo{color:rgba(255,255,255,.86);text-shadow:0 1px 10px rgba(34,47,28,.6)}.seccion--medio .nota-pie,.cierre-franja .nota-pie{color:rgba(255,255,255,.78)}@media (max-width:52rem){.lienzo-video{inset:0 !important}.seccion--medio>.lienzo-video::after,.cierre-franja>.lienzo-video::after{background:linear-gradient(to top,rgba(34,47,28,.90) 0%,rgba(34,47,28,.78) 34%,rgba(34,47,28,.44) 64%,rgba(34,47,28,.10) 92%)}}.cabecera:not(.compacta)::before{background:linear-gradient(to bottom,rgba(34,47,28,.82) 0%,rgba(34,47,28,.55) 55%,rgba(34,47,28,0) 100%)}.cabecera:not(.compacta) .marca,.cabecera:not(.compacta) .marca__nombre{color:#ECDDC7;text-shadow:0 1px 10px rgba(34,47,28,.6)}.cabecera:not(.compacta) .marca__sufijo{color:#D8BE6A}.cabecera:not(.compacta) .nav__lista a{color:rgba(255,255,255,.90);text-shadow:0 1px 10px rgba(34,47,28,.6)}.cabecera:not(.compacta) .nav__lista a:hover,.cabecera:not(.compacta) .nav__lista a[aria-current="page"]{color:#D8BE6A}.cabecera:not(.compacta) .nav__lista a[aria-current="page"]::after{background:#D8BE6A}.cabecera:not(.compacta) .conmutador-idioma a{color:rgba(255,255,255,.88)}.cabecera:not(.compacta) .conmutador-idioma a[aria-current="true"]{color:#D8BE6A}.cabecera:not(.compacta) .boton--tinta{background:#D8BE6A;color:rgba(34,47,28,1);border-color:#D8BE6A}.lienzo-video>picture{position:absolute;inset:0;display:block;width:100%;height:100%}.lienzo-foto{width:100%;height:100%;object-fit:cover;object-position:var(--foco,50% 50%);filter:saturate(1.06) contrast(1.04) brightness(.96)}.seccion--medio--pleno>.lienzo-video::after{background:linear-gradient(to top,rgba(34,47,28,.86) 0%,rgba(34,47,28,.72) 34%,rgba(34,47,28,.58) 68%,rgba(34,47,28,.50) 100%) !important}.seccion--medio .datos{background:none}.seccion--medio .dato{background:none;padding:2.4rem 2.2rem 2.4rem 0}.seccion--medio .dato:hover{background:none}.tira-foto{position:relative;display:block;margin:0;width:100%;overflow:hidden;height:clamp(190px,28vw,420px);background:var(--papel-tinte)}.tira-foto picture{display:block;width:100%;height:100%}.tira-foto img{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--foco,50% 50%);filter:saturate(1.06) contrast(1.04) brightness(.96)}.par--centrado{align-items:center}.retrato{margin:0;position:relative}.retrato img{display:block;width:100%;height:auto}.retrato figcaption{margin-top:.85rem;font-size:var(--t-apoyo);line-height:1.5;color:var(--tinta-66);letter-spacing:.01em}@media (max-width:52rem){.tira-foto{height:clamp(170px,44vw,280px)}}@media print{.tira-foto{display:none !important}.seccion--medio h2,.seccion--medio h3,.seccion--medio p,.seccion--medio li,.cierre-franja h2,.cierre-franja h3,.cierre-franja p,.cierre-franja li{color:#000 !important;text-shadow:none !important}}.portada .sobretitulo{letter-spacing:.18em}.seccion--medio .ventanas{background:none;border:0;border-block:1px solid var(--linea)}.seccion--medio .ventana{background:none;padding:clamp(1.8rem,3vw,2.6rem) clamp(1.4rem,2.6vw,2.4rem) clamp(1.8rem,3vw,2.6rem) 0}.seccion--medio .ventana:hover{background:none}.seccion--medio .ventana.es-vigente{background:none;box-shadow:inset 3px 0 0 var(--oro);padding-left:clamp(1.1rem,1.8vw,1.6rem)}.seccion--medio .anillo{background:none;border:0;padding:1.6rem 0 1.2rem}.seccion--medio .anillo__tira li,.seccion--medio .anillo__clave i.n{background:rgba(240,237,226,.22)}.seccion--medio .anillo__tira li.es-intermedia,.seccion--medio .anillo__clave i.s{background:rgba(232,180,78,.46)}.seccion--medio .anillo__tira li.es-principal{background:var(--oro)}.seccion--medio .aviso{background:none;border:0;box-shadow:none;border-left:2px solid var(--bronce);padding:.35rem 0 .35rem clamp(1.1rem,1.8vw,1.6rem)}.seccion--medio .valores{background:none;border:0;border-block:1px solid var(--linea)}.seccion--medio .valor{background:none;padding:1.8rem .9rem}.seccion--medio .valor:hover{background:none}.panel-tinta .valor img,.panel-tinta .dato__icono{filter:brightness(1.2) saturate(1.08) var(--sombra-icono)}@media (max-width:52rem){.seccion--medio--pleno>.lienzo-video::after{background:linear-gradient(to top,rgba(11,24,17,.90) 0%,rgba(11,24,17,.82) 38%,rgba(11,24,17,.74) 72%,rgba(11,24,17,.68) 100%) !important}}.hamburguesa{width:48px;height:48px;display:none;place-items:center;background:none;border:0;padding:0;cursor:pointer}@media (max-width:52rem){.hamburguesa{display:grid}}.hamburguesa__caja{display:grid;gap:6px;width:26px;background:none !important}.hamburguesa__caja i{display:block;width:100%;height:2px;border-radius:2px;background:var(--tinta);transition:translate .25s,rotate .25s,opacity .25s}.cabecera:not(.compacta) .hamburguesa__caja i{background:#ECDDC7}.hamburguesa[aria-expanded="true"] .hamburguesa__caja i:first-child{translate:0 4px;rotate:45deg}.hamburguesa[aria-expanded="true"] .hamburguesa__caja i:last-child{translate:0 -4px;rotate:-45deg}.solo-lectores{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;background:none!important}.nav.esta-abierta{background:#EFE7D7 !important}.cabecera:not(.compacta) .nav.esta-abierta .nav__lista a,.nav.esta-abierta .nav__lista a{color:#2C3A24 !important;text-shadow:none !important}.cabecera:not(.compacta) .nav.esta-abierta .nav__lista a[aria-current="page"],.nav.esta-abierta .nav__lista a[aria-current="page"]{color:#6B5313 !important}.nav.esta-abierta .nav__lista a[aria-current="page"]::after{background:#6B5313}.cabecera:not(.compacta):has(.nav.esta-abierta) .marca,.cabecera:not(.compacta):has(.nav.esta-abierta) .marca__nombre{color:#2C3A24 !important;text-shadow:none !important}.cabecera:not(.compacta):has(.nav.esta-abierta) .marca__sufijo{color:#6B5313 !important}.cabecera:not(.compacta):has(.nav.esta-abierta) .hamburguesa__caja i{background:#2C3A24 !important}.cabecera.compacta{background:rgba(239,231,215,.97)}@media (max-width:52rem){.cabecera.compacta{background:rgb(239,231,215);backdrop-filter:none}}