KANSAS CITY, Mo. -- Omar Infante told Royals shortstop Alcides Escobar that on a muggy night at Kauffman Stadium, with a stiff breeze blowing out to left field, any ball hit solidly would clear the fence.
Infante never predicted that he'd hit one with the bases loaded.
"There was a lot of wind," Infante said. "I just wanted to make contact, do something."
The grand slam in the third gave the Royals a 7-2 lead, and they tacked on one more run the next inning. Then, after starter Jason Vargas gave up four runs in the fifth, the Kansas City bullpen twirled five scoreless innings to preserve the victory.
"We just knew that with Vargas going four innings, we needed to piece it together," Royals manager Ned Yost said. "Mariot did a phenomenal job."
Vargas and Angels counterpart Matt Shoemaker (5-2) combined to give up 14 runs on 20 hits -- four of them home runs -- and neither got an out in the fifth.
"It was definitely not fun," Shoemaker said. "It's going to make me tougher, not that I wasn't, but you learn from it. The third inning was a long inning. There were a lot of runs."
C.J. Cron hit two homers for Los Angeles, and Mike Trout sent a shot to center in the first inning that cleared the fence, four rows of seats and a walkway before landing in a fountain.
"I squared it up. I definitely barreled it," Trout said. "I was trying to put a good swing on it and got a pitch I could hit. I'm always looking fastball and reacted. I got a heater."
Trout's mammoth drive only counted for one run, though.
It was going to take more than that to win, with the ball carrying so well.
Cron added a homer to left with two outs in the second inning, but Kansas City quickly erased its two-run deficit in the third by matching its biggest inning of the season.
The seven-run outburst against Shoemaker began with a double by Escobar, who added a single later in the inning. Jarrod Dyson, Cain and Eric Hosmer hit singles, Butler walked, Gordon hit a sacrifice fly and Salvador Perez added another base hit.
By that point, the Royals had pulled ahead 3-2 and the bases were loaded for Infante, who hit a high fly to left field that carried just over the wall and landed in the bullpen.
His first career grand slam came in his 1,268th game.
"The ball was really carrying tonight," Yost said. "I knew he hit it good."
Butler added an RBI single in the fourth to make it 8-2. Shoemaker finished the inning but did not emerge for the fifth after allowing eight runs on 11 hits and a walk.
The rookie was 5-0 with a 3.00 ERA in his previous seven starts.
Vargas nearly squandered the big cushion when Cron hit a two-run shot in the fifth for his first career multihomer game. David Freese, Chris Iannetta and Collin Cowgill joined Trout in stringing together enough hits to eventually put up four runs.
Howie Kendrick nearly tied the game with a shot to the wall in right, but Cain caught it on a gallop at the warning track to end the inning and preserve the Royals' 8-6 lead.
Despite some hiccups, their bullpen kept the Angels off the board the rest of the way.
"We had a lot of great opportunities. We could have easily put our heads down when it was 8-2, but we fought back," Trout said. "We just fell short."
The Angels traded RHP Ernesto Frieri to Pittsburgh for RHP Jason Grilli before the game. "We're trying to get a bullpen with some chemistry," manager Mike Scioscia said. ... The Angels optioned INF Efren Navarro to Triple-A Salt Lake and recalled RHP Michael Kohn after the game. ... Royals RHP Yordano Ventura faces Angels LHP Hector Santiago on Saturday.