.content-wrapper { display: flex; align-items: stretch; min-height: 100vh; } #content { flex-grow: 1; display: flex; flex-direction: column; } .content-container { flex-grow: 1; padding-top: 85px; } .content-header { display: flex; position: fixed; width: 100%; } .container { &__section { display: block; padding: 0 15px; margin: 0 10px; } } @media (min-width: 768px) { .content-header { width: 100%; } .content-container { padding-top: 155px; } .container { &__section { &--partitioned { display: flex; justify-content: space-between; align-items: stretch; } } &__subsection { flex: 1; margin-right: 10px; & + & { margin-left: 5px; } } } }