# Sticky zoom hero

https://fieldbook.lizardi.mx/components/sticky-zoom-hero

Category: Scroll
![Still of the Sticky zoom hero component, a Fieldbook UI component in Scroll.](https://fieldbook.lizardi.mx/thumbs/sticky-zoom-hero.webp)
Preview video: https://ejpqcxcjbiyabxkx.public.blob.vercel-storage.com/previews/sticky-zoom-hero-5b161f67c4.mp4 (5 s, silent)

Sticky zoom hero: A hero panel that stays pinned while you scroll, pushing its backdrop toward you until it blurs out and hands the page to the text below.

## Frameworks

react, vue, svelte, astro, html

## Preview controls

These controls are passed to the demo. Defaults and limits describe the preview; consult the implementation for its full prop API.

| Name | Type | Default | Options or constraints |
| --- | --- | --- | --- |
| headline | text | ABOVE THE TREELINE | Up to 40 characters |
| accent | color | #FF6A1F | No additional limit in the metadata. |
| maxScale | number | 2 | From 1.1 to 3.5; step 0.1 |
| maxBlur | number | 14 | From 0 to 40; step 1 |
| textLift | number | 80 | From 0 to 200; step 10 |

## Usage notes

Sticky zoom hero uses the full page preview frame with a dark theme setting.

### Which frameworks are available for Sticky zoom hero?

Sticky zoom hero is available for React, Vue, Svelte, Astro, HTML. The live preview uses React; the source observations below apply to index.tsx. Check the selected port before relying on the same interactions.

### What does Sticky zoom hero depend on?

The React metadata lists these npm dependencies beyond React: motion.

### What accessibility details are visible in Sticky zoom hero?

The React source for Sticky zoom hero includes: attributes and handlers (aria-hidden, aria-label, tabIndex); explicit roles (region). These are source observations. Verify accessible names, focus order and keyboard behavior in the composed page.

### How does Sticky zoom hero handle reduced motion?

Sticky zoom hero reads the motion preference in its React source through useReducedMotion(). Preference-dependent expressions in index.tsx: effectiveBlur: reduced ? 0 : Math.min(40, Math.max(0, maxBlur)); effectiveLift: reduced ? Math.min(24, Math.max(0, textLift)) : Math.min(200, Math.max(0, textLift)); effectiveScale: reduced ? Math.min(1.06, Math.max(1, maxScale)) : Math.min(3.5, Math.max(1.1, maxScale)). Check the full implementation, shared styles and selected port with reduced motion enabled; these observations do not establish that every animation stops.

## Install through MCP

Connect your client, call get_component to retrieve the implementation, then get_install_command for installation instructions. Choose a listed framework, integrate the returned source and verify it in your application.

```json
{
  "tool": "get_component",
  "arguments": {
    "slug": "sticky-zoom-hero",
    "framework": "react"
  }
}
```

[For agents](https://fieldbook.lizardi.mx/docs/agents)
[MCP](https://fieldbook.lizardi.mx/api/mcp)

## Related open components

- [Blur fade reveal](https://fieldbook.lizardi.mx/components/blur-fade-reveal)
- [Parallax plate gallery](https://fieldbook.lizardi.mx/components/parallax-plate-gallery)
- [Curtain scroll reveal](https://fieldbook.lizardi.mx/components/curtain-scroll-reveal)
- [Progressive edge blur](https://fieldbook.lizardi.mx/components/progressive-edge-blur)
- [Scroll snap word list](https://fieldbook.lizardi.mx/components/scroll-snap-word-list)
- [Scroll Progress Text Reveal](https://fieldbook.lizardi.mx/components/scroll-progress-text-reveal)
