Donald Trump apologises for sexist remarks