Animation in vanilla CSS refers to creating visual motion and transitions on web elements using only pure CSS, without relying on JavaScript libraries or frameworks. CSS animations allow developers to control how elements move, change size, rotate, fade, or transform over time. They improve user experience by making websites feel more interactive, modern, and engaging. CSS animation is mainly achieved using two powerful features: transition and @keyframes animation. While transitions are best for simple state changes (like hover effects), keyframe animations provide full control over complex motion sequences.