/*
Linear by TEMPLATED
templated.co @templatedco
Released for free under the Creative Commons Attribution 3.0 license (templated.co/license)
*/

@charset 'UTF-8';

@font-face{font-family:'FontAwesome';src:url('font/fontawesome-webfont.eot?v=4.0.1');src:url('font/fontawesome-webfont.eot?#iefix&v=4.0.1') format('embedded-opentype'),url('font/fontawesome-webfont.woff?v=4.0.1') format('woff'),url('font/fontawesome-webfont.ttf?v=4.0.1') format('truetype'),url('font/fontawesome-webfont.svg?v=4.0.1#fontawesomeregular') format('svg');font-weight:normal;font-style:normal}

:root {
  --color1: #133564;
}

/*********************************************************************************/
/* Basic                                                                         */
/*********************************************************************************/

*::selection {
    background-color: var(--color1);
    color: #fff;
}

#copyright .container::selection {
    color: var(--color1);
    background-color: #fff;
}

body
{
    margin: 0;
    padding: 0;
    background: var(--color1);
}

body,input,textarea,select
{
    font-family: 'Roboto', sans-serif;
    font-size: 11pt;
    font-weight: 300;
    line-height: 1.75em;
    color: #777;
}

h1,h2,h3,h4,h5,h6
{
    font-weight: 300;
    color: #777;
}

p {
    font-size: 1.1em;
}

.chap {
    font-size: 2em;
    margin: 1.5em 0 1em;
}

.chap2 {
    font-size: 1.5em;
    margin: 1.5em 0 1em;
}

.div_pers {
    margin-top: 6em;
    text-align: center;
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a{
        color: inherit;
        text-decoration: none;
    }

strong, b
{
    font-weight: 500;
}

em, i
{
    font-style: italic;
}

a
{
    text-decoration: none;
    color: var(--color1);
}

a:hover
{
    text-decoration: underline;
}

sub
{
    position: relative;
    top: 0.5em;
    font-size: 0.8em;
}

sup
{
    position: relative;
    top: -0.5em;
    font-size: 0.8em;
}

hr
{
    border: 0;
    border-top: solid 1px #ddd;
    margin: 6em 0 0 0;
    padding: 6em 0 0 0;
}

hr.sep {
    margin: 2em 2em 5em;
    padding: 0;
}

blockquote
{
    border-left: solid 0.5em #ddd;
    padding: 1em 0 1em 2em;
    font-style: italic;
}

p, ul, ol, dl, table
{
    margin-bottom: 1em;
}

header
{
    margin-bottom: 1.6em;
}

#logo h2 {
    font-size: 1.6em;
    color: #fff;
    margin: 1em 0;
}

#logo h3 {
    font-size: 1.4em;
    color: #fff;
}

#logo h3 a {
    display: inline;
    font-size: inherit;
}

header .byline
{
    display: block;
    margin: 1.5em 0 0 0;
    padding: 0 0 0.5em 0;
}

footer
{
    margin-top: 1em;
}

br.clear
{
    clear: both;
}

.pennant
{
    color: #bbb;
}

.dwl {
    font-size: 2em;
    margin-left: 0.4em;
}

.dwl2 {
    font-size: 1.5em;
}

.banner {
    text-align: center !important;
    font-size: 2em !important;
    margin-top: 2em !important;
}

.banner span {
    font-weight: 400;
}

.depr {
    text-decoration: line-through;
    font-size: 0.8em;
}

section:nth-child(2) {
    overflow: scroll;
}

section:nth-child(2) li {
    padding: 1em 0em 0em 0em !important;
}

section:nth-child(2) .posted {
    padding: 0 !important;
    margin: 0 !important;
}

#solver_table {
    color: #777;
    font-weight: 400;
    text-align: center;
    width: 90%;
    margin: 2em auto;
}
#solver_table th {
    font-size: 0.8em;
}

#solver_table th, #solver_table td {
    border-bottom: 1px solid #ccc;
    border-right: 1px solid #ccc;
    padding: 0.3em;
    vertical-align: middle;
    white-space: nowrap;
}

#solver_table th:hover, #solver_table td:hover {
    background-color: #fea;
}

.track_table {
    table-layout: auto;
    border: 1px solid #ccc;
    color: #777;
    font-weight: 400;
    width: 90%;
    margin: 2em 0;
}
.track_table th {
    font-weight: bold;
}

.track_table th, .track_table td {
    border-bottom: 1px solid #ccc;
    border-right: 1px solid #ccc;
    padding: 0.3em 0.4em;
    vertical-align: middle;
    white-space: nowrap;
}

.track_table td {
    text-align: right;
}

.track_table td:first-child { 
    text-align: left;
}

.track_table th {
    text-align: center;
}

.track_table th:hover, .track_table td:hover {
    background-color: #fea;
}

.check_cell {
    color: #4CAF50;
    border: 1px solid #ccc;
}

.res-table .res-row {
    display: table-row;
}

.res-table .res-row .res-cell {
    display: table-cell;
    padding: 1em;
    white-space: nowrap;
    width: 12em;
}

.res-table .res-row .res-cell .chap {
    margin: 0 0 0.5em;
}

.res-table .res-row .res-cell ol li{
    margin: 0.6em 0 0 2em;
}

.res-p {
    margin-top: 2em;
}

@media screen and (max-width: 500px) {
    
    .res-table .res-row .res-cell {
        display: block;
    }
    
}


/* Sections/Articles */

    section,
    article
    {
        margin-bottom: 3em;
        text-align: justify;
    }

    section > :last-child,
    article > :last-child
    {
        margin-bottom: 0;
    }

    section:last-child,
    article:last-child
    {
        margin-bottom: 0;
    }

    .row > section,
    .row > article
    {
        margin-bottom: 0;
    }

/* Images */

    .image
    {
        display: inline-block;
    }

        .image img
        {
            display: block;
            width: 10em;
            margin: auto;
        }

        .image.featured
        {
            display: block;
            width: 100%;
            margin: 0 0 2em 0;
        }

        .image.full
        {
            display: block;
            width: 100%;
            margin-bottom: 2em;
        }

        .image.left
        {
            float: left;
            margin: 0 2em 2em 0;
        }

        .image.centered
        {
            display: block;
            margin: 0 0 2em 0;
        }

            .image.centered img
            {
                margin: 0 auto;
                width: auto;
            }

            .latest {
                list-style: none;
                padding: 0;
            }

            #featured .latest li p {
                text-align: center;
                margin: 0;
            }

            #preved {
                    margin-top: 4em;
                    line-height: 3em;
            }

ul {
    list-style: initial;
    padding: revert;
}

ul li {
    text-align: initial;
    font-size: 1.1em;
}

ol li {
margin: 0.6em 0 0 3em;
font-size: 1.1em;
}

.expired {
text-decoration: line-through;
}

#profile {
    float: left;
    width: 32%;
    margin-right: 1em;
}


/* Buttons */

.button
{
    position: relative;
    display: inline-block;
    background: var(--color1);
    padding: 0.8em 2em;
    text-decoration: none !important;
    font-size: 1.2em;
    font-weight: 300;
    color: #FFF !important;
    -moz-transition: color 0.35s ease-in-out, background-color 0.35s ease-in-out;
    -webkit-transition: color 0.35s ease-in-out, background-color 0.35s ease-in-out;
    -o-transition: color 0.35s ease-in-out, background-color 0.35s ease-in-out;
    -ms-transition: color 0.35s ease-in-out, background-color 0.35s ease-in-out;
    transition: color 0.35s ease-in-out, background-color 0.35s ease-in-out;
    text-align: center;
    border-radius: 0.25em;
}

.button:hover
{
    background: #70AA7E;
    color: #FFF !important;
}

.cite {
    background: white;
    padding: 0 15% 9em;
}

code, pre {
    font-family: monospace;
}

.my_bold {
    font-weight: bold;
}

.my_p {
    text-align: center;
}

#img_net {
    width: 10em;
    margin-top: 2em;
}

/*********************************************************************************/
/* Social Icon Styles                                                            */
/*********************************************************************************/

ul.contact
{
    padding: 1.5em 0 0 0;
    list-style: none;
    cursor: default;
}

ul.contact li
{
    display: inline-block;
    margin: 0 1em;
}

ul.contact li span
{
    display: none;
    margin: 0;
    padding: 0;
}

ul.contact li a
{
    color: inherit;
    font-size: 1.75em;
    display: inline-block;
    -moz-transition: color 0.35s ease-in-out, background-color 0.35s ease-in-out;
    -webkit-transition: color 0.35s ease-in-out, background-color 0.35s ease-in-out;
    -o-transition: color 0.35s ease-in-out, background-color 0.35s ease-in-out;
    -ms-transition: color 0.35s ease-in-out, background-color 0.35s ease-in-out;
    transition: color 0.35s ease-in-out, background-color 0.35s ease-in-out;
}

ul.contact li a:hover
{
    color: #fff;
}

#header_splash {
    background: url(../images/header.jpg) no-repeat bottom center;
    background-size: cover;
    text-align: center;
    height: 100vh;
}

#header_splash #logo {
    position: relative;
    z-index: 1;
    padding-top: 33vh;
}

#header_splash #logo p {
        margin-top: 13vh;
    font-size: 1.2em;
    color: white;
    padding: 2em;
    background: #ffffff45;
}

/*********************************************************************************/
/* Header                                                                        */
/*********************************************************************************/

#header
{
    position: relative;
    background: url(../images/header.jpg) no-repeat bottom center;
    background-attachment: fixed;
    background-size: cover;
    text-align: center;
}

    #header:before
    {
        content: '';
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        background: rgba(64,64,64,0.125);
    }

/*********************************************************************************/
/* Logo                                                                          */
/*********************************************************************************/

#logo
{
    position: relative;
    z-index: 1;
}

    #logo h1
    {
        color: #FFF;
    }

    #logo a
    {
        display: block;
        text-decoration: none;
        font-weight: 700;
        line-height: 1em;
        font-size: 7em;
        color: #FFF;
        margin: 0 0 0.125em 0;
    }

    #logo span
    {
        font-size: 1.4em;
        color: #FFF;
    }

/*********************************************************************************/
/* Nav                                                                           */
/*********************************************************************************/


    #nav-wrapper
    {
        background: rgba(0,0,0,.1);
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        backdrop-filter: blur(2px);
    }

    #nav > ul
    {
        margin: 0;
        padding: 0;
        text-align: center;
    }

    #nav > ul > li
    {
        display: inline-block;
        border-right: 1px solid;
        border-color: rgba(255,255,255,.1);
    }

        #nav > ul > li:last-child
        {
            padding-right: 0;
            border-right: none;
        }

        #nav > ul > li > a,
        #nav > ul > li > span
        {
            display: inline-block;
            padding: 1.5em 1.5em;
            text-decoration: none;
            text-transform: uppercase;
            font-size: 1.1em;
            outline: 0;
            color: #FFF;
        }

        #nav > ul > li > a:hover {
            text-shadow: 0 0 4px #fff;
        }

        #nav li.active a
        {
            font-weight: bold;
        }

        #nav > ul > li > ul
        {
            display: none;
        }

/*********************************************************************************/
/* Main                                                                          */
/*********************************************************************************/

#main
{
    position: relative;
    background: #fff;
}

.homepage #content header h2
{
    line-height: 1.2em;
    text-align: center;
}

#sidebar h2
{
    display: block;
    padding-bottom: 0.50em;
}

/*********************************************************************************/
/* Footer                                                                        */
/*********************************************************************************/

#footer
{
    position: relative;
    text-align: center;
}

#footer header h2
{
    color: #FFF !important;
}

#footer header .byline
{
    color: rgba(255,255,255,.2);
}

/*********************************************************************************/
/* Copyright                                                                     */
/*********************************************************************************/

#copyright
{
    position: relative;
    text-align: center;
    color: #fff;
}

#copyright .container
{
    padding: 3em 0em;
    border-top: 1px solid;
    border-color: rgba(255,255,255,.05);
}

#copyright a
{
    text-decoration: none;
}

/*********************************************************************************/
/* Featured                                                                      */
/*********************************************************************************/

#featured
{
    position: relative;
    background: #f2f2f2;
    text-align: center;
}

#featured h3
{
    display: block;
    font-weight: 300;
}

#featured .pennant
{
    font-size: 4em;
}

#featured .button
{
    margin-top: 1.5em;
}

#featured p {
    text-align: justify;
}

#topics {
    column-count: 2;
}