HOUSTON -- The Cardinals jumped on Houston starter Bud Norris early, and it was a good thing they pounced when they did.
After a three-run first inning, the Cardinals' offense did very little. Still, St. Louis hung on for a 4-3 win Wednesday in front of 18,517 at Minute Maid Park and evened the three-game series at one game apiece.
The Cardinals managed just two hits after the first inning, one a third-inning solo homer off the bat of Allen Craig. After that, Astros pitching retired the final 20 St. Louis batters in order.
But Craig's homer, his seventh of the season, proved to be the difference. The Cardinals' left fielder is hitting .385 (10-for-26) in eight career games at Minute Maid Park, including four homers and 11 RBI.
St. Louis starter Adam Wainwright (5-6) threw 4 1/3 innings of no-hit ball in continuing his mastery of Houston. He ran out of gas, however, in the sixth inning of a 114-pitch performance, striking out eight while yielding seven hits and three runs.
Wainwright is now 11-1 with a 1.73 ERA in his 19 career games, including 13 starts against the Astros, and is also 5-0 all-time at Minute Maid Park.
"I did a good job of getting ahead, but did a poor job of putting guys away early," Wainwright said. "When you've got them 0-2, you need to get them out at no more than 1-2. There were a lot of foul balls tonight and pitches that were not 'offerable.'
"It's one of those weird games where I actually had pretty good stuff, good enough stuff to carry my team deep into the game. I just didn't do it. Really, with the stuff I had and the way I was locating, there was really no excuse or no reason for that to happen."
The St. Louis bullpen came to the rescue. Five pitchers combined for 3 1/3 innings of solid relief, including the final four outs recorded by Jason Motte for his 10th save of the season. It was his second consecutive four-out save.
"Those multiple-inning saves aren't easy for a guy as amped up and high-energy as he is," Cardinals manager Mike Matheny said. "You finish the inning, you're amped up, you go sit down in the dugout and then try to get it all back together again. He's done a nice job of adjusting and we've needed him both of those games to do it."
Victor Marte, Eduardo Sanchez, Marc Rzepczynski, and Mitchell Boggs preceded Motte to the mound for St. Louis, preserving a 4-3 lead.
"The bullpen did a very good job," Matheny said. "We burned through them a bit. It's a catch-22, but in a game like that, we've got to pull it out and we have to pull out all stops at that point."
The Cardinals bunched together five consecutive hits in the first inning. Daniel Descalso stroked an 0-1 pitch into the left-field seats to spark the initial charge. The solo blast was his third homer of the season.
Carlos Beltran drilled a double and scored when Craig bounced an RBI single through the right side of the infield. David Freese continued the string of hits, lining a double down the left-field line, scoring Craig.
"We got on him early," Descalso said. "Got to a 4-0 lead and he sort of beared down after that. He got a lot of strikeouts . He's got a lot of swing-and-miss stuff when he's got his good stuff going. Luckily, we were able to jump on them early."
But it was Descalso's defensive gem in the eighth inning that was the game-saver.
Houston catcher Jason Castro opened the inning with his third single of the game and pinch-hitter Marwin Gonzalez laid down a perfect bunt, which Cardinals first baseman Matt Adams fielded and threw past Descalso, who was covering the bag at first.
"Me and the runner and the ball sort of got there at the same time," Descalso said. "It was a high throw. I got a glove on it, but it squirted down the line. I just tried to scramble to get to it as fast as I could."
The ball trickled down the right-field line, where Descalso hustled after it, slid to field it, and wheeled to make a perfect throw to the plate. Catcher Yadier Molina put the tag on Castro, who was trying to score from first base.
"I honestly didn't think they were going to send him with no outs," Descalso said. "But I looked up and he was rounding third, so I just fired it home and put it right on the money. And he was out.
"Once I saw that he was going, all I had to do was make a good throw. I had plenty of time to get him out. Fortunately, we got him and it sort of saved the game for us."
Castro said the play at the plate was closer than it may have appeared.
"It was close," Castro said. "In the moment, it's hard to tell. I knew it was close. I thought I might have been able to swipe part of the plate. Descalso made a great throw and Yadier came down and put the tag on. It was close. It was one of those ones that for me, in the play, was hard to tell. It just happened to not go our way.
"It's one of those plays where if he doesn't do everything right, I'm safe. He did everything he needed to do and made a great throw and I was out. Great play on his part."
Glenn Sattell is a contributor to MLB.com. This story was not subject to the approval of Major League Baseball or its clubs.