Adam LaRoche drove in three runs with a pair of hits and the Pirates scored three times in both the first and second innings and went on to beat the Cardinals 7-2 Sunday for a three-game sweep.
Nate McLouth hit his 25th homer -- his previous major league high was 13 last season -- as the Pirates all but finished off St. Louis in the NL wild-card race.
The 2006 World Series champions have lost five in a row and 11 of 15. The Cardinals trail three teams for the wild card with only 13 games to play - St. Louis is five games behind Milwaukee for the fourth playoff spot, but would have been down by only two if it had swept the series.
"It was a bad weekend," manager Tony La Russa said.
The Cardinals appeared flat until both benches and the bullpens emptied briefly in the eighth. Pitcher Ron Villone was restrained by catcher Jason LaRue after Doug Mientkiewicz was doubled off second on Luis Cruz's line-drive out.
Aaron Miles, who tagged Mientkiewicz out, was upset Mientkiewicz tried to knock the ball out of his glove while running toward second earlier in the inning on a grounder that the second baseman misplayed for an error.
"The guy swiped at it, the umpires didn't see it," La Russa said. "He's acting like he's innocent, but the tape doesn't lie."
Mientkiewicz defended himself.
"I got too close to the second baseman on the ground ball. I thought I could get by him. I didn't deliberately smack at him. I just kept running, and that's what you're supposed to do," he said.
"I didn't try to hurt him and he said he would do the same thing if the game was close. I'm not going to have him run his mouth two seconds later when we're running off the field."
Villone and Mientkiewicz were Yankees teammates last year, but the pitcher said, "Neither one of us is a teammate now. He got away with a play, maybe he's mad he got doubled out and I'm upset that we lost."
When the Cardinals spend time during the offseason wondering why their season didn't go as they wanted, they can partly blame the Pirates. The Cardinals won 12 of 18 from them in 2007, only to go 7-10 against the NL Central tailenders this season.
St. Louis hadn't lost eight or more games to the Pirates since going 3-9 against them in 1997.
"I think we have a couple of weeks left to show the kind of team we have, not the team that's been around the last week or two," Villone said. "It's unfortunate what has happened. We're sick of losing."
The Pirates were coming off a four-game sweep by Houston and had lost six in a row and 17 of 20 going into the series.
"Right now, we're trying to knock out as many teams out as we can," Andy LaRoche said.
T.J. Beam (2-1), the second of five Pittsburgh pitchers, allowed one run over three innings for the victory. He followed Jason Davis, who gave up one run in three innings while making a spot start for Jeff Karstens (abscessed tooth). Karstens is scheduled to start Tuesday night against the Dodgers.
The Pirates bullpen gave up one run in six innings after shutting out St. Louis for the final eight innings of Pittsburgh's 7-6 victory in 12 innings on Saturday night.
Cardinals catcher Yadier Molina made his first start since bruising a thigh Wednesday against the Cubs, only to leave in the fourth inning with left quadriceps tightness.
Brad Thompson (5-3) gave up nine hits and six runs in 3 2-3 innings in his fifth start, falling behind 6-0 after two innings as each of the first five Pittsburgh batters reached base. McLouth, LaRoche and Brandon Moss had RBI singles in the first. LaRoche has 14 RBI in his last nine starts.
"We drooped some and when you droop, bad things happen," La Russa said of the first, when the Pirates had two infield hits and a bloop single.
In the second, McLouth walked ahead of LaRoche's two-run double. McLouth homered in the fourth off Randy Flores.