PITTSBURGH -- The Pittsburgh Pirates made the most of a few lucky bounces and well-placed grounders on Saturday night.
That's all they need to win these days.
The Pirates have won three straight and are 11-3 since May 25, the best record in the major leagues in that span. Pittsburgh, which hasn't had a winning season since 1992, also moved four games over .500 at 31-27.
Clint Barmes drove in Pedro Alvarez with an infield hit as the Pirates scored five times in the fourth on three singles, only one of which made it to the outfield. Barmes eventually came around to score on Walker's bouncer, lifting Pittsburgh to a 4-3 lead.
"It wasn't loud, but balls were finding grass and spots in the infield," Pittsburgh manager Clint Hurdle said. "It's a tough inning if you're playing defense because no balls are being barreled up."
It was indeed a frustrating inning for Kansas City manager Ned Yost.
"They didn't hit any balls hard and they scored five runs," he said, shaking his head.
Four Pirates relievers combined to work five scoreless innings, and the Royals went 1 for 12 with runners in scoring position for the game.
"The work our guys in the bullpen did was tremendous," Hurdle said. "Hanrahan did the job again. Hughes was tremendous. It was good all over."
Yuniesky Betancourt hit a two-run homer and Eric Hosmer had two doubles for Kansas City, which has dropped three straight. Vin Mazzaro (2-1) gave up four runs, three earned, and three hits in three-plus innings.
Betancourt hit his third homer in the third inning and Mazzaro singled in Hosmer in the fourth, collecting his first major league hit and giving the Royals a 3-0 advantage.
The Pirates responded in the bottom half. Alvarez sparked the rally with a leadoff walk and advanced to second when Jose Tabata was hit by a pitch. Rod Barajas singled to right and Barmes brought home the first run with his grounder off the glove of diving shortstop Alcides Escobar.
Kelvin Herrera then came on to face pinch-hitter Matt Hague, who lifted a popup to right. Hosmer, normally Kansas City's first baseman, let the ball drop in front of him but grabbed it with his bare hand and threw a strike to catcher Brayan Pena, who juggled the ball, and Tabata was ruled safe.
Hosmer was playing right field to make room for Billy Butler at first. Butler is the Royals' usual designated hitter, but Saturday night's game was in a National League park.
Alex Presley then hit a slow roller down the line that third baseman Mike Moustakas couldn't make a play on, driving in Barajas and tying it at 3. Walker gave the Pirates the lead, and Garrett Jones drove in the final run of the inning with a fielder's choice.
"It was unanimous in the dugout that once we got to the third time through the order to (Mazzaro) that we were going to get him," Walker said. "He was spraying his fastball, especially to left-handers. We didn't exactly knock the ball around, but I guess that's how we got to him."
Yost thought Mazzaro getting his hit might have been the worst thing that could have happened.
"It's been my experience that pitchers who aren't in the National League have a hard time whenever they get a hit and run the bases," Yost said. "I tried to get Vinnie to settle his heart rate down. When I saw a big inning might develop, especially knowing how good Pittsburgh's pitching staff is and how we've struggled to score run, I took him out because I wanted it to stop right there."
Pittsburgh's James McDonald lasted just four innings, matching his shortest start of the season. He gave up three runs and five hits with two walks and two strikeouts.
"I just didn't have any command of my pitches, and it's the type of game I want to throw away and start looking to bounce back for the next one," McDonald said. "I put us in a hole, but our bullpen did a great job of shutting them down and we found a way to win."
Kansas City placed RHP Felipe Paulino (right groin strain) on the 15-day disabled list, retroactive to Thursday, and recalled RHP Nate Adcock from Triple-A Omaha. RHP Luis Mendoza is expected to take Paulino's spot in the rotation and start Tuesday against Milwaukee. ... Pittsburgh RHP Jeff Karstens (right groin) will be limited to playing catch for five to seven days before being re-evaluated. Karstens, who has been on the DL since April 18 with right shoulder inflammation, was injured Thursday while making a rehab start for Triple-A Indianapolis. ... As part of a Negro Leagues tribute, the Royals wore replica Kansas City Monarchs uniforms and the Pirates wore Homestead Grays throwbacks. ... The three-game series ends Sunday afternoon with LHP Bruce Chen (5-5, 4.37 ERA) starting for Kansas City against RHP A.J. Burnett (5-2, 3.76 ERA).