South Africa hikes rates but rand weakens