/**
 * Reset some basic elements
 */
blockquote,
body,
dd,
dl,
figure,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
ol,
p,
pre,
ul {
  margin: 0;
  padding: 0; }

/**
 * Basic styling
 */
body {
  font: 300 16px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  color: #333;
  background-color: #fff; }

/**
 * Set `margin-bottom` to maintain vertical rhythm
 */
blockquote,
dl,
figure,
h1,
h2,
h3,
h4,
h5,
h6,
ol,
p,
pre,
table,
ul {
  margin-bottom: 1rem; }

/**
 * Images
 */
img {
  max-width: 100%;
  vertical-align: middle; }

/**
 * Figures
 */
figure > img {
  display: block; }

figcaption {
  font-size: 0.875rem; }

/**
 * Lists
 */
ol,
ul {
  margin-left: 2rem; }

li > ol,
li > ul {
  margin-bottom: 0; }

/**
 * Headings
 */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 300; }

/**
 * Links
 */
a {
  color: #0645ad;
  text-decoration: none; }
  a:hover {
    text-decoration: underline; }

/**
 * Blockquotes
 */
blockquote {
  color: #6a6a6a;
  padding-left: 1rem;
  border-left: 2px solid #eaeaea;
  font-style: italic;
  font-size: 0.875rem; }
  blockquote > :last-child {
    margin-bottom: 0; }

/**
 * Code formatting
 */
code,
pre {
  background-color: #fcfcfc; }

code {
  padding: 1px 5px;
  font-family: Inconsolata, Monaco, Consolas, monospace;
  color: #f14e32; }

pre {
  padding: 8px 12px;
  overflow-x: auto;
  border: 1px solid #eaeaea; }
  pre > code {
    border: 0;
    padding-right: 0;
    padding-left: 0;
    tab-size: 4;
    color: inherit; }

/**
 * Table
 */
table {
  width: 100%;
  max-width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  table-layout: fixed; }

td,
th {
  padding: 0.5rem;
  line-height: inherit; }

th {
  text-align: left;
  vertical-align: bottom;
  border-bottom: 2px solid #eaeaea; }

td {
  vertical-align: top;
  border-bottom: 1px solid #eaeaea; }

/**
 * Horizontal rule
 */
hr {
  border: none;
  border-top: 1px solid #f7f7f7;
  margin: 2rem auto; }

/**
 * Clearfix
 */
.underlined {
  flex: 1;
  text-decoration: none;
  background-image: linear-gradient(to right, yellow 0, yellow 100%);
  background-position: 0 1.2em;
  background-size: 0 100%;
  background-repeat: no-repeat;
  transition: background .5s; }
  .underlined:hover {
    background-size: 100% 100%; }
  .underlined--thin {
    background-image: linear-gradient(to right, black 0, black 100%); }
  .underlined--thick {
    background-position: 0 -0.1em; }
  .underlined--offset {
    background-position: 0 0.2em;
    box-shadow: inset 0 -.5em 0 0 white; }
  .underlined--gradient {
    background-position: 0 -0.1em;
    background-image: linear-gradient(to right, yellow 0, lightgreen 100%); }
  .underlined--reverse {
    background-position: 100% -0.1em;
    transition: background 1s;
    background-image: linear-gradient(to right, yellow 0, yellow 100%); }

/**
 * Site header
 */
.site-header {
  border-bottom: 1px solid #eaeaea;
  margin-top: -2rem;
  max-width: 48rem; }
  .site-header p {
    font-size: 0.875rem; }
  .site-header .site-intro {
    font-size: 1.3rem; }

.smallcap {
  font-size: 1.5rem;
  font-weight: bold; }
  .smallcap a,
  .smallcap a:hover {
    text-decoration: none;
    letter-spacing: 2px;
    background-color: #333;
    color: #eee;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    padding-top: 0.2rem;
    padding-bottom: 0.2rem; }

/**
 * Page content
 */
.page-content {
  position: relative;
  padding: 2rem 1.5rem;
  margin: 1rem;
  box-sizing: border-box;
  max-width: 48rem; }

/**
 * Pages
 */
.home section + section {
  margin-top: 2rem;
  max-width: 48rem; }

.post-list > li {
  margin-bottom: 0.5rem;
  list-style-type: none;
  margin-left: -2rem; }
  .post-list > li a {
    color: #333;
    text-decoration: none;
    font-weight: normal; }
    .post-list > li a:hover {
      color: #0645ad;
      text-decoration: underline; }
  .post-list > li time {
    font-size: 0.875rem;
    color: #aaa;
    display: inline-block; }
  @media screen and (max-width: 600px) {
    .post-list > li time {
      display: block;
      font-size: 0.875rem; } }

.tag-title {
  color: #0645ad; }

/**
 * Posts
 */
.post-header {
  margin-bottom: 2rem; }

.post-title {
  font-size: 2rem;
  letter-spacing: -1px;
  line-height: 1.2;
  margin-bottom: 0.5rem;
  font-weight: bold; }

.post-meta {
  font-size: 0.875rem;
  font-family: Inconsolata, Monaco, Consolas, monospace;
  color: #aaa; }
  .post-meta a, .post-meta a:visited {
    color: #6a6a6a; }
  .post-meta .tags a, .post-meta .tags a:visited {
    background: #eaeaea;
    padding: 0.1rem 0.5rem; }

.post-content {
  margin-bottom: 2rem;
  font-weight: normal; }
  .post-content h1,
  .post-content h2,
  .post-content h3,
  .post-content h4,
  .post-content h5,
  .post-content h6 {
    margin-top: 2rem;
    font-weight: normal; }
  .post-content h1,
  .post-content h2 {
    font-size: 2rem; }
  .post-content h3 {
    font-size: 1.5rem; }
  .post-content h4 {
    font-size: 1.25rem; }
  .post-content h5,
  .post-content h6 {
    font-size: 1rem; }

.copyright {
  margin-top: 2rem;
  font-size: 0.875rem;
  font-family: Inconsolata, Monaco, Consolas, monospace; }
  .copyright p {
    color: #aaa; }
    .copyright p a, .copyright p a:visited {
      color: #6a6a6a; }

/* Solarized Light

For use with Jekyll and Pygments

http://ethanschoonover.com/solarized

SOLARIZED HEX      ROLE
--------- -------- ------------------------------------------
base01    #586e75  body text / default code / primary content
base1     #93a1a1  comments / secondary content
base3     #fdf6e3  background
orange    #cb4b16  constants
red       #dc322f  regex, special keywords
blue      #268bd2  reserved keywords
cyan      #2aa198  strings, numbers
green     #859900  operators, other keywords
*/
.highlight {
  background-color: #fcfcfc;
  color: #586e75;
  /* Comment */
  /* Error */
  /* Generic */
  /* Keyword */
  /* Literal */
  /* Name */
  /* Operator */
  /* Other */
  /* Punctuation */
  /* Comment.Multiline */
  /* Comment.Preproc */
  /* Comment.Single */
  /* Comment.Special */
  /* Generic.Deleted */
  /* Generic.Emph */
  /* Generic.Error */
  /* Generic.Heading */
  /* Generic.Inserted */
  /* Generic.Output */
  /* Generic.Prompt */
  /* Generic.Strong */
  /* Generic.Subheading */
  /* Generic.Traceback */
  /* Keyword.Constant */
  /* Keyword.Declaration */
  /* Keyword.Namespace */
  /* Keyword.Pseudo */
  /* Keyword.Reserved */
  /* Keyword.Type */
  /* Literal.Date */
  /* Literal.Number */
  /* Literal.String */
  /* Name.Attribute */
  /* Name.Builtin */
  /* Name.Class */
  /* Name.Constant */
  /* Name.Decorator */
  /* Name.Entity */
  /* Name.Exception */
  /* Name.Function */
  /* Name.Label */
  /* Name.Namespace */
  /* Name.Other */
  /* Name.Property */
  /* Name.Tag */
  /* Name.Variable */
  /* Operator.Word */
  /* Text.Whitespace */
  /* Literal.Number.Float */
  /* Literal.Number.Hex */
  /* Literal.Number.Integer */
  /* Literal.Number.Oct */
  /* Literal.String.Backtick */
  /* Literal.String.Char */
  /* Literal.String.Doc */
  /* Literal.String.Double */
  /* Literal.String.Escape */
  /* Literal.String.Heredoc */
  /* Literal.String.Interpol */
  /* Literal.String.Other */
  /* Literal.String.Regex */
  /* Literal.String.Single */
  /* Literal.String.Symbol */
  /* Name.Builtin.Pseudo */
  /* Name.Variable.Class */
  /* Name.Variable.Global */
  /* Name.Variable.Instance */
  /* Literal.Number.Integer.Long */ }
  .highlight .c {
    color: #93a1a1; }
  .highlight .err {
    color: #586e75; }
  .highlight .g {
    color: #586e75; }
  .highlight .k {
    color: #859900; }
  .highlight .l {
    color: #586e75; }
  .highlight .n {
    color: #586e75; }
  .highlight .o {
    color: #859900; }
  .highlight .x {
    color: #cb4b16; }
  .highlight .p {
    color: #586e75; }
  .highlight .cm {
    color: #93a1a1; }
  .highlight .cp {
    color: #859900; }
  .highlight .c1 {
    color: #93a1a1; }
  .highlight .cs {
    color: #859900; }
  .highlight .gd {
    color: #2aa198; }
  .highlight .ge {
    color: #586e75;
    font-style: italic; }
  .highlight .gr {
    color: #dc322f; }
  .highlight .gh {
    color: #cb4b16; }
  .highlight .gi {
    color: #859900; }
  .highlight .go {
    color: #586e75; }
  .highlight .gp {
    color: #586e75; }
  .highlight .gs {
    color: #586e75;
    font-weight: bold; }
  .highlight .gu {
    color: #cb4b16; }
  .highlight .gt {
    color: #586e75; }
  .highlight .kc {
    color: #cb4b16; }
  .highlight .kd {
    color: #268bd2; }
  .highlight .kn {
    color: #859900; }
  .highlight .kp {
    color: #859900; }
  .highlight .kr {
    color: #268bd2; }
  .highlight .kt {
    color: #dc322f; }
  .highlight .ld {
    color: #586e75; }
  .highlight .m {
    color: #2aa198; }
  .highlight .s {
    color: #2aa198; }
  .highlight .na {
    color: #586e75; }
  .highlight .nb {
    color: #B58900; }
  .highlight .nc {
    color: #268bd2; }
  .highlight .no {
    color: #cb4b16; }
  .highlight .nd {
    color: #268bd2; }
  .highlight .ni {
    color: #cb4b16; }
  .highlight .ne {
    color: #cb4b16; }
  .highlight .nf {
    color: #268bd2; }
  .highlight .nl {
    color: #586e75; }
  .highlight .nn {
    color: #586e75; }
  .highlight .nx {
    color: #586e75; }
  .highlight .py {
    color: #586e75; }
  .highlight .nt {
    color: #268bd2; }
  .highlight .nv {
    color: #268bd2; }
  .highlight .ow {
    color: #859900; }
  .highlight .w {
    color: #586e75; }
  .highlight .mf {
    color: #2aa198; }
  .highlight .mh {
    color: #2aa198; }
  .highlight .mi {
    color: #2aa198; }
  .highlight .mo {
    color: #2aa198; }
  .highlight .sb {
    color: #93a1a1; }
  .highlight .sc {
    color: #2aa198; }
  .highlight .sd {
    color: #586e75; }
  .highlight .s2 {
    color: #2aa198; }
  .highlight .se {
    color: #cb4b16; }
  .highlight .sh {
    color: #586e75; }
  .highlight .si {
    color: #2aa198; }
  .highlight .sx {
    color: #2aa198; }
  .highlight .sr {
    color: #dc322f; }
  .highlight .s1 {
    color: #2aa198; }
  .highlight .ss {
    color: #2aa198; }
  .highlight .bp {
    color: #268bd2; }
  .highlight .vc {
    color: #268bd2; }
  .highlight .vg {
    color: #268bd2; }
  .highlight .vi {
    color: #268bd2; }
  .highlight .il {
    color: #2aa198; }
