PITTSBURGH - Anthony Rizzo's miserable second half perked up with one massive swing of the bat.
The first baseman slugged a towering go-ahead, two-run homer off Jason Grilli in the seventh inning and the Chicago Cubs rallied past the Pittsburgh Pirates, 5-4 on Friday night.
Rizzo entered the night hitting just .208 since the All-Star break but turned on an 83-mph slider from Grilli and sent it over the seats in right field to snap Pittsburgh's four-game winning streak.
"It's huge for him," Chicago manager Dale Sveum said. "Hopefully it carries into these last couple of weeks."
Brian Bogusevic went 3 for 4 with his fifth homer of the season for Chicago. Dioneer Navarro added two hits as the Cubs blunted Pittsburgh's momentum as the Pirates chase their first playoff berth in 21 years.
Carlos Villanueva (6-8) picked up the win in relief. Kevin Gregg collected his 32nd save when center fielder Ryan Sweeney tracked down Neil Walker's fly ball in front of the wall in the ninth.
Pedro Alvarez, Russell Martin and Garrett Jones hit consecutive solo home runs in the fourth for Pittsburgh. Andrew McCutchen went 2 for 4, but the Pirates lost for just the fourth time in 65 games when leading after six innings this season when Grilli (0-2) faltered.
Grilli, an All-Star after racking up 29 saves in the first half of the season, is still working his way back from a strained forearm that sidelined him for more than six weeks. Pittsburgh manager Clint Hurdle moved Grilli into a middle relief role when he was activated off the 15-day disabled list earlier this month.
Pitching in his first pressure situation since his return, Grilli entered with the Pirates up a run in the seventh. He nearly got out of the inning clean, but Luis Valbuena walked on a borderline 3-2 pitch. Rizzo followed taking a pitch heading for his shoetops and nearly sending it into the Allegheny River.
"He threw me a slider down and in, a pretty good pitch, and I tried to just put a good swing on the ball and not try to do too much," Rizzo said.
Chicago's bullpen made it stand up, silencing Pittsburgh over the final three innings after the Pirates erased an early 3-0 deficit against starter Jake Arrieta.