Garrett Cooper doubled down the third-base line with one out, extending his hitting streak to 12 games. An out later, Starlin Castro doubled into the gap in left-center, driving in the game's first run.
The Cardinals got two-out hits from Jose Martinez and Yadier Molina in the fourth. But Kolten Wong flew out to center to end the threat.
Coming off the injured list, Adam Wainwright looked sharp. For Miami, former Cardinals farmhand Zac Gallen has been nearly as effective in his big-league debut. He fanned two in the first inning. In the second, he surrendered his first hit, to Jose Martinez, and his first walk, to Yadier Molina, with one out.