A Pen by Tamara Temple on CodePen.
Based on an article at CSS-Tricks Boxes That Fill Height (Or More) (and Don’t Squish).
There were a couple of missing pieces in the article:
html
andbody
need to haveheight: 100%
.flex-container
needs to havemin-height: 100%