@charset "UTF-8";
body {
  font-family: 'ff-tisa-web-pro', 'Georgia', 'Times New Roman', serif;
  color: #404040;
  font-size: 1.5em;
  line-height: 1.5em;
  /* Small devices (tablets, 768px and up) */ }
  @media (min-width: 768px) {
    body {
      font-size: 2em;
      line-height: 1.5em; } }

/* Sets up ligatures for fonts. See http://utility-opentype.kennethormandy.com for more info. */
body {
  /* Gracefully degrade to `font-feature-settings` to
  * avoid disrupting the OpenType feature cascade
  * when possible. */
  /* IE doesn’t support $supports; explicitly use
  * the prefixed version. */
  -ms-font-feature-settings: "liga";
  /* Best case scenario, just use `font-variant-*`. */
  font-variant-ligatures: common-ligatures; }
  @supports not (font-variant-ligatures: common-ligatures) {
    body {
      font-feature-settings: "liga"; } }
  body code, body pre {
    -ms-font-feature-settings: "liga" 0;
    font-variant-ligatures: no-common-ligatures; }
    @supports not (font-variant-ligatures: common-ligatures) {
      body code, body pre {
        font-feature-settings: "liga" 0; } }

p {
  margin: 1em 0;
  /* Small devices (tablets, 768px and up) */ }
  @media (min-width: 768px) {
    p {
      margin: 1.5em 0; } }
  p a {
    text-decoration: none;
    color: #398CCC; }
    p a:hover {
      text-decoration: underline; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'futura-pt', 'Futura', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-weight: 700; }

a {
  color: #404040; }
  a:hover, a:focus {
    color: #398CCC; }

a img:hover, a img:focus {
  cursor: zoom-in; }

blockquote {
  color: gray;
  font-style: italic; }

hr.small {
  max-width: 100px;
  margin: 15px auto;
  border-width: 3px;
  border-color: white; }

.navbar-custom {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 3;
  font-family: 'futura-pt', 'Futura', 'Helvetica Neue', Helvetica, Arial, sans-serif; }
  .navbar-custom .navbar-brand {
    font-weight: 700; }
  .navbar-custom .nav li a {
    text-transform: uppercase;
    font-size: 0.75em;
    font-weight: 700;
    letter-spacing: 1px; }
  @media only screen and (min-width: 768px) {
    .navbar-custom {
      background: transparent;
      border-bottom: 1px solid transparent; }
      .navbar-custom .navbar-brand {
        color: white;
        padding: 1.25em; }
        .navbar-custom .navbar-brand:hover, .navbar-custom .navbar-brand:focus {
          color: fade(white, 80%); }
      .navbar-custom .nav li a {
        color: white;
        padding: 1.25em; }
        .navbar-custom .nav li a:hover, .navbar-custom .nav li a:focus {
          color: fade(white, 80%); } }
  @media only screen and (min-width: 1170px) {
    .navbar-custom {
      -webkit-transition: background-color 0.3s;
      -moz-transition: background-color 0.3s;
      transition: background-color 0.3s;
      /* Force Hardware Acceleration in WebKit */
      -webkit-transform: translate3d(0, 0, 0);
      -moz-transform: translate3d(0, 0, 0);
      -ms-transform: translate3d(0, 0, 0);
      -o-transform: translate3d(0, 0, 0);
      transform: translate3d(0, 0, 0);
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden; }
      .navbar-custom.is-fixed {
        /* when the user scrolls down, we hide the header right above the viewport */
        position: fixed;
        top: -61px;
        background-color: white;
        border-bottom: 1px solid #f2f2f2;
        -webkit-transition: -webkit-transform 0.3s;
        -moz-transition: -moz-transform 0.3s;
        transition: transform 0.3s; }
        .navbar-custom.is-fixed .navbar-brand {
          color: #404040; }
          .navbar-custom.is-fixed .navbar-brand:hover, .navbar-custom.is-fixed .navbar-brand:focus {
            color: #398CCC; }
        .navbar-custom.is-fixed .nav li a {
          color: #404040; }
          .navbar-custom.is-fixed .nav li a:hover, .navbar-custom.is-fixed .nav li a:focus {
            color: #398CCC; }
      .navbar-custom.is-visible {
        /* if the user changes the scrolling direction, we show the header */
        -webkit-transform: translate3d(0, 100%, 0);
        -moz-transform: translate3d(0, 100%, 0);
        -ms-transform: translate3d(0, 100%, 0);
        -o-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0); } }

.intro-header {
  background: no-repeat center center;
  background-color: gray;
  background-attachment: scroll;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  background-size: cover;
  -o-background-size: cover; }
  .intro-header .site-heading,
  .intro-header .post-heading,
  .intro-header .page-heading {
    padding: 6em 0 3em;
    color: white; }
    @media only screen and (min-width: 768px) {
      .intro-header .site-heading,
      .intro-header .post-heading,
      .intro-header .page-heading {
        padding: 7em 0; } }
  .intro-header .site-heading,
  .intro-header .page-heading {
    text-align: center; }
    .intro-header .site-heading h1,
    .intro-header .page-heading h1 {
      margin-top: 0;
      font-size: 2.5em; }
    .intro-header .site-heading .subheading,
    .intro-header .page-heading .subheading {
      font-size: 1em;
      line-height: 1.1;
      display: block;
      font-family: 'futura-pt', 'Futura', 'Helvetica Neue', Helvetica, Arial, sans-serif;
      font-weight: 400;
      margin: 10px 0 0; }
    @media only screen and (min-width: 768px) {
      .intro-header .site-heading h1,
      .intro-header .page-heading h1 {
        font-size: 4em; } }
  .intro-header .post-heading h1 {
    font-size: 2em; }
  .intro-header .post-heading .subheading,
  .intro-header .post-heading .meta {
    line-height: 1.1;
    display: block; }
  .intro-header .post-heading .subheading {
    font-family: 'futura-pt', 'Futura', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: 1.5em;
    margin: 0.625em 0 2em; }
  .intro-header .post-heading .meta {
    font-family: 'ff-tisa-web-pro', 'Georgia', 'Times New Roman', serif;
    font-style: italic;
    font-size: 1.25em; }
    .intro-header .post-heading .meta a {
      color: white; }
  @media only screen and (min-width: 768px) {
    .intro-header .post-heading h1 {
      font-size: 2.5em; }
    .intro-header .post-heading .subheading {
      font-size: 1.875em; } }

.post-preview > a {
  color: #404040; }
  .post-preview > a:hover, .post-preview > a:focus {
    text-decoration: none;
    color: #398CCC; }
  .post-preview > a > .post-title {
    font-size: 1.875em;
    margin-bottom: 0.625em; }
  .post-preview > a > .post-subtitle {
    margin: 0;
    margin-bottom: 0.625em; }
.post-preview > .post-meta {
  color: gray;
  font-size: 1em;
  font-style: italic;
  margin: 0; }
@media only screen and (min-width: 768px) {
  .post-preview > a > .post-title {
    font-size: 2em; } }

.section-heading {
  font-size: 2em;
  margin-top: 3em;
  font-weight: 700; }

.caption {
  text-align: center;
  font-size: 1em;
  padding: 0.625em;
  font-style: italic;
  margin: 0;
  display: block;
  border-bottom-right-radius: 5px;
  border-bottom-left-radius: 5px; }

footer {
  padding: 3em 0 3em; }
  footer .list-inline {
    margin: 0;
    padding: 0; }
  footer .copyright {
    font-size: 0.75em;
    text-align: center;
    margin-bottom: 0; }

.btn {
  font-family: 'futura-pt', 'Futura', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 1em;
  letter-spacing: 1px;
  border-radius: 0;
  padding: 1em 1.5em; }

.btn-lg {
  font-size: 1em;
  padding: 1.5em 2em; }

.btn-default:hover, .btn-default:focus {
  background-color: #398CCC;
  border: 1px solid #398CCC;
  color: white; }

.pager {
  margin: 0; }
  .pager li > a,
  .pager li > span {
    font-family: 'futura-pt', 'Futura', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 0.75em;
    letter-spacing: 1px;
    padding: 1em 1.5em;
    background-color: white;
    border-radius: 0; }
  .pager li > a:hover,
  .pager li > a:focus {
    color: white;
    background-color: #398CCC;
    border: 1px solid #398CCC; }
  .pager .disabled > a,
  .pager .disabled > a:hover,
  .pager .disabled > a:focus,
  .pager .disabled > span {
    color: gray;
    background-color: #404040;
    cursor: not-allowed; }

::-moz-selection {
  color: white;
  text-shadow: none;
  background: #398CCC; }

::selection {
  color: white;
  text-shadow: none;
  background: #398CCC; }

img::selection {
  color: white;
  background: transparent; }

img::-moz-selection {
  color: white;
  background: transparent; }

body {
  webkit-tap-highlight-color: #398CCC; }
.post-heading h1 {
  margin-top: 0;
  /* Small devices (tablets, 768px and up) */ }
  @media (min-width: 768px) {
    .post-heading h1 {
      margin-top: 20px; } }

/* Centres Instagram embeds. */
iframe.instagram-media {
  margin: 10px auto !important; }

/* Centres tweet embeds in Chrome. */
twitterwidget {
  margin: auto; }

/* Makes the subtitle of non-post headers bigger than the template. */
.intro-header .site-heading .subheading {
  font-size: 1.5em; }

/* Makes the subtitle of post (its date) headers bigger than the template. */
.intro-header .post-heading .subheading {
  margin: 0;
  font-size: 1.5em; }
.intro-header .post-heading hr {
  margin: 15px 0; }

/* Override the default text-decoration from the template, for the typo submission links. */
article .meta a {
  text-decoration: underline; }

/* Hover state on menu links should be bluuuuue */
.navbar-custom .nav li a:hover, .navbar-custom .nav li a:focus {
  color: #398CCC; }

.navbar-custom .navbar-brand:hover, .navbar-custom .navbar-brand:focus {
  color: #398CCC; }

/* GitHub logo is slightly too low. */
.fa-github::before {
  position: relative;
  top: -1px; }

/* 'Read more' links on the main blog page. */
p.readmore {
  font-style: italic; }
  p.readmore a {
    color: #404040; }
    p.readmore a:hover {
      color: #398CCC; }

/* Make multi-parapgrah list items have a regular bottom margin. */
li p:last-child {
  margin-bottom: 0; }

/* Things specific to the landing page */
.container .recent-blog-posts ol {
  padding-left: 0; }
.container .recent-blog-posts li {
  list-style-image: none;
  list-style-position: outside;
  list-style-type: none;
  padding-top: 0;
  padding-bottom: 0.25em; }
.container .recent-blog-posts li.older-posts {
  font-style: italic; }

/* Featured blog posts */
.featured-blog-posts {
  /* Small devices (tablets, 768px and up) */ }
  @media (min-width: 768px) {
    .featured-blog-posts {
      padding-top: 1em; } }
  .featured-blog-posts a {
    color: white; }
    .featured-blog-posts a:hover {
      text-decoration: none; }
  .featured-blog-posts .embedded {
    margin-bottom: 1em;
    /* Small devices (tablets, 768px and up) */ }
    @media (min-width: 768px) {
      .featured-blog-posts .embedded {
        margin-bottom: 1.5em; } }
  .featured-blog-posts .preview {
    -webkit-background-size: cover;
    -moz-background-size: cover;
    background-size: cover;
    -o-background-size: cover;
    min-height: 6.5em;
    /* medium devices (desktops, 992px and up) */ }
    @media (min-width: 992px) {
      .featured-blog-posts .preview {
        min-height: 6.5em; } }
    .featured-blog-posts .preview h2 {
      padding: 0.5em;
      margin: 0; }
  .featured-blog-posts h2 {
    padding-bottom: 0.25em; }

/* Search. */
.row.seach {
  margin-top: 1em;
  /* Small devices (tablets, 768px and up) */ }
  @media (min-width: 768px) {
    .row.seach {
      margin-top: 2em; } }

.search-results {
  /* Gives us some nice spacing. */
  margin-top: 1.25em;
  margin-bottom: 1.25em;
  /* Links are article titles, we only underline on hover. */
  /* An individual search result. */ }
  .search-results a {
    color: #398CCC;
    text-decoration: none; }
    .search-results a:hover {
      text-decoration: underline; }
  .search-results .result {
    padding-left: 0;
    line-height: 2em;
    /* Make the date look faded and cool. */ }
    .search-results .result .post-meta {
      color: gray;
      display: inline; }

/* Need to give links the same treatment in lists as we do in paragraphs. */
article li a {
  color: #398CCC; }

/* Special styling for post previews on main blog page. */
.post-preview p {
  margin: 1.25em 0; }
.post-preview h2 {
  margin: 0; }

/* Make code look nice. */
code, pre {
  color: #398CCC;
  background-color: #eee;
  font-size: 0.75em; }

.nav .text-link {
  /* Small devices (tablets, 768px and up) */ }
  @media (min-width: 768px) {
    .nav .text-link {
      display: none; } }
.nav .icon-link {
  font-size: 1em;
  display: none;
  /* Small devices (tablets, 768px and up) */ }
  @media (min-width: 768px) {
    .nav .icon-link {
      display: inherit; } }

.container.archive ol {
  padding-left: 0;
  line-height: 2em; }
.container.archive li {
  list-style-image: none;
  list-style-position: outside;
  list-style-type: none; }
  .container.archive li a {
    text-decoration: none;
    color: #398CCC; }
    .container.archive li a:hover {
      text-decoration: underline; }
.container.archive .post-meta {
  color: gray;
  display: inline; }

.header_image_link_container {
  position: relative; }
  .header_image_link_container a {
    text-decoration: none; }
    .header_image_link_container a i {
      position: absolute;
      bottom: 0;
      right: 0;
      color: rgba(255, 255, 255, 0.5);
      padding-right: 1.25em;
      padding-bottom: 1.25em; }

.container .pager li a {
  text-decoration: none;
  overflow: hidden;
  width: 100%;
  /* Small devices (tablets, 768px and up) */ }
  @media (min-width: 768px) {
    .container .pager li a {
      width: inherit; } }
  .container .pager li a div {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis; }

.container .article_pager li a {
  margin-top: 1em;
  /* Small devices (tablets, 768px and up) */ }
  @media (min-width: 768px) {
    .container .article_pager li a {
      margin-top: 0;
      width: 45%; } }

header {
  -webkit-box-shadow: rgba(0, 0, 0, 0.1) 0px -50px 50px 0px inset;
  position: relative; }

.header-dimmer {
  background-color: rgba(0, 0, 0, 0.2);
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%; }

#page_footer {
  margin-top: 1.25em; }

.container li {
  padding-top: 0.5em;
  padding-bottom: 0.5em; }

.intro-header {
  margin-bottom: 0; }

@media only screen and (max-width: 768px) {
  .intro-header .site-heading h1,
  .intro-header .page-heading h1 {
    font-size: 2.5em; }

  .intro-header .site-heading .subheading, .intro-header .page-heading .subheading {
    font-size: 1.25em; } }
.meta {
  color: #808080;
  font-size: 0.75em;
  font-style: italic;
  margin-top: 0; }

img {
  margin-left: auto;
  margin-right: auto; }

iframe.twitter-tweet {
  margin-left: auto !important;
  margin-right: auto !important; }

/* Adds top/bottom spacing to embedded videos */
.embed-responsive {
  margin: 1em 0; }
  @media only screen and (min-width: 768px) {
    .embed-responsive {
      margin: 2em 0; } }

/* This is how the blockquote is customized */
blockquote {
  padding: 0 1em;
  padding-left: 2em;
  margin: 2em 0;
  font-style: none;
  /* Makes bold text in blockquotes really pop */ }
  blockquote strong, blockquote b {
    color: #404040; }
  @media only screen and (min-width: 768px) {
    blockquote {
      padding: 0 2em;
      padding-left: 3em; }
      blockquote p {
        font-size: 1.5em; } }

blockquote > p:first-child {
  margin-top: 0; }

.image-bg-fluid-height,
.image-bg-fixed-height {
  text-align: center;
  background: no-repeat center center scroll;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  background-size: cover;
  -o-background-size: cover; }

.image-bg-fixed-height {
  background-color: #808080;
  height: 250px; }

@media only screen and (min-width: 768px) {
  .image-bg-fixed-height {
    height: 450px; } }
.container img {
  display: block;
  width: 100% \9;
  max-width: 100%;
  height: auto; }

/* Let's make those little links a little prettier. */
.header-link {
  content: "#";
  color: rgba(189, 189, 189, 0.25);
  font-weight: 400; }
  .header-link:hover, .header-link:focus {
    text-decoration: none;
    color: #398CCC; }

.container {
  /* On timeline posts, we want the link to the right of the header. */ }
  .container .header-link {
    position: absolute;
    left: -0.25em;
    /* The links don't fit on spall screens, so let's high them. */ }
    @media only screen and (max-width: 768px) {
      .container .header-link {
        display: none; } }
  .container .timeline-content .header-link {
    position: relative;
    left: 0.3em;
    display: inline; }

#book-link {
  background-color: #eee;
  width: 100%;
  padding: 1.25em;
  margin-bottom: 0.625em;
  clear: both; }
  @media only screen and (min-width: 768px) {
    #book-link {
      padding: 2.5em; } }
  #book-link img {
    width: 40%;
    padding-bottom: 1.25em; }
    @media only screen and (min-width: 768px) {
      #book-link img {
        width: 20%;
        padding-bottom: 0;
        padding-right: 1.25em;
        float: left; } }
  #book-link h3 {
    font-size: 1.25em;
    margin-top: 0;
    margin-bottom: 0.625em; }
  #book-link p {
    margin: 0; }
    #book-link p:before, #book-link p:after {
      content: " ";
      display: table; }
    #book-link p:after {
      clear: both; }
  #book-link a {
    text-decoration: none; }
    #book-link a:hover, #book-link a:focus {
      text-decoration: underline;
      color: #398CCC; }
/* Generated with https://icomoon.io/ */


@font-face {
  font-family: 'icomoon';
  src:url('/fonts/icomoon.eot?-ar0ypv');
  src:url('/fonts/icomoon.eot?#iefix-ar0ypv') format('embedded-opentype'),
    url('/fonts/icomoon.ttf?-ar0ypv') format('truetype'),
    url('/fonts/icomoon.woff?-ar0ypv') format('woff'),
    url('/fonts/icomoon.svg?-ar0ypv#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
}

[class^="icon-"], [class*=" icon-"] {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-instagram:before {
  content: "\e601";
}
.icon-site-logo:before {
  content: "\e602";
}
.icon-exposure:before {
  content: "\e603";
}
.icon-px:before {
  content: "\e600";
}
/*!* Font Awesome 4.1.0 by @davegandy - http://fontawesome.io - @fontawesome * License - http://fontawesome.io/license(Font:SIL OFL 1.1,CSS:MIT License) */
 @font-face{font-family:'FontAwesome';src:url('https://maxcdn.bootstrapcdn.com/font-awesome/4.1.0/fonts/fontawesome-webfont.eot?v=4.1.0');src:url('https://maxcdn.bootstrapcdn.com/font-awesome/4.1.0/fonts/fontawesome-webfont.eot?#iefix&v=4.1.0') format('embedded-opentype'),url('https://maxcdn.bootstrapcdn.com/font-awesome/4.1.0/fonts/fontawesome-webfont.woff?v=4.1.0') format('woff'),url('https://maxcdn.bootstrapcdn.com/font-awesome/4.1.0/fonts/fontawesome-webfont.ttf?v=4.1.0') format('truetype'),url('https://maxcdn.bootstrapcdn.com/font-awesome/4.1.0/fonts/fontawesome-webfont.svg?v=4.1.0#fontawesomeregular') format('svg');font-weight:normal;font-style:normal;}.fa{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%;}.fa-2x{font-size:2em;}.fa-3x{font-size:3em;}.fa-4x{font-size:4em;}.fa-5x{font-size:5em;}.fa-fw{width:1.28571429em;text-align:center;}.fa-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none;}.fa-ul>li{position:relative;}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center;}.fa-li.fa-lg{left:-1.85714286em;}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em;}.pull-right{float:right;}.pull-left{float:left;}.fa.pull-left{margin-right:.3em;}.fa.pull-right{margin-left:.3em;}.fa-spin{-webkit-animation:spin 2s infinite linear;-moz-animation:spin 2s infinite linear;-o-animation:spin 2s infinite linear;animation:spin 2s infinite linear;}@-moz-keyframes spin{0%{-moz-transform:rotate(0deg);}100%{-moz-transform:rotate(359deg);}}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg);}100%{-webkit-transform:rotate(359deg);}}@-o-keyframes spin{0%{-o-transform:rotate(0deg);}100%{-o-transform:rotate(359deg);}}@keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg);}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg);}}.fa-rotate-90{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg);}.fa-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg);}.fa-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-moz-transform:rotate(270deg);-ms-transform:rotate(270deg);-o-transform:rotate(270deg);transform:rotate(270deg);}.fa-flip-horizontal{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=0,mirror=1);-webkit-transform:scale(-1,1);-moz-transform:scale(-1,1);-ms-transform:scale(-1,1);-o-transform:scale(-1,1);transform:scale(-1,1);}.fa-flip-vertical{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2,mirror=1);-webkit-transform:scale(1,-1);-moz-transform:scale(1,-1);-ms-transform:scale(1,-1);-o-transform:scale(1,-1);transform:scale(1,-1);}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle;}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center;}.fa-stack-1x{line-height:inherit;}.fa-stack-2x{font-size:2em;}.fa-inverse{color:#fff;}.fa-glass:before{content:"\f000";}.fa-music:before{content:"\f001";}.fa-search:before{content:"\f002";}.fa-envelope-o:before{content:"\f003";}.fa-heart:before{content:"\f004";}.fa-star:before{content:"\f005";}.fa-star-o:before{content:"\f006";}.fa-user:before{content:"\f007";}.fa-film:before{content:"\f008";}.fa-th-large:before{content:"\f009";}.fa-th:before{content:"\f00a";}.fa-th-list:before{content:"\f00b";}.fa-check:before{content:"\f00c";}.fa-times:before{content:"\f00d";}.fa-search-plus:before{content:"\f00e";}.fa-search-minus:before{content:"\f010";}.fa-power-off:before{content:"\f011";}.fa-signal:before{content:"\f012";}.fa-gear:before,.fa-cog:before{content:"\f013";}.fa-trash-o:before{content:"\f014";}.fa-home:before{content:"\f015";}.fa-file-o:before{content:"\f016";}.fa-clock-o:before{content:"\f017";}.fa-road:before{content:"\f018";}.fa-download:before{content:"\f019";}.fa-arrow-circle-o-down:before{content:"\f01a";}.fa-arrow-circle-o-up:before{content:"\f01b";}.fa-inbox:before{content:"\f01c";}.fa-play-circle-o:before{content:"\f01d";}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e";}.fa-refresh:before{content:"\f021";}.fa-list-alt:before{content:"\f022";}.fa-lock:before{content:"\f023";}.fa-flag:before{content:"\f024";}.fa-headphones:before{content:"\f025";}.fa-volume-off:before{content:"\f026";}.fa-volume-down:before{content:"\f027";}.fa-volume-up:before{content:"\f028";}.fa-qrcode:before{content:"\f029";}.fa-barcode:before{content:"\f02a";}.fa-tag:before{content:"\f02b";}.fa-tags:before{content:"\f02c";}.fa-book:before{content:"\f02d";}.fa-bookmark:before{content:"\f02e";}.fa-print:before{content:"\f02f";}.fa-camera:before{content:"\f030";}.fa-font:before{content:"\f031";}.fa-bold:before{content:"\f032";}.fa-italic:before{content:"\f033";}.fa-text-height:before{content:"\f034";}.fa-text-width:before{content:"\f035";}.fa-align-left:before{content:"\f036";}.fa-align-center:before{content:"\f037";}.fa-align-right:before{content:"\f038";}.fa-align-justify:before{content:"\f039";}.fa-list:before{content:"\f03a";}.fa-dedent:before,.fa-outdent:before{content:"\f03b";}.fa-indent:before{content:"\f03c";}.fa-video-camera:before{content:"\f03d";}.fa-photo:before,.fa-image:before,.fa-picture-o:before{content:"\f03e";}.fa-pencil:before{content:"\f040";}.fa-map-marker:before{content:"\f041";}.fa-adjust:before{content:"\f042";}.fa-tint:before{content:"\f043";}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044";}.fa-share-square-o:before{content:"\f045";}.fa-check-square-o:before{content:"\f046";}.fa-arrows:before{content:"\f047";}.fa-step-backward:before{content:"\f048";}.fa-fast-backward:before{content:"\f049";}.fa-backward:before{content:"\f04a";}.fa-play:before{content:"\f04b";}.fa-pause:before{content:"\f04c";}.fa-stop:before{content:"\f04d";}.fa-forward:before{content:"\f04e";}.fa-fast-forward:before{content:"\f050";}.fa-step-forward:before{content:"\f051";}.fa-eject:before{content:"\f052";}.fa-chevron-left:before{content:"\f053";}.fa-chevron-right:before{content:"\f054";}.fa-plus-circle:before{content:"\f055";}.fa-minus-circle:before{content:"\f056";}.fa-times-circle:before{content:"\f057";}.fa-check-circle:before{content:"\f058";}.fa-question-circle:before{content:"\f059";}.fa-info-circle:before{content:"\f05a";}.fa-crosshairs:before{content:"\f05b";}.fa-times-circle-o:before{content:"\f05c";}.fa-check-circle-o:before{content:"\f05d";}.fa-ban:before{content:"\f05e";}.fa-arrow-left:before{content:"\f060";}.fa-arrow-right:before{content:"\f061";}.fa-arrow-up:before{content:"\f062";}.fa-arrow-down:before{content:"\f063";}.fa-mail-forward:before,.fa-share:before{content:"\f064";}.fa-expand:before{content:"\f065";}.fa-compress:before{content:"\f066";}.fa-plus:before{content:"\f067";}.fa-minus:before{content:"\f068";}.fa-asterisk:before{content:"\f069";}.fa-exclamation-circle:before{content:"\f06a";}.fa-gift:before{content:"\f06b";}.fa-leaf:before{content:"\f06c";}.fa-fire:before{content:"\f06d";}.fa-eye:before{content:"\f06e";}.fa-eye-slash:before{content:"\f070";}.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071";}.fa-plane:before{content:"\f072";}.fa-calendar:before{content:"\f073";}.fa-random:before{content:"\f074";}.fa-comment:before{content:"\f075";}.fa-magnet:before{content:"\f076";}.fa-chevron-up:before{content:"\f077";}.fa-chevron-down:before{content:"\f078";}.fa-retweet:before{content:"\f079";}.fa-shopping-cart:before{content:"\f07a";}.fa-folder:before{content:"\f07b";}.fa-folder-open:before{content:"\f07c";}.fa-arrows-v:before{content:"\f07d";}.fa-arrows-h:before{content:"\f07e";}.fa-bar-chart-o:before{content:"\f080";}.fa-twitter-square:before{content:"\f081";}.fa-facebook-square:before{content:"\f082";}.fa-camera-retro:before{content:"\f083";}.fa-key:before{content:"\f084";}.fa-gears:before,.fa-cogs:before{content:"\f085";}.fa-comments:before{content:"\f086";}.fa-thumbs-o-up:before{content:"\f087";}.fa-thumbs-o-down:before{content:"\f088";}.fa-star-half:before{content:"\f089";}.fa-heart-o:before{content:"\f08a";}.fa-sign-out:before{content:"\f08b";}.fa-linkedin-square:before{content:"\f08c";}.fa-thumb-tack:before{content:"\f08d";}.fa-external-link:before{content:"\f08e";}.fa-sign-in:before{content:"\f090";}.fa-trophy:before{content:"\f091";}.fa-github-square:before{content:"\f092";}.fa-upload:before{content:"\f093";}.fa-lemon-o:before{content:"\f094";}.fa-phone:before{content:"\f095";}.fa-square-o:before{content:"\f096";}.fa-bookmark-o:before{content:"\f097";}.fa-phone-square:before{content:"\f098";}.fa-twitter:before{content:"\f099";}.fa-facebook:before{content:"\f09a";}.fa-github:before{content:"\f09b";}.fa-unlock:before{content:"\f09c";}.fa-credit-card:before{content:"\f09d";}.fa-rss:before{content:"\f09e";}.fa-hdd-o:before{content:"\f0a0";}.fa-bullhorn:before{content:"\f0a1";}.fa-bell:before{content:"\f0f3";}.fa-certificate:before{content:"\f0a3";}.fa-hand-o-right:before{content:"\f0a4";}.fa-hand-o-left:before{content:"\f0a5";}.fa-hand-o-up:before{content:"\f0a6";}.fa-hand-o-down:before{content:"\f0a7";}.fa-arrow-circle-left:before{content:"\f0a8";}.fa-arrow-circle-right:before{content:"\f0a9";}.fa-arrow-circle-up:before{content:"\f0aa";}.fa-arrow-circle-down:before{content:"\f0ab";}.fa-globe:before{content:"\f0ac";}.fa-wrench:before{content:"\f0ad";}.fa-tasks:before{content:"\f0ae";}.fa-filter:before{content:"\f0b0";}.fa-briefcase:before{content:"\f0b1";}.fa-arrows-alt:before{content:"\f0b2";}.fa-group:before,.fa-users:before{content:"\f0c0";}.fa-chain:before,.fa-link:before{content:"\f0c1";}.fa-cloud:before{content:"\f0c2";}.fa-flask:before{content:"\f0c3";}.fa-cut:before,.fa-scissors:before{content:"\f0c4";}.fa-copy:before,.fa-files-o:before{content:"\f0c5";}.fa-paperclip:before{content:"\f0c6";}.fa-save:before,.fa-floppy-o:before{content:"\f0c7";}.fa-square:before{content:"\f0c8";}.fa-navicon:before,.fa-reorder:before,.fa-bars:before{content:"\f0c9";}.fa-list-ul:before{content:"\f0ca";}.fa-list-ol:before{content:"\f0cb";}.fa-strikethrough:before{content:"\f0cc";}.fa-underline:before{content:"\f0cd";}.fa-table:before{content:"\f0ce";}.fa-magic:before{content:"\f0d0";}.fa-truck:before{content:"\f0d1";}.fa-pinterest:before{content:"\f0d2";}.fa-pinterest-square:before{content:"\f0d3";}.fa-google-plus-square:before{content:"\f0d4";}.fa-google-plus:before{content:"\f0d5";}.fa-money:before{content:"\f0d6";}.fa-caret-down:before{content:"\f0d7";}.fa-caret-up:before{content:"\f0d8";}.fa-caret-left:before{content:"\f0d9";}.fa-caret-right:before{content:"\f0da";}.fa-columns:before{content:"\f0db";}.fa-unsorted:before,.fa-sort:before{content:"\f0dc";}.fa-sort-down:before,.fa-sort-desc:before{content:"\f0dd";}.fa-sort-up:before,.fa-sort-asc:before{content:"\f0de";}.fa-envelope:before{content:"\f0e0";}.fa-linkedin:before{content:"\f0e1";}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2";}.fa-legal:before,.fa-gavel:before{content:"\f0e3";}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4";}.fa-comment-o:before{content:"\f0e5";}.fa-comments-o:before{content:"\f0e6";}.fa-flash:before,.fa-bolt:before{content:"\f0e7";}.fa-sitemap:before{content:"\f0e8";}.fa-umbrella:before{content:"\f0e9";}.fa-paste:before,.fa-clipboard:before{content:"\f0ea";}.fa-lightbulb-o:before{content:"\f0eb";}.fa-exchange:before{content:"\f0ec";}.fa-cloud-download:before{content:"\f0ed";}.fa-cloud-upload:before{content:"\f0ee";}.fa-user-md:before{content:"\f0f0";}.fa-stethoscope:before{content:"\f0f1";}.fa-suitcase:before{content:"\f0f2";}.fa-bell-o:before{content:"\f0a2";}.fa-coffee:before{content:"\f0f4";}.fa-cutlery:before{content:"\f0f5";}.fa-file-text-o:before{content:"\f0f6";}.fa-building-o:before{content:"\f0f7";}.fa-hospital-o:before{content:"\f0f8";}.fa-ambulance:before{content:"\f0f9";}.fa-medkit:before{content:"\f0fa";}.fa-fighter-jet:before{content:"\f0fb";}.fa-beer:before{content:"\f0fc";}.fa-h-square:before{content:"\f0fd";}.fa-plus-square:before{content:"\f0fe";}.fa-angle-double-left:before{content:"\f100";}.fa-angle-double-right:before{content:"\f101";}.fa-angle-double-up:before{content:"\f102";}.fa-angle-double-down:before{content:"\f103";}.fa-angle-left:before{content:"\f104";}.fa-angle-right:before{content:"\f105";}.fa-angle-up:before{content:"\f106";}.fa-angle-down:before{content:"\f107";}.fa-desktop:before{content:"\f108";}.fa-laptop:before{content:"\f109";}.fa-tablet:before{content:"\f10a";}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b";}.fa-circle-o:before{content:"\f10c";}.fa-quote-left:before{content:"\f10d";}.fa-quote-right:before{content:"\f10e";}.fa-spinner:before{content:"\f110";}.fa-circle:before{content:"\f111";}.fa-mail-reply:before,.fa-reply:before{content:"\f112";}.fa-github-alt:before{content:"\f113";}.fa-folder-o:before{content:"\f114";}.fa-folder-open-o:before{content:"\f115";}.fa-smile-o:before{content:"\f118";}.fa-frown-o:before{content:"\f119";}.fa-meh-o:before{content:"\f11a";}.fa-gamepad:before{content:"\f11b";}.fa-keyboard-o:before{content:"\f11c";}.fa-flag-o:before{content:"\f11d";}.fa-flag-checkered:before{content:"\f11e";}.fa-terminal:before{content:"\f120";}.fa-code:before{content:"\f121";}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122";}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123";}.fa-location-arrow:before{content:"\f124";}.fa-crop:before{content:"\f125";}.fa-code-fork:before{content:"\f126";}.fa-unlink:before,.fa-chain-broken:before{content:"\f127";}.fa-question:before{content:"\f128";}.fa-info:before{content:"\f129";}.fa-exclamation:before{content:"\f12a";}.fa-superscript:before{content:"\f12b";}.fa-subscript:before{content:"\f12c";}.fa-eraser:before{content:"\f12d";}.fa-puzzle-piece:before{content:"\f12e";}.fa-microphone:before{content:"\f130";}.fa-microphone-slash:before{content:"\f131";}.fa-shield:before{content:"\f132";}.fa-calendar-o:before{content:"\f133";}.fa-fire-extinguisher:before{content:"\f134";}.fa-rocket:before{content:"\f135";}.fa-maxcdn:before{content:"\f136";}.fa-chevron-circle-left:before{content:"\f137";}.fa-chevron-circle-right:before{content:"\f138";}.fa-chevron-circle-up:before{content:"\f139";}.fa-chevron-circle-down:before{content:"\f13a";}.fa-html5:before{content:"\f13b";}.fa-css3:before{content:"\f13c";}.fa-anchor:before{content:"\f13d";}.fa-unlock-alt:before{content:"\f13e";}.fa-bullseye:before{content:"\f140";}.fa-ellipsis-h:before{content:"\f141";}.fa-ellipsis-v:before{content:"\f142";}.fa-rss-square:before{content:"\f143";}.fa-play-circle:before{content:"\f144";}.fa-ticket:before{content:"\f145";}.fa-minus-square:before{content:"\f146";}.fa-minus-square-o:before{content:"\f147";}.fa-level-up:before{content:"\f148";}.fa-level-down:before{content:"\f149";}.fa-check-square:before{content:"\f14a";}.fa-pencil-square:before{content:"\f14b";}.fa-external-link-square:before{content:"\f14c";}.fa-share-square:before{content:"\f14d";}.fa-compass:before{content:"\f14e";}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150";}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151";}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152";}.fa-euro:before,.fa-eur:before{content:"\f153";}.fa-gbp:before{content:"\f154";}.fa-dollar:before,.fa-usd:before{content:"\f155";}.fa-rupee:before,.fa-inr:before{content:"\f156";}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157";}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158";}.fa-won:before,.fa-krw:before{content:"\f159";}.fa-bitcoin:before,.fa-btc:before{content:"\f15a";}.fa-file:before{content:"\f15b";}.fa-file-text:before{content:"\f15c";}.fa-sort-alpha-asc:before{content:"\f15d";}.fa-sort-alpha-desc:before{content:"\f15e";}.fa-sort-amount-asc:before{content:"\f160";}.fa-sort-amount-desc:before{content:"\f161";}.fa-sort-numeric-asc:before{content:"\f162";}.fa-sort-numeric-desc:before{content:"\f163";}.fa-thumbs-up:before{content:"\f164";}.fa-thumbs-down:before{content:"\f165";}.fa-youtube-square:before{content:"\f166";}.fa-youtube:before{content:"\f167";}.fa-xing:before{content:"\f168";}.fa-xing-square:before{content:"\f169";}.fa-youtube-play:before{content:"\f16a";}.fa-dropbox:before{content:"\f16b";}.fa-stack-overflow:before{content:"\f16c";}.fa-instagram:before{content:"\f16d";}.fa-flickr:before{content:"\f16e";}.fa-adn:before{content:"\f170";}.fa-bitbucket:before{content:"\f171";}.fa-bitbucket-square:before{content:"\f172";}.fa-tumblr:before{content:"\f173";}.fa-tumblr-square:before{content:"\f174";}.fa-long-arrow-down:before{content:"\f175";}.fa-long-arrow-up:before{content:"\f176";}.fa-long-arrow-left:before{content:"\f177";}.fa-long-arrow-right:before{content:"\f178";}.fa-apple:before{content:"\f179";}.fa-windows:before{content:"\f17a";}.fa-android:before{content:"\f17b";}.fa-linux:before{content:"\f17c";}.fa-dribbble:before{content:"\f17d";}.fa-skype:before{content:"\f17e";}.fa-foursquare:before{content:"\f180";}.fa-trello:before{content:"\f181";}.fa-female:before{content:"\f182";}.fa-male:before{content:"\f183";}.fa-gittip:before{content:"\f184";}.fa-sun-o:before{content:"\f185";}.fa-moon-o:before{content:"\f186";}.fa-archive:before{content:"\f187";}.fa-bug:before{content:"\f188";}.fa-vk:before{content:"\f189";}.fa-weibo:before{content:"\f18a";}.fa-renren:before{content:"\f18b";}.fa-pagelines:before{content:"\f18c";}.fa-stack-exchange:before{content:"\f18d";}.fa-arrow-circle-o-right:before{content:"\f18e";}.fa-arrow-circle-o-left:before{content:"\f190";}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191";}.fa-dot-circle-o:before{content:"\f192";}.fa-wheelchair:before{content:"\f193";}.fa-vimeo-square:before{content:"\f194";}.fa-turkish-lira:before,.fa-try:before{content:"\f195";}.fa-plus-square-o:before{content:"\f196";}.fa-space-shuttle:before{content:"\f197";}.fa-slack:before{content:"\f198";}.fa-envelope-square:before{content:"\f199";}.fa-wordpress:before{content:"\f19a";}.fa-openid:before{content:"\f19b";}.fa-institution:before,.fa-bank:before,.fa-university:before{content:"\f19c";}.fa-mortar-board:before,.fa-graduation-cap:before{content:"\f19d";}.fa-yahoo:before{content:"\f19e";}.fa-google:before{content:"\f1a0";}.fa-reddit:before{content:"\f1a1";}.fa-reddit-square:before{content:"\f1a2";}.fa-stumbleupon-circle:before{content:"\f1a3";}.fa-stumbleupon:before{content:"\f1a4";}.fa-delicious:before{content:"\f1a5";}.fa-digg:before{content:"\f1a6";}.fa-pied-piper-square:before,.fa-pied-piper:before{content:"\f1a7";}.fa-pied-piper-alt:before{content:"\f1a8";}.fa-drupal:before{content:"\f1a9";}.fa-joomla:before{content:"\f1aa";}.fa-language:before{content:"\f1ab";}.fa-fax:before{content:"\f1ac";}.fa-building:before{content:"\f1ad";}.fa-child:before{content:"\f1ae";}.fa-paw:before{content:"\f1b0";}.fa-spoon:before{content:"\f1b1";}.fa-cube:before{content:"\f1b2";}.fa-cubes:before{content:"\f1b3";}.fa-behance:before{content:"\f1b4";}.fa-behance-square:before{content:"\f1b5";}.fa-steam:before{content:"\f1b6";}.fa-steam-square:before{content:"\f1b7";}.fa-recycle:before{content:"\f1b8";}.fa-automobile:before,.fa-car:before{content:"\f1b9";}.fa-cab:before,.fa-taxi:before{content:"\f1ba";}.fa-tree:before{content:"\f1bb";}.fa-spotify:before{content:"\f1bc";}.fa-deviantart:before{content:"\f1bd";}.fa-soundcloud:before{content:"\f1be";}.fa-database:before{content:"\f1c0";}.fa-file-pdf-o:before{content:"\f1c1";}.fa-file-word-o:before{content:"\f1c2";}.fa-file-excel-o:before{content:"\f1c3";}.fa-file-powerpoint-o:before{content:"\f1c4";}.fa-file-photo-o:before,.fa-file-picture-o:before,.fa-file-image-o:before{content:"\f1c5";}.fa-file-zip-o:before,.fa-file-archive-o:before{content:"\f1c6";}.fa-file-sound-o:before,.fa-file-audio-o:before{content:"\f1c7";}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8";}.fa-file-code-o:before{content:"\f1c9";}.fa-vine:before{content:"\f1ca";}.fa-codepen:before{content:"\f1cb";}.fa-jsfiddle:before{content:"\f1cc";}.fa-life-bouy:before,.fa-life-saver:before,.fa-support:before,.fa-life-ring:before{content:"\f1cd";}.fa-circle-o-notch:before{content:"\f1ce";}.fa-ra:before,.fa-rebel:before{content:"\f1d0";}.fa-ge:before,.fa-empire:before{content:"\f1d1";}.fa-git-square:before{content:"\f1d2";}.fa-git:before{content:"\f1d3";}.fa-hacker-news:before{content:"\f1d4";}.fa-tencent-weibo:before{content:"\f1d5";}.fa-qq:before{content:"\f1d6";}.fa-wechat:before,.fa-weixin:before{content:"\f1d7";}.fa-send:before,.fa-paper-plane:before{content:"\f1d8";}.fa-send-o:before,.fa-paper-plane-o:before{content:"\f1d9";}.fa-history:before{content:"\f1da";}.fa-circle-thin:before{content:"\f1db";}.fa-header:before{content:"\f1dc";}.fa-paragraph:before{content:"\f1dd";}.fa-sliders:before{content:"\f1de";}.fa-share-alt:before{content:"\f1e0";}.fa-share-alt-square:before{content:"\f1e1";}.fa-bomb:before{content:"\f1e2";}
.highlight table td { padding: 5px; }
.highlight table pre { margin: 0; }
.highlight .cm {
  color: #39B6CC;
  font-style: italic;
}
.highlight .cp {
  color: #808080;
  font-weight: bold;
}
.highlight .c1 {
  color: #39B6CC;
  font-style: italic;
}
.highlight .cs {
  color: #808080;
  font-weight: bold;
  font-style: italic;
}
.highlight .c, .highlight .cd {
  color: #39B6CC;
  font-style: italic;
}
.highlight .err {
  color: #39B6CC;
  font-weight: bold;
}
.highlight .gd {
  color: #404040;
  background-color: #39B6CC;
}
.highlight .ge {
  color: #404040;
  font-style: italic;
}
.highlight .gr {
  color: #39B6CC;
}
.highlight .gh {
  color: #808080;
}
.highlight .gi {
  color: #404040;
}
.highlight .go {
  color: #808080;
}
.highlight .gp {
  color: #404040;
}
.highlight .gs {
  font-weight: bold;
}
.highlight .gu {
  color: #808080;
}
.highlight .gt {
  color: #456CCC;
}
.highlight .kc {
  color: #404040;
  font-weight: bold;
}
.highlight .kd {
  color: #404040;
  font-weight: bold;
}
.highlight .kn {
  color: #404040;
  font-weight: bold;
}
.highlight .kp {
  color: #404040;
  font-weight: bold;
}
.highlight .kr {
  color: #404040;
  font-weight: bold;
}
.highlight .kt {
  color: #456CCC;
  font-weight: bold;
}
.highlight .k, .highlight .kv {
  color: #404040;
  font-weight: bold;
}
.highlight .mf {
  color: #39B6CC;
}
.highlight .mh {
  color: #39B6CC;
}
.highlight .il {
  color: #39B6CC;
}
.highlight .mi {
  color: #39B6CC;
}
.highlight .mo {
  color: #39B6CC;
}
.highlight .m, .highlight .mb, .highlight .mx {
  color: #39B6CC;
}
.highlight .sb {
  color: #39B6CC;
}
.highlight .sc {
  color: #39B6CC;
}
.highlight .sd {
  color: #39B6CC;
}
.highlight .s2 {
  color: #39B6CC;
}
.highlight .se {
  color: #39B6CC;
}
.highlight .sh {
  color: #39B6CC;
}
.highlight .si {
  color: #39B6CC;
}
.highlight .sx {
  color: #39B6CC;
}
.highlight .sr {
  color: #398CCC;
}
.highlight .s1 {
  color: #39B6CC;
}
.highlight .ss {
  color: #398CCC;
}
.highlight .s {
  color: #39B6CC;
}
.highlight .na {
  color: #398CCC;
}
.highlight .bp {
  color: #808080;
}
.highlight .nb {
  color: #456CCC;
}
.highlight .nc {
  color: #456CCC;
  font-weight: bold;
}
.highlight .no {
  color: #398CCC;
}
.highlight .nd {
  color: #808080;
  font-weight: bold;
}
.highlight .ni {
  color: #398CCC;
}
.highlight .ne {
  color: #39B6CC;
  font-weight: bold;
}
.highlight .nf {
  color: #39B6CC;
  font-weight: bold;
}
.highlight .nl {
  color: #39B6CC;
  font-weight: bold;
}
.highlight .nn {
  color: #808080;
}
.highlight .nt {
  color: #404040;
}
.highlight .vc {
  color: #398CCC;
}
.highlight .vg {
  color: #398CCC;
}
.highlight .vi {
  color: #398CCC;
}
.highlight .nv {
  color: #398CCC;
}
.highlight .ow {
  color: #404040;
  font-weight: bold;
}
.highlight .o {
  color: #404040;
  font-weight: bold;
}
.highlight .w {
  color: #808080;
}
/* Adapted from http://www.jqueryscript.net/other/Responsive-Vertical-Timeline-With-jQuery-CSS3.html */


.timeline {
  position: relative;
  width: 100%;
  overflow: hidden;
  margin-top: 30px;
}

.timeline-center {
  left:0;
    right:0;
    margin-left:auto;
    margin-right:auto;
}

.timeline-bar {
  position: absolute;
  width: 10px;
  top: 0;
  bottom: 0;
  background-color: #7E7C7D;
}

.timeline-bar-fill {
  background-color: #398CCC;
  position: absolute;
  left:0;
  right:0;
  top:0;
  height:0;

}

.timeline-state {
  position: relative;
  width: 100%;
  min-height: 200px;
  margin-bottom: 50px;
}

.timeline-state::after {
  display:block;
  content: ' ';
  clear:both;
}

.timeline-icon {
  border-radius: 50%;
  width: 80px;
  height: 80px;
  background-color: #020001;
  position: absolute;
  top: 0;
  text-align: center;
  line-height: 80px;
  font-size: 24px;
  color: #F9F9F9;
}

.timeline-content {
  width: 40%;
  padding: 2%;
  background-color: rgba(189,189,189,0.25);
  border-bottom: solid 3px #398CCC;
  float:left;
  opacity:0;
  position:relative;
  margin-left:-40%;
}

.timeline-state:nth-child(2n+2) .timeline-content {
  float:right;
  margin-right:-40%;
}

.timeline-image {
  position:relative;
  float:left;
  opacity:0;
  width: 40%;
}

.timeline-state:nth-child(2n+1) .timeline-image {
  float:right;
}

.timeline-image img {
    margin-left:auto;
    margin-right:auto;
}

.timeline-content > p, .timeline-content > h3 {
  margin: 10px 0 0 0;
  margin-top: 10px;
  line-height: 25px;
  margin-top: 25px;
}

.timeline-content > p:first-child, .timeline-content > h3:first-child {
  margin: 0;
  margin-top: 0px;
}

/*
animations
*/
.timeline-bar-fill, .timeline-content {
  -webkit-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  transition: all 500ms ease;
}

.timeline-image {
  -webkit-transition: all 500ms 250ms ease;
  -moz-transition: all 500ms 250ms ease;
  -o-transition: all 500ms 250ms ease;
  -ms-transition: all 500ms 250ms ease;
  transition: all 500ms 250ms ease;
}

.timeline-state:nth-child(2n+2).timeline-animate .timeline-content {
  margin-right:0%;
}

.timeline-animate .timeline-content {
  opacity:1;
  margin-left:0%;
}

.timeline-animate .timeline-image {
  opacity:1;
}


/* Mobile Support */

@media (max-width: 600px) {

  .timeline-bar {
    left:auto;
    right: 37px;
  }

  .timeline-content {
    width:80%;
    float:none;
  }
  .timeline-state:nth-child(2n+2) .timeline-content {
    margin-right:0%;
    float:none;
  }

  .timeline-image {
    margin-top: 30px;
    width:80%;
  }

  .timeline-state:nth-child(2n+1) .timeline-image {
    float:none;
  }

  .animate .timeline-content {
    margin-left: 2%;
  }

  .timeline-icon {
    left: auto;
    right: 0;
  }
}
/* Portfolio */
.portfolio {
  /* Software, Education */
  /* Community */
  /* Photography */
  /* Section Headers */ }
  .portfolio h2 {
    margin-top: 0;
    color: white;
    /* Small devices (tablets, 768px and up) */
    /* Medium devices (desktops, 992px and up) */ }
    @media (min-width: 768px) {
      .portfolio h2 {
        font-size: 2.5em; } }
    @media (min-width: 992px) {
      .portfolio h2 {
        font-size: 3em; } }
    .portfolio h2 .portfolio-header-link {
      color: transparent;
      padding-left: 15px;
      font-weight: 400;
      text-decoration: none;
      display: none; }
      @media (min-width: 768px) {
        .portfolio h2 .portfolio-header-link {
          display: inline; } }
    .portfolio h2:hover .portfolio-header-link {
      color: white; }
  .portfolio h3 {
    font-family: 'ff-tisa-web-pro', 'Georgia', 'Times New Roman', serif;
    font-weight: 400;
    color: #404040;
    font-size: 1.5em;
    text-align: left;
    line-height: 1.5em; }
  .portfolio #education_list li:first-child {
    margin-top: 20px !important; }
  .portfolio #software_list li, .portfolio #education_list li {
    vertical-align: top;
    display: inline-block;
    margin-top: 30px;
    text-align: left;
    /* Small devices (tablets, 768px and up) */ }
    .portfolio #software_list li:first-child, .portfolio #education_list li:first-child {
      margin-top: 0; }
    .portfolio #software_list li h3, .portfolio #education_list li h3 {
      margin-top: 0;
      text-align: center; }
    @media (min-width: 768px) {
      .portfolio #software_list li h3, .portfolio #education_list li h3 {
        max-width: 60%;
        text-align: left;
        margin-bottom: 0; }
      .portfolio #software_list li div, .portfolio #education_list li div {
        max-width: 50%;
        margin-top: 2em; } }
    .portfolio #software_list li img, .portfolio #education_list li img {
      padding: 15px 0;
      max-width: 100%; }
      @media (min-width: 768px) {
        .portfolio #software_list li img, .portfolio #education_list li img {
          max-width: 40%;
          float: right; } }
    .portfolio #software_list li div, .portfolio #education_list li div {
      margin-top: 0.5em; }
    .portfolio #software_list li p, .portfolio #education_list li p {
      margin-top: 0.5em; }
  .portfolio #community_list {
    padding: 30px 0; }
    .portfolio #community_list li {
      margin: 0px 0.625em;
      /* Small devices (tablets, 768px and up) */
      /* Medium devices (desktops, 992px and up) */ }
      @media (min-width: 768px) {
        .portfolio #community_list li {
          margin: 0px 2em; } }
      @media (min-width: 992px) {
        .portfolio #community_list li {
          margin: 0px 3em; } }
  .portfolio #photography_list li {
    vertical-align: middle;
    position: relative;
    font-size: 48px;
    min-width: 70px;
    margin: 10px 10px;
    /* Small devices (tablets, 768px and up) */ }
    @media (min-width: 768px) {
      .portfolio #photography_list li {
        font-size: 60px;
        margin: 0.10px 60px; } }
    .portfolio #photography_list li a {
      text-decoration: none; }
  .portfolio aside {
    display: block;
    color: white;
    position: relative;
    background: no-repeat center center scroll;
    background-size: cover;
    margin-top: 5em;
    margin-bottom: 1em;
    padding-top: 3em;
    padding-bottom: 3em;
    /* Extra small devices (phones, less than 768px) */
    /* No media query since this is the default in Bootstrap */
    /* Small devices (tablets, 768px and up) */
    /* Medium devices (desktops, 992px and up) */
    /* Large devices (large desktops, 1200px and up) */ }
    .portfolio aside p {
      margin: 0px 0; }
    @media (min-width: 768px) {
      .portfolio aside {
        height: 250px;
        padding-top: auto;
        padding-bottom: auto;
        margin-top: 5em; } }
    @media (min-width: 992px) {
      .portfolio aside {
        height: 350px; } }
    @media (min-width: 1200px) {
      .portfolio aside {
        height: 450px; } }
    .portfolio aside figcaption {
      display: block;
      padding: 0;
      text-align: center;
      /* Extra small devices (phones, less than 768px) */
      /* No media query since this is the default in Bootstrap */
      width: 70%;
      margin-left: auto;
      margin-right: auto;
      /* Section Header Callouts */
      /* Extra small devices (phones, less than 768px) */
      /* No media query since this is the default in Bootstrap */
      /* Small devices (tablets, 768px and up) */
      /* Medium devices (desktops, 992px and up) */
      /* Large devices (large desktops, 1200px and up) */ }
      .portfolio aside figcaption a:hover, .portfolio aside figcaption a:focus {
        color: white; }
      @media (min-width: 768px) {
        .portfolio aside figcaption {
          position: absolute;
          text-align: left; } }
      .portfolio aside figcaption:before {
        content: "";
        color: white;
        position: relative; }
        @media (min-width: 768px) {
          .portfolio aside figcaption:before {
            position: absolute; } }
      @media (min-width: 768px) {
        .portfolio aside figcaption {
          right: 2em;
          bottom: 2em;
          width: 325px; }
          .portfolio aside figcaption:before {
            width: 205px;
            height: 94px;
            top: 0em;
            right: 105%;
            background-image: url(/img/portfolio/callout_small.svg); } }
      @media (min-width: 992px) {
        .portfolio aside figcaption {
          right: 5em; }
          .portfolio aside figcaption:before {
            width: 357px;
            height: 164px;
            top: -3.6em;
            background-image: url(/img/portfolio/callout.svg); } }
      @media (min-width: 1200px) {
        .portfolio aside figcaption {
          right: 7em;
          bottom: 5em; } }
/* Speaking Page */
.speaking .row {
  padding-bottom: 0; }
.speaking h3 {
  margin-top: 2em;
  text-decoration: none;
  font-weight: 600;
  font-size: 1em;
  /* Small devices (tablets, 768px and up) */ }
  @media (min-width: 768px) {
    .speaking h3 {
      font-size: 1.5em; } }
.speaking ul {
  padding: 0; }
  .speaking ul li {
    width: 100%;
    display: inline-block;
    vertical-align: top;
    margin-top: 2em;
    text-align: left;
    /* Links here are different from in articles. */
    /* Small devices (tablets, 768px and up) */ }
    .speaking ul li i {
      width: 1.5em;
      text-align: center;
      position: relative;
      left: 0.625em; }
    .speaking ul li h3 {
      margin: 0; }
    .speaking ul li p, .speaking ul li div {
      margin: 0; }
    .speaking ul li p {
      padding-left: 2em;
      text-indent: -2em; }
    .speaking ul li a {
      text-decoration: none;
      color: #404040; }
      .speaking ul li a:hover {
        text-decoration: underline;
        color: #398CCC; }
    .speaking ul li .details {
      float: right;
      width: 70%;
      padding-left: 1em; }
    .speaking ul li img {
      width: 100%; }
    @media (min-width: 768px) {
      .speaking ul li {
        margin-top: 2em; }
        .speaking ul li .details {
          padding-left: 1.5em;
          padding-bottom: 0.625em; } }
    .speaking ul li .image-container {
      position: relative;
      float: left;
      padding: 0;
      height: 100%;
      width: 30%; }
      .speaking ul li .image-container a.mouseover-link {
        display: none; }
        .speaking ul li .image-container a.mouseover-link i {
          position: absolute;
          bottom: 0;
          right: 0;
          color: white;
          padding-bottom: 10px;
          padding-right: 40px;
          color: white; }
      .speaking ul li .image-container:hover a.mouseover-link {
        display: inline; }
.speaking aside {
  background: no-repeat center center;
  background-attachment: scroll;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  background-size: cover;
  -o-background-size: cover;
  color: white;
  font-weight: 800;
  padding: 5em 0;
  margin-bottom: 1.5em;
  margin-top: 5em;
  text-align: center;
  /* TODO: Cusotmize heights for different devices. */
  /* Extra small devices (phones, less than 768px) */
  /* No media query since this is the default in Bootstrap */
  /* Small devices (tablets, 768px and up) */
  /* Medium devices (desktops, 992px and up) */
  /* Large devices (large desktops, 1200px and up) */ }
  @media only screen and (min-width: 768px) {
    .speaking aside {
      padding: 7em 0;
      margin-bottom: 30px;
      margin-top: 7em; } }
  .speaking aside h2 {
    font-size: 2em;
    font-weight: 800;
    margin: 0; }
    @media only screen and (min-width: 768px) {
      .speaking aside h2 {
        font-size: 2.5em; } }
  @media (min-width: 768px) {
    .speaking aside {
      padding-top: auto;
      padding-bottom: auto; } }
  @media (min-width: 992px) {
    .speaking aside {
      padding-top: auto;
      padding-bottom: auto; } }
  @media (min-width: 1200px) {
    .speaking aside {
      padding-top: auto;
      padding-bottom: auto; } }
.books #books_list li {
  vertical-align: top;
  display: inline-block;
  text-align: left;
  /* Small devices (tablets, 768px and up) */ }
  .books #books_list li h2 {
    font-family: 'ff-tisa-web-pro', 'Georgia', 'Times New Roman', serif;
    font-weight: 400;
    text-align: left;
    font-size: 25px;
    line-height: 25px; }
    @media (min-width: 768px) {
      .books #books_list li h2 {
        font-size: 35px;
        line-height: 35px; } }
  .books #books_list li a.title-link {
    color: #404040;
    text-decoration: none; }
    .books #books_list li a.title-link:hover {
      color: #398CCC;
      text-decoration: underline; }
  .books #books_list li .title {
    display: block; }
    .books #books_list li .title h2 {
      display: inline; }
  @media (min-width: 768px) {
    .books #books_list li div {
      max-width: 50%;
      margin-top: 30px; } }
  .books #books_list li img {
    padding: 15px 0px;
    max-width: 100%;
    max-height: 200px; }
    @media (min-width: 768px) {
      .books #books_list li img {
        max-width: 40%;
        max-height: inherit;
        float: right; } }
  .books #books_list li div {
    margin-top: 15px; }
  .books #books_list li p {
    margin-top: 15px; }
/*









 */

