/*=============== GOOGLE FONTS ===============*/
@import url("https://fonts.googleapis.com/css2?family=Bai+Jamjuree:wght@400;500;600&display=swap");

@font-face {
  font-family: 'PoppinsMedium';
  src: url('../fonts/Poppins-Medium.otf');
}

@font-face {
  font-family: 'PoppinsRegular';
  src: url('../fonts/Poppins-Regular.otf');
}

/*=============== VARIABLES CSS ===============*/
:root {
  /*========== Colors ==========*/
  /*Color mode HSL(hue, saturation, lightness)*/
  --first-color: hsl(38, 92%, 58%);
  --first-color-light: hsl(38, 100%, 78%);
  --first-color-alt: hsl(32, 75%, 50%);
  --second-color: hsl(195, 75%, 52%);
  --dark-color: hsl(212, 40%, 12%);
  --white-color: hsl(212, 4%, 95%);
  --body-color: hsl(212, 42%, 15%);
  --container-color: hsl(212, 42%, 20%);
  --color-background: #fffdf7;
  --color-black: #212121;
  --color-text-green: #22874c;
  --color-black-heavy: #000000;
  --color-text: #4f4f4f;
  --color-text-out: #90908e;
  --color-primary: #ffbf00;
  --color-secondary: #fff2cc;
  --color-white: #ffffff;
  --color-red: #e74c3c;
  --color-green: #2ecc71;
  --color-separate: #cccccc;

  /*========== Font and typography ==========*/
  /*.5rem = 8px | 1rem = 16px ...*/
  --body-font: "Bai Jamjuree", sans-serif;
  --h2-font-size: 1.25rem;
  --normal-font-size: 1rem;
}

/*=============== BASE ===============*/
* {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}

html,
body::-webkit-scrollbar {
  background-color: transparent;

}

html,
body::-webkit-scrollbar-thumb {
  background-color: transparent;
}

html,
body::-webkit-scrollbar-track {
  background-color: transparent;
}

html,
body {
  font-family: 'PoppinsRegular', 'Rubik', sans-serif !important;
  background-color: var(--color-background) !important;
  color: var(--color-text) !important;
}

b,
h1 {
  font-family: 'PoppinsMedium', 'Rubik', sans-serif !important;
}

a {
  text-decoration: none;
}

/*=============== INICIO ===============*/
img {
  display: block;
  max-width: 100%;
  height: auto;
}

.color-primary {
  color: var(--color-text-green);
}

a.navbar-brand {
  margin-left: -25px;
}

.nav-link {
  color: var(--color-text-green) !important;
  padding-left: 35px !important;
  padding-right: 35px !important;
}

.text-inicio {
  font-size: 15px !important;
  text-align: justify;
}

.btn-white {
  background-color: var(--color-white);
  color: var(--color-black) !important;
  border-radius: 20px !important;
  padding: 15px 25px !important;
  font-size: 20px !important;
  box-shadow: 0px 10px 15px -3px rgba(0, 0, 0, 0.1);
}

.btn-white.active,
.btn-white:hover {
  background-color: var(--color-text-green);
  color: var(--color-white) !important;
}

.btn-icon {
  padding-right: 75px;
}

.btn-icon .icon {
  display: inline-block;
  color: var(--color-black);
  background-color: var(--color-primary);
  width: 45px;
  height: 45px;
  position: absolute;
  right: 10px;
  margin-top: -8px;
  border-radius: 15px;
  text-align: center;
  padding-top: 6px;
}

.banner {
  padding-top: 110px;
  padding-bottom: 200px;
}

.text-banner {
  flex-direction: column;
  justify-content: center;
  margin-bottom: 60px;
}

.text-banner h1 {
  color: var(--color-black);
  font-size: 60px;
}

.text-banner p {
  margin-top: 15px;
  margin-bottom: 15px;
  font-size: 20px;
}

.btn-yellow {
  background-color: var(--color-white);
  color: var(--color-black) !important;
  border-radius: 20px;
  padding: 15px 25px;
  font-size: 20px;
  box-shadow: 0px 10px 15px -3px rgba(0, 0, 0, 0.1);
}

.btn-icon-left {
  padding-left: 70px;
}

.btn-icon-left span.icon-left {
  display: inline-block;
  color: var(--color-white);
  background-color: var(--color-primary);
  width: 45px;
  height: 45px;
  position: absolute;
  margin-left: -60px;
  margin-top: -8px;
  border-radius: 15px;
  text-align: center;
  padding-top: 8px;
}

.btn-sm {
  padding: 9px 15px !important;
  border-radius: 15px !important;
  font-size: 18px !important;
}

.btn-social {
  width: 50px;
  margin-top: -40px !important;
}

.card-banner {
  height: 450px;
  width: 450px;
  border-radius: 170px;
  background-color: #f4c949;
  display: none;
  position: absolute;
  right: 0;
  top: -80px;
}

.img-banner img {
  position: absolute;
  width: 450px;
  top: -70px;
  right: 15px;
}

.card-inicio {
  border-radius: 20px;
  padding: 15px 20px;
  font-size: 20px;
  box-shadow: 0px 10px 15px -3px rgba(0, 0, 0, 0.1) !important;
  border: none !important;
}

.card-case {
  width: 350px;
  font-size: 14px;
  position: absolute;
  right: 0;
  bottom: -75px;
}

.instagram {
  background: #e4405f !important;
  color: #fff !important;
}

.facebook {
  background: #3b5998 !important;
  color: #ffffff !important;
}

.whatsapp {
  background: #25d366 !important;
  color: #fff !important;
}

.instagram:hover {
  background: #e4405f;
  color: #fff !important;
}

.facebook:hover {
  background: #3b5998;
  color: #fff !important;
}

.whatsapp:hover {
  background: #25d366;
  color: #fff !important;
}


.card-case-name {
  position: absolute;
  font-size: 12px;
  color: var(--color-text-green);
  right: 20px;
  bottom: 10px;
}

/* Estilos para a seção "Sobre" */
#sobre {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #1c934e;
  /* Cor de fundo suave */
  padding: 60px 0px;

}

.historico {
  padding: 10px 20px !important;
  background-color: #fffff0 !important;
  /* Cor de fundo do botão */
  margin-top: 30px !important;
  text-decoration: none;
  color: #22874c !important;
  border: none;
  border-radius: 5px !important;
  cursor: pointer;
  font-size: 16px;
  transition: all 0.3s ease;
  /* Transição suave */
  margin-bottom: 10px;
  /* Espaçamento abaixo do botão */
}

.historico:hover {
  background: #f8f8bb !important;
  color: #000;
}

.sobre-left {
  flex: 1;
  text-align: center;
}


.sobre-left h1 {
  margin-bottom: 20px;
}



.sobre-right {
  flex: 2;
  text-align: justify;
  padding-left: 30px;
}

.logo {
  background: transparent;
  box-shadow: none;
  width: 340px;
  height: 339px;
  border: none;
  border-radius: 5px;
  margin-left: 50px;
  overflow: hidden;
  text-align: justify;
}

.logo img {
  background-color: transparent;
  width: 91%;
  height: 84.6%;
  margin-left: 30px;
  object-fit: cover;
}

.sobre {
  color: #ffffff;
}

#sobre .sobre-right p {
  font-size: 14px;
  /* Reduzindo o tamanho da fonte */
  line-height: 1.5;
  /* Ajustando o espaçamento entre linhas */
  font-weight: 500;
  max-width: 550px !important;
  /* Definindo a largura máxima */
  color: #fff !important;
}


#sobre .sobre-right .info-item {
  flex: 1;
  /* Ocupa o espaço disponível */
  display: flex;
  flex-direction: column;
  /* Ajustado para column */
  align-items: center;
  /* Centraliza os itens */
}

#sobre .sobre-right .info-items {
  display: flex;
  max-width: 600px !important;
  gap: 10px;
  /* Reduzindo ainda mais o espaçamento entre os itens */
}

.uicam-h1 {
  color: #eaeaea;
  margin-top: 50px;
  font-size: 18px;
}

.apoiadores {
  color: #fff !important;
  font-size: 14px;
  font-weight: 500;
  max-width: 550px !important;
}

.apoiadores:hover {
  color: #f8f8bb !important;
}

#sobre .sobre-right .info-item {
  flex: 1;
  /* Ocupa o espaço disponível */
  display: flex;
  background: #fffff0;
  border-radius: 5px;
  flex-direction: column;
  /* Ajustado para column */
  align-items: center;
  /* Centraliza os itens */
}

#sobre h1 {
  color: #fff !important;
}

#sobre .sobre-right .info-item .circle {
  width: 50px;
  /* Largura do círculo */
  color: #000;
  display: flex;
  color: #1a6a3d;
  margin-top: 20px;
  align-items: center;
  padding: 0;
  justify-content: center;
}

#sobre .sobre-right h2 {
  font-weight: 400 !important;
  font-size: 17px;
  color: #1a6a3d !important;
  padding: 20px 0;
  margin: 0;
}


/*APOIE*/


#apoie {
  margin-top: 60px !important;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 120px !important;

}

#apoie .text-pix {
  margin-top: 22px !important;

}

#apoie .sobre {
  color: #ffffff;
  font-size: 25px;
  margin-top: 15px !important;
}



#apoie img {
  box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4);
  margin-top: 23px !important;
  max-height: 300px;
}

#apoie .sobre-right p {
  font-size: 17px;
  /* Reduzindo o tamanho da fonte */
  line-height: 1.3;
  /* Ajustando o espaçamento entre linhas */
  font-weight: 500;
  max-width: 450px !important;
  /* Definindo a largura máxima */
  color: #fffff0 !important;

}

/*mexe nas descrições do apoio*/
#apoie .sobre-right {
  background: #22874c;
  max-height: 350px !important;
  box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.3);
  border-radius: 5px;
  margin-left: 40px !important;
  margin-top: 10px !important;
}


#apoie .sobre-right p {
  font-size: 17px;
  /* Reduzindo o tamanho da fonte */
  line-height: 1.5;
  /* Ajustando o espaçamento entre linhas */
  font-weight: 500;
  max-width: 590px !important;

}


/*=============== CARD ===============*/
.card__container {
  padding-block: 5rem;
  height: 100%;

}

.card__content {
  margin-inline: 1.75rem;
  border-radius: 1.25rem;
  overflow: hidden;

}

.servicos-content {
  height: 410px;
}

.card__article {
  width: 500px;
  /* Remove after adding swiper js */
  border-radius: 1.25rem;
  overflow: hidden;
}



.card__data {
  background-color: #22874c;
  padding: 1.5rem 2rem;
  border-radius: 1rem;
  text-align: center;
  position: relative;
  z-index: 10;
  height: 100%;

}



.card__name {
  font-size: var(--h2-font-size);
  color: #fff;
  margin-bottom: .75rem;
}

.card__description {
  font-weight: 500;
  margin-bottom: 1.75rem;
  color: #fff !important;
}

.card__button {
  display: inline-block;
  background-color: #fff;
  color: #22874c !important;
  padding: .75rem 1.5rem;
  text-decoration: none !important;
  border-radius: .25rem;
  color: var(--dark-color);
  font-weight: 600;
}

.card__button:hover {
  text-decoration: none;
}

/* Swiper class */
.swiper-button-prev:after,
.swiper-button-next:after {
  content: "";
}

.card__img {
  border-radius: 50%;
  background-color: #fff;
}

.servicos-prev,
.servicos-next {
  width: initial;
  height: initial;
  font-size: 3rem;
  color: #22874c;
  display: block;
}

.diretoria-prev,
.diretoria-next {
  width: initial;
  height: initial;
  font-size: 3rem;
  color: #22874c;
  display: none !important;
}

.desenvolvedores-prev,
.desenvolvedores-next {
  width: initial;
  height: initial;
  font-size: 3rem;
  color: #22874c;
  display: none !important;
}



.swiper-button-prev {
  left: 0;
}

.swiper-button-next {
  right: 0;
}

.servicos-pag-bullet {
  background-color: #22874c;
  opacity: 1;
}

.swiper-pagination-bullet-active {
  background-color: #a1fcc5;
}


/*serviços*/
#servicos h1 {
  margin-top: -40px !important;
  text-align: center;
  color: #22874c !important;
  margin-bottom: 60px;
}

.text-servicos {
  font-size: 14px !important;
  font-weight: 300;
}

#servicos h3 {
  font-size: 60px;
  margin-bottom: 30px;
}

/*diretoria*/
.card-diretoria {
  background-color: #fff;
}

.diretoria-pag {
  display: none;
}

.cargo {
  color: #000 !important;
  font-size: 15px;
}

#diretoria {
  background-color: #22874c !important;
}

#diretoria h1 {
  text-align: center;
  color: #fff !important;
  margin-bottom: 40px;
}

.name-diretoria {
  color: #000 !important;
  font-weight: 700;
  font-size: 21px !important;
  margin-top: 30px !important;
}

/*desenvolvedores*/
.name-dev {
  margin-top: 30px !important;
  font-size: 20px;
}

.dev-funcao {
  margin-bottom: 50px !important;
}

.linkedin {
  color: #fff;
  /* Cor do ícone do WhatsApp */
  background: #0077B5 !important;

}

#desenvolvedores h1 {
  color: #22874c !important;
  text-align: center;
  margin-bottom: 40px
}

.dev-pag {
  display: none;
}

/*contatos*/
#contatos {
  margin-bottom: 130px;
  padding-top: 30px;
  background-color: #22874c !important;
}

.cont {
  color: var(--color-white) !important;
  margin-bottom: 60px !important;
  font-family: Arial, Helvetica, sans-serif !important;
}

.box-container {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 15px;

}

#contatos i {
  color: #fff !important;
}

.text {
  margin-top: 40px !important;
}

.email {
  font-size: 16px;
  color: #fff !important;
}

#contatos a {
  text-decoration: none;
  color: #fff !important;
  font-family: Arial !important;
}

.box-container .box span {
  color: #fff !important;


}


#contatos h1 {
  text-align: center !important;
  color: #fff !important;

}

#contatos .text {
  color: #fff !important;
}

#contatos p {
  color: #fff !important;
}

.box-container .box {
  text-align: center;
  text-align: justify;
  margin-bottom: 50px !important;

}

.box-container .box i {
  display: block;
  font-size: 40px;
  text-align: center;
}

.box-container .box p {
  color: #fff !important;
  font-size: 16px;
  line-height: 1.4;
  text-align: center;
}

.box-container .box h2 {
  text-align: center;
}

.box-container .box .btn {
  margin-top: 10px;
  display: inline-block;
  font-size: 17px;
  border-radius: 5px;
}

footer {
  margin-top: -130px !important;
  background-color: #22804c !important;
  display: flex !important;
  color: #fff !important;
  justify-content: center !important;
}

/*=============== BREAKPOINTS ===============*/
/* For small devices */
@media screen and (max-width: 320px) {
  .card__data {
    padding: 1rem;
  }
}

/* For medium devices */
@media screen and (max-width: 868px) {
  .card__content {
    margin-inline: 3rem;
  }

  .servicos-prev,
  .servicos-next {
    width: initial;
    height: initial;
    font-size: 3rem;
    color: #22874c;
    display: block !important;
  }

  .diretoria-prev,
  .diretoria-next {
    width: initial;
    height: initial;
    font-size: 3rem;
    color: #22874c;
    display: block !important;
  }

  .desenvolvedores-prev,
  .desenvolvedores-next {
    width: initial;
    height: initial;
    font-size: 3rem;
    color: #22874c;
    display: block !important;
  }

  .diretoria-pag {
    display: block;
  }

  .dev-pag {
    display: block;
  }

  #desenvolvedores br {
    display: none;
  }

  #inicio {
    height: 95vh !important;
  }

  .no-mobile {
    display: none !important;
  }

  .containerDiretoria .swiper-button-prev,
  .containerDiretoria .swiper-button-next {
    width: initial;
    height: initial;
    font-size: 3rem;
    padding: 20px;
    color: #000 !important;
    display: block !important;
  }

  #desenvolvedores h1 {
    font-size: 23px !important;

  }

  .col-one {
    padding-left: 35px !important;
    padding-right: 35px !important;
  }

  .navbar-toggler-icon {
    padding-top: 5px;
  }

  .navbar-collapse {
    background-color: var(--color-secondary);
    padding: 20px;
    text-align: center;
    border-radius: 40px;
  }

  .navbar-collapse .btn-white {
    margin-top: 20px;
  }

  .navbar-collapse .btn-icon {
    padding-right: 20px;
  }

  .navbar-collapse .btn-icon span.icon {
    display: none;
  }

  .banner {
    padding-top: 50px;
    padding-bottom: 50px;
  }

  .text-banner h1 {
    font-size: 36px;
  }

  .text-banner p {
    font-size: 18px;
  }

  .btn-yellow,
  .btn-white {
    padding: 13px 23px;
    font-size: 18px;
  }

  .btn-icon-left span.icon-left {
    width: 43px;
    height: 43px;
    margin-left: -56px;
  }

  .btn-icon-left {
    padding-left: 63px !important;
  }

  .title {
    font-size: 30px;
  }

  .servicos {
    padding-bottom: 50px;
  }

  .text-servicos {
    font-size: 14px !important;
    font-weight: 300;
  }


  .cardapio {
    padding-bottom: 50px;
  }

  .container-menu {
    overflow-x: auto;
    overflow-y: hidden;
    display: flex;
    padding-bottom: 15px;
  }

  .img-produto {
    position: absolute;
    left: 15px
  }

  .card-item {
    height: 110px;
    padding-left: 110px;
    justify-content: center;
    align-items: start;
  }

  .card-item .img-produto img {
    width: 80px;
  }

  .title-produto {
    margin-top: 0px !important;
    height: 30px !important;
    width: 100%;
    text-align: left !important;
  }

  .price-produto {
    margin-bottom: 0px !important;
    margin-top: 0px !important;
    font-size: 22px !important;
  }

  .card-item .add-carrinho {
    margin-top: 5px;
  }

  #itensCardapio .mb-5 {
    margin-bottom: 15px !important;
  }

  .depoimentos {
    padding-bottom: 50px;
  }

  .reserva {
    padding-bottom: 50px;
  }

  .card-secondary {
    padding: 45px;
    border-radius: 50px;
  }

  .container-logo-footer {
    justify-content: center;
  }

  .container-texto-footer p {
    text-align: center;
  }

  .container-redes-footer {
    margin-top: 40px;
    margin-bottom: 50px;
    justify-content: center;
  }

  .modal-full {
    padding: 40px;
  }

  .modal-full .item-carrinho {
    padding-left: 0;
    padding-right: 0;
  }

  .modal-full .img-produto {
    position: relative;
    left: 0;
  }

  .modal-full .img-produto img {
    width: 50px;
  }

  .modal-full .dados-produto {
    padding-left: 15px;
    padding-right: 15px;
    display: grid;
  }

  .modal-full .title-produto,
  .modal-full .price-produto {
    font-size: 16px !important;
  }

  .modal-full .add-numero-itens {
    padding: 2px 10px;
  }

  .modal-full .form-control {
    font-size: 16px;
  }

  .sobre-left,
  .logo {
    display: none;
    /* Esconder elementos que não devem ser exibidos */
  }

  #sobre .sobre-right .info-item {
    font-size: 12px !important;
    font-weight: 500;
    max-width: 100px !important;
  }

  #sobre .sobre-right .info-items {
    max-width: 350px !important;
    margin: 0 auto;
  }

  #sobre .sobre-right h2 {
    font-size: 14px !important;
  }

  .sobre-right {
    flex: 1;
    /* Ocupa todo o espaço disponível */
    padding: 20px;
    text-align: center;
    /* Centralizar o conteúdo */
  }

  .uicam-h1 {
    font-size: 12px !important;
  }

  #sobre .sobre-right h1 {
    font-size: 20px;

  }

  #sobre .sobre-right p {
    font-size: 16px;
    text-align: justify;
    margin: 0 auto;
    max-width: 300px !important;
    font-weight: 400;
    word-wrap: break-word;
    /* Quebra de palavra */
  }

  /* Corrigindo estilos para o elemento com o id "#apoie" */
  #apoie {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  /* Corrigindo estilos para o elemento com o id "#apoie" */
  #apoie {
    text-align: center;
    /* Centralizar horizontalmente */
  }

  /* Corrigindo estilos para a classe ".logo" dentro de "#apoie" */
  #apoie .logo {
    margin-top: 20px;
    margin-bottom: 20px;
    display: block;
    margin-left: -30px !important;
    /* Centralizar horizontalmente */
    margin-right: auto;
    /* Centralizar horizontalmente */
  }

  /* Corrigindo estilos para a classe ".sobre-right" dentro de "#apoie" */
  #apoie .sobre-right {
    margin-top: 20px;
    margin-bottom: 20px;
    display: block;
    margin: 0 auto;
    /* Centralizar horizontalmente */
    text-align: center;
    /* Centralizar horizontalmente */
    width: 80%;
    /* Definindo uma largura para permitir centralização */
  }

}

/* For large devices */
@media screen and (min-width: 1120px) {
  .card__container {
    max-width: 1120px;
  }

  .swiper-button-prev {
    left: -1rem;
  }

  .swiper-button-next {
    right: -1rem;
  }
}

@media screen and (width: 1024px) {
  .servicos-content {
    height: 450px;
  }

}