.section-layout {
  display: flex;
  flex-direction: row;
  margin: 0 -16px;
}

.section-layout > * {
  padding: var(--space-sm);
}

.section-layout:not([class*="column-"]) > * {
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: auto;
}

.section-layout[class*="column-"] {
  flex-wrap: wrap;
}

.section-layout.column-1 > * {
  flex-basis: 100%;
  max-width: 100%;
}

.section-layout.column-2 > * {
  flex-basis: calc(100% / 2);
  max-width: calc(100% / 2);
}

.section-layout.column-3 > * {
  flex-basis: calc(100% / 3);
  max-width: calc(100% / 3);
}

.section-layout.column-4 > * {
  flex-basis: calc(100% / 4);
  max-width: calc(100% / 4);
}

.section-layout.column-5 > * {
  flex-basis: calc(100% / 5);
  max-width: calc(100% / 5);
}

@media (max-width: 1200px) {
  .section-layout.column-5 > * {
    flex-basis: calc(100% / 3);
    max-width: calc(100% / 3);
  }
}

@media (max-width: 980px) {
  .section-layout.column-3 > *,
  .section-layout.column-4 > *,
  .section-layout.column-5 > * {
    flex-basis: calc(100% / 2);
    max-width: calc(100% / 2);
  }
}

@media (max-width: 680px) {
  .section-layout > * {
    flex-basis: 100% !important;
    max-width: 100% !important;
  }
}
