The disconnect is, that there are some opinions that are protected (religion, and recently also gender identity) but there are other opinions that aren't (political views or anything roughly correlated with any political party). (I use "opinion" in a broad sense here, as "something you choose" as opposed to "something you're born with" such as sex and race) There are obvious downsides of firing people for any such opinion that (1) people feel extremely passionately about, but is (2) ultimately irrelevant to the job at hand.