/* Corpo da página */
html, body {
  height: 100%; /* Define a altura total da página */
  margin: 0;
  padding: 0;
}

body {
  margin: 0; /* Remove margens padrão */
  padding: 0; /* Remove preenchimentos padrão */
  height: auto; /* Permite que o conteúdo defina a altura */
  overflow-x: hidden; /* Evita rolagem horizontal */
  min-height: 100vh; /* Garante que o corpo tenha pelo menos a altura da viewport */
  position: relative; /* Para alinhar com o fundo fixo */
  display: flex;
  flex-direction: column; /* Organiza o conteúdo em coluna */
  justify-content: space-between; /* Garante que o conteúdo e o rodapé fiquem separados */
}

/* Títulos */
h1, h2, h3, h4, h5, h6 {
  color: #9FEC23;
  font-weight: bold;
  margin-bottom: 1rem;
}

h4 {
  color: #616161;
  padding-bottom: 5px;
  background-color: #f1f1f1;
  /* border-bottom: 2px solid #9FEC23; */
  padding: 10px 15px; /* Aumenta o preenchimento interno para expandir o fundo */
  border-radius: 8px;
}

/* Links */
a {
  color: #9FEC23;
  text-decoration: none;
}

a:hover {
  color: #7bc71a;
  text-decoration: underline;
}

/* Botões */
.btn-mc1 {
  background-color: #4EFD13;
  border-color: #4EFD13;
  color: #1d1d1d;
  font-weight: normal;
  
}

.btn-mc1:hover {
  background-color: #4EFD13;
  border-color: #4EFD13;
  color: #ffffff;
}
.btn-mc1-outline {
  background-color: transparent;
  border-color: #4EFD13;
  color: #ffffff;
  font-weight: bold;
  
}

.btn-mc1-ouline:hover {
  background-color: #4EFD13;
  border-color: #4EFD13;
  color: #ffffff;
}

/* Botão "EMPRESA AQUI" */
.btn-outline-success {
  border-color: #9FEC23;
  color: #9FEC23;
  background-color: transparent;
}

.btn-outline-success:hover {
  background-color: #9FEC23;
  color: #ffffff;
}

/* Botão "VAGAS AQUI" */
.btn-success {
  background-color: #9FEC23;
  border-color: #9FEC23;
  color: #ffffff;
}

.btn-success2 {
  background-color: #008d47;
  border-color: #008d47;
  color: #ffffff;
}
.btn-success2:hover {
  background-color: #00cc66;
  border-color: #00cc66;
  color: #555555;
}

.btn-success:hover {
  background-color: #7bc71a;
  border-color: #7bc71a;
}

/* Cartões */
.card {
  border: none;
  border-radius: 8px;
}

.card.shadow-sm {
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.card-title {
  font-size: 1.25rem;
  font-weight: bold;
}

.card-text {
  font-size: 0.9rem;
  color: #ddd;
}

/* Menu superior */
.site-header {
  background-color: #1f1f1f;
  color: #ffffff;
  padding: 0.5rem 1rem;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1020;
}

body {
  padding-top: 60px;
}

.site-header .navbar-brand img{
  font-size: 1.5rem;
  font-weight: bold;
  color: #ffffff;
  max-height: 50px;
}

.site-header .navbar-brand:hover {
  color: #9FEC23;
}

/* Seções de conteúdo */
.content-section {
  background: #3a3a3a;
  color: #ffffff;
  padding: 20px;
  border-radius: 10px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  margin-bottom: 20px;
}

.content-section h2 {
  color: #9FEC23;
}

/* Rodapé */
.site-footer {
  background-color: #1f1f1f;
  color: #ffffff;
  padding: 1rem 0;
  text-align: center;
  margin-top: auto; /* Garante que o rodapé fique no final */
}

/* Fundo SVG ajustado para scroll */
.background-svg {
  position: absolute; /* Permite que o fundo role junto com o conteúdo */
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  z-index: -1;
}

.default-background {
  background-image: url('../images/default.svg');
}

.custom-background {
  background-image: url('../images/custom.svg');
  /* O fundo será definido dinamicamente no template */
}

/* Hero Section Background corrigido */
.hero {
  position: relative; /* Necessário para o uso do ::before */
  background: url('../images/hero-bg.png') no-repeat center center;
  background-size: cover; /* Faz o fundo cobrir toda a largura */
  color: white; /* Garante que o texto continue visível */
  padding: 5rem 0; /* Ajusta o espaçamento interno */
  width: 100%;
  margin: 0;
  height: 500px;
}

.hero::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5); /* Fundo preto com 50% de opacidade */
  z-index: 1; /* Coloca a camada acima do fundo */
}

.hero * {
  position: relative;
  z-index: 2; /* Coloca o conteúdo acima da sobreposição */
}

.whatsapp-bubble {
  position: fixed;
  bottom: 20px;
  right: 20px;
  width: 60px;
  height: 60px;
  z-index: 1000;
}

.whatsapp-bubble img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

.footer-logo {
  height: 50px;
  width: auto;
  margin-top: 10px;
  
}

.texto-inicio {
  font-size: 5rem;
  color: #ffffff;
  text-align: center;
  margin-top: 20px;
  font-weight: bold;
}
.texto-mc1 {
  font-size: 2rem;
  color: #4EFD13;
  text-align: center;
  margin-top: 20px;
}

.texto-mc2 {
  font-size: 1.4rem;
  color: #3b3b3b;
  text-align: left;
  margin-top: 20px;
  font-weight: bold;
  width: fit-content;
}
/* Ajuste para telas pequenas */
@media (max-width: 576px) {
  .texto-mc1 {
    font-size: 1.4rem; /* Reduz o tamanho da fonte em telas pequenas */
    margin-top: 10px; /* Ajusta o espaçamento superior */
  }
  .texto-mc2 {
    font-size: 1.4.0rem; /* Reduz o tamanho da fonte em telas pequenas */
    margin-top: 10px; /* Ajusta o espaçamento superior */
    text-align: center;
    max-width: fit-content;
  }
  .texto-inicio {
    font-size: 2.6rem; /* Reduz o tamanho da fonte em telas pequenas */
    margin-top: 10px; /* Ajusta o espaçamento superior */
  }

  .col-md-6:not(:last-child) {
    margin-bottom: 1.5rem;
  } 
}

@media (min-width: 577px) and (max-width: 768px) {
  .texto-mc1 {
    font-size: 1.6rem; /* Ajusta o tamanho da fonte para telas intermediárias */
    margin-top: 15px; /* Ajusta o espaçamento superior */
  }
  .texto-inicio {
    font-size: 3.2rem; /* Ajusta o tamanho da fonte para telas intermediárias */
    margin-top: 15px; /* Ajusta o espaçamento superior */
  }
    .col-md-6:not(:last-child) {
    margin-bottom: 1.5rem;
  } 
}

@media (min-width: 769px) and (max-width: 992px) {
  .texto-mc1 {
    font-size: 1.8rem; /* Ajusta o tamanho da fonte para telas intermediárias maiores */
    margin-top: 20px; /* Ajusta o espaçamento superior */
  }
  .texto-inicio {
    font-size: 4rem; /* Ajusta o tamanho da fonte para telas intermediárias maiores */
    margin-top: 20px; /* Ajusta o espaçamento superior */
  }
    .col-md-6:not(:last-child) {
    margin-bottom: 1.5rem;
  }  
}


.texto-titulo-paginas {
  font-size: 2rem;
  color: #e6e2e2;
  text-align: center;
  margin-top: 20px;
  font-weight: bold;
}

.texto-card-titulo {
  font-size: 1.5rem;
  color: #000000;
  text-align: center;
  margin-top: 20px;
  font-weight: bold;
}

.container-full {
  width: 100%;
  max-width: 100vw; /* Garante que não ultrapasse a largura da viewport */
  overflow-x: hidden; /* Evita rolagem horizontal */
  padding: 0; /* Remove qualquer padding que possa causar overflow */
  margin: 0 auto; /* Centraliza o conteúdo */
}

main {
  flex: 1; /* Faz o conteúdo principal ocupar o espaço disponível */
}

.btn-filtros {
  background-color: transparent;
  border-color: #ececec;
  color: #ececec;
  /* font-weight: bold; */
}

.btn-filtros:hover,
.btn-filtros:focus,
.btn-filtros[aria-expanded="true"] {
  background-color: #ececec; /* Mantém o estilo ao abrir o menu */
  border-color: #ececec;
  color: #292929;
  /* font-weight: bold; */
}

.bg-badge {
  background-color: #4EFD13;
  color: #000000;
  font-weight: bold;
}
  

  /* Hero Section Background corrigido */
.hero-contato {
    position: relative; /* Necessário para o uso do ::before */
    background: url('../images/hero_bg_contato.jpg') no-repeat center center;
    background-size: cover; /* Faz o fundo cobrir toda a largura */
    color: white; /* Garante que o texto continue visível */
    padding: 5rem 0; /* Ajusta o espaçamento interno */
    width: 100%;
    margin: 0;
    height: 400px;
 }

 .hero-contato::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5); /* Fundo preto com 50% de opacidade */
  z-index: 1; /* Coloca a camada acima do fundo */
}

.hero-contato * {
  position: relative;
  z-index: 2; /* Coloca o conteúdo acima da sobreposição */
}

.border-dashed {
  border-top: 5px dashed #000000;
}

.bg_form_profile {
  background-color: #f9f9f9;
}

.bg-card-contato {
  background-color: #3a3a3a;
}

