body { font-family: "Play", sans-serif; padding: 0; margin: 0; overflow: hidden; } #page { height: 100vh; display: grid; grid-template-columns: auto; grid-template-rows: 3rem calc(100vh - 5rem) 2rem; grid-template-areas: "header" "page-contents" "footer"; color: var(--page-font-color); background-color: var(--page-bg-color); } #header { grid-area: header; display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: auto; grid-template-areas: "header-left header-right"; font-family: "Cinzel", serif; font-size: 2rem; line-height: 3rem; font-weight: 500; padding: 0 10px; -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; background-color: var(--header-bg-color); color: var(--header-font-color); border-bottom: 1px solid var(--header-font-color); } #header-left { grid-area: header-left; } #header-right { grid-area: header-right; justify-self: end; font-size: 1.75rem; } #footer { grid-area: footer; display: grid; grid-template-columns: 1fr 1.5fr 1.5fr 1fr; grid-template-rows: auto; grid-template-areas: ". footer-left footer-right ."; line-height: 2rem; height: 2rem; background-color: var(--footer-bg-color); } #footer-left { grid-area: footer-left; } #footer-right { grid-area: footer-right; justify-self: end; } #page-contents { grid-area: page-contents; padding: 0 20rem; height: calc(100vh - 5rem); display: grid; grid-template-columns: auto; grid-template-rows: fit-content(5rem) auto 1rem; grid-template-areas: "slogan" "api-tools" "final"; overflow-y: auto; } #slogan { grid-area: slogan; } #slogan h1 { line-height: 2.5rem; font-size: 2.5rem; } #api-tools { grid-area: api-tools; } #final { grid-area: final; } #fields { display: grid; grid-template-columns: auto; grid-template-rows: auto; } .field-group { padding-bottom: .5rem; display: grid; grid-template-columns: 20rem 20rem; grid-template-rows: auto; } .field-group label { padding-right: 1rem; text-align: right; } .hidden { display: none !important; } @media screen and (max-width: 1900px) { #page-contents { padding: 0 10rem; } } @media screen and (max-width: 1400px) { #page-contents { padding: 0 5rem; } } @media screen and (max-width: 1000px) { #page-contents { padding: 0 1rem; } } @media screen and (max-width: 807px) { #page { grid-template-rows: 6rem calc(100vh - 8rem) 2rem; } #page-contents { height: calc(100vh - 8rem); } } @media screen and (max-width: 474px) { #page { grid-template-rows: 9rem calc(100vh - 11rem) 2rem; } #page-contents { height: calc(100vh - 11rem); } } @media screen and (max-width: 337px) { #page { grid-template-rows: 12rem calc(100vh - 14rem) 2rem; } #page-contents { height: calc(100vh - 14rem); } }