GLENDALE, Ariz. -- Kevin Kolb lost his job, then helped the Arizona Cardinals win their season opener.
Kolb replaced injured John Skelton and led Arizona on the deciding touchdown drive, throwing 6 yards to Andre Roberts for a score with 4:59 to play, and the Cardinals held on to beat the Seattle Seahawks 20-16 on Sunday.
Aided by two pass interference penalties, Seattle drove to the Arizona 4-yard line in the final seconds. But rookie Russell Wilson threw three straight incompletions and the Cardinals held on.
Adding to the confusion, Seattle appeared to have called a timeout when it had none remaining, but the replacement officials working the game later announced one of the previous timeouts was not, in fact, charged to the Seahawks.
Kolb, who lost out Skelton in the competition to start at quarterback for Arizona, was 6 of 8 for 66 yards on the winning drive.
Wilson, who won the quarterback job over Matt Flynn, completed 18 of 34 passes for 153 yards and a touchdown. He was intercepted once.
Marshawn Lynch, questionable for the game after a sore back limited him in practice, carried 21 times for 85 yards.
Seattle scored 13 consecutive points to go up 16-13 on Steven Hauschka's 39-yard field goal, and Arizona's offense had done nothing in the second half.
Then, on a 17-yard pass to Roberts, Skelton was hit and crumpled to the ground with an injured right ankle. Skelton was carted off the field and Kolb promptly overthrew Larry Fitzgerald. But he completed his next six throws, the last to Roberts, who stretched the ball over the pylon on the left sideline. A pass interference penalty against Seattle's Richard Sherman aided the drive.
Wilson completed his first four passes before Seattle had a fourth-and-6 at the Cardinals 27. Patrick Peterson was called for pass interference against Sidney Rice to keep the Seahawks alive at the Arizona 13.
Another pass interference penalty, against William Gay, moved it to the 6. Lynch carried to the 4 and Seattle coach Pete Carroll called timeout. But two plays earlier, the officials had announced the Seahawks used their final timeout. Considerable discussion followed field before referee Bruce Hermansen announced that the previous timeout should not have counted against Seattle because it was for an injury and came after an incomplete pass.
Leon Washington had an 83-yard kickoff return and 52-yard punt runback to set up 10 points for Seattle in what was mostly a penalty-laced defensive struggle.
One of Arizona's biggest plays came in the third quarter, when Russell tossed the ball to Lynch, who was hit hard by linebacker Sam Acho. The ball came loose on what initially was ruled an incomplete pass. Arizona coach Ken Whisenhunt challenged, and after a review it was reversed and called a lateral. Paris Lenon had recovered and returned it to the Seattle 17, and Jay Feely's 31-yard field goal put the Cardinals ahead 13-3.
Washington took the subsequent kickoff 83 yards and Wilson threw over the middle to Rice for the rookie quarterback's first NFL touchdown.
On the first play after the Seattle kickoff, Skelton attempted to throw the ball away, but Sherman made a tiptoe interception on the sideline at the Arizona 34. That set up Hauschka's 47-yard field goal that tied it 13-13.
Washington's long punt return set up Hauschka's go-ahead field goal.
Ryan Williams, who missed all of his rookie season with a torn right patella tendon, fumbled on his second NFL carry. Brandon Mebane recovered for the Seahawks at the Arizona 42. Hauschka's 27-yard field goal put the Seahawks up 3-0 halfway through the first quarter.
The Cardinals drove 75 yards in 13 plays, using up most of the rest of the quarter in the process, before Feely's 21-yard field goal tied it.
Skelton completed 4 of 6 passes for 50 yards on an 11-play scoring drive. He missed a wide-open Jeff King from the 1, but on the next play, LaRod Stephens Howling stretched the ball over the goal line and Arizona led 10-3.