@import url('https://fonts.googleapis.com/css2?family=Ubuntu:wght@300;400;700&display=swap');

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  box-sizing: border-box;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
  font-family: 'Ubuntu', sans-serif;
}

h1 {
  font-family: 'Ubuntu', sans-serif;
  font-weight: 700;
  font-size: 24px;
}

body {
  background-color: #333333;
  margin: 0;
  padding: 0;
  
}

/* Estilo da barra de rolagem */
::-webkit-scrollbar {
  width: 12px; /* Largura da barra de rolagem */
}

/* Estilo da trilha (fundo) da barra de rolagem */
::-webkit-scrollbar-track {
  background-color: #222222;
}

/* Estilo do botão (a parte que você move) da barra de rolagem */
::-webkit-scrollbar-thumb {
  background-color: #333333;
  border-radius: 6px; /* Borda arredondada do botão */
}

/* Estilo do botão quando o mouse está sobre ele */
::-webkit-scrollbar-thumb:hover {
  background-color: #333333;
}

.sobre,
.sistemas,
.contatos {
  display: flex;
  max-width: 1500px;
  margin: auto;
  padding: 0;
}

.inicio {
  width: 100%;
  height: 100vh;
}

/* Estilos personalizados para o carousel e imagens */
.custom-carousel.carousel {
  height: 100vh;
  padding-top: 10vh;
}

.custom-carousel.carousel-inner {
  height: 90vh;
}

.custom-carousel .carousel-inner img {
  height: 100%;
}

/* Missao visao valores */

.sobre {
  flex-direction: column;
  min-height: 90vh;
}

.sobre h1 {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 10vh;
  margin: 0;
  color: #fff;
}

.missao-visao-valores {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  align-items: center;
  justify-items: center;
  width: 100%;
  min-height: 80vh;
  padding: 0rem 0rem 0rem 0rem;
}

.missao,
.visao,
.valores {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 350px;
  height: 350px;
  text-align: center;
  color: rgb(255, 255, 255);
}

.missao div,
.visao div,
.valores div {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 50%;
  background-color: #1F1F1F;
  border-radius: 1rem 1rem 0rem 0rem;
  border-bottom: #ff8c00 solid 2px;
}

.missao div i,
.visao div i,
.valores div i {
  font-size: 4rem;
  color: #ff8c00;
  margin-bottom: .9rem;
}

.missao p,
.visao p,
.valores p {
  display: flex;
  align-items: start;
  padding: 1.5rem;
  height: 50%;
  background-color: #2F2F2F;
  border-radius: 0rem 0rem 1rem 1rem;
  text-align: center;
  letter-spacing: .5px;
}

/* Começa os sistemas */

.sistemas {
  flex-direction: column;
  min-height: 90vh;
}

.sistemas h1 {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 10vh;
  margin: 0;
  color: #fff;
}

.sistemas-cards {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  align-items: center;
  justify-items: center;
  width: 100%;
  min-height: 70vh;
}

.sistemas-cards .cards {
  display: none;
  flex-direction: column;
  align-items: center;
  width: 350px;
  height: 380px;
  margin: 2rem 0rem 0rem 0rem;
  color: rgb(255, 255, 255);
}

.sistemas-cards .cards .img-cards {
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  align-items: center;
  width: 100%;
  height: 40%;
  background-color: #1F1F1F;
  border-radius: 1rem 1rem 0rem 0rem;
  border-bottom: #ff8c00 solid 2px;
}

.sistemas-cards .cards .img-cards img {
  width: 20%;
}

.sistemas-cards .cards .img-cards h2 {
  font-family: 'Ubuntu', sans-serif;
  font-weight: 700;
  font-size: 18px;
}

.sistemas-cards .cards img:hover {
  transform: scale(1.1);
}

.sistemas-cards .cards .texto-cards {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  height: 60%;
  background-color: #2F2F2F;
  border-radius: 0rem 0rem 1rem 1rem;
  padding: 1rem;
}

.sistemas-cards .cards .texto-cards p {
  display: flex;
  align-items: center;
  text-align: center;
  height: 80%;
}

.sistemas-cards .cards .texto-cards a {
  display: flex;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  width: 100px;
  height: 35px;
  color: white;
  font-weight: 500;
  background-color: #ff8c00;
  border-radius: .5rem;
}

.sistemas-cards .cards .texto-cards :hover {
  background-color: rgba(255, 140, 0, 0.8);
}

.sistemas-cards .ativo {
  display: flex;
}

.botoes {
  display: flex;
  width: 100%;
  justify-content: center;
  align-items: center;
}

.botoes button {
  width: 150px;
  height: 50px;
  border: none;
  border-radius: .5rem;
  color: white;
  background-color: #ff8c00;
  font-weight: 700;
}

.botoes button:hover {
  background-color: rgba(255, 140, 0, 0.8);
}

/* Clientes */
.clientes {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  min-height: 90vh;
  margin: auto;
}

.clientes h1 {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 10vh;
  margin: 0;
  color: #fff;
}

.clientes p {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 20vh;
  color: white;
  padding: 0% 15% 0% 15%;
  margin: 0;
}

.clientes-logos {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  overflow: hidden;
  width: 100%;
  height: 130px;
  margin: 0;
  margin-bottom: 10rem;
  background-color: #1F1F1F;
}

.clientes-logos a {
  width: 180px;
  height: 100px;
  border-radius: 15px;
  margin-left: 0px;
  margin-right: 0px;
  cursor: pointer;
  transition: margin-left 1s ease-in-out;
  background-color: white;
}


.clientes-logos img {
  width: 180px;
  height: 100px;
  border-radius: 15px;
  margin-left: 0px;
  margin-right: 0px;
  cursor: pointer;
}

.clientes-logos a:hover {
  transform: scale(1.05);
}

/* Contatos */
.contatos {
  min-height: 90vh;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto;
}

.contatos h1,
.contatos h2 {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 10vh;
  color: white;
  margin: 0;
}

.rodape {
  display: flex;
  width: 100%;
  height: 100%;
  justify-content: space-around;
  align-items: center;
}

.mapa {
  display: flex;
  flex-direction: column;
  margin-bottom: 2rem;
}

.redes-mapa-item-sociais {
  display: flex;
  justify-content: space-around;
  align-items: center;
  width: 100%;
  height: 20%;
  margin-top: 30px;
  margin-bottom: 30px;
}

.redes-mapa-item-sociais a i {
  color: #fff;
  padding: .5rem;
  font-size: 2rem;
  border-radius: 1rem;
  text-align: center;
}

.mapa iframe {
  border-radius: 5px;
}

.form {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 300px;
}

.form form {
  display: flex;
  flex-direction: column;
  width: 100%;
  justify-content: center;
  align-items: center;
}

.form form input,
.form form select,
.form form textarea {
  width: 300px;
  height: 45px;
  margin-bottom: 5px;
  text-align: center;
  border: none;
  text-decoration: none;
  outline: none;
  border-radius: 5px;
  background-color: rgb(41, 40, 40);
  color: #fff;
}

.form form select option {
  width: 300px;
}

.h-captcha {
  margin-top: 5px;
}

.form form input::placeholder,
.form form select::placeholder,
.form form textarea::placeholder,
.form form button::placeholder {
  color: #fff;
}

/* Estilo para os campos quando preenchidos automaticamente */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
  transition: background-color 5000s ease-in-out 0s;
  /* Pode levar um tempo muito longo para alterar a cor de fundo */
  background-color: rgb(49, 49, 49);
  -webkit-text-fill-color: #fff !important;
  /* Cor do texto para campos preenchidos automaticamente */

}

.form form input[type="submit"] {
  margin-top: 10px;
  background-color: rgba(255, 140, 0, 0.8);
  color: rgb(255, 255, 255);
  font-weight: 700;
  /* Adicione outros estilos desejados para o botão de envio */
}

.form form input[type="submit"]:hover {
  background-color: rgba(255, 140, 0, 1);
}

.contato-endereco {
  display: flex;
  flex-direction: column;
  width: 300px;
  margin-bottom: 2rem;
}

.contato-endereco .icone-links {
  display: flex;
  align-items: center;
  margin-top: 25px;
  padding-left: 5px;
}

.contato-endereco .icone-links i {
  color: #ff8b00;
}

.contato-endereco .icone-links a {
  display: flex;
  width: 100%;
  text-align: center;
  margin-left: 20px;
  color: rgb(255, 255, 255);
  text-decoration: none;
}

.copy {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 5vh;
  font-size: 90%;
  border-top: #d67600 solid 1px;
}

.copy p {
  color: white;
}


@keyframes spin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}


@media (max-width: 700px) {
  .menu-responsivo {
    display: none;
    width: 100%;
    height: 65vh;
    order: 3;
    flex-direction: column;

  }

  .menu-responsivo a {
    background-color: #1F1F1F;
  }

  .menu-responsivo a.active {
    border-bottom: none;
  }

  header {
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 0rem 0rem 0rem 0rem;
  }

  .logo {
    width: 80%;
    order: 1;
  }

  .logo img {
    width: 60%;
  }

  header .bi {
    display: block;
    width: 10%;
    order: 2;
    font-size: 2rem;
    color: #ff8b00;
  }

  .inicio {
    width: 100%;
    height: 50vh;
  }

  /* Estilos personalizados para o carousel e imagens */
  .custom-carousel.carousel {
    height: 50vh;
    padding-top: 10vh;
  }

  .custom-carousel.carousel-inner {
    height: 40vh;
  }

  .custom-carousel .carousel-inner img {
    height: 100%;
  }

  /* Estilo para o controle dos slides */
  .custom-carousel .carousel-control-prev,
  .custom-carousel .carousel-control-next {
    width: 10%;
    /* Defina a largura dos botões (pode ajustar conforme necessário) */
    position: absolute;
    /* Posicione os botões absolutamente em relação ao carousel */
    top: 60%;
    /* Posicione os botões verticalmente no centro */
    transform: translateY(-50%);
    /* Corrija o posicionamento para que os botões fiquem no centro exato */
    z-index: 1;
    /* Coloque os botões acima do conteúdo do carousel */
  }

  .custom-carousel .carousel-control-prev {
    left: 0;
    /* Posicione o botão de controle anterior à esquerda */
  }

  .custom-carousel .carousel-control-next {
    right: 0;
    /* Posicione o botão de controle próximo à direita */
  }


  .sobre {
    margin-top: 1rem;
    height: auto;
  }

  .missao,
  .visao,
  .valores {
    margin-top: 2rem;
    height: 300px;
  }

  .missao-visao-valores {
    grid-template-columns: 1fr;
    justify-content: center;
  }

  .missao p,
  .visao p,
  .valores p {
    display: flex;
    align-items: center;
    padding: 1.5rem;
    border-radius: 0rem 0rem 1rem 1rem;
    text-align: center;
  }

  .sobre {
    margin-bottom: 2rem;
  }

  .sistemas {
    height: auto;
    margin-bottom: 2rem;
  }

  .clientes {
    margin-bottom: 2rem;
  }

  .sistemas-cards {
    grid-template-columns: 1fr;
    justify-content: center;
  }

  .sistemas-cards .cards {
    margin-top: 1rem;
  }

  .icone-links-numeros {
    display: flex;
  }

  .icone-links-numeros a {
    width: 50%;
    padding: .5rem;
    margin-bottom: .8rem;
  }

  .contatos {
    height: auto;
  }

  .rodape {
    flex-direction: column;
    align-items: center;
    height: auto;
  }

  .mapa {
    order: 2;
    margin: 0rem 0rem 1rem 0rem;
  }

  .mapa iframe {
    width: 320px;
  }

  .form {
    width: 100%;
    order: 3;
    margin: 2rem 0rem 2rem 0rem;
  }

  .form form input,
  .form form select,
  .form form textarea {
    width: 320px;
    margin-bottom: 15px;
    height: 55px;
  }

  .form form .validacao {
    width: 320px;
  }

  .form form div img {
    width: 40%;
  }

  .form form div input {
    width: 60%;
  }

  .contato-endereco {
    order: 1;
    display: flex;
    flex-direction: column;
    margin: 2rem 0rem 1rem 0rem;
  }
}