form { li { margin: 5px 0 5px 0; } td { white-space: nowrap; padding-bottom: 5px; textarea+i { vertical-align: top; } } label { font-size: 1rem; color: rgba(0, 0, 0, 80); } i+i { margin-left: 3px; } .layout td+td { padding-left: 5px; } .list { font-size: 1rem; td { white-space: nowrap; padding: 3px 5px 3px 5px; } } } .form-group { display: flex; flex-direction: row; flex-wrap: wrap; > *:not(label) { flex: 1; } & + * { margin-top: .75rem; } label { flex: 0 0 100%; } .input-control { flex: 1; display: flex; flex-direction: row; flex-wrap: wrap; & +.input-control { margin-left: 1rem; } } textarea { height: 8rem; } } * + .form-group { margin-top: .75rem; } @media (max-width: 768px) { .form-group { flex-direction: column; } }