Cardinals stage late rally to get past Chargers in the desert