:root{
   --verde:#2A5F7F;
   --verde-bg:#d8e7e7;
   --azul:#2A5F7F;
   --cinza:#636363;
   --bg-cinza:#e3e4e4;
   --bg:#f4f7fb;

}


*{
   font-family: 'Lufga', sans-serif;
   padding: 0;
   margin: 0;
}


.conversion *{
   pointer-events: none;
}

a{
   text-decoration: none;
   color: inherit;

}

a *{
   pointer-events: none;
}

.safe{
   max-width: 1080px;
   margin: 0 auto;
}

header{
background-color: var(--verde);
}

.top-header{
   padding: 5px 0px;
}

.top-header div{
   display: flex;
    justify-content: end;
}

.top-header a{
   display: flex;
   align-items: center;
   color: white;
   margin-right: 10px;
  
}

.top-header a p{
   margin-left: 15px;
}

.inner-nav{
   display: flex;
   align-content: center;
   align-items: center;
   margin: 0 auto;
   justify-content: space-between;
}

.main-logo img{
   width: 230px;
}

nav{
   display: flex;
   justify-content: space-between;
   align-items: center;
}

nav p{
   margin-left: 20px;
   color: white;
   cursor: pointer;
}

nav a:first-of-type{
   color: white;
}

nav a:last-of-type{
   margin-left: 20px;
}

nav button{
   display: none;
}

.cta-btn{
   display: flex;
}

.cta-btn *{
   color: #3DC14E;
}

.wpp-fst{
   background-color: white;
   color: var(--verde);
   border-radius: 75px;
   padding: 10px 20px;
   display: flex;
   align-items: center;
}

.wpp-fst img{
   margin-right: 10px;
}

.wpp-decor{
 background-color: white;
 color: #3DC14E;
 border-radius: 50px;
 width: 58px;
 height: 58px;
 text-align: center;
 font-size: 25px;
 line-height: 53px;
}

.hamb-con{
   display: none;
}

.hero-con{
   overflow: hidden;
   height: 400px;
   background-color: var(--verde-bg);
}

.swiper-slide{
   background-repeat: no-repeat;
   background-position: right;
}

.inner-slide{
   width: 1080px;
   margin: 0 auto;
   display: flex;
   align-items: center;
   height: 100%;
}

.page-hero .inner-slide{
   padding: 77px 0px;
}

.hero-text{
   width: 450px;
   color: var(--cinza);
   margin-right: auto;
}

.hero-text p{
   margin: 20px 0px;
}

.hero-text h1{
   border-bottom: 2px solid var(--verde);
   color: var(--verde);
}

.hero-video{
   width: 48%;
   position: relative;
}

.hero-video video{
   width: 100%;
   height: 100%;
   outline: none;
   cursor: pointer;
}

video:focus{
   outline: none;
}

.video-ended-con{
   position: absolute;
   top: 0;
   right: 0;
   left: 0;
   width:initial;
   height: 100%;
   background-color:rgba(17, 125, 162, 0.89);
   pointer-events: none;
   display: none;
}

.video-ended-con .cta{
   pointer-events: initial;
   display: block;
   margin: 0 auto;
   margin-top: 15px;
}

.difs-con{
   display: flex;
   margin-top: 20px;
   justify-content: space-between;
}

.dif{
   background-color: var(--azul);
   padding: 10px 20px;
   color: white;
   border-radius: 20px;
   width: 200px;
   box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;
}

.banners-con{
   margin-top: 30px;
   display: flex;
   justify-content: space-between;
}

.banners-con a{
   display: inline-block;
}

.banners-con img{
   width: 500px;
   height: auto;
   pointer-events: none;
}

.empresas-con{
   margin: 40px auto;
}

.conv-esteira{
   background-color: white;
   padding: 10px 0;
   border-radius: 10px;
   margin-top: 15px;
   overflow: hidden;
   box-shadow: 0px 5px 8px -3px #d5d5d5;
   white-space: nowrap;
}

@keyframes marquis{

   0%{
      transform: translateX(0%);
   }
   100%{
      transform: translateX(-100%);
   }


}

.conv-marquee{
   animation: marquis 30s linear infinite;
   display: inline-block;
}

.solucs-con{
   margin: 0px auto;
   position: relative;
   margin-top: 30px;
}

.inner-solucs{
   position: relative;
}

.soluc img{
   width: initial;
    box-sizing: border-box;
    height: 110px;
    border-radius: 10px;
    overflow: hidden;
}

.info-con{
   margin: 20px auto;
   background-color: var(--verde-bg);
   border-radius: 10px;
   padding: 30px 20px;
}

.inner-text{
   margin-top: 20px;
   display: flex;

}

.info-con h1{
   text-align: center;
   color: var(--azul);
}

.info-text{
   margin-right: 50px;
   text-align: justify;
   width: 500px;
}

.info-bullet{

}

.inner-solucs > p{
   text-align: center;
   margin-top: 35px;
}

.solucs-con h1{
   text-align: center;
   position: relative;
   color: var(--verde);
}

.solucs-con h1:after{
   content: "";
   height: 6px;
   background-color: var(--verde);
   position: absolute;
   width: 100px;
   bottom: -20px;
   left: 0;
   right: 0;
   margin: 0 auto;
}

.solucs-con p{
   text-align: center;
   width: 400px;
   margin: 0 auto;
   margin-top: 30px;
}

.solucs, .prods{
   margin: 0 auto;
   display: flex;
   flex-wrap: wrap;
   justify-content: center;
   width: 620px;
   margin-top: 20px;
}

.soluc{
   background-color: var(--bg-cinza);
   padding: 20px 10px;
   color: var(--azul);
   border-radius: 20px;
   margin-bottom: 30px;
   width: 250px;
   height: 250px;

   margin-right: 30px;
   box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;

}

.soluc small{
   color: var(--cinza);
}

.more-btn{
      background-color: var(--verde);
    border-radius: 5px;
    color: white;
    display: inline-block;
    width: inherit;
    padding: 5px 15px;
    box-sizing: border-box;
    text-align: center;
   }

.detalhe-bg{
background-image: url('images/detalhe_soco2.jpg');
   background-repeat: no-repeat;
    height: 400px;
    background-size: contain;
    position: absolute;
    background-position: 0px 7px;
    bottom: 0;
    width: 100%;
    z-index: -1;

}

.prods-con{
   background-color: var(--verde-bg);
   padding-top: 30px;
}

.prods-con h1{
   text-align: center;
   position: relative;
   color: var(--azul);
}

.prods-con h1:after{
   content: "";
   height: 6px;
   background-color: var(--azul);
   position: absolute;
   width: 100px;
   bottom: -20px;
   left: 0;
   right: 0;
   margin: 0 auto;
}

.prods{
   margin-top: 60px;
   flex-wrap: wrap;
   display: flex;
   width: 860px;
}

.serv-info{
   display: flex;
   margin-top: 50px;
   text-align: justify;
}

.serv-text .cta-btn{
   margin: 20px 0px;
}

.prod{
   width:234px;
   height: 106px;
   background-color: #d2d2d2;
   padding: 20px 10px;
   border-radius: 20px;
   display: flex;
   margin-right: 20px;
   margin-bottom: 40px;
}

.prod > img{
   margin-right: 20px;
   position: relative;
   top: -44px;
   height: 150px;
   width: auto;
}

.prod-info{
   color: var(--azul);
}

.prod-cta{
   background-color: var(--verde);
   margin-top: 8px;
   color:white;
   padding: 10px 20px;
   display: inline-block;
   border-radius: 40px;
}

.prod-cta img{
   vertical-align: middle;

}

.about-con{
   border-radius: 20px;
   background-color: var(--bg-cinza);
   padding: 30px 15px;
    margin-top: 30px;
   color: var(--cinza);
}

.about-con > div{

   display: flex;
   justify-content: center;
}

.about-text{
   width: 450px;
   text-align: justify;
   margin-right: 30px;
}

.about-text a{
   display: flex;
   align-items: center;
}

.about-text a img{
   margin-right: 10px;
}


.about-img img{
   width: 400px;
}

.certs-con{
   display: flex;
   margin-top: 20px;
   flex-wrap: wrap;
}

.cert{
   background-color: white;
   padding: 10px;
   border-radius: 5px;
   margin-right: 20px;
   width: 280px;
   margin-bottom: 20px;
   text-align: center;
}

.serv-imgs img{
      height: 350px;
      margin-right: 40px;
      box-sizing: border-box;
}

.ultimate-cta-con{
   border-radius: 10px;
   margin-top: 50px;
   background-color:#34495e;
   padding: 30px;
   color: white;
   text-align: center;
}

.ultimate-cta-con > .cta-btn{
   justify-content: center;
   margin-top: 20px;
}

.faq-con{
   margin-top: 30px;

}

.faq-con h1{
   color: var(--verde);
   text-align: center;
   position: relative;
}

.faq-con h1:after{
    content: "";
   height: 4px;
   background-color: var(--verde);
   position: absolute;
   width: 100px;
   bottom: -20px;
   left: 0;
   right: 0;
   margin: 0 auto;
}

.perguntas{
   margin-top: 40px;
}

.duvida{
   box-shadow: 4px 10px 29px rgb(185 185 185 / 65%);
   border-radius: 10px;
   padding: 15px 44px;
   color: var(--verde);
   position: relative;
   width: 450px;
   cursor: pointer;
   margin:0 auto ;
   margin-bottom: 20px;
   background-color: var(--bg-cinza);
}


.duvida strong:after{
   content:attr(data-pos);
   position: absolute;
   right: 10px;
   top: 20%;
   background-color: var(--bg-cinza);
   color: var(--verde);
   width: 30px;
   height: 30px;
   border-radius: 100%;
   text-align: center;
   line-height: 1.7;
}

.resposta{
   display: none;
   margin-top: 10px;
}

.floating-elements{
   position: fixed;
   z-index:9;
   bottom:50px;
   right: 27px;
   text-align: right;
   bottom:90px;
   
}

.wpp-floating{
  cursor: pointer;
  /*box-shadow:0px 5px 15px -3px #00000078;*/
  box-shadow:0 0 0 0 rgba(122, 237, 148, 0.29);
  overflow: hidden;
  border-radius: 100%;
  width:57px;
  height: 57px;
  display: block;
  pointer-events: initial;
  animation: pulso 1.25s infinite cubic-bezier(0.16, 0, 0, 1);
}

.wpp-floating img{
   display: block;
   margin:-2px -3px;
}

@keyframes pulso{
   100%{
      box-shadow:0 0 0 45px rgba(232, 76, 61, 0);
   }
}

footer{
   background-color:var(--verde);
   padding: 10px 0px;
   color:white;
   margin-top: 30px;
   text-align: center;
}

.footer-line{
   padding: 20px 0px;
   border-bottom: 1px solid white;
}

.vela:last-of-type{
      height: 408px;
    width: 290px;
    box-sizing: border-box;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
   }


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

   .inner-nav{
      padding-left: 10px;   
      padding-right: 10px;   

   }

   nav button{
      display: initial;
      margin-top: 20px;
      border-radius: 5px;
      padding: 10px 25px;
      background-color:#e74c3c;
      color: white;
      border: none;
      cursor: pointer;
      margin-bottom: 5px;
   }

   nav a:first-of-type{
      display: block;
        color: var(--verde);
        margin-top: 20px;
   }

   nav p{
      margin-bottom: 15px;
      margin-left: 0px;
      margin-top: 20px;
      color: var(--verde);
   }

   nav .cta-btn{
      justify-content: center;
      
   }

   nav small, nav strong{
      color: white !important;
   }

   nav .cta-btn .wpp-fst, nav .cta-btn .wpp-decor{
      color: white;
      background-color: var(--verde);
   }

   nav .cta-btn .wpp-fst img{
      filter: brightness(0) invert(1);
   }

   .hamb-con{
   border-radius: 10px;
   border: 1px solid white;
   width: 40px;
   height: 40px;
   cursor:pointer;
   padding: 8px;
   flex-direction: column;
   box-sizing: border-box;
   justify-content: space-between;
   display: initial;
}

.hamb-con p{
   background-color: white;
   height: 2px;
   width: initial;
   margin-bottom: 7px;
}

   nav{
      display: none;
      position: fixed;
      top: 0;
      background-color: white;
      height: 100%;
      z-index: 10;
      left: 0;
      text-align: center;
      width: 100%;
      padding: 0px 20px;
      box-sizing: border-box;
      flex-direction: column;

   }

   .hero-text{
      width: initial;
   }

   .inner-slide{
      padding: 10px;
      width: initial;
      background: rgba(0,0,0,0.6);
   }

   .hero-text{
      color: white;
      padding: 0px 10px;
   }

   .hero-text h1{
      color: white;
   }

   .difs-con{
      flex-direction: column;
      justify-content: center;
      align-items: center;
   }

   .dif{
      margin-bottom: 20px;
   }

   .banners-con{
      display: flex;
      flex-direction: column;

   }

   .banners-con img{
      width: 100%;
      
   }

   .solucs{
      width: initial;
      justify-content: space-around;
   }

   .solucs-con p{
      width: initial;
   }

   .soluc{
      
      margin-right: 0;
   }

   .serv-info{
      margin: 0 5px;
      flex-direction: column;
   }

   .serv-imgs img{
      height: auto;
      width: 100%;
      box-sizing: border-box;
      margin-right: 0px;
   }

   .cta-btn{
      justify-content: center;
   }

   .serv-imgs img{
      width: 100%;
   }

   .serv-text .cta-btn{
      justify-content: center;
   }

   .about-con > div{
         flex-direction: column;
         align-items: center;
   }

   .certs-con{
      justify-content: center;
   }

   .detalhe-bg{
      background-position: bottom;
   }

   .prods{
      width: initial;
   }

   .about-con{
      flex-direction: column;
      margin: 30px 5px;
   }

   .about-text{
      width: initial;
      margin-right: 0;
   }

   .about-img img{
      width: 100%;
      margin-top: 20px;
   }

   .faq-con{
      margin:30px 5px
   }

   .duvida{
      width: initial;
   }


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

   .info-text{
      width: initial;
      margin-right: 0px;
   }

   .info-bullet{
      margin-top: 20px;
   }

   .inner-tecs{
      flex-direction: column;
   }

   .limpeza-difs{
      width: initial !important;
   }

   .top-header{
      padding:5px 10px
   }

   .desc-con{
      flex-direction: column;
   }

   .desc{
      width: initial !important;
      margin: 0px 10px;
   }

   .prods-velas{
      justify-content: center !important;
      align-items: center;
   }


}