Sri Lanka 60 for 3 (Thirimanne 25*, Olivier 2-25) trail South Africa 222 (De Kock 86, Vishwa 3-62, Rajitha 3-67) by 162 runs
Incisive bursts from seamers Vishwa Fernando and Kasun Rajitha ambushed South Africa's batting line-up and raised Sri Lanka's hopes of becoming the first-ever Asian side to clinch a Test series in South Africa.
After Sri Lanka were asked to bowl on a grassy St George's Park pitch, Vishwa and Rajitha claimed three wickets each to dismiss the hosts for 222 about 45 minutes into the post-tea session. South Africa's quicks then hit back to make light work of Sri Lanka's top order. The visitors were 162 runs behind at stumps on day one.
Both Dale Steyn and Kagiso Rabada regularly landed the ball on the seam and threatened both the edges. Dimuth Karunaratne and Lahiru Thirimanne largely scored through flat-footed wafts that threaded the cordon during their 25-run opening partnership.
Karunaratne fell when Rabada went round the wicket and cranked up to 145kph, tricking him into playing the angle and finding the outside edge with seam movement. He then harried No.3 Oshada Fernando with more pace and bounce. But, it was Duanne Olivier who made the next incision when he had Oshada chopping on for a nine-ball duck.
Kusal Mendis, who had been declared fit for this game after having rolled his ankle during training on Wednesday, moved to a 15-ball 16 before Olivier nabbed him. The under-pressure Lahiru Thirimanne (25*) and nightwatchman Rajitha then closed out the day without any further damage.
Five days after being involved in an epic last-wicket stand with Kusal Perera, Vishwa hit speeds north of 140kph and used his angles cleverly. But it was the late swing that posed a bigger threat, knocking over Dean Elgar and Hashim Amla off successive balls. After teasing Elgar with some that went away, he got one to snake back in and storm through his defences for 6.
Elgar wore a stunned look that wasn't too dissimilar to Amla's reaction after the latter was also bowled through the gate next ball. It was the first time in 214 Test innings that Amla had been dismissed first ball. In the next over, the panic swelled to a crescendo when Temba Bavuma ran himself out while attempting a non-existent single.
Just like that South Africa were reduced to 50 for 3 and then 73 for 4 when Karunaratne got one to creep under the defences of his opposite number Faf du Plessis for 25.
Quinton de Kock then stood in Sri Lanka's way, making a barnstorming 86 off 87 balls - his fifth fifty-plus score in his last six Test innings. This, despite suffering a bout of cramps. He rallied with opener Aiden Markram, who struck a fifty of his own, and Rabada, who held on limpet-like.
Rabada was dropped twice on 4 by Dhananjaya de Silva at gully and on 8 by Lasith Embuldeniya off his own bowling. To add injury to insult, Embuldeniya dislocated his finger and will likely play no further in the Test match.
Rabada went onto add 59 for the eighth wicket with de Kock - the highest stand of the match so far.
Rajitha, much like Vishwa had done in the early exchanges, adeptly exploited the track to claim three wickets in three overs in the post-lunch session. De Kock, though, laid into Rajitha, smearing him for three fours in four balls in the 35th over. All told, de Kock took Rajitha, one of Sri Lanka's best bowlers on display, for 34 off 21 balls. Despite being bothered by cramps, he fluently hooked Vishwa for back-to-back boundaries in the 58th over.
However, in the next over he missed a gentle offbreak from part-time spinner Dhananjaya de Silva and was cleaned up. Sri Lanka lost their last three wickets for a mere six runs to be bundled out in 61.2 overs.
Fittingly, Vishwa led Sri Lanka off the field and was warmly welcomed by fast-bowling coach Rumesh Ratnayake. The Vishwa-Rajitha show would be soured by Sri Lanka's own top-order wobble, but they still have that man Kusal Perera in their ranks.