Democrats are fortunate to be on the side of history and also being on the side of where ideas progress. Republicans on the other hand, well, aren't, to put it bluntly.
Another thing going for Democrats is the electorate is slowly but surely in support gay marriage and pro-choice. Republicans, still use these two issues to get their base fired up and the fringe of the base chooses to throw these issues in the electorates face come election time. More so the issue of abortion than gay marriage.
Here is where the Republicans are in a losing battle.
The electorate doesn't want to hear it any longer....but don't tell them that.
It doesn't take much to bait the fringe and even main stream Republicans into debating these issues. Most recently, you had John McCain discussing abortion and using air quotes when speaking of the women's health.
Bad idea John, bad idea.
Until Republicans learn to tame the base to not make these issues front and center and turn off moderates and other on the fencers, the further they will continue to go into the abyss of irrelevancy.