/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@  @@@@@@  @@@@@@@         @@@@@@@@@@     @@@@@@@@@       @@@@@@  @@@@@@ @ @@@@@@@@@@@@@@@ @@@@@@  @@@@@@@@@@@@@@@
@@@@@@      @@@@  @@@      @@@@   @@@@@       @@@@@@@@@    @@    @@@@@  @@@@@@  @ @@@@@@@ @@@@@@  @@@@@ @@@@@@@@@@@@@@@@
@@@@    @@@@@@@@@  @@  @@@@@@@@@@  @@@@@@@@@@     @@@@  @@@@  @@  @@@@  @@@@@@@ @@@@@@@@  @@@@@@@ @@@@  @@@@@@@@@@@@@@@@
@@@@@@  @@@@@@  @@@@@@@@@@@@@@@@@  @@@@        @@@@@@  @@@@  @@@@  @@@  @@@@@@@@@@@@@@@@      @@@  @@@  @@@@@@@@@@@@@@@@
@@@@@@ @@@@@@@@ @@@@@@@@@@@@@@@@@  @@@@  @@@@@  @@@@@ @@@@  @@@@@  @@@  @@@@@@@@@@@@@     @@@  @@@ @@@  @@@@@@@@@@@@@@@@
@@@@@  @@     @ @@@@@@@@@@@@@@@@  @@@@@@@@@@@   @@@@@ @@@  @@@@@@  @@@  @@@@@@@@  @@  @@ @@@@@ @@@@@@@ @     @@@@@ @@@@@
@@@@@@@@  @@@   @@@@@@@@@@@@@@   @@@@@@ @@@@@@@@@@@@@     @@@@@@  @@@@@ @@@@@@   @@@@@@  @@@@  @@@@@@    @@   @@   @@@@@
@@@@@@@@@ @@@    @@@@@@@@@      @@@@@@@  @@@@@@@@@@@@@@ @@@@@@@   @@@@@  @@@@  @@@@@@@@  @@@   @@@@@@   @@@@      @@@@@@
@@@@@@@@@@   @@@@@@@@@@@@@   @@@@@@@@@@@        @@@@@@@@@@@@@@@ @@@@@@@@     @@@@@@@@@@@@@@  @@@@@@@@ @@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/
/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */

/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Correct the line height in all browsers.
 * 3. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */

/* Document
   ========================================================================== */

html {
  font-family: sans-serif; /* 1 */
  line-height: 1.15; /* 2 */
  -ms-text-size-adjust: 100%; /* 3 */
  -webkit-text-size-adjust: 100%; /* 3 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers (opinionated).
 */

body {
  margin: 0;
}

/**
 * Add the correct display in IE 9-.
 */

article,
aside,
footer,
header,
nav,
section {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */

figcaption,
figure,
main { /* 1 */
  display: block;
}

/**
 * Add the correct margin in IE 8.
 */

figure {
  margin: 1em 40px;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */

a {
  background-color: transparent; /* 1 */
  -webkit-text-decoration-skip: objects; /* 2 */
}

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */

a:active,
a:hover {
  outline-width: 0;
}

/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */

b,
strong {
  font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font style in Android 4.3-.
 */

dfn {
  font-style: italic;
}

/**
 * Add the correct background and color in IE 9-.
 */

mark {
  background-color: #ff0;
  color: #000;
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 */

audio,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */

audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Remove the border on images inside links in IE 10-.
 */

img {
  border-style: none;
}

/**
 * Hide the overflow in IE.
 */

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

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */

button,
html [type="button"], /* 1 */
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; /* 2 */
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  display: inline-block; /* 1 */
  vertical-align: baseline; /* 2 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */

details, /* 1 */
menu {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Scripting
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 */

canvas {
  display: inline-block;
}

/**
 * Add the correct display in IE.
 */

template {
  display: none;
}

/* Hidden
   ========================================================================== */

/**
 * Add the correct display in IE 10-.
 */

[hidden] {
  display: none;
}

/*! markdown.css v1.1.3 | BSD License | git.io/markdown.css */
@media all {
  .markdown {
    padding: 0;
    margin-right: auto;
    margin-left: auto;
    font-family: 'Whitney SSm A', 'Whitney SSm B', 'Helvetica Neue', Helvetica, Arial, sans-serif, monospace;
    line-height: 1.61803398874989485em;
  }
  .markdown p,
  .markdown h1,
  .markdown h2,
  .markdown h3,
  .markdown h4,
  .markdown h5,
  .markdown h6,
  .markdown blockquote,
  .markdown ul,
  .markdown ol,
  .markdown li,
  .markdown pre,
  .markdown code {
    padding: 0;
    margin: 0;
    font-size: 100%;
    border: none;
  }
  .markdown h1::before,
  .markdown h2::before,
  .markdown h3::before,
  .markdown h4::before,
  .markdown h5::before,
  .markdown h6::before,
  .markdown blockquote::before,
  .markdown li::before {
    white-space: nowrap;
  }
  .markdown p,
  .markdown h1,
  .markdown h2,
  .markdown h3,
  .markdown h4,
  .markdown h5,
  .markdown h6,
  .markdown blockquote,
  .markdown ul,
  .markdown ol,
  .markdown pre,
  .markdown hr,
  .markdown img,
  .markdown video {
    margin-top: 1em;
    margin-bottom: 1em;
  }
  .markdown li > ol,
  .markdown li > ul {
    margin-top: 0;
    margin-bottom: 0;
  }
  .markdown h1::before {
    content: "#\0000a0";
  }
  .markdown h2::before {
    content: "##\0000a0";
  }
  .markdown h3::before {
    content: "###\0000a0";
  }
  .markdown h4::before {
    content: "####\0000a0";
  }
  .markdown h5::before {
    content: "#####\0000a0";
  }
  .markdown h6::before {
    content: "######\0000a0";
  }
  .markdown h2,
  .markdown h4,
  .markdown h6 {
    font-style: italic;
  }
  .markdown h2::before,
  .markdown h4::before,
  .markdown h6::before {
    font-style: normal;
  }
  .markdown h3,
  .markdown h4,
  .markdown h5,
  .markdown h6 {
    font-weight: normal;
  }
  .markdown h3::before,
  .markdown h4::before {
    font-weight: bold;
  }
  .markdown blockquote {
    position: relative;
    left: 1.2em;
    left: 2ch;
    margin-right: 1.2em;
    margin-right: 2ch;
  }
  .markdown blockquote::before {
    position: absolute;
    right: 100%;
    content: ">\0000a0";
  }
  .markdown blockquote::after {
    content: "";
    content: none;
  }
  .markdown ul,
  .markdown ol {
    list-style-type: none;
  }
  .markdown ul > li,
  .markdown ol > li {
    position: relative;
  }
  .markdown ul > li::before,
  .markdown ol > li::before {
    position: absolute;
    right: 100%;
  }
  .markdown ul.bulleted > li::before {
    content: "*\0000a0";
  }
  .markdown ul.dashed > li::before,
  .markdown ul > li::before {
    content: "\002013\0000a0";
  }
  .markdown ul > li {
    left: 1.2em;
    left: 2ch;
    margin-right: 1.2em;
    margin-right: 2ch;
  }
  .markdown ol {
    counter-reset: markdown-ol-li;
  }
  .markdown ol > li::before {
    content: counter(markdown-ol-li) ".\0000a0";
    counter-increment: markdown-ol-li;
  }
  .markdown ol > li {
    left: 1.8em;
    left: 3ch;
    margin-right: 1.8em;
    margin-right: 3ch;
  }
  .markdown ol > li:nth-child(n+10) {
    margin-left: 0.6em;
    margin-left: 1ch;
  }
  .markdown ol > li:nth-child(n+100) {
    margin-left: 1.2em;
    margin-left: 2ch;
  }
  .markdown ol > li:nth-child(n+1000) {
    margin-left: 1.8em;
    margin-left: 3ch;
  }
  .markdown pre {
    margin-right: 2.4em;
    margin-right: 4ch;
    margin-left: 2.4em;
    margin-left: 4ch;
    line-height: normal;
  }
  .markdown hr {
    height: 0;
    clear: both;
    border: none;
    border-top: 1px solid #000000;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    border-bottom: 1px solid #ffffff;
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
  }
  .markdown a {
    text-decoration: none;
    border-bottom: 1px dashed;
  }
  .markdown em,
  .markdown del {
    position: relative;
    margin-right: 0.6em;
    margin-right: 1ch;
    margin-left: 0.6em;
    margin-left: 1ch;
  }
  .markdown em::before,
  .markdown del::before,
  .markdown em::after,
  .markdown del::after {
    position: absolute;
  }
  .markdown em::before,
  .markdown del::before {
    left: -0.6em;
    left: -1ch;
  }
  .markdown em {
    font-style: normal;
    border-bottom: 1px solid;
  }
  .markdown em::before,
  .markdown em::after {
    content: "_";
  }
  .markdown del::before,
  .markdown del::after {
    content: "-";
  }
  .markdown strong {
    font-weight: bold;
  }
  .markdown strong::before,
  .markdown strong::after {
    content: "**";
  }
  .markdown code {
    word-wrap: break-word;
  }
  .markdown code::before,
  .markdown code::after {
    content: "`";
  }
  .markdown pre code {
    word-wrap: normal;
  }
  .markdown pre code::before,
  .markdown pre code::after {
    content: "";
    content: none;
  }
  .markdown img,
  .markdown video {
    display: block;
    height: auto;
    max-width: 100%;
    margin-right: auto;
    margin-left: auto;
  }
}
@media screen and (min-height: 35.625em), not screen {
  .markdown {
    line-height: 2em;
  }
}
@media screen and (min-width: 62em), not screen {
  .markdown {
    padding: 0 4.8em;
    padding: 0 8ch;
  }
  .markdown > h1,
  .markdown > h2,
  .markdown > h3,
  .markdown > h4,
  .markdown > h5,
  .markdown > h6 {
    position: relative;
  }
  .markdown > h1::before,
  .markdown > h2::before,
  .markdown > h3::before,
  .markdown > h4::before,
  .markdown > h5::before,
  .markdown > h6::before {
    position: absolute;
    right: 100%;
  }
  .markdown ol > li:nth-child(n) {
    margin-left: 0;
  }
  .markdown > ul > li,
  .markdown > ol > li {
    left: 0;
    margin-right: 0;
  }
}
@media print {
  .markdown a {
    border: none;
  }
  .markdown a[href]::before {
    content: "[";
  }
  .markdown a[href]::after {
    content: "](" attr(href) ")";
  }
  .markdown a[href^="data:"]::before,
  .markdown a[href^="javascript:"]::before,
  .markdown a[href^="#"]::before,
  .markdown a[href^="data:"]::after,
  .markdown a[href^="javascript:"]::after,
  .markdown a[href^="#"]::after {
    content: "";
    content: none;
  }
}
img[src*="@2x."] {
  zoom: .5;
}

img[src*="@3x."] {
  zoom: .33333333333333333;
}

img[src*="@4x."] {
  zoom: .25;
}

@media all {
  div.highlighter-rouge {
    color: #393939;
    border: 1px solid #CACACA;
    border-radius: 3px;
    background-color: #FAFAFB;
    overflow: auto;
    margin: 1em 0;
    padding: .75em;
    text-align: left;
  }
  div.highlighter-rouge pre {
    margin: 0;
    padding: 0;
    line-height: normal;
    white-space: pre;
    font-size: 0.875em;
  }
  .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;
  }
  .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 .gd .x {
    color: #000000;
    background-color: #ffaaaa;
  }
  .highlight .ge {
    color: #000000;
    font-style: italic;
  }
  .highlight .gr {
    color: #aa0000;
  }
  .highlight .gh {
    color: #999999;
  }
  .highlight .gi {
    color: #000000;
    background-color: #ddffdd;
  }
  .highlight .gi .x {
    color: #000000;
    background-color: #aaffaa;
  }
  .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 .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: #d14;
  }
  .highlight .na {
    color: #008080;
  }
  .highlight .nb {
    color: #0086B3;
  }
  .highlight .nc {
    color: #445588;
    font-weight: bold;
  }
  .highlight .no {
    color: #008080;
  }
  .highlight .ni {
    color: #800080;
  }
  .highlight .ne {
    color: #990000;
    font-weight: bold;
  }
  .highlight .nf {
    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: #d14;
  }
  .highlight .sc {
    color: #d14;
  }
  .highlight .sd {
    color: #d14;
  }
  .highlight .s2 {
    color: #d14;
  }
  .highlight .se {
    color: #d14;
  }
  .highlight .sh {
    color: #d14;
  }
  .highlight .si {
    color: #d14;
  }
  .highlight .sx {
    color: #d14;
  }
  .highlight .sr {
    color: #009926;
  }
  .highlight .s1 {
    color: #d14;
  }
  .highlight .ss {
    color: #990073;
  }
  .highlight .bp {
    color: #999999;
  }
  .highlight .vc {
    color: #008080;
  }
  .highlight .vg {
    color: #008080;
  }
  .highlight .vi {
    color: #008080;
  }
  .highlight .il {
    color: #009999;
  }
}
@media not screen {
  .highlight pre {
    white-space: pre-wrap;
  }
}
@media print {
  * {
    background: transparent !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }

  abbr[title]:after {
    content: " (" attr(title) ")";
  }

  h1, h2, h3, h4, h5, h6 {
    page-break-after: avoid;
  }

  pre, blockquote, tr, img {
    page-break-inside: avoid;
  }

  thead {
    display: table-header-group;
  }

  img {
    max-width: 100% !important;
  }

  p {
    orphans: 3;
    widows: 3;
  }
}

body {
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-size: 14px;
  color: #080808;
  background-color: #fbfbfb;
  background-image: -webkit-linear-gradient(top, transparent 50%, #ffffff 50%);
  background-image: -moz-linear-gradient(top, transparent 50%, #ffffff 50%);
  background-image: -ms-linear-gradient(top, transparent 50%, #ffffff 50%);
  background-image: -o-linear-gradient(top, transparent 50%, #ffffff 50%);
  background-image: linear-gradient(to bottom, transparent 50%, #ffffff 50%);
  background-size: 100% 2px;
}
@media screen and (min-width: 118em) {
  body {
    font-size: 1.14285714em;
  }
}
a {
  color: #1C1C1C;
  text-decoration: none;
  -webkit-transition: color ease-in-out 0.08s;
  -moz-transition: color ease-in-out 0.08s;
  -ms-transition: color ease-in-out 0.08s;
  -o-transition: color ease-in-out 0.08s;
  transition: color ease-in-out 0.08s;
}
a:hover {
  color: #359DE6;
}
pre,
code,
kbd,
samp {
  font-family: Menlo, Consolas, Inconsolata, monospace;
}
.root {
  margin: 0 auto;
  font-family: 'Ideal Sans SSm A', 'Ideal Sans SSm B', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}
@media screen {
  .root {
    padding: 2em 0;
    margin: 0 5.55555556%;
  }
}
@media screen and (min-width: 30em) {
  .root {
    width: 29.14285714em;
    padding: 3em 0;
    margin: 0 auto;
  }
}
@media screen and (min-width: 37.5em) {
  .root {
    width: 39.42857143em;
    padding: 4em 0;
  }
}
@media screen and (min-width: 57em) {
  .root {
    width: 60em;
    padding: 5em 0;
  }
}
@media screen and (min-width: 118em) {
  .root {
    width: 80.57142857em;
    padding: 6em 0;
  }
}
.root > header h1,
.root > aside h1,
.root > footer h1,
.root > header h2,
.root > aside h2,
.root > footer h2,
.root > header h3,
.root > aside h3,
.root > footer h3,
.root > header h4,
.root > aside h4,
.root > footer h4,
.root > header h5,
.root > aside h5,
.root > footer h5,
.root > header h6,
.root > aside h6,
.root > footer h6,
.root > header ul,
.root > aside ul,
.root > footer ul,
.root > header ol,
.root > aside ol,
.root > footer ol,
.root > header li,
.root > aside li,
.root > footer li {
  padding: 0;
  margin: 0;
  border: 0;
}
.root > header h1,
.root > aside h1,
.root > footer h1,
.root > header h3,
.root > aside h3,
.root > footer h3,
.root > header h5,
.root > aside h5,
.root > footer h5 {
  font-family: 'Gotham SSm A', 'Gotham SSm B', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-weight: 500;
}
.root > header h2,
.root > aside h2,
.root > footer h2,
.root > header h4,
.root > aside h4,
.root > footer h4,
.root > header h6,
.root > aside h6,
.root > footer h6 {
  font-family: 'Archer SSm A', 'Archer SSm B', serif;
  font-weight: 400;
}
.root > header ul,
.root > aside ul,
.root > footer ul,
.root > header ol,
.root > aside ol,
.root > footer ol {
  list-style-type: none;
}
.root > header::before,
.root > header::after {
  display: table;
  content: " ";
}
.root > header::after {
  clear: both;
}
.root > header > a {
  float: left;
  color: #080808;
}
.root > header > a:hover {
  color: #080808;
}
.root > header > a h1 {
  font-size: 1.71428571em;
}
.root > header > a h2 {
  font-size: 1.28571429em;
}
.root > header > nav {
  float: right;
  margin: .2em 0;
}
.root > header > nav > ul {
  padding: 0;
  margin: 0;
  list-style-type: none;
}
.root > header > nav > ul > li a {
  display: block;
}
.root > header > nav > ul > li a::before,
.root > header > nav > ul > li a::after {
  display: table;
  content: " ";
}
.root > header > nav > ul > li a::after {
  clear: both;
}
.root > header > nav > ul > li a div,
.root > header > nav > ul > li a span {
  display: block;
  float: right;
  height: 1.3em;
  line-height: 1.3em;
}
.root > header > nav > ul > li a div::before,
.root > header > nav > ul > li a span::before,
.root > header > nav > ul > li a div::after,
.root > header > nav > ul > li a span::after {
  content: "\0000a0";
}
.root > header > nav > ul > li a div {
  font-family: "Zapf Dingbats", sans-serif;
  line-height: 1.5em;
}
.root > header > nav > ul > li a div::before {
  content: "";
}
.root > header > nav > ul > li a span {
  text-transform: lowercase;
}
.root > header > nav > ul > li a:hover div,
.root > header > nav > ul > li a:hover span {
  color: #F5F5F5;
  background-color: #359DE6;
}
@media screen and (min-width: 30em), not screen {
  .root > header > nav {
    margin: .4em 0;
    text-align: center;
  }
  .root > header > nav > ul > li {
    display: inline-block;
  }
  .root > header > nav > ul > li + li {
    margin-left: 2em;
  }
  .root > header > nav > ul > li a div,
  .root > header > nav > ul > li a span {
    float: none;
  }
  .root > header > nav > ul > li a div::before,
  .root > header > nav > ul > li a span::before,
  .root > header > nav > ul > li a div::after,
  .root > header > nav > ul > li a span::after {
    content: "";
  }
  .root > header > nav > ul > li a div {
    width: 1.5em;
    height: 1.5em;
    font-family: "Hiragino Kaku Gothic ProN", sans-serif;
    font-size: 1.71428571em;
    line-height: 1.5em;
    color: #F5F5F5;
    background-color: #080808;
  }
  .root > header > nav > ul > li a span {
    padding: .3em 0;
    font-size: 0.78571429em;
    text-transform: none;
  }
  .root > header > nav > ul > li a:hover {
    background-color: #359DE6;
  }
  .root > header > nav > ul > li a:hover div {
    background-color: transparent;
  }
  .root > header > nav > ul > li a:hover span {
    color: #F5F5F5;
  }
}
@media screen and (min-width: 57em), not screen {
  .root > header > a h1 {
    font-size: 2.57142857em;
  }
  .root > header > a h2 {
    font-size: 1.71428571em;
  }
  .root > header > nav > ul > li a div {
    font-size: 2.57142857em;
  }
  .root > header > nav > ul > li a span {
    font-size: 1em;
  }
}
@media print {
  .root > header > nav {
    display: none;
  }
}
.root > main {
  padding: 1em 0;
}
.root > main article.posts h1,
.root > main article.archive h1,
.root > main article.posts h2,
.root > main article.archive h2,
.root > main article.posts h3,
.root > main article.archive h3,
.root > main article.posts h4,
.root > main article.archive h4,
.root > main article.posts h5,
.root > main article.archive h5,
.root > main article.posts h6,
.root > main article.archive h6,
.root > main article.posts ul,
.root > main article.archive ul,
.root > main article.posts ol,
.root > main article.archive ol,
.root > main article.posts li,
.root > main article.archive li {
  padding: 0;
  margin: 0;
  border: 0;
}
.root > main article.posts h1,
.root > main article.archive h1,
.root > main article.posts h3,
.root > main article.archive h3,
.root > main article.posts h5,
.root > main article.archive h5 {
  font-family: 'Gotham SSm A', 'Gotham SSm B', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-weight: 500;
}
.root > main article.posts h2,
.root > main article.archive h2,
.root > main article.posts h4,
.root > main article.archive h4,
.root > main article.posts h6,
.root > main article.archive h6 {
  font-family: 'Archer SSm A', 'Archer SSm B', serif;
  font-weight: 400;
}
.root > main article.posts ul,
.root > main article.archive ul,
.root > main article.posts ol,
.root > main article.archive ol {
  list-style-type: none;
}
.root > main > article > header,
.root > main > article > footer {
  font-family: 'Ideal Sans SSm A', 'Ideal Sans SSm B', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-weight: 200;
}
.root > main > article > header {
  margin: 1.5em auto;
}
.root > main > article > header h1,
.root > main > article > header h2,
.root > main > article > header h3,
.root > main > article > header h4,
.root > main > article > header h5,
.root > main > article > header h6 {
  padding: 0;
  margin: 0;
  border: 0;
}
.root > main > article > header h1,
.root > main > article > header h3,
.root > main > article > header h5 {
  font-family: 'Gotham SSm A', 'Gotham SSm B', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-weight: 500;
}
.root > main > article > header h2,
.root > main > article > header h4,
.root > main > article > header h6 {
  font-family: 'Archer SSm A', 'Archer SSm B', serif;
  font-weight: 400;
}
.root > main > article > header h1 {
  font-size: 1.71428571em;
}
.root > main > article > header h2 {
  font-size: 1.28571429em;
}
.root > main > article > section table {
  background: #FFFFFF;
  border: 1px #E7E7E7 solid;
  border-collapse: collapse;
  border-spacing: 0;
}
.root > main > article > section table th,
.root > main > article > section table td {
  padding: .375em .8125em;
  border: 1px #E7E7E7 solid;
}
.root > main > article > section table tr:nth-of-type(even) {
  background: #F8F8F8;
}
.root > main > article > section table > thead > tr,
.root > main > article > section table > tfoot > tr {
  background: transparent;
}
.root > main > article > section table > thead > tr:last-child > th,
.root > main > article > section table > tfoot + tbody > tr:last-child > th,
.root > main > article > section table > tbody:nth-last-child(2) > tr:last-child > th,
.root > main > article > section table > thead > tr:last-child > td,
.root > main > article > section table > tfoot + tbody > tr:last-child > td,
.root > main > article > section table > tbody:nth-last-child(2) > tr:last-child > td {
  border-bottom: 1px #4C4F4E solid;
}
.root > main > article > footer {
  position: relative;
  margin: 1.5em auto;
  line-height: 1.5em;
  text-align: center;
}
.root > main > article > footer > .previous,
.root > main > article > footer > .next {
  position: absolute;
  top: 0;
  max-width: 33%;
}
.root > main > article > footer > .previous a,
.root > main > article > footer > .next a {
  word-wrap: break-word;
  border-bottom: 1px solid;
}
.root > main > article > footer > .previous {
  left: 0;
  text-align: left;
}
.root > main > article > footer > .next {
  right: 0;
  text-align: right;
}
.root > main > article > footer > .less,
.root > main > article > footer > .more {
  font-size: 1.28571429em;
  text-align: right;
}
@media screen and (min-width: 30em), not screen {
  .root > main > article > header h1 {
    font-size: 2.57142857em;
  }
  .root > main > article > header h2 {
    font-size: 1.71428571em;
  }
}
@media screen and (min-width: 57em), not screen {
  .root > main > article > header h1 {
    font-size: 3.42857143em;
  }
  .root > main > article > header h2 {
    font-size: 2.57142857em;
  }
  .root > main > article > footer > .less,
  .root > main > article > footer > .more {
    font-size: 1.71428571em;
  }
}
@media screen and (min-width: 118em) {
  .root > main > article > header h1 {
    font-size: 4.57142857em;
  }
}
.root > main > article.posts > section {
  word-wrap: break-word;
}
.root > main > article.posts > section article {
  position: relative;
  margin: 1.5em 0;
}
.root > main > article.posts > section article header h1 {
  font-size: 1.71428571em;
}
.root > main > article.posts > section article header h2 {
  display: none;
  font-size: 1em;
}
.root > main > article.posts > section article time {
  position: absolute;
  top: 0;
  right: 0;
  display: none;
}
@media screen and (min-width: 30em), not screen {
  .root > main > article.posts > section article header {
    padding-right: 7.2em;
    padding-right: 12ch;
  }
  .root > main > article.posts > section article time {
    display: block;
  }
}
@media screen and (min-width: 37.5em), not screen {
  .root > main > article.posts > section article header h2 {
    display: block;
  }
}
@media screen and (min-width: 57em), not screen {
  .root > main > article.posts > section article header h1 {
    font-size: 1.71428571em;
  }
  .root > main > article.posts > section article header h2 {
    font-size: 1.28571429em;
  }
}
@media screen and (min-width: 118em) {
  .root > main > article.posts > section article header h1 {
    font-size: 2.57142857em;
  }
  .root > main > article.posts > section article header h2 {
    font-size: 1.71428571em;
  }
  .root > main > article.posts > section article time {
    font-size: 1.28571429em;
  }
  .root > main > article.posts > footer > .more {
    font-size: 1.28571429em;
  }
}
.root > main > article.archive > section {
  position: relative;
  padding-left: 3.6em;
  padding-left: 6ch;
  font-size: 1.28571429em;
  word-wrap: break-word;
}
.root > main > article.archive > section time {
  position: absolute;
}
.root > main > article.archive > section > ul > li {
  margin: 2em 0;
}
.root > main > article.archive > section > ul > li > time {
  left: 0;
}
.root > main > article.archive > section > ul > li > ul > li > time {
  left: 3em;
  left: 5ch;
  display: none;
}
.root > main > article.archive > section > ul > li > ul > li > ul > li > time {
  left: 5.4em;
  left: 9ch;
  display: none;
}
.root > main > article.archive > section article {
  margin: .5em 0;
}
.root > main > article.archive > section article header h1 {
  font-family: 'Whitney SSm A', 'Whitney SSm B', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-size: 1em;
}
.root > main > article.archive > section article header h2 {
  display: none;
  font-size: 1em;
}
@media screen and (min-width: 37.5em), not screen {
  .root > main > article.archive > section {
    padding-left: 6em;
    padding-left: 10ch;
    font-size: 1.71428571em;
  }
  .root > main > article.archive > section > ul > li > ul > li > time {
    display: block;
  }
}
@media screen and (min-width: 57em), not screen {
  .root > main > article.archive > section article header::before,
  .root > main > article.archive > section article header::after {
    display: table;
    content: " ";
  }
  .root > main > article.archive > section article header::after {
    clear: both;
  }
  .root > main > article.archive > section article header h1 {
    float: left;
    width: 33.33333333%;
  }
  .root > main > article.archive > section article header h2 {
    display: block;
    float: right;
    width: 61.11111111%;
  }
}
@media screen and (min-width: 118em) {
  .root > main > article.archive > section {
    padding: 0 7.8em;
    padding: 0 13ch;
  }
  .root > main > article.archive > section > ul > li > ul > li > ul > li > time {
    display: block;
  }
}
.root > aside {
  padding: 1.5em 0;
}
.root > aside > section {
  margin-bottom: 1.5em;
}
.root > aside > section:last-child {
  margin-bottom: 0;
}
.root > aside > section h1 {
  font-size: 1.28571429em;
}
.root > aside > section ul li {
  display: inline-block;
  width: 8.57142857em;
  margin: .25em 0;
}
.root > aside > section ul li a {
  display: block;
}
.root > aside > section ul li h2 {
  font-size: 1em;
}
@media screen and (min-width: 57em), not screen {
  .root > aside > section h1 {
    font-size: 1.71428571em;
  }
  .root > aside > section ul li {
    width: 13.71428571em;
  }
  .root > aside > section ul li h2 {
    font-size: 1.28571429em;
  }
}
@media print {
  .root > aside {
    display: none;
  }
}
.root > footer > section {
  font-family: 'Archer SSm A', 'Archer SSm B', serif;
}
.root > footer > section > p {
  padding: 0;
  margin: 0;
  border: 0;
}
.root > footer > section > p > a {
  color: #303030;
}
