Animations & FX Reference

All scroll, hover, and interactive animation techniques across Outcrowd.io (inspiration) and the Brandarc prototype. Lottie animation assets are documented separately in the Lottie assets viewer.

Scroll Reveals

TechniqueOutcrowd.ioBrandarc

Character-by-character text reveal

Text splits into characters, each fading in individually, linked to scroll position

All pagesGSAP

GSAP + SplitType + ScrollTrigger (scrub mode, stagger: 0.05s, power2.out)

HomeGSAP

GSAP + SplitType + ScrollTrigger — hero, challenge, case studies headings (scrub, stagger: 0.05s, power2.out)

Element scroll reveals (fade, slide, scale, blur, clip-path)

Elements animate in with configurable presets as they enter the viewport, fully reversible

Home, About, Services, Branding, Design, Development, CasesWebflow IX2

Webflow IX2 scroll-triggered TRANSFORM_MOVE + STYLE_OPACITY with staggered keyframes across all pages

Home, AboutGSAP

useScrollAnimation — GSAP + ScrollTrigger scrub (11 presets, 5 easings, delay, randomRotate)

Simple scroll reveal (opacity + translateY)

Basic fade-up reveal with fixed travel distance

HomeWebflow IX2

IX2 stat-intoview: 4 stat numbers fade + slide up (y: 1.5-3rem → 0, 600ms ease, staggered delays)

AvailableComposable

useScrollReveal (not yet used, superseded by useScrollAnimation)

Staggered rotation entrance

Cards rotate into view alternately from left and right with translateX + rotateZ

HomeWebflow IX2

4 stats cards alternate from left (x:-30rem, z:-15deg) and right (x:28rem, z:+15deg), IX2 home-second

Gradient sweep on viewport entry

Radial gradient overlay sweeps across card backgrounds on scroll entry, then loops through positions

HomeWebflow IX2

stats cards: gradient sweeps x:-90%→0% (2s outExpo), then loops through 4 ambient positions (2s/step)

Scale-in reveal (scale + translate + opacity)

Elements scale down from oversized while sliding in and fading, creating depth

HomeWebflow IX2

solution cards scale 1.5→1, translateY 80%→0%, fade in, IX2 solution (SCROLL_PROGRESS)

Client logos staggered rise

Multiple logo elements rise from below at staggered scroll keyframes

HomeWebflow IX2

9 logos translate Y 100-200px → 0 at keyframes 10→70, smoothing 65, IX2 Brands Scroll

Hero Effects

TechniqueOutcrowd.ioBrandarc

Hero video expand-on-scroll

Hero video container grows from constrained to full-width as user scrolls through hero section

HomeInline JS

width 48–60% → 100%, borderRadius 1.7vw → 0, scroll-linked at 20–33%

HomeGSAP

useHeroScroll — GSAP timeline + ScrollTrigger scrub at 15%–35%, width 65% → 100%, borderRadius → 0

Hero image parallax + gloss overlay

Image zooms with object-position shift, frame expansion, and diagonal white gloss sweep

AboutGSAP

useHeroImageParallax — GSAP ScrollTrigger onUpdate: scale 1.0→1.8, crop 50%→-30%, frame +6%, gloss 0.3→0.75

Floating panel parallax (differential scroll speed)

Positioned elements scroll faster than page at constant rates with viewport-based fade in/out

HomeInline JS

Command Center side panels — left (12% faster) and right (8% faster) with fade in at 85% vh, fade out at top 18% vh

Parallax marquee text

Background-clip text with scroll-linked horizontal gradient sweep for reveal/unreveal

HomeInline JS

two-phase slide in (15–24%) / out (28–35%) within .height-cases section

Hero parallax layers

Multiple positioned elements move upward at different scroll rates, creating layered depth

HomeWebflow IX2

7 elements (set-1 through set-7) at different rates (-51vw to -70vw), IX2 hero-scroll-july (SCROLL_PROGRESS)

Case study hero expand

Hero container expands on scroll, similar to homepage but with different start sizes per page

All 6 case studiesInline JS

width 45-67% → 100%, borderRadius 1.87vw → 0, scroll range 17-32%

Interactive / Hover Effects

TechniqueOutcrowd.ioBrandarc

Card spotlight (cursor-tracking gradient)

Radial gradient follows cursor via CSS --mouse-x / --mouse-y custom properties on cards

HomeInline JS

#cards .service-card, ::before pseudo-element, opacity 500ms transition

HomeComposable

useCardSpotlight: .card-spotlight elements, same CSS variable technique

Magnetic button glow (explode)

Hidden .explode element inside buttons tracks cursor and scales up massively on hover

All pagesInline JS

scale 0.1→50–70, 0.6s cubic-bezier(.455,.03,.515,.955), text color swap

Magnetic element attraction

Elements shift toward cursor proportional to distance and configurable strength

All pages (footer + stats)Inline JS

Social icons (strength 10), stat blocks (strength 30), instant reset on leave

Multi-layer image hover

Image duplicated into layers that fan out on hover via staggered GSAP timeline

AboutGSAP

4 layers, scale property, power2.inOut, -0.1s reverse stagger, data-attribute config

Count-up numbers

Numbers animate from 0 to target value on viewport entry with easeOutCubic

AvailableComposable

useCountUp (IntersectionObserver trigger, plays once, not yet used in pages)

Custom cursor tracking

Custom cursor element follows mouse position over specific sections

Case study pagesInline JS

.cursor tracks mouse over #next section, opacity toggles on enter/leave (5 of 6 pages)

Navigation & Layout

TechniqueOutcrowd.ioBrandarc

Nav collapse on scroll direction

Nav links shrink/fade on scroll-down, expand on scroll-up; button fills the space

All pagesInline JS

scale(0.6), width 0, opacity 0, button expands to 16rem, 0.7s ease

Logo swap (section background detection)

Logo variant switches based on which section the nav overlaps via section-color attribute

All pagesInline JS

reads section-color="black"|"white", toggles opacity + z-index per frame

Smooth scroll (Lenis)

Momentum-based smooth scrolling replacing native scroll behavior

All pagesLenis

Lenis 1.0 (lerp: 0.09, wheelMultiplier: 0.7, smoothTouch: false)

Content Animations

TechniqueOutcrowd.ioBrandarc

Swiper carousel with hover theme

Touch-enabled carousel with slide color inversion on hover (light ↔ dark)

HomeSwiper

Swiper 8, speed 2100ms, loop, 2.25 slides desktop / 1 mobile

Testimonial section collapse

Content elements collapse into compact proof bar on scroll-down, reverse on scroll-up

HomeInline JS

headings width→0, Clutch icon 3.875vw→16.6vw, 0.3–0.7s transitions

Preloader (first visit)

Lottie logo animation on first visit, skipped on return via sessionStorage

All pagesInline JSLottie

DOMContentLoaded + sessionStorage check, hidden for internal navigation

Lottie scroll control

Lottie animation playback progress tied to scroll position (scrubbed)

ServicesWebflow IX2Lottie

card Lottie loops (SCROLL_INTO_VIEW trigger) Development: Lottie scrub via SCROLL_PROGRESS

Rotated card fan layout

Cards positioned at various rotation angles with translate offsets, creating a scattered/dynamic visual

CasesCSS

cards rotated -12deg to 30deg with translate offsets, static CSS transforms implying motion through layout

Non-Animation Effects

Media & Audio

EffectOutcrowd.ioBrandarc

Video playback control (visibility)

Video play/pause triggered by element visibility in viewport

ServicesInline JS

videos auto-play when card is visible, pause when scrolled away

Hero background video

Full-bleed autoplay video behind hero content

Case study pagesInline JS

autoplay muted background video behind hero section

HomeInline JS

autoplay muted loop video with shimmer placeholder, fades in when ready

Card hover video playback

Video plays on card hover/visibility, pauses otherwise

CasesInline JS

case study cards play embedded video on interaction

Awards hover sound

Audio feedback on hover over award badges

HomeInline JS

short audio clip plays when hovering over awards section elements

Forms & CMS

EffectOutcrowd.ioBrandarc

Form input focus states

Custom styled focus indicators on form fields

ContactCSS

custom border/shadow transitions on input focus

Form validation feedback

Visual indicators for valid/invalid form field states

ContactCSS

color and icon changes based on field validation status

CMS dynamic filtering

Client-side content filtering and progressive loading

BlogInline JS

Finsweet CMS Filter + CMS Load for category filtering and pagination

Coverage Summary

Outcrowd Only

Character text reveals, magnetic buttons, magnetic attraction, multi-layer image hover, nav collapse, logo swap, Lenis smooth scroll, Swiper carousel, marquee text, testimonial collapse, preloader, hero parallax layers, staggered rotation entrance, gradient sweep, scale-in reveal, client logos staggered rise, case study hero expand, custom cursor tracking, Lottie scroll control, rotated card fan layout

Both

Hero video expand-on-scroll, card spotlight (cursor gradient), element scroll reveals (IX2 vs GSAP ScrollTrigger), simple scroll reveal (IX2 vs useScrollReveal)

Brandarc Only

Hero image parallax + gloss, floating panel parallax, count-up numbers