/*--------------------------------------------------------
    FONT ASSIGNMENTS
--------------------------------------------------------*/

:root {
    --header-height: 218px;
    --footer-height: 98px;
}

body {
    font-family: "Open Sans", arial, sans;
    overflow-x: clip;
}

p {
    color: #202123;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    font-family: 'Open Sans', sans-serif;
}

.row {
    margin-right: 0;
    margin-left: 0;
}


/*--------------------------------------------------------
    ALIGNMENT
--------------------------------------------------------*/

.txt-c {
    text-align: center;
}

.txt-l {
    text-align: left;
}

.txt-r {
    text-align: right;
}


/*--------------------------------------------------------
    H1 - H6
--------------------------------------------------------*/

h1,
h2,
h3 {
    margin: 0px;
    padding: 0px;
}

h1 {
    color: #2C2C2C;
    font-size: 30px;
    font-weight: 600;
    letter-spacing: -1px;
    margin: 10px 0 20px 0;
    text-transform: uppercase;
    font-family: 'Open Sans', sans-serif;
}

h2 {
    color: #ffffff;
    font-size: 20px;
    font-weight: bold;
    margin: 10px 0 10px 0;
    font-family: 'Open Sans', sans-serif;
}


/*--------------------------------------------------------
    LINKS
--------------------------------------------------------*/

a {
    color: #990000;
}

a:hover {
    color: #EF373B;
}

a.black {
    color: #000000;
}

a.white {
    color: #ffffff;
}

a.white:hover {
    color: #cecece;
}


/*--------------------------------------------------------
    IMAGES
--------------------------------------------------------*/

img {
    border: 0px;
    max-width: 100%;
}


/*--------------------------------------------------------
    MODAL LOGIN
--------------------------------------------------------*/

.modal-content {
    width: 280px;
    border-radius: 0;
}

.modal-dialog {
    display: block;
    width: 19%;
    text-align: center;
}

.modal-body {
    padding: 10px 20px 20px;
}

.modal-title {
    text-align: center;
}

input[type="text"],
input[type="password"] {
    margin: 5px 0 5px;
    border: 1px solid #737373;
    padding: 5px 0;
    text-indent: 5px;
}


/*--------------------------------------------------------
    HEADER
--------------------------------------------------------*/

/* #header-container {
    background-color: #F8F8F8;
} */

#header-container #logo-wrap {
    padding-block: 15px;
}

#main-menu {
    margin-top: 15px;
}

#left-header {
    padding-top: 25px;
}

#left-header .search {
    float: left;
    width: 100%;
    border: 1px solid #6A6E72;
}

input#q {
    border: none;
    background: transparent;
    width: 80%;
    margin: 10px 0;
    float: left;
    text-indent: 15px;
}

input#q:is(:focus, :focus-visible) {
    outline: 0;
}

input.search-button {
    background-image: url('../images/search-icon.png');
    border: none;
    width: 28px;
    background-color: transparent;
    height: 28px;
    margin: 7px 10px;
    float: right;
}

.social {
    float: right;
    margin: 15px 0;
}

#main-menu ul.nav.navbar-nav.men-level- {
    background-color: #29AAE3;
    width: 100%;
    padding-left: 4px;
}

#nav_menu>ul {
    display: flex;
    justify-content: space-between;
    float: none;
}

#nav_menu>ul>li>a {
    padding-inline: 5px;
}

.nav>li>a:focus, .nav>li>a:hover {
    background-color: #0ba0df;
}

.nav .open>a, .nav .open>a:focus, .nav .open>a:hover {
    background-color: #0ba0df;    
}

#nav_menu a {
    color: #fff;
    /* text-transform: uppercase; */
    font-size: 16px;
    font-weight: bold;
    padding-top: 20px;
    padding-bottom: 20px;
}

/* #nav_menu a:focus,
#nav_menu a:hover {
    color: #333333;
} */

.navbar-nav .open>a,
.navbar-nav .open>a:focus,
.navbar-nav .open>a:hover {
    color: #333333;
}

.dropdown-menu {
    background: #EEEEEE;
}

.dropdown-menu>li>a {
    color: #333 !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    font-size: 15px !important;
    text-transform: none !important;
}

.main-admin-nav>li>a {
    color: #777;
}


/*--------------------------------------------------------
    MOBILE MENU
--------------------------------------------------------*/

#mobile-menu>li#triggerClose {
    color: #fff;
    float: right;
    display: inline;
    font-size: 22px;
    cursor: pointer;
    transform: rotate(45deg);
}

#mobileMenuWrapper #mobile-menu a {
    color: #ffffff;
    margin: 10px 0 0 0;
    font-size: 16px;
}

#mobileMenuWrapper #mobile-menu a:is(:hover, :focus) {
    text-decoration: none;
}

#mobileMenuWrapper ul.mDropdown {
    margin: 15px 15px 0;
    display: none;
}

#mobileMenuWrapper .mDropdown.open {
    display: block;
}

#mobile-menu a {}

#mobile-toggle {
    border: none;
    background: transparent;
    box-shadow: none;
    cursor: pointer;
}

#mobile-menu-col {
    top: 10px;
    right: 20px;
    float: right;
    position: relative;
}

#mobile-logo {
    width: 40%;
    float: left;
    margin-top: 27px;
    margin-bottom: 20px;
}

#mobile-logo a {
    margin: 0 !important;
}

#mobile-logo svg#logo {
    width: 250px;
    max-width: 250px;
}

svg#burger {
    width: 35px;
    height: 35px;
}


/*.caret {
    border-top: 4px solid #fff;
}*/


/*--------------------------------------------------------
    INDEX / MAIN BODY
--------------------------------------------------------*/

#main-top {
    margin-top: 35px;
    margin-bottom: 15px;
}

#main-container {
    padding-bottom: 50px;
}

#main-container h1 {
    padding-bottom: 5px;
    border-bottom: 5px solid #6A6E72;
}

#login-wrap {
    padding-right: 0;
}

#login-wrap #login {
    height: 247px;
    background-color: #E8E8E8;
}

#login-wrap h1 {
    background-color: #E8E8E8;
    margin: 0;
    text-align: center;
    text-transform: uppercase;
    color: #333333;
    font-weight: bold;
    padding: 15px 0;
}

#login-wrap input[type="text"],
#login-wrap input[type="password"] {
    border: 1px solid #686868;
    background: transparent;
    padding: 10px 45px 10px 15px;
    margin: 0 25px;
    margin: 15px 25px 0;
    color: #333333;
}

#login-wrap input[type="submit"] {
    float: left;
    background-color: #6A6E72;
    border: none;
    color: #fff;
    text-transform: uppercase;
    font-size: 26px;
    font-weight: bold;
    padding: 5px 60px;
    margin: 15px 25px;
}

#login-wrap a.forgot-pass {
    color: #000;
    text-decoration: underline;
    font-style: italic;
    font-size: 16px;
}

/* Slide */

#slide-wrap {
    padding-left: 0;
}

#slide-wrap .carousel-caption {
    float: left;
    padding: 25px 15px;
    right: 0;
    left: 0;
    text-align: left;
    position: static;
    width: 50%;
    height: 310px;
    background-color: #6A6E72;
}

#slide-wrap .carousel-caption p:first-of-type {
    color: #fff;
    font-size: 22px;
    font-weight: 600;
    /*padding: 10px 10px 10px;*/
}

#slide-wrap .carousel-caption a {
    color: #fff;
    font-size: 18px;
    text-shadow: none;
    padding: 10px 10px;
    float: left;
    font-weight: bold;
    text-decoration: none;
}

#slide-wrap .carousel-caption p {
    color: #fff;
    font-size: 18px;
    text-shadow: none;
    /*padding: 0 10px;*/
}

#slide-wrap .carousel-inner>.item>a>img,
#slide-wrap .carousel-inner>.item>img {
    float: right !important;
    width: 50%;
}

#slide-wrap .carousel-control {
    display: none;
    background: transparent !important;
}

#slide-wrap ol.carousel-indicators {
    width: 50%;
    left: 0;
    margin: 0;
    bottom: 5px;
}

#slide-wrap .carousel-indicators li {
    width: 17px;
    height: 17px;
    background-color: #4F5459;
    border: none;
}

#slide-wrap .carousel-indicators li.active {
    background-color: #29AAE3;
    margin: 1px;
}

#slide-wrap .carousel-indicators li:not(:last-of-type) {
    margin-right: 5px;
}

.resources ul {
    color: #29AAE3;
    font-size: 26px;
    padding-left: 46px;
}

.resources ul li a {
    color: #2C2C2C;
    font-size: 20px;
    font-weight: 600;
    letter-spacing: -1px;
    position: relative;
    top: -2px;
}

.event-item {
    padding-bottom: 10px;
    float: left;
}

h3.event-title {
    line-height: 18px;
}

a.ev-title-link {
    font-size: 18px;
    font-weight: bold;
    text-transform: uppercase;
    color: #2C2C2C;
}

span.event-date {
    width: 100%;
    float: left;
    color: #29AAE3;
    font-weight: 600;
}

span.event-blurb {
    float: left;
    font-size: 16px;
    margin: 10px 0;
    color: #2C2C2C;
}

#gcal table.fc-header {
    border-radius: 4px;
    background-color: #000;
}

#gcal .fc-header-title h2 {
    margin-top: 13px;
}

#gcal span.fc-button.fc-button-prev.fc-state-default.fc-corner-left.fc-corner-right,
#gcal span.fc-button.fc-button-next.fc-state-default.fc-corner-left.fc-corner-right {
    background: transparent;
    color: #fff;
    margin-top: 7px;
    box-shadow: none;
}

#gcal span.fc-button.fc-button-today.fc-state-default.fc-corner-left.fc-corner-right.fc-state-disabled {
    display: none;
}

#gcal .fc-widget-header,
.fc-widget-content {
    border: none;
}

#gcal .fc-grid .fc-other-month .fc-day-number {
    display: none;
}

#gcal .fc-content {
    margin-top: 20px;
}

#gcal .fc-state-highlight {
    /*background: #E71820;
    color: #fff;*/
}

#gcal .fc-grid .fc-day-number {
    float: none;
    padding: 7px 5px;
    margin: 4px;
    font-size: 18px;
    text-align: center;
    font-weight: bold;
    background-color: #E1E1E1;
    border: 1px solid #CCCCCC;
}


/*--------------------------------------------------------
    CSS STYLE FOR INNER PAGES
--------------------------------------------------------*/

#main-container-page {
    min-height: calc(100vh - var(--header-height) - var(--footer-height));
    padding-top: 20px;
    padding-bottom: 20px;
    padding-inline: 0;
}


/*#page {
    color: #cbcbcb;
    padding-top: 30px;
    padding-bottom: 50px;
}
#page h2 {
    margin: 0 0 25px 0;
}*/


/*--------------------------------------------------------
    FOOTER
--------------------------------------------------------*/

#footer-container {
    background-color: #29AAE3;
}

#footer-wrap p,
#footer-wrap a {
    text-align: center;
    color: #fff;
    padding-top: 20px;
    padding-bottom: 20px;
}


/*--------------------------------------------------------
    MEDIA QUERY
--------------------------------------------------------*/

@media (min-width: 1000px) {
    .container {}
}

@media (min-width: 990px) and (max-width: 1199px) {
    .container {}
    #main-menu {
        display: none;
    }
    input#q {
        width: 75%;
    }
    #login-wrap {
        display: none;
    }
    #slide-wrap {
        padding-left: 15px;
        width: 100%;
    }
    .carousel-caption {
        width: 356px;
    }
    .resources ul {
        padding-left: 30px;
    }
    ol.carousel-indicators {
        width: 74%;
    }
}

@media (min-width: 768px) and (max-width: 990px) {
    .container {}
    #logo-wrap {
        padding-top: 20px;
    }
    #slide-wrap {
        padding-left: 15px;
    }
    .carousel-inner>.item>a>img,
    .carousel-inner>.item>img {
        width: 60%;
    }
    .carousel-caption {
        width: 276px;
        height: 232px;
    }
    .carousel-caption p:first-of-type {
        font-size: 24px;
        padding: 12px 10px 0;
    }
    .carousel-caption a {
        font-size: 18px;
        padding: 8px 10px;
    }
    ol.carousel-indicators {
        width: 75%;
    }
}

@media (max-width: 767px) {
    .container {}
    #logo-wrap {
        padding-top: 20px;
    }
    input#q {
        width: 75%;
    }
    #slide-wrap {
        padding-left: 15px;
    }
    .carousel-inner>.item>a>img,
    .carousel-inner>.item>img {
        width: 100%;
    }
    .carousel-caption {
        width: 100%;
        height: auto;
    }
    ol.carousel-indicators {
        left: 0px;
        margin: 0;
        bottom: 5px;
        text-align: right;
        width: 98%;
    }
}

@media (max-width: 480px) {
    .container {}
    #logo-wrap {
        width: 100%;
    }
    #left-header {
        width: 100%;
    }
    #slide-wrap {
        padding-left: 15px;
    }
    .carousel-inner>.item>img {
        width: 100%;
    }
    .carousel-caption {
        width: 100%;
        height: auto;
    }
    ol.carousel-indicators {
        left: 0px;
        margin: 0;
        bottom: 5px;
        text-align: right;
        width: 98%;
    }
}