I later come to think that the cause of the display error in Firefox was that you probably, like me, set the zoom to only affect text.
I usually check for that and that’s the reason I usually give the pseudo elements a content of not an empty "" or " " but an actual character; usually a dot but I prefer the hard space “\a0”.
Try give the before element a dot as content and also give it the min-height to fix the display in Firefox:
Don’t worry, I should have done a Firefox refresh a long time ago … The problem was add-on: Dark Background and Light Text (based on personal experience I don’t recommend dark themes add-ons for websites - although it is more pleasing to the eyes)
Yes, setting to text only zoom is useful, but it can also be a problem when you forget it is active
(“ ” non breaking space aka the hard space entity, escaped “\a0”.)
Edit)
To be clear, the pseudo element’s content is not rendered as html. It should either be entered as a hard space character " " or be an escaped Unicode number “\a0”
Note that if you used rem (or em) instead of pixels that issue wouldn’t have occurred
min-height: 3.75rem;
line-height: 3.75rem;
Also it would be better to centre the items (horizontally and vertically) using flex and not use the line-height method which is a bit unwieldy in most cases. Removing the line-height would also have allowed the text to grow quite a bit without breaking the layout immediately.