.default-main-wrapper{ height: 100%; width: 100%; display: flex; flex-direction: row; justify-content: stretch; align-items: center; box-sizing: border-box; } .side-nav-wrapper{ flex-grow: 2; /* fill horizontal space of parent */ width: 20%; min-width: 200px; max-width: 300px; height: 100%; box-sizing: border-box; /*border: darkgrey solid 3px;*/ } .default-content-wrapper{ flex-grow: 3; /* fill horizontal space of parent */ display: flex; flex-direction: column; justify-content: flex-start; align-items: center; height: 100%; overflow-y: scroll; box-sizing: border-box; padding: 0 15% 0 0; /*border: fuchsia 3px solid;*/ } .default-content-wrapper::-webkit-scrollbar { display: none; } /* The bottom padding is for having some kind of spatial distinction between the different elements */ .default-content-container-element { box-sizing: border-box; min-height: 100%; width: 100%; max-width: 800px; flex-shrink: 0; /* Keeps necessary height for content to be fully shown. */ overflow-x: hidden; display: flex; flex-direction: column; justify-content: center; /*margin-bottom: 100px; // => dangerous! this messes up the scroll calculation for the side-nav-bar! */ } .default-content-container-element:last-child { padding-bottom: 0; } .minimised-navigation{ position: absolute; bottom: 10%; right: 10%; display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 5px; padding: 5px; } .min-nav-button { height: 50px; width: 50px; color: white; box-sizing: border-box; display: flex; flex-direction: column; justify-content: center; align-items: center; border-radius: 4px; padding: 8px; background-color: #0003; } .min-nav-button:hover { background-color: #6666; } .min-nav-button > * { height: 100%; width: 100%; } .advent-door-wrapper { display: flex; flex-direction: row; justify-content: flex-start; align-items: flex-start; gap: 30px; } @media (max-width: 700px) { .advent-door-wrapper { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 30px; } } @media (min-width: 701px) { .advent-door-wrapper { display: flex; flex-direction: row; justify-content: flex-start; align-items: flex-start; gap: 5%; } } @media (max-width: 1000px) { .side-nav-wrapper{ display: none; } .start-content-container-element { padding: 0 5% 0 5%; } .default-content-wrapper{ padding: 0 5%; } } @media (min-width: 1001px) { .side-nav-wrapper{ display: block; } .start-content-container-element { padding: 0 5% 0 0; } .default-content-wrapper{ padding: 0 15% 0 0%; } .minimised-navigation{ display: none; } }