/**
 * Myth & Valor — Lenis helpers + scroll reveal.
 *
 * @package MythAndValor
 */

/* ---------- Lenis (minimal — no layout hacks) ---------- */
html.lenis {
  height: auto;
}

.lenis.lenis-smooth {
  scroll-behavior: auto !important;
}

.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}

.lenis.lenis-stopped {
  overflow: hidden;
}

/* ---------- Scroll reveal — soft fade + slight lift (transform does not shift layout) ---------- */
.mv-animate,
[data-mv-animate]:not([data-mv-animate="stagger-children"]),
[data-mv-reveal] {
  opacity: 0;
  transform: translate3d(0, 14px, 0);
  transition-property: opacity, transform;
  transition-duration: 0.85s;
  transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
}

.mv-animate.is-visible,
[data-mv-animate].is-visible,
[data-mv-reveal].is-visible {
  opacity: 1;
  transform: none;
}

[data-mv-animate="stagger-children"] {
  opacity: 1;
  transform: none;
}

/* fade-left / fade-right variants */
.mv-animate[data-mv-animate="fade-left"],
[data-mv-animate="fade-left"] {
  transform: translate3d(-20px, 0, 0);
}

.mv-animate[data-mv-animate="fade-right"],
[data-mv-animate="fade-right"] {
  transform: translate3d(20px, 0, 0);
}

.mv-animate[data-mv-animate="zoom-in"],
[data-mv-animate="zoom-in"] {
  transform: scale(0.97);
}

/* Wrapper divs around links/buttons — keep hover transitions intact */
.mv-animate.is-visible a,
.mv-animate.is-visible .drop-viewall,
.mv-animate.is-visible .mv-btn {
  transition-property: border-color, color, background-color, box-shadow, opacity, transform;
}

@media (prefers-reduced-motion: reduce) {
  .mv-animate,
  [data-mv-animate],
  [data-mv-reveal] {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}
