Sri Lanka counterattacked well with the ball in hand on day one of the first Test against South Africa with the hosts moving to 267/6 by the close of play.
The tourists struggled to find their lines and lengths early on and the Proteas were able to get to lunch without losing a wicket.
Dean Elgar and Stephen Cook would put on their first ever century opening stand together just after lunch.
Suranga Lakmal would account for both openers midway through the afternoon session as the seamer found a probing line and had both openers caught behind by Dinesh Chandimal.
Jp Duminy and Hashim Amla would steer the Proteas to tea at 174 for 2 though with the former looking fluent while the latter struggled to find the middle of the bat.
The final session would prove to be productive for the Sri Lankans though and bring the game back into the balance.
Amla was whipped out in the same manner as the openers for a stubborn 20 off 76 balls to give Lakmal his third wicket.
Rangana Herath proved his worth as the experienced spinner grabbed a brace of wickets to set the Proteas reeling.
JP Duminy was trapped leg before for 63 and despite reviewing the decision he had to go as replays showed he was plumb.
Temba Bavuma (3) fell in the same manner traped leg before by Herath and this time it was Sri Lanka who used the review to pick up the wicket.
Lakmal returned to pick up the wicket of skipper Faf du Plessis for 37 with that same in between length catching out the captain who nicked one through to first slip.
Angelo Mathews took the second new ball with Lakmal and proved to be economical with the other Sri Lankan seamers struggling to put the Proteas under pressure.
Quinton de Kock (25 not out) and Vernon Philander (6 not out) were able to negotiate their way to the close with minimum fuss but the signs of seam and life in the pitch were there.
Lakmal was the pick of the bowlers with figures of 4 for 62.