STANFORD, Calif. (AP) — David Shaw tried to hold back his emotions on the sideline. The second-year Stanford coach watched his players bounce on both sides of him, then fans swarm the field from all angles, and he finally couldn't resist flashing a giant I-told-you-so smile anymore.
No Jim Harbaugh and no Andrew Luck, but the Cardinal still have every answer for Matt Barkley and Southern California.
Josh Nunes threw a go-ahead 37-yard touchdown to Zach Ertz, Stepfan Taylor ran for 153 yards and scored two touchdowns, and No. 21 Stanford upset second-ranked USC 21-14 on Saturday night for its fourth straight win in this series.
"We don't want to be that team known for one victory," Shaw said. "We want to be known for victory after victory, stacking wins on top of wins."
Make it four-of-a-kind against that long-time powerhouse from down south.
Heisman Trophy hopeful Matt Barkley threw for 254 yards and two interceptions while completing only 20 of 41 passes. He was sacked twice on the final drive for the Trojans (2-1, 0-1 Pac-12) and threw out of bounds on a final, desperate heave on fourth-and-39 from USC's 25-yard line.
Coming out of a two-year bowl ban, USC had national title hopes this season. Now the Trojans, who were held scoreless for the final 41:19, will have to climb out of another hole to get there.
"You learn and go back to playing Trojan football," said a disappointed Barkley, who has beaten every conference teams but is 0-4 against Stanford. "We got to just not put the blame on anybody, learn from our mistakes and make sure we bounce back."
Once the clock hit zeros, a sold-out crowd of 50,360 at Stanford Stadium rushed the field, tossing streamers and jumping in a wild celebration at midfield with Shaw and Stanford players caught in the middle of the mess. Stanford (3-0, 1-0) is 3-0 for the third straight season for the first time since 1970-72 and has its longest winning streak ever against USC in a rivalry that dates back to 1905.
"I love the energy and I love the enthusiasm," Shaw said. "But we are not surprised."
He might be the only one.
Luck, the No. 1 overall pick by the Indianapolis Colts, two-time Heisman Trophy runner-up and perhaps the greatest player in school history, is gone and so much about this season seemed uncertain. Now the only chance another senior quarterback and possible No. 1 overall pick has for revenge against the Cardinal now is a rematch in the Pac-12 title game.
"It's not the end of the world," said USC coach Lane Kiffin said, now 0-3 against Stanford. "We'll get back on the plane, go home and we'll get better."
Stanford's Jordan Williamson missed field goals of 47 and 23 yards and had a 51-yarder blocked by T.J. McDonald. With a defense that flustered Barkley and a new quarterback that found his footing late, the kicker who missed three field goals in the Fiesta Bowl loss to Oklahoma state last season could smile in the pile with everybody else.
Except for the Trojans, that is.
A year after Luck led Stanford back in a 56-48 triple-overtime thriller at the Coliseum, a new crop of Cardinal players delivered another moment to savor.
Taylor took a short screen pass and scurried 23 yards for a tying touchdown late in the third quarter. Nunes scampered 12 yards on a third-and-10 from midfield in the fourth and then delivered the strike to Ertz, who juked a defender and dove into the end zone to give Stanford a 21-14 lead and send the home fans into a flurry with 10:20 to play.
"That was a great route," Nunes said. "We knew we had been trying to set up that route for a while, and Zach just ran a great route with great protection."
The last chance for USC never amounted to much.
Marqise Lee caught an 18-yard pass on fourth-and-4 on the sideline that was originally ruled out of bounds. After a video replay, officials ruled Lee's left foot landed in bounds and he controlled the ball.
Mistakes finally doomed the Trojans.
USC had a 10-yard holding penalty, then Trent Murphy sacked Barkley, followed by a 5-yard false start penalty on the Trojans and a sack by Chase Thomas before Barkley's final heave out of bounds.
Nunes threw for 215 yards, two touchdowns and two interceptions on 15-for-32 passing in the redshirt junior's biggest game yet. In the end, all that really mattered to Luck's replacement was the win.
USC center Khaled Holmes, who left last week's victory over Syracuse on a cart with a right leg injury, struggled in his limited time on the field along with the rest of the offensive line to protect Barkley from Stanford's relentless rush.
Stanford sacked Barkley four times and had him constantly losing his poise in the pocket. The Cardinal outgained the Trojans 417 to 280 total yards and held USC to only 26 yards rushing.
"Against the best quarterback in the nation, these guys played great," Shaw said of his players.
The Trojans seemed poised to run away from Stanford at the start.
But each time the Trojans scored, Taylor — often in Luck's shadow the past three years — refused to let his team go without a fight and perhaps launched his own Heisman campaign in the process.
Taylor ran 59 yards, making four defenders on a nine-man defensive front miss and running for touchdown that tied the score 14-all midway through the third quarter. He finished with five catches for 60 yards.
A pass interference penalty by Terrence Brown against Lee extended USC's drive in the second quarter. Then Robert Woods caught a 24-yard pass from Barkley, sliced back right and dove just short of the pylon to set up Penn State transfer Silas Redd's second short TD run to give the Trojans a 14-7 lead.
A wild, wacky sequence in the final 8 minutes of the first half featured five turnovers and, perhaps amazingly, no points by either side.
At one point, Barkley threw two interceptions — one to Jordan Richards and another to Brown — sandwiched between an interception thrown by Nunes that landed in the hands of Dion Bailey on three consecutive plays. Jawan Starling picked off another pass by Nunes in the final second of the half.
But just like the rest of a miserable night on The Farm, the Trojans couldn't convert when it counted.
Antonio Gonzalez can be reached at: www.twitter.com/agonzalezAP