What does "Heap Block" in "Bitmap Heap Scan" mean?
Bitmaps can either store a bitmap of rows, or if that becomes too large to fit in work_mem it can "go lossy" by storing a bitmap of blocks.  It can do this selectively, so some blocks can be converted lossy while others not.

If it goes lossy, then the Heap Scan must recheck every row in every lossy block which it visits, because it no longer has information about which particular rows in that block met the search criteria.

"Heap Blocks: exact=1" means that it only visited one block, and that it was not lossy.  (So both of yours rows returned were in the same block)

This agrees with the Buffers data.  The Bitmap Index Scans and BitmapAnd in total hit 7 blocks.  The Heap Scan hit one more, bringing it up to 8.