body { font-family: Helvetica, sans-serif; height: 100vh; margin: 0; padding: 8px; box-sizing: border-box; } img { max-height: 100%; } main { height: 100%; display: grid; grid-template-columns: repeat(3, 1fr); grid-template-rows: auto 1fr auto; grid-template-areas: "h h h" "a b c" "f f f"; } #header { grid-area: h; } .list { height: 100%; width: 100%; } #artistListContainer { grid-area: a; } #albumListContainer { grid-area: b; } #trackListContainer { grid-area: c; } #playerContainer { grid-area: f; height: auto; max-height: 30vh; display: flex; justify-content: center; }