/* CSS RESET */

* {
   padding: 0;
   margin: 0;
   vertical-align: baseline;
   list-style: none;
   border: 0;
   box-sizing: border-box;
}

html {
   display: flex;
   justify-content: center;
}

body, html {
   max-width: 100%;
   overflow-x: hidden;
   letter-spacing: 0;
}

body {
   max-width: 1596px;
   width: 100%;
   margin: 0;
   padding: 0;
   font-family: "Roboto", Arial, sans-serif;
}

img {
   vertical-align: middle;
   border-style: none;
}

/* NAV */

.nav-container {
   background: #FFFFFF;
   box-shadow: 0px 8px 24px rgba(0, 0, 0, 0.1);
   height: 72px;
}

.wrapper {
   max-width: 1680px;
   margin: 0 auto;
}

nav {
   display: flex;
   align-items: center;
   justify-content: space-between;
   height: 72px;
}

.logo {
   width: 118px;
   height: 32px;
   margin-top: 0;
}

.logo-itens li {
   list-style: none;
   margin: 0;
   padding: 0;
}

.nav-items {
   display: flex;
}

.nav-items li {
   list-style: none;
   margin-right: 20px;
}

.nav-items li:nth-last-of-type(1) {
   margin: 0;
}

.nav-items li a {
   color: #4A4A4A;
   font-size: 15px;
   font-weight: 700;
   text-decoration: none;
}

.nav-btn-sobre {
   color: #3C3838;
   font-weight: 700;
   font-size: 15px;
   text-align: center;
   padding-top: 10px;
   border: none;
   background-color: #FFFFFF;
   cursor: pointer;
}

.nav-btn-sobre:hover {
   color: #ED7006;
}

.nav-btn-cadastrar {
   color: #FFFFFF;
   font-weight: bold;
   font-size: 13px;
   text-align: center;
   height: 35px;
   width: 192px;
   background-color: #ED7006;
   border: 1px solid #ED7006;
   border-radius: 30px;
   cursor: pointer;
}

.nav-btn-cadastrar:hover {
   background-color: #FFFFFF;
   color: #ED7006;
   border: 1px solid #ED7006;
}

/*INDICADOR*/

.indicador-position {
   width: 1596px;
   text-align: center;
   margin: 0 auto;
   position: relative;
}

.indicador {
   z-index: 1;
   position: relative;
   margin: 0 auto;
   top: -20px;
   text-align: center;
}

/* BANNER */

#banner {
   background-image: url(../img/banner.png);
   background-repeat: no-repeat;
   background-size: 100%;
   width: 100%;
   height: 865px;
   position: relative;
}

/* SECTION ACELERE */

#acelere-pontos {
   position: relative;
   height: 880px;
   background-color: #035B94;
}

#acelere-pontos .title {
   width: 1200px;
   text-align: center;
   margin: 0 auto;
   padding: 100px 0 30px 0;
}

.title h1 {
   font-size: 38px;
   line-height: 40px;
   color:#FAA755;
   font-weight: bold;
   padding-left: 182px;
}

.img-pontos {
   margin: 0;
   text-align: center;
   padding: 30px 0 100px 0;
}

.img-pontos img {
   margin: 0;
   text-align: center;
   max-width: 1197px;
}

.img-pontos-mobile {
   display: none;
}

/* SECTION TRANSACTIONAL */

#transactional-text {
   position: relative;
   height: 205px;
   background-color: #15BEF0;
}

#transactional-text .title-1 {
   width: 690px;
   text-align: center;
   margin: 0 auto;
   padding: 50px 0 20px 0;
}

.title-1 h1 {
   font-size: 35px;
   line-height: 42px;
   color:#FFFFFF;
   font-weight: bold;
}

/* SECTION PONTOS */

#bloco-pontos {
   position: relative;
   height: 1220px;
   background-color: #EFEFEF;
}

#bloco-pontos .area {
   padding-top: 70px;
}

#bloco-pontos .area-2 {
   padding-top: 25px;
}

.box-categoria {
   max-width: 1190px;
   margin: 0 auto;
   border: 3px solid #035287;
   border-radius: 25px;
}

.box-categoria ul {
   padding: 25px 0px 25px 0px;
   display: flex;
   text-align: center;
   flex-direction: row;
   flex-wrap: nowrap;
   justify-content: center;
}

.box-categoria li {
   text-align: center;
   padding-left: 40px;
   padding-right: 40px;
}

.categoria {
   padding-top: 50px;
}

.titulo-categoria {
   padding-top: 15px;
   font-size: 26px;
   line-height: 35px;
   color:#005B94;
}

.texto-pontos {
   padding-top: 15px;
   font-size: 18px;
   line-height: 24px;
   color:#585858;
}

#bloco-pontos-mobile {
   display: none;
}

/* SECTION FIRST */

#first-text {
   position: relative;
   height: 510px;
   background-color: #237DB7;
}

#first-text .paragraph {
   width: 1096px;
   text-align: center;
   margin: 0 auto;
   padding: 30px 0 30px 0;
}

.paragraph p {
   font-size: 27px;
   line-height: 43px;
   color:#FFFFFF;
   font-weight: bold;
   padding-top: 40px;
}

.paragraph p span {
   color:#FAA755;
}

.cta-metas {
   padding: 20px 0 40px 0;
   text-align: center;
}

.btn-metas {
   color: #FFFFFF;
   font-weight: bold;
   font-size: 24px;
   line-height: 36px;
   text-align: center;
   height: 46px;
   width: 253px;
   background-color: #F47721;
   border: 1px solid #F47721;
   border-radius: 50px;
   cursor: pointer;
}

.btn-metas:hover {
   opacity: 0.9;
}

/* SECTION SECOND TEXT */

#second-text {
   position: relative;
   height: 600px;
   background-color: #005B94;
}

#second-text .paragraph-2 {
   width: 1096px;
   text-align: center;
   margin: 0 auto;
   padding: 30px 0 30px 0;
}


#second-text .img-top {
   margin: 0;
   text-align: center;
   padding: 75px 0 0px 0;
}

.img-top img {
   margin: 0;
   text-align: center;
   max-width: 401px;
}

.paragraph-2 p {
   font-size: 27px;
   line-height: 43px;
   color:#FFFFFF;
   font-weight: bold;
   padding-top: 10px;
}

.paragraph-2 p span {
   color:#FAA755;
}

.cta-saiba {
   padding: 20px 0 40px 0;
   text-align: center;
}

.btn-saiba {
   color: #FFFFFF;
   font-weight: bold;
   font-size: 24px;
   line-height: 36px;
   text-align: center;
   height: 46px;
   width: 253px;
   background-color: #F47721;
   border: 1px solid #F47721;
   border-radius: 50px;
   cursor: pointer;
}

.btn-saiba:hover {
   opacity: 0.9;
}

/* SECTION LEGAL TEXT */

#legal-text {
   position: relative;
   height: 170px;
   background-color: #15BEF0;
}

#legal-text .text-legal {
   width: 1090px;
   text-align: center;
   margin: 0 auto;
   padding: 50px 0 20px 0;
}

.text-legal p {
   font-size: 16px;
   line-height: 24px;
   color:#FFFFFF;
}

/* FOOTER */

#footer {
   padding-top: 55px;
   padding-bottom: 35px;
   background-color: #4A4A4A;
   background-size: cover;
   background-repeat: no-repeat;
   position: relative;
}

#footer .footer-bg {
   bottom: 0;
   height: 100%;
   left: 0;
   object-fit: cover;
   position: absolute;
   right: 0;
   top: 0;
   width: 100%;
   z-index: 1;
   display: block;
}

#footer .container {
   position: relative;
   z-index: 5;
   display: flex!important;
   max-width: 1140px;
   margin: 0 auto;
   padding: 0;
}

#footer section {
   width: 25%;
   float: left;
   display: block;
   color: #FFF;
}

#footer .footer-logo div {
   width: 174px;
   margin-bottom: 28px;
}

#footer .footer-logo p {
   font-size: 13px;
   width: 243px;
   line-height: 16px;
   margin-bottom: 1rem;
   color: #FFF;
}

.img-fluid {
   max-width: 100%;
   height: auto;
   border-style: none;
}

#footer .footer-institutional {
   padding-left: 42px;
}

#footer section h5 {
   font-size: 16px;
   margin-bottom: 16px;
   font-weight: 700;
}

#footer .footer-institutional ul {
   padding: 0;
}

#footer .footer-institutional li {
   margin-bottom: 8px;
   line-height: 24px;
   font-size: 13px;
}

#footer, #footer section a {
   color: #FFF;
   text-decoration: none;
   background-color: transparent;
}

#footer, #footer section a:hover {
   text-decoration: underline;
}

#footer .footer-contact h5 {
   font-weight: 700;
}

#footer .footer-contact h6 {
   font-weight: 700;
   font-size: 13px;
   margin-bottom: 8px;
}

#footer .footer-contact b {
   font-size: 20px;
   line-height: 24px;
   margin: 3px 0;
   display: inline-block;
}

#footer .footer-contact span {
   display: block;
   font-size: 13px;
   line-height: 16px;
}

#footer .footer-contact div::after {
   width: 192px;
   height: 1px;
   display: block;
   margin: 13px 0;
}

#footer .footer-contact div::after {
   background-color: #E5E5E5;
   content: "";
   opacity: .1;
}


#footer .footer-contact span {
   display: block;
   font-size: 13px;
   line-height: 16px;
}

#footer .footer-contact a {
   font-size: 12px;
}

#footer .footer-contact h6 {
   font-weight: 700;
   font-size: 13px;
}

#footer .footer-contact span {
   display: block;
   font-size: 13px;
   line-height: 16px;
}

#footer .footer-social li {
   display: inline-block;
   margin-right: 8px;
}

#footer .footer-social li a {
   background-color: orange;
   padding: 11px;
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   margin-bottom: 20px;
}

#footer .footer-social li a:hover {
   background-color: orange;
   opacity: 0.8;
}

#footer .footer-social li a img {
   max-width: 24px;
   max-height: 24px;
}

#footer .footer-social ul {
   margin-bottom: 16px;
}

#footer .footer-social ul::after {
   content: "";
   width: 100%;
   height: 1px;
   display: block;
   background-color: #E5E5E5;
   opacity: .1;
   margin-top: 47px;
}

#footer .footer-social .app-stores {
   display: grid;
}

#footer .footer-social .app-stores a:first-child {
   padding-right: 16px;
   text-decoration: none;
}

#footer .footer-social .app-stores::after {
   content: '';
   width: 100%;
   height: 1px;
   display: block;
   background-color: #E5E5E5;
   opacity: .1;
   margin-top: 16px;
}

#footer .footer-social ul::after {
   width: 192px;
}

#footer .footer-social .app-stores::after {
   width: 192px;
} 

/******** RESPONSIVO ********/

@media only screen and (max-width: 1441px) {

   .wrapper {
      max-width: 1280px;
   }

   /*INDICADOR*/

   .indicador-position {
      width: 1190px;
   }

   /* SECTION BANNER */

   #banner {
      height: 780px;
   }

   /* SECTION SECOND */

   .box {
      width: 1200px;
   }

   .text-1 {
      width: 480px;
   }

   .bullet-arrow {
      width: 240px;
  }

  .text-bullet {
      width: 480px;
      grid-template-columns: 0.17fr 1fr;
   }

   .text-bullet p {
      font-size: 28px;
      line-height: 40px;
   }

}

@media only screen and (max-width: 1290px) {

   body {
      max-width: 1290px;
   }

   .wrapper {
      max-width: 1140px;
   }

   /*INDICADOR*/

   .indicador-position {
      width: 1030px;
   }

   /* SECTION BANNER */

   #banner {
      background-image: url(../img/banner-2.png);
      height: 565px;
   }

   /* SECTION FIRST */

   #first-text {
      height: 440px;
   }

   #first-text .paragraph {
      width: 920px;
      padding: 35px 0 30px 0;
   }

   .paragraph p {
      font-size: 24px;
      line-height: 30px;
   }

   #second-text .paragraph-2 {
      width: 920px;
  }

}

@media only screen and (max-width: 1024px) {

   .wrapper {
      max-width: 890px;
   }

   /*INDICADOR*/

   .indicador-position {
      width: 850px;
   }
   
   /* SECTION BANNER */

   #banner {
      height: 485px;
   }

   /* SECTION ACELERE */

   #acelere-pontos {
      height: 800px;
   }

   #acelere-pontos .title {
      width: 1000px;
   }

   .title h1 {
      font-size: 32px;
      line-height: 36px;
      padding-left: 165px;
   }

   .img-pontos {
      padding: 30px 0 100px 0;
   }

   .img-pontos img {
      max-width: 980px;
      height: 499px;
   }

   /* SECTION PONTOS */

   #bloco-pontos {
      position: relative;
   }

   .box-categoria {
      max-width: 980px;
   }

   .box-categoria li {
      padding-left: 30px;
      padding-right: 30px;
   }

   .titulo-categoria {
      font-size: 24px;
      line-height: 32px;
   }

   .texto-pontos {
      font-size: 16px;
      line-height: 22px;
   }

   /* SECTION LEGAL TEXT */

   #legal-text {
      height: 190px;
   }

   #legal-text .text-legal {
      width: 740px;
   }

   #footer .container {
      max-width: 930px;
   }

}

@media only screen and (max-width: 768px) {

   .wrapper {
      max-width: 680px;
      margin: 0 auto;
   }
   
   nav {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: space-between;
   }

   .nav-container {
      height: 155px;
   }

   .nav-items {
      display: flex;
   }

   .logo {
      width: 118px;
      height: 32px;
      margin: 30px 0 30px 0;
   }

   .nav-btn-sobre {
      display: none;
   }

   /*INDICADOR*/

   .indicador-position {
      width: 600px;
   }

   /* SECTION BANNER */

   #banner {
      height: 413px;
   }

   /* SECTION ACELERE */

   #acelere-pontos {
      height: 2880px;
   }

   #acelere-pontos .title {
      width: 700px;
      padding: 70px 0 30px 0;
   }

   .title h1 {
      font-size: 30px;
      line-height: 36px;
      text-align: center;
      padding-left: 0;
      margin: 0 auto;
      max-width: 375px;
   }

   .img-pontos {
      display: none;
   }

   .img-pontos-mobile {
      top: 0;
      left: 0;
      display: grid;
      align-content: center;
      justify-content: center;
      text-align: center;
      padding: 50px 0 0 0;
  }

   .img-pontos-mobile img {
      top: 0;
      left: 0;
      text-align: center;
      padding-bottom: 20px;
      width: 320px;
   }

   /* SECTION PONTOS */

   #bloco-pontos {
      display: none;
   }

   #bloco-pontos-mobile {
      display: block;
      min-height: 18%;
      overflow: scroll;
      background-color: #EFEFEF;
   }

   #bloco-pontos-mobile .area {
      padding-top: 90px;
      padding-bottom: 20px;
   }

   .box-categoria {
      max-width: 300px;
      margin: 0 auto;
      border: none;
   }

   .accordion {
      margin: auto;
      width: 300px;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: space-between;
      padding-bottom: 120px;
   }
   .accordion input {
      display: none;
   }
   
   .box {
      position: relative;
      width: 300px;
      height: auto;
      transition: all .15s ease-in-out;
      border: 3px solid #035287;
      border-radius: 25px;
      margin: 10px 0;
   }
   .box::before {
       content: '';
       position: absolute;
       display: block;
       top: 0;
       bottom: 0;
       left: 0;
       right: 0;
       pointer-events: none;
   }
   .box-title {
      width: 100%;
      padding: 20px 0px 20px 0;
      display: inline-block;
      cursor: pointer;
      -webkit-touch-callout: none;-webkit-user-select: none;-khtml-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;
   }
   .box-content {
      width: 100%;
      padding: 10px 0 30px 0;
      margin: 0 auto;
      text-align: center;
      display: none;
      transition: all .15s ease-in-out;
   }
   .box-close {
      position: absolute;
      height: 150px;
      width: 100%;
      top: 0;
      left: 0;
      cursor: pointer;
      display: none;
   }
   
   .img-categoria-mobile {
      padding-top: 10px;
      text-align: center;
      margin: 0 auto;
   }
   
   .titulo-categoria {
      text-align: center;
   }

   .expandir {
      font-size: 12px;
      line-height: 20px;
      text-align: center;
      color: #005B94;
      font-weight: bold;
      text-decoration: underline;
   }
   
   .icon-pontos {
      text-align: center;
      margin: 0 auto;
   }
   
   .texto-pontos {
      font-size: 18px;
      line-height: 24px;
      text-align: center;
      color:#585858;
   }
   
   input:checked + .box {
      width: 300px;
      height: auto;
      margin: 10px 0;
      border: 3px solid #035287;
      border-radius: 25px;
   }
   input:checked + .box .box-content,
   input:checked + .box .box-close {
      display: inline-block;
      transition: all .15s ease-in-out;
   }

   /* SECTION FIRST */

   #first-text {
      height: 560px;
   }

   #first-text .paragraph {
      width: 570px;
   }

   /* SECTION SECOND TEXT */

   #second-text {
      height: 620px;
   }

   #second-text .paragraph-2 {
      width: 425px;
   }

   /* SECTION LEGAL TEXT */

   #legal-text {
      height: 215px;
   }

   #legal-text .text-legal {
      width: 641px;
   }

   #footer {
      padding-bottom: 0;
   }

  #footer section {
      width: 100%;
      min-height: auto;
   }

  #footer .container {
      flex-direction: column;
      max-width: 620px;
   }

   #footer .footer-logo {
      margin-bottom: 30px;
   }

   #footer .footer-logo div {
      margin: 0 auto 8px;
      width: 130px;
   }

   #footer .footer-logo p {
      display: none;
   }

   #footer .footer-institutional {
      display: none;
   }

   #footer section h5 {
      font-size: 17px;
   }

   #footer .footer-contact h5 {
      display: none;
   }

   #footer .footer-contact {
      text-align: center;
   }

   #footer .footer-contact h6 {
      font-size: 16px;
   }

   #footer .footer-contact span {
      display: none;
   }

   #footer .footer-contact div::after {
      width: 100%;
   }

   #footer .footer-contact-email {
      display: none;
   }

   #footer .footer-social {
      margin-top: 30px;
      padding-bottom: 20px;
   }

   #footer .footer-social h5, #footer .footer-social ul {
      text-align: center;
   }

   #footer .footer-social ul::after {
      width: 100%;
      margin-top: 20px;
   }

   #footer .footer-social .app-stores .app-store-wrap, #footer .mobile-only {
      text-align: center;
   }

   #footer .footer-social .app-stores::after {
      width: 100%;
   } 

   #footer .footer-social .app-stores .app-store-wrap, #footer .mobile-only {
      text-align: center;
   }

}

@media only screen and (min-width: 640px) {

   #footer .mobile-only {
      display: none;
   }

   #footer .mobile-only {
      display: none;
   }

}

@media only screen and (max-width: 426px) {

   .wrapper {
      max-width: 370px;
   }

   .nav-items li {
      margin-right: 10px;
   }

   .nav-items li:nth-last-of-type(3) {
      display: none;
   }

   .nav-btn-cadastrar {
      font-size: 11px;
      width: 190px;
   }

  .nav-btn-comprovante {
      font-size: 10px;
      width: 190px;
   }

   /*INDICADOR*/

   .indicador-position {
      width: 290px;
   }

   /* SECTION BANNER */

   #banner {
      background-image: url(../img/banner-mobile.png);
      height: 635px;
   }

   /* SECTION ACELERE */

   #acelere-pontos {
      height: 2880px;
   }

   #acelere-pontos .title {
      width: 320px;
      padding: 50px 0 30px 0;
   }

   .title h1 {
      font-size: 28px;
      max-width: 320px;
   }

   /* SECTION TRANSACTIONAL */

   #transactional-text .title-1 {
      width: 300px;
   }

   .title-1 h1 {
      font-size: 24px;
      line-height: 30px;
   }

   #bloco-pontos-mobile {
      display: block;
      min-height: 16%;
      overflow: scroll;
      background-color: #EFEFEF;
   }

   /* SECTION FIRST */

   #first-text {
      height: 900px;
   }

   #first-text .paragraph {
      padding: 30px 0 20px 0;
      width: 300px;
   }

   .paragraph h1 {
      font-size: 24px;
      line-height: 30px;
   }

   .paragraph p {
      font-size: 22px;
      line-height: 38px;
   }

   .img-top img {
      margin: 0;
      text-align: center;
      max-width: 300px;
   }

   #second-text {
      height: 570px;
   }

   #second-text .paragraph-2 {
      width: 300px;
   }

   .paragraph-2 p {
      font-size: 20px;
      line-height: 36px;
      color: #FFFFFF;
      font-weight: bold;
      padding-top: 10px;
   }

   /* SECTION LEGAL TEXT */

   #legal-text {
      height: 245px;
   }

   #legal-text .text-legal {
      width: 300px;
   }

   .text-legal p {
      font-size: 11px;
      line-height: 21px;
      color:#FFFFFF;
   }

   #footer .container {
      max-width: 370px;
   }

   #footer .footer-social .app-stores a img {
      width: 38%;
   }

   #footer .politics {
      font-size: 13px;
      margin-top: 16px;
   }

   #footer .politics::after {
      width: 100%;
      height: 1px;
      display: block;
      margin-top: 16px;
      margin-bottom: 16px;
   }

   #footer .footer-contact div::after, #footer .politics::after {
      background-color: #E5E5E5;
      content: "";
      opacity: .1;
   }

   #footer .address h4, #footer .address span {
      font-size: 12px;
      line-height: 26px;
      margin-bottom: .5rem;
   }

}

@media only screen and (max-width: 376px) {

   .wrapper {
      max-width: 340px;
   }

   .nav-btn-cadastrar {
      width: 150px;
   }

  .nav-btn-comprovante {
      width: 150px;
   }

   /*INDICADOR*/

   .indicador-position {
      width: 230px;
   }

   /* SECTION BANNER */

   #banner {
      height: 555px;
   }

   #footer .container {
      max-width: 310px;
   }
   
}

@media only screen and (max-width: 326px) {

   .wrapper {
      max-width: 300px;
   }

   .nav-btn-cadastrar {
      width: 150px;
   }

  .nav-btn-comprovante {
      width: 150px;
   }

   /*INDICADOR*/

   .indicador-position {
      width: 170px;
   }

   /* SECTION BANNER */

   #banner {
      height: 480px;
   }

   /* SECTION ACELERE */

   #acelere-pontos {
      height: 2850px;
   }

   #acelere-pontos .title {
      width: 320px;
      padding: 50px 0 30px 0;
   }

   .title h1 {
      font-size: 24px;
      max-width: 300px;
   }

   #bloco-pontos-mobile {
      min-height: 17%;
  }

   /* SECTION FIRST */

   #first-text {
      height: 620px;
   }

   #first-text .paragraph {
      padding: 30px 0 20px 0;
      width: 280px;
   }

   .paragraph h1 {
      font-size: 21px;
      line-height: 27px;
   }

   .paragraph p {
      font-size: 20px;
      line-height: 26px;
      padding-top: 30px;
   }

   .cta-metas {
      padding: 30px 0 50px 0;
      text-align: center;
   }

   .btn-metas {
      height: 56px;
      width: 290px;
   }

   .img-top img {
      margin: 0;
      text-align: center;
      max-width: 280px;
   }

   #footer .container {
      max-width: 310px;
   }
   
}