/**
 * Skipped minification because the original files appears to be already minified.
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
@font-face {
    font-family: "Source Sans Pro";
    src: local("Source Sans Pro"), url(https://cdn.jsdelivr.net/gh/xaoxuu/cdn-fonts@master/SourceSansPro/SourceSansPro-Regular.ttf)
}

@font-face {
    font-family: "Source Sans Pro";
    src: local("Source Sans Pro Light"), url(https://cdn.jsdelivr.net/gh/xaoxuu/cdn-fonts@master/SourceSansPro/SourceSansPro-Light.ttf);
    font-weight: 300
}

@font-face {
    font-family: "Source Sans Pro";
    src: local("Source Sans Pro Semibold"), url(https://cdn.jsdelivr.net/gh/xaoxuu/cdn-fonts@master/SourceSansPro/SourceSansPro-Semibold.ttf);
    font-weight: 600
}

@font-face {
    font-family: "Roboto Mono";
    src: local("Roboto Mono"), url(https://cdn.jsdelivr.net/gh/xaoxuu/cdn-fonts@master/RobotoMono/RobotoMono-Regular.ttf)
}

@font-face {
    font-family: Dosis;
    src: local("Dosis Medium"), url(https://cdn.jsdelivr.net/gh/xaoxuu/cdn-fonts@master/Dosis/Dosis-Medium.ttf);
    font-weight: 500
}

@font-face {
    font-family: Skranji;
    src: local("Skranji"), url(https://cdn.jsdelivr.net/gh/xaoxuu/cdn-fonts@master/Skranji/Skranji-Regular.ttf);
    font-weight: 400
}

@font-face {
    font-family: "Varela Round";
    src: local("VarelaRound"), url(https://cdn.jsdelivr.net/gh/xaoxuu/cdn-fonts@master/VarelaRound/VarelaRound-Regular.ttf);
    font-weight: 400
}

.gutter pre {
    color: rgba(0, 0, 0, .4)
}

pre {
    color: #444
}

pre .constant, pre .function .keyword {
    color: #0092db
}

pre .attribute, pre .keyword {
    color: #e96900
}

pre .literal, pre .number {
    color: #ae81ff
}

pre .change, pre .clojure .built_in, pre .flow, pre .lisp .title, pre .nginx .title, pre .tag, pre .tag .title, pre .tex .special, pre .winutils {
    color: #2973b7
}

pre .class .title {
    color: #2c3e50
}

pre .regexp, pre .symbol, pre .symbol .string, pre .value {
    color: #42b983
}

pre .title {
    color: #a6e22e
}

pre .type {
    color: #2395f3
}

pre .addition, pre .apache .cbracket, pre .apache .tag, pre .attr_selector, pre .built_in, pre .django .filter .argument, pre .django .template_tag, pre .django .variable, pre .envvar, pre .haskell .type, pre .javadoc, pre .preprocessor, pre .prompt, pre .pseudo, pre .ruby .class .parent, pre .smalltalk .array, pre .smalltalk .class, pre .smalltalk .localvars, pre .sql .aggregate, pre .stream, pre .string, pre .subst, pre .tag .value, pre .tex .command {
    color: #42b983
}

pre .apache .sqbracket, pre .comment, pre .deletion, pre .doctype, pre .java .annotation, pre .pi, pre .python .decorator, pre .shebang, pre .template_comment, pre .tex .formula {
    color: #888
}

pre .coffeescript .javascript, pre .javascript .xml, pre .tex .formula, pre .xml .cdata, pre .xml .css, pre .xml .javascript, pre .xml .vbscript {
    opacity: .5
}

#ad {
    width: 125px;
    position: fixed;
    z-index: 99;
    bottom: 10px;
    right: 10px;
    padding: 10px;
    background-color: #fff;
    border-radius: 3px;
    font-size: 13px
}

#ad a {
    display: inline-block;
    color: #7f8c8d;
    font-weight: 400
}

#ad span {
    color: #7f8c8d;
    display: inline-block;
    margin-bottom: 5px
}

#ad img {
    width: 125px
}

#ad .carbon-img, #ad .carbon-text {
    display: block;
    margin-bottom: 6px;
    font-weight: 400;
    color: #34495e
}

#ad .carbon-poweredby {
    color: #aaa;
    font-weight: 400
}

.bsa-cpc {
    font-size: 1em;
    background-color: #f8f8f8
}

.bsa-cpc a._default_ {
    text-align: left;
    display: block;
    padding: 10px 15px 12px;
    margin-bottom: 20px;
    color: #666;
    font-weight: 400;
    line-height: 18px
}

.bsa-cpc a._default_ .default-description, .bsa-cpc a._default_ .default-image, .bsa-cpc a._default_ .default-title {
    display: inline;
    vertical-align: middle;
    margin-right: 6px
}

.bsa-cpc a._default_ .default-image img {
    height: 20px;
    border-radius: 3px;
    vertical-align: middle;
    position: relative;
    top: -1px
}

.bsa-cpc a._default_ .default-title {
    font-weight: 600
}

.bsa-cpc a._default_ .default-description:after {
    font-size: .85em;
    content: "Sponsored";
    color: #1c90f3;
    border: 1px solid #1c90f3;
    border-radius: 3px;
    padding: 0 4px 1px;
    margin-left: 6px
}

.bsa-cpc .default-ad {
    display: none
}

@media print {
    #ad {
        display: none
    }
}

body {
    font-family: 'Varela Round', "Source Sans Pro", "Helvetica Neue", Arial, sans-serif;
    font-size: 15px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    color: #34495e;
    background-color: #999999;
    margin: 0
}

body.docs {
    padding-top: 60px
}

@media screen and (max-width: 900px) {
    body.docs {
        padding-top: 0
    }
}

hr {
    border: 0;
    border-radius: 1px;
    border-bottom: 1px solid rgba(0, 0, 0, .1)
}

a {
    text-decoration: none;
    color: #34495e
}

img {
    border: none
}

h1, h2, h3, h4, strong {
    font-weight: 600;
    color: #2c3e50
}

code, pre {
    font-family: Menlo, "Roboto Mono", Monaco, courier, monospace;
    font-size: .8em;
    -webkit-font-smoothing: initial;
    -moz-osx-font-smoothing: initial
}

code {
    color: #e96900;
    background-color: #ebf4fd;
    border: 1px solid #bfdcf9;
    padding: 3px 4px 1px 4px;
    margin: 0 2px;
    border-radius: 2px;
    word-break: break-all
}

em {
    color: #7f8c8d
}

p {
    word-spacing: .05em
}

.button {
    padding: .32em 2em;
    line-height: 2em;
    border-radius: 4px;
    display: inline-block;
    color: #fff;
    background-color: rgba(238 ,98 ,82, .8);
    transition: all .15s ease;
    box-sizing: border-box
}

.button.white {
    background-color: #fff;
    color: #a2141b
}

.button.gray {
    background-color: #f6f6f6;
    color: #7f8c8d;
    border-color: #f6f6f6
}

.button:hover {
    color: #fff !important
}

.button.active, .button:active, .button:hover {
    background: #a2141b;
    box-shadow: 0 4px 8px rgba(0, 0, 0, .12), 0 8px 16px rgba(0, 0, 0, .12), 0 16px 32px rgba(0, 0, 0, .12)
}

.highlight {
    overflow-x: auto;
    background-color: #ebf4fd;
    padding: 0;
    line-height: 1.1em;
    border-radius: 4px;
    position: relative
}

.highlight table, .highlight td, .highlight tr {
    width: 100%;
    border-collapse: collapse;
    padding: 0;
    margin: 0
}

.highlight .gutter {
    width: 1.5em;
    background: #d5e8fb
}

.highlight .gutter pre {
    text-align: right;
    padding: 0 1em;
    background-color: rgba(0, 0, 0, 0);
    line-height: 1.5em
}

.highlight .code pre {
    background: #ebf4fd;
    padding: 1.5em;
    line-height: 1.5em;
    margin: 0
}

.highlight .code .line {
    min-height: 1.5em
}

.highlight .code.code:before {
    content: " ";
    position: absolute;
    top: 0;
    right: 0;
    color: rgba(0, 0, 0, .4);
    text-align: right;
    font-size: .75em;
    padding: 5px 10px 0;
    line-height: 15px;
    height: 15px
}

.highlight.c .code:before {
    content: "C"
}

.highlight.swift .code:before {
    content: "SWIFT"
}

.highlight.objc .code:before {
    content: "OBJECTIVE-C"
}

.highlight.html .code:before {
    content: "HTML"
}

.highlight.js .code:before {
    content: "JS"
}

.highlight.bash .code:before {
    content: "BASH"
}

.highlight.shell .code:before {
    content: "SHELL"
}

.highlight.css .code:before {
    content: "CSS"
}

.highlight.stylus .code:before {
    content: "STYLUS"
}

.highlight.less .code:before {
    content: "LESS"
}

.highlight.java .code:before {
    content: "JAVA"
}

.highlight.python .code:before {
    content: "PYTHON"
}

.highlight.yaml .code:before {
    content: "YAML"
}

.hljs {
    background: 0 0 !important
}

#main {
    position: relative;
    z-index: 1;
    padding: 0 60px 30px;
    overflow-x: hidden
}

#nav .nav-link {
    cursor: pointer
}

#nav .nav-dropdown-container .nav-link:hover:not(.current) {
    border-bottom: none
}

#nav .nav-dropdown-container:hover .nav-dropdown {
    display: block
}

#nav .nav-dropdown-container.ecosystem, #nav .nav-dropdown-container.language {
    margin-left: 20px
}

#nav .nav-dropdown-container .arrow {
    pointer-events: none
}

#nav .nav-dropdown {
    display: none;
    box-sizing: border-box;
    max-height: calc(100vh - 60px);
    overflow-y: auto;
    position: absolute;
    top: 100%;
    right: -15px;
    background-color: #fff;
    padding: 10px 0;
    border: 1px solid #ddd;
    border-bottom-color: #ccc;
    text-align: left;
    border-radius: 4px;
    white-space: nowrap
}

#nav .nav-dropdown li {
    line-height: 1.8em;
    margin: 0;
    display: block
}

#nav .nav-dropdown li > ul {
    padding-left: 0
}

#nav .nav-dropdown li:first-child h4 {
    margin-top: 0;
    padding-top: 0;
    border-top: 0
}

#nav .nav-dropdown a, #nav .nav-dropdown h4 {
    padding: 0 24px 0 20px
}

#nav .nav-dropdown h4 {
    font-size: .78em;
    color: rgba(44, 62, 80, .45);
    margin: .45em 0 0;
    padding-top: .45em;
    border-top: 1px solid #eee
}

#nav .nav-dropdown a {
    color: #3a5169;
    font-size: .95em;
    font-weight: 700;
    display: block
}

#nav .nav-dropdown a:hover {
    color: #a2141b
}

#nav .arrow {
    display: inline-block;
    vertical-align: middle;
    margin-top: -1px;
    margin-left: 6px;
    margin-right: -14px;
    width: 0;
    height: 0;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 5px solid #ccc
}

sup.beta.beta {
    font-size: .6em;
    margin-left: .7em;
    text-transform: uppercase;
    opacity: .6
}

@media print {
    body {
        color: #000
    }

    .highlight {
        padding: 0;
        page-break-inside: avoid
    }

    .highlight .code pre {
        color: #000;
        background-color: #fff;
        border-style: solid;
        border-width: 2px 2px 2px 2px;
        border-color: #e8e8e8;
        page-break-inside: avoid
    }

    h1, h2, h3, h4, h5 {
        color: #000;
        page-break-after: avoid;
        page-break-before: avoid
    }

    img {
        page-break-inside: avoid
    }

    h2 + p {
        page-break-before: avoid
    }

    a:link:after, a:visited:after {
        content: " [" attr(href) "] "
    }
}

#comments #valine_container .info {
    display: none
}

#footer {
    padding: 40px 0 80px;
    color: #7f8c8d;
    text-align: center
}

#footer p {
    font-size: .8em
}

#footer a {
    color: #ffffff;
    transition: all .2s ease;
    -moz-transition: all .2s ease;
    -webkit-transition: all .2s ease;
    -o-transition: all .2s ease
}

#footer a:hover {
    color: #a2141b !important
}

#footer .social-wrapper {
    display: flex;
    justify-content: center;
    flex-wrap: wrap
}

#footer .social-wrapper a {
    position: relative;
    display: inline-block;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    width: 1.2em;
    height: 1.2em;
    margin: 4px;
    padding: .5em;
    border-radius: 50%;
    background-color: transparent;
    transition: all .28s ease;
    -moz-transition: all .28s ease;
    -webkit-transition: all .28s ease;
    -o-transition: all .28s ease
}

#footer .social-wrapper a:hover {
    color: #a2141b;
    background-color: #e5f7fd
}

#header {
    background-color: #999999;
    height: 40px;
    padding: 10px 60px;
    position: relative;
    z-index: 100;
    box-shadow: 0 1px 1px rgba(0, 0, 0, .12), 0 2px 2px rgba(0, 0, 0, .08)
}

body.docs #header {
    position: fixed;
    width: 100%;
    top: 0
}

body.docs #nav {
    position: fixed
}

#nav {
    list-style-type: none;
    margin: 0;
    padding: 0;
    position: absolute;
    right: 30px;
    top: 10px;
    height: 40px;
    line-height: 40px
}

#nav .break {
    display: none
}

#nav li {
    display: inline-block;
    position: relative;
    margin: 0 .6em
}

#nav .seperator {
    margin: .3em;
    display: inline
}

#nav .nav-dropdown .nav-link.current, #nav .nav-dropdown .nav-link:hover {
    border-bottom: none
}

#nav .nav-dropdown .nav-link.current::after {
    content: "";
    width: 0;
    height: 0;
    border-left: 5px solid #a2141b;
    border-top: 3px solid transparent;
    border-bottom: 3px solid transparent;
    position: absolute;
    top: 50%;
    margin-top: -4px;
    left: 8px
}

.nav-link {
    padding-bottom: 3px;
    white-space: nowrap
}

.nav-link.current, .nav-link:hover {
    border-bottom: 3px solid #a2141b
}

.nav-link.contribute, .nav-link.team {
    margin-left: 10px
}

.new-label {
    position: absolute;
    top: 3px;
    left: 110%;
    background-color: #a2141b;
    color: #fff;
    line-height: 16px;
    height: 16px;
    font-size: 9px;
    font-weight: 700;
    font-family: Menlo, "Roboto Mono", Monaco, courier, monospace;
    padding: 1px 4px 0 6px;
    border-radius: 4px
}

.search-query {
    height: 30px;
    line-height: 30px;
    box-sizing: border-box;
    padding: 0 15px 0 30px;
    border: 1px solid #e3e3e3;
    color: #2c3e50;
    outline: 0;
    border-radius: 15px;
    margin-right: 10px;
    transition: border-color .2s ease;
    background: #fff url(/assets/img/search.png) 8px 5px no-repeat;
    background-size: 20px;
    vertical-align: middle !important
}

.search-query:focus {
    border-color: #a2141b
}

#logo {
    display: inline-block;
    font-size: 1.8em;
    line-height: 40px;
    color: rgba(162,20,27, 1);
    font-family: Skranji, "Source Sans Pro", "Helvetica Neue", Arial, sans-serif, cursive;
    font-weight: 500
}

#logo img {
    vertical-align: middle;
    margin-right: 6px;
    width: 40px;
    height: 40px;
    display: none
}

#mobile-bar {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 54px;
    background-color: #fff;
    z-index: 9;
    display: none;
    box-shadow: 0 1px 1px rgba(0, 0, 0, .12), 0 2px 2px rgba(0, 0, 0, .08);
    transition: all .5s ease;
    -moz-transition: all .5s ease;
    -webkit-transition: all .5s ease;
    -o-transition: all .5s ease
}

#mobile-bar .nav-title {
    font-family: 'Varela Round', "Source Sans Pro", "Helvetica Neue", Arial, sans-serif;
    font-size: 1.2em;
    line-height: 54px;
    color: #2c3e50;
    font-weight: 700;
    display: flex;
    margin: 0 64px 0 54px
}

#mobile-bar .menu-button {
    position: absolute;
    width: 54px;
    height: 54px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6em
}

#mobile-bar .logo {
    opacity: 1;
    position: absolute;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: url(https://cdn.jsdelivr.net/gh/xaoxuu/assets@18.12.27/avatar/avatar-128.png) center center no-repeat;
    top: 10px;
    right: 20px;
    background-size: 34px
}

@media print {
    #header {
        display: none
    }
}

.sidebar {
    position: absolute;
    top: 60px;
    left: 0;
    bottom: 0;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: none
}

.sidebar h2 {
    margin-top: .2em
}

.sidebar ul {
    list-style-type: none;
    margin: 0;
    line-height: 1.5em;
    padding-left: 1em
}

.sidebar li {
    margin-top: .5em
}

.sidebar .sidebar-inner {
    width: 200px;
    padding: 40px 20px 60px 60px
}

.sidebar .version-select {
    vertical-align: middle;
    margin-left: 5px
}

.sidebar .menu-root {
    padding-left: 0;
    font-weight: 700
}

.sidebar .menu-sub {
    font-size: .85em
}

.sidebar .menu-sub ul {
    font-weight: 400
}

.sidebar .sidebar-link {
    color: #7f8c8d
}

.sidebar .sidebar-link.current {
    font-weight: 600;
    color: #a2141b
}

.sidebar .sidebar-link.new:after {
    content: "NEW";
    display: inline-block;
    font-size: 10px;
    font-weight: 600;
    color: #fff;
    background-color: #a2141b;
    line-height: 14px;
    padding: 0 4px;
    border-radius: 3px;
    margin-left: 5px;
    vertical-align: middle;
    position: relative;
    top: -1px
}

.sidebar .sidebar-link:hover {
    border-bottom: 2px solid #a2141b
}

.sidebar .section-link.active {
    font-weight: 700;
    color: #a2141b
}

.sidebar .main-menu {
    margin-bottom: 20px;
    display: none;
    padding-left: 0
}

.sidebar .main-menu .seperator {
    background: #12f;
    display: none
}

.sidebar .nav-dropdown h4 {
    font-weight: 400;
    margin: 0
}

@media screen and (max-width: 900px) {
    .sidebar {
        position: fixed;
        z-index: 10;
        background-color: #f9f9f9;
        height: 100%;
        top: 0;
        left: 0;
        box-shadow: 1px 0 2px rgba(0, 0, 0, .08), 2px 0 4px rgba(0, 0, 0, .08), 4px 0 8px rgba(0, 0, 0, .06), 8px 0 16px rgba(0, 0, 0, .06);
        transition: all .4s cubic-bezier(.4, 0, 0, 1);
        -webkit-transform: translate(-280px, 0);
        transform: translate(-280px, 0)
    }

    .sidebar .sidebar-inner {
        padding: 10px 10px 60px 20px;
        box-sizing: border-box
    }

    .sidebar .sidebar-inner-index {
        padding: 10px 10px 60px 20px
    }

    .sidebar .search-query {
        width: 200px;
        margin-bottom: 10px
    }

    .sidebar .main-menu {
        display: block
    }

    .sidebar .list {
        margin: 30px auto
    }

    .sidebar.open {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
        width: 280px
    }
}

@media print {
    .sidebar {
        display: none
    }
}

.modal {
    box-sizing: border-box;
    display: none;
    position: fixed;
    width: 80%;
    height: auto;
    padding: .5em;
    background-color: #f9f9f9;
    box-shadow: 0 0 10px rgba(0, 0, 0, .2);
    z-index: 102
}

.modal.open {
    display: block;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.overlay {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(0, 0, 0, .2);
    z-index: 101
}

.stop-scroll {
    overflow: hidden;
    height: 100%
}

@media screen and (max-width: 400px) {
    .modal {
        width: 98%
    }
}

#comments {
    position: relative
}

#comments #valine_container .vcontent.expand:after {
    background: rgba(250, 250, 250, .918);
    color: #666;
    font-weight: 700;
    z-index: 1
}

#comments #valine_container .info {
    display: none
}

#comments #valine_container .vwrap {
    border-radius: 4px;
    border-style: dashed;
    border: 1px dashed #bbedfe
}

#comments #valine_container .vwrap:hover {
    border: 1px dashed #a2141b
}

#comments #valine_container .vwrap .vedit .vctrl span {
    padding: 0;
    margin: 10px
}

#comments #valine_container button {
    font-weight: 700;
    border: none;
    padding-left: 2.4em;
    padding-right: 2.4em;
    background-color: #49cffc;
    color: #fff;
    border-radius: 4px
}

#comments #valine_container button:hover {
    background: #04a5db
}

#comments #valine_container button:active {
    background: #0390bf
}

#comments #valine_container blockquote {
    padding: 10px;
    border-left: 4px solid #a2141b
}

#comments #valine_container blockquote p {
    text-align: left;
    word-wrap: normal;
    margin: 0;
    font-size: 15px;
    line-height: 22.5px
}

#comments #valine_container pre {
    padding: 10px;
    border: none;
    font-size: 1em;
    font-family: Menlo, "Roboto Mono", Monaco, courier, monospace
}

#comments #valine_container code {
    font-family: Menlo, "Roboto Mono", Monaco, courier, monospace;
    font-size: .8em;
    background-color: #ebf4fd
}

#comments #valine_container .vemoji-btn, #comments #valine_container .vpreview-btn, #comments #valine_container a {
    font-weight: 700;
    color: #ff5722
}

#comments #valine_container .vemoji-btn:hover, #comments #valine_container .vpreview-btn:hover, #comments #valine_container a:hover {
    color: #a2141b
}

#comments #valine_container .vemoji-btn:active, #comments #valine_container .vpreview-btn:active, #comments #valine_container a:active {
    color: #049bcd
}

#comments #valine_container .vemoji-btn, #comments #valine_container .vpreview-btn {
    color: #a2141b
}

#comments #valine_container .vhead span.vnick {
    color: #666
}

#comments #valine_container .vhead a.vnick {
    color: #ff9800;
    font-weight: 700
}

#comments #valine_container .vhead a.vnick:hover {
    color: #a2141b
}

#comments #valine_container .vmeta .vat {
    color: #49cffc;
    font-weight: 700
}

#comments #valine_container .vmeta .vat:hover {
    color: #04a5db
}

#comments #valine_container .vmeta .vat:active {
    color: #0390bf
}

#comments .vemojis {
    justify-content: space-between
}

#comments .vemojis i {
    width: auto;
    height: 36px;
    padding: 0;
    margin: 8px 8px 0 8px
}

#comments .vemojis i .emoji {
    height: 24px;
    margin-top: 5px
}

#comments p .emoji {
    display: inline;
    height: 28px
}

body {
    background-color: #999999
}

body #header {
    box-shadow: none
}

#logo span {
    font-size: 1.2em
}

#logo img {
    display: none
}

.sidebar {
    display: none
}

#mobile-bar.top {
    background-color: transparent;
    box-shadow: none
}

#mobile-bar.top .logo {
    display: none
}

#hero {
    padding: 54px 20px 20px;
    background-color: #999999
}

#hero .inner {
    max-width: 900px;
    margin: 20px auto;
    display: flex;
    justify-content: center;
    align-items: center
}

#hero .inner .left, #hero .inner .right {
    display: inline-block
}

#hero .hero-logo {
    width: 13em;
    height: 13em;
    float: right;
    margin-right: 60px;
    border-radius: 50%
}

#hero h1 {
    font-weight: 300;
    margin: 0;
    font-size: 2.4em
}

#hero h2 {
    font-family: Skranji, "Source Sans Pro", "Helvetica Neue", Arial, sans-serif, cursive;
    color: #a2141b;
    font-weight: 500;
    font-size: 2.4em;
    display: none
}

#hero .button {
    margin: 1em 0;
    font-size: 1.05em;
    font-weight: 600;
    letter-spacing: .1em;
    min-width: 8em;
    text-align: center
}

#hero .button:not(:last-child) {
    margin-right: 1%
}

#hero ol, #hero ul {
    position: inherit;
    margin: 0
}

#hero ol.center, #hero ul.center {
    justify-content: center
}

#hero ol.pure, #hero ul.pure {
    padding: 0;
    display: flex;
    flex-wrap: wrap
}

@media screen and (max-width: 900px) {
    #hero ol.pure, #hero ul.pure {
        justify-content: center
    }
}

#hero ol.pure li, #hero ul.pure li {
    margin: 4px;
    display: flex;
    width: 100px;
    flex-direction: column;
    align-items: stretch;
    vertical-align: middle;
    text-align: center;
    font-size: .9em;
    overflow: hidden;
    border-radius: 4px;
    background: #ee6252;
    transition: all .28s ease;
    -moz-transition: all .28s ease;
    -webkit-transition: all .28s ease;
    -o-transition: all .28s ease
}

#hero ol.pure li a, #hero ul.pure li a {
    padding: 8px;
    margin: 0;
    font-size: .9em;
    line-height: 1.8em;
    font-weight: 700;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    border-radius: 4px;
    color: #fff
}

#hero ol.pure li a i, #hero ul.pure li a i {
    font-size: 2em;
    margin-top: 8px
}

#hero ol.pure li img, #hero ul.pure li img {
    margin-bottom: 8px
}

#hero ol.pure li.active, #hero ol.pure li:active, #hero ol.pure li:hover, #hero ul.pure li.active, #hero ul.pure li:active, #hero ul.pure li:hover {
    background: #a2141b;
    transform: scale(1.03);
    border-radius: 4px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, .12), 0 8px 16px rgba(0, 0, 0, .12), 0 16px 32px rgba(0, 0, 0, .12)
}

#hero ol.pure.rounded img, #hero ul.pure.rounded img {
    border-radius: 25%
}

#hero ol.pure.circle img, #hero ul.pure.circle img {
    border-radius: 50%
}

#hero .social-buttons {
    list-style-type: none;
    padding: 0
}

#hero .social-buttons li {
    display: inline-block;
    vertical-align: middle;
    margin-right: 15px
}

#hero .social-wrapper {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    margin: 20px 0 0
}

#hero .social-wrapper a {
    color: #fff;
    position: relative;
    display: inline-block;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    border-radius: 50%;
    margin: 4px;
    width: 2.2em;
    height: 2.2em;
    font-size: 1.2em;
    background-color: #a2141b;
    transition: all .28s ease;
    -moz-transition: all .28s ease;
    -webkit-transition: all .28s ease;
    -o-transition: all .28s ease
}

#hero .social-wrapper a:first-child {
    margin-left: 0
}

#hero .social-wrapper a:last-child {
    margin-right: 0
}

#hero .social-wrapper a:hover {
    color: #a2141b;
    background-color: #e5f7fd
}

#special-sponsor {
    background-color: #fff;
    text-align: center;
    padding-bottom: 30px
}

#special-sponsor h3 {
    margin: 0
}

#special-sponsor a {
    color: #7f8c8d
}

#special-sponsor a, #special-sponsor img, #special-sponsor span {
    display: inline-block;
    vertical-align: middle
}

#special-sponsor img {
    margin: 15px
}

#highlights {
    background-color: #fff
}

#highlights .inner {
    max-width: 900px;
    margin: 0 auto;
    text-align: center;
    display: flex;
    justify-content: space-around
}

#highlights .point {
    display: inline-block;
    vertical-align: top;
    box-sizing: border-box;
    padding: 0 2em
}

#highlights .point h2 {
    color: #a2141b;
    font-size: 1.5em;
    font-weight: 400;
    margin: 0;
    padding: .5em 0
}

#highlights .point p {
    color: #7f8c8d
}

#posts {
    background-color: #fff
}

#posts .inner {
    max-width: 900px;
    margin: 40px auto;
    text-align: center
}

#posts .content {
    text-align: justify;
    background-color: #f8f8f8;
    border-radius: 4px;
    padding: 20px;
    margin: 20px
}

#posts .content .header {
    text-align: left;
    display: flex;
    justify-content: space-between;
    align-items: center
}

#posts .content .header h5 {
    margin: 0
}

#posts .content .highlight {
    margin: 1.2em 0;
    text-align: justify
}

#posts .content .highlight .gutter {
    background: #d5e8fb
}

#posts .content .highlight .code pre {
    background: #ebf4fd
}

#posts .content .readmore {
    text-align: left;
    padding: 10px;
    margin: 0;
    width: inherit
}

#posts a {
    color: #ff5722;
    transition: all .2s ease;
    -moz-transition: all .2s ease;
    -webkit-transition: all .2s ease;
    -o-transition: all .2s ease
}

#posts a:hover {
    color: #a2141b !important
}

#posts a.button {
    color: #fff
}

#posts a.button:hover {
    color: #fff !important
}

#posts h2 {
    margin: 0;
    z-index: 9;
    font-size: 1.3em;
    font-weight: 700;
    background: #fff;
    height: 54px;
    line-height: 54px;
    position: sticky !important;
    position: -webkit-sticky !important;
    top: 0
}

#posts h3 {
    color: #a2141b;
    font-size: 1.2em;
    font-weight: 500;
    padding: 0;
    margin: 0
}

#posts h3 a {
    color: #a2141b
}

#posts h3 a:hover {
    text-decoration: underline
}

#posts h5 {
    font-size: .9em;
    font-weight: 400;
    color: #7f8c8d;
    padding: 0;
    margin: 1em 0 .2em
}

#posts p {
    text-align: justify;
    padding: 0;
    margin: 1em 0
}

#posts .readmore {
    background-color: #ebf4fd;
    padding: 20px;
    margin: 0 20px
}

@media screen and (max-width: 900px) {
    body {
        -webkit-text-size-adjust: none;
        font-size: 14px
    }

    .sidebar {
        display: block
    }

    #header {
        display: none
    }

    #mobile-bar {
        display: block
    }

    #hero .inner {
        display: inline-block;
        width: 100%
    }

    #hero .inner .hero-logo {
        float: none;
        margin: 30px 0 15px;
        width: 8em;
        height: 8em
    }

    #hero .inner .left, #hero .inner .right {
        text-align: center;
        width: 100%
    }

    #hero .inner .social-wrapper {
        display: flex;
        justify-content: center
    }

    #hero .inner .social-wrapper a {
        font-size: 1em;
        width: 1.2em;
        height: 1.2em;
        padding: .4em
    }

    #hero h1 {
        font-size: 1.5em
    }

    #hero h2 {
        display: block;
        font-size: 2em
    }

    #hero .button {
        font-size: .9em
    }

    #special-sponsor span {
        display: block
    }

    #special-sponsor img {
        width: 125px
    }

    #highlights .point {
        display: block;
        margin: 0 auto;
        width: 300px;
        padding: 0 40px 30px
    }

    #highlights .point:before {
        content: "—";
        color: #a2141b
    }

    #posts h2 {
        line-height: 54px;
        height: 54px;
        background: 0 0;
        margin-left: 54px;
        margin-right: 54px
    }

    #posts .content .header {
        display: inline
    }

    #posts .content .header h5 {
        margin: 1em 0 .2em
    }
}