Mike Leake struck out a season-high 10 over seven innings, Matt Adams and Randal Grichuk homered, and the St. Louis Cardinals cooled off Milwaukee rookie Junior Guerra in a 5-1 victory over the Brewers on Sunday.

Aledmys Diaz scored from first on a single in the fifth to snap a tie and the Cardinals entered the All-Star break having cut a 12-game deficit to the Cubs to seven in the NL Central.

Adams snapped an 0-for-27 skid with a solo homer estimated at 455 feet to lead off the second. That ended a 16 1/3-inning scoreless streak for Guerra (6-2). The right-hander allowed another solo shot to Grichuk in the sixth and snapped a three-start winning streak.

Leake (6-7) allowed six hits and no walks in his first win since June 12.

Jonathan Lucroy had two hits, including an RBI single in the first for the Brewers.