* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family:  'Roboto Condensed', sans-serif;
    outline: none;
}

html,
body {
    height: 100%;
}

a {
    text-decoration: none;
}

.container {
    max-width: 1280px;
    padding: 0 2%;
    margin: 0 auto;
}

main.conteudo {
    min-height: 80%;
}

.linha {
    width: 100%;
    border-bottom: 1px solid #ddd;
    margin-top: 20px;
}

.w25 {
    width: 25%;
}

.w30 {
    width: 33.34%;
}

.w50 {
    width: 50%;
}

/*BARRA DE ACESSIBILIDADE*/

.acessibilidade {
    background-color: rgb(243, 243, 243);

}

.acessibilidade>.container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.portal-prefeitura a {
    text-decoration: none;
    color: #003049;
    font-weight: bold;
    padding: 1px;
}

.barra-acessibilidade {
    text-align: left;
    padding: 3px 0;
}

.barra-acessibilidade>a {
    cursor: pointer;
    padding: 4px 4px;
    border: 1px solid #777;
    color: #003049;
    font-size: 0.9em;
}

.barra-acessibilidade>a:hover {
    background-color: #003049;
    color: white;
}

/* Tooltip container */
.tooltip {
    position: relative;
    display: inline-block;
    border-bottom: 1px dotted black;
    /* If you want dots under the hoverable text */
}

/* Tooltip text */
.tooltip .tooltiptext {
    visibility: hidden;
    width: 120px;
    background-color: #555;
    color: #fff;
    text-align: center;
    padding: 5px 0;

    /* Position the tooltip text - see examples below! */
    position: absolute;
    top: 28px;
    left: -4px;
    font-size: 0.9em;
    z-index: 15;
    /* Fade in tooltip - takes 1 second to go from 0% to 100% opac: */
    opacity: 0;
    transition: opacity 0.5s;
}

.tooltip .tooltiptext::after {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 15px;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: transparent transparent #555 transparent;
}

/* Show the tooltip text when you mouse over the tooltip container */
.tooltip:hover .tooltiptext {
    visibility: visible;
    opacity: 1;
}

.tooltip2 {
    margin-right: 10px;
    position: relative;
    display: inline-block;
    border-bottom: 1px dotted black;
    /* If you want dots under the hoverable text */
}

/* Tooltip text */
.tooltip2 .tooltiptext2 {
    visibility: hidden;
    width: 90px;
    background-color: #555;
    color: #fff;
    text-align: center;
    padding: 5px 0;

    /* Position the tooltip text - see examples below! */
    position: absolute;
    top: 40px;
    left: 4px;
    font-size: 1em;
    z-index: 15;
    /* Fade in tooltip - takes 1 second to go from 0% to 100% opac: */
    opacity: 0;
    transition: opacity 0.5s;
}

.tooltip2 .tooltiptext2::after {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 15px;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: transparent transparent #555 transparent;
}

.tooltip2:hover .tooltiptext2 {
    visibility: visible;
    opacity: 1;
}

.tooltip2 .texto {
    display: none;
}

/* FIM BARRA DE ACESSIBILIDADE*/

/*SUCESSO E ERRO*/
div.sucesso {
    display: none;
    position: fixed;
    left: 0px;
    top: 0px;
    padding: 15px;
    width: 100%;
    color: green;
    background-color: rgb(150, 196, 150);
    border: 2px solid green;
    text-align: center;
    z-index: 15;
    font-size: 1.2em;
}

.sucesso-redefinir {
    display: none;
    position: fixed;
    left: 0px;
    top: 0px;
    padding: 15px;
    width: 100%;
    color: green;
    background-color: rgb(150, 196, 150);
    border: 2px solid green;
    text-align: center;
    z-index: 15;
    font-size: 1.2em;
}

div.erro {
    display: none;
    position: fixed;
    left: 0px;
    top: 0px;
    padding: 15px;
    width: 100%;
    color: red;
    background-color: rgb(212, 173, 173);
    border: 2px solid red;
    text-align: center;
    z-index: 15;
    font-size: 1.2em;
}

div.erro-login {
    display: none;
    position: fixed;
    left: 0px;
    top: 0px;
    padding: 15px;
    width: 100%;
    color: red;
    background-color: rgb(212, 173, 173);
    border: 2px solid red;
    text-align: center;
    z-index: 15;
    font-size: 1.2em;
}

div.erro-rash {
    display: none;
    position: fixed;
    left: 0px;
    top: 0px;
    padding: 15px;
    width: 100%;
    color: red;
    background-color: rgb(212, 173, 173);
    border: 2px solid red;
    text-align: center;
    z-index: 15;
    font-size: 1.2em;
}

div.nao-cpf {
    display: none;
    position: fixed;
    left: 0px;
    top: 0px;
    padding: 15px;
    width: 100%;
    color: red;
    background-color: rgb(212, 173, 173);
    border: 2px solid red;
    text-align: center;
    z-index: 15;
    font-size: 1.2em;
}

/*FIM SUCESSO E  ERRO*/
/*LOADING*/
div.loading {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 900;
    background-color: rgba(12, 12, 12, 0.9);
    text-align: center;
}

div.loading img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

div.loading>p {
    position: absolute;
    top: 48.5%;
    left: 50%;
    transform: translate(-50%, -50%);
}

/*FIM LOADING*/

/*CABEÇALHO*/
.cabecalho {
    width: 100%;
    background-color: #1D3557;
    padding: 20px;
}

.cabecalho .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.cabecalho .instituicao {
    display: flex;
    align-items: center;
}


.cabecalho .logo img {
    width: 60px;
    margin-right: 8px;
    padding: 2px 3px;
}

.cabecalho .nome-instituicao {
    color: #F1FAEE;
}

.cabecalho .nome-instituicao h1 {
    font-weight: normal;
}

.cabecalho .nome-instituicao h3 {
    font-weight: lighter;
}

.menu-desktop {
    display: block;
}

.cabecalho .menu-desktop a {
    text-decoration: none;
    margin: 0;
    padding: 12px 12px;
    
    color: #F1FAEE;
}

.cabecalho .menu-desktop a:hover {
    border: 2px solid #F1FAEE;
    border-radius: 3px;
    background-color: #E63946;
    
}

.menu-ativo{
    border: 2px solid #F1FAEE;
    border-radius: 3px;
    background-color: #E63946;
   
}

nav.menu-mobile {
    display: none;
}

nav.menu-mobile h3 {
    margin-right: 25px;
    cursor: pointer;
    font-size: 1.5em;
    font-weight: lighter;
    color: #F1FAEE;
}

nav.menu-mobile ul {
    position: absolute;
    display: none;
    width: 100%;
    height: 100%;
    text-align: center;
    left: 0;
    top: 148px;
    z-index: 5;
    background-color: #1D3557;
    list-style: none;
    padding: 0px 25px;
    padding-bottom: 25px;
}

nav.menu-mobile ul li {
    border-bottom: 1px solid #F1FAEE;
}

nav.menu-mobile ul li a {
    font-size: 1.4em;
    color: #F1FAEE;
    display: block;
    padding: 10px 0;
    transition: 0.5s;
}

nav.menu-mobile ul li a:hover {
    color: #1D3557;
    background-color: #F1FAEE;
}

/*FIM CABECALHO*/


section.secao-pagina {
    width: 100%;
    background-color: #A8DADC;
    padding: 25px 0;
}

.secao-pagina {
    text-align: center;
}

.secao-pagina img {
    width: 90px;
}

.secao-pagina h2 {
    font-size: 2.2em;
    font-weight: normal;
    color: #003049;
}

.secao-pagina h3 {
    font-weight: normal;
    color: #003049;
}

/*LOGIN*/
.form-login {
    padding: 60px;
    text-align: center;
    margin: 0 auto;
}

.form-login input {
    width: 100%;
    height: 30px;
    margin-bottom: 25px;
    padding: 25px 3px;
    font-size: 1.4em;
    font-weight: lighter;
    border: 0;
    border-bottom: 2px solid rgb(245, 245, 245);
    color: #003049;
    outline: none;
}

.form-login button {
    cursor: pointer;
    width: 100%;
    height: 40px;
    background-color: #A8DADC;
    color: #003049;
    border: 0;
    margin-bottom: 25px;
    font-size: 1.4em;
}

.form-login button:hover {
    background-color: #E63946;
}

.form-login .form-links {
    display: flex;
    justify-content: space-between;

}

.form-login .form-links a {
    font-size: 1em;
    text-decoration: none;
    color: #003049;
    padding: 12px;
}

.form-login .form-links a:hover {
    background-color: #F1FAEE;
}

/*FIM LOGIN*/

/*HOME*/

section.destaque {
    width: 100%;
    background-color: #A8DADC;
    padding: 25px 0;
}

.destaque .chamada {
    display: flex;
    justify-content: space-evenly;
    align-items: center;
}

.destaque .chamada img {
    width: 150px;
    margin: 0 20px;
}

.destaque .chamada p {
    font-size: 1.4em;
    color: #003049;
}

.destaque .chamada .texto-chamada {
    margin: 0px 20px;
}

section.home-conteudo {
    padding: 80px 0;
}

.accordion {
    font-size: 1.2em;
    background-color: #F1FAEE;
    color: #1D3557;
    cursor: pointer;
    padding: 18px;
    width: 100%;
    text-align: left;
    border: none;
    outline: none;
    transition: 0.4s;
    border-radius: 3px;
}

/* Add a background color to the button if it is clicked on (add the .active class with JS), and when you move the mouse over it (hover) */
.ativo,
.accordion:hover {
    background-color: #457B9D;
    color: #F1FAEE;
}

/* Style the accordion panel. Note: hidden by default */
.panel {
    padding: 0 18px;
    background-color: white;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.2s ease-out;
    border: 1px solid #A8DADC;
    border-radius: 3px;
    overflow: auto;
    height: 600px;
}

.panel .accordion-content {
    padding: 20px 0;
    color: #1D3557;
    max-height: 180px;
}

.accordion:after {
    content: '\25BC ';
    /* Unicode character for "plus" sign (+) */
    font-size: 1em;
    font-weight: normal;
    color: #1D3557;
    float: right;
    margin-left: 5px;
}

.ativo:after {
    color: #F1FAEE;
    content: "\25B2";
    /* Unicode character for "minus" sign (-) */

}

.panel .accordion-content p {
    padding: 5px 0;
}

.panel .accordion-content .btn {
    text-decoration: none;
    padding: 5px;
    color: #F1FAEE;
    border-radius: 3px;
    margin: 0 3px;

}

.panel .accordion-content .fazer-inscricao {

    background-color: green;
}

.panel .accordion-content .acompanha-inscricao {
    background-color: red;
    text-align: center;
}

.panel .accordion-content .publicacoes {
    background-color: #ee8f00;

}

/*FIM HOME*/

/*CONTATO*/
.form-contato {
    padding: 60px 30px;
    margin: 0 auto;
}

.form-contato h5 {
    font-size: 0.8em;
    font-weight: normal;
    color: #E63946;
    margin-bottom: 15px;
}

.form-contato form input {
    width: 100%;
    height: 30px;
    margin-bottom: 20px;
    font-size: 1.4em;
    font-weight: lighter;
    border: 0;
    border-bottom: 2px solid rgb(245, 245, 245);
    color: #003049;
    outline: none;
}

.form-contato form textarea {
    width: 100%;
    height: 150px;
    font-size: 1.4em;
    resize: vertical;
    font-weight: lighter;
    border: 0;
    border-bottom: 2px solid rgb(245, 245, 245);
    color: #003049;
    outline: none;
    margin-bottom: 15px;
}

.form-contato form button {
    cursor: pointer;
    width: 100%;
    height: 40px;
    font-size: 1.4em;
    color: #003049;
    background-color: #A8DADC;
    border: 0;
}

.form-contato form button:hover {
    background-color: #E63946;
}

/*FIM CONTATO*/

/*FORM CPF CANDIDATO*/
.form-cpf-candidato {
    padding: 60px 30px;
    margin: 0 auto;
}

.form-cpf-candidato h2 {
    font-weight: normal;
    color: #1D3557;
}

.form-cpf-candidato h5 {
    font-size: 0.8em;
    font-weight: normal;
    color: #E63946;
    margin-bottom: 15px;
}

.form-cpf-candidato form input {
    width: 100%;
    height: 30px;
    margin-bottom: 20px;
    font-size: 1.4em;
    font-weight: lighter;
    border: 0;
    border-bottom: 2px solid rgb(245, 245, 245);
    color: #003049;
    outline: none;
}

.form-cpf-candidato .btn-cadastrar a {
    color: #E63946;
    font-size: 1.2em;
}

.form-cpf-candidato form button {
    cursor: pointer;
    width: 150px;
    height: 40px;
    font-size: 1.4em;
    color: #003049;
    background-color: #A8DADC;
    border: 0;
}

.form-cpf-candidato form button:hover {
    background-color: #E63946;
}

.btn-cadastrar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 20px 0;
}

/*FIM CPF CANDIDATO*/

/*CADASTRO CANDIDATO*/
.ajax-form-cadastro input[name=data_nascimento] {
    width: 47%;
    margin-right: 5%;
}

.ajax-form-cadastro input[name=telefone] {
    width: 47%;
}

.ajax-form-cadastro input[name=senha] {
    width: 47%;
    margin-right: 5%;
}

.ajax-form-cadastro input[name=confirma_senha] {
    width: 47%;
}

.ajax-form-cadastro select,
select#estado {
    width: 100%;
    height: 30px;
    font-size: 1.4em;
    font-weight: lighter;
    color: #1D3557;
    border: 1px solid #ddd;
}

.ajax-form-cadastro label {
    width: 25%;
    height: 30px;
    font-size: 1.4em;
    font-weight: lighter;
    color: #1D3557;
}

/*FIM CADASTRO CANDIDATO*/

/*PUBLICAÇOES*/
.page-publicacoes {
    margin: 50px;
}

.page-publicacoes h3 {
    width: 100%;
    background-color: #F1FAEE;
    padding: 20px 5px;
}

.page-publicacoes table {
    width: 100%;
    border-collapse: collapse;
}

.page-publicacoes table tr th {
    border: 1px solid #1D3557;
    background-color: #1D3557;
    color: #F1FAEE;
    padding: 10px 5px;
    font-weight: normal;
    font-size: 1.3em;
}

.page-publicacoes table tr td {
    padding: 5px 5px;
    border: 1px solid #1D3557;
}

.page-publicacoes table tr td a {
    color: #1D3557;
}

.page-publicacoes table tr:hover {
    background-color: #F1FAEE;
}

.descricao-processo {
    display: flex;
    justify-content: space-between;
    margin-bottom: 25px;
}

.descricao-processo {
    padding: 0 5px;
}

.descricao-processo .descricao {
    width: 75%;
    background-color: #F1FAEE;
    padding: 5px;
}

.descricao-processo .divulgacao {
    width: 25%;
    height: 2%;
    background-color: rgb(0, 74, 170);
    padding: 5px;
    color: #F1FAEE;
    margin-left: 10px;
    text-align: center;
}

.descricao-processo .aberto {
    width: 25%;
    height: 2%;
    background-color: green;
    padding: 5px;
    color: #F1FAEE;
    margin-left: 10px;
    text-align: center;
}

.descricao-processo .encerrado {
    width: 25%;
    height: 2%;
    background-color: #E63946;
    padding: 5px;
    color: #F1FAEE;
    margin-left: 10px;
    text-align: center;
}

.descricao-processo .finalizado {
    width: 25%;
    height: 2%;
    background-color: #313131;
    padding: 5px;
    color: #F1FAEE;
    margin-left: 10px;
    text-align: center;
}

/*FIM PUBLICAÇOES*/

/*PAINEL CANDIDATO*/
.dados-candidato {
    width: 100%;
    display: flex;
    margin-top: 15px;
    align-items: center;
}

.dados-candidato img {
    margin-right: 15px;
}

.dados-candidato .foto-candidato {
    width: 92px;
    border: 6px solid #1D3557;
    border-radius: 50px;
}

.dado-candidato {
    margin-top: 3px;
}

.dado-candidato p {
    color: #1D3557;
}

.dado-candidato .btn {
    color: #F1FAEE;
    padding: 5px 10px;
}

.dado-candidato .btn-altera {
    background-color: #1D3557;
    border-radius: 3px;
}

.dado-candidato .btn-sair {
    background-color: #E63946;
    border-radius: 3px;
}

section.home-conteudo>.excluir-inscricao {
    background-color: #1D3557;
    border-radius: 3px;
}

a.btn-baixar {
    text-decoration: none;
    color: white;
    background-color: #003049;
    margin-right: 3px;
    padding: 3px;
    border-radius: 3px;
}

/*FIM PAINEL CANDIDATO*/

/* PÁGINA INSCRIÇÃO*/
.form_inscricao {
    margin: auto;
    color: #1D3557;
}

.form_inscricao form {
    margin: 25px 0;
    padding: 0 2%;
}

.form_inscricao .form-row {
    margin: 15px 0;
}

.form_inscricao .dados-pessoais {
    display: flex;
}

.form_inscricao .dados-pessoais .escolaridade {
    margin-left: 10px;
}


.form_inscricao .dados-pessoais .dt-nascimento {
    margin-left: 10px;
}

.form_inscricao .cargo-experiencia {
    display: flex;
}

.form_inscricao .select-cargo {
    margin-right: 10px;
}

.form_inscricao input {
    width: 100%;
    height: 25px;
    border: 0;
    border-bottom: 2px solid #ddd;
    font-size: 1em;
    color: #1D3557;
}

.form_inscricao select {
    color: #1D3557;
    width: 100%;
    height: 25px;
    border: 0;
    border-bottom: 2px solid #ddd;
    font-size: 1em;
}

.form_inscricao .btn-cadastrar button {
    cursor: pointer;
    height: 40px;
    border: 0;
    font-size: 1.2em;
    background-color: #A8DADC;
    color: #1D3557;
    padding: 0 15px;
}

.form_inscricao .btn-cadastrar button:hover {
    background-color: #E63946;

}

.form_inscricao .btn-cadastrar a {
    color: #E63946;
}

.form_inscricao .declaracao ul {
    list-style: inside;
}

.form_inscricao .qualificacao {
    margin: 15px 0;
    width: 100%;
    border: 1px solid #1D3557;
}

.form_inscricao table input {
    color: #1D3557;
}

.form_inscricao table,
td,
th {
    border: 1px solid #1D3557;
    border-collapse: collapse;
    color: #1D3557;
}

/*FIM PÁGINA INSCRIÇÃO*/

/*PAGINA RECURSO*/
textarea.descricao-recurso {
    width: 100%;
    height: 120px;
    resize: vertical;
    border: 0;
    border-bottom: 2px solid #ccc;
}

/*FIM PAGINA RECURSO*/

/*PAGINA ACOMPANHAR RECURSO*/
form.acompanha-recurso textarea {
    width: 100%;
    height: 120px;
    resize: vertical;
    border: 0;
    border-bottom: 2px solid #ddd;
    margin-bottom: 15px;
    font-size: 1.4em;
    font-weight: lighter;
    color: #1D3557;
}

/*FIM PAGINA ACOMPANHAR RECURSO*/

/*PAGINA DUVIDAS*/
.duvidas {
    display: flex;

}

.duvidas .icone {
    text-align: center;
    color: #003049;
    padding: 20px 0;
}

.duvidas .btn {
    border: 1px solid #E63946;
    padding: 8px 20px;
    color: #E63946;
}

.duvidas .btn:hover {
    background-color: #E63946;
    color: white;
}

.duvidas .icone h1 {
    font-size: 3.5em;
}

.duvidas .icone h2 {
    margin-bottom: 15px;
}

/*FIM PAGINA DUVIDAS*/

/*FOOTER*/
section.footer {
    width: 100%;
    padding: 25px 0;
    background-color: #1D3557;
}

.footer .desenvolvedor {
    text-align: center;
    color: #F1FAEE;
}

.footer .desenvolvedor a {
    text-decoration: none;
    color: #F1FAEE;
}

section.footer .desenvolvedor h2 {
    font-size: 1em;
    font-weight: normal;
}

/*FIM FOOTER*/

@media screen and (max-width: 1024px) {
    .w50 {
        width: 70%;
    }

    nav.menu-desktop {
        display: none;
    }

    nav.menu-mobile {
        display: block;
    }

    nav.menu-mobile h3 {
        font-size: 1em;
    }
}

@media screen and (max-width: 768px) {
    .page-publicacoes {
        padding: 50px 10px;
        margin: 0 auto;
    }

    .w50 {
        width: 100%;
    }

    .descricao-processo {
        display: block;
    }

    .descricao-processo .descricao {
        width: 100%;
        margin-bottom: 15px;
    }

    .descricao-processo .divulgacao {
        width: 100%;
        margin-left: 0px;
    }

    .descricao-processo .aberto {
        width: 100%;
        margin-left: 0px;
    }

    .descricao-processo .encerrado {
        width: 100%;
        margin-left: 0px;
    }

    .descricao-processo .finalizado {
        width: 100%;
        margin-left: 0px;
    }

    .form_inscricao .cargo-experiencia {
        display: block;
    }

    .form_inscricao .cargo-experiencia .select-cargo {
        margin-bottom: 15px;
    }

    .form_inscricao .dados-pessoais {
        display: block;
    }

    .form_inscricao .dados-pessoais .w30 {
        width: 100%;
        margin-bottom: 15px;
    }

    .form_inscricao table .desativar {
        display: none;
    }
}

@media screen and (max-width: 575px) {
    div.vlibras {
        display: none !important;
    }

    nav.menu-desktop {
        display: none;
    }

    nav.menu-mobile {
        display: block;
    }

    nav.menu-mobile h3 {
        font-size: 1em;
    }

    nav.menu-mobile ul {
        top: 97px;
    }

    nav.menu-mobile ul li a {
        font-size: 1em;
    }

    div.instituicao {
        max-width: 250px;
        font-size: 0.6em;
    }

    div.instituicao .logo a img {
        width: 35px;
    }

    .texto-chamada {
        font-size: 0.8em;
    }

    div.chamada img {
        display: none;
    }

    .form-login .form-links {
        display: flex;
        flex-direction: column;
    }

    div.dados-candidato {
        justify-content: center;
    }

    div.duvidas {
        flex-direction: column;
    }

    .ocultar {
        display: none;
    }

}

@media screen and (max-width: 480px) {
    .tooltip2 .texto {
        display: inline-block;
    }

    a.btn {
        display: block;
        margin-bottom: 10px;

    }

    .ajax-form-cadastro input[name=data_nascimento] {
        width: 100%;
    }

    .ajax-form-cadastro input[name=telefone] {
        width: 100%;
    }

    .ajax-form-cadastro input[name=senha] {
        width: 100%;

    }

    .ajax-form-cadastro input[name=confirma_senha] {
        width: 100%;
    }

    div.dados-candidato .foto-candidato {
        width: 170px;
        border-radius: 90px;
    }

    div.portal-prefeitura {
        display: none
    }

}

@media screen and (max-width: 410px) {
    .cabecalho .container {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    nav.menu-mobile {
        display: block;
    }

    nav.menu-mobile h3 {
        margin: 0;
    }


    nav.menu-mobile {
        align-items: center;
    }

    nav.menu-mobile ul {
        top: 110px;
        right: 0;
    }
}