Your opening is good and advantageous from a strategic point of view. You advanced your pieces into enemy territory, threatening white's defense. I went through the gameplay a couple of times and here are the moves I would have done differently:
Move 14... instead of Rxf6, maybe Qxf6 would be better? This would keep your Rook from leaving his post protecting the King and the all-important 8th Rank.
On Move 19... yeah, that seemed like a blunder. Bishop's are pretty important for their diagonal protection, and forgetting about why white moved his Knight to d3 might have been a mishap. Because now, even when you do capture on your next move, axb4, it leaves your pawn completely open and unprotected. So, like any other player, white seized that file and advanced his pawns for their promotion.
And, then, Move 22... Qb6. While it seems like a strong move, putting white's pawn in check, the capture was easily avoided and left your Queen in a tight spot. The only way to move the Queen is moving back to where black's queen came from which loses tempo.
Also, now that your Rook is not defending your king, always look out for that open diagonal that can leave your King exposed. I hope this helps. Your opening game was excellent, your middlegame was good, and I can tell your endgame is good also, your opponent just had the upperhand here.
In the early middlegame in this game, I had (as Black) a position that I thought was very advantageous. However, I ended up losing the game, so any thoughts on this would be appreciated.