Centuries from Alviro Petersen and JP Duminy tightened South Africa's grip on the series, and although New Zealand responded strongly thereafter, they face an unlikely battle to level the series with two days remaining.
Petersen made his best Test score of 156 while Duminy made 103, and their 200-run third-wicket stand ensured South Africa amassed 474 for 9 declared. Daniel Flynn and Martin Guptill were unbeaten at stumps, having made New Zealand's best opening stand of the series, but at stumps New Zealand were still 409 runs behind the visitors.
Petersen had been perched on 96 overnight, and although New Zealand had the new ball to eke out a nervous stroke, he moved to triple-figures as calmly as he had navigated the wind and the rain on day two. A cover drive off Chris Martin's fourth ball reaped the first two runs of the day, before a rasping cut brought his third Test ton, confirming his place in the batting order after four muddling performances on tour had put it in jeopardy.
His approach changed little following the milestone as he stuck methodically to the strokes that had carried him to his first success in New Zealand. Drives straight and through cover were measured out when the hosts went looking for swing, and the pull proved productive, particularly off Daniel Vettori, who had bowled a touch short throughout the Test. It was an uncomplicated innings, set up by a dour 44 on the opening day, where he found the rhythm of the pitch and batted to its easy beat thereafter.
While Petersen progressed carefully, Duminy had more goodwill from New Zealand. The hosts had fed his drives throughout the first two days, but Doug Bracewell granted three of their most generous gifts, floating consecutive half-volleys that eased Duminy to 98 in a flurry of handsome fours. He was then made to wait 18 balls before he moved to triple-figures when New Zealand mustered the only real period of pressure of the morning session, but he did not allow anxiety to turn into a rash stroke. A clip off the pads brought him his second Test ton, three years and three months after his match-winning 166 at the MCG.
Though only Duminy had fallen in a disheartening morning session for New Zealand, a reinvigorated attack used seam movement to claw through South Africa's middle order. Martin led the assault initially, removing Petersen with the fourth ball of the afternoon session by nipping one back to trap him in front. AB de Villiers perished to a similar ball five overs later, an inside edge deflecting onto the stumps.
Mark Gillespie had found the least movement of any of the hosts' pacemen in the innings, but had still bowled the most menacing spells. When he found movement off the seam after lunch, he accounted for Jacques Rudolph and then Dale Steyn in quick succession. Having toiled over three days to take three wickets for 362 runs, New Zealand suddenly had four for 42.
Mark Boucher contributed a belligerent 42, as South Africa attacked after tea following a quiet period. Boucher peppered the square boundaries either side of the wicket, targeting an off-colour Doug Bracewell in particular, while Vettori, who has taken only two wickets for 246 runs so far in the series, was pushed comfortably for singles into a now-vacant infield. Vernon Philander partnered him astutely, granting his partner most of the strike, until Gillespie nabbed Boucher at gully. Philander's wicket soon after prompted the declaration.
Flynn survived a nervous early period as Philander and Steyn attacked with the new ball, but with the Basin Reserve surface offering little movement, South Africa were unable to separate the opening pair as they had routinely done so far in the series. A push through mid-on for four opened Flynn's account, but he was content to leave balls alone for the most part, taking particular care with Philander who rarely attacked the stumps.
Guptill was equally cautious, getting forward quickly and keeping bat close to pad when he defended, after being dismissed through the gate twice off the seamers in the previous four innings. But he took his chances as well, clipping off the leg side when South Africa strayed onto his pads.
Morne Morkel gave Flynn his most serious working over, inducing an inside edge that just evaded Boucher and hitting the batsman twice in one over. But Flynn recovered well enough to hit Philander over square leg for six towards the end of the day, finishing unbeaten on 35.