/* ==========================================================================
   VerdaCrop Agrisciences — Animations
   ========================================================================== */

@keyframes vcSlideDown {
  from { transform: translateY(-100%); }
  to { transform: translateY(0); }
}

@keyframes vcKenBurns {
  from { transform: scale(1.06); }
  to { transform: scale(1.16); }
}

@keyframes vcFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-14px); }
}

@keyframes vcPulseRing {
  0% { box-shadow: 0 0 0 0 rgba(216, 161, 42, .5); }
  70% { box-shadow: 0 0 0 18px rgba(216, 161, 42, 0); }
  100% { box-shadow: 0 0 0 0 rgba(216, 161, 42, 0); }
}

@keyframes vcSpin {
  to { transform: rotate(360deg); }
}

.vc-preloader__mark { animation: vcSpin 1.1s linear infinite; }
.vc-float { animation: vcFloat 6s ease-in-out infinite; }
.vc-pulse { animation: vcPulseRing 2.4s infinite; }

/* ---------- Scroll reveal ---------- */
[data-reveal] {
  opacity: 0;
  transform: translateY(38px);
  transition: opacity .85s cubic-bezier(.22, .61, .36, 1), transform .85s cubic-bezier(.22, .61, .36, 1);
  will-change: opacity, transform;
}
[data-reveal="left"] { transform: translateX(-44px); }
[data-reveal="right"] { transform: translateX(44px); }
[data-reveal="zoom"] { transform: scale(.92); }
[data-reveal="fade"] { transform: none; }
[data-reveal].is-revealed { opacity: 1; transform: none; }

/* ---------- Hero content stagger ---------- */
.vc-hero__slide .vc-hero__inner > .container > .row > * > * {
  opacity: 0;
  transform: translateY(30px);
}
.vc-hero__slide.is-active .vc-hero__inner > .container > .row > * > * {
  animation: vcHeroIn .95s cubic-bezier(.22, .61, .36, 1) forwards;
}
.vc-hero__slide.is-active .vc-hero__inner > .container > .row > * > *:nth-child(1) { animation-delay: .18s; }
.vc-hero__slide.is-active .vc-hero__inner > .container > .row > * > *:nth-child(2) { animation-delay: .34s; }
.vc-hero__slide.is-active .vc-hero__inner > .container > .row > * > *:nth-child(3) { animation-delay: .5s; }
.vc-hero__slide.is-active .vc-hero__inner > .container > .row > * > *:nth-child(4) { animation-delay: .66s; }

@keyframes vcHeroIn {
  to { opacity: 1; transform: translateY(0); }
}

/* ---------- Link + card micro interactions ---------- */
.vc-underline {
  position: relative;
  display: inline-block;
}
.vc-underline::after {
  content: "";
  position: absolute; left: 0; bottom: -2px;
  width: 100%; height: 1px;
  background: currentColor;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform .4s cubic-bezier(.22, .61, .36, 1);
}
.vc-underline:hover::after { transform: scaleX(1); transform-origin: left; }

.vc-lift { transition: transform .4s cubic-bezier(.22, .61, .36, 1), box-shadow .4s cubic-bezier(.22, .61, .36, 1); }
.vc-lift:hover { transform: translateY(-8px); }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .001ms !important;
  }
  [data-reveal] { opacity: 1; transform: none; }
}
