/* ===================================
    Global
====================================== */

:root {
    --cci-red: #D64000;
    --cci-purple: #3943B7;
    --cci-gray: #4D4D4D;
    --cci-deep-sienna: #3b1618;
    --cci-sienna: #5e0b16;
    --cci-gold: #faa31a;
    --cci-dark-blue: #02001D;
    --cci-charcoal: #02001D;
}

header a.logo img {
    max-height: 100%;
}

.footer-logo {
    max-height: 100%;
}

.bg-deep-purple-opacity {background-color: rgba(57, 67, 183, 0.60);}
.bg-gold-opacity {background-color: rgba(250, 163, 26, 0.60);}

section {
    padding: 48px 0;
}

a, a:active, a:focus {
    color: var(--cci-red);
    text-decoration: underline;
}

@media (max-width: 767px) {
    nav.navbar .container {
        padding-left: 15px;
        padding-right: 15px;
    }   
}

@media (min-width: 992px) {
    .footer__contact-info {
        position: relative;
    }
    .footer__contact-info:before {
        content: '';
        position: absolute;
        left: -34px;
        top: 0;
        bottom: 0;
        width: 1px;
        background-color: var(--cci-red);
    }
}

/* ===================================
    Typography
====================================== */

/*
@import url('https://fonts.googleapis.com/css2?family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Libre+Franklin:wght@300&display=swap');
*/

@font-face {
    font-family: 'libre_baskervillebold';
    src: url('/assets/fonts/librebaskerville-bold-webfont.woff2') format('woff2'),
         url('/assets/fonts/librebaskerville-bold-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'libre_baskervilleitalic';
    src: url('/assets/fonts/librebaskerville-italic-webfont.woff2') format('woff2'),
         url('/assets/fonts/librebaskerville-italic-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'libre_baskervilleregular';
    src: url('/assets/fonts/librebaskerville-regular-webfont.woff2') format('woff2'),
         url('/assets/fonts/librebaskerville-regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'libre_franklinlight';
    src: url('/assets/fonts/LibreFranklin-Light.woff2') format('woff2'),
         url('/assets/fonts/LibreFranklin-Light.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'libre_franklinsemibold';
    src: url('/assets/fonts/LibreFranklin-SemiBold.woff2') format('woff2'),
         url('/assets/fonts/LibreFranklin-SemiBold.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}


@font-face {
    font-family: 'indivisible_bold';
    src: url('/assets/fonts/48821otf.otf') format('opentype'),
         url('/assets/fonts/48821otf.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'indivisible_regular';
    src: url('/assets/fonts/48827otf.otf') format('opentype'),
         url('/assets/fonts/48827otf.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}


.alt-serif-font {
    font-family: 'libre_baskervillebold', serif;
}

.hero--lg-type {
    font-size: 102px;
    line-height: .75;
}

@media (min-width: 768px) {
    .hero--lg-type {
        font-size: 178px;
    }
}

body {
    font-family: 'indivisible_regular', sans-serif;
    /*color: var(--cci-deep-sienna);*/
}

/* font family */
.alt-font {font-family: 'indivisible_bold', sans-serif; font-weight: 500}
.alt-font-semibold {font-family: 'Montserrat', sans-serif; font-weight: 500}
.main-font {font-family: 'indivisible_regular', sans-serif;}

/* heading */
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
    font-family: 'indivisible_bold', serif;
    color: var(--cci-dark-blue);
}

.h1 {font-size:72px !important; line-height: 78px !important;}
.h2 {font-size:55px !important; line-height:60px !important}
.h3 {font-size:48px !important; line-height:54px !important}
.h4 {font-size:40px !important; line-height:46px !important}
.h5 {font-size:32px !important; line-height:40px !important}
.h6 {font-size:25px !important; line-height:30px !important}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a {
    color: var(--cci-deep-sienna);
}

h1 {
    line-height: 90px !important;
}

.page-item.active .page-link {
    background-color: var(--cci-purple);
    border-color: var(--cci-purple);
}

.page-link {
    color: var(--cci-purple);
}

.text--lg {
    font-size: 24px;
    line-height: 25px;
}

.text--md {
    font-size: 27.65px;
    line-height: 33.18px;
}

@media (min-width: 768px) {
    .text--lg {
        font-size: 41px;
        line-height: 42.97px;
    }
}

/* home hero */

.home-hero__title {
    font-size: 30px;
    line-height: 36px !important;
    color: var(--cci-red);
    /*font-weight: 700 !important;*/
}

.home-hero__text p {
    font-size: 18px;
    line-height: 23.18px;
}

@media (min-width: 768px) {
    .home-hero__title {
        font-size: 60px;
        line-height: 72px !important;
    }
    .home-hero__text p {
        font-size: 27.65px;
        line-height: 33.18px;
    }
}

/* body */

.main-content p {
    font-size: 21px;
    line-height: 25.2px;
}

.main-content.news-details p {
    font-size: 16px;
    line-height: 20px;
}

.text--purple {
    color: var(--cci-purple);
}

.text--red {
    color: var(--cci-red);
}

.text--gray {
    color: var(--cci-gray);
}

.text--dark-blue {
    color: var(--cci-dark-blue);
}

.text--charcoal {
    color: var(--cci-charcoal);
}

.text-extra-dark-gray, .btn.text-extra-dark-gray {color:#232323 !important;}

.link--purple {
    color: var(--cci-purple);   
}

.link--purple {
    color: var(--cci-purple);   
}

.link--white {
    color: #fff;
}

.bg--gray {
    background-color: var(--cci-gray);
}

.bg--purple {
    background-color: var(--cci-purple);
}

.btn.bg--purple:hover,
.btn.bg--purple:focus {
    background-color: var(--cci-purple);
}

.btn--purple {
    background-color: var(--cci-purple);
    color: #fff;
}

.btn--purple:hover {
    background-color: hsl(235, 69%, 62%);
    color: #fff;
}

.border-bottom--purple {
    border-bottom: 1px solid var(--cci-purple) !important;
}

.bg--gold {
    background-color: var(--cci-gold);
}

.bg--dark-blue {
    background-color: var(--cci-dark-blue);
}

header nav.navbar .navbar-nav > li.current > a, nav.navbar.bootsnav ul.nav > li.current > a {
    color: var(--cci-red) !important;
}

.text-transform-none {
    text-transform: none !important;
}

@media (max-width: 767px) {
    .btn {
        font-size: 12px;
    }
}

blockquote p {
    font-style: italic;
}

.main-content p strong {
    font-family: 'indivisible_bold', sans-serif;
}

/* ===================================
    Modules
====================================== */

/* collapse */

button .fa-chevron-down,
button .ti-angle-down {
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
}

button[aria-expanded='true'] .fa-chevron-down,
button[aria-expanded='true'] .ti-angle-down {
    transform: rotate(180deg);
}

/* two-column block */

@media (min-width: 992px) {
    .two-column-block .col:first-child {
        padding-right: 44px;
    }
    .two-column-block .col:last-child {
        padding-left: 44px;
        position: relative;
    }
    .two-column-block .col:last-child:before {
        content: '';
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
        width: 1px;
        background-color: var(--cci-dark-blue);
    }
}