/* ====== Global styling */
.section-title {
  position: relative;
  font-family: 'Inter', sans-serif;
}

.section-title span {
  display: block;
  margin-bottom: 0.8rem;
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: 0.35rem;
  color: var(--green-800);
  text-transform: uppercase;
}

.section-title span strong {
  font-weight: 700;
}

.section-title .title {
  margin-bottom: 4rem;
  font-size: 3.6rem;
  font-weight: 600;
  line-height: 105%;
  color: var(--green-700);
}

.section-title__divider {
  position: absolute;
  top: -3.8rem;
  left: 0;
  width: 11.2rem;
  height: 0.1rem;
  border-radius: 0.8rem;
  background-color: var(--green-700);
}

.section-title p {
  font-size: 1.6rem;
  font-family: 'Inter', sans-serif;
  line-height: 160%;
}

@media screen and (max-width: 480px) {
  .section-title .title {
    font-size: 2.8rem;
  }

  .section-title span {
    font-size: 1.2rem;
  }

  .section-title p {
    font-size: 1.4rem;
  }
}


/* ====== Hero section */
.hero {
  --hero-padding-top-bottom: 15rem;
  --hero-text-width: 55rem;

  padding: var(--hero-padding-top-bottom) 0;
  margin-top: var(--navbar-height);
  background-color: var(--white);
  overflow: hidden;
}

.hero-box {
  position: relative;
  margin: 0 auto;
}

@media (max-width: 1200px) {
  .hero-box {
    margin: 0 3rem;
  }
}

.hero-text {
  max-width: var(--hero-text-width);
}

.hero-text .title {
  color: var(--grey-800);
  font-family: 'bornasemibold', sans-serif;
  font-size: 7.6rem;
  font-weight: 600;
  line-height: 105%;
}

.partners-swiper {
  display: none;
  padding: 5.2rem 2rem;
  background-color: var(--green-700);
}

.partners-swiper > span {
  display: block;
  max-width: max-content;
  margin: 0 auto;
  font-family: Inter, sans-serif;
  font-size: 1.4rem;
  line-height: 160%;
  color: var(--white);
}

.partners-swiper > span strong {
  font-weight: 500;
  color: var(--primary-green);
}

.hero .wmbr-btn.wmbr-btn__anchor {
  color: var(--green-700);
}

@media (max-width: 1366px) {
  .hero-text .title {
    font-size: 5.4rem;
  }
}

@media (max-width: 1020px) {
  .hero {
    --hero-padding-top-bottom: 3rem;  
    padding: var(--hero-padding-top-bottom) 0;
  }

  .hero-box.wrapper-container {
    margin: 0;
  }

  .hero-text {
    padding: 0 3rem;
  }

  .partners-swiper {
    display: block;
  }
}

@media (max-width: 769px) {
  .hero-text .title {
    font-size: 4.8rem;
  }
}

@media (max-width: 480px) {
  .hero-text .title {
    font-size: 3.4rem;
  }
}

@media (max-width: 380px) {
  .hero-text .title {
    font-size: 2.8rem;
  }
}

.hero-text .title span {
  max-width: 100%;
  color: var(--primary-green);
}

.hero-text .cta-wrapper {
  display: flex;
  align-items: center;
  gap: 1rem 3.6rem;
  flex-wrap: wrap;
  margin-top: 3.6rem;
}

.hero-text .cta-wrapper .wmbr-btn__anchor svg {
  width: 2.4rem;
  height: 2.4rem;
}

.hero-box .hero-img {
  position: absolute;
  right: calc((80% - var(--hero-text-width))* -1);
  bottom: calc(var(--hero-padding-top-bottom)* -1);
  max-height: 65rem;
  width: auto;
  object-fit: contain;
}

@media (max-width: 1366px) {
  .hero-box .hero-img {
    max-height: 50rem;
    right: calc((55% - var(--hero-text-width)) * -1);
  }
}

@media (max-width: 1200px) {
  .hero-box .hero-img {
    right: calc((90% - var(--hero-text-width)) * -1);
  }
}

@media (max-width: 1023px) {
  .hero {
    padding: 4.4rem 0 6rem;
  }

  .hero-box {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }

  .hero-box .hero-text {
    max-width: 100%;
  }

  .hero-box .hero-img {
    display: none;
  }
}

@media (max-width: 480px) {

  .hero-text .cta-wrapper {
    margin-top: 2rem;
  }
}

.hero-text .partners-box {
  margin-top: 17rem;
}

.hero-text .partners-box span {
  color: var(--white);
}

.hero-text .partners-box .partners {
  display: flex;
  align-items: center;
}

.partners svg {
  display: block;
  max-height: 10rem;
}

.partners path:not([fill]):not([stroke]) {
  fill: var(--white);
}

.partners path[fill] {
  fill: var(--white);
}

.partners path[stroke] {
  stroke: var(--white);
}

@media screen and (max-width: 1048px) {
  .partners-swiper {
    display: block;
  }

  .partners-swiper svg {
    max-height: 20rem;
    min-height: 10rem;
    height: auto;
    width: 100%;
  }

  .hero-text .partners-box {
    display: none;
  }
}

/* ======= Emissão section */
.emissao {
  padding: 13.5rem 3rem 15.4rem;
  background-color: var(--grey-800);
}

.emissao .wrapper {
  --emissao-text-width: 55rem;

  display: flex;
  align-items: center;
  justify-items: center;
  gap: 2.5rem 7.2rem;

  max-width: 120rem;
  margin: 0 auto;
}

.emissao-text {
  max-width: var(--emissao-text-width);
}

.emissao-text .section-title .title.contador {
  color: var(--green-200);
}

.emissao-text .section-title span.contador {
  color: var(--third-blue);
}

.emissao-text .emissao-advantages {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  font-size: 1.6rem;
  font-family: 'Inter', sans-serif;
  line-height: 160%;
  color: var(--white);
}

@media (max-width: 480px) {
  .emissao-text .emissao-advantages {
    font-size: 1.4rem;
    gap: 1rem;
  }

  .emissao .title.juntos {
    margin-bottom: 1.6rem;
  }
}

.emissao-text p {
  color: var(--white);
}

.emissao .title.juntos {
  color: var(--third-blue);
}

.emissao span.juntos {
  color: var(--green-200);
}

.emissao-text .emissao-advantages li {
  display: flex;
  align-items: baseline;
  gap: 2.4rem;
}

.emissao-text .emissao-advantages li svg {
  min-height: 0.8rem;
  height: 0.8rem;
}

.emissao-text .emissao-advantages li svg path {
  stroke: var(--green-200);
}

.emissao-hero.contador:not(.responsive),
.emissao-hero {
  max-width: 58rem;
  flex: 1;
}

.emissao-hero.contador.responsive {
  display: none;
  width: auto;
  max-width: 100%;
  margin: 0 0 3.2rem;
}

.emissao .stats {
  padding: 19rem 0;
}

.emissao .infos>span,
.emissao .infos>p {
  color: var(--white);
}

.emissao #request-main,
.emissao #request-img path {
  color: var(--third-blue);
  stroke: var(--third-blue);
}

.emissao #request-img rect {
  fill: var(--third-blue);
}

.emissao #companies-main,
.emissao #companies-img path {
  color: var(--green-200);
  stroke: var(--green-200);
}

.emissao #companies-img rect {
  fill: var(--green-200);
}

@media screen and (max-width: 1080px) {
  .emissao-hero.contador:not(.responsive) {
    display: none;
  }

  .emissao-hero.contador.responsive {
    display: block;
  }

  .emissao-text {
    max-width: max-content;
    margin: 0 auto;
  }

  .emissao .wrapper-container {
    display: block;
  }
}

@media (max-width: 768px) {
  .emissao .wrapper {
    flex-direction: column;
  }

  .emissao-hero {
    max-width: 100%;
  }

}

@media (max-width: 500px) {
  .emissao {
    padding: 6rem 3rem 6rem;
  }

  .emissao-text .emissao-advantages li {
    gap: 1.4rem;
  }

  .emissao .stats {
    padding: 0 0 4.5rem;
  }

  .first-wrapper {
    display: flex;
    flex-direction: column-reverse;
    margin-bottom: 7.2rem;
  }
}

/* STATS */

#pages {
  display: flex;
  align-items: center;
  justify-content: center;
}

#pages>.swiper-pagination-bullet {
  width: 1rem;
  height: 1rem;
  margin: 0.5rem;
}

#pages>.swiper-pagination-bullet-active {
  background: var(--primary-green);
}

/* ======= Fraudes section */
.fraudes {
  padding: 6rem 3rem 17rem;
}

@media (max-width: 1181px) {
  .fraudes {
    overflow-x: hidden;
  }
}

.fraudes .fraudes-container {
  position: relative;
  max-width: 135rem;
  margin: 0 auto;
  padding: 7.2rem 7.4rem;
  border-radius: 1.6rem;
  background-image: linear-gradient(90deg, #44E880, var(--green-700));
}

.fraudes-text {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 2rem;
  z-index: 1;
}

.fraudes-text .title {
  max-width: 40rem;
  font-family: 'Inter', sans-serif;
  font-size: 6.4rem;
  font-weight: 600;
  line-height: 105%;
  color: var(--white);
  text-align: right;
}

.fraudes-text .title strong {
  color: var(--green-800);
}

.fraudes-text p {
  max-width: 37rem;
  font-family: 'Inter', sans-serif;
  font-size: 1.6rem;
  color: var(--white);
}

.fraudes-text div {
  display: flex;
  flex-direction: column;
  gap: 5.8rem;
}

.fraudes-text .line {
  background-color: var(--green-200);
  width: 11.2rem;
  height: 0.2rem;
}

.fraudes-hero {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  max-height: 38rem;
  width: auto;
}

@media screen and (max-width: 1300px) {
  .fraudes-text {
    align-items: flex-start;
  }

  .fraudes-text .title {
    max-width: 30rem;
    font-size: 4.8rem;
    text-align: left;
  }

  .fraudes-hero {
    left: 45%;
  }
}

@media screen and (max-width: 1180px) {
  .fraudes-hero {
    left: 75%;
  }

  .fraudes-text {
    flex-direction: column;
  }
}

@media screen and (max-width: 830px) {
  .fraudes .fraudes-container {
    padding: 3.5rem 2.8rem 0;
    overflow: hidden;
  }
  
  .fraudes-text {
    font-size: 4.8rem;
    max-width: max-content;
    margin: 0 auto;
    padding-bottom: 42rem;
    text-align: center;
  }

  .fraudes-text .title {
    text-align: center;
    margin: 0 auto;
  }

  .fraudes-text .line {
    display: none;  
  }

  .fraudes-hero {
    left: 50%;
  }
}

@media screen and (max-width: 480px) {
  .fraudes-text {
    text-align: left;
  }
  
  .fraudes-text .title {
    font-size: 3.6rem;
    text-align: left;
    margin: 0;
  }

  .stats.wrapper-container {
    margin: 0;
  }
}

/* ====== Plataforma section */
.plataforma {
  padding: 18rem 0 0;
}

.plataforma-first-section {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6rem;
  flex-wrap: wrap;
  margin-bottom: 9rem;
}

.plataforma-first-section .js-plataforma-images-wrapper img, 
  .plataforma-first-section .js-plataforma-images-wrapper-responsive img {
  transition: opacity 0.8s ease-in;
}

.plataforma-first-section .js-plataforma-images-wrapper img.active, 
.plataforma-first-section .js-plataforma-images-wrapper-responsive img.active {
  opacity: 1;
  display: block;
}

.plataforma-first-section .js-plataforma-images-wrapper img:not(.active),
.plataforma-first-section .js-plataforma-images-wrapper-responsive img:not(.active) {
  display: none;
  opacity: 0;
}

.plataforma .section-title {
  max-width: 58rem;
  margin-left: auto;
  margin-bottom: 4rem;
}

.plataforma .section-title span {
  margin-bottom: 1.6rem;
  color: var(--green-700);
}

.js-plataforma-images-wrapper {
  max-width: calc(120rem - 58rem - 6rem);
  width: 100%;
}

.js-plataforma-images-wrapper-responsive {
  display: none;
}

.js-plataforma-images-wrapper img,
.js-plataforma-images-wrapper-responsive img {
  height: 100%;
}

.plataforma-first-section .plataforma-right {
  max-width: 100%;
  width: 58rem;
}

.plataforma-first-section .plataforma-right ul {
  display: flex;
  flex-direction: column;
  font-family: 'Inter', sans-serif;
  line-height: 115%;
  color: var(--grey-800);
}

.plataforma-first-section .plataforma-right li {
  padding-left: 5.4rem;
  border-left: 0.3rem solid var(--green-700);
}

@media screen and (max-width: 1124px) {
  .plataforma-first-section .plataforma-right li {
    padding-left: 1.6rem;
  }
}

.plataforma-first-section .plataforma-right .content {
  padding: 2rem 0;
}

.plataforma-first-section .plataforma-right li,
.plataforma-first-section .plataforma-right li header {
  transition: all 0.2s ease-out;
}

.plataforma-first-section .plataforma-right li:not(.active) {
  border-left: 0.2rem solid rgba(0, 0, 0, 0.2);
  opacity: 0.3;
}

.plataforma-first-section .plataforma-right li header {
  margin-bottom: 3rem;
  font-size: 2rem;
  font-weight: 700;
  line-height: 120%;
}

.plataforma-first-section .plataforma-right li p {
  font-size: 1.6rem;
}

.plataforma-first-section .plataforma-right li.active header,
.plataforma-first-section .plataforma-right li:hover header {
  color: var(--green-700);
}

.plataforma-first-section .plataforma-right li:hover {
  border-left: 0.3rem solid var(--green-700);
  opacity: 1;
}

.plataforma-second-section {
  --plataforma-section-title-width: 43rem;
  
  position: relative;
  display: flex;
  align-items: center;
  gap: 10rem;
}

.plataforma-second-section .section-title {
  max-width: var(--plataforma-section-title-width);
  margin-bottom: 0;
}

.plataforma-second-section .section-title button {
  position: absolute;
  top: 50%;
  right: -6.4rem;
  display: block;
  padding: 0 2rem;
  height: 100%;
  transform: translateY(-50%);
  background-color: transparent;
  border-radius: 0.8rem;
  transition: all 0.2s ease-out;
}

.plataforma-second-section .section-title button:hover,
.plataforma-second-section .section-title button:focus-visible {
  border: 0.1rem solid var(--green-700);
}

.plataforma .img-solucoes--mobile {
  display: none;
}

.plataforma .img-solucoes {
  max-width: 108rem;
  margin: 0 auto;
}

.plataforma .img-solucoes img {
  object-fit: contain;
  height: 100%;
}

@media screen and (max-width: 1024px) {
  .plataforma-second-section {
    height: 0;
  }

  .plataforma-second-section .section-title {
    display: none;
  }
}

@media (max-width: 1200px) {
  .plataforma {
    padding: 7rem 0 0;
  }

  .plataforma .section-title {
    margin: 0 3rem 4rem;
  }

  .plataforma-first-section {
    justify-content: flex-start;
    margin: 0 3rem 3rem;
  }

  .js-plataforma-images-wrapper {
    display: none;
  } 

  .js-plataforma-images-wrapper-responsive {
    display: block;
  } 

  .plataforma-first-section .plataforma-right ul {
    margin-top: 4rem;
  }

  .plataforma .img-solucoes {
    height: 30rem;
  }

  .js-plataforma-images-wrapper-responsive img {
    height: auto;
  }
}

@media screen and (max-width: 608px) {
  .plataforma .img-solucoes {
    display: none;
  }

  .plataforma .img-solucoes--mobile {
    display: block;
    width: 100%;
    height: auto;
  }
}

@media screen and (max-width: 480px) {

  .plataforma-hero {
    display: none;
  }

  .plataforma-first-section .plataforma-right li header {
    font-size: 1.4rem;
    margin-bottom: 1rem;
  }

  .plataforma-first-section .plataforma-right li p {
    font-size: 1.2rem;
  }

  .plataforma-first-section .plataforma-right .content {
    padding: 1rem 0;
  }

  .plataforma .img-solucoes img {
    object-fit: cover;
  }
}

/* ===== Tempo section */
.tempo {
  padding: 20rem 3rem;
  background-color: var(--grey-800);
}

.tempo-container {
  position: relative;
  max-width: 135rem;
  margin: 0 auto;
  border-radius: 3.2rem;
  border: 0.1rem solid var(--green-200);
}

.tempo-text {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  padding: 5.5rem 6rem;
}

.tempo-text .title {
  max-width: 32rem;
  font-size: 4rem;
  font-weight: 600;
  font-family: 'Inter', sans-serif;
  color: var(--white);
}

.tempo-text .title span {
  color: var(--third-blue);
}

.tempo-text.responsive {
  display: none;
}

.tempo-cta {
  max-width: 37rem;
}

.tempo-cta.responsive {
  display: none;
}

.tempo-cta .wmbr-btn__primary:not(.wmbr-btn__primary--inverted) {
  color: var(--grey-800);
  background-color: var(--green-200);
}

.tempo-cta .wmbr-btn__primary.wmbr-btn__primary--inverted {
  color: var(--green-200);
  background-color: var(--grey-800);
}

.tempo-cta .wmbr-btn__primary:not(.wmbr-btn__primary--inverted):hover,
.tempo-cta .wmbr-btn__primary:not(.wmbr-btn__primary--inverted):focus-visible {
  background-color: var(--second-green);
}

.tempo-cta .wmbr-btn:not(:last-of-type) {
  margin-bottom: 2.2rem;
}

.tempo-cta p {
  font-size: 1.6rem;
  line-height: 160%;
  color: var(--white);
  margin-bottom: 2.6rem;
}

.tempo-hero {
  position: absolute;
  top: -2rem;
  left: 50%;
  transform: translateX(-50%);
  max-width: 33rem;
}

@media screen and (max-width: 1290px) {
  .tempo-text {
    padding: 3.2rem 4.8rem;
  }

  .tempo-text .title {
    max-width: 27rem;
    font-size: 3.2rem;
  }

  .tempo-text .tempo-cta {
    max-width: 28rem;
  }

  .tempo-hero {
    max-width: 28rem;
  }
}

@media screen and (max-width: 995px) {
  .tempo {
    padding-top: 5.5rem;
    padding-bottom: 7rem;
    margin-top: 0;
  }

  .tempo-text:not(.responsive) {
    display: none;
  }

  .tempo-cta:not(.responsive) {
    display: none;
  }

  .tempo-container {
    max-width: 90%;
    height: 22rem;
    margin: 0;
  }

  .tempo-text.responsive {
    display: block;
    max-width: max-content;
    padding: 0;
    text-align: center;
    margin: 0 auto 3.8rem;
  }

  .tempo-text.responsive .title {
    max-width: 90%;
    text-align: center;
    margin: 0 auto;
  }

  .tempo-cta.responsive {
    display: block;
    text-align: center;
    margin: 6.4rem 0 0;
  }

  .tempo-cta.responsive {
    display: block;
    text-align: left;
    margin-top: 6.4rem;
  }

  .tempo-text.responsive .title {
    max-width: 100%;
    text-align: left;
  }
}

@media screen and (max-width: 480px) {
  .tempo-text.responsive {
    margin: 0 0 3.8rem;
  }

  .tempo-cta p {
    font-size: 1.4rem;
  }
}

/* ======= FAQ section */
.faq {
  background-color: var(--grey-800);
  padding: 0 0 17rem;
}

.faq .wrapper-container {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 7rem;
  flex-wrap: wrap;
}

.faq-text {
  max-width: 25rem;
}

.faq-text span {
  color: var(--green-200);
  display: block;
  margin-bottom: 0.8rem;
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: 0.35rem;
  text-transform: uppercase;
}

.faq-text .title {
  margin-bottom: 2.4rem;
  color: var(--white);
}

.faq .section-title .wmbr-btn {
  width: max-content;
  color: var(--grey-800);
  background-color: var(--green-200);
}

.faq .section-title .wmbr-btn:hover,
.faq .section-title .wmbr-btn:focus-visible {
  background-color: var(--green-800);
}

.faq-questions-wrapper {
  flex: 1 1 420px;
  background-color: unset;
  border-left: 0.2rem solid rgba(255, 255, 255, 0.1);
}

.faq-question > button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 7rem;
  padding: 2.4rem 4rem;
  background-color: unset;
  text-align: left;
  border-radius: 0 12rem 12rem 0;
  width: 100%;
}

.faq-question.question-open > button,
.faq-question > button:hover,
.faq-question > button:focus-visible {
  outline: 0.1px solid var(--green-700);
}

.faq-question .open-close-indicator {
  position: relative;
  min-width: 3rem;
  min-height: 3rem;
  width: 3rem;
  height: 3rem;
  border: 0.1rem solid var(--green-200);
  border-radius: 50%;
}

@media (max-width: 480px) {
  .faq-question .open-close-indicator {
    width: 1.6rem;
    height: 1.6rem;
  }
}

.faq-question .open-close-indicator::before,
.faq-question .open-close-indicator::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0.1rem;
  height: 1.2rem;
  border-radius: 0.8rem;
  background-color: var(--green-700);
  transition: all 0.2s ease-in;
}

.faq-question .open-close-indicator::before {
  transform: translateY(-50%) rotate(90deg);
}

.faq-question .open-close-indicator::after {
  transform: translateY(-50%);
}

.faq-question.question-open .open-close-indicator::after {
  opacity: 0;
}

.faq-question header {
  max-width: max-content;
  width: 100%;
  font-family: 'Inter', sans-serif;
  font-size: 2.4rem;
  font-weight: 600;
  line-height: 105%;
  color: var(--white);
}

.faq-answer {
  margin-top: 1.2rem;
  font-family: 'Inter', sans-serif;
  font-size: 1.6rem;
  line-height: 160%;
  color: var(--white);
  transition: all 0.2s ease-out;
}

.faq-question:not(.question-open) .faq-answer {
  pointer-events: none;
  margin-top: 0;
  height: 0;
  opacity: 0;
}

@media screen and (max-width: 848px) {
  .faq-text {
    max-width: 100%;
  }

  .faq .wrapper-container {
    justify-content: flex-start;
  }

  .faq-question > button {
    flex-direction: row-reverse;
    align-items: flex-start;
    gap: 1.2rem;
    padding-left: 1.2rem;
    width: auto;
  }

  .faq-question header {
    font-size: 1.6rem;
  }

  .faq-question .faq-answer {
    font-size: 1.2rem;
  }

  .faq {
    padding-bottom: 8rem;
  }
}

/* ===== Contanto section */
.contato {
  padding: 6rem 0;
}

.contato-text {
  max-width: max-content;
  margin: 0 auto;
  text-align: center;
  color: var(--grey-800);
}

.contato .section-title {
  margin-bottom: 3.2rem;
}

.contato .section-title .title {
  margin-bottom: 2rem;
  color: var(--grey-800);
}

.contato-cta {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.8rem 2.4rem;
  flex-wrap: wrap;
}

.contato-cta .wmbr-btn__primary {
  color: var(--white);
  background-color: var(--green-700);
}

.contato-cta .wmbr-btn__primary:hover,
.contato-cta .wmbr-btn__primary:focus-visible {
  color: var(--white);
  background-color: var(--green-200);
}

.contato .contato-cta .wmbr-btn__primary--inverted {
  color: var(--green-700);
  border-color: var(--green-700);
  background-color: unset;
}


@media (max-width: 500px) {
  .stats {
    padding: 8rem 0;
  }

  .fraudes {
    padding: 6rem 3rem 8rem;
  }

  .plataforma-first-section {
    gap: 4.6rem;
  }

  .plataforma-second-section .plataforma-box-slider {
    overflow: visible;
  }

  .faq .wrapper-container {
    gap: 4rem;
  }


}