/* Animacje wejścia na stronie głównej (współpracuje z animacje.js). Prefiks nxa-. */
@keyframes nxa-rise      { from { opacity:0; transform:translateY(42px); } to { opacity:1; transform:none; } }
@keyframes nxa-rise-blur { from { opacity:0; transform:translateY(34px); filter:blur(8px); } to { opacity:1; transform:none; filter:blur(0); } }
@keyframes nxa-left      { from { opacity:0; transform:translateX(-56px); } to { opacity:1; transform:none; } }
@keyframes nxa-right     { from { opacity:0; transform:translateX(56px); } to { opacity:1; transform:none; } }
@keyframes nxa-zoom      { from { opacity:0; transform:scale(.9); } to { opacity:1; transform:none; } }
@keyframes nxa-pop       { 0% { opacity:0; transform:scale(.3) rotate(-25deg); } 70% { opacity:1; transform:scale(1.15) rotate(4deg); } 100% { opacity:1; transform:none; } }
@keyframes nxa-track     { from { opacity:0; letter-spacing:.35em; } to { opacity:1; } }
@keyframes nxa-drift     { from { transform:scale(1.12); } to { transform:scale(1); } }

@media (prefers-reduced-motion:no-preference){
  /* ---------- hero: przy wczytaniu strony ---------- */
  body.home .elementor-element-286556b{overflow:clip}
  body.home .elementor-element-286556b::before{animation:nxa-drift 2.6s cubic-bezier(.2,.7,.2,1) both}
  body.home .elementor-element-8dda08f{animation:nxa-rise-blur 1s .15s cubic-bezier(.2,.7,.2,1) both}
  body.home .elementor-element-723a64a{animation:nxa-rise-blur 1s .35s cubic-bezier(.2,.7,.2,1) both}
  body.home .elementor-element-89cfcf9{animation:nxa-rise .8s .6s cubic-bezier(.2,.7,.2,1) both}
  body.home .elementor-element-4275574{animation:nxa-rise .8s .72s cubic-bezier(.2,.7,.2,1) both}

  /* ---------- reszta: dopiero w zasięgu wzroku (klasy nadaje animacje.js) ---------- */
  .nxa-ready [data-nxa]:not(.nxa-in){opacity:0}
  .nxa-ready [data-nxa].nxa-in{
    animation-duration:.9s;animation-timing-function:cubic-bezier(.2,.7,.2,1);
    animation-delay:var(--nxa-d,0ms);animation-fill-mode:both;
  }
  .nxa-ready [data-nxa="rise"].nxa-in{animation-name:nxa-rise}
  .nxa-ready [data-nxa="rise-blur"].nxa-in{animation-name:nxa-rise-blur;animation-duration:1s}
  .nxa-ready [data-nxa="left"].nxa-in{animation-name:nxa-left}
  .nxa-ready [data-nxa="right"].nxa-in{animation-name:nxa-right}
  .nxa-ready [data-nxa="zoom"].nxa-in{animation-name:nxa-zoom}
  .nxa-ready [data-nxa="pop"].nxa-in{animation-name:nxa-pop;animation-duration:.7s}
  .nxa-ready [data-nxa="track"].nxa-in{animation-name:nxa-track;animation-duration:1.1s}
}
