Для контейнера вы решили создать макет столбцов CSS. Это не сильно влияет на рост детей. Наоборот. Ссылаясь на Bootstrap макет колоды карт , вам понадобится следующий CSS для контейнера:
/*columns: 300px 4;*/
/* margin: 20vh 5% 5%; */
margin-top: calc(50px + 4%); // 50px height of the input + 2% top margin + 2% bottom margin
margin-left: 5%;
margin-right: 5%;
display: flex;
flex-flow: row wrap;
В этом случае дочерние элементы будут выровнены как гибкие элементы. Для макета столбца вам понадобится свойство flex-basis
.
display: flex;
flex: 1 0 30%; // flex-basis 30% for 3 colums per row (33.33% - 15px - 15px)
flex-direction: column;
margin-right: 15px;
margin-bottom: 0;
margin-left: 15px;