/* ============================================================
   ايجاد | animations.css
   All @keyframes definitions + prefers-reduced-motion overrides.
   Loaded after style.css — selectors that use these keyframes
   (via the `animation:` property) live in style.css itself.
   ============================================================ */

@keyframes sparkle-fade{
    0%,100%{opacity:0;}
    50%{opacity:.5;}
  }

@keyframes float-blob{
    0%,100%{transform:translate(0,0) scale(1);opacity:.3;}
    50%{transform:translate(10px,12px) scale(1.03);opacity:.36;}
  }

@keyframes chip-float{
    0%,100%{transform:translateY(0) rotate(var(--r,0deg));}
    50%{transform:translateY(-14px) rotate(var(--r,0deg));}
  }

@keyframes fade-up{from{opacity:0;transform:translateY(18px);}to{opacity:1;transform:none;}}

@keyframes cursor-blink{50%{opacity:0;}}

@keyframes cnt-pulse-fx{
    0%{transform:scale(1);}
    35%{transform:scale(1.18);}
    100%{transform:scale(1);}
  }

@keyframes dash-float{0%,100%{transform:translateY(0);}50%{transform:translateY(-14px);}}

@keyframes draw{to{stroke-dashoffset:0;}}

@keyframes pulse{0%,100%{opacity:.4;r:4;}50%{opacity:1;r:7;}}

@keyframes marquee-scroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}

@keyframes picon-float{0%,100%{transform:translateY(0);}50%{transform:translateY(-5px);}}

@keyframes fire-rotate{ to{ --fire-angle:360deg; } }

@keyframes icon-pulse-glow{
    0%,100%{box-shadow:0 0 0 14px rgba(239,68,40,0.08), 0 0 80px rgba(239,68,40,0.4), 0 0 60px rgba(31,25,87,0.5);}
    50%{box-shadow:0 0 0 18px rgba(239,68,40,0.13), 0 0 100px rgba(239,68,40,0.55), 0 0 75px rgba(31,25,87,0.65);}
  }

@keyframes conn-flow{ to{ stroke-dashoffset:-336; } }

@keyframes pf-fade-in{from{opacity:0;transform:translateY(12px);}to{opacity:1;transform:none;}}

@keyframes testi-scroll-up{from{transform:translateY(0);}to{transform:translateY(-50%);}}

/* ---- Respect users who prefer reduced motion ---- */
@media (prefers-reduced-motion: reduce){ .noise-overlay{opacity:0;} }

@media (prefers-reduced-motion: reduce){ .bg-sparkle{animation:none;opacity:0;} }

@media (prefers-reduced-motion: reduce){ .ambient-orb, .blob{animation:none;} }

@media (prefers-reduced-motion: reduce){ .typewriter-cursor{animation:none;} }

@media (prefers-reduced-motion: reduce){ .cnt-pulse{animation:none;} }

@media (prefers-reduced-motion: reduce){ .marquee-track{animation:none;} }

@media (prefers-reduced-motion: reduce){
    .nav-cta, .btn-primary, .btn-ghost, .price-cta, .newsletter-btn{transition:none;}
  }

@media (prefers-reduced-motion: reduce){ .picon{animation:none;} }

@media (prefers-reduced-motion: reduce){ .bento-icon-badge{animation:none;} }

@media (prefers-reduced-motion: reduce){ .service-card::before{animation:none;} }

@media (prefers-reduced-motion: reduce){ .conn-pulse{animation:none;opacity:0;} }

@media (prefers-reduced-motion: reduce){ .wp{animation:none;} }

@media (prefers-reduced-motion: reduce){ .testi-col{animation:none;} }

@media (prefers-reduced-motion: reduce){
    .path-draw, .pulse-dot, .reveal, .reveal-scale, .reveal-blur, .reveal-slide-r, .reveal-slide-l, .reveal-rotate, .reveal-mask{animation:none !important;transition:none !important;}
  }

@media (prefers-reduced-motion: reduce){
    .path-draw, .pulse-dot{animation:none !important;}
  }

/* Moving starfield background */
@keyframes stars-drift{
  from{transform:translate(0,0);}
  to{transform:translate(-500px,-500px);}
}
@keyframes stars-twinkle{
  0%,100%{opacity:.55;}
  50%{opacity:1;}
}
@media (prefers-reduced-motion: reduce){ .star-layer{animation:none;} }

/* Phones 3D rotate-in (store design showcase) */
@media (prefers-reduced-motion: reduce){
  .phones-row .phone-shot{transition:none;opacity:1 !important;}
  .phones-row .phone-shot:nth-child(1){transform:rotateY(-16deg);}
  .phones-row .phone-shot-mid{transform:translateY(-14px);}
  .phones-row .phone-shot:nth-child(3){transform:rotateY(16deg);}
}

/* Footer background motion */
@keyframes footer-grid{
  from{transform:translate(0,0);}
  to{transform:translate(52px,52px);}
}
@keyframes footer-meteor{
  0%{transform:translate(0,0) rotate(-38deg);opacity:0;}
  6%{opacity:1;}
  70%{opacity:1;}
  100%{transform:translate(-460px,420px) rotate(-38deg);opacity:0;}
}
@keyframes footer-orb-a{
  0%,100%{transform:translate(0,0) scale(1);}
  50%{transform:translate(-70px,60px) scale(1.2);}
}
@keyframes footer-orb-b{
  0%,100%{transform:translate(0,0) scale(1);}
  50%{transform:translate(80px,-50px) scale(1.25);}
}
@media (prefers-reduced-motion: reduce){
  footer.adg-footer::before, .footer-orb{animation:none;}
  .footer-meteor{display:none;}
}
