@charset "UTF-8";
/*
 *
 *  Minimal Mistakes
 *
 *  Designer: Michael Rose
 *  Twitter: http://twitter.com/mmistakes
 *
*/
/* ==========================================================================
   Sass variables
   ========================================================================== */
/* 
   Typography
   ========================================================================== */
/* 
   Colors
   ========================================================================== */
/* buttons */
/* brands */
/* links */
/* 
   Breakpoints
   ========================================================================== */
/* ==========================================================================
   Grid mixins
   ========================================================================== */
/* 
   Define number of columns in the grid
   Common values would be 12, 16 or 24
   ========================================================================== */
/* 
   Works out the width of elements based on total number of columns and width
   number of columns being displayed. Removes 20px for margins.
   ========================================================================== */
/* 
   Add x amount of column padding before an element
   Example: @include prefix(1,12);
   ========================================================================== */
/* 
   Add x amount of column padding after an element
   Example: @include suffix(2,12);
   ========================================================================== */
/* 
   Remove left margin
   Example: @include first;
   ========================================================================== */
/* 
   Remove right margin
   Example: @include last;
   ========================================================================== */
/* 
   Push an element x amount of column(s) to the right
   Example: @include push(2,12);
   ========================================================================== */
/* 
   Pull an element x amount of column(s) to the left
   Example: @include pull(1,12);
   ========================================================================== */
/* ==========================================================================
   Utility mixins
   ========================================================================== */
/* 
   Clearfix
   For clearing floats like a boss h5bp.com/q
   ========================================================================== */
/* 
   Webkit-style focus
   ========================================================================== */
/* 
   Center-align a block level element
   ========================================================================== */
/* ==========================================================================
   Typography related mixins
   ========================================================================== */
/* 
   Maintains vertical rhythm by setting a font-sizes proportional to
   line-height and bottom margin
   example: @font-size(16);
   ========================================================================== */
/* 
   Just font-size (REMs + pixel fallback)
   example: @include font-rem(16);
   ========================================================================== */
/* 
   Just font-size (REMs + pixel fallback) and line-height
   @include font(16);
   ========================================================================== */
/* 
   Hide text overflow and end with ...
   ========================================================================== */
/* Indentation variable */
/* ==========================================================================
   Gradient mixins
   ========================================================================== */
/* ==========================================================================
   Rounded corners
   ========================================================================== */
/* 
   Round all corners
   example: @include rounded(4px);
   ========================================================================== */
/* 
   Round individual corners (top right, bottom right, bottom left, top left)
   example: @include border-radius(4px, 0, 0, 4px);
   ========================================================================== */
/* 
   Box shadow
   example: @include box-shadow(HORIZONTAL VERTICAL BLUR COLOR));
   ========================================================================== */
/* 
   Drop shadow
   example: @include drop-shadow(HORIZONTAL, VERTICAL, BLUR, ALPHA);
   ========================================================================== */
/* 
   Text shadow
   example: @include text-shadow(0 2px 3px rgba(0,0,0,.25));
   ========================================================================== */
/* 
   Opacity
   example: @include opacity(0.5); // 50% opacity
   ========================================================================== */
/* ==========================================================================
   Transformations
   ========================================================================== */
/* 
   @include rotate(VALUEdeg);
   ========================================================================== */
/* 
   @include scale(VALUE);
   ========================================================================== */
/* 
   @include skew(VALUE, VALUE);
   ========================================================================== */
/* 
   @include transition(PROPERTY DURATION DELAY(OPTIONAL) TIMING-FINCTION);
   ========================================================================== */
/* 
   @include translate(VALUE, VALUE);
   ========================================================================== */
/* ==========================================================================
   Background
   ========================================================================== */
/* 
   @include background-alpha(VALUE VALUE);
   ========================================================================== */
/* 
   @include background-size(VALUE VALUE);
   ========================================================================== */
/* 
   Box-sizing
   example: @include box-sizing(VALUE); //(border-box, padding-box, content-box)
   ========================================================================== */
/* ==========================================================================
   Image replacement
   ========================================================================== */
/* 
   Hide from visual and speaking browsers
   ========================================================================== */
/* 
   Hide but maintain layout
   ========================================================================== */
/* 
   Resize
   example: @include resize(VALUE); //(none, both, horizontal, vertical, inherit)

   ========================================================================== */
/* 
   Hidden but available to speaking browsers
   ========================================================================== */
/*! normalize.css v2.1.0 | MIT License | git.io/normalize */
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined in IE 8/9.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block; }

/**
 * Correct `inline-block` display not defined in IE 8/9.
 */
audio,
canvas,
video {
  display: inline-block; }

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
 * Address styling not present in IE 8/9.
 */
[hidden] {
  display: none; }

/* ==========================================================================
   Base
   ========================================================================== */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 2 */ }

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

/* ==========================================================================
   Links
   ========================================================================== */
/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */
a:focus {
  outline: thin dotted; }

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0; }

/* ==========================================================================
   Typography
   ========================================================================== */
/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari 5, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/**
 * Address styling not present in IE 8/9, Safari 5, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted; }

/**
 * Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
 */
b,
strong {
  font-weight: bold; }

/**
 * Address styling not present in Safari 5 and Chrome.
 */
dfn {
  font-style: italic; }

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0; }

/**
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000; }

/**
 * Correct font family set oddly in Safari 5 and Chrome.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, serif;
  font-size: 1em; }

/**
 * Improve readability of pre-formatted text in all browsers.
 */
pre {
  white-space: pre; }

/**
 * Set consistent quote types.
 */
q {
  quotes: "\201C" "\201D" "\2018" "\2019"; }

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%; }

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

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* ==========================================================================
   Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9.
 */
img {
  border: 0; }

/**
 * Correct overflow displayed oddly in IE 9.
 */
svg:not(:root) {
  overflow: hidden; }

/* ==========================================================================
   Figures
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari 5.
 */
figure {
  margin: 0; }

/* ==========================================================================
   Forms
   ========================================================================== */
/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
 * 1. Correct `color` not being inherited in IE 8/9.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * 1. Correct font family not being inherited in all browsers.
 * 2. Correct font size not being inherited in all browsers.
 * 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
 */
button,
input,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 2 */
  margin: 0;
  /* 3 */ }

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
button,
input {
  line-height: normal; }

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */
button,
select {
  text-transform: none; }

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */ }

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default; }

/**
 * 1. Address box sizing set to `content-box` in IE 8/9.
 * 2. Remove excess padding in IE 8/9.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box; }

/**
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/**
 * 1. Remove default vertical scrollbar in IE 8/9.
 * 2. Improve readability and alignment in all browsers.
 */
textarea {
  overflow: auto;
  /* 1 */
  vertical-align: top;
  /* 2 */ }

/* ==========================================================================
   Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
  margin-bottom: 1.5em;
  width: 100%;
  /* make full width */ }

/* ==========================================================================
   Site wide styles
   ========================================================================== */
/* 
   Selection
   ========================================================================== */
::-moz-selection {
  background-color: #dadada;
  color: #343434;
  text-shadow: none; }

::selection {
  background-color: #dadada;
  color: #343434;
  text-shadow: none; }

/* 
   Global classes
   ========================================================================== */
/* Capitalize */
.all-caps {
  text-transform: uppercase; }

/* Float left */
.pull-left {
  float: left; }

/* Float right */
.pull-right {
  float: right; }

.image-pull-right {
  float: right;
  margin-top: 0; }

/* Clearfix */
.clearfix {
  *zoom: 1; }
  .clearfix:before, .clearfix:after {
    display: table;
    content: ""; }
  .clearfix:after {
    clear: both; }

/* Remove bullets and indentation from list */
.unstyled-list {
  list-style: none;
  margin-left: 0;
  padding-left: 0; }
  .unstyled-list li {
    list-style-type: none; }

/* 
   Global transition
   ========================================================================== */
b, i, strong, em, blockquote, p, q, span, figure, img, h1, h2, header, input, a {
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease; }

/* ==========================================================================
   Typography
   ========================================================================== */
/* 
   Headings
   ========================================================================== */
h1, h2, h3, h4, h5, h6 {
  font-family: "PT Sans Narrow", sans-serif; }

h1 {
  font-size: 32px;
  font-size: 2rem;
  line-height: 0.8125;
  margin-bottom: 26px;
  margin-bottom: 1.625rem; }

h2 {
  font-size: 28px;
  font-size: 1.75rem;
  line-height: 0.9286;
  margin-bottom: 26px;
  margin-bottom: 1.625rem; }

h3 {
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 1.0833;
  margin-bottom: 26px;
  margin-bottom: 1.625rem; }

h4 {
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.4444;
  margin-bottom: 26px;
  margin-bottom: 1.625rem; }

h5 {
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.625;
  margin-bottom: 26px;
  margin-bottom: 1.625rem; }

h6 {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.8571;
  margin-bottom: 26px;
  margin-bottom: 1.625rem; }

/* 
   Links
   ========================================================================== */
a {
  text-decoration: none;
  color: #343434; }
  a:visited {
    color: #4e4e4e; }
  a:hover {
    color: #1b1b1b; }
  a:focus {
    outline: thin dotted;
    color: #343434; }
  a:hover, a:active {
    outline: 0; }

/* 
   Figure captions
   ========================================================================== */
figcaption {
  padding-top: 10px;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.8571;
  line-height: 1.3;
  color: #4d4d4b; }

/* 
   Feature image captions
   ========================================================================== */
.image-credit {
  display: inline;
  float: left;
  width: 83.33333%;
  margin-left: 8.33333%;
  margin-right: 8.33333%;
  display: block;
  text-align: right;
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 2.1667;
  line-height: 1.3;
  font-style: italic;
  color: #80807e; }
  @media only screen and (min-width: 37.5em) {
    .image-credit {
      display: inline;
      float: left;
      width: 75%;
      margin-left: 0%;
      margin-right: 0%; } }
  @media only screen and (min-width: 86.375em) {
    .image-credit {
      display: inline;
      float: left;
      width: 70.83333%; } }
  .image-credit a {
    color: #80807e; }

/* 
   Notices
   ========================================================================== */
.notice {
  margin-top: 1.5em;
  padding: .5em 1em;
  text-indent: 0;
  font-size: 14px;
  font-size: 0.875rem;
  background-color: #fff;
  border: 1px solid #cccccc;
  border-radius: 3px; }

/* 
   Blockquotes
   ========================================================================== */
blockquote {
  margin-left: -28px;
  padding-left: 20px;
  border-left: 8px solid #333332;
  font-family: "PT Serif", serif;
  font-style: italic; }

/* 
   Footnotes
   ========================================================================== */
.footnotes ol, .footnotes li, .footnotes p {
  margin-bottom: 0;
  font-size: 14px;
  font-size: 0.875rem; }

/* 
   Paragraphs
   ========================================================================== */
p {
  margin: 0 0 1.625rem; }

/* 
   Code snippets
   ========================================================================== */
tt, code, kbd, samp, pre {
  font-family: Monaco, "Courier New", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", monospace; }

p code,
li code {
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1.5;
  white-space: nowrap;
  margin: 0 2px;
  padding: 0 5px;
  border: 1px solid #f7f7f7;
  background-color: #efefef;
  border-radius: 3px; }

pre {
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1.5;
  overflow-x: auto; }

/* ==========================================================================
   Pygments.rb syntax highlighting
   ========================================================================== */
.highlight {
  background-color: #efefef;
  font-family: Monaco, "Courier New", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", monospace;
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 2.1667;
  color: #333332;
  margin-bottom: 1.5em;
  border-radius: 4px;
  /* Comment */
  /* Error */
  /* Keyword */
  /* Operator */
  /* Comment.Multiline */
  /* Comment.Preproc */
  /* Comment.Single */
  /* Comment.Special */
  /* Generic.Deleted */
  /* Generic.Emph */
  /* Generic.Error */
  /* Generic.Heading */
  /* Generic.Inserted */
  /* Generic.Output */
  /* Generic.Prompt */
  /* Generic.Strong */
  /* Generic.Subheading */
  /* Generic.Traceback */
  /* Keyword.Constant */
  /* Keyword.Declaration */
  /* Keyword.Namespace */
  /* Keyword.Pseudo */
  /* Keyword.Reserved */
  /* Keyword.Type */
  /* Literal.Number */
  /* Literal.String */
  /* Name.Attribute */
  /* Name.Builtin */
  /* Name.Class */
  /* Name.Constant */
  /* Name.Decorator */
  /* Name.Entity */
  /* Name.Exception */
  /* Name.Function */
  /* Name.Label */
  /* Name.Namespace */
  /* Name.Tag */
  /* Name.Variable */
  /* Operator.Word */
  /* Text.Whitespace */
  /* Literal.Number.Float */
  /* Literal.Number.Hex */
  /* Literal.Number.Integer */
  /* Literal.Number.Oct */
  /* Literal.String.Backtick */
  /* Literal.String.Char */
  /* Literal.String.Doc */
  /* Literal.String.Double */
  /* Literal.String.Escape */
  /* Literal.String.Heredoc */
  /* Literal.String.Interpol */
  /* Literal.String.Other */
  /* Literal.String.Regex */
  /* Literal.String.Single */
  /* Literal.String.Symbol */
  /* Name.Builtin.Pseudo */
  /* Name.Variable.Class */
  /* Name.Variable.Global */
  /* Name.Variable.Instance */
  /* Literal.Number.Integer.Long */ }
  .highlight pre {
    position: relative;
    margin: 0;
    padding: 1em; }
  .highlight .lineno {
    padding-right: 24px;
    color: #b3b3b1; }
  .highlight .hll {
    background-color: #ffffcc; }
  .highlight .c {
    color: #999988;
    font-style: italic; }
  .highlight .err {
    color: #a61717;
    background-color: #e3d2d2; }
  .highlight .k {
    color: #000000;
    font-weight: bold; }
  .highlight .o {
    color: #000000;
    font-weight: bold; }
  .highlight .cm {
    color: #999988;
    font-style: italic; }
  .highlight .cp {
    color: #999999;
    font-weight: bold;
    font-style: italic; }
  .highlight .c1 {
    color: #999988;
    font-style: italic; }
  .highlight .cs {
    color: #999999;
    font-weight: bold;
    font-style: italic; }
  .highlight .gd {
    color: #000000;
    background-color: #ffdddd; }
  .highlight .ge {
    color: #000000;
    font-style: italic; }
  .highlight .gr {
    color: #aa0000; }
  .highlight .gh {
    color: #999999; }
  .highlight .gi {
    color: #000000;
    background-color: #ddffdd; }
  .highlight .go {
    color: #888888; }
  .highlight .gp {
    color: #555555; }
  .highlight .gs {
    font-weight: bold; }
  .highlight .gu {
    color: #aaaaaa; }
  .highlight .gt {
    color: #aa0000; }
  .highlight .kc {
    color: #000000;
    font-weight: bold; }
  .highlight .kd {
    color: #000000;
    font-weight: bold; }
  .highlight .kn {
    color: #000000;
    font-weight: bold; }
  .highlight .kp {
    color: #000000;
    font-weight: bold; }
  .highlight .kr {
    color: #000000;
    font-weight: bold; }
  .highlight .kt {
    color: #445588;
    font-weight: bold; }
  .highlight .m {
    color: #009999; }
  .highlight .s {
    color: #d01040; }
  .highlight .na {
    color: #008080; }
  .highlight .nb {
    color: #0086B3; }
  .highlight .nc {
    color: #445588;
    font-weight: bold; }
  .highlight .no {
    color: #008080; }
  .highlight .nd {
    color: #3c5d5d;
    font-weight: bold; }
  .highlight .ni {
    color: #800080; }
  .highlight .ne {
    color: #990000;
    font-weight: bold; }
  .highlight .nf {
    color: #990000;
    font-weight: bold; }
  .highlight .nl {
    color: #990000;
    font-weight: bold; }
  .highlight .nn {
    color: #555555; }
  .highlight .nt {
    color: #000080; }
  .highlight .nv {
    color: #008080; }
  .highlight .ow {
    color: #000000;
    font-weight: bold; }
  .highlight .w {
    color: #bbbbbb; }
  .highlight .mf {
    color: #009999; }
  .highlight .mh {
    color: #009999; }
  .highlight .mi {
    color: #009999; }
  .highlight .mo {
    color: #009999; }
  .highlight .sb {
    color: #d01040; }
  .highlight .sc {
    color: #d01040; }
  .highlight .sd {
    color: #d01040; }
  .highlight .s2 {
    color: #d01040; }
  .highlight .se {
    color: #d01040; }
  .highlight .sh {
    color: #d01040; }
  .highlight .si {
    color: #d01040; }
  .highlight .sx {
    color: #d01040; }
  .highlight .sr {
    color: #009926; }
  .highlight .s1 {
    color: #d01040; }
  .highlight .ss {
    color: #990073; }
  .highlight .bp {
    color: #999999; }
  .highlight .vc {
    color: #008080; }
  .highlight .vg {
    color: #008080; }
  .highlight .vi {
    color: #008080; }
  .highlight .il {
    color: #009999; }

/* ==========================================================================
   Coderay syntax highlighting
   ========================================================================== */
.CodeRay {
  background-color: #efefef;
  font-family: Monaco, "Courier New", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", monospace;
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 2.1667;
  color: #333332;
  margin-bottom: 1.5em;
  border-radius: 4px; }
  .CodeRay pre {
    margin: 0px;
    padding: 1em; }

span.CodeRay {
  white-space: pre;
  border: 0px;
  padding: 2px; }

table.CodeRay {
  border-collapse: collapse;
  width: 100%;
  padding: 2px; }

table.CodeRay td {
  padding: 1em 0.5em;
  vertical-align: top; }

.CodeRay .line-numbers, .CodeRay .no {
  background-color: #ECECEC;
  color: #AAA;
  text-align: right; }

.CodeRay .line-numbers a {
  color: #AAA; }

.CodeRay .line-numbers tt {
  font-weight: bold; }

.CodeRay .line-numbers .highlighted {
  color: red; }

.CodeRay .line {
  display: block;
  float: left;
  width: 100%; }

.CodeRay span.line-numbers {
  padding: 0 24px 0 4px; }

.CodeRay .code {
  width: 100%; }

ol.CodeRay {
  font-size: 10pt; }

ol.CodeRay li {
  white-space: pre; }

.CodeRay .code pre {
  overflow: auto; }

.CodeRay .debug {
  color: white !important;
  background: blue !important; }

.CodeRay .annotation {
  color: #007; }

.CodeRay .attribute-name {
  color: #f08; }

.CodeRay .attribute-value {
  color: #700; }

.CodeRay .binary {
  color: #509;
  font-weight: bold; }

.CodeRay .comment {
  color: #998;
  font-style: italic; }

.CodeRay .char {
  color: #04D; }

.CodeRay .char .content {
  color: #04D; }

.CodeRay .char .delimiter {
  color: #039; }

.CodeRay .class {
  color: #458;
  font-weight: bold; }

.CodeRay .complex {
  color: #A08;
  font-weight: bold; }

.CodeRay .constant {
  color: teal; }

.CodeRay .color {
  color: #0A0; }

.CodeRay .class-variable {
  color: #369; }

.CodeRay .decorator {
  color: #B0B; }

.CodeRay .definition {
  color: #099;
  font-weight: bold; }

.CodeRay .directive {
  color: #088;
  font-weight: bold; }

.CodeRay .delimiter {
  color: black; }

.CodeRay .doc {
  color: #970; }

.CodeRay .doctype {
  color: #34b; }

.CodeRay .doc-string {
  color: #D42;
  font-weight: bold; }

.CodeRay .escape {
  color: #666;
  font-weight: bold; }

.CodeRay .entity {
  color: #800;
  font-weight: bold; }

.CodeRay .error {
  color: #F00;
  background-color: #FAA; }

.CodeRay .exception {
  color: #C00;
  font-weight: bold; }

.CodeRay .filename {
  color: #099; }

.CodeRay .function {
  color: #900;
  font-weight: bold; }

.CodeRay .global-variable {
  color: teal;
  font-weight: bold; }

.CodeRay .hex {
  color: #058;
  font-weight: bold; }

.CodeRay .integer {
  color: #099; }

.CodeRay .include {
  color: #B44;
  font-weight: bold; }

.CodeRay .inline {
  color: black; }

.CodeRay .inline .inline {
  background: #ccc; }

.CodeRay .inline .inline .inline {
  background: #bbb; }

.CodeRay .inline .inline-delimiter {
  color: #D14; }

.CodeRay .inline-delimiter {
  color: #D14; }

.CodeRay .important {
  color: #f00; }

.CodeRay .interpreted {
  color: #B2B;
  font-weight: bold; }

.CodeRay .instance-variable {
  color: teal; }

.CodeRay .label {
  color: #970;
  font-weight: bold; }

.CodeRay .local-variable {
  color: #963; }

.CodeRay .octal {
  color: #40E;
  font-weight: bold; }

.CodeRay .predefined-constant {
  font-weight: bold; }

.CodeRay .predefined {
  color: #369;
  font-weight: bold; }

.CodeRay .preprocessor {
  color: #579; }

.CodeRay .pseudo-class {
  color: #00C;
  font-weight: bold; }

.CodeRay .predefined-type {
  color: #074;
  font-weight: bold; }

.CodeRay .reserved, .keyword {
  color: #000;
  font-weight: bold; }

.CodeRay .key {
  color: #808; }

.CodeRay .key .delimiter {
  color: #606; }

.CodeRay .key .char {
  color: #80f; }

.CodeRay .value {
  color: #088; }

.CodeRay .regexp {
  background-color: #fff0ff; }

.CodeRay .regexp .content {
  color: #808; }

.CodeRay .regexp .delimiter {
  color: #404; }

.CodeRay .regexp .modifier {
  color: #C2C; }

.CodeRay .regexp .function {
  color: #404;
  font-weight: bold; }

.CodeRay .string {
  color: #D20; }

.CodeRay .string .string .string {
  background-color: #ffd0d0; }

.CodeRay .string .content {
  color: #D14; }

.CodeRay .string .char {
  color: #D14; }

.CodeRay .string .delimiter {
  color: #D14; }

.CodeRay .shell {
  color: #D14; }

.CodeRay .shell .delimiter {
  color: #D14; }

.CodeRay .symbol {
  color: #990073; }

.CodeRay .symbol .content {
  color: #A60; }

.CodeRay .symbol .delimiter {
  color: #630; }

.CodeRay .tag {
  color: #070; }

.CodeRay .tag-special {
  color: #D70;
  font-weight: bold; }

.CodeRay .type {
  color: #339;
  font-weight: bold; }

.CodeRay .variable {
  color: #036; }

.CodeRay .insert {
  background: #afa; }

.CodeRay .delete {
  background: #faa; }

.CodeRay .change {
  color: #aaf;
  background: #007; }

.CodeRay .head {
  color: #f8f;
  background: #505; }

.CodeRay .insert .insert {
  color: #080;
  font-weight: bold; }

.CodeRay .delete .delete {
  color: #800;
  font-weight: bold; }

.CodeRay .change .change {
  color: #66f; }

.CodeRay .head .head {
  color: #f4f; }

/* 
   Rules
   ========================================================================== */
hr {
  display: block;
  margin: 1em 0;
  padding: 0;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #fff; }

/* 
   Figures and images
   ========================================================================== */
figure {
  margin-bottom: 1.625rem; }

article img {
  max-width: 100%;
  height: auto;
  border-width: 0;
  vertical-align: middle;
  -ms-interpolation-mode: bicubic; }

svg:not(:root) {
  overflow: hidden; }

/* 2 images of equal dimensions in a row */
.half {
  margin: 0 auto;
  width: 100%;
  *zoom: 1; }
  .half:before, .half:after {
    display: table;
    content: "";
    /* Fixes Opera/contenteditable bug: */
    /* http://nicolasgallagher.com/micro-clearfix-hack/#comment-36952 */
    line-height: 0; }
  .half:after {
    clear: both; }
  @media only screen and (min-width: 30em) {
    .half img {
      display: inline;
      float: left;
      width: 50%; }
    .half figcaption {
      display: inline;
      float: left;
      width: 100%; } }

/* 3 images of equal dimensions in a row */
.third {
  margin: 0 auto;
  width: 100%;
  *zoom: 1; }
  .third:before, .third:after {
    display: table;
    content: "";
    /* Fixes Opera/contenteditable bug: */
    /* http://nicolasgallagher.com/micro-clearfix-hack/#comment-36952 */
    line-height: 0; }
  .third:after {
    clear: both; }
  @media only screen and (min-width: 30em) {
    .third img {
      display: inline;
      float: left;
      width: 33.33333%; }
    .third figcaption {
      display: inline;
      float: left;
      width: 100%; } }

/* 
   Buttons
   ========================================================================== */
/* Default button */
.btn, #goog-wm-sb {
  display: inline-block;
  margin-bottom: 20px;
  padding: 8px 20px;
  font-size: 14px;
  font-size: 0.875rem;
  font-family: "PT Sans Narrow", sans-serif;
  font-weight: 700;
  background-color: #111;
  color: #fff;
  border-width: 2px !important;
  border-style: solid !important;
  border-color: #111;
  text-decoration: none !important;
  border-radius: 3px; }
  .btn:visited, #goog-wm-sb:visited {
    color: #fff; }
  .btn:hover, #goog-wm-sb:hover {
    background-color: #fff;
    color: #111; }

/* Success button */
.btn-success {
  background-color: #5cb85c;
  color: #fff;
  border-color: #5cb85c; }
  .btn-success:visited {
    color: #fff; }
  .btn-success:hover {
    background-color: #fff;
    color: #5cb85c; }

/* Warning button */
.btn-warning {
  background-color: #dd8338;
  color: #fff;
  border-color: #dd8338; }
  .btn-warning:visited {
    color: #fff; }
  .btn-warning:hover {
    background-color: #fff;
    color: #dd8338; }

/* Danger button */
.btn-danger {
  background-color: #C64537;
  color: #fff;
  border-color: #C64537; }
  .btn-danger:visited {
    color: #fff; }
  .btn-danger:hover {
    background-color: #fff;
    color: #C64537; }

/* Information button */
.btn-info {
  background-color: #308cbc;
  color: #fff;
  border-color: #308cbc; }
  .btn-info:visited {
    color: #fff; }
  .btn-info:hover {
    background-color: #fff;
    color: #308cbc; }

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

/* ==========================================================================
   Forms
   ========================================================================== */
btnform {
  margin: 0 0 5px 0; }
  btnform fieldset {
    margin-bottom: 5px;
    padding: 0;
    border-width: 0; }
  btnform legend {
    display: block;
    width: 100%;
    margin-bottom: 10px;
    *margin-left: -7px;
    padding: 0;
    color: #333332;
    border: 0;
    border-bottom: 1px solid #dddddd;
    white-space: normal; }
  btnform p {
    margin-bottom: 5px / 2; }
  btnform ul {
    list-style-type: none;
    margin: 0 0 5px 0;
    padding: 0; }
  btnform br {
    display: none; }

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

input,
button,
select,
textarea {
  font-family: "PT Serif", serif;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }

label {
  display: block;
  margin-bottom: 10px / 8;
  font-weight: bold;
  color: #333332;
  cursor: pointer; }
  label input,
  label textarea,
  label select {
    display: block; }

input,
textarea,
select {
  display: inline-block;
  width: 100%;
  padding: 4px;
  margin-bottom: 5px / 4;
  background-color: #fff;
  border: 1px solid #dddddd;
  color: #333332; }
  input:hover,
  textarea:hover,
  select:hover {
    border-color: #919191; }

.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"] {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;
  *width: 13px;
  *height: 13px; }

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

input[type="file"] {
  width: auto;
  padding: initial;
  line-height: initial;
  border: initial;
  background-color: transparent;
  background-color: initial;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  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;
  overflow: auto;
  height: auto;
  overflow: auto;
  vertical-align: top; }

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

.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: #111;
  outline: 0;
  outline: thin dotted \9; }

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

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

.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; }

/* ==========================================================================
   Page layout
   ========================================================================== */
body {
  background-color: #fff;
  font-family: "PT Serif", serif;
  color: #333332; }

/*
   Header
   ========================================================================== */
.navigation-wrapper {
  margin: 0 auto;
  width: 100%;
  padding: 2em 0 1em;
  font-family: "PT Sans Narrow", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  *zoom: 1; }
  .navigation-wrapper:before, .navigation-wrapper:after {
    display: table;
    content: "";
    /* Fixes Opera/contenteditable bug: */
    /* http://nicolasgallagher.com/micro-clearfix-hack/#comment-36952 */
    line-height: 0; }
  .navigation-wrapper:after {
    clear: both; }

/* Site name */
.site-name {
  display: inline;
  float: left;
  width: 83.33333%;
  margin-left: 8.33333%;
  margin-right: 8.33333%;
  margin-bottom: 1em;
  float: none;
  display: block;
  font-size: 32px;
  font-size: 2rem; }
  @media only screen and (min-width: 37.5em) {
    .site-name {
      display: inline;
      float: left;
      width: 16.66667%;
      margin-left: 4.16667%;
      margin-right: 4.16667%;
      font-size: 32px;
      font-size: 2rem; } }
  @media only screen and (min-width: 86.375em) {
    .site-name {
      display: inline;
      float: left;
      width: 12.5%;
      margin-left: 16.66667%; } }

/* Top navigation links */
.top-navigation {
  display: inline;
  float: left;
  width: 83.33333%;
  margin-left: 8.33333%;
  margin-right: 8.33333%;
  margin-bottom: 1em;
  float: none;
  display: block; }
  @media only screen and (min-width: 37.5em) {
    .top-navigation {
      display: inline;
      float: left;
      width: 75%;
      margin-left: 0%;
      margin-right: 0%; } }
  @media only screen and (min-width: 86.375em) {
    .top-navigation {
      display: inline;
      float: left;
      width: 66.66667%; } }
  .top-navigation ul {
    margin: 0;
    padding: 0;
    clear: both;
    list-style-type: none; }
  .top-navigation li {
    display: block;
    list-style-type: none;
    border-bottom: 1px solid #dddddd;
    border-bottom: 1px solid fade(#111, 10);
    font-size: 16px;
    font-size: 1rem; }
    .top-navigation li:last-child {
      border-bottom: 0 solid transparent; }
    @media only screen and (min-width: 37.5em) {
      .top-navigation li {
        display: inline;
        margin-right: 25px;
        white-space: nowrap;
        border-bottom: 0 solid transparent; } }
    .top-navigation li a {
      display: block;
      padding: 10px 0;
      decoration: none;
      border-bottom: 0 solid transparent;
      -webkit-transition: all 0.2s;
      -moz-transition: all 0.2s;
      -ms-transition: all 0.2s;
      -o-transition: all 0.2s;
      transition: all 0.2s; }
      @media only screen and (min-width: 37.5em) {
        .top-navigation li a {
          display: inline;
          padding: 0; } }

/* Animated lines for mobile nav button */
.navicon-lines-button {
  padding: 0.375rem 0.75rem;
  transition: .3s;
  cursor: pointer;
  user-select: none;
  border-radius: 0.21429rem; }

.navicon-lines-button:hover {
  opacity: 1; }

.navicon-lines-button:active {
  transition: 0; }

.navicon-lines {
  margin-right: 10px;
  margin-bottom: 0.3rem;
  display: inline-block;
  width: 1.5rem;
  height: 0.21429rem;
  background: #fff;
  border-radius: 0.10714rem;
  transition: .3s;
  position: relative; }
  .navicon-lines:before, .navicon-lines:after {
    display: inline-block;
    width: 1.5rem;
    height: 0.21429rem;
    background: #fff;
    border-radius: 0.10714rem;
    transition: .3s;
    position: absolute;
    left: 0;
    content: '';
    -webkit-transform-origin: 0.10714rem center;
    transform-origin: 0.10714rem center; }
  .navicon-lines:before {
    top: 0.375rem; }
  .navicon-lines:after {
    top: -0.375rem; }

.navicon-lines-button:hover {
  opacity: 1; }
  .navicon-lines-button:hover .navicon-lines:before {
    top: 0.42857rem; }
  .navicon-lines-button:hover .navicon-lines:after {
    top: -0.42857rem; }

.navicon-lines-button.x.active .navicon-lines {
  background: transparent; }
  .navicon-lines-button.x.active .navicon-lines:before, .navicon-lines-button.x.active .navicon-lines:after {
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    top: 0;
    width: 1.5rem; }
  .navicon-lines-button.x.active .navicon-lines:before {
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg); }
  .navicon-lines-button.x.active .navicon-lines:after {
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg); }

.nav .navtoogle {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: normal;
  background-color: #111;
  color: #fff;
  border: none;
  cursor: pointer; }
  @media only screen and (min-width: 37.5em) {
    .nav .navtoogle {
      display: none; } }

.nav button {
  border: none;
  background: none; }

.navtoogle i {
  z-index: -1; }

.icon-menu {
  position: relative;
  top: 3px;
  line-height: 0; }

.no-js .nav .navtoggle {
  display: none; }

.no-js .nav ul {
  max-height: 30em;
  overflow: hidden; }

.js .nav ul {
  max-height: 0;
  overflow: hidden; }
  @media only screen and (min-width: 37.5em) {
    .js .nav ul {
      max-height: 30em; } }

.js .nav .active + ul {
  max-height: 30em;
  overflow: hidden;
  -webkit-transition: max-height .4s;
  -moz-transition: max-height .4s;
  -o-transition: max-height .4s;
  -ms-transition: max-height .4s;
  transition: max-height .4s; }

/* Main content */
#main {
  counter-reset: captions;
  margin: 0 auto;
  width: 100%;
  *zoom: 1;
  clear: both;
  margin-top: 2em; }
  #main:before, #main:after {
    display: table;
    content: "";
    /* Fixes Opera/contenteditable bug: */
    /* http://nicolasgallagher.com/micro-clearfix-hack/#comment-36952 */
    line-height: 0; }
  #main:after {
    clear: both; }
  #main h1 {
    margin-top: 0; }
  #main .post,
  #main .page {
    margin: 0 auto;
    width: 100%;
    display: inline;
    float: left;
    width: 83.33333%;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
    margin-bottom: 2em; }
    @media only screen and (min-width: 37.5em) {
      #main .post,
      #main .page {
        display: inline;
        float: left;
        width: 50%;
        margin-left: 0%;
        margin-right: 0%; } }
    @media only screen and (min-width: 86.375em) {
      #main .post,
      #main .page {
        display: inline;
        float: left;
        width: 45.83333%; } }

.post-wide {
  display: inline;
  float: left;
  width: 83.33333%;
  margin-left: 8.33333%;
  margin-right: 8.33333%; }

/* Index listing specific styling */
#index {
  margin: 0 auto;
  width: 100%;
  display: inline;
  float: left;
  width: 83.33333%;
  margin-left: 8.33333%;
  margin-right: 8.33333%;
  margin-bottom: 2em; }
  @media only screen and (min-width: 37.5em) {
    #index {
      display: inline;
      float: left;
      width: 50%;
      margin-left: 0%;
      margin-right: 0%; } }
  @media only screen and (min-width: 86.375em) {
    #index {
      display: inline;
      float: left;
      width: 37.5%; } }
  #index h3 {
    margin: 0;
    padding-bottom: .5em;
    font-size: 28px;
    font-size: 1.75rem;
    border-bottom: 1px solid #c4c4c4; }
  #index article h2 {
    margin-bottom: 4px;
    font-size: 20px;
    font-size: 1.25rem; }
    #index article h2.link-post {
      margin-bottom: 26px;
      margin-bottom: 1.625rem; }
  #index article p {
    font-size: 14px;
    font-size: 0.875rem; }
  #index article p + p {
    text-indent: 0; }

/* Large feature header image */
.image-wrap {
  position: relative;
  margin-bottom: 2em;
  *zoom: 1; }
  .image-wrap:before, .image-wrap:after {
    display: table;
    content: "";
    /* Fixes Opera/contenteditable bug: */
    /* http://nicolasgallagher.com/micro-clearfix-hack/#comment-36952 */
    line-height: 0; }
  .image-wrap:after {
    clear: both; }
  .image-wrap:after {
    content: " ";
    display: block;
    position: absolute;
    bottom: 0;
    left: 8%;
    width: 0;
    height: 0;
    border: 10px solid transparent;
    border-bottom-color: #fff; }
    @media only screen and (min-width: 37.5em) {
      .image-wrap:after {
        left: 25%; } }
    @media only screen and (min-width: 62em) {
      .image-wrap:after {
        border-width: 20px; } }
    @media only screen and (min-width: 86.375em) {
      .image-wrap:after {
        left: 33.333333333%; } }
  .image-wrap img {
    width: 100%;
    height: auto;
    -ms-interpolation-mode: bicubic; }
  .image-wrap .headline-wrap {
    position: absolute;
    bottom: 25px;
    margin-left: 8.33333%; }
    @media only screen and (min-width: 37.5em) {
      .image-wrap .headline-wrap {
        left: 25%;
        margin-left: 0; } }
    @media only screen and (min-width: 86.375em) {
      .image-wrap .headline-wrap {
        margin-left: 8.33333%; } }
    .image-wrap .headline-wrap h1, .image-wrap .headline-wrap h2 {
      color: #fff;
      text-shadow: 0 1px 2px rgba(0, 0, 0, 0.25); }

/* Post byline */
.byline {
  clear: both;
  font-size: 80%; }

.article-author-side h3,
.article-author-bottom h3 {
  margin-bottom: 0; }
.article-author-side p,
.article-author-bottom p {
  font-size: 80%;
  font-style: italic; }
.article-author-side a, .article-author-side a:hover,
.article-author-bottom a,
.article-author-bottom a:hover {
  border-bottom: 0 solid transparent; }

/* Default social media links in author sidebar */
.author-social {
  display: block;
  margin-bottom: 5px;
  font-size: 14px;
  font-size: 0.875rem;
  color: #111; }
  .author-social:visited {
    color: #111; }
  .author-social:hover {
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -o-transform: scale(1.1);
    transform: scale(1.1); }
  .author-social:active {
    -webkit-transform: translate(0, 2px);
    -moz-transform: translate(0, 2px);
    -ms-transform: translate(0, 2px);
    -o-transform: translate(0, 2px);
    transform: translate(0, 2px); }
  .author-social .fa {
    margin-right: 5px; }

/* Author sidebar */
.article-author-side {
  display: none; }
  .article-author-side .bio-photo {
    max-width: 110px;
    border-radius: 150px; }
  @media only screen and (min-width: 37.5em) {
    .article-author-side {
      display: block;
      display: inline;
      float: left;
      width: 16.66667%;
      margin-left: 4.16667%;
      margin-right: 4.16667%; }
      .article-author-side h3,
      .article-author-side p,
      .article-author-side .author-social {
        display: block;
        max-width: 125px; }
      .article-author-side h3 {
        margin-top: 10px;
        margin-bottom: 10px; }
      .article-author-side p {
        margin-bottom: 20px; }
      .article-author-side .author-social {
        margin-bottom: 5px; } }
  @media only screen and (min-width: 62em) {
    .article-author-side h3,
    .article-author-side .bio-photo,
    .article-author-side p,
    .article-author-side .author-social {
      max-width: 150px; } }
  @media only screen and (min-width: 86.375em) {
    .article-author-side {
      display: inline;
      float: left;
      width: 12.5%;
      margin-left: 16.66667%; } }

/* Author module - mobile only */
.article-author-bottom {
  margin-bottom: 1em; }
  @media only screen and (min-width: 37.5em) {
    .article-author-bottom {
      display: none; } }
  .article-author-bottom .bio-photo {
    float: left;
    margin-right: 25px;
    max-width: 100px;
    border-radius: 150px; }
  .article-author-bottom .author-social {
    display: inline-block;
    margin-right: 10px; }
  @media only screen and (min-width: 62em) {
    .article-author-bottom h3,
    .article-author-bottom .bio-photo,
    .article-author-bottom p,
    .article-author-bottom .author-social {
      max-width: 150px; } }

/* Post content wrapper */
.article-wrap p > a,
.article-wrap li > a {
  text-decoration: underline; }

/* Table of contents */
.toc {
  font-size: 95%; }
  @media only screen and (min-width: 62em) {
    .toc {
      display: block;
      display: inline;
      float: left;
      width: 16.66667%;
      margin-left: 4.16667%;
      margin-right: 4.16667%;
      position: absolute;
      top: 5.5em;
      right: 0;
      background-color: #fff; } }
  .toc header {
    background: #2b2b2b; }
  .toc h3 {
    margin: 0;
    padding: 5px 10px;
    color: #fff;
    font-size: 16px;
    font-size: 1rem;
    text-transform: uppercase; }
    .toc h3:hover {
      cursor: pointer; }
  .toc ul {
    margin: 2px 0 0;
    padding: 0;
    line-height: 1; }
  .toc li {
    display: block;
    margin: 0 0 1px 0;
    padding: 0;
    font-family: "PT Sans Narrow", sans-serif;
    list-style-type: none; }
    .toc li:last-child {
      border-bottom-width: 0; }
    .toc li a {
      padding: 10px;
      display: block;
      color: #fff;
      text-decoration: none;
      background: #5e5e5e;
      opacity: 0.7;
      -webkit-transition: opacity 0.2s ease-in-out;
      -moz-transition: opacity 0.2s ease-in-out;
      -ms-transition: opacity 0.2s ease-in-out;
      -o-transition: opacity 0.2s ease-in-out;
      transition: opacity 0.2s ease-in-out; }
      .toc li a:hover {
        opacity: 1; }
    .toc li ul {
      margin: 1px 0 0; }
      .toc li ul li a {
        padding-left: 20px; }

/* TOC trigger for collapsing */
#drawer {
  max-height: 100%;
  overflow: hidden; }
  #drawer.js-hidden {
    max-height: 0; }

/* Image grid - not used */
.image-grid {
  *zoom: 1;
  list-style: none;
  margin: 0 0 1em;
  padding: 0; }
  .image-grid:before, .image-grid:after {
    display: table;
    content: "";
    /* Fixes Opera/contenteditable bug: */
    /* http://nicolasgallagher.com/micro-clearfix-hack/#comment-36952 */
    line-height: 0; }
  .image-grid:after {
    clear: both; }
  .image-grid li {
    display: inline;
    float: left;
    width: 50%; }
    @media only screen and (min-width: 30em) {
      .image-grid li {
        width: 33.333333%; } }
    @media only screen and (min-width: 37.5em) {
      .image-grid li {
        width: 25%; } }
    @media only screen and (min-width: 48em) {
      .image-grid li {
        width: 20%; } }
    @media only screen and (min-width: 62em) {
      .image-grid li {
        width: 16.666666666%; } }

/* Recent grid - not used */
.recent-grid {
  *zoom: 1;
  list-style: none;
  margin: 1em 0; }
  .recent-grid:before, .recent-grid:after {
    display: table;
    content: "";
    /* Fixes Opera/contenteditable bug: */
    /* http://nicolasgallagher.com/micro-clearfix-hack/#comment-36952 */
    line-height: 0; }
  .recent-grid:after {
    clear: both; }
  .recent-grid li {
    display: inline; }
    .recent-grid li a {
      border-bottom: 0 solid transparent; }
      .recent-grid li a:hover {
        border-bottom: 0 solid transparent; }
  .recent-grid img {
    width: 19%;
    margin-bottom: 1%; }

/* Social sharing links */
/* Social media brand buttons */
.social-share {
  margin-bottom: 26px;
  margin-bottom: 1.625rem; }
  .social-share ul, .social-share li {
    margin: 0;
    padding: 0;
    list-style: none; }
  .social-share li {
    display: inline-block; }
  .social-share .facebook {
    background: #3b5998; }
  .social-share .flickr {
    background: #ff0084; }
  .social-share .foursquare {
    background: #0cbadf; }
  .social-share .google-plus {
    background: #dd4b39; }
  .social-share .instagram {
    background: #4e433c; }
  .social-share .linkedin {
    background: #4875b4; }
  .social-share .pinterest {
    background: #cb2027; }
  .social-share .rss {
    background: #fa9b39; }
  .social-share .tumblr {
    background: #2c4762; }
  .social-share .twitter {
    background: #55acee; }
  .social-share .vimeo {
    background: #1ab7ea; }
  .social-share .youtube {
    background: #ff3333; }
  .social-share a {
    display: block;
    padding: 8px 20px;
    text-decoration: none !important;
    text-transform: uppercase;
    font-size: 14px;
    font-size: 0.875rem;
    font-family: "PT Sans Narrow", sans-serif;
    font-weight: 700;
    color: #fff;
    opacity: 0.8; }
    .social-share a:hover {
      opacity: 1; }
  .social-share span {
    display: none; }
    @media only screen and (min-width: 48em) {
      .social-share span {
        display: inline;
        padding-left: 5px; } }
  .social-share h4 {
    font-size: 14px;
    font-size: 0.875rem;
    margin-bottom: 10px;
    text-transform: uppercase; }

/* Footer wrapper */
.footer-wrap {
  margin: 0 auto;
  width: 100%;
  *zoom: 1;
  clear: both;
  padding-bottom: 3em; }
  .footer-wrap:before, .footer-wrap:after {
    display: table;
    content: "";
    /* Fixes Opera/contenteditable bug: */
    /* http://nicolasgallagher.com/micro-clearfix-hack/#comment-36952 */
    line-height: 0; }
  .footer-wrap:after {
    clear: both; }
  .footer-wrap a,
  .footer-wrap a:active,
  .footer-wrap a:visited,
  .footer-wrap p,
  .footer-wrap h4,
  .footer-wrap h5,
  .footer-wrap h6,
  .footer-wrap span {
    font-size: 14px;
    font-size: 0.875rem; }
  .footer-wrap footer {
    display: inline;
    float: left;
    width: 83.33333%;
    margin-left: 8.33333%;
    margin-right: 8.33333%; }
    @media only screen and (min-width: 37.5em) {
      .footer-wrap footer {
        display: inline;
        float: left;
        width: 50%;
        margin-left: 25%;
        margin-right: 25%; } }
    @media only screen and (min-width: 86.375em) {
      .footer-wrap footer {
        display: inline;
        float: left;
        width: 37.5%;
        margin-left: 33.33333%;
        margin-right: 29.16667%; } }

/* Related articles list */
.related-articles {
  display: inline;
  float: left;
  width: 83.33333%;
  margin-left: 8.33333%;
  margin-right: 8.33333%;
  margin-bottom: 2em; }
  @media only screen and (min-width: 37.5em) {
    .related-articles {
      display: inline;
      float: left;
      width: 50%;
      margin-left: 25%;
      margin-right: 25%; } }
  @media only screen and (min-width: 86.375em) {
    .related-articles {
      display: inline;
      float: left;
      width: 37.5%;
      margin-left: 33.33333%;
      margin-right: 29.16667%; } }
  .related-articles h4 {
    text-transform: uppercase;
    margin-bottom: 0; }
  .related-articles li {
    margin-bottom: 0; }

/*
   Browser upgrade alert
   ========================================================================== */
.browser-upgrade {
  background: #000;
  text-align: center;
  margin: 0 0 2em 0;
  padding: 10px;
  text-align: center;
  color: #fff; }
  .browser-upgrade a {
    color: #fff;
    border-bottom: 1px dotted #fff;
    text-decoration: none; }
    .browser-upgrade a:hover {
      border-bottom: 1px solid #fff; }

/*
   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: 14px;
  font-size: 0.875rem;
  background-color: #fff;
  color: #111;
  border-width: 2px !important;
  border-style: solid !important;
  border-color: #919191;
  border-radius: 3px; }

.product-social-links {
  line-height: 10px; }

/*!
 *  Font Awesome 4.1.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */
/* FONT PATH
 * -------------------------- */
@font-face {
  font-family: 'FontAwesome';
  src: url("../fonts/fontawesome-webfont.eot?v=4.1.0");
  src: url("../fonts/fontawesome-webfont.eot?#iefix&v=4.1.0") format("embedded-opentype"), url("../fonts/fontawesome-webfont.woff?v=4.1.0") format("woff"), url("../fonts/fontawesome-webfont.ttf?v=4.1.0") format("truetype"), url("../fonts/fontawesome-webfont.svg?v=4.1.0#fontawesomeregular") format("svg");
  font-weight: normal;
  font-style: normal; }
.fa {
  display: inline-block;
  font-family: FontAwesome;
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

/* makes the font 33% larger relative to the icon container */
.fa-lg {
  font-size: 1.33333em;
  line-height: 0.75em;
  vertical-align: -15%; }

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

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

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

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

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

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

.fa-li {
  position: absolute;
  left: -2.14286em;
  width: 2.14286em;
  top: 0.14286em;
  text-align: center; }
  .fa-li.fa-lg {
    left: -1.85714em; }

.fa-border {
  padding: .2em .25em .15em;
  border: solid 0.08em #eee;
  border-radius: .1em; }

.pull-right {
  float: right; }

.pull-left {
  float: left; }

.fa.pull-left {
  margin-right: .3em; }
.fa.pull-right {
  margin-left: .3em; }

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

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

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

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

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

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

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

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

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

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

.fa-inverse {
  color: #fff; }

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

.fa-music:before {
  content: ""; }

.fa-search:before {
  content: ""; }

.fa-envelope-o:before {
  content: ""; }

.fa-heart:before {
  content: ""; }

.fa-star:before {
  content: ""; }

.fa-star-o:before {
  content: ""; }

.fa-user:before {
  content: ""; }

.fa-film:before {
  content: ""; }

.fa-th-large:before {
  content: ""; }

.fa-th:before {
  content: ""; }

.fa-th-list:before {
  content: ""; }

.fa-check:before {
  content: ""; }

.fa-times:before {
  content: ""; }

.fa-search-plus:before {
  content: ""; }

.fa-search-minus:before {
  content: ""; }

.fa-power-off:before {
  content: ""; }

.fa-signal:before {
  content: ""; }

.fa-gear:before,
.fa-cog:before {
  content: ""; }

.fa-trash-o:before {
  content: ""; }

.fa-home:before {
  content: ""; }

.fa-file-o:before {
  content: ""; }

.fa-clock-o:before {
  content: ""; }

.fa-road:before {
  content: ""; }

.fa-download:before {
  content: ""; }

.fa-arrow-circle-o-down:before {
  content: ""; }

.fa-arrow-circle-o-up:before {
  content: ""; }

.fa-inbox:before {
  content: ""; }

.fa-play-circle-o:before {
  content: ""; }

.fa-rotate-right:before,
.fa-repeat:before {
  content: ""; }

.fa-refresh:before {
  content: ""; }

.fa-list-alt:before {
  content: ""; }

.fa-lock:before {
  content: ""; }

.fa-flag:before {
  content: ""; }

.fa-headphones:before {
  content: ""; }

.fa-volume-off:before {
  content: ""; }

.fa-volume-down:before {
  content: ""; }

.fa-volume-up:before {
  content: ""; }

.fa-qrcode:before {
  content: ""; }

.fa-barcode:before {
  content: ""; }

.fa-tag:before {
  content: ""; }

.fa-tags:before {
  content: ""; }

.fa-book:before {
  content: ""; }

.fa-bookmark:before {
  content: ""; }

.fa-print:before {
  content: ""; }

.fa-camera:before {
  content: ""; }

.fa-font:before {
  content: ""; }

.fa-bold:before {
  content: ""; }

.fa-italic:before {
  content: ""; }

.fa-text-height:before {
  content: ""; }

.fa-text-width:before {
  content: ""; }

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

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

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

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

.fa-list:before {
  content: ""; }

.fa-dedent:before,
.fa-outdent:before {
  content: ""; }

.fa-indent:before {
  content: ""; }

.fa-video-camera:before {
  content: ""; }

.fa-photo:before,
.fa-image:before,
.fa-picture-o:before {
  content: ""; }

.fa-pencil:before {
  content: ""; }

.fa-map-marker:before {
  content: ""; }

.fa-adjust:before {
  content: ""; }

.fa-tint:before {
  content: ""; }

.fa-edit:before,
.fa-pencil-square-o:before {
  content: ""; }

.fa-share-square-o:before {
  content: ""; }

.fa-check-square-o:before {
  content: ""; }

.fa-arrows:before {
  content: ""; }

.fa-step-backward:before {
  content: ""; }

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

.fa-backward:before {
  content: ""; }

.fa-play:before {
  content: ""; }

.fa-pause:before {
  content: ""; }

.fa-stop:before {
  content: ""; }

.fa-forward:before {
  content: ""; }

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

.fa-step-forward:before {
  content: ""; }

.fa-eject:before {
  content: ""; }

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

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

.fa-plus-circle:before {
  content: ""; }

.fa-minus-circle:before {
  content: ""; }

.fa-times-circle:before {
  content: ""; }

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

.fa-question-circle:before {
  content: ""; }

.fa-info-circle:before {
  content: ""; }

.fa-crosshairs:before {
  content: ""; }

.fa-times-circle-o:before {
  content: ""; }

.fa-check-circle-o:before {
  content: ""; }

.fa-ban:before {
  content: ""; }

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

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

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

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

.fa-mail-forward:before,
.fa-share:before {
  content: ""; }

.fa-expand:before {
  content: ""; }

.fa-compress:before {
  content: ""; }

.fa-plus:before {
  content: ""; }

.fa-minus:before {
  content: ""; }

.fa-asterisk:before {
  content: ""; }

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

.fa-gift:before {
  content: ""; }

.fa-leaf:before {
  content: ""; }

.fa-fire:before {
  content: ""; }

.fa-eye:before {
  content: ""; }

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

.fa-warning:before,
.fa-exclamation-triangle:before {
  content: ""; }

.fa-plane:before {
  content: ""; }

.fa-calendar:before {
  content: ""; }

.fa-random:before {
  content: ""; }

.fa-comment:before {
  content: ""; }

.fa-magnet:before {
  content: ""; }

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

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

.fa-retweet:before {
  content: ""; }

.fa-shopping-cart:before {
  content: ""; }

.fa-folder:before {
  content: ""; }

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

.fa-arrows-v:before {
  content: ""; }

.fa-arrows-h:before {
  content: ""; }

.fa-bar-chart-o:before {
  content: ""; }

.fa-twitter-square:before {
  content: ""; }

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

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

.fa-key:before {
  content: ""; }

.fa-gears:before,
.fa-cogs:before {
  content: ""; }

.fa-comments:before {
  content: ""; }

.fa-thumbs-o-up:before {
  content: ""; }

.fa-thumbs-o-down:before {
  content: ""; }

.fa-star-half:before {
  content: ""; }

.fa-heart-o:before {
  content: ""; }

.fa-sign-out:before {
  content: ""; }

.fa-linkedin-square:before {
  content: ""; }

.fa-thumb-tack:before {
  content: ""; }

.fa-external-link:before {
  content: ""; }

.fa-sign-in:before {
  content: ""; }

.fa-trophy:before {
  content: ""; }

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

.fa-upload:before {
  content: ""; }

.fa-lemon-o:before {
  content: ""; }

.fa-phone:before {
  content: ""; }

.fa-square-o:before {
  content: ""; }

.fa-bookmark-o:before {
  content: ""; }

.fa-phone-square:before {
  content: ""; }

.fa-twitter:before {
  content: ""; }

.fa-facebook:before {
  content: ""; }

.fa-github:before {
  content: ""; }

.fa-unlock:before {
  content: ""; }

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

.fa-rss:before {
  content: ""; }

.fa-hdd-o:before {
  content: ""; }

.fa-bullhorn:before {
  content: ""; }

.fa-bell:before {
  content: ""; }

.fa-certificate:before {
  content: ""; }

.fa-hand-o-right:before {
  content: ""; }

.fa-hand-o-left:before {
  content: ""; }

.fa-hand-o-up:before {
  content: ""; }

.fa-hand-o-down:before {
  content: ""; }

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

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

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

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

.fa-globe:before {
  content: ""; }

.fa-wrench:before {
  content: ""; }

.fa-tasks:before {
  content: ""; }

.fa-filter:before {
  content: ""; }

.fa-briefcase:before {
  content: ""; }

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

.fa-group:before,
.fa-users:before {
  content: ""; }

.fa-chain:before,
.fa-link:before {
  content: ""; }

.fa-cloud:before {
  content: ""; }

.fa-flask:before {
  content: ""; }

.fa-cut:before,
.fa-scissors:before {
  content: ""; }

.fa-copy:before,
.fa-files-o:before {
  content: ""; }

.fa-paperclip:before {
  content: ""; }

.fa-save:before,
.fa-floppy-o:before {
  content: ""; }

.fa-square:before {
  content: ""; }

.fa-navicon:before,
.fa-reorder:before,
.fa-bars:before {
  content: ""; }

.fa-list-ul:before {
  content: ""; }

.fa-list-ol:before {
  content: ""; }

.fa-strikethrough:before {
  content: ""; }

.fa-underline:before {
  content: ""; }

.fa-table:before {
  content: ""; }

.fa-magic:before {
  content: ""; }

.fa-truck:before {
  content: ""; }

.fa-pinterest:before {
  content: ""; }

.fa-pinterest-square:before {
  content: ""; }

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

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

.fa-money:before {
  content: ""; }

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

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

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

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

.fa-columns:before {
  content: ""; }

.fa-unsorted:before,
.fa-sort:before {
  content: ""; }

.fa-sort-down:before,
.fa-sort-desc:before {
  content: ""; }

.fa-sort-up:before,
.fa-sort-asc:before {
  content: ""; }

.fa-envelope:before {
  content: ""; }

.fa-linkedin:before {
  content: ""; }

.fa-rotate-left:before,
.fa-undo:before {
  content: ""; }

.fa-legal:before,
.fa-gavel:before {
  content: ""; }

.fa-dashboard:before,
.fa-tachometer:before {
  content: ""; }

.fa-comment-o:before {
  content: ""; }

.fa-comments-o:before {
  content: ""; }

.fa-flash:before,
.fa-bolt:before {
  content: ""; }

.fa-sitemap:before {
  content: ""; }

.fa-umbrella:before {
  content: ""; }

.fa-paste:before,
.fa-clipboard:before {
  content: ""; }

.fa-lightbulb-o:before {
  content: ""; }

.fa-exchange:before {
  content: ""; }

.fa-cloud-download:before {
  content: ""; }

.fa-cloud-upload:before {
  content: ""; }

.fa-user-md:before {
  content: ""; }

.fa-stethoscope:before {
  content: ""; }

.fa-suitcase:before {
  content: ""; }

.fa-bell-o:before {
  content: ""; }

.fa-coffee:before {
  content: ""; }

.fa-cutlery:before {
  content: ""; }

.fa-file-text-o:before {
  content: ""; }

.fa-building-o:before {
  content: ""; }

.fa-hospital-o:before {
  content: ""; }

.fa-ambulance:before {
  content: ""; }

.fa-medkit:before {
  content: ""; }

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

.fa-beer:before {
  content: ""; }

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

.fa-plus-square:before {
  content: ""; }

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

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

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

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

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

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

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

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

.fa-desktop:before {
  content: ""; }

.fa-laptop:before {
  content: ""; }

.fa-tablet:before {
  content: ""; }

.fa-mobile-phone:before,
.fa-mobile:before {
  content: ""; }

.fa-circle-o:before {
  content: ""; }

.fa-quote-left:before {
  content: ""; }

.fa-quote-right:before {
  content: ""; }

.fa-spinner:before {
  content: ""; }

.fa-circle:before {
  content: ""; }

.fa-mail-reply:before,
.fa-reply:before {
  content: ""; }

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

.fa-folder-o:before {
  content: ""; }

.fa-folder-open-o:before {
  content: ""; }

.fa-smile-o:before {
  content: ""; }

.fa-frown-o:before {
  content: ""; }

.fa-meh-o:before {
  content: ""; }

.fa-gamepad:before {
  content: ""; }

.fa-keyboard-o:before {
  content: ""; }

.fa-flag-o:before {
  content: ""; }

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

.fa-terminal:before {
  content: ""; }

.fa-code:before {
  content: ""; }

.fa-mail-reply-all:before,
.fa-reply-all:before {
  content: ""; }

.fa-star-half-empty:before,
.fa-star-half-full:before,
.fa-star-half-o:before {
  content: ""; }

.fa-location-arrow:before {
  content: ""; }

.fa-crop:before {
  content: ""; }

.fa-code-fork:before {
  content: ""; }

.fa-unlink:before,
.fa-chain-broken:before {
  content: ""; }

.fa-question:before {
  content: ""; }

.fa-info:before {
  content: ""; }

.fa-exclamation:before {
  content: ""; }

.fa-superscript:before {
  content: ""; }

.fa-subscript:before {
  content: ""; }

.fa-eraser:before {
  content: ""; }

.fa-puzzle-piece:before {
  content: ""; }

.fa-microphone:before {
  content: ""; }

.fa-microphone-slash:before {
  content: ""; }

.fa-shield:before {
  content: ""; }

.fa-calendar-o:before {
  content: ""; }

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

.fa-rocket:before {
  content: ""; }

.fa-maxcdn:before {
  content: ""; }

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

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

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

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

.fa-html5:before {
  content: ""; }

.fa-css3:before {
  content: ""; }

.fa-anchor:before {
  content: ""; }

.fa-unlock-alt:before {
  content: ""; }

.fa-bullseye:before {
  content: ""; }

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

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

.fa-rss-square:before {
  content: ""; }

.fa-play-circle:before {
  content: ""; }

.fa-ticket:before {
  content: ""; }

.fa-minus-square:before {
  content: ""; }

.fa-minus-square-o:before {
  content: ""; }

.fa-level-up:before {
  content: ""; }

.fa-level-down:before {
  content: ""; }

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

.fa-pencil-square:before {
  content: ""; }

.fa-external-link-square:before {
  content: ""; }

.fa-share-square:before {
  content: ""; }

.fa-compass:before {
  content: ""; }

.fa-toggle-down:before,
.fa-caret-square-o-down:before {
  content: ""; }

.fa-toggle-up:before,
.fa-caret-square-o-up:before {
  content: ""; }

.fa-toggle-right:before,
.fa-caret-square-o-right:before {
  content: ""; }

.fa-euro:before,
.fa-eur:before {
  content: ""; }

.fa-gbp:before {
  content: ""; }

.fa-dollar:before,
.fa-usd:before {
  content: ""; }

.fa-rupee:before,
.fa-inr:before {
  content: ""; }

.fa-cny:before,
.fa-rmb:before,
.fa-yen:before,
.fa-jpy:before {
  content: ""; }

.fa-ruble:before,
.fa-rouble:before,
.fa-rub:before {
  content: ""; }

.fa-won:before,
.fa-krw:before {
  content: ""; }

.fa-bitcoin:before,
.fa-btc:before {
  content: ""; }

.fa-file:before {
  content: ""; }

.fa-file-text:before {
  content: ""; }

.fa-sort-alpha-asc:before {
  content: ""; }

.fa-sort-alpha-desc:before {
  content: ""; }

.fa-sort-amount-asc:before {
  content: ""; }

.fa-sort-amount-desc:before {
  content: ""; }

.fa-sort-numeric-asc:before {
  content: ""; }

.fa-sort-numeric-desc:before {
  content: ""; }

.fa-thumbs-up:before {
  content: ""; }

.fa-thumbs-down:before {
  content: ""; }

.fa-youtube-square:before {
  content: ""; }

.fa-youtube:before {
  content: ""; }

.fa-xing:before {
  content: ""; }

.fa-xing-square:before {
  content: ""; }

.fa-youtube-play:before {
  content: ""; }

.fa-dropbox:before {
  content: ""; }

.fa-stack-overflow:before {
  content: ""; }

.fa-instagram:before {
  content: ""; }

.fa-flickr:before {
  content: ""; }

.fa-adn:before {
  content: ""; }

.fa-bitbucket:before {
  content: ""; }

.fa-bitbucket-square:before {
  content: ""; }

.fa-tumblr:before {
  content: ""; }

.fa-tumblr-square:before {
  content: ""; }

.fa-long-arrow-down:before {
  content: ""; }

.fa-long-arrow-up:before {
  content: ""; }

.fa-long-arrow-left:before {
  content: ""; }

.fa-long-arrow-right:before {
  content: ""; }

.fa-apple:before {
  content: ""; }

.fa-windows:before {
  content: ""; }

.fa-android:before {
  content: ""; }

.fa-linux:before {
  content: ""; }

.fa-dribbble:before {
  content: ""; }

.fa-skype:before {
  content: ""; }

.fa-foursquare:before {
  content: ""; }

.fa-trello:before {
  content: ""; }

.fa-female:before {
  content: ""; }

.fa-male:before {
  content: ""; }

.fa-gittip:before {
  content: ""; }

.fa-sun-o:before {
  content: ""; }

.fa-moon-o:before {
  content: ""; }

.fa-archive:before {
  content: ""; }

.fa-bug:before {
  content: ""; }

.fa-vk:before {
  content: ""; }

.fa-weibo:before {
  content: ""; }

.fa-renren:before {
  content: ""; }

.fa-pagelines:before {
  content: ""; }

.fa-stack-exchange:before {
  content: ""; }

.fa-arrow-circle-o-right:before {
  content: ""; }

.fa-arrow-circle-o-left:before {
  content: ""; }

.fa-toggle-left:before,
.fa-caret-square-o-left:before {
  content: ""; }

.fa-dot-circle-o:before {
  content: ""; }

.fa-wheelchair:before {
  content: ""; }

.fa-vimeo-square:before {
  content: ""; }

.fa-turkish-lira:before,
.fa-try:before {
  content: ""; }

.fa-plus-square-o:before {
  content: ""; }

.fa-space-shuttle:before {
  content: ""; }

.fa-slack:before {
  content: ""; }

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

.fa-wordpress:before {
  content: ""; }

.fa-openid:before {
  content: ""; }

.fa-institution:before,
.fa-bank:before,
.fa-university:before {
  content: ""; }

.fa-mortar-board:before,
.fa-graduation-cap:before {
  content: ""; }

.fa-yahoo:before {
  content: ""; }

.fa-google:before {
  content: ""; }

.fa-reddit:before {
  content: ""; }

.fa-reddit-square:before {
  content: ""; }

.fa-stumbleupon-circle:before {
  content: ""; }

.fa-stumbleupon:before {
  content: ""; }

.fa-delicious:before {
  content: ""; }

.fa-digg:before {
  content: ""; }

.fa-pied-piper-square:before,
.fa-pied-piper:before {
  content: ""; }

.fa-pied-piper-alt:before {
  content: ""; }

.fa-drupal:before {
  content: ""; }

.fa-joomla:before {
  content: ""; }

.fa-language:before {
  content: ""; }

.fa-fax:before {
  content: ""; }

.fa-building:before {
  content: ""; }

.fa-child:before {
  content: ""; }

.fa-paw:before {
  content: ""; }

.fa-spoon:before {
  content: ""; }

.fa-cube:before {
  content: ""; }

.fa-cubes:before {
  content: ""; }

.fa-behance:before {
  content: ""; }

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

.fa-steam:before {
  content: ""; }

.fa-steam-square:before {
  content: ""; }

.fa-recycle:before {
  content: ""; }

.fa-automobile:before,
.fa-car:before {
  content: ""; }

.fa-cab:before,
.fa-taxi:before {
  content: ""; }

.fa-tree:before {
  content: ""; }

.fa-spotify:before {
  content: ""; }

.fa-deviantart:before {
  content: ""; }

.fa-soundcloud:before {
  content: ""; }

.fa-database:before {
  content: ""; }

.fa-file-pdf-o:before {
  content: ""; }

.fa-file-word-o:before {
  content: ""; }

.fa-file-excel-o:before {
  content: ""; }

.fa-file-powerpoint-o:before {
  content: ""; }

.fa-file-photo-o:before,
.fa-file-picture-o:before,
.fa-file-image-o:before {
  content: ""; }

.fa-file-zip-o:before,
.fa-file-archive-o:before {
  content: ""; }

.fa-file-sound-o:before,
.fa-file-audio-o:before {
  content: ""; }

.fa-file-movie-o:before,
.fa-file-video-o:before {
  content: ""; }

.fa-file-code-o:before {
  content: ""; }

.fa-vine:before {
  content: ""; }

.fa-codepen:before {
  content: ""; }

.fa-jsfiddle:before {
  content: ""; }

.fa-life-bouy:before,
.fa-life-saver:before,
.fa-support:before,
.fa-life-ring:before {
  content: ""; }

.fa-circle-o-notch:before {
  content: ""; }

.fa-ra:before,
.fa-rebel:before {
  content: ""; }

.fa-ge:before,
.fa-empire:before {
  content: ""; }

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

.fa-git:before {
  content: ""; }

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

.fa-tencent-weibo:before {
  content: ""; }

.fa-qq:before {
  content: ""; }

.fa-wechat:before,
.fa-weixin:before {
  content: ""; }

.fa-send:before,
.fa-paper-plane:before {
  content: ""; }

.fa-send-o:before,
.fa-paper-plane-o:before {
  content: ""; }

.fa-history:before {
  content: ""; }

.fa-circle-thin:before {
  content: ""; }

.fa-header:before {
  content: ""; }

.fa-paragraph:before {
  content: ""; }

.fa-sliders:before {
  content: ""; }

.fa-share-alt:before {
  content: ""; }

.fa-share-alt-square:before {
  content: ""; }

.fa-bomb:before {
  content: ""; }

/* Magnific Popup CSS */
.mfp-counter {
  font-family: "PT Serif", serif; }

.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  background: #111;
  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: Arial, Baskerville, monospace; }
  .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: transparent; }
  .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-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; }
