/* Typography */
@import url(http://fonts.googleapis.com/css?family=PT+Sans:400,700,400italic,700italic);
@import url(http://fonts.googleapis.com/css?family=Source+Code+Pro);body { font-family: 'PT Sans', Helvetica, Arial, sans-serif; }

header { text-align: center; }
header h1 * { font-size: 1.6em; }
header h2 { font-size: 1.4em; font-weight: normal; margin: 0; padding: 0; }

nav { font-size: 1.5em; }

article p { line-height: 1.5; }

.highlight { font-size: .8em; }

blockquote { margin-left: 0; padding-left: 20px; }

aside.sidebar h1 { font-size: 1.2em; }
aside.sidebar { font-size: 1em; }
aside.sidebar.highlight { font-size: .8em; }

footer { font-size: 0.8em; }

code, kbd, pre, samp { font-family: 'Source Code Pro', monospace, serif; line-height: 1.4em; }

@media only screen and (min-width: 900px) {
    body { font-size: 1.1em; }
}

/* Layout */
ul { padding: 0 0 0 20px; list-style: square; }

header { padding: 20px 0; }
header h1, span { margin: 0; }
header h1 { padding: 0 20px; }
header h2 { padding: 0 20px; display: block; }

nav { padding: 5px 0; }
nav ul, nav ol { list-style: none; list-style-image: none; margin: 0; padding: 0; }
nav li { text-align: center; width: 100%; }
nav li.main-nav { padding: 10px 0; }

ul.related { padding: 20px 0 20px 0; list-style: none; }
ul.related li { line-height: 2em; list-style-type: none; text-align: center; }
article { padding: 20px 20px 10px 20px; }
article li { line-height: 1.5em; }
article h1 { margin-top: 0; }
ul.related:first-child { padding: 0 0 20px 0; }

div.highlight { padding: 5px 10px; }
div.highlight pre { overflow-x: auto; white-space: pre; word-wrap: normal; }

div.post_separator { height: 40px; }

aside.sidebar h1 { margin-top: 0; }
aside.sidebar div.widget { margin: 20px 0; padding: 0 20px; }

div.archive_link { padding-top: 10px; text-align: center; }

div.footer-container { margin: 20px 0; }
footer { margin-bottom: 20px; padding: 20px; text-align: center; }

@media only screen and (min-width: 480px) {
    header { padding: 40px 0; }
    header h1 { padding: 0 40px; }
    header h2 { padding: 0 40px; }

    nav { padding: 10px 0; }
    nav ul { margin: 0 40px; padding: 0; text-align: center; }
    nav li { display: inline; list-style-type: none; text-align: left; width: auto; }
    nav li.main-nav { margin: 20px 0; padding: 0; }
    nav li.main-nav a { padding: 0 20px; }

    article { padding: 40px 40px 20px 40px; }
    ul.related { margin: 40px 0; padding: 20px 0 20px 0; }
    ul.related li { display: inline; line-height: 1em; }
    ul.related li.right { display: inline; float: right; }
    ul.related:first-child { padding-bottom: 20px; }

    div.highlight { padding: 10px 20px; }

    div.section + div.postmeta { margin: 40px 0; }

    aside.sidebar div.widget { margin: 40px 0; padding: 0 40px; }

    div.archive_link { padding-top: 20px; text-align: center; }

    footer { padding: 10px 40px; }
}

@media only screen and (min-width: 900px) {
    header { left: 0; top: 0; position: fixed; width: 26%; }

    nav { left: 0; top: 40%; position: fixed; width: 26%; }
    nav li { display: block; text-align: center; width: 100%; }

    div.main-container { margin-left: 26%; }
    div.footer-container { margin-left: 26%; }
}

@media only screen and (min-width: 1200px) {
    div.main-container { max-width: 48%; }
    div.footer-container { max-width: 48%; }

    aside.sidebar { left: 74%; top: 0; position: absolute;  width: 26%; } 
}

/* Palette */body { background-color: #f8fafb; }

header a, header a:visited, header a:hover, header a:active { color: #0c0501; text-decoration: none; }
header h2 { color: #93a4ad; }

a, a:visited { font-weight: bold; color: #3bbc46; text-decoration: none; }
a:hover { font-weight: bold; color: #3bbc46; text-decoration: underline; }
a.footnote-reference { vertical-align: super; }
article h1 a, article h1 a:visited, article h1 a:hover, article h1 a:active { color: #0c0501; text-decoration: none; }
.docutils.literal { background-color: #e6edf2; border: 1px solid #f8fafb; border-radius: 8px; padding: 2px 4px; }

blockquote { border-left: 10px solid #3bbc46; }

div.postmeta { color: #93a4ad; }

/* Archive page */
span.title_tag, span.title_category { font-style: italic; }

div.year h1 { font-size: 1.6em; margin-bottom: 0; margin-top: 20px; }

div.year ul { display: inline; list-style-type: none; margin: 0; }

div.year div.postmeta { margin: 10px 0 10px 0; }

div.year div.timestamp { color: #0c0501; font-size: 1.6em; font-weight: normal; margin-top: 0; }

div.year h2 { margin-bottom: 20px; margin-top: 0; }

@media only screen and (min-width: 480px) {
    div.year h1 { float: left; margin-right: -100%; }

    div.year div.postmeta { margin: 0 0 40px 40%; }
    div.year div.timestamp { float: left; margin-left: 20%; }
    div.year h2 { margin-left: 40%; }
}
