.elementor-17 .elementor-element.elementor-element-7910a40{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-17 .elementor-element.elementor-element-64fe0ff{text-align:center;}.elementor-17 .elementor-element.elementor-element-64fe0ff img{width:100%;height:215px;object-fit:cover;object-position:bottom center;}.elementor-17 .elementor-element.elementor-element-f6fb456{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:50px;--padding-bottom:90px;--padding-left:012px;--padding-right:012px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-17 .elementor-element.elementor-element-e17e626{text-align:center;}.elementor-17 .elementor-element.elementor-element-e17e626 .elementor-heading-title{font-family:"Inter", Sans-serif;font-size:40px;font-weight:600;}.elementor-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-17 .elementor-element.elementor-element-0bfa93f{--divider-border-style:solid;--divider-color:#D5D5D5;--divider-border-width:1px;}.elementor-17 .elementor-element.elementor-element-0bfa93f .elementor-divider-separator{width:100%;}.elementor-17 .elementor-element.elementor-element-0bfa93f .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-17 .elementor-element.elementor-element-d975142{width:100%;max-width:100%;}.elementor-17 .elementor-element.elementor-element-d975142.elementor-element{--align-self:flex-start;}@media(max-width:767px){.elementor-17 .elementor-element.elementor-element-64fe0ff img{height:130px;}.elementor-17 .elementor-element.elementor-element-f6fb456{--padding-top:30px;--padding-bottom:30px;--padding-left:012px;--padding-right:012px;}.elementor-17 .elementor-element.elementor-element-e17e626 .elementor-heading-title{font-size:26px;}}@media(min-width:768px){.elementor-17 .elementor-element.elementor-element-7910a40{--content-width:100%;}}/* Start custom CSS for shortcode, class: .elementor-element-d975142 *//* ==================================
   Estilos da Lista de Vagas (Grid)
   ================================== */

/* NOVO: Transforma a lista em um grid responsivo */
.lista-de-vagas {
    display: grid;
    /* Cria colunas que têm no mínimo 300px e no máximo 1fr (ocupam o espaço por igual).
       O 'auto-fit' faz com que as colunas se ajustem automaticamente à largura da tela. */
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 20px; /* Espaçamento entre os cards */
}

/* MUDANÇA: Transforma o card em uma coluna flexbox */
.lista-de-vagas .vaga-item {
    display: flex;
    flex-direction: column; /* Conteúdo empilhado verticalmente */
    padding: 20px;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    background-color: #fff;
    /* A altura será definida pelo conteúdo, e o grid garante o alinhamento */
}

.lista-de-vagas .vaga-conteudo {
    /* Este bloco não precisa mais de regras especiais de flex */
}

/* MUDANÇA: Adiciona um espaçamento e empurra o botão para o final */
.lista-de-vagas .vaga-acao {
    margin-top: auto; /* ESSA É A MÁGICA: empurra o botão para o fundo do card */
    padding-top: 15px; /* Cria um respiro entre o conteúdo e o botão */
}


/* ==================================
   Estilos do Conteúdo do Card
   (Praticamente inalterados)
   ================================== */

.lista-de-vagas .vaga-titulo {
    margin: 0 0 5px 0;
    font-size: 1.2rem;
}

.lista-de-vagas .vaga-titulo a {
    text-decoration: none;
    color: #333;
}
.lista-de-vagas .vaga-titulo a:hover {
    color: #0056b3;
}

.lista-de-vagas .vaga-empresa,
.lista-de-vagas .vaga-localidade,
.lista-de-vagas .vaga-data-publicacao { /* Adicionado seletor da data */
    color: #666;
    font-size: 0.9rem;
    margin-bottom: 8px;
    line-height: 1.4;
}

.lista-de-vagas .vaga-acao .btn-candidatar {
    background-color: #0073e6;
    color: #fff;
    padding: 10px 20px;
    text-decoration: none;
    border-radius: 5px;
    font-weight: bold;
    white-space: nowrap;
    display: inline-block; /* Garante que o padding seja aplicado corretamente */
}
.lista-de-vagas .vaga-acao .btn-candidatar:hover {
    background-color: #0056b3;
}


/* ==================================
   Estilos da Paginação
   (Inalterados)
   ================================== */

.navegacao-vagas {
    margin-top: 30px;
    text-align: center;
    /* Opcional: Faz a paginação ocupar todas as colunas do grid */
    grid-column: 1 / -1; 
}

.navegacao-vagas .page-numbers {
    padding: 8px 12px;
    margin: 0 4px;
    border: 1px solid #ccc;
    text-decoration: none;
    border-radius: 4px;
}

.navegacao-vagas .page-numbers.current,
.navegacao-vagas .page-numbers:hover {
    background-color: #0073e6;
    color: #fff;
    border-color: #0073e6;
}/* End custom CSS */
/* Start custom CSS *//* ==================================
   IMPORTAÇÃO DAS FONTES
   ================================== */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;700&family=Roboto:wght@400&display=swap');


/* ==================================
   GRID E CARD BASE
   ================================== */

.lista-de-vagas {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 25px; 
}

@media (max-width: 768px) {
    .lista-de-vagas {
        grid-template-columns: 1fr;
    }
    
#form-filtro-vagas{
    flex-direction:column;
    
}
input,.btn-buscar {
    width:100%!important;
    max-width:none;
}


}

.lista-de-vagas .vaga-item {
    display: flex;
    flex-direction: column;
    padding: 24px;
    border: 1px solid #EAEAEA;
    border-radius: 12px;
    background-color: #fff;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

.lista-de-vagas .vaga-conteudo {
    flex-grow: 1;
}

/* ==================================
   ESTILOS COM PSEUDO-ELEMENTOS
   ================================== */

/* Título da Vaga */
.vaga-titulo {
    font-family: 'Inter', sans-serif;
    font-size: 20px;
    font-weight: 700;
    color: #212529;
    margin: 0 0 5px 0;
}

/* Nome da Empresa */
.vaga-empresa {
    font-family: 'Roboto', sans-serif;
    font-size: 16px;
    color: #6c757d;
    position: relative; /* Necessário para o pseudo-elemento */
    padding-bottom: 16px; /* Espaço para a linha */
}

/* TÉCNICA 1: Criando a linha separadora com ::after */
.vaga-empresa::after {
    content: ''; /* Conteúdo vazio, mas essencial */
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #EAEAEA;
}

.vaga-localidade {
    display: flex;
    align-items: center;
    gap: 8px;
    font-family: 'Roboto', sans-serif;
    font-size: 14px;
    color: #212529;
    margin-top: 16px; /* Espaçamento após a linha */
    margin-bottom: 8px;
}

/* TÉCNICA 2: Adicionando o ícone de localização com ::before */
.vaga-localidade::before {
    content: '';
    display: block;
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    /* SVG do ícone codificado como Data URI para não depender de arquivos */
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="%236c757d" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z"></path><circle cx="12" cy="10" r="3"></circle></svg>');
    background-size: contain;
    background-repeat: no-repeat;
}

.vaga-data-publicacao {
    font-family: 'Roboto', sans-serif;
    font-size: 14px;
    color: #6c757d;
}

/* ==================================
   BOTÃO E PAGINAÇÃO
   ================================== */
.vaga-acao {
    margin-top: auto;
    padding-top: 20px;
}

/* TÉCNICA 3: "Trocando" o texto do botão com CSS */
.vaga-acao .btn-padrao { /* Usando a classe genérica */
    display: block;
    width: 100%;
    background-color: #00BD9A;
    color: #fff;
    font-family: 'Inter', sans-serif;
    font-weight: 700;
    text-align: center;
    padding: 12px 20px;
    text-decoration: none;
    border-radius: 8px;
    border: none;
    cursor: pointer;
    box-sizing: border-box;
    transition: background-color 0.2s ease;
    
    font-size: 0; /* ESCONDE o texto original ("Candidatar-se") */
    position: relative;
}

.vaga-acao .btn-padrao:hover {
    background-color: #00A385;
}

/* Adiciona o novo texto por cima */
.vaga-acao .btn-padrao::before {
    content: 'Ver mais informações';
    font-size: 16px; /* DEVOLVE o tamanho da fonte para o novo texto */
}

/* Paginação */
.navegacao-vagas {
    margin-top: 30px;
    text-align: center;
    grid-column: 1 / -1; 
}
.navegacao-vagas .page-numbers {
    padding: 8px 12px; margin: 0 4px; border: 1px solid #ccc;
    text-decoration: none; border-radius: 4px;
}
.navegacao-vagas .page-numbers.current,
.navegacao-vagas .page-numbers:hover {
    background-color: #00BD9A; color: #fff; border-color: #00BD9A;
}








#form-filtro-vagas{
    flex-wrap: nowrap!important;
}

#input-cargo,#input-cidade{
    width: 250px;
    border-radius: 4px;
    padding: 12px 20px!important;
    border: 1px solid #000 !important
}

.btn-buscar{
    padding: 12px!important
}

.btn-candidatar{
    border-radius: 1000px!important;
    background-color: #00bd9a!important;
}


.vaga-titulo a{
    font-size: 20px;
    font-weight: 500
}


input{
        border: 1px solid #e5e5e5!important
}/* End custom CSS */