/*
 * CSS Reset
 *
 * http://meyerweb.com/eric/tools/css/reset/ 
 * v2.0 | 20110126
 * License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
    display: block;
}
body {
    line-height: 1;
}
ol, ul {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}

/*
 * Base
 */

html, body {
    height: 100%;
}

body {
    font: 17px/1 "Helvetica Neue", Helvetica, Arial, sans-serif;
    color: #666;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

h1 {
    font-size: 30px;
    letter-spacing: -1px;
    color: #222;
    font-weight: bold;
}

h3, h4, h5 {
    color: #333;
}

h3 {
    font-size: 21px;
    font-weight: 400;
}

h4 {
    font-size: 19px;
    font-weight: bold;
}

h5 {
    font-size: 16px;
    font-weight: bold;
}

h6 {
    font-size: 14px;
    font-weight: bold;
    color: #666;
    margin-bottom: 6px;
}

p {
    margin: 20px 0;
}

ul {
    margin: 0;
    padding: 0;
}

a {
    text-decoration: none;
}

blockquote {
    border-left: 4px solid #ccc;
}

blockquote p {
    margin: 0;
    padding: 2px 15px;
    color: #777;
}

strong {
    font-weight: bold;
}

em {
    font-style: italic;
}

hr {
    display: block;
    border: none;
    height: 1px;
    margin: 40px auto;
    background: #eee;
}

pre {
    margin-bottom: 20px;
    font-family: 'Source Code Pro', Menlo, monospace;
    white-space: pre-wrap;
    padding: 20px;
    overflow: auto;
    border-radius: 3px;
    background: #282c34 !important;
    font-size: 14px;
    line-height: 1.5em;
    border-radius: 8px;
}

p code {
    font-family: 'Source Code Pro', Menlo, monospace;
    background-color: #EEE;
    font-size: 14px;
    padding: 4px;
    font-weight: 600;
}

code.language-sh {
    background: #272b2d;
    color: #d0d4d7;
}

/*
 * Utility classes
 */
.hidden {
    display: none;
}

.center {
    text-align: center;
}

/*
 * Navigation
 */
.nav-primary {
    margin: 10px 0 0 0;
    display: flex;
    justify-content: center;
}

.nav-primary__link {
    margin: 0 5px;
    font-size: 20px;
    font-weight: 300;
    color: #aaa;
    margin-top: 10px;
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-style: normal;
}

.nav-secondary {
    display: flex;
    justify-content: center;
}

.nav-secondary__icon {
    width: 32px;
    height: 32px;
    margin: 0 5px;
}

/*
 * Header
 */
.header {
    text-align: center;
    padding: 60px 40px;
    position: relative;
}

.header__gif {
    width:120px;
    height:120px;
    border-radius:50%;
    overflow:hidden;
    object-fit: cover;
}

.header__gif--static {
    position: absolute;
    width:120px;
    height:120px;
    border-radius:50%;
    overflow:hidden;
    object-fit: cover;
    -webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
    filter: grayscale(100%);
    z-index: 1;
}

.header__gif--static:hover {
    opacity: 0;
}

.header__title {
    margin-top: 20px;
    font-weight: 400;
    letter-spacing: 0px;
    font-size: 20px;
    color: #222;
    text-transform: lowercase;
}

/*
 * Post list
 */
.home {
    padding:20px 10px 0;
}

.post-list {
    margin: auto;
    max-width: 600px;
}

.post-list__header {
    display: flex;
}

.post-list__item {
    padding-bottom: 20px;
}

.post-list__link:hover .post-list__title {
    text-decoration: none;
    color: #46a5f3;
    -webkit-transition: all 0.15s ease;
    -moz-transition: all 0.15s ease;
    -ms-transition: all 0.15s ease;
    -o-transition: all 0.15s ease;
    transition: all 0.15s ease;
}

.post-list__title {
    width: 100%;
    color: #333;
    display: block;
    font: bold 19px/1.7 "Helvetica Neue", helvetica, Arial, sans-serif;
}

.post-list__date {
    flex-shrink: 0;
    margin-left: 40px;
    font: 300 17px/1.8 "Helvetica Neue", helvetica, Arial, sans-serif;
    color: #bbb;
}

.post-list__summary {
    font: normal 17px/1.5em "Helvetica Neue", Helvetica, Arial, sans-serif;
    color: #aaa;
    margin-top: 5px
}

/*
 * Single post
 */
.article {
    max-width: 680px;
    margin: auto;
    line-height: 1.8;
    padding:0 10px;
}

.article a {
    color: #46a5f3;
}

.article a:hover {
    color: #2a92e9;
}

.article__title {
    margin-bottom: 20px;
    color: #333;
    text-align: center;
    font: 400 32px/1.4em "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.article__header {
    font: normal 15px/1.5em "Helvetica Neue",Helvetica,Arial,sans-serif;
    margin: -5px 0 20px 0;
    color: #b2b9be;
    text-align: center;
}

.article h2 {
    margin-top: 20px;
    margin-bottom: 10px;
    font: 400 24px/1.5 "Helvetica Neue", Helvetica, Arial, sans-serif;
    color: #333;
}

.article ul {
    margin-left: 15px;
    padding: 0;
}

.article li {
    list-style-position: inside;
    list-style-type: disc;
}

/*
 * Footer
 */

.footer {
    margin-top: 80px;
    padding-bottom: 45px;
    font-size: 14px;
    text-align: center;
    color: #bbb;
}

/*
 * Media queries
 */
@media (max-width: 700px) {
    img {
        max-width: 100%;
    }

    .header {
        padding: 30px 20px;
    }

    .header__gif, .header__gif--static {
        width: 80px;
        height: 80px;
    }

    .header__title {
        margin-top: 10px;
    }

    .home {
        padding: 30px 45px;
    }

    .article {
        padding-left: 25px;
        padding-right: 25px;
    }

    .post-list__date {
        display: none;
    }

    .footer {
        margin-top: 0;
        padding-bottom: 25px;
    }

    .article + .footer {
        margin-top: 45px;
    }
}