Preheat the oven to 350 degrees Fahrenheit and grease an 8 x 8" casserole pan or similar sized baking dish.
Heat a large skillet over medium heat with enough water to coat the bottom of the pan.
Add the spinach in two additions or more, and keep fully covered with a lid.
Steam until wilted, about two minutes, stirring once or twice.
Drain well in a colander, pressing gently with a spoon, to eliminate excess liquid.
When cool enough to handle, roughly chop.
In a large mixing bowl, stir together the chopped spinach, chopped artichoke hearts, cream cheese, mayonnaise, sour cream, garlic, parmesan cheese, a generous pinch of salt, pepper, and half the mozzarella cheese.
Pour the mixture into the casserole pan.
Sprinkle the top with the remaining mozzarella cheese.
Bake on the center rack of the oven for 30 to 35 minutes, or until bubbly.
Change the oven to the broiler setting, and transfer the spinach artichoke dip to the top rack under the broiler and cook for about one minute until golden brown on top.
Serve warm with tortilla chips, pita slices, crackers, or sturdy crudité like carrot or celery sticks.
