|Position after Black's 14th move ........f5|
15. exf5 g6
16. f6 h5
Black is two move late. This move was better played at move 14 instead of the f5 actually played. White is up a half-pawn positionally (+.5).
17. Qg5? …....
A small error as 17. Qe4, h4 18. Ne3 kept White in the lead. Game even.
17. ....... Bh6?
Black would do better to block the invading pawn with 17. .....Qf7 first. White back on top by that half-pawn.
18. Qxg6 Qh3?
As stated, Black is all about the attack, but this is premature. 18. ......h4 was more to the point. White is up the full pawn now.
19. f7? ........
White is also on full aggression mode and gives his extra pawn a little too much credit. It's not getting to the end zone for a while yet. Meanwhile Black is making threats, and it is never ever wise to ignore your opponent's moves. 19. Ne3 was needed. The game is back to even again.
19. ....... h4
20. Ne3?? hxg3?!
This is one move too late! 20. f4 was needed to keep White alive! 20. ...hxg3 21. Qxg3, Bxf4 22. Qxh3, Rxh3 23. Rael and White is actually up a fifth of a pawn (+.2) instead of down (-1.5)! Black has a more accurate 20. ....Qh5 21. Ng4 Bf4. So now Black is only up (-1.2), but still with an advantage.
21. Qxg3 Qe6
22. Kh1?? Bf4
Getting out of the probable rook pin on the White King and Queen with Black playing Rg8 at some point was admirable, but 22. Qf3, Bf4 23. Ng4 kept it a game. Black is up now over 6 pawns!
23. Qg4 Rxh2+
24. Kg1 Qxf7
25. Qf3 Rg8+
26. Ng4 Qd5!
27. Rfd1 Qxf3
28. Rf1 Qxg4 mate