Warm the pot: Set a large pot or Dutch oven over medium heat. Add the oil and let it shimmer.
Sauté the aromatics: Add onion, bell pepper, carrots, and celery with a pinch of salt.
Cook, stirring often, until softened and lightly golden, 7–9 minutes.
Add garlic and tomato paste: Stir in the garlic and cook 30 seconds. Add tomato paste and cook 1–2 minutes until it darkens slightly and smells sweet.
Bloom the spices: Sprinkle in chili powder, cumin, smoked paprika, oregano, coriander (if using), and a pinch of red pepper flakes or cayenne. Stir for 30 seconds to awaken the spices.
Build the base: Pour in the crushed or diced tomatoes and 2 cups of broth.
Stir well, scraping up any browned bits from the bottom.
Add beans and corn: Stir in the black beans, kidney beans, pinto or cannellini beans, and corn. Add the bay leaf.
Simmer: Bring to a gentle bubble, then lower heat to medium-low. Simmer uncovered 25–35 minutes, stirring occasionally.
Add more broth if you prefer a looser chili.
Season: Remove the bay leaf. Taste and season generously with salt and pepper. Add a squeeze of lime to brighten the flavors.
Finish and serve: Ladle into bowls and top with cilantro, avocado, jalapeño, cheese, sour cream or yogurt, green onions, or tortilla chips as you like.