/* fonts */
@font-face {
    font-family: "Montserrat-Regular";
    src: local(Montserrat-Regular),
        url("../fonts/Montserrat-Regular.ttf") format("OpenType");
}
@font-face {
    font-family: "Montserrat-ExtraLight";
    src: local(Montserrat-ExtraLight),
        url("../fonts/Montserrat-ExtraLight.ttf") format("OpenType");
}
@font-face {
    font-family: "Montserrat-SemiBold";
    src: local(Montserrat-SemiBold),
        url("../fonts/Montserrat-SemiBold.ttf") format("OpenType");
}

/* core */
body {
    font-family: "Montserrat-Regular";
}
a,
a img,
button {
    -moz-transition: all 200ms ease-in-out;
    -ms-transition: all 200ms ease-in-out;
    -o-transition: all 200ms ease-in-out;
    transition: all 200ms ease-in-out;
}

a {
    opacity: 1;
}
a:hover,
a:focus {
    opacity: 0.8;
    text-decoration: none;
}

a img {
    opacity: 1;
}

ul,
li {
    list-style: none;
    padding: 0;
    margin: 0;
}

p {
    font-size: 14px;
    color: #464646;
    font-family: "Montserrat-Regular";
}

hr {
    margin: 30px 0;
}

h1 {
    margin: 0;
}

h1 a {
    display: block;
}
label {
    display: inline-block;
    margin-bottom: -0.5rem;
    font-family: "Montserrat-Regular";
    font-size: 14px;
}

.content {
    padding-bottom: 80px;
}
.btn {
    border-radius: 8px;
    font-family: "Montserrat-SemiBold";
}
.btn-primary,
.btn-primary:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active,
.show > .btn-primary.dropdown-toggle {
    background-color: #163974 !important;
    border: 2px solid #163974;
}
.btn-primary:hover,
.btn-secondary:hover,
.btn-light:hover {
    background-color: #fff !important;
    color: #163974;
    border: 2px solid #fff;
}

.btn-secondary,
.btn-secondary:not(:disabled):not(.disabled).active,
.btn-secondary:not(:disabled):not(.disabled):active,
.show > .btn-secondary.dropdown-toggle {
    background-color: #ff5f00 !important;
    border: 2px solid #ff5f00;
    color: #fff;
}
.btn-light,
.btn-light:not(:disabled):not(.disabled).active,
.btn-light:not(:disabled):not(.disabled):active,
.show > .btn-light.dropdown-toggle {
    background-color: #528cd1 !important;
    border: 2px solid #528cd1;
    color: #fff;
}

.navbar {
    background-color: #163974 !important;
    padding: 20px 0;
    font-family: "Montserrat-SemiBold";
}
.nav-item {
    margin-left: 10px;
    font-size: 13px;
}
.navbar .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .nav-link.active,
.navbar-light .navbar-nav .nav-link.show,
.navbar-light .navbar-nav .show > .nav-link {
    color: #fff;
}
.navbar .navbar-nav .nav-link {
    color: #fff;
}
.navbar-nav {
    margin-left: 60px;
}
h2 {
    color: #464646;
    font-family: "Montserrat-SemiBold";
    font-size: 22px;
}
.navbar-toggler {
    border: none !important;
}
.navbar-toggler:focus {
    box-shadow: none;
}
.navbar-toggler-icon {
    background: url(../img/icon-mobile.svg) no-repeat;
}

/* site */
.banner {
    background: url(../img/bg-banner.jpg) left center;
    height: auto;
    display: flex;
}
.manifesto {
    background: #ff5f00;
    border-radius: 16px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 60px;
}
.manifesto a {
    font-size: 28px;
}
.manifesto h2 {
    font-size: 32px;
    font-family: "Montserrat-SemiBold";
    color: #fff;
}
.foto-banner {
    display: flex;
    justify-content: center;
    align-items: flex-end;
}

.dados01 {
    background: #163974;
}
.dados01 h3 {
    color: #fff;
    font-size: 28px;
    font-family: "Montserrat-SemiBold";
}
.dados01 span {
    color: #fff;
    font-size: 24px;
    font-family: "Montserrat-SemiBold";
}
.dados01 p {
    color: #fff;
    font-size: 20px;
}
.dados01 .grafismo {
    text-align: left;
}

.dados02 {
    background: #f4e6df;
}
.dados02 h3 {
    color: #163974;
    font-size: 28px;
    font-family: "Montserrat-SemiBold";
}
.dados02 p {
    color: #ff5f00;
    font-size: 20px;
}

.dados03 {
    background: #ff5f00;
}
.dados03 h3 {
    color: #163974;
    font-size: 28px;
    font-family: "Montserrat-Regular";
}
span.white {
    color: #fff;
}
span.bold {
    font-family: "Montserrat-SemiBold";
}
.dados03 p {
    color: #163974;
    font-size: 20px;
}

.foto-dados {
    display: flex;
    justify-content: center;
    align-items: flex-end;
}

.dados04 {
    background: #528cd1;
}
.dados04 h3 {
    color: #163974;
}
.dados04 p {
    color: #163974;
}

.dados05 {
    background: #163974;
}

.dados05 h3 {
    color: #fff;
}
.dados05 p {
    color: #fff;
}

#pesquisa {
    background: #163974;
    text-align: center;
}
.bg-pesquisa {
    background: url(../img/foto-pesquisa.jpg) center top no-repeat;
    height: 543px;
    background-size: cover;
    display: flex;
    align-items: center;
}
#pesquisa h2 {
    color: #fff;
    font-family: "Montserrat-SemiBold";
    font-size: 36px;
}
.bg-pesquisa a {
    font-size: 24px;
}

#quem-somos {
    background: #528cd1;
}
.bg-quem-somos {
    background: url(../img/bg-quem-somos.jpg) right top no-repeat;
    min-height: 526px;
}
.bg-quem-somos h2 {
    color: #163974;
    font-size: 36px;
}
.bg-quem-somos p {
    color: #fff;
    font-size: 18px;
}

#eixos {
    background: #f4e6df;
}
#eixos h2 {
    text-align: center;
    color: #163974;
    font-size: 36px;
}

#eixos .card {
    width: auto;
    min-height: 638px;
    border: 0;
    display: block;
    padding: 40px;
    display: flex;
    justify-content: space-between;
    color: #fff;
    margin-bottom: 40px;
    overflow: hidden;
}

#eixos h3,
#eixos h4 {
    font-family: "Montserrat-SemiBold";
}
#eixos p {
    color: #fff;
    font-size: 18px;
}

.eixo01 {
    background: url(../img/eixo01.png) top center no-repeat;
    background-size: 100% 100%;
}
.eixo02 {
    background: url(../img/eixo02.png) no-repeat;
    background-size: 100% 100%;
}
.eixo03 {
    background: url(../img/eixo03.png) no-repeat;
    background-size: 100% 100%;
}
.eixo04 {
    background: url(../img/eixo04.png) no-repeat;
    background-size: 100% 100%;
}
.eixo05 {
    background: url(../img/eixo05.png) no-repeat;
    background-size: 100% 100%;
}
.eixo06 {
    background: url(../img/eixo06.png) no-repeat;
    background-size: 100% 100%;
}

.instituicoes {
    background: #fff;
}
.instituicoes h2 {
    text-align: center;
    font-size: 20px !important;
    text-transform: uppercase;
    font-family: "Montserrat-Regular";
}

#contato {
    background: #528cd1;
}
#contato h2 {
    color: #fff;
    font-family: "Montserrat-Semibold";
    font-size: 36px;
}

.button-float {
    position: fixed;
    right: 30px;
    bottom: 20px;
    z-index: 100;
}

.button-float a {
    opacity: 1;
}

.button-float a:hover {
    opacity: 0.8;
}

/* mobile */
@media (max-width: 768px) {
    .navbar-nav {
        margin: 20px 0;
        text-align: center;
    }
    .banner {
        background: url(../img/bg-banner.jpg) top;
    }
    .logo-banner img {
        width: 80%;
    }
    .manifesto {
        padding: 40px 20px;
    }
    .manifesto h2 {
        font-size: 24px;
    }
    .manifesto a {
        font-size: 18px;
    }
    .dados01 .grafismo {
        text-align: center;
    }

    .dados04 .foto-dados {
        display: none;
    }

    #eixos .card {
        margin-bottom: 10px;
    }

    .button-float a {
        opacity: 1;
    }

    #sobre .bg-title {
        background: none !important;
    }

    #sobre .bg-sobre {
        background: none !important;
    }

    #sobre .bg-metodologia {
        background: none !important;
    }

    #mapa .bg-title {
        background: none !important;
    }
}

@media (min-width: 768px) and (max-width: 1199.98px) {
    #eixos .card {
        border-radius: 20px;
    }

    .eixo01 {
        background: url(../img/eixo01.png) top center no-repeat;
        background-size: cover;
    }
    .eixo02 {
        background: url(../img/eixo02.png) top center no-repeat;
        background-size: cover;
    }
    .eixo03 {
        background: url(../img/eixo03.png) top center no-repeat;
        background-size: cover;
    }
    .eixo04 {
        background: url(../img/eixo04.png) top center no-repeat;
        background-size: cover;
    }
    .eixo05 {
        background: url(../img/eixo05.png) top center no-repeat;
        background-size: cover;
    }
    .eixo06 {
        background: url(../img/eixo06.png) top center no-repeat;
        background-size: cover;
    }
}

/** SOBRE */

#sobre {
    padding-top: 100px;
    min-height: 900px;
    background-color: #f4e6df;
}

#sobre h2 {
    font-size: 40px;
    color: #163974;
    font-weight: 700px;
}

#sobre h3 {
    font-size: 36px;
    color: #528cd1;
    font-weight: 600px;
}

#sobre p {
    font-size: 20px;
    color: #163974;
    line-height: 32px;
    font-weight: 400px;
}

#sobre .bg-title {
    min-height: 120px;
    background: url(../img/bg-sobre-01.png) right top no-repeat;
    background-size: 500px;
}

#sobre .bg-sobre {
    min-height: 350px;
    background: url(../img/bg-sobre-02.png) right center no-repeat;
    background-size: 490px;
}

#sobre .bg-metodologia {
    min-height: 400px;
    background: url(../img/bg-sobre-03.png) right bottom no-repeat;
    background-size: 620px;
}

/** MAPA */

#mapa {
    padding-top: 100px;
    min-height: 2000px;
    background-color: #163974;
}

#mapa .bg-title {
    min-height: 154px;
    background: url(../img/bg-mapa-01.png) right top no-repeat;
    background-size: 500px;
}

#mapa h2 {
    font-size: 40px;
    color: #f4e6df;
    font-weight: 700px;
}

#mapa p {
    font-size: 20px;
    color: #f4e6df;
    line-height: 32px;
    font-weight: 400px;
}

#mapa .filter select {
    width: 130px;
    height: 44px;
    border-radius: 8px;
    border-left: 14px solid transparent;
    border-right: 14px solid transparent;
    box-shadow: 0px 3px 8px 0px rgba(0, 0, 0, 0.04);
}

#mapa .filter label {
    font-size: 20px;
    color: #f4e6df;
    line-height: 24px;
    font-weight: 700px !important;
}

#mapa .filter .btn {
    padding: 0;
    width: 291px;
    height: 63px;
    font-size: 30px;
    font-weight: 700;
}

#mapa .panel {
    min-height: 1000px;
    border-radius: 15px;
    background-color: #ffffff;
}

/** Glossário */

#glossario {
    padding-top: 100px;
    min-height: 2000px;
    background-color: #528cd1;
}

#glossario h2 {
    font-size: 40px;
    color: #f4e6df;
    font-weight: 700px;
}

#glossario p {
    font-size: 20px;
    color: #FFFFFF;
    line-height: 32px;
    font-weight: 400px;
}

#glossario .description {
    font-size: 16px;
    color: #163974;
    line-height: 32px;
    font-weight: 400px;
}

#glossario .bg-title {
    min-height: 154px;
    background: url(../img/bg-glossario-01.png) right top no-repeat;
    background-size: 500px;
}

#glossario .panel {
    padding: 40px 60px;
    margin-bottom: 20px;
    min-height: 1000px;
    border-radius: 15px;
    background-color: #ffffff;
}



#glossario .btn-glossario {
    --bs-btn-color: #528cd1;
    --bs-btn-bg: #fff;
    --bs-btn-border-color: #fff;
    --bs-btn-hover-color: #000;
    --bs-btn-hover-bg: #163974;
    --bs-btn-hover-border-color: #163974;
    --bs-btn-focus-shadow-rgb: 11, 172, 204;
    --bs-btn-active-color: #ffffff;
    --bs-btn-active-bg: #163974;
    --bs-btn-active-border-color: #163974;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #000;
    --bs-btn-disabled-bg: #528cd1;
    --bs-btn-disabled-border-color: #528cd1;
    border-radius: 10px;
    padding: 10px 17px;
}
