

/* here comes the general */
body {
    background-color: #f2f2f2;
    
}

a:focus {
    outline: none;
}

/* the blues */
a, a:hover {
    color: #003da6;
}

@font-face {
    font-family: 'Knockout HTF70';
    src: url('../fonts/Knockout-HTF70-FullWelterwt.otf') format('opentype');
}

.knockout{
    font-family: 'Knockout HTF70', sans-serif !important;
}

.h1, .h2, .h3{
    font-family: 'Knockout HTF70', sans-serif !important;
}

h1, h2, h3{
    font-family: 'Knockout HTF70', sans-serif !important;
    letter-spacing: 1.5px;
}

h4, h5, h6{
font-family: 'Montserrat', sans-serif;
}

.h4, .h5, .h6{
    font-family: 'Montserrat', sans-serif;
    }
.{
    font-family: 'Montserrat', sans-serif;

}

p{
    font-family: 'Montserrat', sans-serif;

}

.holidaytext{
    font-family: 'Satisfy', cursive !important; 
    font-size: 50px !important;
}

.lead{
    font-family: 'Montserrat', sans-serif;
    font-size: 1.2em;

}

.display-2{
    line-height: .9 !important;
}

ul{
    font-family: 'Montserrat';
}

label{
    font-family: 'Montserrat';
    font-weight: 800;
}

.btn{
    
    box-shadow: 0px 4px 6px rgba(0,0,0,0.3);
    font-family: 'Montserrat', sans-serif;

}



@keyframes fadeIn {
    0% {opacity: 0;}
    100% {opacity: 1;}
}

.fade-in {
    animation: fadeIn 2s ease-in 1;
}

.fade-in-slow {
    animation: fadeIn 4s ease-in 1;
}


.list-group-item.active {
    background-color: #003da6;
    border-color: #003da6;
}

.list-group-item.active:focus, .list-group-item.active:hover {
    background-color: #2462ce;
    border-color: #2462ce;
}

.list-group-item{
    border-color: #ffffff !important;
    border-radius: 5px;
    font-family: 'Montserrat';
}

.list-group-item:focus, .list-group-item:hover {
    background-color: #f4f4f4;
    border-color: #ffffff;
}

.btn-primary {
    background-color: #003da6;
    border-color: #003da6;
}

.btn-primary:hover, .btn-primary:focus {
    background-color: #2462ce;
    border-color: #2462ce;
}

.btn-outline-primary{
    
    border-color: #003da6;
    color:#003da6 !important;s
}
.btn-outline-primary:hover{
    background-color: #003da6;
    border-color: #003da6;
    color:#ffffff !important;
}



.alert-primary{
    background-color:#E8EEFF !important;
    border-color: #9dadca;
}

.pagination>.active>a, .pagination>.active>a:focus, .pagination>.active>a:hover, .pagination>.active>span, .pagination>.active>span:focus, .pagination>.active>span:hover {
    background-color: #003da6;
    border-color: #003da6;
}

.bg-primary {
    background-color: #003da6;
}

.bootstrap-datetimepicker-widget table td.today:before {
    border-bottom-color: #003da6;
}

.bootstrap-datetimepicker-widget table td.active, .bootstrap-datetimepicker-widget table td.active:hover,
.bootstrap-datetimepicker-widget table td span.active {
    background-color: #003da6;
}



.responsiveImageContainer {
    text-align: center;
}

.responsiveImageContainer img {
    display: inline-block;
}

select.form-control {
    display: inline-block;
    width: auto;
}

/*
table.dataTable tr.even:hover,
table.dataTable tr.odd:hover {
    background-color: #d9edf7;
    cursor: pointer;
}
*/
.socialicon{
    width: 50px;
}



.table-rowpointer {
    cursor: pointer;
}

.form-group .noField {
    padding-top: 7px;
}

/* end general */



.truncate {
    overflow:hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}


/* devBar utils */
#devBar {
    background-image: linear-gradient(135deg, #ffea00 25%, #000000 25%, #000000 50%, #ffea00 50%, #ffea00 75%, #000000 75%, #000000 100%);
    background-size: 20.00px 20.00px;
    top: 0px;
    position: fixed;
    z-index: 999999;
    width: 100%;
    height: 10px;
    line-height: 0em;
    xdisplay: none;
}

#devBar #bootstrapWindowSize div {
    background-color: #ffea00;
    color: black;
    float: left;
    padding-left: 4px;
    padding-right: 4px;
    font-size: 10px;
    line-height: 10px;
    height: 10px;
}

#viewProduction a {
    background-color: black;
    color: #ffea00;
    text-transform: uppercase;
    text-decoration: none;
    padding-left: 5px;
    padding-right: 5px;
    display: inline-block;
    font-size: 10px;
    line-height: 10px;
}






/* main header */

header nav.navbar {
    background: linear-gradient(to right, #002d9f, #3A61C3);
    padding: 15px 15px;
}

.navbar-dark .navbar-nav .nav-link{
    color: white;
}

.nav-item > .btn-light {
    color:#001b49 !important;
}
.btn-light > .dropdown-menu > .dropdown-item{
    color: red !important;
}

.navbar-dark .navbar-nav .nav-link:focus{
    text-decoration: underline;
}

.skip-link {
    position: absolute;
    top: -40px;
    left: 0;
    background: #000;
    color: white;
    padding: 8px;
    z-index: 100;
}

.skip-link:focus {
    top: 0;
}


header .navbar-brand {
    padding-top: 5px;
    padding-bottom: 5px;
    height: auto;
    position: relative;
    z-index: 2;
    font-size: 0px;
}

header .navbar-brand img {
    height: 20px;
}

#headerNavCollapser {
    background-color: #575757;
}

/* smaller screens */
@media (max-width: 767px) {
    header .navbar-brand img {
        height: 30px;
        margin-top: 5px;
    }
}

header .navbar-nav > li > a {
    padding-top: 5px;
    padding-bottom: 5px;
    padding-right: 5px;
    white-space: nowrap;
}

header .navSubhead {
    padding: 3px 20px;
    color: #d0cece;
    font-size: 0.7em;
    font-family: "Arimo", Helvetica, Arial, sans-serif;
}

header #headerNav {
    font-size: 0.9em;
    text-transform: uppercase;
    font-family: "Fjalla One";
}

header #headerNav .dropdown-menu {
    text-transform: none;
    background-color: #003da6;
    font-size: 1em;
    margin-top: 0px;
    padding:10px;
    border-top: 0px;
    border-radius: 10px;
    box-shadow: 0px 3px 10px #001b49;
        border-top-left-radius: 0px;
    border-top-right-radius: 0px;
    -webkit-border-top-right-radius: 0px;
    -webkit-border-top-left-radius: 0px;
    -moz-border-radius-topright: 0px;
    -moz-border-radius-topleft: 0px;
    border-top-right-radius: 0px;
    border-top-left-radius: 0px;
    
}

header #headerNav .dropdown-menu a {
    color: #ffffff;
    padding: 3px 20px;
}

header #headerNav .dropdown-menu a:hover {
    background-color: #bbcff2;
    color: #022460;
    border-radius: 20px;
    box-shadow: 0px 3px 10px #001b49;

    
}
.storedrop{
    font-family: 'Knockout HTF70', sans-serif !important;
    text-transform: uppercase;
}

.storedrop:hover{
    background-color: #003da6;
    color: #ffffff;
    border-radius: 20px;
    box-shadow: 0px 3px 10px #001b49;

}

header #headerNav .dropdown-item.active, .dropdown-item:active {
    background-color: #4b7aca;
    color: #022460;
}

header #headerNav .dropdown-menu .dropdown-divider {
    border-top-color: #8a8a8a;
}

header #headerNav > li > a {
    padding-top: 6px;
}

header #headerUtils {
    font-size: 0.75em;
}



header .navbar a:hover {
    color: #ffffff;
}

header .programName {
    text-transform: uppercase;
    font-size: 1.3em;
    xpadding-top: 14px;
    xposition: absolute;
    xz-index: 1;
    xwidth: 100%;
    text-align: center;
    font-family: "Fjalla One";
}

header .programName a {
    color: white;
}

header .navbar-toggle {
    position: relative;
    z-index: 2;
    right: 0px;
}

header .profileImage {
    width: 18px;
    margin-top: -2px;
}




/* search box */
header .searchContainer form {
    padding-right: 15px;
}

header .searchContainer {
    padding-left: 0px;
    overflow: hidden;
    float: right;
    width: 3em;
    -moz-transition: all 0.25s;
    -webkit-transition: all 0.25s;
}

header .searchContainer a {
    padding-top: 5px;
}

header .searchContainer:hover {
    width: 260px;
}

header .searchContainer:hover input {
    display: inline-block;
    width: 19em;
    padding: 5px;
}

header .searchContainer input {
    float: left;
    width: 0px;
    height: 20px;
    margin-top: 4px;
    padding: 0px;
    border: 0px;
    -moz-transition: all 0.25s;
    -webkit-transition: all 0.25s;
    font-size: 12px;
}

header .searchContainer .magGlass {
    display: block;
    text-align: right;
    color: white;
}
/* /search box */



.roundedcorner{
    border-radius: 20px;
}

.servicecards{
    background-size: cover; 
    background-position: center; 
    background-repeat: no-repeat;
}


/* program nav */

#programNav {
    xborder-radius: 0px;
    xmin-height: 0px;
    xmargin-bottom: 0px;
    xborder: 0px;
    xpadding: 0px;
}

#programNav .navbar-nav {
    xfloat: none;
    xtext-align: center;
    margin-left: auto;
    margin-right: auto;
}

#programNav .navbar-nav > li {
    xdisplay: inline-block;
    xfloat: none;
    font-family: "Fjalla One";
    margin-left: 5px;
    margin-right: 5px;
}

#programNav .fa-heart {
    color: #ff3f3f;
}

/* smaller screens */
@media (max-width: 767px) {
    x#programNav .navbar-nav {
        text-align: left;
    }
    
    #programNav .navbar-nav li {
        display: block;
        margin-left: 0px;
        margin-right: 0px;
    }
    
    #programNav {
        padding-top: 0px;
        padding-bottom: 0px;
    }
}




/* footer */
footer {
    background-color: #f2f2f2;
    padding-top: 1.2em;
    padding-bottom: 1em;
}




footer a {
    color: #344168;
}

footer a:hover {
    color: #000000;
}

footer hr {
    border-top: 1px solid #dfdfdf;
}

footer ul {
    padding: 0px;
    line-height: 2em;
}

footer ul > li {
    list-style-type: none;
}
/* end footer */






#news .item {
    margin-bottom: 1em;
}

#news > .item > .title {
    font-weight: bold;
}



main {
    padding-top: 20px;
    
    background-color: white;
}

main h2.featureHeader {
    text-align: center;
    text-transform: uppercase;
    color: #a4a4a4;
    padding-top: 5px;
    font-size: 1em;
    border-top: 1px solid #eeeeee;
}

main ul.smdb {
    text-align: center;
    padding: 0px;
}

main ul.smdb li {
    list-style-type: none;
    display: inline-block;
    padding-left: 20px;
    padding-right: 20px;
}

main ul.smdb li img {
    width: 30px;
}





main h1 {
    margin: 0px;
    margin-bottom: 3px;
    
}

main h2 {
    margin: 0px;
    margin-bottom: 10px;
    
}

main h1.title,
main h1.showTitle {
    margin-bottom: 0.5em;
}



main .date {
    font-size: 0.8em;
    text-transform: uppercase;
    color: #747474;
    white-space: nowrap;
}

.modal-header .date {
    font-size: 0.6em;
    text-transform: uppercase;
    color: #747474;
    white-space: nowrap;
}

.bootstrap-datetimepicker-widget { /* override for the datepicker */
    white-space: normal;
}

div.alert {
    text-align: center;
}

main .noRecords {
    color: #aaaaaa;
    font-size: 1.2em;
    text-align: center;
}

/* special links */

.eventDetailsLink {
    text-transform: uppercase;
    font-size: 0.8em;
}

.thumbnailLink {
    text-transform: uppercase;
    font-size: 0.8em;
}

.pdfLink {
    text-transform: uppercase;
    font-size: 0.8em;
}

.pdfLink .fa-file-pdf {
    color: #dd3117;
}

.mapLink {
    text-transform: uppercase;
    font-size: 0.8em;
}

.mapLink .fa-map-marker {
    color: #dd3117;
}

.downloadLink {
    text-transform: uppercase;
}

label.required .fa-asterisk {
    color: red;
    font-size: 0.6em;
    vertical-align: text-top;
}

a.readMore {
    font-size: 0.8em;
    text-transform: uppercase;
}



figcaption, .caption {
    font-size: 0.8em;
    text-align: right;
    color: #6d6d6d;
    xmargin-top: 2px;
    padding: 5px;
}

.hasCaption .caption {
    padding: 0px;
    text-align: inherit;    
}


/* form field overrides */
.custom-select.is-valid, .form-control.is-valid, .was-validated .custom-select:valid, .was-validated .form-control:valid {
/* .custom-select.is-invalid, .form-control.is-invalid, .was-validated .custom-select:invalid, .was-validated .form-control:invalid { */
    border-color: #ced4da;
}

.form-control.is-valid, .form-control.is-invalid {
    padding-right: .75rem;
}

.custom-select.is-valid:focus, .form-control.is-valid:focus, .was-validated .custom-select:valid:focus, .was-validated .form-control:valid:focus {
/* .custom-select.is-invalid:focus, .form-control.is-invalid:focus, .was-validated .custom-select:invalid:focus, .was-validated .form-control:invalid:focus { */
    border-color: #ced4da;
    box-shadow: 0 0 0 0;
}

.form-control.is-valid, .was-validated .form-control:valid {
    background-image: none; /* remove checkbox from valid fields */
}
/* /form field overrides */



/* form overrides */
/*
.has-feedback .form-control {
    padding-right: inherit;
}

.control-label.hasCaption {
    padding-top: 0px;
}

.control-label .caption {
    font-size: 0.8em;
    margin-top: -0.5em;
    margin-bottom: 0px;
    color: #8f8f8f;
}
*/
/* form fields */

.form-group .bootstrap-select.btn-group,
.form-horizontal .bootstrap-select.btn-group,
.form-inline .bootstrap-select.btn-group {
    display: block;
}

.form-group .bootstrap-select.btn-group.inline,
.form-horizontal .bootstrap-select.btn-group.inline,
.form-inline .bootstrap-select.btn-group.inline {
    display: inline-block;
}

.form-control-inline, select.form-control {
    min-width: 0;
    width: auto;
    xdisplay: inline;
}

.datepicker .input-group-addon, .datepicker .input-group .form-control {
    xwidth: auto;
}

select[multiple] {
    width: 100%;
}

label.required .fa-asterisk {
    color: red;
    font-size: 0.6em;
    vertical-align: text-top;
}

x.has-success .form-control {
    border: 1px solid #cccccc;
}

x.has-success .form-control:focus {
    border: 1px solid #66afe9;
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);
}

x.has-success .input-group-addon {
    border: 1px solid #cccccc;
    border-right: 0px;
    border-left: 0px;
    background-color: #eeeeee;
    color: #555555;
}

/* .has-success .checkbox, .has-success .checkbox-inline, .has-success .control-label, .has-success .help-block, .has-success .radio, .has-success .radio-inline, .has-success.checkbox label, .has-success.checkbox-inline label, .has-success.radio label, .has-success.radio-inline label {
    color: #333333;
} */

.form-text {
    font-size: 0.8em;
    color: red;
    margin-top: 0px;
}

.form-group.row .col-form-label {
    text-align: right;  
}

/* smaller screens */
@media (max-width: 767px) {
    .form-group.row .col-form-label {
        text-align: left;
    }
}




.checkbox input[type=checkbox], .checkbox-inline input[type=checkbox], .radio input[type=radio], .radio-inline input[type=radio] {
    xmargin-left: 0px !important;
}
.checkbox input[type="checkbox"]:checked+label::after, .checkbox input[type="radio"]:checked+label::after {
    font-family: "Font Awesome 5 Free";
    content: "\f00c";
    cursor: pointer;
    font-weight: 900;
}





.donorPerks .fa-check-circle {
    color: #003da6;
}

.donorPerks .headerRow td {
    border-top: 2px solid #003da6;
}

.donorPerks .mainHeaderRow td {
    background-color: #003da6;
}

.fiddysevenhero{
    max-width: 100%;
    

    background-image: 
        linear-gradient( rgba(0, 45, 159, .5), rgba(0, 45, 159, 1)), 
        url('https://bluedevils.org/mediabox-assets/cache/110000/110647/08.12.2023%20Blue%20Devils%20DCI%20Finals%20Performance%20Cam%202-06610-700x467.jpg');

    background-repeat: no-repeat;
    background-size: cover;
    padding-top: 50px;
    padding-bottom: 50px;
    background-position: center;
}




dl.faq dd {
    margin-bottom: 1em;
    margin-left: 30px;
}



@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes slideInFromRight {
    from {
        transform: translateX(100%);
        opacity: 0;
    }
    to {
        transform: translateX(0);
        opacity: 1;
    }
}

.fade-in {
    animation: fadeIn 1.5s forwards;
    opacity: 0; /* this will be animated to 1 */
}

.slide-in-right {
    animation: slideInFromRight 3s forwards;
    transform: translateX(100%); /* starts from off the screen on the right */
    opacity: 0; /* this will be animated to 1 */
}





/* for for responsive tabs to make full heading tappable */
a.accordion-toggle {
    display: block;
    padding: 10px 15px;
}
.responsive div.panel-heading {
    padding: 0;
}





/* Don't print link hrefs (bootstrap) */
@media print {
    a[href]:after {
        content: none
    }
}



.btn-group-xs > .btn, .btn-xs { /* -xs doesn't exist in bs4 */
    padding: 1px 5px;
    font-size: 0.8em;
    line-height: 1.5em;
    border-radius: 3px;
}


x.code {    
    padding: 2px 4px;
    font-size: 90%;
    color: #c7254e;
    background-color: #f9f2f4;
    border-radius: 4px;
    font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
}

.tooltip-inner {
    max-width: none;
    white-space: nowrap;
}
@media (min-width: 1200px) {
    .container {
        max-width: 1400px; /* override max-width value for larger screens */
    }
}


.btn-outline-light{
    color: #ffffff !important;

}
.btn-outline-light:hover {
    color: #212529 !important;
}
