* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    border: 0;
    outline: 0;
    font-size: 100%;
    background: transparent;
}

html {
    font-size: 16px
}

html,
body {
    height: 100%;
}

@media screen and (max-width: 550px) {
    html {
        font-size: 12px;
    }

    #header {
        font-size: 1.4rem;
    }
}

body {
    min-height: 300px;
    min-width: 200px;
    background-color: moccasin;
    color: black;
    font-family: Veranda, Arial, sans-serif;

}

a {
    text-decoration: none;
    color: blue;
}

a:visited {
    text-decoration: none;
    color: #93F;
}


#fullPageWrapper {
    min-height: 100%;
    position: relative;
    padding: 30px;
    max-width: 1200px;
    margin: 0px auto;
}

@media screen and (max-width: 550px) {
    #fullPageWrapper 
    {  
        padding: 0px;
    }
}


.clear {
    float: none;
    clear: both;
    height: 1px;
}

.hidden {
    display: none; 
}

.adminHidden
{
    display: none;
}

ul,
ol {
    margin: 10px 30px;
    font-size: 1.2rem;
    list-style-position: inside;
}

ul.shortItems,
ol.shortItems 
{
    margin: 10px 50px;
    font-size: 1.3rem;
    list-style-position: outside;
}

ul.twoColumns   /* only if there is sufficient room */
{  
    -webkit-columns: 2;
    -moz-columns: 2;
    columns: 2;
    list-style-position: inside;
  }

@media screen and (max-width: 550px) {
    ul,
    ol {
        margin: 10px 10px;     
    }

    ul.shortItems,
    ol.shortItems 
    {
        margin: 10px 30px;
        list-style-position: outside;
    }

    ul.twoColumns {
        columns: 1;
        -webkit-columns: 1;
        -moz-columns: 1;
      }
}

ul.listOfLinks
{
    list-style-type: none; /* Remove bullets */
}

.listOfLinks a
{
    padding: 5px;
    margin: 4px;
    display: inline-block;
    font-size: 1.5rem;
    font-weight: bold;

}

blockquote {
    margin: 20px 50px;
    font-style: italic;
    font-size: 1.3rem;
}

.borderedBox
{
    margin: 10px;
    border: 1px solid black;
    padding: 10px;
}

@media screen and (max-width: 600px) {
    blockquote {
        margin: 20px 20px;
        font-style: italic;
        font-size: 1.3rem;
    }
}

input[type="submit"]:disabled,
input[type="button"]:disabled,
input[type="text"]:disabled {
    opacity: 0.3;
}

.banner img {
    width: 100%;
}

#header {
    width: 100%;
    margin: 10px auto;
}

#breadcrumbs {
    display: inline-block;
    font-size: 1.3rem;
    margin-bottom: 20px;
}

#breadcrumbs span.Location {
    font-weight: bold;
    margin-left: 10px;
}

#accountBox {
    float: right;
    margin-left: 100px;
}

#accountBoxLinks,
#accountBoxImage {
    display: inline-block;
    vertical-align: top;
    margin-left: 10px;
}

#accountBoxLinks
{
    font-size: 1.3rem;
    line-height: 1.5rem;
}
#accountBoxLinks a
{
    display: block;
    margin: 5px 0px;
}

#accountBoxImage img {
    width: 80px;
}

#mainMenu {
    display: inline-block;
    width: 250px;
    vertical-align: top;
}

#mainContent {
    display: inline-block;
    vertical-align: top;
    width: calc(100% - 285px);
    margin-left: 30px;
    background-color: #fef3d9;
    min-width: 250px;
}

#mainContentNoMenu {
    margin-left: 0;
    width: 100%;
    display: inline-block;
    vertical-align: top;
    background-color: #fef3d9;
    min-width: 250px;
}

#showMenuButton {
    display: none;
}

@media screen and (max-width: 1000px) {
    #mainContent {
        margin-left: 0;
        width: 100%;
    }

    .banner
    {
        margin-top: 30px;
    }

    #showMenuButton {
        display: block;
        position: absolute;
        right: 0;
        top: 0;
        width: 50px;
        height: 50px;
        background-image: url('/css/icons/MenuIcon.png');

    }

    #showMenuButton.ActiveState {
        background-image: url('/css/icons//CloseIcon.png');
    }


    #mainMenu {
        width: 0px;
        position: absolute;
        right: 0px;
        top: 50px;
        /* room for close button */
        overflow-x: hidden;
        background: null;
    }

    #mainMenu.ActiveState {
        width: 250px;
    }

    .transformMenu {
        -webkit-transition: all 0.5s ease;
        -moz-transition: all 0.5s ease;
        -o-transition: all 0.5s ease;
        -ms-transition: all 0.5s ease;
        transition: all 0.5s ease;
    }

}

#nav {
    text-align: center;
    background-color: #DBD0BC;
}

#nav a {
    display: block;
    font-size: 1.3rem;
    padding: 5px;
    color: white;
    font-family: Arial, Helvetica, sans-serif;
    font-weight: bold;
}

.nav_active_1 a {
    background-color: #ebc07a;
    border: 2px solid #8C5251;
    border-right: 10px solid #ff0000;
}

.nav_inactive_2 a {
    background-color: #bbb1a2;
    border: none;
}

.nav_active_2 a {
    background-color: #7798ed;
    border-right: 10px solid #ff0000;
}

.pageTitle {
    color: white;
    border: 1px solid #39F;
    background-color: #CCAED0;
    padding: 8px;
    font-size: 2.5rem;
    text-align: center;
}

.pagetext {
    margin: 20px 50px 20px 50px;
}

@media screen and (max-width: 550px) {
    .pagetext {
        margin: 20px;
    }
}


.pagetext p {
    font-size: 1.3rem;
    margin-bottom: 10px;
}

.pagetext h2,
.moduleContent h1 {
    text-align: center;
    font-size: 2.2rem;
    margin: 30px 0 10px 0;
    font-family: Georgia, Garamond, serif;
}

.privacyPolicyText h2 {
    text-align: center;
    font-size: 2.2rem;
    margin: 30px 0 10px 0;
    font-family: Georgia, Garamond, serif;
    text-decoration: underline;
}

.pagetext h3 {
    text-align: center;
    font-size: 2.2rem;
    margin: 30px 0 10px 0;
    color: #E0B3EE;
    font-family: Georgia, Garamond, serif;
    font-style: italic;
}

.pagetext h4 {
    font-size: 1.5rem;
    margin: 30px 10px 5px 0;
}

.pagetext h5{
    font-size: 1.5rem;
    margin: 10px;
}

.pagetext h6{
    font-size: 1.1rem;
    margin: 10px;
}
.privacyPolicyText h4 {
    color: blue;
    font-weight: bold;
    ;
}

.footer {
    border-top: 2px;
    border-color: black;
    border-style: solid;
    padding: 10px 10px 40px 10px;
    text-align: center;
}

.footerText {
    font-size: 1.4rem;
    line-height: 1.6rem;
    font-weight: 600;
    margin-top: 8px;
}

.footerText a {
    font-weight: normal;
}

#lastEdited {
    font-style: italic;
    margin-top: 10px;
}

.boldText {
    font-weight: bold;
}

.accentText
{
    color: #175099;
}

.italicText {
    font-style: italic;
}

.colorHighlightText
{
    color:#4F1578;
}

.underlineText {
    text-decoration: underline;
}

.centerImage,
.centerText {
    text-align: center;
}

.indentedItalic {
    padding: 20px;
    font-style: italic;
}

.mentorDivider {
    height: 2px;
    width: 100%;
    background-color: #888888;
    margin: 20px 0 20px 0;
}

.mentorBox img {
    float: left;
    margin: 0px 40px 10px 0px;
    width: 150px;
}

.mentorLabel {
    font-weight: bold;
    margin-right: 10px;
    font-size: 1.3rem;
    line-height: 1.8rem;
}

.mentorInfo {
    font-size: 1.2rem;
    line-height: 1.4rem;
}

.retiring, .alertColor {
    color: red;
}

.fileLinkBox {
    display: inline-block;
    width: 200px;
    margin: 50px 10px 10px 10px;
    text-align: center;
}

.fileLinkLabel {
    display: inline-block;
    width: 100%;
    color: #ff0066;
    font-weight: bold;
    font-size: 1.8rem;
    margin-bottom: 10px;
    font-family: Georgia, Garamond, serif;
}

.fileLinkBox img {
    width: 150px;
}

.dropcontainer {
    margin: 5px 0px 0px 0px;
    position: relative;
    background-color: white;
    border: 1px solid black;
    border-radius: 4px;
    font-size: 1.2rem;
    color: #000;
    padding: 5px 20px;
    width: 100%;

    overflow: hidden;
    white-space: pre;
    text-overflow: ellipsis;
}

option {
    border: solid 1px #DDDDDD;
    padding: 4px 0px;

}

option.optional
{
    color: gray;
    font-style: italic;
}

label
{
    font-size: 1.3rem; 
    color: black;
}

input[type="file"] {
    display: block;
    background-color: white;
    font-size: 1.3rem;
    color: black;
    border: 1px solid black;
    border-radius: 4px;
    width: 100%;
}

textarea
{
    display: block;
    border: 1px solid black;
    background-color: white;
    font-size: 1.3rem;
    color: black;
    width: 100%;
}

input[type="button"], input[type="submit"], button {
    border: 1px solid black;
    border-radius: 4px;
    font-size: 1.3rem;
    padding: 5px 20px;
    background-color: #4CAF50;
    font-weight: bold;
    color: white;
}
button:disabled,
button[disabled]{
  opacity: 0.5;
}

button.blueButton
{
    background-color: #534caf;
}

input[type="text"], input[type="password"], input[type="email"], input[type="tel"], input[type="url"]  {
    border: 1px solid black;
    font-size: 1.3rem;
    padding: 5px 20px;
    background-color: white;
    width: 100%;
}

.FailedValidation input,
.FailedValidation select {
    border: solid 2px #bd1b1b !important;
}

.ValidationFailureMsg {
    color: white;
    background: #bd1b1b;
    display: inline-block;
    margin-top: 12px;
    font-weight: bold;
    border: 2px solid #bd1b1b;
    border-radius: 6px;
    min-height: 20px;
    padding: 5px 10px;
}

.FailedValidation div.ValidationFailureMsg {
    display: inline-block !important;
}

#privacyPolicyBox {
    background-color: #FFCC33;
    padding: 20px 50px;
    display: block;
    width: 100%;
    margin: 20px 0;
    font-weight: bold;
    font-family: Georgia, Garamond, serif;
    font-size: 1.6rem;
}

.privacyPolicyAgreementButton {
    border: 2px solid #e5a900;
    border-radius: 5px;
    font-size: 1.8rem;
    padding: 15px;
    background-color: blue;
    font-weight: bold;
    color: white;
    width: 100%;
}

/*
.privacyPolicyAgreementButton:hover{
    background: linear-gradient(#ffdd7f 5%, #ffbc00 100%);
    } */

.assignmentBox {
    margin: 20px 0px;
    border: 1px solid #000;
    background-color: white;
    width: 100%;
}

.assignmentTitle {
    background-color: rgb(202, 164, 240);
    color: white;
    font-weight: bold;
    padding: 5px;
    font-size: 1.2rem;
    border-bottom: 1px solid black;
}

.assignmentTitle a {
    margin: 0px 10px;
}

.assignmentLabel {
    color: black;
    font-weight: bold;
    font-size: 1.2rem;
    vertical-align: top;
    width: 150px;
}

.assignmentValue {
    color: #333333;
    font-size: 1.2rem;
    vertical-align: top;
}

img.greenCheckmark {
    width: 30px;
    margin: 2px 10px;
    vertical-align: middle;
    display: inline-block;
}

table.assignmentTable, table.paymentsTable, table.portfolioTable, table.studentTable{
    margin: 20px 0px;
    background-color: white;
    width: 100%;
    border-collapse: collapse;
}

table.assignmentTable th {
    text-align: left;
}
table.paymentsTable th, table.portfolioTable th, table.studentTable th{
    text-align: center;
}

.assignmentTable a, .portfolioTable a{
    font-size: 1.1rem;
}

.assignmentTable tr,
.assignmentTable td, 
.paymentsTable tr,
.paymentsTable th,
.paymentsTable td,
.portfolioTable tr,
.portfolioTable th,
.portfolioTable td,
.studentTable tr,
.studentTable th,
.studentTable td
 {
    border: 1px solid black;
    padding: 5px;
}

.studentTable tr
{
    width: calc(100% - 10px);
}
.studentTable td
{
    width: 20%;
}

.studentTable img
{
    width: calc(100% - 10px);
    height: auto;
}

#RequiredBookList li
{
    margin-bottom: 30px;
}

img.booklist
{
    vertical-align: top;
    float: left;
    margin-right: 30px;
}

img.museImage
{
    max-width: 400px;
    max-height: 400px;
}

.assignmentTable th {
    color: white;
    font-weight: bold;
    font-size: 1.3rem;
    background-color: #ffc776;
    padding: 5px 5px 5px 60px;
    height: 50px;
    /* implemented as a min-height */
}

.paymentsTable th {
    color: white;
    font-weight: bold;
    font-size: 1.2rem;
    background-color: #096843;
    padding: 5px;
    height: 50px;
    /* implemented as a min-height */
}

.portfolioTable th, .studentTable th {
    color: white;
    font-weight: bold;
    font-size: 1.2rem;
    background-color: #093268;
    padding: 5px;
    height: 50px;
    /* implemented as a min-height */
}

.assignmentTable th.completed {
    background-image: url('/images/checklist_green_check_small.png');
    background-position-y: center;
    background-position-x: 10px;
    background-repeat: no-repeat;
}

.assignmentTable th.required {
    background-image: url('/images/ToDoIcon_small.png');
    background-position-y: center;
    background-position-x: 10px;
    background-repeat: no-repeat;
}

.assignmentTable th a {
    color: #7575fc;
}

.assignmentTable button {
    color: white;
    font-weight: bold;
    font-size: 1.2rem;
    background-color: #7575fc;
    border: 1px solid black;
    border-radius: 3px;
    padding: 2px 8px;
}

button.deleteButton
{
    background-color: #c2174a;
    padding: 5px 10px;
}

.assignmentTable button.deleteButton
{
    margin-left: 30px;
    vertical-align: top;
}

.ModuleTitle {
    text-align: center;
}

img.TitleBanner {
    width: 100%;
}

img.CRTPhoto {
    width: 100%;
    max-width: 500px;
}

#TableOfContents
{
    text-align: center;
    font-size: 2.2rem;
    margin: 30px 0 10px 0;
    font-family: Georgia, Garamond, serif;
}
.TOCReturnLink {
    font-size: 1.3rem;
    font-weight: bold;
    color: #2171c2;
    display: block;
    text-align: center;
    margin-top: 20px;
}

.moduleContent h2
{
    text-align: center;
    font-size: 1.7rem;
    margin: 4px 10px 15px 10px;
    color: #004C4C;
    font-weight: bold;
    font-family: Veranda, Arial, sans-serif;
}
ol.tableOfContents{
    font-weight: bold;
    font-size: 1.2rem;
}

.sideBar
{
    border: 3px solid #2e2101; 
    margin: 10px 0; 
    padding:10px; 
    background: #fff9ec;
}
.moduleContent img {
    max-width: 90%;
}

.moduleContent li {
    padding: 4px;
}

.moduleContent table
{
   /* margin: auto 0;
    display: inline-block; */
    table-layout: fixed;
    width: 100%;
    margin: 20px 0;
}
.moduleContent td img
{
    width: 150px;
}

.moduleContent span.twoColumns
{
    display: inline-block;
    width: 45%;
    vertical-align: top;;
}

.ModuleLinks {
    font-size: 1.3rem;
    font-weight: bold;
}

img.TextWrap {
    float: left;
    max-width: 50%;
    margin: 0px 25px 10px 0;
}


@media screen and (max-width: 600px) {
    img.TextWrap {
        float: none;
        max-width: 90%;
        margin: 10px;
    }
}

.account_title
{
    font-weight: bold;
    font-size: 1.2rem;
}

.account_info
{
    margin-left: 10px;
    font-size: 1.1rem;
}

.statistics
{
    font-size: 1.1rem;
    color: black;
    font-style: italic;
    vertical-align: middle;
    display: inline-block;
}

.deleteIcon
{
    width: 35px;
}
.editIcon
{
    width: 35px;
    margin-left: 20px;
    vertical-align: middle;
}
.viewIcon
{
    width: 35px;
    margin-left: 20px;
    vertical-align: middle;
}

audio
{
    width: 100%;
    height: 60px;
    margin: 5px 0 25px 0;
}

audio::-webkit-media-controls-enclosure {
    border-radius: 30px;
    border: 1px solid black;
    background-color: #f3e0ff;
}