/* ============================================================
   page-trabalhe-conosco.css
   Overrides mínimos da página /trabalhe-conosco/.
   O design system base vive em assets/css/system.css — aqui
   apenas estilos específicos desta página (grid de diferenciais,
   cards de vaga, stepper do processo seletivo e consentimento LGPD).
   ============================================================ */

/* ---- Hero institucional (recrutamento): altura reduzida vs LP ---- */
.section_hero.is-recrutamento .hero-master {
  min-height: 78vh;
}

/* ---- Diferenciais: grid de cards de feature (3 col → 1 col) ---- */
.diferenciais_grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-top: 40px;
}

.diferencial_card {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 28px;
  border-radius: var(--r-md);
  background: var(--surface-2);
  border: 1px solid var(--border-2);
}

.diferencial_card .icon-1x1-large {
  width: 44px;
  height: 44px;
  color: var(--blue);
}

.diferencial_card h3 {
  color: var(--ink-strong);
  font-weight: 600;
}

.diferencial_card p {
  color: var(--muted);
  margin: 0;
}

/* ---- Vagas: tags mono + rodapé do card ---- */
.buyers_content-wrap.is-stacked {
  display: block;
}

.vaga_card {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.vaga_tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.vaga_tag {
  font-family: var(--font-mono);
  font-size: 0.74rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(20, 28, 46, 0.05);
  color: var(--muted);
  border: 1px solid var(--border-2);
}

.review_card.bg-tertiary .vaga_tag {
  background: rgba(255, 255, 255, 0.08);
  color: var(--on-dark-2);
  border-color: rgba(255, 255, 255, 0.14);
}

.vaga_resumo {
  color: var(--muted);
}

.vaga_foot {
  margin-top: auto;
  padding-top: 8px;
}

/* ---- Estado vazio (banco de talentos) ---- */
.vagas_empty {
  margin-top: 32px;
  padding: 40px 28px;
  text-align: center;
  border-radius: var(--r-md);
  border: 1px dashed var(--border);
  background: var(--surface-2);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 18px;
}

/* ---- Jornada: stepper 4 passos com numeração mono ---- */
.jornada_steps {
  grid-template-columns: repeat(4, 1fr);
}

.jornada_steps .review_card {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.jornada_steps .marco-num {
  font-size: 1.7rem;
  font-weight: 600;
}

/* ---- Consentimento LGPD ----
   Estilo canônico em system.css (.form_consent / .form_consent-label, cores AA
   sobre o painel navy). Aqui apenas o respiro local. */
.form_consent {
  margin-top: 4px;
}

.form_optional {
  font-weight: 400;
  opacity: 0.6;
}

/* ---- Form de candidatura: textarea um pouco mais alta ---- */
.form_contact.is-candidatura .form_input.is-text-area {
  min-height: 96px;
}

/* ---- Responsivo ---- */
@media (max-width: 991px) {
  .diferenciais_grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .jornada_steps {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  .section_hero.is-recrutamento .hero-master {
    min-height: auto;
  }
  .diferenciais_grid,
  .jornada_steps {
    grid-template-columns: 1fr;
  }
}
