.elementor-8055 .elementor-element.elementor-element-3d358b5{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-8055 .elementor-element.elementor-element-0fb232c{width:100%;max-width:100%;}.elementor-8055 .elementor-element.elementor-element-0fb232c .search_jobs .search_keywords input, .elementor-8055 .elementor-element.elementor-element-0fb232c .search_jobs .search_location input{font-size:16px;}/* Start custom CSS for elementify-jobs, class: .elementor-element-0fb232c *//* Alinhar campos de busca na mesma linha */
.job_filters .search_jobs {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}

/* Campos de texto menores e uniformes */
.job_filters .search_keywords,
.job_filters .search_location {
    flex: 1;
    min-width: 200px;
}

/* Checkbox Remote na mesma linha */
.job_filters .remote_position {
    display: flex;
    align-items: center;
    gap: 5px;
}

/* Botão de busca mais chamativo */
.job_filters input[type="submit"],
.job_filters button {
    background: #ff6600;
    color: white;
    padding: 8px 16px;
    border-radius: 4px;
    border: none;
    cursor: pointer;
}
.job_filters input[type="submit"]:hover {
    background: #e65500;
}

/* Tipos de trabalho em linha */
.job_types {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    list-style: none;
    padding: 0;
    margin: 10px 0;
}

.job_types li {
    display: flex;
    align-items: center;
    gap: 5px;
}
/* Labels acima dos campos */
.job_filters label {
    display: block;
    font-weight: bold;
    margin-bottom: 4px;
    font-size: 14px;
}

/* Ajustar campos de texto */
.job_filters input[type="text"],
.job_filters select {
    width: 100%;
    padding: 8px;
    border-radius: 4px;
    border: 1px solid #ccc;
}
/* Corrigir alinhamento do "Remote positions only" no WP Job Manager */
.job_filters input[type="checkbox"] {
    display: inline-block !important; /* Força exibir o checkbox real */
    appearance: checkbox !important;  /* Remove estilos customizados */
    -webkit-appearance: checkbox !important;
    width: auto;
    height: auto;
    margin-right: 6px;
    vertical-align: middle;
}

.job_filters input[type="checkbox"] + label {
    display: inline-block;
    margin: 0;
    font-weight: normal;
    vertical-align: middle;
    margin-top: 25px
}
/* Margem superior para alinhar Remote Positions Only */
.job_filters input[type="checkbox"][name="remote_position"],
.job_filters label[for="remote_position"] {
    margin-top: 25px;
    display: inline-block;
    vertical-align: middle;
}

/* Margem superior para alinhar labels dos tipos de vaga */
.job_types label {
    margin-top: 25px;
    display: inline-block;
    vertical-align: middle;
}
/* Margem superior para o botão Search Jobs */
.job_filters .search_jobs input[type="submit"] {
    margin-top: 25px;
}

/*Layout da vaga */

/* Container principal da vaga */
.job_listing {
    display: flex !important;
    border: 1px solid #e1e1e1;
    margin-bottom: 30px;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 3px 10px rgba(0,0,0,0.08);
}

/* Bloco principal (70%) */
.position {
    width: 70% !important;
    padding: 25px;
    border-right: 1px dashed #e1e1e1;
    box-sizing: border-box;
}

/* Bloco secundário (30%) - SOLUÇÃO PARA UDESIGN */
.job-listing-meta {
    width: 30% !important;
    padding: 25px !important;
    display: flex !important;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start; /* Alinhamento à esquerda */
    background: #f9f9f9;
    position: relative;
}

/* Container interno para os elementos de meta */
.job-listing-meta ul.meta {
    position: relative;
    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none;
}

.job-listing-meta ul.meta li {
    width: 100%;
    margin: 10px 0 !important;
    padding: 0 !important;
    display: flex;
    align-items: center;
    font-size: 15px;
    color: #666;
    line-height: 1.6;
}

/* Ícones opcionais */
.job-listing-meta ul.meta li.location:before {
    content: "📍";
    margin-right: 8px;
}

.job-listing-meta ul.meta li.date:before {
    content: "📅";
    margin-right: 8px;
}

/* Título com margem superior */
.position h3 {
    font-size: 24px !important;
    line-height: 1.3;
    margin: 10px 0 15px 0 !important;
    color: #333;
}

/* Descrição com margem superior e sem padding */
.position .company {
    font-size: 16px !important;
    line-height: 1.6;
    margin: 25px 0 0 0 !important;
    padding: 0 !important;
    color: #555;
    display: block;
}

/* CORREÇÃO ESPECÍFICA PARA O TAGLINE */
.position .company .tagline {
    margin-left: 0 !important;
    display: block;
    margin-top: 10px !important;
}

/* Estilo da imagem */
.position img.company_logo {
    float: left;
    margin: 0 20px 10px 0;
    max-width: 80px;
    height: auto;
    border-radius: 4px;
    border: 1px solid #eee;
}

/* Limpar floats */
.position:after {
    content: "";
    display: table;
    clear: both;
}

/* Responsividade */
@media (max-width: 768px) {
    .job_listing {
        flex-direction: column;
    }
    .position, 
    .job-listing-meta {
        width: 100% !important;
        border-right: none;
        border-bottom: 1px dashed #e1e1e1;
    }
    
    .position .company {
        margin-top: 15px !important;
    }
    
    .job-listing-meta {
        padding: 20px !important;
    }
    
    .job-listing-meta ul.meta li {
        margin: 8px 0 !important;
    }
}

/* Ajustes extras para melhor visualização */
.job_listing a {
    text-decoration: none;
    color: #2a41e8;
    transition: color 0.3s;
}

.job_listing a:hover {
    color: #1a2dc1;
}

/* Correção específica para o tema UDesign */
#main-content .container .job_listing {
    margin-bottom: 30px;
}

/* === Layout: transforma o <a> em duas colunas (70% / 30%) === */
ul.job_listings > li.job_listing > a {
  display: flex !important;
  align-items: stretch !important; /* garante altura igual */
  text-decoration: none !important;
  color: inherit;
  padding: 0;
  box-sizing: border-box;
}

/* Coluna principal (70%) */
ul.job_listings > li.job_listing > a > .position {
  flex: 0 0 70% !important;
  padding: 25px !important;
  box-sizing: border-box !important;
  border-right: 1px dashed #eaeaea !important;
  display: flex !important;
  flex-direction: column;
  justify-content: center; /* centraliza verticalmente conteúdo interno */
}

/* Ajustes internos da posição */
ul.job_listings > li.job_listing > a > .position h3 {
  margin: 0 0 8px 0 !important;
  font-size: 24px !important;
}
ul.job_listings > li.job_listing > a > .position .company,
ul.job_listings > li.job_listing > a > .position .company .tagline {
  margin-top: 12px !important;
  color: #555 !important;
}

/* Coluna direita (30%) - sem data */
ul.job_listings > li.job_listing > a > .location,
ul.job_listings > li.job_listing > a > ul.meta {
  flex: 0 0 30% !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important; /* centraliza verticalmente */
  align-items: center !important;     /* centraliza horizontalmente */
  padding: 25px !important;
  box-sizing: border-box !important;
  background: #fafafa !important;
  text-align: center !important;
  border-left: none !important;
}

/* Espaço entre location e meta */
ul.job_listings > li.job_listing > a > .location { margin-bottom: 8px; }

/* Estilo dos itens da meta */
ul.job_listings > li.job_listing > a > ul.meta {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
}
ul.job_listings > li.job_listing > a > ul.meta > li {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 6px 0 !important;
  color: #666 !important;
}

/* Ícones antes do texto */
ul.job_listings > li.job_listing > a > ul.meta > li::before,
ul.job_listings > li.job_listing > a > ul.meta > li:before {
  display: inline-block !important;
  margin-right: 8px !important;
  vertical-align: middle !important;
}

/* Responsivo */
@media (max-width: 768px) {
  ul.job_listings > li.job_listing > a {
    display: block !important;
  }
  ul.job_listings > li.job_listing > a > .position,
  ul.job_listings > li.job_listing > a > .location,
  ul.job_listings > li.job_listing > a > ul.meta {
    width: 100% !important;
    flex: none !important;
    padding: 15px !important;
    border-right: none !important;
    border-left: none !important;
    text-align: left !important;
    align-items: flex-start !important;
  }
  ul.job_listings > li.job_listing > a > ul.meta > li {
    justify-content: flex-start !important;
  }
}

/* Inibe o display na Imagem */
ul.job_listings > li.job_listing > a img.company_logo {
  display: none !important;
}/* End custom CSS */