/*--- NAV MENU - Exclusivo para esta página ---*/
.nav-menu-flex-container-geral {
    height: 600px;
}

/*====== MAIN ======*/

main{
    overflow-x: hidden;
}

.container-geral {
    display: flex;
    flex-direction: column;
    /* height: 4500px; */
}

body{
    font-family: BwGlennSans-Medium;
}

/* --- Bloco 1 --- */
    /* Espaçamento para evitar corte: aplicado ao container-geral conforme solicitado */
    .container-geral{
        padding-top: 0;
        box-sizing: border-box;
    }

/* Pseudo-elemento para aplicar efeito darken */
.bloco1::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100%;
    background: #050d2b;
    background: radial-gradient(circle, rgba(5, 13, 43, 0.9) 0%, rgba(6, 12, 68, 0.4) 0%, rgba(5, 13, 43, 0.9) 100%);
    z-index: 0; /* Mantém atrás do conteúdo */
}

.bloco1-subcontainer1{
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 800px;
    align-items: start;
    height: 100%;
    background-blend-mode: darken;
    margin-left: -300px;
    /* border: 2px solid #fff; */
}

.video-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100%;
    overflow: hidden;
    z-index: -1; /* Faz com que o vídeo fique atrás do conteúdo */
}

.video-background{
    width: 100vw;
    height: 100%;
    object-fit: cover;
    transition: opacity 1s ease-in-out;
    opacity: 1;
}

.video-background.fade-out {
    opacity: 0;
    transition: opacity 1s ease-in-out;
}

.video-background {
    opacity: 1;
    transition: opacity 1s ease-in-out;
}

.bloco1-subcontainer1-titulo1{
    color: #fff;
    font-weight: 700;
    font-size: 38px;
    margin: 10px 0px;
    font-family: "Poppins", sans-serif;
    animation: carregarCimaParaBaixo 0.5s;
}   

.bloco1-subcontainer1-titulo2{
    color: #fff;
    font-weight: 500;
    font-size: 22px;
    margin: 0px;
    letter-spacing: -1px;
    font-family: "Poppins", sans-serif;
    animation: carregarCimaParaBaixo 0.5s;
}

.bloco1-subcontainer1-titulo3{
    color: #fff;
    font-weight: 500;
    font-size: 16px;
    margin: 10px 0px 40px 0px;
    font-family: "Poppins", sans-serif;
    animation: carregarCimaParaBaixo 0.5s;
}

.bloco1-subcontainer1 a{
    animation: carregarEsqParaDir 0.5s;
}

.section-divider-inner {
  position: absolute;
  width: 100vw;
  height: 100px;
  line-height: 0;
  z-index: 2;
  margin-top: 500px;
}

.section-divider-inner1 {
  width: 100vw;
  height: 100%;
  display: block;
}

.section-divider-inner1 .svg-fundo {
    fill: #f8fbfd;
}

.section-divider-inner1 .svg-contorno {
    fill: rgba(0,0,0,0);
}

.section-divider-inner1 .svg-ponta {
    fill: rgba(0,0,0,0);
}

.bloco-oportunidades {
    padding: 40px 0;
    background-color: #f8fbfd;
}

.bloco-oportunidades .oportunidades-container {
    max-width: 1100px;
    margin: 0 auto;
}

.bloco-oportunidades .oportunidades-filtros h2 {
    font-size: 32px;
    margin-bottom: 16px;
}

.bloco-oportunidades .oportunidades-filtros .form-row {
    display: flex;
    gap: 12px;
    align-items: center;
    margin-bottom: 24px;
}

.bloco-oportunidades .oportunidades-filtros .form-control {
    flex: 1;
    padding: 10px 12px;
    border-radius: 6px;
    border: 1px solid #ddd;
}

.bloco-oportunidades .oportunidades-filtros .btn-dourado {
    padding: 10px 18px;
    white-space: nowrap;
}

/* Estilo específico para o botão Limpar Filtros */
.bloco-oportunidades .oportunidades-filtros #limpar-filtros {
    background: var(--dourado2-consulttech);
    color: #ffffff;
    border: 1px solid var(--dourado2-consulttech);
    padding: 10px 18px;
    border-radius: 8px;
    cursor: pointer;
    transition: background 150ms ease, border-color 150ms ease, transform 60ms ease;
}

.bloco-oportunidades .oportunidades-filtros #limpar-filtros:hover {
    background: #27ae60;
}

/* estado 'apertado' -> cor verde */
.bloco-oportunidades .oportunidades-filtros #limpar-filtros:active {
    border-color: #27ae60;
    transform: translateY(1px);
}

.bloco-oportunidades .oportunidades-filtros #limpar-filtros:focus {
    outline: none;
    box-shadow: 0 0 0 4px rgba(39,174,96,0.12);
}

/* Search input + button group */
.bloco-oportunidades .oportunidades-filtros .search-group {
    display: flex;
    align-items: center;
    max-width: 480px;
    width: 100%;
    gap: 0;
}

.bloco-oportunidades .oportunidades-filtros .search-input {
    border-radius: 2px;
    box-sizing: border-box;
    height: 44px;
    padding: 10px 12px;
    border: 1px solid #ddd;
}

.bloco-oportunidades .oportunidades-filtros .btn-search {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 2px;
    border: 1px solid var(--dourado2-consulttech);
    background: #fff;
    color: var(--dourado2-consulttech);
    padding: 0 12px;
    cursor: pointer;
    height: 44px;
    box-sizing: border-box;
}

.bloco-oportunidades .oportunidades-filtros .btn-search i {
    font-size: 16px;
}

/* foco suave no input de pesquisa */
.bloco-oportunidades .oportunidades-filtros .search-input{
    transition: box-shadow 150ms ease, border-color 150ms ease;
}
.bloco-oportunidades .oportunidades-filtros .search-input:focus,
.bloco-oportunidades .oportunidades-filtros .search-input:focus-visible{
    outline: none;
    border-color: var(--dourado2-consulttech);
    box-shadow: 0 0 0 4px rgba(214,173,96,0.08);
}
.bloco-oportunidades .oportunidades-filtros select#filtro-depto {
    height: 44px;
    padding: 8px 12px;
    box-sizing: border-box;
    border: 1px solid #ddd;
    border-radius: 2px;
    background: #fff;
    color: #222;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    transition: box-shadow 150ms ease, border-color 150ms ease;
}
.bloco-oportunidades .oportunidades-filtros select#filtro-depto:hover,
.bloco-oportunidades .oportunidades-filtros select#filtro-depto:focus{
    border-color: var(--dourado2-consulttech);
    box-shadow: 0 0 0 4px rgba(214,173,96,0.06);
    outline: none;
}

/* small hover for search button */
.bloco-oportunidades .oportunidades-filtros .btn-search:hover{
    background: rgba(214,173,96,0.08);
}
.bloco-oportunidades .vagas-lista {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 18px;
}

.bloco-oportunidades .vaga-card {
    background: #fff;
    border: 1px solid #e6e6e6;
    padding: 18px;
    border-radius: 8px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.03);
}

.bloco-oportunidades .vaga-card .vaga-titulo {
    margin: 0 0 6px 0;
    font-size: 18px;
    color: #222;
    font-weight: bold;
}

.bloco-oportunidades .vaga-card .vaga-depto {
    font-weight: 500;
    color: var(--dourado2-consulttech);
    margin: 0 0 6px 0;
    font-size: 16px;
}

.bloco-oportunidades .vaga-card .vaga-local {
    font-size: 13px;
    color: #666;
    margin: 0 0 8px 0;
}

.bloco-oportunidades .vaga-card .vaga-resumo {
    font-size: 14px;
    color: #444;
    margin-bottom: 12px;
}

.bloco-oportunidades .btn-vaga-acao {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 100px;
    height: 32px;
    padding: 0;
    border-radius: 6px;
    background: var(--dourado2-consulttech);
    color: #ffffff;
    border: 2px solid var(--dourado2-consulttech);
    cursor: pointer;
    font-size: 12px;
    line-height: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-decoration: none;
    transition: background 150ms ease, border-color 150ms ease, transform 60ms ease;
}

/* Hover igual ao botão Limpar Filtros (verde) */
.bloco-oportunidades .btn-vaga-acao:hover{
    background: #27ae60;
    border-color: #27ae60;
}

.bloco-oportunidades .btn-vaga-acao:active{
    border-color: #27ae60;
    transform: translateY(1px);
}

.bloco-oportunidades .btn-vaga-acao:focus{
    outline: none;
    box-shadow: 0 0 0 4px rgba(39,174,96,0.12);
}

/* Vaga tags (pequenas marcações/framework similar ao print) */
.bloco-oportunidades .vaga-tags{
    margin: 8px 0 10px 0;
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}
.bloco-oportunidades .vaga-tag{
    display: inline-block;
    padding: 4px 8px;
    font-size: 13px;
    line-height: 1;
    color: #333;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
}

/*====== Efeitos do Modal ======*/
@keyframes abrirModalImagens{
    from{
        opacity: 0;
        transform: translate3d(0, -40px, -5px);
    }
    to{
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}   

/*====== Efeitos de carregamento ======*/
@keyframes carregarCimaParaBaixo{
    from{
        opacity: 0;
        transform: translate3d(0, -40px, -5px);
    }
    to{
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

@keyframes carregarEsqParaDir{
    from{
        opacity: 0;
        transform: translate3d(-100px, 0px, -5px);
    }
    to{
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

/*====== Responsividade ======*/
/* ===> Celular/tablet deitado <=== */
@media(min-width: 801px) and (max-width: 1279px){
.container-geral{
    padding-top: 0;
    box-sizing: border-box;
    margin-top: 150px;
}
/* Bloco 1 */
.bloco1{
    height: 800px;
}

.bloco1-subcontainer1{
    /* border: 2px solid red; */
    width: 80vw;
    margin-left: 0px;
}

.bloco1-subcontainer1-titulo1, .bloco1-subcontainer1-titulo3{
    font-size: 24px;
}

.bloco1-subcontainer1-titulo2{
    font-size: 22px;
}

.bloco1-subcontainer1 a button{
    width: 80vw;
}

.section-divider-inner {
  margin-top: 700px; /* divisória */
}

/* Bloco 2 (aplicado a bloco-oportunidades) */
.bloco-oportunidades{
    height: auto;
    width: 100%;
    padding: 20px 0 40px;
    box-sizing: border-box;
    overflow: visible;
    margin: 48px 0px;
}

/* container interno - garantir preenchimento lateral no mobile */
.bloco-oportunidades .oportunidades-container{
    max-width: 1100px;
    margin: 0 auto;
    width: 100%;
    padding: 0 16px;
    box-sizing: border-box;
}

/* Subcontainers adaptáveis */
.bloco-oportunidades-container1{
    width: 100%;
    justify-content: center;
    align-items: center;
    margin: 24px 0 0 0;
    flex-direction: column;
}

.bloco-oportunidades-subcontainer1{
    width: 100%;
    margin: 0 0 12px 0;
}

.bloco-oportunidades-subcontainer2{
    width: 100%;
}

/* Ajustes para filtros: empilhar e ocupar a largura disponível */
.bloco-oportunidades .oportunidades-filtros .form-row{
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
}

.bloco-oportunidades .oportunidades-filtros .form-control,
.bloco-oportunidades .oportunidades-filtros select#filtro-depto{
    width: 100%;
}

.bloco-oportunidades .oportunidades-filtros .search-group{
    width: 100%;
    max-width: 100%;
    display: flex;
    gap: 8px;
}

.bloco-oportunidades .oportunidades-filtros .search-input{
    flex: 1 1 auto;
    width: auto;
}

.bloco-oportunidades .oportunidades-filtros .btn-search{
    flex: 0 0 48px;
    min-width: 48px;
    padding: 0;
}

.bloco-oportunidades .vagas-lista{
    grid-template-columns: 1fr;
}
}

/* ===> Tablet de pé <=== */
@media(max-width: 800px){
/* Espaçamento para evitar corte: aplicado ao container-geral conforme solicitado */
.container-geral{
    padding-top: 0;
    box-sizing: border-box;
    margin-top: 200px;
}

/* Bloco 1 */
.bloco1{
    height: 800px;
}

.bloco1-subcontainer1{
    /* border: 2px solid red; */
    width: 80vw;
    margin-left: 0px;
}

.bloco1-subcontainer1-titulo1, .bloco1-subcontainer1-titulo3{
    font-size: 24px;
}

.bloco1-subcontainer1-titulo2{
    font-size: 23px;
}

.bloco1-subcontainer1 a button{
    width: 80vw;
}

.section-divider-inner {
    margin-top: 700px; /* divisória */
}

/* Bloco 2 (aplicado a bloco-oportunidades) */
.bloco-oportunidades{
    /* height: 2400px; */
    width: 100%;
    padding: 20px 0 40px;
    box-sizing: border-box;
    overflow: visible;
}

/* container interno - garantir preenchimento lateral no mobile */
.oportunidades-container{
    /* height: 2300px; */
    max-width: 1100px;
    margin: 0 auto;
    width: 100%;
    padding: 0 16px;
    /* box-sizing: border-box; */
}

/* Subcontainers adaptáveis */
.bloco-oportunidades-container1{
    width: 100%;
    justify-content: center;
    align-items: center;
    margin: 24px 0 0 0;
    flex-direction: column;
}

.bloco-oportunidades-subcontainer1{
    width: 100%;
    margin: 0 0 12px 0;
}

.bloco-oportunidades-subcontainer2{
    width: 100%;
}

/* Ajustes para filtros: empilhar e ocupar a largura disponível */
.bloco-oportunidades .oportunidades-filtros .form-row{
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
}

.bloco-oportunidades .oportunidades-filtros .form-control,
.bloco-oportunidades .oportunidades-filtros select#filtro-depto{
    width: 100%;
}

.bloco-oportunidades .oportunidades-filtros .search-group{
    width: 100%;
    max-width: 100%;
    display: flex;
    gap: 8px;
}

.bloco-oportunidades .oportunidades-filtros .search-input{
    flex: 1 1 auto;
    width: auto;
}

.bloco-oportunidades .oportunidades-filtros .btn-search{
    flex: 0 0 48px;
    min-width: 48px;
    padding: 0;
}

.bloco-oportunidades .vagas-lista{
    grid-template-columns: 1fr;
}
}


/* ===> Celular Grande <=== */
/* @media(min-width: 501px) and (max-width: 799px){
} */


/* ===> Celular Médio <=== */
/* @media(max-width: 500px){
} */

