Limits to adaptation along environmental gradients