Hamilton Masakadza and Peter Moor struck up a 142-run stand to ensure Zimbabwe remain in the game after the first day of the second Test against West Indies.
The tourists won the opener and carried that momentum into the early stages on Sunday as Masakadza lost three partners early on, before Moor came to the wicket and helped Zimbabwe to battle back.
The hosts ended the day on 169-4, with Masakadza still not out on 101 as play was stopped for rain, Moor having fallen late on for a valuable and patient 52 from 155 balls.
Zimbabwe's top order suffered at the hands of Kemar Roach and Shannon Gabriel early in the day as their decision to bat first threatened to backfire spectacularly.
While Masakadza made a slow start, his partners fell. Solomon Mire was caught behind off Roach to depart for just four, before Gabriel cleaned up Craig Ervine for a duck.
Brendan Taylor (1) did not fare much better as he chopped on from Roach, which prompted the arrival of Moor, faced with the task of building on a miserable 14-3.
Masakadza escaped on 15 when he edged to gully only for replays to show Gabriel had overstepped, and he and Moor made the most of that reprieve to drag Zimbabwe back into the game.
The opener made good use of the review system when given out incorrectly for a catch to short leg on 86, but he lost his partner as three figures approached, Roston Chase getting one to skid on and take Moor's off stump.
Masakadza reached his fifth Test century two overs later with a single down to long-on but only six more deliveries were possible as the weather brought a premature end to proceedings.