.fg_r { color: #bf0a30 !important;}
.fg_g { color: #0ba51d !important;}
.fg_b { color: #002868 !important;}
.fg_y { color: #ffd700 !important;}
.fg_w { color: #ffffff !important;}
.fg_e { color: #16161d !important;}

.bg_r { background-color: #bf0a30 !important;}
.bg_g { background-color: #0ba51d !important;}
.bg_b { background-color: #002868 !important;}
.bg_y { background-color: #ffd700 !important;}
.bg_w { background-color: #ffffff !important;}
.bg_e { background-color: #16161d !important;}

.border-bottom-thick { border-bottom: 8pt solid; }
.border-bottom-thin { border-bottom: 2pt solid;  }
.border_r { border-color: #bf0a30 !important;}
.border_g { border-color: #0ba51d !important;}
.border_b { border-color: #002868 !important;}
.border_y { border-color: #ffd700 !important;}
.border_w { border-color: #ffffff !important;}
.border_e { border-color: #16161d !important;}

.main-left-col { padding-right: 2em; }

@font-face {
    font-family: HelveticaNeueLight;
    font-display: fallback;
    src: url("/static/fonts/HelveticaNeueLight.otf") format("opentype");
}
@font-face {
    font-family: HelveticaNeueThin;
    font-display: fallback;
    src: url("/static/fonts/HelveticaNeueThin.otf") format("opentype");
}
@font-face {
    font-family: HelveticaNeueThinItalic;
    font-display: fallback;
    src: url("/static/fonts/HelveticaNeueThinItalic.otf") format("opentype");
}
@font-face {
    font-family: HelveticaNeueUltraLight;
    font-display: fallback;
    src: url("/static/fonts/HelveticaNeueUltraLight.otf") format("opentype");
}
@font-face {
    font-family: HelveticaNeueUltraLightItalic;
    font-display: fallback;
    src: url("/static/fonts/HelveticaNeueUltraLightItalic.otf") format("opentype");
}
@font-face {
    font-family: HelveticaNeueBlack;
    font-display: fallback;
    src: url("/static/fonts/HelveticaNeueBlack.otf") format("opentype");
}
@font-face {
    font-family: HelveticaNeueMedium;
    font-display: fallback;
    src: url("/static/fonts/HelveticaNeueMedium.otf") format("opentype");
}

div.tagline {
    font-family: HelveticaNeueThinItalic, sans-serif;
    font-size: x-large;
}
div.footer {
    border-top: 1px solid #bf0a30;
    margin-top: 2em;
    padding-top: 0.5em;
    font-family: HelveticaNeueUltraThin, sans-serif;
}
div.top_nav {
    margin-top: 0.5em;
    font-family: HelveticaNeueMedium, sans-serif;
    font-size: large;
}
div.title {
    font-family: HelveticaNeueBlack, sans-serif;
    font-size: 3rem;
}

strong,b {
    font-weight: 700;
}

div.toc {
    margin-bottom: 0.5em;
    padding-bottom: 0.5em;
}

div.list-letter a {
    font-family: HelveticaNeueBlack, sans-serif;
    font-size: 1.5rem;
}

th.clist-name { width: 70%; }
td.clist-name { width: 70%; }
th.clist-faved { width: 4em; font-size: 0.5rem; }
td.clist-faved { width: 4em; font-size: 0.5rem; }
th.elist-start { width: 20%; }
td.elist-start { width: 20%; }
th.elist-end { width: 20%; }
td.elist-end { width: 20%; }
th.elist-image { width: 30%; }
td.elist-image { width: 30%; }
td.elist-community { width: 10%; }
.fave-star {
    cursor: pointer;
}

div.community_subtitle {
    font-family: HelveticaNeueThin, sans-serif;
    font-size: 2rem;
}


body {
    font-family: "HelveticaNeueMedium", sans-serif;
    font-optical-sizing: auto;
    font-weight: 300;
    font-style: normal;
    font-variation-settings: "wdth" 100;
    /*color: #16161d;*/
    color: #002868;
    background-color: #ffffff;
    /*padding-left: 2em;*/
    /*padding-right: 2em;*/
}

.mypi-center {
    text-align: center;
}

.mypi-right {
    text-align: right !important;
}


h1{
    font-family: "HelveticaNeueThinItalic", sans-serif;
}

h2, h3, h4, h5, h6 {
    font-family: "HelveticaNeueBlack", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
}

h1.title {
    font-weight: 600;
    margin-left: 12pt;
    font-size: xxx-large;
}

h2 {
    font-weight: 500;
    margin-left: 12pt;
    font-size: xx-large;
}

h3 {
    font-weight: 500;
    font-size: x-large;
}

div.mypi-full-width {
    padding: 2em;
}

a {
    text-decoration: underline;
    text-decoration-color: #bf0a30;
    color: #bf0a30
}


/* LARGE */
@media (min-width: 1024px) {

    body {
        min-height: 75rem;
        /*padding-top: 100pt;*/
    }

    img.header-logo {
        margin-left: 60pt;
        width: 120px;

    }
}

/* MEDIUM */
@media (min-width: 769px) and (max-width: 1024px) {

    .nav-link {
        font-size: smaller;
    }

    .mypi-nav-dropdown-item {
        font-size: smaller;
    }

    .btn-outline-navbar {
        font-size: smaller;
    }

}

/* SMALL AND MEDIUM */
@media (max-width: 1024px) {
    body {
        min-height: 75rem;
        /*padding-top: 80pt;*/
    }

    img.header-logo {
        margin-left: 0;
        width: 80px;

    }
}

/* SMALL ONLY */
@media (max-width: 768px) {
    div.needs-line-at-small {
        padding-bottom: 2em;
        margin-bottom: 2em;
        border-bottom: 1px dashed;
    }

    div.needs-line-at-small:last-of-type {
        padding-bottom: 1em;
        margin-bottom: 1em;
        border: none;
    }

    .resource_name {
        margin-bottom: 0.5em;
    }
}

.logo-svg {
  width: 100%;
  height: auto;
}

.base-logo {
    max-width: 100%;
    width: 300px;
    height: auto;
}

#loading-overlay {
    position: absolute;
    width: 100%;
    height:100%;
    left: 0;
    top: 0;
    display: none;
    align-items: center;
    background-color: #000;
    z-index: 999;
    opacity: 0.5;
}
.loading-icon{ position:absolute;border-top:2px solid #fff;border-right:2px solid #fff;border-bottom:2px solid #fff;border-left:2px solid #767676;border-radius:25px;width:25px;height:25px;margin:0 auto;position:absolute;left:50%;margin-left:-20px;top:50%;margin-top:-20px;z-index:4;-webkit-animation:spin 1s linear infinite;-moz-animation:spin 1s linear infinite;animation:spin 1s linear infinite;}
@-moz-keyframes spin { 100% { -moz-transform: rotate(360deg); } }
@-webkit-keyframes spin { 100% { -webkit-transform: rotate(360deg); } }
@keyframes spin { 100% { -webkit-transform: rotate(360deg); transform:rotate(360deg); } }

.event_cell_host {
    border-bottom: 2px solid #bf0a30;
    padding-bottom: 0.25em;
    margin-top: 0.5em;
    margin-bottom: 1em;
}

.event_cell_body {
    margin-top: 0.25em;
}
