The jist of what happens is that applying the "equal-cols" class makes the children columns have an equal height. Then applying the "flex-alignxy" class to the children columns aligns their content both horizontally and vertically.
As well, I wrapped the css in a media query so that it won't apply on mobile devices so that the elements will still be responsive.