# Press Spring (`.sds-btn-press-spring`)

Drops 3px with a squash, then rebounds through a two-step spring — the press you can feel. Buttons animation in SDS Motion Forge v5.0.0. It loops continuously as soon as the class is applied.

- Page: https://sds-motion-forge.netlify.app/animations/btn-press-spring/
- Category: Buttons (https://sds-motion-forge.netlify.app/categories/buttons/)
- Animated properties: transform
- Compositor-only: yes
- Needs child elements: no
- Needs per-character spans: no
- JavaScript: none required

## Use it

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

<button class="sds-btn-press-spring">Button</button>
```

## How it works

Plays as soon as the class is applied, looping continuously. It animates movement and scale (transform) — compositor-only, so it never causes page reflow. `--sds-duration-slower` controls the speed and `--sds-ease-spring` controls the feel — override either on the element or :root (the sds-fast/sds-slow modifier classes do exactly that).

## Related

- [Depth Press](https://sds-motion-forge.netlify.app/animations/btn-depth-press/)
- [Press Depth](https://sds-motion-forge.netlify.app/animations/btn-press/)
- [Press Coin](https://sds-motion-forge.netlify.app/animations/btn-press-coin/)
- [Press Drop](https://sds-motion-forge.netlify.app/animations/btn-press-drop/)
- [Press Elastic](https://sds-motion-forge.netlify.app/animations/btn-press-elastic/)
- [Press Pop](https://sds-motion-forge.netlify.app/animations/btn-press-pop/)
- [Press Seesaw](https://sds-motion-forge.netlify.app/animations/btn-press-seesaw/)
- [Prism Edge](https://sds-motion-forge.netlify.app/animations/btn-prism-edge/)
