Amla hits career-best 97 not out