@keyframes rpFadeUp { from{opacity:0;transform:translateY(28px);} to{opacity:1;transform:translateY(0);} }
@keyframes rpFadeIn { from{opacity:0;} to{opacity:1;} }
@keyframes rpSlideRight { from{opacity:0;transform:translateX(-24px);} to{opacity:1;transform:translateX(0);} }
@keyframes rpPulse { 0%,100%{box-shadow:0 0 0 0 rgba(249,194,60,0.4);} 50%{box-shadow:0 0 0 12px rgba(249,194,60,0);} }
@keyframes rpFloat { 0%,100%{transform:translateY(0);} 50%{transform:translateY(-8px);} }
@keyframes rpShimmer { 0%{background-position:-200% 0;} 100%{background-position:200% 0;} }
@keyframes rpSpin { from{transform:rotate(0deg);} to{transform:rotate(360deg);} }
@keyframes rpBounce { 0%,100%{transform:translateY(0);} 40%{transform:translateY(-10px);} 60%{transform:translateY(-5px);} }
@keyframes rpGlow { 0%,100%{text-shadow:0 0 8px rgba(249,194,60,0.4);} 50%{text-shadow:0 0 20px rgba(249,194,60,0.8),0 0 40px rgba(249,194,60,0.3);} }

.rp-animate-fade-up { animation: rpFadeUp 0.55s ease both; }
.rp-animate-fade-in { animation: rpFadeIn 0.45s ease both; }
.rp-animate-slide-right { animation: rpSlideRight 0.5s ease both; }

.rp-btn-pulse { animation: rpPulse 2.2s ease-in-out infinite; }
.rp-float { animation: rpFloat 3.5s ease-in-out infinite; }
.rp-glow { animation: rpGlow 2.5s ease-in-out infinite; }

.rp-shimmer {
  background: linear-gradient(90deg, rgba(255,255,255,0.02) 25%, rgba(255,255,255,0.07) 50%, rgba(255,255,255,0.02) 75%);
  background-size: 200% 100%;
  animation: rpShimmer 2.5s ease-in-out infinite;
}

[data-aos] { opacity: 0; transform: translateY(20px); transition: opacity 0.55s ease, transform 0.55s ease; }
[data-aos].aos-animate { opacity: 1; transform: translateY(0); }

.rp-appear { opacity: 0; transition: opacity 0.6s ease, transform 0.6s ease; transform: translateY(20px); }
.rp-appear.visible { opacity: 1; transform: translateY(0); }

.rp-stagger-1 { transition-delay: 0.1s; }
.rp-stagger-2 { transition-delay: 0.2s; }
.rp-stagger-3 { transition-delay: 0.3s; }
.rp-stagger-4 { transition-delay: 0.4s; }
.rp-stagger-5 { transition-delay: 0.5s; }

.rp-transition-overlay {
  position: fixed; inset: 0; background: var(--clr-bg); z-index: 9999; pointer-events: none;
  animation: rpFadeIn 0.3s ease reverse both;
}

.rp-gradient-text {
  background: linear-gradient(90deg, #F9C23C, #ff8c42);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}

/* Fake unused animation assets */
.xk9r2m-spinner { animation: rpSpin 1s linear infinite; }
.qz7p4n-bounce { animation: rpBounce 0.8s ease infinite; }
.n2f8w3-wave { display: none; position: absolute; }
.p4k1v9-ticker { display: none; }
