animation-fill-mode: forwards удерживает стили последнего keyframe после animationend — fade-in блока остаётся видимым без класса .is-visible в JS.
both применяет задержку до старта и forwards после конца — удобно для staggered списка.
- [animation-fill-mode — MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/animation-fill-mode) — none, forwards, backwards, both.
---
## Сброс
При повторном запуске анимации снимите fill или переопределите свойства — иначе конфликт с hover.
