CBS News projects that state Attorney General Josh Shapiro wins the Pennsylvania governor's race over Republican Doug Mastriano. Shapiro and Mastriano were running to succeed outgoing Gov. Tom Wolf, who is term-limited.
Gender seemed to figure in this race: 51% of men say they voted for Republican Doug Mastriano, compared with 47% who say they voted for Shapiro. Among women, 62% say they voted for Shapiro, while 37% voted for Mastriano. (Exit poll percentages may have updated since this post was published.)
Shapiro, 49, ran as a moderate Democrat. On the trail, he touted his record as an attorney general who has taken on cases addressing sexual abuse in the Catholic Church, sued the Trump administration over health care and reached settlements over student loan abuse and the opioid crisis.
Mastriano, 58, a far-right candidate backed by President Donald Trump, is an election denier who chartered buses to Washington for Trump's Jan. 6, 2021, speech, in which he. He has served as a state senator since 2019, following a 30-year career in the Army. After tours in Iraq and Afghanistan he eventually retired at the rank of colonel. In 2018, Mastriano ran for Congress, placing fourth in the GOP primary.
Mastriano trailed in polls leading up to the election because more votersas extreme.
Shapiro sought to paint Mastriano as an extremist with views outside the norm for most Pennsylvanians, warning about ties to antisemitism and election denialism as well support for banning abortion, including in cases of rape and incest. During the primary debate in late April, when Mastriano was asked about exceptions for rape, incest or the life of the mother, he responded "I don't give way for exceptions," and mentioned his primary opponent, Kathy Barnette: "She's going to be our next U.S. senator — she is a product of rape." Mastriano has proposed state legislation banning abortion at six weeks and said women who violate it should be charged.
Shapiro was first elected attorney general in 2016, winning his race by about 2.5 percentage points even though Donald Trump had beaten Hillary Clinton by a little over 1 point. Previously Shapiro served on the Montgomery County Board of Commissioners and in the Pennsylvania state House. He describes himself as a conservative Jew.
On the campaign trail, Mastriano's Christian faith was central to his political identity. He leaned into the conservative culture wars, arguing transgender women shouldn't be allowed to compete in women's sports and attacking trans people, targeting U.S. Assistant Secretary for Health Rachel Levine and others. He accused Shapiro of being weak on crime and also advocated for parents' choice in education, maintaining that critical race theory should not be taught in schools.acknowledges racial disparities that have persisted in U.S. history and offers a framework to understand how racism is reinforced in U.S. law and culture. There is , but some initiatives at the K-12 level are inspired by its tenets.
Mastriano has also come under fire for antisemitism. He called Shapiro out of touch for attending and sending his children to an "elite" private school — which happens to be a Jewish day school. Mastriano did not refer to other private schools in the same way. His campaign also spent money on Gab, the far-right social network known for antisemitic comments; it was also where the suspect accused in the deadly 2018 shooting at the Tree of Life synagogue in Pittsburgh posted before his attack.
During the campaign, a photo surfaced showing Mastriano posing in a confederate uniform at the Army War College where he earned a Ph.D and worked.
Shapiro consistently led in the polls after the May primaries and also held a massive fundraising lead. In the most recent three-month period he raked in over $25 million, while Mastriano brought in just over $3 million in that same timeframe. It led to a massive spending gap, with Shapiro spending nearly $40 million on ads in the general election, while Mastriano spent less than $1.5 million. But the race did tighten in the final weeks of the campaign season.