Kyle Lohse spun six scoreless innings Sunday and the Cardinals blanked the Brewers, 3-0, to complete a three-game sweep at Busch Stadium.
Lohse (12-2) scattered four hits and walked three while striking out six to earn sixth straight winning decision over his last nine starts. Jason Motte worked a scoreless ninth to nail down his 24th save of the season.
"I feel like it's a continuation of what I did last year," Lohse said of his success this season. "I know I had a rough middle part of the season (in 2011), but if you look at the season as a whole, I felt like I did a good job. This year is building off of that."
Daniel Descalso went 3-for-4 with an RBI triple and a run scored for the Cardinals, who swept the Brewers for the first time at the new Busch Stadium and the first time in St. Louis since March 31-April 3, 2003.
Marco Estrada (0-5) pitched well in defeat, giving up just a run on seven hits and a walk over six strong innings to remain winless on the season.
The Brewers have lost a season-high nine straight road games.
"We had chances to score. We needed a big hit, and we're not getting a big hit," Milwaukee manager Ron Roenicke said.
St. Louis struck first in the second inning as Jon Jay worked a one-out walk and Descalso followed with a triple into right field to plate Jay.
The Cardinals tacked on a run in the seventh as Descalso singled to start the frame before moving to second on a groundout. Two batters later, Allen Craig delivered a two-out double off the base of the wall in center to double the home team's advantage.
Mitchell Boggs worked around a two-out single to eighth to keep the Brewers off the board before the offense tacked on another run in the bottom half.
Carlos Beltran doubled to start the frame and David Freese followed with a single into center field to plate Beltran for a 3-0 lead.
Motte walked Rickie Weeks to start the ninth, but struck out Jonathan Lucroy and Cody Ransom before pinch-hitter Travis Ishikawa flew out weakly to shallow center to end the game.
Lohse is 6-8 against the Brewers in 20 career meetings and improved to 6-1 in 11 home starts in 2012. His last loss came on June 15 against Kansas City...The Cardinals wore there throwback light blue visiting jerseys to honor the 30th anniversary of the 1982 World Champions...Milwaukee went 0-for-6 with runners in scoring position and left nine on base.