Domdaniel: The Winawer is back and the pawn is still poisoned. Great win. Rozentalis has made lines with ...Ng6 viable again.
White's 21.Nc5? was a losing blunder, but 21.g3 isn't *that* much better:
21.g3 Nh3+ 22.Kg2 (other King moves allow ...Nxf2) Rhg8 threatens to win as in the game, and White has no good defence.
23.Kxh3 Rxf2! mates or wins a lot of material.
23.Be3 Rf3! wins for Black, eg 24.Kxf3 Ne5+ 25.Kg2 Bxa4 etc. 23...Rg4 is another less flashy win.
23.Be1 is hideous for White. 23...Rf4 is one way to proceed.
23.Bg5 doesn't lose at once, but White's position is not enviable after 23...Nxg5 24.hxg5 Rxg5.
Best may be 23.f4, but Black has a strong attack after 23...e5.
At the start of the line, Black even has a good alternative to 21...Nh3+. The immediate 21...Rhg8 also keeps Black on top, with many of the same threats.
White's mistake came earlier. He's already in serious trouble after 15.0-0? - handing Black the initiative. 15.Qg3 was a better try, when White has a slight edge. But after 15.0-0 he's fighting a losing battle just to equalize.