html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

*,
*::before,
*::after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit; }

html {
  -webkit-text-size-adjust: none;
     -moz-text-size-adjust: none;
      -ms-text-size-adjust: none;
          text-size-adjust: none; }

body {
  margin: 0; }

hr {
  overflow: visible;
  -webkit-box-sizing: content-box;
          box-sizing: content-box; }

a {
  -webkit-text-decoration-skip: objects; }

a,
button,
label,
input {
  -webkit-tap-highlight-color: transparent; }

a {
  color: inherit;
  text-decoration: none; }
  a:active, a:hover,
a.\:hover {
    outline-width: 0; }

small {
  font-size: 80%; }

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

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

img {
  border-style: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  font-weight: normal;
  vertical-align: top; }

button {
  padding: 0;
  border: 0;
  outline: 0;
  background: transparent;
  font-size: inherit; }

input {
  border: 0;
  outline: 0; }

.md-icon, .md-clipboard::before, .md-nav__title::before, .md-nav__button, .md-nav__link::after, .md-search-result__article--document::before, .md-source-file::before, .admonition::before, .md-typeset .footnote-backref, .md-typeset .critic.comment::before, .md-typeset .task-list-control .task-list-indicator::before {
  font-family: "Material Icons";
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  text-transform: none;
  white-space: nowrap;
  speak: none;
  word-wrap: normal;
  direction: ltr; }
  .md-content__icon, .md-header-nav__button, .md-footer-nav__button, .md-nav__title::before, .md-nav__button, .md-search-result__article--document::before {
    display: inline-block;
    margin: 0.4rem;
    padding: 0.8rem;
    font-size: 2.4rem;
    cursor: pointer; }

.md-icon--arrow-back::before {
  content: "arrow_back"; }

.md-icon--arrow-forward::before {
  content: "arrow_forward"; }

.md-icon--menu::before {
  content: "menu"; }

.md-icon--search::before {
  content: "search"; }

.md-icon--home::before {
  content: "school"; }

/* Generated by Font Squirrel (http://www.fontsquirrel.com) on February 7, 2015 */
@font-face {
  font-family: 'adelle_sansthin';
  src: url("../fonts/adellesans-thin-webfont.eot");
  src: url("../fonts/adellesans-thin-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/adellesans-thin-webfont.woff2") format("woff2"), url("../fonts/adellesans-thin-webfont.woff") format("woff"), url("../fonts/adellesans-thin-webfont.ttf") format("truetype"), url("../fonts/adellesans-thin-webfont.svg#adelle_sansthin") format("svg");
  font-weight: normal;
  font-style: normal; }

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

body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

body,
input {
  color: #393939;
  -webkit-font-feature-settings: "kern", "liga";
          font-feature-settings: "kern", "liga";
  font-family: "adelle_sansthin", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 400; }

pre,
code,
kbd {
  color: #393939;
  -webkit-font-feature-settings: "kern";
          font-feature-settings: "kern";
  font-family: "Courier New", Courier, monospace;
  font-weight: 400; }

.md-typeset {
  font-size: 1.6rem;
  line-height: 1.6;
  -webkit-print-color-adjust: exact; }
  .md-typeset p,
  .md-typeset ul,
  .md-typeset ol,
  .md-typeset blockquote {
    margin: 1em 0; }
  .md-typeset h1 {
    margin: 0 0 4rem;
    color: rgba(0, 0, 0, 0.8);
    font-size: 3.125rem;
    font-weight: 300;
    letter-spacing: -0.01em;
    line-height: 1.3; }
  .md-typeset h2 {
    margin: 4rem 0 1.6rem;
    font-size: 2.5rem;
    font-weight: 300;
    letter-spacing: -0.01em;
    line-height: 1.4; }
  .md-typeset h3 {
    margin: 3.2rem 0 1.6rem;
    font-size: 2rem;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.5; }
  .md-typeset h2 + h3 {
    margin-top: 1.6rem; }
  .md-typeset h4 {
    margin: 1.6rem 0;
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: -0.01em; }
  .md-typeset h5,
  .md-typeset h6 {
    margin: 1.6rem 0;
    color: rgba(0, 0, 0, 0.8);
    font-size: 1.28rem;
    font-weight: 700;
    letter-spacing: -0.01em; }
  .md-typeset h5 {
    text-transform: uppercase; }
  .md-typeset hr {
    margin: 1.5em 0;
    border-bottom: 0.1rem dotted rgba(0, 0, 0, 0.26); }
  .md-typeset a {
    color: #f01e14;
    word-break: break-word; }
    .md-typeset a, .md-typeset a::before {
      -webkit-transition: color 0.125s;
      transition: color 0.125s; }
    .md-typeset a:hover, .md-typeset a:active,
.md-typeset a.\:hover {
      color: #f01e14; }
  .md-typeset code,
  .md-typeset pre {
    background-color: rgba(236, 236, 236, 0.5);
    color: #37474F;
    font-size: 90%; }
  .md-typeset code {
    margin: 0 0.29412em;
    padding: 0.07353em 0;
    border-radius: 0.2rem;
    -webkit-box-shadow: 0.29412em 0 0 rgba(236, 236, 236, 0.5), -0.29412em 0 0 rgba(236, 236, 236, 0.5);
            box-shadow: 0.29412em 0 0 rgba(236, 236, 236, 0.5), -0.29412em 0 0 rgba(236, 236, 236, 0.5);
    word-break: break-word;
    -webkit-box-decoration-break: clone;
            box-decoration-break: clone; }
  .md-typeset h1 code,
  .md-typeset h2 code,
  .md-typeset h3 code,
  .md-typeset h4 code,
  .md-typeset h5 code,
  .md-typeset h6 code {
    margin: 0;
    background-color: transparent;
    -webkit-box-shadow: none;
            box-shadow: none; }
  .md-typeset a > code {
    margin: inherit;
    padding: inherit;
    border-radius: none;
    background-color: inherit;
    color: inherit;
    -webkit-box-shadow: none;
            box-shadow: none; }
  .md-typeset pre {
    position: relative;
    margin: 1em 0;
    border-radius: 0.2rem;
    line-height: 1.4;
    -webkit-overflow-scrolling: touch; }
    .md-typeset pre > code {
      display: block;
      margin: 0;
      padding: 1.05rem 1.2rem;
      background-color: transparent;
      font-size: inherit;
      -webkit-box-shadow: none;
              box-shadow: none;
      -webkit-box-decoration-break: none;
              box-decoration-break: none;
      overflow: auto; }
      .md-typeset pre > code::-webkit-scrollbar {
        width: 0.4rem;
        height: 0.4rem; }
      .md-typeset pre > code::-webkit-scrollbar-thumb {
        background-color: rgba(0, 0, 0, 0.26); }
        .md-typeset pre > code::-webkit-scrollbar-thumb:hover,
.md-typeset pre > code::-webkit-scrollbar-thumb.\:hover {
          background-color: #f01e14; }
  .md-typeset kbd {
    padding: 0 0.29412em;
    border: 0.1rem solid #c9c9c9;
    border-radius: 0.2rem;
    border-bottom-color: #bcbcbc;
    background-color: #FCFCFC;
    color: #555555;
    font-size: 85%;
    -webkit-box-shadow: 0 0.1rem 0 #b0b0b0;
            box-shadow: 0 0.1rem 0 #b0b0b0;
    word-break: break-word; }
  .md-typeset mark {
    margin: 0 0.25em;
    padding: 0.0625em 0;
    border-radius: 0.2rem;
    background-color: rgba(255, 235, 59, 0.5);
    -webkit-box-shadow: 0.25em 0 0 rgba(255, 235, 59, 0.5), -0.25em 0 0 rgba(255, 235, 59, 0.5);
            box-shadow: 0.25em 0 0 rgba(255, 235, 59, 0.5), -0.25em 0 0 rgba(255, 235, 59, 0.5);
    word-break: break-word;
    -webkit-box-decoration-break: clone;
            box-decoration-break: clone; }
  .md-typeset abbr {
    border-bottom: 0.1rem dotted rgba(0, 0, 0, 0.8);
    text-decoration: none;
    cursor: help; }
  .md-typeset small {
    opacity: 0.75; }
  .md-typeset sup,
  .md-typeset sub {
    margin-left: 0.07813em; }
  .md-typeset blockquote {
    padding-left: 1.2rem;
    border-left: 0.4rem solid rgba(0, 0, 0, 0.26);
    color: rgba(0, 0, 0, 0.8); }
  .md-typeset ul {
    list-style-type: disc; }
  .md-typeset ul,
  .md-typeset ol {
    margin-left: 0.625em;
    padding: 0; }
    .md-typeset ul ol,
    .md-typeset ol ol {
      list-style-type: lower-alpha; }
      .md-typeset ul ol ol,
      .md-typeset ol ol ol {
        list-style-type: lower-roman; }
    .md-typeset ul li,
    .md-typeset ol li {
      margin-bottom: 0.5em;
      margin-left: 1.25em; }
      .md-typeset ul li p,
      .md-typeset ul li blockquote,
      .md-typeset ol li p,
      .md-typeset ol li blockquote {
        margin: 0.5em 0; }
      .md-typeset ul li:last-child,
      .md-typeset ol li:last-child {
        margin-bottom: 0; }
      .md-typeset ul li ul,
      .md-typeset ul li ol,
      .md-typeset ol li ul,
      .md-typeset ol li ol {
        margin: 0.5em 0 0.5em 0.625em; }
  .md-typeset dd {
    margin: 1em 0 1em 1.875em; }
  .md-typeset iframe,
  .md-typeset img,
  .md-typeset svg {
    max-width: 100%;
    width: 100%; }
  .md-typeset table:not([class]) {
    -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);
            box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);
    display: inline-block;
    max-width: 100%;
    border-radius: 0.2rem;
    font-size: 1.28rem;
    overflow: auto;
    -webkit-overflow-scrolling: touch; }
    .md-typeset table:not([class]) + * {
      margin-top: 1.5em; }
    .md-typeset table:not([class]) th:not([align]),
    .md-typeset table:not([class]) td:not([align]) {
      text-align: left; }
    .md-typeset table:not([class]) th {
      min-width: 18rem;
      padding: 1.2rem 1.6rem;
      background-color: rgba(0, 0, 0, 0.8);
      color: white;
      vertical-align: top; }
    .md-typeset table:not([class]) td {
      padding: 1.2rem 1.6rem;
      border-top: 0.1rem solid rgba(0, 0, 0, 0.07);
      vertical-align: top; }
    .md-typeset table:not([class]) tr:first-child td {
      border-top: 0; }
    .md-typeset table:not([class]) a {
      word-break: normal; }
  .md-typeset__scrollwrap {
    margin: 1em -1.6rem;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; }
  .md-typeset .md-typeset__table {
    display: block;
    margin-bottom: 0.5em;
    padding: 0 1.6rem; }
    .md-typeset .md-typeset__table table {
      display: table;
      width: 100%;
      margin: 0;
      overflow: hidden; }

html {
  height: 100%;
  font-size: 62.5%; }

body {
  position: relative;
  height: 100%; }

hr {
  display: block;
  height: 0.1rem;
  padding: 0;
  border: 0; }

figcaption {
  text-align: center; }

.md-svg {
  display: none; }

.md-grid {
  max-width: 122rem;
  margin-right: auto;
  margin-left: auto; }

.md-container,
.md-main {
  overflow: auto; }

.md-container {
  display: table;
  width: 100%;
  height: 100%;
  padding-top: 5.6rem;
  table-layout: fixed; }

.md-main {
  display: table-row;
  height: 100%; }
  .md-main.home .md-sidebar--secondary {
    display: none; }
  .md-main.home .md-content {
    margin-right: 0; }
    .md-main.home .md-content .explainer {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      .md-main.home .md-content .explainer.right {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
            -ms-flex-direction: row-reverse;
                flex-direction: row-reverse; }
      .md-main.home .md-content .explainer.center {
        display: block;
        text-align: center; }
        .md-main.home .md-content .explainer.center div, .md-main.home .md-content .explainer.center .txt {
          width: 100%;
          padding: 4rem 10rem 0 10rem; }
          .md-main.home .md-content .explainer.center div .video, .md-main.home .md-content .explainer.center .txt .video {
            width: 80%;
            min-height: 350px;
            margin: 0 auto; }
      .md-main.home .md-content .explainer div {
        width: 60%;
        padding: 4rem 5rem; }
        .md-main.home .md-content .explainer div h1, .md-main.home .md-content .explainer div h2, .md-main.home .md-content .explainer div h3, .md-main.home .md-content .explainer div h4, .md-main.home .md-content .explainer div h5, .md-main.home .md-content .explainer div h6 {
          margin-top: 0; }
        .md-main.home .md-content .explainer div.txt {
          width: 40%;
          padding: 0; }
    .md-main.home .md-content .download {
      border-top: 1px solid rgba(0, 0, 0, 0.07);
      margin-top: 5rem;
      padding: 5rem;
      text-align: center; }
      .md-main.home .md-content .download h1, .md-main.home .md-content .download h2, .md-main.home .md-content .download h3, .md-main.home .md-content .download h4, .md-main.home .md-content .download h5, .md-main.home .md-content .download h6 {
        margin-top: 0; }
  .md-main__inner {
    min-height: 100%;
    padding-top: 3rem;
    padding-bottom: 0.1rem; }

.md-toggle {
  display: none; }

.md-overlay {
  position: fixed;
  top: 0;
  width: 0;
  height: 0;
  -webkit-transition: width   0s 0.25s, height  0s 0.25s, opacity 0.25s;
  transition: width   0s 0.25s, height  0s 0.25s, opacity 0.25s;
  background-color: rgba(0, 0, 0, 0.8);
  opacity: 0;
  z-index: 3; }

a.md-button {
  background-color: transparent;
  color: #f01e14;
  border: 2px solid #f01e14;
  text-align: center;
  padding: 0.85em 2em;
  -webkit-transition: none;
  transition: none;
  border-radius: 2em;
  display: inline-block;
  cursor: pointer;
  margin: 1rem 0; }
  a.md-button:hover,
a.md-button.\:hover {
    background-color: #f01e14;
    color: white;
    text-decoration: none; }
    a.md-button:hover a,
a.md-button.\:hover a {
      color: white; }

a.md-nav__link--active {
  color: #f01e14; }

.md-flex {
  display: table; }
  .md-flex__cell {
    display: table-cell;
    position: relative;
    vertical-align: top; }
    .md-flex__cell--shrink {
      width: 0%; }
    .md-flex__cell--stretch {
      display: table;
      width: 100%;
      table-layout: fixed; }
  .md-flex__ellipsis {
    display: table-cell;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden; }

@page {
  margin: 25mm; }

.md-clipboard {
  position: absolute;
  top: 0.6rem;
  right: 0.6rem;
  width: 2.8rem;
  height: 2.8rem;
  border-radius: 0.2rem;
  font-size: 1.6rem;
  cursor: pointer;
  z-index: 1;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }
  .md-clipboard::before {
    -webkit-transition: color   0.25s, opacity 0.25s;
    transition: color   0.25s, opacity 0.25s;
    color: rgba(0, 0, 0, 0.8);
    content: "content_copy";
    opacity: 0.25; }
    pre:hover .md-clipboard::before,
    .codehilite:hover .md-clipboard::before, .md-typeset .highlight:hover .md-clipboard::before,
pre.\:hover .md-clipboard::before,
.codehilite.\:hover .md-clipboard::before,
.md-typeset .highlight.\:hover .md-clipboard::before {
      opacity: 1; }
  .md-clipboard:hover::before, .md-clipboard:active::before,
.md-clipboard.\:hover::before {
    color: #f01e14; }
  .md-clipboard__message {
    display: block;
    position: absolute;
    top: 0;
    right: 3.4rem;
    padding: 0.6rem 1rem;
    -webkit-transform: translateX(0.8rem);
            transform: translateX(0.8rem);
    -webkit-transition: opacity 0.175s, -webkit-transform 0.25s cubic-bezier(0.9, 0.1, 0.9, 0);
    transition: opacity 0.175s, -webkit-transform 0.25s cubic-bezier(0.9, 0.1, 0.9, 0);
    transition: transform 0.25s cubic-bezier(0.9, 0.1, 0.9, 0), opacity 0.175s;
    transition: transform 0.25s cubic-bezier(0.9, 0.1, 0.9, 0), opacity 0.175s, -webkit-transform 0.25s cubic-bezier(0.9, 0.1, 0.9, 0);
    border-radius: 0.2rem;
    background: rgba(0, 0, 0, 0.8);
    color: white;
    font-size: 1.28rem;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none; }
    .md-clipboard__message--active {
      -webkit-transform: translateX(0);
              transform: translateX(0);
      -webkit-transition: opacity 0.175s 0.075s, -webkit-transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);
      transition: opacity 0.175s 0.075s, -webkit-transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);
      transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.175s 0.075s;
      transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.175s 0.075s, -webkit-transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);
      opacity: 1;
      pointer-events: initial; }
    .md-clipboard__message::before {
      content: attr(aria-label); }
    .md-clipboard__message::after {
      display: block;
      position: absolute;
      top: 50%;
      right: -0.4rem;
      width: 0;
      margin-top: -0.4rem;
      border-width: 0.4rem 0 0.4rem 0.4rem;
      border-style: solid;
      border-color: transparent rgba(0, 0, 0, 0.8);
      content: ""; }

.md-content__inner {
  margin: 0 1.6rem 2.4rem;
  padding-top: 2.4rem;
  padding-bottom: 2.4rem; }
  .md-content__inner img {
    display: block;
    margin: 0 auto; }
  .md-content__inner::before {
    display: block;
    height: 0.8rem;
    content: ""; }
  .md-content__inner > :last-child {
    margin-bottom: 0; }

.md-content__icon {
  position: relative;
  margin: 0.8rem 0;
  padding-right: 0;
  padding-left: 0;
  float: right; }
  html body .md-typeset .md-content__icon {
    color: rgba(0, 0, 0, 0.26); }

.md-header {
  -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);
          box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  height: 5.6rem;
  -webkit-transition: background-color 0.25s;
  transition: background-color 0.25s;
  background-color: #f01e14;
  color: white;
  z-index: 2;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }
  .no-js .md-header {
    -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);
            box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2); }

.md-header-nav {
  padding: 0.4rem; }
  .md-header-nav__button {
    position: relative;
    -webkit-transition: opacity 0.25s;
    transition: opacity 0.25s;
    z-index: 1; }
    .md-header-nav__button:hover,
.md-header-nav__button.\:hover {
      opacity: 0.7; }
    .md-header-nav__button.md-logo {
      margin: 0;
      position: relative; }
      .md-header-nav__button.md-logo .md-subtitle {
        font-size: 11px;
        position: absolute;
        bottom: 1px;
        letter-spacing: 7px;
        left: 40px; }
    .md-header-nav__button.md-logo img {
      display: block; }
    .no-js .md-header-nav__button.md-icon--search {
      display: none; }
  .md-header-nav__title {
    padding: 0 2rem;
    font-size: 1.8rem;
    line-height: 4.8rem; }
  .md-header-nav__parent {
    color: rgba(255, 255, 255, 0.7); }
    .md-header-nav__parent::after {
      display: inline;
      color: rgba(255, 255, 255, 0.3);
      content: "/"; }
  .md-header-nav__source {
    display: none; }

.md-footer-nav {
  background-color: #393939;
  color: white; }
  .md-footer-nav__inner {
    padding: 0.4rem;
    overflow: auto; }
  .md-footer-nav__link {
    padding-top: 2.8rem;
    padding-bottom: 0.8rem;
    -webkit-transition: opacity 0.25s;
    transition: opacity 0.25s; }
    .md-footer-nav__link:hover,
.md-footer-nav__link.\:hover {
      opacity: 0.7; }
    .md-footer-nav__link--prev {
      width: 25%;
      float: left; }
    .md-footer-nav__link--next {
      width: 75%;
      float: right;
      text-align: right; }
  .md-footer-nav__button {
    -webkit-transition: background 0.25s;
    transition: background 0.25s; }
  .md-footer-nav__title {
    position: relative;
    padding: 0 2rem;
    font-size: 1.8rem;
    line-height: 4.8rem; }
  .md-footer-nav__direction {
    position: absolute;
    right: 0;
    left: 0;
    margin-top: -2rem;
    padding: 0 2rem;
    color: rgba(255, 255, 255, 0.7);
    font-size: 1.5rem; }

.md-footer-meta {
  background: #393939; }
  .md-footer-meta__inner {
    margin-bottom: -0.1rem;
    padding: 0.4rem;
    overflow: auto; }
  html .md-footer-meta.md-typeset a {
    color: rgba(255, 255, 255, 0.7); }

.md-footer-copyright {
  margin: 0 1.2rem;
  padding: 0.8rem 0;
  color: rgba(255, 255, 255, 0.3);
  font-size: 1.28rem; }
  .md-footer-copyright__highlight {
    color: rgba(255, 255, 255, 0.7); }

.md-footer-social {
  margin: 0 0.8rem;
  padding: 0.4rem 0 1.2rem; }
  .md-footer-social__link {
    display: inline-block;
    width: 3.2rem;
    height: 3.2rem;
    border: 0.1rem solid rgba(255, 255, 255, 0.12);
    border-radius: 100%;
    color: rgba(255, 255, 255, 0.7);
    font-size: 1.6rem;
    text-align: center; }
    .md-footer-social__link::before {
      line-height: 1.9; }

.md-nav {
  font-size: 1.6rem;
  line-height: 1.4; }
  .md-nav--secondary {
    -webkit-transition: border-left 0.25s;
    transition: border-left 0.25s;
    border-left: 0.4rem solid #393939; }
    .md-nav--secondary .md-nav__link--active {
      color: #f01e14; }
  .md-nav__title {
    display: block;
    padding: 1.2rem 1.2rem 0;
    font-weight: 700;
    text-overflow: ellipsis;
    overflow: hidden; }
    .md-nav__title::before {
      display: none;
      content: "arrow_back"; }
    .md-nav__title .md-nav__button {
      display: none; }
  .md-nav__list {
    margin: 0;
    padding: 0;
    list-style: none; }
  .md-nav__item {
    padding: 0 1.2rem; }
    .md-nav__item:last-child {
      padding-bottom: 1.2rem; }
    .md-nav__item .md-nav__item {
      padding-right: 0; }
      .md-nav__item .md-nav__item:last-child {
        padding-bottom: 0; }
  .md-nav__button img {
    width: 100%;
    height: auto; }
  .md-nav__link {
    display: block;
    margin-top: 0.625em;
    -webkit-transition: color 0.125s;
    transition: color 0.125s;
    text-overflow: ellipsis;
    cursor: pointer;
    overflow: hidden; }
    .md-nav__item--nested > .md-nav__link::after {
      content: "keyboard_arrow_down"; }
    html .md-nav__link[for="toc"] {
      display: none; }
      html .md-nav__link[for="toc"] ~ .md-nav {
        display: none; }
      html .md-nav__link[for="toc"] + .md-nav__link::after {
        display: none; }
    .md-nav__link[data-md-state="blur"] {
      color: rgba(0, 0, 0, 0.26); }
    .md-nav__link:active {
      color: #f01e14; }
    .md-nav__item--nested > .md-nav__link {
      color: inherit; }
    .md-nav__link:focus, .md-nav__link:hover,
.md-nav__link.\:focus,
.md-nav__link.\:hover {
      color: #f01e14; }
  .md-nav__source {
    display: none; }

.no-js .md-search {
  display: none; }

.md-search__overlay {
  opacity: 0;
  z-index: 1; }

.md-search__inner {
  width: 100%; }

.md-search__form {
  position: relative; }

.md-search__input {
  position: relative;
  padding: 0 4.8rem 0 7.2rem;
  text-overflow: ellipsis;
  z-index: 2; }
  .md-search__input::-webkit-input-placeholder {
    -webkit-transition: color 0.25s cubic-bezier(0.1, 0.7, 0.1, 1);
    transition: color 0.25s cubic-bezier(0.1, 0.7, 0.1, 1); }
  .md-search__input:-ms-input-placeholder {
    -webkit-transition: color 0.25s cubic-bezier(0.1, 0.7, 0.1, 1);
    transition: color 0.25s cubic-bezier(0.1, 0.7, 0.1, 1); }
  .md-search__input::placeholder {
    -webkit-transition: color 0.25s cubic-bezier(0.1, 0.7, 0.1, 1);
    transition: color 0.25s cubic-bezier(0.1, 0.7, 0.1, 1); }
  .md-search__input ~ .md-search__icon, .md-search__input::-webkit-input-placeholder {
    color: rgba(0, 0, 0, 0.8); }
  .md-search__input ~ .md-search__icon, .md-search__input:-ms-input-placeholder {
    color: rgba(0, 0, 0, 0.8); }
  .md-search__input ~ .md-search__icon, .md-search__input::placeholder {
    color: rgba(0, 0, 0, 0.8); }
  .md-search__input::-ms-clear {
    display: none; }

.md-search__icon {
  position: absolute;
  -webkit-transition: color 0.25s cubic-bezier(0.1, 0.7, 0.1, 1), opacity 0.25s;
  transition: color 0.25s cubic-bezier(0.1, 0.7, 0.1, 1), opacity 0.25s;
  font-size: 2.4rem;
  cursor: pointer;
  z-index: 2; }
  .md-search__icon:hover,
.md-search__icon.\:hover {
    opacity: 0.7; }
  .md-search__icon[for="search"] {
    top: 0.8rem;
    left: 1.2rem; }
    .md-search__icon[for="search"]::before {
      content: "search"; }
  .md-search__icon[type="reset"] {
    top: 0.8rem;
    right: 1.2rem;
    -webkit-transform: scale(0.125);
            transform: scale(0.125);
    -webkit-transition: opacity 0.15s, -webkit-transform 0.15s cubic-bezier(0.1, 0.7, 0.1, 1);
    transition: opacity 0.15s, -webkit-transform 0.15s cubic-bezier(0.1, 0.7, 0.1, 1);
    transition: transform 0.15s cubic-bezier(0.1, 0.7, 0.1, 1), opacity 0.15s;
    transition: transform 0.15s cubic-bezier(0.1, 0.7, 0.1, 1), opacity 0.15s, -webkit-transform 0.15s cubic-bezier(0.1, 0.7, 0.1, 1);
    opacity: 0; }
    [data-md-toggle="search"]:checked ~ .md-header .md-search__input:valid ~ .md-search__icon[type="reset"] {
      -webkit-transform: scale(1);
              transform: scale(1);
      opacity: 1; }
      [data-md-toggle="search"]:checked ~ .md-header .md-search__input:valid ~ .md-search__icon[type="reset"]:hover,
[data-md-toggle="search"]:checked ~ .md-header .md-search__input:valid ~ .md-search__icon[type="reset"].\:hover {
        opacity: 0.7; }

.md-search__output {
  position: absolute;
  width: 100%;
  border-radius: 0 0 0.2rem 0.2rem;
  overflow: hidden;
  z-index: 1; }

.md-search__scrollwrap {
  height: 100%;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(10%, white), to(rgba(255, 255, 255, 0))), -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.26)), color-stop(35%, rgba(0, 0, 0, 0.07)), color-stop(60%, transparent));
  background: linear-gradient(to bottom, white 10%, rgba(255, 255, 255, 0)), linear-gradient(to bottom, rgba(0, 0, 0, 0.26), rgba(0, 0, 0, 0.07) 35%, transparent 60%);
  background-attachment: local, scroll;
  background-color: white;
  background-repeat: no-repeat;
  background-size: 100% 2rem, 100% 1rem;
  -webkit-box-shadow: 0 0.1rem 0 rgba(0, 0, 0, 0.07) inset;
          box-shadow: 0 0.1rem 0 rgba(0, 0, 0, 0.07) inset;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch; }

.md-search-result {
  color: #393939;
  word-break: break-word; }
  .md-search-result__meta {
    padding: 0 1.6rem;
    background-color: rgba(0, 0, 0, 0.07);
    color: rgba(0, 0, 0, 0.8);
    font-size: 1.28rem;
    line-height: 4rem; }
  .md-search-result__list {
    margin: 0;
    padding: 0;
    border-top: 0.1rem solid rgba(0, 0, 0, 0.07);
    list-style: none; }
  .md-search-result__item {
    -webkit-box-shadow: 0 -0.1rem 0 rgba(0, 0, 0, 0.07);
            box-shadow: 0 -0.1rem 0 rgba(0, 0, 0, 0.07); }
  .md-search-result__link {
    display: block;
    -webkit-transition: background 0.25s;
    transition: background 0.25s;
    outline: 0;
    overflow: hidden; }
    .md-search-result__link[data-md-state="active"], .md-search-result__link:hover,
.md-search-result__link.\:hover {
      background-color: rgba(240, 30, 20, 0.1); }
      .md-search-result__link[data-md-state="active"] .md-search-result__article::before, .md-search-result__link:hover .md-search-result__article::before,
.md-search-result__link.\:hover .md-search-result__article::before {
        opacity: 0.7; }
    .md-search-result__link:last-child .md-search-result__teaser {
      margin-bottom: 1.2rem; }
  .md-search-result__article {
    position: relative;
    padding: 0 1.6rem;
    overflow: auto; }
    .md-search-result__article--document::before {
      position: absolute;
      left: 0;
      -webkit-transition: opacity 0.25s;
      transition: opacity 0.25s;
      color: rgba(0, 0, 0, 0.8);
      content: "find_in_page"; }
    .md-search-result__article--document .md-search-result__title {
      margin: 1.3rem 0;
      font-size: 1.6rem;
      font-weight: 400;
      line-height: 1.4; }
  .md-search-result__title {
    margin: 0.5em 0;
    font-size: 1.28rem;
    font-weight: 700;
    line-height: 1.4; }
  .md-search-result__teaser {
    display: -webkit-box;
    max-height: 3.3rem;
    margin: 0.5em 0;
    color: rgba(0, 0, 0, 0.8);
    font-size: 1.28rem;
    line-height: 1.4;
    text-overflow: ellipsis;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2; }
  .md-search-result em {
    font-style: normal;
    font-weight: 700;
    text-decoration: underline; }

.md-sidebar {
  position: absolute;
  width: 24.2rem;
  padding: 2.4rem 0;
  overflow: hidden; }
  .md-sidebar[data-md-state="lock"] {
    position: fixed;
    top: 5.6rem; }
  .md-sidebar--secondary {
    display: none; }
  .md-sidebar__scrollwrap {
    max-height: 100%;
    margin: 0 0.4rem;
    overflow-y: auto;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden; }
    .md-sidebar__scrollwrap::-webkit-scrollbar {
      width: 0.4rem;
      height: 0.4rem; }
    .md-sidebar__scrollwrap::-webkit-scrollbar-thumb {
      background-color: rgba(0, 0, 0, 0.26); }
      .md-sidebar__scrollwrap::-webkit-scrollbar-thumb:hover,
.md-sidebar__scrollwrap::-webkit-scrollbar-thumb.\:hover {
        background-color: #f01e14; }

@-webkit-keyframes md-source__facts--done {
  0% {
    height: 0; }
  100% {
    height: 1.3rem; } }

@keyframes md-source__facts--done {
  0% {
    height: 0; }
  100% {
    height: 1.3rem; } }

@-webkit-keyframes md-source__fact--done {
  0% {
    -webkit-transform: translateY(100%);
            transform: translateY(100%);
    opacity: 0; }
  50% {
    opacity: 0; }
  100% {
    -webkit-transform: translateY(0%);
            transform: translateY(0%);
    opacity: 1; } }

@keyframes md-source__fact--done {
  0% {
    -webkit-transform: translateY(100%);
            transform: translateY(100%);
    opacity: 0; }
  50% {
    opacity: 0; }
  100% {
    -webkit-transform: translateY(0%);
            transform: translateY(0%);
    opacity: 1; } }

.md-source {
  display: block;
  padding-right: 1.2rem;
  -webkit-transition: opacity 0.25s;
  transition: opacity 0.25s;
  font-size: 1.3rem;
  line-height: 1.2;
  white-space: nowrap; }
  .md-source:hover,
.md-source.\:hover {
    opacity: 0.7; }
  .md-source::after {
    display: inline-block;
    height: 4.8rem;
    content: "";
    vertical-align: middle; }
  .md-source__icon {
    display: inline-block;
    width: 4.8rem;
    height: 4.8rem;
    content: "";
    vertical-align: middle; }
    .md-source__icon svg {
      width: 2.4rem;
      height: 2.4rem;
      margin-top: 1.2rem;
      margin-left: 1.2rem; }
    .md-source__icon + .md-source__repository {
      margin-left: -4.4rem;
      padding-left: 4rem; }
  .md-source__repository {
    display: inline-block;
    max-width: 100%;
    margin-left: 1.2rem;
    font-weight: 700;
    text-overflow: ellipsis;
    overflow: hidden;
    vertical-align: middle; }
  .md-source__facts {
    margin: 0;
    padding: 0;
    font-size: 1.1rem;
    font-weight: 700;
    list-style-type: none;
    opacity: 0.75;
    overflow: hidden; }
    [data-md-state="done"] .md-source__facts {
      -webkit-animation: md-source__facts--done 0.25s ease-in;
              animation: md-source__facts--done 0.25s ease-in; }
  .md-source__fact {
    float: left; }
    [data-md-state="done"] .md-source__fact {
      -webkit-animation: md-source__fact--done 0.4s ease-out;
              animation: md-source__fact--done 0.4s ease-out; }
    .md-source__fact::before {
      margin: 0 0.2rem;
      content: "\00B7"; }
    .md-source__fact:first-child::before {
      display: none; }

.md-source-file {
  display: inline-block;
  margin: 1em 0.5em 1em 0;
  padding-right: 0.5rem;
  border-radius: 0.2rem;
  background: rgba(0, 0, 0, 0.07);
  font-size: 1.28rem;
  list-style-type: none;
  cursor: pointer;
  overflow: hidden; }
  .md-source-file::before {
    display: inline-block;
    margin-right: 0.5rem;
    padding: 0.5rem;
    background: rgba(0, 0, 0, 0.26);
    color: white;
    font-size: 1.6rem;
    content: "clear_all";
    vertical-align: middle; }
  html .md-source-file {
    -webkit-transition: background 0.4s, color 0.4s, -webkit-box-shadow 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    transition: background 0.4s, color 0.4s, -webkit-box-shadow 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    transition: background 0.4s, color 0.4s, box-shadow 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    transition: background 0.4s, color 0.4s, box-shadow 0.4s cubic-bezier(0.4, 0, 0.2, 1), -webkit-box-shadow 0.4s cubic-bezier(0.4, 0, 0.2, 1); }
    html .md-source-file::before {
      -webkit-transition: inherit;
      transition: inherit; }
  html body .md-typeset .md-source-file {
    color: rgba(0, 0, 0, 0.8); }
  .md-source-file:hover,
.md-source-file.\:hover {
    -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.18), 0 8px 16px rgba(0, 0, 0, 0.36);
            box-shadow: 0 0 8px rgba(0, 0, 0, 0.18), 0 8px 16px rgba(0, 0, 0, 0.36); }
    .md-source-file:hover::before,
.md-source-file.\:hover::before {
      background: #f01e14; }

.md-tabs {
  width: 100%;
  -webkit-transition: background 0.25s;
  transition: background 0.25s;
  background: #c2251d;
  overflow: auto; }
  .md-tabs__list {
    margin: 0;
    margin-left: 0.4rem;
    padding: 0;
    list-style: none;
    white-space: nowrap; }
  .md-tabs__item {
    display: inline-block;
    height: 4.8rem;
    padding-right: 1.2rem;
    padding-left: 1.2rem; }
  .md-tabs__link {
    display: block;
    margin-top: 1.6rem;
    -webkit-transition: color 0.25s, opacity 0.1s, -webkit-transform 0.4s cubic-bezier(0.1, 0.7, 0.1, 1);
    transition: color 0.25s, opacity 0.1s, -webkit-transform 0.4s cubic-bezier(0.1, 0.7, 0.1, 1);
    transition: color 0.25s, transform 0.4s cubic-bezier(0.1, 0.7, 0.1, 1), opacity 0.1s;
    transition: color 0.25s, transform 0.4s cubic-bezier(0.1, 0.7, 0.1, 1), opacity 0.1s, -webkit-transform 0.4s cubic-bezier(0.1, 0.7, 0.1, 1);
    color: rgba(255, 255, 255, 0.7);
    font-size: 1.4rem; }
    .md-tabs__link--active, .md-tabs__link:hover,
.md-tabs__link.\:hover {
      color: white; }
    .md-tabs__item:nth-child(2) .md-tabs__link {
      -webkit-transition-delay: 0.02s;
              transition-delay: 0.02s; }
    .md-tabs__item:nth-child(3) .md-tabs__link {
      -webkit-transition-delay: 0.04s;
              transition-delay: 0.04s; }
    .md-tabs__item:nth-child(4) .md-tabs__link {
      -webkit-transition-delay: 0.06s;
              transition-delay: 0.06s; }
    .md-tabs__item:nth-child(5) .md-tabs__link {
      -webkit-transition-delay: 0.08s;
              transition-delay: 0.08s; }
    .md-tabs__item:nth-child(6) .md-tabs__link {
      -webkit-transition-delay: 0.1s;
              transition-delay: 0.1s; }
    .md-tabs__item:nth-child(7) .md-tabs__link {
      -webkit-transition-delay: 0.12s;
              transition-delay: 0.12s; }
    .md-tabs__item:nth-child(8) .md-tabs__link {
      -webkit-transition-delay: 0.14s;
              transition-delay: 0.14s; }
    .md-tabs__item:nth-child(9) .md-tabs__link {
      -webkit-transition-delay: 0.16s;
              transition-delay: 0.16s; }
    .md-tabs__item:nth-child(10) .md-tabs__link {
      -webkit-transition-delay: 0.18s;
              transition-delay: 0.18s; }
    .md-tabs__item:nth-child(11) .md-tabs__link {
      -webkit-transition-delay: 0.2s;
              transition-delay: 0.2s; }
    .md-tabs__item:nth-child(12) .md-tabs__link {
      -webkit-transition-delay: 0.22s;
              transition-delay: 0.22s; }
    .md-tabs__item:nth-child(13) .md-tabs__link {
      -webkit-transition-delay: 0.24s;
              transition-delay: 0.24s; }
    .md-tabs__item:nth-child(14) .md-tabs__link {
      -webkit-transition-delay: 0.26s;
              transition-delay: 0.26s; }
    .md-tabs__item:nth-child(15) .md-tabs__link {
      -webkit-transition-delay: 0.28s;
              transition-delay: 0.28s; }
    .md-tabs__item:nth-child(16) .md-tabs__link {
      -webkit-transition-delay: 0.3s;
              transition-delay: 0.3s; }
  .md-tabs[data-md-state="hidden"] {
    background: #f01e14;
    pointer-events: none; }
    .md-tabs[data-md-state="hidden"] .md-tabs__link {
      -webkit-transform: translateY(50%);
              transform: translateY(50%);
      -webkit-transition: color     0.25s, opacity   0.1s, -webkit-transform 0s 0.4s;
      transition: color     0.25s, opacity   0.1s, -webkit-transform 0s 0.4s;
      transition: color     0.25s, transform 0s 0.4s, opacity   0.1s;
      transition: color     0.25s, transform 0s 0.4s, opacity   0.1s, -webkit-transform 0s 0.4s;
      opacity: 0; }

.admonition {
  position: relative;
  margin: 1.5625em 0;
  padding: 0.8rem 1.2rem;
  border-left: 3.2rem solid rgba(68, 138, 255, 0.4);
  border-radius: 0.2rem;
  background-color: rgba(68, 138, 255, 0.15);
  font-size: 1.28rem; }
  .admonition::before {
    position: absolute;
    left: -2.6rem;
    color: white;
    font-size: 2rem;
    content: "edit";
    vertical-align: -0.25em; }
  .admonition :first-child {
    margin-top: 0; }
  .admonition :last-child {
    margin-bottom: 0; }
  .admonition.tldr, .admonition.summary {
    border-color: rgba(0, 176, 255, 0.4);
    background-color: rgba(0, 176, 255, 0.15); }
    .admonition.tldr::before, .admonition.summary::before {
      content: "subject"; }
  .admonition.hint, .admonition.important, .admonition.tip {
    border-color: rgba(0, 191, 165, 0.4);
    background-color: rgba(0, 191, 165, 0.15); }
    .admonition.hint::before, .admonition.important::before, .admonition.tip::before {
      content: "whatshot"; }
  .admonition.check, .admonition.done, .admonition.success {
    border-color: rgba(0, 230, 118, 0.4);
    background-color: rgba(0, 230, 118, 0.15); }
    .admonition.check::before, .admonition.done::before, .admonition.success::before {
      content: "done"; }
  .admonition.caution, .admonition.attention, .admonition.warning {
    border-color: rgba(255, 145, 0, 0.4);
    background-color: rgba(255, 145, 0, 0.15); }
    .admonition.caution::before, .admonition.attention::before, .admonition.warning::before {
      content: "warning"; }
  .admonition.fail, .admonition.missing, .admonition.failure {
    border-color: rgba(255, 82, 82, 0.4);
    background-color: rgba(255, 82, 82, 0.15); }
    .admonition.fail::before, .admonition.missing::before, .admonition.failure::before {
      content: "clear"; }
  .admonition.error, .admonition.danger {
    border-color: rgba(255, 23, 68, 0.4);
    background-color: rgba(255, 23, 68, 0.15); }
    .admonition.error::before, .admonition.danger::before {
      content: "flash_on"; }
  .admonition.bug {
    border-color: rgba(245, 0, 87, 0.4);
    background-color: rgba(245, 0, 87, 0.15); }
    .admonition.bug::before {
      content: "bug_report"; }
  .admonition.cite, .admonition.quote {
    border-color: rgba(158, 158, 158, 0.4);
    background-color: rgba(158, 158, 158, 0.15); }
    .admonition.cite::before, .admonition.quote::before {
      content: "format_quote"; }

.admonition-title {
  font-weight: 700; }
  html .admonition-title {
    margin-bottom: 0; }
  html .admonition-title + * {
    margin-top: 0; }

.codehilite .o, .md-typeset .highlight .o {
  color: inherit; }

.codehilite .ow, .md-typeset .highlight .ow {
  color: inherit; }

.codehilite .ge, .md-typeset .highlight .ge {
  color: #000000; }

.codehilite .gr, .md-typeset .highlight .gr {
  color: #AA0000; }

.codehilite .gh, .md-typeset .highlight .gh {
  color: #999999; }

.codehilite .go, .md-typeset .highlight .go {
  color: #888888; }

.codehilite .gp, .md-typeset .highlight .gp {
  color: #555555; }

.codehilite .gs, .md-typeset .highlight .gs {
  color: inherit; }

.codehilite .gu, .md-typeset .highlight .gu {
  color: #AAAAAA; }

.codehilite .gt, .md-typeset .highlight .gt {
  color: #AA0000; }

.codehilite .gd, .md-typeset .highlight .gd {
  background-color: #FFDDDD; }

.codehilite .gi, .md-typeset .highlight .gi {
  background-color: #DDFFDD; }

.codehilite .k, .md-typeset .highlight .k {
  color: #3B78E7; }

.codehilite .kc, .md-typeset .highlight .kc {
  color: #A71D5D; }

.codehilite .kd, .md-typeset .highlight .kd {
  color: #3B78E7; }

.codehilite .kn, .md-typeset .highlight .kn {
  color: #3B78E7; }

.codehilite .kp, .md-typeset .highlight .kp {
  color: #A71D5D; }

.codehilite .kr, .md-typeset .highlight .kr {
  color: #3E61A2; }

.codehilite .kt, .md-typeset .highlight .kt {
  color: #3E61A2; }

.codehilite .c, .md-typeset .highlight .c {
  color: #999999; }

.codehilite .cm, .md-typeset .highlight .cm {
  color: #999999; }

.codehilite .cp, .md-typeset .highlight .cp {
  color: #666666; }

.codehilite .c1, .md-typeset .highlight .c1 {
  color: #999999; }

.codehilite .ch, .md-typeset .highlight .ch {
  color: #999999; }

.codehilite .cs, .md-typeset .highlight .cs {
  color: #999999; }

.codehilite .na, .md-typeset .highlight .na {
  color: #C2185B; }

.codehilite .nb, .md-typeset .highlight .nb {
  color: #C2185B; }

.codehilite .bp, .md-typeset .highlight .bp {
  color: #3E61A2; }

.codehilite .nc, .md-typeset .highlight .nc {
  color: #C2185B; }

.codehilite .no, .md-typeset .highlight .no {
  color: #3E61A2; }

.codehilite .nd, .md-typeset .highlight .nd {
  color: #666666; }

.codehilite .ni, .md-typeset .highlight .ni {
  color: #666666; }

.codehilite .ne, .md-typeset .highlight .ne {
  color: #C2185B; }

.codehilite .nf, .md-typeset .highlight .nf {
  color: #C2185B; }

.codehilite .nl, .md-typeset .highlight .nl {
  color: #3B5179; }

.codehilite .nn, .md-typeset .highlight .nn {
  color: #EC407A; }

.codehilite .nt, .md-typeset .highlight .nt {
  color: #3B78E7; }

.codehilite .nv, .md-typeset .highlight .nv {
  color: #3E61A2; }

.codehilite .vc, .md-typeset .highlight .vc {
  color: #3E61A2; }

.codehilite .vg, .md-typeset .highlight .vg {
  color: #3E61A2; }

.codehilite .vi, .md-typeset .highlight .vi {
  color: #3E61A2; }

.codehilite .nx, .md-typeset .highlight .nx {
  color: #EC407A; }

.codehilite .m, .md-typeset .highlight .m {
  color: #E74C3C; }

.codehilite .mf, .md-typeset .highlight .mf {
  color: #E74C3C; }

.codehilite .mh, .md-typeset .highlight .mh {
  color: #E74C3C; }

.codehilite .mi, .md-typeset .highlight .mi {
  color: #E74C3C; }

.codehilite .il, .md-typeset .highlight .il {
  color: #E74C3C; }

.codehilite .mo, .md-typeset .highlight .mo {
  color: #E74C3C; }

.codehilite .s, .md-typeset .highlight .s {
  color: #0D904F; }

.codehilite .sb, .md-typeset .highlight .sb {
  color: #0D904F; }

.codehilite .sc, .md-typeset .highlight .sc {
  color: #0D904F; }

.codehilite .sd, .md-typeset .highlight .sd {
  color: #999999; }

.codehilite .s2, .md-typeset .highlight .s2 {
  color: #0D904F; }

.codehilite .se, .md-typeset .highlight .se {
  color: #183691; }

.codehilite .sh, .md-typeset .highlight .sh {
  color: #183691; }

.codehilite .si, .md-typeset .highlight .si {
  color: #183691; }

.codehilite .sx, .md-typeset .highlight .sx {
  color: #183691; }

.codehilite .sr, .md-typeset .highlight .sr {
  color: #009926; }

.codehilite .s1, .md-typeset .highlight .s1 {
  color: #0D904F; }

.codehilite .ss, .md-typeset .highlight .ss {
  color: #0D904F; }

.codehilite .err, .md-typeset .highlight .err {
  color: #A61717; }

.codehilite .w, .md-typeset .highlight .w {
  color: transparent; }

.codehilite .hll, .md-typeset .highlight .hll {
  display: block;
  margin: 0 -1.2rem;
  padding: 0 1.2rem;
  background-color: rgba(255, 235, 59, 0.5); }

.md-typeset .codehilite, .md-typeset .highlight {
  position: relative;
  margin: 1em 0;
  padding: 0;
  border-radius: 0.2rem;
  background-color: rgba(236, 236, 236, 0.5);
  color: #37474F;
  line-height: 1.4;
  -webkit-overflow-scrolling: touch; }
  .md-typeset .codehilite pre, .md-typeset .highlight pre,
  .md-typeset .codehilite code, .md-typeset .highlight code {
    display: block;
    margin: 0;
    padding: 1.05rem 1.2rem;
    background-color: transparent;
    overflow: auto;
    vertical-align: top; }
    .md-typeset .codehilite pre::-webkit-scrollbar, .md-typeset .highlight pre::-webkit-scrollbar,
    .md-typeset .codehilite code::-webkit-scrollbar, .md-typeset .highlight code::-webkit-scrollbar {
      width: 0.4rem;
      height: 0.4rem; }
    .md-typeset .codehilite pre::-webkit-scrollbar-thumb, .md-typeset .highlight pre::-webkit-scrollbar-thumb,
    .md-typeset .codehilite code::-webkit-scrollbar-thumb, .md-typeset .highlight code::-webkit-scrollbar-thumb {
      background-color: rgba(0, 0, 0, 0.26); }
      .md-typeset .codehilite pre::-webkit-scrollbar-thumb:hover, .md-typeset .highlight pre::-webkit-scrollbar-thumb:hover,
      .md-typeset .codehilite code::-webkit-scrollbar-thumb:hover, .md-typeset .highlight code::-webkit-scrollbar-thumb:hover,
.md-typeset .codehilite pre::-webkit-scrollbar-thumb.\:hover,
.md-typeset .highlight pre::-webkit-scrollbar-thumb.\:hover,
.md-typeset .codehilite code::-webkit-scrollbar-thumb.\:hover,
.md-typeset .highlight code::-webkit-scrollbar-thumb.\:hover {
        background-color: #f01e14; }

.md-typeset pre.codehilite, .md-typeset pre.highlight {
  overflow: visible; }
  .md-typeset pre.codehilite code, .md-typeset pre.highlight code {
    display: block;
    padding: 1.05rem 1.2rem;
    overflow: auto; }

.md-typeset .codehilitetable {
  display: block;
  margin: 1em 0;
  border-radius: 0.2em;
  font-size: 1.6rem;
  overflow: hidden; }
  .md-typeset .codehilitetable tbody,
  .md-typeset .codehilitetable td {
    display: block;
    padding: 0; }
  .md-typeset .codehilitetable tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .md-typeset .codehilitetable .codehilite, .md-typeset .codehilitetable .highlight,
  .md-typeset .codehilitetable .linenodiv {
    margin: 0;
    border-radius: 0; }
  .md-typeset .codehilitetable .linenodiv {
    padding: 1.05rem 1.2rem; }
    .md-typeset .codehilitetable .linenodiv,
    .md-typeset .codehilitetable .linenodiv > pre {
      height: 100%; }
  .md-typeset .codehilitetable .linenos {
    background-color: rgba(0, 0, 0, 0.07);
    color: rgba(0, 0, 0, 0.26);
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; }
    .md-typeset .codehilitetable .linenos pre {
      margin: 0;
      padding: 0;
      background-color: transparent;
      color: inherit;
      text-align: right; }
  .md-typeset .codehilitetable .code {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    overflow: hidden; }

.md-typeset > .codehilitetable {
  -webkit-box-shadow: none;
          box-shadow: none; }

.md-typeset sup[id^="fnref:"]::before {
  display: inline-block;
  content: ""; }

.md-typeset sup[id^="fnref:"]:target::before {
  margin-top: -9.8rem;
  padding-top: 9.8rem; }

.md-typeset .footnote {
  color: rgba(0, 0, 0, 0.8);
  font-size: 1.28rem; }
  .md-typeset .footnote ol {
    margin-left: 0; }
  .md-typeset .footnote li {
    -webkit-transition: color 0.25s;
    transition: color 0.25s; }
    .md-typeset .footnote li::before {
      display: block;
      height: 0; }
    .md-typeset .footnote li:target {
      color: #393939; }
    .md-typeset .footnote li:target::before {
      margin-top: -9rem;
      padding-top: 9rem;
      pointer-events: none; }
    .md-typeset .footnote li :first-child {
      margin-top: 0; }
    .md-typeset .footnote li:hover .footnote-backref,
    .md-typeset .footnote li:target .footnote-backref,
.md-typeset .footnote li.\:hover .footnote-backref {
      -webkit-transform: translateX(0);
              transform: translateX(0);
      opacity: 1; }
    .md-typeset .footnote li:hover .footnote-backref:hover,
    .md-typeset .footnote li:target .footnote-backref,
.md-typeset .footnote li.\:hover .footnote-backref.\:hover {
      color: #f01e14; }

.md-typeset .footnote-ref::before {
  display: inline;
  margin: 0 0.2em;
  border-left: 0.1rem solid rgba(0, 0, 0, 0.26);
  font-size: 1.25em;
  content: "";
  vertical-align: -0.5rem; }

.md-typeset .footnote-backref {
  display: inline-block;
  -webkit-transform: translateX(0.5rem);
          transform: translateX(0.5rem);
  -webkit-transition: color     0.25s, opacity   0.125s 0.125s, -webkit-transform 0.25s  0.125s;
  transition: color     0.25s, opacity   0.125s 0.125s, -webkit-transform 0.25s  0.125s;
  transition: transform 0.25s  0.125s, color     0.25s, opacity   0.125s 0.125s;
  transition: transform 0.25s  0.125s, color     0.25s, opacity   0.125s 0.125s, -webkit-transform 0.25s  0.125s;
  color: rgba(0, 0, 0, 0.26);
  font-size: 0;
  opacity: 0;
  vertical-align: text-bottom; }
  .md-typeset .footnote-backref::before {
    font-size: 1.6rem;
    content: "keyboard_return"; }

.md-typeset .headerlink {
  display: inline-block;
  margin-left: 1rem;
  -webkit-transform: translate(0, 0.5rem);
          transform: translate(0, 0.5rem);
  -webkit-transition: color     0.25s, opacity   0.125s 0.25s, -webkit-transform 0.25s  0.25s;
  transition: color     0.25s, opacity   0.125s 0.25s, -webkit-transform 0.25s  0.25s;
  transition: transform 0.25s  0.25s, color     0.25s, opacity   0.125s 0.25s;
  transition: transform 0.25s  0.25s, color     0.25s, opacity   0.125s 0.25s, -webkit-transform 0.25s  0.25s;
  opacity: 0; }
  html body .md-typeset .headerlink {
    color: rgba(0, 0, 0, 0.26); }

.md-typeset h1[id] .headerlink {
  display: none; }

.md-typeset h2[id]::before {
  display: block;
  margin-top: -0.4rem;
  padding-top: 0.4rem;
  content: ""; }

.md-typeset h2[id]:target::before {
  margin-top: -8.4rem;
  padding-top: 8.4rem; }

.md-typeset h2[id]:hover .headerlink,
.md-typeset h2[id]:target .headerlink,
.md-typeset h2[id] .headerlink:focus,
.md-typeset h2[id].\:hover .headerlink,
.md-typeset h2[id] .headerlink.\:focus {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  opacity: 1; }

.md-typeset h2[id]:hover .headerlink:hover,
.md-typeset h2[id]:target .headerlink,
.md-typeset h2[id] .headerlink:focus,
.md-typeset h2[id].\:hover .headerlink.\:hover,
.md-typeset h2[id] .headerlink.\:focus {
  color: #f01e14; }

.md-typeset h3[id]::before {
  display: block;
  margin-top: -0.7rem;
  padding-top: 0.7rem;
  content: ""; }

.md-typeset h3[id]:target::before {
  margin-top: -8.7rem;
  padding-top: 8.7rem; }

.md-typeset h3[id]:hover .headerlink,
.md-typeset h3[id]:target .headerlink,
.md-typeset h3[id] .headerlink:focus,
.md-typeset h3[id].\:hover .headerlink,
.md-typeset h3[id] .headerlink.\:focus {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  opacity: 1; }

.md-typeset h3[id]:hover .headerlink:hover,
.md-typeset h3[id]:target .headerlink,
.md-typeset h3[id] .headerlink:focus,
.md-typeset h3[id].\:hover .headerlink.\:hover,
.md-typeset h3[id] .headerlink.\:focus {
  color: #f01e14; }

.md-typeset h4[id]::before {
  display: block;
  margin-top: -0.8rem;
  padding-top: 0.8rem;
  content: ""; }

.md-typeset h4[id]:target::before {
  margin-top: -8.8rem;
  padding-top: 8.8rem; }

.md-typeset h4[id]:hover .headerlink,
.md-typeset h4[id]:target .headerlink,
.md-typeset h4[id] .headerlink:focus,
.md-typeset h4[id].\:hover .headerlink,
.md-typeset h4[id] .headerlink.\:focus {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  opacity: 1; }

.md-typeset h4[id]:hover .headerlink:hover,
.md-typeset h4[id]:target .headerlink,
.md-typeset h4[id] .headerlink:focus,
.md-typeset h4[id].\:hover .headerlink.\:hover,
.md-typeset h4[id] .headerlink.\:focus {
  color: #f01e14; }

.md-typeset h5[id]::before {
  display: block;
  margin-top: -1.1rem;
  padding-top: 1.1rem;
  content: ""; }

.md-typeset h5[id]:target::before {
  margin-top: -9.1rem;
  padding-top: 9.1rem; }

.md-typeset h5[id]:hover .headerlink,
.md-typeset h5[id]:target .headerlink,
.md-typeset h5[id] .headerlink:focus,
.md-typeset h5[id].\:hover .headerlink,
.md-typeset h5[id] .headerlink.\:focus {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  opacity: 1; }

.md-typeset h5[id]:hover .headerlink:hover,
.md-typeset h5[id]:target .headerlink,
.md-typeset h5[id] .headerlink:focus,
.md-typeset h5[id].\:hover .headerlink.\:hover,
.md-typeset h5[id] .headerlink.\:focus {
  color: #f01e14; }

.md-typeset h6[id]::before {
  display: block;
  margin-top: -1.1rem;
  padding-top: 1.1rem;
  content: ""; }

.md-typeset h6[id]:target::before {
  margin-top: -9.1rem;
  padding-top: 9.1rem; }

.md-typeset h6[id]:hover .headerlink,
.md-typeset h6[id]:target .headerlink,
.md-typeset h6[id] .headerlink:focus,
.md-typeset h6[id].\:hover .headerlink,
.md-typeset h6[id] .headerlink.\:focus {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  opacity: 1; }

.md-typeset h6[id]:hover .headerlink:hover,
.md-typeset h6[id]:target .headerlink,
.md-typeset h6[id] .headerlink:focus,
.md-typeset h6[id].\:hover .headerlink.\:hover,
.md-typeset h6[id] .headerlink.\:focus {
  color: #f01e14; }

.md-typeset .MJXc-display {
  margin: 0.75em 0;
  padding: 0.25em 0;
  overflow: auto;
  -webkit-overflow-scrolling: touch; }

.md-typeset .MathJax_CHTML {
  outline: 0; }

.md-typeset del.critic,
.md-typeset ins.critic,
.md-typeset .comment.critic {
  margin: 0 0.25em;
  padding: 0.0625em 0;
  border-radius: 0.2rem;
  -webkit-box-decoration-break: clone;
          box-decoration-break: clone; }

.md-typeset del.critic {
  background-color: #FFDDDD;
  -webkit-box-shadow: 0.25em 0 0 #FFDDDD, -0.25em 0 0 #FFDDDD;
          box-shadow: 0.25em 0 0 #FFDDDD, -0.25em 0 0 #FFDDDD; }

.md-typeset ins.critic {
  background-color: #DDFFDD;
  -webkit-box-shadow: 0.25em 0 0 #DDFFDD, -0.25em 0 0 #DDFFDD;
          box-shadow: 0.25em 0 0 #DDFFDD, -0.25em 0 0 #DDFFDD; }

.md-typeset .critic.comment {
  background-color: rgba(236, 236, 236, 0.5);
  color: #37474F;
  -webkit-box-shadow: 0.25em 0 0 rgba(236, 236, 236, 0.5), -0.25em 0 0 rgba(236, 236, 236, 0.5);
          box-shadow: 0.25em 0 0 rgba(236, 236, 236, 0.5), -0.25em 0 0 rgba(236, 236, 236, 0.5); }
  .md-typeset .critic.comment::before {
    padding-right: 0.125em;
    color: rgba(0, 0, 0, 0.26);
    content: "chat";
    vertical-align: -0.125em; }

.md-typeset .critic.block {
  display: block;
  margin: 1em 0;
  padding-right: 1.6rem;
  padding-left: 1.6rem;
  -webkit-box-shadow: none;
          box-shadow: none; }
  .md-typeset .critic.block :first-child {
    margin-top: 0.5em; }
  .md-typeset .critic.block :last-child {
    margin-bottom: 0.5em; }

.md-typeset .emojione {
  width: 2rem;
  vertical-align: text-top; }

.md-typeset code.codehilite, .md-typeset code.highlight {
  margin: 0 0.29412em;
  padding: 0.07353em 0; }

.md-typeset .task-list-item {
  position: relative;
  list-style-type: none; }
  .md-typeset .task-list-item [type="checkbox"] {
    position: absolute;
    top: 0.45em;
    left: -2em; }

.md-typeset .task-list-control .task-list-indicator::before {
  position: absolute;
  top: 0.05em;
  left: -1.25em;
  color: rgba(0, 0, 0, 0.26);
  font-size: 1.5em;
  content: "check_box_outline_blank";
  vertical-align: -0.25em; }

.md-typeset .task-list-control [type="checkbox"]:checked + .task-list-indicator::before {
  content: "check_box"; }

.md-typeset .task-list-control [type="checkbox"] {
  opacity: 0;
  z-index: -1; }

@media print {
      .md-typeset a::after {
        color: rgba(0, 0, 0, 0.8);
        content: " [" attr(href) "]"; }
      .md-typeset code {
        -webkit-box-shadow: none;
                box-shadow: none;
        -webkit-box-decoration-break: initial;
                box-decoration-break: initial; }
    .md-content__icon {
      display: none; }
    .md-header {
      display: none; }
  .md-footer {
    display: none; }
    .md-sidebar {
      display: none; }
    .md-tabs {
      display: none; }
    .md-typeset .headerlink {
      display: none; } }

@media only screen and (max-width: 44.9375em) {
      .md-typeset pre {
        margin: 1em -1.6rem;
        border-radius: 0; }
        .md-typeset pre > code {
          padding: 1.05rem 1.6rem; }
        .md-main.home .md-content .explainer {
          display: block; }
          .md-main.home .md-content .explainer.center {
            text-align: left; }
            .md-main.home .md-content .explainer.center div, .md-main.home .md-content .explainer.center .txt {
              margin-top: 4rem;
              padding: 0; }
              .md-main.home .md-content .explainer.center div .video, .md-main.home .md-content .explainer.center .txt .video {
                width: 100%; }
          .md-main.home .md-content .explainer div {
            width: 100%;
            padding-bottom: 2rem; }
            .md-main.home .md-content .explainer div.txt {
              width: 100%; }
        .md-footer-nav__link--prev .md-footer-nav__title {
          display: none; }
      .md-search-result__teaser {
        max-height: 5rem;
        -webkit-line-clamp: 3; }
    .codehilite .hll, .md-typeset .highlight .hll {
      margin: 0 -1.6rem;
      padding: 0 1.6rem; }
  .md-typeset > .codehilite, .md-typeset > .highlight {
    margin: 1em -1.6rem;
    border-radius: 0; }
    .md-typeset > .codehilite pre, .md-typeset > .highlight pre,
    .md-typeset > .codehilite code,
    .md-typeset > .highlight code {
      padding: 1.05rem 1.6rem; }
    .md-typeset > .codehilitetable {
      margin: 1em -1.6rem;
      border-radius: 0; }
      .md-typeset > .codehilitetable .codehilite > pre, .md-typeset > .codehilitetable .highlight > pre,
      .md-typeset > .codehilitetable .codehilite > code, .md-typeset > .codehilitetable .highlight > code,
      .md-typeset > .codehilitetable .linenodiv {
        padding: 1rem 1.6rem; }
  .md-typeset > p > .MJXc-display {
    margin: 0.75em -1.6rem;
    padding: 0.25em 1.6rem; } }

@media only screen and (min-width: 100em) {
    html {
      font-size: 68.75%; } }

@media only screen and (min-width: 125em) {
    html {
      font-size: 75%; } }

@media only screen and (max-width: 59.9375em) {
    body[data-md-state="lock"] {
      overflow: hidden; }
      .ios body[data-md-state="lock"] .md-container {
        display: none; }
    .md-nav--secondary {
      border-left: 0; }
    html .md-nav__link[for="toc"] {
      display: block;
      padding-right: 4.8rem; }
      html .md-nav__link[for="toc"]::after {
        color: inherit;
        content: "toc"; }
      html .md-nav__link[for="toc"] + .md-nav__link {
        display: none; }
      html .md-nav__link[for="toc"] ~ .md-nav {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; }
    .md-nav__source {
      display: block;
      padding: 0.4rem;
      background-color: #c2251d;
      color: white; }
    .md-search__overlay {
      position: absolute;
      top: 0.4rem;
      left: 0.4rem;
      width: 4rem;
      height: 4rem;
      -webkit-transform-origin: center;
              transform-origin: center;
      -webkit-transition: opacity   0.2s 0.2s, -webkit-transform 0.3s 0.1s;
      transition: opacity   0.2s 0.2s, -webkit-transform 0.3s 0.1s;
      transition: transform 0.3s 0.1s, opacity   0.2s 0.2s;
      transition: transform 0.3s 0.1s, opacity   0.2s 0.2s, -webkit-transform 0.3s 0.1s;
      border-radius: 2rem;
      background-color: white;
      overflow: hidden;
      pointer-events: none; }
      [data-md-toggle="search"]:checked ~ .md-header .md-search__overlay {
        -webkit-transition: opacity   0.1s, -webkit-transform 0.4s;
        transition: opacity   0.1s, -webkit-transform 0.4s;
        transition: transform 0.4s, opacity   0.1s;
        transition: transform 0.4s, opacity   0.1s, -webkit-transform 0.4s;
        opacity: 1; }
    .md-search__inner {
      position: fixed;
      top: 0;
      left: 100%;
      height: 100%;
      -webkit-transform: translateX(5%);
              transform: translateX(5%);
      -webkit-transition: left 0s 0.3s, opacity 0.15s 0.15s, -webkit-transform 0.15s 0.15s cubic-bezier(0.4, 0, 0.2, 1);
      transition: left 0s 0.3s, opacity 0.15s 0.15s, -webkit-transform 0.15s 0.15s cubic-bezier(0.4, 0, 0.2, 1);
      transition: left 0s 0.3s, transform 0.15s 0.15s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.15s 0.15s;
      transition: left 0s 0.3s, transform 0.15s 0.15s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.15s 0.15s, -webkit-transform 0.15s 0.15s cubic-bezier(0.4, 0, 0.2, 1);
      opacity: 0;
      z-index: 2; }
      [data-md-toggle="search"]:checked ~ .md-header .md-search__inner {
        left: 0;
        -webkit-transform: translateX(0);
                transform: translateX(0);
        -webkit-transition: left 0s 0s, opacity 0.15s 0.15s, -webkit-transform 0.15s 0.15s cubic-bezier(0.1, 0.7, 0.1, 1);
        transition: left 0s 0s, opacity 0.15s 0.15s, -webkit-transform 0.15s 0.15s cubic-bezier(0.1, 0.7, 0.1, 1);
        transition: left 0s 0s, transform 0.15s 0.15s cubic-bezier(0.1, 0.7, 0.1, 1), opacity 0.15s 0.15s;
        transition: left 0s 0s, transform 0.15s 0.15s cubic-bezier(0.1, 0.7, 0.1, 1), opacity 0.15s 0.15s, -webkit-transform 0.15s 0.15s cubic-bezier(0.1, 0.7, 0.1, 1);
        opacity: 1; }
    .md-search__input {
      width: 100%;
      height: 5.6rem;
      font-size: 1.8rem; }
      .md-search__icon[for="search"] {
        top: 1.6rem;
        left: 1.6rem; }
        .md-search__icon[for="search"][for="search"]::before {
          content: "arrow_back"; }
      .md-search__icon[type="reset"] {
        top: 1.6rem;
        right: 1.6rem; }
    .md-search__output {
      top: 5.6rem;
      bottom: 0; }
        .md-search-result__article--document::before {
          display: none; } }

@media only screen and (max-width: 76.1875em) {
    [data-md-toggle="drawer"]:checked ~ .md-overlay {
      width: 100%;
      height: 100%;
      -webkit-transition: width   0s, height  0s, opacity 0.25s;
      transition: width   0s, height  0s, opacity 0.25s;
      opacity: 1; }
      .md-header-nav__button.md-icon--home, .md-header-nav__button.md-logo {
        display: none; }
    .md-nav {
      background-color: white; }
      .md-nav--primary,
      .md-nav--primary .md-nav {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        position: absolute;
        top: 0;
        right: 0;
        left: 0;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        height: 100%;
        z-index: 1; }
      .md-nav--primary .md-nav__title,
      .md-nav--primary .md-nav__item {
        font-size: 1.6rem;
        line-height: 1.5; }
      html .md-nav--primary .md-nav__title {
        position: relative;
        height: 11.2rem;
        padding: 6rem 1.6rem 0.4rem;
        background-color: rgba(0, 0, 0, 0.07);
        color: rgba(0, 0, 0, 0.8);
        font-weight: 400;
        line-height: 4.8rem;
        white-space: nowrap;
        cursor: pointer; }
        html .md-nav--primary .md-nav__title::before {
          display: block;
          position: absolute;
          top: 0.4rem;
          left: 0.4rem;
          width: 4rem;
          height: 4rem;
          color: rgba(0, 0, 0, 0.8); }
        html .md-nav--primary .md-nav__title ~ .md-nav__list {
          background: -webkit-gradient(linear, left top, left bottom, color-stop(10%, white), to(rgba(255, 255, 255, 0))), -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.26)), color-stop(35%, rgba(0, 0, 0, 0.07)), color-stop(60%, transparent));
          background: linear-gradient(to bottom, white 10%, rgba(255, 255, 255, 0)), linear-gradient(to bottom, rgba(0, 0, 0, 0.26), rgba(0, 0, 0, 0.07) 35%, transparent 60%);
          background-attachment: local, scroll;
          background-color: white;
          background-repeat: no-repeat;
          background-size: 100% 2rem, 100% 1rem;
          -webkit-box-shadow: 0 0.1rem 0 rgba(0, 0, 0, 0.07) inset;
                  box-shadow: 0 0.1rem 0 rgba(0, 0, 0, 0.07) inset; }
          html .md-nav--primary .md-nav__title ~ .md-nav__list > .md-nav__item:first-child {
            border-top: 0; }
        html .md-nav--primary .md-nav__title--site {
          position: relative;
          background-color: #f01e14;
          color: white; }
          html .md-nav--primary .md-nav__title--site .md-nav__button.md-logo {
            display: block;
            position: relative;
            bottom: 3.6rem;
            left: -1rem; }
            html .md-nav--primary .md-nav__title--site .md-nav__button.md-logo img {
              width: 160px;
              height: 32px; }
            html .md-nav--primary .md-nav__title--site .md-nav__button.md-logo .md-subtitle {
              font-size: 11px;
              position: absolute;
              bottom: 1px;
              font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
              letter-spacing: 7px;
              left: 40px; }
          html .md-nav--primary .md-nav__title--site::before {
            display: none; }
      .md-nav--primary .md-nav__list {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
        overflow-y: auto; }
      .md-nav--primary .md-nav__item {
        padding: 0;
        border-top: 0.1rem solid rgba(0, 0, 0, 0.07); }
        .md-nav--primary .md-nav__item--nested > .md-nav__link {
          padding-right: 4.8rem; }
          .md-nav--primary .md-nav__item--nested > .md-nav__link::after {
            content: "keyboard_arrow_right"; }
      .md-nav--primary .md-nav__link {
        position: relative;
        margin-top: 0;
        padding: 1.6rem; }
        .md-nav--primary .md-nav__link::after {
          position: absolute;
          top: 50%;
          right: 1.2rem;
          margin-top: -1.2rem;
          color: rgba(0, 0, 0, 0.8);
          font-size: 2.4rem; }
        .md-nav--primary .md-nav__link:focus::after, .md-nav--primary .md-nav__link:hover::after,
.md-nav--primary .md-nav__link.\:focus::after,
.md-nav--primary .md-nav__link.\:hover::after {
          color: inherit; }
      .md-nav--primary .md-nav--secondary .md-nav__link {
        position: static; }
      .md-nav--primary .md-nav--secondary .md-nav {
        position: static;
        background-color: transparent; }
        .md-nav--primary .md-nav--secondary .md-nav .md-nav__link {
          padding-left: 2.8rem; }
        .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav__link {
          padding-left: 4rem; }
        .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav .md-nav__link {
          padding-left: 5.2rem; }
        .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav .md-nav .md-nav__link {
          padding-left: 6.4rem; }
      .md-nav__toggle ~ .md-nav {
        display: none; }
        .csstransforms3d .md-nav__toggle ~ .md-nav {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-transform: translateX(100%);
                  transform: translateX(100%);
          -webkit-transition: opacity 0.125s 0.05s, -webkit-transform 0.25s cubic-bezier(0.8, 0, 0.6, 1);
          transition: opacity 0.125s 0.05s, -webkit-transform 0.25s cubic-bezier(0.8, 0, 0.6, 1);
          transition: transform 0.25s cubic-bezier(0.8, 0, 0.6, 1), opacity 0.125s 0.05s;
          transition: transform 0.25s cubic-bezier(0.8, 0, 0.6, 1), opacity 0.125s 0.05s, -webkit-transform 0.25s cubic-bezier(0.8, 0, 0.6, 1);
          opacity: 0; }
      .md-nav__toggle:checked ~ .md-nav {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; }
        .csstransforms3d .md-nav__toggle:checked ~ .md-nav {
          -webkit-transform: translateX(0);
                  transform: translateX(0);
          -webkit-transition: opacity 0.125s 0.125s, -webkit-transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);
          transition: opacity 0.125s 0.125s, -webkit-transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);
          transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.125s 0.125s;
          transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.125s 0.125s, -webkit-transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);
          opacity: 1; }
    .md-sidebar--primary {
      position: fixed;
      top: 0;
      left: -24.2rem;
      width: 24.2rem;
      height: 100%;
      -webkit-transform: translateX(0);
              transform: translateX(0);
      -webkit-transition: -webkit-transform 0.25s cubic-bezier(0.4, 0, 0.2, 1), -webkit-box-shadow 0.25s;
      transition: -webkit-transform 0.25s cubic-bezier(0.4, 0, 0.2, 1), -webkit-box-shadow 0.25s;
      transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.25s;
      transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.25s, -webkit-transform 0.25s cubic-bezier(0.4, 0, 0.2, 1), -webkit-box-shadow 0.25s;
      background-color: white;
      z-index: 3; }
      .no-csstransforms3d .md-sidebar--primary {
        display: none; }
      [data-md-toggle="drawer"]:checked ~ .md-container .md-sidebar--primary {
        -webkit-box-shadow: 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.4);
                box-shadow: 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.4);
        -webkit-transform: translateX(24.2rem);
                transform: translateX(24.2rem); }
        .no-csstransforms3d [data-md-toggle="drawer"]:checked ~ .md-container .md-sidebar--primary {
          display: block; }
      .md-sidebar--primary .md-sidebar__scrollwrap {
        overflow: hidden; }
      .md-sidebar--primary .md-sidebar__scrollwrap {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        margin: 0; }
    .md-tabs {
      display: none; } }

@media only screen and (min-width: 60em) {
  .md-content {
    margin-right: 24.2rem; }
      .md-header-nav__button.md-icon--search {
        display: none; }
      .md-header-nav__source {
        display: block;
        width: 23rem;
        max-width: 23rem;
        margin-left: 2.8rem;
        padding-right: 1.2rem; }
  .md-search {
    padding: 0.4rem; }
    .md-search__overlay {
      position: fixed;
      top: 0;
      left: 0;
      width: 0;
      height: 0;
      -webkit-transition: width   0s 0.25s, height  0s 0.25s, opacity 0.25s;
      transition: width   0s 0.25s, height  0s 0.25s, opacity 0.25s;
      background-color: rgba(0, 0, 0, 0.8);
      cursor: pointer; }
      [data-md-toggle="search"]:checked ~ .md-header .md-search__overlay {
        width: 100%;
        height: 100%;
        -webkit-transition: width   0s, height  0s, opacity 0.25s;
        transition: width   0s, height  0s, opacity 0.25s;
        opacity: 1; }
    .md-search__inner {
      position: relative; }
    .md-search__form {
      width: 23rem;
      float: right;
      -webkit-transition: width 0.25s cubic-bezier(0.1, 0.7, 0.1, 1);
      transition: width 0.25s cubic-bezier(0.1, 0.7, 0.1, 1);
      border-radius: 0.2rem; }
    .md-search__input {
      width: 100%;
      height: 4rem;
      padding-left: 4.8rem;
      -webkit-transition: background-color 0.25s cubic-bezier(0.1, 0.7, 0.1, 1), color 0.25s cubic-bezier(0.1, 0.7, 0.1, 1);
      transition: background-color 0.25s cubic-bezier(0.1, 0.7, 0.1, 1), color 0.25s cubic-bezier(0.1, 0.7, 0.1, 1);
      border-radius: 0.2rem;
      background-color: rgba(0, 0, 0, 0.26);
      color: white;
      font-size: 1.6rem; }
      .md-search__input + .md-search__icon, .md-search__input::-webkit-input-placeholder {
        color: white; }
      .md-search__input + .md-search__icon, .md-search__input:-ms-input-placeholder {
        color: white; }
      .md-search__input + .md-search__icon, .md-search__input::placeholder {
        color: white; }
      .md-search__input:hover,
.md-search__input.\:hover {
        background-color: rgba(255, 255, 255, 0.12); }
      [data-md-toggle="search"]:checked ~ .md-header .md-search__input {
        border-radius: 0.2rem 0.2rem 0 0;
        background-color: white;
        color: #393939;
        text-overflow: none; }
        [data-md-toggle="search"]:checked ~ .md-header .md-search__input + .md-search__icon, [data-md-toggle="search"]:checked ~ .md-header .md-search__input::-webkit-input-placeholder {
          color: rgba(0, 0, 0, 0.8); }
        [data-md-toggle="search"]:checked ~ .md-header .md-search__input + .md-search__icon, [data-md-toggle="search"]:checked ~ .md-header .md-search__input:-ms-input-placeholder {
          color: rgba(0, 0, 0, 0.8); }
        [data-md-toggle="search"]:checked ~ .md-header .md-search__input + .md-search__icon, [data-md-toggle="search"]:checked ~ .md-header .md-search__input::placeholder {
          color: rgba(0, 0, 0, 0.8); }
    .md-search__output {
      top: 4rem;
      -webkit-transition: opacity 0.4s;
      transition: opacity 0.4s;
      opacity: 0; }
      [data-md-toggle="search"]:checked ~ .md-header .md-search__output {
        -webkit-box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12), 0 3px 5px -1px rgba(0, 0, 0, 0.4);
                box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12), 0 3px 5px -1px rgba(0, 0, 0, 0.4);
        opacity: 1; }
    .md-search__scrollwrap {
      max-height: 0; }
      [data-md-toggle="search"]:checked ~ .md-header .md-search__scrollwrap {
        max-height: 75vh; }
      .md-search__scrollwrap::-webkit-scrollbar {
        width: 0.4rem;
        height: 0.4rem; }
      .md-search__scrollwrap::-webkit-scrollbar-thumb {
        background-color: rgba(0, 0, 0, 0.26); }
        .md-search__scrollwrap::-webkit-scrollbar-thumb:hover,
.md-search__scrollwrap::-webkit-scrollbar-thumb.\:hover {
          background-color: #f01e14; }
      .md-search-result__meta {
        padding-left: 4.8rem; }
      .md-search-result__article {
        padding-left: 4.8rem; }
      .md-sidebar--secondary {
        display: block;
        margin-left: 100%;
        -webkit-transform: translate(-100%, 0);
                transform: translate(-100%, 0); } }

@media only screen and (min-width: 76.25em) {
  .md-content {
    margin-left: 24.2rem; }
    .md-content__inner {
      margin-right: 2.4rem;
      margin-left: 2.4rem; }
    .md-header {
      -webkit-box-shadow: none;
              box-shadow: none; }
      .md-header[data-md-state="shadow"] {
        -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);
                box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2); }
      .md-header-nav__button.md-icon--menu {
        display: none; }
    .md-nav[data-md-state="animate"] {
      -webkit-transition: max-height 0.25s cubic-bezier(0.86, 0, 0.07, 1);
      transition: max-height 0.25s cubic-bezier(0.86, 0, 0.07, 1); }
    .md-nav__toggle ~ .md-nav {
      max-height: 0;
      overflow: hidden; }
    .md-nav__toggle:checked ~ .md-nav, .md-nav[data-md-state="expand"] {
      max-height: 100%; }
    .md-nav__item--nested > .md-nav > .md-nav__title {
      display: none; }
    .md-nav__item--nested > .md-nav__link::after {
      display: inline-block;
      -webkit-transform-origin: 0.45em 0.45em;
              transform-origin: 0.45em 0.45em;
      -webkit-transform-style: preserve-3d;
              transform-style: preserve-3d;
      vertical-align: -0.125em; }
      .js .md-nav__item--nested > .md-nav__link::after {
        -webkit-transition: -webkit-transform 0.4s;
        transition: -webkit-transform 0.4s;
        transition: transform 0.4s;
        transition: transform 0.4s, -webkit-transform 0.4s; }
    .md-nav__item--nested .md-nav__toggle:checked ~ .md-nav__link::after {
      -webkit-transform: rotateX(180deg);
              transform: rotateX(180deg); }
    [data-md-toggle="search"]:checked ~ .md-header .md-search__form {
      width: 68.8rem; }
    .md-search__scrollwrap {
      width: 68.8rem; }
      .md-sidebar--secondary {
        margin-left: 122rem; }
    .md-sidebar__inner {
      border-right: 0.1rem solid rgba(0, 0, 0, 0.07); }
    .md-tabs ~ .md-main .md-nav--primary > .md-nav__list > .md-nav__item--nested {
      font-size: 0; }
    .md-tabs--active ~ .md-main .md-nav--primary .md-nav__title--site {
      display: none; }
    .md-tabs--active ~ .md-main .md-nav--primary > .md-nav__list > .md-nav__item {
      font-size: 0; }
      .md-tabs--active ~ .md-main .md-nav--primary > .md-nav__list > .md-nav__item--nested {
        display: none;
        font-size: 1.4rem;
        overflow: auto; }
        .md-tabs--active ~ .md-main .md-nav--primary > .md-nav__list > .md-nav__item--nested > .md-nav__link {
          margin-top: 1.2rem;
          font-weight: 700;
          pointer-events: none; }
          .md-tabs--active ~ .md-main .md-nav--primary > .md-nav__list > .md-nav__item--nested > .md-nav__link::after {
            display: none; }
      .md-tabs--active ~ .md-main .md-nav--primary > .md-nav__list > .md-nav__item--active {
        display: block; }
    .md-tabs--active ~ .md-main .md-nav[data-md-level="1"] {
      max-height: initial; }
      .md-tabs--active ~ .md-main .md-nav[data-md-level="1"] > .md-nav__list > .md-nav__item {
        padding-left: 0; } }

@media only screen and (max-width: 29.9375em) {
      .md-header-nav__parent {
        display: none; }
    [data-md-toggle="search"]:checked ~ .md-header .md-search__overlay {
      -webkit-transform: scale(45);
              transform: scale(45); } }

@media only screen and (min-width: 45em) {
      .md-footer-nav__link {
        width: 50%; }
    .md-footer-copyright {
      max-width: 75%;
      float: left; }
    .md-footer-social {
      padding: 1.2rem 0;
      float: right; } }

@media only screen and (min-width: 30em) and (max-width: 44.9375em) {
    [data-md-toggle="search"]:checked ~ .md-header .md-search__overlay {
      -webkit-transform: scale(60);
              transform: scale(60); } }

@media only screen and (min-width: 45em) and (max-width: 59.9375em) {
    [data-md-toggle="search"]:checked ~ .md-header .md-search__overlay {
      -webkit-transform: scale(75);
              transform: scale(75); } }

@media only screen and (min-width: 60em) and (max-width: 76.1875em) {
    [data-md-toggle="search"]:checked ~ .md-header .md-search__form {
      width: 46.8rem; }
    .md-search__scrollwrap {
      width: 46.8rem; }
      .md-search-result__teaser {
        max-height: 5rem;
        -webkit-line-clamp: 3; } }
