body { font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, freesans, sans-serif; margin: 1em; } h1 { text-align: center; background-color: #eee; } img.screenshot { display: block; margin: auto; width: 640px; max-width: 100%; } @media (min-width: 1120px) { img.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; 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; }