/* GENERAL */

.grecaptcha-badge {
	display: none;
}

.text-shadow {
    text-shadow: 0px 0px 10px rgba(0,0,0,.25);
}

.text-shadow-dark {
    text-shadow: 0px 0px 10px rgba(0,0,0,1);
}

.text-shadow-none {
    text-shadow: none;
}


.box-shadow {
	box-shadow: 0px 10px 20px rgba(0,0,0,.1);
}

.box-shadow-dark {
	box-shadow: 0px 10px 20px rgba(0,0,0,.15);
}

.svg-shadow {
    -webkit-filter: drop-shadow(0px 0px 1px rgba(0,0,0,.25));
    filter: drop-shadow(0px 0px 1px rgba(0,0,0,.25));
}

.image-overlay-25 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,.25);
}

.image-overlay-50 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,.5);
}

.image-overlay-75 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,.75);
}

.image-overlay-text {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    transform: translateY(-50%);
    margin: auto;
    padding: 1rem 1.5rem;
    color: #FFF;
}

.no-hover {
	color: inherit;
}

.no-hover:hover {
	text-decoration: none;
	color: inherit;
}

.rounded-xl {
    border-radius: 30px !important;
}

.opacity-0 {
    opacity: 0 !important;
}

.opacity-1 {
    opacity: 1 !important;
}

.bg-cover {
    -webkit-background-size: cover !important;
    -moz-background-size: cover !important;
    -o-background-size: cover !important;
    background-size: cover !important;
}

.bg-contain {
    -webkit-background-size: contain !important;
    -moz-background-size: contain !important;
    -o-background-size: contain !important;
    background-size: contain !important;
}

.bg-ob-cover {
    -webkit-object-fit: cover !important;
    -moz-object-fit: cover !important;
    -o-object-fit: cover !important;
    object-fit: cover !important;
}

.bg-column {
    min-height: 540px;
}

@media (max-width: 991.98px) {
    .bg-column {
        min-height: 540px;
    }
}

@media (max-width: 767.98px) {
    .bg-column {
        min-height: 405px;
    }
}

@media (max-width: 575.98px) {
    .bg-column {
        min-height: 270px;
    }
}

.bg-banner {
    padding: 12rem 0;
}

@media (max-width: 1199.98px) {
    .bg-banner {
        padding: 10rem 0;
    }
}

@media (max-width: 991.98px) {
    .bg-banner {
        padding: 8rem 0;
    }
}

@media (max-width: 767.98px) {
    .bg-banner {
        padding: 6rem 0;
    }
}

@media (max-width: 575.98px) {
    .bg-banner {
        padding: 3rem 0;
    }
}

.bg-favicon-color {
    background: url('/assets/img/logos/favicon-color.svg') center center;
}

.bg-favicon-color-faded {
    background: url('/assets/img/logos/favicon-color-faded.svg') center center;
}

.bg-favicon-faded {
    background: url('/assets/img/logos/favicon-faded.svg') center center;
}

.bg-favicon-white {
    background: url('/assets/img/logos/favicon-white.svg') center center;
}


/* LAZY LOAD */

.lazyload {
	opacity: 0;
}

.lazyloading {
	opacity: 1;
	transition: opacity 300ms;
}

img.lazyload:not([src]) {
	visibility: hidden;
}


/* MARGIN/PADDING */

.my-30px {
    margin-top: 30px !important;
    margin-top: 30px !important;
}

.mx-30px {
    margin-left: 30px;
    margin-right: 30px;
}

.my-15px {
    margin-top: 15px !important;
    margin-top: 15px !important;
}

.mx-15px {
    margin-left: 15px;
    margin-right: 15px;
}

.mt-15px {
    margin-top: 15px;
}

.mt-30px {
    margin-top: 30px;
}

.mt-33px {
    margin-top: 33px;
}

.mb-5px {
    margin-bottom: 5px;
}

.mb-10px {
    margin-bottom: 10px;
}

.mb-15px {
    margin-bottom: 15px;
}

.mb-18px {
    margin-bottom: 18px;
}

.mb-20px {
    margin-bottom: 20px;
}

.mb-30px {
    margin-bottom: 30px;
}

.mb-33px {
    margin-bottom: 33px;
}

.mb-38px {
    margin-bottom: 38px;
}

.px-15px {
    padding-left: 15px;
    padding-right: 15px;
}

.px-30px {
    padding-left: 30px;
    padding-right: 30px;
}

.py-15px {
    padding-top: 15px;
    padding-bottom: 15px;
}

.py-30px {
    padding-top: 30px;
    padding-bottom: 30px;
}

.pl-15px {
    padding-left: 15px;
}

.pb-5px {
    padding-bottom: 5px;
}

.pb-10px {
    padding-bottom: 10px;
}

.pb-15px {
    padding-bottom: 15px;
}

.pb-18px {
    padding-bottom: 18px;
}

.pb-20px {
    padding-bottom: 20px;
}

.pb-30px {
    padding-bottom: 30px;
}

.pb-33px {
    padding-bottom: 33px;
}

.pb-38px {
    padding-bottom: 38px;
}

.pt-5px {
    padding-top: 5px;
}

.pt-10px {
    padding-top: 10px;
}

.pt-15px {
    padding-top: 15px;
}

.pt-18px {
    padding-top: 18px;
}

.pt-20px {
    padding-top: 20px;
}

.pt-30px {
    padding-top: 30px;
}

.pt-33px {
    padding-top: 33px;
}

.pt-38px {
    padding-top: 38px;
}

.row-15px {
    padding-left: 7.5px;
    padding-right: 7.5px;
}

.row-15px [class*=col-],
.row-15px [class*=col] {
    padding-left: 7.5px;
    padding-right: 7.5px;
}

.top-offset {
    top: 94px !important;
}

@media (max-width: 1199.98px) {
    .top-offset {
        top: 80px !important;
    }
}

@media (min-width: 1200px) {
    .neg-nav-margin {
        margin-top: -94px;
    }
}

.col-12 p:last-child,
.col-12 ul:last-child,
.col-12 ol:last-child {
    margin-bottom: 0;
}


/* ANIMATIONS */

@-webkit-keyframes fadeInUpSmall {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0,10%,0);
        transform: translate3d(0,10%,0)
    } to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}

@keyframes fadeInUpSmall {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0,10%,0);
        transform: translate3d(0,10%,0)
    } to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}

.fadeInUpSmall {
    -webkit-animation-name: fadeInUpSmall;
    animation-name: fadeInUpSmall;
}

.circle-rotation {
    animation-name: rotate;
    animation-duration: 30s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}

@keyframes rotate {
    from {
        transform: rotate(-360deg);
    } to {
        transform: rotate(360deg);
    }
}

@keyframes pulse {
	0% {
		box-shadow: 0 0 0 0 rgba(0,0,0,.15);
	}

	70% {
		box-shadow: 0 0 0 10px rgba(0,0,0,0);
	}

	100% {
		box-shadow: 0 0 0 0 rgba(0,0,0,0);
	}
}

.pulse {
    animation: pulse 2s infinite;
    animation-iteration-count: 3;
}

.row-small {
    justify-content: center;
    text-align: center;
}

.row-small > .col-12 {
    -ms-flex: 0 0 100% !important;
    flex: 0 0 100% !important;
    max-width: 100% !important;
}

@media (min-width: 576px) {
    .row-small > .col-12 {
        -ms-flex: 0 0 91.666667% !important;
        flex: 0 0 91.666667% !important;
        max-width: 91.666667% !important;
    }
}

@media (min-width: 768px) {
    .row-small > .col-12 {
        -ms-flex: 0 0 83.333333% !important;
        flex: 0 0 83.333333% !important;
        max-width: 83.333333% !important;
    }
}

@media (min-width: 992px) {
    .row-small > .col-12 {
        -ms-flex: 0 0 75% !important;
        flex: 0 0 75% !important;
        max-width: 75% !important;
    }
}

@media (min-width: 1200px) {
    .row-small > .col-12 {
        -ms-flex: 0 0 66.666667% !important;
        flex: 0 0 66.666667% !important;
        max-width: 66.666667% !important;
    }
}

@media (min-width: 1200px) {
    .col-xl-5ths {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
    }

    .col-xl-2 {
        -ms-flex: 0 0 16.666667% !important;
        flex: 0 0 16.666667% !important;
        max-width: 16.666667% !important;
    }
}

@media (min-width: 992px) {
    .col-lg-5ths {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
    }
}

@media (min-width: 768px) {
    .col-md-5ths {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
    }
}

@media (min-width: 576px) {
    .col-sm-5ths {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%;
    }
}

.col-5ths {
    -ms-flex: 0 0 20%;
    flex: 0 0 20%;
    max-width: 20%;
}


/* TYPOGRAPHY

font-family: 'Roboto', sans-serif;
font-family: 'Roboto Slab', serif;

*/

.font-roboto {
    font-family: 'Roboto', sans-serif !important;
}

.font-roboto-slab {
    font-family: 'Roboto Slab', serif !important;
}

.font-weight-300 {
    font-weight: 300 !important;
}

.font-weight-400 {
    font-weight: 400 !important;
}

.font-weight-500 {
    font-weight: 500 !important;
}

.font-weight-600 {
    font-weight: 600 !important;
}

.font-weight-700 {
    font-weight: 700 !important;
}

@media (max-width: 1199.98px) {
    h1, .h1 {
        font-size: calc(1.375rem + 1.5vw);
    }

    h2, .h2 {
        font-size: calc(1.325rem + 0.9vw);
    }

    h3, .h3 {
        font-size: calc(1.3rem + 0.6vw);
    }

    h4, .h4 {
        font-size: calc(1.275rem + 0.3vw);
    }

    .display-1 {
        font-size: calc(1.725rem + 5.7vw);
    }

    .display-2 {
        font-size: calc(1.675rem + 5.1vw);
    }

    .display-3 {
        font-size: calc(1.575rem + 3.9vw);
    }

    .display-4 {
        font-size: calc(1.475rem + 2.7vw);
    }
}

body {
    font-family: 'Roboto', sans-serif;
    font-weight: 400;
    color: #000;
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, .display-1, .display-2, .display-3, .display-4 {
    font-family: 'Roboto', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    color: #B7202D;
}

#main-content a:not(.btn) {
    color: #555;
    font-weight: 500;
    transition: all .3s ease;
}

#main-content a:not(.btn):hover,
#main-content a:not(.btn):focus,
#main-content a:not(.btn):target,
#main-content a:not(.btn):active {
    color: #000;
}

#main-content a:not(.btn) {
    color: #555;
    display: inline-block;
    position: relative;
    font-weight: 500;
    transition: all .3s ease;
}

#main-content a:not(.btn):hover,
#main-content a:not(.btn):focus,
#main-content a:not(.btn):target,
#main-content a:not(.btn):active {
    color: #000;
    text-decoration: none;
}

#main-content a:not(.btn):before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 1px;
    background-color: #B7202D;
    transition: all .3s ease;
}

#main-content a:not(.btn):before {
    -webkit-transform: translateY(0);
            transform: translateY(0);
}

#main-content a:not(.btn):hover:before,
#main-content a:not(.btn):focus:before {
    background-color: #B7202D;
    -webkit-transform: translateY(-2px);
            transform: translateY(-2px);
}

#main-content a:not(.btn) .fa-external-link-alt {
    font-size: 12px;
    margin-top: 3px;
    vertical-align: top;
}

.lead {
    font-weight: inherit;
}

strong.lead {
    font-weight: bold;
}

.font-12px {
    font-size: 12px !important;
}

.font-13px {
    font-size: 13px !important;
}

.font-14px {
    font-size: 14px !important;
}

.font-15px {
    font-size: 15px !important;
}

.font-16px {
    font-size: 16px !important;
}

.font-17px {
    font-size: 17px !important;
}

.font-18px {
    font-size: 18px !important;
}

.font-19px {
    font-size: 19px !important;
}

.font-20px {
    font-size: 20px !important;
}

.font-22px {
    font-size: 22px !important;
}

.font-24px {
    font-size: 24px !important;
}

.eyebrow {
    font-family: 'Roboto', sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: #000;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: .5rem;
}

.divided-text {
    overflow: hidden;
    text-align: center;
}

.divided-text:before,
.divided-text:after {
    content: "";
    display: inline-block;
    height: 1px;
    position: relative;
    vertical-align: middle;
    width: 50%;
}

.divided-text:before {
    right: 15px;
    margin-left: -50%;
}

.divided-text:after {
    left: 15px;
    margin-right: -50%;
}

.divided-text-left:after {
    content: "";
    display: inline-block;
    height: 1px;
    position: relative;
    vertical-align: middle;
    width: calc(100% - 30px);
    text-align: left;
    background-color: #000;
    left: 15px;
    margin-right: -100%;
}

.divided-text:before,
.divided-text:after {
    background-color: #000;
}

.divided-text.red:before,
.divided-text.red:after {
    background-color: #B7202D;
}

.divided-text.white:before,
.divided-text.white:after {
    background-color: #FFF;
}

.divided-text.green:before,
.divided-text.green:after {
    background-color: #006A51;
}

.divided-text.gold:before,
.divided-text.gold:after {
    background-color: #AC925F;
}

.divided-text.muted:before,
.divided-text.muted:after {
    background-color: #6C757D;
}

.divided-text.grey:before,
.divided-text.grey:after {
    background-color: #555;
}

.divided-text.lgrey:before,
.divided-text.lgrey:after {
    background-color: #DEE2E6;
}

hr {
    margin: 1.5rem 0;
}

hr.faded-white {
    border-top: 1px solid rgba(255,255,255,.25);
}

.spaced-list li {
    line-height: 1.25;
    padding: .5rem 0;
}

ul.checklist {
    list-style: none;
    padding-left: 1rem;
}

.checklist li {
    line-height: 1.25;
    position: relative;
    padding: .25rem 0 .25rem 1.5rem;
}

.checklist li:before {
    content: '';
    position: absolute;
    left: 0;
    width: 1.1rem;
    height: 1.1rem;
    background: url("data:image/svg+xml;utf8,<?xml version='1.0' encoding='utf-8'?><svg width='18' height='18' viewBox='0 0 1792 1792' xmlns='http://www.w3.org/2000/svg'><path fill='%23329357' d='M1671 566q0 40-28 68l-724 724-136 136q-28 28-68 28t-68-28l-136-136-362-362q-28-28-28-68t28-68l136-136q28-28 68-28t68 28l294 295 656-657q28-28 68-28t68 28l136 136q28 28 28 68z'/></svg>") no-repeat;
}

ul.list-columns {
    padding-left: 1.5rem;
    line-height: 1.25;
    columns: 1;
    -webkit-columns: 1;
    -moz-columns: 1;
    column-gap: 30px;
    -webkit-column-gap: 30px;
    -moz-column-gap: 30px;
}

ul.list-columns li {
    margin-bottom: 30px;
}

@media (min-width: 768px) {
    ul.list-columns {
        columns: 2;
        -webkit-columns: 2;
        -moz-columns: 2;
    }
}

ul.small-list-columns {
    width: 100%;
    font-size: 13px;
    list-style-type: none;
    padding-left: 0;
    margin-bottom: 0;
    line-height: 1.15;
    columns: 2;
    -webkit-columns: 2;
    -moz-columns: 2;
    column-gap: 30px;
    -webkit-column-gap: 30px;
    -moz-column-gap: 30px;
    column-fill: balance;
    -webkit-column-fill: balance;
    -moz-column-fill: balance;
}

ul.small-list-columns li {
    margin-bottom: 10px;
}

@media (min-width: 576px) {
    ul.small-list-columns {
        columns: 2;
        -webkit-columns: 2;
        -moz-columns: 2;
    }
}

@media (min-width: 768px) {
    ul.small-list-columns {
        columns: 3;
        -webkit-columns: 3;
        -moz-columns: 3;
    }
}

@media (min-width: 992px) {
    ul.small-list-columns {
        columns: 4;
        -webkit-columns: 4;
        -moz-columns: 4;
    }
}

@media (min-width: 1200px) {
    ul.small-list-columns {
        columns: 5;
        -webkit-columns: 5;
        -moz-columns: 5;
    }
}

.card-img-box {
    border: 0;
    box-shadow: 0px 10px 20px rgba(0,0,0,.1);
}

@media (min-width: 992px) {
    .card-img-box img {
        border-right: 2px solid #AC925F;
        -webkit-object-fit: cover !important;
        -moz-object-fit: cover !important;
        -o-object-fit: cover !important;
        object-fit: cover !important;
        height: 100%;
    }
}

.card-img-box .card-body {
    padding: 0;
}

.card-img-box .row {
    padding: 0 !important;
    margin: 0 !important;
}

.card-img-box [class*=col-],
.card-img-box [class*=col] {
    padding: 0 !important;
    margin: 0 !important;
}

.img-txt-box .row {
    padding: 0 !important;
    margin: 0 -7.5px !important;
}

.img-txt-box [class*=col-],
.img-txt-box [class*=col] {
    padding: 0 7.5px !important;
    margin: 15px 0 0 0 !important;
}

.img-txt-box {
    padding: 3rem;
}

.img-txt-box .row .btn {
    display: block;
}

.img-txt-box p:last-child {
    margin-bottom: 0;
}

@media (max-width: 991.98px) {
    .card-img-box img {
        border-right: 0;
        border-bottom: 2px solid #AC925F;
    }
}

@media (max-width: 767.98px) {
    .img-txt-box {
        padding: 3rem 15px;
    }
}


/* COLORS

Red: #B7202D;
Light Red: #AA2E3A;
Green: #006A51;
Gold: #AC925F;
Tan: #C7B28B;
Cream: #E0CEAF;
Gray: #D6D5D9;

*/

.bg-red {
    background-color: #B7202D;
}

.text-red {
    color: #B7202D;
}

.bg-green {
    background-color: #006A51;
}

.text-green {
    color: #006A51;
}

.bg-gold {
    background-color: #AC925F;
}

.text-gold {
    color: #AC925F;
}

.border-gold {
    border: 1px solid #AC925F;
}

.bg-gray {
    background-color: #D6D5D9;
}

.text-gray {
    color: #D6D5D9;
}

.bg-tan {
    background-color: rgba(199,178,139,.45);
}

.text-tan {
    color: rgba(199,178,139,.45);
}

.bg-cream {
    background-color: rgba(224,206,175,.2);
}

.text-cream {
    color: rgba(224,206,175,.2);
}

.cream-border {
    position: relative;
    z-index: 2;
    padding: 7.5px;
}

.cream-border:before {
    z-index: -1;
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    box-shadow: inset 0 0 0 7.5px rgba(224,206,175,.2);
}

.inset-border {
    position: relative;
    z-index: 2;
}

.inset-border::before {
    z-index: -1;
    content: '';
    position: absolute;
    top: 7.5px;
    bottom: 7.5px;
    left: 7.5px;
    right: 7.5px;
}

.inset-border.white::before {
    box-shadow: inset 0 0 0 1px #FFF;
}

.inset-border.red::before {
    box-shadow: inset 0 0 0 1px #B7202D;
}

.bg-red {
    background-color: #B7202D;
}

.text-red {
    color: #B7202D;
}

.bg-black {
    background-color: #000;
}

.text-black {
    color: #000 !important;
}

a.text-black:hover,
a.text-black:focus,
a.text-black:target,
a.text-black:active {
    color: #000 !important;
}

.bg-trans {
    background-color: transparent;
}


/* BUTTONS */

.btn {
    font-family: 'Roboto', sans-serif;
    font-weight: 700;
    font-size: 14px;
    text-transform: uppercase;
    border-radius: 0;
    transition: all .3 ease;
}

.btn .fa-external-link-alt {
    font-size: 12px;
    margin-top: 3px;
    vertical-align: top;
}

.btn-reg {
    padding: .75rem 1.5rem;
}

.btn-light {
    color: #B7202D;
}

.btn-light:hover,
.btn-light:focus,
.btn-light:target,
.btn-light:active {
    color: #B7202D !important;
}

.btn-outline-light:hover {
    color: #B7202D;
}

.btn-outline-light:not(:disabled):not(.disabled).active,
.btn-outline-light:not(:disabled):not(.disabled):active, .show>.btn-outline-light.dropdown-toggle {
    color: #B7202D;
}

.btn-red {
    color: #FFF !important;
    border: 1px solid #B7202D;
    background-color: #B7202D;
}

.btn-red:hover {
    background-color: #AA2E3A;
    color: #FFF !important;
}

.btn-red.focus,
.btn-red:focus,
.btn-red:target,
.btn-red:active {
    background-color: #AA2E3A;
    color: #FFF !important;
    box-shadow: 0 0 0 .2rem rgba(117,11,11,.5);
}

.btn-red.active {
    text-decoration: underline;
}

.btn-outline-red {
    color: #B7202D;
    border: 1px solid #B7202D;
    background-color: transparent;
}

.btn-outline-red:hover {
    background-color: #AA2E3A;
    color: #FFF !important;
}

.btn-outline-red.focus,
.btn-outline-red:focus,
.btn-outline-red:target,
.btn-outline-red:active {
    background-color: #AA2E3A;
    color: #FFF !important;
    box-shadow: 0 0 0 .2rem rgba(117,11,11,.5);
}


/* TOP BAR */

@media (max-width: 1199.98px) {
    #topbar {
        display: none;
    }
}

#topbar {
    font-size: 14px;
    padding: 7.5px 0;
}

ul.top-nav {
    padding: 0;
    margin: 0;
}

.top-nav li {
    list-style-type: none;
    display: inline-block;
}

.top-nav li a {
    font-weight: 600;
    display: block;
    padding: 0 7.5px;
    color: #FFF;
}

ul.sm-nav {
	padding: 0;
	margin: 0;
    display: flex;
    justify-content: flex-end;
}

.sm-nav li {
	list-style-type: none;
	display: inline-block;
}

.sm-nav li a {
    font-size: 1.25rem;
    display: block;
	color: #000;
    padding: .5rem;
    transition: all .3s ease;
}

.sm-nav li a:hover,
.sm-nav li a:focus,
.sm-nav li a:target,
.sm-nav li a:active {
	color: #B7202D;
}

@media (max-width: 1199.98px) {
    ul.sm-nav {
        flex-direction: row;
    	margin: 0;
        justify-content: center;
    }

    .sm-nav li a {
    	padding: 0 10px;
    }

    .sm-nav li a {
    	font-size: 1.5rem;
    }

    ul.top-nav {
        font-size: 14px;
        margin: 15px 0;
    }

    .top-nav li a {
        color: #000;
        padding: 15px;
    }
}


/* NAVIGATION */

.navbar {
    padding: 15px 0;
    background: #FFF;
    transition: all .3s ease;
}

.navbar.navbar-scrolled {
    box-shadow: 0px 10px 20px rgba(0,0,0,.1);
}

a.navbar-brand {
    padding: 0;
    margin: 0;
    transition: all .3s ease;
}

/* .navbar-brand img {
    width: 96px;
    height: 50px;
} */

.navbar-brand img {
    width: 100px;
    height: 66px;
}

.navbar-nav .nav-item .nav-link {
    position: relative;
    font-family: 'Roboto', sans-serif;
    font-weight: 500;
    font-size: 14px;
    text-transform: uppercase;
    color: #000;
    transition: all .3s ease;
}

.navbar-nav .nav-item .nav-link:hover,
.navbar-nav .nav-item .nav-link:focus {
    color: #B7202D;
}

.dropdown-menu {
    padding: .75rem;
    border-radius: 0px;
    border-top: 2px solid #B7202D;
    border-left: 0;
    border-right: 0;
    border-bottom: 0;
    background: #FFF;
    box-shadow: 0px 10px 20px rgba(0,0,0,.1);
}

.dropdown-header {
    color: #000;
    font-family: 'Roboto', sans-serif;
    font-weight: 700;
    font-size: 14px;
    font-weight: 600;
    padding: .5rem 1rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 0;
}

.dropdown-item {
    position: relative;
    padding: .375rem .75rem;
    white-space: normal;
    border-radius: 0px;
    font-size: 14px;
    color: #000;
    transition: all .3s ease;
}

.dropdown-item:hover,
.dropdown-item:focus {
    background-color: transparent;
    color: #B7202D;
}

a.dropdown-item:before {
    content: '';
    position: absolute;
    bottom: .18725rem;
    left: .375rem;
    right: .375rem;
    height: 1px;
    background-color: #B7202D;
}

a.dropdown-item:before {
    opacity: 0;
    -webkit-transform: translateY(-8px);
            transform: translateY(-8px);
    transition: opacity 0s, -webkit-transform 0s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    transition: transform 0s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0s;
    transition: transform 0s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0s, -webkit-transform 0s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

a.dropdown-item:hover:before,
a.dropdown-item:focus:before {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
}

a.dropdown-item:hover:before, a.dropdown-item:focus:before {
    transition: opacity 0.2s, -webkit-transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0.2s;
    transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0.2s, -webkit-transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.dropdown-item span {
    float: right;
    font-size: 10px;
    margin-left: 5px;
    margin-top: 4px;
}

.dropdown-divider {
    border-top: 1px solid #DEE2E6;
}

.cta-btn {
    color: #FFF !important;
    padding: .75rem 1.5rem !important;
    font-size: 14px !important;
    text-align: center;
    border-radius: 0px;
    border: 1px solid #B7202D;
    background-color: #B7202D;
    opacity: 1 !important;
}

.cta-btn:hover {
    color: #FFF;
    background-color: #AA2E3A;
    border-color: #AA2E3A;
}

.cta-btn.focus,
.cta-btn:focus,
.cta-btn:target,
.cta-btn:active {
    color: #FFF;
    background-color: #AA2E3A;
    border-color: #AA2E3A;
    box-shadow: 0 0 0 .2rem rgba(117,11,11,.5);
}

@media (min-width: 1200px) {
    #right-navbar {
        justify-content: flex-end;
    }

    .cta-btn {
        width: 131px;
    }

    .navbar-expand-xl .navbar-nav .nav-link {
    	padding: .75rem 1rem;
    }

    #center-navbar .nav-item:last-of-type {
        margin-right: 1.75rem;
    }

    .dropdown.show .nav-link {
        color: #B7202D;
    }

    .dropdown-toggle {
        transition: all .3s ease;
    }

    .dropdown.show .dropdown-menu {
    	display: block;
    	margin-top: 0;
    }

    .dropdown-toggle::after {
    	font-size: 10px;
    }

    .dropdown.show .dropdown-toggle:after {
    	transform: rotate(-180deg);
    	transition: all .1s ease-in-out;
    }

    .dropdown-menu {
        min-width: 285px;
    }
}

@media (max-width: 1199.98px) {
    .navbar {
        padding: 15px;
    }

    .navbar-collapse {
        max-height: calc(80vh - 80px);
        overflow-y: auto;
    }

    .navbar-collapse::-webkit-scrollbar {
        display: none;
    }

    .navbar-collapse {
        -ms-overflow-style: none;
        scrollbar-width: none;
    }

    /* .navbar-brand img {
        width: 86px;
        height: 45px;
    } */

    .navbar-brand img {
        width: 75px;
        height: 50px;
    }

    .navbar-nav .nav-item .nav-link {
    	padding: .75rem 1.25rem .75rem 0;
    }

    .dropdown-toggle::after {
        position: absolute;
        right: .4rem;
        top: 1.25rem;
    	font-size: 1rem;
    }

    #center-navbar {
        margin: 15px 0;
    }

    .dropdown.show .nav-link {
        color: #006A51;
        outline: none;
    }

    .dropdown.show .dropdown-toggle::after {
    	transform: rotate(-180deg);
    	transition: all .1s ease-in-out;
    }

    .dropdown-menu {
        margin-bottom: 15px;
        border-left: 1px solid #DEE2E6;
        border-right: 1px solid #DEE2E6;
        border-bottom: 1px solid #DEE2E6;
        box-shadow: none;
    }

    .dropdown-item {
        padding: .5rem .75rem;
    }
}

@media (max-width: 575.98px) {
    .navbar {
        box-shadow: 0px 10px 20px rgba(0,0,0,.1);
    }
}

.nav-link-active a.nav-link {
    color: #B7202D !important;
    opacity: 1 !important;
}


/* MOBILE MENU */

.navbar-toggler {
    margin: 0 0 0 1rem;
    padding: 0;
    border: none;
    background: transparent;
    border-radius: 100%;
}

.navbar-toggler:focus {
    outline: none;
    background: transparent !important;
}

.navbar-toggler .icon-bar {
    background-color: #000;
    transform: rotate(0deg) translate(0px, 0px);
    transition: ease all .2s;
}

.navbar-toggler .icon-bar {
    display: block;
    width: 22px;
    height: 2px;
    border-radius: 1px;
}

.navbar-toggler .icon-bar+.icon-bar {
    margin-top: 4px;
}

.icon-bar:nth-child(2) {
    width: 22px;
    transition: ease all .2s;
}

.navbar-toggler:hover>.icon-bar:nth-child(2) {
    width: 22px;
    transition: ease all .2s;
}

.navbar-toggler:active>.icon-bar:nth-child(2) {
    width: 22px;
    transition: ease all .2s;
}

.navbar-toggler:not(.collapsed) .icon-bar:nth-child(1) {
    background-color: #B7202D;
    transform: rotate(45deg) translate(5px, 4px);
    transition: ease all .2s;
}

.navbar-toggler:not(.collapsed) .icon-bar:nth-child(2) {
    opacity: 0;
    transition: ease all .2s;
}

.navbar-toggler:not(.collapsed) .icon-bar:nth-child(3) {
    background-color: #B7202D;
    transform: rotate(-45deg) translate(4px, -4px);
    transition: ease all .2s;
}


/* ICON BAR */

.iconbar {
    background-color: #B7202D;
    padding: 15px 0 0 0;
    font-size: 12px;
    font-weight: 400;
    display: block;
    text-align: center;
    text-decoration: none;
    transition: all .3s ease;
}

.iconbar .row {
    justify-content: center;
}

.iconbar .icon {
    display: block;
    margin: 0 auto;
}

.iconbar a {
    text-align: center;
    line-height: 1;
    color: #FFF !important;
    display: block;
    margin: 0 auto;
    transition: all .3s ease;
}

.iconbar .column {
    border-right: 1px solid #FFF;
    margin-bottom: 15px;
}

/* .iconbar .column:first-of-type {
    border-left: 1px solid #FFF;
} */

.iconbar .column:last-of-type {
    border-right: 0;
}

.iconbar a:hover,
.iconbar a:focus {
    opacity: .85;
    text-decoration: none;
}

.iconbar a.active::before {
    content: '';
    background: #FFF;
    width: 100%;
    height: 1px;
    position: absolute;
    top: -7.5px;
    left: 0;
    bottom: auto;
    right: 0;
}

.iconbar a.active::after {
    content: '';
    background: #FFF;
    width: 100%;
    height: 1px;
    position: absolute;
    top: auto;
    left: 0;
    bottom: -7.5px;
    right: 0;
}

.iconbar span {
    display: inline-block;
    margin-top: 5px;
}

@media (max-width: 575.98px) {
    .iconbar {
        display: none;
    }
}


/* HERO */

#hero {
    position: relative;
}

#hero .carousel-item {
    overflow: hidden;
}

.hero-text {
    color: #FFF;
    position: absolute;
    z-index: 3;
    top: 3rem;
    left: 0;
    right: 0;
    text-align: center;
}

.hero-text .row {
    justify-content: center;
}

/* .hero-text {
    color: #FFF;
    position: absolute;
    z-index: 3;
    top: 3rem;
    left: 3rem;
    right: auto;
}

.hero-text .col-12 {
    padding-left: 0;
    text-align: left !important;
} */

.hero-text h2 {
    line-height: 1;
}

.hero-text h2,
.hero-text p {
    color: #FFF;
    text-shadow: 0px 0px 30px rgba(0,0,0,.5);
}

.hero-text p {
    font-size: 1.3rem;
    margin-bottom: 0;
}

.hero-text a {
    margin-top: 1.5rem;
}

.bg-hero {
    -webkit-background-size: cover !important;
    -moz-background-size: cover !important;
    -o-background-size: cover !important;
    background-size: cover !important;
    height: calc(100vh - 167px);
    max-height: 1080px;
    min-height: 540px;
}

@media (max-width: 1199.98px) {
    .bg-hero {
        height: calc(80vh - 151px);
    }

    .hero-text p {
        font-size: 1.25rem;
    }
}

@media (max-width: 991.98px) {
    .bg-hero {
        height: calc(80vh - 151px);
    }

    .hero-text p {
        font-size: 1.2rem;
    }
}

@media (max-width: 767.98px) {
    .bg-hero {
        height: calc(80vh - 151px);
    }

    .hero-text p {
        font-size: 1.15rem;
    }
}

@media (max-width: 575.98px) {
    .bg-hero {
        height: calc(80vh - 151px);
    }

    .hero-text p {
        font-size: 1.1rem;
    }
}

ol.carousel-indicators {
    bottom: 15px;
    margin-bottom: 0;
}

.carousel-indicators li {
    background-color: rgba(255,255,255,.5);
    border: 1px solid rgba(255,255,255,.5);
    width: 12px;
    height: 12px;
    margin-left: 5px;
    margin-right: 5px;
    border-radius: 100%;
    opacity: 1;
    box-shadow: 0px 10px 20px rgba(0,0,0,.25);
}

.carousel-indicators li.active {
    background-color: #FFF;
    border: 1px solid #FFF;
    opacity: 1;
}

.carousel-control-prev,
.carousel-control-next {
    position: absolute !important;
    display: flex !important;
    color: #FFF !important;
    width: 35px;
    opacity: 1;
}

.carousel-control-prev::before,
.carousel-control-next::before {
    display: none;
}

/* .carousel-control-prev {
    -webkit-filter: drop-shadow(-4px 0px 0px rgba(0,0,0,1));
    filter: drop-shadow(-4px 0px 0px rgba(0,0,0,1));
    transition: all .3s ease;
}

.carousel-control-next {
    -webkit-filter: drop-shadow(4px 0px 0px rgba(0,0,0,1));
    filter: drop-shadow(4px 0px 0px rgba(0,0,0,1));
    transition: all .3s ease;
} */

@media (max-width: 767.98px) {
    #hero .carousel-control-prev, #hero .carousel-control-next {
        display: none;
    }
}


/* HOME */

#hero-image {
    z-index: 1;
    position: relative;
}

#hero-image img {
    height: auto;
    max-width: 100%;
    width: 100%;
    -webkit-object-fit: cover !important;
    -moz-object-fit: cover !important;
    -o-object-fit: cover !important;
    object-fit: cover !important;
    max-height: 475px;
    object-position: center bottom;
}

#hero-image::after {
    z-index: 2;
    content: '';
    position: absolute;
    top: 7.5px;
    bottom: 7.5px;
    left: 7.5px;
    right: 7.5px;
    box-shadow: inset 0 0 0 1px #FFF;
}

#home-intro {
    background: #FFF;
    z-index: 1;
    position: relative;
    padding: 3rem;
    margin-top: -6rem;
    text-align: center;
}

@media (max-width: 1399.98px) {
    #hero-image img {
        max-height: 400px;
    }
}

@media (max-width: 1199.98px) {
    #hero-image img {
        max-height: 350px;
    }

    #home-intro {
        margin-top: -3rem;
    }
}

@media (max-width: 767.98px) {
    #hero-image img {
        max-height: 300px;
    }

    #home-intro {
        padding: 3rem 15px;
    }
}

@media (max-width: 575.98px) {
    #hero-image img {
        max-height: 250px;
    }

    #home-intro {
        margin-top: -1.5rem;
    }
}

/* .home-mission {
    font-size: 1.7rem;
} */

.home-mission {
    font-size: 1.5rem;
}

.link-icon {
    font-size: 14px;
    font-weight: 700;
    color: #B7202D !important;
    display: block;
    text-align: center;
    text-decoration: none;
    transition: all .3s ease;
}

.link-icon .icon {
    display: block;
    margin: 0 auto 15px auto;
}

.link-icon:hover,
.link-icon:focus {
    text-decoration: none;
}


/* VIDEO */

#fullwidth-video {
    overflow: hidden !important;
    position: relative;
}

.fullwidth-video-bg {
    margin: auto;
    -webkit-transform-origin: 50% 50%;
    -moz-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    -o-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
}

@media (min-width: 1200px) {
    #fullwidth-video {
        height: 100vh;
        max-height: 1080px;
        min-height: 540px;
    }
}

@media (max-width: 1199.98px) {
    #fullwidth-video {
        height: auto;
    }

    .fullwidth-video-bg {
        display: none;
    }
}

#fullwidth-video .fullwidth-video-bg {
    position: absolute;
    z-index: 1;
    top: 0px;
    left: 0px;
    bottom: 0px;
    right: 0px;
    overflow: hidden;
	-webkit-background-size: cover !important;
    -moz-background-size: cover !important;
    -o-background-size: cover !important;
    background-size: cover !important;
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: 0% 50%;
}

#fullwidth-video iframe {
    width: 100vw;
    height: 56.25vw; /* Given a 16:9 aspect ratio, 9/16*100 = 56.25 */
    min-height: 100vh;
    min-width: 177.77vh; /* Given a 16:9 aspect ratio, 16/9*100 = 177.77 */
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.hero-pause-play {
    font-size: 14px;
    background: linear-gradient(rgba(255,255,255,.75), rgba(255,255,255,.75));
    backdrop-filter: blur(10px);
    width: 34px;
    height: 34px;
    line-height: 34px;
    border-radius: 0;
    color: #B7202D !important;
	position: absolute;
    bottom: 15px;
	left: auto;
    right: 15px;
    margin: 0;
	outline: 0;
	border: 0;
    text-align: center;
	z-index: 2;
    -webkit-filter: drop-shadow(0px 0px 1px rgba(0,0,0,.25));
    filter: drop-shadow(0px 0px 1px rgba(0,0,0,.25));
    transition: all .3s ease;
}


.hero-pause-play:hover,
.hero-pause-play:focus {
    background-color: #FFF;
    color: #AA2E3A !important;
}

.hero-scroller {
    font-size: 14px;
    background: linear-gradient(rgba(255,255,255,.75), rgba(255,255,255,.75));
    backdrop-filter: blur(10px);
    width: 34px;
    height: 34px;
    line-height: 34px;
    border-radius: 0;
    color: #B7202D !important;
    position: absolute;
    bottom: 15px;
    left: 0;
    right: 0;
    margin: 0 auto;
    outline: 0;
	border: 0;
    text-align: center;
    z-index: 2;
    -webkit-filter: drop-shadow(0px 0px 1px rgba(0,0,0,.25));
    filter: drop-shadow(0px 0px 1px rgba(0,0,0,.25));
    transition: all .3s ease;
}

.hero-scroller:hover,
.hero-scroller:focus {
    background-color: #FFF;
    color: #AA2E3A !important;
}

.hero-share {
    font-size: 14px;
    background: linear-gradient(rgba(255,255,255,.75), rgba(255,255,255,.75));
    backdrop-filter: blur(10px);
    width: 34px;
    height: 34px;
    line-height: 34px;
    border-radius: 0;
    color: #B7202D !important;
    position: absolute;
    bottom: 15px;
    left: 15px;
    right: 0;
    margin: 0;
    outline: 0;
	border: 0;
    text-align: center;
    z-index: 2;
    -webkit-filter: drop-shadow(0px 0px 1px rgba(0,0,0,.25));
    filter: drop-shadow(0px 0px 1px rgba(0,0,0,.25));
    transition: all .3s ease;
}

.hero-share:hover,
.hero-share:focus {
    background-color: #FFF;
    color: #AA2E3A !important;
}

@media (max-width: 1199.98px) {
    .hero-scroller,
    .hero-share {
        display: none;
    }
}

@media (max-width: 1199.98px) {
    .hero-pause-play-center,
    .hero-pause-play {
        display: none;
    }
}

.vimeo-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    pointer-events: none;
}

.vimeo-wrapper iframe {
    width: 100vw;
    height: 56.25vw; /* Given a 16:9 aspect ratio, 9/16*100 = 56.25 */
    min-height: 100vh;
    min-width: 177.77vh; /* Given a 16:9 aspect ratio, 16/9*100 = 177.77 */
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}


/* SUBPAGES */

.subpage-plain {
    background: #000;
    padding: 3rem 0;
    text-align: center;
}

.subpage-plain .divided-text {
    margin-bottom: .75rem;
}

.subpage-plain .divided-text img {
    width: 25px;
}

.subpage-plain h1 {
    color: #FFF;
    margin-bottom: 0;
}

.subpage-plain p {
    color: #FFF;
    margin-top: .75rem;
    margin-bottom: 0;
}

.subpage-plain a {
    color: #FFF !important;
    display: inline-block;
}

.subpage-container {
    color: #FFF;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.subpage-container .bg-image {
    height: 50vh;
    max-height: 500px;
}

.subpage-container .row {
    justify-content: center;
    align-items: center;
}

@media (min-width: 992px) {
    .subpage-overlay {
        position: absolute;
        z-index: 1;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        height: 100%;
        background: linear-gradient(rgba(0,0,0,0),rgba(0,0,0,.75));
    }

    .subpage-text {
        position: absolute;
        top: auto;
        bottom: 3rem;
        left: 0;
        right: 0;
        z-index: 2;
    }
}

.subpage-text h1 {
    color: #FFF;
    margin-bottom: 0;
    text-shadow: 0px 0px 10px rgba(0,0,0,.5);
}

.subpage-text p {
    color: #FFF;
    margin-top: .75rem;
    margin-bottom: 0;
    text-shadow: 0px 0px 10px rgba(0,0,0,.75);
}

.subpage-text a {
    color: #FFF !important;
    display: inline-block;
    word-wrap: break-word;
}

.subpage-text .divided-text {
    margin-bottom: .75rem;
}

.subpage-text .divided-text img {
    width: 25px;
}

@media (max-width: 1199.98px) {
    .subpage-container .bg-image {
        height: 45vh;
        max-height: 450px;
    }
}

@media (max-width: 991.98px) {
    .subpage-container .bg-image {
        height: 40vh;
        max-height: 400px;
    }

    .subpage-container {
        background-color: #000;
    }

    .subpage-text h1 {
        color: #FFF;
        text-shadow: none;
    }

    .subpage-text p {
        color: #FFF;
        text-shadow: none;
    }

    .subpage-text {
        margin-top: -13px;
        padding: 0 0 1.5rem 0;
        position: relative;
        display: block;
    }
}

@media (max-width: 767.98px) {
    .subpage-container .bg-image {
        height: 35vh;
        max-height: 350px;
    }
}

@media (max-width: 575.98px) {
    .subpage-container .bg-image {
        height: 25vh;
        max-height: 250px;
    }
}


/* SIDEBAR */

#program-sidebar .card {
    top: calc(96px + 30px);
    z-index: 999;
}

.sidebar-links {
    list-style-type: none;
    padding: 0;
    margin: 0;
    font-size: 14px;
}

.sidebar-links li a {
    color: #FFF !important;
    display: block;
    width: 100%;
    padding: .5rem;
}

.sidebar-links li a:hover,
.sidebar-links li a:focus,
.sidebar-links li a:target,
.sidebar-links li a:active {
    color: #FFF !important;
    opacity: .85;
}

.sidebar-links li a.active {
    color: #FFF !important;
    text-decoration: underline !important;
}


/* BLOG */

.blog-text p:last-of-type,
.blog-text ul:last-child {
    margin-bottom: 0;
}

figure {
    font-size: 1.15rem;
    margin-left: 15px;
    padding-left: 15px;
    border-left: 5px solid #B7202D;
}

blockquote {
    font-weight: 300;
    position: relative;
}

blockquote:before {
    content: "\f10d";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-style: normal;
    font-variant: normal;
    text-decoration: inherit;
    text-rendering: auto;
    position: absolute;
    font-size: 1.75rem;
    color: rgba(119,119,119,.1);
	-webkit-filter: drop-shadow(0px 0px 1px rgba(255,255,255,1));
    filter: drop-shadow(0px 0px 1px rgba(255,255,255,1));
    top: auto;
    bottom: 0;
    left: auto;
    right: 3rem;
    z-index: 1;
    -webkit-font-smoothing: antialiased;
}

blockquote:after {
    content: "\f10e";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-style: normal;
    font-variant: normal;
    text-decoration: inherit;
    text-rendering: auto;
    position: absolute;
    font-size: 1.75rem;
    color: rgba(119,119,119,.1);
	-webkit-filter: drop-shadow(0px 0px 1px rgba(255,255,255,1));
    filter: drop-shadow(0px 0px 1px rgba(255,255,255,1));
    top: auto;
    bottom: 0;
    right: .75rem;
    z-index: 1;
    -webkit-font-smoothing: antialiased;
}

figcaption {
    font-weight: 500;
    font-size: 12px;
    color: #000;
    text-transform: uppercase;
}

.bg-black .quote-row {
	color: #FFF !important;
}

.bg-black .quote-row figcaption {
	color: #FFF !important;
}

.quote-row,
.bg-gray .quote-row,
.bg-white .quote-row {
	color: #000 !important;
}


/* SWIPERS */

.border-white {
    border: 1px solid #FFF;
}

.faded-sides::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 50px;
    z-index: 9;
    background: linear-gradient(to left, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
}

.faded-sides::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 50px;
    z-index: 9;
    background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
}

.swiper-container {
    padding: 0 15px;
	margin: 0 -15px;
}

.swiper-wrapper {
	margin: 0 0 25px 0;
}

.swiper-slide {
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: top;
    -ms-flex-pack: top;
    -webkit-justify-content: top;
    justify-content: top;
    -webkit-box-align: top;
    -ms-flex-align: top;
    -webkit-align-items: top;
    align-items: top;
	height: auto;
}

.swiper-card-image {
    overflow: hidden;
}

.swiper-slide .card:hover,
.swiper-slide .card:focus {
    box-shadow: 0px 10px 20px rgba(0,0,0,.1);
}

.swiper-slide .card .card-body {
    padding: 1.5rem;
    text-align: left;
}

.swiper-slide .card .card-footer {
    padding: 0 1.5rem 1.5rem 1.5rem;
}

.swiper-container-horizontal>.swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {
    bottom: 10px;
}

.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
    opacity: 0;
}

.swiper-button-prev,
.swiper-button-next {
    background-color: #FFF;
    border-radius: 0;
    padding: 1rem;
    border: 0;
    transition: all .3s ease;
}

.swiper-button-prev.bottom,
.swiper-button-next.bottom {
    top: auto;
    bottom: 0;
}

.swiper-button-prev.bottom {
    left: 15px;
}

.swiper-button-next.bottom {
    right: 15px;
}

.swiper-button-prev:hover,
.swiper-button-prev:focus,
.swiper-button-next:hover,
.swiper-button-next:focus {
    background-color: #F8F9FA;
    border: 0;
}

.swiper-button-prev {
    left: 0;
}

.swiper-button-next {
    right: 0;
}

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23AA2E3A'%2F%3E%3C%2Fsvg%3E");
}

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23AA2E3A'%2F%3E%3C%2Fsvg%3E");
}

.swiper-button-next,
.swiper-button-prev {
    width: 13.5px;
    height: 22px;
    background-size: 11px 22px;
}

.swiper-button-next:focus,
.swiper-button-prev:focus {
    outline: none;
}

.swiper-pagination-fraction {
    border-radius: 30px;
    width: auto;
    left: 50%;
    transform: translateX(-50%);
    display: inline-block;
    padding: 0;
    font-size: 14px;
    font-weight: 600;
}

.swiper-pagination-bullet {
    background-color: #B7202D;
    border: 1px solid #FFF;
    opacity: 1;
}

.swiper-pagination-bullet-active {
    background: #B7202D;
    border: 1px solid #FFF;
}

.swiper-container-horizontal>.swiper-scrollbar {
    left: 15px;
    width: calc(100% - 30px);
}

.swiper-scrollbar-drag {
    background: rgba(191,47,56,.5);
}

.swiper-scrollbar.white .swiper-scrollbar-drag {
    background: rgba(255,255,255,1);
}


/* CARDS */

.card {
    border: 1px solid #DEE2E6;
    border-radius: 0;
    transition: all .3s ease;
}

.card-header:first-child,
.card-footer:last-child {
    border-radius: 0;
}

.card-header {
    background-color: #000;
    padding: 1.5rem;
    text-align: center;
}

.card-header p,
.card-header h2 {
    color: #FFF;
}

.card-header h2 {
    margin-bottom: 0;
}

.card-body {
    padding: 1.5rem;
}

.card-footer {
    padding: 1.5rem;
}

.card-body p:last-child,
.card-footer p:last-child {
    margin-bottom: 0;
}

.staff-link {
    display: block;
    width: 100%;
    height: 100%;
    text-decoration: none !important;
    transition: all .3s ease;
}

.staff-card {
    line-height: 1.25;
	height: 100%;
}

.staff-link .card:hover,
.staff-link .card:focus {
    box-shadow: 0px 10px 20px rgba(0,0,0,.1);
}

.staff-img {
    border-radius: 100%;
    width: 150px;
}

/* @media (max-width: 767.98px) {
    .staff-img {
        width: 100px;
    }
} */

.staff-link p {
    font-weight: 400;
    color: #000;
    transition: all .3s ease;
}

.staff-link:hover p,
.staff-link:focus p {
    color: #000;
}

.card-img-overlay {
    background: linear-gradient(rgba(0,0,0,0),rgba(0,0,0,.85));
}

.card-img-overlay p {
    color: #FFF;
    position: absolute;
    bottom: 1.5rem;
    left: 0;
    right: 0;
    font-size: 1.15rem;
    font-weight: 700;
    margin-bottom: 0;
    text-shadow: 0px 0px 10px rgba(0,0,0,.5);
}

.card-rounded {
    border-radius: 30px;
}

.card-rounded .card-img {
    width: 100%;
    border-radius: 30px;
}

.card-rounded .card-footer {
    border-bottom-left-radius: 30px !important;
    border-bottom-right-radius: 30px !important;
}

.zoom-link:before {
    display: none;
}

.zoom-wrapper {
	position: relative;
	overflow: hidden !important;
}

.zoom-wrapper img {
	max-width: 100% !important;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.card-zoom:hover img {
	-webkit-transform: scale(1.05);
	-moz-transform: scale(1.05);
	transform: scale(1.05);
}

.story-card {
    position: relative;
    z-index: 1;
    border-radius: 30px;
    width: 100%;
    box-shadow: none !important;
}

.quote-card {
    background: #FFF;
    position: relative;
    z-index: 1;
    border-radius: 0;
    width: 100%;
    border: 0;
    box-shadow: none !important;
    /* box-shadow: 0px 10px 20px rgba(0,0,0,.1); */
}

.quote-card .card-body,
.quote-card .card-footer {
    background: #FFF;
}

.quote-card blockquote {
    font-size: 14px;
}

.quote-card .position {
    font-size: 14px;
    color: #666;
    margin-bottom: 0;
    line-height: 1.15;
}

.quote-image {
    width: 75px;
    border-radius: 100%;
    border: 1px solid #DEE2E6;
}

.card-hover:hover,
.card-hover:focus {
    box-shadow: 0px 10px 20px rgba(0,0,0,.1);
}

.donor-card {
    background-color: #FFF;
    padding: .25rem .5rem;
    height: 100%;
    display: flex;
}

.donor-card.bg-cream {
    background-color: rgba(224,206,175,.2);
}

.donor-card p {
    align-self: center;
    font-size: 13px;
    margin-bottom: 0;
    line-height: 1.35;
}

.success-card {
    border-left: 5px solid #006A51;
    border-right: 1px solid #006A51;
    border-top: 1px solid #006A51;
    border-bottom: 1px solid #006A51;
}

#campaign-key {
    margin-top: 15px;
    font-size: 14px;
    line-height: 1.35;
}

#campaign-key svg {
    font-size: 16px;
}


/* IMG LINK */

.card-overlay-text {
    position: absolute;
    z-index: 2;
    padding: 1.5rem;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient( rgba(0,0,0,0), rgba(0,0,0,.5));
}

.img-link .card::after {
    content: '';
    z-index: 1;
    position: absolute;
    top: 50%;
    bottom: 0;
    left: 0;
    right: 0;
    background: url('/assets/img/logos/favicon-color.svg');
    background-size: 100%;
}

.img-link {
    display: block;
    height: 100%;
    transition: all .3s ease;
}

.img-link .card {
    height: 100%;
}

.img-link .img-link-bg {
    width: 100%;
    height: 100%;
    max-height: 600px;
    object-fit: cover;
}

.img-link img {
    max-width: 100%;
    height: auto;
    transition: all .3s ease;
}

.img-link:hover .zoom-wrapper img,
.img-link:focus .zoom-wrapper img {
    -webkit-transform: scale(1.05);
	-moz-transform: scale(1.05);
	transform: scale(1.05);
}

.img-link:hover .card-overlay-text h2,
.img-link:focus .card-overlay-text h2 {
    text-decoration: underline;
}

.card-overlay-text .card-icon {
    -webkit-filter: drop-shadow(0px 0px 1px rgba(0,0,0,.5));
    filter: drop-shadow(0px 0px 1px rgba(0,0,0,.5));
    color: #FFF;
    margin-bottom: .75rem;
}

.logo-container {
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 3;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    right: 0;
    margin: auto;
    text-align: center;
    width: 136px;
    height: 136px;
}

.logo-container img {
    width: 120px;
    height: 120px;
    will-change: transform;
    transform: none !important;
    transition: all .3s ease;
}

.card-overlay-text h2 {
    color: #FFF;
    text-shadow: 0 0 10px rgba(0,0,0,.25);
    margin-bottom: 0;
}

@media (max-width: 767.98px) {
    .card-overlay-text {
        padding: 15px;
    }

    .img-link .img-link-bg {
        min-height: 400px;
    }
}


/* FIND MY REP */

.location-divider {
    padding-top: .5rem;
    padding-bottom: .5rem;
    margin-bottom: 15px;
    text-align: center;
    border-radius: 30px;
    text-shadow: 0px 1px 1px rgba(0,0,0,1);
}

.location-card-footer {
    background: transparent;
    padding: 0;
}

.location-card-footer .row {
    justify-content: center;
}

.location-card-footer .row .col-auto {
    padding: 0;
}

.location-card-footer a {
    display: inline-block;
    padding: 1rem;
}


/* COLLAPSE */

.expand-btn.collapsed {
    font-weight: 500;
    color: #000;
    border: 1px solid #FFF;
    background-color: #FFF;
    font-size: 1rem;
    display: block;
    width: 100%;
    text-align: left;
    padding: .75rem 2.5rem .75rem 1rem;
    white-space: normal;
    position: relative;
    border-radius: 0px;
}

.expand-btn {
    font-weight: 500;
    color: #FFF;
    border: 1px solid #000;
    background-color: #000;
    font-size: 1rem;
    display: block;
    width: 100%;
    text-align: left;
    padding: .75rem 2.5rem .75rem 1rem;
    white-space: normal;
    position: relative;
    border-radius: 0px;
}

.expand-btn::after {
    font-size: 1rem;
    content: "\f078";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    right: 1rem;
    top: .75rem;
    position: absolute;
    color: inherit;
    display: inline-block !important;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    transform: rotate(-180deg);
    -webkit-font-smoothing: antialiased;
    transition: all .2s ease;
}

.expand-btn.collapsed::after {
    font-size: 1rem;
    content: "\f078";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    right: 1rem;
    top: .75rem;
    position: absolute;
    color: inherit;
    display: inline-block !important;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    transform: rotate(0deg);
    transition: all .2s ease;
}

.expand-btn:hover {
    color: #000;
}

.expand-btn:not(.collapsed):hover {
    color: #FFF;
}

.expand-btn.show {
    background-color: #000;
    color: #FFF !important;
    box-shadow: none;
}

.expand-btn:focus {
    border: 1px solid #000 !important;
    box-shadow: none;
}


/* NEWSLETTER SOCIAL */

ul.sm-nav-circles {
	padding: 0;
	margin: 0;
    display: flex;
    justify-content: center;
}

.sm-nav-circles li {
    position: relative;
	list-style-type: none;
	display: inline-block;
    margin: 0 5px;
    background-color: #B7202D;
    border-radius: 100%;
    width: 51px;
    height: 51px;
}

.sm-nav-circles li a {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    right: 0;
    font-size: 1.25rem;
    display: inline-block;
    background-color: #B7202D;
    border-radius: 100%;
	color: #FFF !important;
    padding: .5rem;
    transition: all .3s ease;
}

.sm-nav-circles li a:hover,
.sm-nav-circles li a:focus,
.sm-nav-circles li a:target,
.sm-nav-circles li a:active {
    background-color: #FFF;
	color: #B7202D !important;
}


/* SOCIAL FOOTER BAR */

ul.sm-nav-footer {
    padding: 0;
    margin: 0;
    display: flex;
    justify-content: center;
}

.sm-nav-footer li {
    display: inline-block;
}

.sm-nav-footer li a {
    display: block;
    font-size: 1.5rem;
    color: #B7202D;
    padding: 0 7.5px;
    transition: all .3s ease;
}

.sm-nav-footer li a:hover,
.sm-nav-footer li a:focus,
.sm-nav-footer li a:target,
.sm-nav-footer li a:active {
    color: #AA2E3A;
}


/* FOOTER */

.footer-logo {
    width: 170px;
    display: inline-block;
}

.footer-title {
    font-size: 1.25rem;
    font-weight: 700;
	color: #FFF;
    text-transform: uppercase;
    letter-spacing: .5px;
    margin-bottom: .25rem;
}

ul.footer-links {
    margin: 0;
	padding: 0;
    font-size: 14px;
}

.footer-links li {
	list-style-type: none;
    line-height: 1.25;
}

.footer-links li a {
	color: #FFF !important;
    display: block;
    padding: .375rem 0;
}

.footer-links li a span {
    float: right;
    font-size: 10px;
    vertical-align: top;
    margin-left: 5px;
    margin-top: 4px;
}

.footer-links li a svg {
    font-size: 10px;
    vertical-align: top;
    margin-left: 5px;
    margin-top: 4px;
}

ul.bot-nav {
    padding: 0;
    margin: 0 0 0 -7.5px;
}

.bot-nav li {
    list-style-type: none;
    display: inline-block;
}

.bot-nav li a {
    font-weight: 600;
    display: block;
    padding: 7.5px;
    color: #000;
}


/* ALERTS */

#alertbar {
    z-index: 2;
}

#alertbar {
    border: 0;
    border-radius: 0;
    padding: .5rem 0;
    font-size: 12px;
    margin-bottom: 0;
    border-bottom: 1px solid #DEE2E6;
}

#alertbar strong {
    font-weight: 700;
}

#alertbar p {
    margin-bottom: 0;
}

#alertbar a {
    display: inline-block;
    margin-left: 3px;
}

#alertbar .close {
    font-size: 1rem;
    position: relative;
    display: inline-block;
    padding: 0;
    opacity: 1;
    transition: all .3s ease;
}

#alertbar .close:hover,
#alertbar .close:focus {
    opacity: .75;
}

.alert-close {
    display: inline-block;
    color: #B7202D;
    background: transparent;
    border: 0;
    float: right;
    margin-left: .5rem;
}


/* MODALS */

.modal-body p:last-child {
	margin-bottom: 0;
}

.modal-content {
    box-shadow: 0px 10px 20px rgba(0,0,0,.1);
    border: 0;
    border-radius: 0;
    background-clip: content-box;
}

.modal-content {
    border-radius: 0;
}

.modal-header {
    border-radius: 0;
    padding: 1.5rem;
}

.modal-body {
    padding: 1.5rem;
}

.modal-body:last-child {
    border-radius: 0;
}

.modal-footer {
    border-radius: 0;
}

.modal .close {
    color: #B7202D;
    font-weight: 600;
    opacity: 1;
    transition: all .3s ease;
}

.modal .close:hover,
.modal .close:focus {
    opacity: .75;
}

.modal-backdrop {

}

.modal-backdrop.show {
    opacity: .85;
}


/* FORMS */

legend {
    margin-bottom: 1rem !important;
}

label {
    font-weight: 500;
    font-size: 14px;
}

.form-control {
    border-radius: 0px;
    border: 1px solid #DEE2E6;
}

.custom-select {
    border-radius: 0px;
    border: 1px solid #DEE2E6;
}

.form-control,
.custom-select {
    border: 1px solid #FFF;
}


/* TO TOP */

.scroll-top {
    position: fixed;
    opacity: 0;
    visibility: hidden;
    text-align: center;
    z-index: 9;
    background: #FFF;
    color: #B7202D;
    width: 35px;
    height: 35px;
    line-height: 35px;
    border: 0;
    border-radius: 0;
    right: 15px;
    bottom: 15px;
    transition: all 0.5s ease-in-out;
    box-shadow: 0px 10px 20px rgba(0,0,0,.1);
}

.scroll-top.show {
    visibility: visible;
    cursor: pointer;
    opacity: 1;
}

.scroll-top.show:hover,
.scroll-top.show:focus {
    background-color: #FFF;
    color: #AA2E3A;
    box-shadow: 0px 10px 20px rgba(0,0,0,.15);
}


/* USED FOR HIDING BODY UNTIL JS LOADS - LEAVE AT THE END */

body {
    opacity: 0;
}
