Shakib Al Hasan (4-82) and Mehidy Hasan Miraz (5-82) scripted a dramatic turnaround to put Bangladesh on the driver's seat by stumps on Day 3. Zimbabwe did well to avoid the follow-on but still conceded a mammoth 192-run deficit.
Shadman Islam (22) and Saif Hasan (20) then added an unbeaten 45 runs for the opening wicket to drag Bangladesh's lead to 237 runs.
Earlier in the day, Zimbabwe made the opponents toil hard in the first session but later crumbled against the spin duo of Shakib and Miraz.
Brendan Taylor (81) and the debutant Takudzwanashe Kaitano (87) were calm at the crease, weathering early storms without any turbulence. Kaitano showed great composure and adeptness, and built his innings one step at a time.
Taylor, meanwhile, kept finding the boundary regularly. He brought up his half-century with a six off Shakib. Kaitano, too, reached his fifty a few minutes later. The duo added 115 for the second wicket before a lapse in concentration brought Taylor’s downfall.
Sensing an over-pitched delivery off Miraz, Taylor went for a big hit across the line, only to find substitute fielder Yasir Ali at square leg. Dion Myers joined Kaitano, and batted almost 25 overs. The score read 225/2 at one point. Then Myers was undone by Shakib.
Shakib struck again, pinning Timycen Maruma on the front leg. Roy Kaia departed for a five-ball duck. Regis Chakabva offered some resistance, and just when another crucial partnership, between him and Kaitano, was brewing, the latter edged an innocuous delivery to Liton Das.
Chakabva remained unbeaten on 31, while the last four batters managed just four runs between them. Miraz claimed three of them, while Shakib dismissed Richard Ngarava to wrap up Zimbabwe's innings on 276. They lost their last eight wickets for 51 runs.
Bangladesh 468 (Mahmudullah 150*; Muzarabani 4-94) and 45/0 ( Islam 22*) lead Zimbabwe 276 (Kaitano 87; Mehidy Hasan Miraz 5-82, Shakib Al Hasan 4-82) by 237 runs.