Back to Projects
Case Study

Reflection media

A Saudi personal-branding agency site: full design and build, Arabic RTL, static export

A marketing site for a Saudi agency that builds personal brands for professionals and business owners. Designed and built end to end: a CSS-variable design system on Tailwind v4 with no off-the-shelf UI kit, full Arabic copy, a GSAP hero animation, and three working contact forms on top of a 100% static, serverless site.

RoleUI/UX Design + DevelopmentDurationAbout 10 daysYear2026Live Site

Problem

An agency selling digital presence, and its own site is the first credibility test

The audience is professionals: doctors, lawyers, consultants, realtors, coaches. They have real expertise, but it is silent: no digital presence reflects it, so they lose opportunities to people with less experience and more visibility. The bind is doubled: the agency was in the same position, unable to sell presence without a front that proves it practices what it sells. So the site is not a services page; it is the sample.

Solution

A methodology that lets visitors self-select, and a page that names their profession

Instead of a flat services list, the content is built around a three-stage methodology (Foundation, Growth, Influence), each with a defined audience and six supporting points, so visitors place themselves in the right stage automatically. Then an If-you-are-a section addresses six professions by name with portrait imagery, so visitors literally see themselves on the page instead of a generic message. On top of that: a GSAP hero, a full CSS-variable design system on Tailwind v4, and a 100% static site that stays fast and costs almost nothing to run.

Impact

10Days of workfrom idea to launch
1Designer and developerone person, end to end
0UI kits usedevery component custom
0Servers to runstatic export, working forms

Process

01

Positioning before design

The first question here is a sales question, not a visual one: why does a professional hesitate to pay for presence? Because the market is full of people selling followers and vanity metrics. So the site opens with an explicit on-page position: we do not sell followers or vanity numbers. Everything after it backs that promise.

02

Building the methodology and copy

The Arabic copy is structured around three stages (Foundation, Growth, Influence), each with its own audience and six supporting points, followed by the If-you-are-a section for six professions.

03

Design system and motion

A full CSS-variable design system on Tailwind v4: color tokens, gradient scenes, and layers, with no shadcn, no MUI, no pre-built components. Typography is IBM Plex Sans Arabic for Arabic and Space Grotesk for Latin. The hero runs a GSAP animation: a mask reveal with three tilted stage cards, plus an interactive tabbed stages section with portraits and an animated arc.

04

Build and ship

Built with Next.js (App Router), React, and TypeScript as a full static export, deployed on Cloudflare. It includes a complete SEO layer (metadata, OG/Twitter cards, sitemap, robots), plus contact, FAQ, privacy, and terms pages, and a three-way form system that runs without a dedicated backend server.

Stack & Tools

Next.jsNext.jsApp Router + static export
ReactReactUI layer
TypeScriptTypeScriptType Safety
Tailwind v4Tailwind v4CSS-variable design system
GSAPGSAPHero animation
Framer MotionFramer MotionUI transitions
CloudflareCloudflareHosting

Experience Decisions

Three design and code decisions that made the page sell instead of showcase.

Self-selection

Three stages instead of a services list

A services list forces visitors to assess their own needs, the thing they are worst at. A Foundation to Growth to Influence methodology hands them a ruler to measure where they stand, so they self-select in seconds and land on the right offer without feeling sold to.

Card sequence

"Time for the world to see you": six professions stacking on scroll

Instead of a grid visitors skim past, each profession is a full card that pins to the top of the screen; the next one slides over it, the previous card shrinks slightly and its coloured edge stays visible above. Visitors watch the professions stack up one after another, and scrolling back fans them out again. Each profession has its own colour (gold for doctors, bronze for lawyers, emerald for real estate…) so every card stays distinct even folded into the stack. For visitors who prefer reduced motion, the shrinking stops and the cards stay full size.

Performance

A smooth experience on every device, not just the designer's

A site isn't tested on one fast screen and shipped. I tested it on mid-range devices, traced every stutter in scrolling or motion back to its cause in the code, and removed what weighed the browser down without changing anything visually. Visitors never see these details, but they feel them: a page that moves smoothly signals an agency that knows its craft.

Results

The site of an agency selling presence is its own first proof: execution quality is part of the pitch
A staged methodology gets visitors to self-select faster and more accurately than any services list
The agency takes contact and consultation requests from day one, at near-zero running cost
Smooth scrolling even on mid-range phones, after removing CSS properties that weighed the browser down instead of speeding it up

“An agency that sells digital presence needs a professional site of its own, one that presents it the way it deserves.”

Like this project?

I'd be happy to explain any design or technical decision in detail.

Get in touch