Powered by a popular incumbent governor, and an income-tax issue that hit Democrats hard, New Hampshire Republicans overcame Joe Biden’s eight-point win over President Trump to win control of state government.

The NHGOP swept every corner of Concord, including the governor’s office, the executive council and both chambers of the Legislature.

The five-member executive council approves contracts, confirms the governor’s nominees and manages state spending. Republicans now hold a four-to-one majority after winning District 1 and District 5, and holding Districts 3 and 4.

Republicans Joe Kenney and Dave Wheeler bested the Democrat incumbents while Janet Stevens and incumbent Ted Gatsas held onto existing Republican seats. Cinde Warmington, the lone Democrat to win a council seat, easily won the seat currently held by Andru Volinsky, who ran for governor this year.

In the Senate, Republicans flipped four seats to take a 14-10 majority. Gary Daniels (SD-11), Kevin Avard (SD-12) and Bill Gannon (SD-23) all won rematches from 2018. Bedford’s Denise Ricciardi will take District 9’s seat away from Peterborough’s Jeanne Dietsch.

The New Hampshire House will have a Republican majority after picking up at least 50 seatsbased on preliminary results and before any recounts are completed.

Part of the credit goes to Gov. Chris Sununu who, unlike 2018, aggressively campaigned on behalf of down-ballot Republicans. It also didn’t hurt that he received more than 500,000 votes — the most ever for a New Hampshire gubernatorial candidate.

But Republicans also gave a shout out to Democrat Dan Feltes and his dogged pursuit of a paid family medical leave plan that included a tax hike. Thanks to Feltes’ leadership, statehouse Democrats cast multiple votes in favor of the proposal.

Republicans labeled it an “income tax,” while Democrats insisted it was an insurance premium or, at worst, a payroll tax. Either way, it gave Sununu and his would-be state House allies a central message: Democrats want more taxes. To stop them, vote Republican.

“The Democrats never learn their lesson on the income tax. New Hampshire voters don’t want it in any form at all,” said veteran NHGOP strategist Mike Dennehy. “The big problem for the Democrats is that they refuse to listen to voters, they think they know what’s best for Granite Staters, and that higher taxes is always the answer.”

Here’s a recap of NHGOP gains in the House:

In Belknap County, Republicans won all 18 seats — a pick up of two. In the Belmont-Laconia floterial, Travis O’Hara defeated incumbent Charlie St. Clair, and incumbent Democrat David Huot came in fifth in Laconia’s four-member base district.

In Carroll County, Republicans likely picked up three seats. Karen Umberger edged out Democrat Ellin Leonard in the three-member district the represents Conway and neighboring towns. Mark McConkey appears to have eked out a victory over incumbent Democrat Susan Ticehurst. In Wolfeboro, Brodie Deshaies and John MacDonald both won for Republicans, a net pickup of one seat.

Republicans even gained in the Democrat-friendly environs of Cheshire County, expanding from two GOP representatives to five.

The first pickup came from Matthew Santonastaso in the floterial covering Rindge, Jaffrey, Dublin, Roxbury, Harrisville and Fitzwilliam. Ben Kilanski won as a Republican in Winchester, which has not elected a Republican in decades. Republican Jennifer Rhodes currently holds a half percentage point lead over incumbent Democrat Bruce Tatro in Cheshire-15 — a race that will likely be recounted in the coming days.

Robert Theberge won as a Republican in Berlin, a traditionally Democratic town, and Arnold Davis appears to have picked up a seat for the GOP in Coös District 2. The GOP picked up two seats in Coös County.

Grafton County’s House delegation made a major shift to the right, going from 22 Democrats and three Republicans to 12 Republicans and 13 Democrats next session (pending recounts) — a net gain of nine for the GOP.

Hillsborough County, New Hampshire’s largest, represented by 78 Democrats and only 38 Republicans, also saw a significant shift. Republicans picked up 20 there but lost one — with a couple of races close enough for a recount. Hillsborough County encompasses Manchester and Nashua.

Republicans picked up nine seats in Merrimack County, including a seat in Hooksett that Republicans lost in a special election this past March. John Leavitt, who lost the special election primary in January of this year, prevailed over Kathleen Martins. Martins, a Democrat, narrowly won by 39 votes in March.

In Rockingham County, Republicans picked up seats in Northwood, Brentwood, Epping, Derry, Londonderry and Hampton. Former NHGOP Chairman Wayne MacDonald beat out incumbent Democrat Anne Warner in Londonderry, which will again be represented by all Republicans.

Strafford County saw four pickups for the GOP: Former state Sen. Fenton Groen and Tom Kacynski prevailed in Rochester floterial seats. At the same time, Republican Aidan Ankarberg went uncontested to win a vacant seat in Rochester Ward 3, and former State Rep. Len Turcotte is going back to Concord to represent Barrington.

Escaping unscathed was Sullivan County, which will again be six Democrats and six Republicans.