/**
 * Homepage scroll reveals — smooth ease-in-out both when entering AND leaving view.
 * Pairs with js/home/home-framer-reveal.js (body.page-home only).
 */

html.page-home-reveal-init {
  /* Uses global silk curves — slightly longer so easing reads buttery */
  --framer-ease: var(--ease-smooth-opacity, cubic-bezier(0.33, 1, 0.68, 1));
  --framer-ease-soft: var(--ease-smooth-transform, cubic-bezier(0.22, 1, 0.42, 1));
  --framer-dur-in: 0.98s;
  --framer-dur-out: 0.78s;
}

html.page-home-reveal-init .framer-reveal-prep:not(.framer-reveal-visible) {
  opacity: 0;
  transform: translate3d(0, 1.5rem, 0);
  filter: none;
  will-change: opacity, transform;
  transition:
    opacity var(--framer-dur-out) var(--framer-ease),
    transform calc(var(--framer-dur-out) + 0.08s) var(--framer-ease-soft);
  transition-delay: 0ms;
}

html.page-home-reveal-init .framer-reveal-prep.framer-reveal-visible {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  will-change: auto;
  transition:
    opacity var(--framer-dur-in) var(--framer-ease),
    transform calc(var(--framer-dur-in) + 0.1s) var(--framer-ease-soft);
  transition-delay: var(--framer-d, 0ms);
}

@media (prefers-reduced-motion: reduce) {
  html.page-home-reveal-init .framer-reveal-prep {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
    will-change: auto !important;
  }
}

/* --------------------------------------------------------------------------
   Flexible Plans (#pricing) — transitions both ways (plan-card hover uses transform)
   -------------------------------------------------------------------------- */

html.page-home-reveal-init #pricing .framer-reveal-prep:not(.framer-reveal-visible) {
  opacity: 0 !important;
  transform: translate3d(0, 1.75rem, 0) !important;
  pointer-events: none;
  transition:
    opacity var(--framer-dur-out) var(--framer-ease) !important,
    transform calc(var(--framer-dur-out) + 0.08s) var(--framer-ease-soft) !important;
  transition-delay: 0ms !important;
}

html.page-home-reveal-init #pricing .framer-reveal-prep.framer-reveal-visible {
  pointer-events: auto;
  opacity: 1 !important;
  transform: translate3d(0, 0, 0) !important;
  transition:
    opacity var(--framer-dur-in) var(--framer-ease),
    transform calc(var(--framer-dur-in) + 0.1s) var(--framer-ease-soft),
    box-shadow 0.55s var(--framer-ease-soft) !important;
  transition-delay: var(--framer-d, 0ms);
}

@media (prefers-reduced-motion: reduce) {
  html.page-home-reveal-init #pricing .framer-reveal-prep:not(.framer-reveal-visible),
  html.page-home-reveal-init #pricing .framer-reveal-prep.framer-reveal-visible {
    opacity: 1 !important;
    transform: none !important;
    pointer-events: auto !important;
    transition: inherit !important;
  }
}

/* --------------------------------------------------------------------------
   Stats (#stats) — numbers + copy, bidirectional
   -------------------------------------------------------------------------- */

html.page-home-reveal-init #stats .stats-title.framer-reveal-prep:not(.framer-reveal-visible),
html.page-home-reveal-init #stats .stats-subtitle.framer-reveal-prep:not(.framer-reveal-visible),
html.page-home-reveal-init #stats .stats-image-wrap.framer-reveal-prep:not(.framer-reveal-visible) {
  opacity: 0 !important;
  transform: translate3d(0, 1.4rem, 0) !important;
  transition:
    opacity var(--framer-dur-out) var(--framer-ease) !important,
    transform calc(var(--framer-dur-out) + 0.08s) var(--framer-ease-soft) !important;
  transition-delay: 0ms !important;
}

html.page-home-reveal-init #stats .stats-title.framer-reveal-prep.framer-reveal-visible,
html.page-home-reveal-init #stats .stats-subtitle.framer-reveal-prep.framer-reveal-visible,
html.page-home-reveal-init #stats .stats-image-wrap.framer-reveal-prep.framer-reveal-visible {
  position: relative;
  z-index: 1;
  opacity: 1 !important;
  transform: translate3d(0, 0, 0) !important;
  transition:
    opacity calc(var(--framer-dur-in) + 0.06s) var(--framer-ease) !important,
    transform calc(var(--framer-dur-in) + 0.08s) var(--framer-ease-soft) !important;
  transition-delay: var(--framer-d, 0ms);
}

@media (prefers-reduced-motion: reduce) {
  html.page-home-reveal-init #stats .stats-title.framer-reveal-prep,
  html.page-home-reveal-init #stats .stats-subtitle.framer-reveal-prep,
  html.page-home-reveal-init #stats .stats-image-wrap.framer-reveal-prep {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}

/* --------------------------------------------------------------------------
   Why choose us — richer Framer-like motion
   -------------------------------------------------------------------------- */

html.page-home-reveal-init .trusted-section .why-choose-label.framer-reveal-prep:not(.framer-reveal-visible),
html.page-home-reveal-init .trusted-section .why-choose-heading.framer-reveal-prep:not(.framer-reveal-visible),
html.page-home-reveal-init .trusted-section .why-choose-copy.framer-reveal-prep:not(.framer-reveal-visible) {
  opacity: 0;
  transform: translate3d(0, 1.75rem, 0);
}

html.page-home-reveal-init .trusted-section .why-cta.framer-reveal-prep:not(.framer-reveal-visible) {
  opacity: 0;
  transform: translate3d(0, 2rem, 0) scale(0.96);
}

html.page-home-reveal-init .trusted-section .why-metric.framer-reveal-prep:not(.framer-reveal-visible) {
  opacity: 0;
  transform: translate3d(0, 2rem, 0) scale(0.97);
}

html.page-home-reveal-init .trusted-section .why-choose-label.framer-reveal-visible,
html.page-home-reveal-init .trusted-section .why-choose-heading.framer-reveal-visible,
html.page-home-reveal-init .trusted-section .why-choose-copy.framer-reveal-visible,
html.page-home-reveal-init .trusted-section .why-cta.framer-reveal-visible,
html.page-home-reveal-init .trusted-section .why-metric.framer-reveal-visible {
  opacity: 1;
  transform: none;
}

html.page-home-reveal-init .trusted-section .why-choose-plus {
  transition: transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: var(--framer-d, 0ms);
}

html.page-home-reveal-init .trusted-section .why-choose-label:not(.framer-reveal-visible) .why-choose-plus {
  transform: rotate(-90deg) scale(0.6);
}

html.page-home-reveal-init .trusted-section .why-choose-label.framer-reveal-visible .why-choose-plus {
  transform: none;
}

html.page-home-reveal-init .trusted-section .why-cta-plus {
  transition: transform 0.85s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: calc(var(--framer-d, 0ms) + 120ms);
}

html.page-home-reveal-init .trusted-section .why-cta:not(.framer-reveal-visible) .why-cta-plus {
  transform: rotate(90deg) scale(0.5);
}

html.page-home-reveal-init .trusted-section .why-cta.framer-reveal-visible .why-cta-plus {
  transform: none;
}

html.page-home-reveal-init .trusted-section .why-cta.framer-reveal-visible:hover .why-cta-plus,
html.page-home-reveal-init .trusted-section .why-cta.framer-reveal-visible:focus-visible .why-cta-plus {
  transform: rotate(90deg);
}

html.page-home-reveal-init .trusted-section .why-cta.framer-reveal-visible .why-cta-bg img {
  animation: whyCtaImageIn 1.1s cubic-bezier(0.22, 1, 0.36, 1) both;
  animation-delay: calc(var(--framer-d, 0ms) + 40ms);
}

@keyframes whyCtaImageIn {
  from {
    transform: scale(1.08);
    filter: saturate(0.85);
  }
  to {
    transform: scale(1);
    filter: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  html.page-home-reveal-init .trusted-section .why-cta.framer-reveal-visible .why-cta-bg img {
    animation: none !important;
  }

  html.page-home-reveal-init .trusted-section .why-choose-plus,
  html.page-home-reveal-init .trusted-section .why-cta-plus {
    transition: none !important;
    transform: none !important;
  }
}

