/* L'Atelier Indigo — accueil : effets au défilement.
   Les états « avant apparition » ne s'appliquent que si le script a posé la classe indigo-anim sur <html>. */

/* 1. Apparitions en cascade (classe posée par le script, retirée une fois l'élément arrivé) */
.indigo-anim .indigo-rv{opacity:0;translate:0 36px;transition:opacity .7s ease var(--rv-d,0ms),translate .95s cubic-bezier(.2,.7,.2,1) var(--rv-d,0ms),rotate .95s cubic-bezier(.2,.7,.2,1) var(--rv-d,0ms)}
.indigo-anim .indigo-rv.indigo-rv--pose{translate:0 54px;rotate:var(--rv-r,3deg)}
.indigo-anim .indigo-rv.est-vu{opacity:1;translate:0 0;rotate:0deg}

/* 2. Les lignes se tracent */
.indigo-anim .indigo-titre :is(h1,h2):after{clip-path:inset(0 100% 0 0);transition:clip-path .9s cubic-bezier(.6,.1,.2,1) .3s}
.indigo-anim .indigo-titre.est-vu :is(h1,h2):after{clip-path:inset(0 0 0 0)}

/* 3. Le contour des photos se pose, puis tremble au survol */
.indigo-anim .indigo-photo .et_pb_image_wrap:before,.indigo-anim .indigo-photo .et_pb_image_wrap:after{opacity:0;scale:.93;transition:opacity .5s ease .4s,scale .8s cubic-bezier(.2,.7,.2,1) .4s}
.indigo-anim .indigo-photo .et_pb_image_wrap:before{transition-delay:.6s}
.indigo-anim .indigo-photo.est-vu .et_pb_image_wrap:before,.indigo-anim .indigo-photo.est-vu .et_pb_image_wrap:after{opacity:1;scale:1}
@media (hover:hover){
.indigo-anim .indigo-photo:hover .et_pb_image_wrap:after{animation:indigo-tremble .45s steps(1) infinite}
.indigo-anim .indigo-photo:hover .et_pb_image_wrap:before{animation:indigo-tremble-2 .45s steps(1) infinite}
}
@keyframes indigo-tremble{0%{rotate:-1.2deg}33%{rotate:-.4deg;translate:1px -1px}66%{rotate:-1.8deg;translate:-1px 1px}}
@keyframes indigo-tremble-2{0%{rotate:.9deg}33%{rotate:1.6deg;translate:-1px 1px}66%{rotate:.2deg;translate:1px 0}}

/* 4. Les photos glissent doucement les unes par rapport aux autres au défilement (décalage posé par le script) */
.indigo-anim .indigo-photo .et_pb_image_wrap{transition:translate .6s cubic-bezier(.2,.7,.2,1)}

@media print{.indigo-anim .indigo-rv{opacity:1!important;translate:none!important;rotate:none!important}}
