/* HTML5 display definitions */
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
audio:not([controls]) { display: none; }
[hidden] { display: none; }
/** Base **/
html { font-size: 100%; overflow-y: scroll; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
body { margin: 0; font-size: 16px; line-height: 1.231; background: #fefefe; }
body, button, input, select, textarea { font-family: sans-serif; color: #222; }
::-moz-selection { background: #ccc; text-shadow: none; }
::selection { background: #ccc; text-shadow: none; }
.noscript { display: none; }
.no-js noscript { display: block; }
/*Links */
a, a:visited { color: #06e; }
a:hover, a:focus { color: #d60000; }
a:focus { outline: thin dotted; }
a:hover, a:active { outline: 0; }
/* Typography */
body { font-family: serif; }
h1, h2, h3, h4, h5, h6 { font-family: sans-serif; font-weight: normal; }
h1 { font-size: 2em; }
h2 { font-size: 1.85em; }
h3 { font-size: 1.7em; }
h4 { font-size: 1.55em; }
h5 { font-size: 1.40em; }
h6 { font-size: 1.25em; }
p { margin: 0.5em 3%; }
a[rev=footnote] { padding-left: 2px; }
abbr[title] { border-bottom: 1px dotted; }
b, strong { font-weight: bold; }
blockquote { margin: 1em 40px; }
dfn { font-style: italic; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
ins { background: #ff9; color: #000; text-decoration: none; }
mark { background: #ff0; color: #000; font-style: italic; font-weight: bold; }
pre, code, kbd, samp { font-family: 'Bitstream Vera Sans Mono', 'Courier', monospace; font-size: 1em; }
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
q { quotes: none; }
q:before, q:after { content: ""; content: none; }
small { font-size: 85%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup:before { content: ' [ '; }
sup:after { content: ' ] '; }
sup { top: -0.4em; }
sub { bottom: -0.25em; }
/* Lists */
ul, ol { margin: 1em 0; padding: 0 0 0 17px; }
dd { margin: 0 0 0 40px; }
nav ul, nav ol { list-style: none; list-style-image: none; margin: 0; padding: 0; }
/* Embedded content */
img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; }
svg:not(:root) { overflow: hidden; }
/* Figures */
figure { margin: 0; }
/* Forms */
form { margin: 0; }
fieldset { border: 0; margin: 0; padding: 0; }
label { cursor: pointer; }
legend { border: 0; *margin-left: -7px; padding: 0; }
button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }
button, input { line-height: normal; *overflow: visible; }
table button, table input { *overflow: auto; }
button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; }
input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
textarea { overflow: auto; vertical-align: top; resize: vertical; }
input:valid, textarea:valid {  }
input:invalid, textarea:invalid { background-color: #f0dddd; }
/* Tables */
table { border-collapse: collapse; border-spacing: 0; }
td { vertical-align: top; }
/*** <Primary Styles> ***/
/** Layout **/
h1, h2, h3, h4, h5, h6 { margin: 0.75em 3%; }
#container { padding-bottom: 2em; }
.divider { border-style: solid; border-width: 2px 0; }
.links, .gist { position: relative; }
.links { display: flex; justify-content: space-around; }
.links li { display: inline-block; padding: 0.5em 0; text-align: center; }
pre { margin: 0; border: 1px solid; padding: 0.25em 0.5em 0.5em; }
.entry-content { margin: 0 3%; }
.entry-content p, .entry-content h1, .entry-content h2, .entry-content h3 {
  margin-right: 0; margin-left: 0;
}
/* Pagination */
.pages { margin: 0 3%; }
/** Typography **/
h1 a, .links a { text-decoration: none; }
/** Modules **/
/* Article */
article header { margin-bottom: 0.6em; }
article h1 { margin-bottom: 0.15em; }
article header time { margin: 0 0 0 3%; }
.external:after { content: ' \27ab'; font-size: 0.75em; }
article img { float: right; margin: 0 0 0.1em 2%; max-width: 38%; }
article > footer { margin: -0.4em 0 0; padding: 0; text-align: left; }
.callout { margin: 0.5em 0; border: 2px solid; padding: 0 3%; }
.next { text-align: right; }
.next a:after { content: '\bb'; padding-left: 5px; }
.prev a:before { content: '\ab'; padding-right: 5px; }
/* Archives */
#blog-archives h3 { margin-bottom: 0; }
#blog-archives h2 { margin-bottom: 0.375em; }
.archived h4 { margin: 0.25em 3%; }
.archived time { position: relative; font-size: 0.75em; color: #333; }
/* Footer */
footer { padding: 1em 0 0; text-align: center; }
footer a { text-decoration: none; }
.decorated { text-align: center; }
.decorated:before, .decorated:after { content: '\2014'; padding: 0 .3em; }
.decorated a { text-decoration: none; }
/* Footnotes */
.footnotes { border-style: dashed; border-width: 1px 0 0; padding: 0.5em 0 0.25em; }
.footnotes p { margin: 0.15em 1%; }
/** Colors **/
h1 a, h1 a:visited, h2 a, h2 a:visited { color: #000; }
h1 a:hover, h1 a:focus, h2 a:hover, h2 a:focus { color: #d60000; }
.divider, .callout { border-color: #ccc; }
pre { border-color: #dedede; background: #f8f8ff; }
.footnotes { border-color: #ccc; }
/*** </Primary Styles> ***/
/** Helpers **/
/* For image replacement */
.ir { display: block; border: 0; text-indent: -999em; overflow: hidden; background-color: transparent; background-repeat: no-repeat; text-align: left; direction: ltr; }
.ir br { display: none; }
/* Hide from both screenreaders and browsers: h5bp.com/u */
.hidden { display: none !important; visibility: hidden; }
/* Hide only visually, but have it available for screenreaders: h5bp.com/v */
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
/* Extends the .visuallyhidden class to allow the element to be focusable when navigated to via the keyboard: h5bp.com/p */
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }
/* Hide visually and from screenreaders, but maintain layout */
.invisible { visibility: hidden; }
/* Contain floats: h5bp.com/q */
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { zoom: 1; }
/** Media Queries **/
@media only screen and (min-width: 480px) {
  /* Style adjustments for viewports 480px and over go here */
  #container { max-width: 800px; }
  article .next { float: right; }
  article .prev { float: left; }
}
@media only screen and (min-width: 500px) {
  body { font-size: 18px; }
}
@media only screen and (min-width: 700px) {
  body { font-size: 20px; }
}
/** Print **/
@media print {
  * { background: transparent !important; color: black !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; }
  a, a:visited { text-decoration: underline; }
  a[href]:after { content: " (" attr(href) ")"; }
  abbr[title]:after { content: " (" attr(title) ")"; }
  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; }
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3 { page-break-after: avoid; }
}

