@font-face { font-family: bebas; src: url(font/BebasNeue-Regular.ttf); } body, html { width: 100vw; height: 100vh; margin: 0; font-family: bebas; font-size: min(4vh, 6vw); color: #404040; } body { display: flex; flex-direction: column; } header { background-color: white; display: grid; grid-template-columns: auto auto; grid-template-rows: auto; padding: 1rem 0.8rem 1rem 0.2rem; border-bottom: 1px solid #d2d2d2; outline: 1px solid #d2d2d2; outline-offset: 2px; } .logo { justify-self: start; align-self: center; display: grid; grid-template-columns: auto auto; grid-template-rows: auto; align-items: center; } .logo h1 { display: inline-block; font-weight: 200; margin: 0; margin-left: -0.3rem; font-size: 1.7rem; } .logo img { height: 1.4rem; margin-top: -0.3rem; } .state { font-size: 0.6rem; text-align: right; align-self: center; } #actual-state.topi { color: #31B907; } #actual-state { color: #e10000; } .state img { vertical-align: middle; margin-left: 0.2rem; width: .8rem; } section { flex-grow: 4; overflow: scroll; } section h2 { text-align: center; font-weight: normal; font-size: 1.2rem; margin-bottom: 0.3rem; } .inputs { display: grid; grid-template-columns: auto auto; grid-template-rows: auto auto auto auto; justify-items: center; align-items: center; text-align: center; grid-template-areas: ". offsetText" "tempUp offsetUp" "reqTemp offset" "tempDown offsetDown"; } .inputs #tempUp { grid-area: tempUp; height: 3.2rem; } .inputs #tempDown { grid-area: tempDown; height: 3.2rem; transform: rotate(180deg); } .inputs #reqTemp { grid-area: reqTemp; font-size: 3.4rem; color: black; } .inputs span { grid-area: offsetText; font-size: 0.5rem; color: #c1c1c1; margin-bottom: -2.5rem; } .inputs #offsetUp { grid-area: offsetUp; height: 2.5rem; margin-bottom: -1.5rem; filter: invert(61%) sepia(81%) saturate(13%) hue-rotate(26deg) brightness(88%) contrast(86%); } .inputs #offset { grid-area: offset; font-size: 2rem; color: #9a9a9a; } .inputs #offsetDown { grid-area: offsetDown; height: 2.5rem; margin-top: -1.5rem; transform: rotate(180deg); filter: invert(61%) sepia(81%) saturate(13%) hue-rotate(26deg) brightness(88%) contrast(86%); } footer { background-color: #404040; width: 100vw; color: white; } footer h2 { text-align: center; font-weight: normal; font-size: 1.2rem; margin-bottom: 0.3rem; } footer #temp { text-align: center; font-weight: normal; font-size: 2.1rem; margin-bottom: 1.5rem; } a { position: absolute; bottom: 0.3rem; right: 0.3rem; text-decoration: none; font-size: 0.8rem; color: #c1c1c1; } a:visited { color: #c1c1c1; } @media only screen and (min-width: 768px) { .inputs { grid-template-columns: 35vw auto auto 30vw; grid-template-areas: ". . offsetText ." ". tempUp offsetUp ." ". reqTemp offset ." ". tempDown offsetDown ."; } }