# Punch (`.sds-scroll-punch`)

Punch — scroll animation. Scroll animation in SDS Motion Forge v5.0.0. It plays once when scrolled into view.

- Page: https://sds-motion-forge.netlify.app/animations/scroll-punch/
- Category: Scroll (https://sds-motion-forge.netlify.app/categories/scroll/)
- Animated properties: filter, opacity, transform
- Compositor-only: yes
- Needs child elements: no
- Needs per-character spans: no
- JavaScript: sds-scroll (optional)

## Use it

```html
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@salkomdesignstudio/sds-motion-forge/dist/categories/scroll.min.css" />

<div class="sds-scroll-punch" data-sds>Scrolls into view</div>
```

## How it works

Plays when the element enters the viewport (gated by data-sds + the scroll engine, or fire it yourself by adding the class). It animates filters (blur/brightness), opacity and movement and scale (transform) — compositor-only, so it never causes page reflow. Timing is fixed for this effect, but you can still override animation-duration/timing-function on the element.

## Related

- [Pixel In](https://sds-motion-forge.netlify.app/animations/scroll-pixel-in/)
- [Pop In](https://sds-motion-forge.netlify.app/animations/scroll-pop-in/)
- [Prism Reveal](https://sds-motion-forge.netlify.app/animations/scroll-prism/)
- [Radial Expand](https://sds-motion-forge.netlify.app/animations/scroll-radial/)
- [Viewport Rise](https://sds-motion-forge.netlify.app/animations/scroll-rise/)
- [Rise Right](https://sds-motion-forge.netlify.app/animations/scroll-rise-right/)
