body { background: #ffffff; margin: 3rem; font-family: sans-serif, monospace, serif; } .container { display: flex; flex-wrap: wrap; gap: 3rem; } .logo { width: 294px; height: 259px; } h1 { font-weight: 900; font-style: italic; font-size: 1.75rem; } .article { max-width: 30rem; font-size: 1.25rem; } .gallery { display: grid; grid-template-columns: repeat(9, 1fr); grid-template-rows: repeat(16, 5rem); grid-gap: 1rem; max-width: calc(100vw - 6rem); width: 56rem; } .gallery > div { position: relative; background-color: #00000011; } .gallery > div:nth-child(1) { grid-column: 1 / span 4; grid-row: 1 / span 5; } .gallery > div:nth-child(2) { grid-column: 1 / span 4; grid-row: 6 / span 3; } .gallery > div:nth-child(3) { grid-column: 5 / span 5; grid-row: 1 / span 8; } .gallery > div:nth-child(4) { grid-column: 1 / span 5; grid-row: 9 / span 8; } .gallery > div:nth-child(5) { grid-column: 6 / span 4; grid-row: 9 / span 4; } .gallery > div:nth-child(6) { grid-column: 6 / span 4; grid-row: 13 / span 4; } .gallery img, .gallery video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; } @media screen and (max-width: 56rem) { body { margin: 2rem 1rem 1rem; } .container { gap: 2rem; } .gallery { display: flex; flex-direction: column; gap: 1rem; max-width: calc(100vw - 2rem); } .gallery img, .gallery video { position: static; } } @media (prefers-color-scheme: dark) { .logo { filter: invert(1); } body { background-color: #000000; color: #ffffff; } a { color: burlywood; } .gallery > div { background-color: #ffffff22; } }