body {
    font-family: "Poppins", serif;
    font-weight: 400;
    background-color: rgba(254, 254, 254, 1);
/*     background-color: gainsboro; */
    color: #04070D;
}

::selection {
  background: #C41230;
  color: #fff;
}

.monospace {
    font-family: "Roboto Mono", sans-serif
}

h1 {
    font-family: "Paytone One", serif;
    font-weight: 400;
    font-style: normal;
}
h2,h3 {
    font-weight: 600;
}

.navbar {
    background-color: #c41230 !important;
}
.navbar-brand {
/*     border: 1px solid red; */
/*     padding-top: 10px; */
    margin-top: 8px;
}
.navbar-nav {
    margin-top: 4px;
}

pre {
    color: #3E3F3A;
    background-color: #d3d3d385;
    padding: 0.5rem;
/*     font-weight: bold; */
}

/*a, a:hover {
    color: inherit;
}*/

a {
    color: #C41230;
/*     padding: 2px; */
}
a:hover {
    color: #930d26;
}

.page a:hover {
/*    text-decoration: none;
    border-bottom: none;
    background-color: #81A69F;
    color: white;
    border-radius: 5px;*/
}

/* for list-groups nested within a list-group-item, reset the bottom margin */
.list-group-item > .list-group {
    margin-bottom: 0px;
}

/* for list-group-items nested within a list-group-item, reset the bottom
   padding of the last item, b/c the containing item has paddimg already 
 */
.list-group-item .list-group-item:last-child {
    padding-bottom: 0px;
}

.list-group-item {
    border: none;
}


.icon-label {
    margin-left: 10px;
}

.highlighttable pre {
    /* Removes bootstrap default margin-bottom */
    margin-bottom: 0px;
}

.highlighttable {
    /* Adds them margin-bottom to highlightable instead of <pre> */
    margin-bottom: 11px;
}

.highlighttable {
    width: 100%;
}

#categories ul, #tags ul {
    list-style: none;
    padding: 0;
    margin-left: 0;
}

#banner {
/*     height: 90vh !important; */
    background-repeat: no-repeat;
    background-position: center center;
    background-attachment: scroll;
    background-size: cover; /*100% auto;*/
/*     background-color: black; /*#C4C4C4;*/ */
    margin: 0 0 20px;
/*     padding: 70px 0; /*controls padding around inner text*/ */
    position: relative;
}

#banner .container {
    max-width: 90%;
}

#banner .copy {
    background: none repeat scroll 0 0 rgba(44, 62, 80, 0.7);
    display: inline;
    float: right;
    text-align: right;
    max-width: 900px;
    padding: 20px;
    padding-left: 40px;
    padding-right: 40px;
    position: relative;
    z-index: 1;
}

#banner h1 {
    color: #fbff12;
    font-size: 16rem;
    font-size: 18vw;
/*     font-stretch: condensed; */
/*     font-weight: 700; */
/*     line-height: 0.9; */
    margin: 0;
/*     text-transform: uppercase; */
/*     border-bottom: 1px solid #CCC; */
    text-shadow: 5px 5px #000;
}
#banner p {
    border: none;
    color: white;
    text-shadow: 2px 2px #000
}
#banner .intro {
    color: #fff;
    font-size: 8rem;
    font-size: 3vw;
    font-weight: 700;
/*     line-height: 1.33; */
/*     opacity: 0.75; */
}
.banner-title {
/*     background: rgba(0.12,0.14,0.16,0.7); */
/*     backdrop-filter: blur(5px); */
/*     -webkit-backdrop-filter: blur(5px); */
}

#footer-well {
    margin-bottom: 0px;
}
footer img {
    max-width: 175px;
    clear: both;
}

/*Code horizontal scrolling?*/
.highlight pre * {
  white-space: nowrap;    // this sets all children inside to nowrap
}

.highlight pre {
  overflow-x: auto;       // this sets the scrolling in x
}

.highlight pre {
  white-space: pre;       // forces <code> to respect <pre> formatting
}
tr:target {
    background-color: #FFFFCC !important;
    border: 3px solid #E74C3C;
/*     font-weight: bold; */
}

/** COURSE SCHEDULE **/
.calendar li {
    line-height: 1.2rem;
}
tr.bg-info {
    background-color: #DFF0D8 !important;
}
.calendar-date {
    font-size: 95%;
}
.lecture-title {
    font-weight: 800;
    font-size: 120%;
    line-height: 0.8rem;
}
.calendar-activity dt {
    font-weight: 600;
}
/*.calendar-activity {
    padding-bottom: 4px;
}*/
div.pill-box {
    margin-bottom: 6px;
}
a.schedule-badge {
    border: none !important;
}
a.schedule-badge:hover {
    background: #FFFFCC;
}
.calendar-activity span.special {
    font-style: italic;
    color: #120511;
}
.calendar-video, .calendar-slides, .calendar-notes {
    text-align: center;
}
tr:target, div:target {
    background-color: #FFFFCC;
    border: 3px solid #C41230;
}
/*.table>thead>tr {
    background-color: #efeff3;
}*/
.table>thead>td {
    padding-top: 6px;
    padding-bottom: 6px;
}

.anchor {
    text-decoration: none;
    border: none !important;
    line-height: 1;
}
.anchor-icon {
    vertical-align: middle;
    visibility: hidden;
}
.calendar-date:hover .anchor-icon {
    visibility: visible;
}

/*li.primary {
    background-color: #D95A4E !important;
    color: white;
    border-radius: 2px;
}*/

tr.noclass {
    background-color: #e67d80 !important;
}
tr.students {
    background-color: #c41230 !important;
}

.calendar-section {
    vertical-align: middle !important;
    writing-mode: sideways-lr;
    width: 4%;
    text-align: center;
    font-weight: bold;
    color: white;
}
td.calendar-section {
    background: rgba(44, 62, 80, 0.75) !important; /* #2C3E50 */
    border: 1px solid #ecf0f1 !important;
    font-size: 105%;
    text-transform: uppercase;
}
td.calendar-section div {
/*     width: 50px; */
/*     height: a; */
/*     transform: rotate(-90deg); */
    writing-mode: sideways-lr;
/*     -webkit-transform: rotate(-90deg); /* Safari/Chrome */ */
/*     -moz-transform: rotate(-90deg); /* Firefox */ */
/*     -o-transform: rotate(-90deg); /* Opera */ */
/*     -ms-transform: rotate(-90deg); /* IE 9 */ */
}
/*.calendar-activity a[href $='.pdf'] {
    padding-right: 18px;
    background: transparent url(../../images/pdf.gif) no-repeat center right;
}*/
.calendar-activity .optional {
    font-weight: 600;
}
/*.calendar-activity b {
    font-size: 120%;
    line-height: 1;
}*/
.calendar-activity .private {
    font-weight: bold;
    background: #D95A4E !important; /* #D95A4E */
    color: white;
    padding-top: 1px;
    padding-bottom: 1px;
    border-radius: 2px;
}
.calendar-activity span.special {
    font-style: italic;
    color: #e03616;
}
.table ul {
    padding-left: 25px;
}

.calendar-date {
/*     width: 12%; */
    font-size: 95%;
}
.calendar-video, .calendar-slides, .calendar-notes {
    text-align: center;
}

.anchor {
    text-decoration: none;
    border: none !important;
    line-height: 1;
}
.anchor-icon {
    vertical-align: middle;
    visibility: hidden;
}
.calendar-date:hover .anchor-icon {
    visibility: visible;
}

span.best-project {
    background-color: #555555;
    border-radius: 2%;
    color: #F1C40F;
    padding: 1px;
    /*font-size: 110%;*/
}
span.primary {
/*     background-color: #fbff1230; */
}
.readings a {
    font-weight: 500;
}
ul.readings {
    list-style-type: disclosure-closed;
}


.fa-crown {
    color: #fbff12;
    /*font-size: 110%;*/
}
.fa-stack {
    font-size: 75%;
}

li.secondary {
/*     color: #75776D; */
}
div.assignments {
    padding: 2px;
    margin-top: 4px;
}
div.assignments span {
    font-size: 110%;
}
.info {
    background-color: #81A69F !important;
    color: white;
    font-weight: 600;
}
.info a {
    color: white !important;
}

.warning {
    color: white;
    background-color: #c41230 !important;
    font-weight: 600;
}
.warning a {
    color: white !important;
}

i.trigger-badge {
    color: red;
}
a.schedule-badge {
    border: none !important;
}
a.schedule-badge:hover {
    background: #FFFFCC;
}

/*.navbar .nav {
    font-size: 16px;
}*/
.navbar {
    font-weight: 800;
}
.navbar-right i {
    font-size: 135%;
}

.course-info h4 {
    font-weight: bold;
}
.course-info-list li {
    margin-left: 30px;
}
.course-info ul {
    min-height: 75px;
}
p.acknowledgements {
    text-justify: none;
    font-size: 100%;
/*     line-height: 10pt; */
/*     margin-bottom: 10px; */
/*     padding-bottom: 0px; */
}
ul.sponsors {
/*     border: 1px solid red; */
    min-height: 50px;
    margin-top: 10px;
    margin-bottom: 0px;
    padding-bottom: 0px;
}
.sponsors li {
    list-style: none;
    padding: 0;
    margin-left: 0;
    margin-bottom: 10px;
    padding-bottom: 0px;
}
.sponsors img {
    max-width: 130px;
    height: auto;
}

/*.showcase .row {
    padding-top: 30px;
    padding-bottom: 30px;
}*/
.showcase img {
    border: 1px solid #3E3F3A;
    max-width: 100%;
    height: auto;
}
}
.showcase h3 {
    font-size: 150%;
    margin-top: 0px;
}

/** PROJECT **/


div.project-topic h3::before {
  content: "» ";
}

/** COURSE PEOPLE **/
table.course-personnel {
    width: 100%;
    line-height: 1.3;
}
.course-personnel img {
    border-radius: 50%;
}
.course-personnel th {
    font-weight: bold;
    text-align: left;
}
.course-personnel td {
    vertical-align: middle !important;
    padding: 2px;
}
.personnel-photo {
    width: 14%;
    text-align: center;
}
.personnel-name {
    width: 31%;
}
.personnel-hours {
    width: 25%;
}
.personnel-location {
    width: 30%;
}
table.instructors img {
/*     max-width: 100px; */
    max-width: 80px;
}
/*table.tas img {
    max-width: 80px;
}*/
    

@media (max-width: 600px) {
    #banner h1 {
        font-size: 16rem;
        font-size: 17vw;
    }
    #banner .intro {
        font-size: 20px;
    }
    .navbar-brand {
        margin-top: 4px;
    }
    span.best-project {
        display: block;
        text-align: center;
        margin-top: 12px;
    }
    h1 {
        font-size: 180%;
    }
    .table {
        font-size: 80%;
    }
    .table > thead > tr > th, .table > tbody > tr > th, .table > tfoot > tr > th, .table > thead > tr > td, .table > tbody > tr > td, .table > tfoot > tr > td {
        padding: 4px !important;
    }
    .table ul {
        margin-left: 10px;
        padding-left: 2px;
        font-size: 90%;
    }
    .table li {
        margin-bottom: 10px;
    }
    .calendar-activity b {
        font-size: inherit;
    }
    .anchor {
        display: block;
    }
    
/*    .calendar-activity a[href $='.pdf'] {
        padding-right: 10px;
        background: transparent url(../../static/images/pdf.gif) no-repeat center right;
        background-size: 8px 8px;
    }*/
    .course-info p {
        font-size: 95%;
        padding-bottom: 10px;
    }
    #footer-well {
        font-size: 85%;
    }
    footer img {
        max-width: 75% !important;
    }
    footer div.well {
/*         border: 1px solid red; */
        padding: 10px;
    }
    .showcase img {
        margin-bottom: 10px;
    }
    table.instructors img {
        max-width: 60px;
    }
    #banner {
        height: 50vh !important;
        background-position: center center !important;
    }
}
        
}

@media (max-width: 1024px) {
    .sponsors img {
        max-width: 150px;
        height: auto;
    }
    .calendar li {
        line-height: 0.95rem;
    }
    main.page {
        margin-top: 3rem;
    }
    table.instructors img {
        max-width: 90px;
    }
    table.tas img {
        max-width: 70px;
    }
    .awards img {
        max-width: 90px;
        height: auto;
    }
    .calendar-date {
        min-width: 15%;
    }
    footer img {
        max-width: 100px;
    }
}
@media (max-width: 600px) {
    table {
        font-size: 80%;
    }
    .calendar-date {
        min-width: 15%;
    }
    table.instructors img {
        max-width: 60px;
    }
    table.tas img {
        max-width: 40px;
    }
}
