01 - Spread 1 tablespoon of softened butter evenly on one side of each bread slice, ensuring complete coverage to promote even browning.
02 - Flip each bread slice and spread approximately 1½ tablespoons of basil pesto on the unbuttered side of two slices, leaving a small border around the edges.
03 - Layer 2 slices of mozzarella cheese on each pesto-covered bread slice, then sprinkle 1 tablespoon of grated Parmesan over the cheese. Add tomato slices or fresh spinach if desired.
04 - Top each sandwich with the remaining bread slices, positioning the buttered side facing outward to create the crispy exterior.
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 good contact with the pan, until golden brown and cheese is thoroughly melted.
06 - Remove sandwiches from skillet and let rest for 1 minute to allow cheese to set slightly. Slice diagonally and serve warm while cheese remains melty.