@charset "UTF-8";
/*
 *    Minimal Mistakes Jekyll Theme
 *
 *  - Michael Rose
 *  - mademistakes.com
 *  - https://twitter.com/mmistakes
 *
*/
/* ==========================================================================
   Variables
   ========================================================================== */
/*
   Typography
   ========================================================================== */
/* paragraph indention */
/* system typefaces */
/* sans serif typefaces */
/* serif typefaces */
/* type scale */
/*
   Colors
   ========================================================================== */
/* brands */
/* links */
/*
   Breakpoints
   ========================================================================== */
/*
$small                      : 400px;
$medium                     : 500px;
$medium-wide                : 550px;
$large                      : 1200px;
$x-large                    : 1800px;
*/
/*
   Grid
   ========================================================================== */
/*
   Other
   ========================================================================== */
/* ==========================================================================
   MIXINS
   ========================================================================== */
a:focus {
  /* Default*/
  outline: thin dotted #f89406;
  /* Webkit*/
  outline: 5px auto #f89406;
  outline-offset: -2px;
}

/*
   em function
   ========================================================================== */
/*
   Bourbon clearfix
   ========================================================================== */
/*
  * Provides an easy way to include a clearfix for containing floats.
  * link http://cssmojo.com/latest_new_clearfix_so_far/
  *
  * example scss - Usage
  *
  * .element {
  *   @include clearfix;
  * }
  *
  * example css - CSS Output
  *
  * .element::after {
  *   clear: both;
  *   content: "";
  *   display: table;
  * }
*/
/* ==========================================================================
   STYLE RESETS
   ========================================================================== */
*, *:before, *:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

html {
  /* apply a natural box layout model to all elements */
  box-sizing: border-box;
  background-color: #fff;
  font-size: 16px;
}
@media (min-width: 48em) {
  html {
    font-size: 18px;
  }
}
html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

/* Remove margin */
body {
  margin: 0;
}

/* Selected elements */
::-moz-selection {
  color: #fff;
  background: #000;
}

::selection {
  color: #fff;
  background: #000;
}

/* Display HTML5 elements in IE6-9 and FF3 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section {
  display: block;
}

/* Display block in IE6-9 and FF3 */
audio,
canvas,
video {
  display: inline-block;
  *display: inline;
  *zoom: 1;
}

/* Prevents modern browsers from displaying 'audio' without controls */
audio:not([controls]) {
  display: none;
}

a {
  color: #2e8ca8;
}

/* Apply focus state */
/* Remove outline from links */
a:hover,
a:active {
  outline: 0;
}

/* Prevent sub and sup affecting line-height in all browsers */
sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* img border in anchor's and image quality */
img {
  /* Responsive images (ensure images don't scale beyond their parents) */
  max-width: 100%; /* part 1: Set a maximum relative to the parent*/
  width: auto\9 ; /* IE7-8 need help adjusting responsive images*/
  height: auto; /* part 2: Scale the height according to the width, otherwise you get stretching*/
  vertical-align: middle;
  border: 0;
  -ms-interpolation-mode: bicubic;
}

/* Prevent max-width from affecting Google Maps */
#map_canvas img,
.google-maps img {
  max-width: none;
}

/* Consistent form font size in all browsers, margin changes, misc */
button,
input,
select,
textarea {
  margin: 0;
  font-size: 100%;
  vertical-align: middle;
}

button,
input {
  *overflow: visible; /* inner spacing ie IE6/7*/
  line-height: normal; /* FF3/4 have !important on line-height in UA stylesheet*/
}

button::-moz-focus-inner,
input::-moz-focus-inner { /* inner padding and border oddities in FF3/4*/
  padding: 0;
  border: 0;
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button; /* corrects inability to style clickable `input` types in iOS*/
  cursor: pointer; /* improves usability and consistency of cursor style between image-type `input` and others*/
}

label,
select,
button,
input[type=button],
input[type=reset],
input[type=submit],
input[type=radio],
input[type=checkbox] {
  cursor: pointer; /* improves usability and consistency of cursor style between image-type `input` and others*/
}

input[type=search] { /* Appearance in Safari/Chrome*/
  box-sizing: content-box;
  -webkit-appearance: textfield;
}

input[type=search]::-webkit-search-decoration,
input[type=search]::-webkit-search-cancel-button {
  -webkit-appearance: none; /* inner-padding issues in Chrome OSX, Safari 5*/
}

textarea {
  overflow: auto; /* remove vertical scrollbar in IE6-9*/
  vertical-align: top; /* readability and alignment cross-browser*/
}

/* ==========================================================================
   BASE ELEMENTS
   ========================================================================== */
html {
  /* sticky footer fix */
  position: relative;
  min-height: 100%;
}

body {
  margin: 0;
  padding: 0;
  padding-bottom: 9em;
  color: rgb(73.2, 78, 81.6);
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
  line-height: 1.5;
}
body.overflow--hidden {
  /* when primary navigation is visible, the content in the background won't scroll */
  overflow: hidden;
}

h1, h2, h3, h4, h5, h6 {
  margin: 2em 0 0.5em;
  line-height: 1.2;
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
  font-weight: bold;
}

h1 {
  margin-top: 0;
  font-size: 1.563em;
}

h2 {
  font-size: 1.25em;
}

h3 {
  font-size: 1em;
}

h4 {
  font-size: 0.75em;
}

h5 {
  font-size: 0.75em;
}

h6 {
  font-size: 0.75em;
}

small, .small {
  font-size: 0.75em;
}

p {
  margin-bottom: 1.3em;
}

u,
ins {
  text-decoration: none;
  border-bottom: 1px solid rgb(73.2, 78, 81.6);
}
u a,
ins a {
  color: inherit;
}

del a {
  color: inherit;
}

/* reduce orphans and widows when printing */
p, pre, blockquote, ul, ol, dl, figure, table, fieldset {
  orphans: 3;
  widows: 3;
}

/* abbreviations */
abbr[title],
abbr[data-original-title] {
  text-decoration: none;
  cursor: help;
  border-bottom: 1px dotted rgb(73.2, 78, 81.6);
}

/* blockquotes */
blockquote {
  margin: 2em 1em 2em 0;
  padding-left: 1em;
  padding-right: 1em;
  font-style: italic;
  border-left: 0.25em solid #1e3a5f;
}
blockquote cite {
  font-style: italic;
}
blockquote cite:before {
  content: "—";
  padding-right: 5px;
}

/* links */
a:hover, a:active {
  outline: 0;
}

/* code */
tt, code, kbd, samp, pre {
  font-family: Monaco, Consolas, "Lucida Console", monospace;
}

pre {
  overflow-x: auto; /* add scrollbars to wide code blocks*/
}

p > code,
a > code,
li > code,
figcaption > code,
td > code {
  padding-top: 0.1rem;
  padding-bottom: 0.1rem;
  font-size: 0.75em;
  background: #fafafa;
  border: 1px solid rgb(241.7, 242.5, 243.1);
  border-radius: 4px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.125);
}
p > code:before, p > code:after,
a > code:before,
a > code:after,
li > code:before,
li > code:after,
figcaption > code:before,
figcaption > code:after,
td > code:before,
td > code:after {
  letter-spacing: -0.2em;
  content: " "; /* non-breaking space*/
}

/* horizontal rule */
hr {
  display: block;
  margin: 1em 0;
  border: 0;
  border-top: 1px solid rgb(241.7, 242.5, 243.1);
}

/* lists */
ul li,
ol li {
  margin-bottom: 0.5em;
}

li ul,
li ol {
  margin-top: 0.5em;
}

/*
   Media and embeds
   ========================================================================== */
/* Figures and images */
figure {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  align-items: flex-start;
  flex-wrap: wrap;
  margin: 2em 0;
}
figure img,
figure iframe,
figure .fluid-width-video-wrapper {
  margin-bottom: 1em;
}
figure img {
  width: 100%;
  border-radius: 4px;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
figure > a {
  display: block;
}
@media (min-width: 37.5em) {
  figure.half > a,
  figure.half > img {
    width: calc(50% - 0.5em);
  }
}
figure.half figcaption {
  width: 100%;
}
@media (min-width: 37.5em) {
  figure.third > a,
  figure.third > img {
    width: calc(33.3333% - 0.5em);
  }
}
figure.third figcaption {
  width: 100%;
}

/* Figure captions */
figcaption {
  margin-bottom: 0.5em;
  color: rgb(118.65, 122.25, 124.95);
  font-family: Georgia, Times, serif;
  font-size: 0.75em;
}
figcaption a {
  color: inherit;
  text-decoration: none;
  border-bottom: 1px solid rgb(188.5, 192.5, 195.5);
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
figcaption a:hover {
  color: #000;
  border-bottom-color: #000;
}

/* Fix IE9 SVG bug */
svg:not(:root) {
  overflow: hidden;
}

/*
   Navigation lists
   ========================================================================== */
/**
 * Removes margins, padding, and bullet points from navigation lists
 *
 * Example usage:
 * <nav>
 *    <ul>
 *      <li><a href="#link-1">Link 1</a></li>
 *      <li><a href="#link-2">Link 2</a></li>
 *      <li><a href="#link-3">Link 3</a></li>
 *    </ul>
 *  </nav>
 */
nav ul {
  margin: 0;
  padding: 0;
}
nav li {
  list-style: none;
}
nav a {
  text-decoration: none;
}
nav {
  /* override white-space for nested lists */
}
nav ul li,
nav ol li {
  margin-bottom: 0;
}
nav li ul,
nav li ol {
  margin-top: 0;
}

/*
   Global animation transition
   ========================================================================== */
b, i, strong, em, blockquote, p, q, span, figure, img, h1, h2, header, input, a, tr, td, form button, input[type=submit], .btn, #goog-wm-sb, .highlight, .archive__item-teaser {
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

/* ==========================================================================
   UTILITY CLASSES
   ========================================================================== */
/*
   Visibility
   ========================================================================== */
/* http://www.456bereastreet.com/archive/200711/screen_readers_sometimes_ignore_displaynone/ */
.hidden {
  display: none;
  visibility: hidden;
}

/* for preloading images */
.load {
  display: none;
}

.transparent {
  opacity: 0;
}

/* https://developer.yahoo.com/blogs/ydn/clip-hidden-content-better-accessibility-53456.html */
.visually-hidden,
.screen-reader-text,
.screen-reader-text span,
.screen-reader-shortcut {
  position: absolute !important;
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px !important;
  width: 1px !important;
  border: 0 !important;
  overflow: hidden;
}

body:hover .visually-hidden a,
body:hover .visually-hidden input,
body:hover .visually-hidden button {
  display: none !important;
}

/* screen readers */
.screen-reader-text:focus,
.screen-reader-shortcut:focus {
  clip: auto !important;
  height: auto !important;
  width: auto !important;
  display: block;
  font-size: 1em;
  font-weight: bold;
  padding: 15px 23px 14px;
  background: #fff;
  z-index: 100000;
  text-decoration: none;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
}

/*
   Skip links
   ========================================================================== */
.skip-link {
  position: fixed;
  z-index: 20;
  margin: 0;
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
  white-space: nowrap;
}

.skip-link li {
  height: 0;
  width: 0;
  list-style: none;
}

/*
   Type
   ========================================================================== */
.text-left {
  text-align: left;
}

.text-center {
  text-align: center;
}

.text-right {
  text-align: right;
}

.text-justify {
  text-align: justify;
}

.text-nowrap {
  white-space: nowrap;
}

/*
   Alignment
   ========================================================================== */
/* clearfix */
.cf {
  clear: both;
}

.wrapper:after {
  content: " ";
  display: block;
  clear: both;
}
.wrapper {
  max-width: 925px;
  margin-left: auto;
  margin-right: auto;
}

/*
   Images
   ========================================================================== */
/* image align left */
.align-left {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 37.5em) {
  .align-left {
    float: left;
    margin-right: 1em;
  }
}

/* image align right */
.align-right {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 37.5em) {
  .align-right {
    float: right;
    margin-left: 1em;
  }
}

/* image align center */
.align-center {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/* file page content container */
@media (min-width: 57.8125em) {
  .full {
    margin-right: -19.4915254237% !important;
  }
}

/*
   Icons
   ========================================================================== */
.icon {
  display: inline-block;
  fill: currentColor;
  width: 1em;
  height: 1.1em;
  line-height: 1;
  position: relative;
  top: -0.1em;
  vertical-align: middle;
}

/* social icons*/
.social-icons .fa {
  color: #000;
}
.social-icons .fa-behance,
.social-icons .fa-behance-square {
  color: #1769FF;
}
.social-icons .fa-dribbble {
  color: #ea4c89;
}
.social-icons .fa-facebook,
.social-icons .fa-facebook-square {
  color: #3b5998;
}
.social-icons .fa-flickr {
  color: #ff0084;
}
.social-icons .fa-foursquare {
  color: #0072b1;
}
.social-icons .fa-github,
.social-icons .fa-github-alt,
.social-icons .fa-github-square {
  color: #171516;
}
.social-icons .fa-google-plus,
.social-icons .fa-google-plus-square {
  color: #dd4b39;
}
.social-icons .fa-instagram {
  color: #517fa4;
}
.social-icons .fa-lastfm,
.social-icons .fa-lastfm-square {
  color: #d51007;
}
.social-icons .fa-linkedin,
.social-icons .fa-linkedin-square {
  color: #007bb6;
}
.social-icons .fa-pinterest,
.social-icons .fa-pinterest-p,
.social-icons .fa-pinterest-square {
  color: #cb2027;
}
.social-icons .fa-rss,
.social-icons .fa-rss-square {
  color: #fa9b39;
}
.social-icons .fa-soundcloud {
  color: #ff3300;
}
.social-icons .fa-stack-exchange,
.social-icons .fa-stack-overflow {
  color: #fe7a15;
}
.social-icons .fa-tumblr,
.social-icons .fa-tumblr-square {
  color: #32506d;
}
.social-icons .fa-twitter,
.social-icons .fa-twitter-square {
  color: #55acee;
}
.social-icons .fa-vimeo,
.social-icons .fa-vimeo-square {
  color: #1ab7ea;
}
.social-icons .fa-vine {
  color: #00bf8f;
}
.social-icons .fa-youtube,
.social-icons .fa-youtube-square,
.social-icons .fa-youtube-play {
  color: #bb0000;
}
.social-icons .fa-xing,
.social-icons .fa-xing-square {
  color: #006567;
}

/*
   Navicons
   ========================================================================== */
.navicon {
  position: relative;
  width: 28px;
  height: 4px;
  background: #fff;
  margin: auto;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.navicon:before, .navicon:after {
  content: "";
  position: absolute;
  left: 0;
  width: 28px;
  height: 4px;
  background: #fff;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.navicon:before {
  top: -8px;
}
.navicon:after {
  bottom: -8px;
}

.close .navicon {
  /* hide the middle line*/
  background: transparent;
  /* overlay the lines by setting both their top values to 0*/
}
.close .navicon:before, .close .navicon:after {
  -webkit-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  top: 0;
  width: 28px;
}
.close .navicon {
  /* rotate the lines to form the x shape*/
}
.close .navicon:before {
  -webkit-transform: rotate3d(0, 0, 1, 45deg);
  transform: rotate3d(0, 0, 1, 45deg);
}
.close .navicon:after {
  -webkit-transform: rotate3d(0, 0, 1, -45deg);
  transform: rotate3d(0, 0, 1, -45deg);
}

/*
   Sticky, fixed to top content
   ========================================================================== */
@media (min-width: 57.8125em) {
  .sticky {
    clear: both;
  }
  .sticky::after {
    clear: both;
    content: "";
    display: table;
  }
  .sticky {
    position: -webkit-sticky;
    position: sticky;
    top: 2em;
  }
  .sticky > * {
    display: block;
  }
}

/*
   Wells
   ========================================================================== */
.well {
  min-height: 20px;
  padding: 19px;
  margin-bottom: 20px;
  background-color: #f5f5f5;
  border: 1px solid #e3e3e3;
  border-radius: 4px;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
}

/*
   Modals
   ========================================================================== */
.show-modal {
  overflow: hidden;
  position: relative;
}
.show-modal:before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
  background-color: rgba(255, 255, 255, 0.85);
}
.show-modal .modal {
  display: block;
}

.modal {
  display: none;
  position: fixed;
  width: 300px;
  top: 50%;
  left: 50%;
  margin-left: -150px;
  margin-top: -150px;
  min-height: 0;
  z-index: 9999;
  background: #fff;
  border: 1px solid rgb(241.7, 242.5, 243.1);
  border-radius: 4px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.125);
}
.modal__title {
  margin: 0;
  padding: 0.5em 1em;
}
.modal__supporting-text {
  padding: 0 1em 0.5em 1em;
}
.modal__actions {
  padding: 0.5em 1em;
  border-top: 1px solid rgb(241.7, 242.5, 243.1);
}

/*
   Footnotes
   ========================================================================== */
.footnote {
  color: rgb(155.25, 161.25, 165.75);
  text-decoration: none;
}

.footnotes {
  color: rgb(155.25, 161.25, 165.75);
}
.footnotes ol, .footnotes li, .footnotes p {
  margin-bottom: 0;
  font-size: 0.75em;
}

a.reversefootnote {
  color: #7a8288;
  text-decoration: none;
}
a.reversefootnote:hover {
  text-decoration: underline;
}

/*
   Required
   ========================================================================== */
.required {
  color: #ee5f5b;
  font-weight: bold;
}

/* ==========================================================================
   ANIMATIONS
   ========================================================================== */
@-webkit-keyframes intro {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes intro {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/* ==========================================================================
   TABLES
   ========================================================================== */
table {
  margin-bottom: 1em;
  width: 100%;
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
  font-size: 0.75em;
  border-collapse: collapse;
  border: 1px solid rgb(188.5, 192.5, 195.5);
}
table + table {
  margin-top: 1em;
}

thead {
  background-color: rgb(241.7, 242.5, 243.1);
  border-bottom: 1px solid rgb(188.5, 192.5, 195.5);
}

th {
  padding: 0.5em;
  font-weight: bold;
  text-align: left;
  border-right: 1px solid rgb(188.5, 192.5, 195.5);
}

td {
  padding: 0.5em;
  border-bottom: 1px solid rgb(188.5, 192.5, 195.5);
  border-right: 1px solid rgb(188.5, 192.5, 195.5);
}

tr, td, th {
  vertical-align: middle;
}

/* ==========================================================================
   BUTTONS
   ========================================================================== */
/*
   Default button
   ========================================================================== */
.btn, #goog-wm-sb {
  /* default button */
  display: inline-block;
  margin-bottom: 0.25em;
  padding: 0.5em 1em;
  color: #fff !important;
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
  font-size: 0.75em;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  background-color: #1e3a5f;
  border: 0 !important;
  border-radius: 4px;
  cursor: pointer;
}
.btn:hover, #goog-wm-sb:hover {
  background-color: #333333;
}
.btn .icon, #goog-wm-sb .icon {
  margin-right: 0.5em;
}
.btn .icon + .hidden, #goog-wm-sb .icon + .hidden {
  margin-left: -0.5em; /* override for hidden text*/
}
.btn, #goog-wm-sb {
  /* fills width of parent container */
}
.btn--block {
  display: block;
  width: 100%;
}
.btn--block + .btn--block {
  margin-top: 0.25em;
}
.btn, #goog-wm-sb {
  /* for dark backgrounds */
}
.btn--inverse {
  color: #7a8288 !important;
  border: 1px solid rgb(188.5, 192.5, 195.5) !important; /* override*/
  background-color: #fff;
}
.btn--inverse:hover {
  color: #fff !important;
  border-color: #7a8288;
}
.btn, #goog-wm-sb {
  /* light outline */
}
.btn--light-outline {
  border: 1px solid #fff !important; /* override*/
  background-color: transparent;
}
.btn, #goog-wm-sb {
  /* information */
}
.btn--info {
  background-color: #2e8ca8;
}
.btn--info:hover {
  background-color: rgb(36.8, 112, 134.4);
}
.btn, #goog-wm-sb {
  /* warning */
}
.btn--warning {
  background-color: #f89406;
}
.btn--warning:hover {
  background-color: rgb(198.4, 118.4, 4.8);
}
.btn, #goog-wm-sb {
  /* success */
}
.btn--success {
  background-color: #62c462;
}
.btn--success:hover {
  background-color: rgb(78.4, 156.8, 78.4);
}
.btn, #goog-wm-sb {
  /* danger */
}
.btn--danger {
  background-color: #ee5f5b;
}
.btn--danger:hover {
  background-color: rgb(190.4, 76, 72.8);
}
.btn, #goog-wm-sb {
  /* disabled */
}
.btn--disabled {
  pointer-events: none;
  cursor: not-allowed;
  filter: alpha(opacity=65);
  box-shadow: none;
  opacity: 0.65;
}
.btn, #goog-wm-sb {
  /* social buttons */
}
.btn--facebook {
  background-color: #3b5998;
}
.btn--facebook:hover {
  background-color: rgb(47.2, 71.2, 121.6);
}
.btn--twitter {
  background-color: #55acee;
}
.btn--twitter:hover {
  background-color: rgb(68, 137.6, 190.4);
}
.btn--google-plus {
  background-color: #dd4b39;
}
.btn--google-plus:hover {
  background-color: rgb(176.8, 60, 45.6);
}
.btn--linkedin {
  background-color: #007bb6;
}
.btn--linkedin:hover {
  background-color: rgb(0, 98.4, 145.6);
}
.btn, #goog-wm-sb {
  /* extra large button */
}
.btn--x-large {
  font-size: 1.25em;
}
.btn, #goog-wm-sb {
  /* large button */
}
.btn--large {
  font-size: 1em;
}
.btn, #goog-wm-sb {
  /* small button */
}
.btn--small {
  font-size: 0.6875em;
}

/* ==========================================================================
   NOTICE TEXT BLOCKS
   ========================================================================== */
/**
 *  Default Kramdown usage (no indents!):
 *  <div class="notice" markdown="1">
 *  #### Headline for the Notice
 *  Text for the notice
 *  </div>
 */
/* Default notice */
.notice {
  margin: 2em 0 !important; /* override*/
  padding: 1em;
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
  font-size: 0.75em !important;
  text-indent: initial; /* override*/
  background-color: rgb(248.35, 248.75, 249.05);
  border-radius: 4px;
  box-shadow: 0 1px 1px rgba(188.5, 192.5, 195.5, 0.25);
}
.notice h4 {
  margin-top: 0 !important; /* override*/
  margin-bottom: 0.75em;
}
.page__content .notice h4 {
  /* using at-root to override .page-content h4 font size*/
  margin-bottom: 0;
  font-size: 1em;
}

.notice p:last-child {
  margin-bottom: 0 !important; /* override*/
}
.notice h4 + p {
  /* remove space above paragraphs that appear directly after notice headline*/
  margin-top: 0;
  padding-top: 0;
}
.notice a {
  color: rgb(188.5, 192.5, 195.5);
}
.notice a:hover {
  color: rgb(113.1, 115.5, 117.3);
}
.notice code {
  background-color: rgb(251.675, 251.875, 252.025);
}
.notice ul:last-child {
  margin-bottom: 0; /* override*/
}

/* Primary notice */
.notice--primary {
  margin: 2em 0 !important; /* override*/
  padding: 1em;
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
  font-size: 0.75em !important;
  text-indent: initial; /* override*/
  background-color: rgb(232.5, 235.3, 239);
  border-radius: 4px;
  box-shadow: 0 1px 1px rgba(30, 58, 95, 0.25);
}
.notice--primary h4 {
  margin-top: 0 !important; /* override*/
  margin-bottom: 0.75em;
}
.page__content .notice--primary h4 {
  /* using at-root to override .page-content h4 font size*/
  margin-bottom: 0;
  font-size: 1em;
}

.notice--primary p:last-child {
  margin-bottom: 0 !important; /* override*/
}
.notice--primary h4 + p {
  /* remove space above paragraphs that appear directly after notice headline*/
  margin-top: 0;
  padding-top: 0;
}
.notice--primary a {
  color: #1e3a5f;
}
.notice--primary a:hover {
  color: rgb(18, 34.8, 57);
}
.notice--primary code {
  background-color: rgb(243.75, 245.15, 247);
}
.notice--primary ul:last-child {
  margin-bottom: 0; /* override*/
}

/* Info notice */
.notice--info {
  margin: 2em 0 !important; /* override*/
  padding: 1em;
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
  font-size: 0.75em !important;
  text-indent: initial; /* override*/
  background-color: rgb(234.1, 243.5, 246.3);
  border-radius: 4px;
  box-shadow: 0 1px 1px rgba(46, 140, 168, 0.25);
}
.notice--info h4 {
  margin-top: 0 !important; /* override*/
  margin-bottom: 0.75em;
}
.page__content .notice--info h4 {
  /* using at-root to override .page-content h4 font size*/
  margin-bottom: 0;
  font-size: 1em;
}

.notice--info p:last-child {
  margin-bottom: 0 !important; /* override*/
}
.notice--info h4 + p {
  /* remove space above paragraphs that appear directly after notice headline*/
  margin-top: 0;
  padding-top: 0;
}
.notice--info a {
  color: #2e8ca8;
}
.notice--info a:hover {
  color: rgb(27.6, 84, 100.8);
}
.notice--info code {
  background-color: rgb(244.55, 249.25, 250.65);
}
.notice--info ul:last-child {
  margin-bottom: 0; /* override*/
}

/* Warning notice */
.notice--warning {
  margin: 2em 0 !important; /* override*/
  padding: 1em;
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
  font-size: 0.75em !important;
  text-indent: initial; /* override*/
  background-color: rgb(254.3, 244.3, 230.1);
  border-radius: 4px;
  box-shadow: 0 1px 1px rgba(248, 148, 6, 0.25);
}
.notice--warning h4 {
  margin-top: 0 !important; /* override*/
  margin-bottom: 0.75em;
}
.page__content .notice--warning h4 {
  /* using at-root to override .page-content h4 font size*/
  margin-bottom: 0;
  font-size: 1em;
}

.notice--warning p:last-child {
  margin-bottom: 0 !important; /* override*/
}
.notice--warning h4 + p {
  /* remove space above paragraphs that appear directly after notice headline*/
  margin-top: 0;
  padding-top: 0;
}
.notice--warning a {
  color: #f89406;
}
.notice--warning a:hover {
  color: rgb(148.8, 88.8, 3.6);
}
.notice--warning code {
  background-color: rgb(254.65, 249.65, 242.55);
}
.notice--warning ul:last-child {
  margin-bottom: 0; /* override*/
}

/* Success notice */
.notice--success {
  margin: 2em 0 !important; /* override*/
  padding: 1em;
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
  font-size: 0.75em !important;
  text-indent: initial; /* override*/
  background-color: rgb(239.3, 249.1, 239.3);
  border-radius: 4px;
  box-shadow: 0 1px 1px rgba(98, 196, 98, 0.25);
}
.notice--success h4 {
  margin-top: 0 !important; /* override*/
  margin-bottom: 0.75em;
}
.page__content .notice--success h4 {
  /* using at-root to override .page-content h4 font size*/
  margin-bottom: 0;
  font-size: 1em;
}

.notice--success p:last-child {
  margin-bottom: 0 !important; /* override*/
}
.notice--success h4 + p {
  /* remove space above paragraphs that appear directly after notice headline*/
  margin-top: 0;
  padding-top: 0;
}
.notice--success a {
  color: #62c462;
}
.notice--success a:hover {
  color: rgb(58.8, 117.6, 58.8);
}
.notice--success code {
  background-color: rgb(247.15, 252.05, 247.15);
}
.notice--success ul:last-child {
  margin-bottom: 0; /* override*/
}

/* Danger notice */
.notice--danger {
  margin: 2em 0 !important; /* override*/
  padding: 1em;
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
  font-size: 0.75em !important;
  text-indent: initial; /* override*/
  background-color: rgb(253.3, 239, 238.6);
  border-radius: 4px;
  box-shadow: 0 1px 1px rgba(238, 95, 91, 0.25);
}
.notice--danger h4 {
  margin-top: 0 !important; /* override*/
  margin-bottom: 0.75em;
}
.page__content .notice--danger h4 {
  /* using at-root to override .page-content h4 font size*/
  margin-bottom: 0;
  font-size: 1em;
}

.notice--danger p:last-child {
  margin-bottom: 0 !important; /* override*/
}
.notice--danger h4 + p {
  /* remove space above paragraphs that appear directly after notice headline*/
  margin-top: 0;
  padding-top: 0;
}
.notice--danger a {
  color: #ee5f5b;
}
.notice--danger a:hover {
  color: rgb(142.8, 57, 54.6);
}
.notice--danger code {
  background-color: rgb(254.15, 247, 246.8);
}
.notice--danger ul:last-child {
  margin-bottom: 0; /* override*/
}

/* ==========================================================================
   MASTHEAD
   ========================================================================== */
.masthead {
  position: relative;
  border-bottom: 1px solid rgb(241.7, 242.5, 243.1);
  -webkit-animation: intro 0.3s both;
  animation: intro 0.3s both;
  -webkit-animation-delay: 0.15s;
  animation-delay: 0.15s;
  z-index: 20;
}
.masthead__inner-wrap:after {
  content: " ";
  display: block;
  clear: both;
}
.masthead__inner-wrap {
  max-width: 925px;
  margin-left: auto;
  margin-right: auto;
  clear: both;
}
.masthead__inner-wrap::after {
  clear: both;
  content: "";
  display: table;
}
.masthead__inner-wrap {
  padding: 1em 1em 1em;
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
}
@media (min-width: 80em) {
  .masthead__inner-wrap {
    max-width: 1280px;
  }
}
.masthead__inner-wrap nav {
  z-index: 10;
}
.masthead__inner-wrap a {
  text-decoration: none;
}

.masthead__menu ul {
  margin: 0;
  padding: 0;
  clear: both;
  list-style-type: none;
}

.masthead__menu-item {
  display: block;
  list-style-type: none;
  white-space: nowrap;
}
.masthead__menu-item--lg {
  padding-right: 2em;
  font-weight: 700;
}

/* ==========================================================================
   NAVIGATION
   ========================================================================== */
/*
   Breadcrumb navigation links
   ========================================================================== */
.breadcrumbs:after {
  content: " ";
  display: block;
  clear: both;
}
.breadcrumbs {
  max-width: 925px;
  margin-left: auto;
  margin-right: auto;
  clear: both;
}
.breadcrumbs::after {
  clear: both;
  content: "";
  display: table;
}
.breadcrumbs {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 2em;
  padding-right: 2em;
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
  -webkit-animation: intro 0.3s both;
  animation: intro 0.3s both;
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;
}
@media (min-width: 57.8125em) {
  .breadcrumbs {
    padding-left: 1em;
    padding-right: 1em;
  }
}
@media (min-width: 80em) {
  .breadcrumbs {
    max-width: 1280px;
  }
}
.breadcrumbs ol {
  padding: 0;
  list-style: none;
  font-size: 0.75em;
}
@media (min-width: 57.8125em) {
  .breadcrumbs ol {
    width: 83.0508474576%;
    float: right;
    margin-right: 0;
  }
}
@media (min-width: 80em) {
  .breadcrumbs ol {
    padding-left: 4.2372881356%;
  }
}
.breadcrumbs li {
  display: inline;
}
.breadcrumbs .current {
  font-weight: bold;
}

/*
   Post pagination navigation links
   ========================================================================== */
.pagination {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  clear: both;
}
.pagination::after {
  clear: both;
  content: "";
  display: table;
}
.pagination {
  margin-top: 1em;
  padding-top: 1em;
}
.pagination ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
}
.pagination li {
  display: block;
  float: left;
  margin-left: -1px;
}
.pagination li a {
  margin-bottom: 0.25em;
  padding: 0.5em 1em;
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.5;
  text-align: center;
  text-decoration: none;
  color: rgb(155.25, 161.25, 165.75);
  border: 1px solid rgb(188.5, 192.5, 195.5);
  border-radius: 0;
}
.pagination li a:hover {
  color: rgb(34.5, 105, 126);
}
.pagination li a.current {
  color: #fff;
  background: #1e3a5f;
}
.pagination li a.disabled {
  color: rgb(221.75, 223.75, 225.25);
  pointer-events: none;
  cursor: not-allowed;
}
.pagination li:first-child {
  margin-left: 0;
}
.pagination li:first-child a {
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
}
.pagination li:last-child a {
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}
.pagination {
  /* next/previous buttons */
}
.pagination--pager {
  display: block;
  padding: 1em 2em;
  float: left;
  width: 50%;
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
  font-size: 1em;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  color: rgb(188.5, 192.5, 195.5);
  border: 1px solid rgb(188.5, 192.5, 195.5);
  border-radius: 4px;
}
.pagination--pager:hover {
  color: rgb(34.5, 105, 126);
}
.pagination--pager:first-child {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.pagination--pager:last-child {
  margin-left: -1px;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.pagination--pager.disabled {
  color: rgb(221.75, 223.75, 225.25);
  pointer-events: none;
  cursor: not-allowed;
}

.page__content + .pagination,
.page__meta + .pagination,
.comment__date + .pagination,
.page__share + .pagination,
.page__comments + .pagination {
  margin-top: 2em;
  padding-top: 2em;
  border-top: 1px solid rgb(241.7, 242.5, 243.1);
}

/*
   Priority plus navigation
   ========================================================================== */
.greedy-nav {
  position: relative;
  min-width: 250px;
  background: #fff;
}
.greedy-nav a {
  display: block;
  margin: 0 1rem;
  padding: 0.5rem 0;
  color: #1e3a5f;
  text-decoration: none;
}
.greedy-nav a:hover {
  color: rgb(22.5, 43.5, 71.25);
}
.greedy-nav button {
  position: absolute;
  height: 100%;
  right: 0;
  padding: 0 0.5rem;
  border: 0;
  outline: none;
  background-color: #1e3a5f;
  color: #fff;
  cursor: pointer;
}
.greedy-nav .visible-links {
  display: table;
}
.greedy-nav .visible-links li {
  display: table-cell;
  vertical-align: middle;
}
.greedy-nav .visible-links li:first-child {
  font-weight: bold;
}
.greedy-nav .visible-links li:first-child a {
  margin-left: 0;
}
.greedy-nav .visible-links li:last-child a {
  margin-right: 0;
}
.greedy-nav .visible-links a {
  position: relative;
}
.greedy-nav .visible-links a:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  height: 4px;
  background: rgb(142.5, 156.5, 175);
  width: 100%;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  -webkit-transform: scaleX(0);
  -ms-transform: scaleX(0);
  transform: scaleX(0); /* hide*/
}
.greedy-nav .visible-links a:hover:before {
  -webkit-transform: scaleX(1);
  -ms-transform: scaleX(1);
  transform: scaleX(1); /* reveal*/
}
.greedy-nav .hidden-links {
  position: absolute;
  top: 100%;
  right: 0;
  margin-top: 15px;
  padding: 5px;
  border: 1px solid rgb(241.7, 242.5, 243.1);
  border-radius: 4px;
  background: #fff;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
}
.greedy-nav .hidden-links a {
  margin: 0;
  padding: 10px 20px;
  font-size: 1em;
}
.greedy-nav .hidden-links a:hover {
  color: rgb(22.5, 43.5, 71.25);
  background: rgb(198.75, 205.75, 215);
}
.greedy-nav .hidden-links:before {
  content: "";
  position: absolute;
  top: -11px;
  right: 10px;
  width: 0;
  border-style: solid;
  border-width: 0 10px 10px;
  border-color: rgb(241.7, 242.5, 243.1) transparent;
  display: block;
  z-index: 0;
}
.greedy-nav .hidden-links:after {
  content: "";
  position: absolute;
  top: -10px;
  right: 10px;
  width: 0;
  border-style: solid;
  border-width: 0 10px 10px;
  border-color: #fff transparent;
  display: block;
  z-index: 1;
}
.greedy-nav .hidden-links li {
  display: block;
  border-bottom: 1px solid rgb(241.7, 242.5, 243.1);
}
.greedy-nav .hidden-links li:last-child {
  border-bottom: none;
}

/*
   Navigation list
   ========================================================================== */
.nav__list {
  font-size: 1.25rem;
}
.nav__list ul {
  margin-bottom: 1em;
}
.nav__list a {
  display: block;
  padding: 0.125em 0;
  color: inherit;
}
.nav__list a:hover {
  text-decoration: underline;
}
.nav__list .active {
  margin-left: -0.5em;
  padding-left: 0.5em;
  padding-right: 0.5em;
  color: #fff;
  font-weight: bold;
  background: #1e3a5f;
  border-radius: 4px;
}
.nav__list .active:hover {
  color: #fff;
}

.nav__title {
  margin: 0;
  padding: 0.5rem 1rem;
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
  font-size: 1em;
  font-weight: bold;
}

.nav__sub-title {
  display: block;
  margin: 0.5rem 0;
  padding: 0.5rem 0;
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
  font-size: 0.75em;
  font-weight: bold;
  text-transform: uppercase;
  border-bottom: 1px solid rgb(241.7, 242.5, 243.1);
}

/*
   Table of contents navigation
   ========================================================================== */
.toc {
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
  color: #7a8288;
  text-transform: uppercase;
  letter-spacing: 1px;
  background-color: #fff;
  border: 1px solid rgb(241.7, 242.5, 243.1);
  border-radius: 4px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.125);
}
.toc .nav__title {
  color: #fff;
  font-size: 0.75em;
  background: #1e3a5f;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
}

.toc__menu {
  margin: 0;
  padding: 0;
  width: 100%;
  list-style: none;
  font-size: 0.8rem;
}
.toc__menu a {
  display: block;
  padding: 0.5rem 1rem;
  color: #7a8288;
  font-size: 0.6875em;
  font-weight: bold;
  line-height: 1.5;
  border-bottom: 1px solid rgb(241.7, 242.5, 243.1);
}
.toc__menu a:hover {
  color: #000;
  background: rgb(241.7, 242.5, 243.1);
}
.toc__menu > li:last-child a {
  border-bottom: none;
}
.toc__menu li ul > li a {
  padding-left: 2rem;
  font-weight: normal;
}
.toc__menu {
  /* hide sub sub links on small screens*/
}
.toc__menu li > ul li {
  display: none;
}
@media (min-width: 48em) {
  .toc__menu li > ul li {
    display: block;
  }
}

/* ==========================================================================
   FOOTER
   ========================================================================== */
.page__footer {
  clear: both;
}
.page__footer::after {
  clear: both;
  content: "";
  display: table;
}
.page__footer {
  float: left;
  margin-left: 0;
  margin-right: 0;
  width: 100%;
  clear: both;
  /* sticky footer fix start */
  position: absolute;
  bottom: 0em;
  height: auto;
  /* sticky footer fix end */
  margin-top: 3em;
  color: rgb(155.25, 161.25, 165.75);
  -webkit-animation: intro 0.3s both;
  animation: intro 0.3s both;
  -webkit-animation-delay: 0.45s;
  animation-delay: 0.45s;
  background-color: rgb(241.7, 242.5, 243.1);
  border-top: 1px solid rgb(188.5, 192.5, 195.5);
}
.page__footer footer {
  clear: both;
}
.page__footer footer::after {
  clear: both;
  content: "";
  display: table;
}
.page__footer footer {
  margin-left: auto;
  margin-right: auto;
  margin-top: 2em;
  max-width: 100%;
  padding: 0 1em 2em;
}
@media (min-width: 80em) {
  .page__footer footer {
    max-width: 1280px;
  }
}
.page__footer a {
  color: inherit;
  text-decoration: none;
}
.page__footer a:hover {
  text-decoration: underline;
}
.page__footer .fas,
.page__footer .fab,
.page__footer .far,
.page__footer .fal {
  color: rgb(155.25, 161.25, 165.75);
}

.page__footer-copyright {
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
  font-size: 0.6875em;
}

.page__footer-follow ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.page__footer-follow li {
  display: inline-block;
  padding-top: 5px;
  padding-bottom: 5px;
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
  font-size: 0.75em;
  text-transform: uppercase;
}
.page__footer-follow li + li:before {
  content: "";
  padding-right: 5px;
}
.page__footer-follow a {
  padding-right: 10px;
  font-weight: bold;
}
.page__footer-follow .social-icons a {
  white-space: nowrap;
}

/* ==========================================================================
   Syntax highlighting
   ========================================================================== */
div.highlighter-rouge, figure.highlight {
  position: relative;
  margin-bottom: 1em;
  padding: 1em;
  border: 1px solid rgb(241.7, 242.5, 243.1);
  border-radius: 4px;
  background-color: #fafafa;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.125);
}
div.highlighter-rouge:before, figure.highlight:before {
  position: absolute;
  top: 0;
  right: 0;
  padding: 0.5em;
  background-color: rgb(241.7, 242.5, 243.1);
  content: "\f121";
  font-family: "fontawesome" !important;
  font-size: 0.75em;
  line-height: 1;
  text-transform: none;
  speak: none;
}
div.highlighter-rouge .highlight, figure.highlight .highlight {
  margin: 0;
  font-family: Monaco, Consolas, "Lucida Console", monospace;
  font-size: 0.6875em;
  line-height: 1.8;
}

.highlight table td {
  padding: 5px;
}

.highlight table pre {
  margin: 0;
}

/*
   Solarized Light
   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      #22b3eb  reserved keywords
   cyan      #2aa198  strings, numbers
   green     #859900  operators, other keywords
   ========================================================================== */
.highlight .c {
  color: #93a1a1;
} /* Comment */
.highlight .err {
  color: #586e75;
} /* Error */
.highlight .g {
  color: #586e75;
} /* Generic */
.highlight .k {
  color: #859900;
} /* Keyword */
.highlight .l {
  color: #586e75;
} /* Literal */
.highlight .n {
  color: #586e75;
} /* Name */
.highlight .o {
  color: #859900;
} /* Operator */
.highlight .x {
  color: #cb4b16;
} /* Other */
.highlight .p {
  color: #586e75;
} /* Punctuation */
.highlight .cm {
  color: #93a1a1;
} /* Comment.Multiline */
.highlight .cp {
  color: #859900;
} /* Comment.Preproc */
.highlight .c1 {
  color: #93a1a1;
} /* Comment.Single */
.highlight .cs {
  color: #859900;
} /* Comment.Special */
.highlight .gd {
  color: #2aa198;
} /* Generic.Deleted */
.highlight .ge {
  color: #586e75;
  font-style: italic;
} /* Generic.Emph */
.highlight .gr {
  color: #dc322f;
} /* Generic.Error */
.highlight .gh {
  color: #cb4b16;
} /* Generic.Heading */
.highlight .gi {
  color: #859900;
} /* Generic.Inserted */
.highlight .go {
  color: #586e75;
} /* Generic.Output */
.highlight .gp {
  color: #586e75;
} /* Generic.Prompt */
.highlight .gs {
  color: #586e75;
  font-weight: bold;
} /* Generic.Strong */
.highlight .gu {
  color: #cb4b16;
} /* Generic.Subheading */
.highlight .gt {
  color: #586e75;
} /* Generic.Traceback */
.highlight .kc {
  color: #cb4b16;
} /* Keyword.Constant */
.highlight .kd {
  color: #22b3eb;
} /* Keyword.Declaration */
.highlight .kn {
  color: #859900;
} /* Keyword.Namespace */
.highlight .kp {
  color: #859900;
} /* Keyword.Pseudo */
.highlight .kr {
  color: #22b3eb;
} /* Keyword.Reserved */
.highlight .kt {
  color: #dc322f;
} /* Keyword.Type */
.highlight .ld {
  color: #586e75;
} /* Literal.Date */
.highlight .m {
  color: #2aa198;
} /* Literal.Number */
.highlight .s {
  color: #2aa198;
} /* Literal.String */
.highlight .na {
  color: #586e75;
} /* Name.Attribute */
.highlight .nb {
  color: #B58900;
} /* Name.Builtin */
.highlight .nc {
  color: #22b3eb;
} /* Name.Class */
.highlight .no {
  color: #cb4b16;
} /* Name.Constant */
.highlight .nd {
  color: #22b3eb;
} /* Name.Decorator */
.highlight .ni {
  color: #cb4b16;
} /* Name.Entity */
.highlight .ne {
  color: #cb4b16;
} /* Name.Exception */
.highlight .nf {
  color: #22b3eb;
} /* Name.Function */
.highlight .nl {
  color: #586e75;
} /* Name.Label */
.highlight .nn {
  color: #586e75;
} /* Name.Namespace */
.highlight .nx {
  color: #586e75;
} /* Name.Other */
.highlight .py {
  color: #586e75;
} /* Name.Property */
.highlight .nt {
  color: #22b3eb;
} /* Name.Tag */
.highlight .nv {
  color: #22b3eb;
} /* Name.Variable */
.highlight .ow {
  color: #859900;
} /* Operator.Word */
.highlight .w {
  color: #586e75;
} /* Text.Whitespace */
.highlight .mf {
  color: #2aa198;
} /* Literal.Number.Float */
.highlight .mh {
  color: #2aa198;
} /* Literal.Number.Hex */
.highlight .mi {
  color: #2aa198;
} /* Literal.Number.Integer */
.highlight .mo {
  color: #2aa198;
} /* Literal.Number.Oct */
.highlight .sb {
  color: #93a1a1;
} /* Literal.String.Backtick */
.highlight .sc {
  color: #2aa198;
} /* Literal.String.Char */
.highlight .sd {
  color: #586e75;
} /* Literal.String.Doc */
.highlight .s2 {
  color: #2aa198;
} /* Literal.String.Double */
.highlight .se {
  color: #cb4b16;
} /* Literal.String.Escape */
.highlight .sh {
  color: #586e75;
} /* Literal.String.Heredoc */
.highlight .si {
  color: #2aa198;
} /* Literal.String.Interpol */
.highlight .sx {
  color: #2aa198;
} /* Literal.String.Other */
.highlight .sr {
  color: #dc322f;
} /* Literal.String.Regex */
.highlight .s1 {
  color: #2aa198;
} /* Literal.String.Single */
.highlight .ss {
  color: #2aa198;
} /* Literal.String.Symbol */
.highlight .bp {
  color: #22b3eb;
} /* Name.Builtin.Pseudo */
.highlight .vc {
  color: #22b3eb;
} /* Name.Variable.Class */
.highlight .vg {
  color: #22b3eb;
} /* Name.Variable.Global */
.highlight .vi {
  color: #22b3eb;
} /* Name.Variable.Instance */
.highlight .il {
  color: #2aa198;
} /* Literal.Number.Integer.Long */
/* ==========================================================================
   Forms
   ========================================================================== */
form {
  margin: 0 0 5px 0;
}
form fieldset {
  margin-bottom: 5px;
  padding: 0;
  border-width: 0;
}
form legend {
  display: block;
  width: 100%;
  margin-bottom: 10px;
  *margin-left: -7px;
  padding: 0;
  color: rgb(73.2, 78, 81.6);
  border: 0;
  border-bottom: 1px solid #cccccc;
  white-space: normal;
}
form p {
  margin-bottom: 5px/2;
}
form ul {
  list-style-type: none;
  margin: 0 0 5px 0;
  padding: 0;
}
form br {
  display: none;
}

label,
input,
button,
select,
textarea {
  vertical-align: baseline;
  *vertical-align: middle;
}

input,
button,
select,
textarea {
  box-sizing: border-box;
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
}

label {
  display: block;
  margin-bottom: 0.25em;
  color: rgb(73.2, 78, 81.6);
  cursor: pointer;
}
label small {
  font-size: 0.75em;
}
label input,
label textarea,
label select {
  display: block;
}

input,
textarea,
select {
  display: inline-block;
  width: 100%;
  padding: 0.25em;
  margin-bottom: 0.5em;
  color: rgb(73.2, 78, 81.6);
  background-color: #fff;
  border: 1px solid #cccccc;
  border-radius: 4px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.125);
}
input:hover,
textarea:hover,
select:hover {
  border-color: rgb(142.5, 156.5, 175);
}

.input-mini {
  width: 60px;
}

.input-small {
  width: 90px;
}

input[type=image],
input[type=checkbox],
input[type=radio] {
  width: auto;
  height: auto;
  padding: 0;
  margin: 3px 0;
  *margin-top: 0;
  line-height: normal;
  cursor: pointer;
  border-radius: 0;
  border: 0 \9 ;
}

input[type=checkbox],
input[type=radio] {
  box-sizing: border-box;
  padding: 0;
  *width: 13px;
  *height: 13px;
}

input[type=image] {
  border: 0;
  box-shadow: none;
}

input[type=file] {
  width: auto;
  padding: initial;
  line-height: initial;
  border: initial;
  background-color: transparent;
  background-color: initial;
  box-shadow: none;
}

input[type=button],
input[type=reset],
input[type=submit] {
  width: auto;
  height: auto;
  cursor: pointer;
  *overflow: visible;
}

select,
input[type=file] {
  *margin-top: 4px;
}

select {
  width: auto;
  background-color: #fff;
}

select[multiple],
select[size] {
  height: auto;
}

textarea {
  resize: vertical;
  height: auto;
  overflow: auto;
  vertical-align: top;
}

input[type=hidden] {
  display: none;
}

.form {
  position: relative;
}

.radio,
.checkbox {
  padding-left: 18px;
  font-weight: normal;
}

.radio input[type=radio],
.checkbox input[type=checkbox] {
  float: left;
  margin-left: -18px;
}

.radio.inline,
.checkbox.inline {
  display: inline-block;
  padding-top: 5px;
  margin-bottom: 0;
  vertical-align: middle;
}

.radio.inline + .radio.inline,
.checkbox.inline + .checkbox.inline {
  margin-left: 10px;
}

/*
   Disabled state
   ========================================================================== */
input[disabled],
select[disabled],
textarea[disabled],
input[readonly],
select[readonly],
textarea[readonly] {
  opacity: 0.5;
  cursor: not-allowed;
}

/*
   Focus & active state
   ========================================================================== */
input:focus,
textarea:focus {
  border-color: #1e3a5f;
  outline: 0;
  outline: thin dotted \9 ;
}

input[type=file]:focus,
input[type=radio]:focus,
input[type=checkbox]:focus,
select:focus {
  box-shadow: none;
}

/*
   Help text
   ========================================================================== */
.help-block,
.help-inline {
  color: #2e8ca8;
}

.help-block {
  display: block;
  margin-bottom: 1em;
  line-height: 1em;
}

.help-inline {
  display: inline-block;
  vertical-align: middle;
  padding-left: 5px;
}

/*
   .form-inline
   ========================================================================== */
.form-inline input,
.form-inline textarea,
.form-inline select {
  display: inline-block;
  margin-bottom: 0;
}

.form-inline label {
  display: inline-block;
}

.form-inline .radio,
.form-inline .checkbox,
.form-inline .radio {
  padding-left: 0;
  margin-bottom: 0;
  vertical-align: middle;
}

.form-inline .radio input[type=radio],
.form-inline .checkbox input[type=checkbox] {
  float: left;
  margin-left: 0;
  margin-right: 3px;
}

/*
   .form-search
   ========================================================================== */
.form-search input,
.form-search textarea,
.form-search select {
  display: inline-block;
  margin-bottom: 0;
}

.form-search .search-query {
  padding-left: 14px;
  padding-right: 14px;
  margin-bottom: 0;
  border-radius: 14px;
}

.form-search label {
  display: inline-block;
}

.form-search .radio,
.form-search .checkbox,
.form-inline .radio {
  padding-left: 0;
  margin-bottom: 0;
  vertical-align: middle;
}

.form-search .radio input[type=radio],
.form-search .checkbox input[type=checkbox] {
  float: left;
  margin-left: 0;
  margin-right: 3px;
}

/*
   .form--loading
   ========================================================================== */
.form--loading:before {
  content: "";
}

.form--loading .form__spinner {
  display: block;
}

.form:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.7);
  z-index: 10;
}

.form__spinner {
  display: none;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 11;
}

/*
   Google search form
   ========================================================================== */
#goog-fixurl ul {
  list-style: none;
  margin-left: 0;
  padding-left: 0;
}
#goog-fixurl ul li {
  list-style-type: none;
}

#goog-wm-qt {
  width: auto;
  margin-right: 10px;
  margin-bottom: 20px;
  padding: 8px 20px;
  display: inline-block;
  font-size: 0.75em;
  background-color: #fff;
  color: #000;
  border-width: 2px !important;
  border-style: solid !important;
  border-color: rgb(127.5, 127.5, 127.5);
  border-radius: 4px;
}

/* ==========================================================================
   SINGLE PAGE/POST
   ========================================================================== */
#main:after {
  content: " ";
  display: block;
  clear: both;
}
#main {
  max-width: 925px;
  margin-left: auto;
  margin-right: auto;
  clear: both;
}
#main::after {
  clear: both;
  content: "";
  display: table;
}
#main {
  margin-top: 2em;
  padding-left: 1em;
  padding-right: 1em;
  animation: intro 0.3s both;
  animation-delay: 0.35s;
}
@media (min-width: 80em) {
  #main {
    max-width: 1280px;
  }
}

@media (min-width: 57.8125em) {
  .page {
    width: 83.0508474576%;
    float: right;
    margin-right: 0;
    padding-left: 4.2372881356%;
    padding-right: 16.9491525424%;
  }
}
.page .page__inner-wrap {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
}
.page .page__inner-wrap .page__content,
.page .page__inner-wrap .page__meta,
.page .page__inner-wrap .comment__date,
.page .page__inner-wrap .page__share {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
}

.page__title {
  margin-top: 0;
  line-height: 1;
}
.page__title + .page__meta, .page__title + .comment__date {
  margin-top: -0.5em;
}

.page__lead {
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
  font-size: 1.25em;
}

.page__content h2 {
  padding-bottom: 0.5em;
  border-bottom: 1px solid rgb(241.7, 242.5, 243.1);
}
.page__content p, .page__content li, .page__content dl {
  font-size: 1em;
}
.page__content {
  /* paragraph indents */
}
.page__content p {
  margin: 0 0 1.3em;
  /* sibling indentation*/
}
.page__content a {
  text-decoration: underline;
}
.page__content a:hover {
  text-decoration: underline;
}
.page__content a:hover img {
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
}
.page__content dt {
  margin-top: 1em;
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
  font-weight: bold;
}
.page__content dd {
  margin-left: 1em;
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
  font-size: 0.75em;
}
.page__content .small {
  font-size: 0.75em;
}
.page__content {
  /* blockquote citations */
}
.page__content blockquote + .small {
  margin-top: -1.5em;
  padding-left: 1.25rem;
}

.page__hero {
  position: relative;
  margin-bottom: 2em;
  clear: both;
}
.page__hero::after {
  clear: both;
  content: "";
  display: table;
}
.page__hero {
  animation: intro 0.3s both;
  animation-delay: 0.25s;
}
.page__hero--overlay {
  position: relative;
  margin-bottom: 2em;
  padding: 3em 0;
  clear: both;
}
.page__hero--overlay::after {
  clear: both;
  content: "";
  display: table;
}
.page__hero--overlay {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  animation: intro 0.3s both;
  animation-delay: 0.25s;
}
.page__hero--overlay a {
  color: #fff;
}
.page__hero--overlay .wrapper {
  padding-left: 1em;
  padding-right: 1em;
}
@media (min-width: 80em) {
  .page__hero--overlay .wrapper {
    max-width: 1280px;
  }
}
.page__hero--overlay .page__title,
.page__hero--overlay .page__meta,
.page__hero--overlay .comment__date,
.page__hero--overlay .page__lead,
.page__hero--overlay .btn,
.page__hero--overlay #goog-wm-sb {
  color: #fff;
  text-shadow: 1px 1px 4px rgba(0, 0, 0, 0.5);
}
.page__hero--overlay .page__lead {
  max-width: 768px;
}
.page__hero--overlay .page__title {
  font-size: 1.953em;
}
@media (min-width: 37.5em) {
  .page__hero--overlay .page__title {
    font-size: 2.441em;
  }
}

.page__hero-image {
  width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic;
}

.page__hero-caption {
  position: absolute;
  bottom: 0;
  right: 0;
  margin: 0 auto;
  padding: 2px 5px;
  color: #fff;
  font-family: Georgia, Times, serif;
  font-size: 0.6875em;
  background: #000;
  text-align: right;
  z-index: 5;
  opacity: 0.5;
  border-radius: 4px 0 4px 0;
}
@media (min-width: 57.8125em) {
  .page__hero-caption {
    padding: 5px 10px;
  }
}
.page__hero-caption a {
  color: #fff;
  text-decoration: none;
}

/*
   Social sharing
   ========================================================================== */
.page__share {
  margin-top: 2em;
  padding-top: 1em;
  border-top: 1px solid rgb(241.7, 242.5, 243.1);
}
@media (max-width: 37.5em) {
  .page__share .btn span, .page__share #goog-wm-sb span {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
  }
}

.page__share-title {
  margin-bottom: 10px;
  font-size: 0.75em;
  text-transform: uppercase;
}

/*
   Page meta
   ========================================================================== */
.page__meta, .comment__date {
  margin-top: 2em;
  color: rgb(155.25, 161.25, 165.75);
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
  font-size: 0.75em;
}
.page__meta p, .comment__date p {
  margin: 0;
}
.page__meta a, .comment__date a {
  color: inherit;
}

.page__meta-title {
  margin-bottom: 10px;
  font-size: 0.75em;
  text-transform: uppercase;
}

/*
   Page taxonomy
   ========================================================================== */
.page__taxonomy .sep {
  display: none;
}
.page__taxonomy strong {
  margin-right: 10px;
}

.page__taxonomy-item {
  display: inline-block;
  margin-right: 5px;
  margin-bottom: 8px;
  padding: 5px 10px;
  text-decoration: none;
  border: 1px solid rgb(188.5, 192.5, 195.5);
  border-radius: 4px;
}
.page__taxonomy-item:hover {
  text-decoration: none;
  color: rgb(34.5, 105, 126);
}

/*
   Comments
   ========================================================================== */
.page__comments {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
}

.page__comments-title {
  margin-top: 2rem;
  margin-bottom: 10px;
  padding-top: 2rem;
  font-size: 0.75em;
  border-top: 1px solid rgb(241.7, 242.5, 243.1);
  text-transform: uppercase;
}

.page__comments-form {
  padding: 1em;
  background: rgb(241.7, 242.5, 243.1);
  transition: all 0.2s ease-in-out;
}
.page__comments-form.disabled input,
.page__comments-form.disabled button,
.page__comments-form.disabled textarea,
.page__comments-form.disabled label {
  pointer-events: none;
  cursor: not-allowed;
  filter: alpha(opacity=65);
  box-shadow: none;
  opacity: 0.65;
}

.comment {
  clear: both;
}
.comment::after {
  clear: both;
  content: "";
  display: table;
}
.comment {
  margin: 1em 0;
}
.comment:not(:last-child) {
  border-bottom: 1px solid rgb(241.7, 242.5, 243.1);
}

.comment__avatar-wrapper {
  float: left;
  width: 60px;
  height: 60px;
}
@media (min-width: 57.8125em) {
  .comment__avatar-wrapper {
    width: 100px;
    height: 100px;
  }
}

.comment__avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
}
@media (min-width: 57.8125em) {
  .comment__avatar {
    width: 80px;
    height: 80px;
    padding: 5px;
    border: 1px solid rgb(241.7, 242.5, 243.1);
  }
}

.comment__content-wrapper {
  float: right;
  width: calc(100% - 60px);
}
@media (min-width: 57.8125em) {
  .comment__content-wrapper {
    width: calc(100% - 100px);
  }
}

.comment__author {
  margin: 0;
}
.comment__author a {
  text-decoration: none;
}

.comment__date {
  margin: 0;
}
.comment__date a {
  text-decoration: none;
}

/*
   Related
   ========================================================================== */
.page__related {
  margin-top: 2em;
  padding-top: 1em;
  border-top: 1px solid rgb(241.7, 242.5, 243.1);
  clear: both;
}
.page__related::after {
  clear: both;
  content: "";
  display: table;
}
.page__related {
  float: left;
}
@media (min-width: 57.8125em) {
  .page__related {
    margin-left: 21.186440678%;
  }
}
.page__related a {
  color: inherit;
  text-decoration: none;
}

.page__related-title {
  margin-bottom: 10px;
  font-size: 0.75em;
  text-transform: uppercase;
}

/* ==========================================================================
   ARCHIVE
   ========================================================================== */
.archive {
  margin-bottom: 2em;
}
@media (min-width: 48em) {
  .archive {
    width: 100%;
    float: left;
    margin-left: 0;
    margin-right: 0;
  }
}
@media (min-width: 57.8125em) {
  .archive {
    width: 83.0508474576%;
    float: right;
    margin-right: 0;
    padding-left: 4.2372881356%;
  }
}
.archive a {
  text-decoration: underline;
}
.archive a:hover {
  text-decoration: underline;
}
.archive a:hover img {
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
}

.archive__subtitle {
  margin: 1.414em 0 0;
  padding-bottom: 0.5em;
  font-size: 1em;
  color: rgb(155.25, 161.25, 165.75);
  border-bottom: 1px solid rgb(241.7, 242.5, 243.1);
}
.archive__subtitle + .list__item .archive__item-title {
  margin-top: 0.5em;
}

.archive__item-title {
  margin-bottom: 0.25em;
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
}
.archive__item-title a + a {
  opacity: 0.5;
}

/* remove border*/
.page__content .archive__item-title {
  margin-top: 1em;
  border-bottom: none;
}

.archive__item-excerpt {
  margin-top: 0;
  font-size: 0.75em;
}
.archive__item-excerpt + p {
  text-indent: 0;
}

.archive__item-teaser {
  border-radius: 4px;
  overflow: hidden;
}
.archive__item-teaser img {
  width: 100%;
}

.archive__item:hover .archive__item-teaser {
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
}
.archive__item:hover .archive__item-title {
  text-decoration: underline;
}

/*
   List view
   ========================================================================== */
@media (min-width: 48em) {
  .list__item {
    padding-right: 0px;
  }
}
@media (min-width: 57.8125em) {
  .list__item {
    padding-right: 0px;
  }
}
@media (min-width: 80em) {
  .list__item {
    padding-right: 0px;
  }
}
.list__item .page__meta, .list__item .comment__date {
  margin: 0 0 4px;
}

/*
   Grid view
   ========================================================================== */
.grid__item {
  margin-bottom: 2em;
}
.grid__item .page__meta, .grid__item .comment__date {
  margin: 0 0 4px;
}
.grid__item .archive__item-title {
  margin-top: 0.5em;
  font-size: 1em;
}
.grid__item .archive__item-excerpt {
  display: none;
}
@media (min-width: 37.5em) {
  .grid__item {
    width: 48.9795918367%;
    float: left;
  }
  .grid__item:nth-child(2n+1) {
    margin-left: 0;
    margin-right: -100%;
    clear: both;
    margin-left: 0;
  }
  .grid__item:nth-child(2n+2) {
    margin-left: 51.0204081633%;
    margin-right: -100%;
    clear: none;
  }
  .grid__item .archive__item-teaser {
    max-height: 200px;
  }
}
@media (min-width: 48em) {
  .grid__item {
    margin-left: 0; /* reset before mixin does its thing*/
    margin-right: 0; /* reset before mixin does its thing*/
    width: 23.4693877551%;
    float: left;
  }
  .grid__item:nth-child(4n+1) {
    margin-left: 0;
    margin-right: -100%;
    clear: both;
    margin-left: 0;
  }
  .grid__item:nth-child(4n+2) {
    margin-left: 25.5102040816%;
    margin-right: -100%;
    clear: none;
  }
  .grid__item:nth-child(4n+3) {
    margin-left: 51.0204081633%;
    margin-right: -100%;
    clear: none;
  }
  .grid__item:nth-child(4n+4) {
    margin-left: 76.5306122449%;
    margin-right: -100%;
    clear: none;
  }
  .grid__item .archive__item-teaser {
    max-height: 120px;
  }
  .grid__item .archive__item-excerpt {
    display: block;
    font-size: 0.75em;
  }
}

/*
   Features
   ========================================================================== */
.feature__wrapper {
  clear: both;
}
.feature__wrapper::after {
  clear: both;
  content: "";
  display: table;
}
.feature__wrapper {
  margin-bottom: 2em;
  border-bottom: 1px solid rgb(241.7, 242.5, 243.1);
}

.feature__item {
  margin-bottom: 2em;
  font-size: 1.25rem;
}
@media (min-width: 37.5em) {
  .feature__item {
    margin-bottom: 0;
    width: 32.2033898305%;
    float: left;
  }
  .feature__item:nth-child(3n+1) {
    margin-left: 0;
    margin-right: -100%;
    clear: both;
    margin-left: 0;
  }
  .feature__item:nth-child(3n+2) {
    margin-left: 33.8983050847%;
    margin-right: -100%;
    clear: none;
  }
  .feature__item:nth-child(3n+3) {
    margin-left: 67.7966101695%;
    margin-right: -100%;
    clear: none;
  }
  .feature__item .feature__item-teaser {
    max-height: 200px;
    overflow: hidden;
  }
}
.feature__item--left {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  font-size: 1.25rem;
}
.feature__item--left .archive__item-teaser {
  margin-bottom: 2em;
}
@media (min-width: 37.5em) {
  .feature__item--left .archive__item-teaser {
    width: 40.6779661017%;
    float: left;
    margin-right: 1.6949152542%;
  }
  .feature__item--left .archive__item-body {
    width: 57.6271186441%;
    float: right;
    margin-right: 0;
    padding-left: 4.2372881356%;
    padding-right: 8.4745762712%;
  }
}
.feature__item--right {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  font-size: 1.25rem;
}
.feature__item--right .archive__item-teaser {
  margin-bottom: 2em;
}
@media (min-width: 37.5em) {
  .feature__item--right {
    text-align: right;
  }
  .feature__item--right .archive__item-teaser {
    width: 40.6779661017%;
    float: right;
    margin-left: 1.6949152542%;
  }
  .feature__item--right .archive__item-body {
    width: 57.6271186441%;
    float: left;
    margin-left: 0;
    padding-left: 4.2372881356%;
    padding-right: 8.4745762712%;
  }
}
.feature__item--center {
  clear: both;
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  font-size: 1.25rem;
}
.feature__item--center .archive__item-teaser {
  margin-bottom: 2em;
}
@media (min-width: 37.5em) {
  .feature__item--center {
    text-align: center;
  }
  .feature__item--center .archive__item-teaser {
    margin: 0 auto;
    width: 40.6779661017%;
  }
  .feature__item--center .archive__item-body {
    margin: 0 auto;
    width: 57.6271186441%;
  }
}

/* ==========================================================================
   SIDEBAR
   ========================================================================== */
/*
   Default
   ========================================================================== */
.sidebar {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  clear: both;
}
.sidebar::after {
  clear: both;
  content: "";
  display: table;
}
.sidebar {
  margin-bottom: 1em;
}
@media (min-width: 57.8125em) {
  .sidebar {
    width: 15.2542372881%;
    float: left;
    margin-right: 1.6949152542%;
    opacity: 1;
    -webkit-transition: opacity 0.2s ease-in-out;
    transition: opacity 0.2s ease-in-out;
  }
  .sidebar:hover {
    opacity: 1;
  }
}
@media (min-width: 80em) {
  .sidebar {
    padding-right: 0;
  }
}
.sidebar h2, .sidebar h3, .sidebar h4, .sidebar h5, .sidebar h6 {
  margin-bottom: 0;
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
}
.sidebar h3, .sidebar h4 {
  font-size: 1em;
}
.sidebar p, .sidebar li {
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
  font-size: 0.75em;
  line-height: 1.5;
}
.sidebar img {
  width: 100%;
}

.sidebar__right {
  margin-bottom: 1em;
}
@media (min-width: 57.8125em) {
  .sidebar__right {
    position: relative;
    float: right;
    width: 0px;
    margin-left: 2.5423728814%;
    z-index: 10;
  }
}
@media (min-width: 80em) {
  .sidebar__right {
    width: 0px;
  }
}

/*
   Author profile and links
   ========================================================================== */
.author__avatar {
  display: table-cell;
  vertical-align: top;
  width: 36px;
}
@media (min-width: 57.8125em) {
  .author__avatar {
    display: block;
    width: auto;
    height: auto;
  }
}
.author__avatar img {
  max-width: 175px;
  border-radius: 50%;
}
@media (min-width: 57.8125em) {
  .author__avatar img {
    padding: 5px;
    border: 1px solid rgb(241.7, 242.5, 243.1);
  }
}

.author__content {
  display: table-cell;
  vertical-align: top;
  padding-left: 15px;
  padding-right: 25px;
  line-height: 1;
}
@media (min-width: 57.8125em) {
  .author__content {
    display: block;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }
}

.author__name {
  margin: 0;
}
@media (min-width: 57.8125em) {
  .author__name {
    margin-top: 10px;
    margin-bottom: 10px;
  }
}

.sidebar .author__name {
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
  font-size: 1em;
}

.author__bio {
  margin: 0;
}
@media (min-width: 57.8125em) {
  .author__bio {
    margin-top: 10px;
    margin-bottom: 20px;
  }
}

.author__urls-wrapper {
  position: relative;
  display: table-cell;
  vertical-align: middle;
  font-family: -apple-system, ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif;
  z-index: 10;
  position: relative;
  cursor: pointer;
}
.author__urls-wrapper li:last-child a {
  margin-bottom: 0;
}
@media (min-width: 57.8125em) {
  .author__urls-wrapper {
    display: block;
  }
}
.author__urls-wrapper button {
  margin-bottom: 0;
}
@media (min-width: 57.8125em) {
  .author__urls-wrapper button {
    display: none;
  }
}

.author__urls {
  display: none;
  position: absolute;
  right: 0;
  margin-top: 15px;
  padding: 10px;
  list-style-type: none;
  border: 1px solid rgb(241.7, 242.5, 243.1);
  border-radius: 4px;
  background: #fff;
  z-index: -1;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
  cursor: default;
}
@media (min-width: 57.8125em) {
  .author__urls {
    display: block;
    position: relative;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
  }
}
.author__urls:before {
  display: block;
  content: "";
  position: absolute;
  top: -11px;
  left: calc(50% - 10px);
  width: 0;
  border-style: solid;
  border-width: 0 10px 10px;
  border-color: rgb(241.7, 242.5, 243.1) transparent;
  z-index: 0;
}
@media (min-width: 57.8125em) {
  .author__urls:before {
    display: none;
  }
}
.author__urls:after {
  display: block;
  content: "";
  position: absolute;
  top: -10px;
  left: calc(50% - 10px);
  width: 0;
  border-style: solid;
  border-width: 0 10px 10px;
  border-color: #fff transparent;
  z-index: 1;
}
@media (min-width: 57.8125em) {
  .author__urls:after {
    display: none;
  }
}
.author__urls li {
  white-space: nowrap;
}
.author__urls a {
  display: block;
  margin-bottom: 5px;
  padding-right: 5px;
  padding-top: 2px;
  padding-bottom: 2px;
  color: inherit;
  font-size: 1em;
  text-decoration: none;
}
.author__urls a:hover {
  text-decoration: underline;
}

/*!
 * Font Awesome Free 5.5.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
.fa,
.fas,
.far,
.fal,
.fab {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
}

.fa-lg {
  font-size: 1.3333333333em;
  line-height: 0.75em;
  vertical-align: -0.0667em;
}

.fa-xs {
  font-size: 0.75em;
}

.fa-sm {
  font-size: 0.875em;
}

.fa-1x {
  font-size: 1em;
}

.fa-2x {
  font-size: 2em;
}

.fa-3x {
  font-size: 3em;
}

.fa-4x {
  font-size: 4em;
}

.fa-5x {
  font-size: 5em;
}

.fa-6x {
  font-size: 6em;
}

.fa-7x {
  font-size: 7em;
}

.fa-8x {
  font-size: 8em;
}

.fa-9x {
  font-size: 9em;
}

.fa-10x {
  font-size: 10em;
}

.fa-fw {
  text-align: center;
  width: 1.25em;
}

.fa-ul {
  list-style-type: none;
  margin-left: 2.5em;
  padding-left: 0;
}
.fa-ul > li {
  position: relative;
}

.fa-li {
  left: -2em;
  position: absolute;
  text-align: center;
  width: 2em;
  line-height: inherit;
}

.fa-border {
  border: solid 0.08em #eee;
  border-radius: 0.1em;
  padding: 0.2em 0.25em 0.15em;
}

.fa-pull-left {
  float: left;
}

.fa-pull-right {
  float: right;
}

.fa.fa-pull-left,
.fas.fa-pull-left,
.far.fa-pull-left,
.fal.fa-pull-left,
.fab.fa-pull-left {
  margin-right: 0.3em;
}
.fa.fa-pull-right,
.fas.fa-pull-right,
.far.fa-pull-right,
.fal.fa-pull-right,
.fab.fa-pull-right {
  margin-left: 0.3em;
}

.fa-spin {
  animation: fa-spin 2s infinite linear;
}

.fa-pulse {
  animation: fa-spin 1s infinite steps(8);
}

@keyframes fa-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.fa-rotate-90 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
  transform: rotate(90deg);
}

.fa-rotate-180 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
  transform: rotate(180deg);
}

.fa-rotate-270 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
  transform: rotate(270deg);
}

.fa-flip-horizontal {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
  transform: scale(-1, 1);
}

.fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
  transform: scale(1, -1);
}

.fa-flip-horizontal.fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
  transform: scale(-1, -1);
}

:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical {
  filter: none;
}

.fa-stack {
  display: inline-block;
  height: 2em;
  line-height: 2em;
  position: relative;
  vertical-align: middle;
  width: 2.5em;
}

.fa-stack-1x,
.fa-stack-2x {
  left: 0;
  position: absolute;
  text-align: center;
  width: 100%;
}

.fa-stack-1x {
  line-height: inherit;
}

.fa-stack-2x {
  font-size: 2em;
}

.fa-inverse {
  color: #fff;
}

/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
readers do not read off random characters that represent icons */
.fa-500px:before {
  content: "\f26e";
}

.fa-accessible-icon:before {
  content: "\f368";
}

.fa-accusoft:before {
  content: "\f369";
}

.fa-acquisitions-incorporated:before {
  content: "\f6af";
}

.fa-ad:before {
  content: "\f641";
}

.fa-address-book:before {
  content: "\f2b9";
}

.fa-address-card:before {
  content: "\f2bb";
}

.fa-adjust:before {
  content: "\f042";
}

.fa-adn:before {
  content: "\f170";
}

.fa-adversal:before {
  content: "\f36a";
}

.fa-affiliatetheme:before {
  content: "\f36b";
}

.fa-air-freshener:before {
  content: "\f5d0";
}

.fa-algolia:before {
  content: "\f36c";
}

.fa-align-center:before {
  content: "\f037";
}

.fa-align-justify:before {
  content: "\f039";
}

.fa-align-left:before {
  content: "\f036";
}

.fa-align-right:before {
  content: "\f038";
}

.fa-alipay:before {
  content: "\f642";
}

.fa-allergies:before {
  content: "\f461";
}

.fa-amazon:before {
  content: "\f270";
}

.fa-amazon-pay:before {
  content: "\f42c";
}

.fa-ambulance:before {
  content: "\f0f9";
}

.fa-american-sign-language-interpreting:before {
  content: "\f2a3";
}

.fa-amilia:before {
  content: "\f36d";
}

.fa-anchor:before {
  content: "\f13d";
}

.fa-android:before {
  content: "\f17b";
}

.fa-angellist:before {
  content: "\f209";
}

.fa-angle-double-down:before {
  content: "\f103";
}

.fa-angle-double-left:before {
  content: "\f100";
}

.fa-angle-double-right:before {
  content: "\f101";
}

.fa-angle-double-up:before {
  content: "\f102";
}

.fa-angle-down:before {
  content: "\f107";
}

.fa-angle-left:before {
  content: "\f104";
}

.fa-angle-right:before {
  content: "\f105";
}

.fa-angle-up:before {
  content: "\f106";
}

.fa-angry:before {
  content: "\f556";
}

.fa-angrycreative:before {
  content: "\f36e";
}

.fa-angular:before {
  content: "\f420";
}

.fa-ankh:before {
  content: "\f644";
}

.fa-app-store:before {
  content: "\f36f";
}

.fa-app-store-ios:before {
  content: "\f370";
}

.fa-apper:before {
  content: "\f371";
}

.fa-apple:before {
  content: "\f179";
}

.fa-apple-alt:before {
  content: "\f5d1";
}

.fa-apple-pay:before {
  content: "\f415";
}

.fa-archive:before {
  content: "\f187";
}

.fa-archway:before {
  content: "\f557";
}

.fa-arrow-alt-circle-down:before {
  content: "\f358";
}

.fa-arrow-alt-circle-left:before {
  content: "\f359";
}

.fa-arrow-alt-circle-right:before {
  content: "\f35a";
}

.fa-arrow-alt-circle-up:before {
  content: "\f35b";
}

.fa-arrow-circle-down:before {
  content: "\f0ab";
}

.fa-arrow-circle-left:before {
  content: "\f0a8";
}

.fa-arrow-circle-right:before {
  content: "\f0a9";
}

.fa-arrow-circle-up:before {
  content: "\f0aa";
}

.fa-arrow-down:before {
  content: "\f063";
}

.fa-arrow-left:before {
  content: "\f060";
}

.fa-arrow-right:before {
  content: "\f061";
}

.fa-arrow-up:before {
  content: "\f062";
}

.fa-arrows-alt:before {
  content: "\f0b2";
}

.fa-arrows-alt-h:before {
  content: "\f337";
}

.fa-arrows-alt-v:before {
  content: "\f338";
}

.fa-assistive-listening-systems:before {
  content: "\f2a2";
}

.fa-asterisk:before {
  content: "\f069";
}

.fa-asymmetrik:before {
  content: "\f372";
}

.fa-at:before {
  content: "\f1fa";
}

.fa-atlas:before {
  content: "\f558";
}

.fa-atom:before {
  content: "\f5d2";
}

.fa-audible:before {
  content: "\f373";
}

.fa-audio-description:before {
  content: "\f29e";
}

.fa-autoprefixer:before {
  content: "\f41c";
}

.fa-avianex:before {
  content: "\f374";
}

.fa-aviato:before {
  content: "\f421";
}

.fa-award:before {
  content: "\f559";
}

.fa-aws:before {
  content: "\f375";
}

.fa-backspace:before {
  content: "\f55a";
}

.fa-backward:before {
  content: "\f04a";
}

.fa-balance-scale:before {
  content: "\f24e";
}

.fa-ban:before {
  content: "\f05e";
}

.fa-band-aid:before {
  content: "\f462";
}

.fa-bandcamp:before {
  content: "\f2d5";
}

.fa-barcode:before {
  content: "\f02a";
}

.fa-bars:before {
  content: "\f0c9";
}

.fa-baseball-ball:before {
  content: "\f433";
}

.fa-basketball-ball:before {
  content: "\f434";
}

.fa-bath:before {
  content: "\f2cd";
}

.fa-battery-empty:before {
  content: "\f244";
}

.fa-battery-full:before {
  content: "\f240";
}

.fa-battery-half:before {
  content: "\f242";
}

.fa-battery-quarter:before {
  content: "\f243";
}

.fa-battery-three-quarters:before {
  content: "\f241";
}

.fa-bed:before {
  content: "\f236";
}

.fa-beer:before {
  content: "\f0fc";
}

.fa-behance:before {
  content: "\f1b4";
}

.fa-behance-square:before {
  content: "\f1b5";
}

.fa-bell:before {
  content: "\f0f3";
}

.fa-bell-slash:before {
  content: "\f1f6";
}

.fa-bezier-curve:before {
  content: "\f55b";
}

.fa-bible:before {
  content: "\f647";
}

.fa-bicycle:before {
  content: "\f206";
}

.fa-bimobject:before {
  content: "\f378";
}

.fa-binoculars:before {
  content: "\f1e5";
}

.fa-birthday-cake:before {
  content: "\f1fd";
}

.fa-bitbucket:before {
  content: "\f171";
}

.fa-bitcoin:before {
  content: "\f379";
}

.fa-bity:before {
  content: "\f37a";
}

.fa-black-tie:before {
  content: "\f27e";
}

.fa-blackberry:before {
  content: "\f37b";
}

.fa-blender:before {
  content: "\f517";
}

.fa-blender-phone:before {
  content: "\f6b6";
}

.fa-blind:before {
  content: "\f29d";
}

.fa-blogger:before {
  content: "\f37c";
}

.fa-blogger-b:before {
  content: "\f37d";
}

.fa-bluetooth:before {
  content: "\f293";
}

.fa-bluetooth-b:before {
  content: "\f294";
}

.fa-bold:before {
  content: "\f032";
}

.fa-bolt:before {
  content: "\f0e7";
}

.fa-bomb:before {
  content: "\f1e2";
}

.fa-bone:before {
  content: "\f5d7";
}

.fa-bong:before {
  content: "\f55c";
}

.fa-book:before {
  content: "\f02d";
}

.fa-book-dead:before {
  content: "\f6b7";
}

.fa-book-open:before {
  content: "\f518";
}

.fa-book-reader:before {
  content: "\f5da";
}

.fa-bookmark:before {
  content: "\f02e";
}

.fa-bowling-ball:before {
  content: "\f436";
}

.fa-box:before {
  content: "\f466";
}

.fa-box-open:before {
  content: "\f49e";
}

.fa-boxes:before {
  content: "\f468";
}

.fa-braille:before {
  content: "\f2a1";
}

.fa-brain:before {
  content: "\f5dc";
}

.fa-briefcase:before {
  content: "\f0b1";
}

.fa-briefcase-medical:before {
  content: "\f469";
}

.fa-broadcast-tower:before {
  content: "\f519";
}

.fa-broom:before {
  content: "\f51a";
}

.fa-brush:before {
  content: "\f55d";
}

.fa-btc:before {
  content: "\f15a";
}

.fa-bug:before {
  content: "\f188";
}

.fa-building:before {
  content: "\f1ad";
}

.fa-bullhorn:before {
  content: "\f0a1";
}

.fa-bullseye:before {
  content: "\f140";
}

.fa-burn:before {
  content: "\f46a";
}

.fa-buromobelexperte:before {
  content: "\f37f";
}

.fa-bus:before {
  content: "\f207";
}

.fa-bus-alt:before {
  content: "\f55e";
}

.fa-business-time:before {
  content: "\f64a";
}

.fa-buysellads:before {
  content: "\f20d";
}

.fa-calculator:before {
  content: "\f1ec";
}

.fa-calendar:before {
  content: "\f133";
}

.fa-calendar-alt:before {
  content: "\f073";
}

.fa-calendar-check:before {
  content: "\f274";
}

.fa-calendar-minus:before {
  content: "\f272";
}

.fa-calendar-plus:before {
  content: "\f271";
}

.fa-calendar-times:before {
  content: "\f273";
}

.fa-camera:before {
  content: "\f030";
}

.fa-camera-retro:before {
  content: "\f083";
}

.fa-campground:before {
  content: "\f6bb";
}

.fa-cannabis:before {
  content: "\f55f";
}

.fa-capsules:before {
  content: "\f46b";
}

.fa-car:before {
  content: "\f1b9";
}

.fa-car-alt:before {
  content: "\f5de";
}

.fa-car-battery:before {
  content: "\f5df";
}

.fa-car-crash:before {
  content: "\f5e1";
}

.fa-car-side:before {
  content: "\f5e4";
}

.fa-caret-down:before {
  content: "\f0d7";
}

.fa-caret-left:before {
  content: "\f0d9";
}

.fa-caret-right:before {
  content: "\f0da";
}

.fa-caret-square-down:before {
  content: "\f150";
}

.fa-caret-square-left:before {
  content: "\f191";
}

.fa-caret-square-right:before {
  content: "\f152";
}

.fa-caret-square-up:before {
  content: "\f151";
}

.fa-caret-up:before {
  content: "\f0d8";
}

.fa-cart-arrow-down:before {
  content: "\f218";
}

.fa-cart-plus:before {
  content: "\f217";
}

.fa-cat:before {
  content: "\f6be";
}

.fa-cc-amazon-pay:before {
  content: "\f42d";
}

.fa-cc-amex:before {
  content: "\f1f3";
}

.fa-cc-apple-pay:before {
  content: "\f416";
}

.fa-cc-diners-club:before {
  content: "\f24c";
}

.fa-cc-discover:before {
  content: "\f1f2";
}

.fa-cc-jcb:before {
  content: "\f24b";
}

.fa-cc-mastercard:before {
  content: "\f1f1";
}

.fa-cc-paypal:before {
  content: "\f1f4";
}

.fa-cc-stripe:before {
  content: "\f1f5";
}

.fa-cc-visa:before {
  content: "\f1f0";
}

.fa-centercode:before {
  content: "\f380";
}

.fa-certificate:before {
  content: "\f0a3";
}

.fa-chair:before {
  content: "\f6c0";
}

.fa-chalkboard:before {
  content: "\f51b";
}

.fa-chalkboard-teacher:before {
  content: "\f51c";
}

.fa-charging-station:before {
  content: "\f5e7";
}

.fa-chart-area:before {
  content: "\f1fe";
}

.fa-chart-bar:before {
  content: "\f080";
}

.fa-chart-line:before {
  content: "\f201";
}

.fa-chart-pie:before {
  content: "\f200";
}

.fa-check:before {
  content: "\f00c";
}

.fa-check-circle:before {
  content: "\f058";
}

.fa-check-double:before {
  content: "\f560";
}

.fa-check-square:before {
  content: "\f14a";
}

.fa-chess:before {
  content: "\f439";
}

.fa-chess-bishop:before {
  content: "\f43a";
}

.fa-chess-board:before {
  content: "\f43c";
}

.fa-chess-king:before {
  content: "\f43f";
}

.fa-chess-knight:before {
  content: "\f441";
}

.fa-chess-pawn:before {
  content: "\f443";
}

.fa-chess-queen:before {
  content: "\f445";
}

.fa-chess-rook:before {
  content: "\f447";
}

.fa-chevron-circle-down:before {
  content: "\f13a";
}

.fa-chevron-circle-left:before {
  content: "\f137";
}

.fa-chevron-circle-right:before {
  content: "\f138";
}

.fa-chevron-circle-up:before {
  content: "\f139";
}

.fa-chevron-down:before {
  content: "\f078";
}

.fa-chevron-left:before {
  content: "\f053";
}

.fa-chevron-right:before {
  content: "\f054";
}

.fa-chevron-up:before {
  content: "\f077";
}

.fa-child:before {
  content: "\f1ae";
}

.fa-chrome:before {
  content: "\f268";
}

.fa-church:before {
  content: "\f51d";
}

.fa-circle:before {
  content: "\f111";
}

.fa-circle-notch:before {
  content: "\f1ce";
}

.fa-city:before {
  content: "\f64f";
}

.fa-clipboard:before {
  content: "\f328";
}

.fa-clipboard-check:before {
  content: "\f46c";
}

.fa-clipboard-list:before {
  content: "\f46d";
}

.fa-clock:before {
  content: "\f017";
}

.fa-clone:before {
  content: "\f24d";
}

.fa-closed-captioning:before {
  content: "\f20a";
}

.fa-cloud:before {
  content: "\f0c2";
}

.fa-cloud-download-alt:before {
  content: "\f381";
}

.fa-cloud-meatball:before {
  content: "\f73b";
}

.fa-cloud-moon:before {
  content: "\f6c3";
}

.fa-cloud-moon-rain:before {
  content: "\f73c";
}

.fa-cloud-rain:before {
  content: "\f73d";
}

.fa-cloud-showers-heavy:before {
  content: "\f740";
}

.fa-cloud-sun:before {
  content: "\f6c4";
}

.fa-cloud-sun-rain:before {
  content: "\f743";
}

.fa-cloud-upload-alt:before {
  content: "\f382";
}

.fa-cloudscale:before {
  content: "\f383";
}

.fa-cloudsmith:before {
  content: "\f384";
}

.fa-cloudversify:before {
  content: "\f385";
}

.fa-cocktail:before {
  content: "\f561";
}

.fa-code:before {
  content: "\f121";
}

.fa-code-branch:before {
  content: "\f126";
}

.fa-codepen:before {
  content: "\f1cb";
}

.fa-codiepie:before {
  content: "\f284";
}

.fa-coffee:before {
  content: "\f0f4";
}

.fa-cog:before {
  content: "\f013";
}

.fa-cogs:before {
  content: "\f085";
}

.fa-coins:before {
  content: "\f51e";
}

.fa-columns:before {
  content: "\f0db";
}

.fa-comment:before {
  content: "\f075";
}

.fa-comment-alt:before {
  content: "\f27a";
}

.fa-comment-dollar:before {
  content: "\f651";
}

.fa-comment-dots:before {
  content: "\f4ad";
}

.fa-comment-slash:before {
  content: "\f4b3";
}

.fa-comments:before {
  content: "\f086";
}

.fa-comments-dollar:before {
  content: "\f653";
}

.fa-compact-disc:before {
  content: "\f51f";
}

.fa-compass:before {
  content: "\f14e";
}

.fa-compress:before {
  content: "\f066";
}

.fa-concierge-bell:before {
  content: "\f562";
}

.fa-connectdevelop:before {
  content: "\f20e";
}

.fa-contao:before {
  content: "\f26d";
}

.fa-cookie:before {
  content: "\f563";
}

.fa-cookie-bite:before {
  content: "\f564";
}

.fa-copy:before {
  content: "\f0c5";
}

.fa-copyright:before {
  content: "\f1f9";
}

.fa-couch:before {
  content: "\f4b8";
}

.fa-cpanel:before {
  content: "\f388";
}

.fa-creative-commons:before {
  content: "\f25e";
}

.fa-creative-commons-by:before {
  content: "\f4e7";
}

.fa-creative-commons-nc:before {
  content: "\f4e8";
}

.fa-creative-commons-nc-eu:before {
  content: "\f4e9";
}

.fa-creative-commons-nc-jp:before {
  content: "\f4ea";
}

.fa-creative-commons-nd:before {
  content: "\f4eb";
}

.fa-creative-commons-pd:before {
  content: "\f4ec";
}

.fa-creative-commons-pd-alt:before {
  content: "\f4ed";
}

.fa-creative-commons-remix:before {
  content: "\f4ee";
}

.fa-creative-commons-sa:before {
  content: "\f4ef";
}

.fa-creative-commons-sampling:before {
  content: "\f4f0";
}

.fa-creative-commons-sampling-plus:before {
  content: "\f4f1";
}

.fa-creative-commons-share:before {
  content: "\f4f2";
}

.fa-creative-commons-zero:before {
  content: "\f4f3";
}

.fa-credit-card:before {
  content: "\f09d";
}

.fa-critical-role:before {
  content: "\f6c9";
}

.fa-crop:before {
  content: "\f125";
}

.fa-crop-alt:before {
  content: "\f565";
}

.fa-cross:before {
  content: "\f654";
}

.fa-crosshairs:before {
  content: "\f05b";
}

.fa-crow:before {
  content: "\f520";
}

.fa-crown:before {
  content: "\f521";
}

.fa-css3:before {
  content: "\f13c";
}

.fa-css3-alt:before {
  content: "\f38b";
}

.fa-cube:before {
  content: "\f1b2";
}

.fa-cubes:before {
  content: "\f1b3";
}

.fa-cut:before {
  content: "\f0c4";
}

.fa-cuttlefish:before {
  content: "\f38c";
}

.fa-d-and-d:before {
  content: "\f38d";
}

.fa-d-and-d-beyond:before {
  content: "\f6ca";
}

.fa-dashcube:before {
  content: "\f210";
}

.fa-database:before {
  content: "\f1c0";
}

.fa-deaf:before {
  content: "\f2a4";
}

.fa-delicious:before {
  content: "\f1a5";
}

.fa-democrat:before {
  content: "\f747";
}

.fa-deploydog:before {
  content: "\f38e";
}

.fa-deskpro:before {
  content: "\f38f";
}

.fa-desktop:before {
  content: "\f108";
}

.fa-dev:before {
  content: "\f6cc";
}

.fa-deviantart:before {
  content: "\f1bd";
}

.fa-dharmachakra:before {
  content: "\f655";
}

.fa-diagnoses:before {
  content: "\f470";
}

.fa-dice:before {
  content: "\f522";
}

.fa-dice-d20:before {
  content: "\f6cf";
}

.fa-dice-d6:before {
  content: "\f6d1";
}

.fa-dice-five:before {
  content: "\f523";
}

.fa-dice-four:before {
  content: "\f524";
}

.fa-dice-one:before {
  content: "\f525";
}

.fa-dice-six:before {
  content: "\f526";
}

.fa-dice-three:before {
  content: "\f527";
}

.fa-dice-two:before {
  content: "\f528";
}

.fa-digg:before {
  content: "\f1a6";
}

.fa-digital-ocean:before {
  content: "\f391";
}

.fa-digital-tachograph:before {
  content: "\f566";
}

.fa-directions:before {
  content: "\f5eb";
}

.fa-discord:before {
  content: "\f392";
}

.fa-discourse:before {
  content: "\f393";
}

.fa-divide:before {
  content: "\f529";
}

.fa-dizzy:before {
  content: "\f567";
}

.fa-dna:before {
  content: "\f471";
}

.fa-dochub:before {
  content: "\f394";
}

.fa-docker:before {
  content: "\f395";
}

.fa-dog:before {
  content: "\f6d3";
}

.fa-dollar-sign:before {
  content: "\f155";
}

.fa-dolly:before {
  content: "\f472";
}

.fa-dolly-flatbed:before {
  content: "\f474";
}

.fa-donate:before {
  content: "\f4b9";
}

.fa-door-closed:before {
  content: "\f52a";
}

.fa-door-open:before {
  content: "\f52b";
}

.fa-dot-circle:before {
  content: "\f192";
}

.fa-dove:before {
  content: "\f4ba";
}

.fa-download:before {
  content: "\f019";
}

.fa-draft2digital:before {
  content: "\f396";
}

.fa-drafting-compass:before {
  content: "\f568";
}

.fa-dragon:before {
  content: "\f6d5";
}

.fa-draw-polygon:before {
  content: "\f5ee";
}

.fa-dribbble:before {
  content: "\f17d";
}

.fa-dribbble-square:before {
  content: "\f397";
}

.fa-dropbox:before {
  content: "\f16b";
}

.fa-drum:before {
  content: "\f569";
}

.fa-drum-steelpan:before {
  content: "\f56a";
}

.fa-drumstick-bite:before {
  content: "\f6d7";
}

.fa-drupal:before {
  content: "\f1a9";
}

.fa-dumbbell:before {
  content: "\f44b";
}

.fa-dungeon:before {
  content: "\f6d9";
}

.fa-dyalog:before {
  content: "\f399";
}

.fa-earlybirds:before {
  content: "\f39a";
}

.fa-ebay:before {
  content: "\f4f4";
}

.fa-edge:before {
  content: "\f282";
}

.fa-edit:before {
  content: "\f044";
}

.fa-eject:before {
  content: "\f052";
}

.fa-elementor:before {
  content: "\f430";
}

.fa-ellipsis-h:before {
  content: "\f141";
}

.fa-ellipsis-v:before {
  content: "\f142";
}

.fa-ello:before {
  content: "\f5f1";
}

.fa-ember:before {
  content: "\f423";
}

.fa-empire:before {
  content: "\f1d1";
}

.fa-envelope:before {
  content: "\f0e0";
}

.fa-envelope-open:before {
  content: "\f2b6";
}

.fa-envelope-open-text:before {
  content: "\f658";
}

.fa-envelope-square:before {
  content: "\f199";
}

.fa-envira:before {
  content: "\f299";
}

.fa-equals:before {
  content: "\f52c";
}

.fa-eraser:before {
  content: "\f12d";
}

.fa-erlang:before {
  content: "\f39d";
}

.fa-ethereum:before {
  content: "\f42e";
}

.fa-etsy:before {
  content: "\f2d7";
}

.fa-euro-sign:before {
  content: "\f153";
}

.fa-exchange-alt:before {
  content: "\f362";
}

.fa-exclamation:before {
  content: "\f12a";
}

.fa-exclamation-circle:before {
  content: "\f06a";
}

.fa-exclamation-triangle:before {
  content: "\f071";
}

.fa-expand:before {
  content: "\f065";
}

.fa-expand-arrows-alt:before {
  content: "\f31e";
}

.fa-expeditedssl:before {
  content: "\f23e";
}

.fa-external-link-alt:before {
  content: "\f35d";
}

.fa-external-link-square-alt:before {
  content: "\f360";
}

.fa-eye:before {
  content: "\f06e";
}

.fa-eye-dropper:before {
  content: "\f1fb";
}

.fa-eye-slash:before {
  content: "\f070";
}

.fa-facebook:before {
  content: "\f09a";
}

.fa-facebook-f:before {
  content: "\f39e";
}

.fa-facebook-messenger:before {
  content: "\f39f";
}

.fa-facebook-square:before {
  content: "\f082";
}

.fa-fantasy-flight-games:before {
  content: "\f6dc";
}

.fa-fast-backward:before {
  content: "\f049";
}

.fa-fast-forward:before {
  content: "\f050";
}

.fa-fax:before {
  content: "\f1ac";
}

.fa-feather:before {
  content: "\f52d";
}

.fa-feather-alt:before {
  content: "\f56b";
}

.fa-female:before {
  content: "\f182";
}

.fa-fighter-jet:before {
  content: "\f0fb";
}

.fa-file:before {
  content: "\f15b";
}

.fa-file-alt:before {
  content: "\f15c";
}

.fa-file-archive:before {
  content: "\f1c6";
}

.fa-file-audio:before {
  content: "\f1c7";
}

.fa-file-code:before {
  content: "\f1c9";
}

.fa-file-contract:before {
  content: "\f56c";
}

.fa-file-csv:before {
  content: "\f6dd";
}

.fa-file-download:before {
  content: "\f56d";
}

.fa-file-excel:before {
  content: "\f1c3";
}

.fa-file-export:before {
  content: "\f56e";
}

.fa-file-image:before {
  content: "\f1c5";
}

.fa-file-import:before {
  content: "\f56f";
}

.fa-file-invoice:before {
  content: "\f570";
}

.fa-file-invoice-dollar:before {
  content: "\f571";
}

.fa-file-medical:before {
  content: "\f477";
}

.fa-file-medical-alt:before {
  content: "\f478";
}

.fa-file-pdf:before {
  content: "\f1c1";
}

.fa-file-powerpoint:before {
  content: "\f1c4";
}

.fa-file-prescription:before {
  content: "\f572";
}

.fa-file-signature:before {
  content: "\f573";
}

.fa-file-upload:before {
  content: "\f574";
}

.fa-file-video:before {
  content: "\f1c8";
}

.fa-file-word:before {
  content: "\f1c2";
}

.fa-fill:before {
  content: "\f575";
}

.fa-fill-drip:before {
  content: "\f576";
}

.fa-film:before {
  content: "\f008";
}

.fa-filter:before {
  content: "\f0b0";
}

.fa-fingerprint:before {
  content: "\f577";
}

.fa-fire:before {
  content: "\f06d";
}

.fa-fire-extinguisher:before {
  content: "\f134";
}

.fa-firefox:before {
  content: "\f269";
}

.fa-first-aid:before {
  content: "\f479";
}

.fa-first-order:before {
  content: "\f2b0";
}

.fa-first-order-alt:before {
  content: "\f50a";
}

.fa-firstdraft:before {
  content: "\f3a1";
}

.fa-fish:before {
  content: "\f578";
}

.fa-fist-raised:before {
  content: "\f6de";
}

.fa-flag:before {
  content: "\f024";
}

.fa-flag-checkered:before {
  content: "\f11e";
}

.fa-flag-usa:before {
  content: "\f74d";
}

.fa-flask:before {
  content: "\f0c3";
}

.fa-flickr:before {
  content: "\f16e";
}

.fa-flipboard:before {
  content: "\f44d";
}

.fa-flushed:before {
  content: "\f579";
}

.fa-fly:before {
  content: "\f417";
}

.fa-folder:before {
  content: "\f07b";
}

.fa-folder-minus:before {
  content: "\f65d";
}

.fa-folder-open:before {
  content: "\f07c";
}

.fa-folder-plus:before {
  content: "\f65e";
}

.fa-font:before {
  content: "\f031";
}

.fa-font-awesome:before {
  content: "\f2b4";
}

.fa-font-awesome-alt:before {
  content: "\f35c";
}

.fa-font-awesome-flag:before {
  content: "\f425";
}

.fa-font-awesome-logo-full:before {
  content: "\f4e6";
}

.fa-fonticons:before {
  content: "\f280";
}

.fa-fonticons-fi:before {
  content: "\f3a2";
}

.fa-football-ball:before {
  content: "\f44e";
}

.fa-fort-awesome:before {
  content: "\f286";
}

.fa-fort-awesome-alt:before {
  content: "\f3a3";
}

.fa-forumbee:before {
  content: "\f211";
}

.fa-forward:before {
  content: "\f04e";
}

.fa-foursquare:before {
  content: "\f180";
}

.fa-free-code-camp:before {
  content: "\f2c5";
}

.fa-freebsd:before {
  content: "\f3a4";
}

.fa-frog:before {
  content: "\f52e";
}

.fa-frown:before {
  content: "\f119";
}

.fa-frown-open:before {
  content: "\f57a";
}

.fa-fulcrum:before {
  content: "\f50b";
}

.fa-funnel-dollar:before {
  content: "\f662";
}

.fa-futbol:before {
  content: "\f1e3";
}

.fa-galactic-republic:before {
  content: "\f50c";
}

.fa-galactic-senate:before {
  content: "\f50d";
}

.fa-gamepad:before {
  content: "\f11b";
}

.fa-gas-pump:before {
  content: "\f52f";
}

.fa-gavel:before {
  content: "\f0e3";
}

.fa-gem:before {
  content: "\f3a5";
}

.fa-genderless:before {
  content: "\f22d";
}

.fa-get-pocket:before {
  content: "\f265";
}

.fa-gg:before {
  content: "\f260";
}

.fa-gg-circle:before {
  content: "\f261";
}

.fa-ghost:before {
  content: "\f6e2";
}

.fa-gift:before {
  content: "\f06b";
}

.fa-git:before {
  content: "\f1d3";
}

.fa-git-square:before {
  content: "\f1d2";
}

.fa-github:before {
  content: "\f09b";
}

.fa-github-alt:before {
  content: "\f113";
}

.fa-github-square:before {
  content: "\f092";
}

.fa-gitkraken:before {
  content: "\f3a6";
}

.fa-gitlab:before {
  content: "\f296";
}

.fa-gitter:before {
  content: "\f426";
}

.fa-glass-martini:before {
  content: "\f000";
}

.fa-glass-martini-alt:before {
  content: "\f57b";
}

.fa-glasses:before {
  content: "\f530";
}

.fa-glide:before {
  content: "\f2a5";
}

.fa-glide-g:before {
  content: "\f2a6";
}

.fa-globe:before {
  content: "\f0ac";
}

.fa-globe-africa:before {
  content: "\f57c";
}

.fa-globe-americas:before {
  content: "\f57d";
}

.fa-globe-asia:before {
  content: "\f57e";
}

.fa-gofore:before {
  content: "\f3a7";
}

.fa-golf-ball:before {
  content: "\f450";
}

.fa-goodreads:before {
  content: "\f3a8";
}

.fa-goodreads-g:before {
  content: "\f3a9";
}

.fa-google:before {
  content: "\f1a0";
}

.fa-google-drive:before {
  content: "\f3aa";
}

.fa-google-play:before {
  content: "\f3ab";
}

.fa-google-plus:before {
  content: "\f2b3";
}

.fa-google-plus-g:before {
  content: "\f0d5";
}

.fa-google-plus-square:before {
  content: "\f0d4";
}

.fa-google-wallet:before {
  content: "\f1ee";
}

.fa-gopuram:before {
  content: "\f664";
}

.fa-graduation-cap:before {
  content: "\f19d";
}

.fa-gratipay:before {
  content: "\f184";
}

.fa-grav:before {
  content: "\f2d6";
}

.fa-greater-than:before {
  content: "\f531";
}

.fa-greater-than-equal:before {
  content: "\f532";
}

.fa-grimace:before {
  content: "\f57f";
}

.fa-grin:before {
  content: "\f580";
}

.fa-grin-alt:before {
  content: "\f581";
}

.fa-grin-beam:before {
  content: "\f582";
}

.fa-grin-beam-sweat:before {
  content: "\f583";
}

.fa-grin-hearts:before {
  content: "\f584";
}

.fa-grin-squint:before {
  content: "\f585";
}

.fa-grin-squint-tears:before {
  content: "\f586";
}

.fa-grin-stars:before {
  content: "\f587";
}

.fa-grin-tears:before {
  content: "\f588";
}

.fa-grin-tongue:before {
  content: "\f589";
}

.fa-grin-tongue-squint:before {
  content: "\f58a";
}

.fa-grin-tongue-wink:before {
  content: "\f58b";
}

.fa-grin-wink:before {
  content: "\f58c";
}

.fa-grip-horizontal:before {
  content: "\f58d";
}

.fa-grip-vertical:before {
  content: "\f58e";
}

.fa-gripfire:before {
  content: "\f3ac";
}

.fa-grunt:before {
  content: "\f3ad";
}

.fa-gulp:before {
  content: "\f3ae";
}

.fa-h-square:before {
  content: "\f0fd";
}

.fa-hacker-news:before {
  content: "\f1d4";
}

.fa-hacker-news-square:before {
  content: "\f3af";
}

.fa-hackerrank:before {
  content: "\f5f7";
}

.fa-hammer:before {
  content: "\f6e3";
}

.fa-hamsa:before {
  content: "\f665";
}

.fa-hand-holding:before {
  content: "\f4bd";
}

.fa-hand-holding-heart:before {
  content: "\f4be";
}

.fa-hand-holding-usd:before {
  content: "\f4c0";
}

.fa-hand-lizard:before {
  content: "\f258";
}

.fa-hand-paper:before {
  content: "\f256";
}

.fa-hand-peace:before {
  content: "\f25b";
}

.fa-hand-point-down:before {
  content: "\f0a7";
}

.fa-hand-point-left:before {
  content: "\f0a5";
}

.fa-hand-point-right:before {
  content: "\f0a4";
}

.fa-hand-point-up:before {
  content: "\f0a6";
}

.fa-hand-pointer:before {
  content: "\f25a";
}

.fa-hand-rock:before {
  content: "\f255";
}

.fa-hand-scissors:before {
  content: "\f257";
}

.fa-hand-spock:before {
  content: "\f259";
}

.fa-hands:before {
  content: "\f4c2";
}

.fa-hands-helping:before {
  content: "\f4c4";
}

.fa-handshake:before {
  content: "\f2b5";
}

.fa-hanukiah:before {
  content: "\f6e6";
}

.fa-hashtag:before {
  content: "\f292";
}

.fa-hat-wizard:before {
  content: "\f6e8";
}

.fa-haykal:before {
  content: "\f666";
}

.fa-hdd:before {
  content: "\f0a0";
}

.fa-heading:before {
  content: "\f1dc";
}

.fa-headphones:before {
  content: "\f025";
}

.fa-headphones-alt:before {
  content: "\f58f";
}

.fa-headset:before {
  content: "\f590";
}

.fa-heart:before {
  content: "\f004";
}

.fa-heartbeat:before {
  content: "\f21e";
}

.fa-helicopter:before {
  content: "\f533";
}

.fa-highlighter:before {
  content: "\f591";
}

.fa-hiking:before {
  content: "\f6ec";
}

.fa-hippo:before {
  content: "\f6ed";
}

.fa-hips:before {
  content: "\f452";
}

.fa-hire-a-helper:before {
  content: "\f3b0";
}

.fa-history:before {
  content: "\f1da";
}

.fa-hockey-puck:before {
  content: "\f453";
}

.fa-home:before {
  content: "\f015";
}

.fa-hooli:before {
  content: "\f427";
}

.fa-hornbill:before {
  content: "\f592";
}

.fa-horse:before {
  content: "\f6f0";
}

.fa-hospital:before {
  content: "\f0f8";
}

.fa-hospital-alt:before {
  content: "\f47d";
}

.fa-hospital-symbol:before {
  content: "\f47e";
}

.fa-hot-tub:before {
  content: "\f593";
}

.fa-hotel:before {
  content: "\f594";
}

.fa-hotjar:before {
  content: "\f3b1";
}

.fa-hourglass:before {
  content: "\f254";
}

.fa-hourglass-end:before {
  content: "\f253";
}

.fa-hourglass-half:before {
  content: "\f252";
}

.fa-hourglass-start:before {
  content: "\f251";
}

.fa-house-damage:before {
  content: "\f6f1";
}

.fa-houzz:before {
  content: "\f27c";
}

.fa-hryvnia:before {
  content: "\f6f2";
}

.fa-html5:before {
  content: "\f13b";
}

.fa-hubspot:before {
  content: "\f3b2";
}

.fa-i-cursor:before {
  content: "\f246";
}

.fa-id-badge:before {
  content: "\f2c1";
}

.fa-id-card:before {
  content: "\f2c2";
}

.fa-id-card-alt:before {
  content: "\f47f";
}

.fa-image:before {
  content: "\f03e";
}

.fa-images:before {
  content: "\f302";
}

.fa-imdb:before {
  content: "\f2d8";
}

.fa-inbox:before {
  content: "\f01c";
}

.fa-indent:before {
  content: "\f03c";
}

.fa-industry:before {
  content: "\f275";
}

.fa-infinity:before {
  content: "\f534";
}

.fa-info:before {
  content: "\f129";
}

.fa-info-circle:before {
  content: "\f05a";
}

.fa-instagram:before {
  content: "\f16d";
}

.fa-internet-explorer:before {
  content: "\f26b";
}

.fa-ioxhost:before {
  content: "\f208";
}

.fa-italic:before {
  content: "\f033";
}

.fa-itunes:before {
  content: "\f3b4";
}

.fa-itunes-note:before {
  content: "\f3b5";
}

.fa-java:before {
  content: "\f4e4";
}

.fa-jedi:before {
  content: "\f669";
}

.fa-jedi-order:before {
  content: "\f50e";
}

.fa-jenkins:before {
  content: "\f3b6";
}

.fa-joget:before {
  content: "\f3b7";
}

.fa-joint:before {
  content: "\f595";
}

.fa-joomla:before {
  content: "\f1aa";
}

.fa-journal-whills:before {
  content: "\f66a";
}

.fa-js:before {
  content: "\f3b8";
}

.fa-js-square:before {
  content: "\f3b9";
}

.fa-jsfiddle:before {
  content: "\f1cc";
}

.fa-kaaba:before {
  content: "\f66b";
}

.fa-kaggle:before {
  content: "\f5fa";
}

.fa-key:before {
  content: "\f084";
}

.fa-keybase:before {
  content: "\f4f5";
}

.fa-keyboard:before {
  content: "\f11c";
}

.fa-keycdn:before {
  content: "\f3ba";
}

.fa-khanda:before {
  content: "\f66d";
}

.fa-kickstarter:before {
  content: "\f3bb";
}

.fa-kickstarter-k:before {
  content: "\f3bc";
}

.fa-kiss:before {
  content: "\f596";
}

.fa-kiss-beam:before {
  content: "\f597";
}

.fa-kiss-wink-heart:before {
  content: "\f598";
}

.fa-kiwi-bird:before {
  content: "\f535";
}

.fa-korvue:before {
  content: "\f42f";
}

.fa-landmark:before {
  content: "\f66f";
}

.fa-language:before {
  content: "\f1ab";
}

.fa-laptop:before {
  content: "\f109";
}

.fa-laptop-code:before {
  content: "\f5fc";
}

.fa-laravel:before {
  content: "\f3bd";
}

.fa-lastfm:before {
  content: "\f202";
}

.fa-lastfm-square:before {
  content: "\f203";
}

.fa-laugh:before {
  content: "\f599";
}

.fa-laugh-beam:before {
  content: "\f59a";
}

.fa-laugh-squint:before {
  content: "\f59b";
}

.fa-laugh-wink:before {
  content: "\f59c";
}

.fa-layer-group:before {
  content: "\f5fd";
}

.fa-leaf:before {
  content: "\f06c";
}

.fa-leanpub:before {
  content: "\f212";
}

.fa-lemon:before {
  content: "\f094";
}

.fa-less:before {
  content: "\f41d";
}

.fa-less-than:before {
  content: "\f536";
}

.fa-less-than-equal:before {
  content: "\f537";
}

.fa-level-down-alt:before {
  content: "\f3be";
}

.fa-level-up-alt:before {
  content: "\f3bf";
}

.fa-life-ring:before {
  content: "\f1cd";
}

.fa-lightbulb:before {
  content: "\f0eb";
}

.fa-line:before {
  content: "\f3c0";
}

.fa-link:before {
  content: "\f0c1";
}

.fa-linkedin:before {
  content: "\f08c";
}

.fa-linkedin-in:before {
  content: "\f0e1";
}

.fa-linode:before {
  content: "\f2b8";
}

.fa-linux:before {
  content: "\f17c";
}

.fa-lira-sign:before {
  content: "\f195";
}

.fa-list:before {
  content: "\f03a";
}

.fa-list-alt:before {
  content: "\f022";
}

.fa-list-ol:before {
  content: "\f0cb";
}

.fa-list-ul:before {
  content: "\f0ca";
}

.fa-location-arrow:before {
  content: "\f124";
}

.fa-lock:before {
  content: "\f023";
}

.fa-lock-open:before {
  content: "\f3c1";
}

.fa-long-arrow-alt-down:before {
  content: "\f309";
}

.fa-long-arrow-alt-left:before {
  content: "\f30a";
}

.fa-long-arrow-alt-right:before {
  content: "\f30b";
}

.fa-long-arrow-alt-up:before {
  content: "\f30c";
}

.fa-low-vision:before {
  content: "\f2a8";
}

.fa-luggage-cart:before {
  content: "\f59d";
}

.fa-lyft:before {
  content: "\f3c3";
}

.fa-magento:before {
  content: "\f3c4";
}

.fa-magic:before {
  content: "\f0d0";
}

.fa-magnet:before {
  content: "\f076";
}

.fa-mail-bulk:before {
  content: "\f674";
}

.fa-mailchimp:before {
  content: "\f59e";
}

.fa-male:before {
  content: "\f183";
}

.fa-mandalorian:before {
  content: "\f50f";
}

.fa-map:before {
  content: "\f279";
}

.fa-map-marked:before {
  content: "\f59f";
}

.fa-map-marked-alt:before {
  content: "\f5a0";
}

.fa-map-marker:before {
  content: "\f041";
}

.fa-map-marker-alt:before {
  content: "\f3c5";
}

.fa-map-pin:before {
  content: "\f276";
}

.fa-map-signs:before {
  content: "\f277";
}

.fa-markdown:before {
  content: "\f60f";
}

.fa-marker:before {
  content: "\f5a1";
}

.fa-mars:before {
  content: "\f222";
}

.fa-mars-double:before {
  content: "\f227";
}

.fa-mars-stroke:before {
  content: "\f229";
}

.fa-mars-stroke-h:before {
  content: "\f22b";
}

.fa-mars-stroke-v:before {
  content: "\f22a";
}

.fa-mask:before {
  content: "\f6fa";
}

.fa-mastodon:before {
  content: "\f4f6";
}

.fa-maxcdn:before {
  content: "\f136";
}

.fa-medal:before {
  content: "\f5a2";
}

.fa-medapps:before {
  content: "\f3c6";
}

.fa-medium:before {
  content: "\f23a";
}

.fa-medium-m:before {
  content: "\f3c7";
}

.fa-medkit:before {
  content: "\f0fa";
}

.fa-medrt:before {
  content: "\f3c8";
}

.fa-meetup:before {
  content: "\f2e0";
}

.fa-megaport:before {
  content: "\f5a3";
}

.fa-meh:before {
  content: "\f11a";
}

.fa-meh-blank:before {
  content: "\f5a4";
}

.fa-meh-rolling-eyes:before {
  content: "\f5a5";
}

.fa-memory:before {
  content: "\f538";
}

.fa-menorah:before {
  content: "\f676";
}

.fa-mercury:before {
  content: "\f223";
}

.fa-meteor:before {
  content: "\f753";
}

.fa-microchip:before {
  content: "\f2db";
}

.fa-microphone:before {
  content: "\f130";
}

.fa-microphone-alt:before {
  content: "\f3c9";
}

.fa-microphone-alt-slash:before {
  content: "\f539";
}

.fa-microphone-slash:before {
  content: "\f131";
}

.fa-microscope:before {
  content: "\f610";
}

.fa-microsoft:before {
  content: "\f3ca";
}

.fa-minus:before {
  content: "\f068";
}

.fa-minus-circle:before {
  content: "\f056";
}

.fa-minus-square:before {
  content: "\f146";
}

.fa-mix:before {
  content: "\f3cb";
}

.fa-mixcloud:before {
  content: "\f289";
}

.fa-mizuni:before {
  content: "\f3cc";
}

.fa-mobile:before {
  content: "\f10b";
}

.fa-mobile-alt:before {
  content: "\f3cd";
}

.fa-modx:before {
  content: "\f285";
}

.fa-monero:before {
  content: "\f3d0";
}

.fa-money-bill:before {
  content: "\f0d6";
}

.fa-money-bill-alt:before {
  content: "\f3d1";
}

.fa-money-bill-wave:before {
  content: "\f53a";
}

.fa-money-bill-wave-alt:before {
  content: "\f53b";
}

.fa-money-check:before {
  content: "\f53c";
}

.fa-money-check-alt:before {
  content: "\f53d";
}

.fa-monument:before {
  content: "\f5a6";
}

.fa-moon:before {
  content: "\f186";
}

.fa-mortar-pestle:before {
  content: "\f5a7";
}

.fa-mosque:before {
  content: "\f678";
}

.fa-motorcycle:before {
  content: "\f21c";
}

.fa-mountain:before {
  content: "\f6fc";
}

.fa-mouse-pointer:before {
  content: "\f245";
}

.fa-music:before {
  content: "\f001";
}

.fa-napster:before {
  content: "\f3d2";
}

.fa-neos:before {
  content: "\f612";
}

.fa-network-wired:before {
  content: "\f6ff";
}

.fa-neuter:before {
  content: "\f22c";
}

.fa-newspaper:before {
  content: "\f1ea";
}

.fa-nimblr:before {
  content: "\f5a8";
}

.fa-nintendo-switch:before {
  content: "\f418";
}

.fa-node:before {
  content: "\f419";
}

.fa-node-js:before {
  content: "\f3d3";
}

.fa-not-equal:before {
  content: "\f53e";
}

.fa-notes-medical:before {
  content: "\f481";
}

.fa-npm:before {
  content: "\f3d4";
}

.fa-ns8:before {
  content: "\f3d5";
}

.fa-nutritionix:before {
  content: "\f3d6";
}

.fa-object-group:before {
  content: "\f247";
}

.fa-object-ungroup:before {
  content: "\f248";
}

.fa-odnoklassniki:before {
  content: "\f263";
}

.fa-odnoklassniki-square:before {
  content: "\f264";
}

.fa-oil-can:before {
  content: "\f613";
}

.fa-old-republic:before {
  content: "\f510";
}

.fa-om:before {
  content: "\f679";
}

.fa-opencart:before {
  content: "\f23d";
}

.fa-openid:before {
  content: "\f19b";
}

.fa-opera:before {
  content: "\f26a";
}

.fa-optin-monster:before {
  content: "\f23c";
}

.fa-osi:before {
  content: "\f41a";
}

.fa-otter:before {
  content: "\f700";
}

.fa-outdent:before {
  content: "\f03b";
}

.fa-page4:before {
  content: "\f3d7";
}

.fa-pagelines:before {
  content: "\f18c";
}

.fa-paint-brush:before {
  content: "\f1fc";
}

.fa-paint-roller:before {
  content: "\f5aa";
}

.fa-palette:before {
  content: "\f53f";
}

.fa-palfed:before {
  content: "\f3d8";
}

.fa-pallet:before {
  content: "\f482";
}

.fa-paper-plane:before {
  content: "\f1d8";
}

.fa-paperclip:before {
  content: "\f0c6";
}

.fa-parachute-box:before {
  content: "\f4cd";
}

.fa-paragraph:before {
  content: "\f1dd";
}

.fa-parking:before {
  content: "\f540";
}

.fa-passport:before {
  content: "\f5ab";
}

.fa-pastafarianism:before {
  content: "\f67b";
}

.fa-paste:before {
  content: "\f0ea";
}

.fa-patreon:before {
  content: "\f3d9";
}

.fa-pause:before {
  content: "\f04c";
}

.fa-pause-circle:before {
  content: "\f28b";
}

.fa-paw:before {
  content: "\f1b0";
}

.fa-paypal:before {
  content: "\f1ed";
}

.fa-peace:before {
  content: "\f67c";
}

.fa-pen:before {
  content: "\f304";
}

.fa-pen-alt:before {
  content: "\f305";
}

.fa-pen-fancy:before {
  content: "\f5ac";
}

.fa-pen-nib:before {
  content: "\f5ad";
}

.fa-pen-square:before {
  content: "\f14b";
}

.fa-pencil-alt:before {
  content: "\f303";
}

.fa-pencil-ruler:before {
  content: "\f5ae";
}

.fa-penny-arcade:before {
  content: "\f704";
}

.fa-people-carry:before {
  content: "\f4ce";
}

.fa-percent:before {
  content: "\f295";
}

.fa-percentage:before {
  content: "\f541";
}

.fa-periscope:before {
  content: "\f3da";
}

.fa-person-booth:before {
  content: "\f756";
}

.fa-phabricator:before {
  content: "\f3db";
}

.fa-phoenix-framework:before {
  content: "\f3dc";
}

.fa-phoenix-squadron:before {
  content: "\f511";
}

.fa-phone:before {
  content: "\f095";
}

.fa-phone-slash:before {
  content: "\f3dd";
}

.fa-phone-square:before {
  content: "\f098";
}

.fa-phone-volume:before {
  content: "\f2a0";
}

.fa-php:before {
  content: "\f457";
}

.fa-pied-piper:before {
  content: "\f2ae";
}

.fa-pied-piper-alt:before {
  content: "\f1a8";
}

.fa-pied-piper-hat:before {
  content: "\f4e5";
}

.fa-pied-piper-pp:before {
  content: "\f1a7";
}

.fa-piggy-bank:before {
  content: "\f4d3";
}

.fa-pills:before {
  content: "\f484";
}

.fa-pinterest:before {
  content: "\f0d2";
}

.fa-pinterest-p:before {
  content: "\f231";
}

.fa-pinterest-square:before {
  content: "\f0d3";
}

.fa-place-of-worship:before {
  content: "\f67f";
}

.fa-plane:before {
  content: "\f072";
}

.fa-plane-arrival:before {
  content: "\f5af";
}

.fa-plane-departure:before {
  content: "\f5b0";
}

.fa-play:before {
  content: "\f04b";
}

.fa-play-circle:before {
  content: "\f144";
}

.fa-playstation:before {
  content: "\f3df";
}

.fa-plug:before {
  content: "\f1e6";
}

.fa-plus:before {
  content: "\f067";
}

.fa-plus-circle:before {
  content: "\f055";
}

.fa-plus-square:before {
  content: "\f0fe";
}

.fa-podcast:before {
  content: "\f2ce";
}

.fa-poll:before {
  content: "\f681";
}

.fa-poll-h:before {
  content: "\f682";
}

.fa-poo:before {
  content: "\f2fe";
}

.fa-poo-storm:before {
  content: "\f75a";
}

.fa-poop:before {
  content: "\f619";
}

.fa-portrait:before {
  content: "\f3e0";
}

.fa-pound-sign:before {
  content: "\f154";
}

.fa-power-off:before {
  content: "\f011";
}

.fa-pray:before {
  content: "\f683";
}

.fa-praying-hands:before {
  content: "\f684";
}

.fa-prescription:before {
  content: "\f5b1";
}

.fa-prescription-bottle:before {
  content: "\f485";
}

.fa-prescription-bottle-alt:before {
  content: "\f486";
}

.fa-print:before {
  content: "\f02f";
}

.fa-procedures:before {
  content: "\f487";
}

.fa-product-hunt:before {
  content: "\f288";
}

.fa-project-diagram:before {
  content: "\f542";
}

.fa-pushed:before {
  content: "\f3e1";
}

.fa-puzzle-piece:before {
  content: "\f12e";
}

.fa-python:before {
  content: "\f3e2";
}

.fa-qq:before {
  content: "\f1d6";
}

.fa-qrcode:before {
  content: "\f029";
}

.fa-question:before {
  content: "\f128";
}

.fa-question-circle:before {
  content: "\f059";
}

.fa-quidditch:before {
  content: "\f458";
}

.fa-quinscape:before {
  content: "\f459";
}

.fa-quora:before {
  content: "\f2c4";
}

.fa-quote-left:before {
  content: "\f10d";
}

.fa-quote-right:before {
  content: "\f10e";
}

.fa-quran:before {
  content: "\f687";
}

.fa-r-project:before {
  content: "\f4f7";
}

.fa-rainbow:before {
  content: "\f75b";
}

.fa-random:before {
  content: "\f074";
}

.fa-ravelry:before {
  content: "\f2d9";
}

.fa-react:before {
  content: "\f41b";
}

.fa-reacteurope:before {
  content: "\f75d";
}

.fa-readme:before {
  content: "\f4d5";
}

.fa-rebel:before {
  content: "\f1d0";
}

.fa-receipt:before {
  content: "\f543";
}

.fa-recycle:before {
  content: "\f1b8";
}

.fa-red-river:before {
  content: "\f3e3";
}

.fa-reddit:before {
  content: "\f1a1";
}

.fa-reddit-alien:before {
  content: "\f281";
}

.fa-reddit-square:before {
  content: "\f1a2";
}

.fa-redo:before {
  content: "\f01e";
}

.fa-redo-alt:before {
  content: "\f2f9";
}

.fa-registered:before {
  content: "\f25d";
}

.fa-renren:before {
  content: "\f18b";
}

.fa-reply:before {
  content: "\f3e5";
}

.fa-reply-all:before {
  content: "\f122";
}

.fa-replyd:before {
  content: "\f3e6";
}

.fa-republican:before {
  content: "\f75e";
}

.fa-researchgate:before {
  content: "\f4f8";
}

.fa-resolving:before {
  content: "\f3e7";
}

.fa-retweet:before {
  content: "\f079";
}

.fa-rev:before {
  content: "\f5b2";
}

.fa-ribbon:before {
  content: "\f4d6";
}

.fa-ring:before {
  content: "\f70b";
}

.fa-road:before {
  content: "\f018";
}

.fa-robot:before {
  content: "\f544";
}

.fa-rocket:before {
  content: "\f135";
}

.fa-rocketchat:before {
  content: "\f3e8";
}

.fa-rockrms:before {
  content: "\f3e9";
}

.fa-route:before {
  content: "\f4d7";
}

.fa-rss:before {
  content: "\f09e";
}

.fa-rss-square:before {
  content: "\f143";
}

.fa-ruble-sign:before {
  content: "\f158";
}

.fa-ruler:before {
  content: "\f545";
}

.fa-ruler-combined:before {
  content: "\f546";
}

.fa-ruler-horizontal:before {
  content: "\f547";
}

.fa-ruler-vertical:before {
  content: "\f548";
}

.fa-running:before {
  content: "\f70c";
}

.fa-rupee-sign:before {
  content: "\f156";
}

.fa-sad-cry:before {
  content: "\f5b3";
}

.fa-sad-tear:before {
  content: "\f5b4";
}

.fa-safari:before {
  content: "\f267";
}

.fa-sass:before {
  content: "\f41e";
}

.fa-save:before {
  content: "\f0c7";
}

.fa-schlix:before {
  content: "\f3ea";
}

.fa-school:before {
  content: "\f549";
}

.fa-screwdriver:before {
  content: "\f54a";
}

.fa-scribd:before {
  content: "\f28a";
}

.fa-scroll:before {
  content: "\f70e";
}

.fa-search:before {
  content: "\f002";
}

.fa-search-dollar:before {
  content: "\f688";
}

.fa-search-location:before {
  content: "\f689";
}

.fa-search-minus:before {
  content: "\f010";
}

.fa-search-plus:before {
  content: "\f00e";
}

.fa-searchengin:before {
  content: "\f3eb";
}

.fa-seedling:before {
  content: "\f4d8";
}

.fa-sellcast:before {
  content: "\f2da";
}

.fa-sellsy:before {
  content: "\f213";
}

.fa-server:before {
  content: "\f233";
}

.fa-servicestack:before {
  content: "\f3ec";
}

.fa-shapes:before {
  content: "\f61f";
}

.fa-share:before {
  content: "\f064";
}

.fa-share-alt:before {
  content: "\f1e0";
}

.fa-share-alt-square:before {
  content: "\f1e1";
}

.fa-share-square:before {
  content: "\f14d";
}

.fa-shekel-sign:before {
  content: "\f20b";
}

.fa-shield-alt:before {
  content: "\f3ed";
}

.fa-ship:before {
  content: "\f21a";
}

.fa-shipping-fast:before {
  content: "\f48b";
}

.fa-shirtsinbulk:before {
  content: "\f214";
}

.fa-shoe-prints:before {
  content: "\f54b";
}

.fa-shopping-bag:before {
  content: "\f290";
}

.fa-shopping-basket:before {
  content: "\f291";
}

.fa-shopping-cart:before {
  content: "\f07a";
}

.fa-shopware:before {
  content: "\f5b5";
}

.fa-shower:before {
  content: "\f2cc";
}

.fa-shuttle-van:before {
  content: "\f5b6";
}

.fa-sign:before {
  content: "\f4d9";
}

.fa-sign-in-alt:before {
  content: "\f2f6";
}

.fa-sign-language:before {
  content: "\f2a7";
}

.fa-sign-out-alt:before {
  content: "\f2f5";
}

.fa-signal:before {
  content: "\f012";
}

.fa-signature:before {
  content: "\f5b7";
}

.fa-simplybuilt:before {
  content: "\f215";
}

.fa-sistrix:before {
  content: "\f3ee";
}

.fa-sitemap:before {
  content: "\f0e8";
}

.fa-sith:before {
  content: "\f512";
}

.fa-skull:before {
  content: "\f54c";
}

.fa-skull-crossbones:before {
  content: "\f714";
}

.fa-skyatlas:before {
  content: "\f216";
}

.fa-skype:before {
  content: "\f17e";
}

.fa-slack:before {
  content: "\f198";
}

.fa-slack-hash:before {
  content: "\f3ef";
}

.fa-slash:before {
  content: "\f715";
}

.fa-sliders-h:before {
  content: "\f1de";
}

.fa-slideshare:before {
  content: "\f1e7";
}

.fa-smile:before {
  content: "\f118";
}

.fa-smile-beam:before {
  content: "\f5b8";
}

.fa-smile-wink:before {
  content: "\f4da";
}

.fa-smog:before {
  content: "\f75f";
}

.fa-smoking:before {
  content: "\f48d";
}

.fa-smoking-ban:before {
  content: "\f54d";
}

.fa-snapchat:before {
  content: "\f2ab";
}

.fa-snapchat-ghost:before {
  content: "\f2ac";
}

.fa-snapchat-square:before {
  content: "\f2ad";
}

.fa-snowflake:before {
  content: "\f2dc";
}

.fa-socks:before {
  content: "\f696";
}

.fa-solar-panel:before {
  content: "\f5ba";
}

.fa-sort:before {
  content: "\f0dc";
}

.fa-sort-alpha-down:before {
  content: "\f15d";
}

.fa-sort-alpha-up:before {
  content: "\f15e";
}

.fa-sort-amount-down:before {
  content: "\f160";
}

.fa-sort-amount-up:before {
  content: "\f161";
}

.fa-sort-down:before {
  content: "\f0dd";
}

.fa-sort-numeric-down:before {
  content: "\f162";
}

.fa-sort-numeric-up:before {
  content: "\f163";
}

.fa-sort-up:before {
  content: "\f0de";
}

.fa-soundcloud:before {
  content: "\f1be";
}

.fa-spa:before {
  content: "\f5bb";
}

.fa-space-shuttle:before {
  content: "\f197";
}

.fa-speakap:before {
  content: "\f3f3";
}

.fa-spider:before {
  content: "\f717";
}

.fa-spinner:before {
  content: "\f110";
}

.fa-splotch:before {
  content: "\f5bc";
}

.fa-spotify:before {
  content: "\f1bc";
}

.fa-spray-can:before {
  content: "\f5bd";
}

.fa-square:before {
  content: "\f0c8";
}

.fa-square-full:before {
  content: "\f45c";
}

.fa-square-root-alt:before {
  content: "\f698";
}

.fa-squarespace:before {
  content: "\f5be";
}

.fa-stack-exchange:before {
  content: "\f18d";
}

.fa-stack-overflow:before {
  content: "\f16c";
}

.fa-stamp:before {
  content: "\f5bf";
}

.fa-star:before {
  content: "\f005";
}

.fa-star-and-crescent:before {
  content: "\f699";
}

.fa-star-half:before {
  content: "\f089";
}

.fa-star-half-alt:before {
  content: "\f5c0";
}

.fa-star-of-david:before {
  content: "\f69a";
}

.fa-star-of-life:before {
  content: "\f621";
}

.fa-staylinked:before {
  content: "\f3f5";
}

.fa-steam:before {
  content: "\f1b6";
}

.fa-steam-square:before {
  content: "\f1b7";
}

.fa-steam-symbol:before {
  content: "\f3f6";
}

.fa-step-backward:before {
  content: "\f048";
}

.fa-step-forward:before {
  content: "\f051";
}

.fa-stethoscope:before {
  content: "\f0f1";
}

.fa-sticker-mule:before {
  content: "\f3f7";
}

.fa-sticky-note:before {
  content: "\f249";
}

.fa-stop:before {
  content: "\f04d";
}

.fa-stop-circle:before {
  content: "\f28d";
}

.fa-stopwatch:before {
  content: "\f2f2";
}

.fa-store:before {
  content: "\f54e";
}

.fa-store-alt:before {
  content: "\f54f";
}

.fa-strava:before {
  content: "\f428";
}

.fa-stream:before {
  content: "\f550";
}

.fa-street-view:before {
  content: "\f21d";
}

.fa-strikethrough:before {
  content: "\f0cc";
}

.fa-stripe:before {
  content: "\f429";
}

.fa-stripe-s:before {
  content: "\f42a";
}

.fa-stroopwafel:before {
  content: "\f551";
}

.fa-studiovinari:before {
  content: "\f3f8";
}

.fa-stumbleupon:before {
  content: "\f1a4";
}

.fa-stumbleupon-circle:before {
  content: "\f1a3";
}

.fa-subscript:before {
  content: "\f12c";
}

.fa-subway:before {
  content: "\f239";
}

.fa-suitcase:before {
  content: "\f0f2";
}

.fa-suitcase-rolling:before {
  content: "\f5c1";
}

.fa-sun:before {
  content: "\f185";
}

.fa-superpowers:before {
  content: "\f2dd";
}

.fa-superscript:before {
  content: "\f12b";
}

.fa-supple:before {
  content: "\f3f9";
}

.fa-surprise:before {
  content: "\f5c2";
}

.fa-swatchbook:before {
  content: "\f5c3";
}

.fa-swimmer:before {
  content: "\f5c4";
}

.fa-swimming-pool:before {
  content: "\f5c5";
}

.fa-synagogue:before {
  content: "\f69b";
}

.fa-sync:before {
  content: "\f021";
}

.fa-sync-alt:before {
  content: "\f2f1";
}

.fa-syringe:before {
  content: "\f48e";
}

.fa-table:before {
  content: "\f0ce";
}

.fa-table-tennis:before {
  content: "\f45d";
}

.fa-tablet:before {
  content: "\f10a";
}

.fa-tablet-alt:before {
  content: "\f3fa";
}

.fa-tablets:before {
  content: "\f490";
}

.fa-tachometer-alt:before {
  content: "\f3fd";
}

.fa-tag:before {
  content: "\f02b";
}

.fa-tags:before {
  content: "\f02c";
}

.fa-tape:before {
  content: "\f4db";
}

.fa-tasks:before {
  content: "\f0ae";
}

.fa-taxi:before {
  content: "\f1ba";
}

.fa-teamspeak:before {
  content: "\f4f9";
}

.fa-teeth:before {
  content: "\f62e";
}

.fa-teeth-open:before {
  content: "\f62f";
}

.fa-telegram:before {
  content: "\f2c6";
}

.fa-telegram-plane:before {
  content: "\f3fe";
}

.fa-temperature-high:before {
  content: "\f769";
}

.fa-temperature-low:before {
  content: "\f76b";
}

.fa-tencent-weibo:before {
  content: "\f1d5";
}

.fa-terminal:before {
  content: "\f120";
}

.fa-text-height:before {
  content: "\f034";
}

.fa-text-width:before {
  content: "\f035";
}

.fa-th:before {
  content: "\f00a";
}

.fa-th-large:before {
  content: "\f009";
}

.fa-th-list:before {
  content: "\f00b";
}

.fa-the-red-yeti:before {
  content: "\f69d";
}

.fa-theater-masks:before {
  content: "\f630";
}

.fa-themeco:before {
  content: "\f5c6";
}

.fa-themeisle:before {
  content: "\f2b2";
}

.fa-thermometer:before {
  content: "\f491";
}

.fa-thermometer-empty:before {
  content: "\f2cb";
}

.fa-thermometer-full:before {
  content: "\f2c7";
}

.fa-thermometer-half:before {
  content: "\f2c9";
}

.fa-thermometer-quarter:before {
  content: "\f2ca";
}

.fa-thermometer-three-quarters:before {
  content: "\f2c8";
}

.fa-think-peaks:before {
  content: "\f731";
}

.fa-thumbs-down:before {
  content: "\f165";
}

.fa-thumbs-up:before {
  content: "\f164";
}

.fa-thumbtack:before {
  content: "\f08d";
}

.fa-ticket-alt:before {
  content: "\f3ff";
}

.fa-times:before {
  content: "\f00d";
}

.fa-times-circle:before {
  content: "\f057";
}

.fa-tint:before {
  content: "\f043";
}

.fa-tint-slash:before {
  content: "\f5c7";
}

.fa-tired:before {
  content: "\f5c8";
}

.fa-toggle-off:before {
  content: "\f204";
}

.fa-toggle-on:before {
  content: "\f205";
}

.fa-toilet-paper:before {
  content: "\f71e";
}

.fa-toolbox:before {
  content: "\f552";
}

.fa-tooth:before {
  content: "\f5c9";
}

.fa-torah:before {
  content: "\f6a0";
}

.fa-torii-gate:before {
  content: "\f6a1";
}

.fa-tractor:before {
  content: "\f722";
}

.fa-trade-federation:before {
  content: "\f513";
}

.fa-trademark:before {
  content: "\f25c";
}

.fa-traffic-light:before {
  content: "\f637";
}

.fa-train:before {
  content: "\f238";
}

.fa-transgender:before {
  content: "\f224";
}

.fa-transgender-alt:before {
  content: "\f225";
}

.fa-trash:before {
  content: "\f1f8";
}

.fa-trash-alt:before {
  content: "\f2ed";
}

.fa-tree:before {
  content: "\f1bb";
}

.fa-trello:before {
  content: "\f181";
}

.fa-tripadvisor:before {
  content: "\f262";
}

.fa-trophy:before {
  content: "\f091";
}

.fa-truck:before {
  content: "\f0d1";
}

.fa-truck-loading:before {
  content: "\f4de";
}

.fa-truck-monster:before {
  content: "\f63b";
}

.fa-truck-moving:before {
  content: "\f4df";
}

.fa-truck-pickup:before {
  content: "\f63c";
}

.fa-tshirt:before {
  content: "\f553";
}

.fa-tty:before {
  content: "\f1e4";
}

.fa-tumblr:before {
  content: "\f173";
}

.fa-tumblr-square:before {
  content: "\f174";
}

.fa-tv:before {
  content: "\f26c";
}

.fa-twitch:before {
  content: "\f1e8";
}

.fa-twitter:before {
  content: "\f099";
}

.fa-twitter-square:before {
  content: "\f081";
}

.fa-typo3:before {
  content: "\f42b";
}

.fa-uber:before {
  content: "\f402";
}

.fa-uikit:before {
  content: "\f403";
}

.fa-umbrella:before {
  content: "\f0e9";
}

.fa-umbrella-beach:before {
  content: "\f5ca";
}

.fa-underline:before {
  content: "\f0cd";
}

.fa-undo:before {
  content: "\f0e2";
}

.fa-undo-alt:before {
  content: "\f2ea";
}

.fa-uniregistry:before {
  content: "\f404";
}

.fa-universal-access:before {
  content: "\f29a";
}

.fa-university:before {
  content: "\f19c";
}

.fa-unlink:before {
  content: "\f127";
}

.fa-unlock:before {
  content: "\f09c";
}

.fa-unlock-alt:before {
  content: "\f13e";
}

.fa-untappd:before {
  content: "\f405";
}

.fa-upload:before {
  content: "\f093";
}

.fa-usb:before {
  content: "\f287";
}

.fa-user:before {
  content: "\f007";
}

.fa-user-alt:before {
  content: "\f406";
}

.fa-user-alt-slash:before {
  content: "\f4fa";
}

.fa-user-astronaut:before {
  content: "\f4fb";
}

.fa-user-check:before {
  content: "\f4fc";
}

.fa-user-circle:before {
  content: "\f2bd";
}

.fa-user-clock:before {
  content: "\f4fd";
}

.fa-user-cog:before {
  content: "\f4fe";
}

.fa-user-edit:before {
  content: "\f4ff";
}

.fa-user-friends:before {
  content: "\f500";
}

.fa-user-graduate:before {
  content: "\f501";
}

.fa-user-injured:before {
  content: "\f728";
}

.fa-user-lock:before {
  content: "\f502";
}

.fa-user-md:before {
  content: "\f0f0";
}

.fa-user-minus:before {
  content: "\f503";
}

.fa-user-ninja:before {
  content: "\f504";
}

.fa-user-plus:before {
  content: "\f234";
}

.fa-user-secret:before {
  content: "\f21b";
}

.fa-user-shield:before {
  content: "\f505";
}

.fa-user-slash:before {
  content: "\f506";
}

.fa-user-tag:before {
  content: "\f507";
}

.fa-user-tie:before {
  content: "\f508";
}

.fa-user-times:before {
  content: "\f235";
}

.fa-users:before {
  content: "\f0c0";
}

.fa-users-cog:before {
  content: "\f509";
}

.fa-ussunnah:before {
  content: "\f407";
}

.fa-utensil-spoon:before {
  content: "\f2e5";
}

.fa-utensils:before {
  content: "\f2e7";
}

.fa-vaadin:before {
  content: "\f408";
}

.fa-vector-square:before {
  content: "\f5cb";
}

.fa-venus:before {
  content: "\f221";
}

.fa-venus-double:before {
  content: "\f226";
}

.fa-venus-mars:before {
  content: "\f228";
}

.fa-viacoin:before {
  content: "\f237";
}

.fa-viadeo:before {
  content: "\f2a9";
}

.fa-viadeo-square:before {
  content: "\f2aa";
}

.fa-vial:before {
  content: "\f492";
}

.fa-vials:before {
  content: "\f493";
}

.fa-viber:before {
  content: "\f409";
}

.fa-video:before {
  content: "\f03d";
}

.fa-video-slash:before {
  content: "\f4e2";
}

.fa-vihara:before {
  content: "\f6a7";
}

.fa-vimeo:before {
  content: "\f40a";
}

.fa-vimeo-square:before {
  content: "\f194";
}

.fa-vimeo-v:before {
  content: "\f27d";
}

.fa-vine:before {
  content: "\f1ca";
}

.fa-vk:before {
  content: "\f189";
}

.fa-vnv:before {
  content: "\f40b";
}

.fa-volleyball-ball:before {
  content: "\f45f";
}

.fa-volume-down:before {
  content: "\f027";
}

.fa-volume-mute:before {
  content: "\f6a9";
}

.fa-volume-off:before {
  content: "\f026";
}

.fa-volume-up:before {
  content: "\f028";
}

.fa-vote-yea:before {
  content: "\f772";
}

.fa-vr-cardboard:before {
  content: "\f729";
}

.fa-vuejs:before {
  content: "\f41f";
}

.fa-walking:before {
  content: "\f554";
}

.fa-wallet:before {
  content: "\f555";
}

.fa-warehouse:before {
  content: "\f494";
}

.fa-water:before {
  content: "\f773";
}

.fa-weebly:before {
  content: "\f5cc";
}

.fa-weibo:before {
  content: "\f18a";
}

.fa-weight:before {
  content: "\f496";
}

.fa-weight-hanging:before {
  content: "\f5cd";
}

.fa-weixin:before {
  content: "\f1d7";
}

.fa-whatsapp:before {
  content: "\f232";
}

.fa-whatsapp-square:before {
  content: "\f40c";
}

.fa-wheelchair:before {
  content: "\f193";
}

.fa-whmcs:before {
  content: "\f40d";
}

.fa-wifi:before {
  content: "\f1eb";
}

.fa-wikipedia-w:before {
  content: "\f266";
}

.fa-wind:before {
  content: "\f72e";
}

.fa-window-close:before {
  content: "\f410";
}

.fa-window-maximize:before {
  content: "\f2d0";
}

.fa-window-minimize:before {
  content: "\f2d1";
}

.fa-window-restore:before {
  content: "\f2d2";
}

.fa-windows:before {
  content: "\f17a";
}

.fa-wine-bottle:before {
  content: "\f72f";
}

.fa-wine-glass:before {
  content: "\f4e3";
}

.fa-wine-glass-alt:before {
  content: "\f5ce";
}

.fa-wix:before {
  content: "\f5cf";
}

.fa-wizards-of-the-coast:before {
  content: "\f730";
}

.fa-wolf-pack-battalion:before {
  content: "\f514";
}

.fa-won-sign:before {
  content: "\f159";
}

.fa-wordpress:before {
  content: "\f19a";
}

.fa-wordpress-simple:before {
  content: "\f411";
}

.fa-wpbeginner:before {
  content: "\f297";
}

.fa-wpexplorer:before {
  content: "\f2de";
}

.fa-wpforms:before {
  content: "\f298";
}

.fa-wpressr:before {
  content: "\f3e4";
}

.fa-wrench:before {
  content: "\f0ad";
}

.fa-x-ray:before {
  content: "\f497";
}

.fa-xbox:before {
  content: "\f412";
}

.fa-xing:before {
  content: "\f168";
}

.fa-xing-square:before {
  content: "\f169";
}

.fa-y-combinator:before {
  content: "\f23b";
}

.fa-yahoo:before {
  content: "\f19e";
}

.fa-yandex:before {
  content: "\f413";
}

.fa-yandex-international:before {
  content: "\f414";
}

.fa-yelp:before {
  content: "\f1e9";
}

.fa-yen-sign:before {
  content: "\f157";
}

.fa-yin-yang:before {
  content: "\f6ad";
}

.fa-yoast:before {
  content: "\f2b1";
}

.fa-youtube:before {
  content: "\f167";
}

.fa-youtube-square:before {
  content: "\f431";
}

.fa-zhihu:before {
  content: "\f63f";
}

.sr-only {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.sr-only-focusable:active, .sr-only-focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
}

/*!
 * Font Awesome Free 5.5.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
@font-face {
  font-family: "Font Awesome 5 Free";
  font-style: normal;
  font-weight: 900;
  src: url("../fonts/fa-solid-900.eot");
  src: url("../fonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("../fonts/fa-solid-900.woff2") format("woff2"), url("../fonts/fa-solid-900.woff") format("woff"), url("../fonts/fa-solid-900.ttf") format("truetype"), url("../fonts/fa-solid-900.svg#fontawesome") format("svg");
}
.fa,
.fas {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}

/*!
 * Font Awesome Free 5.5.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
@font-face {
  font-family: "Font Awesome 5 Brands";
  font-style: normal;
  font-weight: normal;
  src: url("../fonts/fa-brands-400.eot");
  src: url("../fonts/fa-brands-400.eot?#iefix") format("embedded-opentype"), url("../fonts/fa-brands-400.woff2") format("woff2"), url("../fonts/fa-brands-400.woff") format("woff"), url("../fonts/fa-brands-400.ttf") format("truetype"), url("../fonts/fa-brands-400.svg#fontawesome") format("svg");
}
.fab {
  font-family: "Font Awesome 5 Brands";
}

/* Magnific Popup CSS */
.mfp-counter {
  font-family: Georgia, Times, serif;
}

.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  background: #000;
  opacity: 0.8;
  filter: alpha(opacity=80);
}

.mfp-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1043;
  position: fixed;
  outline: none !important;
  -webkit-backface-visibility: hidden;
}

.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 8px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.mfp-container:before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

.mfp-align-top .mfp-container:before {
  display: none;
}

.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  z-index: 1045;
}

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
  width: 100%;
  cursor: auto;
}

.mfp-ajax-cur {
  cursor: progress;
}

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: -moz-zoom-out;
  cursor: -webkit-zoom-out;
  cursor: zoom-out;
}

.mfp-zoom {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in;
}

.mfp-auto-cursor .mfp-content {
  cursor: auto;
}

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

.mfp-loading.mfp-figure {
  display: none;
}

.mfp-hide {
  display: none !important;
}

.mfp-preloader {
  color: #ccc;
  position: absolute;
  top: 50%;
  width: auto;
  text-align: center;
  margin-top: -0.8em;
  left: 8px;
  right: 8px;
  z-index: 1044;
}
.mfp-preloader a {
  color: #ccc;
}
.mfp-preloader a:hover {
  color: #fff;
}

.mfp-s-ready .mfp-preloader {
  display: none;
}

.mfp-s-error .mfp-content {
  display: none;
}

button.mfp-close, button.mfp-arrow {
  overflow: visible;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  display: block;
  outline: none;
  padding: 0;
  z-index: 1046;
  -webkit-box-shadow: none;
  box-shadow: none;
}
button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

.mfp-close {
  width: 44px;
  height: 44px;
  line-height: 44px;
  position: absolute;
  right: 0;
  top: 0;
  text-decoration: none;
  text-align: center;
  opacity: 1;
  filter: alpha(opacity=100);
  padding: 0 0 18px 10px;
  color: #fff;
  font-style: normal;
  font-size: 28px;
  font-family: Georgia, Times, serif;
}
.mfp-close:hover, .mfp-close:focus {
  opacity: 1;
  filter: alpha(opacity=100);
}
.mfp-close:active {
  top: 1px;
}

.mfp-close-btn-in .mfp-close {
  color: #fff;
}

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
  color: #fff;
  right: -6px;
  text-align: right;
  padding-right: 6px;
  width: 100%;
}

.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #ccc;
  font-size: 12px;
  line-height: 18px;
}

.mfp-arrow {
  position: absolute;
  opacity: 1;
  filter: alpha(opacity=100);
  margin: 0;
  top: 50%;
  margin-top: -55px;
  padding: 0;
  width: 90px;
  height: 110px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.mfp-arrow:active {
  margin-top: -54px;
}
.mfp-arrow:hover, .mfp-arrow:focus {
  opacity: 1;
  filter: alpha(opacity=100);
}
.mfp-arrow:before, .mfp-arrow:after,
.mfp-arrow .mfp-b,
.mfp-arrow .mfp-a {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  left: 0;
  top: 0;
  margin-top: 35px;
  margin-left: 35px;
  border: medium inset transparent;
}
.mfp-arrow:after,
.mfp-arrow .mfp-a {
  border-top-width: 13px;
  border-bottom-width: 13px;
  top: 8px;
}
.mfp-arrow:before,
.mfp-arrow .mfp-b {
  border-top-width: 21px;
  border-bottom-width: 21px;
  opacity: 0.7;
}

.mfp-arrow-left {
  left: 0;
}
.mfp-arrow-left:after,
.mfp-arrow-left .mfp-a {
  border-right: 17px solid #fff;
  margin-left: 31px;
}
.mfp-arrow-left:before,
.mfp-arrow-left .mfp-b {
  margin-left: 25px;
  border-right: 27px solid #fff;
}

.mfp-arrow-right {
  right: 0;
}
.mfp-arrow-right:after,
.mfp-arrow-right .mfp-a {
  border-left: 17px solid #fff;
  margin-left: 39px;
}
.mfp-arrow-right:before,
.mfp-arrow-right .mfp-b {
  border-left: 27px solid #fff;
}

.mfp-iframe-holder {
  padding-top: 40px;
  padding-bottom: 40px;
}
.mfp-iframe-holder .mfp-content {
  line-height: 0;
  width: 100%;
  max-width: 900px;
}
.mfp-iframe-holder .mfp-close {
  top: -40px;
}

.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%;
}
.mfp-iframe-scaler iframe {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #000;
}

/* Main image in popup */
img.mfp-img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  line-height: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 40px 0 40px;
  margin: 0 auto;
}

/* The shadow behind the image */
.mfp-figure {
  line-height: 0;
}
.mfp-figure:after {
  content: "";
  position: absolute;
  left: 0;
  top: 40px;
  bottom: 40px;
  display: block;
  right: 0;
  width: auto;
  height: auto;
  z-index: -1;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #444;
}
.mfp-figure small {
  color: #bdbdbd;
  display: block;
  font-size: 12px;
  line-height: 14px;
}
.mfp-figure figure {
  margin: 0;
}
.mfp-figure figcaption {
  margin-top: 0;
  margin-bottom: 0;
}

.mfp-bottom-bar {
  margin-top: -36px;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  cursor: auto;
}

.mfp-title {
  text-align: left;
  line-height: 18px;
  color: #f3f3f3;
  word-wrap: break-word;
  padding-right: 36px;
}

.mfp-image-holder .mfp-content {
  max-width: 100%;
}

.mfp-gallery .mfp-image-holder .mfp-figure {
  cursor: pointer;
}

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
  /**
   * Remove all paddings around the image on small screen
   */
  .mfp-img-mobile .mfp-image-holder {
    padding-left: 0;
    padding-right: 0;
  }
  .mfp-img-mobile img.mfp-img {
    padding: 0;
  }
  .mfp-img-mobile .mfp-figure:after {
    top: 0;
    bottom: 0;
  }
  .mfp-img-mobile .mfp-figure small {
    display: inline;
    margin-left: 5px;
  }
  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    margin: 0;
    top: auto;
    padding: 3px 5px;
    position: fixed;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  .mfp-img-mobile .mfp-bottom-bar:empty {
    padding: 0;
  }
  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top: 3px;
  }
  .mfp-img-mobile .mfp-close {
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    text-align: center;
    padding: 0;
  }
}
@media all and (max-width: 900px) {
  .mfp-arrow {
    -webkit-transform: scale(0.75);
    transform: scale(0.75);
  }
  .mfp-arrow-left {
    -webkit-transform-origin: 0;
    transform-origin: 0;
  }
  .mfp-arrow-right {
    -webkit-transform-origin: 100%;
    transform-origin: 100%;
  }
  .mfp-container {
    padding-left: 6px;
    padding-right: 6px;
  }
}
.mfp-ie7 .mfp-img {
  padding: 0;
}
.mfp-ie7 .mfp-bottom-bar {
  width: 600px;
  left: 50%;
  margin-left: -300px;
  margin-top: 5px;
  padding-bottom: 5px;
}
.mfp-ie7 .mfp-container {
  padding: 0;
}
.mfp-ie7 .mfp-content {
  padding-top: 44px;
}
.mfp-ie7 .mfp-close {
  top: 0;
  right: 0;
  padding-top: 0;
}

/* ==========================================================================
   Custom page components
   ==========================================================================

   Shared classes used across a few handcrafted pages (blogs, research,
   publications). These styles intentionally use existing theme variables
   (no new hard-coded brand colors).
*/
/* Skip-to-content link (accessibility) */
.skip-link {
  position: absolute;
  top: -100%;
  left: 1rem;
  z-index: 999;
  padding: 0.5rem 1rem;
  background: #1e3a5f;
  color: #fff;
  text-decoration: none;
  border-radius: 4px;
}
.skip-link:focus {
  top: 0.5rem;
}

.jp-gradient-banner {
  background: linear-gradient(135deg, #2e8ca8 0%, rgb(29.9, 91, 109.2) 100%);
  color: #fff;
  padding: 1.5rem;
  border-radius: 12px;
  margin-bottom: 2rem;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.jp-gradient-banner a {
  color: #fff;
}

.jp-gradient-banner__title {
  margin-top: 0;
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
  padding-bottom: 0.5rem;
}

.jp-stats-row {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  justify-content: space-around;
  align-items: center;
}

.jp-stat {
  text-align: center;
}

.jp-stat__value {
  font-size: 2rem;
  font-weight: bold;
}

.jp-stat__label {
  font-size: 0.85rem;
  opacity: 0.9;
}

.jp-stat__value a {
  text-decoration: underline;
}

.jp-banner__footer {
  margin-top: 1rem;
  font-size: 0.8rem;
  opacity: 0.85;
  text-align: center;
}

/* Homepage "At a Glance" metrics row */
.jp-at-a-glance {
  background: #fafafa;
  padding: 1.25rem;
  border-radius: 8px;
  border: 1px solid rgb(241.7, 242.5, 243.1);
  margin: 1.5rem 0;
}

.jp-at-a-glance .jp-stat__value {
  font-size: 1.5rem;
  color: #2e8ca8;
}

.jp-at-a-glance .jp-stat__label {
  color: #7a8288;
  opacity: 1;
}

/* Homepage Featured Work */
.jp-featured-list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-bottom: 2rem;
}

.jp-featured-item {
  display: flex;
  align-items: baseline;
  gap: 0.6rem;
  padding: 0.6rem 0;
  border-bottom: 1px solid rgb(241.7, 242.5, 243.1);
}

.jp-featured-item:last-child {
  border-bottom: none;
}

.jp-featured-item__type {
  flex-shrink: 0;
  font-size: 0.7rem;
  font-weight: 600;
  text-transform: uppercase;
  background: rgba(46, 140, 168, 0.12);
  color: rgb(29.9, 91, 109.2);
  padding: 2px 8px;
  border-radius: 4px;
}

.jp-featured-item__title {
  font-weight: 600;
  white-space: nowrap;
}

.jp-featured-item__desc {
  font-size: 0.9rem;
  color: #7a8288;
}

@media (max-width: 600px) {
  .jp-featured-item {
    flex-direction: column;
    gap: 0.25rem;
  }
  .jp-featured-item__title {
    white-space: normal;
  }
}
/* Publications: citations-by-year mini chart */
.jp-yearly-chart {
  margin-top: 1rem;
}

.jp-yearly-chart__bars {
  display: flex;
  align-items: flex-end;
  gap: 0.35rem;
  height: 200px;
  padding: 0.75rem 0.5rem;
  overflow-x: auto;
  background: #fafafa;
  border-radius: 10px;
  border: 1px solid rgba(46, 140, 168, 0.18);
}

.jp-yearly-chart__item {
  flex: 1 0 32px;
  min-width: 32px;
  max-width: 48px;
  display: flex;
  flex-direction: column;
  align-items: center;
  height: 100%;
}

.jp-yearly-chart__bar-container {
  flex: 1;
  width: 100%;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}

.jp-yearly-chart__count {
  font-size: 0.6rem;
  color: #7a8288;
  margin-bottom: 0.15rem;
}

.jp-yearly-chart__item:hover .jp-yearly-chart__count {
  font-weight: 600;
  color: #2e8ca8;
}

.jp-yearly-chart__bar {
  width: 100%;
  min-height: 4px;
  border-radius: 4px 4px 0 0;
  background: linear-gradient(180deg, #2e8ca8 0%, rgb(36.8, 112, 134.4) 100%);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
  transition: transform 0.2s, box-shadow 0.2s;
}

.jp-yearly-chart__item:hover .jp-yearly-chart__bar {
  background: linear-gradient(180deg, rgb(62.6635514019, 170.2803738318, 202.3364485981) 0%, #2e8ca8 100%);
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
  transform: scaleX(1.1);
}

.jp-yearly-chart__year {
  margin-top: 0.25rem;
  font-size: 0.6rem;
  color: #7a8288;
  white-space: nowrap;
}

.jp-yearly-chart__note {
  margin-top: 0.5rem;
  text-align: right;
}

/* Blog page */
.blog-filters {
  margin-bottom: 2rem;
}

.blog-filters__links {
  margin-left: 0.5rem;
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.jp-filter__link {
  padding: 4px 10px;
  background: rgba(46, 140, 168, 0.12);
  color: rgb(29.9, 91, 109.2);
  border-radius: 4px;
  text-decoration: none;
}

.jp-filter__link.is-active {
  background: #2e8ca8;
  color: #fff;
}

.jp-card {
  margin-bottom: 1.5rem;
  padding: 1.25rem;
  background: #fff;
  border-radius: 10px;
  border-left: 4px solid #2e8ca8;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.jp-card__title {
  margin: 0 0 0.5rem 0;
}

.jp-card__title a {
  color: rgb(65.88, 70.2, 73.44);
  text-decoration: none;
}

.jp-card__meta {
  font-size: 0.85rem;
  color: #7a8288;
  margin-bottom: 0.75rem;
}

.jp-pill {
  background: rgba(46, 140, 168, 0.12);
  color: rgb(29.9, 91, 109.2);
  padding: 2px 8px;
  border-radius: 4px;
  font-size: 0.8em;
}

.jp-lang-pill {
  background: rgba(248, 148, 6, 0.25);
  padding: 2px 6px;
  border-radius: 4px;
  font-size: 0.7rem;
  vertical-align: middle;
}

.jp-pill--linkedin {
  background-color: #0077b5;
  color: #fff;
}

.jp-filter-btn {
  display: inline-block;
  padding: 0.3rem 0.7rem;
  border: 1px solid rgb(241.7, 242.5, 243.1);
  border-radius: 4px;
  background: #fff;
  cursor: pointer;
  font-size: 0.85rem;
  margin: 0.2rem;
  transition: all 0.2s ease;
}

.jp-filter-btn:hover {
  border-color: #2e8ca8;
}

.jp-filter-btn.active {
  background: #2e8ca8;
  color: #fff;
  border-color: #2e8ca8;
}

/* Teaching page: section anchors and quick nav */
.section-nav {
  font-size: 0.95rem;
}

.section-nav a {
  margin-right: 0.5rem;
}

h2[id], h3[id], h4[id] {
  /* offset for potential header/nav overlap when jumping to anchors */
  scroll-margin-top: 80px;
}

html {
  scroll-behavior: smooth;
}

.jp-card__desc {
  color: rgb(62.22, 66.3, 69.36);
  margin: 0.75rem 0;
  font-size: 0.95rem;
  line-height: 1.5;
}

.jp-card__img {
  margin: 0.75rem 0;
}

.jp-card__img img {
  max-width: 100%;
  max-height: 200px;
  border-radius: 6px;
  object-fit: cover;
}

.jp-card__footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  margin-top: 0.75rem;
}

.jp-topic {
  background: #fafafa;
  padding: 2px 8px;
  border-radius: 12px;
  font-size: 0.75rem;
  color: #7a8288;
}

.jp-readmore {
  margin-left: auto;
  font-size: 0.85rem;
  color: #2e8ca8;
  text-decoration: none;
}

.jp-readmore--secondary {
  margin-left: 0.75rem;
  font-size: 0.8rem;
  color: #7a8288;
  opacity: 0.8;
}

.jp-readmore--secondary:hover {
  opacity: 1;
  color: #2e8ca8;
}

.jp-separator {
  margin: 2rem 0;
}

.jp-muted {
  font-size: 0.85em;
  color: #7a8288;
}

/* Research page */
.pub-type {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 4px;
  font-size: 0.75rem;
  font-weight: 600;
  margin-right: 6px;
  text-transform: uppercase;
}

.pub-type.paper {
  background: rgba(46, 140, 168, 0.15);
  color: rgb(29.9, 91, 109.2);
}

.pub-type.blog {
  background: rgba(248, 148, 6, 0.2);
  color: rgb(148.8, 88.8, 3.6);
}

.pub-type.code {
  background: rgba(98, 196, 98, 0.18);
  color: rgb(53.9, 107.8, 53.9);
}

.research-section {
  margin-bottom: 2rem;
  padding: 1.5rem;
  background: #fafafa;
  border-radius: 10px;
  border-left: 4px solid #2e8ca8;
}

.research-section h3 {
  margin-top: 0;
}

.research-section.hidden {
  display: none;
}

.research-section h4 {
  margin-top: 1.5rem;
}

.work-list {
  list-style: none;
  padding-left: 0;
  margin: 1rem 0;
}

.work-list li {
  margin-bottom: 0.5rem;
  padding: 0.5rem;
  background: #fff;
  border-radius: 6px;
}

.work-list li:hover {
  background: rgb(250.345, 250.625, 250.835);
}

/* Publications page */
.jp-soft-panel {
  background: #fafafa;
  padding: 1.5rem;
  border-radius: 8px;
  margin-bottom: 2rem;
  border-left: 4px solid #2e8ca8;
}

.jp-soft-panel__title {
  margin-top: 0;
}

.jp-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.9rem;
}

.jp-table thead tr {
  background: rgb(232.032, 232.8, 233.376);
}

.jp-table th,
.jp-table td {
  padding: 10px;
  border-bottom: 1px solid rgb(241.7, 242.5, 243.1);
}

.jp-table th {
  text-align: left;
  border-bottom: 2px solid rgb(241.7, 242.5, 243.1);
}

.jp-table th.jp-table__center,
.jp-table td.jp-table__center {
  text-align: center;
}

.jp-badge {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 4px;
  color: #fff;
  font-size: 0.85em;
}

.jp-badge--success {
  background: #62c462;
}

.jp-badge--info {
  background: #2e8ca8;
}

.jp-badge--muted {
  background: #7a8288;
}

.jp-breakdown-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 1rem;
  margin-bottom: 2rem;
}

.jp-breakdown-card {
  background: #fff;
  padding: 1rem;
  border-radius: 8px;
  border: 1px solid rgb(241.7, 242.5, 243.1);
  text-align: center;
}

.jp-breakdown-card__value {
  font-size: 2rem;
  font-weight: bold;
  color: #2e8ca8;
}

.jp-rankings {
  background: linear-gradient(135deg, rgb(250.345, 250.625, 250.835) 0%, rgb(227.198, 227.95, 228.514) 100%);
  padding: 1.5rem;
  border-radius: 8px;
  margin-bottom: 2rem;
}

.jp-rankings__title {
  margin-top: 0;
}

.jp-rankings-row {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  justify-content: space-around;
}

.jp-rankings-card {
  text-align: center;
  background: #fff;
  padding: 1rem;
  border-radius: 8px;
  min-width: 150px;
}

.jp-rankings-card__value {
  font-size: 1.5rem;
  font-weight: bold;
  color: #2e8ca8;
}

.jp-hr {
  margin: 2rem 0;
}

/* ==========================================================================
   Article/Post Content Styling (LinkedIn-inspired)
   ========================================================================== */
.page__content {
  /* Enhanced typography for article readability */
  /* Optimize reading width */
  max-width: 744px;
  /* Better paragraph spacing and typography */
}
.page__content p {
  font-size: 1.1rem;
  line-height: 1.8;
  margin-bottom: 1.5rem;
  color: rgba(0, 0, 0, 0.75);
}
.page__content {
  /* Headings with better hierarchy */
}
.page__content h2 {
  font-size: 1.75rem;
  font-weight: 600;
  margin-top: 2.5rem;
  margin-bottom: 1rem;
  color: rgba(0, 0, 0, 0.85);
  padding-bottom: 0.5rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
.page__content h3 {
  font-size: 1.35rem;
  font-weight: 600;
  margin-top: 2rem;
  margin-bottom: 0.75rem;
  color: rgba(0, 0, 0, 0.85);
}
.page__content {
  /* Styled blockquotes - LinkedIn style */
}
.page__content blockquote {
  font-style: italic;
  font-size: 1.3rem;
  line-height: 1.6;
  margin: 2.5rem 2rem;
  padding: 1.5rem 2rem;
  text-align: center;
  color: rgba(0, 0, 0, 0.75);
  background: linear-gradient(135deg, rgba(46, 140, 168, 0.05) 0%, rgba(46, 140, 168, 0.02) 100%);
  border-left: 4px solid #2e8ca8;
  border-radius: 0 8px 8px 0;
}
.page__content blockquote p {
  margin: 0;
  font-size: inherit;
}
.page__content blockquote strong {
  color: rgba(0, 0, 0, 0.85);
}
@media (max-width: 600px) {
  .page__content blockquote {
    margin: 2rem 0.5rem;
    padding: 1rem 1.25rem;
    font-size: 1.15rem;
  }
}
.page__content {
  /* Lists with better spacing */
}
.page__content ul, .page__content ol {
  margin-bottom: 1.5rem;
  padding-left: 1.5rem;
}
.page__content ul li, .page__content ol li {
  margin-bottom: 0.75rem;
  line-height: 1.7;
}
.page__content ul li p, .page__content ol li p {
  margin-bottom: 0.5rem;
}
.page__content {
  /* Numbered lists - LinkedIn style */
}
.page__content ol {
  counter-reset: item;
  list-style: none;
  padding-left: 0;
}
.page__content ol > li {
  counter-increment: item;
  padding-left: 2.5rem;
  position: relative;
}
.page__content ol > li::before {
  content: counter(item) ".";
  position: absolute;
  left: 0;
  font-weight: 600;
  color: #2e8ca8;
}
.page__content {
  /* Images - better presentation */
}
.page__content img {
  border-radius: 8px;
  margin: 2rem auto;
  display: block;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.page__content figure {
  margin: 2rem 0;
}
.page__content figure img {
  margin-bottom: 0.75rem;
}
.page__content figure figcaption {
  text-align: center;
  font-size: 0.9rem;
  color: rgba(0, 0, 0, 0.6);
  font-style: italic;
}
.page__content {
  /* Horizontal rules as section dividers */
}
.page__content hr {
  border: none;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(0, 0, 0, 0.15), transparent);
  margin: 3rem 0;
}
.page__content {
  /* Links with better styling */
}
.page__content a {
  color: #2e8ca8;
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: border-color 0.2s ease;
}
.page__content a:hover {
  border-bottom-color: #2e8ca8;
}
.page__content {
  /* Strong/bold text emphasis */
}
.page__content strong {
  font-weight: 600;
  color: rgba(0, 0, 0, 0.85);
}
.page__content {
  /* Italic emphasis */
}
.page__content em {
  font-style: italic;
}

/* Notice box styling (for LinkedIn attribution) */
.notice--info {
  background: linear-gradient(135deg, rgba(46, 140, 168, 0.08) 0%, rgba(46, 140, 168, 0.03) 100%);
  border-left: 4px solid #2e8ca8;
  border-radius: 0 8px 8px 0;
  padding: 1rem 1.25rem;
  margin-bottom: 2rem;
  font-size: 0.95rem;
}
.notice--info a {
  color: #2e8ca8;
  font-weight: 500;
}

/* ==========================================================================
   Long-form Content Typography (Research, About pages)
   ========================================================================== */
.long-form-content p,
.research-section p {
  line-height: 1.85;
  margin-bottom: 1.25rem;
}
.long-form-content li,
.research-section li {
  line-height: 1.75;
}

/* Research page sub-theme descriptions */
.research-section h4 + p {
  font-size: 0.95rem;
  color: rgba(0, 0, 0, 0.7);
  line-height: 1.7;
}

/* ==========================================================================
   Tag/Filter Buttons (shared across blogs, events, research)
   ========================================================================== */
.tag-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-bottom: 1.5rem;
  padding: 1rem;
  background: #fafafa;
  border-radius: 8px;
}

.tag-filters--alt {
  background: rgb(238.28, 245.8, 248.04);
}

.tag-filters__label {
  margin-right: 0.5rem;
  align-self: center;
  font-weight: 600;
}

.tag-filter {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  padding: 0.4rem 0.8rem;
  border: 2px solid rgb(241.7, 242.5, 243.1);
  border-radius: 20px;
  background: #fff;
  cursor: pointer;
  font-size: 0.85rem;
  transition: all 0.2s ease;
}

.tag-filter:hover {
  border-color: #2e8ca8;
  background: rgb(238.28, 245.8, 248.04);
}

.tag-filter.active {
  border-color: #2e8ca8;
  background: #2e8ca8;
  color: #fff;
}

.tag-filter[data-filter=all].active,
.tag-filter[data-tag=all].active,
.tag-filter[data-org=all].active {
  background: rgb(73.2, 78, 81.6);
  border-color: rgb(73.2, 78, 81.6);
}

.filter-count {
  display: inline-block;
  background: rgba(0, 0, 0, 0.1);
  padding: 0.1rem 0.4rem;
  border-radius: 10px;
  font-size: 0.75rem;
  font-weight: 600;
}

.tag-filter.active .filter-count {
  background: rgba(255, 255, 255, 0.3);
}

/* ==========================================================================
   Events Page
   ========================================================================== */
.event-card {
  background: #fafafa;
  border-left: 4px solid #2e8ca8;
  padding: 1rem 1.25rem;
  margin-bottom: 1rem;
  border-radius: 0 4px 4px 0;
  transition: opacity 0.3s ease;
}

.event-card:hover {
  background: rgb(250.345, 250.625, 250.835);
}

.event-card.hidden {
  display: none;
}

.event-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.event-title {
  font-weight: 600;
  color: rgb(73.2, 78, 81.6);
  font-size: 1.05rem;
  margin: 0;
}

.event-title a {
  color: inherit;
  text-decoration: none;
}

.event-title a:hover {
  color: #2e8ca8;
}

.event-date {
  background: #2e8ca8;
  color: #fff;
  padding: 0.2rem 0.6rem;
  border-radius: 3px;
  font-size: 0.85rem;
  white-space: nowrap;
}

.event-location {
  color: #7a8288;
  font-size: 0.9rem;
  margin-top: 0.25rem;
}

.event-role {
  display: inline-block;
  background: rgb(241.7, 242.5, 243.1);
  color: rgb(73.2, 78, 81.6);
  padding: 0.15rem 0.5rem;
  border-radius: 3px;
  font-size: 0.8rem;
  margin-top: 0.5rem;
  margin-right: 0.5rem;
}

.event-tags {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.3rem;
  margin-top: 0.5rem;
}

.event-tag {
  display: inline-block;
  padding: 0.1rem 0.4rem;
  border-radius: 3px;
  font-size: 0.7rem;
  color: #fff;
}

.event-tag[data-tag=learning] {
  background: #2e86ab;
}

.event-tag[data-tag=statistics] {
  background: #a23b72;
}

.event-tag[data-tag=governance] {
  background: #1d3557;
}

.event-tag[data-tag=poverty] {
  background: #e63946;
}

.event-tag[data-tag=mobility] {
  background: #457b9d;
}

.event-tag[data-tag=sdg] {
  background: #f18f01;
}

.event-tag[data-tag=child-wellbeing] {
  background: #c73e1d;
}

.event-tag[data-tag=partnerships] {
  background: #3d348b;
}

.event-tag[data-tag=africa] {
  background: #119822;
}

.event-tag[data-tag=digital] {
  background: #6b4c9a;
}

.event-session {
  margin-top: 0.5rem;
  color: rgb(65.88, 70.2, 73.44);
}

.event-details {
  margin-top: 0.5rem;
  font-size: 0.9rem;
  color: #7a8288;
}

.event-details strong {
  color: rgb(73.2, 78, 81.6);
}

.year-divider {
  font-size: 1.1rem;
  font-weight: 600;
  color: #2e8ca8;
  margin: 1.5rem 0 1rem 0;
  padding-bottom: 0.25rem;
  border-bottom: 1px dashed rgb(241.7, 242.5, 243.1);
}

.events-count {
  color: #7a8288;
  font-size: 0.9rem;
  margin-bottom: 1rem;
}

/* ==========================================================================
   Blog Page: Translation Links
   ========================================================================== */
.jp-translations {
  display: block;
  margin-top: 0.5rem;
  font-size: 0.85rem;
  color: #7a8288;
}

.jp-lang-link {
  display: inline-block;
  padding: 0.15rem 0.4rem;
  background: rgb(229.92, 241.2, 244.56);
  border-radius: 3px;
  font-weight: 600;
  font-size: 0.75rem;
  color: #2e8ca8;
  text-decoration: none;
}

.jp-lang-link:hover {
  background: #2e8ca8;
  color: #fff;
}

/* ==========================================================================
   Contact Page
   ========================================================================== */
.contact-section {
  margin-bottom: 2rem;
}

.contact-section h2 {
  border-bottom: 2px solid rgb(241.7, 242.5, 243.1);
  padding-bottom: 0.5rem;
  margin-bottom: 1rem;
}

.contact-methods {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 1.5rem;
  margin: 2rem 0;
}

.contact-card {
  background: #fafafa;
  border-radius: 8px;
  padding: 1.5rem;
  border-left: 4px solid #2e8ca8;
}

.contact-card h3 {
  margin-top: 0;
  color: rgb(65.88, 70.2, 73.44);
}

.contact-card i {
  margin-right: 0.5rem;
  color: #7a8288;
}

.contact-card a {
  word-break: break-word;
}

.contact-form {
  background: #fafafa;
  padding: 2rem;
  border-radius: 8px;
  max-width: 600px;
}

.contact-form label {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 600;
}

.contact-form input,
.contact-form textarea {
  width: 100%;
  padding: 0.75rem;
  margin-bottom: 1rem;
  border: 1px solid rgb(241.7, 242.5, 243.1);
  border-radius: 4px;
  font-size: 1rem;
}

.contact-form textarea {
  min-height: 150px;
  resize: vertical;
}

.contact-form button {
  background: #2e8ca8;
  color: #fff;
  border: none;
  padding: 0.75rem 2rem;
  font-size: 1rem;
  border-radius: 4px;
  cursor: pointer;
  transition: background 0.2s ease;
}

.contact-form button:hover {
  background: rgb(39.1, 119, 142.8);
}

/* ==========================================================================
   CV Page: Work Experience, Teaching, Skills
   ========================================================================== */
/* Print-only header: hidden on screen, shown via _print.scss */
.cv-print-header {
  display: none;
}

.cv-job {
  margin-bottom: 1.5rem;
}

.cv-job h3 {
  margin-bottom: 0.25rem;
}

.cv-job__meta {
  margin: 0;
  color: #7a8288;
}

.cv-job__desc {
  margin-top: 0.5rem;
}

.cv-teaching__meta {
  color: #7a8288;
}

.cv-teaching__years {
  font-size: 0.9em;
  color: rgb(188.5, 192.5, 195.5);
}

.cv-meta {
  font-size: 0.9em;
  color: #7a8288;
}

.cv-download {
  text-align: right;
  margin-bottom: 1rem;
}

/* ==========================================================================
   Quick Links (consistent component for cross-page navigation)
   ========================================================================== */
.jp-quick-links {
  display: flex;
  gap: 0.75rem;
  flex-wrap: wrap;
  margin: 1.5rem 0;
  font-size: 0.9rem;
}

.jp-quick-links a {
  padding: 0.4rem 0.8rem;
  background: #fafafa;
  border: 1px solid rgb(241.7, 242.5, 243.1);
  border-radius: 6px;
  text-decoration: none;
  color: rgb(73.2, 78, 81.6);
  transition: all 0.2s ease;
}

.jp-quick-links a:hover {
  border-color: #2e8ca8;
  color: #2e8ca8;
  background: rgb(238.28, 245.8, 248.04);
}

/* ==========================================================================
   Impact Factor Badges (publications page)
   ========================================================================== */
.jp-badge--danger {
  background: #ee5f5b;
}

.jp-rankings__footer {
  text-align: center;
  margin-top: 1rem;
}

/* ==========================================================================
   Report/Commentary type badge
   ========================================================================== */
.pub-type.report {
  background: rgba(122, 130, 136, 0.18);
  color: rgb(73.2, 78, 81.6);
}

/* ==========================================================================
   Teaching Page
   ========================================================================== */
.teaching-card {
  background: #fafafa;
  border-left: 4px solid #2e8ca8;
  padding: 1rem 1.25rem;
  margin-bottom: 1rem;
  border-radius: 0 4px 4px 0;
  transition: opacity 0.3s ease;
}

.teaching-card:hover {
  background: rgb(250.345, 250.625, 250.835);
}

.teaching-card.hidden {
  display: none;
}

.teaching-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.teaching-header__body {
  flex: 1;
}

.teaching-title {
  font-weight: 600;
  color: rgb(73.2, 78, 81.6);
  font-size: 1.05rem;
  margin: 0;
}

.teaching-years {
  background: #2e8ca8;
  color: #fff;
  padding: 0.2rem 0.6rem;
  border-radius: 3px;
  font-size: 0.85rem;
  white-space: nowrap;
}

.teaching-institution {
  color: #7a8288;
  font-size: 0.9rem;
  margin-top: 0.25rem;
}

.teaching-level,
.teaching-role {
  display: inline-block;
  background: rgb(241.7, 242.5, 243.1);
  color: rgb(73.2, 78, 81.6);
  padding: 0.15rem 0.5rem;
  border-radius: 3px;
  font-size: 0.8rem;
  margin-top: 0.5rem;
  margin-right: 0.5rem;
}

.teaching-tags {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.3rem;
  margin-top: 0.5rem;
}

.teaching-tag {
  display: inline-block;
  padding: 0.1rem 0.4rem;
  border-radius: 3px;
  font-size: 0.7rem;
  color: #fff;
}

.teaching-tag[data-tag=statistics] {
  background: #a23b72;
}

.teaching-tag[data-tag=methodology] {
  background: #2e86ab;
}

.teaching-tag[data-tag=governance] {
  background: #1d3557;
}

.teaching-tag[data-tag=supervision] {
  background: #e63946;
}

.teaching-tag[data-tag=seminar] {
  background: #457b9d;
}

.teaching-tag[data-tag=policy] {
  background: #f18f01;
}

.teaching-tag[data-tag=measurement] {
  background: #c73e1d;
}

.teaching-tag[data-tag=learning] {
  background: #3d348b;
}

.teaching-tag[data-tag=poverty] {
  background: #119822;
}

.teaching-tag[data-tag=econometrics] {
  background: #6b4c9a;
}

.teaching-description {
  margin-top: 0.75rem;
  color: #7a8288;
  font-size: 0.9rem;
  line-height: 1.5;
}

.teaching-meta {
  margin-top: 0.5rem;
  font-size: 0.85rem;
  color: #7a8288;
}

.teaching-meta strong {
  color: rgb(73.2, 78, 81.6);
}

/* ==========================================================================
   GitHub Page
   ========================================================================== */
.github-sort-bar {
  margin-bottom: 1.5em;
}

.github-sort-bar label {
  margin-left: 1em;
}

#sort-select {
  padding: 4px 10px;
  border-radius: 4px;
  border: 1px solid rgb(241.7, 242.5, 243.1);
  background: #fff;
  cursor: pointer;
}

.github-loading {
  text-align: center;
  padding: 2rem;
}

.github-error {
  display: none;
  text-align: center;
  padding: 2rem;
  color: #ee5f5b;
}

.github-repos {
  display: none;
}

.jp-card__title i.fab.fa-github {
  margin-right: 0.3em;
  color: rgb(65.88, 70.2, 73.44);
}

.jp-card__tags .jp-tag i {
  margin-right: 0.3em;
}

.jp-card__tags .topic-tag {
  background: rgb(223.65, 237.75, 241.95);
  color: rgb(27.6, 84, 100.8);
  font-size: 0.75em;
}

.jp-card.featured-repo {
  border-left: 4px solid #2e8ca8;
}

.featured-badge {
  font-size: 0.65em;
  background: #2e8ca8;
  color: #fff;
  padding: 2px 6px;
  border-radius: 3px;
  margin-left: 0.5em;
  vertical-align: middle;
}

/* ==========================================================================
   PRINT STYLES
   ========================================================================== */
@media print {
  /* ---- Hide non-essential UI ---- */
  .masthead,
  .toc,
  .page__share,
  .page__related,
  .ads,
  .page__footer,
  .author__avatar,
  .author__urls-wrapper,
  .jp-quick-links,
  .tag-filters,
  .github-sort-bar,
  .cv-download,
  .jp-banner__footer a,
  .sidebar,
  .author__content,
  script {
    display: none !important;
  }
  /* ---- Layout: full width ---- */
  .page {
    width: 100% !important;
    float: none !important;
    margin: 0;
    padding: 0;
  }
  /* ---- Typography ---- */
  body {
    font-family: "Source Serif 4", "Source Serif Pro", Georgia, "Times New Roman", serif;
    font-size: 10.5pt;
    line-height: 1.5;
    color: #1a1a1a;
    background: #fff;
  }
  h1, h2, h3, h4, h5, h6 {
    font-family: "Source Sans 3", "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans-serif;
    color: #1a1a1a;
    page-break-after: avoid;
  }
  h1 {
    font-size: 18pt;
  }
  h2 {
    font-size: 13pt;
    border-bottom: 1px solid #ccc;
    padding-bottom: 3pt;
    margin-top: 14pt;
    margin-bottom: 6pt;
  }
  h3 {
    font-size: 11pt;
    margin-top: 10pt;
    margin-bottom: 4pt;
  }
  p, li {
    orphans: 3;
    widows: 3;
  }
  ul {
    margin-top: 2pt;
    margin-bottom: 6pt;
  }
  li {
    margin-bottom: 2pt;
  }
  /* ---- Print-only CV header ---- */
  .cv-print-header {
    display: block !important;
    text-align: center;
    margin-bottom: 12pt;
    padding-bottom: 8pt;
    border-bottom: 2px solid #1a1a1a;
  }
  .cv-print-header__name {
    font-family: "Source Sans 3", "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 22pt;
    font-weight: 700;
    letter-spacing: 0.5pt;
    margin: 0 0 2pt;
    color: #1a1a1a;
  }
  .cv-print-header__title {
    font-family: "Source Sans 3", "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 11pt;
    font-weight: 400;
    color: #444;
    margin: 0 0 4pt;
  }
  .cv-print-header__contact {
    font-family: "Source Sans 3", "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 9pt;
    color: #666;
    margin: 0;
  }
  .cv-print-header__contact a {
    color: #666;
    text-decoration: none;
  }
  /* ---- Links: no URL clutter (PDF links are clickable) ---- */
  a {
    color: #1a1a1a !important;
    text-decoration: none !important;
  }
  a[href^=http]::after {
    content: none;
  }
  /* ---- Citation metrics banner ---- */
  .citation-metrics {
    background: #f8f8f8 !important;
    color: #1a1a1a !important;
    box-shadow: none;
    border: 1px solid #ddd;
    padding: 8pt 12pt !important;
    margin-bottom: 10pt;
    page-break-inside: avoid;
    print-color-adjust: exact;
    -webkit-print-color-adjust: exact;
  }
  .citation-metrics .jp-gradient-banner__title {
    font-size: 11pt;
    margin-bottom: 4pt;
  }
  .jp-stats-row {
    display: flex;
    justify-content: space-around;
  }
  .jp-stat__value {
    color: #1a1a1a !important;
    font-size: 13pt;
    font-weight: 700;
  }
  .jp-stat__label {
    font-size: 8pt;
    color: #666;
  }
  .jp-banner__footer {
    font-size: 8pt;
    color: #999;
    margin-top: 4pt;
  }
  /* ---- Gradient banners (generic) ---- */
  .jp-gradient-banner {
    background: #f8f8f8 !important;
    color: #1a1a1a !important;
    box-shadow: none;
    border: 1px solid #ddd;
  }
  .jp-gradient-banner a,
  .jp-gradient-banner .jp-stat__value {
    color: #1a1a1a !important;
  }
  /* ---- At-a-glance section ---- */
  .jp-at-a-glance {
    border: 1px solid #ddd;
  }
  .jp-at-a-glance .jp-stat__value {
    color: #333;
  }
  /* ---- Cards and panels ---- */
  .jp-card,
  .jp-soft-panel,
  .research-section,
  .event-card,
  .teaching-card {
    box-shadow: none;
    border-left: 2px solid #999;
    page-break-inside: avoid;
  }
  /* ---- Hide web-only navigation links in print ---- */
  .cv-nav-link {
    display: none !important;
  }
  /* ---- CV job entries ---- */
  .cv-job {
    margin-bottom: 6pt;
  }
  .cv-job h3 {
    margin-bottom: 1pt;
  }
  .cv-job__meta {
    font-size: 9.5pt;
    margin: 0 0 2pt;
  }
  .cv-job__desc {
    font-size: 10pt;
    margin: 0 0 4pt;
  }
  /* ---- CV teaching/meta entries ---- */
  .cv-teaching__meta {
    font-size: 9pt;
    color: #444;
  }
  .cv-teaching__years {
    font-size: 9pt;
    color: #666;
  }
  .cv-meta {
    font-size: 9pt;
    color: #666;
  }
  /* ---- Citation metrics summary (compact inline) ---- */
  .cv-citation-summary {
    font-size: 9.5pt;
    color: #444;
    border-left: 3px solid #999;
    padding-left: 10pt;
    margin-bottom: 10pt;
  }
  /* ---- Publication entries ---- */
  .cv-pub {
    font-size: 10pt;
    margin-bottom: 4pt;
    page-break-inside: avoid;
  }
  .cv-pub em {
    font-style: italic;
  }
  .cv-pub a {
    color: #444 !important;
  }
  /* ---- Prose paragraphs (skills, writing) ---- */
  .cv-prose {
    font-size: 10pt;
    line-height: 1.5;
    text-align: justify;
  }
  /* ---- Rankings section ---- */
  .jp-rankings {
    background: #f8f8f8 !important;
  }
  /* ---- Tables ---- */
  .jp-table th,
  .jp-table td {
    border: 1px solid #ccc;
  }
  /* ---- Page title: hide on-screen title when print header is present ---- */
  .cv-print-header + .page__title,
  .page__title {
    display: none;
  }
  /* ---- Short CV: tighter spacing for 2-page target ---- */
  .cv-short-body h2 {
    font-size: 12pt;
    margin-top: 8pt;
    margin-bottom: 4pt;
    padding-bottom: 2pt;
  }
  .cv-short-body h3 {
    font-size: 10pt;
    margin-top: 6pt;
    margin-bottom: 2pt;
  }
  .cv-short-body ul {
    margin-top: 1pt;
    margin-bottom: 4pt;
  }
  .cv-short-body li {
    margin-bottom: 1pt;
  }
  .cv-short-body .cv-job {
    margin-bottom: 2pt;
  }
  .cv-short-body .cv-job__meta {
    font-size: 9pt;
  }
  .cv-short-body .cv-pub {
    font-size: 9.5pt;
    margin-bottom: 2pt;
  }
  .cv-short-body .cv-citation-summary {
    font-size: 9pt;
    margin-bottom: 6pt;
  }
  .cv-short-body .cv-prose {
    font-size: 9.5pt;
    line-height: 1.4;
  }
}

/*# sourceMappingURL=main.css.map */