ST. LOUIS – Drew Butera doesn't get much playing time.
But the Kansas City Royals backup catcher made the most of his opportunity on Wednesday.
Butera had a two-run single in the 10th inning and the Royals earned a 5-2 victory over the St. Louis Cardinals.
Butera's RBIs were his first since May 2. Jon Jay followed with an RBI single as the Royals won their first road series of the season and their first series since taking three of four from Detroit May 3-6.
"That's a tough spot to be in right there. You don't want to expand. You don't want to chase, and perfect," Royals manager Ned Yost said. "Didn't try to do too much with it. It was just textbook, clutch hitting right there, just driving the ball up the middle."
Butera was playing just his second game in 10 days. Now in his ninth big-league season, he knows how to stay prepared.
"I knew I needed to get the ball in the outfield so I was looking for something up I could drive," Butera said. "I got a pitch up over the plate."
Salvador Perez, normally the starting catcher who started at first base for the first time since 2013, hammered a first-pitch fastball by Cardinals starter Michael Wacha for his eighth home run of the season to lead off the second.
Royals starter Jakob Junis gave up two runs in five innings, while striking out seven.
Blaine Boyer (2-0) pitched a scoreless ninth for the win. Kelvin Herrera earned his 10th save with a perfect 10th.
Abraham Almonte scored on a sacrifice fly in the sixth to tie it 2-2.
Wacha retired 14 of the first 15 batters he faced. He gave up two runs, one earned, in 6 2/3 innings.
Bud Norris (1-1) pitched a perfect ninth, but couldn't record an out in the 10th, giving up back-to-back singles to Jorge Soler and Alex Gordon before compounding the issue by committing an error on Alcides Escobar's sacrifice attempt to load the bases ahead of Butera.
"Giving him three days off, (Norris) wanted the ball there," Cardinals manager Mike Matheny said. "He's our guy. We're going to give it to him."
Francisco Pena capped a two-run second inning with an RBI double, giving the Cardinals a 2-1 lead. Pena had a pair of hits after going 1-for-12 the previous three games.
Cardinals center fielder Tommy Pham robbed Jorge Soler of an extra-base hit with a running catch in the seventh. Pham, who was shading Soler to left-center, made the catch in straightaway center on the warning track right before hitting the wall.
Not to be outdone, Royals left fielder Alex Gordon made a diving catch on Pena's liner in the bottom of the seventh, robbing the Cardinals' catcher of his third hit of the game.
"He was a pull guy so I was kind of creeping over that way plus I kind of positioned a little bit with the sun so if I had to turn that way the sun was right there," Gordon said.
"I did creep over a little bit, but it was one of those balls that when he hit it I was like in my mind, 'I'm going to catch this,' and you get to that point where it's do or die, that's what it was."
Cardinals left fielder Marcell Ozuna was scratched from the lineup and was replaced by Tyler O'Neill after oversleeping and reporting late. Ozuna was hitting .714 (5 for 7) with a walk in his previous two games.
"I saw the time and said, 'Oh, my God, I'm late,'" Ozuna said. "I came to the park and said sorry to my teammates and to my coach. Everybody's human. Everybody makes mistakes, today it was me."
Royals: 1B Lucas Duda (right foot plantar fasciitis) is eligible to come off the 10-day disabled list on Thursday.
Cardinals: RHP Alex Reyes (right elbow surgery) is scheduled to make his final rehab start at Triple-A Memphis on Thursday. LHP Tyler Lyons (mid back strain) threw a bullpen and will make the trip to Pittsburgh.
Royals: LHP Danny Duffy (1-6, 6.88 ERA) will kick off a four game series at Texas on Thursday. Duffy is 1-4 with a 6.82 ERA in six road starts this season.
Cardinals: RHP John Gant (1-1, 4.67 ERA) gets the start in the opener of a three-game series Friday at Pittsburgh and RHP Joe Musgrove (2018 debut). Gant is 0-0 with a 3.38 ERA in three appearances against the Pirates.