/*ICONES*/
@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.13.1/font/bootstrap-icons.min.css");
/*FONTES*/
@import url('https://fonts.googleapis.com/css2?family=Merriweather:ital,opsz,wght@0,18..144,300..900;1,18..144,300..900&family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');
/*GENÉRICAS GERÉRICAS*/
body{
    font-family: Montserrat, sans-serif;
    overflow-x: hidden!important;
}

body *::selection{
    background-color:#48A500;
    color:white;
}

.campoCarregando{
    display:block;
    width:100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    font-weight: 700;
    color:#008BD2;
    margin:25% auto;
}

.s-z-index{
    z-index: 999999999;
}

.campoCarregando img{
    width:90px;
}

#carregar-mais-cards{
    margin-left:30px;
}

p{
    font-size:17px;
    line-height:1.7em;
}

.alignright{
    float:right;
    margin:40px -80px 40px 40px
}
.alignleft{
    float:left;
    margin:40px 40px 40px -80px
}

.text-right{
    text-align: right;
}
.margin-0-auto{
    margin:0 auto;
}
.w-20{
    width:20%
}
.w-50{
    width:50%
}
.t-t{
    text-transform: uppercase;
}

.padding-section{
    padding:5rem 0;
}
.padding-section-2x{
    padding:20vh 0;
}
.padding-section-top{
    padding-top:7rem;
}
.padding-box{
    padding:5rem;
}


.chamada{
    font-size: 14px;
    font-weight: 600;
    line-height: .9em;
    color: #333;
    text-transform: uppercase;
    letter-spacing: 5px;
    margin-bottom: 15px;
}

.h-32{
    height:32px;
}
.h-64{
    height:64px;
}
.txt-regiao{
    font-weight: 700;
    font-style: normal;
    text-transform: uppercase;
    letter-spacing: 8px;
    text-align: center;
    margin-top: 18px;
    color: #48A500;
    font-size: 12px;
}

h1{
    font-size:48px;
}

h1,h2, h3{
    font-family: "Montserrat",sans-serif;
    font-weight: 900;
    margin-bottom:2vh;
    line-height:1em;
}
h4,h5,h6{
    font-family: "Montserrat",sans-serif;
    font-weight: 600
}
.verde{
    color:#48A500!important;
}
.verde-limao{
    color:#BEF731!important;
}
.bck-verde-limao{
    background:#BEF731!important;
}
.branco{
    color:#fff!important;
}
.vermelho{
    color:#F70C2F!important;
}
.azul{
    color:#008BD2!important;
}
.amarelo{
    color:#FFD400!important;
}
.lilas{
    color:#9341D8!important;
}
.laranja{
    color:#ff6d01!important;
}
.cinza-1{
    color:#111!important;
}
.cinza-2{
    color:#666!important;
}
.cinza-3{
    color:#999!important;
}
.cinza-claro{
    color:#f7f7f7!important;
}
.bck-verde{
    background-color:#48A500!important;
}
.bck-branco{
    background-color:#48A500!important;
}
.bck-vermelho{
    background-color:#F70C2F!important;
}
.bck-azul{
    background-color:#008BD2!important;
}
.bck-azul-2{
    background-color:#3a608d!important;
}
.bck-amarelo{
    background-color:#FFD400!important;
}
.bck-lilas{
    background-color:#9341D8!important;
}
.bck-cinza-1{
    background-color:#111!important;
}
.bck-cinza-2{
    background-color:#666!important;
}
.bck-cinza-3{
    background-color:#999!important;
}
.bck-cinza-claro{
    background-color:#f7f7f7!important;
}
.bck-laranja{
    background-color:#ff6700!important;
}

.bck-transparente{
    background-color:transparent!important;
    border:2px solid white!important;
}
.botao {
    position: relative;
    display: inline-block;
    padding: 16px 24px;
    font-size: 14px;
    color: white;
    background-color: #333; /* Cor de fundo inicial */
    border: none;
    cursor: pointer;
    overflow: hidden;
    transition: color 0.3s ease-in-out;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    border-radius: 30px;
    text-decoration: none;
}

.botao.botao-penduricalhos{
    width:50%;
    margin:0 auto;
    top:-40px;
    border:2px solid white;
}

.botao.botao-retangular {
    border-radius: 0;
}
.botao span {
    transition:all linear .1s;
}
.botao:hover span{
    padding-left:8px;
}

.botao.botao-menor{
    padding:16px;
}

.botao.botao-pequeno{
    padding:5px 12px;
    font-size:12px;
}

.botao.botao-tag {
    padding: 4px 24px;
    text-transform: lowercase;
    font-size: 12px;
    font-weight: 500;
    background: rgba(255, 255, 255, .3);
    margin-right: 8px;
}

.botao::after {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.2); /* Cor do efeito de transparência */
    transition: left 0.3s ease-in-out;
}

.botao:hover::after {
    left: 0;
}


.mini-detalhamento{
    font-size: 12px;
    margin-top: 5px;
    display: block;
    color: #727272;
    font-weight: 600;

}

/*ÁREA HEADER*/
.topo{
    padding:30px 0 5px 0;

}
.mega-menu{
    background:#333;
}
.mega-menu .bandeira{
}

.mega-menu .box-bandeira-do-brasil{
    margin-top:24px;
}
.mega-menu .box-textual{
}
.mega-menu .explicacao-do-box-estados{
    padding:80px;
    background:#4a4a4a;
}
.mega-menu .explicacao-do-box-estados-2{
    padding:80px;
}

.mega-menu .box-bandeira-do-brasil .ico-bandeira-do-brasil{
    width:3.5em;
    margin-top:-20px;
}

.ico-bandeira-do-brasil {
    transition: transform 0.5s ease-in-out;
}

.ico-bandeira-do-brasil:hover {
    animation: heartbeat 1.5s infinite ease-in-out;
}

@keyframes heartbeat {
    0% {
        transform: scale(1);
    }
    10% {
        transform: scale(1.05);
    }  /* Primeiro "tum" */
    20% {
        transform: scale(1);
    }  /* Volta ao normal */
    30% {
        transform: scale(1.05);
    }  /* Segundo "tum" */
    40% {
        transform: scale(1);
    }  /* Volta ao normal */
    70% {
        transform: scale(1);
    }  /* Pausa maior antes de repetir */
    100% {
        transform: scale(1);
    }  /* Pausa continua até reiniciar */
}

@keyframes heartbeat-2 {
    0% {
        transform: scale(1);
    }
    10% {
        transform: scale(1.3);
    }  /* Primeiro "tum" */
    20% {
        transform: scale(1);
    }  /* Volta ao normal */
    30% {
        transform: scale(1.3);
    }  /* Segundo "tum" */
    40% {
        transform: scale(1);
    }  /* Volta ao normal */
    70% {
        transform: scale(1);
    }  /* Pausa maior antes de repetir */
    100% {
        transform: scale(1);
    }  /* Pausa continua até reiniciar */
}


.mega-menu .box-textual ul.lista-estados{
    display:flex;
    gap:36px;
    flex-wrap: wrap;
}
.mega-menu .box-textual ul.lista-estados li{
    text-align: center;
}
.mega-menu .box-textual ul.lista-estados li a{
    letter-spacing: 1px;
    text-decoration: none;
    color:white;
    text-transform: uppercase;
    color:white;
    font-size:12px;
    font-weight: 600;
}
.mega-menu .box-textual ul.lista-estados li a img{
    width:1.7vw;
}

.mega-menu.box-bandeira{
    position:relative;
    background:transparent;
    z-index: 99;
}
.seta-para-baixo{
    color:white;
}


.mega-menu.box-bandeira .abrirEstados{
    cursor:pointer;
}

.mega-menu.box-bandeira .abrir-estados img{
}
.mega-menu.box-bandeira .abrir-estados:hover{
    cursor:pointer;
}


.mega-menu.box-estados{
    position: absolute;
    width:100%;
    display:none;
    margin-top: -67px;
    z-index: 4;
    box-shadow: 0px 20px 25px rgba(0,0,0,.8);
}

.ico-seta {
    transition: transform 0.3s ease-in-out;
    display:block;
    animation:anima-seta .3s 4 alternate;
}

@keyframes anima-seta{
    to{
        transform:translateY(10px)
    }
}

.rotacionando {
    transform: rotateX(180deg);
}


.topo img.logo-topo{
    width:12vw;
}
/* CAIXAS DAS REGIÕES */
.lista-box-estados {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    justify-content: flex-start;
}

.lista-box-estados .box-regiao {
    background-color: #2a2a2a;
    padding: 26px 16px;
    border-radius: 8px;
    min-width: 170px;
    flex: 1 1 170px;
    text-align: center;
}

.lista-box-estados .box-regiao h2 {
    font-size: 1rem;
    color: #ffd400;
    margin-bottom: 12px;
    padding-bottom: 4px;
    letter-spacing: 1px;
    font-weight: 700;
    margin-bottom: 20px;
}
/* LISTA DE ESTADOS DENTRO DE CADA REGIÃO */
.lista-box-estados .box-regiao ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 20px 10px;
}

.lista-box-estados .box-regiao li {
    width: 48px;
}
.mega-menu .msg-informativa p{
    color: #f9f9f9;
    font-size: 14px;
    margin-top: 20px;
    width: 85%;
    text-align: right;
    float: right;
}
.mega-menu .msg-informativa p a{
    color: white;
}

.lista-box-estados .box-regiao li a {
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: 0.7rem;
    color: white;
    text-decoration: none;
    transition: transform 0.2s ease;
    font-weight: 600;
}
.lista-box-estados .box-regiao li a:hover img{
    transition: all linear .2s;
    outline:4px solid transparent;
}
.lista-box-estados .box-regiao li a:hover img {
    outline:4px solid #FFD400;
}

.lista-box-estados .box-regiao li img {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: 1px solid #555;
    object-fit: cover;
}

/* INATIVOS */
.lista-box-estados .box-regiao li.deactive a {
    opacity: 0.4;
    pointer-events: none;
    filter: grayscale(100%);
}


/*NOVAS IMPLEMENTAÇÕES*/
.label-ranking-tipo{
    position:absolute;
}
/*NOVAS IMPLEMENTAÇÕES*/



/*BANNER PRINCIPAL*/

section.banner-principal{
    position:relative;
    height:70vh;
    overflow: hidden;
    margin-top:-67px;

}

section.banner-principal img{
    width: 100%;
    height:70vh;
    object-fit: cover;
    animation:zoom-in 10s infinite alternate linear;
}

@keyframes zoom-in{
    from{
        transform:scale(1);
    }
    to{
        transform:scale(1.1);
    }
}

section.banner-principal .carousel-indicators{
    bottom:15px;
    z-index: 3;

}
section.banner-principal .carousel-indicators [data-bs-target]{
    width:18px;
    height:18px;
    border-radius:50%;
    background-color:#fff;
}
section.banner-principal .carousel-caption{
    z-index: 3;
    text-align: left;
    top: 0;
    width: 32vw;
    padding: 100px 0;
    bottom: auto;
    padding-bottom: 69px;
    height: 70vh;
    word-wrap: break-word;
    right: auto;

}
section.banner-principal .carousel-caption h5{
    font-size: 42px;
    font-weight: 700;
    line-height: 1.1;
    color: #ffffff;
    /* text-transform: uppercase; */
    /* letter-spacing: 1px; */
}
section.banner-principal .carousel-caption h6{
    font-size: 14px;
    font-weight: 600;
    line-height: .9em;
    color: #FCE76A;
    text-transform: uppercase;
    letter-spacing: 5px;
    margin-bottom: 15px;
}
section.banner-principal .carousel-caption p{
    margin-top: 15px;
    margin-bottom: 50px;
    color: white;
}
section.banner-principal .carousel-inner::after{
    content:"";
    background:linear-gradient(to right, rgba(0,0,0,.9), transparent);
    position:absolute;
    width:100%;
    height:70vh;
    z-index: 2;
    pointer-events: none;
}
/*FIM BANNER PRINCIPAL*/



/* Estiliza o menu principal */
.menu-principal ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    justify-content: center;
    gap: 40px; /* Espaçamento entre os itens */
}

.menu-principal ul li {
    position: relative;
}

/* Remove a decoração padrão e define estilo dos links */
.menu-principal ul li a {
    text-decoration: none;
    padding: 10px 0;
    display: inline-block;
    position: relative;
    transition: color 0.3s ease;
    cursor:pointer;
    font-weight: 600;
    font-size:16px;
    color:#333;
}
.menu-principal a:not([href]):not([class]) {
    color: #4d4d4d;
}

/* Criando a borda inferior com animação da esquerda para a direita */
.menu-principal ul li a::after {
    content: "";
    position: absolute;
    width: 0;
    height: 3px;
    background-color: #48A500; /* Cor da borda */
    bottom: 0;
    left: 0; /* Inicia da esquerda */
    transition: width 0.3s ease-in-out;
}

/* Efeito ao passar o mouse */
.menu-principal ul li a:hover::after {
    width: 100%; /* Expande até a direita */
}


.menu-principal ul li a:hover::after {
    width: 100%;
}

.topo .midias-sociais{
    display: flex;
    gap:8px;
}

.topo .midias-sociais .btn-abrir-pesquisa{
    color: #48A500;
    font-size: 28px;
    margin-left: 12px;
    padding-top: 10px;
    cursor: pointer;
    padding-right:12px;
}

.midias-sociais a:last-of-type {
    background-color: #008BD2 !important;
    padding-left:28px;
    padding-right:28px;
}
.copyright .midias-sociais a:last-of-type {
    background-color: transparent !important;
}

.topo .midias-sociais .btn-abrir-pesquisa:hover {
    animation: heartbeat-2 1.5s infinite ease-in-out;
    color: green;
    transition:all linear .2s;
}




.topo .midias-sociais a:hover{
    background:green;
}
.topo .midias-sociais a i span{
    margin-left:8px;
    text-transform:uppercase;
    letter-spacing: 2px;
    font-weight: 700;
    font-style: normal;
}


.campo-de-busca{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    background:#333;
    padding:60px;
    height:50vh;
    justify-content: center;
    align-items: center;
    display:none;
    z-index: 99999;
    box-shadow: 0 0 15px black;
}
.topo .campo-de-busca .logo-topo{
    position:absolute;
    left:50px;
    top:50px;
}
.topo .campo-de-busca .btn-fechar-pesquisa {
    font-size: 50px;
    position: absolute;
    right: 50px;
    top: 50px;
    color: white;
    cursor: pointer;
    transition: transform 0.2s ease-in-out; /* Ajusta o tempo de transição */
}

.topo .campo-de-busca .btn-fechar-pesquisa:hover {
    animation: hoverEffect 1.3s ease-in-out forwards; /* 'forwards' mantém o estado final após a animação */
}

.pesquisa-padrao input[type='search']{
    background:transparent;
    border:none;
    border-bottom:2px solid white;
    border-radius: 0;
    width:50vw;
    font-size:30px;
    padding-bottom:16px;
    color:white;
    outline:none;
}
.pesquisa-padrao input[type='search']::selection{
    background:#48A500;
    color:white;
}
.pesquisa-padrao input[type='search']::-moz-selection{
    background:#48A500;
    color:white;
}

.pesquisa-padrao input::placeholder{
    color:#666;
}

.pesquisa-padrao button{
    color:#999;
    position: absolute;
    top:0;
    border:none;
    transition:all linear .2s;
}
.pesquisa-padrao button:hover{
    color: #fff;
}

.pesquisa-padrao button.btn-pesquisa{

}
.pesquisa-padrao button.btn-voz{

}
.pesquisa-padrao .status{
    position:absolute;
    right:-80px;
    color:#00ff4c;
}

.voiceSearch {
    position: relative;
    z-index: 1;
    overflow: visible;
}

/* Círculo pulsante atrás do ícone */
.pulse-circle {
    position: absolute;
    top: 50%;
    left: 62%;
    transform: translate(-50%, -50%);
    width: 10px;
    height: 10px;
    background-color: #00ff4c;
    border-radius: 50%;
    box-shadow: 0 0 10px #00ff4c, 0 0 20px #00ff4c;
    opacity: 0.7;
    z-index: -1;
    transition: all 0.2s ease;
}

/* Ícone do microfone */
.voiceSearch .bi-mic {
    position: relative;
    z-index: 2;
    transition: color 0.3s ease;
}

/* Status de reconhecimento */
.pesquisa-padrao .status {
    margin-top: 5px;
    font-size: 12px;
}

/* Classe para microfone ativo */
.mic-active {
    color: #000000 !important;
    font-weight: bold;
}

.pesquisa-padrao .posiciona{
    position:absolute;
    right:0;
}
.pesquisa-padrao .posiciona .btn{
    font-size:1.5em;
    padding:0;
    padding-left:10px;
}

.voiceSearch{
    position:absolute!important;
}

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
    display: none;
}

section.capta-leads{
    position:relative;
}
section.capta-leads:before{
    content:"";
    border:4px solid #48A500;
    width:40%;
    bottom:5px;
    position:absolute;

}
section.capta-leads .form-leads{
    padding:5em 3em;
    background:#48A500;
    display:flex;
    flex-wrap: wrap;
}
section.capta-leads .form-leads form{
    margin-top:30px;
    width:100%;
}
section.capta-leads .form-leads label {
    position:relative;
    font-size:12px;
    text-transform: uppercase;
    margin-bottom:35px;
}
section.capta-leads .form-leads label span{
    font-size: 10px;
    color: white;
    text-transform: uppercase;
    font-weight: 600;
    position: absolute;
    top: -20px;
}
section.capta-leads .form-leads img{
    width:50%;
    margin:0 auto;
}
section.capta-leads .form-leads form input{
    padding:12px;
    width:100%;
    font-size:14px;
    border:none;
    height:50px;
}
section.capta-leads .form-leads form select{
    padding: 12px 8px;
    width: 100%;
    font-size:14px;
    border:none;
    height:50px;

}
section.capta-leads .form-leads form label.nome{
    width: calc(70% - 15px);
    margin-right: 15px;
}
section.capta-leads .form-leads form label.uf{
    width:29%;
}
section.capta-leads .form-leads form label.email{
    width: calc(60% - 15px);
    margin-right: 15px;
}
section.capta-leads .form-leads form label.whatsapp{
    width:39%;
}
section.capta-leads .texto-explicativo{

}
section.capta-leads .texto-explicativo:after{

}

/*///////////////////////////////////////////////////////////////////////////////*/
/*SEÇÃO SUPER TRUNFO*/
/*///////////////////////////////////////////////////////////////////////////////*/

section.super-trunfo{
}
section.super-trunfo p.explicacao-cards{
    width:50%;
    margin:0 auto;
}
section.super-trunfo .area-filtros{
    background:#f6f6f6;
    padding:30px;
    border-radius: 5px;
    display:flex;
    flex-direction: column;
    gap:15px;
}
section.super-trunfo input[type="text"]{
    padding:5px;
    font-size:14px;
    color:#333;
    width:100%;
    margin-bottom:10px;
    border:1px solid #dfdfdf;
    background:url('../img/svg/ico-lupa.svg');
    background-repeat: no-repeat;
    background-position: right 4px center;
    background-size:15px;
}
section.super-trunfo .area-filtros .filtro{
    background:#fff;
    padding:15px;
    border-radius: 5px;
}

section.super-trunfo .area-filtros .filtro label:last-child{
    margin-bottom: 0px;
}
section.super-trunfo .area-filtros .filtro.check-estilizado label:last-child{
}
section.super-trunfo .area-filtros .filtro .titulo-filtro{
    font-weight: 700;
    text-transform: capitalize;
    display: flex;
    justify-content: space-between;
    cursor:pointer;
    color:#333;
    transition:all linear .2s;
}
section.super-trunfo .area-filtros .filtro .titulo-filtro:hover{
}
section.super-trunfo .area-filtros .filtro.check-estilizado {
}
section.super-trunfo .filtros-aplicados {
    display:flex;
    flex-wrap: wrap;
    background: #f6f6f6;
    padding-bottom: 5px;
}
section.super-trunfo .filtros-aplicados div[data-filtro]{
    background: #fff;
    padding: 5px 10px;
    font-size: 11px;
    margin-right: 5px;
    margin-bottom: 5px;
    font-weight: 600;
    color: #7d7d7d;
    border-radius: 3px;
    border:1px solid #dfdfdf;
}
section.super-trunfo .filtros-aplicados div button{
    background:transparent;
    border:none;
    padding-right:0;
    font-weight: bold;
    color:#999;
    padding-left:0;
}
section.super-trunfo .filtros-aplicados div button:hover{
    color:#333;
}

section.super-trunfo .lista-grande{
    max-height: 14vh;
    overflow-y: auto;
}

section.super-trunfo .area-filtros .filtro.check-estilizado .conteudo-filtro {
    display: flex;
    flex-wrap: wrap; /* Permite que os itens quebrem linha se necessário */
    margin-top:5px;
}

section.super-trunfo .area-filtros .filtro input[type="text"]{
    margin:10px 0;
}


section.super-trunfo .area-filtros .filtro.check-estilizado input[type="checkbox"] {
    display: none; /* Esconde os checkboxes */
}

section.super-trunfo .area-filtros .filtro{
    cursor:pointer;
}
section.super-trunfo .area-filtros .filtro.partidos-politicos label{
    margin-bottom:15px;
    font-size:13px;
    font-weight: 600;
    color: #5a5a5a;
}
section.super-trunfo .area-filtros .filtro.partidos-politicos input{
    vertical-align: middle;
    margin-right:5px;
}

section.super-trunfo .area-filtros .filtro.check-estilizado label {
    display: inline-block;
    padding: 5px 10px;
    cursor: pointer;
    background: #f0f0f0;
    border-radius: 3px;
    transition: all 0.3s ease;
    white-space: nowrap; /* Evita quebra de linha dentro do botão */
    margin:10px 10px 0 0;
    font-size: 13px;
    font-weight: 600;
    color: #5a5a5a;
}

/* Quando o checkbox estiver marcado, aplica os estilos */
section.super-trunfo .area-filtros .filtro.check-estilizado input[type="checkbox"]:checked + label {
    background: #48A500;
    color: white;
}

/* Esconde o radio button padrão */
.check-estilizado .conteudo-filtro input[type="radio"] {
    display: none;
}

/* Quando selecionado (radio checked), aplica o estilo verde */
.check-estilizado .conteudo-filtro input[type="radio"]:checked + label {
    background: #48A500 ;
    color: white;
}

.super-trunfo .area-cards{
    padding-left: 30px;
    display: flex;
    gap:45px;
    justify-content: flex-start;
}

/*///////////////////////////////////////////////////////////////////////////////*/
/*SEÇÃO SUPER TRUNFO*/
/*///////////////////////////////////////////////////////////////////////////////*/


/*================================================================================*/
/*================================================================================*/
/*================================================================================*/
/*================================================================================*/
/* Estilização do card */
.box-card {
    position: relative;
    background: #fff;
    width: 31%;
    cursor: pointer;
    transition: all linear .2s;
    /*    overflow: hidden;*/
    border:10px solid white;
    box-shadow:0px 0px 15px #c2c2c2;
}

.box-card:hover {
    box-shadow:0px 0px 15px #858585;
}

.box-card .tooltip-balao{
    max-width: 180px;
}

/* Parte superior com a imagem */
.dados-do-politico {
    position: relative;
    width: 100%;
    height: 35vh;
    color: white;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 15px;
    overflow: hidden;
}

.foto-politico {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
    transition: transform 0.5s ease; /* animação suave */
    transform-origin: center center;
}

/* zoom no hover */
.box-card:hover .foto-politico {
    transform: scale(1.2); /* dá o zoom */
}
.dados-do-politico > *:not(.foto-politico) {
    position: relative;
    z-index: 9;
}

.dados-do-politico::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0));
    z-index: 9; /* Mantém o gradiente sobre a imagem */
}

/* overlay do texto */
/*.box-card::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    padding:30px;
    font-size: 18px;
    font-weight:700;
    color: #fff;
    text-align: center;
    opacity: 0;
    z-index: 20;                acima de tudo dentro do card 
    pointer-events: none;
    background: rgba(0,0,0,.4) url('../img/svg/ico-saiba-mais'); background-size:60%; background-position: center; background-repeat: no-repeat; overlay escuro 
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1.1;
}

.box-card::after {
    backdrop-filter: blur(5px);
}

 mostra no hover com animação 
.box-card:hover::after {
    animation: fadeMessage 2s forwards;  executa só uma vez 
}

@keyframes fadeMessage {
    0%   { opacity: 0; transform: scale(0.9); }
    10%  { opacity: 1; transform: scale(1); }
    80%  { opacity: 1; transform: scale(1); }
    100% { opacity: 0; transform: scale(1.05); }
}*/


.dados-do-politico .nome-e-estado{
    font-size: 24px;
    line-height: 1.1;
    font-weight: 800;
    margin-right: 25px;
    margin-bottom: 15px;
    width:65%;
}
.dados-do-politico .nome-e-estado span{
    font-size: 14px;
    vertical-align: middle;
    color: #fff;
    letter-spacing: 2px;
}
.dados-do-politico .tag{
    display:flex;
    gap:5px;
    flex-wrap: wrap;
    width:65%;
}
.dados-do-politico .tag span{
}
.dados-do-politico .cargo, .dados-do-politico .partido, .dados-do-politico .situacao, .dados-do-politico .codEleitoral{
    position:relative;
    z-index: 10;
    font-size:12px;
    color:white;
    background: #009d54;
    padding:5px 10px;
    font-weight: 600;
    letter-spacing: 1px;
    display: block;
    width: fit-content;
}
.dados-do-politico .partido{
    background: #91278D;
}

.dados-do-politico .situacao{
    background: #0074af;
}

.dados-do-politico .codEleitoral{
    background: #0074af;
}

.dados-do-politico .midias-sociais-politico {
    display: flex;
    position: absolute;
    right: 0;
    top: 0;
    justify-content: flex-end;
    flex-direction: column;
}
.dados-do-politico .midias-sociais-politico a, .redes-sociais-interna a {
    transition: all linear .2s;
    background: #018BD2;
    padding: 7px 8px;
    font-size: 16px;
    color: white;
    filter:grayscale(1)
}

.dados-do-politico .midias-sociais-politico a.ico-facebook, .redes-sociais-interna a.ico-facebook {
    background:#1877F2;
}
.dados-do-politico .midias-sociais-politico a.ico-instagram, .redes-sociais-interna a.ico-instagram {
    background:#833AB4;
}
.dados-do-politico .midias-sociais-politico a.ico-x, .redes-sociais-interna a.ico-x {
    background:#1DA1F2;
}
.dados-do-politico .midias-sociais-politico a.ico-youtube, .redes-sociais-interna a.ico-youtube {
    background:#FF0000;
}

.compartilhar-parlamentar{
    position: absolute;
    z-index: 9;
    font-size: 32px;
    right: 15px;
    top: 15px;
    padding: 15px;
    cursor:pointer;
    color:white;
    transition:all linear .1s;
    text-shadow: 0px 0px 3px black;
}
.compartilhar-parlamentar:hover{
    transform:scale(1.1);
}
.dados-do-politico .midias-sociais-politico a:hover, .redes-sociais-interna a:hover {
    filter:grayscale(0)

}


/* Seção da pontuação */
.pontuacao-do-politico {
    background: #f8f8f8;
    text-align: center;
}

/* Organização da grade para os 4 itens */
.grade-pontuacao {

}

/* Cada bloco de pontuação */
.composicao {
    display: flex;
    align-items: center;
    background: #fff;
    padding: 15px;
    border: 1px solid #f1f1f1;
    gap:13px;
    justify-content: space-between;
}

.img-pontuacao{
}

.ranking{
    text-align: right;
}

.ranking span.classificacao{
    text-align: center;
    position: absolute;
    background: #48A500;
    font-weight: 600;
    letter-spacing: 2px;
    font-size: 20px;
    right: 0;
    width: 70px;
    height: 85px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-left: 10px;
    z-index: 999;
    margin-top:-85px;
}

.ranking span.textual{
    position:absolute;

}

.img-pontuacao img {
    width:30px;
    height:30px;
}

.descricao-pontuacao{
    font-weight: 800;
    font-size: 12px;
    background: #f1f1f1;
    color:#333;
    padding: 12px;
    text-transform: uppercase;
}

.descricao-pontuacao .tooltip-wrapper{
    position:absolute;
    margin-left: 2px;
    margin-top: -8px;
}

.estrelas {
    position: relative;
    font-size: 24px;
    width: 100px; /* Ajuste conforme necessário */
    display: inline-block;
}

.estrelas-vazias {
    color: #ccc; /* Cinza para as estrelas vazias */
}

.estrelas-preenchidas {
    position: absolute;
    top: 0;
    left: 0;
    color: gold; /* Dourado para as estrelas preenchidas */
    overflow: hidden;
    white-space: nowrap;
    width: 0; /* Inicialmente 0, será ajustado pelo jQuery */
}

.percentual {
    font-size: 18px;
    font-weight: bold;
}

.super-trunfo .ordenacao{
    padding-left: 30px;
    display:flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom:30px;

}

.super-trunfo .ordenacao .area-select{
    display:flex;
    gap:30px;
}


.super-trunfo .ordenacao .area-de-busca{
    width:40%;
}
.super-trunfo .ordenacao .area-de-busca input{
    padding:15px;
    font-size:16px;
    background-position:right 15px center;
    margin-bottom:0;
}

.super-trunfo a.compartilhar-politico{
    position: relative;
    bottom: 0;
    background: #333;
    float: right;
    padding: 10px 25px;
    font-size: 12px;
    width: 100%;
    text-align: center;
    color: #fff;
    text-transform: uppercase;
    text-decoration: none;
    letter-spacing: 1px;
    font-weight: 500;
    transition:all linear .2s;
}

.super-trunfo a.compartilhar-politico i{
    margin-left:8px;
}

.super-trunfo a.compartilhar-politico:hover{
    background:#51a413;
}

.super-trunfo .ordenacao .area-de-ordenacao{
}
.super-trunfo .ordenacao .area-de-ordenacao label{
    display: flex;
    justify-content: flex-end;
    font-weight: 700;
    align-items: center;
}

select{
    -webkit-appearance: none;  /* Safari/Chrome */
    -moz-appearance: none;     /* Firefox */
    appearance: none;          /* padrão */
    background-image: url("data:image/svg+xml;utf8,<svg fill='black' height='20' viewBox='0 0 24 24' width='20' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/></svg>");
    background-repeat: no-repeat;
    background-position: right 10px center; /* posição da seta */
    background-size: 16px; /* tamanho da seta */
}

.super-trunfo .ordenacao .area-de-ordenacao label select{
    margin-left:2px;
    color:#0A99C1;
    font-weight: 500;
    padding:16px;
    padding-right:32px;
    margin-left:10px;
    border-color:#dfdfdf;
}
.super-trunfo .ordenacao .area-de-ordenacao label select {
    outline:none;
}


/*================================================================================*/
/*================================================================================*/
/*================================================================================*/
/*================================================================================*/

/*INÍCIO EU SEI*/
section.eu-sei{
    background:#003d45 url('../img/webp/bck-eu-sei-001.webp');
    background-size:cover;
    color:white;
    position:relative;
    padding-bottom:0;
    background-blend-mode:multiply;
    background-position: right center;
}
section.eu-sei h3{
    font-size:62px;
    font-weight: 900;
    text-transform: uppercase;
    margin-bottom:5px;
}
section.eu-sei h4{
    font-size:20px;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom:5px;
    letter-spacing: 5px;
}
section.eu-sei h5{
    font-size:16px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 18px;
    margin-bottom:2em;
}
section.eu-sei .embed-video {
    position:relative;
    top:70px;
    box-shadow:0 0 80px #000;
}
section.eu-sei .embed-video .titulo {
    font-size: 12px;
    position: absolute;
    padding: 9px 13px;
    left: 15px;
    top: -26px;
    letter-spacing: 1px;
    background: #ffffff;
    font-weight: 600;
    color: #333;

}
section.eu-sei .embed-video iframe{
    width:100%;
    padding:8px;
    background:white;
}
section.eu-sei .embed-video h2{
    font-size:14px;
    font-weight: 500;
    background:black;
    text-align: right;
    padding:15px;
}
section.eu-sei .ultimos-videos{
    margin-left: 15px;
    position: relative;
    top: -25px;
}
section.eu-sei .ultimos-videos h2{
    font-weight: 400;
    font-style: italic;
    text-transform: capitalize;
    font-size: 22px;
    border-bottom: 1px solid white;
    padding-bottom: 10px;
}
section.eu-sei .ultimos-videos span{
    margin-right:10px;
    margin-bottom:10px;
}
section.eu-sei .fonte{
    margin-top:50px;
}
section.eu-sei .credito-imagem{
    text-align: right;
}
.mensagem-eu-sei{
    margin-top:30px;
    margin-right:30px;
}
/*FIM DE EU SEI*/

/*INICIO NOTICIAS SUCUPIRA*/
section.noticias-de-sucupira .botao-ver-todos-sucupira{
    margin-top:50px;
    width: fit-content;
    display: inline-block;
}

section.noticias-de-sucupira{
    background:linear-gradient(180deg, #f7f7f7 60%, #f7f7f7 60%, #ffffff 40%);
    margin-top:15vh;
    position:relative;
}
section.noticias-de-sucupira .explicacao-sucupira{
    padding:0 20vw;
}
section.noticias-de-sucupira .div-carimbo .img-carimbo{
    position:absolute;
    top:-100px;
    width:250px;
    left:5vw;
}
section.noticias-de-sucupira .campo-busca-sucupira{
    position: relative;
    margin-top:5vh;
    justify-content: center;
}
section.noticias-de-sucupira .campo-busca-sucupira input{
    padding: 20px 32px;
    background: white;
    font-size: 16px;
    border-radius: 50px !important;
    border: 1px solid #dfdfdf;
    box-shadow: 0 0 20px #e4e4e4;
    color:#000;
    width:50%;
    line-height: 1.5;
}
section.noticias-de-sucupira .pesquisa-padrao .posiciona{
    right:25px;
    top:15px;
}
section.noticias-de-sucupira .pesquisa-padrao .posiciona .status{
    color:#000;
}
section.noticias-de-sucupira .pesquisa-padrao .posiciona button:hover{
    color:#000;
}
section.noticias-de-sucupira {
    position:relative;
    margin-top:10vh;
}
section.noticias-de-sucupira .lista-sucupira{
    margin-top:8vh;
}
section.noticias-de-sucupira  a{
    text-decoration: none;
    transition:all linear .1s;
    display: flex;
}
section.noticias-de-sucupira  a:hover{
    filter:brightness(1.15)
}
section.noticias-de-sucupira  .box-sucupira{
    background:white;
    margin-bottom:26px;
}
section.noticias-de-sucupira  .box-sucupira .area-foto{
    background:white;
    position:relative;
}
section.noticias-de-sucupira  .box-sucupira .area-foto a.fonte-da-imagem{
    position: absolute;
    right: 10px;
    top: 10px;
    color: white;
    font-weight: 700;
    font-size: 10px;
    background: rgba(0,0,0,.5);
    letter-spacing: .3px;
    font-style: italic;
    padding: 5px 10px;
    border-radius: 5px;
}
section.noticias-de-sucupira  .box-sucupira .area-foto .logo-fonte{
    position: absolute;
    right: 10px;
    top: -15px;
    border: 5px solid #f7f7f7;
    box-shadow: 0 6px 7px black;
    width:50px;
    height:50px;
}
section.noticias-de-sucupira  .box-sucupira .area-foto:before{
    content:" ";
    background:linear-gradient(to bottom, transparent, #000);
    width:100%;
    height:100%;
    position:absolute;
    left:0;
    top:0
}

section.noticias-de-sucupira  .box-sucupira .area-foto .area-textual .sutia-sucupira p{
    line-height:1.5em;
}
section.noticias-de-sucupira  .box-sucupira .area-foto .area-textual{
    color:white;
    position:absolute;
    left: 0;
    bottom:0;
    width:100%;
    bottom:0;
    padding:20px;
}
section.noticias-de-sucupira  .box-sucupira .area-foto .area-textual h3{
    font-size:20px;
    margin-bottom:3px;
    font-weight: 600;
    margin-bottom:8px;
}

section.noticias-de-sucupira  .box-sucupira .area-foto .area-textual h3.titulo-sucupira{
    line-height: 1.2em;
}

section.noticias-de-sucupira  .box-sucupira .area-foto .area-textual p{
    font-size:14px;
    margin-bottom:0;
    line-height: 21px;
}
section.noticias-de-sucupira  .box-sucupira .area-foto .img-sucupira{
    width:100%;
    height:40vh;
    object-fit: cover;
}
section.noticias-de-sucupira  .box-sucupira .dados-sucupira{
    display: flex;
    background:#FF1A0D;
    color:white;
    justify-content: space-between;
}
section.noticias-de-sucupira  .box-sucupira .dados-sucupira div{
    padding:15px;
}
section.noticias-de-sucupira  .box-sucupira .dados-sucupira .primeiro-box-dados{
    word-break: break-word;
}
section.noticias-de-sucupira  .box-sucupira .dados-sucupira div h3{
    font-size:24px;
    margin-bottom:5px;
    min-height: 6vh;
}
section.noticias-de-sucupira  .box-sucupira .dados-sucupira div p{
    font-size:14px;
    font-weight: 600;
}
section.noticias-de-sucupira  .box-sucupira .dados-sucupira div p.cargo-sucupira:first-letter{
    text-transform: uppercase;
}
section.noticias-de-sucupira  .box-sucupira .dados-sucupira div.item-sucupira{
    background: #B70400;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.2;
    justify-content: center;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    text-transform: uppercase;
}
section.noticias-de-sucupira  .box-sucupira .dados-sucupira .midias-sociais-sucupira{
    padding:0;
    margin-top:6px;
    margin-bottom:-3px;
}
section.noticias-de-sucupira  .box-sucupira .dados-sucupira .midias-sociais-sucupira p{
    border-bottom:1px solid white;
    margin-top:5px;
    font-size:10px;
}
section.noticias-de-sucupira  .box-sucupira .dados-sucupira .midias-sociais-sucupira a{
    color:rgba(255,255,255,.6);
    transition:all linear .1s;
    display:inline;
    padding-right:6px;
}
section.noticias-de-sucupira  .box-sucupira .dados-sucupira .midias-sociais-sucupira a:hover{
    color:rgba(255,255,255,1)
}
/*FIM NOTICIAS SUCUPIRA*/

/*INICIO TRIBUTOS*/
section.tributo{
    background:#333 url('../img/webp/bck-tributo.webp');
    background-size:cover;
}
section.tributo .ico-money{
    float:right;
    width:110px;
    margin-right:-70px;
    margin-top:-105px;
}
section.tributo .explicacao{
    margin:2vh 0;
}
section.tributo section.agrega-nrs{
    margin-top:20px;
    display:flex;
    gap:20px;
    justify-content: space-between;
}
section.tributo section.agrega-nrs .grupo-nrs{
}
section.tributo section.agrega-nrs .grupo-nrs .num{
    font-size: 3em;
    font-weight: 800;
    color: white;
    background: #333;
    width: 60px;
    display: inline-flex;
    text-align: center;
    height: 130px;
    align-items: center;
    justify-content: center;
}
section.tributo section.agrega-nrs .grupo-nrs .legenda{
    width:100%;
    margin-top:20px;
    font-size:16px;
    font-weight: 600;
    text-transform: uppercase;
    text-align: center;
}
section.tributo p.fonte a{
    margin:0 auto;
    font-size:16px;
    color:#333;
    font-style: italic;
    display:inline-grid;
    text-decoration: none;
    font-weight: 500;
    letter-spacing: .5px;
}
section.tributo p.fonte a:hover{
    color:#aa00ff;
}
section.campeoes-da-taxacao{
    margin-top:10vh;
}
section.campeoes-da-taxacao h2{
    font-size:15px;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom:2vh;
}

/* Estilos base que você já tem */
section.campeoes-da-taxacao .lista-de-mais-taxados {
    display: flex;
    gap: 30px;
    margin: 0;
    overflow: visible; /* Alterado para visible para mostrar o box-shadow */
    position: relative;
    width: 100%;
    padding: 15px; /* Adicionando padding para o box-shadow */
}

section.campeoes-da-taxacao .lista-de-mais-taxados:hover{
    cursor:pointer;
}

/* Wrapper com clipping para esconder o padding sem cortar as sombras */
.carousel-wrapper {
    width: 100%;
    overflow: hidden;
    position: relative;
    padding: 0 60px; /* Mantemos o padding lateral */
}

.carousel-track {
    display: flex;
    gap: 0; /* Removemos o gap daqui e usamos apenas o gap da lista */
    position: relative;
    animation: scroll 30s linear infinite;
    width: fit-content;
    margin-left: -15px; /* Compensa o padding esquerdo da primeira lista */
}

section.campeoes-da-taxacao .lista-de-mais-taxados .box-produto {
    background: white;
    padding: 30px;
    border-radius: 5px;
    box-shadow: 0 0 10px #ccc;
    flex: 0 0 auto;
    width: 200px; /* Mantendo largura fixa */
    min-width: 150px;
}

section.campeoes-da-taxacao .lista-de-mais-taxados .box-produto img {
    width: 50%;
}

section.campeoes-da-taxacao .lista-de-mais-taxados .box-produto p.produto {
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 500;
    width: 100%;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

section.campeoes-da-taxacao .lista-de-mais-taxados .box-produto p.percentual-produto {
    font-weight: 800;
    letter-spacing: 1px;
    font-size: 18px;
}

/* Garantir que não haja espaçamento extra entre os grupos */
.carousel-track .lista-de-mais-taxados {
    padding: 15px; /* Padding uniforme em todas as listas */
}

@keyframes scroll {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}

/* Pausa a animação quando o mouse passa por cima */
.carousel-wrapper:hover .carousel-track {
    animation-play-state: paused;
}

/* Responsividade com larguras fixas */
@media (max-width: 1200px) {
    section.campeoes-da-taxacao .lista-de-mais-taxados .box-produto {
        width: 180px;
    }
}

@media (max-width: 992px) {
    section.campeoes-da-taxacao .lista-de-mais-taxados .box-produto {
        width: 160px;
    }
}

@media (max-width: 768px) {
    section.campeoes-da-taxacao .lista-de-mais-taxados .box-produto {
        width: 140px;
    }
    .carousel-wrapper {
        padding: 0 30px;
    }
}

@media (max-width: 576px) {
    section.campeoes-da-taxacao .lista-de-mais-taxados .box-produto {
        width: 130px;
    }
    .carousel-wrapper {
        padding: 0 15px;
    }
}
/*FIM TRIBUTOS*/


/*INÍCIO DE ESGOTO*/
section.esgoto {
    position: relative;
    width: 100%;
    height: 40vh;
    overflow: hidden;
    pointer-events: none;
}

section.esgoto .onda {
    position: absolute;
    width: 200%;
    left: -50%;
    top: 0;
    animation: mexer-ondas ease-in-out infinite alternate;
}

section.esgoto .onda.onda-02 {
    top: 18vh;
    animation-duration: 7s;
}
section.esgoto .onda.onda-03 {
    animation-duration: 5s;
}
section.esgoto .onda.onda-04 {
    animation-duration: 8s;
}
section.esgoto .onda.onda-05 {
    animation-duration: 6s;
}
section.esgoto .onda.onda-06 {
    animation-duration: 9s;
}

@keyframes mexer-ondas {
    0% {
        transform: translateX(0);
    }
    50% {
        transform: translateX(3%);
    }
    100% {
        transform: translateX(-3%);
    }
}

section.bolhas-aleatorias{
    margin-top:-10vh;
    pointer-events: none;
}
section.bolhas-aleatorias {
}
section.bolhas-aleatorias img{
    position:relative;
    animation:anima-bolha 10s infinite;
    opacity:0;
    filter:grayscale(1) opacity(.1)
}

@keyframes anima-bolha{
    0%{
        opacity:0;
        bottom:-30vh;
    }
    10%{
        opacity:1;
    }
    90%{
        opacity:1;
    }
    100%{
        opacity:0;
        bottom:0;
    }
}

/*FIM DE ESGOTO*/



/*INICIO PENDURICALHOS*/
section.penduricalhos{
    background:#1A1A1A;
    padding-bottom:10vh;
    border-bottom:20px solid #333;
}
section.penduricalhos .explicacao-penduricalhos{
    padding:0 10vw;
}
section.canos-penduricalhos{
    padding-bottom:12vh;
}
section.canos-penduricalhos img{
    height: 150px;
    object-fit: contain;
    flex-shrink: 0;
    display: block;
    margin: 0 auto;
}
section.canos-penduricalhos .box-penduricalho{
    border-radius: 15px;
    padding:70px 30px;
    background:#333;
    display:grid;
    align-content: space-between;
    position:relative;
    background-size:cover;
    background-repeat: no-repeat;
}
section.canos-penduricalhos .box-penduricalho:after{
    content:url('../img/webp/sombra.webp');
    position:relative;
    bottom:-20vh;
    text-align: center;
}
section.canos-penduricalhos .box-penduricalho.executivo{
    background: linear-gradient(to bottom, rgba(0,0,0,1)20%, rgba(0,0,0,0)100%), url(../img/webp/bck-executivo.webp) #333;
    background-size:cover;

}
section.canos-penduricalhos .box-penduricalho.legislativo{
    background: linear-gradient(to bottom, rgba(0,0,0,1)20%, rgba(0,0,0,0)100%), url(../img/webp/bck-leg.webp) #333;
    background-size:cover;

}
section.canos-penduricalhos .box-penduricalho.judiciario{
    background: linear-gradient(to bottom, rgba(0,0,0,1)20%, rgba(0,0,0,.2)100%), url(../img/webp/bck-jud.webp) #333;
    background-size:cover;

}
section.canos-penduricalhos .box-penduricalho.outros{
    background: linear-gradient(to bottom, rgba(0,0,0,.85)20%, rgba(0,0,0,.3)100%), url(../img/webp/bck-outros.webp) #333;
    background-size:cover;
}
section.canos-penduricalhos .box-penduricalho h2{
    font-weight: 900;
    font-size:18px;
    letter-spacing: 1px;
}
section.canos-penduricalhos .box-penduricalho p{
    font-size:18px;
    color:white;
    line-height: 1.7;
    font-weight: 600;
    margin:30px 0 60px 0;
    text-shadow:0 0 10px black;
}
section.canos-penduricalhos .box-penduricalho a{
}
section.canos-penduricalhos .box-penduricalho i{
    transition:all linear .2s;
    cursor:pointer;
    color:white;
    position:absolute;
    top:25px;
    right:25px;
    font-size: 42px;
    animation: heartbeat 1.5s infinite ease-in-out;
}
section.canos-penduricalhos .box-penduricalho.executivo i{
    animation-delay: 1s;
}
section.canos-penduricalhos .box-penduricalho.legislativo i{
    animation-delay: 2s;
}
section.canos-penduricalhos .box-penduricalho.judiciario i{
    animation-delay: 3s;
}
section.canos-penduricalhos .box-penduricalho.executivo i:hover{
    color:#48a500;
}
section.canos-penduricalhos .box-penduricalho.legislativo i:hover{
    color:#008BD2;
}
section.canos-penduricalhos .box-penduricalho.judiciario i:hover{
    color:#9341D8;
}
/*FIM PENDURICALHOS*/


/*INICIO CORTES*/
section.cortes{
    border-block:30px solid transparent;
    border-image:url('../img/svg/faixa-cinema.svg') 210 stretch;
    background-color:#4d4d4d;
}
section.cortes .miniatura span.assunto-do-video{
    display: block;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.2em;
    padding: 10px 5px;
    margin-bottom: 10px;
    background: rgba(255,255,255,.7);
    width: 100%;
    color: #000;
    margin-bottom: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height:60px;
    margin-top: -8px;
}

section.cortes .fonte-cortes a{
    text-transform: uppercase;
    font-size:14px;
    letter-spacing: 1px;
    color:white;
    opacity:1;
    text-decoration: none;
    font-weight: 600;
    display:block;
    line-height: 1.3em;
}
section.cortes .fonte-cortes a:hover{
    color:#BEF731;
    text-decoration: underline;
}
section.cortes .explicacao{
    margin-top:44px;
    margin-bottom:56px;
}
section.cortes .explicacao span{
    font-weight: 600;
    color:#bef731;
}
.miniaturas-videos {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
    margin-top: 40px;
}

.miniatura {
    width: calc(33.33% - 30px);
    position: relative;
    cursor: pointer;
    overflow: hidden;

}

.miniatura img{
    transition: all linear .2s;
    filter:grayscale(1) opacity(.5);
}

.miniatura:hover img{
    filter:grayscale(0) opacity(1);
}


.miniatura img {
    width: 100%;
    height: 28vh;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
    display: block;
    object-fit: cover;
}

.miniatura .play-icon {
    position: absolute;
    top: 36%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: white;
    font-size: 55px;
    opacity: 0.8;
}

.miniatura:hover .play-icon {
    opacity: 1;
}

.video-placeholder {
    color: #8bc34a; /* verde-limao */
    text-align: center;
    font-size: 1.2rem;
}

.sombra-do-tik-tok{

    height: 15px;
    margin-top: 58px;
    background: rgba(0, 0, 0, .1);
    width: 255px;
    border-radius: 50%;
    margin: 13% 12% 0 12%;


}

.video-a-ser-carregado {
    border-radius: 16px;
    box-shadow: 0 8px 20px rgba(0,0,0,0.3);
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #dfdfdf;
    background:#f1f1f1;
    width:85%;
}

.video-a-ser-carregado iframe,
.video-a-ser-carregado blockquote {
    border-radius: 10px;
    width: 330px !important;
    height: 580px !important;
    max-width: 100%;
}

.video-a-ser-carregado iframe {
    overflow: hidden;
    height: 800px !important; /* ajuste conforme necessário */

}


/* Remover qualquer scrollbar que venha do embed TikTok */
.video-a-ser-carregado::-webkit-scrollbar {
    display: none;
}
/*FIM CORTES*/

/*INÍCIO DE FRASES*/
section.frases{
    background:url('../img/svg/bck-quote.svg') no-repeat;
    background-size:auto 12%;
    background-position:right 60px top 60px;
    padding-top:15vh;
    padding-bottom:10vh;
}
section.frases h3{
    font-style: italic;
    font-weight: 400;
    line-height: 1.7;
    font-size:24px;
}
section.frases p.assinatura{
    font-size:26px;
    font-weight: 500;
    margin-top:5vh;
}
/*FIM DE FRASES*/



/*INÍCIO RODAPE*/
section.rodape{
    background:#48A500;
    padding-bottom:8vh;
    margin-top:5vh;
}
section.rodape .primeira-linha{
    display: flex;
    align-items: center;
    padding:4vh 0;
}
section.rodape .primeira-linha img.logo-rodape{
    height:48px;
    margin-top:5px
}
section.rodape .primeira-linha .menu-principal{
}
section.rodape .primeira-linha .menu-principal ul{
    justify-content: flex-end;
}
section.rodape .primeira-linha .menu-principal ul li a{
    color:white;
}
section.rodape .primeira-linha .menu-principal ul li a::after{
    background-color: #fff;
}
section.rodape .linha-do-meio{
}
section.rodape .linha-do-meio .col p{
    width:100%;
    border-bottom:1px solid rgba(0,0,0,.2);
}

.msg-informativa-rodape{
    text-align: right;
}
.msg-informativa-rodape p{
    font-size:14px;
    color:white;
}

section.rodape .segunda-linha{
    color:white;
    padding-top:6vh;
}
section.rodape .segunda-linha h2{
    font-weight: 800;
    letter-spacing: 1px;
    text-transform: uppercase;
    font-size: 16px;
    margin-bottom: 24px;
    color: #fadb4f;
}
section.rodape .segunda-linha a{
    color:white;
    margin-bottom:30px;
    text-decoration: none;
    display: block;
    font-size: 16px;
    font-weight: 500;
    display: inline-block;
}
section.rodape .segunda-linha a:hover{
    color:#99ff86;
}
section.rodape .patrocinadores{
}
section.rodape .links-uteis,
section.rodape .instagram,
section.rodape .youtube,
section.rodape .tiktok{
    padding-right:50px;
}
section.rodape .patrocinadores img{
    width:100%;
}
section.rodape .patrocinadores a{
    transition:all linear .1s;
}
section.rodape .patrocinadores a:hover{
    filter:brightness(1.1);
    transform:scale(1.05);
}
.copyright{
    background:#00611a;
    color:white;
    padding:20px;
    color:#53bd00;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 2px;
}
.copyright .msg-motivacional{
    color:white;
}
.copyright .midias-sociais{
    font-size:24px;
    text-align: right;
}
.copyright .midias-sociais a{
    margin-left:15px;
    color:#53bd00;
    transition: color linear .2s;
}

.copyright .midias-sociais a:hover{
    color:white;
}
/*FIM RODAPE*/

/*INICIO COOKIES*/
section.cookies {
    display:flex;
    justify-content: center;
    position:fixed;
    bottom:30px;
    z-index: 99999;
    width:100dvw;
    opacity:0;
}
section.cookies .msg-cookies{
    line-height: 1.5em;
    box-shadow: 0 0 20px #000000;
    background: #00679b;
    padding: 30px;
    display: flex;
    align-items: center;
    font-size: 14.5px;
    color: white;
    position: fixed;
    bottom: 0;
    left:0;
}

/*FIM COOKIES*/






/*SECTION SPLASH SCREEN*/

/* Splash base */
section.splash-screen{
    position:fixed;
    inset:0;
    display:none;            /* padrão: não mostra */
    background:#48a500;
    z-index:99999;
    width:100dvw;
    height:100dvh;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    opacity:1;
    transition: opacity .6s ease, visibility .6s ease;
}
section.splash-screen.hide{
    opacity:0;
    visibility:hidden;
    pointer-events:none;
}

/* Quando decidido (no head) que VAI mostrar o splash */
html.will-show-splash section.splash-screen{
    display:flex;
}
html.will-show-splash #site{
    visibility:hidden;
}   /* Esconde o site antes do primeiro paint */

/* Quando NÃO vai mostrar splash (visitas seguintes) */
html.no-splash section.splash-screen{
    display:none !important;
}

/* Sua animação do slogan continua valendo */
section.splash-screen p.slogan{
    opacity:0;
    animation: sloganAparecendo 1s 2.2s forwards;
}
@keyframes sloganAparecendo {
    to {
        opacity:1;
    }
}

/* Acessibilidade/NOSCRIPT: se JS off, garante que o site apareça */
noscript #site {
    visibility: visible !important;
}




section.splash-screen img{
    width:250px;
}
section.splash-screen p{
    margin-top:15px;
    letter-spacing: 5px;
    font-size:16px;
}
section.splash-screen p.slogan{
    opacity:0;
    animation: sloganAparecendo 1s 2.2s;
    animation-fill-mode: forwards;
    color:#ffd400;
}

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



/*SECTION SPLASH SCREEN*/

/* Responsividade: em telas menores, os itens ficam em uma única coluna */
@media (max-width: 400px) {
    .grade-pontuacao {
        grid-template-columns: 1fr; /* Apenas uma coluna */
    }

}




@keyframes hoverEffect {
    0% {
        transform: scale(1); /* Começa no tamanho original */
    }
    20% {
        transform: scale(0.7); /* Diminui um pouco */
    }
    40% {
        transform: scale(1.1); /* Aumenta rapidamente */
    }
    60% {
        transform: scale(1); /* Volta ao tamanho original */
    }
    80% {
        transform: scale(1.1); /* Aumenta novamente */
    }
    100% {
        transform: scale(1) rotate(360deg); /* Gira 360º */
    }
}
@keyframes hoverEffect2 {
    0% {
        transform: scale(1); /* Começa no tamanho original */
    }

    10% {
        transform: scale(1.5); /* Começa no tamanho original */
    }

    40% {
        transform: scale(1); /* Começa no tamanho original */
    }

    50% {
        transform: scale(1.5); /* Diminui um pouco */
    }
    60% {
        transform: scale(1); /* Diminui um pouco */
    }
    70% {
        transform: scale(1.5); /* Diminui um pouco */
    }
    100% {
        transform: scale(1); /* Gira 360º */
    }
}

.credito-imagem {
    font-size: 12px;
    color: #fff; /* branco para fundo escuro */
    position: absolute;
    bottom: 10px;
    right: 10px;
    z-index: 3;
    max-width: 90%;
    border-radius: 4px;
    text-shadow:0 3px 10px black;
}

.credito-imagem i{
    margin-right:5px;
}

.credito-imagem a {
    text-decoration: none;
    color:white;

}
.credito-imagem a:hover {
    text-decoration: underline;
}



/*ESTILIZANDO DE INTERNAS*/
.box-internas{
    margin-top:3vh;
}



.accordion-custom {
    border: 1px solid #dc3545;
    border-radius: 6px;
    margin: 0 auto;
    overflow: hidden;
    transition: all 0.3s ease;
    margin-top:30px;
}

.resumo-header {
    padding: 25px 20px;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 16px;
    font-weight: bold;
    background: #fff;
    transition: background 0.3s;
}

.resumo-header:hover {
    background-color: #fff2f2;
}

.resumo-header .seta {
    transition: transform 0.3s ease;
}

.accordion-custom[aria-expanded="true"] .seta {
    transform: rotate(180deg);
}

.resumo-body {
    display: none;
    padding: 10px 20px 20px 20px;
    border-top: 1px solid #ededed;
}

.resumo-lista {
    list-style: none;
    padding-left: 0;
    margin-top: 15px;
}

.resumo-lista li {
    position: relative;
    padding-left: 20px;
    margin-bottom: 10px;
    color: #333;
    line-height: 1.5;
}

.resumo-lista li::before {
    content: '▪';
    color: #dc3545;
    position: absolute;
    left: 0;
    top: 0;
}

.resumo-feedback {
    margin-top: 15px;
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
}

.btn-feedback {
    background: none;
    border: none;
    font-size: 18px;
    cursor: pointer;
}

.resumo-origem {
    font-size: 12px;
    color: #888;
    margin-top: 10px;
}













.box-internas .servicos-pg-interna{
    margin-top:15%;
    margin-bottom:5%;
    background:#ccc;
    padding:60px;
}
.box-internas article{
    width:50%;
    margin:0 auto;
}

.box-internas article .conteudo article{
    width:100%;
}

.box-internas article .conteudo article p{
    width:100%;
    font-weight: 400;

}

.box-internas article .conteudo{
    margin:3vh 0 40px 0;
}

.box-internas article .conteudo p{
    font-size:18px;
    line-height:2.2em;
    font-weight: 400;
    margin-bottom:20px;
    letter-spacing: .2px;
    color:#1d1d1d;
}
.box-internas article .conteudo p{
    font-family: "Merriweather", serif;

}

.box-internas article.noticia-interna{
}
.box-internas article.noticia-interna .titulo{
    font-weight:800;
    line-height: 1.2em;
}
.box-internas article.noticia-interna .sutia p{
    font-size:22px;
    font-weight:500;
    line-height: 1.4;
    margin-bottom:20px;
}
.box-internas article.noticia-interna .publicacao{
    font-size:12px;
}
.box-internas article.noticia-interna .img-post img{
    width: 100%;
    height:auto;
    margin:30px 0;
}
.box-internas article.noticia-interna .pre-conteudo{
    border-bottom: 2px solid #f1f1f1;
    padding-bottom: 20px;
    margin-top: 35px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.box-internas article.noticia-interna .icones-compartilhamento{
    float:right;
}
.box-internas article.noticia-interna .icones-compartilhamento a{
    color:#999;
    margin-left:15px;
    font-size:22px;
    text-decoration: none;
}
.box-internas article.noticia-interna .icones-compartilhamento a:hover{
    color:#333;
}

.topo.topo-internas{
    background: linear-gradient(180deg, rgba(0, 139, 210, .8) 30%, rgba(0, 139, 210, .1) 80%, rgba(0, 139, 210, 0) 100%), url(../img/webp/fotos-internas/001.webp) center;
    height: 450px;
    background-size: cover;
}

.topo.topo-internas a{
    color:white;
    text-decoration: none;
}
.topo.topo-internas .menu-principal a:not([href]):not([class]){
    color:white;
}
.topo.topo-internas .txt-regiao{
    color:white;
}
.topo.topo-internas .midias-sociais .btn-abrir-pesquisa{
    color:white;
}
.topo.topo-internas .menu-principal ul li a::after{
    background-color:white;
}
.mega-menu-internas .seta-para-baixo{
    color: #8d8d8d;
    margin-top: -2px;
}
.mega-menu.mega-menu-internas .explicacao-do-box-estados{
    margin-top:-12px;
}

.abarca-estados-interna{
    margin-top:-25px;
}
.ico-seta.ico-seta-interna{
    color:#ccc;
}

#mensagemSucessoOlhar {
    position: fixed;
    top: -300px;
    left: 0;
    width: 100%;
    background-color: #48A500;
    color: white;
    text-align: center;
    padding: 15px;
    font-weight: bold;
    font-size: 18px;
    z-index: 9999;
    box-shadow: 0 2px 5px rgba(0,0,0,0.2);
    transition: top 0.5s ease;
    padding:100px 0;
}

#mensagemSucessoOlhar.mostrar {
    top: 0;
}

#mensagemSucessoOlhar button#fecharMensagem {
    position: absolute;
    right: 15px;
    top: 15px;
    background: none;
    border: none;
    color: white;
    font-size: 50px;
    cursor: pointer;
}

.resultado-de-pesquisa{
    margin:60px 0;
}
.resultado-de-pesquisa ul{
    display:grid;
    grid-template-columns: repeat(3, 1fr);
    gap:60px 40px;
    margin-top:60px;
}
.resultado-de-pesquisa ul li{
    background:#f9f9f9;
    padding:40px 40px 60px 40px;
    position:relative;
    border:1px solid #333;
}
.resultado-de-pesquisa ul li p.caixa-botao{
    position:absolute;
    width:100%;
    margin-left:-40px;
    text-align: center;
    bottom:-28px;
}
.resultado-de-pesquisa ul li p.caixa-botao a{
    padding-left:20px;
    padding-right:20px;
}



.box-internas.promessas {
    margin-bottom:12vh;
}
.box-internas.promessas .video-principal {
}
.explicacao-promessas{
    margin-top: -35px;
    margin-bottom: 50px;
    display: inline-block;
    width: 50%;
    justify-content: center;
    align-items: center;

}
.box-internas.promessas .card-body{
    padding:30px;
}
.box-internas.promessas .card-text{
    font-size:16px;
}
.box-internas.promessas .card-title{
    font-size:22px;
    font-weight: 700;
}


/*PAGINAÇÃO*/
.pagination-container {
    display: flex;
    justify-content: center;
    margin-top: 50px;
}

.pagination-list {
    list-style: none;
    padding: 0;
    display: flex;
    gap: 10px;
}

.pagination-list li {
    display: inline;
}

.pagination-list a,
.pagination-list span {
    display: inline-block;
    padding: 8px 12px;
    background-color: #f0f0f0;
    color: #333;
    text-decoration: none;
    border-radius: 4px;
}

.pagination-list a:hover {
    background-color: #ddd;
}

.pagination-list .current {
    background-color: #333;
    color: #fff;
}

.box-poder .bg-success{
    background:#51a413!important;
}
.box-poder .bg-warning{
    background:#ffd400!important;
    color:#333
}
.box-poder .bg-danger{
    background:#bf211d!important;
}

.busca-figura-publica {
    text-align: center;
    position: relative;
    display:flex;
    align-items: center;
    justify-content: center;
}
.busca-figura-publica input {
    padding: 20px 32px;
    background: white;
    font-size: 16px;
    border-radius: 50px !important;
    border: 1px solid #dfdfdf;
    box-shadow: 0 0 20px #e4e4e4;
    color: #000;
    width: 50%;
}

.espaco-busca-autoridade{
    margin-bottom:10px;
}

.busca-figura-publica button {
    font-size:22px;
    margin-left: -80px;
    color:#999;
    background:transparent;

}


#loading-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,139,210,0.95);
    color: white;
    font-size: 24px;
    text-align: center;
    z-index: 9999;
    display: flex;
    justify-content: center;
    align-items: center;
}

#loading-overlay img{
    width:70px
}

.loading-message {
    font-weight: 500;
    letter-spacing: 1px;
}

.lista-de-promessas{
    margin-top:50px;
}

.nada-encontrado{
    font-size: 22px;
    font-weight: 800;
    text-align: center;
    width: 100vw;
    margin: 11vh 0 5vh 0;
    background: #f9f9f9;
}
.nada-encontrado span{
    font-size:6rem;
    color:#F70C2F;
}

.hidden-box {
    display: none;
}

.lista-ultimos-videos{
    display:flex;
    align-items: flex-end;
}

.msg-informativa-mobile-tributo, .msg-informativa-cards, .fonte-para-mobile{
    display: none;
}

.super-trunfo .area-cards {
    display: flex;
    flex-wrap: wrap; /* deixa quebrar linha */
    gap: 45px;
    justify-content: flex-start; /* ou space-between, se preferir */
    padding-left: 30px;
}

.super-trunfo .area-cards .box-card {
    flex: 1 1 calc(33.333% - 30px); /* 3 cards por linha */
    max-width: calc(33.333% - 30px);
}

section.internas-politicos{
    margin-top:30px;
}
section.internas-politicos h1{
    width: 40%;
    border-bottom: 1px solid #dfdfdf;
    padding-bottom: 10px;
    margin-bottom:10px;
}

section.internas-politicos .redes-sociais-interna{
    margin-bottom: 20px;
    margin-top: 25px;
}

section.internas-politicos h6{
    text-transform: uppercase;
    letter-spacing: 5px;
    font-weight: 400;
    font-size:14px;
    margin-bottom:15px;
}
section.internas-politicos h6 span{
    color: #ffffff;
    BACKGROUND: #ff6c00;
    padding: 5px 10px 5px 15px;
    font-weight: 600;
}
section.internas-politicos img.foto-parlamentar{
    width:100%;
    box-shadow: 0 0 15px #ccc;
    border:15px solid white;
}

section.internas-politicos .card-do-parlamentar{
    margin-top:30px;
}
section.internas-politicos .pontuacao-do-politico-internas a {


}

section.internas-politicos .pontuacao-do-politico-internas{
    position:relative;
}
section.internas-politicos .pontuacao-do-politico-internas:after{
    content: " ";
    width: calc(100% - 30px);
    position: absolute;
    background: linear-gradient(to bottom, transparent, #0000009c);
    height: calc(100% - 32px);
    left: 15px;
    top: 15px;

}
section.internas-politicos .pontuacao-do-politico-internas .classificacao-interna{
    position: absolute;
    background: #48A500;
    font-weight: 600;
    letter-spacing: 2px;
    font-size: 25px;
    bottom: 2px;
    right: 0;
    color: white;
    z-index: 999;
    width: 90px;
    height: 90px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-left:13px;
}

.redes-sociais-internas{
}
.redes-sociais-internas i{
}

.topo-dados-politico{
    margin-bottom:30px;
}

.ano-classificacao-interna{
    position: absolute;
    bottom: 40px;
    left: 30px;
    z-index: 999;
    width: 60%;
}

section.internas-politicos .ano-classificacao-interna h1{
    margin-bottom:17px;
    font-size:12px;
    color:white;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.ano-classificacao-interna a{
    background: #fff;
    padding: 5px 10px;
    color: white;
    text-decoration: none;
    color: #5a5a5a;
    font-size: 13px;
    font-weight: 600;
    margin-right:5px;
    opacity:.5;
    transition:all linear .1s;
    text-transform:capitalize;
}

.foto-do-parlamentar {
    position:relative;
}
.foto-do-parlamentar .toast.show{
    display:none;
}

.box-detalhes-verba{
    display:flex;
    justify-content: space-between;
    gap:7px;
}
.box-detalhes-verba span{
    font-size: 12px;
    letter-spacing: .7px;
    font-weight: 700;
    font-family: Montserrat;
    cursor: pointer;
    color: #ff007f;
    padding-top: 6px;
    text-transform: uppercase;
}
.box-detalhes-verba span:hover{
    color:#0d6efd;
}


section.internas-politicos .ano-classificacao-interna a:hover{
    background: #dcdcdc;
}
section.internas-politicos .ano-classificacao-interna a.ativo{
    background:#ff6c00;
    color:#fff;
    pointer-events:none;
    opacity:1;
}

.msg-informativa-gasto{
    padding-bottom:35px;
}








.btnAbrirConteudo {
    cursor: pointer;
    display: inline-flex; /* permite o rotate */
    align-items: center;
}
.titulo-filtro {
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    user-select: none;
}

.btnAbrirConteudo i {
    display: inline-block;
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.btnAbrirConteudo i.rotacionar {
    transform: rotate(180deg);
}

.conteudo-filtro {
    overflow: hidden;
    margin-top: 8px;
}


#buscar-partido{
    margin-bottom:20px;
}

















section.internas-politicos .dados-do-parlamentar{
    padding-left:30px;
}
section.internas-politicos .dados-do-parlamentar .box-informacoes{
    background:#f1f1f1;
    padding:30px;
    margin-bottom:30px;
}
section.internas-politicos .dados-do-parlamentar h5{
    font-size:14px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
}
section.internas-politicos .dados-do-parlamentar p{
    margin-bottom:15px;
    font-size: 14px;
}
section.internas-politicos .dados-do-parlamentar p:last-of-type{
    margin-bottom:0;
}
section.internas-politicos .poderes-do-parlamentar{
    margin-top:30px;
}
section.internas-politicos .poderes-do-parlamentar .box-poder{
    margin-bottom:30px;
}
section.internas-politicos .poderes-do-parlamentar .box-poder h3{
    font-size:18px;
    font-weight: 600;
    margin-bottom:5px;
}
section.internas-politicos .poderes-do-parlamentar .box-poder .progress{
    border-radius: 0;
    height:40px;
    font-size:18px;
    font-weight:600;
}

.detalhes-da-cota{
    margin-top:30px;
}

.verDetalhesCota i {
    transition: transform 0.25s ease;
    display: inline-block;
    font-size:11px;
    color:#333;
}

.verDetalhesCota.aberto i {
    transform: rotate(180deg);
}


.detalhes-gastos-agrupados{
    font-size:12px;
    text-transform: uppercase;
}
.detalhes-gastos-agrupados h5{
    font-size:12px;
    font-weight: 400;
}

.detalhes-gastos-agrupados p{
    font-size: 12px;
    margin-bottom:15px;
    font-weight: 800;
}

.detalhes-gastos-agrupados .total-assiduidade{
    font-size: 18px;
    text-align: right;
    margin-top: 27px;
    margin-bottom: 0;
    background: #e6e6e6;
    padding: 15px;
    margin-left: -30px;
    margin-right: -30px;
}

.detalhes-gastos-agrupados .lista-cotas{
    display:flex;
    padding-bottom:30px;
    font-family: "Montserrat", sans-serif;
    gap:15px;
    margin-top:20px;
}
.detalhes-gastos-agrupados .lista-cotas > div{
    flex: 1; /* garante largura igual */
    background: #f5f5f5; /* apenas pra visualizar (você troca pelas cores que quiser) */
    padding: 20px;
    text-align: center;
    color:white;
}
.detalhes-gastos-agrupados .lista-cotas .cota-gabinete{
    background:#610061;
}
.detalhes-gastos-agrupados .lista-cotas .qtde-servidores{
    font-size:33px;
    font-weight: 700;
}
.detalhes-gastos-agrupados .total-gasto-verba{
    font-size: 18px;
    padding: 15px;
    text-align: right;
    background: #e6e6e6;
    margin-left: -30px;
    margin-right: -30px;
}
.detalhes-gastos-agrupados .lista-cotas .cota-escritorio{
    background:#be006f;
}
.detalhes-gastos-agrupados .lista-cotas h5{
    font-weight: 800;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.detalhes-gastos-agrupados .lista-cotas p{
    font-size: 12px;
}


section.internas-politicos .poderes-do-parlamentar .box-poder p.ver-detalhes-cota{
    color: #ffffff;
    margin-top: 6px;
    cursor: pointer;
    letter-spacing: 0px;
    font-weight: 600;
    font-size: 12px;
    text-transform: uppercase;
    text-align: left;
    border: 2px solid #ffffff99;
    text-align: center;
    background: #494649;
    width: max-content;
    letter-spacing: 1px;
    padding: 5px 15px;
    border-radius: 5px;
    text-align: center;
    transition:all linear .2s;
}
section.internas-politicos .poderes-do-parlamentar .box-poder p.ver-detalhes-cota:hover{
    background:#f300a2;
}

#uf-descricao-e-valor-cota{
    display:none;
}

section.internas-politicos .poderes-do-parlamentar .box-poder .detalhes-gastos-agrupados h3{
    text-transform: uppercase;
    font-weight: 800;
    margin-bottom:15px;
}
section.internas-politicos .poderes-do-parlamentar .box-poder .detalhes-gastos-agrupados{
    background:#f1f1f1;
    padding:30px 30px 0 30px;
    margin-top:25px;
    display:none;
}

section.internas-politicos .poderes-do-parlamentar .box-poder .detalhes-gastos-agrupados a{
    font-size: 12px;
    letter-spacing: 1px;
    color: #fff;
    font-weight: 700;
    background: #ff007f;
    padding: 4px 14px 4px 15px;
    margin-right: 2px;
    text-decoration: none;
    margin-top: 12px;
    display: inline-grid;
    border-radius:30px;
}
section.internas-politicos .poderes-do-parlamentar .box-poder .detalhes-gastos-agrupados a:hover{
    background-color:#ff6c00;
}

section.internas-politicos .poderes-do-parlamentar .box-poder .detalhes-gastos-agrupados p.msg-nenhum-gasto{
    padding-bottom:30px;
    font-size:13px;
}
section.internas-politicos .poderes-do-parlamentar .box-poder .detalhes-gastos-agrupados ul{
    font-size:12px;
}
section.internas-politicos .poderes-do-parlamentar .box-poder .detalhes-gastos-agrupados ul li{
    margin-bottom:15px;
    line-height: 1.4em;
}
section.internas-politicos .poderes-do-parlamentar .box-poder .detalhes-gastos-agrupados ul li.gasto-total{
    font-size: 18px;
    text-align: right;
    margin-top: 27px;
    margin-bottom: 0;
    background: #e6e6e6;
    padding: 15px;
    margin-left: -30px;
    margin-right: -30px;
}
section.internas-politicos .poderes-do-parlamentar .box-poder .detalhes-gastos-agrupados ul li.gasto-total span.valor-total-gasto{
    font-weight: 800;
}

section.internas-politicos .poderes-do-parlamentar .box-poder .detalhes-gastos-agrupados ul li span.valor-gasto{
    font-weight: 800;
}


/* ==========================================================
   TOOLTIP GLOBAL - ORION 2025 (HOME + INTERNAS)
   ========================================================== */

/* Wrapper geral do tooltip */
.tooltip-wrapper {
    position: relative;
    display: inline-block;       /* garante que fique junto ao texto */
    vertical-align: middle;
    cursor: pointer;
    color: #48A500;              /* cor do ícone */
    font-size: 16px;
    line-height: 1;
    margin-left: 5px;            /* leve espaçamento do texto */
}

/* remove tooltips antigos baseados em pseudo-elementos */
.tooltip-wrapper::after,
.tooltip-wrapper::before {
    content: none !important;
}

/* Ícone */
.tooltip-wrapper i {
    opacity: 0.85;
    transition: opacity 0.2s ease, color 0.2s ease;
}
.tooltip-wrapper:hover i {
    opacity: 1;
    color: #48A500;
}



/* garante que o título e o ícone fiquem agrupados de um lado,
   e o chevron do outro */
section.super-trunfo .area-filtros .filtro .titulo-filtro {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-weight: 700;
    text-transform: capitalize;
    cursor: pointer;
    color: #333;
    transition: all linear .2s;
}

/* cria um grupo apenas visual para o texto + tooltip */
section.super-trunfo .area-filtros .filtro .titulo-filtro > span.tooltip-wrapper {
    margin-left: 3px;
    position: relative;
    top: -6px;
    font-size:14px;
}

/* força o ícone a colar no texto */
section.super-trunfo .area-filtros .filtro .titulo-filtro {
    gap: 0; /* remove espaçamento interno */
}

/* alinha o botão de abrir à direita */
section.super-trunfo .area-filtros .filtro .titulo-filtro .btnAbrirConteudo {
    margin-left: auto;
    display: inline-flex;
    align-items: center;
}

/* ícone do tooltip */
.tooltip-wrapper i {
    font-size: 0.9em;
    color: #48A500;
    opacity: 0.8;
    transition: opacity 0.2s ease;
}
.tooltip-wrapper:hover i {
    opacity: 1;
}

/* ===== Tooltip global (reaproveita o teu sistema bonito) ===== */
.tooltip-balao {
    position: absolute;
    bottom: 135%;
    left: 50%;
    transform: translateX(-50%);
    background: #222;
    color: #fff;
    font-size: 12.5px;
    font-weight: 500;
    padding: 8px 12px;
    border-radius: 6px;
    line-height: 1.4;
    max-width: 280px;
    width: max-content;
    white-space: normal;
    word-wrap: break-word;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.25s ease, transform 0.25s ease;
    z-index: 999;
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.25);
    text-transform: none!important;
}

.tooltip-balao::after {
    content: '';
    position: absolute;
    bottom: -6px;
    left: 50%;
    transform: translateX(-50%);
    border-width: 6px 6px 0 6px;
    border-style: solid;
    border-color: #222 transparent transparent transparent;
}

.tooltip-balao.ativo {
    opacity: 1;
    transform: translateX(-50%) translateY(-4px);
}

section.internas-politicos .poderes-do-parlamentar .box-poder .tooltip-wrapper{
    margin-left: -3px;
    margin-top: -15px;
}


/* Responsivo */
@media (max-width: 600px) {
    .tooltip-balao {
        font-size: 12px;
        padding: 6px 10px;
        max-width: 240px;
    }
}

/*FIM DE TOOLTIP*/


.filtros-mobile{
    display:none
}
.botao-aplicar-filtros-mobile{
    display:none
}

.icone-filtros-mobile{
    display:none;
}

.copyright .midias-sociais a:last-of-type{
    background-color:transparent;
}

/*ÁREA MODAL*/
.area-modal{
    background:rgba(0,0,0,.8);
    width:100vw;
    height:100vh;
    position:fixed;
    top:0;
    left:0;
    z-index: 99999;
    display:flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}


.area-modal .caixa-modal{
    border-radius: 10px;
    background:white;
    padding:50px;
    width:50vw;
    max-height: 50vh;
    overflow: auto;
    position:relative;
}

.area-modal h1{
    font-size: 22px;
    font-weight: 800;
    text-transform: uppercase;
    margin-bottom: 12px;
    border-bottom: 1px solid #dfdfdf;
    line-height: 1.3;
    padding-bottom: 15px;
}
.area-modal h3{
    margin-bottom: 5px;
    font-size: 18px;
    font-weight: 600;
}

.area-modal .fechar-modal{
    color:red;
    text-align: right;
    position:relative;
    top:10px;
    width:50vw;
    z-index: 999;

}
.area-modal .fechar-modal .btn-fechar-modal{
    padding: 11px 13px;
    border-radius: 50%;
    color: #ffffff;
    cursor: pointer;
    font-size: 22px;
    background: #ef3c3c;
    outline: 8px solid white;

}

.area-modal .fechar-modal .btn-fechar-modal:hover{
    background:#db2a2a
}

.area-modal .nav-link{
    font-size: 17px;
    font-weight: 600;
    padding: 30px;
    color:#c9c9c9;
}
.area-modal .nav-link.camara.active{
    background:#1DA838;
    color:white;
}
.area-modal .nav-link.senado.active{
    background:#005B9E;
    color:white;
}

.area-modal .tab-content{
    border: 1px solid #dfdfdf;
    padding: 30px;
    border-top: 0;
    padding-top:0;
}
.area-modal.area-modal-percentuais{
    display:none;
}

/* Modal Metodologia - blocos internos */
.oc-subtitle{
    margin: 0 0 16px 0;
    font-size: 16px;
    opacity: .85;
}

.oc-box{
    border-radius: 10px;
    padding: 35px;
    margin: 0 0 30px 0;
    border: 1px solid rgba(0,0,0,.08);
    line-height: 1.7;
}

.oc-box h3{
    margin: 0 0 10px 0;
    font-size: 18px;
    font-weight: 800;
    line-height: 1.4;
}

.oc-box p{
    margin-top:10px;
}

.oc-muted{
    opacity: .85;
    margin: 10px 0 0 0;
}

.oc-checklist,
.oc-bullets{
    margin: 10px 0 0 0;
    padding: 0 0 0 18px;
    list-style: disc;
}

.oc-checklist li,
.oc-bullets li{
    margin: 6px 0;
}

.oc-checklist li::marker{
    content: "✓  ";
    font-weight: 800;
}

.oc-info{
    margin-top: 12px;
    padding: 10px 12px;
    border-radius: 10px;
    background: rgba(0,0,0,.04);
    display: flex;
    gap: 10px;
    align-items: flex-start;
}

.oc-info-ico{
    font-size: 18px;
    line-height: 1;
    margin-top: 1px;
}

/* Paletas */
.oc-box-blue{
    background: rgba(10, 85, 160, .08);
    border-color: rgba(10, 85, 160, .18);
}

.oc-box-green{
    background: rgba(25, 135, 84, .09);
    border-color: rgba(25, 135, 84, .18);
}

.oc-box-yellow{
    background: rgba(255, 193, 7, .16);
    border-color: rgba(255, 193, 7, .28);
}

.oc-box-soft{
    background: rgba(0,0,0,.03);
}

.oc-footer{
    margin-top: 8px;
    display: flex;
    justify-content: flex-end;
}

.oc-link{
    text-decoration: none;
    font-weight: 700;
}
.oc-link:hover{
    text-decoration: underline;
}


/*FIM AREA MODAL*/

.cargo-senado {
    background-color: #005B9E !important;
    color: #fff !important;
    text-transform: uppercase;
}

.cargo-camara {
    background-color: #009D54 !important;
    color: #fff !important;
    text-transform:uppercase;
}

.badge-otimo-gasto {
    display: inline-block;
    padding: 4px 8px;
    background: #e8f8e6;
    color: #2e7d32;
    font-size: 11px;
    font-weight: 600;
    border-radius: 4px;
    margin-top: 6px;
}

/* ====== ESTILO GERAL DOS TOP 3 ====== */
.classificacao.top-ranking {
    width: 90px;
    height: 90px;
    font-size: 42px;
    font-weight: 800;
    font-family: 'Montserrat', sans-serif !important;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

/* PERMITE POSICIONAMENTO LIVRE DA MEDALHA */
.pontuacao-do-politico {
    position: relative;
}

/* AGORA A MEDALHA FICA ABSOLUTA E NÃO É CORTADA */
.classificacao.top-ranking {
    position: absolute !important;
    right: 15px; /* ajuste horizontal – pode mudar */
    z-index: 50;
}


/* FITINHA ÚNICA PARA TODOS */
.classificacao.top-ranking::after, .classificacao-interna.top-ranking::after {
    content: "";
    position: absolute;
    bottom: -28px;
    left: 50%;
    transform: translateX(-50%);
    width: 40px;
    height: 28px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url('../img/svg/fitinha.svg');
}


.label-ranking-tipo{
    position:absolute;
    bottom:0;
    left:0;
    width:100%;
    font-size:8px;
    letter-spacing:0;
}

/* ====== OURO ====== */
.classificacao.ouro, .classificacao-interna.ouro {
    background: #fee029!important;
    color: #d96d2a!important;
}

.classificacao.ouro .label-ranking-tipo{
    background-color:#d96d2a;
}
.classificacao.prata .label-ranking-tipo{
    background-color:#6b6b6b;
}
.classificacao.bronze .label-ranking-tipo{
    background-color:#c55a27;
}

.numero-posicao{
    margin-bottom:25px;
}

.label-ranking-tipo{
    padding:10px 2px;
    color:white;
    letter-spacing: 1px;
    background:rgba(0,0,0,.2);

}

/* ====== PRATA ====== */
.classificacao.prata, .classificacao-interna.prata {
    background: #d9dbd8!important;
    color: #6b6b6b!important;
}

/* ====== BRONZE ====== */
.classificacao.bronze, .classificacao-interna.bronze {
    background: #f8b38c!important;
    color: #c55a27!important;
}

/*INTERNAS*/

/* HERO */

.oc-participe-hero .container {
    position: relative;
    z-index: 2;
    margin-top:3vh;
}



/* FORM */
.oc-form-box {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 15px 40px rgba(0,0,0,0.1);
    padding:45px;
}

.oc-form-box h4{
    font-weight: 800;
}
.oc-form-box input, .oc-form-box select{
    border-radius: 30px;
    padding:10px 20px
}
.oc-form-box textarea{
    padding:10px 20px;
    height:20vh;
}

/* TIPOS */
.oc-tipos-participacao {
    background: #f8f9fa;
    margin-bottom: -5vh;
    margin-top: 8vh;
    padding:9vh 0;
}

#tipoParticipacao.selected-success {
    border: 2px solid #28a745 !important;
    box-shadow: 0 0 0 3px rgba(40, 167, 69, 0.2);
}


.oc-card-participacao {
    background: #fff;
    border-radius: 12px;
    transition: all 0.3s ease;
    box-shadow: 0 5px 20px rgba(0,0,0,0.05);
    cursor: pointer;
}

.oc-card-participacao:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0,0,0,0.1);
}

.oc-card-participacao .icon img {
    width:76px;
}

/* HOVER ACTIVE (opcional depois) */
.oc-card-participacao.active {
    border: 2px solid #48A500;
}

.oc-card-participacao h5{
    margin-bottom:10px;
}
.oc-card-participacao p{
    font-size:15px
}


.form-contato{
}
.form-contato .oc-card-participacao{
    transition:all linear .2s;
}
.form-contato .oc-card-participacao:hover{
    outline: 2px solid #008bd299 !important;
    box-shadow: 0 0 20px 5px rgb(0 169 255 / 15%) !important;
}
.form-contato .oc-participe-hero .container{
    margin-top: 0;
}
.form-contato .oc-tipos-participacao{
    background: white;
    margin-bottom: 8vh;
    padding:0;
    margin-top:3vh;
}
.form-contato .oc-participe-hero{
    background: #f8f9fa;
    margin-bottom: -5vh;
    margin-top: 8vh;
    padding: 9vh 0;
}


#tipoContato.select-pink {
    border: 2px solid #008bd2 !important;
    box-shadow: 0 0 0 3px rgb(0 139 210 / 20%) !important;
    outline: none !important;
}




.boas-vindas{
    padding: 16px 20px 13px 18px;
    border-bottom: 1px solid #dfdfdf;
}
.boas-vindas img{
    width:45%;
}












/*MENU MOBILE*/
.area-menu-mobile{
    display:none
}


.ico-menu-mobile{
    font-size: 38px;
    position: fixed;
    right: -1px;
    top: -1px;
    z-index: 99999;
    padding: 15px;
    padding-left: 60px!important;
    padding-bottom: 60px!important;
    background: transparent;
    text-align: right;
    display: flex;
    justify-content: flex-end;
    gap:10px;
    clip-path: polygon(100% 0, 100% 100%, 0 0);
    pointer-events: none;
}

.icoMenuMobile{
    clip-path: polygon(100% 0, 100% 100%, 0 0);
}


.ico-menu-mobile {
    transition: all 0.3s ease;
}

.ico-menu-mobile.menu-scroll {
    padding-left: 60px!important;
    padding-bottom: 60px!important;
    clip-path: polygon(100% 0, 100% 100%, 0 0);
    opacity: .9!important;
    background:#ffd400;
}

body.no-scroll {
    overflow: hidden;
}

body.no-scroll {
    overflow: hidden;
    position: fixed;
    width: 100%;
}

.ico-menu-mobile span, .ico-menu-mobile i{
    pointer-events: auto;
}
/* menu lateral escondido */
/* menu lateral escondido (lado direito) */
.menu-mobile {
    position: fixed;
    top: 0;
    right: 0;                     /* agora fica à direita */
    height: 100vh;
    width: 80vw;
    background: #fff;
    box-shadow: -2px 0 10px rgba(0,0,0,0.2); /* sombra invertida */
    transform: translateX(130%);  /* escondido fora da tela pela direita */
    transition: transform 0.3s ease;
    z-index: 99998;
    overflow-y: auto;
}

/* quando ativo → entra da direita */
.menu-mobile.ativo {
    transform: translateX(0);
}
.icoMenuMobile {
    transition: all .3s ease;
}

.icoMenuMobile.aberto {
    color: #bf211d;
    clip-path: none;
    font-size: 35px;

}

/* estilização básica da lista */
.menu-mobile ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.menu-mobile li {
}

.menu-mobile a {
    color: #333;
    text-decoration: none;
    font-size: 16px;
    display: block;
    padding:22px;
    background:#f1f1f1;
}

.menu-mobile li:nth-child(2n) a{
    background:#f9f9f9;
}

.menu-mobile a:hover {
    color: #51a413; /* verde do Olhar Cidadão */
}

.icoMenuMobile i.bi-x-lg {
    color: #bf211d; /* vermelho que já usa no projeto */
}
/* overlay escuro */
.overlay-menu {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.5); /* preto 50% */
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease;
    z-index: 99997; /* abaixo do menu mas acima do resto */
}

.overlay-menu.ativo {
    opacity: 1;
    visibility: visible;
}

.area-share {
    display: flex;
    justify-content: flex-end;
    margin-top: 10px;
}

.btn-share {
    background: transparent;
    border: none;
    position: absolute;
    /* border-radius: 50%; */
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
    right: 10px;
    bottom: 10px;
}

.btn-share:hover {

    color: #008BD2;
}
/*MENU MOBILE*/


.miniaturas-videos{
}
.miniaturas-videos.mobile{
    display:none;
}

.hero-sobre {
    background: linear-gradient(rgba(0,0,0,0.7), rgba(0,0,0,0.7)),  url(../img/jpg/congresso_nacional.jpg) center/cover;
    text-align: left !important;
    padding: 10vh 0 14vh 0 !important;
    margin-top: -68px;
}


.box-funciona {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.08);
    transition: .3s;
}

.como-funciona{
    padding:7vh 0 13vh 0;
    margin-bottom:-5vh;
}



.diferencial {
    background: #f8f9fa;
}

.participacao {
    padding:10vh 0 0;
}


.credito-foto {
    position: absolute;
    top: 10px;
    right: 10px;
    font-size: 10px;
    color: #fff;
    background: rgba(0,0,0,0.6);
    padding: 4px 8px;
    border-radius: 20px;
    text-decoration: none;
    font-weight: 500;
}

.credito-foto:hover {
    background: rgba(0,0,0,0.8);
}
.credito-foto i {
    margin-right:5px;
}


.pg-colabore{
    margin-bottom:10vh;
}


.link-clique-aqui{
    display: initial!important;
    text-decoration: underline!important;
    font-weight: 600;
    color: #333;
}

.link-clique-aqui:hover{
    color: #008bd2;
}
.area-btn-penduricalhos{
    margin-bottom: 10vh;
}
.area-btn-videos{
    margin-bottom: 9vh;
    margin-top:-6vh;
}

.copyright .midias-sociais a:last-of-type{
    padding-left: 0;
    padding-right:0;
}

.af-btn-cadastrar{
    margin-top:30px;
}

/*ISSUE 0043*/

/*MEDIA QUERIES*/
@media screen and (max-width: 576px){
    
    .topo.topo-internas{height:25vh;}
    
    .miniaturas-videos.mobile .miniatura:last-child{
        display:none;
    }
    
    .sombra-do-tik-tok{
    }
    
    section.capta-leads .form-leads img{
        margin-top:3vh;
    }
    .img-pontuacao{
        display:none;
    }
    .percentual{
        font-size:14px;
    }
    .mensagem-eu-sei{
        padding: 1rem
    }
    section.eu-sei h3{
        font-size:52px;
    }
    h1{
        font-size:32px;
    }
    .explicacao-promessas{
        width:100%
    }

    .miniaturas-videos{
        display:none;
    }
    
    .sombra-do-tik-tok{margin-left:15%;}
    
    .miniatura{
        width:calc(50% - 15px);
    }

    .miniaturas-videos.mobile{

        display: flex;
        flex-wrap: wrap;
        gap: 20px;
        margin: 40px 0 60px 0;
        justify-content: space-between;

    }

    .txt-tp-ranking{
        margin-left: 0!important
    }

    .ico-menu-mobile.internas .icoMenuMobile{
        color:white;
    }
    .ico-menu-mobile.internas .icoMenuMobile.aberto{
        color:#bf211d;
    }
    .ico-menu-mobile.internas.menu-scroll .icoMenuMobile{
        color:#333;
    }
    .box-internas.promessas{
        padding-right:30px;
        padding-left: 30px;
    }
    .busca-figura-publica input{
        width:100%
    }
    .card-promessa-wrap{
        margin-bottom:30px;
    }

    section.internas-politicos .pontuacao-do-politico-internas a{
        width:fit-content;
    }

    section.internas-politicos h6{
        line-height: 40px;
        display:none;
    }

    .area-modal .caixa-modal{
        width:85vw;
        max-height: 85vh;
    }
    .area-modal{
        top:-30px;
        height:calc(100vh + 30px)
    }
    .area-modal .fechar-modal{
        top:20px;
        width:85vw;
    }

    section.noticias-de-sucupira.interna-noticias-de-sucupira{
        padding-top:0
    }

    .box-internas article.noticia-interna .icones-compartilhamento a{
        margin-left:0;
    }
    .box-internas article.noticia-interna .icones-compartilhamento {
        float: none;
        width: 100%;
        display: flex;
        justify-content: space-between;
        margin-top: 25px;
    }


    .box-internas article.noticia-interna .publicacao{
        line-height: 1.6;
    }

    #carregar-mais-cards{
        margin-left:0;
    }

    .form-search-mobile{
    }
    .form-search-mobile .pesquisa-padrao .posiciona{
        right:30px;
        top:28px;
    }
    .form-search-mobile .pesquisa-padrao input[type='search']{
        width: 75vw;
        background: #fbfbfb;
        padding: 18px 18px 21px 18px;
        font-size: 15px;
        border: 1.5px solid #c3b5b5;
        margin: 15px;
        border-radius: 30px !important;
    }

    .box-internas article{
        width: 85vw;
    }

    .area-menu-mobile.internas i{
        color:white;
    }
    .area-menu-mobile.internas .redes-sociais-mobile i{
        color:#333;
    }

    .patrocinadores ul {
        display: grid;
        grid-template-columns: 1fr 1fr; /* 2 por linha */
        gap: 30px;
        padding: 0;
        margin: 0;
    }

    .patrocinadores li {
        list-style: none;
        text-align: center;
    }

    .patrocinadores {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 10px;
    }

    .patrocinadores img {
        height: auto;
    }

    .patrocinadores a {
        margin-bottom:30px!important;
    }

    .patrocinadores.primeiro ul {
        padding-top: 60px;
        border-top: 1px solid rgba(0, 0, 0, .2);
        margin-top: 30px;
    }

    .msg-informativa-rodape{
        display:flex;
        justify-content: center;
        text-align: center;
        margin:5px 30px 30px 30px;
    }

    .oc-participe-hero{
        padding: 0 2rem;
    }
    .oc-form-box{
        margin-top:3rem;
    }
    .oc-tipos-participacao, .form-contato .oc-tipos-participacao, .form-contato .oc-participe-hero{
        padding-left:2rem;
        padding-right: 2rem
    }
    section.rodape{
        padding-bottom:40px;
    }
    .redes-sociais-mobile{
        position: absolute;
        bottom: 15px;
        right: 15px;
        display: flex;
        gap: 8px;
        font-size: 12px;
    }

    .redes-sociais-mobile a{
        background: none!important;
        padding:2px!important;
        border-radius: 0!important
    }

    .btnAbrirPesquisa{
        font-size: 23px;
        margin-top: 6px;
        color: #dfdfdf;
    }

    .overlay-filtros{
        display:none;
        position:fixed;
        inset:0;
        background: rgba(0,0,0,.5);
        z-index: 999998;
    }
    .overlay-filtros.ativo{
        display:block;
    }

    .filters-monster, .area-select{
        display:block;
        position: fixed;
        top: 0;
        right: 0;                     /* 👉 muda o lado de ancoragem */
        width: 80vw;
        height: 100vh;
        background: #f6f6f6;
        z-index: 999999;
        box-shadow: 0 0 15px black;
        overflow-y: auto;
        padding-bottom: 60px;
        transform: translateX(110%);  /* 👉 começa fora da tela pela direita */
        transition: transform 0.35s ease;
    }

    .filters-monster.ativo, .area-select.ativo{
        transform: translateX(0);      /* entra deslizando pra esquerda */
    }



    .icone-filtros-mobile{
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 30px;
        color: white;
        background: #0074af;
        padding: 30px;
    }

    .icone-filtros-mobile i{
        margin-right:5px;
    }

    .botao-aplicar-filtros-mobile{
        display:block;
        text-align: center;
    }

    .filtros-mobile{
        display:block;
        text-align: right;
        margin-bottom:30px;
        border-bottom:1px solid #dfdfdf;
        position:relative
    }


    .filtros-mobile .btn-voltar-filtros-mobile{
        position: absolute;
        font-size: 30px;
        top: 0;
        left: 0;
        color: #333;
        height: 100%;
        display: flex;
        align-items: center;
        padding: 0 15px;

    }

    .filtros-mobile h1{
        font-size: 22px;
        padding-bottom: 12px;
        background: white;
        padding: 30px;
        font-weight: 800;
        letter-spacing: 1px;
        text-transform: uppercase;
        color: #333;
        margin-bottom: 0

    }


    section.super-trunfo .filtros-aplicados{
        padding:0;
    }

    section.splash-screen p.slogan{
        text-align: center;
    }
    section.splash-screen img{
    }
    .area-menu-mobile{
        display:initial
    }
    section.splash-screen{
        margin-top:-80px;
    }


    section.cookies .msg-cookies{
        display:block;
    }
    section.internas-politicos .dados-do-parlamentar{
        padding-left: 10px;
    }
    .ano-classificacao-interna{
        display:flex;
        flex-direction: column;
        gap: 5px;
    }
    section.internas-politicos{
        padding:0 30px;
        margin-top:20px;
    }
    .super-trunfo .area-cards .box-card {
        flex: 1 1 100%; /* 1 por linha no celular */
        max-width: 100%;
    }
    section.tributo section.agrega-nrs{
        justify-content: center;
    }
    section.tributo section.agrega-nrs .grupo-nrs .num{
        width:50px;
    }
    section.frases.padding-section-2x{
        padding:10vh 5vw;
    }
    .cortes .padding-section{
        padding:2rem
    }
    .fonte-para-mobile{
        font-size:14px;
        text-align: center;
        margin:40px 0 10px 0;
        display: block;
    }
    .fonte-para-mobile a{
        letter-spacing: 2px;
        text-decoration: none;
        font-weight: 700;

    }
    .msg-informativa-cards{
        display:flex;
        justify-content: space-around;
        margin-top:40px;
    }

    .menu-principal, .topo .midias-sociais{
        display:none;
    }
    .topo img.logo-topo{
        width:30vw;
    }
    .topo .campo-de-busca .logo-topo{
        left:25px;
        top:25px;
    }
    .topo .campo-de-busca .btn-fechar-pesquisa{
        font-size:30px;
        right:25px;
        top:27px;
    }
    .pesquisa-padrao input[type='search']{
        width:85vw;
        font-size:22px;
    }
    .txt-regiao {
        letter-spacing: 2px;
        margin-top: 0px;
        font-size: 9px;
        margin-bottom: 8px;
    }

    p.txt-regiao{
        text-decoration: none!important
    }

    .mega-menu .box-bandeira-do-brasil .ico-bandeira-do-brasil{
        width:3em;
    }
    section.banner-principal .carousel-caption{
        width:90vw;
        left:30px;
        padding:50px 0;
        padding-right:20px;
    }
    section.banner-principal .carousel-caption h5{
        font-size:24px;
    }
    section.banner-principal .carousel-caption p{
        margin-bottom:25px;
        font-size:15px;
    }
    section.banner-principal .carousel-caption h6{
        font-size:10px;
    }
    section.banner-principal .carousel-inner::after{
        height:75vh;
    }
    section.banner-principal img{
        height:75vh;
    }
    section.banner-principal .carousel-inner:after{
        height:75vh;
    }
    section.banner-principal{
        height:75vh;
    }
    .estilizacao-lead-mobile{
        background: #48a500;
        margin-top:30px;
    }
    .super-trunfo .area-cards{
        display:flex;
        overflow-x: auto;
        width:100%;
    }
    .box-card{
        width:100vw;
    }
    .padding-section{
        padding:2rem;
    }
    .padding-box{
        padding:3rem;
    }
    .chamada{
        line-height: 1.5em;
    }
    section.capta-leads .form-leads form label.nome, section.capta-leads .form-leads form label.uf, section.capta-leads .form-leads form label.email, section.capta-leads .form-leads form label.whatsapp{
        width:100%;
    }
    section.capta-leads .form-leads{
        padding:2em 2em 4em 2em;
    }
    section.super-trunfo p.explicacao-cards{
        width:100%;
        margin-top:30px;
    }
    .super-trunfo .ordenacao{
        padding-left: 0;
    }
    .super-trunfo .ordenacao .area-select{
        position: fixed;
        background: #f1f1f1;
        top: 0;
        right: 0;
        height: 100vh;
        z-index: 999999;
        width: 80vw;
        display:block;
    }
    .super-trunfo .ordenacao .area-de-ordenacao label select{
        width:100%;
        margin-left: 0;
        margin-top: 10px;
    }
    .super-trunfo .ordenacao .area-de-ordenacao #quantidade-cards{
        margin-bottom:25px;
    }

    .super-trunfo .ordenacao .area-de-ordenacao label{
        display: block;
    }
    .super-trunfo .ordenacao .area-de-ordenacao{
        padding:15px 30px;
    }
    .super-trunfo .ordenacao .area-de-busca{
        width:100%;
        margin-top:20px;
    }
    .super-trunfo .area-cards{
        padding: 1px;
        overflow-x:hidden;
    }
    .dados-do-politico .tag{
        flex-direction: column;
    }


    section.eu-sei{
        margin-top:30px;
        padding:3.5em 1em;
    }
    section.eu-sei h5{
        letter-spacing: 2px;
    }
    section.eu-sei .embed-video iframe{
        height:26vh;
        margin-bottom:50px;
    }
    section.eu-sei .ultimos-videos{
        margin-left:0;
        top:0;
    }
    .lista-ultimos-videos{
        margin-top:60px;
    }
    section.noticias-de-sucupira .div-carimbo .img-carimbo{
        width:80px;
        top:-35px;
    }
    .mensagem-eu-sei{
        text-align: center;
        margin-right:0px;
    }
    .mensagem-eu-sei p{
        margin-bottom:35px!important;
    }
    section.noticias-de-sucupira{
        padding:60px 25px;
    }
    section.noticias-de-sucupira .explicacao-sucupira{
        padding:0;
    }
    section.noticias-de-sucupira .campo-busca-sucupira input{
        width:95%;
    }
    section.noticias-de-sucupira .box-sucupira{
        margin-bottom:60px;
    }
    section.noticias-de-sucupira .botao-ver-todos-sucupira{
        margin-top:0;
    }
    section.tributo .ico-money {
        position: absolute;
        margin-top: -17vh;
        right: 130px;
        width: 56px;
    }
    .padding-section-top{
        padding:3rem;
    }
    .tributo .fonte{
        display: none;
    }
    section.tributo section.agrega-nrs{
        zoom:.5;
        padding:0 5px;
    }
    section.tributo .container{
        width:100vw;
    }
    section.tributo.padding-section-top{
        padding:0;
    }
    .explicacao-tributo-mobile{
        padding:3rem 3rem 0 3rem;
    }
    section.tributo p.fonte a{
        padding:30px 30px 45px 30px
    }

    section.tributo section.agrega-nrs .grupo-nrs:nth-child(4){
        display:none;
    }
    section.tributo section.agrega-nrs .grupo-nrs:nth-child(5){
        display:none;
    }
    section.tributo section.agrega-nrs .grupo-nrs:nth-child(6){
        display:none;
    }

    .msg-informativa-mobile-tributo{
        display: block;
        font-size: 24px;
        font-weight: 800;
        line-height: 1.1;
        padding: 60px;
        background: #fff;
        margin-left: -12px;
        margin-right: -12px;
        margin-bottom: -60px;
        padding-bottom: 70px;
        margin-top:40px;
        box-shadow: 0 0 15px #ccc;
        text-align: center;
    }
    section.campeoes-da-taxacao{
        margin-top:4vh;
    }

    section.campeoes-da-taxacao .lista-de-mais-taxados .box-produto p.produto{
        font-size:9px;
    }

    section.esgoto .onda{
        top:45px;
    }
    section.esgoto .onda.onda-02, section.esgoto .onda.onda-04{
    }
    section.esgoto .onda.onda-06{
        top:100px;
    }
    section.esgoto .onda.onda-05{
        top:90px;
    }
    section.esgoto .onda.onda-03{
        top:135px;
    }
    section.esgoto{
        height:24vh;
    }
    section.canos-penduricalhos img{
        height:120px;
        margin-top:-65px;
    }
    section.canos-penduricalhos .box-penduricalho:after{
        content:none;
    }
    .botao.botao-penduricalhos{
        top:-130px;
    }

    .canos-penduricalhos .row > div:nth-of-type(1) .cano-img {
        margin-top:0;
    }

    section.canos-penduricalhos .box-penduricalho{
        margin:0 25px;
        padding:70px 30px 110px 30px;
    }

    section.canos-penduricalhos{
        padding-bottom:3vh;
    }

    section.cortes{
        border-image: url(../img/svg/faixa-cinema.svg) 180 stretch;
    }

    .miniatura img{
        height:24vh;
    }
    
    .oc-form-box{padding: 50px 15px;}
    
    .hero-sobre, .conteudo-sobre, .como-funciona{padding-left:2rem!important; padding-right:2rem!important;}
    
    section.rodape .primeira-linha img.logo-rodape{height:32px;}
    
    section.frases p.assinatura{font-size:16px;}

    section.frases h3{font-size:18px;}
    
    .video-a-ser-carregado{
        width:100%;
    }





    section.rodape{
        padding:10px 35px;
    }

    section.rodape .segunda-linha a{
        display: block;
    }

    .youtube, .instagram, .tiktok{
        margin-top:50px;
    }


    section.rodape .primeira-linha{
        text-align: center;
    }



    .copyright{
        text-align: center!important;
    }
    .copyright .midias-sociais{
        text-align: center!important;
    }
    .copyright div{
        margin:20px 0;
        line-height:1.6
    }
    .midias-sociais a:last-of-type{
        background:transparent!important
    }

    .video-a-ser-carregado iframe, .video-a-ser-carregado blockquote{
        height:775px!important;
    }

}


#additional-studies{
    margin-top:10px;
}

#parliamentarian-biography{
    font-size:14px;
}

#parliamentarian-biography strong{
    font-size:16px;
}
#parliamentarian-biography ul{
    list-style: unset;
    margin-left:15px;
}

.overlay-pesquisa {
    position: fixed;
    background: rgba(0, 0, 0, 0.85);
    z-index: 998;
    top:0;
    left:0;
    width:100vw;
    height:100vh;
    inset:0;
    display:none;
    z-index: 999;
}


@media (max-width: 768px) {


    .lista-box-estados {
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        gap: 1rem;
        padding: 1rem;
    }



    .box-regiao {
        flex: 0 0 85% !important;
        scroll-snap-align: start;
        background-color: #2c2c2c;
        border-radius: 12px;
        padding: 1rem;
        min-width: 280px;
    }

    .box-regiao h2 {
        font-size: 1rem;
        margin-bottom: 0.5rem;
        color: #ffc107;
    }

    .box-regiao ul {
        display: flex;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .box-regiao li {
        width: 50px;
        text-align: center;
        font-size: 0.75rem;
        color: #fff;
    }

    .box-regiao img {
        width: 100%;
        max-width: 40px;
        height: auto;
        margin-bottom: 5px;
    }

    .explicacao-do-box-estados {
        display: none !important;
    }

    .explicacao-do-box-estados-2 {
        width: 100% !important;
    }

    .msg-informativa {
        font-size: 0.85rem;
        margin-top: 1rem;
        color: #ccc;
    }

    .dica-estados {
        animation: pulseDica 1.5s infinite;
        font-size: 1.4rem;
        position: absolute;
        left: 0;
        top: 44vh;
        width: 100%;
    }

    .dica-estados img{
        width:65px;
        margin-top:-50px;
        animation: slideInOutMaozinha 10s ease-in-out infinite;

    }

    .mega-menu .explicacao-do-box-estados-2{
        padding:65px 40px;
    }


    .icone-dica {
        display: inline-block;
        cursor: help;
        color: #ffc107;
        animation: bounceDica 2s infinite;
    }

    .credito-imagem{
        z-index: 3;
    }

    .mega-menu .msg-informativa p{
        width:100%;
        text-align: left;
    }
    .mega-menu.box-estados{
        box-shadow: 0px 5px 20px rgba(113, 113, 113, .8);
    }

    @keyframes slideInOutMaozinha {
        0% {
            transform: translateX(-100%);
            opacity: 0;
        }
        10% {
            transform: translateX(0%);
            opacity: 1;
        }
        60% {
            transform: translateX(0%);
            opacity: 1;
        }
        70% {
            transform: translateX(100%);
            opacity: 0;
        }
        100% {
            transform: translateX(100%);
            opacity: 0;
        }
    }



}





@media (min-width: 577px) and (max-width:767px) {

}

@media (min-width: 768px) and (max-width:991px) {

}

@media (min-width: 992px) and (max-width:1199px) {

}
@media (min-width: 1200px) and (max-width:1399px) {

}

@media (min-width: 1400px){

}

section.noticias-de-sucupira.interna-noticias-de-sucupira{
    margin-top: 3vh;
    background:none;
}
section.noticias-de-sucupira.interna-noticias-de-sucupira .campo-busca-sucupira{
    margin-top: 0
}


.filtros-aplicados {
    background: #f8f9fa;
    border-radius: 8px;
    margin-bottom: 10px;
}

.titulo-filtros-aplicados {
    font-size: 14px;
    font-weight: 600;
    color: #495057;
    margin-bottom: 10px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.filtros-lista {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 10px;
}

.filtro-aplicado {
    background: #6c757d;
    color: white;
    padding: 5px 10px;
    border-radius: 15px;
    font-size: 12px;
    display: flex;
    align-items: center;
    gap: 5px;
}

.filtro-aplicado button {
    background: none;
    border: none;
    color: white;
    cursor: pointer;
    padding: 0;
    margin: 0;
    font-size: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.filtro-aplicado button:hover {
    color: #ffc107;
}


/* Container do botão - agora ele se comporta como uma linha flexível */
section.super-trunfo .filtros-aplicados .espaco-btn-limpar {
    display: flex;
    justify-content: flex-end; /* Alinha o botão na direita */
    width: 100%;
    background: transparent;
    padding: 0;
    margin-top: 5px; /* Espaço pequeno entre os badges e o botão */
}

/* O botão de limpar */
section.super-trunfo .filtros-aplicados .espaco-btn-limpar button {
    border: none;
    background: transparent; /* Garante que não haja fundo */
    font-size: 12px; /* Fonte menor conforme discutimos para o alinhamento */
    font-weight: 500;
    color: #999; /* Cor suave para não brigar com os filtros */
    cursor: pointer;
    transition: all linear .2s;
    padding: 0;
    font-weight:600;
}

section.super-trunfo .filtros-aplicados .espaco-btn-limpar button:hover {
    color: #ff007f; /* Cor de destaque (vermelho) ao passar o mouse */
    text-decoration: underline;
}

/* O título "Filtros:" */
section.super-trunfo .filtros-aplicados .titulo-filtro {
    font-size: 14px;
    color: #828282;
    font-weight: 600;
    /* Removi a borda e o margin-bottom daqui porque agora usamos o <hr> 
       e o header flex que montamos no JS para alinhar com o toggle */
    margin: 0;
    padding: 0;
    padding-bottom:3px;
}
.detalhamento-valor{
    font-size:13px;
    font-weight: 700;
}

.txt-tp-ranking{
    font-size: 32px;
    font-weight: 800;
    border-bottom: 1px solid #dfdfdf;
    margin-bottom: 30px;
    margin-left: 30px;
    margin-top: 43px;
    padding-bottom: 5px;
}
.filtro-aplicado-toggle-container{
    position:relative;
}
.filtro-aplicado-toggle-container .tooltip-wrapper{
    position:absolute;
    right:-10px;
    top:-15px;
}
.filtro-aplicado-toggle-container .tooltip-wrapper i{
    font-size:.7em;
    color:#999;
}
.filtro-aplicado-toggle-container .tooltip-wrapper i:hover{
    color:#333;
}

/* Estilo da caixinha NR */
.classificacao.nr-box {
    background-color: #d7d7d7 !important;
    position: relative;
    color:#333!important;
    padding-left:6px!important;
    height:70px!important;
    margin-top:-70px!important;
}

.classificacao.nr-box .tooltip-wrapper{
    position: initial;
}

.classificacao-interna.nr-box{
    padding-right:10px;
}

.classificacao.nr-box .tooltip-balao{
    text-align: left;
    font-weight: 500;
    font-size: 12px;
    bottom:97%;
    left:79%;
    max-width: 155px;
    font-size: 12.5px;
    line-height: 1.4;
    letter-spacing: initial;
}

.ranking .classificacao.nr-box i{
    color:#333;
    position: absolute;
    right:5px;
    top:5px;
}


/* Container do Tooltip (escondido por padrão) */
.tooltip-ranking {
    display: inline-block;
    margin-left: 5px;
}

.tooltip-content {
    display: none;
    position: absolute;
    bottom: 125%;
    left: 50%;
    transform: translateX(-50%);
    background: #333;
    color: #fff;
    padding: 10px;
    border-radius: 5px;
    width: 200px;
    font-size: 12px;
    z-index: 100;
    box-shadow: 0px 4px 10px rgba(0,0,0,0.2);
}

/* Mostrar tooltip ao passar o mouse */
.classificacao.nr-box:hover .tooltip-content {
    display: block;
}

.classificacao.nr-box:after{

}

/* Botão dentro do Tooltip */
.btn-tooltip {
    display: block;
    margin-top: 8px;
    background: #FFD700;
    color: #000;
    text-align: center;
    padding: 5px;
    text-decoration: none;
    font-weight: bold;
    border-radius: 3px;
}



/* Container que envolve tudo */
.filtros-content-wrapper {
    width:100%;
}

/* Header com Título e Toggle */
.filtros-header-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    margin-bottom: 12px;
}

.titulo-filtro {
    font-weight: 600;
    font-size: 16px;
    color: #495057;
}

/* Estilização do Texto do Ranking (REGIONAL / NACIONAL) */
.label-ranking-regional {
    font-size: 14px;
    color: #d1d1d1;
    letter-spacing: 0.3px;
    line-height: 1;
    font-weight: 600;
}

.label-ranking-regional strong {
    color: #333;
    font-weight: 700;
    display:none;
}

/* Container do Switch */
.filtro-aplicado-toggle-container {
    display: flex;
    align-items: center;
    gap: 8px;
}

/* Linha Separadora */
.separador-filtros {
    border: 0;
    border-top: 1px solid #dee2e6;
    margin: 0 0 15px 0;
    opacity: 0.6;
}

/* Lista de Badges (os quadradinhos de filtros) */
.filtros-lista {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 10px;
}

/* Estilo do botão "Limpar todos" */
.btn-limpar-todos {
    background: none;
    border: none;
    color: #adb5bd;
    font-size: 13px;
    cursor: pointer;
    transition: color 0.2s;
    float: right;
}

.btn-limpar-todos:hover {
    color: #dc3545;
    text-decoration: underline;
}

/* O Switch (Toggle) */
.switch-ranking {
    position: relative;
    display: inline-block;
    width: 30px;
    height: 16px;
}

.switch-ranking input {
    opacity: 0;
    width: 0;
    height: 0;
}

.slider-ranking {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #51a413;
    transition: .4s;
    border-radius: 20px;
}

.slider-ranking:before {
    position: absolute;
    content: "";
    height: 12px;
    width: 12px;
    left: 2px;
    bottom: 2px;
    background-color: white;
    transition: .4s;
    border-radius: 50%;
}

input:checked + .slider-ranking {
    background-color: #2196F3;
}

input:checked + .slider-ranking:before {
    transform: translateX(14px);
}

/* Badge (Filtros Individuais) */
.badge-filtro {
    background: #fff;
    border: 1px solid #dee2e6;
    padding: 4px 10px;
    border-radius: 6px;
    font-size: 14px;
    display: flex;
    align-items: center;
    gap: 8px;
    box-shadow: 0 1px 2px rgba(0,0,0,0.05);
}

.badge-filtro button {
    border: none;
    background: none;
    padding: 0;
    color: #ced4da;
    cursor: pointer;
}

.badge-filtro button:hover {
    color: #dc3545;
}

/* Cores específicas para Verba e Cota Parlamentar */
.bg-verba-80  {
    background-color: #48A500 !important;
    color: #ffffff;
}
.bg-verba-60  {
    background-color: #8CC63F !important;
    color: #ffffff;
}
.bg-verba-40  {
    background-color: #FFD700 !important;
    color: #333333;
}
.bg-verba-20  {
    background-color: #FF8C00 !important;
    color: #ffffff;
}
.bg-verba-00  {
    background-color: #D70000 !important;
    color: #ffffff;
}


#progress-gabinete, #progress-cota {
    color: #ffffff;
    font-weight: 600;
    text-shadow: 0 1px 2px rgba(0,0,0,0.3);
}

/* Cores para Assiduidade */
.bg-assiduidade-excelente {
    background-color: #48A500 !important;
    color: #ffffff !important;
}
.bg-assiduidade-bom {
    background-color: #8CC63F !important;
    color: #ffffff !important;
}
.bg-assiduidade-regular {
    background-color: #FFD700 !important;
    color: #333333 !important;
}
.bg-assiduidade-ruim {
    background-color: #FF8C00 !important;
    color: #ffffff !important;
}
.bg-assiduidade-pessimo {
    background-color: #D70000 !important;
    color: #ffffff !important;
}

/* Cores para Verba e Cota */
.bg-verba-80 {
    background-color: #48A500 !important;
    color: #ffffff !important;
}
.bg-verba-60 {
    background-color: #8CC63F !important;
    color: #ffffff !important;
}
.bg-verba-40 {
    background-color: #FFD700 !important;
    color: #333333 !important;
}
.bg-verba-20 {
    background-color: #FF8C00 !important;
    color: #ffffff !important;
}
.bg-verba-00 {
    background-color: #D70000 !important;
    color: #ffffff !important;
}