World number two Jannik Sinner reaches a fourth Miami Open final thanks to a straight-sets win over Alexander Zverev.