This path may lead to a practice encouraging too many colours over time. According to this stack overflow post, it is technically doable. But you’d be better off establishing a few different colours as a colour scheme because it’d be easier to see when reading the code what everything is meant to be.
As you can see, .photo-hero works because it is a valid value for hsl. However, when applying var(--base-color) to the first value of hsl in .photo-hero h1 span, it creates too many values, invalidating the CSS.