.hero::after { animation: hero-orbit 10s ease-in-out infinite alternate; will-change: transform; }
.hero .btn { transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease; }
.hero .btn:hover { transform: translateY(-3px); box-shadow: 0 12px 30px rgba(0,0,0,.18); }
.stat-card { transition: transform .3s ease, box-shadow .3s ease; }
.stat-card:hover { transform: translateY(-4px); box-shadow: 0 24px 64px rgba(16,36,56,.14); }
.feature-card,.price-card { transition: transform .3s ease, box-shadow .3s ease; }
.feature-card:hover,.price-card:hover { transform: translateY(-7px); box-shadow: 0 24px 64px rgba(16,36,56,.14); }
.feature-card .icon-box { transition: transform .3s ease, background-color .3s ease; }
.feature-card:hover .icon-box { transform: rotate(-4deg) scale(1.08); }
.home-step-number { min-width: 2.5rem; transition: transform .25s ease; }
.home-step:hover .home-step-number { transform: translateX(4px); }

@keyframes hero-orbit {
  from { transform: translate3d(0,0,0) scale(1); }
  to { transform: translate3d(-1.5rem,1rem,0) scale(1.04); }
}

@media (prefers-reduced-motion: reduce) {
  .wow { visibility: visible !important; }
  .hero::after,.animate__animated { animation: none !important; }
  .hero .btn,.stat-card,.feature-card,.price-card,.feature-card .icon-box,.home-step-number { transition: none !important; }
  .hero .btn:hover,.stat-card:hover,.feature-card:hover,.price-card:hover,.feature-card:hover .icon-box,.home-step:hover .home-step-number { transform: none !important; }
}
