Obviously gay marriage is OK, and obviously racism is bad. These things seem so obvious that it’s easy to get frustrated and angry with people that disagree. How could they not see how wrong they are? Well, one’s ethical opinions (amongst other things) are predicated by one’s culture. It seems obvious that individual rights are the most important thing; nothing is more important than an individual’s choice to do stuff that doesn’t harm others, right? Well, that wasn’t always the case. Nor, I venture a guess, will it always be the case. Societies have valued all kinds of stuff above and beyond individual rights; whether it be sanctity, the glory of the state, or what have you.
It is hard to reason from first principles, just as it is hard to see how one’s culture could not be the “one true way”. The confederate flag guy who doesn’t like black people, and the pastor who thinks gays are evil: they have their own cultures. They are just as convinced of their viewpoints as you are. Your viewpoints just happen to have the winds of progress at their back (for the moment).
Take it easy on the high road, because almost certainly you hold beliefs right now, today, that will be mocked with equal vigor sometime in your lifetime.