MIAMI — There's no margin for error for the Miami Marlins.
A deep fly ball skipped off Marcell Ozuna's glove in center field on the way to becoming a triple for Pittsburgh's Francisco Cervelli, who would eventually score. And then a cutter from Marlins starter Justin Nicolino stayed over the middle of the plate, and Pedro Alvarez sent it over the wall in the deepest part of the ballpark.
An inch here, an inch there, it would have been a different story.
Instead, it was the same old story — the Marlins lost 2-1 to the Pirates on Thursday night, Miami's sixth loss in its last seven games and the 32nd time this season the team failed to score more than one run.
"A well-played ball game all around," Marlins manager Dan Jennings said.
The Marlins had chances in the eighth and ninth innings, getting what would have been the tying run aboard in each of those frames. But left-hander Tony Watson — who relieved Pittsburgh starter Gerrit Cole with one out in the eighth and J.T. Realmuto standing on second — retired Dee Gordon and Ichiro Suzuki to get out of that jam.
And Pirates closer Mark Melancon gave up a leadoff single to Martin Prado in the ninth, then got Justin Bour to hit into a double play and retired Ozuna on a grounder to finish off his 41st save in 43 chances.
Cole (15-7) allowed one run and five hits in 7 1-3 innings, striking out four and walking none. Cole hadn't gotten the win in any of his previous five starts, and the Pirates are 45-22 all-time when he takes the mound.
Nicolino (2-2) gave up two runs and six hits in six innings for the Marlins, who got two hits apiece from Ozuna and Prado. Afterward, Nicolino lamented the homer to Alvarez, which came on an 0-2 offering.
"You can't leave pitches like that up to him," Nicolino said. "He did what he was supposed to do with it."
Derek Dietrich had a sacrifice fly for Miami. Pittsburgh won for the 64th time in its last 97 games, the best record in baseball over that span.
Pirates: Cervelli, who did not play Wednesday after banging up both feet on Tuesday, was back in the starting lineup. He got ejected in the bottom of the third after a pitch from Cole was ruled a ball, and Cervelli turned toward to home plate umpire Alan Porter while appearing to take exception. That came moments after Cervelli grounded out to end the top of the third and leave the bases loaded. "I didn't like the way he talked to me," Cervelli said. "I turned around and got thrown out."
Marlins: LF Christian Yelich (right ankle, right knee) was out of the lineup and is day-to-day. ... Stanton (fractured left wrist) is set to take batting practice in Jupiter on Monday or Tuesday. Stanton — still far and away Miami's leader in home runs (27) and RBIs (67) despite missing 54 games and counting this season — is aiming to return to the lineup Sept. 4.
Pittsburgh still doesn't have a complete game this season; this would be the first Pirates team ever without one unless someone goes the distance in one of their final 36 games. The Marlins have gone 232 games without a complete game, the longest active streak in the majors.
Pirates: The Pirates have won each of Francisco Liriano's last 10 starts, and look to extend that Friday night when the LHP faces RHP Jon Gray (0-0, 5.94) and the Colorado Rockies. Liriano is 5-0 with a 3.19 ERA over that stretch, 9-6 with a 3.23 ERA for the season.
Marlins: LHP Adam Conley (1-1, 4.88) starts for Miami when the Marlins open a weekend series in Washington against the Nationals and RHP Max Scherzer (11-10, 2.79).