Adam Wainwright pitched two-hitter for his 16th victory and Albert Pujols homered as the St. Louis Cardinals beat the reeling Florida Marlins 7-0 Friday. Wainwright (16-6) struck out seven and walked three in his fifth complete game and second shutout this season. With the two-hitter, Wainwright matched his career best. The All-Star right-hander also threw one June 4 to shut out Milwaukee. Pujols hit a three-run shot in the first inning, his fifth homer in six games and 28th this year. He doubled home a run in the fourth. The Marlins have lost five straight games and have been outscored 25-7 in the first four games of their homestand. Matt Holliday doubled home a run in the third, and the Cardinals hit four doubles – by Skip Schumaker, Brendan Ryan, Jon Jay and Pujols – in their four-run fourth. Giants 3, Braves 2, 11 innings: At Atlanta, Pat Burrell had a sacrifice fly with the bases loaded in the 11th inning for San Francisco, which scored the tying and go-ahead runs without a hit. The Giants moved within a game of NL West-leader San Diego, which lost 2-1 to Arizona. The Braves lead over Philadelphia fell to one game in the National League East. The Phillies beat the New York Mets 7-5. The Giants scored the tying run in the ninth without a hit as the Braves made two errors. The go-ahead run scored when reliever Peter Moylan (3-2) walked the bases loaded ahead of Burrell's fly ball. Tommy Hanson allowed one run and three hits over seven innings and Alex Gonzalez and Chipper Jones, who had three of Atlanta's six hits, hit solo home runs. Diamondbacks 2, Padres 1: At Phoenix, Dan Hudson pitched into the eighth inning to outduel Jon Garland in his second start with Arizona and Adam LaRoche hit his 18th homer as Arizona edged San Diego. San Diego got a solid start out of Garland (10-8), but managed just three hits to lose for the sixth time in 11 games. Hudson (2-0) gave up a solo homer to Will Venable in the third and two singles after that in 7 2-3 innings. Aaron Heilman worked the ninth for his fifth save and eighth straight scoreless outing. Phillies 7, Mets 5: At Philadelphia, Carlos Ruiz singled in the go-ahead run during a six-run eighth inning as Philadelphia beat New York for its fifth straight win. Rockies 6, Pirates 3: At Pittsburgh, Troy Tulowitzki hit a tiebreaking RBI single with two outs in the seventh inning as Colorado downed Pittsburgh to snap a seven-game road losing streak. Reds 3, Cubs 0: At Chicago, Bronson Arroyo allowed five hits over seven innings as Cincinnati blanked Chicago to move 14 games over .500 for the first time in 11 years. Brewers 6, Astros 5: At Milwaukee, Prince Fielder hit a two-run single in the ninth inning to cap Milwaukee's four-run rally. Nationals 6, Dodgers 3: At Los Angeles, Adam Dunn hit two three-run homers off Clayton Kershaw, tying his career-high for RBIs, as Washington downed Los Angeles.