Milk, cocoa, sugar and cornstarch blended cold, then cooked gently until it thickens and chilled until it sets. Four ingredients, and the waiting is nearly three hours of it.
Blending everything cold is what stops the lumps. Cornstarch dropped into warm milk seizes on contact and forms knots that never dissolve; blended into cold milk first, it disperses completely and only thickens once the pot goes on the heat. Stir constantly and keep the heat low. Cornstarch thickens somewhere around a simmer and it does it quickly, so the moment it starts to hold the trail of a spoon it is ready. Boiling it hard does the opposite of what you want: it can break the starch down again and give you a pudding that never sets properly. Then it needs time, which is what the card used to hide. Forty minutes on the counter and two hours in the fridge, so nearly three hours from start to spoon. It has to be poured into the dishes while it is still hot and pourable, because once it starts to set it will not level out.