Heat the olive oil in a dutch oven or soup pot. Add the onion, garlic, carrot and celery and a pinch of salt. Cook until the vegetables have softened and cooked, about 10 minutes.
Add in the orzo, and cook for 2-3 minutes, stirring often until the orzo is slightly browned.
Add the broth, beans and kale and increase the heat to high. Reduce heat to low then simmer for 8 minutes, until orzo is just tender.
While the orzo is cooking, make the pesto.
Place the cashews, kale, garlic, lemon juice, zest and salt in a food processor and pulse until very finely chopped. With the motor running, add the olive oil until a creamy paste forms.
Stir 2/3 of the pesto into the soup, along with a little more lemon juice. Taste, adjust for seasoning if needed, then serve.
To serve, divide soup into bowls, then top with remaining pesto. I like this with grated parm and red pepper flakes on top!