Do vertical gradients properly