html, body {
    background: url("../images/texture.png");
    background-color: rgb(240, 240, 240);
    font-family: 'Open Sans', sans-serif;
    font-size: 14px;
    height: 100%;
    width: 100%;
    padding: 0;
    margin: 0;
    position: relative;
    -webkit-text-size:none;
}
a {
    text-decoration: none;
}
.noselect {
    cursor: default;
  -webkit-touch-callout: none; /* iOS Safari */
  -webkit-user-select: none;   /* Chrome/Safari/Opera */
  -khtml-user-select: none;    /* Konqueror */
  -moz-user-select: none;      /* Firefox */
  -ms-user-select: none;       /* Internet Explorer/Edge */
  user-select: none;           /* Non-prefixed version, currently
                                  not supported by any browser */
}
span.emphasis {
    color: #B61616;
    font-weight: 600;
}
a.emphasis {
    color: blue;
    text-decoration: underline;
}
#main {
    display: inline-block;
    position: relative;
    padding-top: 40px;
    height: auto;
    width: 100%;
}
.wrapper {
    min-height: 100%;
    height: auto !important;
    height: 100%;
    margin: 0 auto -50px;
    padding-bottom: 50px;
    box-sizing: border-box;
}
.wrapper > .admin_controls_actions {
    position: absolute;
    display: none;
    background-color: rgb(116, 154, 197);
    -webkit-border-radius: 0px 4px 4px 0px;
    -moz-border-radius: 0px 4px 4px 0px;
    border-radius: 0px 4px 4px 0px;
    webkit-box-shadow: #B3B3B3 3px 3px 3px;
    -moz-box-shadow: #B3B3B3 3px 3px 3px;
    box-shadow: #B3B3B3 3px 3px 3px;
}
.wrapper > .admin_controls_actions > table {
    font-size: 1.3em;
    color: #003761;
    text-align: center;
}
.wrapper > .admin_controls_actions > table > tbody > tr {
    border-bottom: 1px solid #005596;
}
.wrapper > .admin_controls_actions > table > tbody > tr:last-child {
    border-bottom: 0px;
}
.wrapper > .admin_controls_actions > table > tbody > tr > td {
    padding: 7px 4px;
    cursor: pointer;
}
.wrapper > .admin_controls_actions > table > tbody > tr > td:hover {
    /*color: rgb(250, 250, 250);*/
    color: rgb(182, 22, 22);
}
#theme-select {
    box-sizing: content-box;
    padding: 0.1em 01em;
}

/*****************
 * Header Stylings
 *****************/
#header {
    background-color: rgb(250, 250, 250);
    position: relative;
    width: 100%;
}
#header > .upper {
    position: relative;
    padding-top: 20px;
    height: 120px;
    top: 0;
}
#header > .upper > .logo {
    float: left;
}
#header > .upper > .logo > img {
    padding: 3px 0px 0px 0px;
    height: 100px;
    float: left;
}
#header > .upper > .logo > span.title {
    font-family: vollkorn, georgia, serif;
    padding: 20px 0 0 18px;
    font-size: 2.2em;
    color: #035592;
    float: left;
}
#header > .upper > .logo > span.tagline {
    font-family: vollkorn, georgia, serif;
    padding-left: 20px;
    font-style: italic;
    font-size: 1.1em;
    color: #035592;
    float: left;
}
#header > .lower {
    background-color: #005596;
    border-bottom: solid 4px rgb(116, 154, 197);
    /*border-bottom: solid 4px rgb(147, 178, 214);*/
    position: relative;
    display: block;
    height: 45px;
    width: 100%;
    bottom: 0;
}
#header > .mobile-nav {
    display: none;
}


/******************
 * Navbar Stylings
 ******************/
#header > .lower > table.nav-table {
    position: relative;
    font-size: 1em;
    height: 100%;
    width: 60%;
    left: 20%;
}
#header > .lower > table.nav-table > tbody > tr > td {
    height: 100%;
    cursor: pointer;
    text-align: center;
}
#header > .lower > table.nav-table > tbody > tr > td:hover {
    background-color: #0075CE;
}
#header > .lower > table.nav-table > tbody > tr > td.active {
    background-color: #003761 !important;
}
a.nav-link {
    cursor: pointer !important;
    color: rgb(250, 250, 250);
    padding-top: 9px;
    display: block;
    height: 100%;
    width: 100%;
}

/******************
 * Sidebar Stylings
 ******************/
#sidebar {
    width: 35%;
    height: 100%;
    float: left;
}
#sidebar > div.block {
    margin-top: 20.75px;
    max-width: 350px;
    width: 80%;
    background-color: rgb(250, 250, 250);
    margin-bottom: 50px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    webkit-box-shadow: #B3B3B3 3px 3px 3px;
    -moz-box-shadow: #B3B3B3 3px 3px 3px;
    box-shadow: #B3B3B3 3px 3px 3px;
}
#sidebar > div.block > div.title {
    color: rgb(250, 250, 250);
    background-color: rgb(116, 154, 197);
    /*background-color: rgb(147, 178, 214);*/
    box-sizing: border-box;
    font-size: 1.1em;
    padding: 9px;
    width: 100%;
}
#sidebar > div.block > div.content {
    padding: 10px;
    font-size: 1em;
}
#sidebar > table.media-links {
    margin: 10px 10px 0px 10px;
}
#sidebar > table.media-links > tbody > tr > td { 
    padding: 20px 0px 20px 0px;
}
#sidebar > table.media-links > tbody > tr > td > a > img {
    max-width: 200px;
}
#sidebar > table.media-links > tbody > tr > td {
    font-size: 30px;
    border-bottom: 1px dashed #B3B3B3;
}
#sidebar > table.media-links > tbody > tr:first-child > td {
    font-size: 30px;
    border-top: 1px dashed #B3B3B3;
}


/******************
 * Content Stylings
 ******************/
#content {
    width: 65%;
    float: right;
    height: auto ;
    font-size: 1em;
    margin-top: 20px;
}
#content > div.major,
#content > div.minor {
    position: relative;
    padding: 0px 0px 30px 0px;
    background-color: rgb(250, 250, 250);
    margin-bottom: 50px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    webkit-box-shadow: #B3B3B3 3px 3px 3px;
    -moz-box-shadow: #B3B3B3 3px 3px 3px;
    box-shadow: #B3B3B3 3px 3px 3px;
}
#content > div.major.invisible,
#content > div.minor.invisible {
    opacity: 0.5;
}
#content > div.major > h2 {
    background-color: #005596;
    border-bottom: 2px solid #eee;
    margin: 0px 0px 30px 0px;
    text-align: center;
    font-weight: 500;
    font-size:1.4em;
    color: rgb(250, 250, 250);
    padding: 3px;
}
#content > div.major > .content-body p.intro {
    padding: 0px 30px;
    color: #005596;
}
#content > div.minor > h2 {
    border-bottom: 1px solid #ccc;
    padding: 20px 0px 5px 5px;
    margin: 0px 20px 25px 20px;
    font-size: 1.3em;
    color: #B61616;
}
#content > div.minor > .content-body p,
#content > div.minor > .content-body div.container {
    padding: 0px 30px 10px 30px;
    font-size: 1em;
}
#content > div.major > .content-body *,
#content > div.minor > .content-body * {
	max-width: 100%;
}
#content > div.minor > .content-body em,
#content > div.major > .content-body em {
    font-size: .9em;
}
#content > div.minor > .content-body ul > li{
    padding: 5px 0px 5px 0px;
    margin-left: 15px;
}
#content > div.minor > .content-body table {
    border-collapse:collapse;
    font-size: 1em;
}
#content > div.minor > .content-body table > tbody > tr > td {
    border-bottom: 1px solid #eee;
}
#content > div.minor > .content-body table > tbody > tr:last-child > td {
    border-bottom: 0px;
}
#content > div.minor > .content-body img.full {
    width: 100%;
    padding: 0 20px;
    box-sizing: border-box;
}
#content > div.minor > .admin_controls,
#content > div.major > .admin_controls {
    position: absolute;
    width: inherit;
    padding: .2em;
    text-align: right;
    font-size: 1.6em;
    box-sizing: border-box;
    right: 0;
    cursor: pointer;
}
#content > div.major > .admin_controls {
    color: rgb(238, 238, 238);
}

/*****************
 * Admin Elements
 *****************/
#edit_modal_content_body {
    width: 100%;
    min-height: 300px;
}


/**************
 * Page Footer
 **************/
#footer, .push {
    bottom: 0;
    width: 100%;
    height: 50px;
    position: relative;
    background-color: #1b1b1b;
}
#footer > div.notice {
    background-color: #1a1a1a;
    box-sizing: border-box;
    text-align: center;
    font-size: .9em;
    color: #9A9A9A;
    padding: 15px;
    height: 50px;
}
#footer > .admin {
    box-sizing: border-box;
    padding: 14px 0px;
    position: absolute;
    text-align:center;
    font-size: 1.2em;
    color: #9A9A9A;
    height: 50px;
    width: 60px;
    bottom: 0;
    right: 0;
    cursor: pointer;
}

/**********************
 * IE Specific Styling
 **********************/
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
	a.nav-link {
 		padding-top: 15px;
	}
}

/************************
 * Responsive Adjustments
 ************************/
/* Small Screens */
@media screen and (max-width: 1024px) {
    #main,
    #header > .upper {
        padding-top: 20px;
    }
    #header > .upper > .logo { 
        left: 50%;
        position: absolute;
        transform: translateX(-50%);
    }
    #header > .upper > .logo > .title,
    #header > .upper > .logo > .tagline {
        display: none;
    }
    #header > .lower > table.nav-table {
        left: 0%;
        width: 100%;
    }
    #sidebar {
        display: none;
    }
    #content {
        float: left;
        margin-left: 5%;
        width: 90%;
    }
    .wrapper > .admin_controls_actions {
        transform: translate(-100%, 33px);
        -webkit-border-radius: 0px 0px 0px 4px;
        -moz-border-radius: 0px 0px 0px 4px;
        border-radius: 0px 0px 0px 4px;
        webkit-box-shadow: #B3B3B3 3px 3px 3px;
        -moz-box-shadow: #B3B3B3 3px 3px 3px;
        box-shadow: #B3B3B3 3px 3px 3px;
    }
}
/* Tiny Screens */
@media screen and (max-width: 768px) {
    #content {
        width: 100%;
        margin-left: 0px;
    }
    #content > div.minor > h2 {
	    margin: 0px 15px 25px 15px;
	}
	#content > div.minor > .content-body p,
	#content > div.minor > .content-body div.container {
	    padding: 0px 20px 10px 20px;
	}
}
/* Medium Screens */
@media screen and (min-width: 1024px) {
    #main,
    #header > .upper {
        width: 75%;
        left: 10%;
    }
    body {
        font-size: 15px;
    }
}
/* Tiny - Medium Screens */
@media screen and (max-width: 1280px) {
    #main,
    #header > .upper {
        width: 85%;
        left: 7.5%;
    }
}
/* Large Screens */
@media screen and (min-width: 1920px) {
    #main,
    #header > .upper {
        width: 60%;
        left: 20%;
    }
}
