/* Movimiento sutil: entrada suave de los bloques del Home y de las portadas (hero) de cada sección.
   Solo se activa si el navegador no pide "reducir movimiento" ni se está editando en Elementor (clase html.tti-anim). */
.tti-anim{--tti-e:cubic-bezier(.22,.7,.2,1)}
.tti-anim .tti-rev{opacity:0;transform:translateY(22px);transition:opacity .9s var(--tti-e),transform .9s var(--tti-e);transition-delay:var(--d,0s)}
.tti-anim .tti-rev.is-vis{opacity:1;transform:none}
/* portadas: algo más lentas y amplias */
.tti-anim .tti-rev--hero{transform:translateY(10px);transition-duration:1.2s}
/* fotos: entran con un zoom casi imperceptible */
.tti-anim .elementor-widget-image.tti-rev img{transform:scale(1.06);transition:transform 1.8s var(--tti-e);transition-delay:var(--d,0s)}
.tti-anim .elementor-widget-image.tti-rev.is-vis img{transform:scale(1)}
/* la cenefa de la portada se despliega de izquierda a derecha */
.tti-anim .tti-guarda-abajo.tti-g04:after{clip-path:inset(0 100% 0 0);transition:clip-path 1.6s var(--tti-e) .35s}
.tti-anim .tti-guarda-abajo.tti-g04.is-vis:after{clip-path:inset(0 0 0 0)}
/* respiración muy leve de las fotos de los bloques al pasar el mouse */
.tti-bloque .elementor-widget-image img{transition:transform .8s var(--tti-e,ease)}
.tti-bloque .elementor-widget-image:hover img{transform:scale(1.025)}
@media (prefers-reduced-motion:reduce){.tti-anim .tti-rev,.tti-anim .elementor-widget-image.tti-rev img{opacity:1!important;transform:none!important;transition:none!important}.tti-anim .tti-guarda-abajo.tti-g04:after{clip-path:none;transition:none}}

/* ===== Portadas (hero): ocultas desde el primer dibujo para que no haya parpadeo ===== */
.tti-anim .tti-guarda-abajo.tti-g04 .elementor-widget:not(.is-vis):not(.tti-split):not(.elementor-widget-image),
.tti-anim .tb-hero .tb-wrap > *:not(.is-vis):not(.tti-split),
.tti-anim .tv-hero .tv-hero__grid > *:not(.is-vis):not(.tti-split){opacity:0;transform:translateY(10px)}
/* el título de la portada usa el mismo fundido suave que el resto del texto (sin efectos por letra o palabra) */
/* foto de la portada: se descubre de abajo hacia arriba, y luego respira muy despacio */
.tti-anim .tti-guarda-abajo.tti-g04 .elementor-widget-image{opacity:1;transform:none;clip-path:inset(100% 0 0 0);transition:clip-path 1.5s var(--tti-e) .25s}
.tti-anim .tti-guarda-abajo.tti-g04 .elementor-widget-image.is-vis{clip-path:inset(0 0 0 0)}
.tti-anim .tti-guarda-abajo.tti-g04 .elementor-widget-image img{animation:tti-respira 22s ease-in-out 1.6s infinite alternate;translate:0 calc(var(--py,0) * -1px)}
@keyframes tti-respira{from{scale:1}to{scale:1.07}}
@media (prefers-reduced-motion:reduce){.tti-anim .tti-guarda-abajo.tti-g04 .elementor-widget-image{clip-path:none}.tti-anim .tti-guarda-abajo.tti-g04 .elementor-widget-image img{animation:none;translate:none}}
