/* ============================================================
   ANIMATIONS — keyframes a odhalování při scrollu.
   Načítá se jako poslední, aby omezení pohybu přebilo vše ostatní.
   ============================================================ */

@keyframes pulse{ 50%{ opacity:.45 } }
@keyframes blink{ 50%{ opacity:0 } }

/* Prvky .reveal skrýváme jen tam, kde je JavaScript opravdu zapnutý.
   Původní verze na to potřebovala inline <script> v <head>, který
   přidával třídu .js — @media (scripting) zvládne totéž bez skriptu.
   Prohlížeč bez podpory dotazu obsah prostě nechá vidět, což je
   správné chování i pro roboty a čtečky. */
@media (scripting: enabled){
  .reveal{ opacity:0; transform:translateY(18px); transition: opacity .8s var(--ease-out), transform .8s var(--ease-out) }
  .reveal.in{ opacity:1; transform:translateY(0) }
}
.reveal.d1{ transition-delay:.08s }
.reveal.d2{ transition-delay:.16s }
.reveal.d3{ transition-delay:.24s }
.reveal.d4{ transition-delay:.32s }

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