* { box-sizing: border-box; } html { color: #333; font-family: 'OCR-A', Monospace; font-size: 80%; } body { box-sizing: content-box; max-inline-size: 80em; margin-block: 0.5em 0; margin-inline: auto; padding-inline: 1em; } a { color: #666; } a:hover { color: #000; } h1 { color: #000; font-weight: normal; text-transform: uppercase; font-size: 120%; line-height: 1; } footer { font-size: 80%; text-align: center; padding: 0.5em; color: #666; } dialog { border: 1px solid; box-shadow: 0 0 0.5em #0004; } .top { margin-block-end: 1.5em; } #canvas { border: 1px solid #e6e6e6; inline-size: 100%; } #grid { display: block; position: relative; } #grid img { inline-size: 100%; block-size: auto; vertical-align: bottom; } .grid__focus, .grid__hover { width: 0.8%; height: 1.25%; position: absolute; } .grid__focus { background-color: red; box-shadow: 0 0 1em red; } .grid__hover { border: 1px solid black; } #more { max-inline-size: 40em; } #more p { margin-block: 3em; } #more ul { text-align: center; padding: 0; margin: 0; } #more li { display: block; margin-block: 1.5em; } @media (min-width: 600px) { .top { display: grid; grid-template-columns: 20% auto 20%; grid-gap: 0.5em; } header { grid-column: 1; } #canvas { grid-column: 2; } }