Anthony Rizzo hit a towering go-ahead, two-run homer off Jason Grilli in the seventh inning and the Chicago Cubs rallied for a 5-4 win over the Pirates in Pittsburgh.
Indians 3, White Sox 1: Danny Salazar struck out nine in 3 2/3 innings, Ryan Raburn hit an RBI double in Chicago, as the Indians beat the White Sox for the 10th time in a row this season.
Brian Bogusevic went 3 for 4 with his fifth homer of the season for Chicago. Dioneer Navarro added two hits as the Cubs ended Pittsburgh's four-game winning streak.
Carlos Villanueva (6-8) picked up the win in relief. Kevin Gregg worked the ninth for his 32nd save.
Salazar's pitch count was limited to 85, and after allowing Dayan Viciedo's single with two outs on his 78th pitch, he was replaced by Nick Hagadone with runners on first and third. The win got Cleveland to within a game of Tampa Bay for the second AL wild card spot, before the Rays played Friday night.
Bryan Shaw (4-3) threw two scoreless innings for the win.
Hector Santiago (4-9) remained winless since Aug. 18 for Chicago, going four-plus innings and giving up three runs and six hits while walking three.
Cleveland leads the season series 13-2 and has outscored Chicago 91-49 with four games left between the teams. Chicago was held to three runs or fewer for the 74th time and has scored five runs in its last four games, all losses, as the White Sox dropped their 13th of 15 and fell a season-high 31 games below .500.