/* =========================
   Variáveis & Resets leves
   ========================= */
:root{
  --green: #00C307;
  --green-2: #00FF00;
  --green-dark: #00c853;     /* usada nas seções novas */
  --accent: #00c853;
  --txt: #6b6660;
  --txt-strong: #191C21;
  --txt-dark: #0f1516;
  --muted:#555;
  --white:#fff;
  --bg-dark:#191C21;
  --bg-soft:#f5f5ff;
  --shadow: 0 6px 18px rgba(0,0,0,.06);
  --shadow-lg: 0 10px 24px rgba(0,200,83,.15);
  --ff-base:"Open Sans",sans-serif;
  --ff-title:"Montserrat",sans-serif;
  --ff-ui:"Poppins",sans-serif;
}

/* Reduz animações para quem prefere menos movimento */
@media (prefers-reduced-motion: reduce){
  *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* ========= Base ========= */
body{font-family:var(--ff-base);color:var(--txt)}
a{color:var(--green);text-decoration:none}
a:hover{color:var(--txt);text-decoration:none}
h1,h2,h3,h4,h5,h6{font-family:var(--ff-title)}
.hidden{display:none!important}
.rotate{transition:transform .3s ease;transform:rotate(180deg)}

/* ========= Preloader (mantido) ========= */
#preloader{position:fixed;inset:0;z-index:9999;overflow:hidden;background:var(--white)}
#preloader:before{
  content:"";position:fixed;top:calc(50% - 30px);left:calc(50% - 30px);
  border:6px solid var(--green-2);border-top-color:var(--green);border-radius:50%;
  width:60px;height:60px;animation:animate-preloader 1s linear infinite
}
@keyframes animate-preloader{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}

/* ========= Mídia / Modal / Cards de preço ========= */
#video-container{border-radius:10px;width:61%;height:75%}
.modal{
  position:fixed;inset:0;background-color:rgba(0,0,0,.7);
  display:flex;justify-content:center;align-items:center;
  z-index:99999;opacity:0;pointer-events:none;transition:.8s ease
}
.modal.show{opacity:1;pointer-events:auto}

.price-container{transition:.5s ease;cursor:pointer}
.price-container li,
.price-container sup,
.price-container h4 span{color:var(--txt)}
.price-container:hover{transform:scale(1.04)}

/* ========= WhatsApp floating ========= */
.whatsapp-button{
  position:fixed;right:15px;bottom:15px;z-index:996;
  width:60px;height:60px;border-radius:50px;border:0;
  background:var(--green);opacity:1;transition:transform .4s, background .4s
}
#whatsapp-button i{font-size:38px;color:#fff}
.whatsapp-button:hover{background:#229A00;color:#fff;transform:scale(1.1)}

/* ========= Header ========= */
#header{height:80px;z-index:997;transition:all .5s;background:rgba(1,55,40,.9);padding-bottom:5px}
#header.header-transparent{background:transparent}
#header.header-scrolled{background:var(--bg-dark);height:60px}
#header .logo img{max-height:70px}

/* ========= Navbar ========= */
.navbar{padding:0}
.navbar ul{margin:0;padding:0;display:flex;list-style:none;align-items:center}
.navbar li{position:relative}
.navbar a,.navbar a:focus{
  display:flex;align-items:center;justify-content:space-between;
  padding:10px 0 10px 30px;font:500 15px var(--ff-ui);
  color:rgba(255,255,255,.7);white-space:nowrap;transition:.3s
}
.navbar>ul>li>a:before{
  content:"";position:absolute;width:0;height:2px;bottom:3px;left:30px;
  background-color:var(--green);visibility:hidden;transition:all .3s ease-in-out
}
.navbar a:hover:before,.navbar li:hover>a:before,.navbar .active:before{visibility:visible;width:25px}
.navbar a:hover,.navbar .active,.navbar .active:focus,.navbar li:hover>a{color:#fff}

/* Toggle mobile acessível (sem dependências) */
.mobile-nav-toggle{display:none;border:0;background:transparent;color:#fff;font-size:28px;line-height:1}
.mobile-nav-toggle::before{content:"☰"}
.mobile-nav-toggle.is-active::before{content:"✕"}
@media (max-width:991px){
  .mobile-nav-toggle{display:block}
  .navbar ul{display:flex}
}

/* ========= Hero ========= */
.txt-animado{font-size:45px;font-weight:300;color:var(--green)}
.txt-animado span{position:relative}
.txt-animado span::before{content:"";color:var(--green);animation:palavras 20s infinite}
.txt-animado span::after{
  content:"";position:absolute;height:100%;border-left:2px solid var(--green);
  right:-10px;animation:cursor .8s infinite,digita 20s steps(15) infinite;
  width:calc(100% + 10px);background-color:var(--bg-dark)
}
@keyframes digita{
  10%,15%,30%,35%,50%,55%,70%,75%,90%,95%{width:0}
  5%,20%,25%,40%,45%,60%,65%,80%,85%{width:calc(100% + 10px)}
}
@keyframes cursor{0%{border-left:2px solid var(--bg-dark)}}
@keyframes palavras{
  0%,20%{content:"estratégica"}21%,40%{content:"instantânea"}
  41%,60%{content:"escalável"}61%,80%{content:"automatizada"}81%,100%{content:"inteligente"}
}
#hero{width:100%;position:relative;padding:120px 20px 140px 0;background-color:var(--bg-dark)}
#hero h1{margin:0 0 20px;font-size:48px;font-weight:700;line-height:56px;color:rgba(255,255,255,.9)}
#hero h2{color:rgba(255,255,255,.8);margin-bottom:40px;font-size:24px}
#hero .hero-img img{max-width:100%}
@media (max-width:991px){
  #hero{padding-top:80px}
  #hero .hero-img{text-align:center}
  #hero .hero-img img{max-width:85%}
  #hero h1{font-size:28px;line-height:32px;margin-bottom:10px}
  #hero h2{font-size:18px;line-height:24px;margin-bottom:30px}
}

/* CTA */
.btn-cta-lg{
  --h:54px;display:inline-flex;align-items:center;gap:12px;height:var(--h);
  padding:0 28px;border-radius:999px;font-weight:800;font-size:18px;letter-spacing:.2px;
  background:linear-gradient(180deg,var(--green-2),var(--green));color:var(--txt-dark);
  box-shadow:0 10px 22px rgba(0,195,7,.35);transition:transform .15s ease,box-shadow .15s ease
}
.btn-cta-lg:hover{transform:translateY(-1px);box-shadow:0 14px 26px rgba(0,195,7,.45);color:var(--txt-dark)}
.btn-cta-lg i{font-size:16px}

/* ========= Sections ========= */
section{padding:60px 0;overflow:hidden}
.section-bg{background-color:var(--bg-soft)}
.section-title{padding-bottom:40px}
.section-title p{
  margin:0;font-size:26px;font-weight:700;text-transform:uppercase;
  font-family:var(--ff-ui);color:var(--txt-strong)
}
.section-title p span{border-bottom:4px solid var(--green)}

/* ========= ABOUT (vídeo) ========= */
#about.section{padding:80px 0;background:linear-gradient(180deg,#ffffff 0%,#f9fffb 100%);overflow:hidden}
#about .about-text:first-of-type span{border-bottom:4px solid var(--accent);padding-bottom:3px}
#about .about-text:nth-of-type(2){font-size:16px;color:var(--muted);line-height:1.7;margin-bottom:25px;max-width:820px}
#about .icon-box{
  display:flex;align-items:flex-start;gap:16px;background:#fff;border-radius:16px;
  box-shadow:var(--shadow);padding:20px 24px;margin-bottom:18px;border-left:4px solid var(--accent);
  transition:transform .25s ease, box-shadow .25s ease
}
#about .icon-box:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}
#about .icon-box .icon{
  flex-shrink:0;width:56px;height:56px;border-radius:50%;
  background:radial-gradient(circle at 30% 30%,#e8ffe8 0%,#ffffff 100%);
  display:flex;align-items:center;justify-content:center;box-shadow:0 4px 10px rgba(0,0,0,.05)
}
#about .icon-box .icon i{font-size:22px;color:var(--accent)}
#about .icon-box .title{font-size:18px;font-weight:700;color:#333;margin-bottom:4px}
#about .icon-box .description{font-size:15px;color:var(--muted);line-height:1.6;margin:0}
#about .video-box{
  background:url("../img/about.webp") center/contain no-repeat;min-height:340px;position:relative
}
#about .play-btn{
  width:90px;height:90px;border-radius:50%;position:absolute;left:calc(50% - 45px);top:calc(50% - 45px);
  background:radial-gradient(var(--accent) 50%, rgba(34,154,0,.35) 52%);
  display:flex;align-items:center;justify-content:center
}
@media (max-width:991px){
  #about.section{padding:60px 0}
  #about .about-text:first-of-type{font-size:24px;text-align:center}
  #about .about-text:nth-of-type(2){text-align:center;margin-inline:auto}
  #about .icon-box{flex-direction:column;text-align:center;align-items:center}
  #about .icon-box .icon{margin-bottom:10px}
  #about .icon-box .description{text-align:center}
}

/* ========= Features (unificada) ========= */
.features .section-title{ text-align:left;margin-bottom:28px }
.features .section-title p{
  font-size:28px;font-weight:800;color:#111;text-transform:uppercase;letter-spacing:-.5px;margin:0
}
.features .section-title p::after{content:"";display:block;width:120px;height:6px;margin-top:10px;background:var(--accent);border-radius:4px}

.features .icon-box{
  display:flex;align-items:center;gap:14px;
  background:#f6f8ff;border:1px solid #eef2f6;border-radius:16px;padding:18px 20px;
  box-shadow:0 6px 16px rgba(0,0,0,.06);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease
}
.features .icon-box:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(0,200,83,.12);border-color:#e6f7ed}
.features .icon-box i{
  width:44px;height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center;
  font-size:22px;color:var(--accent);background:#eafff2;border-radius:12px
}
.features .icon-box h3{margin:0;font-size:18px;font-weight:700;color:#444;line-height:1.3}
.features .icon-box a{color:inherit;text-decoration:none;display:flex;align-items:center;gap:14px;width:100%}
@media (max-width:991px){
  .features .icon-box{padding:16px 18px}
  .features .icon-box i{width:40px;height:40px;min-width:40px;font-size:20px}
  .features .icon-box h3{font-size:17px}
}
@media (max-width:575px){
  .features .icon-box{padding:16px;border-radius:14px}
  .features .icon-box h3{font-size:16px}
}

/* ========= Parceiros / Clientes ========= */
.partners{
  background:linear-gradient(180deg,#f6fff9 0%,#eafff2 100%);
  padding:80px 0 70px;border-radius:0 0 60px 60px
}
.partners .section-title{ text-align:left; margin-bottom:50px }
.partners .section-title p{
  font-size:28px;font-weight:800;color:#111;text-transform:uppercase;letter-spacing:-.5px
}
.partners .section-title span{color:var(--accent)}
.partners .cards-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:30px;max-width:1100px;margin:0 auto;justify-items:center
}
.partners .partner-card{
  background:#fff;border-radius:22px;box-shadow:0 6px 20px rgba(0,0,0,.08);
  padding:32px 22px;text-align:center;transition:transform .3s ease, box-shadow .3s ease;
  transform:translateY(0);width:100%;max-width:320px
}
.partners .partner-card:hover{transform:translateY(-8px);box-shadow:0 10px 25px rgba(0,200,83,.15)}
.partners .partner-card .logo{
  height:90px;display:flex;align-items:center;justify-content:center;margin-bottom:18px
}
.partners .partner-card img{
  max-width:180px;max-height:100px;width:auto;height:auto;object-fit:contain;filter:saturate(1.1);
  transition:transform .25s ease
}
.partners .partner-card:hover img{transform:scale(1.05)}
.partners .partner-card p{font-size:16px;color:#555;line-height:1.6;margin:0}
.partners-cta{display:flex;justify-content:center;align-items:center;margin-top:50px}
.partners-cta .btn-cta-lg{
  background:linear-gradient(90deg,#00e676,var(--accent));color:#fff;padding:14px 36px;border-radius:50px;
  font-weight:700;font-size:18px;letter-spacing:.3px;gap:10px;box-shadow:0 8px 25px rgba(0,200,83,.25);
  transition:transform .25s ease, box-shadow .25s ease
}
.partners-cta .btn-cta-lg:hover{transform:scale(1.05);box-shadow:0 12px 30px rgba(0,200,83,.35)}
@media (max-width:992px){.partners .cards-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.partners .cards-grid{grid-template-columns:1fr}}

/* ========= Pricing ========= */
.pricing .price-col{display:flex}
.pricing .box{
  position:relative;overflow:hidden;background:#fff;border-radius:16px;
  box-shadow:0 8px 20px rgba(0,0,0,.06);padding:24px 22px;
  transition:transform .15s ease, box-shadow .15s ease
}
.pricing .box:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(0,0,0,.08)}
.pricing .box h3{
  margin:-8px -8px 18px;border-radius:12px;padding:14px 12px;background:#f5f7ff;color:#6b6b6b;
  font:700 18px var(--ff-base)
}
.pricing .box h4{font-size:42px;line-height:1.1;color:var(--green);font-weight:800;margin:0 0 6px}
.pricing .box h4 sup{font-size:20px;top:-12px;left:-2px;color:var(--green)}
.pricing .box h4 span{font-size:16px;color:#8c8c8c;font-weight:500}
.pricing .box .sub{font-weight:700;color:#00D759;margin-bottom:16px}
.pricing .box ul{list-style:none;padding:0;margin:0}
.pricing .box ul li{padding:10px 0;border-bottom:1px solid #f0f0f0;color:#444}
.pricing .box ul li:last-child{border-bottom:0}
.pricing .box ul li.muted{color:#bdbdbd;text-decoration:line-through}
.pricing .box.featured h3{background:linear-gradient(90deg,#00e676,var(--accent));color:#fff}
.pricing .box.featured{outline:2px solid rgba(0,200,83,.12)}
.pricing .box .ribbon{
  position:absolute;top:18px;right:-56px;transform:rotate(45deg);width:210px;padding:10px 0;text-align:center;
  background:#0f1516;color:#fff;font-size:14px;font-weight:800;letter-spacing:.2px;border-radius:10px;
  box-shadow:0 10px 22px rgba(0,0,0,.25);z-index:1;pointer-events:none
}
@media (max-width:992px){.pricing .box .ribbon{right:-48px;top:14px;width:190px}}
.pricing .advanced{display:none!important}
.plans-cta{display:flex;justify-content:center;align-items:center;text-align:center;margin:40px 0}
.plans-cta .btn-cta-lg{
  background:linear-gradient(90deg,#00e676,var(--accent));color:#fff;padding:12px 28px;border-radius:50px;font-weight:600;
  transition:transform .2s ease, box-shadow .2s ease;box-shadow:0 4px 10px rgba(0,200,83,.3)
}
.plans-cta .btn-cta-lg:hover{transform:scale(1.05);box-shadow:0 6px 15px rgba(0,200,83,.4)}

/* ========= FAQ ========= */
.faq .section-title{ text-align:left;margin-bottom:32px }
.faq .section-title p{
  font-size:28px;font-weight:800;color:#111;text-transform:uppercase;letter-spacing:-.5px;margin:0
}
.faq .section-title p::after{content:"";display:block;width:120px;height:6px;margin-top:10px;background:var(--accent);border-radius:4px}
.faq .faq-list{padding:0}
.faq .faq-list ul{list-style:none;padding:0;margin:0}
.faq .faq-list li{
  background:#fff;border:1px solid #eef2f6;border-radius:16px;box-shadow:var(--shadow);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;overflow:hidden
}
.faq .faq-list li+li{margin-top:16px}
.faq .faq-list li:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,200,83,.12);border-color:#e6f7ed}
.faq .faq-list a{
  display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;width:100%;
  padding:20px 22px;font:700 16px/24px var(--ff-ui);color:#0b0d0f;cursor:pointer
}
.faq .faq-list a i:first-child{
  width:36px;height:36px;border-radius:50%;background:#f0fff4;color:var(--accent);
  display:inline-flex;align-items:center;justify-content:center;font-size:18px
}
.faq .faq-list a i:last-child{transition:transform .2s ease, opacity .2s ease;font-size:18px}
.faq .faq-list a[aria-expanded="true"] i:last-child{transform:rotate(180deg)}
.faq .faq-list .collapse,.faq .faq-list .content{
  padding:0 22px 18px 72px;color:#555;font-size:15px;line-height:1.6;border-top:1px solid #f4f6fa
}

/* ========= Contact (unificado + centralizado) ========= */
.contact{
  background:linear-gradient(180deg,#ffffff 0%,#f9fffb 100%);
  padding:80px 0 70px;border-radius:0 0 60px 60px;text-align:center
}
.contact .section-title{ text-align:center;margin-bottom:32px }
.contact .section-title p{ display:inline-block;margin:0 auto 10px }
.contact .section-title p::after{ content:"";display:block;width:120px;height:6px;margin:10px auto 0;background:var(--accent);border-radius:4px }

.contact .contact-buttons{display:flex;flex-wrap:wrap;gap:18px;justify-content:center}
.contact .contact-btn{
  flex:1 1 45%;display:flex;align-items:center;justify-content:center;gap:12px;
  padding:20px 28px;border-radius:18px;font-size:18px;font-weight:700;color:#fff;text-decoration:none;
  box-shadow:var(--shadow);transition:transform .25s ease, box-shadow .25s ease;position:relative;overflow:hidden
}
.contact .contact-btn i{font-size:22px;display:flex;align-items:center;justify-content:center}
.contact .contact-btn::before{
  content:"";position:absolute;top:0;left:-75%;width:50%;height:100%;background:rgba(255,255,255,.3);
  transform:skewX(-25deg);transition:.5s
}
.contact .contact-btn:hover::before{left:125%}
.contact .contact-btn.whatsapp{background:linear-gradient(135deg,var(--accent) 0%,#00b347 100%)}
.contact .contact-btn.instagram{background:linear-gradient(135deg,#e1306c 0%,#f77737 50%,#ffdc80 100%)}
.contact .contact-btn:hover{transform:translateY(-3px);box-shadow:0 10px 22px rgba(0,200,83,.25)}
@media (max-width:768px){
  .contact{padding:60px 0 50px}
  .contact .section-title p{font-size:26px}
  .contact .contact-buttons{flex-direction:column;gap:14px}
  .contact .contact-btn{flex:1 1 100%;font-size:17px;padding:18px 22px}
}

/* ========= Footer & utilidades ========= */
#footer{background:var(--bg-dark);padding:0 0 30px;color:#fff;font-size:14px}
#footer .copyright{border-top:1px solid #7e7e7e;text-align:center;padding-top:30px}
.login{display:none}
@media (max-width:575px){
  #footer .footer-top .footer-info{margin:-20px 0 30px}
  .navbar ul{display:none}
  #video-container{width:90%;height:30%;margin-bottom:50px}
  .about{margin-top:0;padding-top:0}
  #hero h1,#hero h2{text-align:center;padding-bottom:20px}
  .about-text{text-align:center}
  .login{
    display:block;justify-content:center;align-items:center;margin-left:4rem;padding-left:5.5rem;
    font-family:var(--ff-title);font-weight:500;font-size:14px;padding:5px 15px;border-radius:50px;color:var(--txt-strong);background:var(--green-2)
  }
}
/* ===== Fale Conosco — centralizado ===== */

/* Centraliza todo o conteúdo da seção */
.contact { text-align: center; }

/* Centraliza o bloco do título */
.contact .section-title {
  text-align: center;           /* antes estava left */
  margin-bottom: 32px;
}

/* Centraliza o texto do título e o “risquinho” verde */
.contact .section-title p {
  display: inline-block;
  margin: 0 auto 10px;          /* centraliza o texto */
}
.contact .section-title p::after {
  margin-left: auto;            /* centraliza o sublinhado */
  margin-right: auto;
}

/* Centraliza os botões */
.contact .contact-buttons {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;      /* ♥ centraliza */
  gap: 18px;
}

/* Mantém proporção e legibilidade dos botões */
.btn-contact {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-weight: 700;
  font-size: 16px;
  padding: 14px 22px;
  border-radius: 12px;
  text-decoration: none;
  box-shadow: 0 5px 14px rgba(0,0,0,.08);
  transition: all .25s ease;
}
.btn-contact i { font-size: 18px; }

/* Cores (iguais às que você já usa) */
.btn-contact.whatsapp { background:#00c853; color:#fff; }
.btn-contact.whatsapp:hover { background:#00b64b; transform: translateY(-2px); }

.btn-contact.instagram {
  background: linear-gradient(90deg, #e83e75 0%, #ffb347 100%);
  color:#fff;
}
.btn-contact.instagram:hover { filter:brightness(1.05); transform: translateY(-2px); }

/* Mobile */
@media (max-width: 768px) {
  .btn-contact {
    width: 100%;
    max-width: 320px;
    font-size: 15px;
    padding: 12px 18px;
  }
  .contact .contact-buttons { gap: 14px; }
}
