01 - Spread 1 tablespoon of softened butter evenly on one side of each bread slice, ensuring complete coverage to promote even browning.
02 - Flip the bread slices and spread approximately 1½ tablespoons of basil pesto on the unbuttered side of two slices, reaching the edges for maximum flavor distribution.
03 - Layer 2 slices of mozzarella cheese over the pesto-covered bread, then sprinkle 1 tablespoon of grated Parmesan cheese evenly across the surface. Add tomato slices or fresh spinach if using.
04 - Top each assembled sandwich with the remaining bread slices, buttered side facing outward to ensure crispy golden exterior during cooking.
05 - Heat a non-stick skillet over medium heat. Place sandwiches in the skillet and cook for 3-4 minutes per side, pressing gently with a spatula to ensure even contact, until bread achieves golden brown color and cheese is completely melted.
06 - Remove sandwiches from skillet and let rest for 1 minute to allow cheese to set slightly. Slice diagonally and serve immediately while warm.