Black has finally developed his pieces and gained a credible position. White's pieces are badly coordinated and mostly marginalized.
20... Rh8c8
And now Black threatens to gain some material with a discovered double pin on the c-file.
21. Rd3g3 h5 22. Bc4d3 f5 23. fxe5
Attempting to save the knight by moving it anywhere gives Black a dangerous initiative after 23. ... Nd4 dis+. f4xe5 is much stronger, as it allows the QN to enter the game via the now-vacant f4 square.
23... Rc8xc7
Black levels the material at last. 23. ... Nxe5 hoping to pick up the c7 knight later fails to 24. Nf4+ and then Nf4-e6 holding the pinned knight on c7.
24. Nh3f4 Kg6h6
Kh7 was better.
25. Bh4g5 Kh6xg5
But now Black goes seriously astray. I was entertaining fantasies of trapping the White rook with a pawn advance, but it will all go horribly wrong. The Black king should have retreated to relative safety in the corner instead.
26. Nf4e6 Kg5h4 27. Rg3h3
! This is the move I had not foreseen. I had expected 27. NxRc7, f4; 28. RxB+, h5xR with a chance at an endgame. But now, it's help mate.