Jake Westbrook pitched eight shutout innings and Matt Holliday broke a scoreless tie with a two-run homer in the eighth, lifting St. Louis to a 3-0 win over Kansas City on a bright, breezy Saturday afternoon.
Westbrook, (4-3) whose longest start this year had been seven innings, gave up four hits, with three walks and three strikeouts while raising his career mark in Kauffman Stadium to 3-0. Kansas City's Nate Adcock went five scoreless innings in his first major league start.
Albert Pujols singled off Tim Collins (2-2) with one out in the eighth and then Holliday, who came in with an NL-leading .357 average, hit reliever Blake Wood's 2-1 pitch 433 feet over the left field fence.
Fernando Salas pitched the ninth for his sixth save in six opportunities.
The Cardinals added a run in the ninth on a sacrifice fly by Ryan Theriot.
Adcock struggled early but allowed only three hits and one walk while striking out four. He was relieved starting the sixth by rookie Louis Coleman. Collins pitched one inning.
Westbrook had faced the minimum the first three innings when Alex Gordon and Melky Cabrera singled leading off the fourth and Eric Hosmer walked, loading the bases with none out. But Jeff Francoeur hit into a 1-2-3 double play and shortstop Ryan Theriot made a good play on Billy Butler's grounder up the middle and threw out the slow-running DH.
In spite of the loss, the Royals tied their team record of 11 straight games without an error.
The Cardinals had a runner at second base with less than two out in each of the first three innings but Adcock escaped each time. Theriot doubled leading off the first, Molina doubled leading off the second and Jon Jay singled with one out in the third, moved up when Pujols was hit by a pitch, but got no father as Holliday flied out and Colby Rasmus struck out.
Alex Gordon and Mike Aviles were each picked off first, raising to six the numbers of Royals who have either been picked off or caught stealing in the last four games. Hosmer was doubled off first on Friday night.
Gordon walked leading off the sixth but was picked off by catcher Molina and Westbrook, with a quick move, got Aviles after he singled with two out in the seventh.
Cabrera made a great catch of Allen Craig's deep drive in the second inning, running toward the wall and leaping at the last second to snare the ball and prevent Yadier Molina from scoring from second.
NOTES: Cardinals right fielder Lance Berkman missed a third straight game with a sprained right wrist. He was hurt making a diving catch on Wednesday. ... Theriot's leadoff double in the first stretched his hitting streak to seven games. ... Pujols, who went to high school and junior college in the Kansas City area, has reached safely in all but one of the 47 interleague games he's played against the Royals.