* { margin: 0; padding: 0; position: relative; box-sizing: border-box; line-height: 1.5; } body { font-family: "Myriad Pro", "Lucida Grande", "Trebuchet MS", sans-serif; color: #202020; padding: 2rem; background: url(../images/square_bg.png) repeat top left, url(../images/logo_transparent.png) no-repeat calc(100vw - 200px) 30px; background-size: auto, 150px 150px; } header, main, footer { box-sizing: border-box; margin: 0 auto; width: 750px; max-width: calc(100vw-2rem); } main { margin-top: 2rem; margin-bottom: 2rem; } h1, h2 { padding-bottom: .5rem; } h2 { margin-top: 2rem; } a:link, a:visited, a:active, a:hover { text-decoration: none; } a:link, a:visited, a:active, a:hover { color: rgb(41, 125, 207); transition: color .2s; } table { cellpadding: .5rem; border-collapse: collapse; } table tr:not(:last-of-type) { border-bottom: 1px solid gray; } table th { text-align: left; } table td.first-row { width: 180px; } table th, table td { vertical-align: top; padding: .5rem .2rem; } @media screen and (max-width: 1100px) { body { background: url(../images/square_bg.png) repeat top left; } main, header, footer { margin-left: 0; margin-right: 0; max-width: calc(100vw - 4rem); } } @media screen and (max-width: 530px) { body { padding: 1rem; } }