← All work← № 02Case study 03 / 05№ 04 →
№ 03Under NDA

Interactive CMS Websites

A run of niche marketing sites for clients around the world, where the design was the deliverable — heavy animation, pixel-strict Figma, and accessibility that had to survive both.

Role
Frontend Engineer
Type
Marketing · CMS · Multiple clients
Stack
JS/TS · Twig · Animation
Worked with
Designers, content editors
Home · Scroll timeline0.0s – 2.4s
0s0.61.21.82.4
Hero title
Image mask
Nav reveal
Card stagger
prefers-reduced-motion → fades onlyTested on mid-range Android
Scroll timeline · motion layerRecreated with fake data · NDA
At a glance

Many sites,
many markets

Story

Animation-led sites tend to look right on the designer’s machine and break on a mid-range Android or a screen reader.

Constraint

Pixel-strict Figma, editable through the CMS, across a wide browser matrix.

Approach

Semantics and layout first; motion as a layer on top that degrades cleanly.

01Story

Not one project but a run of them: niche, CMS-driven marketing sites for clients in different parts of the world, each sold on its design. The animation was not decoration — it was the reason the client picked the studio.

But animation-led sites tend to ship as the thing that looks right on the designer’s machine and falls apart on a mid-range Android or with a screen reader.

02Constraints

Pixel-strict Figma with no license to simplify, editors who had to be able to change any of it through the CMS without breaking layout, and a browser matrix wider than a typical app project.

Accessibility and animation pull in opposite directions. Neither was allowed to lose.

03What I chose

I treated motion as a layer that had to degrade cleanly rather than as the structure itself — semantics and layout correct first, animation composited on top of transform and opacity so it stays off the main thread, and honouring reduced-motion rather than treating it as an edge case.

04Outcome

Outcome04
Performance

Animation on transform/opacity only — no layout thrash on mid-range devices.

Accessibility

Reduced-motion respected as a first-class path, not a disabled one.

Fidelity

Pixel-strict Figma shipped without compromising semantics or keyboard order.

Compatibility

Cross-browser rendering fixes across a client-mandated matrix wider than typical app work.

Say hi!
stevocvijetic96@gmail.com