The footer feels a little out of place. Like it was just thrown in there from a previous design. Maybe the call to action directly above the footer could incorporate the footer content to the left of the resting dog - you'd obviously need to adjust the vertical padding on that as well to accommodate.

So the very obvious question here is how are you planning on overcoming the "chicken and egg" problem?

I can definitely see the usefulness of this app - but without launching in a very small market I don't know how you'll have a large enough user base quickly enough to make the product worth anything to your users.

Tbh there are tons of benefits to the Javascript solution even without expanding it further.

You don't have to have a more complicated DOM with additional data properties to reference in the pseudo elements.

You're not bounded by the number of elements available to attach pseudo elements to. In my examples I wouldn't be able to go past 5 layers without adding additional div wrappers to the span, making it much harder to build a reusable component.

You're not relying on a pseudo class to display the text in a non-activated state which causes significant accessibility issues, specifically for screen readers.

So it sounds like your dev had his head in the right place for any number of reasons. Also, personally, I find Javascript a lot easier to manage as it becomes more complicated than CSS.

I think you would do well to include to include some callout text to explain why we should be effectively boycotting brands using palm oil.

While I can understand the use of all CAPS in locations where text formatting is limited, I feel like using it on your website makes it look like an angry Facebook post rather than a professional display. Just look at the following and tell me which appears more professional:

Select the Palm-Oil-using brands below and tweet that they have lost YOU as a customer!

Select the Palm-Oil-using brands below and tweet that they have lost you as a customer!

Maybe I'm just starting to get old, but I 100% assume any string preceded by # should be interactable - #earthyou. Maybe this was planned for later after traction picked up.

All-in-all I think the awareness you're bringing here is a good thing. I've been fairly "heads down" for the last few months and this is honestly the first time I've heard anything about palm oil.