I always say, and will repeat, that people don’t vote for things like Brexit and Trump because they’re stupid.
Repeating something doesn't make it right.
Trump and Brexit ultimately appealed a contingent - neither small nor smart - that genuinely believes there is such a thing as a free lunch.
Now I have always been taught, and taught others myself, that there is no such thing as a free lunch. And anyone who is selling one is a crook, and anyone who believes them is in the final analysis, stupid.
If don't vote, you are stupid. If you believe (or can be persuaded to believe) in free lunches you are also stupid. And sadly "stupid+stupid>not-stupid" when it comes to electoral maths.