The “one H1 tag per page” rule was was true when websites were built with HTML4. And back then, years ago, Google used the H1 tag as a ranking factor. But with the release of HTML5 multiple header 1 tags can be just as, or even more, semantic as using only one tag.
Our sites are built with HTML5, in which the spec states that multiple H1’s should be used as needed:
Semantically, we use multiple H1’s when both heading a document and linking to other documents from within a document. H1’s can also be used for sections of a page as example in the spec above.
Google’s webmaster also confirms GoogleBot expects/looks for multiple H1 tags:
https://www.youtube.com/watch?v=WsgrSxCmMbM
Use multiple H1 tags to provide a “clear title for each document” AND each document we’re linking to within each page as needed.