/* Begin Minimized Normalize Stylesheet */
img,legend{border:0}legend,td,th{padding:0}html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,optgroup,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre,textarea{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}table{border-collapse:collapse;border-spacing:0}
/* End Minimized Normalize Stylesheet */

/* General Styles */

* {
    box-sizing: border-box;
}
.row {
    width: 100%;
    padding: 0 3%;
}
.row:after,
.row:before {
    content: "";
    display: table;
    clear: both;
}
body {
    margin: 0;
    padding: 0;
    height: 100%;
    background: #E2E3E7;
    background: #FFF6BD;
    font-size: 16px;
}
.container {
    width: 800px; 
    margin: 20px auto; 
    max-width: 100%;
    box-shadow: 3px 3px 1em #555;
    border-radius: 10px;
}
.header, .footer {
    background: white;
    width: 800px;
    max-width: 100%;
}
.index,
.about,
.bank-rating,
.scoring {
    width: 800px;
    max-width: 100%;
    margin: 0 auto;
    background-color: white;
}
.two {
    width: 45%;
    margin: 0 2.5%;
    float: left;
}
.no-indent {
    text-indent: 0;
}
.skip-to-main a {
    background: #0A1A6D;
    color: white;
    position: absolute;
    top: auto;
    left: -10000;
    width: 1px;
    height: 1px;
    overflow: hidden;
}
.skip-to-main a:focus {
    width: auto;
    height: auto;
    padding: 6px;
    left: 0;
    top: 0;
    outline: 0;
    z-index: 1000;
    -webkit-transition: top .1s eas in, .5s linear;
    transition: top .1s ease-in, background .5s linear;
}
h1 {
    text-align: center;
}
ul, p {
    line-height: 1.4;
    width: 600px;
    max-width: 100%;
    margin: 1em auto;
}
p {
    text-indent: 1em;
}
@media(max-width: 850px) {
    .index, .about, .bank-rating, .scoring {
        width: 100%;
        margin: 0;
        padding: 0 5%;
    }
    .container {
        margin: 0;
        width: 100%;
        box-shadow: none;
    }
}
@media(max-width: 550px) {
    h1 {
        font-size: 1.5em;
    }
    ul {
        padding-left: 1em;
    }
}
/* New Header Styles */
.container .mobile-nav {
    padding: 0;
    background: white;
    display: none;
}
.mobile-nav img {
    max-width: 100%;
}
.mobile-nav span {
    display: block;
    text-align: center;
    background: #0A1A6D;
    color: white;
    padding: 10px;
    font-weight: bold;
    letter-spacing: 2px;
}
.mobile-nav span:hover {
    cursor: pointer;
    background: #1A3DF9;
}
.mobile-nav a {
    display: block;
    text-align: center;
    padding: 7px;
    color: white;
    text-decoration: none;
}
.mobile-nav a:hover {
    background: #1A3DF9;
}
#nav {
    display: none;
    z-index: 50px;
    width: 100%;
    position: fixed;
    background: #0A1A6D;;
}
.header {
    margin: 10px auto 0;
    border-bottom: 2px solid black;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}
.header img {
    float: left;
    max-width: 100%;
}
.header nav {
    float: right;
    margin-top: 4em;
    width: 50%;
    max-width: 100%;
}
nav a {
    text-decoration: none;
    padding: 10px;
    border: 2px solid black;
    border-radius: 7px;
    background: #0A1A6D;
    color: white;
    margin: 0 3px;
}
.nav a:visited {
    color: white;
}
nav a:hover {
    color: #000;
    background: white;
}

@media(max-width: 850px) {
    .header {
        border-top-left-radius: 0;
        border-top-right-radius: 0;
        margin-top: 0;
        width: 100%;
    }
    .header img, .header nav {
        float: none;
    }
    .header nav {
        width: 350px;
        margin: 0 auto 2em;
    }
    .header img {
        display: block;
        margin: 0 auto;
    }
    .header nav a {
        float: left;
        width: 23%;
        margin: 0 1% 4%;
        text-align: center;
    }
}

@media(max-width: 350px) {
    .header {
        display: none;
    }
    .container .mobile-nav {
        display: block;
    }
    .header nav a {
        float: none;
        display: block;
        width: 90%;
        margin: 10px auto;
    }
} 

/* Footer styles */
.footer {
    margin: 0 auto;
    border-top: 2px solid black;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
    text-align: center;
    padding-bottom: 3px;
}

@media(max-width: 725px) {
    .footer {
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
        width: 100%;
    }
}

/* Index Page stylse */
.box-container {
    width: 600px;
    height: 125px;
    max-width: 100%;
    margin: 20px auto;
}

.box {
    height: 125px;
    width: 45%;
    margin: 0 2.5%;
    text-align: center;
    background: #0A1A6D;
    color: white;
    font-size: 1.25em;
    border: 2px solid black;
    padding: 2.5%;
    border-radius: 10px;
}

.box:hover,
.box:hover a {
    background: #E2E3E7;
    color: #0A1A6D;
}

.box a {
    color: white;
    text-decoration: none;
    line-height: 1.4;
    display: block;
}

.box-container .bank a {
    margin-top: 30px;
}

.box-container .learn a {
    margin-top: 5px;
}

@media(max-width: 550px) {
    .index .two {
        float: none;
        display: block;
        width: 80%;
        margin: 0 auto 25px;
    }
    .box-container {
        height: auto;
    }
    .box-container .learn a {
        margin-top: 20px;
    }
}

@media(max-width:400px) {
    .index .two {
        width: 90%;
    }
    .box {
        height: 100px;
        font-size: 1em;
    }
}

/* Ratings Page Styles */
#accordion {
    display: none;
}
.ranking-container {
    width: 575px;
    max-width: 100%;
    position: relative;
    margin: 0 auto 20px;
    padding: 0 3%;
}
.ranking-container p {
    width: 90%;
    margin: 0 auto 1em;
    text-indent: 0;
}
.ranking-container table {
    margin: 0 auto;
    text-align: center;
    width: 100%;
    max-width: 450px;
}
.ranking-container table, 
.ranking-container th,
.ranking-container td {
    border: 1px solid black;
    border-collapse: collapse;
    padding: 5px;
}
.ranking-container tr:first-child {
    width: 50%;
}
.slider-container {
    width: 40%;
    float: left;
}
.ranking-container .slider-container label {
    display: block;
    width: 90%;
    line-height: 1.5;
    margin-bottom: 1em auto 1em;
}
.form-container {
    width: 55%;
    float: left;
    margin-left: 2%;
}
.bank-rating form {
    margin-bottom: 30px;
    height: 500px;
}
.bank-rating-input {
    width: 700px;
    max-width: 100%;
    margin: 0 auto;
}

.bank-rating h2 {
    text-align: center;
}

.bank-rating label {
    display: inline-block;
    width: 75%;
    max-width: 100%;
    vertical-align: middle;
    padding: 5px;
}

.bank-rating input {
    width: 15%;
    margin: 10px 0;
}

.bank-rating-input form ul {
    padding-left: 0;
    border:1px solid black;
    margin-top: 0;
    height: 100%;
    overflow-y: scroll;
}

.bank-rating ul li {
    list-style-type: none;
    border: 1px solid black;
}

.bank-rating button {
    display: inline-block;
    width: 175px;
    padding: 10px;
    background: #0A1A6D;
    color: white;
    border-radius: 4px;
    margin: 0 auto;
    vertical-align: top;
}

.bank-rating button:hover {
    background: #E2E3E7;
    color: #000/*#0A1A6D */;
}
.hidden-label {
    display: none;
}

.ratings-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #0A1A6D;
    width: 100%;
    height: 100%;
    z-index: 50;
    overflow-y: scroll;
}
.overlay-content {
    width: 700px;
    max-width: 100%;
    margin: 20px auto;
    padding: 1em;
    background: white;
    border-radius: 10px;
}
.ratings-overlay h2 {
    position: relative;
    width: 100%;
    max-width: 400px;
    margin: 20px auto;
}
.close {
    font-size: 16px;
    font-weight: 600;
    color: #000;
    border: 3px solid #000;
    border-radius: 4px;
    padding: 4px;
    position: absolute;
    left: 72%
}
.x-close {
    display: none;
}
.close:hover {
    cursor: pointer;
    background: #000;
    color: #fff;
}
.ratings-table,
.ratings-table th,
.ratings-table td {
    padding: 5px;
    border: 1px solid black;
    border-collapse: collapse;
    text-align: center;
}

.ratings-table {
    width: 100%;
    max-width: 400px;
    margin: 20px auto;
}
.ratings-table tr:nth-child(odd){
    background: #ccc;
}
.ratings-table td {
    width: 50%;
}

.noscroll {
    position: fixed;
}
.scroll {
    position: static;
}

/* Jquery Overrides for Ratings Page */
.ui-accordion .ui-accordion-content {
    padding: 1em .5em;
}
.ui-state-active {
    background: #0A1A6D;
}
@media(max-width: 850px) {
    .overlay-content {
        width: 100%;
        margin: 0;
        border-radius: 0;
    }
}
@media(max-width: 550px) {
    .slider-container, .form-container {
        float: none;
        width: 95%;
        margin: 10px auto;
    }
    .ranking-container p, .slider-container label{
        width: 100%;
    }
    .slider-container button {
        width: 80%;
        margin: 0 auto;
    }
    .visible-label {
        display: none;
    }
    .hidden-label {
        display: block;
    }
    .hidden-label label {
        margin-top: .5em;
    }
    .hidden-label label, .hidden-label button{
        width: 50%;
        float: left;
    }
    .hidden-label button {
        margin-top: 10px;
    }
    .x-close {
        display: inline;
    }
    .cr-close {
        display: none;
    }
    .close {
        left: 92%;
    }
}