ATLANTA — Freddie Freeman hit a two-run homer and drove in three runs, Touki Toussaint pitched into the sixth inning and the NL East-leading Atlanta Braves snapped a four-game skid with a 7-3 victory over the St. Louis Cardinals on Wednesday.

It was a big win for Atlanta, which began has a five-game lead over Philadelphia and opens a four-game home series against the Phillies on Thursday.

The Braves need any combination of six victories or Philadelphia losses to clinch their first division title since 2013.

PHILLIES 4, METS 0: Rhys Hoskins became the seventh-fastest player to hit 50 career home runs and Philadelphia kept pace in the NL East with a win at home.

Zach Eflin and five relievers combined on a six-hitter and Odubel Herrera added a two-run homer for the Phillies, who won consecutive series for the first time since July 25.

Hoskins’ opposite-field solo shot against Noah Syndergaard in the first inning was his 32nd homer of the season and 50th in 192 career games. Only Rudy York (153), Mark McGwire (161), Gary Sanchez (161), Ryan Braun (171), Aaron Judge (174) and former Phillies slugger Ryan Howard (182) reached 50 quicker, according to the Elias Sports Bureau.

BREWERS 7, REDS 0: Gio Gonzalez pitched six smooth innings on his 33rd birthday and Jesus Aguilar hit a three-run homer in Milwaukee’s win at home.

Manny Pina also had a three-run shot and Aguilar finished with four RBI. Gonzalez’s stellar showing helped the Brewers boost their lead for the top NL wild card to three games over St. Louis.

AMERICAN LEAGUE

RAYS 9, RANGERS 3: Tommy Pham homered twice while extending his on-base streak to 21 games and the late-surging Rays completed a three-game sweep at Arlington, Texas.

The Rays (85-66), who have won 14 of their 17 games in September and have 11 remaining, entered the day 5 games behind Oakland for the American League’s second wild card.

Adrian Beltre hit his 13th homer of the season for the last-place Rangers. It was the 475th of his career to match Stan Musial and Willie Stargell for 30th on the all-time list.

INDIANS 4, WHITE SOX 1: Jason Kipnis hit a grand slam with one out in the ninth inning and Cleveland rallied for a win at home.

Kipnis hit a 3-2 pitch from Ian Hamilton into the right field seats for his 1,000th career hit and was doused with buckets of water by his teammates as he conducted a postgame television interview.

ORIOLES 2, BLUE JAYS 1: Rookie DJ Stewart hit his first major league home run and host Baltimore used five pitchers to avoid a three-game sweep.

TWINS 8, TIGERS 2: Stephen Gonsalves threw six scoreless innings, and Minnesota’s offense pounded Detroit’s pitching, helping the Twins to a road victory.

INTERLEAGUE

PIRATES 2, ROYALS 1: Chris Archer pitched seven strong innings, and Pittsburgh completed a three-game sweep at home.

In his most impressive start since being acquired from the Tampa Bay Rays on July 31, Archer (5-8) allowed one run on six hits with eight strikeouts and one walk. The right-hander made it out of the sixth inning for the first time in nine starts for the Pirates.