/* =========================================================
   RANAVERSE — Animations (green theme + extras)
   ========================================================= */
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes float{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-24px) rotate(10deg)}}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
@keyframes hueShift{0%{filter:hue-rotate(0)}100%{filter:hue-rotate(-18deg)}}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes ripple{to{transform:scale(3);opacity:0}}
@keyframes blink{50%{opacity:0}}
@keyframes shimmer{to{background-position:200% center}}
@keyframes kenburns{from{transform:scale(1)}to{transform:scale(1.08)}}
@keyframes spinConic{to{transform:rotate(360deg)}}
@keyframes scrolldot{0%{opacity:1;top:6px}70%{opacity:0;top:16px}100%{opacity:0}}
@keyframes popIn{0%{opacity:0;transform:scale(.8)}100%{opacity:1;transform:scale(1)}}

/* reveal */
[data-reveal]{transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}
[data-reveal="up"]{transform:translateY(34px)}
[data-reveal="left"]{transform:translateX(-40px)}
[data-reveal="right"]{transform:translateX(40px)}
[data-reveal="scale"]{transform:scale(.94)}
[data-reveal].in{opacity:1;transform:none}
[data-reveal][style*="--d"]{transition-delay:var(--d)}

.type-cursor{display:inline-block;width:3px;background:#6EE7B7;margin-left:3px;animation:blink 1s step-end infinite;align-self:stretch}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  [data-reveal]{opacity:1!important;transform:none!important}
  .blob,.hero-bg,.vh-slide.active video,.cta-band::before,.grad-text{animation:none!important}
  #cursor-glow{display:none}
}
