* { box-sizing: border-box; } html, body { background-color: #006dfe; font-family: sans-serif; font-size: 24px; line-height: 1.6; } header { display: flex; flex-direction: column; justify-content: space-between; align-items: flex-start; width: 100%; height: 100vh; padding: 24px; margin: 0; } .meta { position: relative; } .index { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); display: flex; justify-content: center; align-content: center; flex-wrap: wrap; gap: 12px; list-style: none; } ul { padding: 0; margin: 0; } .index li, .meta button { position: relative; padding: 6px 12px; background-color: white; border-radius: 42px; margin: 0; font-size: 42px; } .index li { display: inline-block; width: 48px; height: 48px; border-radius: 50%; } .index img { padding: 8px; width: 100%; height: 100%; position: absolute; top: 0; left: 0; object-fit: contain; } .index a { width: 100%; height: 100%; } a { color: currentColor; text-decoration: none; } .index a:after { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; } li:hover { transform: scale(1.05); } #background, #foreground { position: absolute; width: 100%; height: 100vh; top: 0; left: 0; object-fit: contain; } #foreground { pointer-events: none; } .meta button { background-color: white; border: none; font-size: 1rem; font-family: sans-serif; margin-top: 16px; } .meta .title { margin: 0; background-color: white; } .meta .description { max-width: 60ch; margin: 0; } .meta.release { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; gap: 8px; } .meta .title, .meta.release .title, .meta.release .date { font-size: 1rem; background-color: white; padding: 6px 12px; border-radius: 6px; } .hidden { visibility: hidden; } main, footer { font-size: 24px; padding: 24px; } main p { grid-column-start: 1; } main img { grid-column-start: 2; } main * { max-width: 60ch; } main img { display: inline-block; } dl { display: grid; grid-template-columns: 1fr 4fr; gap: 32px; } footer h2 { margin: 64px 0; } dt { background-color: white; justify-self: start; align-self: flex-start; padding: 6px 12px; border-radius: 24px; } dd { margin: 0; max-width: 60ch; } .note { background-color: white; padding: 2px 4px; } #intro { cursor: pointer; } @media (max-width: 767.98px) { .index li { width: 32px; height: 32px; } #background { object-fit: contain; object-position: middle; } main img { max-width: 100%; } dl { display: flex; flex-direction: column; } dd + dt { margin-top: 48px; } }