/* v40: calm Ken Burns motion for the TOP hero and seamless works-image handoff. */

.page-home .hero__slide {
  z-index: 0;
  opacity: 0;
  transform: scale(1.058);
  transform-origin: 50% 50%;
  transition: opacity 1.6s cubic-bezier(.4, 0, .2, 1);
  animation: none;
}

.page-home .hero__slide:nth-child(2n) {
  transform-origin: 46% 50%;
}

.page-home .hero__slide:nth-child(3n) {
  transform-origin: 54% 48%;
}

.page-home .hero__slide.is-active {
  z-index: 1;
  opacity: 1;
  animation: homeHeroGentleZoom 6.4s cubic-bezier(.2, .05, .2, 1) both;
}

.page-home.home-op-active .hero__slide.is-active {
  animation-play-state: paused;
}

@keyframes homeHeroGentleZoom {
  from { transform: scale(1.012); }
  to { transform: scale(1.058); }
}

.page-home .works__main-image,
.page-home .works__main-image--incoming {
  transform-origin: 50% 50%;
}

.page-home .works__main-image--incoming {
  filter: blur(7px) saturate(.96);
  transform: translate3d(var(--works-enter-x, 30px), var(--motion-parallax-y, 0), 0) scale(1.095);
  transition: opacity .98s cubic-bezier(.22, 1, .36, 1),
              transform 1.12s cubic-bezier(.22, 1, .36, 1),
              filter .92s cubic-bezier(.22, 1, .36, 1);
}

.page-home .works__main-image--incoming.is-entering {
  opacity: 1;
  filter: blur(0) saturate(1);
  transform: translate3d(0, var(--motion-parallax-y, 0), 0) scale(1.065);
}

.page-home .works__main-image.is-leaving {
  filter: blur(4px) saturate(.94);
  transform: translate3d(var(--works-leave-x, -18px), var(--motion-parallax-y, 0), 0) scale(1.078);
  transition: opacity .92s cubic-bezier(.4, 0, .2, 1),
              transform 1.08s cubic-bezier(.22, 1, .36, 1),
              filter .82s ease;
}

.page-home .works__visual.is-transitioning .works__caption {
  transition-delay: 0s;
}

.page-home .works__visual:not(.is-transitioning) .works__caption {
  transition-delay: .08s;
}

@media (prefers-reduced-motion: reduce) {
  .page-home .hero__slide,
  .page-home .hero__slide.is-active {
    transform: none;
    animation: none;
    transition-duration: .2s;
  }
}
