On this site, a type scale decided at the start of the project lives today in var(--fs-38_). Nobody translated it again along the way. That is what happens when the decision and the stylesheet have the same author.
A classic web project, by contrast, passes through several steps: art director, UI, front-end, developer.
4 steps, 4 translations
Each handover is a translation, and a translation always loses something. The brief gets diluted, the mockup interprets the concept, the build interprets the mockup. The result resembles the original idea from a distance. Rarely up close.
Nobody is at fault. That is what the division of labour does, and the client pays for that friction in the back and forth and the compromises, without ever seeing it appear on a quote.
None of these steps is at fault, it is their number that opens the gap.
AI takes the execution, not the continuity
Since 2004 I have learned every link because the trade pushed me into it, from Flash to AI. Today I hold the chain from one end to the other: the angle, the art direction, the design system, the build, the deployment. An intent survives better when it does not change carrier.
The route does not get shorter, it is the handovers that disappear.
AI has made that possible at the scale of one person, and that is new. It executes fast, without tiring of repetitive work. On the other hand, it does not know why this type scale was chosen over another, so it cannot defend it three months later against a request it would find convenient.
This site compiles 242 pages at every build, in two languages, with a single width media query across the whole of it.