Republicans vs Democrats is not as deep a divide in morality as cosmopolitan vs rural.
It is impossible for a Democrat to lose in a majority urban voting block; it is equally impossible for a Republican to lose in a majority rural voting block. But where you live dictates your core principles far more than what party you belong to. A rural person is going to be far less tolerant of evil, far more pro-human-life, for where he lives, humans are rare. An urban person is far more likely to tolerate evil, for how else is he to get along with his neighbors less than 100 feet away?