This is the answer. Don't criminalize vice, that just leads to systems of oppression. Instead, do not allow anyone to advertise vice or anything that is harmful to society.
Its working well for banning tobacco ads. Just have to ban ads for gambling, alcohol, cars, etc.