/* Shrenit AI motion starter — adapt to your existing CSS stack.
   Keep motion purposeful, lightweight, and accessible. */
:root {
  --shrenit-purple: #7138e8;
  --shrenit-lavender: #f7f4ff;
  --shrenit-ink: #10152f;
}
@keyframes shrenit-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}
@keyframes shrenit-fade-up {
  from { opacity: 0; transform: translateY(18px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes shrenit-soft-pulse {
  0%, 100% { box-shadow: 0 0 0 0 rgb(113 56 232 / 0%); }
  50% { box-shadow: 0 0 0 8px rgb(113 56 232 / 8%); }
}
@keyframes shrenit-marquee {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

/* Multi-cadence asynchronous floating for cards */
@keyframes shrenit-float-1 {
  0%, 100% { transform: translateY(0) rotate(0deg); }
  50% { transform: translateY(-9px) rotate(0.8deg); }
}
@keyframes shrenit-float-2 {
  0%, 100% { transform: translateY(0) rotate(0deg); }
  50% { transform: translateY(-11px) rotate(-0.7deg); }
}
@keyframes shrenit-float-3 {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}
@keyframes shrenit-float-4 {
  0%, 100% { transform: translateY(0) rotate(0deg); }
  50% { transform: translateY(-10px) rotate(0.7deg); }
}
@keyframes shrenit-float-5 {
  0%, 100% { transform: translateY(0) rotate(0deg); }
  50% { transform: translateY(-12px) rotate(-0.8deg); }
}
@keyframes shrenit-float-6 {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-7px); }
}

/* Character subtle breathing float */
@keyframes shrenit-char-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-5px); }
}

/* Small floating decorative items */
@keyframes shrenit-float-badge {
  0%, 100% { transform: translateY(0) rotate(0deg); }
  50% { transform: translateY(-10px) rotate(6deg); }
}
@keyframes shrenit-float-plane {
  0%, 100% { transform: translate(0, 0) rotate(0deg); }
  25% { transform: translate(4px, -6px) rotate(2deg); }
  50% { transform: translate(-2px, -12px) rotate(-2deg); }
  75% { transform: translate(3px, -5px) rotate(1deg); }
}
@keyframes shrenit-float-sparkle {
  0%, 100% { transform: translateY(0) scale(1) rotate(0deg); opacity: 0.85; filter: drop-shadow(0 0 2px rgba(245, 158, 11, 0.4)); }
  50% { transform: translateY(-8px) scale(1.15) rotate(12deg); opacity: 1; filter: drop-shadow(0 0 8px rgba(245, 158, 11, 0.85)); }
}
@keyframes shrenit-float-sparkle-alt {
  0%, 100% { transform: translateY(0) scale(1) rotate(0deg); opacity: 0.8; filter: drop-shadow(0 0 2px rgba(113, 56, 232, 0.4)); }
  50% { transform: translateY(-10px) scale(1.2) rotate(-14deg); opacity: 1; filter: drop-shadow(0 0 8px rgba(113, 56, 232, 0.85)); }
}
@keyframes shrenit-float-mascot {
  0%, 100% { transform: translateY(0) rotate(0deg); }
  50% { transform: translateY(-8px) rotate(-1.5deg); }
}
@keyframes shrenit-float-gentle {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-6px); }
}

.motion-float { animation: shrenit-float 5s ease-in-out infinite; }
.motion-fade-up { animation: shrenit-fade-up .65s cubic-bezier(.2,.7,.2,1) both; }
.motion-soft-pulse { animation: shrenit-soft-pulse 2.6s ease-in-out infinite; }

.float-card-1 { animation: shrenit-float-1 5.4s ease-in-out infinite; }
.float-card-2 { animation: shrenit-float-2 6.2s ease-in-out infinite 0.7s; }
.float-card-3 { animation: shrenit-float-3 5.8s ease-in-out infinite 1.4s; }
.float-card-4 { animation: shrenit-float-4 5.6s ease-in-out infinite 0.3s; }
.float-card-5 { animation: shrenit-float-5 6.4s ease-in-out infinite 1.1s; }
.float-card-6 { animation: shrenit-float-6 5.2s ease-in-out infinite 1.8s; }

.hero-center-character { animation: shrenit-char-float 6.5s ease-in-out infinite; }
.float-badge { animation: shrenit-float-badge 4.8s ease-in-out infinite; }
.float-plane { animation: shrenit-float-plane 6s ease-in-out infinite; }
.float-sparkle { animation: shrenit-float-sparkle 3.6s ease-in-out infinite; }
.float-sparkle-alt { animation: shrenit-float-sparkle-alt 4.2s ease-in-out infinite 0.9s; }
.float-mascot { animation: shrenit-float-mascot 4.5s ease-in-out infinite; will-change: transform; }
.float-gentle { animation: shrenit-float-gentle 5s ease-in-out infinite; will-change: transform; }

.card-hover { transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease; }
.card-hover:hover { transform: translateY(-4px); box-shadow: 0 16px 38px rgb(57 30 112 / 10%); border-color: rgb(113 56 232 / 28%); }
.button-hover { transition: transform .18s ease, box-shadow .18s ease; }
.button-hover:hover { transform: translateY(-2px); box-shadow: 0 10px 24px rgb(113 56 232 / 22%); }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
}
