Prep the cheese: In a small bowl, toss the shredded cheddar, mozzarella, and grated Gruyère together.
Butter the bread: Spread 1 tablespoon of butter (or mayo) evenly on the outside of each slice of bread.
Assemble: Place one slice, buttered side down, on a cutting board. Pile the cheese blend on top, then cover with the second slice, buttered side up.
Heat the pan: Warm a nonstick skillet or cast-iron pan over medium–low heat.
Grill covered: Place the sandwich in the pan and immediately cover with a lid. Cook for 3–4 minutes, pressing gently with a spatula, until the bottom is golden brown.
Flip and finish: Carefully flip the sandwich, cover again, and cook for another 3–4 minutes until the second side is crisp and cheese is fully melted.
Rest and slice: Transfer to a cutting board, let rest for 1 minute, then slice diagonally and serve warm.