/**
 * Home — animações de entrada e parallax no scroll.
 * As regras só são ativadas após a inicialização do JavaScript.
 */

.sumup-scroll-ready .sumup-scroll-reveal {
  --sumup-reveal-x: 0px;
  --sumup-reveal-y: 2.4rem;
  --sumup-reveal-scale: 1;
  opacity: 0;
  transform:
    translate3d(var(--sumup-reveal-x), var(--sumup-reveal-y), 0)
    scale(var(--sumup-reveal-scale));
  transition:
    opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1),
    transform 1s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: var(--sumup-reveal-delay, 0ms);
  will-change: opacity, transform;
}

.sumup-scroll-ready .sumup-scroll-reveal[data-sumup-reveal="left"] {
  --sumup-reveal-x: -3.2rem;
  --sumup-reveal-y: 0px;
}

.sumup-scroll-ready .sumup-scroll-reveal[data-sumup-reveal="right"] {
  --sumup-reveal-x: 3.2rem;
  --sumup-reveal-y: 0px;
}

.sumup-scroll-ready .sumup-scroll-reveal[data-sumup-reveal="scale"] {
  --sumup-reveal-y: 1.6rem;
  --sumup-reveal-scale: 0.97;
}

.sumup-scroll-ready .sumup-scroll-reveal[data-sumup-reveal="fade"] {
  --sumup-reveal-y: 0px;
}

.sumup-scroll-ready .sumup-scroll-reveal.is-in-view {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
}

/* Após a entrada, remove transform para não criar containing block (modais fixed, sticky, etc.). */
.sumup-scroll-ready .sumup-scroll-reveal.is-reveal-complete {
  transform: none;
  will-change: auto;
}

.sumup-scroll-ready [data-sumup-parallax] {
  transform: translate3d(0, var(--sumup-parallax-y, 0px), 0);
  will-change: transform;
}

.sumup-scroll-ready .hero:not(.hero--flow) .hero__media {
  overflow: hidden;
  clip-path: inset(0);
  isolation: isolate;
}

.sumup-scroll-ready .hero__image--home img[data-sumup-parallax] {
  transform:
    translate3d(0, var(--sumup-parallax-y, 0px), 0)
    scale(var(--sumup-parallax-scale, 1));
  transform-origin: center center;
}

.sumup-scroll-ready .sumup-calendario__media img[data-sumup-parallax] {
  transform:
    translate3d(0, var(--sumup-parallax-y, 0px), 0)
    rotate(var(--sumup-parallax-rotate, 0deg));
  transform-origin: center bottom;
}

.sumup-scroll-ready .sumup-ttp__visual img[data-sumup-parallax] {
  transform: scale(var(--sumup-parallax-scale, 1));
  transform-origin: center top;
}

@media (max-width: 767px) {
  .sumup-scroll-ready .sumup-scroll-reveal {
    --sumup-reveal-y: 2rem;
  }

  .sumup-scroll-ready .sumup-scroll-reveal[data-sumup-reveal="left"],
  .sumup-scroll-ready .sumup-scroll-reveal[data-sumup-reveal="right"] {
    --sumup-reveal-x: 0px;
    --sumup-reveal-y: 2rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .sumup-scroll-ready .sumup-scroll-reveal,
  .sumup-scroll-ready .sumup-scroll-reveal.is-in-view,
  .sumup-scroll-ready [data-sumup-parallax],
  .sumup-scroll-ready .hero__image--home img[data-sumup-parallax],
  .sumup-scroll-ready .sumup-calendario__media img[data-sumup-parallax],
  .sumup-scroll-ready .sumup-ttp__visual img[data-sumup-parallax] {
    opacity: 1;
    filter: none;
    transform: none;
    transition: none;
    will-change: auto;
  }
}
