Matt Holliday hit a solo homer with two outs in the top of the ninth inning off Brewers closer Francisco Rodriguez, completing the St. Louis Cardinals' comeback from a six-run deficit for a 7-6 win Friday night over Milwaukee.
Milwaukee has lost six straight and 10 of 11 games.
Holliday sent the first-pitch changeup from Rodriguez (3-3) into the left-field seats to break the tie. The Cardinals hit four homers and cut the sliding Brewers' lead in the NL Central to one game.
Trevor Rosenthal wrapped up six shutout innings for the St. Louis bullpen with his 28th save, getting two strikeouts after allowing a leadoff single to Aramis Ramirez in the bottom of the ninth. All-Star setup man Pat Neshek (4-0) tossed 1 1/3 scoreless innings for the win.
It was also a second straight tough loss for the Brewers, who fell 9-1 on Thursday to the Phillies despite Matt Garza's no-hit bid into the seventh inning.
Manager Ron Roenicke was ejected in the ninth after arguing a strike call. Afterward, a visibly-shaken skipper closed the clubhouse and didn't take reporters' questions, citing a death in the family of a player who he did not name.
"For respect of him right now, we're not going to let anybody in the clubhouse," Roenicke said. "Sorry, but these things are tough and I just don't want to leave any players open to anything."
The Cardinals chipped away with three home runs off starter Yovani Gallardo.
Jhonny Peralta hit a two-run homer — his team-high 14th — to get St. Louis within 6-5 with one out in the sixth, two pitches after manager Ron Roenicke visited the mound but decided against pulling Gallardo with the bullpen going.
Gallardo departed after Peralta's homer. The bullpen gave up the lead anyway.
Rob Wooten loaded the bases without retiring a hitter, and lefty-hitting Oscar Tavares drove in the tying run with a grounder against left-handed reliever Zach Duke.
The Brewers tagged Joe Kelly in his first start back from a nearly three-month stint on the disabled list with a left hamstring injury. Kelly got hurt April 16 at Miller Park.
Kelly plunked leadoff hitter Carlos Gomez just below the palm of his hand and Scooter Gennett singled. After a double steal, Milwaukee loaded the bases and eventually got a sacrifice fly from Ramirez and two-run double from Khris Davis for a 3-0 lead in the first.
Gennett tripled in a three-run second inning during an at-bat extended after a fan in the first row down the left-field line reached for a catchable foul ball that eluded Holliday.
Gallardo allowed five runs and seven hits in 5 1/3 innings against a career nemesis. Kelly gave up six runs and seven hits in three innings.
NOTES: The Cardinals claimed veteran C George Kottaras off waivers from the Cleveland Indians and planned to add him to the 25-man roster Saturday. They're looking for help behind the plate with Yadier Molina out with a thumb injury. The team said Molina had successful surgery Friday. ... Kolten Wong hit his fourth homer for the Cardinals since coming off the DL on July 6. ... Brewers C Jonathan Lucroy will start the All-Star game Tuesday with Molina out. ... RHP Marco Estrada spent his first day in the bullpen after being bumped from the rotation for Saturday's starter, rookie Jimmy Nelson (1-0). RHP ace Adam Wainwright (11-4) goes for St. Louis.
Link to box score: St. Louis (51-43) 7 at Milwaukee (52-42) 6
Join the pre-game, in-game and post-game discussion about each contest at The Cardinal Nation message board.