/* MOT-2 Slide directionnel (alterne gauche/droite par index, mais vertical sur mobile pour eviter scroll horizontal) */
[data-reveal]{
  opacity:0;
  transform:translateY(28px);
  transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1);
}
[data-reveal].in{opacity:1;transform:none;}

@media (min-width:768px){
  [data-reveal]{transform:translateX(-28px);}
  [data-reveal]:nth-child(even){transform:translateX(28px);}
}

/* Stagger pour les grilles */
.stagger > *{
  opacity:0;
  transform:translateY(20px);
  transition:opacity .55s ease,transform .55s ease;
}
.stagger.in > *{opacity:1;transform:none;}
.stagger.in > *:nth-child(1){transition-delay:.05s;}
.stagger.in > *:nth-child(2){transition-delay:.12s;}
.stagger.in > *:nth-child(3){transition-delay:.19s;}
.stagger.in > *:nth-child(4){transition-delay:.26s;}
.stagger.in > *:nth-child(5){transition-delay:.33s;}
.stagger.in > *:nth-child(6){transition-delay:.40s;}
.stagger.in > *:nth-child(7){transition-delay:.47s;}
.stagger.in > *:nth-child(8){transition-delay:.54s;}

@media (prefers-reduced-motion:reduce){
  [data-reveal],
  .stagger > *{
    opacity:1 !important;
    transform:none !important;
    transition:none !important;
  }
  .hero-immersif__bg img{animation:none !important;}
}

/* Sticky scroll cue (hero) */
.scroll-cue{
  position:absolute;
  bottom:18px;
  left:50%;
  transform:translateX(-50%);
  width:1px;
  height:48px;
  background:rgba(255,255,255,0.4);
  z-index:2;
  overflow:hidden;
  display:none;
}
.scroll-cue::after{
  content:"";
  position:absolute;
  left:-1px;top:-100%;
  width:3px;height:100%;
  background:var(--gold);
  animation:scrollDrop 2.4s ease-in-out infinite;
}
@keyframes scrollDrop{
  0%{top:-100%;}
  50%{top:100%;}
  100%{top:100%;}
}
@media (min-width:768px){.scroll-cue{display:block;}}
@media (prefers-reduced-motion:reduce){.scroll-cue::after{animation:none;}}
