Как подстроить блоки по высоте?
Если в макете только 2 колонки, то так:<section class="section"></section>
<section class="section"></section>
<section class="section"></section>
<section class="section"></section>.section:nth-child(2n + 1) {
    float: left;
    clear: left;
}

.section:nth-child(2n) {
    float: right;
    clear: right;
}СкриншотДемо на codepen
Если колонок много, то с помощью multicolumn:.container {
  column-width: 250px; /* Ширина колонки */
  column-gap: 10px;  /* Расстояние между колонками */
}

.item {
  break-inside: avoid; /* Запрещает разрыв блока */
}СкриншотДемо на codepen
1) Через float: left (но не всегда идеально работает)
2) https://masonry.desandro.com/