In a large pot or Dutch oven over medium-high heat, cook the ground beef until browned. Drain the excess fat.
Add the diced onion, green bell pepper, and celery to the pot. Cook for 5-7 minutes until the vegetables are softened.
Stir in the chili powder, cumin, garlic powder, salt, and black pepper. Cook for 1 minute until fragrant.
Pour in the diced tomatoes, tomato sauce, beef broth, kidney beans, and pinto beans. Stir well to combine.
Bring the mixture to a boil, then reduce the heat to low, cover, and simmer for at least 1 hour, stirring occasionally.
Serve hot, topped with shredded cheddar cheese and sour cream.