Preheat oven to 375°F.
Heat the oil in a large sauté pan over medium heat. Once the oil is hot, add the roasted red peppers and shallot, and cook, stirring often, until the shallot is translucent, 2 to 3 minutes.
Add the garlic and season with the garlic powder, salt, red chili flakes, and pepper. Continue to cook while stirring, until the garlic is fragrant, 2 to 3 more minutes.
Working in batches, add the spinach into the sauté pan. Continue to cook while mixing, until the spinach is wilted and most of the moisture cooks out, 5 to 7 minutes.
Reduce the heat to low and fold in the cream cheese and mayonnaise, stirring to combine.
Sprinkle in the mozzarella and ½ cup parmesan, continuing to stir until the cheese shreds are melted throughout.
Mix in the artichoke hearts, lemon zest and lemon juice, and mix once more to combine.
Transfer the dip to a prepared 8x11-inch baking dish and top with the remaining ½ cup parmesan cheese.
Cover tightly with foil and bake in the preheated oven until the cheese on top has melted, 25 to 30 minutes. Remove the foil, place back into the oven and bake until bubbly and golden-brown, another 10 to 15 minutes. If you’d like, you can broil the last 5 minutes or so, but make sure to watch it so it doesn’t burn!
Remove the dip from the oven and let it cool for 5 to 10 minutes.
Garnish with parsley and serve with chips, toasted bread, and veggies. Enjoy!