*{margin:0;padding:0;box-sizing:border-box;} html, body{ height: 100vh; width: 100vw; background: black; } .grid{ display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: 1fr 1fr; height: 100vh; width: 100vw; grid-template-areas: "topLeft topRight" "bottomLeft bottomRight"; gap: 2px; } .grid > *{ background: black; min-height: 0; min-width: 0; overflow: hidden; } .topLeft{ display: flex; flex-direction: column; justify-content: space-around; align-items: center; grid-area: topLeft; color: white; } .topRight{ display: flex; align-items: center; justify-content: center; grid-area: topRight; } .bottomRight{ grid-area: bottomRight; } #date{ font-size: 2.2em; } #time{ font-size: 1.8em; text-align: center; } .weather{ display: flex; justify-content: space-around; width: 100%; } .weatherBlock{ display: flex; justify-content: space-around; align-items: center; position: relative; padding-top: 35px; width: 50%; } .weatherBlock h2{ position: absolute; top: 0; left: 0; width: 100%; text-align: center; } .topRight img{ height: 95%; } .bottomRight iframe{ width: 100%; height: 100%; }