MINNEAPOLIS (AP) -- Kirk Cousins helped Minnesota's offense make some progress by passing for 182 yards in the first half, and third-stringer Kyle Sloter threw for two fourth-quarter touchdowns as the Vikings rallied for a 21-20 victory over the Seattle Seahawks on Friday night.
Sebastian Janikowski kicked field goals from 35 and 55 yards in the first half for the Seahawks, who kept their starters in past halftime. Russell Wilson led one scoring drive against the vaunted Vikings defense, finishing 11 for 21 for 118 yards.
Out of sync in their previous game, Cousins and the Vikings assembled three possessions of 12 or more plays despite some disruptions by the Seahawks. Cousins went 17 for 28 without a turnover, and running back Dalvin Cook had two carries to complete his recovery from reconstructive knee surgery last season.
Vikings rookie Daniel Carlson, who just won the kicker job this week when seventh-year veteran Kai Forbath was released, pulled two 42-yard field goal attempts wide left in the first half, one on each side of the field.
The mention of a missed kick against the Seahawks still makes Vikings fans wince, three seasons after Blair Walsh's 27-yard try went, yes, wide left in the playoff game on a below-zero afternoon in Minnesota. Walsh spent last year with Seattle, struggled anew and was not brought back. The 40-year-old Janikowski, having edged out Jason Myers for the job, has taken over.
Rookie punter Michael Dickson, who beat out stalwart Jon Ryan this week, was just as sharp as Janikowski. His five punts averaged 53.6 yards per attempt, with a long of 61 yards and two times downed at the 3.
Chris Carson carried seven times for 26 yards and a touchdown and caught two passes for 20 yards for the Seahawks, who are trying to regenerate the power running attack that helped them reach two straight Super Bowls.
Rookie Rashaad Penny, who's also expected to factor heavily in the ground game this season, broke his finger in practice last week and did not play.
The driving force behind Seattle's NFC championships in 2013 and 2014 was the defense, which is undergoing a more significant renovation with Cliff Avril, Michael Bennett, Kam Chancellor and Richard Sherman all moved on. The Seahawks are at least set at linebacker with Bobby Wagner and K.J. Wright.
Wagner sacked Cousins for what would've been a 13-yard loss on third-and-goal at the 5, but Shaquill Griffen was called for holding Stefon Diggs during the play. Latavius Murray scored soon after. Wright delivered a jarring shoulder tackle on Diggs, who was targeted eight times. Newcomer Barkevious Mingo delivered his share of big hits in the first half, too.
BACKUPS COME UP BIG
David Moore caught a 31-yard touchdown pass from Alex McGough for the Seahawks and had a 75-yard punt return for a score called back by a holding penalty.
For the Vikings, Sloter's touchdowns went to Jake Weineke and Chad Beebe, before the go-ahead 2-point conversion completion to Weineke again. Weineke is a Minnesota native, undrafted from South Dakota State. Beebe, from Northern Illinois, is the son of former Buffalo wide receiver Don Beebe.
Three Seahawks players continued their practice of leaving the field during the singing of the "The Star-Spangled Banner" and returning shortly after: offensive tackle Duane Brown, defensive end Branden Jackson and defensive tackle Quinton Jefferson.
Seahawks: Fourteen injured players were listed on the inactive list, including WR Doug Baldwin (knee), CB Byron Maxwell (ankle) and SS Bradley McDougald (pectoral). Baldwin and Maxwell have been out the whole preseason. FS Tedric Thompson appeared to hurt his shoulder during a first-quarter tackle, but he returned.
Vikings: Nine injured players were listed on the did-not-dress list, including DE Everson Griffen (lower leg), CB Mackensie Alexander (ankle) and C Pat Elflein (ankle/shoulder). Diggs immediately went to the sideline with some apparent discomfort after the collision with Wright, but he came back.
The Seahawks host Oakland in their final exhibition game on Thursday.
The Vikings play at Tennessee to wrap up the preseason slate on Thursday.