Cape Town - The Proteas bowled out Pakistan in two sessions on the opening day of the second Test at Newlands on Thursday to take command of the match and close in on a series victory.
At stumps, South Africa were 123/2 in reply to Pakistan's 177, leaving them with a first-innings deficit of 54.
Aiden Markram (78), had given a sizeable Newlands crowd plenty to cheer in the final session with his sumptuous shot-making, but he was bowled on the final ball of the day in bizarre fashion by part-timer Shan Masood.
Markram struck 14 boundaries and a six in his knock, which came off just 96 balls, but he was visibly distraught to give his wicket away.
Hashim Amla (24*) will likely be joined by Theunis de Bruyn on Friday morning.
SCOREBOARD: Proteas v Pakistan, Day 1
Duanne Olivier (4/48) was once again the chief destroyer for the Proteas and he could have his third straight five-wicket haul were it not for a tough chance put down by wicketkeeper Quinton de Kock late in the Pakistan innings.
The major talking point after skipper Faf du Plessis won the toss and elected to bowl was the home side's team selection.
Spinner Keshav Maharaj was left out with Du Plessis and the brains trust opting instead to go with four front-line seamers as Vernon Philander returned.
It wasn't long before those decisions - to bowl first and to drop the spinner - began to look like the right ones.
The Pakistan batsmen had been undone by the short ball at Centurion, offering little resistance in that match as Olivier ripped through them.
Despite a heated dressing room exchange following that first Test where the Pakistani batsmen were reportedly asked to have a long, hard look at themselves, they were no better at Newlands.
Five of the Pakistan wickets to fall were a direct result of not being able to deal with the short ball while others came from tentative prodding that seemed to arise out of an expectation, or even a fear, that the ball would be pitched short.
It is an area where the visitors have had no answer in three straight innings now against a Proteas attack that will keep exploiting this weakness as long as it is there to be exploited.
Du Plessis rotated his seamers efficiently throughout.
Steyn had made the initial breakthrough when he had Fakhar Zaman (1) removed with a bumper, but South Africa's all-time leading wicket-taker in the format had to wait until the tail end of the innings to taste more success despite having bowled well all day.
The 35-year-old removed Mohammad Abbas (0) and Shaheen Afridi (3) in quick succession to leave with figures of 3/48 from 15.1 overs and, more importantly, see Pakistan back in the hut for a disappointing 177 all out.
There was resistance in the form of No 3 Shan Masood (44) and skipper Sarfraz Ahmed (56), who shared a 62-run stand for the sixth wicket, but other than that it was all too easy from a Proteas perspective.
Rabada (2/35) and Philander (1/36) were equally as dangerous without the same reward, but as a bowling unit the South Africans were a class apart from their opposition.
The Pakistan bowlers then threatened early on, but Markram and Dean Elgar got the Proteas off to fluent start.
Markram, in particular, was playing his shots and the pair reached their 50 partnership in just the 11th over as Pakistan heads began to drop.
The batting frailties in the Proteas top order have been the biggest concern for this side in recent months, but this start was the perfect response to that criticism.
Pakistan would get their breakthrough, though, as Elgar was caught behind off Mohammad Amir for 20 in the first over of the left-arm quick's second spell.
That didn't stop Markram, who all too often lately has looked in fine form without capitalising on starts.
The 24-year-old gave a timely reminder of why he is rated so highly, reaching his 4th Test 50 in just 64 balls with his 11th boundary of the day.
Markram was positive from the start, latching onto anything slightly short, wide or over-pitched, but he will not be able to cash in on this opportunity when play starts on Friday morning.
Scores in brief:
Pakistan 177 (Sarfraz 56, Shan 44, Olivier 4/48, Steyn 3/48)
SA 123/2 (Markram 78, Amla 24*, Amir 1/25)
SA trail by 54 with 8 first-innings wickets remaining