*,*:after,*:before {
    box-sizing: inherit
}

html {
    box-sizing: border-box;
    font-size: 62.5%
}

body {
    display: flex;
    color: #37474f;
    background-color: #fefefe;
    font-family: BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen-Sans,Ubuntu,Cantarell,'Open Sans','Helvetica Neue',sans-serif;
    font-size: 1.6em;
    font-weight: 400;
    letter-spacing: .0625em;
    line-height: 1.8em
}

@media only screen and (min-device-width: 320px) and (max-device-width:480px) {
    body {
        font-size:1.4em;
        line-height: 1.6em
    }
}

a {
    font-weight: 700;
    color: #000;
    text-decoration: none
}

a:focus,a:hover {
    color: #555;
    text-decoration: underline
}

p {
    text-align: justify;
    margin: 1.6rem 0 2rem 0
}

.page-content a {
    font-weight: 400;
    color: #000;
    text-decoration: none;
}

.page-content a:focus,.page-content a:hover {
    color: #555
}

h1,h2,h3,h4,h5,h6 {
    color: #000;
    text-transform: none;
    letter-spacing: .0625em;
    margin: 3.2rem 0 1.6rem 0
}

h1 {
    font-size: 3.2rem;
    line-height: 3.2rem
}

@media only screen and (min-device-width: 320px) and (max-device-width:480px) {
    h1 {
        font-size:2.8rem;
        line-height: 2.8rem
    }
}

h2 {
    font-size: 2.8rem;
    line-height: 2.8rem
}

@media only screen and (min-device-width: 320px) and (max-device-width:480px) {
    h2 {
        font-size:2.4rem;
        line-height: 2.4rem
    }
}

h3 {
    font-size: 2.4rem;
    line-height: 2.4rem
}

@media only screen and (min-device-width: 320px) and (max-device-width:480px) {
    h3 {
        font-size:2rem;
        line-height: 2rem
    }
}

h4 {
    font-size: 2.2rem;
    line-height: 2.2rem
}

@media only screen and (min-device-width: 320px) and (max-device-width:480px) {
    h4 {
        font-size:1.8rem;
        line-height: 1.8rem
    }
}

h5 {
    font-size: 2rem;
    line-height: 2rem
}

@media only screen and (min-device-width: 320px) and (max-device-width:480px) {
    h5 {
        font-size:1.6rem;
        line-height: 1.6rem
    }
}

h6 {
    font-size: 1.4rem;
    line-height: 1.4rem
}

pre {
    margin: 1.6rem 0 1rem 0;
    padding: 1.6rem;
    overflow-x: auto;
    direction: ltr;
    border-radius: 5px;
    color: #27373f;
    background-color: #f8f8f8;
    -moz-tab-size: 4;
    -o-tab-size: 4;
    tab-size: 4
}

code {
    background-color: #eee;
    color: #27373f;
    padding: .4rem .8rem .4rem .8rem;
    border: 1px solid #dcdcdc;
    border-radius: 5px
}

pre code {
    background-color: #f8f8f8;
    color: #27373f;
    white-space: pre;
    border: 0;
    border-radius: 0;
    padding: 0
}

blockquote {
    border-left: 2px solid #dcdcdc;
    padding-left: 1.6rem;
    font-style: italic
}

blockquote ol:last-child,blockquote ul:last-child,blockquote p:last-child {
    margin-top: 0
}

th,td {
    padding: 1.6rem
}

table {
    border-collapse: collapse
}

table td,table th {
    border: 2px solid #000
}

table tr:first-child th {
    border-top: 0
}

table tr:last-child td {
    border-bottom: 0
}

table tr td:first-child,table tr th:first-child {
    border-left: 0
}

table tr td:last-child,table tr th:last-child {
    border-right: 0
}

img {
    max-width: 100%
}

.clearfix:after {
    content: " ";
    visibility: hidden;
    display: block;
    height: 0;
    clear: both
}

.wrapper {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    width: 100%
}

.container {
    margin: 0 auto;
    max-width: 100rem;
    width: 100%;
    padding-left: 2rem;
    padding-right: 2rem
}

.navbar-default {
    border-color: rgba(34,34,34,0.05);
    background-color: #fefefe;
    -webkit-transition: all .35s;
    -moz-transition: all .35s;
    transition: all .35s
}

@media(min-width: 768px) {
    .navbar-default {
        border-color:rgba(255,255,255,0.3)
    }

    .navbar-default.affix {
        border-color: rgba(34,34,34,0.05)
    }

    .active {
        border-bottom: .125em solid #ffcd00
    }
}

.navbar-default .navbar-text {
    color: #000;
    font-size: 18px;
    margin-left: 0
}

.navbar-default .navbar-text:focus,.navbar-default .navbar-text:hover {
    background-color: transparent;
    text-decoration: none
}

.navbar-default .navbar-header .navbar-text:hover,.navbar-default .navbar-header .navbar-text:focus {
    color: #555
}

.navbar-default .navbar-header .navbar-brand {
    color: #000
}

.navbar-default .navbar-header .navbar-brand:hover,.navbar-default .navbar-header .navbar-brand:focus {
    color: #555
}

.navbar-brand>img {
    max-width: 150%;
    max-height: 150%
}

.navbar-default .nav>li>a,.navbar-default .nav>li>a:focus {
    font-weight: 500;
    color: #000
}

.navbar-default .nav>li>a:hover,.navbar-default .nav>li>a:focus:hover {
    color: #555
}

.navbar-default .nav>li.active>a,.navbar-default .nav>li.active>a:focus {
    color: #0984a3 !important;
    background-color: transparent
}

.navbar-default .nav>li.active>a:hover,.navbar-default .nav>li.active>a:focus:hover {
    background-color: transparent
}

@media only screen and (min-device-width: 320px) and (max-device-width:480px) {
    a.navigation-title {
        font-size:0
    }

    a.navigation-title::after {
        content: '~';
        font-size: 2.4rem;
        text-align: center;
        margin-left: -1.4rem
    }
}

.content {
    flex: 1;
    margin-top: 7.6rem;
    margin-bottom: 1.6rem
}

.content .page-header {
    margin-top: 3.2rem;
    margin-bottom: 3.2rem;
    border: 0;
    padding: 0
}

.content .page-header:after {
    content: "";
    display: block;
    width: 4em;
    margin-top: 1.5em;
    margin-bottom: 1.5em;
    border-bottom: .125em solid #ffcd00
}

.content .page-header h1,.content .page-header h2 {
    margin: 0
}

.content .page-header h2 {
    margin-top: 1rem;
    font-size: 1.8rem;
    color: #37474f
}

@media only screen and (min-device-width: 320px) and (max-device-width:480px) {
    .content .page-header h2 {
        font-size:1.6rem
    }
}

.content .page-header .page-title {
    margin-bottom: .75em
}

.content .page-header .page-meta .posted-on {
    display: inline-block;
    margin-left: 0;
    margin-right: 10px
}

.content .page-header .page-meta .reading-time {
    display: inline-block
}

.content .page-footer:before {
    content: "";
    display: block;
    width: 4em;
    margin-top: 1.5em;
    margin-bottom: 1.5em;
    border-bottom: .125em solid #bdbdbd
}

.content .page-footer .separator {
    font-size: 8px
}

.list ul {
    margin: 3.2rem 0 3.2rem 0;
    list-style: none;
    padding: 0
}

.list ul li {
    font-size: 1.6rem
}

@media only screen and (min-device-width: 320px) and (max-device-width:480px) {
    .list ul li {
        font-size:1.4rem;
        margin: 1.6rem 0 1.6rem 0
    }
}

.list ul li span {
    display: inline-block;
    text-align: left;
    width: 20rem;
    margin-left: 0;
    margin-right: 3rem
}

@media only screen and (min-device-width: 320px) and (max-device-width:480px) {
    .list ul li span {
        display:block;
        text-align: left
    }
}

.pagination {
    margin-top: 6rem;
    text-align: center
}

.pagination li {
    display: inline;
    text-align: center
}

.pagination li span {
    margin: 0;
    text-align: center;
    width: 3.2rem
}

.pagination li a span {
    margin: 0;
    text-align: center;
    width: 3.2rem
}

.centered {
    display: flex;
    height: 100%;
    align-items: center;
    justify-content: center
}

.centered .about {
    text-align: center
}

.centered .about h1 {
    margin-top: 2rem;
    margin-bottom: .5rem
}

.centered .about h2 {
    margin-top: 1rem;
    margin-bottom: .5rem;
    font-size: 2.4rem
}

@media only screen and (min-device-width: 320px) and (max-device-width:480px) {
    .centered .about h2 {
        font-size:2rem
    }
}

.centered .about ul {
    list-style: none;
    margin: 3rem 0 1rem 0;
    padding: 0
}

.centered .about ul li {
    display: inline-block;
    position: relative
}

.centered .about ul li a {
    margin-left: 1rem;
    margin-right: 1rem;
    font-size: 1.6rem
}

@media only screen and (min-device-width: 320px) and (max-device-width:480px) {
    .centered .about ul li a {
        font-size:1.4rem
    }
}

.centered .error {
    text-align: center
}

.centered .error p {
    text-align: center
}

.centered .error h1 {
    margin-top: 2rem;
    margin-bottom: .5rem;
    font-size: 4.6rem
}

@media only screen and (min-device-width: 320px) and (max-device-width:480px) {
    .centered .error h1 {
        font-size:3.2rem
    }
}

.centered .error h2 {
    margin-top: 2rem;
    margin-bottom: 3.2rem;
    font-size: 3.2rem
}

@media only screen and (min-device-width: 320px) and (max-device-width:480px) {
    .centered .error h2 {
        font-size:2.8rem
    }
}

.footer {
    height: auto;
    width: 100%;
    text-align: center;
    line-height: 3rem
}

@media(min-width: 632px) {
    .footer {
        height:7rem;
        line-height: 4rem
    }
}

.footer .centered {
    height: auto
}

@media(min-width: 632px) {
    .footer .centered {
        height:3rem
    }
}

.footer .centered .about ul {
    margin-top: 0;
    margin-bottom: 0
}

.footer .centered .about ul .separator {
    font-size: 12px
}

.footer .copyright {
    display: block
}

@media(min-width: 632px) {
    .footer .copyright {
        display:inline-block
    }
}

.footer .credits {
    display: block
}

@media(min-width: 632px) {
    .footer .credits {
        display:inline-block
    }
}

.footer .credits .credits-separator {
    display: none
}

@media(min-width: 632px) {
    .footer .credits .credits-separator {
        display:inline-block
    }
}

.float-right {
    float: right
}

.float-left {
    float: left
}

.chroma {
    background-color: #f8f8f8
}

.chroma .err {
    color: #a61717;
    background-color: #e3d2d2
}

.chroma .lntd {
    vertical-align: top;
    padding: 0;
    margin: 0;
    border: 0
}

.chroma .lntable {
    border-spacing: 0;
    padding: 0;
    margin: 0;
    border: 0;
    width: auto;
    overflow: auto;
    display: block
}

.chroma .hl {
    display: block;
    width: 100%;
    background-color: #ffc
}

.chroma .lnt {
    margin-right: .4em;
    padding: 0 .4em 0 .4em
}

.chroma .ln {
    margin-right: .4em;
    padding: 0 .4em 0 .4em
}

.chroma .k {
    font-weight: bold
}

.chroma .kc {
    font-weight: bold
}

.chroma .kd {
    font-weight: bold
}

.chroma .kn {
    font-weight: bold
}

.chroma .kp {
    font-weight: bold
}

.chroma .kr {
    font-weight: bold
}

.chroma .kt {
    font-weight: bold
}

.chroma .na {
    color: teal
}

.chroma .nb {
    font-weight: bold
}

.chroma .bp {
    font-weight: bold;
    font-style: italic
}

.chroma .nc {
    color: #458;
    font-weight: bold
}

.chroma .no {
    color: #666;
    font-weight: bold;
    font-style: italic
}

.chroma .ni {
    color: purple
}

.chroma .ne {
    color: #900;
    font-weight: bold
}

.chroma .nf {
    color: #666;
    font-weight: bold
}

.chroma .nn {
    color: #666
}

.chroma .nt {
    color: navy
}

.chroma .nv {
    color: #666;
    font-weight: bold
}

.chroma .s {
    color: #800
}

.chroma .sa {
    color: #800
}

.chroma .sb {
    color: #800
}

.chroma .sc {
    color: #800
}

.chroma .dl {
    color: #800
}

.chroma .sd {
    color: #800
}

.chroma .s2 {
    color: #800
}

.chroma .se {
    color: #800
}

.chroma .sh {
    color: #800
}

.chroma .si {
    color: #800
}

.chroma .sx {
    color: #800
}

.chroma .sr {
    color: #800
}

.chroma .s1 {
    color: #800
}

.chroma .ss {
    color: #800
}

.chroma .m {
    color: #099
}

.chroma .mb {
    color: #099
}

.chroma .mf {
    color: #099
}

.chroma .mh {
    color: #099
}

.chroma .mi {
    color: #099
}

.chroma .il {
    color: #099
}

.chroma .mo {
    color: #099
}

.chroma .o {
    font-weight: normal
}

.chroma .ow {
    font-weight: bold
}

.chroma .c {
    color: #888;
    font-style: italic
}

.chroma .ch {
    color: #888;
    font-style: italic
}

.chroma .cm {
    color: #888;
    font-style: italic
}

.chroma .c1 {
    color: #888;
    font-style: italic
}

.chroma .cs {
    color: #888;
    font-weight: bold
}

.chroma .cp {
    color: #888;
    font-weight: bold
}

.chroma .cpf {
    color: #888;
    font-weight: bold
}

.chroma .gd {
    color: #000;
    background-color: #fdd
}

.chroma .ge {
    font-style: italic
}

.chroma .gr {
    color: #a00
}

.chroma .gh {
    color: #999
}

.chroma .gi {
    color: #000;
    background-color: #dfd
}

.chroma .go {
    color: #888
}

.chroma .gp {
    color: #555
}

.chroma .gs {
    font-weight: bold
}

.chroma .gu {
    color: #aaa
}

.chroma .gt {
    color: #a00
}

.chroma .w {
    color: #bbb
}
