Canyon palette
Perennial Crossing
Five canyon stops with room to breathe — #83409b grounds, #ad6cc5 and #ca88e3 do the talking, #d59deb softens, #edbfff lifts. The triadic bones keep it coherent across bike-shop liveries that survive mud and sun. The darkest and lightest stops clear AA for large text.
violetcanyonfive-stop
#83409b
#ad6cc5
#ca88e3
#d59deb
#edbfff
The generator opens with #83409b as the primary and the next two stops as secondary and accent — adjust, check contrast, and export tokens or CSS from there.