/* ==== Taboracrom 2026 v3: componentes ==== */
/* Paleta de la cerámica de Talavera: azul cobalto, amarillo antimonio; fotos sobre negro */
:root{--papel:#f5f5f2;--blanco:#fff;--negro:#000;--gris-medio:#737372;--grafito:#5a5a58;--niebla:#e9e9e4;--cobalto:#1e3c9a;--cobalto-hover:#162d78;--cobalto-vivo:#5577ff;--antimonio:#e3b23c;--antimonio-hover:#f0c252;--linea:#d6d6d2;--linea-osc:rgba(255,255,255,.16);--ease-out:cubic-bezier(.23,1,.32,1);--ease-in-out:cubic-bezier(.77,0,.175,1);--caja:1320px;--margen:clamp(1rem,3.5vw,2.5rem);--esp:clamp(3.5rem,7vw,6.5rem);--radio:10px;--serif:"Instrument Serif",Georgia,serif}
.elementor-section.tbc-estilos{display:none!important}

/* Secciones: caja ancha, sin columnas con relleno propio */
.elementor-section.tbc{background:var(--papel);color:var(--negro);padding:var(--esp) 0}
.elementor-section.tbc>.elementor-container{max-width:var(--caja)!important;padding:0 var(--margen)}
.tbc .elementor-column-wrap,.tbc .elementor-widget-wrap{padding:0!important}
.tbc .elementor-widget:not(:last-child){margin-bottom:0}
.elementor-section.tbc-blanco{background:var(--blanco)}
.elementor-section.tbc-oscuro{background:var(--negro);color:#fff}
.elementor-section.tbc-cobalto{background:var(--cobalto);color:#fff}
.elementor-section.tbc-sangre{padding:0}
.elementor-section.tbc-sangre>.elementor-container{max-width:none!important;padding:0}
.elementor-section.tbc-junto{padding-top:0}
.tbc-caja{max-width:var(--caja);margin:0 auto;padding:0 var(--margen);box-sizing:border-box}
.tbc *,.tbc *:before,.tbc *:after{box-sizing:border-box}

/* Tipografía */
.tbc,.tbc .elementor-heading-title,.tbc .elementor-text-editor,.tbc .elementor-button,.tbc .tbc-html,.tbc .elementor-accordion,.tbc figcaption,.tbc button{font-family:"Archivo",system-ui,sans-serif!important}
.tbc .tbc-html{font-size:1.0625rem;line-height:1.55}
.tbc p{margin:0 0 1em}
.tbc h1,.tbc h2,.tbc h3,.tbc h4{margin:0;color:inherit;text-transform:none}
.tbc a{color:var(--cobalto);text-underline-offset:.18em}
.tbc-oscuro a,.tbc-cobalto a{color:#fff}
.tbc a:focus-visible,.tbc button:focus-visible{outline:3px solid var(--antimonio);outline-offset:3px}
.tbc-t1{font-weight:800;font-stretch:100%;font-size:clamp(2.6rem,4.9vw,4.6rem);line-height:.96;letter-spacing:-.035em;max-width:14ch}
.tbc-t2{font-weight:800;font-stretch:100%;font-size:clamp(2.2rem,4.4vw,3.9rem);line-height:.98;letter-spacing:-.032em;max-width:18ch}
.tbc-t2 em,.tbc-t1 em{display:block;font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-.01em;color:var(--grafito);line-height:1}
.tbc-oscuro .tbc-t2 em,.tbc-oscuro .tbc-t1 em,.tbc-cobalto .tbc-t2 em,.tbc-heroe .tbc-t1 em{color:rgba(255,255,255,.62)}
.tbc-t3{font-weight:700;font-stretch:90%;font-size:1.35rem;line-height:1.15;letter-spacing:-.01em}
.tbc-lead{font-size:clamp(1.05rem,1.3vw,1.2rem);line-height:1.55;color:var(--grafito);max-width:56ch}
.tbc-oscuro .tbc-lead,.tbc-cobalto .tbc-lead{color:rgba(255,255,255,.74)}
.tbc-serif{font-family:var(--serif);font-style:italic;font-weight:400}
.tbc-romano{font-stretch:62%;font-weight:800;line-height:.8;letter-spacing:-.02em}

/* Cabecera de sección: título a la izquierda, explicación y acción a la derecha */
.tbc-cab{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:1.5rem clamp(2rem,6vw,6rem);align-items:end;margin-bottom:clamp(2rem,4vw,3.25rem)}
.tbc-cab .tbc-lead{margin:0 0 1.25rem}
.tbc-cab__d>*:last-child{margin-bottom:0}
.tbc-cab--solo,.tbc-dos .tbc-cab{grid-template-columns:1fr}
.tbc-dos .tbc-cab{margin-bottom:1.25rem}
@media (max-width:860px){.tbc-cab{grid-template-columns:1fr;align-items:start}}

/* Etiquetas y estado */
.tbc .tbc-chip,.tbc-chip{display:inline-flex;align-items:center;gap:.5rem;font-size:.88rem;font-weight:600;line-height:1;padding:.5rem .85rem;border-radius:999px;border:1px solid var(--linea);background:var(--blanco);color:var(--negro);margin:0 0 1.25rem;white-space:nowrap}
.tbc-chip:before{content:"";width:.5rem;height:.5rem;border-radius:50%;background:var(--antimonio);flex:none}
.tbc-chip--osc{background:rgba(0,0,0,.42);border-color:rgba(255,255,255,.22);color:#fff;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.tbc-chip--vivo:before{box-shadow:0 0 0 0 rgba(227,178,60,.6);animation:tbc-latido 2s var(--ease-out) infinite}
.tbc-chip.cerrado:before,.tbc-chip--gris:before{background:var(--gris-medio);animation:none}
@keyframes tbc-latido{0%{box-shadow:0 0 0 0 rgba(227,178,60,.55)}70%{box-shadow:0 0 0 .55rem rgba(227,178,60,0)}100%{box-shadow:0 0 0 0 rgba(227,178,60,0)}}
.tbc-estado{margin:0}

/* Botones: píldora; en fondo oscuro, antimonio */
.tbc-botones{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}
.tbc-btn,.tbc .elementor-button{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:3.15rem;padding:0 1.5rem;border-radius:999px;font-weight:600;font-size:1rem;line-height:1;text-decoration:none!important;border:0;background:var(--cobalto);color:#fff!important;box-shadow:none;text-transform:none;letter-spacing:0;cursor:pointer;transition:background-color .2s ease,color .2s ease,box-shadow .2s ease,transform .16s var(--ease-out)}
.tbc-btn svg{width:1.1rem;height:1.1rem;flex:none;transition:transform .2s var(--ease-out)}
.tbc-btn:active,.tbc .elementor-button:active{transform:scale(.97)}
.tbc-btn--claro,.tbc-oscuro .elementor-button,.tbc-cobalto .elementor-button{background:var(--antimonio);color:var(--negro)!important}
.tbc .tbc-btn--borde,.tbc-sec .elementor-button{background:transparent;color:var(--negro)!important;box-shadow:inset 0 0 0 1.5px currentColor}
.tbc-oscuro .tbc-btn--borde,.tbc-cobalto .tbc-btn--borde,.tbc-heroe .tbc-btn--borde,.tbc-oscuro .tbc-sec .elementor-button,.tbc-cobalto .tbc-sec .elementor-button{color:#fff!important;background:transparent}
@media (hover:hover) and (pointer:fine){
  .tbc-btn:hover,.tbc .elementor-button:hover{background:var(--cobalto-hover)}
  .tbc-btn--claro:hover,.tbc-oscuro .elementor-button:hover,.tbc-cobalto .elementor-button:hover{background:var(--antimonio-hover)}
  .tbc .tbc-btn--borde:hover,.tbc-sec .elementor-button:hover{background:var(--negro);color:#fff!important;box-shadow:inset 0 0 0 1.5px var(--negro)}
  .tbc .tbc-oscuro .tbc-btn--borde:hover,.tbc .tbc-cobalto .tbc-btn--borde:hover,.tbc .tbc-heroe .tbc-btn--borde:hover,.tbc-oscuro .tbc-btn--borde:hover,.tbc-cobalto .tbc-btn--borde:hover{background:#fff;color:var(--negro)!important;box-shadow:inset 0 0 0 1.5px #fff}
  .tbc-btn:hover svg{transform:translateX(3px)}
}
.elementor-widget.tbc-inline{display:inline-block;width:auto;margin:0 .6rem .75rem 0!important;vertical-align:top}
.tbc-enlace{display:inline-flex;align-items:center;gap:.45rem;font-weight:600;text-decoration:none!important;color:inherit}
.tbc-enlace svg{width:1.05rem;height:1.05rem;transition:transform .2s var(--ease-out)}
@media (hover:hover) and (pointer:fine){.tbc-enlace:hover svg{transform:translateX(3px)}}

/* Iconos */
.tbc-ico{width:1.25rem;height:1.25rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.tbc-ico-caja{display:inline-grid!important;place-items:center;flex:none;width:3rem;height:3rem;border-radius:12px;background:rgba(30,60,154,.09);color:var(--cobalto)}
.tbc-ico-caja .tbc-ico{width:1.4rem;height:1.4rem}
.tbc-oscuro .tbc-ico-caja,.tbc-cobalto .tbc-ico-caja{background:rgba(255,255,255,.1);color:var(--antimonio)}

/* ==== Portada con pase de fotos premiadas ==== */
.tbc-heroe{position:relative;background:#000;color:#fff;min-height:max(34rem,calc(100vh - var(--cab,5.5rem)));min-height:max(34rem,calc(100svh - var(--cab,5.5rem)));display:flex;flex-direction:column;overflow:hidden;isolation:isolate}
.tbc-heroe__fotos{position:absolute;inset:0;z-index:-2;margin:0}
.tbc-heroe__foto{position:absolute;inset:0;margin:0;opacity:0;transition:opacity 1.4s var(--ease-in-out)}
.tbc-heroe__foto.activa{opacity:1}
.tbc-heroe__foto img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.001)}
/* Acercamiento lento: transición (no keyframes) para que la foto que sale no salte */
.tbc-anim .tbc-heroe__foto img{transform:scale(1.07);transition:transform 9s linear}
.tbc-anim .tbc-heroe.entrada .tbc-heroe__foto.activa img{transform:scale(1.001)}
.tbc-heroe:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.66) 32%,rgba(0,0,0,.12) 64%,rgba(0,0,0,0) 80%),linear-gradient(0deg,rgba(0,0,0,.85) 0%,rgba(0,0,0,0) 30%)}
.tbc-heroe__caja{flex:1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:2rem;width:100%;padding-top:clamp(1.5rem,6vh,5rem);padding-bottom:clamp(1.5rem,4vh,3rem)}
.tbc-heroe__texto{max-width:44rem}
.tbc .tbc-heroe__num{display:block;font-stretch:62%;font-weight:800;font-size:clamp(4rem,min(10vw,13vh),8.5rem);line-height:.78;letter-spacing:-.02em;color:var(--antimonio);margin:0 0 clamp(.75rem,2vh,1.25rem) -.04em}
.tbc-heroe .tbc-t1{color:#fff;max-width:17ch;font-size:clamp(2.4rem,min(4.9vw,8.2vh),4.6rem)}
.tbc-heroe .tbc-lead{color:rgba(255,255,255,.8);margin:1.25rem 0 0}
.tbc-heroe .tbc-btn--borde{color:#fff!important}
/* Cartela flotante: autor y premio de la foto que se ve */
.tbc-cartelas{width:min(21rem,80vw);background:rgba(0,0,0,.5);border:1px solid rgba(255,255,255,.18);border-radius:var(--radio);padding:1rem 1.1rem 1.05rem;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.tbc-cartela{display:none}
.tbc-cartela.activa{display:block;animation:tbc-aparecer .5s var(--ease-out) both}
@keyframes tbc-aparecer{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.tbc-cartela p{margin:0;font-size:.86rem;line-height:1.35;color:rgba(255,255,255,.72)}
.tbc-cartela strong{display:block;font-family:var(--serif);font-style:italic;font-weight:400;font-size:1.5rem;line-height:1.05;color:#fff;margin:.2rem 0 .3rem}
.tbc-cartela a{color:#fff!important;font-weight:600;font-size:.86rem}
.tbc-pase-ctl{display:flex;align-items:center;gap:.4rem;margin-top:.9rem;padding-top:.8rem;border-top:1px solid rgba(255,255,255,.16)}
.tbc-pase-ctl button{appearance:none;border:0;background:none;padding:.35rem 0;cursor:pointer;flex:1;height:1.2rem;position:relative}
.tbc-pase-ctl button:before{content:"";position:absolute;left:0;right:0;top:50%;height:2px;margin-top:-1px;background:rgba(255,255,255,.28);border-radius:2px}
.tbc-pase-ctl button span{position:absolute;left:0;top:50%;height:2px;margin-top:-1px;width:100%;background:#fff;border-radius:2px;transform:scaleX(0);transform-origin:left}
.tbc-pase-ctl button.vista span{transform:scaleX(1)}
.tbc-pase-ctl button.activa span{transform:scaleX(1)}
.tbc-pase.corriendo .tbc-pase-ctl button.activa span{animation:tbc-progreso var(--pase,7s) linear both}
@keyframes tbc-progreso{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.tbc-pase-ctl .tbc-pausa{flex:none;width:1.9rem;height:1.9rem;margin-left:.35rem;border-radius:50%;border:1px solid rgba(255,255,255,.3);display:grid;place-items:center;color:#fff}
.tbc-pase-ctl .tbc-pausa:before{display:none}
.tbc-pase-ctl .tbc-pausa svg{width:.8rem;height:.8rem;fill:currentColor;stroke:none}
/* Datos al pie de la portada */
.tbc-heroe__pie{border-top:1px solid rgba(255,255,255,.18);background:rgba(0,0,0,.35);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.tbc-heroe__datos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none}
.tbc-heroe__datos.tbc-caja{margin:0 auto;padding:0 var(--margen)}
.tbc-heroe__datos li{display:flex;gap:.85rem;align-items:center;padding:1.15rem 1.25rem 1.15rem 0;margin:0}
.tbc-heroe__datos li+li{padding-left:1.25rem;border-left:1px solid rgba(255,255,255,.14)}
.tbc-heroe__datos .tbc-ico{width:1.5rem;height:1.5rem;color:var(--antimonio)}
.tbc-heroe__datos strong{display:block;font-size:1rem;line-height:1.2}
.tbc-heroe__datos span{display:block;font-size:.86rem;line-height:1.3;color:rgba(255,255,255,.66)}

@media (max-width:980px){.tbc-heroe__caja{grid-template-columns:1fr}.tbc-heroe__datos{grid-template-columns:repeat(2,minmax(0,1fr))}.tbc-heroe__datos li:nth-child(3){padding-left:0;border-left:0}.tbc-heroe__datos li:nth-child(n+3){border-top:1px solid rgba(255,255,255,.14)}}
@media (max-width:980px){.tbc-heroe{min-height:0}.tbc-heroe__fotos{bottom:auto;height:min(62vh,34rem)}.tbc-heroe:after{background:linear-gradient(180deg,rgba(0,0,0,.1) 0%,rgba(0,0,0,.3) 35%,#000 min(62vh,34rem))}.tbc-heroe__caja{padding-top:min(36vh,20rem)}}
@media (max-width:767px){.tbc .tbc-heroe__num{font-size:4.5rem}.tbc-heroe__fotos{height:56vh}.tbc-heroe:after{background:linear-gradient(180deg,rgba(0,0,0,.1) 0%,rgba(0,0,0,.3) 35%,#000 56vh)}.tbc-heroe__caja{padding-top:30vh}.tbc-cartelas{width:100%}.tbc-heroe__datos li{padding:1rem .75rem 1rem 0}.tbc-heroe__datos li+li{padding-left:.75rem}}

/* ==== Tarjetas de convocatoria (foto protagonista) ==== */
.tbc-convs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,2vw,1.5rem)}
.tbc .tbc-conv{position:relative;display:flex;flex-direction:column;background:var(--blanco);border-radius:var(--radio);overflow:hidden;color:var(--negro)!important;text-decoration:none!important;box-shadow:0 1px 0 var(--linea);transition:transform .35s var(--ease-out),box-shadow .35s var(--ease-out)}
.tbc-conv__foto{position:relative;aspect-ratio:4/3;overflow:hidden;background:#222}
.tbc-conv__foto img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s var(--ease-out)}
.tbc-conv__foto:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.6) 0%,rgba(0,0,0,0) 45%)}
.tbc-conv__num{position:absolute;left:1.1rem;bottom:.85rem;z-index:1;color:#fff;font-stretch:62%;font-weight:800;font-size:clamp(3.5rem,5.5vw,4.75rem);line-height:.8;letter-spacing:-.02em}
.tbc-conv .tbc-chip{position:absolute;top:1rem;left:1rem;z-index:1;margin:0}
.tbc-conv__cuerpo{display:flex;flex-direction:column;flex:1;padding:1.35rem 1.35rem 1.4rem}
.tbc-conv__cuerpo h3{font-weight:800;font-size:1.5rem;line-height:1.08;letter-spacing:-.02em;margin:0 0 1rem}
.tbc-meta{list-style:none;margin:0 0 1.4rem;padding:0;display:grid;gap:.55rem}
.tbc-meta li{display:flex;gap:.6rem;align-items:center;margin:0;font-size:.97rem;color:var(--grafito)}
.tbc-meta .tbc-ico{color:var(--cobalto);width:1.15rem;height:1.15rem}
.tbc-conv__ir{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:1rem;border-top:1px solid var(--linea);font-weight:600}
.tbc-conv__ir i{display:grid;place-items:center;width:2.4rem;height:2.4rem;border-radius:50%;background:var(--negro);color:#fff;transition:background-color .2s ease,transform .35s var(--ease-out)}
.tbc-conv__ir i .tbc-ico{width:1.05rem;height:1.05rem}
@media (hover:hover) and (pointer:fine){
  .tbc .tbc-conv:hover{transform:translateY(-4px);box-shadow:0 22px 44px -26px rgba(0,0,0,.5)}
  .tbc-conv:hover .tbc-conv__foto img{transform:scale(1.05)}
  .tbc-conv:hover .tbc-conv__ir i{background:var(--cobalto);transform:rotate(-45deg)}
}
@media (max-width:980px){.tbc-convs{grid-template-columns:1fr 1fr}.tbc-convs>:last-child:nth-child(odd){grid-column:1/-1}}
@media (max-width:640px){.tbc-convs{grid-template-columns:1fr}}

/* ==== Cinta de fotos en movimiento ==== */
.tbc-cintas{display:grid;gap:clamp(.75rem,1.5vw,1.25rem);overflow:hidden}
.tbc-cinta{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.tbc-cinta__pista{display:flex;gap:clamp(.75rem,1.5vw,1.25rem);width:max-content}
.tbc-anim .tbc-cinta.lista .tbc-cinta__pista{animation:tbc-desfile var(--dur,80s) linear infinite}
.tbc-anim .tbc-cinta--inversa.lista .tbc-cinta__pista{animation-direction:reverse}
@keyframes tbc-desfile{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.tbc-cinta.parada .tbc-cinta__pista{animation-play-state:paused!important}
@media (hover:hover) and (pointer:fine){.tbc-cinta:hover .tbc-cinta__pista{animation-play-state:paused!important}}
.tbc-cinta figure{margin:0;flex:none;position:relative}
.tbc-cinta .tbc-foto{border-radius:6px;overflow:hidden}
.tbc-cinta img{height:clamp(12rem,22vw,19rem);width:auto;display:block}
.tbc-cinta figcaption{position:absolute;left:0;right:0;bottom:0;padding:2.5rem .9rem .75rem;border-radius:0 0 6px 6px;background:linear-gradient(0deg,rgba(0,0,0,.8),rgba(0,0,0,0));color:#fff;font-size:.82rem;line-height:1.3;pointer-events:none;opacity:0;transform:translateY(6px);transition:opacity .25s ease,transform .3s var(--ease-out)}
.tbc-cinta figcaption b{display:block;font-family:var(--serif);font-style:italic;font-weight:400;font-size:1.2rem;line-height:1.1}
.tbc-cinta figure:focus-within figcaption{opacity:1;transform:none}
@media (hover:hover) and (pointer:fine){.tbc-cinta figure:hover figcaption{opacity:1;transform:none}}
@media (hover:none){.tbc-cinta figcaption{opacity:1;transform:none}}
.tbc-cinta-ctl{display:flex;justify-content:flex-end;margin-top:1rem}
.tbc-cinta-ctl button{appearance:none;background:none;border:1px solid var(--linea-osc);color:inherit;border-radius:999px;padding:.5rem .95rem;font:600 .85rem "Archivo",sans-serif;cursor:pointer}
@media (prefers-reduced-motion:reduce){.tbc-cinta{overflow-x:auto;-webkit-mask-image:none;mask-image:none}.tbc-cinta-ctl{display:none}}

/* ==== Cifras ==== */
.tbc-cifras{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0;padding:0;list-style:none}
.tbc-cifras li{margin:0;padding:.25rem clamp(1rem,2.5vw,2rem)}
.tbc-cifras li:first-child{padding-left:0}
.tbc-cifras li+li{border-left:1px solid rgba(255,255,255,.22)}
.tbc-cifras b{display:block;font-weight:800;font-stretch:100%;font-size:clamp(3rem,6vw,5.25rem);line-height:.9;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.tbc-cifras b small{font-size:.5em;letter-spacing:-.02em;margin-left:.05em}
.tbc-cifras span{display:block;margin-top:.7rem;font-size:1rem;line-height:1.35;color:rgba(255,255,255,.78);max-width:20ch}
@media (max-width:860px){.tbc-cifras{grid-template-columns:1fr 1fr;row-gap:2rem}.tbc-cifras li:nth-child(3){padding-left:0;border-left:0}}

/* ==== Tarjetas con icono ==== */
/* Tarjetas con dibujo animado (mismo lenguaje que los pasos): negras sobre fondo claro, translúcidas sobre negro */
.tbc-tarjetas{display:grid;grid-template-columns:repeat(var(--cols,3),minmax(0,1fr));gap:clamp(.75rem,1.4vw,1.1rem);margin:0;padding:0;list-style:none}
.tbc-tarjeta{margin:0;display:flex}
.tbc-tarjeta__ico{display:grid;place-items:center;width:2.6rem;height:2.6rem;margin-bottom:1.15rem;border-radius:.6rem;background:rgba(227,178,60,.1);box-shadow:inset 0 0 0 1px rgba(227,178,60,.35),0 0 22px -4px rgba(227,178,60,.45);color:var(--antimonio)}
.tbc-tarjeta__ico .tbc-ico{width:1.2rem;height:1.2rem}
.tbc .tbc-tarjeta h3{margin:0 0 .4rem;color:#fff;font-weight:700;font-size:1.2rem;line-height:1.2;letter-spacing:-.01em}
.tbc .tbc-tarjeta__txt{margin:0;color:rgba(255,255,255,.68);font-size:.98rem;line-height:1.5}
@media (max-width:980px){.tbc-tarjetas{--cols:2!important}}
@media (max-width:560px){.tbc-tarjetas{--cols:1!important}}

/* ==== Premios ==== */
/* Premios: mismo lenguaje que las tarjetas animadas, con el color de cada medalla (--medalla) */
.tbc-premios{display:grid;grid-template-columns:repeat(var(--cols,3),minmax(0,1fr));gap:clamp(.75rem,1.4vw,1.1rem);margin:0;padding:0;list-style:none}
.tbc-premio{margin:0;display:flex}
.tbc-premio__in:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--medalla)}
.tbc-premios .tbc-premio__in:after{background:radial-gradient(130% 75% at 100% 100%,color-mix(in srgb,var(--medalla) 30%,transparent),transparent 62%)}
.tbc-premio__ico{display:grid;place-items:center;width:2.6rem;height:2.6rem;border-radius:.6rem;color:var(--medalla);background:color-mix(in srgb,var(--medalla) 12%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--medalla) 40%,transparent),0 0 22px -4px color-mix(in srgb,var(--medalla) 55%,transparent)}
.tbc-premio__ico .tbc-ico{width:1.2rem;height:1.2rem}
.tbc .tbc-premio__cifra{display:block;margin:1.3rem 0 .55rem;color:#fff;font-weight:800;font-size:clamp(3rem,4.6vw,4.2rem);line-height:.9;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.tbc-premio__cifra small{margin-left:.06em;font-size:.5em;letter-spacing:0;color:var(--medalla)}
.tbc .tbc-premio strong{display:block;margin-bottom:.2rem;color:#fff;font-size:1.12rem;line-height:1.2}
.tbc-premio__txt{display:block;color:rgba(255,255,255,.68);font-size:.97rem;line-height:1.45}
.tbc-premio .tbc-arte .md{stroke:var(--medalla)}
.tbc-premio .tbc-arte .mdf{fill:var(--medalla);stroke:none}
.tbc-premio .tbc-arte text{fill:var(--medalla);font:800 10px/1 "Archivo",sans-serif}
.tbc-premio .tbc-arte .a-reflejo{stroke:rgba(255,255,255,.55);stroke-width:3;opacity:0}
.tbc-premio__in:hover .tbc-arte .c{stroke:var(--medalla)}
@media (max-width:860px){.tbc-premios{--cols:2!important}}
@media (max-width:480px){.tbc-premios{--cols:1!important}}

/* ==== Pasos (secuencia real) ==== */
/* Cómo participar: pasos en tarjetas oscuras, cada uno con un dibujo de fotografía que se traza al entrar y luego se mueve en bucle */
.tbc-pasos{counter-reset:paso;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--cols,4),minmax(0,1fr));gap:clamp(.75rem,1.4vw,1.1rem)}
.tbc-paso{counter-increment:paso;margin:0;display:flex}
.tbc-paso__in,.tbc-tarjeta__in,.tbc-premio__in,.tbc-evento__in{position:relative;isolation:isolate;flex:1;overflow:hidden;padding:1.4rem 1.35rem 7rem;border-radius:var(--radio);background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px rgba(255,255,255,.09);transition:transform .35s var(--ease-out),box-shadow .35s ease}
.tbc-paso__in:after,.tbc-tarjeta__in:after,.tbc-premio__in:after,.tbc-evento__in:after{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(130% 75% at 100% 100%,rgba(85,119,255,.28),rgba(85,119,255,0) 62%);opacity:.6;transition:opacity .35s ease}
/* El número entra desenfocado y se enfoca, como al girar el anillo de enfoque */
.tbc-paso__in:before{content:counter(paso,decimal-leading-zero);display:block;font-weight:800;font-stretch:62%;font-size:3.4rem;line-height:.8;color:var(--cobalto-vivo);margin-bottom:1.25rem;transition:filter .9s var(--ease-out) calc(var(--d,0ms) + 150ms),opacity .9s var(--ease-out) calc(var(--d,0ms) + 150ms)}
.tbc-anim .tbc-paso:not(.tbc-visible) .tbc-paso__in:before{filter:blur(9px);opacity:.25}
.tbc-paso__ico{position:absolute;top:1.25rem;right:1.25rem;display:grid;place-items:center;width:2.6rem;height:2.6rem;border-radius:.6rem;background:rgba(227,178,60,.1);box-shadow:inset 0 0 0 1px rgba(227,178,60,.35),0 0 22px -4px rgba(227,178,60,.45);color:var(--antimonio)}
.tbc-paso__ico .tbc-ico{width:1.2rem;height:1.2rem}
.tbc .tbc-paso strong{display:block;font-size:1.12rem;line-height:1.2;margin-bottom:.45rem;color:#fff}
.tbc-paso__txt{display:block;color:rgba(255,255,255,.68);font-size:.97rem;line-height:1.5;overflow-wrap:anywhere}
.tbc-arte{position:absolute;right:.35rem;bottom:.35rem;z-index:-1;width:11rem;height:auto;overflow:visible;color:rgba(255,255,255,.34);pointer-events:none;transition:color .35s ease}
.tbc-arte *{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.tbc-arte .c{stroke:var(--cobalto-vivo)}
.tbc-arte .m{stroke:var(--antimonio);stroke-width:2}
.tbc-arte .r,.tbc-arte .a-progreso{fill:var(--antimonio);stroke:none}
.tbc-arte .p{stroke-width:2.6;stroke-dasharray:2.5 4.5;stroke-linecap:butt;opacity:.55}
.tbc-arte text{fill:rgba(255,255,255,.82);stroke:none;font:700 9px/1 "Archivo",sans-serif}
.tbc-arte .a-clic{fill:#fff;stroke:none;opacity:0}
.tbc-arte .a-destello,.tbc-arte .a-viaje,.tbc-arte .a-diapo2,.tbc-arte .a-pagina,.tbc-arte .a-rayos{opacity:0}
.tbc-arte .luz{fill:var(--antimonio);stroke:none;opacity:.1}
.tbc-arte .a-pop{fill:var(--antimonio);stroke:none;opacity:0}
.tbc-arte [pathLength]{stroke-dasharray:1;stroke-dashoffset:0;transition:stroke-dashoffset 1.5s var(--ease-out) calc(var(--d,0ms) + 300ms),stroke .35s ease}
.tbc-anim [data-tbc]:not(.tbc-visible) .tbc-arte [pathLength]{stroke-dashoffset:1}
/* Sobre fondo claro la tarjeta es negra; sobre negro, translúcida */
.tbc-tarjeta__in,.tbc-premio__in,.tbc-evento__in{background:var(--negro);box-shadow:0 22px 40px -30px rgba(0,0,0,.65)}
.tbc-oscuro .tbc-tarjeta__in,.tbc-oscuro .tbc-premio__in,.tbc-oscuro .tbc-evento__in{background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px rgba(255,255,255,.09)}
@media (hover:hover) and (pointer:fine){
.tbc-paso__in:hover,.tbc-tarjeta__in:hover,.tbc-premio__in:hover,.tbc-evento__in:hover{transform:translateY(-4px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18),0 26px 44px -30px rgba(85,119,255,.7)}
.tbc-paso__in:hover:after,.tbc-tarjeta__in:hover:after,.tbc-premio__in:hover:after,.tbc-evento__in:hover:after{opacity:1}
.tbc-paso__in:hover .tbc-arte,.tbc-tarjeta__in:hover .tbc-arte,.tbc-premio__in:hover .tbc-arte,.tbc-evento__in:hover .tbc-arte{color:rgba(255,255,255,.75)}
.tbc-paso__in:hover .tbc-arte .c,.tbc-tarjeta__in:hover .tbc-arte .c,.tbc-evento__in:hover .tbc-arte .c{stroke:var(--antimonio)}
}
/* Bucles: arrancan cuando el dibujo ya está trazado y se pausan fuera de pantalla (.tbc-quieto, tbc-sitio.js) */
.tbc-visible .a-led{animation:tbc-led 4.5s steps(1,end) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-destello{transform-box:fill-box;transform-origin:center;animation:tbc-destello 4.5s var(--ease-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-iris{transform-origin:112px 68px;animation:tbc-iris 4s var(--ease-in-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-clic{animation:tbc-clic 4s ease-out calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-lupa{animation:tbc-lupa 6s var(--ease-in-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-marca{animation:tbc-marca 6s var(--ease-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-sube{animation:tbc-sube 3.6s var(--ease-in-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-sube--2{animation-delay:calc(var(--d,0ms) + 3.6s)}
.tbc-visible .a-progreso{transform-box:fill-box;transform-origin:0 50%;animation:tbc-progreso 3.6s var(--ease-in-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-estela{animation:tbc-estela 1.4s linear infinite}
.tbc-visible .a-sobre{transform-origin:140px 37px;animation:tbc-sobre 3.2s var(--ease-in-out) infinite}
.tbc-visible .a-viaje{animation:tbc-viaje 3.2s linear calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-cae{animation:tbc-cae 5s var(--ease-in-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-cierre{animation:tbc-cierre 5s var(--ease-in-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-tirador{animation:tbc-tirador 5s var(--ease-in-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-tecleo{transform-box:fill-box;transform-origin:0 50%;animation:tbc-tecleo 5s steps(12,end) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-cursor{animation:tbc-cursor 5s steps(12,end) calc(var(--d,0ms) + 1.8s) infinite,tbc-parpadeo .9s steps(1,end) infinite}
.tbc-visible .a-check{animation:tbc-check 5s var(--ease-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-check--2{animation-delay:calc(var(--d,0ms) + 2.4s)}
.tbc-visible .a-check--3{animation-delay:calc(var(--d,0ms) + 3s)}
.tbc-visible .a-enviar{transform-box:fill-box;transform-origin:center;animation:tbc-enviar 5s var(--ease-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-af{transform-origin:108px 75px;animation:tbc-af 4s var(--ease-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-af path{animation:tbc-af-color 4s steps(1,end) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-foco{animation:tbc-foco 4s steps(1,end) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-onda{animation:tbc-onda 3s var(--ease-in-out) infinite alternate}
.tbc-visible .a-gana{animation:tbc-gana 1.6s var(--ease-in-out) calc(var(--d,0ms) + 1.8s) infinite alternate}
.tbc-visible .a-brillo{transform-box:fill-box;transform-origin:center;animation:tbc-brillo 3.2s var(--ease-in-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-diapo1{animation:tbc-diapo1 7s ease calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-diapo2{animation:tbc-diapo2 7s ease calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-laser{animation:tbc-laser 7s var(--ease-in-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-sale{animation:tbc-sale 5s var(--ease-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-revela{animation:tbc-revela 5s ease calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-flashv{animation:tbc-flashv 5s steps(1,end) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-vuelo{animation:tbc-vuelo 7s linear calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-vuelo--2{animation-delay:calc(var(--d,0ms) + 3s)}
.tbc-visible .a-alas{transform-box:fill-box;transform-origin:center;animation:tbc-alas .7s var(--ease-in-out) infinite alternate}
.tbc-visible .a-cuelga{transform-box:fill-box;transform-origin:50% 0;animation:tbc-cuelga 3.4s var(--ease-in-out) infinite alternate}
.tbc-visible .a-cuelga--2{animation-delay:-1.1s}
.tbc-visible .a-cuelga--3{animation-delay:-2.2s}
.tbc-visible .a-latido{transform-box:fill-box;transform-origin:center;animation:tbc-latido 1.6s var(--ease-out) infinite}
.tbc-visible .a-pin{animation:tbc-pin 2.8s var(--ease-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-ping{transform-box:fill-box;transform-origin:center;animation:tbc-ping 2.8s var(--ease-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-luz{animation:tbc-luz 6s ease calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-luz--2{animation-delay:calc(var(--d,0ms) + 2.4s)}
.tbc-visible .a-luz--3{animation-delay:calc(var(--d,0ms) + 3s)}
.tbc-visible .a-pagina{transform-origin:108px 95px;animation:tbc-pagina 5s var(--ease-in-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-fotogramas{animation:tbc-fotogramas 2.4s linear infinite}
.tbc-visible .a-perfo{animation:tbc-estela 1.4s linear infinite}
.tbc-visible .a-frontal{animation:tbc-frontal 3.2s var(--ease-in-out) calc(var(--d,0ms) + 1.8s) infinite alternate}
.tbc-visible .a-fuelle{transform-origin:128px 58px;animation:tbc-fuelle 3.2s var(--ease-in-out) calc(var(--d,0ms) + 1.8s) infinite alternate}
.tbc-visible .a-pop{animation:tbc-pop 4.2s ease-out calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-rayos{transform-box:fill-box;transform-origin:50% 100%;animation:tbc-destello 4.2s var(--ease-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-cono{animation:tbc-cono 5s ease calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-escarapela{transform-origin:138px 40px;animation:tbc-escarapela 3.2s var(--ease-in-out) infinite alternate}
.tbc-visible .a-reflejo{animation:tbc-reflejo 5s var(--ease-in-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-brillo--2{animation-delay:calc(var(--d,0ms) + 3.4s)}
/* Agenda cultural: dibujos por tipo de actividad */
.tbc-arte .a-reflejo{stroke:rgba(255,255,255,.55);stroke-width:3;opacity:0}
.tbc-arte .a-eco{opacity:.42}.tbc-arte .a-eco--2{opacity:.2}
.tbc-arte .a-voz{opacity:.35}
.tbc-arte .a-golpe{opacity:0}
.tbc-arte .a-claqueta{transform-origin:69.5px 50px;transform:rotate(-16deg)}
.tbc-visible .a-brazo{transform-origin:107px 79px;animation:tbc-brazo-i 5s var(--ease-in-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-brazo--d{animation-name:tbc-brazo-d}
.tbc-visible .a-nota{animation:tbc-nota 4s var(--ease-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-nota--2{animation-delay:calc(var(--d,0ms) + 3.6s)}
.tbc-visible .a-eco{animation:tbc-eco 2.4s var(--ease-in-out) infinite alternate}
.tbc-visible .a-eco--2{animation-name:tbc-eco-2;animation-delay:-1.2s}
.tbc-visible .a-claqueta{animation:tbc-claqueta 4s var(--ease-in-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-golpe{animation:tbc-golpe 4s ease-out calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-voz{animation:tbc-voz 2.4s ease-in-out calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-voz--2{animation-delay:calc(var(--d,0ms) + 2.1s)}
.tbc-visible .a-voz--3{animation-delay:calc(var(--d,0ms) + 2.4s)}
.tbc-visible .a-renglon{animation:tbc-renglon 6s var(--ease-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-renglon--2{animation-name:tbc-renglon-2}
.tbc-visible .a-renglon--3{animation-name:tbc-renglon-3}
.tbc-visible .a-plumilla{animation:tbc-plumilla 6s linear calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-marioneta{transform-origin:112px 19px;animation:tbc-marioneta 2.2s var(--ease-in-out) -1.1s infinite alternate}
.tbc-visible .a-entrada{transform-origin:109px 70px;animation:tbc-sobre 3.2s var(--ease-in-out) infinite}
.tbc-visible .tbc-arte--telemetrica .a-rayos{animation-duration:4s;animation-delay:calc(var(--d,0ms) + 1.04s)}
.tbc-visible .a-vasija{transform-origin:108px 102px;animation:tbc-vasija 2.6s var(--ease-in-out) infinite alternate}
/* Exposición en la Escuela de Arte: la copia sale de la impresora, el cuadro se endereza, se tachan las semanas, pasa el catálogo */
.tbc-visible .a-copia{animation:tbc-copia 4.8s var(--ease-in-out) calc(var(--d,0ms) + 1.8s) infinite backwards}
.tbc-visible .a-cabezal{animation:tbc-cabezal 4.8s var(--ease-in-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-endereza{transform-origin:110px 21px;animation:tbc-endereza 5s var(--ease-in-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-burbuja{animation:tbc-burbuja 5s var(--ease-in-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-semanas{animation:tbc-semanas 6s linear calc(var(--d,0ms) + 1.8s) infinite backwards}
.tbc-visible .a-paginas{animation:tbc-paginas 7.5s var(--ease-in-out) calc(var(--d,0ms) + 1.8s) infinite}
.tbc-visible .a-punto{animation:tbc-punto 7.5s var(--ease-in-out) calc(var(--d,0ms) + 1.8s) infinite}
@keyframes tbc-copia{0%{transform:translateY(-44px);opacity:1}55%,86%{transform:translateY(0);opacity:1}96%,100%{transform:translateY(0);opacity:0}}
@keyframes tbc-cabezal{0%,18%,36%,55%,100%{transform:translateX(0)}9%,27%,45%{transform:translateX(34px)}}
@keyframes tbc-endereza{0%,100%{transform:rotate(-6deg)}38%{transform:rotate(1.5deg)}52%,82%{transform:rotate(0)}}
@keyframes tbc-burbuja{0%,100%{transform:translateX(-7px)}38%{transform:translateX(2px)}52%,82%{transform:translateX(0)}}
@keyframes tbc-semanas{0%{stroke-dashoffset:1;opacity:1}58%,86%{stroke-dashoffset:0;opacity:1}96%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes tbc-paginas{0%,22%{transform:translateX(0)}33%,55%{transform:translateX(-64px)}66%,88%{transform:translateX(-128px)}100%{transform:translateX(-192px)}}
@keyframes tbc-punto{0%,22%{transform:translateX(0)}33%,55%{transform:translateX(8px)}66%,88%{transform:translateX(16px)}100%{transform:translateX(0)}}
.tbc-dos+.tbc-tarjetas{margin-top:clamp(2.5rem,5vw,4rem)}
.tbc-quieto .tbc-arte *{animation-play-state:paused!important}
@keyframes tbc-led{0%,10%,20%,30%,38%,46%,52%,57%,61%,64%{opacity:1}5%,15%,25%,34%,42%,49%,54.5%,59%,62.5%{opacity:.12}66%,100%{opacity:1}}
@keyframes tbc-destello{0%,64%{opacity:0;transform:scale(.6)}67%{opacity:1;transform:scale(1)}80%,100%{opacity:0;transform:scale(1.15)}}
@keyframes tbc-iris{0%,15%{transform:rotate(0) scale(1)}40%,52%{transform:rotate(-34deg) scale(.86)}78%,100%{transform:rotate(0) scale(1)}}
@keyframes tbc-clic{0%,42%{opacity:0}45%{opacity:.45}60%,100%{opacity:0}}
@keyframes tbc-lupa{0%,6%{transform:translate(0,0)}22%{transform:translate(27px,0)}36%,64%{transform:translate(27px,24px)}80%{transform:translate(54px,48px)}92%,100%{transform:translate(0,0)}}
@keyframes tbc-marca{0%,38%{stroke-dashoffset:1;opacity:1}52%,84%{stroke-dashoffset:0;opacity:1}92%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes tbc-sube{0%{transform:translateY(10px);opacity:0}15%,70%{opacity:1}100%{transform:translateY(-42px);opacity:0}}
@keyframes tbc-progreso{0%{transform:scaleX(0)}85%,100%{transform:scaleX(1)}}
@keyframes tbc-estela{to{stroke-dashoffset:-14}}
@keyframes tbc-sobre{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-3px) rotate(-4deg)}}
@keyframes tbc-viaje{0%{transform:translate(0,0);opacity:0}8%{opacity:1}30%{transform:translate(35.5px,-13px)}55%{transform:translate(62px,-32px)}72%{transform:translate(83.75px,-44.25px)}86%{transform:translate(98px,-64px);opacity:1}92%,100%{transform:translate(98px,-64px);opacity:0}}
@keyframes tbc-cae{0%{transform:translateY(-6px);opacity:0}10%{opacity:1}30%{transform:translateY(30px);opacity:1}36%,100%{transform:translateY(34px);opacity:0}}
@keyframes tbc-cierre{0%,36%{stroke-dashoffset:1;opacity:1}66%,90%{stroke-dashoffset:0;opacity:1}96%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes tbc-tirador{0%,36%{transform:translateY(-34px);opacity:1}66%,90%{transform:translateY(0);opacity:1}96%,100%{transform:translateY(0);opacity:0}}
@keyframes tbc-tecleo{0%{transform:scaleX(0)}50%,90%{transform:scaleX(1)}93%,100%{transform:scaleX(0)}}
@keyframes tbc-cursor{0%{transform:translateX(-61px)}50%,90%{transform:translateX(0)}93%,100%{transform:translateX(-61px)}}
@keyframes tbc-parpadeo{0%{opacity:1}50%{opacity:0}}
@keyframes tbc-check{0%,10%{stroke-dashoffset:1;opacity:1}22%,80%{stroke-dashoffset:0;opacity:1}88%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes tbc-enviar{0%,62%{transform:none}68%{transform:scale(1.1)}76%,100%{transform:none}}
@keyframes tbc-escarapela{from{transform:rotate(-5deg)}to{transform:rotate(5deg)}}
@keyframes tbc-reflejo{0%,55%{transform:translateX(0);opacity:0}62%{opacity:.6}80%,100%{transform:translateX(30px);opacity:0}}
@keyframes tbc-af{0%{transform:scale(1.3);opacity:.35}30%{transform:scale(.94);opacity:1}38%,86%{transform:scale(1);opacity:1}100%{transform:scale(1.3);opacity:.35}}
@keyframes tbc-af-color{0%{stroke:var(--cobalto-vivo)}38%{stroke:var(--antimonio)}88%{stroke:var(--cobalto-vivo)}}
@keyframes tbc-foco{0%{opacity:0}38%{opacity:1}42%{opacity:.2}46%{opacity:1}88%{opacity:0}}
@keyframes tbc-onda{to{transform:translateX(4px)}}
@keyframes tbc-gana{to{transform:translateY(-4px)}}
@keyframes tbc-brillo{0%,100%{transform:scale(.3) rotate(0);opacity:0}45%{transform:scale(1) rotate(45deg);opacity:1}70%{transform:scale(.6) rotate(90deg);opacity:0}}
@keyframes tbc-diapo1{0%,44%{opacity:1}50%,94%{opacity:0}100%{opacity:1}}
@keyframes tbc-diapo2{0%,44%{opacity:0}50%,94%{opacity:1}100%{opacity:0}}
@keyframes tbc-laser{0%,4%{transform:translate(0,0)}20%{transform:translate(16px,-5px)}36%,46%{transform:translate(38px,-23px)}54%,90%{transform:translate(26px,-16.6px)}100%{transform:translate(0,0)}}
@keyframes tbc-sale{0%,8%{transform:translateY(-36px);opacity:1}34%,88%{transform:translateY(0);opacity:1}95%{transform:translateY(0);opacity:0}100%{transform:translateY(-36px);opacity:0}}
@keyframes tbc-revela{0%,36%{opacity:0}70%,88%{opacity:1}95%,100%{opacity:0}}
@keyframes tbc-flashv{0%{fill:transparent}3%{fill:var(--antimonio)}9%{fill:transparent}}
@keyframes tbc-vuelo{0%{transform:translate(-10px,6px);opacity:0}12%{opacity:1}50%{transform:translate(28px,-4px)}85%{opacity:1}100%{transform:translate(64px,2px);opacity:0}}
@keyframes tbc-alas{to{transform:scaleY(.35)}}
@keyframes tbc-cuelga{0%{transform:rotate(-3deg)}100%{transform:rotate(3deg)}}
@keyframes tbc-latido{0%,40%,100%{transform:scale(1)}12%{transform:scale(1.18)}24%{transform:scale(1.05)}32%{transform:scale(1.12)}}
@keyframes tbc-pin{0%{transform:translateY(-10px);opacity:0}12%{opacity:1}30%{transform:translateY(0)}38%{transform:translateY(-3px)}46%,100%{transform:translateY(0)}}
@keyframes tbc-ping{0%,28%{transform:scale(.3);opacity:0}32%{opacity:.9}70%,100%{transform:scale(1.9);opacity:0}}
@keyframes tbc-luz{0%,8%{opacity:0}14%,78%{opacity:.16}90%,100%{opacity:0}}
@keyframes tbc-pagina{0%,12%{transform:scaleX(1);opacity:0}18%{opacity:1}52%{transform:scaleX(-1);opacity:1}68%,100%{transform:scaleX(-1);opacity:0}}
@keyframes tbc-fotogramas{to{transform:translateX(24px)}}
@keyframes tbc-frontal{to{transform:translateX(-10px)}}
@keyframes tbc-fuelle{to{transform:scaleX(1.3125)}}
@keyframes tbc-pop{0%,62%{opacity:0}66%{opacity:.6}82%,100%{opacity:0}}
@keyframes tbc-cono{0%,10%{opacity:0}14%{opacity:.18}17%{opacity:.06}21%,80%{opacity:.16}92%,100%{opacity:0}}
@keyframes tbc-brazo-i{0%,30%{transform:rotate(0)}45%,72%{transform:rotate(115deg)}88%,100%{transform:rotate(0)}}
@keyframes tbc-brazo-d{0%,30%{transform:rotate(0)}45%,72%{transform:rotate(-115deg)}88%,100%{transform:rotate(0)}}
@keyframes tbc-nota{0%{transform:translate(0,0);opacity:1}55%{transform:translate(7px,-20px);opacity:0}56%{transform:translate(-5px,12px);opacity:0}100%{transform:translate(0,0);opacity:1}}
@keyframes tbc-eco{from{opacity:.42}to{opacity:.08}}
@keyframes tbc-eco-2{from{opacity:.2}to{opacity:.04}}
@keyframes tbc-claqueta{0%,40%{transform:rotate(-16deg)}46%,62%{transform:rotate(0)}82%,100%{transform:rotate(-16deg)}}
@keyframes tbc-golpe{0%,45%{opacity:0}47%{opacity:1}60%,100%{opacity:0}}
@keyframes tbc-voz{0%,100%{opacity:.35}30%{opacity:1}}
@keyframes tbc-renglon{0%,6%{stroke-dashoffset:1;opacity:1}24%,86%{stroke-dashoffset:0;opacity:1}94%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes tbc-renglon-2{0%,26%{stroke-dashoffset:1;opacity:1}44%,86%{stroke-dashoffset:0;opacity:1}94%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes tbc-renglon-3{0%,46%{stroke-dashoffset:1;opacity:1}64%,86%{stroke-dashoffset:0;opacity:1}94%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes tbc-plumilla{0%{transform:translate(0,0)}6%{transform:translate(-34px,3px)}24%{transform:translate(-2px,3px)}26%{transform:translate(-34px,9px)}44%{transform:translate(-6px,9px)}46%{transform:translate(-34px,15px)}64%{transform:translate(-3px,15px)}80%,100%{transform:translate(0,0)}}
@keyframes tbc-marioneta{from{transform:rotate(-5deg)}to{transform:rotate(5deg)}}
@keyframes tbc-vasija{to{transform:scale(1.06,.9)}}
@media (max-width:1180px){.tbc-pasos--5{--cols:3!important}}
@media (max-width:980px){.tbc-pasos{--cols:2!important}}
@media (max-width:560px){.tbc-pasos{--cols:1!important}.tbc-paso__in,.tbc-tarjeta__in,.tbc-premio__in,.tbc-evento__in{padding-bottom:6.5rem}}
@media (prefers-reduced-motion:reduce){
.tbc-arte *{animation:none!important}
.tbc-arte [pathLength]{transition:none!important}
.tbc-anim [data-tbc]:not(.tbc-visible) .tbc-arte [pathLength]{stroke-dashoffset:0}
.tbc-anim .tbc-paso:not(.tbc-visible) .tbc-paso__in:before{filter:none;opacity:1}
}

/* ==== Calendario: línea de tiempo ==== */
/* Un carrete de negativos que se desenrolla con el scroll: la película es el :before de la lista y el rollo, su :after.
   tbc-sitio.js pone --avance (0-1) en la lista y --r (0-1, cuánto se ve de cada fotograma) en cada hito.
   Sin JS (o en el editor) se ve la película entera y las fotos en positivo */
.elementor-section.tbc{--tbc-fondo:var(--papel)}
.elementor-section.tbc-blanco{--tbc-fondo:var(--blanco)}
.tbc-linea{--pelicula:8rem;--perfo:var(--tbc-fondo,var(--papel));counter-reset:hito;position:relative;isolation:isolate;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--cols,6),minmax(0,1fr));gap:0}
.tbc-linea:before{content:"";position:absolute;z-index:0;top:0;left:0;right:0;height:var(--pelicula);border-radius:3px;background:linear-gradient(90deg,var(--perfo) 0 50%,transparent 0) calc(var(--avance,1) * -6.6rem) .4rem/1.1rem .4rem repeat-x,linear-gradient(90deg,var(--perfo) 0 50%,transparent 0) calc(var(--avance,1) * -6.6rem) calc(100% - .4rem)/1.1rem .4rem repeat-x,#000}
.tbc-linea:after{content:"";position:absolute;z-index:3;top:-.4rem;left:calc(var(--avance,1) * 100%);width:calc(2.5rem - var(--avance,1) * 1.2rem);height:calc(var(--pelicula) + .8rem);transform:translateX(-50%);border-radius:.45rem;background:linear-gradient(90deg,#000 0,#3a3a3a 28%,#6e6e6e 42%,#2a2a2a 58%,#000 100%);box-shadow:inset 0 .4rem 0 #1d1d1d,inset 0 -.4rem 0 #1d1d1d,6px 0 14px -6px rgba(0,0,0,.45);opacity:0;pointer-events:none;transition:opacity .4s ease}
.tbc-hito{counter-increment:hito;position:relative;margin:0;padding:calc(var(--pelicula) + 1.15rem) 1.25rem 0 0}
.tbc-hito__foto{position:absolute;z-index:1;top:1.25rem;left:.3rem;right:.3rem;height:5.25rem;overflow:hidden;border-radius:2px;background:#1c1c1c;box-shadow:0 0 0 1px rgba(255,255,255,.14)}
.tbc-hito__foto img{display:block;width:100%;height:100%;object-fit:cover;transition:filter 1s var(--ease-out)}
.tbc-hito__foto:after{content:"";position:absolute;inset:0;background:#fff;opacity:0;pointer-events:none}
/* número de fotograma impreso en el borde, como en los negativos */
.tbc-hito:before{content:counter(hito) " \25B8";position:absolute;z-index:1;top:6.75rem;left:.45rem;font-weight:700;font-size:.56rem;line-height:1;letter-spacing:.08em;color:var(--antimonio);transition:opacity .5s var(--ease-out)}
.tbc-hito__borde{position:absolute;z-index:1;top:6.75rem;right:.45rem;font-weight:700;font-size:.56rem;line-height:1;letter-spacing:.14em;white-space:nowrap;color:var(--antimonio);opacity:.7;transition:opacity .5s var(--ease-out)}
.tbc-hito time{display:block;font-weight:800;font-size:1.3rem;line-height:1.1;letter-spacing:-.015em;margin-bottom:.45rem}
.tbc-hito strong{display:block;font-size:1rem;margin-bottom:.25rem}
.tbc-hito__txt{display:block;color:var(--grafito);font-size:.94rem;line-height:1.45}
/* «Ahora» y «Próximo»: una etiqueta pegada sobre el fotograma */
.tbc-hito em{position:absolute;z-index:3;top:1.6rem;left:.65rem;margin:0;display:inline-block;font-style:normal;font-size:.72rem;font-weight:700;line-height:1.1;background:var(--antimonio);color:var(--negro);border-radius:999px;padding:.25rem .55rem;transition:opacity .5s var(--ease-out)}
/* Animado: la película se descubre tras el rollo, cada fotograma sale en negativo y se revela con un destello */
.tbc-linea--viva:after{opacity:1}
.tbc-linea--viva.tbc-linea--completa:after{opacity:0}
.tbc-linea--viva:before{clip-path:inset(0 calc(100% - var(--avance,0) * 100%) 0 0)}
.tbc-linea--viva .tbc-hito__foto{clip-path:inset(0 calc((1 - var(--r,0)) * 100%) 0 0)}
.tbc-linea--viva .tbc-hito:not(.revelado) .tbc-hito__foto img{filter:invert(1) grayscale(1) contrast(1.15)}
.tbc-linea--viva .tbc-hito.revelado .tbc-hito__foto:after{animation:tbc-revelado .8s var(--ease-out)}
.tbc-linea--viva .tbc-hito>time,.tbc-linea--viva .tbc-hito>strong,.tbc-linea--viva .tbc-hito>.tbc-hito__txt{transition:opacity .5s var(--ease-out)}
.tbc-linea--viva .tbc-hito:not(.revelado)>time,.tbc-linea--viva .tbc-hito:not(.revelado)>strong,.tbc-linea--viva .tbc-hito:not(.revelado)>.tbc-hito__txt,.tbc-linea--viva .tbc-hito:not(.revelado)>em,.tbc-linea--viva .tbc-hito:not(.revelado):before{opacity:.35}
.tbc-linea--viva .tbc-hito:not(.revelado)>em,.tbc-linea--viva .tbc-hito:not(.revelado):before,.tbc-linea--viva .tbc-hito:not(.revelado)>.tbc-hito__borde{opacity:0}
@keyframes tbc-revelado{0%{opacity:.95}100%{opacity:0}}
/* Móvil: la película baja en vertical por la izquierda y el texto va a su lado */
@media (max-width:980px){
.tbc-linea{--pelicula:7.2rem;grid-template-columns:1fr}
.tbc-linea:before{right:auto;bottom:0;width:var(--pelicula);height:auto;background:linear-gradient(180deg,var(--perfo) 0 50%,transparent 0) .4rem calc(var(--avance,1) * -6.6rem)/.4rem 1.1rem repeat-y,linear-gradient(180deg,var(--perfo) 0 50%,transparent 0) calc(100% - .4rem) calc(var(--avance,1) * -6.6rem)/.4rem 1.1rem repeat-y,#000}
.tbc-linea--viva:before{clip-path:inset(0 0 calc(100% - var(--avance,0) * 100%) 0)}
.tbc-linea:after{top:calc(var(--avance,1) * 100%);left:-.4rem;width:calc(var(--pelicula) + .8rem);height:calc(2.5rem - var(--avance,1) * 1.2rem);transform:translateY(-50%);background:linear-gradient(180deg,#000 0,#3a3a3a 28%,#6e6e6e 42%,#2a2a2a 58%,#000 100%);box-shadow:inset .4rem 0 0 #1d1d1d,inset -.4rem 0 0 #1d1d1d,0 6px 14px -6px rgba(0,0,0,.45)}
.tbc-hito{min-height:6.4rem;padding:.35rem 0 1.6rem calc(var(--pelicula) + 1.1rem)}
.tbc-hito__foto{top:.9rem;left:1.15rem;right:auto;width:4.9rem;height:3.25rem}
.tbc-hito__borde{display:none}
.tbc-linea--viva .tbc-hito__foto{clip-path:inset(0 0 calc((1 - var(--r,0)) * 100%) 0)}
.tbc-hito:before{top:4.45rem;left:1.2rem}
.tbc-hito em{position:static;margin:0 0 .45rem}
}
@media (prefers-reduced-motion:reduce){.tbc-hito__foto img,.tbc-linea--viva .tbc-hito>*,.tbc-hito:before,.tbc-linea:after{transition:none}.tbc-linea--viva .tbc-hito.revelado .tbc-hito__foto:after{animation:none}}

/* ==== Fotos de la experiencia (exposición, talleres) ==== */
.tbc-dos{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,5vw,5rem);align-items:center}
.tbc-dos--57{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start}
@media (max-width:980px){.tbc-dos,.tbc-dos--57{grid-template-columns:1fr}}
.tbc-mosaico{display:grid;grid-template-columns:1.25fr 1fr;grid-template-rows:1fr 1fr;gap:.75rem;aspect-ratio:5/4;position:relative}
.tbc-mosaico figure{margin:0;border-radius:var(--radio);overflow:hidden;position:relative;background:#222}
.tbc-mosaico figure:first-child{grid-row:1/3}
.tbc-mosaico img{width:100%;height:100%;object-fit:cover;display:block}
.tbc-mosaico figcaption{position:absolute;left:.75rem;bottom:.75rem;right:.75rem;color:#fff;font-size:.8rem;line-height:1.3;text-shadow:0 1px 8px rgba(0,0,0,.6)}
.tbc-sello{position:absolute;left:-1rem;top:1.5rem;z-index:1;background:var(--antimonio);color:var(--negro);border-radius:var(--radio);padding:.9rem 1.1rem;box-shadow:0 18px 40px -20px rgba(0,0,0,.6);max-width:13rem}
.tbc-sello b{display:block;font-weight:800;font-size:1.6rem;line-height:1;letter-spacing:-.02em}
.tbc-sello span{display:block;font-size:.85rem;line-height:1.3;margin-top:.3rem}
@media (max-width:767px){.tbc-sello{left:.6rem;top:.6rem}}
.tbc-rasgos{list-style:none;margin:2rem 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:1.5rem 1.75rem}
.tbc-rasgos li{margin:0;display:grid;grid-template-columns:auto 1fr;gap:.9rem;align-items:start}
.tbc-rasgos strong{display:block;font-size:1.05rem;line-height:1.25;margin:.15rem 0 .25rem}
.tbc-rasgos li>div>span{display:block;color:var(--grafito);font-size:.95rem;line-height:1.45}
.tbc-oscuro .tbc-rasgos li>div>span{color:rgba(255,255,255,.66)}
@media (max-width:560px){.tbc-rasgos{grid-template-columns:1fr}}

/* ==== Cuadros enmarcados (llamada final) ==== */
.tbc-cta{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(2rem,5vw,5rem);align-items:center}
.tbc-cta .tbc-t2{color:#fff;max-width:14ch}
.tbc-cuadros{position:relative;width:100%;max-width:38rem;aspect-ratio:4/3;justify-self:center}
.tbc-cuadro{position:absolute;margin:0;background:#fff;padding:clamp(.45rem,.8vw,.75rem);box-shadow:0 30px 60px -28px rgba(0,0,0,.65);transition:transform .5s var(--ease-out)}
.tbc-cuadro img{display:block;width:100%;height:auto}
.tbc-cuadro:nth-child(1){left:2%;top:14%;width:30%;transform:rotate(-5deg)}
.tbc-cuadro:nth-child(2){left:30%;top:3%;width:40%;transform:rotate(2deg);z-index:1}
.tbc-cuadro:nth-child(3){right:2%;top:20%;width:30%;transform:rotate(6deg)}
@media (hover:hover) and (pointer:fine){.tbc-cuadros:hover .tbc-cuadro{transform:rotate(0)}}
@media (max-width:980px){.tbc-cta{grid-template-columns:1fr}}
.tbc-contacto-mini{display:flex;flex-wrap:wrap;gap:.6rem 1.75rem;margin-top:1.75rem;font-size:.98rem}
.tbc-contacto-mini a{display:inline-flex;align-items:center;gap:.5rem;text-decoration:none!important;font-weight:600}
.tbc-cobalto .tbc-contacto-mini .tbc-ico,.tbc-oscuro .tbc-contacto-mini .tbc-ico{color:var(--antimonio)}

/* ==== Preguntas frecuentes y bases (acordeón de Elementor) ==== */
.tbc-acordeon .elementor-widget-wrap{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:1.5rem clamp(2rem,5vw,5rem);align-items:start}
.tbc-acordeon .elementor-widget-wrap>.elementor-widget{margin:0!important}
@media (max-width:980px){.tbc-acordeon .elementor-widget-wrap{grid-template-columns:1fr}}
.tbc .elementor-accordion{display:grid;gap:.6rem}
.tbc .elementor-accordion .elementor-accordion-item{background:var(--blanco);border:0!important;border-radius:var(--radio);overflow:hidden;box-shadow:0 1px 0 var(--linea)}
.tbc-blanco .elementor-accordion .elementor-accordion-item{background:var(--papel);box-shadow:none}
.tbc .elementor-accordion .elementor-accordion-title{position:relative;display:block;font-weight:600;font-size:1.06rem;line-height:1.35;padding:1.15rem 3.75rem 1.15rem 1.35rem!important;border:0!important;color:var(--negro);background:transparent;cursor:pointer;transition:color .2s ease}
.tbc .elementor-accordion .elementor-accordion-title .elementor-accordion-icon{display:none}
.tbc .elementor-accordion .elementor-accordion-title:after{content:"";position:absolute;right:1.1rem;top:50%;width:1.9rem;height:1.9rem;margin-top:-.95rem;border-radius:50%;background:var(--papel) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center/1rem no-repeat;transition:transform .25s var(--ease-out),background-color .2s ease}
.tbc-blanco .elementor-accordion .elementor-accordion-title:after{background-color:var(--blanco)}
.tbc .elementor-accordion .elementor-accordion-title.active:after{transform:rotate(45deg);background-color:var(--antimonio)}
.tbc .elementor-accordion .elementor-accordion-content{padding:0 1.35rem 1.35rem!important;border:0!important;max-width:70ch;line-height:1.6;color:var(--grafito);font-size:1rem}
.tbc .elementor-accordion .elementor-accordion-content ul,.tbc .elementor-accordion .elementor-accordion-content ol{padding-left:1.15rem}
@media (hover:hover) and (pointer:fine){.tbc .elementor-accordion .elementor-accordion-title:hover{color:var(--cobalto)}}

/* ==== Archivo ==== */
.elementor-section.tbc-archivo{background:var(--negro)!important;color:#fff}
.tbc-archivo .tbc-html,.tbc-archivo .elementor-text-editor{color:#fff}
.tbc-archivo a{color:#fff}
.tbc-anios{display:flex;flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;font-size:.95rem}
.tbc-anios li{margin:0}
.tbc-anios a,.tbc-anios span{display:inline-block;padding:.45rem .8rem;border-radius:999px;border:1px solid var(--linea-osc);text-decoration:none!important;font-weight:600;color:#fff;transition:background-color .2s ease,color .2s ease}
.tbc-anios .vacio span{opacity:.4;font-weight:500}
@media (hover:hover) and (pointer:fine){.tbc-anios a:hover{background:#fff;color:var(--negro)}}
.tbc-anios--claro a,.tbc-anios--claro span{color:var(--negro);border-color:var(--linea)}
@media (hover:hover) and (pointer:fine){.tbc-anios--claro a:hover{background:var(--negro);color:#fff}}
.tbc-tira{display:flex;gap:1rem;overflow-x:auto;padding-bottom:.75rem;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.4) transparent}
.tbc-tira figure{margin:0;flex:0 0 auto;scroll-snap-align:start;max-width:80vw}
.tbc-tira img{height:16rem;width:auto;display:block}
.tbc-tira figcaption,.tbc-rejilla figcaption{font-size:.84rem;line-height:1.35;margin-top:.6rem;max-width:26ch;color:rgba(255,255,255,.7)}
.tbc-tira figcaption,.tbc-rejilla figcaption{font-family:var(--serif)!important;font-style:italic;font-size:1.08rem;color:#fff}
.tbc-tira figcaption span,.tbc-rejilla figcaption span{display:block;font-family:"Archivo",sans-serif;font-style:normal;font-size:.8rem;color:rgba(255,255,255,.62);margin-top:.1rem}
.tbc-rejilla{display:flex;flex-wrap:wrap;gap:1rem}
.tbc-rejilla figure{margin:0;flex-grow:var(--r);flex-basis:calc(var(--r) * 12.5rem)}
.tbc-rejilla .tbc-foto{border-radius:6px}
.tbc-rejilla img{width:100%;height:12.5rem;object-fit:cover;display:block}
.tbc-rejilla:after{content:"";flex-grow:999}
.tbc-subtitulo{font-weight:700;font-size:1.15rem;line-height:1.15;margin:2.25rem 0 1rem;color:inherit;display:flex;align-items:center;gap:.6rem}
.tbc-subtitulo:before{content:"";width:.5rem;height:.5rem;border-radius:50%;background:var(--antimonio)}
.tbc-subtitulo:first-of-type{margin-top:0}
.tbc-anio-t{font-stretch:62%;font-weight:800;font-size:clamp(4rem,8vw,6.5rem);line-height:.8;letter-spacing:-.02em;margin:0 0 1.25rem;color:var(--antimonio)}
.tbc-ancla{display:block;position:relative;top:-7rem;visibility:hidden}
.tbc-anual-rejilla .elementor-widget-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.3fr);column-gap:clamp(1.5rem,4vw,3.5rem)}
.tbc-anual-rejilla .elementor-widget-wrap>.elementor-widget{margin:0!important;padding:3rem 0;border-top:1px solid var(--linea-osc)}
.tbc-anual-texto .elementor-text-editor{font-size:.98rem;line-height:1.55;color:rgba(255,255,255,.8)}
.tbc-anual-texto .elementor-text-editor strong{color:#fff}
.tbc-anual-texto .elementor-text-editor ul{padding-left:1.1rem;margin:.25rem 0 1rem}

@media (max-width:767px){.tbc-anual-rejilla .elementor-widget-wrap{grid-template-columns:1fr}.tbc-anual-rejilla .elementor-widget-wrap>.tbc-anual-galeria{border-top:0;padding-top:0}.tbc-tira img{height:12rem}.tbc-rejilla img{height:9rem}.tbc-rejilla figure{flex-basis:calc(var(--r) * 9rem)}}
.tbc-foto{display:block;background:#1a1a1a}
.tbc-js .tbc-foto img{opacity:0;transition:opacity .45s var(--ease-out),transform .6s var(--ease-out)}
.tbc-js .tbc-foto img.cargada{opacity:1}
@media (hover:hover) and (pointer:fine){.tbc-rejilla .tbc-foto:hover img.cargada,.tbc-tira .tbc-foto:hover img.cargada{transform:scale(1.04)}}
.tbc-faltan{border:1px dashed rgba(255,255,255,.4);border-radius:var(--radio);padding:1.5rem;max-width:60ch}
.tbc-faltan h3{font-size:1.15rem;margin:0 0 .4rem}
.tbc-faltan p{margin:0;color:rgba(255,255,255,.75)}

/* Talleres del año: tarjetas a sangre, la foto manda y el texto va encima */
.tbc-talleres{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.75rem,1.2vw,1rem)}
.tbc-taller{position:relative;margin:0;aspect-ratio:3/4;border-radius:var(--radio);overflow:hidden;background:var(--negro);isolation:isolate}
.tbc-taller--color{background:var(--cobalto)}
.tbc .tbc-html .tbc-talleres a.tbc-taller__enlace{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(1rem,1.5vw,1.35rem);color:#fff;text-decoration:none;background:none;box-shadow:none;border-radius:var(--radio)}
.tbc .tbc-html .tbc-talleres a.tbc-taller__enlace:focus-visible{outline:3px solid var(--antimonio);outline-offset:-3px}
.tbc-taller img{position:absolute;inset:0;z-index:-2;display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:var(--foco,50% 50%);transition:transform .9s var(--ease-out)}
.tbc-taller__enlace:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(0,0,0,.5) 0,rgba(0,0,0,0) 24%,rgba(0,0,0,0) 40%,rgba(0,0,0,.62) 66%,rgba(0,0,0,.92) 100%)}
.tbc-taller__ico{position:absolute;top:clamp(.85rem,1.3vw,1.1rem);left:clamp(.85rem,1.3vw,1.1rem);display:grid;place-items:center;width:2.6rem;height:2.6rem;border-radius:50%;background:rgba(0,0,0,.32);box-shadow:inset 0 0 0 1px rgba(255,255,255,.3);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.tbc-taller__ico .tbc-ico{width:1.15rem;height:1.15rem}
.tbc-taller__texto{display:block}
.tbc .tbc-taller h3{color:#fff;font-weight:800;font-size:clamp(1.15rem,1.45vw,1.4rem);line-height:1.15;letter-spacing:-.015em;text-wrap:balance}
.tbc-taller__quien{display:block;margin-top:.3rem;font-family:var(--serif);font-style:italic;font-size:clamp(1.15rem,1.45vw,1.35rem);line-height:1.2;color:rgba(255,255,255,.88)}
.tbc-taller__pie{display:flex;align-items:center;gap:.5rem;margin-top:.9rem;padding-top:.8rem;border-top:1px solid rgba(255,255,255,.22);font-size:.8rem;font-weight:600;line-height:1.2;color:rgba(255,255,255,.82)}
.tbc-taller__pie>.tbc-ico{flex:none;width:1rem;height:1rem}
.tbc-taller__ir{flex:none;margin-left:auto;display:grid;place-items:center;width:2.1rem;height:2.1rem;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(255,255,255,.4);color:#fff;transition:background-color .2s ease,box-shadow .2s ease,color .2s ease,transform .16s var(--ease-out)}
.tbc-taller__ir .tbc-ico{width:1rem;height:1rem}
.tbc-taller__enlace:active .tbc-taller__ir{transform:scale(.92)}
.tbc-taller__credito{position:absolute;top:1.15rem;right:1rem;left:4.25rem;z-index:1;text-align:right;font-size:.68rem;line-height:1.3;color:rgba(255,255,255,.8);text-shadow:0 1px 2px rgba(0,0,0,.45);pointer-events:none}
.tbc-talleres__pista{display:none}
@media (hover:hover) and (pointer:fine){.tbc-taller:hover img{transform:scale(1.05)}.tbc-taller:hover .tbc-taller__ir{background:var(--antimonio);box-shadow:none;color:var(--negro)}}
@media (max-width:1100px){.tbc-talleres{grid-template-columns:repeat(2,minmax(0,1fr))}.tbc-taller{aspect-ratio:4/3}}
@media (max-width:900px){.tbc-taller{aspect-ratio:1/1}}
/* Móvil: carrusel que se desliza con el dedo, asomando la siguiente tarjeta */
@media (max-width:700px){
.tbc-talleres{display:flex;gap:.75rem;margin:0 calc(var(--margen) * -1);padding:0 var(--margen) .25rem;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding:0 var(--margen);scrollbar-width:none}
.tbc-talleres::-webkit-scrollbar{display:none}
.tbc-taller{flex:0 0 80%;aspect-ratio:4/5;scroll-snap-align:start}
.tbc .tbc-talleres__pista{display:flex;align-items:center;gap:.5rem;margin:.9rem 0 0!important;font-size:.85rem;color:var(--grafito)}
.tbc-talleres__pista:after{content:"";width:1.5rem;height:1px;background:currentColor}
}
@media (prefers-reduced-motion:reduce){.tbc-taller img{transition:none}.tbc-taller:hover img{transform:none}}

/* Quiénes nos acompañan: logos en un único tono y con el mismo peso visual */
.tbc-patrocinio{display:grid;gap:clamp(1.5rem,3vw,2.25rem)}
.tbc-patrocinio__grupo{display:grid;grid-template-columns:minmax(0,15rem) minmax(0,1fr);gap:1rem clamp(1.5rem,4vw,3.5rem);align-items:start;padding-top:clamp(1.25rem,2.5vw,1.75rem);border-top:1px solid var(--linea)}
.tbc-patrocinio__cab h3{font-weight:800;font-size:1.25rem;line-height:1.2;letter-spacing:-.015em;margin:0 0 .35rem!important}
.tbc-patrocinio__cab p{margin:0!important;color:var(--grafito);font-size:.95rem;line-height:1.45}
.tbc-logos{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(10.5rem,1fr));gap:.75rem}
.tbc-logo{container-type:inline-size;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.7rem;min-height:9.25rem;padding:1.25rem .9rem 1rem;background:var(--blanco);border-radius:var(--radio);box-shadow:0 1px 0 var(--linea);text-align:center;transition:transform .3s var(--ease-out),box-shadow .3s var(--ease-out)}
/* Cada logo lleva su anchura en em (1em = tamaño real a 16px): bajar el font-size los escala a todos por igual */
.tbc-logo__marca{display:flex;align-items:center;justify-content:center;width:100%;height:3.9em;font-size:16px;font-size:min(16px,9.6cqi)}
.tbc-logo__marca img{display:block;max-width:100%;height:auto;opacity:.88;transition:opacity .2s ease}
.tbc-logo__nombre{display:block;font-size:.76rem;line-height:1.3;font-weight:600;color:var(--grafito)}
/* Con web: el nombre es el enlace y cubre toda la tarjeta; solo estas se levantan al pasar el ratón */
.tbc-logo--web{position:relative}
.tbc .tbc-html .tbc-logo--web a.tbc-logo__nombre{color:var(--grafito);background:none;padding:0;text-decoration:none;transition:color .2s ease}
.tbc .tbc-html .tbc-logo--web a.tbc-logo__nombre:after{content:"";position:absolute;inset:0;border-radius:var(--radio)}
.tbc .tbc-html .tbc-logo--web a.tbc-logo__nombre:focus-visible{outline:none}
.tbc-logo--web:has(a:focus-visible){outline:3px solid var(--antimonio);outline-offset:3px}
.tbc-logo--web:active{transform:scale(.98)}
@media (hover:hover) and (pointer:fine){.tbc-logo--web:hover{transform:translateY(-2px);box-shadow:0 1px 0 var(--linea),0 16px 30px -22px rgba(0,0,0,.4)}.tbc-logo--web:hover .tbc-logo__marca img{opacity:1}.tbc .tbc-html .tbc-logo--web:hover a.tbc-logo__nombre{color:var(--negro)}}
@media (max-width:860px){.tbc-patrocinio__grupo{grid-template-columns:1fr}}
@media (max-width:480px){.tbc-logos{grid-template-columns:repeat(2,minmax(0,1fr))}.tbc-logo{min-height:8.25rem;padding:1rem .6rem .85rem}}

/* Datos de contacto y mapa */
/* Una sola pieza: panel negro con las vías de contacto y el mapa en azul noche (filtro sobre el mapa de Google) */
.tbc-contacto .elementor-row{display:grid!important;grid-template-columns:minmax(0,5fr) minmax(0,7fr);border-radius:var(--radio);overflow:hidden;background:var(--negro);box-shadow:0 34px 70px -46px rgba(0,0,0,.55)}
.tbc-contacto .elementor-column{width:auto!important;min-width:0}
.tbc-contacto .elementor-column-wrap,.tbc-contacto .elementor-widget-wrap{height:100%;padding:0!important}
.tbc-contacto .elementor-widget{margin:0!important}
.tbc-contacto .elementor-widget-html,.tbc-contacto .elementor-widget-html>.elementor-widget-container,.tbc-contacto .elementor-widget-html .tbc-html{height:100%}
.tbc-contacto .elementor-column:last-child{position:relative;min-height:26rem;background:#1b2233}
.tbc-contacto .tbc-mapa{position:absolute!important;inset:0}
.tbc-contacto .tbc-mapa .elementor-widget-container,.tbc-contacto .tbc-mapa .elementor-custom-embed{height:100%}
.tbc-contacto .tbc-mapa iframe{display:block;width:100%;height:100%!important;border:0;filter:grayscale(1) invert(.92) sepia(.6) hue-rotate(185deg) saturate(2.6) brightness(.9) contrast(1.1)}
/* Botón «Cómo llegar» sobre el mapa: arriba a la derecha, la esquina que dejan libre los controles de Google */
.tbc-contacto .elementor-widget-html.tbc-mapa-ir{position:absolute!important;top:1rem;right:1rem;z-index:2;width:auto;height:auto}
.tbc-contacto .elementor-widget-html.tbc-mapa-ir>.elementor-widget-container{height:auto}
.tbc-mapa-ir .tbc-btn{box-shadow:0 12px 28px -12px rgba(0,0,0,.75)}
/* Móvil: la ficha de Google ocupa casi todo el ancho del mapa; el botón pasa a una franja propia debajo, a lo ancho */
@media (max-width:560px){.tbc-contacto .elementor-column:last-child{padding-bottom:4.6rem}.tbc-contacto .tbc-mapa{bottom:4.6rem}.tbc-contacto .elementor-widget-html.tbc-mapa-ir{top:auto;bottom:.9rem;left:1rem;right:1rem}.tbc-mapa-ir .tbc-btn{width:100%;box-shadow:none}}
.tbc-contacto__panel{height:100%;box-sizing:border-box;display:flex;flex-direction:column;gap:clamp(1.5rem,2.6vw,2rem);padding:clamp(1.5rem,3vw,2.6rem);color:#fff}
.tbc-vias{list-style:none;margin:0;padding:0}
.tbc-vias li{margin:0;border-top:1px solid rgba(255,255,255,.14)}
.tbc-vias li:first-child{border-top:0}
.tbc .tbc-html .tbc-vias a.tbc-via{display:flex;align-items:center;gap:1rem;padding:1.05rem 0;color:#fff;background:none;text-decoration:none}
.tbc .tbc-html .tbc-vias li:first-child a.tbc-via{padding-top:0}
.tbc-via__ico{flex:none;display:grid;place-items:center;width:2.9rem;height:2.9rem;border-radius:50%;background:rgba(255,255,255,.08);color:var(--antimonio)}
.tbc-via__ico .tbc-ico{width:1.25rem;height:1.25rem}
.tbc-via__txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:.1rem}
.tbc-via__txt small{font-size:.78rem;font-weight:600;line-height:1.3;color:rgba(255,255,255,.6)}
.tbc-via__txt strong{font-weight:700;font-size:clamp(1.1rem,1.65vw,1.55rem);line-height:1.15;letter-spacing:-.015em}
.tbc-via__txt span{font-size:.88rem;line-height:1.4;color:rgba(255,255,255,.7)}
.tbc-via__accion{flex:none;display:inline-flex;align-items:center;gap:.6rem;font-size:.85rem;font-weight:600;color:rgba(255,255,255,.85)}
.tbc-via__ir{display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(255,255,255,.35);transition:background-color .2s ease,box-shadow .2s ease,color .2s ease,transform .16s var(--ease-out)}
.tbc-via__ir .tbc-ico{width:1rem;height:1rem}
.tbc-via:active .tbc-via__ir{transform:scale(.92)}
.tbc-contacto__temas p{margin:0 0 .8rem!important;font-size:.9rem;line-height:1.45;color:rgba(255,255,255,.68)}
.tbc-contacto__temas p strong{display:block;margin-bottom:.15rem;font-size:1rem;color:#fff}
.tbc-temas{display:flex;flex-wrap:wrap;gap:.5rem}
.tbc .tbc-html a.tbc-tema{display:inline-flex;align-items:center;padding:.5rem .95rem;border-radius:999px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.3);background:none;color:#fff;font-size:.86rem;font-weight:600;line-height:1.2;text-decoration:none;transition:background-color .2s ease,color .2s ease,box-shadow .2s ease}
.tbc-redes{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1.4rem;margin-top:auto;padding-top:1.25rem;border-top:1px solid rgba(255,255,255,.14)}
.tbc-redes>span{font-size:.85rem;font-weight:600;color:rgba(255,255,255,.6)}
.tbc .tbc-html a.tbc-red{display:inline-flex;align-items:center;gap:.5rem;background:none;color:#fff;font-size:.92rem;font-weight:600;text-decoration:none}
.tbc-red .tbc-ico{width:1.15rem;height:1.15rem;color:var(--antimonio)}
@media (hover:hover) and (pointer:fine){
.tbc-via:hover .tbc-via__ir{background:var(--antimonio);box-shadow:none;color:var(--negro)}
.tbc .tbc-html a.tbc-tema:hover{background:var(--antimonio);box-shadow:none;color:var(--negro)}
.tbc .tbc-html a.tbc-red:hover{color:var(--antimonio)}
}
@media (max-width:980px){.tbc-contacto .elementor-row{grid-template-columns:1fr}.tbc-contacto .elementor-column:last-child{min-height:22rem}}
@media (max-width:480px){.tbc-via__que{display:none}.tbc .tbc-html .tbc-vias a.tbc-via{gap:.8rem}.tbc-via__ico{width:2.5rem;height:2.5rem}}

/* Visor de fotos */
.tbc-lb{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;background:rgba(10,10,10,0);transition:background-color .2s ease;font-family:"Archivo",sans-serif}
.tbc-lb.abierto{background:rgba(10,10,10,.94)}
.tbc-lb figure{margin:0;max-width:92vw;text-align:center;color:#fff}
.tbc-lb img{max-width:92vw;max-height:82vh;width:auto;height:auto;transform-origin:0 0}
.tbc-lb figcaption{margin-top:.8rem;font-size:.95rem;opacity:0;transition:opacity .2s ease .1s}
.tbc-lb.abierto figcaption{opacity:.9}
.tbc-lb button{position:absolute;background:none;border:0;color:#fff;font-size:2.4rem;line-height:1;padding:1rem;cursor:pointer}
.tbc-lb .cerrar{top:.5rem;right:.75rem}.tbc-lb .ant{left:.5rem;top:50%;transform:translateY(-50%)}.tbc-lb .sig{right:.5rem;top:50%;transform:translateY(-50%)}
@media (prefers-reduced-motion:reduce){.tbc-foto img{transition-duration:.15s}.tbc .elementor-button,.tbc-btn,.tbc-conv,.tbc-cuadro{transition:none}.tbc-chip--vivo:before{animation:none}}
/* Carteles y foto de grupo en la columna del año (no son obras del concurso) */
.tbc-cartel-anio{margin:1.75rem 0 0;max-width:16rem}
.tbc-cartel-anio+.tbc-cartel-anio{margin-top:1.25rem}
.tbc-cartel-anio .tbc-foto{border-radius:6px;overflow:hidden}
.tbc-cartel-anio img{display:block;width:100%;height:auto}
.tbc-cartel-anio figcaption{margin-top:.5rem;font-size:.82rem;line-height:1.35;color:rgba(255,255,255,.62)}
@media (max-width:767px){.tbc-cartel-anio{max-width:12rem}}
/* ==== Envío de fotografías del Maratón ==== */
.tbc-subida{background:var(--blanco);border-radius:var(--radio);padding:clamp(1.25rem,3vw,2rem);box-shadow:0 1px 0 var(--linea)}
.tbc-subida__aviso p{margin:0 0 .6rem}.tbc-subida__aviso p:last-child{margin:0}
.tbc-subida__campos{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.25rem;margin-bottom:1.25rem}
.tbc-subida label{display:block;font-weight:600;font-size:.92rem}
.tbc-subida__campos input{display:block;width:100%;margin-top:.4rem;font:400 1rem "Archivo",sans-serif;padding:.8rem .9rem;border:1px solid var(--linea);border-radius:8px;background:var(--papel);color:var(--negro);transition:border-color .2s ease,box-shadow .2s ease}
.tbc-subida__campos input:focus{outline:0;border-color:var(--cobalto);box-shadow:0 0 0 3px rgba(30,60,154,.15)}
.tbc-subida__trampa{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.tbc-subida__zona{position:relative;display:grid!important;place-items:center;text-align:center;gap:.3rem;padding:1.75rem 1rem;border:2px dashed var(--linea);border-radius:var(--radio);background:var(--papel);cursor:pointer;transition:border-color .2s ease,background-color .2s ease}
.tbc-subida__zona input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}
.tbc-subida__zona strong{font-size:1.1rem}
.tbc-subida__zona span{font-weight:400;color:var(--grafito);font-size:.92rem}
.tbc-subida__zona.encima,.tbc-subida__zona:focus-within{border-color:var(--cobalto);background:rgba(30,60,154,.05)}
@media (hover:hover) and (pointer:fine){.tbc-subida__zona:hover{border-color:var(--cobalto)}}
.tbc-subida__lista{list-style:none;margin:1rem 0 0;padding:0;display:grid;gap:.5rem}
.tbc-subida__lista li{display:grid;grid-template-columns:3.5rem 1fr auto;gap:.85rem;align-items:center;margin:0;padding:.5rem;border-radius:8px;background:var(--papel)}
.tbc-subida__lista img{width:3.5rem;height:3.5rem;object-fit:cover;border-radius:6px;display:block}
.tbc-subida__lista strong{display:block;font-size:.95rem}
.tbc-subida__lista span{display:block;font-size:.84rem;color:var(--grafito)}
.tbc-subida__lista li.error span{color:#b42318}
.tbc-subida__lista li.ok strong:after{content:" ✓";color:#1a7f37}
.tbc-subida__lista li>button{appearance:none;border:0;background:none;font-size:1.4rem;line-height:1;padding:.25rem .5rem;color:var(--grafito);cursor:pointer}
.tbc-subida__barra{display:block;height:3px;margin-top:.4rem;background:var(--linea);border-radius:3px;overflow:hidden}
.tbc-subida__barra b{display:block;height:100%;background:var(--cobalto);transform-origin:left;transition:transform .4s var(--ease-out)}
.tbc-subida__acepto{display:flex!important;gap:.6rem;align-items:flex-start;font-weight:400!important;margin:1.25rem 0 0;color:var(--grafito)}
.tbc-subida__acepto input{margin-top:.2rem;width:1.1rem;height:1.1rem;accent-color:var(--cobalto);flex:none}
/* El texto va en un solo <span>: suelto, cada trozo y el enlace eran columnas de la caja flexible */
.tbc-subida__acepto span{flex:1;min-width:0;line-height:1.5}
.tbc .tbc-subida__acepto a{color:var(--cobalto);font-weight:600;text-decoration:underline;text-underline-offset:.18em;background:none}
.tbc-subida__acciones{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;margin-top:1.25rem}
.tbc-subida__acciones .tbc-btn{background:var(--cobalto);color:#fff!important}
.tbc-subida__acciones .tbc-btn:disabled{background:var(--linea);color:var(--grafito)!important;cursor:not-allowed;transform:none}
.tbc-subida__acciones .tbc-btn[aria-busy="true"]{background:var(--cobalto);color:#fff!important;opacity:.6;cursor:wait}
.tbc-subida__plazo{display:flex;gap:.85rem;align-items:flex-start;margin:0 0 1.5rem!important;padding:1rem 1.1rem;border-radius:8px;background:rgba(227,178,60,.16);border-left:4px solid var(--antimonio)}
.tbc-subida__plazo:before{content:"";flex:none;width:.6rem;height:.6rem;margin-top:.45rem;border-radius:50%;background:var(--antimonio)}
.tbc-subida__plazo strong{display:block;font-size:1rem;line-height:1.3}
.tbc-subida__plazo>span{display:block}
.tbc-subida__plazo span span{display:block;font-size:.92rem;color:var(--grafito);margin-top:.15rem}
.tbc-subida__plazo--abierto{background:rgba(26,127,55,.08);border-left-color:#1a7f37}
.tbc-subida__plazo--abierto:before{background:#1a7f37}
.tbc-subida__plazo--cerrado{background:var(--papel);border-left-color:var(--gris-medio)}
.tbc-subida__plazo--cerrado:before{background:var(--gris-medio)}
.tbc-subida__estado{margin:0!important;font-weight:600}
.tbc-subida.enviado .tbc-subida__estado{color:#1a7f37}
@media (max-width:640px){.tbc-subida__campos{grid-template-columns:1fr}}
.tbc-subida__anonimo{margin:1.25rem 0 0!important;font-size:.92rem;color:var(--grafito);padding-left:.9rem;border-left:2px solid var(--linea)}
/* ==== Aviso legal, privacidad y cookies ==== */
.elementor-section.tbc-legal-seccion{padding:clamp(3.5rem,8vw,6rem) 0 clamp(2.5rem,5vw,4rem)}
.tbc-legal-cab .tbc-t1{color:#fff;max-width:none}
.tbc-legal-cab .tbc-lead{margin:1.25rem 0 0;color:rgba(255,255,255,.74)}
.tbc-legal{display:grid;grid-template-columns:13rem minmax(0,1fr);gap:clamp(2rem,5vw,5rem);align-items:start}
.tbc-legal__nav{position:sticky;top:calc(var(--cab,5.5rem) + 1.5rem)}
.tbc-legal__nav p{margin:0 0 .75rem!important;font-weight:700;font-size:.9rem;color:var(--grafito)}
.tbc-legal__nav ol{list-style:none;margin:0;padding:0;border-left:2px solid var(--linea)}
.tbc-legal__nav li{margin:0}
.tbc-legal__nav a{display:block;padding:.45rem 0 .45rem 1rem;margin-left:-2px;border-left:2px solid transparent;color:var(--negro)!important;text-decoration:none!important;font-weight:600;background:none!important;transition:border-color .2s ease,color .2s ease}
@media (hover:hover) and (pointer:fine){.tbc-legal__nav a:hover{border-left-color:var(--cobalto);color:var(--cobalto)!important}}
.tbc-legal__texto{max-width:72ch;font-size:1.0625rem;line-height:1.65}
.tbc-legal__texto [id]{scroll-margin-top:calc(var(--cab,5.5rem) + 1.5rem)}
.tbc-legal__texto h2{font-weight:800;font-size:clamp(1.9rem,3.4vw,2.6rem);line-height:1.05;letter-spacing:-.03em;margin:3.5rem 0 1.25rem!important}
.tbc-legal__texto h2:first-child{margin-top:0!important}
.tbc-legal__texto h3{font-weight:700;font-size:1.2rem;line-height:1.25;margin:2.25rem 0 .6rem!important}
.tbc-legal__texto p,.tbc-legal__texto li{color:#2a2a29}
.tbc-legal__texto ul{padding-left:1.2rem;margin:0 0 1em}
.tbc-legal__texto li{margin:0 0 .6rem}
.tbc-legal__datos{display:grid;margin:1.25rem 0 0;border-top:1px solid var(--linea)}
.tbc-legal__datos div{display:grid;grid-template-columns:11rem minmax(0,1fr);gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--linea)}
.tbc-legal__datos dt{font-weight:700}
.tbc-legal__datos dd{margin:0}
.tbc-legal__fichas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem}
.tbc-legal__ficha{background:var(--blanco);border-radius:var(--radio);padding:1.25rem 1.3rem;box-shadow:0 1px 0 var(--linea)}
.tbc-legal__ficha h4{font-weight:800;font-size:1.08rem;line-height:1.25;margin:0 0 .75rem;color:var(--cobalto)}
.tbc-legal__ficha dl{margin:0}
.tbc-legal__ficha dl div{margin:0 0 .6rem}
.tbc-legal__ficha dl div:last-child{margin:0}
.tbc-legal__ficha dt{font-weight:700;font-size:.86rem}
.tbc-legal__ficha dd{margin:.1rem 0 0;font-size:.95rem;line-height:1.5;color:var(--grafito)}
@media (max-width:980px){.tbc-legal{grid-template-columns:1fr}.tbc-legal__nav{position:static}.tbc-legal__nav ol{display:flex;flex-wrap:wrap;gap:.5rem;border:0}.tbc-legal__nav a{border:1px solid var(--linea);border-radius:999px;padding:.4rem .9rem;margin:0}.tbc-legal__fichas{grid-template-columns:1fr}}
@media (max-width:560px){.tbc-legal__datos div{grid-template-columns:1fr;gap:.15rem}}
/* ==== Jornadas anteriores: una tarjeta por edición ==== */
.tbc-ediciones{display:grid;gap:clamp(1rem,2vw,1.5rem)}
.tbc-ediciones__resto{columns:3 18rem;column-gap:clamp(1rem,2vw,1.5rem)}
.tbc-ediciones__resto .tbc-edicion{break-inside:avoid;margin:0 0 clamp(1rem,2vw,1.5rem)}
.tbc-edicion{display:flex;flex-direction:column;background:var(--blanco);border-radius:var(--radio);overflow:hidden;box-shadow:0 1px 0 var(--linea),0 22px 40px -34px rgba(0,0,0,.45)}
.tbc-edicion--destacada{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr)}
.tbc-edicion__cab{position:relative;aspect-ratio:16/10;overflow:hidden;background:#111;color:#fff;display:flex;align-items:flex-end;padding:1.1rem 1.25rem;isolation:isolate}
.tbc-edicion--destacada .tbc-edicion__cab{aspect-ratio:auto;min-height:24rem}
.tbc-edicion__cab img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .8s var(--ease-out)}
.tbc-edicion__cab:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.15) 45%,rgba(0,0,0,0) 70%)}
.tbc-edicion__cab .tbc-chip{position:absolute;top:1rem;left:1rem;margin:0}
.tbc-edicion__num{font-stretch:62%;font-weight:800;font-size:clamp(3.6rem,5.5vw,5rem);line-height:.8;letter-spacing:-.02em;color:#fff}
.tbc-edicion--destacada .tbc-edicion__num{font-size:clamp(4.5rem,8vw,7rem)}
.tbc-edicion__credito{position:absolute;right:.8rem;bottom:.7rem;font-size:.72rem;color:rgba(255,255,255,.78)}
/* Ediciones sin foto: azul cobalto con un diafragma grande de fondo */
.tbc-edicion__cab--color{background:var(--cobalto)}
.tbc-edicion__cab--color:after{display:none}
.tbc-edicion__cab--color .tbc-edicion__num{color:var(--antimonio)}
.tbc-edicion__cab--color>.tbc-ico{position:absolute;right:-12%;top:-18%;width:70%;height:auto;aspect-ratio:1;color:rgba(255,255,255,.1);stroke-width:1;z-index:-1}
@media (hover:hover) and (pointer:fine){.tbc-edicion:hover .tbc-edicion__cab img{transform:scale(1.04)}}
.tbc-edicion__cuerpo{padding:1.35rem 1.4rem 1.5rem}
.tbc-edicion__cuerpo h3{font-weight:800;font-size:1.22rem;line-height:1.2;letter-spacing:-.015em;margin:0 0 .25rem!important}
.tbc-edicion__fecha{font-size:.9rem;color:var(--grafito);margin:0 0 1.15rem!important;padding-bottom:1rem;border-bottom:1px solid var(--linea)}
.tbc-edicion__grupos{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem 2rem}
.tbc-edicion__grupos h4{font-weight:700;font-size:.82rem;line-height:1.3;color:var(--cobalto);margin:0 0 .85rem!important;display:flex;align-items:center;gap:.5rem}
.tbc-edicion__grupos h4:before{content:"";width:.45rem;height:.45rem;border-radius:50%;background:var(--antimonio)}
.tbc-ponentes{list-style:none;margin:0;padding:0;display:grid;gap:.95rem}
.tbc-ponente{display:grid;grid-template-columns:2.75rem minmax(0,1fr);gap:.85rem;align-items:start;margin:0}
.tbc-ponente .tbc-ponente__ini{width:2.75rem;height:2.75rem;margin:0;border-radius:50%;display:grid;place-items:center;line-height:1;text-align:center;background:rgba(30,60,154,.1);color:var(--cobalto);font-weight:800;font-size:.86rem;letter-spacing:.02em}
.tbc-ponente:nth-child(3n+2) .tbc-ponente__ini{background:rgba(227,178,60,.22);color:#7a5a12}
.tbc-ponente:nth-child(3n) .tbc-ponente__ini{background:var(--negro);color:#fff}
.tbc-ponente strong{display:block;font-size:1.04rem;line-height:1.25;color:var(--negro);font-weight:700}
.tbc-ponente>div>span{display:block;font-size:.93rem;line-height:1.4;color:#4a4a48;margin-top:.15rem}
.tbc-ponente__fecha{display:inline-block;margin-top:.4rem;font-style:normal;font-size:.75rem;font-weight:700;line-height:1;padding:.3rem .55rem;border-radius:999px;background:var(--papel);color:var(--grafito)}
@media (max-width:860px){.tbc-edicion--destacada{grid-template-columns:1fr}.tbc-edicion--destacada .tbc-edicion__cab{min-height:0;aspect-ratio:16/10}.tbc-edicion__grupos{grid-template-columns:1fr}}

/* ==== Agenda cultural de Talavera (módulo tbcagenda) ==== */
/* Actividades de la ciudad en tarjetas de la misma familia que las demás: fecha en grande, tipo, título y un dibujo por tipo.
   Toda la tarjeta es el enlace del título (a:after); el texto «Ficha en…» solo indica adónde lleva */
.tbc-oculto{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.tbc-agenda__grupo+.tbc-agenda__grupo{margin-top:clamp(2.75rem,5vw,4.25rem)}
.tbc .tbc-agenda__t{display:flex;flex-wrap:wrap;align-items:baseline;gap:.2rem .7rem;margin:0 0 1.25rem;font-weight:800;font-size:clamp(1.55rem,2.5vw,2.1rem);line-height:1.05;letter-spacing:-.025em}
.tbc-agenda__t em{font-family:var(--serif);font-style:italic;font-weight:400;font-size:.92em;letter-spacing:0;color:var(--grafito)}
.tbc-oscuro .tbc-agenda__t em{color:rgba(255,255,255,.62)}
.tbc .tbc-agenda__nada{margin:0;max-width:62ch;color:var(--grafito)}
.tbc-oscuro .tbc-agenda__nada{color:rgba(255,255,255,.72)}
.tbc-eventos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.75rem,1.4vw,1.1rem);margin:0;padding:0;list-style:none}
.tbc-evento{margin:0;display:flex}
.tbc-evento[hidden],.tbc-agenda__grupo[hidden],.tbc-agenda__filtros[hidden]{display:none}
.tbc-evento__ico{position:absolute;top:1.25rem;right:1.25rem;display:grid;place-items:center;width:2.6rem;height:2.6rem;border-radius:.6rem;background:rgba(227,178,60,.1);box-shadow:inset 0 0 0 1px rgba(227,178,60,.35),0 0 22px -4px rgba(227,178,60,.45);color:var(--antimonio)}
.tbc-evento__ico .tbc-ico{width:1.2rem;height:1.2rem}
.tbc-evento__fecha{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.55rem;margin:0 0 1.2rem;padding-right:3.4rem;color:#fff}
.tbc-evento__fecha b{font-weight:800;font-stretch:62%;font-size:3.4rem;line-height:.8;letter-spacing:-.01em;color:var(--cobalto-vivo);font-variant-numeric:tabular-nums;white-space:nowrap}
.tbc-evento__fecha span{font-size:.9rem;line-height:1.15;color:rgba(255,255,255,.72)}
.tbc-evento__fecha small{flex-basis:100%;margin-bottom:-.15rem;font-size:.82rem;line-height:1;color:rgba(255,255,255,.6)}
.tbc .tbc-evento__tipo{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .6rem;margin:0 0 .4rem;font-size:.88rem;font-weight:600;line-height:1.3;color:rgba(255,255,255,.62)}
.tbc-evento__cuando{display:inline-flex;align-items:center;gap:.35rem;padding:.28rem .55rem;border-radius:999px;background:rgba(227,178,60,.14);color:var(--antimonio);font-size:.78rem;font-weight:700;line-height:1}
.tbc-evento__cuando:before{content:"";width:.4rem;height:.4rem;border-radius:50%;background:currentColor;animation:tbc-latido 2s var(--ease-out) infinite}
.tbc .tbc-evento__titulo{margin:0 0 .7rem;font-size:1.2rem;line-height:1.2;font-weight:700;letter-spacing:-.01em;color:#fff;text-wrap:balance}
.tbc .tbc-evento__titulo a,.tbc .tbc-html .tbc-evento .tbc-evento__titulo a{color:#fff;text-decoration:none;background:none;padding:0}
.tbc-evento__titulo a:after{content:"";position:absolute;inset:0;z-index:1}
.tbc .tbc-evento__titulo a:focus-visible{outline:none}
.tbc-evento__in:focus-within{outline:3px solid var(--antimonio);outline-offset:3px}
.tbc .tbc-evento__datos{display:grid;gap:.3rem;margin:0;padding:0;list-style:none;color:rgba(255,255,255,.74);font-size:.95rem;line-height:1.35}
.tbc .tbc-evento__datos li{display:flex;align-items:flex-start;gap:.5rem;margin:0}
.tbc-evento__datos .tbc-ico{width:1.05rem;height:1.05rem;margin-top:.1rem;color:rgba(255,255,255,.45)}
.tbc-evento__ir{position:absolute;left:1.35rem;bottom:1.3rem;display:inline-flex;align-items:center;gap:.4rem;max-width:calc(100% - 9.5rem);font-size:.85rem;font-weight:600;line-height:1.2;color:rgba(255,255,255,.55);transition:color .2s ease}
.tbc-evento__ir .tbc-ico{width:.95rem;height:.95rem;flex:none;transition:transform .2s var(--ease-out)}
@media (hover:hover) and (pointer:fine){.tbc-evento__in:hover .tbc-evento__ir{color:var(--antimonio)}.tbc-evento__in:hover .tbc-evento__ir .tbc-ico{transform:translateX(3px)}}
/* Filtros por tipo: solo aparecen con JavaScript y cuando hay muchas actividades */
.tbc-agenda__filtros{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 clamp(1.75rem,3vw,2.5rem)}
.tbc .tbc-agenda__filtros button{display:inline-flex;align-items:center;gap:.45rem;min-height:2.6rem;padding:0 1rem;border:0;border-radius:999px;background:transparent;box-shadow:inset 0 0 0 1.5px var(--linea);color:var(--negro);font-size:.95rem;font-weight:600;line-height:1;cursor:pointer;transition:background-color .2s ease,box-shadow .2s ease,color .2s ease,transform .16s var(--ease-out)}
.tbc-agenda__filtros button span{font-weight:500;color:var(--gris-medio);font-variant-numeric:tabular-nums}
.tbc .tbc-agenda__filtros button[aria-pressed="true"]{background:var(--negro);color:#fff;box-shadow:none}
.tbc-agenda__filtros button[aria-pressed="true"] span{color:rgba(255,255,255,.6)}
.tbc .tbc-agenda__filtros button:active{transform:scale(.97)}
@media (hover:hover) and (pointer:fine){.tbc .tbc-agenda__filtros button[aria-pressed="false"]:hover{box-shadow:inset 0 0 0 1.5px var(--negro)}}
.tbc .tbc-agenda__pie{margin:clamp(2.25rem,4vw,3rem) 0 0;max-width:80ch;font-size:.92rem;line-height:1.55;color:var(--grafito)}
.tbc .tbc-agenda__vacio{margin:0 0 1rem}
.tbc .tbc-agenda__vacio[hidden]{display:none}
/* Actividades añadidas a mano sin enlace: la tarjeta no es un enlace, así que no se levanta */
.tbc-evento--sin-enlace .tbc-evento__in:hover{transform:none}
/* Sin exposiciones (o sin actividades en el bloque breve, o al filtrar por otro tipo), la sección entera desaparece */
.elementor-section:has(.tbc-agenda--vacia),.elementor-section.tbc-sin-resultados{display:none}
@media (max-width:980px){.tbc-eventos{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.tbc-eventos{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.tbc-evento__cuando:before{animation:none}}
.tbc .tbc-agenda__museos{margin:clamp(1.75rem,3vw,2.5rem) 0 0;max-width:70ch}

/* ==== Taboracrom 2026 v3: identidad global (cabecera, pie, cookies) + movimiento ==== */
html{font-size:16px}
@media (max-width:767px){html{font-size:15px}}
body{font-family:"Archivo",system-ui,sans-serif;background:var(--papel);color:var(--negro);line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:clip}
::selection{background:var(--antimonio);color:#000}
#wrapper{background:var(--papel);padding-top:0!important;padding-bottom:0!important}
/* Sin hueco entre la última sección y el pie */
#wrapper .page-content,#wrapper #content,#wrapper #main,#wrapper #content-wrapper,#wrapper .elementor{margin-bottom:0!important;padding-bottom:0!important}
#footer{margin-top:0!important}
#wrapper>.container,#wrapper .container-fluid{max-width:none}
body.page-cms .page-header,body#cms .page-header,body#cms .breadcrumb,body.page-cms #wrapper .breadcrumb{display:none}
:focus-visible{outline:3px solid var(--antimonio);outline-offset:3px}

/* Cabecera negra: enlaza con la portada fotográfica */
#header,#header .header-top,#desktop-header,#header .sticky-desktop-wrapper,#desktop-header-container,#mobile-header,#mobile-header .mobile-main-bar,#header .stuck-header{background:var(--negro)!important;border:0!important}
#header{border-bottom:1px solid rgba(255,255,255,.12)!important}
#header .header-nav{display:none}
#header-user-btn,#ps-shoppingcart-wrapper,#mobile-header .col-mobile-btn-cart,#mobile-header .col-mobile-btn-account,#mobile-header .m-nav-btn[href*="mi-cuenta"],#mobile-header .m-nav-btn[href*="iniciar-sesion"]{display:none!important}
#desktop_logo img,#mobile-header .logo,#header .logo{filter:invert(1);mix-blend-mode:screen}
#iqitmegamenu-horizontal,.iqitmegamenu-wrapper,.container-iqitmegamenu{background:transparent!important;border:0!important}
#cbp-hrmenu>ul>li>a.nav-link{font-family:"Archivo",sans-serif;font-size:.98rem;font-weight:500;letter-spacing:0;color:#fff!important;padding:1.1rem .95rem!important;position:relative;background:transparent!important;opacity:.82;transition:opacity .2s ease}
#cbp-hrmenu>ul>li.tbc-actual>a.nav-link{opacity:1}
#cbp-hrmenu>ul>li>a.nav-link .cbp-tab-title{position:relative;color:#fff!important}
#cbp-hrmenu>ul>li>a.nav-link .cbp-submenu-aindicator,#cbp-hrmenu>ul>li>a.nav-link i{color:#fff!important}
#cbp-hrmenu>ul>li>a.nav-link .cbp-tab-title:after{content:"";position:absolute;left:0;right:0;bottom:-.35rem;height:2px;background:var(--antimonio);transform:scaleX(0);transform-origin:left;transition:transform .25s var(--ease-out)}
#cbp-hrmenu>ul>li.tbc-actual>a.nav-link .cbp-tab-title:after{transform:scaleX(1)}
@media (hover:hover) and (pointer:fine){#cbp-hrmenu>ul>li>a.nav-link:hover{opacity:1}#cbp-hrmenu>ul>li>a.nav-link:hover .cbp-tab-title:after{transform:scaleX(1)}}
/* Cabecera móvil fija al hacer scroll: negra de lado a lado */
#mobile-header,#mobile-header-sticky,#mobile-header-sticky>.container,#mobile-header-sticky.stuck,#mobile-header .mobile-main-bar{background:#000!important}
#mobile-header-sticky.stuck{left:0!important;right:0!important;width:100%!important;box-shadow:0 1px 0 rgba(255,255,255,.12)}
#mobile-header .mobile-main-bar .m-nav-btn,#mobile-header .mobile-main-bar .m-nav-btn i,#mobile-header .mobile-main-bar .m-nav-btn span{color:#fff!important}
/* Menú móvil: panel negro, enlaces grandes */
#iqitmegamenu-mobile{background:#000!important;color:#fff}
#iqitmegamenu-mobile .mobile-menu__header-wrapper{background:#000!important;border-bottom:1px solid rgba(255,255,255,.14)}
#iqitmegamenu-mobile .mobile-menu__close,#iqitmegamenu-mobile .mobile-menu__back-btn,#iqitmegamenu-mobile .mobile-menu__close span{color:#fff!important}
#iqitmegamenu-mobile .mobile-menu__tab{border-bottom:1px solid rgba(255,255,255,.14)!important}
#iqitmegamenu-mobile .mobile-menu__link,#iqitmegamenu-mobile .mobile-menu__link span{color:#fff!important;font-family:"Archivo",sans-serif!important;font-weight:700;font-size:1.6rem;letter-spacing:-.02em;line-height:1.1}
#iqitmegamenu-mobile .mobile-menu__link{padding:1rem 0!important;display:block}
#iqitmegamenu-mobile .mobile-menu__footer{display:none!important}
#iqitmegamenu-mobile a:active,#iqitmegamenu-mobile .mobile-menu__link.tbc-actual,#iqitmegamenu-mobile .mobile-menu__link.tbc-actual span{color:var(--antimonio)!important}
/* Menú móvil: cada apartado con su icono en la caja ámbar de las tarjetas; el actual, con la caja en amarillo */
#iqitmegamenu-mobile .mobile-menu__link{display:flex!important;align-items:center;gap:1rem}
#iqitmegamenu-mobile .mobile-menu__link:before{content:"";flex:none;width:2.75rem;height:2.75rem;border-radius:.7rem;background:rgba(227,178,60,.1) center/1.3rem 1.3rem no-repeat;box-shadow:inset 0 0 0 1px rgba(227,178,60,.35),0 0 22px -4px rgba(227,178,60,.45);transition:background-color .2s ease,box-shadow .2s ease,transform .16s var(--ease-out)}
#iqitmegamenu-mobile .mobile-menu__link.tbc-actual:before{background-color:var(--antimonio);box-shadow:0 0 26px -4px rgba(227,178,60,.7)}
#iqitmegamenu-mobile .mobile-menu__link:active:before{transform:scale(.94)}
#iqitmegamenu-mobile .mobile-menu__link[href$="/asociacion"]:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e3b23c' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9' cy='7' r='4'/%3E%3Cpath d='M22 21v-2a4 4 0 0 0-3-3.87M16 3.13a4 4 0 0 1 0 7.75'/%3E%3C/svg%3E")}
#iqitmegamenu-mobile .mobile-menu__link[href$="/certamen"]:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e3b23c' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9H4.5a2.5 2.5 0 0 1 0-5H6M18 9h1.5a2.5 2.5 0 0 0 0-5H18M4 22h16M10 14.66V17c0 .55-.47.98-.97 1.21C7.85 18.75 7 20.24 7 22M14 14.66V17c0 .55.47.98.97 1.21C16.15 18.75 17 20.24 17 22M18 2H6v7a6 6 0 0 0 12 0V2Z'/%3E%3C/svg%3E")}
#iqitmegamenu-mobile .mobile-menu__link[href$="/maraton-fotografico"]:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e3b23c' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.5 4h-5L7 7H4a2 2 0 0 0-2 2v9a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-3l-2.5-3z'/%3E%3Ccircle cx='12' cy='13' r='3'/%3E%3C/svg%3E")}
#iqitmegamenu-mobile .mobile-menu__link[href$="/jornadas-fotograficas"]:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e3b23c' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='m14.31 8 5.74 9.94M9.69 8h11.48M7.38 12l5.74-9.94M9.69 16 3.95 6.06M14.31 16H2.83M16.62 12l-5.74 9.94'/%3E%3C/svg%3E")}
#iqitmegamenu-mobile .mobile-menu__link[href$="/archivo"]:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e3b23c' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z'/%3E%3C/svg%3E")}
#iqitmegamenu-mobile .mobile-menu__link[href$="/agenda-cultural"]:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e3b23c' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='18' height='18' x='3' y='4' rx='2'/%3E%3Cpath d='M16 2v4M8 2v4M3 10h18'/%3E%3C/svg%3E")}
#iqitmegamenu-mobile .mobile-menu__link[href$="/contacto"]:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e3b23c' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='20' height='16' x='2' y='4' rx='2'/%3E%3Cpath d='m22 7-10 5L2 7'/%3E%3C/svg%3E")}
#iqitmegamenu-mobile .mobile-menu__link.tbc-actual[href$="/asociacion"]:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9' cy='7' r='4'/%3E%3Cpath d='M22 21v-2a4 4 0 0 0-3-3.87M16 3.13a4 4 0 0 1 0 7.75'/%3E%3C/svg%3E")}
#iqitmegamenu-mobile .mobile-menu__link.tbc-actual[href$="/certamen"]:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9H4.5a2.5 2.5 0 0 1 0-5H6M18 9h1.5a2.5 2.5 0 0 0 0-5H18M4 22h16M10 14.66V17c0 .55-.47.98-.97 1.21C7.85 18.75 7 20.24 7 22M14 14.66V17c0 .55.47.98.97 1.21C16.15 18.75 17 20.24 17 22M18 2H6v7a6 6 0 0 0 12 0V2Z'/%3E%3C/svg%3E")}
#iqitmegamenu-mobile .mobile-menu__link.tbc-actual[href$="/maraton-fotografico"]:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.5 4h-5L7 7H4a2 2 0 0 0-2 2v9a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-3l-2.5-3z'/%3E%3Ccircle cx='12' cy='13' r='3'/%3E%3C/svg%3E")}
#iqitmegamenu-mobile .mobile-menu__link.tbc-actual[href$="/jornadas-fotograficas"]:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='m14.31 8 5.74 9.94M9.69 8h11.48M7.38 12l5.74-9.94M9.69 16 3.95 6.06M14.31 16H2.83M16.62 12l-5.74 9.94'/%3E%3C/svg%3E")}
#iqitmegamenu-mobile .mobile-menu__link.tbc-actual[href$="/archivo"]:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z'/%3E%3C/svg%3E")}
#iqitmegamenu-mobile .mobile-menu__link.tbc-actual[href$="/agenda-cultural"]:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='18' height='18' x='3' y='4' rx='2'/%3E%3Cpath d='M16 2v4M8 2v4M3 10h18'/%3E%3C/svg%3E")}
#iqitmegamenu-mobile .mobile-menu__link.tbc-actual[href$="/contacto"]:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='20' height='16' x='2' y='4' rx='2'/%3E%3Cpath d='m22 7-10 5L2 7'/%3E%3C/svg%3E")}

/* Pie */
#footer,#footer .footer-container,#footer .elementor-section.tbc-footer-section{background:var(--negro)!important;color:#fff}
#footer .tbc-footer,#footer .tbc-footer *:not(i){font-family:"Archivo",sans-serif!important}
#footer .tbc-footer i.fa-brands{font-family:"Font Awesome 6 Brands"!important;font-weight:400;font-style:normal}
#footer .tbc-footer{max-width:var(--caja);margin:0 auto;padding:clamp(3.5rem,7vw,5.5rem) var(--margen) 2.5rem!important;box-sizing:border-box}
#footer-copyrights .container{max-width:var(--caja);padding-left:var(--margen)!important;padding-right:var(--margen)!important}
#footer-copyrights p,#footer-copyrights .copyright-txt{margin:.35rem 0;text-align:left!important}
/* Cinco bloques: marca, Actividades, Taboracrom (asociación, archivo, agenda, contacto), Contacto y Síguenos */
#footer .tbc-footer__col--web{grid-area:web}
#footer .tbc-footer{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) minmax(0,.9fr) minmax(0,1.1fr) minmax(0,.75fr);grid-template-areas:"brand act web contact social";column-gap:clamp(1.5rem,3vw,2.75rem)}
@media (max-width:991px){#footer .tbc-footer{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-areas:"brand brand brand brand" "act web contact social"}}
@media (max-width:767px){#footer .tbc-footer{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"brand brand" "act web" "contact social"}}
@media (max-width:480px){#footer .tbc-footer{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-areas:"brand brand" "act web" "contact contact" "social social"!important;gap:2.25rem 1.5rem!important}}
#footer .tbc-footer__title{color:#fff!important;font-weight:700;font-size:1rem;letter-spacing:0;text-transform:none;margin-bottom:1rem}
#footer .tbc-footer p,#footer .tbc-footer li,#footer .tbc-footer address,#footer .tbc-footer span{color:rgba(255,255,255,.7)!important;font-size:.95rem;line-height:1.6}
#footer .tbc-footer a{color:#fff!important;text-decoration:none;background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .25s var(--ease-out)}
@media (hover:hover) and (pointer:fine){#footer .tbc-footer a:hover{background-size:100% 1px}}
#footer .tbc-footer__brand img{filter:invert(1);mix-blend-mode:screen}
#footer-copyrights,#footer ._footer-copyrights-1,#footer .footer-copyrights{background:var(--negro)!important;border-top:1px solid rgba(255,255,255,.16);color:rgba(255,255,255,.55)!important;font-size:.85rem}
#footer-copyrights a,#footer ._footer-copyrights-1 a{color:#fff!important}

/* Aviso de cookies */
#iqitcookielaw{background:#fff!important;color:var(--negro)!important;font-family:"Archivo",sans-serif;font-size:.92rem;line-height:1.45;max-width:26rem;left:1rem!important;bottom:1rem!important;border:1px solid var(--linea);box-shadow:0 18px 40px -24px rgba(0,0,0,.45);border-radius:var(--radio);padding:1.1rem 1.25rem!important}
#iqitcookielaw p{color:var(--negro)!important;margin:0 0 .8rem}
#iqitcookielaw a{color:var(--cobalto)!important}
#iqitcookielaw .btn{background:var(--cobalto)!important;border:0!important;border-radius:999px;font-weight:600;text-transform:none;padding:.6rem 1.1rem;transition:transform .16s var(--ease-out)}
#iqitcookielaw .btn:active{transform:scale(.97)}
#back-to-top{background:var(--antimonio)!important;color:#000!important;border-radius:50%;border:0!important}

/* Enlaces de texto */
.tbc .elementor-text-editor a,.tbc .tbc-html p a,.tbc .tbc-html li a:not(.tbc-btn){text-decoration:none;background:linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat;padding-bottom:1px;transition:background-size .25s var(--ease-out),color .2s ease}
.tbc .tbc-cartela a,.tbc .tbc-contacto-mini a{background:none}
@media (hover:hover) and (pointer:fine){.tbc .elementor-text-editor a:hover,.tbc .tbc-html p a:hover{background-size:100% 2px}}

/* ==== Movimiento: entradas escalonadas (una sola vez) y revelado de fotos ==== */
/* El recorte va en los hijos: un elemento recortado del todo no dispara IntersectionObserver */
.tbc-anim [data-tbc="revelar"]>*{clip-path:inset(100% 0 0 0);transition:clip-path .9s var(--ease-in-out) var(--d,0ms)}
.tbc-anim [data-tbc="revelar"].tbc-visible>*{clip-path:inset(0 0 0 0)}
.tbc-anim [data-tbc="subir"]{opacity:0;transform:translateY(28px);transition:opacity .7s var(--ease-out) var(--d,0ms),transform .7s var(--ease-out) var(--d,0ms)}
.tbc-anim [data-tbc="fundir"]{opacity:0;transition:opacity .2s ease var(--d,0ms)}
.tbc-anim [data-tbc].tbc-visible{opacity:1;transform:none}
.tbc-anim [data-tbc="revelar"] img{transform:scale(1.08);transition:transform 1.3s var(--ease-out) var(--d,0ms)}
.tbc-anim [data-tbc="revelar"].tbc-visible img{transform:none}
/* Portada: secuencia de carga con animación CSS (no depende de fotogramas de JS mientras la página carga) */
.tbc-anim .tbc-heroe [data-entra]{animation:tbc-entra .8s var(--ease-out) var(--d,0ms) both}
.tbc-anim .tbc-heroe .tbc-heroe__num[data-entra]{animation:tbc-entra-num 1s var(--ease-in-out) var(--d,0ms) both}
@keyframes tbc-entra{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes tbc-entra-num{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(-10% -5% -10% -5%)}}
@keyframes tbc-fundir{from{opacity:0}to{opacity:1}}
@media (prefers-reduced-motion:reduce){.tbc-anim .tbc-heroe [data-entra],.tbc-anim .tbc-heroe .tbc-heroe__num[data-entra]{animation:tbc-fundir .3s ease both!important}.tbc-anim [data-tbc],.tbc-anim [data-tbc]>*{clip-path:none!important;transform:none!important}.tbc-anim [data-tbc] img,.tbc-anim .tbc-heroe__foto img{transform:none!important;transition:none!important}}

/* El tema marcaba la pestaña activa por id de CMS y, al añadir «Archivo», quedó desfasado: el azul solo al pasar el ratón */
#desktop-header .cbp-hrmenu-tab:not(:hover)>a.nav-link::after{transform:scaleX(0)}

/* ==== Tienda de fotografías de los socios (módulo tbctienda sobre las plantillas del tema) ==== */
/* Las páginas de la tienda usan la caja de la web: el resto del sitio va a sangre con Elementor */
:is(#category,#manufacturer,#product,#cart,#checkout) #wrapper>.container,:is(#category,#manufacturer,#product,#cart,#checkout) #inner-wrapper{max-width:var(--caja);margin-left:auto;margin-right:auto;padding-left:var(--margen);padding-right:var(--margen);box-sizing:border-box}
:is(#category,#manufacturer,#product) #inner-wrapper{padding-bottom:var(--esp)}
:is(#category,#manufacturer,#product) #wrapper .breadcrumb{background:none;padding:1.25rem 0 0;margin:0;font-size:.88rem;line-height:1.4}
:is(#category,#manufacturer,#product) #wrapper .breadcrumb :is(a,span,li){color:var(--gris-medio);text-decoration:none}
:is(#category,#manufacturer,#product) #wrapper .breadcrumb li:last-child span{color:var(--negro)}
@media (hover:hover) and (pointer:fine){:is(#category,#manufacturer,#product) #wrapper .breadcrumb a:hover{color:var(--negro)}}

/* Cabecera de la tienda, de una temática y del directorio: título a la izquierda, explicación a la derecha */
.tbc-tienda-cab{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:1.25rem clamp(2rem,6vw,6rem);align-items:end;padding:clamp(1.75rem,4vw,3rem) 0 clamp(2rem,4vw,3rem);margin:0 0 clamp(2rem,4vw,3rem);border-bottom:1px solid var(--linea)}
.tbc-tienda-cab h1{font-family:"Archivo",system-ui,sans-serif;font-weight:800;font-stretch:100%;font-size:clamp(2.6rem,4.9vw,4.6rem);line-height:.96;letter-spacing:-.035em;color:var(--negro);margin:0;max-width:14ch;text-transform:none}
.tbc-tienda-cab__d{display:contents}
.tbc-tienda-cab__d>*{grid-column:2;margin:0;font-size:clamp(1.05rem,1.3vw,1.2rem);line-height:1.55;color:var(--grafito);max-width:56ch}
.tbc-tienda-cab__d>*+*{margin-top:1rem}
.tbc-tienda-cab__d a:not(.tbc-btn){color:var(--cobalto)}
.tbc-tienda-cab__d .tbc-btn{margin-top:.25rem}
/* Cómo se compra (secuencia real): a lo ancho, bajo el título */
.tbc-tienda-cab__d>ol{grid-column:1/-1;max-width:none;list-style:none;margin:clamp(.75rem,2vw,1.5rem) 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem clamp(1rem,3vw,2.5rem);counter-reset:paso}
.tbc-tienda-cab__d>ol li{counter-increment:paso;position:relative;margin:0;padding:1rem 0 0 2.4rem;border-top:1px solid var(--linea);font-size:.98rem;line-height:1.45;color:var(--grafito)}
.tbc-tienda-cab__d>ol li:before{content:counter(paso);position:absolute;left:0;top:.95rem;font-family:var(--serif);font-style:italic;font-size:2.1rem;line-height:1;color:var(--cobalto)}
.tbc-tienda-cab__d>ol b,.tbc-tienda-cab__d>ol strong{color:var(--negro);font-weight:700}
.tbc-tienda-cab--tema h1{font-size:clamp(2.3rem,4.4vw,3.9rem)}
@media (max-width:860px){.tbc-tienda-cab{grid-template-columns:1fr;align-items:start}.tbc-tienda-cab__d>*{grid-column:1}.tbc-tienda-cab__d>ol{grid-template-columns:1fr}}

/* Títulos de bloque con su enlace a la derecha */
.tbc-tienda-sec{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 1.5rem;margin:0 0 1.25rem}
.tbc-tienda-sec__t{font-family:"Archivo",system-ui,sans-serif;font-weight:700;font-stretch:90%;font-size:1.35rem;line-height:1.15;letter-spacing:-.01em;color:var(--negro);margin:0;text-transform:none}
.tbc-tienda-sec__a{font-weight:600;font-size:.98rem;color:var(--cobalto)!important;text-decoration:none!important;background:linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat;padding-bottom:1px;transition:background-size .25s var(--ease-out)}
@media (hover:hover) and (pointer:fine){.tbc-tienda-sec__a:hover{background-size:100% 2px}}
.tbc-tienda-vacio{font-size:1.1rem;color:var(--grafito)}

/* Retrato del fotógrafo: redondo (personas); sin foto, sus iniciales en antimonio sobre cobalto */
.tbc-retrato{flex:none;display:grid;place-items:center;width:4rem;height:4rem;border-radius:50%;overflow:hidden;background:var(--cobalto);color:var(--antimonio);font-family:var(--serif);font-style:italic;font-size:1.65rem;line-height:1}
.tbc-retrato img{display:block;width:100%;height:100%;object-fit:cover}
.tbc-retrato--grande{width:clamp(6.5rem,13vw,10rem);height:clamp(6.5rem,13vw,10rem);font-size:clamp(2.6rem,5vw,4rem)}
.tbc-retrato--mini{width:2.6rem;height:2.6rem;font-size:1.05rem}

/* Tarjetas de fotógrafos (tienda y directorio): llevan a la página de cada uno */
.tbc-fotografos{list-style:none;margin:0 0 clamp(2.5rem,5vw,4rem);padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,19rem),1fr));gap:1rem}
.tbc-fotografo{margin:0}
.tbc-fotografo__a{display:flex;align-items:center;gap:1rem;height:100%;padding:1rem 1.25rem 1rem 1rem;background:var(--blanco);border:1px solid var(--linea);border-radius:var(--radio);color:var(--negro)!important;text-decoration:none!important;transition:border-color .2s ease,box-shadow .25s var(--ease-out),transform .25s var(--ease-out)}
.tbc-fotografo__a:active{transform:scale(.99)}
.tbc-fotografo__a:focus-visible{outline:3px solid var(--antimonio);outline-offset:3px}
@media (hover:hover) and (pointer:fine){.tbc-fotografo__a:hover{border-color:var(--negro);box-shadow:0 18px 40px -28px rgba(0,0,0,.45);transform:translateY(-2px)}}
.tbc-fotografo__txt{display:grid;gap:.15rem;min-width:0}
.tbc-fotografo__nombre{font-weight:700;font-size:1.08rem;line-height:1.2}
.tbc-fotografo__lema{font-family:var(--serif);font-style:italic;font-size:1.1rem;line-height:1.2;color:var(--grafito)}
.tbc-fotografo__n{margin-top:.25rem;font-size:.86rem;color:var(--gris-medio)}
.tbc-directorio .tbc-fotografos{grid-template-columns:repeat(auto-fill,minmax(min(100%,22rem),1fr))}
.tbc-directorio .tbc-fotografo__a{padding:1.25rem 1.5rem 1.25rem 1.25rem}
.tbc-directorio .tbc-retrato{width:5.5rem;height:5.5rem;font-size:2.2rem}

/* Página del fotógrafo: retrato, nombre y lema; luego su ficha en dos columnas */
.tbc-autor-cab{display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(1.25rem,3vw,2.5rem);align-items:center;padding:clamp(1.75rem,4vw,3rem) 0}
.tbc-autor-cab__t{font-family:"Archivo",system-ui,sans-serif;font-weight:800;font-stretch:100%;font-size:clamp(2.6rem,5.4vw,5rem);line-height:.95;letter-spacing:-.035em;color:var(--negro);margin:0;text-transform:none}
.tbc-autor-cab__lema{font-family:var(--serif);font-style:italic;font-size:clamp(1.4rem,2.4vw,2.1rem);line-height:1.1;color:var(--grafito);margin:.45rem 0 0;max-width:32ch}
.tbc-autor-cab__n{margin:1.1rem 0 0;font-weight:600}
.tbc-autor-cab__n a{color:var(--cobalto)!important;text-decoration:none!important;background:linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat;padding-bottom:1px}
@media (max-width:560px){.tbc-autor-cab{grid-template-columns:1fr}}
.tbc-autor-perfil{margin:0 0 clamp(2.5rem,5vw,4rem)}
.tbc-autor{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:2rem clamp(2rem,6vw,6rem);padding:clamp(2rem,4vw,3rem) 0;border-top:1px solid var(--linea);border-bottom:1px solid var(--linea);font-size:1.0625rem;line-height:1.6;color:var(--negro)}
.tbc-autor h2{font-family:"Archivo",system-ui,sans-serif;font-weight:700;font-stretch:90%;font-size:1.35rem;line-height:1.15;letter-spacing:-.01em;color:var(--negro);margin:0 0 .9rem;text-transform:none}
.tbc-autor *+h2{margin-top:2rem}
.tbc-autor p{margin:0 0 1em;max-width:62ch}
.tbc-autor__aviso{grid-column:1/-1;justify-self:start;max-width:none!important;display:inline-flex;align-items:center;gap:.5rem;margin:0!important;padding:.5rem .9rem;border-radius:1.25rem;background:var(--blanco);border:1px solid var(--linea);font-size:.88rem;font-weight:600;line-height:1.2}
.tbc-autor__aviso:before{content:"";width:.5rem;height:.5rem;border-radius:50%;background:var(--antimonio);flex:none}
/* Hitos: línea de tiempo vertical, el año en negrita */
.tbc-autor__hitos{list-style:none;margin:1.75rem 0 0;padding:0 0 0 1.4rem;border-left:2px solid var(--linea)}
.tbc-autor__hitos li{position:relative;margin:0;padding:0 0 1.1rem;line-height:1.45}
.tbc-autor__hitos li:last-child{padding-bottom:0}
.tbc-autor__hitos li:before{content:"";position:absolute;left:calc(-1.4rem - 7px);top:.35em;width:12px;height:12px;border-radius:50%;background:var(--antimonio);box-shadow:0 0 0 4px var(--papel)}
.tbc-autor__hitos b{display:block;font-weight:800;font-size:.95rem;letter-spacing:.01em}
.tbc-autor__datos{margin:0 0 .5rem;display:grid}
.tbc-autor__datos>div{display:grid;grid-template-columns:minmax(0,10rem) minmax(0,1fr);gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--linea)}
.tbc-autor__datos>div:first-child{padding-top:0}
.tbc-autor__datos dt{font-weight:400;font-size:.92rem;color:var(--gris-medio)}
.tbc-autor__datos dd{margin:0;font-weight:600;line-height:1.4}
.tbc-autor__etiquetas{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}
.tbc-autor__etiquetas li{margin:0;padding:.45rem .9rem;border-radius:999px;background:var(--blanco);border:1px solid var(--linea);font-size:.92rem;font-weight:600;line-height:1.2}
.tbc-autor__encargo{margin:2rem 0 0!important;padding:1.15rem 1.3rem;border-radius:var(--radio);background:var(--cobalto);color:#fff;font-size:1rem;line-height:1.5}
.tbc-autor__encargo a{color:#fff!important;font-weight:700;text-decoration:none!important;background:linear-gradient(var(--antimonio),var(--antimonio)) 0 100%/100% 2px no-repeat;padding-bottom:1px}
@media (max-width:860px){.tbc-autor{grid-template-columns:1fr}}

/* ==== Listado: filtros en píldoras a la izquierda y orden a la derecha, en una sola fila ==== */
:is(#category,#manufacturer) #products{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:1rem;align-items:start}
:is(#category,#manufacturer) #products>*{grid-column:1/-1;min-width:0}
:is(#category,#manufacturer) #products>#facets_search_center_dropdown{grid-column:1;grid-row:1}
:is(#category,#manufacturer) #products>div:has(>#js-product-list-top){grid-column:2;grid-row:1}
:is(#category,#manufacturer) #products>div:has(>#js-active-search-filters){grid-row:2}
:is(#category,#manufacturer) #js-product-list-top{border:0;padding:0;margin:0}
:is(#category,#manufacturer) #js-product-list-top .view-switcher,:is(#category,#manufacturer) #js-product-list-top .showing,:is(#category,#manufacturer) .products-nb-per-page{display:none!important}
:is(#category,#manufacturer) #search_filters{display:flex;flex-wrap:wrap;gap:.5rem;margin:0!important;padding:0;background:none;border:0}
:is(#category,#manufacturer) #search_filters .facet{margin:0;padding:0;border:0}
:is(#category,#manufacturer) :is(#search_filters .facet-title-dropdown,.products-sort-order .select-title){display:inline-flex;align-items:center;gap:.55rem;height:2.6rem;margin:0;padding:0 1rem;border:1px solid var(--linea);border-radius:999px;background:var(--blanco);font-family:"Archivo",system-ui,sans-serif;font-weight:600;font-size:.95rem;line-height:1;letter-spacing:0;text-transform:none;color:var(--negro);box-shadow:none;cursor:pointer;transition:border-color .2s ease}
:is(#category,#manufacturer) :is(#search_filters .facet-title-dropdown,.products-sort-order .select-title) :is(span,i){color:inherit;font-size:inherit}
@media (hover:hover) and (pointer:fine){:is(#category,#manufacturer) :is(#search_filters .facet-title-dropdown,.products-sort-order .select-title):hover{border-color:var(--negro)}}
:is(#category,#manufacturer) :is(#search_filters .dropdown-menu,.products-sort-order .dropdown-menu){margin-top:.4rem!important;padding:.4rem;min-width:15rem;border:1px solid var(--linea);border-radius:var(--radio);background:var(--blanco);box-shadow:0 18px 40px -24px rgba(0,0,0,.45)}
:is(#category,#manufacturer) #search_filters .facet-label{display:flex;align-items:center;gap:.6rem;margin:0;padding:.5rem .55rem;border-radius:6px;cursor:pointer}
:is(#category,#manufacturer) #search_filters .facet-label a{color:var(--negro);font-size:.95rem;text-decoration:none}
:is(#category,#manufacturer) #search_filters .magnitude{color:var(--gris-medio);font-size:.85rem}
:is(#category,#manufacturer) .products-sort-order .dropdown-item{padding:.5rem .6rem;border-radius:6px;font-size:.95rem;color:var(--negro)}
@media (hover:hover) and (pointer:fine){:is(#category,#manufacturer) :is(#search_filters .facet-label,.products-sort-order .dropdown-item):hover{background:var(--niebla)}}
:is(#category,#manufacturer) #search_filters .custom-checkbox input[type=checkbox]+span{border-color:var(--grafito);border-radius:4px}
:is(#category,#manufacturer) #search_filters .custom-checkbox input[type=checkbox]:checked+span{background:var(--cobalto);border-color:var(--cobalto);color:#fff}
/* Filtros activos: etiquetas que se quitan con un clic */
:is(#category,#manufacturer) #js-active-search-filters:not(.hide){margin:1rem 0 0;padding:0;background:none;border:0}
:is(#category,#manufacturer) #js-active-search-filters #active-search-filters{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem}
:is(#category,#manufacturer) #js-active-search-filters .active-filter-title{font-size:.9rem;color:var(--gris-medio);margin:0}
:is(#category,#manufacturer) #js-active-search-filters .filter-blocks{display:flex;flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none}
:is(#category,#manufacturer) #js-active-search-filters .filter-block{margin:0;padding:0;border:0;background:none;box-shadow:none}
:is(#category,#manufacturer) #js-active-search-filters .filter-block a{display:inline-flex;align-items:center;gap:.45rem;height:2.2rem;padding:0 .9rem;border:0;border-radius:999px;background:var(--negro);color:#fff;font-family:"Archivo",system-ui,sans-serif;font-weight:600;font-size:.88rem;text-transform:none;letter-spacing:0;box-shadow:none;transition:background-color .2s ease}
@media (hover:hover) and (pointer:fine){:is(#category,#manufacturer) #js-active-search-filters .filter-block a:hover{background:var(--grafito)}}

/* ==== La foto en el listado: copia con paspartú y cartela de galería ==== */
:is(#category,#manufacturer) #js-product-list{margin-top:clamp(1.5rem,3vw,2.25rem)}
:is(#category,#manufacturer) .products-grid{--tbc-hueco:clamp(1.5rem,3vw,2.5rem);row-gap:clamp(2rem,4vw,3.25rem);margin-left:calc(var(--tbc-hueco)/-2);margin-right:calc(var(--tbc-hueco)/-2)}
:is(#category,#manufacturer) .products-grid>.js-product-miniature-wrapper{padding-left:calc(var(--tbc-hueco)/2);padding-right:calc(var(--tbc-hueco)/2)}
:is(#category,#manufacturer,#product) .product-miniature .thumbnail-container{margin:0 0 1.1rem;background:none;border:0;overflow:visible}
:is(#category,#manufacturer,#product) .product-miniature .product-thumbnail{display:block;padding:11%;background:#fff;box-shadow:0 24px 48px -32px rgba(0,0,0,.55);transition:transform .35s var(--ease-out),box-shadow .35s var(--ease-out)}
:is(#category,#manufacturer,#product) .product-miniature .product-thumbnail img{display:block;width:100%;height:auto}
@media (hover:hover) and (pointer:fine){:is(#category,#manufacturer,#product) .product-miniature:hover .product-thumbnail{transform:translateY(-4px);box-shadow:0 34px 60px -34px rgba(0,0,0,.6)}}
:is(#category,#manufacturer,#product) .product-miniature :is(.product-flags,.product-category-name,.product-reference,.product-description-short,.product-add-cart,.product-functional-buttons,.product-availability){display:none!important}
:is(#category,#manufacturer,#product) .product-miniature .product-description{padding:0;text-align:left;background:none}
:is(#category,#manufacturer,#product) .product-miniature .product-title{margin:0 0 .1rem;font-family:"Archivo",system-ui,sans-serif;font-weight:700;font-size:1.08rem;line-height:1.25;letter-spacing:-.005em;text-transform:none}
:is(#category,#manufacturer,#product) .product-miniature .product-title a{color:var(--negro);text-decoration:none}
:is(#category,#manufacturer,#product) .product-miniature .product-brand{margin:0}
:is(#category,#manufacturer,#product) .product-miniature .product-brand a{font-family:var(--serif);font-style:italic;font-size:1.12rem;line-height:1.2;color:var(--grafito);text-decoration:none}
#manufacturer .product-miniature .product-brand{display:none}
:is(#category,#manufacturer,#product) .product-miniature .product-price-and-shipping{margin:.45rem 0 0;text-align:left}
:is(#category,#manufacturer,#product) .product-miniature .product-price{font-family:"Archivo",system-ui,sans-serif;font-weight:600;font-size:.98rem;color:var(--negro)}
:is(#category,#manufacturer,#product) .product-miniature .product-price:before{content:"desde ";font-weight:400;color:var(--gris-medio)}
:is(#category,#manufacturer) .pagination{margin-top:clamp(2rem,4vw,3rem)}

/* ==== Ficha de la foto ==== */
#product .product-info-row{padding-top:clamp(1rem,2.5vw,2rem);row-gap:2rem}
#product .images-container .product-cover{padding:7%;background:#fff;box-shadow:0 34px 70px -36px rgba(0,0,0,.6)}
#product .images-container .product-flags{display:none}
#product .images-container:not(:has(#product-images-thumbs .swiper-slide:nth-child(2))) .js-qv-mask{display:none}
#product .images-container .expander{right:.75rem;bottom:.75rem}
#product .images-container .expander span{display:grid;place-items:center;width:2.6rem;height:2.6rem;border-radius:50%;background:rgba(0,0,0,.62);color:#fff}
#product #col-product-info{padding-top:.25rem}
#product .product_header_container{padding:0;margin:0 0 1.25rem;border:0}
#product h1.page-title{margin:0 0 1rem;font-family:"Archivo",system-ui,sans-serif;font-weight:800;font-stretch:100%;font-size:clamp(2.2rem,3.6vw,3.4rem);line-height:.98;letter-spacing:-.032em;color:var(--negro);text-transform:none;text-align:left}
#product h1.page-title span{font:inherit;color:inherit;letter-spacing:inherit}
#product .product-manufacturer{display:none}
/* Autor de la foto: retrato pequeño y nombre, enlaza a su página */
.tbc-obra-autor{display:inline-flex;align-items:center;gap:.75rem;margin:0 0 1.5rem;color:var(--negro)!important;text-decoration:none!important}
.tbc-obra-autor__txt{display:grid;line-height:1.15}
.tbc-obra-autor__pre{font-size:.82rem;color:var(--gris-medio)}
.tbc-obra-autor__nombre{font-family:var(--serif);font-style:italic;font-size:1.45rem;background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .25s var(--ease-out)}
@media (hover:hover) and (pointer:fine){.tbc-obra-autor:hover .tbc-obra-autor__nombre{background-size:100% 1px}}
#product .product-prices{margin:0;padding:0}
#product .product-prices .current-price-value{font-family:"Archivo",system-ui,sans-serif;font-weight:700;font-size:1.7rem;letter-spacing:-.01em;color:var(--negro)}
#product .product-prices .tax-shipping-delivery-label{margin-top:.15rem;font-size:.85rem;color:var(--gris-medio)}
#product .product-information>.product-description{margin:0 0 1.75rem;font-size:1.0625rem;line-height:1.55;color:var(--grafito);max-width:48ch}
#product .product-information>.product-description p{margin:0}
/* Tamaño y acabado: píldoras; la elegida, en negro */
#product .product-variants-item{margin:0 0 1.35rem;float:none}
#product .product-variants-item .form-control-label{display:block;margin:0 0 .6rem;padding:0;font-family:"Archivo",system-ui,sans-serif;font-weight:700;font-size:.95rem;color:var(--negro);text-transform:none;letter-spacing:0}
#product .product-variants-item ul{display:flex;flex-wrap:wrap;gap:.5rem;margin:0;padding:0}
#product .product-variants-item .input-container{float:none;margin:0;position:relative}
#product .product-variants-item .radio-label{display:inline-flex;align-items:center;min-height:2.6rem;padding:0 1rem;border:1px solid var(--linea);border-radius:999px;background:var(--blanco);box-shadow:none;font-family:"Archivo",system-ui,sans-serif;font-weight:600;font-size:.93rem;color:var(--negro);transition:background-color .2s ease,border-color .2s ease,color .2s ease}
#product .product-variants-item .input-radio:checked+.radio-label{background:var(--negro);border-color:var(--negro);color:#fff}
#product .product-variants-item .input-radio:focus-visible+.radio-label{outline:3px solid var(--antimonio);outline-offset:2px}
@media (hover:hover) and (pointer:fine){#product .product-variants-item .input-radio:not(:checked):hover+.radio-label{border-color:var(--negro)}}
/* Cantidad y botón de compra */
#product .product-add-to-cart{padding-top:.5rem!important}
#product .product-quantity{align-items:center;row-gap:.75rem}
#product .col-add-compare{display:none}
#product .bootstrap-touchspin{height:3.15rem;border:1px solid var(--linea);border-radius:999px;background:var(--blanco);overflow:hidden}
#product .bootstrap-touchspin input{height:100%;border:0;background:none;text-align:center;font-weight:600;width:3.4rem}
#product .bootstrap-touchspin .btn-touchspin{border:0;background:none;color:var(--grafito)}
#product .add-to-cart{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:3.15rem;width:100%;padding:0 1.6rem;border:0;border-radius:999px;background:var(--cobalto);color:#fff;font-family:"Archivo",system-ui,sans-serif;font-weight:600;font-size:1rem;letter-spacing:0;text-transform:none;box-shadow:none;transition:background-color .2s ease,transform .16s var(--ease-out)}
#product .add-to-cart:active{transform:scale(.97)}
@media (hover:hover) and (pointer:fine){#product .add-to-cart:hover{background:var(--cobalto-hover)}}
#product .product-additional-info{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--linea)}
#product .social-sharing a{color:var(--grafito)}
/* Debajo: la historia de la foto a la izquierda y sus datos a la derecha */
#product .product-sections{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:2rem clamp(2rem,6vw,6rem);margin-top:clamp(3rem,6vw,5rem);padding-top:clamp(2rem,4vw,3rem);border-top:1px solid var(--linea)}
#product .product-sections .block-section{margin:0;padding:0;border:0}
#product .product-sections .section-title{display:block;margin:0 0 1rem;padding:0;border:0;text-align:left;font-family:"Archivo",system-ui,sans-serif;font-weight:700;font-stretch:90%;font-size:1.35rem;line-height:1.15;letter-spacing:-.01em;color:var(--negro);text-transform:none}
#product .product-sections .section-title:before,#product .product-sections .section-title:after{display:none}
#product .product-sections .section-title span{padding:0;background:none;color:inherit;font:inherit}
#product .product-sections .rte-content{font-size:1.0625rem;line-height:1.6;color:var(--negro)}
#product .tbc-obra p{margin:0 0 1em;max-width:62ch}
#product .tbc-obra h3{margin:1.75rem 0 .6rem;font-family:"Archivo",system-ui,sans-serif;font-weight:700;font-size:1.05rem;color:var(--negro);text-transform:none}
#product .product-details-section .data-sheet{display:grid;grid-template-columns:minmax(0,9rem) minmax(0,1fr);margin:0;border-top:1px solid var(--linea)}
#product .product-details-section .data-sheet :is(dt,dd){margin:0;padding:.75rem 0;background:none;border-bottom:1px solid var(--linea);font-size:1rem;line-height:1.4}
#product .product-details-section .data-sheet dt{font-weight:400;font-size:.92rem;color:var(--gris-medio)}
#product .product-details-section .data-sheet dd{font-weight:600;color:var(--negro)}
#product .product-details-section :is(.product-quantities,.product-out-of-stock,.product-condition,.product-features>p.h6){display:none}
#product .product-details-section .product-reference{margin-top:1rem;font-size:.85rem;color:var(--gris-medio)}
#product .product-details-section .product-reference .label{font-weight:400;color:inherit}
@media (max-width:860px){#product .product-sections{grid-template-columns:1fr}}
