/* Trabalhe conosco: lista de vagas, pagina da vaga e formulario.
   Cores em variavel: trocar aqui muda em todo lugar.

   Todo seletor tem o ancestral .hh-vagas, especificidade minima (0,2,0). O
   kit do Elementor define ".elementor-kit-147 h2{font-size:36px;...}" (0,1,1)
   e o Flatsome estiliza button, input, label, legend e select (caixa alta,
   negrito, fundo escuro no foco). Com o ancestral as regras daqui vencem sem
   !important, e cada estado de botao e campo e declarado para nao herdar o
   tratamento do tema ao receber mouse ou foco. */

.hh-vagas{--hh-v-marinho:#020230;--hh-v-ambar:#FDB848;--hh-v-ambar-escuro:#f0a92f;--hh-v-ambar-texto:#8a5a00;
  --hh-v-texto:#1d1d1f;--hh-v-suave:#5b6170;--hh-v-borda:#e3e6ec;--hh-v-borda-campo:#8c94a3;--hh-v-fundo:#f5f6f8;
  --hh-v-erro:#b42318;--hh-v-erro-fundo:#fef3f2;--hh-v-erro-borda:#f4c7c3;--hh-v-ok:#1c8b4f;--hh-v-raio:14px;
  --hh-v-sombra:0 1px 2px rgba(2,2,48,.05),0 8px 24px rgba(2,2,48,.06);--hh-v-topo:110px;
  background:#fff;color:var(--hh-v-texto);font-family:inherit;line-height:1.6;overflow-wrap:break-word}

/* hidden precisa vencer os display das classes abaixo */
.hh-vagas [hidden]{display:none!important}
.hh-vagas .hh-vagas-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Foco visivel em tudo que e clicavel. Marinho sobre fundo claro; na faixa
   escura o anel vira ambar logo abaixo. */
.hh-vagas a:focus-visible,.hh-vagas button:focus-visible{outline:3px solid var(--hh-v-marinho);outline-offset:3px}
.hh-vagas .hh-vagas-hero a:focus-visible{outline-color:var(--hh-v-ambar)}

/* So padding lateral: o mesmo elemento pode ser .hh-vagas-vaga, que tem
   padding vertical proprio, e um "padding:0 20px" o zeraria. */
.hh-vagas .hh-vagas__container{width:100%;max-width:1140px;margin-right:auto;margin-left:auto;padding-right:20px;
  padding-left:20px;box-sizing:border-box}

.hh-vagas .hh-vagas__subtitulo{margin:0 0 16px;color:var(--hh-v-marinho);font-size:22px;font-weight:800;
  line-height:1.25;letter-spacing:-.01em;text-transform:none}

/* faixa azul-marinho do topo */
.hh-vagas .hh-vagas-hero{position:relative;padding:52px 0 44px;background-color:var(--hh-v-marinho);
  background-image:radial-gradient(ellipse at 92% 0%,rgba(253,184,72,.22),transparent 55%),
    radial-gradient(ellipse at 0% 100%,rgba(90,90,210,.22),transparent 50%);color:#fff}
.hh-vagas .hh-vagas-hero--vaga{padding:28px 0 36px}
.hh-vagas .hh-vagas-hero__eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 14px;color:var(--hh-v-ambar);
  font-size:12px;font-weight:700;line-height:1.4;letter-spacing:.14em;text-transform:uppercase}
.hh-vagas .hh-vagas-hero__eyebrow::before{content:"";flex:none;width:24px;height:2px;border-radius:2px;background:currentColor}
.hh-vagas .hh-vagas-hero__titulo{max-width:820px;margin:0 0 16px;color:#fff;font-size:clamp(30px,5vw,48px);
  font-weight:800;line-height:1.12;letter-spacing:-.02em;text-transform:none}
.hh-vagas .hh-vagas-hero--vaga .hh-vagas-hero__titulo{margin-bottom:18px;font-size:clamp(28px,4.2vw,42px)}
.hh-vagas .hh-vagas-hero__intro{max-width:640px;color:rgba(255,255,255,.82);font-size:17px;line-height:1.65}
.hh-vagas .hh-vagas-hero__intro p{margin:0 0 .8em;color:inherit;font-size:inherit}
.hh-vagas .hh-vagas-hero__intro p:last-child{margin-bottom:0}

/* trilha "Trabalhe conosco > vaga" */
.hh-vagas .hh-vagas-trilha{margin:0 0 22px;font-size:13px;line-height:1.4}
.hh-vagas .hh-vagas-trilha__lista{display:flex;flex-wrap:wrap;align-items:center;gap:6px 0;margin:0;padding:0;list-style:none}
.hh-vagas .hh-vagas-trilha__item{min-width:0;max-width:100%;margin:0;color:rgba(255,255,255,.7)}
/* Separador desenhado em borda, e nao com content:"/", para o leitor de tela
   nao ler "barra" entre os itens. */
.hh-vagas .hh-vagas-trilha__item+.hh-vagas-trilha__item::before{content:"";display:inline-block;width:6px;height:6px;
  margin:0 12px 1px 8px;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;transform:rotate(45deg);opacity:.6}
.hh-vagas .hh-vagas-trilha__item[aria-current]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hh-vagas .hh-vagas-trilha a,.hh-vagas .hh-vagas-trilha a:visited{color:#fff;text-decoration:underline;
  text-decoration-color:rgba(255,255,255,.4);text-underline-offset:3px}
.hh-vagas .hh-vagas-trilha a:hover{color:var(--hh-v-ambar);text-decoration-color:currentColor}

/* chips de modalidade, local e contrato */
.hh-vagas .hh-vagas-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.hh-vagas .hh-vagas-chip{display:inline-flex;align-items:center;gap:7px;margin:0;padding:6px 12px;
  border:1px solid var(--hh-v-borda);border-radius:999px;background:var(--hh-v-fundo);color:var(--hh-v-marinho);
  font-size:13px;font-weight:600;line-height:1.3}
.hh-vagas .hh-vagas-chip i{color:#5d6283;font-size:12px}
.hh-vagas .hh-vagas-hero .hh-vagas-chip{border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.08);color:#fff}
.hh-vagas .hh-vagas-hero .hh-vagas-chip i{color:var(--hh-v-ambar)}

/* botoes: base com todos os estados, depois as variantes */
.hh-vagas .hh-vagas__botao,
.hh-vagas .hh-vagas__botao:visited,
.hh-vagas .hh-vagas__botao:hover,
.hh-vagas .hh-vagas__botao:focus,
.hh-vagas .hh-vagas__botao:active,
.hh-vagas .hh-vagas__botao:disabled{display:inline-flex;align-items:center;justify-content:center;gap:10px;
  max-width:100%;min-height:48px;margin:0;padding:12px 24px;border:1px solid transparent;border-radius:10px;
  font-family:inherit;font-size:15px;font-weight:700;line-height:1.2;letter-spacing:normal;text-transform:none;
  text-align:center;text-decoration:none;text-shadow:none;box-shadow:none;cursor:pointer;vertical-align:middle;
  transition:background-color .15s ease,border-color .15s ease,color .15s ease}
.hh-vagas .hh-vagas__botao--primario,
.hh-vagas .hh-vagas__botao--primario:visited,
.hh-vagas .hh-vagas__botao--primario:hover,
.hh-vagas .hh-vagas__botao--primario:focus,
.hh-vagas .hh-vagas__botao--primario:active,
.hh-vagas .hh-vagas__botao--primario:disabled{border-color:var(--hh-v-ambar);background:var(--hh-v-ambar);color:var(--hh-v-marinho)}
.hh-vagas .hh-vagas__botao--primario:hover{border-color:var(--hh-v-ambar-escuro);background:var(--hh-v-ambar-escuro)}
.hh-vagas .hh-vagas__botao--secundario,
.hh-vagas .hh-vagas__botao--secundario:visited,
.hh-vagas .hh-vagas__botao--secundario:hover,
.hh-vagas .hh-vagas__botao--secundario:focus,
.hh-vagas .hh-vagas__botao--secundario:active{border-color:var(--hh-v-borda-campo);background:#fff;color:var(--hh-v-marinho)}
.hh-vagas .hh-vagas__botao--secundario:hover{border-color:var(--hh-v-marinho);background:var(--hh-v-fundo)}
.hh-vagas .hh-vagas__botao:disabled{opacity:.7;cursor:progress}

.hh-vagas .hh-vagas__link,.hh-vagas .hh-vagas__link:visited{display:inline-flex;align-items:center;gap:8px;
  color:var(--hh-v-marinho);font-weight:700;text-decoration:underline;text-decoration-color:var(--hh-v-ambar);
  text-decoration-thickness:2px;text-underline-offset:4px}
.hh-vagas .hh-vagas__link:hover{color:var(--hh-v-marinho);text-decoration-color:currentColor}

/* lista de vagas */
.hh-vagas .hh-vagas-lista{padding:40px 0 64px;background:var(--hh-v-fundo)}
.hh-vagas .hh-vagas-lista__topo{margin:0 0 20px}
.hh-vagas .hh-vagas-lista__topo .hh-vagas__subtitulo{margin:0}
.hh-vagas .hh-vagas-lista__grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr));gap:20px}

/* Card inteiro clicavel pelo link do titulo (::after cobre o card), com um
   unico ponto de Tab por vaga. O anel de foco vai no card, onde se ve. */
.hh-vagas .hh-vaga-card{position:relative;display:flex;flex-direction:column;gap:14px;min-width:0;margin:0;padding:22px 20px;
  border:1px solid var(--hh-v-borda);border-radius:var(--hh-v-raio);background:#fff;box-shadow:var(--hh-v-sombra);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.hh-vagas .hh-vaga-card:hover{transform:translateY(-3px);border-color:#cfd3dd;
  box-shadow:0 2px 4px rgba(2,2,48,.06),0 16px 36px rgba(2,2,48,.1)}
.hh-vagas .hh-vaga-card:focus-within{border-color:var(--hh-v-marinho);box-shadow:0 0 0 3px rgba(253,184,72,.6),var(--hh-v-sombra)}
.hh-vagas .hh-vaga-card__topo{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px}
.hh-vagas .hh-vaga-card__area{margin:0;color:var(--hh-v-ambar-texto);font-size:12px;font-weight:700;line-height:1.4;
  letter-spacing:.1em;text-transform:uppercase}
.hh-vagas .hh-vaga-card__selo{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;
  background:#fff4de;color:#6e4700;font-size:12px;font-weight:600;line-height:1.3}
.hh-vagas .hh-vaga-card__selo--encerrada{background:#eef0f3;color:var(--hh-v-suave)}
.hh-vagas .hh-vaga-card__titulo{margin:0;color:var(--hh-v-marinho);font-size:20px;font-weight:700;line-height:1.3;
  letter-spacing:-.01em;text-transform:none}
.hh-vagas .hh-vaga-card__link,.hh-vagas .hh-vaga-card__link:visited{color:var(--hh-v-marinho);text-decoration:none}
.hh-vagas .hh-vaga-card__link:hover{color:var(--hh-v-marinho);text-decoration:underline;text-underline-offset:3px}
.hh-vagas .hh-vaga-card__link:focus-visible{outline:none}
.hh-vagas .hh-vaga-card__link::after{content:"";position:absolute;inset:0;z-index:1;border-radius:var(--hh-v-raio)}
.hh-vagas .hh-vaga-card__resumo{margin:0;color:var(--hh-v-suave);font-size:15px;line-height:1.6}
.hh-vagas .hh-vaga-card__rodape{margin-top:auto;padding-top:4px}
.hh-vagas .hh-vaga-card .hh-vaga-card__botao{min-height:42px;padding:10px 18px;font-size:14px}
.hh-vagas .hh-vaga-card:hover .hh-vaga-card__botao{border-color:var(--hh-v-ambar-escuro);background:var(--hh-v-ambar-escuro)}
.hh-vagas .hh-vaga-card__botao i{transition:transform .18s ease}
.hh-vagas .hh-vaga-card:hover .hh-vaga-card__botao i{transform:translateX(3px)}

.hh-vagas .hh-vagas-vazio{display:flex;flex-direction:column;align-items:center;gap:14px;max-width:560px;margin:0 auto;
  padding:48px 24px;border:1px dashed #cfd3dd;border-radius:var(--hh-v-raio);background:#fff;text-align:center}
.hh-vagas .hh-vagas-vazio__icone{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;
  background:rgba(253,184,72,.22);color:var(--hh-v-marinho);font-size:26px}
.hh-vagas .hh-vagas-vazio__texto{margin:0;color:var(--hh-v-suave);font-size:16px;line-height:1.6}

.hh-vagas .hh-vagas-paginacao{margin:36px 0 0}
.hh-vagas .hh-vagas-paginacao ul{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin:0;padding:0;list-style:none}
.hh-vagas .hh-vagas-paginacao li{margin:0}
.hh-vagas .hh-vagas-paginacao li>.page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:42px;
  height:42px;padding:0 12px;border:1px solid var(--hh-v-borda);border-radius:10px;background:#fff;
  color:var(--hh-v-marinho);font-weight:600;text-decoration:none}
.hh-vagas .hh-vagas-paginacao li>a.page-numbers:hover{border-color:var(--hh-v-marinho)}
.hh-vagas .hh-vagas-paginacao li>.page-numbers.current{border-color:var(--hh-v-marinho);background:var(--hh-v-marinho);color:#fff}

/* pagina da vaga: no celular empilha com o resumo primeiro (ordem do HTML) */
.hh-vagas .hh-vagas-vaga{display:flex;flex-direction:column;gap:28px;padding-top:28px;padding-bottom:64px}
.hh-vagas .hh-vagas-vaga__principal{min-width:0}

.hh-vagas .hh-vagas-resumo{padding:22px 20px;border:1px solid var(--hh-v-borda);border-top:4px solid var(--hh-v-ambar);
  border-radius:var(--hh-v-raio);background:#fff;box-shadow:var(--hh-v-sombra)}
.hh-vagas .hh-vagas-resumo__titulo{margin:0 0 14px;color:var(--hh-v-marinho);font-size:17px;font-weight:800;
  line-height:1.3;letter-spacing:normal;text-transform:none}
/* O Flatsome poe "dl{text-transform:uppercase}"; o resumo e uma <dl> e
   herdava a caixa alta nos valores ("R$ 4.500 A R$ 5.500"). */
.hh-vagas .hh-vagas-resumo__lista{margin:0 0 20px;padding:0;text-transform:none;letter-spacing:normal}
.hh-vagas .hh-vagas-resumo__linha{display:flex;align-items:baseline;justify-content:space-between;gap:16px;
  padding:11px 0;border-bottom:1px solid var(--hh-v-borda)}
.hh-vagas .hh-vagas-resumo__linha:first-child{padding-top:0}
.hh-vagas .hh-vagas-resumo__linha:last-child{padding-bottom:0;border-bottom:0}
.hh-vagas .hh-vagas-resumo__rotulo{display:flex;flex:none;align-items:center;gap:9px;margin:0;color:var(--hh-v-suave);
  font-size:14px;font-weight:500;line-height:1.4}
.hh-vagas .hh-vagas-resumo__rotulo i{width:16px;color:var(--hh-v-ambar-texto);font-size:13px;text-align:center}
.hh-vagas .hh-vagas-resumo__valor{min-width:0;margin:0;color:var(--hh-v-texto);font-size:14px;font-weight:600;
  line-height:1.4;text-align:right;overflow-wrap:anywhere}
.hh-vagas .hh-vagas-resumo .hh-vagas-resumo__botao{width:100%}
.hh-vagas .hh-vagas-resumo__encerrada{display:flex;align-items:center;justify-content:center;gap:8px;margin:0;padding:12px;
  border-radius:10px;background:var(--hh-v-fundo);color:var(--hh-v-suave);font-size:14px;font-weight:600}

/* descricao: texto livre do editor classico */
.hh-vagas .hh-vagas-descricao{margin:0 0 36px}
.hh-vagas .hh-vagas-conteudo{color:var(--hh-v-texto);font-size:16px;line-height:1.75}
.hh-vagas .hh-vagas-conteudo>:first-child{margin-top:0}
.hh-vagas .hh-vagas-conteudo p{margin:0 0 1.1em}
/* Titulo 1 a 6 do Editor Classico: sem regra aqui, o h1/h5/h6 pegariam os
   36px e a cor global do kit do Elementor no meio da descricao. */
.hh-vagas .hh-vagas-conteudo h1,.hh-vagas .hh-vagas-conteudo h2,.hh-vagas .hh-vagas-conteudo h3,
.hh-vagas .hh-vagas-conteudo h4,.hh-vagas .hh-vagas-conteudo h5,.hh-vagas .hh-vagas-conteudo h6{margin:1.6em 0 .6em;
  color:var(--hh-v-marinho);font-weight:700;line-height:1.3;letter-spacing:normal;text-transform:none}
.hh-vagas .hh-vagas-conteudo h1,.hh-vagas .hh-vagas-conteudo h2{font-size:21px}
.hh-vagas .hh-vagas-conteudo h3{font-size:18px}
.hh-vagas .hh-vagas-conteudo h4{font-size:16px}
.hh-vagas .hh-vagas-conteudo h5,.hh-vagas .hh-vagas-conteudo h6{font-size:15px}
/* O Flatsome zera o padding das listas e so devolve o recuo dentro de
   .col-inner; sem isto os marcadores ficavam pendurados fora da coluna. */
.hh-vagas .hh-vagas-conteudo ul,.hh-vagas .hh-vagas-conteudo ol{margin:0 0 1.2em;padding-left:1.4em}
.hh-vagas .hh-vagas-conteudo ul{list-style:disc}
.hh-vagas .hh-vagas-conteudo ol{list-style:decimal}
.hh-vagas .hh-vagas-conteudo li{margin:0 0 .45em;padding-left:.2em}
.hh-vagas .hh-vagas-conteudo li::marker{color:#c98a12}
.hh-vagas .hh-vagas-conteudo a{color:var(--hh-v-marinho);text-decoration:underline;text-decoration-color:var(--hh-v-ambar);
  text-decoration-thickness:2px;text-underline-offset:3px}
.hh-vagas .hh-vagas-conteudo a:hover{text-decoration-color:currentColor}
.hh-vagas .hh-vagas-conteudo img{max-width:100%;height:auto;border-radius:10px}
.hh-vagas .hh-vagas-conteudo blockquote{margin:1.4em 0;padding:4px 0 4px 18px;border-left:3px solid var(--hh-v-ambar);color:var(--hh-v-suave)}
.hh-vagas .hh-vagas-conteudo table{display:block;max-width:100%;overflow-x:auto}

/* candidatura */
.hh-vagas .hh-vagas-candidatura{scroll-margin-top:var(--hh-v-topo);padding:24px 18px;border:1px solid var(--hh-v-borda);
  border-radius:var(--hh-v-raio);background:var(--hh-v-fundo)}
.hh-vagas .hh-vagas-candidatura__cabecalho{margin:0 0 22px}
.hh-vagas .hh-vagas-candidatura__cabecalho .hh-vagas__subtitulo{margin:0 0 6px}
.hh-vagas .hh-vagas-candidatura__intro{margin:0;color:var(--hh-v-suave);font-size:15px;line-height:1.55}

.hh-vagas .hh-vagas-erros{scroll-margin-top:var(--hh-v-topo);margin:0 0 24px;padding:16px 18px;border:1px solid var(--hh-v-erro-borda);
  border-left:4px solid var(--hh-v-erro);border-radius:10px;background:var(--hh-v-erro-fundo);color:var(--hh-v-texto)}
.hh-vagas .hh-vagas-erros:focus{outline:none;box-shadow:0 0 0 3px rgba(180,35,24,.2)}
.hh-vagas .hh-vagas-erros__titulo{display:flex;align-items:center;gap:10px;margin:0 0 8px;color:var(--hh-v-erro);
  font-size:16px;font-weight:700;line-height:1.35;letter-spacing:normal;text-transform:none}
.hh-vagas .hh-vagas-erros__geral{margin:0 0 6px;font-size:15px;line-height:1.5}
.hh-vagas .hh-vagas-erros__lista{margin:6px 0 0;padding-left:1.2em;list-style:disc}
.hh-vagas .hh-vagas-erros__lista li{margin:0 0 4px;color:var(--hh-v-erro);font-size:14px;line-height:1.5}
.hh-vagas .hh-vagas-erros__lista a,.hh-vagas .hh-vagas-erros__lista a:visited{color:var(--hh-v-erro);font-weight:600;
  text-decoration:underline;text-underline-offset:2px}
.hh-vagas .hh-vagas-erros__lista a:hover{color:var(--hh-v-erro);text-decoration-thickness:2px}

/* Campos com o id do form no seletor. O kit do Elementor, quando tem estilo
   de campo configurado, gera "input:not([type=button]):not([type=submit])",
   especificidade (0,3,1), e (0,4,1) no foco - mais que qualquer combinacao
   razoavel de classes. Com o id a regra vence sem !important. */
.hh-vagas #hh-vagas-form{position:relative;margin:0}
.hh-vagas #hh-vagas-form .hh-vagas-form__mel{position:absolute;top:auto;left:-10000px;width:1px;height:1px;overflow:hidden}
.hh-vagas #hh-vagas-form .hh-vagas-form__grade{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}
.hh-vagas #hh-vagas-form .hh-vagas-campo{min-width:0;margin:0;padding:0;border:0;background:none}
.hh-vagas #hh-vagas-form .hh-vagas-campo--inteira{grid-column:1/-1}
.hh-vagas #hh-vagas-form .hh-vagas-campo__rotulo{display:block;float:none;width:auto;max-width:100%;margin:0 0 7px;padding:0;
  border:0;color:var(--hh-v-texto);font-size:14px;font-weight:600;line-height:1.4;letter-spacing:normal;text-transform:none}
.hh-vagas #hh-vagas-form .hh-vagas-campo__obrig{margin-left:3px;color:var(--hh-v-erro);font-weight:700}
.hh-vagas #hh-vagas-form .hh-vagas-campo__ajuda{margin:-2px 0 8px;color:var(--hh-v-suave);font-size:13px;line-height:1.5}
.hh-vagas #hh-vagas-form .hh-vagas-campo__erro{display:flex;align-items:flex-start;gap:7px;margin:8px 0 0;
  color:var(--hh-v-erro);font-size:13px;font-weight:600;line-height:1.45}
.hh-vagas #hh-vagas-form .hh-vagas-campo__erro i{margin-top:2px}

/* texto, e-mail, telefone, link, numero, data, lista e paragrafo */
.hh-vagas #hh-vagas-form .hh-vagas-campo__entrada{display:block;box-sizing:border-box;width:100%;max-width:100%;height:auto;
  min-height:48px;margin:0;padding:12px 14px;border:1px solid var(--hh-v-borda-campo);border-radius:10px;
  background-color:#fff;color:var(--hh-v-texto);font-family:inherit;font-size:16px;font-weight:400;line-height:1.4;
  letter-spacing:normal;text-transform:none;box-shadow:none;opacity:1;-webkit-appearance:none;appearance:none;
  transition:border-color .15s ease,box-shadow .15s ease}
/* #6b7280 da 4,8:1 sobre branco e continua mais claro que o texto digitado,
   para o exemplo nao parecer valor ja preenchido. */
.hh-vagas #hh-vagas-form .hh-vagas-campo__entrada::placeholder{color:#6b7280;opacity:1}
.hh-vagas #hh-vagas-form textarea.hh-vagas-campo__entrada{min-height:140px;resize:vertical}
.hh-vagas #hh-vagas-form select.hh-vagas-campo__entrada{padding-right:42px;cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23020230' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 16px center;background-size:12px 8px}
/* Estados declaram so cor, borda e sombra: o resto vem da regra base, que
   ja vence o tema. Repetir padding aqui apagaria o espaco da seta do select. */
.hh-vagas #hh-vagas-form .hh-vagas-campo__entrada:hover{border-color:#5b6170;letter-spacing:normal;text-transform:none}
.hh-vagas #hh-vagas-form .hh-vagas-campo__entrada:focus,
.hh-vagas #hh-vagas-form .hh-vagas-campo__entrada:active{outline:none;border-color:var(--hh-v-marinho);background-color:#fff;
  color:var(--hh-v-texto);box-shadow:0 0 0 3px rgba(253,184,72,.35);opacity:1;letter-spacing:normal;text-transform:none}
.hh-vagas #hh-vagas-form .hh-vagas-campo__entrada:disabled{border-color:var(--hh-v-borda);background-color:#f1f2f4;
  color:var(--hh-v-suave);cursor:not-allowed;letter-spacing:normal;text-transform:none}
.hh-vagas #hh-vagas-form .is-erro .hh-vagas-campo__entrada,
.hh-vagas #hh-vagas-form.is-validado .hh-vagas-campo__entrada:invalid{border-color:var(--hh-v-erro);background-color:#fffafa}
.hh-vagas #hh-vagas-form .is-erro .hh-vagas-campo__entrada:focus,
.hh-vagas #hh-vagas-form.is-validado .hh-vagas-campo__entrada:invalid:focus{border-color:var(--hh-v-erro);box-shadow:0 0 0 3px rgba(180,35,24,.18)}
/* Separado: navegador sem :user-invalid descartaria a regra inteira. */
.hh-vagas #hh-vagas-form .hh-vagas-campo__entrada:user-invalid{border-color:var(--hh-v-erro);background-color:#fffafa}

/* grupos de opcoes */
.hh-vagas #hh-vagas-form .hh-vagas-opcoes{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:8px}
.hh-vagas #hh-vagas-form .hh-vagas-opcoes--lado{grid-template-columns:repeat(2,minmax(0,160px))}
.hh-vagas #hh-vagas-form .hh-vagas-opcao{display:flex;align-items:center;gap:10px;min-width:0;margin:0;padding:12px 14px;
  border:1px solid var(--hh-v-borda-campo);border-radius:10px;background:#fff;color:var(--hh-v-texto);font-size:15px;
  font-weight:500;line-height:1.35;letter-spacing:normal;text-transform:none;cursor:pointer;
  transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}
.hh-vagas #hh-vagas-form .hh-vagas-opcao:hover{border-color:var(--hh-v-marinho);background:#fafbff}
.hh-vagas #hh-vagas-form .hh-vagas-opcao:has(:checked){border-color:var(--hh-v-marinho);background:#f2f3fb;
  box-shadow:inset 0 0 0 1px var(--hh-v-marinho)}
.hh-vagas #hh-vagas-form .hh-vagas-opcao:has(:focus-visible){border-color:var(--hh-v-marinho);box-shadow:0 0 0 3px rgba(253,184,72,.55)}
.hh-vagas #hh-vagas-form .is-erro .hh-vagas-opcao{border-color:#e39a92}
.hh-vagas #hh-vagas-form .hh-vagas-opcao__texto{min-width:0;overflow-wrap:anywhere}
.hh-vagas #hh-vagas-form .hh-vagas-opcao__input,
.hh-vagas #hh-vagas-form .hh-vagas-consentimento__input{flex:none;display:inline-block;width:18px;height:18px;min-height:0;
  margin:0;padding:0;border:0;background:none;box-shadow:none;accent-color:var(--hh-v-marinho);cursor:pointer;
  vertical-align:middle;-webkit-appearance:auto;appearance:auto}
.hh-vagas #hh-vagas-form .hh-vagas-opcao__input:focus-visible,
.hh-vagas #hh-vagas-form .hh-vagas-consentimento__input:focus-visible{outline:2px solid var(--hh-v-marinho);outline-offset:2px}

/* Upload: o input nativo cobre a area, transparente, e o desenho fica embaixo.
   O anel de foco aparece na area via :focus-within. */
.hh-vagas #hh-vagas-form .hh-vagas-arquivo{position:relative;display:flex;flex-direction:column;align-items:center;
  justify-content:center;gap:6px;min-height:150px;padding:24px 18px;border:2px dashed #b3b9c6;border-radius:var(--hh-v-raio);
  background:#fff;text-align:center;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}
.hh-vagas #hh-vagas-form .hh-vagas-arquivo:hover,
.hh-vagas #hh-vagas-form .hh-vagas-arquivo.is-arrastando{border-color:var(--hh-v-marinho);background:#fffaf0}
.hh-vagas #hh-vagas-form .hh-vagas-arquivo:focus-within{border-color:var(--hh-v-marinho);box-shadow:0 0 0 3px rgba(253,184,72,.5)}
.hh-vagas #hh-vagas-form .hh-vagas-arquivo__input,
.hh-vagas #hh-vagas-form .hh-vagas-arquivo__input:hover,
.hh-vagas #hh-vagas-form .hh-vagas-arquivo__input:focus,
.hh-vagas #hh-vagas-form .hh-vagas-arquivo__input:active{position:absolute;inset:0;z-index:2;display:block;width:100%;height:100%;
  min-height:0;max-width:none;margin:0;padding:0;border:0;background:none;box-shadow:none;opacity:0;cursor:pointer;outline:none}
.hh-vagas #hh-vagas-form .hh-vagas-arquivo__icone{display:grid;place-items:center;width:52px;height:52px;margin:0 0 6px;
  border-radius:50%;background:rgba(253,184,72,.22);color:var(--hh-v-marinho);font-size:22px;transition:background-color .15s ease}
.hh-vagas #hh-vagas-form .hh-vagas-arquivo__chamada{color:var(--hh-v-texto);font-size:15px;line-height:1.45}
.hh-vagas #hh-vagas-form .hh-vagas-arquivo__chamada strong{color:var(--hh-v-marinho);font-weight:700;text-decoration:underline;
  text-decoration-color:var(--hh-v-ambar);text-decoration-thickness:2px;text-underline-offset:3px}
.hh-vagas #hh-vagas-form .hh-vagas-arquivo__formatos{color:var(--hh-v-suave);font-size:13px;line-height:1.45}
.hh-vagas #hh-vagas-form .hh-vagas-arquivo.tem-arquivo{border-style:solid;border-color:#9fd3b5;background:#f6fbf8}
.hh-vagas #hh-vagas-form .hh-vagas-arquivo.tem-arquivo .hh-vagas-arquivo__icone{background:#e3f4ea;color:var(--hh-v-ok)}
.hh-vagas #hh-vagas-form .is-erro .hh-vagas-arquivo,
.hh-vagas #hh-vagas-form .is-erro .hh-vagas-arquivo.tem-arquivo{border-style:dashed;border-color:var(--hh-v-erro);background:#fffafa}
.hh-vagas #hh-vagas-form .is-erro .hh-vagas-arquivo .hh-vagas-arquivo__icone{background:var(--hh-v-erro-fundo);color:var(--hh-v-erro)}
.hh-vagas #hh-vagas-form.is-validado .hh-vagas-arquivo:has(:invalid){border-color:var(--hh-v-erro)}

.hh-vagas #hh-vagas-form .hh-vagas-arquivo__escolhido{display:flex;align-items:center;gap:10px;min-width:0;margin:10px 0 0;
  padding:8px 8px 8px 12px;border:1px solid var(--hh-v-borda);border-radius:10px;background:#fff;font-size:14px}
.hh-vagas #hh-vagas-form .hh-vagas-arquivo__escolhido>i{flex:none;color:var(--hh-v-marinho);font-size:18px}
.hh-vagas #hh-vagas-form .hh-vagas-arquivo__escolhido.is-invalido{border-color:var(--hh-v-erro-borda);background:var(--hh-v-erro-fundo)}
.hh-vagas #hh-vagas-form .hh-vagas-arquivo__nome{flex:1;min-width:0;overflow:hidden;color:var(--hh-v-texto);font-weight:600;
  text-overflow:ellipsis;white-space:nowrap}
.hh-vagas #hh-vagas-form .hh-vagas-arquivo__tamanho{flex:none;color:var(--hh-v-suave);font-size:13px}
.hh-vagas #hh-vagas-form .hh-vagas-arquivo__remover,
.hh-vagas #hh-vagas-form .hh-vagas-arquivo__remover:hover,
.hh-vagas #hh-vagas-form .hh-vagas-arquivo__remover:focus,
.hh-vagas #hh-vagas-form .hh-vagas-arquivo__remover:active{flex:none;display:inline-flex;align-items:center;gap:6px;width:auto;
  min-height:0;margin:0;padding:6px 10px;border:1px solid transparent;border-radius:8px;background:transparent;
  color:var(--hh-v-suave);font-family:inherit;font-size:13px;font-weight:600;line-height:1.2;letter-spacing:normal;
  text-transform:none;box-shadow:none;cursor:pointer}
.hh-vagas #hh-vagas-form .hh-vagas-arquivo__remover:hover{background:var(--hh-v-fundo);color:var(--hh-v-erro)}
/* arquivo descartado na tentativa anterior: escolher de novo */
.hh-vagas #hh-vagas-form .hh-vagas-campo__aviso{display:flex;align-items:flex-start;gap:7px;margin:8px 0 0;
  color:var(--hh-v-ambar-texto);font-size:13px;font-weight:600;line-height:1.45}
.hh-vagas #hh-vagas-form .hh-vagas-campo__aviso i{margin-top:2px}

/* autorizacao LGPD */
.hh-vagas #hh-vagas-form .hh-vagas-consentimento{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;
  gap:4px 12px;margin:24px 0 0;padding:16px;border:1px solid var(--hh-v-borda);border-radius:10px;background:#fff}
.hh-vagas #hh-vagas-form .hh-vagas-consentimento__input{margin-top:3px}
.hh-vagas #hh-vagas-form .hh-vagas-consentimento__texto{display:block;margin:0;padding:0;color:var(--hh-v-texto);font-size:14px;
  font-weight:400;line-height:1.55;letter-spacing:normal;text-transform:none;cursor:pointer}
.hh-vagas #hh-vagas-form .hh-vagas-consentimento__texto a,
.hh-vagas #hh-vagas-form .hh-vagas-consentimento__texto a:visited{color:var(--hh-v-marinho);font-weight:600;
  text-decoration:underline;text-underline-offset:2px}
.hh-vagas #hh-vagas-form .hh-vagas-consentimento .hh-vagas-campo__erro{grid-column:2;margin-top:4px}
.hh-vagas #hh-vagas-form .hh-vagas-consentimento.is-erro{border-color:var(--hh-v-erro-borda);background:var(--hh-v-erro-fundo)}

.hh-vagas #hh-vagas-form .hh-vagas-form__aviso{margin:16px 0 0;padding:12px 14px;border-left:4px solid var(--hh-v-erro);
  border-radius:8px;background:var(--hh-v-erro-fundo);color:var(--hh-v-erro);font-size:14px;font-weight:600;line-height:1.5}
.hh-vagas #hh-vagas-form .hh-vagas-form__acoes{display:flex;flex-direction:column;align-items:stretch;gap:14px;margin:24px 0 0}
.hh-vagas #hh-vagas-form .hh-vagas-form__enviar{width:100%;min-height:52px;padding:14px 28px;font-size:16px}
.hh-vagas #hh-vagas-form[data-hh-somente-ver] .hh-vagas-form__enviar:disabled{cursor:not-allowed}

/* faixa da pre-visualizacao de vaga nao publicada */
.hh-vagas .hh-vagas-previa{display:flex;align-items:flex-start;gap:10px;margin:0 0 22px;padding:12px 14px;
  border-left:4px solid var(--hh-v-ambar);border-radius:8px;background:#fff4de;color:#6e4700;font-size:14px;
  font-weight:600;line-height:1.5}
.hh-vagas .hh-vagas-previa i{margin-top:3px}
.hh-vagas #hh-vagas-form .hh-vagas-form__nota{display:flex;align-items:center;gap:8px;margin:0;color:var(--hh-v-suave);
  font-size:13px;line-height:1.45}

/* respostas da candidatura */
.hh-vagas .hh-vagas-sucesso{display:flex;flex-direction:column;align-items:center;gap:10px;padding:12px 0;text-align:center}
.hh-vagas .hh-vagas-sucesso:focus{outline:none}
.hh-vagas .hh-vagas-sucesso__icone{display:grid;place-items:center;width:72px;height:72px;margin:0 0 6px;border-radius:50%;
  background:#e3f4ea;color:var(--hh-v-ok);font-size:34px}
.hh-vagas .hh-vagas-sucesso__titulo{margin:0;color:var(--hh-v-marinho);font-size:24px;font-weight:800;line-height:1.25;
  letter-spacing:normal;text-transform:none}
.hh-vagas .hh-vagas-sucesso__texto{max-width:520px;margin:0;color:var(--hh-v-suave);font-size:16px;line-height:1.6}
.hh-vagas .hh-vagas-sucesso__texto strong{color:var(--hh-v-texto);font-weight:700}
.hh-vagas .hh-vagas-sucesso .hh-vagas__botao{margin-top:12px}

.hh-vagas .hh-vagas-aviso{display:flex;align-items:flex-start;gap:16px}
.hh-vagas .hh-vagas-aviso__icone{display:grid;flex:none;place-items:center;width:48px;height:48px;border:1px solid var(--hh-v-borda);
  border-radius:50%;background:#fff;color:var(--hh-v-marinho);font-size:18px}
.hh-vagas .hh-vagas-aviso__corpo{min-width:0}
.hh-vagas .hh-vagas-aviso__titulo{margin:0 0 4px;color:var(--hh-v-marinho);font-size:20px;font-weight:800;line-height:1.3;
  letter-spacing:normal;text-transform:none}
.hh-vagas .hh-vagas-aviso__texto{margin:0 0 12px;color:var(--hh-v-suave);font-size:15px;line-height:1.55}

@media (max-width:379px){
  .hh-vagas .hh-vagas__container{padding-right:16px;padding-left:16px}
}

@media (min-width:600px){
  .hh-vagas .hh-vaga-card{padding:24px}
  .hh-vagas .hh-vagas-candidatura{padding:36px 32px}
  .hh-vagas #hh-vagas-form .hh-vagas-form__grade{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 20px}
  .hh-vagas #hh-vagas-form .hh-vagas-form__acoes{flex-direction:row;align-items:center;gap:20px}
  .hh-vagas #hh-vagas-form .hh-vagas-form__enviar{flex:none;width:auto}
}

@media (min-width:850px){
  .hh-vagas .hh-vagas__subtitulo{font-size:26px}
  .hh-vagas .hh-vagas-hero{padding:88px 0 76px}
  .hh-vagas .hh-vagas-hero--vaga{padding:44px 0 56px}
  .hh-vagas .hh-vagas-lista{padding:56px 0 88px}
  .hh-vagas .hh-vagas-lista__topo{margin-bottom:24px}
  /* Resumo vai para a direita e acompanha a rolagem, abaixo do cabecalho
     fixo do Flatsome. */
  .hh-vagas .hh-vagas-vaga{display:grid;grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:48px;
    padding-top:48px;padding-bottom:96px}
  .hh-vagas .hh-vagas-vaga__lateral{position:sticky;top:var(--hh-v-topo);grid-column:2;grid-row:1}
  .hh-vagas .hh-vagas-vaga__principal{grid-column:1;grid-row:1}
  .hh-vagas .hh-vagas-resumo{padding:24px}
}

/* Contraste Alto do Windows: box-shadow some e a borda vira cor do sistema,
   entao o foco que era so sombra ficaria invisivel. O contorno vai nos
   conteineres porque o input de arquivo e o link do card sao transparentes
   (opacity 0 / outline none) e um contorno neles nao apareceria. */
@media (forced-colors:active){
  .hh-vagas #hh-vagas-form .hh-vagas-campo__entrada:focus,
  .hh-vagas #hh-vagas-form .hh-vagas-arquivo:focus-within,
  .hh-vagas .hh-vaga-card:focus-within{outline:2px solid CanvasText;outline-offset:2px}
}

@media (prefers-reduced-motion:reduce){
  .hh-vagas *,.hh-vagas *::before,.hh-vagas *::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}
  .hh-vagas .hh-vaga-card:hover,
  .hh-vagas .hh-vaga-card:hover .hh-vaga-card__botao i{transform:none}
}
