MINNEAPOLIS — After two narrow losses to start the season, Kirk Cousins and the Minnesota Vikings found a foolproof way to avoid the type of harrowing finish that has haunted them more often than not.
They put this game away ahead of time — against Russell Wilson and the Seattle Seahawks, no less.
“It's a razor's edge,” Cousins said. “You're living it both ways.”
Cousins threw three touchdown passes before halftime and guided three clock-draining field goal drives after that, as the Vikings cruised to a 30-17 victory on Sunday for their first win over the Seahawks in 12 years.
“It's the best offensive performance that I’ve seen in the eight years that I’ve been here,” coach Mike Zimmer said.
Alexander Mattison stepped in for the injured Dalvin Cook and racked up 171 total yards, rushing 18 times for 76 yards in the second half. After losing 27-24 in overtime at Cincinnati and 34-33 at Arizona, the Vikings (1-2) hit their stride in the second quarter, took the lead with 16 seconds left in the half and never lost control with 23 straight points.
They beat Seattle for the first time with Pete Carroll as coach and Russell Wilson as the quarterback, having lost on the road in each of the last three years to stretch their losing streak to seven. Last season, Mattison was stopped for no gain on fourth-and-1 at the 6-yard line with 1:57 left and the Vikings leading by five points. Wilson drove the Seahawks the other way for the winning touchdown.
“We definitely owed 'em that one," Mattison said, describing this game as having a “little vengeance feel to it.”
Cousins delivered the type of steely performance to defeat a more-decorated peer the Vikings have been lacking in his four seasons. He went 30 for 38 for 323 yards in his third consecutive turnover-free game, and the Vikings converted nine of 14 third downs.
“It’s been a different Kirk,” wide receiver Adam Thielen said. “He’s just locked in and on time. He’s trusting it. I think a big part of that is our o-line and the way they’re blocking and giving him enough time to sit back there and make his reads.”
The touchdown passes to Tyler Conklin, Thielen and Justin Jefferson in the first half filled up the highlight reels. The methodical marches after halftime were just as impressive and important. Even better for the Vikings, Greg Joseph bounced back from his 37-yard miss on the game's final play last week at Arizona and made all three of his field goals and all three extra points.
Wilson went 23 for 32 for 298 yards and a touchdown pass to D.K. Metcalf on the first drive, and Chris Carson carried 12 times for 80 yards and a second-quarter score.
Then a 44-yard kick by Jason Myers went wide left, ending his team-record streak of 37 straight field goals made, the fourth-longest in NFL history. The Seahawks never made it past the Minnesota 43-yard line after that. They had 81 total yards after halftime.
The Seahawks (1-2) are in last place in the stacked NFC West, putting them in quite a bind if they're going to make a resurgence to contention.
“We've got to make sure that we get right and get better and improve and make some adjustments so that it doesn’t look the same as it did,” Carroll said.
The Seahawks wasted a 14-point fourth quarter lead last week and lost in overtime to Tennessee.
“We can’t keep letting ones like this and last game slip away when we have opportunities in front of us,” linebacker Carlos Dunlap said. "Opportunities don’t come twice, so we’ve got to take advantage of each and every one because they count. They matter.”
Seattle's first regular-season visit to U.S. Bank Stadium was met with the pent-up noise from a crowd that waited 21 months to see the home team and had more than three extra hours to tailgate before the late-afternoon start time. Fake snow was sprinkled from the rafters to fit the northland theme the Vikings have embraced since moving in five years ago.
The last time the Seahawks played a non-preseason game in Minnesota was the wild-card round in record-setting subzero cold on Jan. 9, 2016, when Blair Walsh missed a 27-yard field goal for the Vikings near the end of Seattle's 10-9 win. This time, sunlight from an 82-degree day streamed in through the open glass doors behind the west end zone.
Seahawks: With DE Benson Mayowa (neck) already inactive, fellow starter and DE Kerry Hyder Jr. (concussion) departed in the second quarter. ... LB Jordyn Brooks (leg cramps) was carted off in the fourth quarter. ... Jamarco Jones replaced Brandon Shell (ankle) in the starting lineup at RT. Undrafted rookie Jake Curhan took some snaps there, too. Jones was ill in the third quarter.
Vikings: LB Anthony Barr (knee) was inactive for the third straight game. He has not played in more than a year. ... Ihmir Smith-Marsette hurt his toe in the second quarter and was replaced on kickoff returns by Ameer Abdullah.
Seahawks: visit San Francisco next Sunday, their first game against an NFC West foe.
Vikings: host Cleveland next Sunday, their second of three straight home games.