body { font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, freesans, sans-serif; margin: 1em; } #header { background-color: #eee; margin-bottom: 1em; text-align: center; } h1 { margin: 0; } #links { background-color: #e0e0e0; display: table; width: 100%; height: 1.5em; } #links > a { display: table-cell; vertical-align: middle; width: 25%; color: #000; text-decoration: none; } #links > a:hover, #links > a:focus { background-color: #CCC; font-weight: bold; } a.screenshot { display: block; width: 640px; max-width: 100%; margin: auto; } a.screenshot > img { width: 100%; } @media (min-width: 1120px) { a.screenshot { float: right; margin: 0 0 1em 1em; } } span.hover { display: none; } a:hover + span.hover { display: block; position: fixed; top: 0; bottom: 0; left: 0; right: 0; pointer-events: none; background: rgba(0,0,0,0.4); } span.hover > img { position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; width: auto; height: auto; max-width: 100%; max-height: 100%; box-shadow: 5px 5px 20px rgba(0,0,0,0.4); } h2 ~ p, h2 ~ p + ul { margin-left: 1em; }