.layout { display: grid; grid-template-rows: max-content 1fr; grid-template-columns: 1fr; overflow: hidden; } .nav { height: 60px; width: 100vw; grid-column: 1; grid-row: 1 / 2; } .body { grid-column: 1; grid-row: 2 / 3; min-height: 0; height: calc(100vh - 60px); overflow-y: auto; }