/* Hero «a scrubbing» della home (assets/js/hero-scrub.js). La classe hero--seq la mette
   lo script solo quando il primo fotogramma è arrivato: fino ad allora resta il video. */
.hero__seq { position: absolute; inset: 0; width: 100%; height: 100%; display: block; opacity: 0; transition: opacity .6s var(--ease); }
.hero--seq .hero__seq { opacity: 1; }
.hero--seq .hero__video { visibility: hidden; }
@media (prefers-reduced-motion: no-preference) {
  .hero__seq { animation: heroIn 4.5s var(--ease) both; }
  /* la cinematica CSS dell'hero (heroPar, heroFade) lavora sullo scroll della pagina, che
     durante il pin continua a scorrere: spostava il video dentro l'hero fermo e scopriva
     il fondo. Con la sequenza attiva la regia la tiene ScrollTrigger. */
  .hero--seq .hero__bg, .hero--seq .hero__content { animation: none; }
}

/* Fascia Piscina a scrubbing (dal 07/10/2026): la sequenza prende il posto della foto di sfondo
   (che resta sotto, trasparente, per l'alt), con lo stesso zoom indietro legato a --pool. */
.pool__seq { position: absolute; inset: 0; width: 100%; height: 100%; display: block; opacity: 0; transition: opacity .6s var(--ease); }
.pool--seq .pool__seq { opacity: 1; }
.pool--seq .pool__img { opacity: 0; }
@media (prefers-reduced-motion: no-preference) {
  @supports (animation-timeline: view()) {
    .pool__seq { animation: poolZoom linear both; animation-timeline: --pool; animation-range: entry 0% exit 70%; }
  }
}
