Work
You're looking at the portfolio.
There are no client case studies on this page. The studio is early, the work that exists has not shipped publicly, and putting logos or invented mockups here would mean showing you something that is not real.
So judge the site instead. It was built by the people who would build yours, under the same constraints, with no client to blame for the compromises. Everything on the right was measured on and you can repeat any of it from the page you are standing on.
- Trackers, analytics or cookies
- 0
No third-party script runs on this site. The content security policy allows outbound connections to this origin only, so one could not be added quietly.
- Automated accessibility violations
- 0
axe-core against WCAG 2.2 Level A and AA, on every page, at phone, tablet and desktop widths. Worth saying plainly: automated tools catch only the machine-checkable barriers. This is a floor, not a pass mark, and nobody who uses a screen reader daily has audited this site.
- Pages that work without JavaScript
- 12 / 12
Every page loaded in a browser with scripting switched off: the heading paints at full opacity and real size, the text is in the page as delivered, and the contact form still submits and still validates. Checked in a real browser, not inferred.
Decisions
Four choices made on this page, and what each one cost.
A portfolio of finished work shows you the outcome. This shows you the reasoning, which is the part that transfers to your project. Every trade-off below is live on the site you are reading.
Every page is rendered on demand. None of it is cached at the edge.
The content security policy issues a fresh single-use token per request, which is what makes an injected script impossible rather than merely unlikely. A token like that cannot be baked into a page that was cached an hour ago for someone else.
What it costs
We give up the CDN cache hit and pay a server render on every visit. On a site this size that is a few milliseconds. On a larger one it would be the wrong trade and we would make it differently.
There is no analytics on this site. No tag manager, no pixel, no session recorder.
It is the only way the privacy policy can be short enough that someone actually reads it, and true enough that we can point at the code behind every sentence in it.
What it costs
We do not know how many people read this page, how far they scroll, or which link brought them here. We find out when someone writes to us, and not before.
One theme, tuned once. There is no light mode.
A second theme doubles the number of colour pairs that have to hold their contrast ratios and halves the attention each one gets. We would rather one scheme be right than two be approximately right.
What it costs
If you prefer light interfaces, this site does not offer you one. That is a real cost to a real group of people and we are not going to pretend otherwise.
No icon library. The arrows are text characters.
Six glyphs did not justify a dependency, a build step and a network request. The ones here are ordinary characters the font already contains.
What it costs
Anything more complex than an arrow has to be drawn by hand as SVG, which is slower to author than picking from a set.
Client work is under way. When a project ships and the client is happy for us to talk about it, a case study lands on this page — with the same accounting of what it cost.