Fast casual lives or dies on lunchtime clarity: pick a base, add protein, choose a pickup slot, pay. When web and app drift apart visually and behaviourally, repeat diners hesitate — especially when dietary cues matter.
Where friction showed up
Nutrition and allergen prompts were accurate but buried. Checkout duplicated decisions users already made elsewhere in the journey. Loyalty affordances looked bolted on rather than part of the meal ritual.
We reframed the brief as fewer decisions per minute, not "more features".
Design system work
We shipped shared tokens for typography, spacing, and semantic colours tied to states (success, warning, dietary highlights). Marketing pages pulled from the same primitives as transactional flows so seasonal campaigns stopped introducing one-off components that polluted the app.
Storybook-backed documentation let agencies and internal designers extend without breaking rhythm.
IA for menus and dietary cues
Categories were regrouped around how people scan under time pressure: dietary filters surfaced earlier; calorie bands were consistent across SKUs; modifiers used progressive disclosure so advanced tweaks did not swamp first-time guests.
Accessibility as launch criteria
Contrast and tap targets were audited against WCAG AA for critical paths. Fixes landed before promotional pushes so campaigns did not amplify inaccessible surfaces.
Measurement stance
Public narrative sticks to indexed UX signals and moderated task outcomes — never revenue in this write-up. Checkout efficiency and mobile task-success indexes are the headline proof points alongside qualitative kitchen and ops feedback.