FIX: cart wasn't recalculating when needed.