Studio
Design is not a layer placed over code
The site is built as one system. A sentence sets rhythm, type defines space, interaction explains change, and code protects performance and access.
Start with the signal
Before choosing colour or motion, I look for one idea the visitor should feel and understand. On this site it is a type reactor: a letter enters as raw material and leaves as a grid, a mark, an interaction and a working page. Every client needs a different signal.
Typography is functional
A headline sets more than mood. It determines line length, number shapes, local character coverage and how italics behave. The typeface is tested before it becomes identity.
Motion shows cause and effect
Scroll is useful when it connects two states: material and finished product, problem and repair, data and decision. Content remains visible without scripts and reduced motion delivers a still final composition.
A live build instead of an abstract promise
You follow progress through a working link in the real browser. Decisions are made with real copy, images and devices, supported by a written proposal with scope, timing and price.
Testing is part of the design
Keyboard access, focus, 200% zoom, a small phone, slow connection, 404 page, failed form and no-JavaScript state determine whether the interface is finished.