@keyframes hero-in { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
@keyframes float-glint { 0%,100% { opacity: .15; transform: translate3d(0,0,0) scale(.8); } 45% { opacity: .8; transform: translate3d(12px,-18px,0) scale(1.1); } }
@keyframes toast-in { from { opacity: 0; transform: translateY(10px); } }
.hero-content > * { animation: hero-in .65s both var(--ease); }
.hero-content > :nth-child(2) { animation-delay: .08s; }
.hero-content > :nth-child(3) { animation-delay: .14s; }
.hero-content > :nth-child(4) { animation-delay: .2s; }
.hero-spark { position: absolute; z-index: 1; width: 5px; height: 5px; border-radius: 50%; background: var(--gold-100); box-shadow: 0 0 18px 4px var(--gold-500); animation: float-glint 8s infinite ease-in-out; pointer-events: none; }
.hero-spark.one { top: 23%; left: 47%; }
.hero-spark.two { top: 63%; left: 72%; animation-delay: -3s; }
.hero-spark.three { top: 37%; left: 88%; animation-delay: -5s; }
.quick-card, .game-card, .promotion-card { transition: transform .22s var(--ease), border-color .22s, box-shadow .22s; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms!important; animation-iteration-count: 1!important; transition-duration: .01ms!important; }
}
