Cardinals 2, Pirates 0: Matt Adams smacked a walk-off two-run homer with one out in the bottom of the ninth inning to lift host St. Louis in the opener of a three-game set.

Matt Carpenter walked to begin the ninth against Justin Wilson (2-1) and Matt Holliday flied to right before Adams, who had two of the Cardinals' three hits, yanked an 0-1 offering down the line in right. The shot made a winner of Pat Neshek (3-0), who worked a perfect ninth for St. Louis in relief of Adam Wainwright.

Wainwright matched Pittsburgh starter Charlie Morton through seven scoreless innings, scattering seven hits and striking out five to lower his league-leading ERA to 1.79. Morton was even better, limiting the Cardinals to a hit in seven frames while also fanning five.

Wainwright never had a perfect inning and allowed two runners to reach three times but a pair of double plays and some clutch outs kept Pittsburgh off the board. The Pirates loaded the bases in the eighth against Sam Freeman before Gregory Polanco, hitting for Morton, struck out to end the threat.

St. Louis had a runner on second with one out in the bottom half but Jon Jay was doubled off second on a fly to right to end that threat. After Neshek retired the top of the Pittsburgh order, Carpenter set the table with his third walk of the game.

GAME NOTEBOOK: Pittsburgh was 0-for-10 with runners in scoring position and stranded 12 men on base. ... The start of the game was delayed for 63 minutes due to inclement weather and again for 11 minutes before the bottom of the first inning. ... Pittsburgh traded OF Chris Dickerson to Cleveland for a player to be named later, while St. Louis optioned LHP Marco Gonzales to Triple-A Memphis and recalled LHP Tyler Lyons from Memphis.