/* Las piezas se muestran completas, sin recortar sus textos. */
body.microbio-evolved #trabajos .project-image {background:#10261a!important;}
body.microbio-evolved #trabajos .project-image img {object-fit:contain!important;object-position:center!important;}
body.microbio-evolved #trabajos .project:hover .project-image img {transform:none!important;}
body.microbio-evolved #trabajos .project-info h3 {min-width:0;overflow-wrap:anywhere;}
/* Ritmos complementarios conservando el mismo lenguaje visual. */
html:not(.a11y-motion-paused) body.microbio-evolved .recorrido-titulo.recorrido-lateral.recorrido-en-pantalla{animation:recorrido-desde-derecha 1.1s cubic-bezier(.16,1,.3,1) both!important;}
html:not(.a11y-motion-paused) body.microbio-evolved .recorrido-imagen.recorrido-lateral.recorrido-en-pantalla{animation:recorrido-lateral-suave 1.15s cubic-bezier(.16,1,.3,1) both!important;}
html:not(.a11y-motion-paused) body.microbio-evolved .recorrido-titulo.recorrido-flotante.recorrido-en-pantalla{animation:recorrido-ascenso 1.25s cubic-bezier(.16,1,.3,1) both!important;}
html:not(.a11y-motion-paused) body.microbio-evolved .recorrido-imagen.recorrido-flotante.recorrido-en-pantalla{animation:recorrido-ascenso-suave 1.2s cubic-bezier(.16,1,.3,1) both!important;}
@keyframes recorrido-desde-derecha{from{opacity:.15;translate:60px 28px;scale:.94}to{opacity:1;translate:0 0;scale:1}}
@keyframes recorrido-lateral-suave{from{opacity:.35;translate:36px 28px;scale:.96}to{opacity:1;translate:0 0;scale:1}}
@keyframes recorrido-ascenso{from{opacity:.2;translate:0 80px;scale:.94}to{opacity:1;translate:0 0;scale:1}}
@keyframes recorrido-ascenso-suave{from{opacity:.35;translate:0 55px;scale:.96}to{opacity:1;translate:0 0;scale:1}}
@media(max-width:760px){@keyframes recorrido-desde-derecha{from{opacity:.2;translate:25px 28px;scale:.96}to{opacity:1;translate:0 0;scale:1}}@keyframes recorrido-lateral-suave{from{opacity:.4;translate:18px 24px;scale:.97}to{opacity:1;translate:0 0;scale:1}}}
body.microbio-evolved #trabajos .project-view{position:static!important;display:inline-flex!important;opacity:1!important;transform:none!important;margin-top:14px;padding:7px 11px!important;font-size:11px!important;line-height:1.2!important;}
/* Ritmo del laboratorio: entrada secuencial, gesto por función. */
html:not(.a11y-motion-paused) body.microbio-evolved .recorrido-en-pantalla{animation-delay:var(--recorrido-espera,0ms)!important}
html:not(.a11y-motion-paused) body.microbio-evolved .recorrido-titulo.recorrido-organico.recorrido-en-pantalla{animation:lab-organico-titulo 1.2s cubic-bezier(.2,.72,.2,1) both!important;animation-delay:var(--recorrido-espera,0ms)!important;transform-origin:left center}
html:not(.a11y-motion-paused) body.microbio-evolved .recorrido-imagen.recorrido-organico.recorrido-en-pantalla{animation:lab-organico 1.15s cubic-bezier(.2,.72,.2,1) both!important;animation-delay:var(--recorrido-espera,0ms)!important}
html:not(.a11y-motion-paused) body.microbio-evolved .recorrido-en-pantalla.recorrido-digital{animation:lab-digital .85s cubic-bezier(.19,1,.22,1) both!important;animation-delay:var(--recorrido-espera,0ms)!important}
html:not(.a11y-motion-paused) body.microbio-evolved .recorrido-en-pantalla.recorrido-muestra{animation:lab-muestra 1s cubic-bezier(.18,.75,.25,1) both!important;animation-delay:var(--recorrido-espera,0ms)!important}
@keyframes lab-organico-titulo{from{opacity:.15;translate:-22px 65px;scale:.93}65%{opacity:1}to{opacity:1;translate:0 0;scale:1}}
@keyframes lab-organico{from{opacity:.2;translate:0 45px;scale:.95}70%{opacity:1}to{opacity:1;translate:0 0;scale:1}}
@keyframes lab-digital{from{opacity:.2;translate:26px 8px;clip-path:inset(0 0 88% 0)}50%{opacity:.85;clip-path:inset(0 0 0 0)}to{opacity:1;translate:0 0;clip-path:inset(0)}}
@keyframes lab-muestra{from{opacity:.18;translate:0 45px;scale:.96}to{opacity:1;translate:0 0;scale:1}}
@media(max-width:760px){@keyframes lab-digital{from{opacity:.3;translate:14px 6px;clip-path:inset(0 0 80% 0)}55%{opacity:.9;clip-path:inset(0)}to{opacity:1;translate:0 0;clip-path:inset(0)}}}
html:not(.a11y-motion-paused) body.microbio-evolved .recorrido-en-pantalla.recorrido-muestra.lab-ritmo-1{animation:lab-muestra-cruce 1.1s cubic-bezier(.18,.75,.25,1) both!important;animation-delay:var(--recorrido-espera,0ms)!important}
html:not(.a11y-motion-paused) body.microbio-evolved .recorrido-en-pantalla.recorrido-muestra.lab-ritmo-2{animation:lab-muestra-foco 1.2s cubic-bezier(.18,.75,.25,1) both!important;animation-delay:var(--recorrido-espera,0ms)!important}
@keyframes lab-muestra-cruce{from{opacity:.2;translate:28px 35px;scale:.97}to{opacity:1;translate:0 0;scale:1}}
@keyframes lab-muestra-foco{from{opacity:.15;translate:0 28px;scale:.94}to{opacity:1;translate:0 0;scale:1}}
/* Entradas ligeras que no alteran el desplazamiento de la página. */
@keyframes recorrido-titulo-entrada{from{opacity:.45;translate:0 24px;scale:.99}to{opacity:1;translate:0 0;scale:1}}
@keyframes recorrido-imagen-entrada{from{opacity:.55;translate:0 18px;scale:.99}to{opacity:1;translate:0 0;scale:1}}
@keyframes recorrido-desde-derecha{from{opacity:.45;translate:20px 12px;scale:1}to{opacity:1;translate:0 0;scale:1}}
@keyframes recorrido-lateral-suave{from{opacity:.55;translate:15px 10px;scale:1}to{opacity:1;translate:0 0;scale:1}}
@keyframes recorrido-ascenso{from{opacity:.45;translate:0 25px;scale:1}to{opacity:1;translate:0 0;scale:1}}
@keyframes recorrido-ascenso-suave{from{opacity:.55;translate:0 16px;scale:1}to{opacity:1;translate:0 0;scale:1}}
@keyframes lab-organico-titulo{from{opacity:.45;translate:0 24px;scale:1}to{opacity:1;translate:0 0;scale:1}}
@keyframes lab-organico{from{opacity:.55;translate:0 18px;scale:1}to{opacity:1;translate:0 0;scale:1}}
@keyframes lab-digital{from{opacity:.5;translate:14px 8px;clip-path:inset(0)}to{opacity:1;translate:0 0;clip-path:inset(0)}}
@keyframes lab-muestra{from{opacity:.55;translate:0 18px;scale:1}to{opacity:1;translate:0 0;scale:1}}
@keyframes lab-muestra-cruce{from{opacity:.55;translate:12px 12px;scale:1}to{opacity:1;translate:0 0;scale:1}}
@keyframes lab-muestra-foco{from{opacity:.55;translate:0 16px;scale:1}to{opacity:1;translate:0 0;scale:1}}
