html, body { margin: 0; padding: 0; font-family: sans-serif; } header, footer { background-color: aqua; padding: 14px 10px; } main { background-color: red; width: 80%; margin: 0 auto; } #map { height: 60vh; } .flex { display: flex; } .flex > *[main] { flex: 1; }