/* apply a natural box layout model to all elements */ *, *:before, *:after { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; } html { position: relative; min-height: 100%; } body { display: flex; flex: 1; flex-direction: column; background-color: #F4F4F4; margin: 0 0 100px; padding: 0 20px; font-size: 15px; font-family: Sans } a { color: #146E90; font-size: 97%; text-decoration: none; } a:hover { color: #023244; } p { padding: 0 20px; text-align: left; font-size: 16px; } h2 { font-size: 20px; } header { display: flex; } header h1 { flex: 1; font-size: 30px; } header h1 a { color: #000; } header nav { flex: 1; display: flex; width: auto; padding-right: 10px; align-items: center; justify-content: flex-end; } header nav li { display: inline; margin: 0px 6px; list-style: none; text-align: center; } #about, #contact { padding-bottom: 1px; } #blog {margin-bottom: -10px;} .post-list ul { padding: 0 20px; } .post-list ul li { list-style: none; } .post-list .date { font-size: 15px; color: #4D4D4D; } .post-list a { font-size: 17px; } footer { position: absolute; left: 0; bottom: 0; height: auto; width: 100%; } footer p { position: absolute; margin: 0 0 5px 15px; padding: 0; left: 0px; bottom: 0px; font-size: 12px; font-weight: bold; color: #4D4D4D; } footer #emblem { position:absolute; bottom: 0; right: 0; }