Mental Model
We want to remove a node counting from the end, so we use two pointers spaced apart to find it in one pass.
Analogy: Imagine two friends walking on a path: one starts ahead by n steps, then both walk together until the first reaches the end. The second friend then points exactly to the node before the one to remove.
head -> 1 -> 2 -> 3 -> 4 -> 5 -> null
↑ ↑
fast slow