- блок флексом, column
- выясняете сколько элементов
- делите пополам
-- если нечетное, решаете что с этим делать
- выясняете высоту половинок и максимальную из них
- задаете эту высоту флексу
-- если высота первой меньше, чем высота второй, дополняете высоту первого столбца чем-нибудь, например, псевдоэлементом.
Либо аналогично, но используя свойство колонок column-fill.