Bo Naylor had his first career two-homer game and drove in three runs as the Cleveland Guardians beat Kansas City 5-1 on Tuesday night, handing Royals pitcher Zack Greinke his 16th consecutive road loss.

Naylor hit a 430-foot solo shot to right in the third inning and a 397-foot blast to right-center in the fifth to score Myles Straw for his first home runs at Progressive Field. The 23-year-old rookie catcher entered the game with two homers.

Greinke (1-11) gave up four runs in five innings and remained winless on the road since Aug. 13, 2021, when he pitched for Houston at Angel Stadium. In 27 subsequent away starts, the 39-year-old right-hander is 0-16 with a 6.43 ERA over 134 1/3 innings.

Guardians starter Aaron Civale (4-2) worked a season-high eight innings, allowing one run on five hits. The right-hander struck out five and threw 60 strikes in 93 pitches before All-Star closer Emmanuel Clase worked a 1-2-3 ninth.

José Ramírez and Will Brennan each had RBI singles for Cleveland, which is in second place in the AL Central behind the Minnesota Twins. The Guardians are 3-2 on their six-game homestand.

Kansas City scored its only run in the fifth inning when Nicky Lopez singled in Michael Massey. Lopez had two of the team’s five hits.

The Royals have the second-worst record in the majors at 29-74.

Greinke made his 534th career start, which ranks 35th all-time, and equaled the longest overall losing streak in his 20 seasons in the big leagues with seven.

The game was completed in 1 hour and 59 minutes.