Jason Heyward drove in three runs, including the go-ahead home run in the top of the seventh inning, and the Atlanta Braves edged the Kansas City Royals, 4-3, in the opener of a two-game interleague set at Kauffman Stadium.
Jordan Schafer drove in the other run for the Braves. Starter Kris Medlen (5-7) allowed three runs on seven hits and a walk in seven frames. Craig Kimbrel escaped trouble in the ninth to notch his 22nd save of the season.
Eric Hosmer hit a two-run homer and Billy Butler drove in one run for the Royals. Tim Collins (2-2) took the loss after giving up Heyward's one-out shot to right while starter Ervin Santana surrendered three runs on six hits and three walks to go along with seven strikeouts in six innings.
Alex Gordon singled to start the home first and advanced to second when Medlen's pickoff attempt went awry. After a sacrifice bunt by Alcides Escobar, Hosmer grounded into a fielder's choice to third and Gordon was thrown out at the plate.
However, with Hosmer at second, Butler smacked a base hit up the middle to put the Royals on the board.
Chris Johnson doubled to lead off the fifth and Andrelton Simmons singled to left to put runners at the corners. Schafer ripped an RBI double to right followed by a two-run double by Heyward to give the Braves the lead.
"It's building, it's building," said Heyward. "It's going to take time. "It's going to take analyzing to make sure I know what's going on. Be very aware of how I'm feeling up there and what I need to tweak. It's definitely a step in the right direction."
The Royals responded in the home half. With two outs, Escobar singled to left, setting up Hosmer's two-run smash to right.
"Medlen was throwing a good game out there," said Hosmer. "It was a big swing to get us back in the game there. It was a battle between the bullpens. They've got a great bullpen and we've got a great bullpen. It just didn't go our way tonight."
Salvador Perez flied out to strand a runner at third in the bottom of the eighth.
In the ninth, Kimbrel walked Mike Moustakas and allowed a single by David Lough, putting runners at the corners. Elliot Johnson struck out, but Lough stole second base. After Jarrod Dyson struck out, Kimbrel intentionally walked Gordon, loading the bases. However, Escobar flew out to right to end the game.
The Royals were 1-for-10 with runners in scoring position ... The Braves have 97 home runs this season, tied for the National League lead with the Colorado Rockies ... Atlanta reliever Jordan Walden pitched a hitless eighth. He has not allowed a hit since June 8 and hasn't given up a run since returning from the disabled list on May 29.