The Cardinals struck first in the second inning after a fielding error by Ke’Bryan Hayes allowed Juan Yepez to score. St. Louis added three more in the inning to pad their lead.
Ben Gamel scored on a wild pitch in the bottom half of the frame to get the Pirates on the board and Yoshi Tsutsugo doubled home another run a few batters later to bring the Bucs within a pair.
After the Cardinals added their final run in the fourth, Bryan Reynolds hit a two-run, inside-the-park home run to bring the Pirates within striking distance.
The Cardinals bullpen, however, held the Pirates in check through the final innings to seal the win.
Reynolds and Tsutsugo each finished with two hits in the game. Starter Jose Quintana was given the loss after pitching just 2.3 innings.
The series wraps up tomorrow with a special 11:35 a.m. start time. Manager Derek Shelton said during his postgame press conference that Bryse Wilson will start tomorrow.