/* Styles for table of contents page.

   developer:   marionm
   requires:    /nks/css/shared.en.css
   ========================================================================== */

/* ==========================================================================
   shared.en.css overrides
   ========================================================================== */

html.toc { background: #3d3d3d; }

html.toc #header { background: #292929; }

#content { background: none; }

/* ==========================================================================
   page specific styles
   ========================================================================== */

/* cover
   ========================================================================== */

#content {
    margin: 0 auto;
    max-width: 1396px;
    padding: 2rem;
}

#content .cover {
    max-width: 1364px;
    text-align: left;
    width: 100%;
}

#content .left {
    background: #000;
    line-height: 0;
    max-width: 650px;
    width: 49%;
}

#content .left img {
    display: block;
    height: auto;
    max-width: 650px;
    width: 100%;
}

#content .middle {
    max-width: 2rem;
    width: 2%;
}

#content .right {
    background: #fff;
    font-size: 1.3rem;
    max-width: 650px;
    padding: 0 3rem;
    width: 49%;
}

#content .right a { color: #b00f00; }

#content .right a:active,
#content .right a:hover { color: #ff002f; }

#content .right a > span:nth-of-type(1) {
    color: #656565;
    padding: .4rem 0;
    text-align: right;
    white-space: nowrap;
    width: 2.125rem;
}

#content .right a:not(:first-child):not(:last-child):not(:nth-child(14)) > span:nth-of-type(1):after {
    color: #b9b9b9;
    content: '|';
    display: inline-block;
    margin: 0 .25rem;
}

#content .right a > span:nth-of-type(2) { padding: .4rem 0; }

#content .right .bottom a {
    color: #666;
    display: inline-block;
    font-size: 1rem;
    margin: 1rem 1.5rem 0 0;
}

#content .right .bottom a:active,
#content .right .bottom a:hover { color: #000; }

#content .right .bottom a:last-of-type { margin-right: 0; }

/* footer
   ========================================================================== */

#content footer {
    margin: 3rem auto 0 auto;
    text-align: center;
}

#content footer .links a { color: #fff; }

#content footer .no-image { padding-top: 4px; }

#content footer .links a img {
    display: inline-block;
    margin: .25rem .75rem 0 0;
    opacity: .65;
}

#content footer .links a:active,
#content footer .links a:hover { color: #f3a045; }

#content footer .anniversary {
    display: inline-block;
    margin-top: 1rem;
}

#content footer .anniversary a {
    color: #f9c781;
    font-style: italic;
    text-align: left;
}

#content footer .anniversary a:active,
#content footer .anniversary a:hover { color: #f3a045; }

#content footer .anniversary a img {
    display: inline-block;
    margin: 0 .75rem 0 0;
}

#content footer .copyright {
    color: #8e8e8e;
    display: inline-block;
    font-family: 'Source Sans Pro', Arial, sans-serif;
    font-size: .875rem;
    margin-top: 2rem;
}

#content footer .copyright .attributions {
    opacity: .5;
    vertical-align: middle;
}

#content footer .copyright .attributions:active,
#content footer .copyright .attributions:hover { opacity: 1; }

#content footer .copyright .ws { color: #8e8e8e; }

#content footer .copyright .ws span {
    letter-spacing: .05em;
    text-transform: uppercase;
}

#content footer .copyright .ws span:first-child { font-weight: 600; }

#content footer .copyright .ws span:last-child { font-weight: 300; }

#content footer .copyright .ws:active span:first-child,
#content footer .copyright .ws:hover span:first-child { color: #f3a045; }

#content footer .copyright .ws:active span:last-child,
#content footer .copyright .ws:hover span:last-child { color: #fff; }

/* ==========================================================================
   responsive breakpoint styles
   ========================================================================== */

/* styles for large screens (1200px)
   ========================================================================== */

@media all and (max-width: 1200px) {
    #content .right { font-size: 1.5vw; }
    #content .right .bottom a { font-size: 1vw; }
}

/* styles for medium screens (900px)
   ========================================================================== */

@media all and (max-width: 900px) {
    #content .right { padding: 0 1.5rem; }

    #content .right a > span:nth-of-type(1),
    #content .right a > span:nth-of-type(2) { padding: .3rem 0; }
}

/* styles for small screens (600px)
   ========================================================================== */

@media all and (max-width: 600px) {
    #content .left {
        display: block;
        width: 100%;
    }

    #content .middle { display: none; }

    #content .right {
        display: block;
        font-size: 1rem;
        padding: 1.5rem;
        width: 100%;
    }

    #content .right .bottom a { font-size: .75rem; }
}

/* styles for minimum supported screen width (320px)
   ========================================================================== */

@media all and (max-width: 320px) {}

/* printer styles
   ========================================================================== */

@media print {}