/* Elogio: estilos base y componentes. Los tokens viven en tokens.css. */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:5rem}
body{margin:0;background:var(--fondo);color:var(--tinta);font:400 var(--t-cuerpo)/1.6 var(--f-texto);-webkit-font-smoothing:antialiased;overflow-x:clip}
img,svg{display:block;max-width:100%}
h1,h2,h3,p,figure,blockquote,ul,ol,dl,dd{margin:0;padding:0}
ul,ol{list-style:none}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;background:none;border:0;padding:0}
:focus-visible,.is-focus{outline:3px solid var(--foco);outline-offset:3px}
dialog{border:0;padding:0;max-width:none;max-height:none;color:inherit}
.salto{position:fixed;left:var(--margen);top:-5rem;z-index:100;background:var(--noche);color:var(--papel);padding:.75rem 1rem;font-weight:600}
.salto:focus{top:.5rem}
.oculto{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.envoltura{padding-inline:var(--margen);max-width:var(--max);margin-inline:auto}
.display{font-family:var(--f-titular);font-optical-sizing:auto;font-weight:800;line-height:1.02;letter-spacing:-.015em;text-wrap:balance}

[hidden]{display:none!important}

/* Contextos de color: redefinen la tinta y los acentos dentro de un campo */
.campo-azul{background:var(--azul);--tinta:var(--papel);--acento:var(--papel);--sec:var(--papel);--sec-fill:var(--azul);--filete:var(--filete-claro);--foco:var(--papel);--sombra:var(--noche);--btn-bg:var(--papel);--btn-fg:var(--azul);--err:var(--papel);color:var(--tinta)}
.campo-noche{background:var(--sala);--tinta:var(--papel);--acento:var(--azul-claro);--filete:var(--filete-claro);--foco:var(--papel);--sombra:var(--azul);--btn-bg:var(--papel);--btn-fg:var(--noche);--err:var(--papel);color:var(--tinta)}
.campo-noche[data-sec=cine]{--sec:var(--c-cine-claro)}
.campo-chispa{background:var(--c-chispa-fondo);--tinta:var(--c-chispa-tinta);--acento:var(--c-chispa-tinta);--sec:var(--c-chispa-tinta);--filete:var(--c-chispa-filete);--foco:var(--c-chispa-tinta);--sombra:var(--c-chispa-tinta);--btn-bg:var(--c-chispa-tinta);--btn-fg:var(--c-chispa-fondo);color:var(--tinta)}

/* Foto: duotono + grano. Aplica igual a marcadores y a fotos reales */
.foto{position:relative;display:block;aspect-ratio:var(--r,4/5);overflow:hidden;background:var(--foto-fondo,var(--sec-fill));isolation:isolate}
.foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.18);mix-blend-mode:screen;transition:transform var(--m-lento) var(--curva)}
.foto::before{content:"";position:absolute;inset:0;z-index:1;background:var(--papel);mix-blend-mode:multiply;pointer-events:none}
.foto::after{content:"";position:absolute;inset:0;z-index:2;background:url(../assets/img/grano.png);opacity:.6;pointer-events:none}
.foto--estrella{-webkit-mask:var(--m-estrella) center/contain no-repeat;mask:var(--m-estrella) center/contain no-repeat}

/* Botones */
.btn{--bg:var(--btn-bg);--fg:var(--btn-fg);display:inline-flex;align-items:center;justify-content:center;gap:.6em;min-height:48px;padding:.6rem 1.25rem;background:var(--bg);color:var(--fg);border:2px solid var(--bg);font-weight:600;font-size:var(--t-s);line-height:1.2;text-decoration:none;transition:transform var(--m-rapido) var(--curva),box-shadow var(--m-rapido) var(--curva),background-color var(--m-rapido)}
.btn:hover,.btn.is-hover{box-shadow:5px 5px 0 var(--sombra);transform:translate(-2px,-2px)}
.btn:active,.btn.is-active{box-shadow:none;transform:translate(1px,1px)}
.btn--sec{--bg:transparent;--fg:var(--tinta);border-color:currentColor}
.btn--texto{background:none;border-color:transparent;color:var(--tinta);padding-inline:0;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.3em}
.btn--texto:hover,.btn--texto.is-hover{box-shadow:none;transform:none;text-decoration-color:var(--acento);text-decoration-thickness:4px}
.btn--texto:active,.btn--texto.is-active{transform:none;opacity:.7}
.btn:disabled,.btn[aria-disabled=true]{--bg:transparent;--fg:var(--apagado);border:2px dashed var(--apagado);box-shadow:none;transform:none;cursor:not-allowed;text-decoration:none}
.btn.is-loading,.btn[aria-busy=true]{cursor:progress;box-shadow:none;transform:none}
.btn .giro{display:none;width:1.1em;height:1.1em;fill:currentColor}
.btn.is-loading .giro,.btn[aria-busy=true] .giro{display:block;animation:girar 1.4s linear infinite}
.btn.is-empty{--bg:transparent;--fg:var(--apagado);border:2px dotted var(--apagado)}
@keyframes girar{to{transform:rotate(360deg)}}

/* Etiqueta de sección */
.etiqueta{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;font-size:var(--t-xs);font-weight:600;line-height:1.2;position:relative;z-index:3}
.etiqueta b{display:inline-block;background:var(--sec-fill);color:var(--papel);padding:.25rem .5rem;font-weight:600;font-stretch:88%}
.campo-azul .etiqueta b{background:var(--papel);color:var(--azul)}
.etiqueta span{color:var(--tinta)}
a.etiqueta b:hover,.etiqueta b.is-hover{background:var(--tinta);color:var(--fondo)}

/* Cabecera */
.cab{position:fixed;inset:0 0 auto;z-index:50;color:var(--tinta);background:var(--fondo);border-bottom:1px solid var(--filete);transition:background-color var(--m-medio),color var(--m-medio),border-color var(--m-medio)}
.cab__fila{display:flex;align-items:center;justify-content:space-between;gap:var(--e-3);height:var(--cab-alto);padding-inline:var(--margen);transition:height var(--m-medio) var(--curva)}
.cab__logo{display:flex;align-items:center;min-height:44px;color:inherit}
.cab__logo svg{height:34px;width:auto;fill:currentColor;transition:height var(--m-medio) var(--curva)}
.cab.is-compacta{--cab-alto:56px}
.cab.is-compacta .cab__logo svg{height:25px}
.cab--portada:not(.is-compacta){background:transparent;border-color:transparent;color:var(--papel);--foco:var(--papel)}
.cab__nav{display:none}
.cab__nav ul{display:flex;gap:clamp(.25rem,.9vw,1.15rem)}
.cab__nav a{display:flex;align-items:center;min-height:44px;padding-inline:.3rem;text-decoration:none;font-size:var(--t-s);font-weight:500;font-stretch:92%;white-space:nowrap;background:linear-gradient(currentColor,currentColor) 0 calc(100% - 8px)/0 2px no-repeat;transition:background-size var(--m-rapido) var(--curva)}
.cab__nav a:hover,.cab__nav a[aria-current]{background-size:100% 2px}
.cab__util{display:flex;align-items:center;gap:.125rem}
.ico{display:grid;place-items:center;width:44px;height:44px;color:inherit;transition:transform var(--m-rapido) var(--curva)}
.ico svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8}
.ico:hover{transform:rotate(-8deg) scale(1.1)}
.ico:active{transform:scale(.92)}
.tema-sol{display:none}
[data-theme=dark] .tema-sol{display:block}
[data-theme=dark] .tema-luna{display:none}
.cab__boletin{display:none;margin-left:.5rem;min-height:40px;padding:.4rem .85rem;--bg:currentColor}
.cab .cab__boletin{background:transparent;color:inherit;border-color:currentColor}
.cab .cab__boletin:hover{background:var(--noche);color:var(--papel);border-color:var(--papel);box-shadow:none;transform:none}
@media(min-width:1024px){.cab__nav{display:block}.cab__menu{display:none}}
@media(min-width:1320px){.cab__boletin{display:inline-flex}}

/* Menú móvil y buscador: <dialog> nativo da foco atrapado y Esc */
.menu{position:fixed;inset:0;width:100%;height:100%;background:var(--azul);color:var(--papel);--foco:var(--papel);--filete:var(--filete-claro);overflow-y:auto}
.menu::backdrop,.busca::backdrop,.caja::backdrop{background:var(--noche)}
.menu__fila{display:flex;justify-content:space-between;align-items:center;height:72px;padding-inline:var(--margen)}
.menu__fila svg.marca{height:34px;width:auto;fill:currentColor}
.menu ul{padding:var(--e-2) var(--margen) var(--e-5)}
.menu li{border-top:1px solid var(--filete)}
.menu li a{display:block;padding:.35rem 0;font-family:var(--f-titular);font-weight:800;font-size:clamp(2.1rem,10vw,3.5rem);line-height:1.15;text-decoration:none}
.menu li a:hover{color:var(--azul-claro)}
.menu[open] li{animation:subir var(--m-medio) var(--curva) backwards;animation-delay:calc(var(--i)*35ms)}
.menu__pie{padding:0 var(--margen) var(--e-6);display:flex;flex-wrap:wrap;gap:var(--e-3);align-items:center}
.busca{position:fixed;inset:0;width:100%;height:100%;background:var(--fondo);color:var(--tinta);overflow-y:auto}
.busca__caja{max-width:60rem;margin-inline:auto;padding:var(--e-3) var(--margen) var(--e-7)}
.busca__cerrar{display:flex;justify-content:flex-end}
.busca input{width:100%;background:none;border:0;border-bottom:3px solid var(--tinta);border-radius:0;padding:.5rem 0;font-family:var(--f-titular);font-weight:700;font-size:var(--t-xl);line-height:1.15}
.busca input::placeholder{color:var(--apagado);opacity:1}
.busca input:focus{outline:none;border-bottom-color:var(--acento)}
.busca__estado{margin-block:var(--e-3);font-size:var(--t-s)}
.busca__res li{border-top:1px solid var(--filete)}
.busca__res a{display:block;padding:var(--e-3) 0;text-decoration:none;font-family:var(--f-titular);font-weight:700;font-size:var(--t-l);line-height:1.15}
.busca__res a small{display:block;font:500 var(--t-xs)/1.4 var(--f-texto);margin-bottom:.35rem}
.busca__res a:hover{color:var(--acento)}

/* Portada */
.portada{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;gap:var(--e-5);padding:calc(72px + var(--e-3)) var(--margen) var(--e-5);overflow:hidden;--foto-fondo:var(--noche)}
.portada__lema{position:relative;z-index:3;font-family:var(--f-titular);font-style:italic;font-weight:500;font-size:var(--t-m);line-height:1.2;max-width:10.5em;margin-bottom:auto}
.portada__estrella{position:absolute;z-index:1;top:50%;left:50%;width:min(132vw,92svh);aspect-ratio:1000/1055;translate:-46% -66%;transform:scale(calc(1 + var(--p,0)*1.5)) rotate(calc(var(--p,0)*22deg));will-change:transform}
.portada__estrella .foto{height:100%;aspect-ratio:auto}
.portada__texto{position:relative;z-index:3;display:grid;gap:var(--e-2);max-width:60rem}
.portada__t{font-size:var(--t-2xl);text-wrap:balance}
.portada__t a{text-decoration:none;background:linear-gradient(currentColor,currentColor) 0 100%/0 .08em no-repeat;transition:background-size var(--m-medio) var(--curva)}
.portada__t a:hover{background-size:100% .08em}
.portada__baj{max-width:36em;font-size:var(--t-m);line-height:1.35}
.meta{font-size:var(--t-xs);line-height:1.4;font-weight:500}
html.js .portada__estrella{animation:brota 1.1s var(--curva) both}
html.js .portada__texto>*,html.js .portada__lema{animation:subir var(--m-lento) var(--curva) .35s backwards}
html.js .portada__texto>:nth-child(2){animation-delay:.45s}
html.js .portada__texto>:nth-child(3){animation-delay:.55s}
html.js .portada__texto>:nth-child(4){animation-delay:.65s}
@keyframes brota{from{scale:.55;rotate:-38deg;opacity:0}to{scale:1;rotate:0deg;opacity:1}}
@keyframes subir{from{opacity:0;transform:translateY(18px)}}
@media(min-width:768px){.portada__lema{max-width:15em}.portada__estrella{width:min(88vw,98svh);translate:-30% -56%}}
@media(min-width:1024px){.portada__estrella{width:min(66vw,118svh);translate:-22% -52%}.portada__texto{max-width:56vw}.portada__t{font-size:clamp(3.5rem,6.4vw,7.25rem)}}

/* Piezas (tarjetas) */
.pieza{position:relative;display:flex;flex-direction:column;gap:var(--e-2)}
.pieza__t{font-family:var(--f-titular);font-weight:750;line-height:1.08;letter-spacing:-.01em;text-wrap:balance}
.pieza__t a{text-decoration:none;text-decoration-thickness:3px;text-decoration-color:var(--sombra-sec,var(--sec));text-underline-offset:.14em}
.pieza__t a::after{content:"";position:absolute;inset:0;z-index:4}
.pieza:hover .pieza__t a,.pieza.is-hover .pieza__t a{text-decoration-line:underline}
.pieza:has(a:focus-visible),.pieza.is-focus{outline:3px solid var(--foco);outline-offset:6px}
.pieza a:focus-visible{outline:none}
.pieza:hover .foto img,.pieza.is-hover .foto img{transform:scale(1.04)}
.pieza:active .foto,.pieza.is-active .foto{opacity:.82}
.pieza__baj{font-size:var(--t-s);line-height:1.45;max-width:38em}
.pieza .foto{transition:box-shadow var(--m-rapido) var(--curva),translate var(--m-rapido) var(--curva)}
.pieza--grande .pieza__t{font-size:var(--t-xl)}
.pieza--media .pieza__t{font-size:var(--t-l)}
.pieza--compacta{display:grid;grid-template-columns:5.5rem 1fr;gap:var(--e-1) var(--e-3);align-items:start;padding-block:var(--e-3);border-top:1px solid var(--filete)}
.pieza--compacta .foto{grid-row:1/4}
.pieza--compacta .pieza__t{font-size:var(--t-m);line-height:1.15}
.pieza--media:hover .foto,.pieza--media.is-hover .foto{box-shadow:7px 7px 0 var(--sombra-sec,var(--sec-fill));translate:-3px -3px}
.campo-azul .pieza,.campo-noche .pieza{--sombra-sec:var(--azul-claro)}
.pieza__foto{position:relative;display:block}
.vista{display:none}
@media(hover:hover) and (min-width:768px){
 .vista{display:block;position:absolute;inset:auto 0 0;z-index:3;background:var(--noche);color:var(--papel);padding:var(--e-2) var(--e-3);font-size:var(--t-xs);line-height:1.4;transform:translateY(101%);transition:transform var(--m-medio) var(--curva)}
 .pieza__foto{overflow:hidden}
 .pieza:hover .vista,.pieza.is-hover .vista,.pieza:has(a:focus-visible) .vista{transform:none}
}
.pieza.is-disabled{opacity:.5;pointer-events:none;filter:grayscale(1)}
.pieza.is-loading .foto,.pieza.is-loading .pieza__t,.pieza.is-loading .meta,.pieza.is-loading .etiqueta{color:transparent;background:var(--esqueleto);animation:latir 1.4s ease-in-out infinite}
.pieza.is-loading .foto *,.pieza.is-loading .foto::before,.pieza.is-loading .foto::after,.pieza.is-loading .etiqueta *{visibility:hidden}
.pieza.is-loading .pieza__t a{color:transparent}
@keyframes latir{50%{opacity:.45}}
.pieza.is-empty{border:2px dashed var(--apagado);padding:var(--e-3);min-height:14rem;justify-content:center;gap:var(--e-1)}
.pieza.is-empty.pieza--compacta{min-height:0;display:flex}

/* Lo último */
.ultimo{padding-block:var(--e-7) var(--e-6)}
.titulo-sec{font-size:var(--t-xl);margin-bottom:var(--e-4);padding-inline:var(--margen)}
.banda{display:flex;gap:var(--e-3);overflow-x:auto;scroll-snap-type:x mandatory;padding-inline:var(--margen);scroll-padding-inline:var(--margen);padding-bottom:var(--e-2);scrollbar-width:thin}
.banda>*{flex:0 0 min(76vw,19rem);scroll-snap-align:start}
@media(min-width:768px){.banda>*{flex-basis:40vw}}
@media(min-width:1024px){
 .titulo-sec{max-width:var(--max);margin-inline:auto}
 .banda{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--e-4) var(--e-3);overflow:visible;max-width:var(--max);margin-inline:auto;align-items:start}
 .banda>:nth-child(1){grid-column:1/5;grid-row:1/3}
 .banda>:nth-child(2){grid-column:5/8;margin-top:var(--e-6)}
 .banda>:nth-child(3){grid-column:8/13}
 .banda>:nth-child(4){grid-column:5/8}
 .banda>:nth-child(5){grid-column:8/13;margin-top:var(--e-3)}
}

/* Música: cartel */
.s-musica{padding-block:var(--e-5) var(--e-7);overflow:hidden}
.cartel{font-size:var(--t-cartel);line-height:.82;font-weight:900;letter-spacing:-.035em;margin:0 0 var(--e-4) calc(var(--margen) - .05em);white-space:nowrap}
.lema-sec{font-family:var(--f-titular);font-style:italic;font-size:var(--t-m);line-height:1.25;max-width:24em}
.s-musica__grid{display:grid;gap:var(--e-5) var(--e-3)}
.s-musica__lado{display:grid;gap:var(--e-4);align-content:start}
.s-musica .foto{--foto-fondo:var(--azul)}
@media(min-width:768px){.s-musica__grid{grid-template-columns:repeat(12,1fr)}.s-musica__grid>.pieza{grid-column:1/8}.s-musica__lado{grid-column:8/13}}
@media(min-width:1024px){.s-musica__grid>.pieza{grid-column:1/8}.s-musica__lado{grid-column:9/13}}

/* Cine: sala oscura */
.s-cine{padding-block:var(--e-6) var(--e-7)}
.s-cine__cab{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:var(--e-2);margin-bottom:var(--e-4)}
.s-cine__cab h2{font-size:var(--t-2xl);font-style:italic;font-weight:600}
.pantalla{position:relative;--sombra-sec:var(--azul-claro)}
.pantalla .foto{--r:16/9}
.pantalla__t{padding:var(--e-3) var(--margen) 0;display:grid;gap:var(--e-2);max-width:var(--max);margin-inline:auto;position:relative}
.pantalla .pieza__t{font-size:var(--t-xl);max-width:20em}
.pantalla:hover .foto img{transform:scale(1.02)}
.s-cine__fila{display:grid;gap:var(--e-5) var(--e-3);margin-top:var(--e-6)}
@media(min-width:768px){.pantalla .foto{--r:2.39/1}.s-cine__fila{grid-template-columns:repeat(3,1fr)}}

/* Arte: muro de galería */
.s-arte{padding-block:var(--e-7) calc(var(--e-7)*1.3)}
.s-arte__grid{display:grid;gap:var(--e-6) var(--e-3)}
.cartela{border-left:3px solid var(--sec);padding-left:var(--e-2);max-width:20rem;font-size:var(--t-s);line-height:1.4}
.cartela h2{font-size:var(--t-l);font-weight:700;margin-bottom:.25rem}
.cartela em{display:block;font-family:var(--f-titular)}
.pieza--obra .foto{--foto-fondo:var(--noche)}
@media(min-width:768px){
 .s-arte__grid{grid-template-columns:repeat(12,1fr);align-items:start}
 .cartela{grid-column:1/5;position:sticky;top:6rem}
 .pieza--obra-a{grid-column:5/13;grid-row:1/3}
 .pieza--obra-b{grid-column:2/6;margin-top:var(--e-6)}
 .pieza--obra-c{grid-column:8/12;margin-top:var(--e-7)}
}

/* Video y audio */
.s-medios{padding-block:var(--e-6) var(--e-7)}
.s-medios__grid{display:grid;gap:var(--e-5) var(--e-4)}
.s-medios h2{font-size:var(--t-xl);margin-bottom:var(--e-4)}
.video{position:relative;display:block;width:100%;--foto-fondo:var(--noche)}
.video .foto{--r:16/9}
.video__play{position:absolute;inset:0;z-index:3;display:grid;place-items:center;color:var(--azul-claro)}
.video__play svg{width:clamp(5rem,15vw,10rem);height:auto;fill:currentColor;transition:transform var(--m-medio) var(--curva)}
.video:hover .video__play svg{transform:rotate(30deg) scale(1.08)}
.video__play i{position:absolute;width:0;height:0;border-style:solid;border-width:.65rem 0 .65rem 1.05rem;border-color:transparent transparent transparent var(--noche);margin-left:.1rem;margin-top:.15rem}
.video iframe{display:block;width:100%;aspect-ratio:16/9;border:0}
.video__aviso{padding:var(--e-2) 0 0;font-size:var(--t-s);font-weight:500}
.video__t{font-family:var(--f-titular);font-weight:750;font-size:var(--t-l);line-height:1.1;margin-top:var(--e-3)}
.resumen{margin-top:var(--e-2);max-width:42em;font-size:var(--t-s)}
.resumen summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:600;text-decoration:underline;text-underline-offset:.25em}
.audios{display:grid;gap:0}
.audio{display:grid;grid-template-columns:48px 1fr;gap:.25rem var(--e-2);align-items:center;padding-block:var(--e-3);border-top:1.5px solid var(--filete)}
.audio__play{grid-row:1/3;width:48px;height:48px;display:grid;place-items:center;background:var(--tinta);color:var(--fondo-audio,var(--c-chispa-fondo));transition:transform var(--m-rapido) var(--curva)}
.audio__play:hover,.audio.is-hover .audio__play{transform:rotate(-6deg) scale(1.08)}
.audio__play:active,.audio.is-active .audio__play{transform:scale(.92)}
.audio__play svg{width:20px;height:20px;fill:currentColor}
.audio__play .i-pausa{display:none}
.audio.is-playing .i-pausa{display:block}
.audio.is-playing .i-play{display:none}
.audio__t{font-weight:600;font-size:var(--t-s);line-height:1.25}
.audio__t small{display:block;font-weight:400;font-size:var(--t-xs)}
.audio__linea{display:flex;align-items:center;gap:.6rem;font-size:var(--t-xs);font-variant-numeric:tabular-nums}
.audio__barra{flex:1;appearance:none;-webkit-appearance:none;background:none;height:44px;margin:0;min-width:0}
.audio__barra::-webkit-slider-runnable-track{height:3px;background:linear-gradient(currentColor,currentColor) 0/var(--v,0%) 100% no-repeat,var(--filete)}
.audio__barra::-moz-range-track{height:3px;background:var(--filete)}
.audio__barra::-moz-range-progress{height:3px;background:currentColor}
.audio__barra::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;background:currentColor;margin-top:-5.5px;border-radius:50%}
.audio__barra::-moz-range-thumb{width:14px;height:14px;background:currentColor;border:0;border-radius:50%}
.audio.is-disabled{opacity:.5}.audio.is-disabled .audio__play{cursor:not-allowed;background:var(--apagado)}
.audio.is-loading .audio__play svg{animation:latir 1s infinite}
.audio.is-empty .audio__play{background:none;border:2px dashed var(--apagado);color:var(--apagado)}
@media(min-width:1024px){.s-medios__grid{grid-template-columns:repeat(12,1fr)}.s-medios__video{grid-column:1/9}.s-medios__audios{grid-column:9/13}}

/* Agenda */
.s-agenda{padding-block:var(--e-7)}
.s-agenda h2{font-size:var(--t-2xl);margin-bottom:var(--e-4)}
.evento{position:relative;display:grid;grid-template-columns:4.75rem 1fr;gap:var(--e-1) var(--e-3);padding-block:var(--e-3);padding-inline:.5rem;margin-inline:-.5rem;border-top:1.5px solid var(--tinta);transition:background-color var(--m-rapido),color var(--m-rapido)}
.evento:last-child{border-bottom:1.5px solid var(--tinta)}
.evento__dia{grid-row:1/4;font-family:var(--f-titular);font-weight:800;font-size:clamp(3rem,10vw,5.5rem);line-height:.9;font-variant-numeric:lining-nums;color:var(--sec)}
.evento__dia small{display:block;font:600 var(--t-xs)/1.3 var(--f-texto);margin-top:.35rem}
.evento__t{font-family:var(--f-titular);font-weight:750;font-size:var(--t-l);line-height:1.1}
.evento__lugar{font-size:var(--t-s);line-height:1.35}
.evento:hover,.evento.is-hover{background:var(--sec-fill);color:var(--papel);--tinta:var(--papel);--sec:var(--papel)}
.evento:hover .etiqueta b,.evento.is-hover .etiqueta b{background:var(--papel);color:var(--sec-fill)}
.evento.is-active{opacity:.85}
.evento.is-disabled{opacity:.55;text-decoration:line-through}
.evento.is-loading>*{color:transparent;background:var(--esqueleto);animation:latir 1.4s infinite}
.evento.is-loading *{color:transparent}
.evento.is-loading .etiqueta b{background:none}
.evento.is-empty{display:block;border:2px dashed var(--apagado);margin-inline:0;padding:var(--e-3)}
@media(min-width:768px){.evento{grid-template-columns:7rem 1fr 13rem;align-items:center}.evento__dia{grid-row:1/3}.evento .etiqueta{flex-wrap:nowrap}}
@media(min-width:1024px){.evento{grid-template-columns:9rem 1fr 15rem 11rem}.evento__dia{grid-row:auto}}

/* Boletín */
.boletin{position:relative;overflow:hidden;padding:var(--e-7) var(--margen)}
.boletin__marca{position:absolute;right:-22%;top:50%;width:min(95vw,44rem);translate:0 -50%;fill:var(--azul-luz);pointer-events:none}
.boletin__in{position:relative;max-width:var(--max);margin-inline:auto}
.boletin h2{font-size:var(--t-2xl);max-width:12em;margin-bottom:var(--e-3)}
.boletin p.lead{font-size:var(--t-m);line-height:1.35;max-width:28em;margin-bottom:var(--e-4)}
.form-b{display:grid;gap:var(--e-2);max-width:34rem}
@media(min-width:768px){.form-b{grid-template-columns:1fr auto;align-items:start}.form-b .btn{margin-top:1.75rem}}
.boletin .nota{margin-top:var(--e-3);font-size:var(--t-xs);max-width:40em}

/* Campo de formulario */
.campo{display:grid;gap:.35rem}
.campo label{font-size:var(--t-s);font-weight:600}
.campo input,.campo textarea,.campo select{width:100%;min-height:48px;padding:.6rem .85rem;background:transparent;border:2px solid var(--tinta);border-radius:0;transition:box-shadow var(--m-rapido)}
.campo input::placeholder{color:inherit;opacity:.72}
.campo input:hover,.campo input.is-hover{box-shadow:4px 4px 0 var(--sombra)}
.campo input:focus-visible,.campo input.is-focus{outline:3px solid var(--foco);outline-offset:1px}
.campo input.is-active{background:color-mix(in srgb,var(--tinta) 8%,transparent)}
.campo input:disabled{border-style:dashed;border-color:var(--apagado);color:var(--apagado);cursor:not-allowed}
.campo input.is-loading{background:linear-gradient(90deg,transparent,var(--esqueleto),transparent) 0/200% 100%;animation:barrer 1.3s linear infinite}
@keyframes barrer{to{background-position:-200% 0}}
.campo input[aria-invalid=true]{border-color:var(--err);border-width:3px}
.campo__msg{font-size:var(--t-xs);font-weight:600;min-height:1.3em;color:var(--err)}
.campo__msg.is-ok{color:inherit}

/* Nosotros y Colabora */
.s-nos{display:grid}
.s-nos>div{padding:var(--e-7) var(--margen)}
.s-nos h2{font-size:var(--t-xl);margin-bottom:var(--e-4)}
.manifiesto{font-family:var(--f-titular);font-weight:500;font-size:var(--t-l);line-height:1.22;max-width:27em;display:grid;gap:var(--e-3)}
.colabora{border-top:1.5px solid var(--filete)}
.colabora li{padding-block:var(--e-3);border-top:1px solid var(--filete);max-width:34em}
.colabora li strong{display:block;font-family:var(--f-titular);font-weight:750;font-size:var(--t-m);line-height:1.2;margin-bottom:.2rem}
.colabora .btn{margin-top:var(--e-4)}
@media(min-width:1024px){.s-nos{grid-template-columns:7fr 5fr}.colabora{border-top:0;border-left:1.5px solid var(--filete)}}

/* Pie */
.pie{padding:var(--e-6) var(--margen) var(--e-4)}
.pie__marca{width:100%;height:auto;fill:currentColor;max-width:var(--max);margin:var(--e-6) auto var(--e-4)}
.pie__col{display:grid;gap:var(--e-4);max-width:var(--max);margin-inline:auto}
.pie h2{font-size:var(--t-s);font-weight:600;margin-bottom:.4rem;font-family:var(--f-texto)}
.pie a{display:inline-flex;align-items:center;min-height:44px}
.pie a:hover{color:var(--azul-claro)}
.pie__lema{font-family:var(--f-titular);font-style:italic;font-size:var(--t-l);line-height:1.2;max-width:15em}
.pie__cred{font-size:var(--t-xs);max-width:var(--max);margin:var(--e-4) auto 0;padding-top:var(--e-3);border-top:1px solid var(--filete);opacity:.9}
.pie ul{columns:2;column-gap:var(--e-3)}
@media(min-width:768px){.pie__col{grid-template-columns:2fr 1.4fr 1fr}.pie ul{columns:1}.pie ul.nav-pie{columns:2}}

/* Artículo */
.progreso{position:fixed;inset:0 0 auto;height:4px;z-index:60;background:var(--acento);transform-origin:0 50%;transform:scaleX(var(--leido,0))}
.apertura{padding-top:var(--cab-alto)}
.apertura .foto{--r:16/9}
.apertura__t{padding:var(--e-4) var(--margen) var(--e-5);max-width:var(--max);margin-inline:auto;display:grid;gap:var(--e-3)}
.apertura h1{font-size:var(--t-2xl);max-width:13em;width:fit-content;margin-top:calc(var(--e-5)*-1.6);margin-left:calc(var(--margen)*-1);padding:.2em var(--margen) .05em;background:var(--fondo);position:relative;z-index:3;color:var(--tinta)}
.apertura__baj{font-family:var(--f-titular);font-style:italic;font-weight:400;font-size:var(--t-l);line-height:1.22;max-width:30em}
.firma{display:flex;flex-wrap:wrap;gap:.25rem var(--e-4);font-size:var(--t-s);border-top:1.5px solid var(--tinta);padding-top:var(--e-2);line-height:1.4}
.firma strong{font-weight:600}
.cuerpo{display:grid;grid-template-columns:[full-start] minmax(var(--margen),1fr) [texto-start] minmax(0,29em) [texto-end] minmax(var(--margen),1fr) [full-end];row-gap:1.4em;padding-bottom:var(--e-6)}
.cuerpo>*{grid-column:texto}
.cuerpo a{color:var(--acento);text-underline-offset:.2em}
.cuerpo>p:first-of-type::first-letter{font-family:var(--f-titular);font-weight:800;float:left;font-size:5.05em;line-height:.78;padding:.08em .08em 0 0;color:var(--sec)}
.cuerpo h2{font-family:var(--f-titular);font-weight:750;font-size:var(--t-l);line-height:1.12;margin-top:.8em}
.sangre{grid-column:full;margin-block:1em}
.sangre figcaption,.galeria figcaption,.leyenda{font-size:var(--t-xs);line-height:1.4;padding:.6rem var(--margen) 0;max-width:40em}
.cita{grid-column:full;padding:var(--e-5) var(--margen);margin-block:1em;background:var(--sec-fill);color:var(--papel);position:relative;overflow:hidden}
.cita blockquote{font-family:var(--f-titular);font-weight:750;font-size:var(--t-xl);line-height:1.08;max-width:18em;margin-inline:auto;position:relative;text-wrap:balance}
.cita footer{font-size:var(--t-s);max-width:calc(var(--t-xl)*18);margin:var(--e-3) auto 0;position:relative}
.cita svg{position:absolute;right:-8%;top:-30%;width:min(70vw,30rem);fill:var(--papel);opacity:.13}
.cita.is-empty{background:none;border:2px dashed var(--apagado);color:var(--apagado)}
.cita.is-loading blockquote{color:transparent;background:var(--esqueleto);animation:latir 1.4s infinite}
.cita.is-disabled{opacity:.5}
.cita.is-hover svg{opacity:.3}.cita.is-active{opacity:.85}
.compartir{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;border-block:1.5px solid var(--tinta);padding-block:var(--e-2);margin-top:1em}
.compartir strong{margin-right:auto;font-size:var(--t-s)}
.compartir .btn{min-height:44px;padding-inline:.85rem}
.galeria{grid-column:full;display:grid;grid-template-columns:repeat(6,1fr);gap:.5rem;padding-inline:var(--margen);margin-block:1em}
.galeria button{position:relative;display:block;width:100%}
.galeria li:nth-child(1){grid-column:span 4}
.galeria li:nth-child(2){grid-column:span 2;align-self:end}
.galeria li:nth-child(3){grid-column:span 2}
.galeria li:nth-child(4){grid-column:span 4;margin-top:var(--e-4)}
.galeria button:hover img{transform:scale(1.04)}
.galeria.is-empty{display:block;border:2px dashed var(--apagado);padding:var(--e-4);margin-inline:var(--margen)}
.caja{position:fixed;inset:0;width:100%;height:100%;background:var(--noche);color:var(--papel);--foco:var(--papel);--foto-fondo:var(--noche)}
.caja__in{display:grid;grid-template-rows:auto 1fr auto;height:100%;padding:var(--e-2) var(--margen)}
.caja__sup{display:flex;justify-content:space-between;align-items:center;font-size:var(--t-s)}
.caja__foto{display:grid;place-items:center;min-height:0;padding-block:var(--e-2)}
.caja__foto .foto{height:100%;max-height:100%;max-width:100%}
.caja__inf{display:flex;justify-content:space-between;align-items:center;gap:var(--e-3)}
.caja__inf p{font-size:var(--t-s);flex:1;text-align:center;line-height:1.35}
.relacionadas{padding-block:var(--e-6) var(--e-7);border-top:1.5px solid var(--filete)}
.relacionadas h2{font-size:var(--t-xl);margin-bottom:var(--e-4)}
.relacionadas__g{display:grid;gap:var(--e-5) var(--e-3)}
@media(min-width:768px){.relacionadas__g{grid-template-columns:repeat(3,1fr)}.relacionadas__g>:nth-child(2){margin-top:var(--e-5)}.galeria{padding-inline:max(var(--margen),calc(50% - 40rem))}}
@media(min-width:1024px){.apertura .foto{--r:21/9}}

/* Entradas al hacer scroll */
html.js .aparece{opacity:0;transform:translateY(22px);transition:opacity var(--m-lento) var(--curva),transform var(--m-lento) var(--curva);transition-delay:calc(var(--i,0)*70ms)}
html.js .aparece.is-visible{opacity:1;transform:none}

/* Transición entre páginas (navegadores compatibles) */
@view-transition{navigation:auto}
::view-transition-old(root){animation:salir .22s var(--curva) both}
::view-transition-new(root){animation:entrar .32s var(--curva) both}
@keyframes salir{to{opacity:0}}
@keyframes entrar{from{opacity:0;transform:translateY(10px)}}

@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 *,*::before,*::after,::view-transition-old(root),::view-transition-new(root){animation:none!important;transition:none!important}
 html.js .aparece{opacity:1;transform:none}
 .portada__estrella{transform:none}
}

/* Página de sistema */
.sis{padding-top:calc(var(--cab-alto) + var(--e-5));padding-bottom:var(--e-7)}
.sis section{padding-block:var(--e-6);border-top:1.5px solid var(--tinta)}
.sis h1{font-size:var(--t-2xl);margin-bottom:var(--e-3)}
.sis h2{font-size:var(--t-xl);margin-bottom:var(--e-4)}
.sis section>h3{font-family:var(--f-titular);font-weight:750;font-size:var(--t-m);line-height:1.2;margin:var(--e-5) 0 var(--e-3)}
.sis section>p,.sis__prosa p{max-width:29em}
.sis__prosa{display:grid;gap:var(--e-2)}
.muestras{display:grid;grid-template-columns:repeat(auto-fill,minmax(10.5rem,1fr));gap:var(--e-2)}
.muestra{padding:var(--e-3) var(--e-2);min-height:8.5rem;font-size:var(--t-xs);line-height:1.35;display:flex;flex-direction:column;justify-content:flex-end;border:1px solid var(--filete)}
.muestra b{font-size:var(--t-s)}
.tabla{width:100%;border-collapse:collapse;font-size:var(--t-s);line-height:1.35}
.tabla-c{overflow-x:auto}
.tabla th,.tabla td{text-align:left;padding:.6rem .75rem .6rem 0;border-top:1px solid var(--filete);vertical-align:baseline}
.tabla code,.sis code{font-size:.9em}
.espec{white-space:nowrap}
pre.wf{font:500 clamp(.6rem,1.7vw,.875rem)/1.35 ui-monospace,Menlo,monospace;padding:var(--e-3);border:1.5px solid var(--tinta);overflow-x:auto;max-width:48rem}
.estados{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,14.5rem),1fr));gap:var(--e-4) var(--e-3);align-items:start}
.estado>small{display:block;font-size:var(--t-xs);font-weight:600;margin-bottom:.6rem}
.demo-cab{border:1.5px solid var(--tinta);margin-bottom:var(--e-2);position:relative}
.demo-cab .cab{position:relative;z-index:1}
.lista-d{display:grid;gap:var(--e-2);max-width:29em}
.lista-d li{padding-top:var(--e-2);border-top:1px solid var(--filete)}

.etiqueta b.is-focus{outline:3px solid var(--foco);outline-offset:2px}
.etiqueta b.is-active{opacity:.72}
.etiqueta b.is-disabled{background:none;color:var(--apagado);box-shadow:inset 0 0 0 1px var(--apagado)}
.etiqueta b.is-loading{color:transparent;background:var(--esqueleto);animation:latir 1.4s infinite}
.etiqueta b.is-empty{background:none;color:var(--apagado);outline:1px dashed var(--apagado);outline-offset:-1px}
.ico.is-hover{transform:rotate(-8deg) scale(1.1)}.ico.is-active{transform:scale(.92)}
.ico:disabled{color:var(--apagado);cursor:not-allowed;transform:none}
.ico.is-loading svg{animation:latir 1s infinite}.ico.is-empty{color:var(--apagado);outline:1px dashed var(--apagado);outline-offset:-4px}
.mini{position:relative;display:block;width:100%}
.mini.is-hover img{transform:scale(1.04)}.mini.is-active{opacity:.8}.mini:disabled{opacity:.45;cursor:not-allowed}
.mini.is-loading .foto{background:var(--esqueleto);animation:latir 1.4s infinite}.mini.is-loading .foto *,.mini.is-loading .foto::before,.mini.is-loading .foto::after{visibility:hidden}
.mini.is-empty .foto{background:none;outline:2px dashed var(--apagado);outline-offset:-2px}.mini.is-empty .foto::before,.mini.is-empty .foto::after{display:none}
.estado .boletin{padding:var(--e-3)}.estado .boletin h2{font-size:var(--t-m);margin-bottom:var(--e-2)}.estado .form-b{grid-template-columns:1fr}.estado .form-b .btn{margin-top:0}
.estado .cita{padding:var(--e-3);margin:0}.estado .cita blockquote{font-size:var(--t-m)}.estado .cita footer{font-size:var(--t-xs)}
.estado .evento{grid-template-columns:3.5rem 1fr;margin:0}.estado .evento__dia{grid-row:1/4;font-size:2.75rem}.estado .evento__t{font-size:var(--t-m)}.estado .evento .etiqueta{justify-self:start}

/* ---------- Páginas internas ---------- */
.ver-todo{margin-top:var(--e-4)}
.filtros{display:flex;flex-wrap:wrap;gap:.5rem}
.filtro{display:inline-flex;align-items:center;min-height:44px;padding:.4rem .9rem;border:2px solid var(--tinta);color:var(--tinta);font-size:var(--t-s);font-weight:600;line-height:1.1;transition:box-shadow var(--m-rapido) var(--curva),transform var(--m-rapido) var(--curva)}
.filtro:hover,.filtro.is-hover{box-shadow:4px 4px 0 var(--sombra);transform:translate(-1px,-1px)}
.filtro:active,.filtro.is-active{box-shadow:none;transform:translate(1px,1px)}
.filtro[aria-pressed=true]{background:var(--btn-bg);border-color:var(--btn-bg);color:var(--btn-fg)}
.filtro:disabled{border-style:dashed;border-color:var(--apagado);color:var(--apagado);box-shadow:none;transform:none;cursor:not-allowed}
.filtro.is-loading{color:transparent;background:var(--esqueleto);border-color:transparent;animation:latir 1.4s infinite}
.filtro.is-empty{border-style:dotted;border-color:var(--apagado);color:var(--apagado)}
.barra{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--e-2) var(--e-4);padding-block:var(--e-3);margin-bottom:var(--e-4);border-block:1.5px solid var(--tinta)}
.estado-lista{font-size:var(--t-s);font-weight:500}
.mas{display:flex;justify-content:center;margin-top:var(--e-6)}
.vacio{border:2px dashed var(--apagado);padding:var(--e-5) var(--e-3);text-align:center;display:grid;gap:var(--e-2);justify-items:center}
.vacio strong{font-family:var(--f-titular);font-weight:750;font-size:var(--t-l);line-height:1.15}

.sec-hero{padding:calc(var(--cab-alto) + var(--e-5)) 0 var(--e-5)}
.sec-hero .lema-sec{padding-inline:var(--margen)}
.sec-cuerpo{padding-block:var(--e-5) var(--e-7)}
.m-noche{background:var(--sala);--tinta:var(--papel);--acento:var(--azul-claro);--sec:var(--c-cine-claro);--sec-fill:var(--azul);--filete:var(--filete-claro);--foco:var(--papel);--sombra:var(--azul);--btn-bg:var(--papel);--btn-fg:var(--noche);--apagado:#A9ABC2;color:var(--tinta)}
.m-noche .pieza{--sombra-sec:var(--azul-claro)}
.sec-hero--cine .cartel{font-style:italic;font-weight:600}
.sec-hero--arte{padding:calc(var(--cab-alto) + var(--e-6)) 0 var(--e-5)}
.sec-hero--arte .cartela{max-width:22rem;margin-left:var(--margen)}

/* Grillas de sección. El !important vence el --r en línea de cada foto */
.grilla{display:grid;gap:var(--e-5) var(--e-3);align-items:start}
.grilla>[hidden]{display:none}
.grilla:not([data-ciclo="1"]) [data-pos="1"] .pieza__t{font-size:var(--t-xl)}
@media(min-width:768px){
 .grilla{grid-template-columns:repeat(12,1fr)}
 .g{grid-column:span 4}
 .grilla--musica [data-pos="1"]{grid-column:1/8}.grilla--musica [data-pos="1"] .foto{--r:1/1!important}
 .grilla--musica [data-pos="2"]{grid-column:9/13}.grilla--musica [data-pos="2"] .foto{--r:4/5!important}
 .grilla--musica [data-pos="3"]{grid-column:1/5}.grilla--musica [data-pos="4"]{grid-column:5/9;margin-top:var(--e-5)}.grilla--musica [data-pos="5"]{grid-column:9/13}
 .grilla--musica [data-pos="3"] .foto,.grilla--musica [data-pos="5"] .foto{--r:1/1!important}.grilla--musica [data-pos="4"] .foto{--r:4/5!important}
 .grilla--musica [data-pos="6"]{grid-column:3/11}.grilla--musica [data-pos="6"] .foto{--r:16/9!important}.grilla--musica [data-pos="6"] .pieza__t{font-size:var(--t-xl)}
 .grilla--cine [data-pos="1"]{grid-column:1/-1}.grilla--cine [data-pos="1"] .foto{--r:2.39/1!important}
 .grilla--cine .foto{--r:16/9!important}
 .grilla--arte{row-gap:var(--e-6)}
 .grilla--arte [data-pos="1"]{grid-column:5/13}.grilla--arte [data-pos="1"] .foto{--r:1/1!important}
 .grilla--arte [data-pos="2"]{grid-column:1/5}.grilla--arte [data-pos="3"]{grid-column:8/12;margin-top:var(--e-6)}
 .grilla--arte [data-pos="4"]{grid-column:2/7}.grilla--arte [data-pos="5"]{grid-column:9/13;margin-top:var(--e-5)}
 .grilla--arte [data-pos="2"] .foto,.grilla--arte [data-pos="3"] .foto,.grilla--arte [data-pos="5"] .foto{--r:4/5!important}.grilla--arte [data-pos="4"] .foto{--r:1/1!important}
}
.grilla--arte [data-primero] .foto{-webkit-mask:var(--m-estrella) center/contain no-repeat;mask:var(--m-estrella) center/contain no-repeat;--r:1000/1055!important}

/* Agenda */
.ag-cab{padding-top:calc(var(--cab-alto) + var(--e-5))}
.ag-cab h1{font-size:clamp(4.5rem,18vw,18rem);line-height:.86;font-weight:900;letter-spacing:-.03em;margin-bottom:var(--e-4)}
.controles{display:grid;gap:var(--e-3);padding-block:var(--e-3);border-block:1.5px solid var(--tinta);margin-bottom:var(--e-4)}
.control legend,.control__l{font-size:var(--t-xs);font-weight:600;padding:0;margin-bottom:.4rem;display:block}
.control{border:0;padding:0;margin:0;min-width:0}
.controles .campo{max-width:15rem}
@media(min-width:1024px){.controles{grid-template-columns:auto auto auto minmax(10rem,1fr) auto;align-items:end;gap:var(--e-4)}}
.ag-grid{display:grid;gap:var(--e-5);padding-bottom:var(--e-7)}
.ag-mes{font-family:var(--f-titular);font-weight:750;font-size:var(--t-l);line-height:1.1;margin:var(--e-4) 0 var(--e-2)}
.ag-mes:first-child{margin-top:0}
.grupo[hidden],.evento[hidden],.cal[hidden]{display:none}
.grupo .evento:last-child{border-bottom:1.5px solid var(--tinta)}
.cal__sup{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--e-2)}
.cal__t{font-family:var(--f-titular);font-weight:750;font-size:var(--t-l);line-height:1.1;text-transform:capitalize}
.cal__nav{display:flex;gap:.25rem}
.cal__nav svg{stroke-width:2.2}
.cal__sem,.cal__g{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}
.cal__sem{font-size:var(--t-xs);font-weight:600;text-align:center;margin-bottom:.35rem}
.dia{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:48px;aspect-ratio:1;border:1.5px solid var(--tinta);font-family:var(--f-titular);font-weight:750;font-size:var(--t-m);line-height:1;font-variant-numeric:lining-nums;transition:background-color var(--m-rapido),color var(--m-rapido)}
.dia:hover,.dia.is-hover{background:var(--tinta);color:var(--fondo)}
.dia:active,.dia.is-active{opacity:.75}
.dia[aria-pressed=true]{background:var(--btn-bg);border-color:var(--btn-bg);color:var(--btn-fg)}
.dia:disabled{border-color:transparent;color:var(--apagado);background:none;font-weight:500;cursor:default;opacity:1}
.dia.is-loading{color:transparent;background:var(--esqueleto);border-color:transparent;animation:latir 1.4s infinite}
.dia.is-empty{border:1.5px dashed var(--apagado);color:var(--apagado)}
.dia.is-hoy::after{content:"";position:absolute;inset:3px;border:1.5px dotted currentColor;pointer-events:none}
.dia__p{display:flex;gap:2px;height:7px}
.dia__p i{width:7px;height:7px;background:var(--sec)}
.dia:hover .dia__p i,.dia[aria-pressed=true] .dia__p i{background:currentColor}
.cal__ley{display:flex;flex-wrap:wrap;gap:.25rem var(--e-3);margin-top:var(--e-2);font-size:var(--t-xs)}
.cal__ley span{display:flex;align-items:center;gap:.35rem}
.cal__ley i{width:9px;height:9px;background:var(--sec)}
@media(min-width:1024px){.agenda[data-vista=cal] .ag-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start}.agenda[data-vista=cal] .cal{position:sticky;top:5.5rem}.agenda[data-vista=cal] .evento{grid-template-columns:7rem 1fr 12rem}.agenda[data-vista=cal] .evento__dia{grid-row:1/3}}
.agenda:not([data-vista=cal]) .ag-grid{grid-template-columns:minmax(0,1fr)}

/* Fotos y video: hoja de contactos en cuarto oscuro. Sin duotono */
.foto--natural{background:var(--noche)}
.foto--natural img{filter:none;mix-blend-mode:normal}
.foto--natural::before,.foto--natural::after{display:none}
.m-fotos{--sec-fill:var(--azul);--sec:var(--papel)}
.fo-hero{padding:calc(var(--cab-alto) + var(--e-5)) 0 var(--e-4)}
.fo-h1{font-size:clamp(3.1rem,12.8vw,14rem);line-height:.92;font-weight:900;letter-spacing:-.03em;margin-bottom:var(--e-3)}
.fo-port .foto{--r:3/2!important}
.fo-port .leyenda{padding-top:var(--e-2)}
@media(min-width:768px){.fo-port .foto{--r:21/9!important}}
.grilla--fotos{grid-template-columns:minmax(0,1fr);gap:0}
.grilla--fotos .g{grid-column:auto}
.cob{display:grid;gap:var(--e-3);padding-block:var(--e-5);border-top:1.5px solid var(--filete)}
.cob__info{display:grid;gap:.4rem;align-content:start}
.cob__t{font-family:var(--f-titular);font-weight:750;font-size:var(--t-xl);line-height:1.04;text-wrap:balance}
.cob__l{font-size:var(--t-m);line-height:1.25}
.cob__r{font-size:var(--t-s);line-height:1.45;margin-top:.35rem;max-width:32em}
.tira{display:flex;gap:6px;overflow-x:auto;scroll-snap-type:x proximity;background:var(--noche);padding:6px;margin-inline:calc(var(--margen)*-1);scrollbar-width:thin;scrollbar-color:var(--papel) transparent}
.tira li{flex:none;height:clamp(16rem,30vw,25rem);aspect-ratio:var(--lr);scroll-snap-align:start}
.tira button{position:relative;display:block;width:100%;height:100%}
.tira .foto{height:100%;width:100%}
.tira button:hover img{transform:scale(1.03)}
.tira button:focus-visible{outline-offset:-3px}
.cuadro{position:absolute;left:0;bottom:0;z-index:3;background:var(--noche);color:var(--azul-claro);font-size:var(--t-xs);font-weight:600;font-variant-numeric:tabular-nums;padding:.1rem .4rem}
@media(min-width:1024px){.cob{grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:var(--e-4)}.tira{margin-inline:0 calc(var(--margen)*-1)}}

/* Nosotros */
.nos-hero{position:relative;overflow:hidden;min-height:82svh;display:flex;align-items:flex-end;padding:calc(var(--cab-alto) + var(--e-6)) var(--margen) var(--e-5)}
.nos-hero h1{position:relative;font-size:clamp(3.25rem,11.5vw,12rem);line-height:.94;font-weight:900;letter-spacing:-.025em;max-width:9em}
.nos-hero .boletin__marca{top:42%;right:-14%;width:min(120vw,62rem)}
.nos-bloque{padding-block:var(--e-7);border-top:1.5px solid var(--filete)}
.nos-bloque:first-of-type{border-top:0}
.nos-bloque>h2,.nos-bloque .envoltura>h2{font-size:var(--t-xl);margin-bottom:var(--e-5)}
.nos-man{display:grid;gap:var(--e-4)}
.nos-man .manifiesto{font-size:var(--t-xl);line-height:1.1;font-weight:600;max-width:21em}
.nos-man__p{display:grid;gap:1.4em;max-width:29em}
@media(min-width:1024px){.nos-man{grid-template-columns:repeat(12,1fr)}.nos-man .manifiesto{grid-column:1/9}.nos-man__p{grid-column:9/13;align-self:end;font-size:var(--t-s)}}
.equipo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--e-4) var(--e-3)}
.persona__n{font-family:var(--f-titular);font-weight:750;font-size:var(--t-m);line-height:1.15;margin-top:var(--e-2)}
.persona__r{font-size:var(--t-s);line-height:1.35}
.equipo .foto{--foto-fondo:var(--azul)}
.equipo li:nth-child(3n+2) .foto{--foto-fondo:var(--noche)}
.equipo li:nth-child(3n) .foto{--foto-fondo:var(--sala)}
@media(min-width:1024px){.equipo{grid-template-columns:repeat(4,minmax(0,1fr))}.equipo li:nth-child(even){margin-top:var(--e-6)}}
.linea li{display:grid;gap:var(--e-1) var(--e-4);padding-block:var(--e-3);border-top:1.5px solid var(--tinta)}
.linea li:last-child{border-bottom:1.5px solid var(--tinta)}
.linea__a{font-family:var(--f-titular);font-weight:800;font-size:var(--t-2xl);line-height:.95;font-variant-numeric:lining-nums;color:var(--acento)}
.linea h3{font-family:var(--f-titular);font-weight:750;font-size:var(--t-l);line-height:1.12;margin-bottom:.35rem}
@media(min-width:768px){.linea li{grid-template-columns:minmax(0,4fr) minmax(0,8fr);align-items:baseline}}
.aliados{font-family:var(--f-titular);font-weight:750;font-size:var(--t-xl);line-height:1.2;max-width:22em}
.aliados li{display:inline}
.ali-fin{white-space:nowrap}
.aliados li:not(:last-child) .ali-fin::after{content:"";display:inline-block;width:.5em;height:.53em;margin-inline:.4em;vertical-align:.02em;background:var(--acento);-webkit-mask:var(--m-estrella) center/contain no-repeat;mask:var(--m-estrella) center/contain no-repeat}

/* Colabora */
.col-hero{padding:calc(var(--cab-alto) + var(--e-5)) var(--margen) var(--e-5)}
.col-hero h1{font-size:clamp(3.5rem,14.5vw,15rem);line-height:.9;font-weight:900;letter-spacing:-.03em}
.col-hero p{font-size:var(--t-m);line-height:1.35;max-width:30em;margin-top:var(--e-3)}
.col-g{display:grid;gap:var(--e-6);padding-block:var(--e-6) var(--e-7)}
.col-g h2{font-size:var(--t-l);margin-bottom:var(--e-3)}
.conv li{padding-block:var(--e-3);border-top:1.5px solid var(--tinta);display:grid;gap:.35rem}
.conv li:last-child{border-bottom:1.5px solid var(--tinta)}
.conv h3{font-family:var(--f-titular);font-weight:750;font-size:var(--t-m);line-height:1.15}
.conv p{font-size:var(--t-s);line-height:1.4}
.conv .meta{font-weight:600}
.conv li.is-cerrada h3,.conv li.is-cerrada p{color:var(--apagado)}
.alt{margin-top:var(--e-4);font-size:var(--t-s);line-height:1.45}
.form{display:grid;gap:var(--e-3);max-width:40rem}
.form fieldset{border:0;padding:0;margin:0;min-width:0;display:grid;gap:var(--e-3)}
.form fieldset[hidden]{display:none}
.form__2{display:grid;gap:var(--e-3)}
@media(min-width:768px){.form__2{grid-template-columns:1fr 1fr;align-items:start}}
.opciones{display:flex;flex-wrap:wrap;gap:.5rem}
.opciones label{position:relative;display:block}
.opciones input{position:absolute;opacity:0;width:100%;height:100%;inset:0;margin:0;cursor:pointer}
.opciones span{display:inline-flex;align-items:center;min-height:44px;padding:.4rem .9rem;border:2px solid var(--tinta);font-weight:600;font-size:var(--t-s)}
.opciones input:checked+span{background:var(--btn-bg);border-color:var(--btn-bg);color:var(--btn-fg)}
.opciones input:focus-visible+span{outline:3px solid var(--foco);outline-offset:3px}
.opciones label:hover span{box-shadow:4px 4px 0 var(--sombra)}
.campo textarea{min-height:9rem;resize:vertical;line-height:1.5}
.campo select{appearance:none;-webkit-appearance:none;padding-right:2.5rem;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-size:7px 7px;background-position:calc(100% - 19px) 50%,calc(100% - 12px) 50%;background-repeat:no-repeat}
.campo textarea:hover,.campo select:hover{box-shadow:4px 4px 0 var(--sombra)}
.campo textarea:focus-visible,.campo select:focus-visible{outline:3px solid var(--foco);outline-offset:1px}
.campo textarea[aria-invalid=true],.campo select[aria-invalid=true]{border-color:var(--err);border-width:3px}
.campo label small{font-weight:400;font-size:var(--t-xs)}
.campo .check{display:flex;align-items:flex-start;gap:.6rem;min-height:44px;font-weight:400;font-size:var(--t-s);line-height:1.4;cursor:pointer}
.campo .check input{flex:none;width:24px;height:24px;min-height:24px;padding:0;margin:0;accent-color:var(--azul);box-shadow:none}
.form__pie{display:grid;gap:var(--e-2);justify-items:start}
.form__msg{font-size:var(--t-s);font-weight:600;min-height:1.4em}
@media(min-width:1024px){.col-g{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--e-6)}}

.cartela h1{font-size:var(--t-l);font-weight:700;margin-bottom:.25rem}
.sec-hero--arte .cartela{position:static}
/* Piazzolla en pesos altos cierra mucho el espacio entre palabras */
.display,.portada__t,.pieza__t,.cob__t,.evento__t{word-spacing:.08em}
.fo-h1,.nos-hero h1{word-spacing:.16em}
.m-fotos .barra{border-bottom:0;margin-bottom:0}

/* Enlaces para la bio de Instagram: una columna, pensada para celular */
.pag-ig{background:var(--azul)}
.ig{position:relative;overflow:hidden;min-height:100svh;padding:var(--e-4) var(--margen) var(--e-4);--foto-fondo:var(--noche)}
.ig__col{position:relative;max-width:30rem;margin-inline:auto;display:grid;gap:var(--e-5)}
.ig__col>*{min-width:0}
.ig__cab{position:relative;min-height:12.5rem;display:flex;flex-direction:column;justify-content:flex-start}
.ig__estrella{position:absolute;top:-3.5rem;right:-5.5rem;width:17rem;aspect-ratio:1000/1055}
.ig__estrella .foto{height:100%;aspect-ratio:auto}
.ig__marca{position:relative;margin:0}
.ig__marca a{display:inline-flex;align-items:center;min-height:44px}
.ig__marca svg{width:9.5rem;height:auto;fill:currentColor}
.ig__lema{position:relative;margin-top:auto;font-family:var(--f-titular);font-style:italic;font-size:var(--t-m);line-height:1.2;max-width:9.5em}
.ig__h{font-size:var(--t-l);margin-bottom:var(--e-2)}
.ig-dest{display:grid;gap:var(--e-2);text-decoration:none;color:inherit}
.ig-dest__t{font-family:var(--f-titular);font-weight:800;font-size:var(--t-xl);line-height:1.04;letter-spacing:-.01em;word-spacing:.08em;text-wrap:balance}
.ig-dest:hover .ig-dest__t{text-decoration:underline;text-decoration-color:var(--papel);text-decoration-thickness:3px;text-underline-offset:.12em}
.ig-dest:hover img{transform:scale(1.03)}
.ig-lista li{border-top:1.5px solid var(--filete)}
.ig-lista li:last-child{border-bottom:1.5px solid var(--filete)}
.ig-ev,.ig-enl{display:grid;align-items:center;min-height:64px;padding:.65rem .4rem;margin-inline:-.4rem;text-decoration:none;color:inherit;transition:background-color var(--m-rapido),color var(--m-rapido)}
.ig-ev{grid-template-columns:3.75rem 1fr;gap:var(--e-2)}
.ig-ev:hover,.ig-enl:hover{background:var(--papel);color:var(--azul)}
.ig-ev:active,.ig-enl:active{opacity:.8}
.ig-ev__d{font-family:var(--f-titular);font-weight:800;font-size:2.6rem;line-height:.9;font-variant-numeric:lining-nums}
.ig-ev__d small{display:block;font:600 var(--t-xs)/1.3 var(--f-texto);margin-top:.2rem}
.ig-ev__t,.ig-enl{font-family:var(--f-titular);font-weight:750;font-size:var(--t-m);line-height:1.15}
.ig-ev__t small,.ig-enl small{display:block;font:400 var(--t-s)/1.3 var(--f-texto);margin-top:.15rem}
.ig__mas{margin-top:var(--e-1)}
.ig-form{grid-template-columns:1fr}
.ig-form .btn{margin-top:0;justify-self:start}
.ig__pie{font-size:var(--t-xs);font-weight:500}
@media(min-width:768px){.ig__estrella{right:-9rem;width:21rem;top:-4.5rem}}

/* Enlaces de texto pequeños con objetivo táctil */
.enl{display:inline-flex;align-items:center;min-height:44px;font-size:var(--t-xs);font-weight:600;text-decoration:underline;text-underline-offset:.2em;color:inherit;white-space:nowrap}
.enl:hover{text-decoration-thickness:3px}
.nota-b{margin-top:var(--e-2);font-size:var(--t-s)}
.nota-b a{display:inline-flex;align-items:center;min-height:44px;font-weight:600;text-underline-offset:.2em}

/* Agenda: acciones por evento y propuesta */
.evento__acc{grid-column:2/-1;display:flex;flex-wrap:wrap;align-items:center;gap:0 var(--e-3)}
.evento__ent{font-size:var(--t-xs);font-weight:500}
.ag-prop{display:grid;gap:var(--e-3);padding:var(--e-5) var(--e-3);margin-bottom:var(--e-6)}
.ag-prop h2{font-size:var(--t-xl);margin-bottom:.4rem}
.ag-prop__b{display:flex;flex-wrap:wrap;align-items:center;gap:var(--e-2) var(--e-4)}
@media(min-width:768px){.ag-prop{grid-template-columns:1fr auto;align-items:center;padding-inline:var(--e-5)}}

/* Fotos: archivo por ciudad y escenario */
.fo-ctrl{flex-basis:100%;display:flex;flex-wrap:wrap;gap:var(--e-3) var(--e-5);align-items:end}
.fo-ctrl .campo{min-width:min(100%,17rem)}
.cob__l a{text-underline-offset:.15em;text-decoration-thickness:1px}
.cob__l a:hover{color:var(--azul-claro)}
.fo-idx{padding-block:0 var(--e-7)}
.fo-idx h2{font-size:var(--t-xl);margin-bottom:var(--e-3)}
.fo-idx ul{display:grid;gap:0 var(--e-4)}
.fo-idx a{display:block;padding-block:.8rem;border-top:1px solid var(--filete);font-family:var(--f-titular);font-weight:750;font-size:var(--t-m);line-height:1.15;text-decoration:none}
.fo-idx a:hover{color:var(--azul-claro)}
.fo-idx small{display:block;font:400 var(--t-s)/1.3 var(--f-texto);margin-top:.15rem}
@media(min-width:768px){.fo-idx ul{grid-template-columns:repeat(3,1fr)}}

/* Mapa */
.mapa-hero{padding-top:calc(var(--cab-alto) + var(--e-5));padding-bottom:var(--e-4)}
.mapa-hero h1{font-size:clamp(5rem,20vw,20rem);line-height:.86;font-weight:900;letter-spacing:-.03em;margin-bottom:var(--e-2)}
.mapa-c{padding-bottom:var(--e-7)}
#ma-est{margin-block:var(--e-2)}
.mapa-g{display:grid;gap:var(--e-4)}
.mapa-g>*{min-width:0}
.mapa__sitio{position:relative;scroll-margin-top:calc(var(--cab-alto) + .5rem)}
.mapa__marco{height:min(72svh,48rem);overflow:auto;background:#0a1628;border:1.5px solid var(--filete);overscroll-behavior:contain;cursor:grab;scrollbar-width:thin}
.mapa__marco.is-drag{cursor:grabbing;user-select:none}
.mapa__lienzo{--z:2;position:relative;width:calc(var(--z)*100%);aspect-ratio:2451/3467}
.mapa__lienzo img{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;-webkit-user-drag:none}
.pin{position:absolute;width:44px;height:44px;margin:-22px 0 0 -22px;display:grid;place-items:center;z-index:2}
.pin i{display:block;width:20px;height:21px;background:var(--papel);-webkit-mask:var(--m-estrella) center/contain no-repeat;mask:var(--m-estrella) center/contain no-repeat;transition:transform var(--m-rapido) var(--curva)}
.pin:hover i{transform:scale(1.5)}
.pin:focus-visible{outline-offset:-4px}
.pin.is-sel{z-index:4}
.pin.is-sel i{background:var(--papel);transform:scale(2)}
.mapa__zoom{position:absolute;top:.5rem;right:.75rem;display:grid;background:var(--noche);border:1.5px solid var(--filete)}
.mapa__zoom .ico:disabled{opacity:.35;cursor:not-allowed}
.mapa__ficha{padding-block:var(--e-3);min-height:7rem}
.mapa__n{font-family:var(--f-titular);font-weight:750;font-size:var(--t-l);line-height:1.1}
.mapa__cred{font-size:var(--t-xs);line-height:1.45;max-width:46em;opacity:.85}
.m-gr h2{font-family:var(--f-titular);font-weight:750;font-size:var(--t-m);margin:var(--e-3) 0 .4rem}
.m-gr:first-child h2{margin-top:0}
.m-gr li{display:flex;justify-content:space-between;align-items:center;gap:var(--e-2);border-top:1px solid var(--filete)}
.lug{flex:1;min-height:44px;text-align:left;font-size:var(--t-s);font-weight:500;line-height:1.2;padding-block:.4rem}
.lug:hover,.lug[aria-current]{color:var(--azul-claro)}
@media(min-width:1024px){.mapa-g{grid-template-columns:minmax(0,8fr) minmax(0,4fr)}.mapa-lista{max-height:min(72svh,48rem);overflow-y:auto;padding-right:.5rem;scrollbar-width:thin}}

/* Archivo del boletín */
.bol{padding-top:calc(var(--cab-alto) + var(--e-5));padding-bottom:var(--e-7);display:grid;gap:var(--e-6)}
.bol h1{font-size:clamp(4rem,16vw,16rem);line-height:.88;font-weight:900;letter-spacing:-.03em;margin-bottom:var(--e-3)}
.bol .lead{font-size:var(--t-m);line-height:1.35;max-width:28em;margin-bottom:var(--e-4)}
.bol h2{font-size:var(--t-xl);margin-bottom:var(--e-3)}
.ed{border-top:1.5px solid var(--tinta)}
.ed:last-child{border-bottom:1.5px solid var(--tinta)}
.ed summary{cursor:pointer;display:grid;grid-template-columns:3.5rem 1fr;gap:.1rem var(--e-2);align-items:baseline;min-height:64px;padding-block:var(--e-2);list-style:none}
.ed summary::-webkit-details-marker{display:none}
.ed__n{font-family:var(--f-titular);font-weight:800;font-size:var(--t-m);font-variant-numeric:lining-nums;color:var(--acento);grid-row:1/3}
.ed__t{font-family:var(--f-titular);font-weight:750;font-size:var(--t-l);line-height:1.12}
.ed__f{font-size:var(--t-s)}
.ed summary:hover .ed__t{text-decoration:underline;text-underline-offset:.14em}
.ed__c{padding:0 0 var(--e-4) calc(3.5rem + var(--e-2));max-width:calc(29em + 5rem);display:grid;gap:.25rem}
.ed__c h3{font-family:var(--f-titular);font-weight:750;font-size:var(--t-m);margin-top:var(--e-2)}
.mapa-hero h1{line-height:1;margin-bottom:var(--e-2)}

/* Serie «Elogio a…»: pared de carteles */
.el-hero{padding-top:calc(var(--cab-alto) + var(--e-5));padding-bottom:var(--e-5)}
.el-hero h1{font-size:clamp(3.75rem,15vw,16rem);line-height:.95;font-weight:900;letter-spacing:-.03em;margin-bottom:var(--e-3)}
.el-ind{margin-top:var(--e-4);display:grid;gap:0 var(--e-4);border-bottom:1px solid var(--filete)}
.el-ind a{display:flex;align-items:baseline;gap:.6rem;min-height:44px;padding-block:.55rem;border-top:1px solid var(--filete);font-family:var(--f-titular);font-weight:700;font-size:var(--t-m);line-height:1.15;text-decoration:none}
.el-ind a:hover{color:var(--acento)}
.el-ind span{font:600 var(--t-xs)/1 var(--f-texto);min-width:1.2rem;font-variant-numeric:tabular-nums}
@media(min-width:768px){.el-ind{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.el-ind{grid-template-columns:repeat(4,1fr)}}
.el{background:var(--el-f);color:var(--el-t);--tinta:var(--el-t);--acento:var(--el-t);--foco:var(--el-foco,var(--papel));--sombra:var(--el-foco,var(--papel));--filete:color-mix(in srgb,var(--el-t) 40%,transparent);padding:var(--e-6) var(--margen);scroll-margin-top:56px}
.el--azul{--el-f:var(--azul);--el-t:var(--papel);--el-s:var(--noche)}
.el--limon{--el-f:var(--papel);--el-t:var(--azul);--el-foco:var(--azul)}
.el--noche{--el-f:var(--sala);--el-t:var(--papel);--el-s:var(--azul)}
.el--magenta{--el-f:var(--sala);--el-t:var(--papel)}
.el--petroleo{--el-f:var(--azul);--el-t:var(--papel)}
.el__in{max-width:var(--max);margin-inline:auto;display:grid;gap:var(--e-4)}
.el__n{font-size:var(--t-xs);font-weight:600;margin-bottom:var(--e-3)}
.el__a{font-family:var(--f-titular);font-style:italic;font-weight:500;font-size:var(--t-l);line-height:1.1}
.el__o{font-size:clamp(3.4rem,14.5vw,8.6rem);line-height:.96;font-weight:900;letter-spacing:-.025em;word-spacing:.08em;text-wrap:balance}
.el__t{display:grid;gap:1.1em;max-width:29em}
.el__t>p:nth-last-of-type(2)::after{content:"";display:inline-block;width:.8em;height:.84em;margin-left:.4em;vertical-align:-.08em;background:currentColor;-webkit-mask:var(--m-estrella) center/contain no-repeat;mask:var(--m-estrella) center/contain no-repeat}
.el__acc{margin-top:.4em}
@media(min-width:1024px){
 .el{min-height:78svh;display:flex;align-items:center}
 .el__in{width:100%;grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:end;gap:var(--e-5)}
 .el:nth-of-type(even) .el__c{grid-column:2;grid-row:1}
 .el:nth-of-type(even) .el__t{grid-column:1;grid-row:1;justify-self:end}
 .el:nth-of-type(even) .el__o{font-size:clamp(3.4rem,7vw,7.4rem)}
}
.el-fin{padding-block:var(--e-7);text-align:left}
.el-fin h2{font-size:var(--t-2xl);max-width:10em;margin-bottom:var(--e-3)}
.el-fin p{font-size:var(--t-m);line-height:1.35}

/* Política de datos y avisos legales */
.legal-b{margin-top:var(--e-2);font-size:var(--t-xs);line-height:1.45;max-width:34rem}
.legal-b a,.campo .check a{text-underline-offset:.18em;font-weight:600}
.pol{padding-top:calc(var(--cab-alto) + var(--e-5));padding-bottom:var(--e-7);display:grid;gap:var(--e-4)}
.pol h1{font-size:clamp(3rem,10vw,9rem);line-height:.95;font-weight:900;letter-spacing:-.025em;margin-bottom:var(--e-3)}
.pol .lead{font-size:var(--t-m);line-height:1.35;max-width:34em}
.pol__aviso{background:var(--azul);color:var(--papel);padding:var(--e-2) var(--e-3);max-width:44rem;font-size:var(--t-s);line-height:1.4}
.pol__ind{display:grid;gap:0 var(--e-4);border-bottom:1px solid var(--filete);counter-reset:p}
.pol__ind a{display:flex;align-items:center;min-height:44px;border-top:1px solid var(--filete);font-size:var(--t-s);font-weight:500;line-height:1.25;text-decoration:none;padding-block:.35rem}
.pol__ind a:hover{color:var(--acento)}
.pol__ind li{counter-increment:p}
.pol__ind a::before{content:counter(p);min-width:1.8rem;font-size:var(--t-xs);font-weight:600;font-variant-numeric:tabular-nums}
@media(min-width:768px){.pol__ind{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.pol__ind{grid-template-columns:repeat(3,1fr)}}
.pol__c{display:grid;gap:var(--e-5);max-width:calc(29em + 3rem)}
.pol__c section{display:grid;gap:.9em;scroll-margin-top:5rem}
.pol__c h2{font-family:var(--f-titular);font-weight:750;font-size:var(--t-l);line-height:1.12;display:flex;gap:.6rem;align-items:baseline}
.pol__c h2 span{font:600 var(--t-s)/1 var(--f-texto);color:var(--acento);min-width:1.4rem}
.pol__c ul{display:grid;gap:.45em;padding-left:1.15em;list-style:disc}
.pend{background:var(--azul);color:var(--papel);padding:0 .25em;font-weight:600}
/* Mapa: acceso al juego Ruta Elogio */
.mapa-juego{margin-top:var(--e-3);display:flex;flex-wrap:wrap;gap:.75rem}
.mapa-juego .btn{--btn-bg:var(--papel);--btn-fg:var(--noche);--sombra:var(--azul)}
.mapa-juego__e{width:1.2em;height:1.2em;flex:none;fill:currentColor}

/* Inicio: los dos mini juegos */
.s-juegos{padding-block:var(--e-5)}
.s-juegos h2{font-size:var(--t-xl);margin-bottom:var(--e-3)}
.juegos{display:grid;gap:var(--e-3)}
@media(min-width:768px){.juegos{grid-template-columns:1fr 1fr}}
.juego{display:grid;grid-template-rows:auto 1fr;text-decoration:none;color:var(--papel);background:var(--sala);border:2px solid var(--tinta);transition:transform var(--m-rapido) var(--curva),box-shadow var(--m-rapido) var(--curva)}
.juego:hover{transform:translate(-3px,-3px);box-shadow:6px 6px 0 var(--sombra)}
.juego:focus-visible{outline:3px solid var(--foco);outline-offset:3px}
.juego__img{aspect-ratio:16/7;display:grid;place-items:center;background:#0A1527 url("../assets/img/mapa-manizales-960.jpg") center 58%/150% auto no-repeat}
.juego--lab .juego__img{background:var(--azul)}
.juego--lab .juego__img svg{width:5.5rem;height:5.8rem;fill:var(--papel);animation:girar 16s linear infinite}
@media(prefers-reduced-motion:reduce){.juego--lab .juego__img svg{animation:none}}
.juego__txt{display:flex;flex-direction:column;gap:.45rem;padding:var(--e-3)}
.juego__txt small{font-size:var(--t-xs);letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--azul-claro)}
.juego__txt strong{font-family:var(--f-titular);font-size:var(--t-l);line-height:1.05}
.juego__txt>span{font-size:var(--t-s);line-height:1.45;opacity:.9}
.juego__txt .btn{--btn-bg:var(--papel);--btn-fg:var(--noche);align-self:flex-start;margin-top:auto;font-style:normal}

/* Quiz de Elogio */
.qz-hero{padding-top:calc(var(--cab-alto) + var(--e-5));padding-bottom:var(--e-4)}
.qz-hero h1{font-size:clamp(3.25rem,12.5vw,13rem);line-height:.93;font-weight:900;letter-spacing:-.03em;word-spacing:.06em;text-wrap:balance;margin-bottom:var(--e-3)}
.qz-aviso{margin-top:var(--e-3);font-weight:600}
.qz-kick{font-size:var(--t-xs);font-weight:700;letter-spacing:.02em}
.qz-c,.qz-dia__in,.qz-juego{background:var(--el-f);color:var(--el-t);--tinta:var(--el-t);--acento:var(--el-t);--foco:var(--el-t);--sombra:var(--el-s,var(--noche));--btn-bg:var(--el-t);--btn-fg:var(--el-f);--filete:color-mix(in srgb,var(--el-t) 40%,transparent)}
.qz-dia{padding-bottom:var(--e-5)}
.qz-dia__in{padding:var(--e-4) var(--e-3);display:grid;gap:var(--e-2);justify-items:start}
.qz-dia__in h2{word-spacing:.06em;font-size:var(--t-xl);line-height:1;max-width:14em;text-wrap:balance}
.qz-dia__in p{max-width:34em;line-height:1.4}
@media(min-width:768px){.qz-dia__in{padding:var(--e-5) var(--e-4)}}
.qz-modos{padding-bottom:var(--e-6)}
.qz-modos h2,.qz-pie h2{font-size:var(--t-xl);line-height:1;margin-bottom:var(--e-2)}
.qz-nota{margin-bottom:var(--e-4);max-width:34em}
.qz-lista{display:grid;gap:var(--e-2)}
@media(min-width:768px){.qz-lista{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.qz-lista{grid-template-columns:repeat(3,1fr)}}
.qz-c{width:100%;height:100%;min-height:13rem;display:grid;grid-template-rows:auto 1fr auto auto;gap:.5rem;padding:var(--e-3);text-align:left;font:inherit;border:2px solid var(--el-f);cursor:pointer;transition:transform var(--m-rapido) var(--curva),box-shadow var(--m-rapido) var(--curva)}
.qz-c--mixta{--el-f:var(--fondo);--el-t:var(--tinta);--el-foco:var(--acento);border-color:var(--tinta)}
.qz-c:hover{transform:translate(-3px,-3px);box-shadow:6px 6px 0 var(--el-foco,var(--tinta))}
.qz-c:not(.qz-c--mixta):hover{box-shadow:6px 6px 0 color-mix(in srgb,var(--el-f) 55%,var(--tinta))}
.qz-c:focus-visible{outline:3px solid var(--acento,var(--azul));outline-offset:3px}
.qz-c small{font-size:var(--t-xs);font-weight:600}
.qz-c strong{word-spacing:.1em;font-family:var(--f-titular);font-weight:900;font-size:var(--t-xl);line-height:.98;letter-spacing:-.02em;align-self:end}
.qz-c span{font-size:var(--t-s);line-height:1.35}
.qz-c em{font-style:normal;font-size:var(--t-xs);font-weight:700;min-height:1.3em}
.qz-pie{padding-bottom:var(--e-7);display:grid;gap:var(--e-2)}
.qz-pie p{max-width:34em;line-height:1.4}
.qz-fuentes{font-size:var(--t-xs);margin-top:var(--e-3)}
.qz-juego{min-height:100svh;padding:calc(var(--cab-alto) + var(--e-4)) var(--margen) var(--e-6)}
.qz-juego__in{max-width:54rem;margin-inline:auto;display:grid;gap:var(--e-3)}
.qz-barra{display:flex;align-items:center;gap:var(--e-3);font-size:var(--t-s);font-weight:600;font-variant-numeric:tabular-nums}
.qz-barra .btn{margin-left:auto;min-height:44px}
.qz-prog{--p:0;--e:2.25rem;position:relative;height:6px;margin-block:calc(var(--e)/2);background:var(--filete)}
.qz-prog i{display:block;height:100%;width:calc(var(--p)*(100% - var(--e)) + var(--e)/2);background:currentColor;transition:width .7s var(--curva)}
.qz-prog svg{position:absolute;top:50%;left:calc(var(--p)*(100% - var(--e)));width:var(--e);height:calc(var(--e)*1.055);margin-top:calc(var(--e)*-.5275);fill:currentColor;transition:left .7s var(--curva)}
.qz-prog.is-acierto svg{animation:qz-estrella .9s var(--curva)}
@keyframes qz-estrella{0%{transform:rotate(0) scale(1)}45%{transform:rotate(200deg) scale(1.7)}100%{transform:rotate(360deg) scale(1)}}
.qz-juego h2{word-spacing:.06em;font-size:clamp(1.9rem,1.2rem + 3.4vw,3.9rem);line-height:1.04;font-weight:850;letter-spacing:-.015em;text-wrap:balance;outline:none}
.qz-ops{display:grid;gap:.6rem;margin-top:var(--e-2)}
@media(min-width:768px){.qz-ops{grid-template-columns:1fr 1fr}}
.qz-op{width:100%;height:100%;min-height:60px;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.8rem 1rem;text-align:left;font:600 var(--t-cuerpo)/1.25 var(--f-texto);color:inherit;background:transparent;border:2px solid currentColor;cursor:pointer;transition:background var(--m-rapido) var(--curva),color var(--m-rapido) var(--curva)}
.qz-op:hover:not(:disabled){background:var(--el-t);color:var(--el-f)}
.qz-op:focus-visible{outline:3px solid var(--foco);outline-offset:3px}
.qz-op:disabled{cursor:default;opacity:.55}
.qz-op.is-ok{opacity:1;background:var(--el-t);color:var(--el-f)}
.qz-op.is-mal{opacity:1;text-decoration:line-through;text-decoration-thickness:2px;border-style:dashed}
.qz-op__m{flex:none;font-size:var(--t-xs);font-weight:700;text-decoration:none;display:inline-block}
.qz-resp{display:grid;gap:.5rem;justify-items:start;padding-top:var(--e-3);border-top:2px solid currentColor;max-width:40em}
.qz-resp__v{font-family:var(--f-titular);font-weight:800;font-size:var(--t-l);line-height:1.1}
.qz-resp__f{font-size:var(--t-xs)}
.qz-resp .btn{margin-top:var(--e-2)}
.qz-fin{padding:calc(var(--cab-alto) + var(--e-5)) 0 var(--e-7)}
.qz-fin__in{display:grid;gap:var(--e-2);justify-items:start}
.qz-marca{display:flex;align-items:center;gap:.6rem;font-family:var(--f-titular);font-weight:900;font-size:var(--t-xl);line-height:1;color:var(--acento);font-variant-numeric:lining-nums}
.qz-marca svg{width:1em;height:1.05em;fill:currentColor}
.qz-fin h2{word-spacing:.06em;font-size:clamp(3rem,10vw,9rem);line-height:.95;font-weight:900;letter-spacing:-.03em;text-wrap:balance;outline:none}
.qz-fin__t{font-size:var(--t-m);line-height:1.35;max-width:26em}
.qz-fin__r{font-size:var(--t-s);font-weight:600}
.qz-acc{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:var(--e-3)}
.qz-msg{font-size:var(--t-s);min-height:1.4em;max-width:40em}
#qz-rep{margin-top:var(--e-4);width:100%;max-width:44rem}
#qz-rep h3{font-size:var(--t-l);margin-bottom:var(--e-2)}
.qz-rep{border-bottom:1px solid var(--filete)}
.qz-rep li{display:grid;gap:.25rem;padding-block:var(--e-2);border-top:1px solid var(--filete);line-height:1.4}
.qz-rep span{font-size:var(--t-s)}
.qz-sig{margin-top:var(--e-3)}
@media(prefers-reduced-motion:reduce){.qz-c,.qz-op,.qz-prog i,.qz-prog svg{transition:none}.qz-prog.is-acierto svg{animation:none}.qz-c:hover{transform:none}}

/* Paleta de marca: sin colores extra, el hover de enlaces sobre campos oscuros se marca también con subrayado */
.menu li a:hover,.pie a:hover,.cob__l a:hover,.fo-idx a:hover,.lug:hover,.lug[aria-current]{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.18em}
