KANSAS CITY, Mo. -- Cardinals manager Mike Matheny is under no illusions that his team will be able to put up the kind of offense it has the first two games of its three-game series against Kansas City all the time.
Might as well take advantage of it while it's happening, though.
Matt Holliday had four hits and drove in a pair of runs, Allen Craig belted a two-run homer and finished with three RBIs, and Adam Wainwright enjoyed all that run support while shutting down the Kansas City Royals in an 8-2 victory on Saturday.
"That's the way it's mean to be," Matheny said. "We know this isn't the kind of offense you produce every night, but it gives you a lot of confidence."
The Cardinals came into the series scuffling on offense, but they've broken out of it in style while taking the first two games. They matched a season high with 17 hits on Friday night en route to an 11-4 victory, and were nearly as proficient at the plate during the Saturday matinee.
All to the delight of a crowd of 37,240 that was primarily dressed in red.
"When you have a lineup like we have, just keep us in the game," said Wainwright (6-7), who allowed two runs on four hits and two walks over seven sharp innings.
"That was a pretty dominant outing," Matheny said. "You can tell he's in a good place."
The Cardinals certainly feel like they're in a good place in Kansas City, where they improved to 26-15 in franchise history, and took a 3-2 lead in the season series.
"Everyone's working their tail off," Royals manager Ned Yost said. "They're doing what they need to do in terms of their work and preparation. They just need to take it to the field."
Mendoza eventually escaped the jam, but everything fell apart in the fifth.
Daniel Descalso started a run of five straight singles in the fifth for St. Louis, and RBI base hits by Jay and Holliday knocked Mendoza from the game. Kelvin Herrera came in and promptly gave up another RBI single to Carlos Beltran, staking the Cardinals to a 4-0 lead.
Furcal added another run with a single in the sixth, and even though Kansas City got two back in the bottom half on Alex Gordon's run-scoring triple and Yuniesky Betancourt's RBI groundout, St. Louis wasted little time in matching them with two more runs in the seventh inning.
That's when Holliday doubled off reliever Greg Holland, and Craig belted a full-count pitch over the bullpen in left field for his ninth homer of the season.
"They were pitching me tough, a lot of sliders and fastballs off the plate," Craig said. "I just tried to put the barrel of the bat on it, and when you do that good things happen."
All the offense sure took the pressure off Wainwright.
The former 20-game winner spent most of the afternoon looking like the guy who finished second in the 2010 Cy Young voting -- before he needed season-ending Tommy John surgery last February.
Wainwright erased Gordon's bunt single in the first by inducing a double play, and then set Kansas City down in order the next two innings. He didn't allow a runner to reach second base until giving up two runs in the sixth, but he bounced back to work a scoreless seventh inning.
"I didn't really have great stuff, I just tried to mix and keep them off balance," Wainwright said. "I knew if I kept making pitches, I had a big lead."
Hall of Fame golfer Tom Watson threw out the first pitch. ... Royals C Salvador Perez got the day off after his return the previous night from a torn knee ligament. Manager Ned Yost expects him to catch Sunday. ... RHP Lance Lynn will pitch the series finale Sunday for St. Louis. LHP Jonathan Sanchez will start for Kansas City.