.hll {
  background-color: #ffffcc; }

.c {
  color: #408080;
  font-style: italic; }

/* Comment */
.err {
  border: 1px solid #FF0000; }

/* Error */
.k {
  color: #008000;
  font-weight: bold; }

/* Keyword */
.o {
  color: #666666; }

/* Operator */
.cm {
  color: #408080;
  font-style: italic; }

/* Comment.Multiline */
.cp {
  color: #BC7A00; }

/* Comment.Preproc */
.c1 {
  color: #408080;
  font-style: italic; }

/* Comment.Single */
.cs {
  color: #408080;
  font-style: italic; }

/* Comment.Special */
.gd {
  color: #A00000; }

/* Generic.Deleted */
.ge {
  font-style: italic; }

/* Generic.Emph */
.gr {
  color: #FF0000; }

/* Generic.Error */
.gh {
  color: #000080;
  font-weight: bold; }

/* Generic.Heading */
.gi {
  color: #00A000; }

/* Generic.Inserted */
.go {
  color: #888888; }

/* Generic.Output */
.gp {
  color: #000080;
  font-weight: bold; }

/* Generic.Prompt */
.gs {
  font-weight: bold; }

/* Generic.Strong */
.gu {
  color: #800080;
  font-weight: bold; }

/* Generic.Subheading */
.gt {
  color: #0044DD; }

/* Generic.Traceback */
.kc {
  color: #008000;
  font-weight: bold; }

/* Keyword.Constant */
.kd {
  color: #008000;
  font-weight: bold; }

/* Keyword.Declaration */
.kn {
  color: #008000;
  font-weight: bold; }

/* Keyword.Namespace */
.kp {
  color: #008000; }

/* Keyword.Pseudo */
.kr {
  color: #008000;
  font-weight: bold; }

/* Keyword.Reserved */
.kt {
  color: #B00040; }

/* Keyword.Type */
.m {
  color: #666666; }

/* Literal.Number */
.s {
  color: #BA2121; }

/* Literal.String */
.na {
  color: #7D9029; }

/* Name.Attribute */
.nb {
  color: #008000; }

/* Name.Builtin */
.nc {
  color: #0000FF;
  font-weight: bold; }

/* Name.Class */
.no {
  color: #880000; }

/* Name.Constant */
.nd {
  color: #AA22FF; }

/* Name.Decorator */
.ni {
  color: #999999;
  font-weight: bold; }

/* Name.Entity */
.ne {
  color: #D2413A;
  font-weight: bold; }

/* Name.Exception */
.nf {
  color: #0000FF; }

/* Name.Function */
.nl {
  color: #A0A000; }

/* Name.Label */
.nn {
  color: #0000FF;
  font-weight: bold; }

/* Name.Namespace */
.nt {
  color: #008000;
  font-weight: bold; }

/* Name.Tag */
.nv {
  color: #19177C; }

/* Name.Variable */
.ow {
  color: #AA22FF;
  font-weight: bold; }

/* Operator.Word */
.w {
  color: #bbbbbb; }

/* Text.Whitespace */
.mf {
  color: #666666; }

/* Literal.Number.Float */
.mh {
  color: #666666; }

/* Literal.Number.Hex */
.mi {
  color: #666666; }

/* Literal.Number.Integer */
.mo {
  color: #666666; }

/* Literal.Number.Oct */
.sb {
  color: #BA2121; }

/* Literal.String.Backtick */
.sc {
  color: #BA2121; }

/* Literal.String.Char */
.sd {
  color: #BA2121;
  font-style: italic; }

/* Literal.String.Doc */
.s2 {
  color: #BA2121; }

/* Literal.String.Double */
.se {
  color: #BB6622;
  font-weight: bold; }

/* Literal.String.Escape */
.sh {
  color: #BA2121; }

/* Literal.String.Heredoc */
.si {
  color: #BB6688;
  font-weight: bold; }

/* Literal.String.Interpol */
.sx {
  color: #008000; }

/* Literal.String.Other */
.sr {
  color: #BB6688; }

/* Literal.String.Regex */
.s1 {
  color: #BA2121; }

/* Literal.String.Single */
.ss {
  color: #19177C; }

/* Literal.String.Symbol */
.bp {
  color: #008000; }

/* Name.Builtin.Pseudo */
.vc {
  color: #19177C; }

/* Name.Variable.Class */
.vg {
  color: #19177C; }

/* Name.Variable.Global */
.vi {
  color: #19177C; }

/* Name.Variable.Instance */
.il {
  color: #666666; }

/* Literal.Number.Integer.Long */
/* Import the font file with the icons in it */
@font-face {
  font-family: "icons";
  src: url("../fonts/icons.eot");
  src: url("../fonts/icons.eot?#iefix") format("embedded-opentype"), url("../fonts/icons.woff") format("woff"), url("../fonts/icons.ttf") format("truetype"), url("../fonts/icons.svg#icons") format("svg");
  font-weight: normal;
  font-style: normal; }

/* Apply these base styles to all icons */
[class^="icon-"]:before, [class*=" icon-"]:before {
  font-family: "icons", "Open Sans", sans-serif;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-decoration: none !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

/* Each icon is created by inserting the correct character into the
   content of the :before pseudo element. Like a boss. */
.icon-ghost:before {
  content: "\e000"; }

.icon-feed:before {
  content: "\e001"; }

.icon-twitter:before {
  content: "\e002";
  font-size: 1.1em; }

.icon-google-plus:before {
  content: "\e003"; }

.icon-facebook:before {
  content: "\e004"; }

.icon-arrow-left:before {
  content: "\e005"; }

.icon-stats:before {
  content: "\e006"; }

.icon-location:before {
  content: "\e007";
  margin-left: -3px;
  /* Tracking fix */ }

.icon-link:before {
  content: "\e008"; }

body {
  margin: 0;
  padding: 0;
  background-color: white;
  color: #4d4d4d;
  font-family: 'PT Sans', sans-serif;
  font-size: 1.125em; }

a {
  color: #333332;
  text-decoration: none; }

hr {
  color: #eeeeee;
  background-color: #eeeeee;
  height: 1px;
  border: none; }

img {
  max-width: 100%; }

main article {
  max-width: 640px;
  padding: 40px; }
  main article #article_title h2 {
    font-size: 1.8em; }
  main article #article_title h1 {
    margin: 0 0 1em 0;
    font-size: 2.2em;
    color: #111; }
  main article #article_title a {
    transition: all 0.1s linear;
    border-bottom: 3px solid transparent; }
    main article #article_title a:hover {
      color: #0e94ec;
      border-bottom: 3px solid #0e94ec; }
  main article #article_text {
    line-height: 1.375em; }
    main article #article_text a {
      text-decoration: underline; }
    main article #article_text p:hover a, main article #article_text .section:hover a {
      color: #427fed; }
    main article #article_text code {
      margin: 2px;
      padding: 0;
      color: #333332;
      font-size: 0.75em;
      font-family: 'PT Mono', monospace;
      background: #eeeeee; }
    main article #article_text pre {
      margin: 10px 2px 10px 2px;
      padding: 10px;
      color: #333332;
      border-left: 3px solid #0e94ec;
      font-size: 0.75em;
      font-family: 'PT Mono', monospace;
      background: #eeeeee;
      line-height: 1.125em;
      overflow-x: auto; }
    main article #article_text blockquote {
      margin: 22px 2px 22px 2px;
      padding-left: 40px;
      color: #999999;
      font-style: italic; }
    main article #article_text .footnote-reference {
      vertical-align: super;
      font-size: 12px;
      text-decoration: none;
      line-height: 1; }
    main article #article_text .footnote {
      font-size: smaller; }
      main article #article_text .footnote .fn-backref {
        margin-right: 5px;
        text-decoration: none; }
    main article #article_text iframe#twitter-widget-0 {
      width: 89%;
      margin: 0 auto !important; }
  main article #article_meta {
    font-size: 0.625em;
    color: #999999; }
main footer {
  padding: 40px; }
  main footer a.button_accent {
    padding: 10px;
    border: 2px solid #0e94ec;
    border-radius: 20px;
    -moz-border-radius: 20px;
    -webkit-border-radius: 20px;
    text-transform: uppercase;
    color: #0e94ec;
    font-size: 1.125em; }
    main footer a.button_accent:hover, main footer a.button_accent:active {
      color: #ffffff;
      background-color: #0e94ec; }

@media screen and (min-width: 1024px) {
  aside {
    width: 25%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    border-right: #eeeeee 1px solid; }
    aside h2 {
      margin: 10px 0 0 0; }
    aside div#user_meta {
      max-width: 192px;
      text-align: right; }
      aside div#user_meta ul li {
        display: block; }
  main {
    max-width: 700px;
    margin: 0 auto; }
    main article {
      margin: 0 auto;
      max-width: 640px; } }

.article .title h1 {
  margin: 0 0 0 0 !important; }
.article .title time {
  font-size: 0.5rem; }

.main-nav {
  position: relative;
  padding: 35px 40px;
  margin: 0 0 30px 0; }
  .main-nav a {
    display: inline-block;
    height: 34px;
    padding: 0 20px;
    border: transparent 1px solid;
    color: #9EABB3;
    text-align: center;
    font-size: 12px;
    text-transform: uppercase;
    line-height: 35px;
    border-radius: 3px;
    transition: all ease 0.3s; }
    .main-nav a:hover {
      border-color: #bfc8cd;
      color: #9EABB3; }
  .main-nav .subscribe-button {
    float: right; }
    .main-nav .subscribe-button:before {
      font-size: 9px;
      margin-right: 6px; }

.blog-list .article_title h2 {
  margin: 0 0 0.4em 0; }
.blog-list .article_summary .read-more {
  text-decoration: none !important; }

.dr-menu {
  display: none;
  width: 100%;
  max-width: 400px;
  min-width: 300px;
  position: fixed;
  font-size: 1.3em;
  line-height: 2.5;
  font-weight: 400;
  color: #fff;
  padding-top: 2em; }
  .dr-menu ul {
    padding: 0;
    margin: 0 3em 0 0;
    list-style: none;
    opacity: 0;
    position: relative;
    z-index: 0;
    pointer-events: none;
    transition: opacity 0s linear 205ms; }
    .dr-menu ul li {
      display: block;
      margin: 0 0 5px 0;
      opacity: 0;
      transition: opacity 0.3s ease; }
      .dr-menu ul li a {
        display: inline-block;
        padding: 0 20px;
        color: #111; }
        .dr-menu ul li a:hover {
          color: #5e5e5e; }
  .dr-menu > div {
    cursor: pointer;
    position: absolute;
    width: 100%;
    z-index: 100; }
    .dr-menu > div .dr-icon {
      top: 0;
      left: 0;
      position: absolute;
      font-size: 150%;
      line-height: 1.6;
      padding: 0 10px;
      transition: all 0.4s ease; }
    .dr-menu > div .dr-icon:after {
      content: "\e008";
      position: absolute;
      font-size: 50%;
      line-height: 3.25;
      left: -10%;
      opacity: 0; }
    .dr-menu > div .dr-label {
      padding-left: 3em;
      position: relative;
      display: block;
      color: #111;
      font-size: 0.9em;
      font-weight: 700;
      letter-spacing: 1px;
      text-transform: uppercase;
      line-height: 2.75;
      transition: all 0.2s ease-in; }
  .dr-menu.dr-menu-open ul {
    opacity: 1;
    z-index: 200;
    pointer-events: auto;
    transition: opacity 0s linear 0s; }
    .dr-menu.dr-menu-open ul li {
      opacity: 1; }
  .dr-menu.dr-menu-open > div .dr-icon {
    color: #60a773;
    left: 100%;
    transform: translateX(-100%); }
  .dr-menu.dr-menu-open > div .dr-icon:after {
    opacity: 1; }
  .dr-menu.dr-menu-open > div .dr-label {
    transform: translateY(-90%); }

footer .links ul {
  list-style: none;
  padding: 0; }
  footer .links ul li {
    display: inline-block; }

#ending_message {
  border-top: #eeeeee 1px solid;
  padding: 0 40px 0 40px;
  color: #999999;
  font-size: 0.675em;
  clear: both; }
  #ending_message img {
    vertical-align: top; }
  #ending_message .copyright {
    display: block;
    width: 45%;
    float: left;
    margin: 10px 0; }
  #ending_message .builtby {
    display: block;
    width: 45%;
    float: right;
    text-align: right;
    margin: 10px 0; }

.site_info {
  position: fixed;
  top: 10px;
  left: 10px; }
  .site_info .logo {
    max-width: 50px;
    display: inline-block; }
  .site_info .info {
    opacity: 0;
    display: inline-block;
    padding-left: 5px;
    vertical-align: top; }
    .site_info .info h1, .site_info .info h2, .site_info .info p {
      margin: 0; }
    .site_info .info h2 {
      font-size: 15px; }
    .site_info .info p {
      font-size: 10px; }
  .site_info:hover .info {
    opacity: 1; }
