After a relatively short flight from Mexico City to Miami, and then a nighttime flight from Miami to Sao Paulo (with marginal business class service), we had a driver pick us up and drive us to Guaraja - a small beach about an hour outside of Sao Paulo (thanks again Keiko).