/*
#28486C - dark blue
#3a699e - light blue
#A0C55F - light green
*/
html {height:100%;}
body {
    height:100%;
    background-color:#fff;
    color:#333;
    font-family: "Roboto", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size:16px;
    line-height: 1.6;
    padding-top: 70px;
}
a {
    color:#28486C;
}
a:hover {
    color:#3a699e;
}
p {
    line-height: 1.8;
    margin-bottom: 1em;
}
.content-wrapper {
    min-height:100%;
    position:relative;
    margin:0;
    padding:0;
}
main {
    min-height:100%;
    padding-bottom:125px;
}
footer {
    height:120px;
    position:absolute;
    bottom:0;
    width:100%;
}
h1 {
    font-family: 'Montserrat',sans-serif;
    font-weight: 700;
    font-size: 2.5rem;
    line-height: 1.2;
    color:#28486C;
    margin:1em 0 0.5em 0;
}
h2 {
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    font-size: 2rem;
    line-height: 1.3;
    margin:1em 0 0.5em 0;
}
h3 {
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    font-size: 1.75rem;
    line-height: 1.4;
    margin:1em 0 0.5em 0;
}
h4 {
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    font-size: 1.5rem;
    line-height: 1.5;
    margin:1em 0 0.5em 0;
}
.font-bold {
    font-family: "Roboto", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.font-italic {
    font-family: "Roboto", sans-serif;
    font-weight: 400;
    font-style: italic;
}
span.avoidwrap { display:inline-block; }
/* BUTTONS --------------------------------------------------------------------------- */
.btn, .panel, .panel-info, .panel-body, .panel-heading {
    border-radius:2px;
}
.btn-primary {
    background-color:#3a699e;
}
.btn-primary:hover {
    background-color:#28486C;
}
.btn-clear{
    background-color: inherit;
    color:#333;
    border:1px solid #666;
}

/* HEADER --------------------------------------------------------------------------- */
.navbar-default {
    background-color:#fff;
}
.navbar-brand {
    margin:0;
    padding:0 0 0 15px;
}
.navbar-brand a.brand-h1 {
    margin:0;
    padding:0 0 0 15px;
    color:#000;
    font-size:2.5em;
    line-height:0.75em;
    text-decoration: none;
}
.navbar-brand a.brand-h1 img {
    max-height:45px;
}
/* NAVIGATION --------------------------------------------------------------------------- */
.user-menu a.dropdown-toggle {
    cursor:pointer;
}
.user-menu li .caption {
    margin-left:10px;
}
#primary-nav li:hover, #primary-nav li a:hover, #primary-nav li a:active,
#primary-nav li a:focus, #primary-nav li a.focus, #primary-nav li a.active,
#primary-nav .open > a, #primary-nav .open > a:focus,
#primary-nav > li > a:focus, #primary-nav > li > a:hover {
    background-color: #3a699e;
    color:#fff;
}
#primary-nav li a {
    border-left:1px solid #ccc;
}
#primary-nav li:first-of-type a {
    border-left:none;
}
#primary-nav, #primary-nav li a {
    line-height:24px;
}
.navbar-collapse {
    background-color:#fff;
}
li.divider {

}
/* FOOTER --------------------------------------------------------------------------- */
footer .row {
    margin:0;
    padding:0;
}
footer .navbar-default {
    background-color: #28486C;
    border:none;
    border-radius:0px;
    color:#fff;
    padding-top:5px;
    margin:0;
    height:120px;
}
footer a, footer a:hover {
    color:#fff;
}
footer .phone {
    padding-top:0.5em;
}
footer .powered-by a, footer .powered-by a:active, footer .powered-by a:hover {
    color:#fff;
}
footer .powered-by span {
    float:left;
    margin-top:14px;
}
footer .powered-by img {
    float:left;
    height:40px;
}
footer .social-icons {
    margin-top:-25px;
}
footer .social-icons a, footer .social-icons a:hover {
    text-decoration: none;
}
footer .social-icons a img {
    border:2px solid #fff;
    border-radius: 7px;
    width: 42px;
    margin-right:7px;
}
footer .legal {
    margin:0.5em 0 0 0 ;
    padding:0.5em 0;
}
footer .legal a {
    margin-left:20px;
}
footer .legal a:first-of-type {
    margin-left:0;
}
/* MISC --- */
.maincontent a {
    text-decoration: underline;
}
.maincontent a.btn, .maincontent .catalog a, .maincontent #tabsmenu a {
    text-decoration: none;
}
#cartText {
    margin-left:-0.4em;
}
img.adImage {
    max-height:150px;
    margin:0 auto;
}
.adLanding {
    margin-bottom:2em;
    padding:1em;
    font-style: italic;
    border:1px #666 dashed;
}
.adLanding p {
    margin-bottom:1em;
}
table.tableclassroom a {
    text-decoration: none;
}

#course-details-page .cd-subs {
    margin-bottom: 3em;
}
#course-details-page .cd-title {
    padding:0.5em;
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    font-size: 1.6rem;
    line-height: 1.5;
}
/* MEDIA QUERIES --------------------------------------------------------------------------- */
@media (min-width: 768px) {
    main {
        padding-bottom:160px;
    }
    main .container.maincontent {
        min-height:30em;
    }
    #primary-nav {
        float:right;
    }
    #primary-nav li .inner-nav {
        width:710px;
        margin-left:-235px;
    }
    #primary-nav li .inner-nav li {
        list-style: none;
        padding:0;
        margin:0;
    }
    #primary-nav li .inner-nav li a {
        background-color:#fff;
        color:#333;
        border:none;
        border-radius:0px;
        padding:0.25em 0 0.25em 1em;
    }
    #primary-nav li .inner-nav li a:hover {
        background-color: #3a699e;
        color:#fff;
        text-decoration: none;
    }
    #primary-nav li .state-block {
        float:left;
        width:175px;
        border-right:1px solid #eee;
        padding:1em 0;
    }
    #primary-nav li .state-block ul {
        margin:0;
        padding:0;
    }
    #primary-nav li .state-block:first-of-type {
        padding-left:0.5em;
    }
    #primary-nav li .state-block:last-of-type {
        border:none;
    }
    #primary-nav li .state-block li a {
        display:block;
        width:100%;
    }
    #primary-nav a.linkhighlight {
        background-color:#A0C55F;
        color:#fff;
    }
    #store-card-form label {
        font-weight: normal;
    }
    .adLanding p {
        margin-bottom:0em;
    }
    #course-details-page h2.subKitName, h2.catalog-heading-state, h2.addcourseHeader {
        font-weight: 500;
        font-size: 2rem;
    }
}
@media (max-width:768px) {
    #primary-nav li  {
        margin:10px 0;
    }
    #primary-nav li a {
        border-bottom:1px solid #ccc;
        padding-bottom:15px;
    }
    #primary-nav li:last-of-type a {
        border:none;
    }
    footer .legal {
        font-size:0.9em;
    }
}
@media (max-width:992px) {
    .container {
        width:100%;
    }
}
