/**
* ESTILOS GERAIS
*/

:root {
   --vermelho: #FD151B;
   --amarelo: #F3CA40;
   --azul: #2D61C8;
   --verde: #119DA4;
   --primary-color: #7dc771; /* Verde da marca */
   --primary-dark: #6ab05f;
   --text-color: #404040;    /* Cinza escuro da marca */
   --light-bg: #f9f9f9;
   --white: #ffffff;
   --spacing: 80px;
}


* {
   margin: 0;
   padding: 0;
   box-sizing: border-box;
}

body {
   font-family: "Roboto", sans-serif;
   color: var(--text-color);
   line-height: 1.6;
   background-color: var(--white);
}

h1, h2, h3 {
   font-family: "Poppins", sans-serif;
   font-weight: 700;
   margin-bottom: 20px;
}

a {
   text-decoration: none;
}

ul {
   list-style: none;
}

img {
   width: 100%;
   height: auto;
}

.container {
   max-width: 1140px;
   margin: 0 auto;
   padding: 0 20px;
}

.spam1 {
   width: 85%;
   max-width: var(--max-width);
   min-width: 280px;
   margin: 0 auto;
   padding: 0;
}
.spam2 {
   width: 74%;
   max-width: 1066px;
   min-width: 280px;
   margin: 0 auto;
   padding: 0;
}
.spam3 {
   width: 56%;
   max-width: 808px;
   min-width: 280px;
   margin: 0 auto;
   padding: 0;
}


/* --- BOTÕES (CTA) --- */
.btn {
   display: inline-block;
   padding: 15px 30px;
   border-radius: 50px;
   font-weight: 600;
   text-transform: uppercase;
   letter-spacing: .5px;
   transition: all .3s ease;
   cursor: pointer;
   text-align: center;
}

.btn-primary {
   background-color: var(--primary-color);
   color: white;
   box-shadow: 0 4px 15px rgba(125, 199, 113, .4);
}
.btn-primary:hover {
   background-color: var(--primary-dark);
   transform: translateY(-2px);
}
.btn-primary:disabled {
   cursor: no-drop;
   background-color: #b0c4de;
   box-shadow: 0 4px 15px #b0c4de;
}

.btn-whatsapp {
   background-color: #25d366;
   color: white;
}
.btn-whatsapp:hover {
   background-color: #1ebe57;
}


/* --- HEADER --- */
header {
   background: var(--white);
   box-shadow: 0 2px 10px rgba(0,0,0,.05);
   padding: 20px 0;
   position: sticky;
   top: 0;
   z-index: 1000;
}

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

.logo {
   font-size: 1.5rem;
   font-weight: 700;
   color: var(--text-color);
}

.logo span {
   color: var(--primary-color);
}

/* --- HERO SECTION --- */
.hero {
   padding: 100px 0;
   /*background: linear-gradient(135deg, #f0fdf4 0%, #ffffff 100%);*/
   background-color: #cbffdf;
   background-image: url(../imagens/consultor_web_2_1920x1047.webp);
   background-size: cover;
   background-repeat: no-repeat;
   background-position: 50% 83px;
   background-blend-mode: multiply;
   background-attachment: fixed;
   text-align: center;
}

.hero h1 {
   max-width: 800px;
   margin: 0 auto 20px;
   color: #fff;
   font-size: 2.5rem;
   line-height: 1.2;
   text-shadow: 1px 1px 3px #282828;
}

.hero p {
   font-size: 1.2rem;
   color: #fff;
   max-width: 700px;
   margin: 0 auto 40px;
   text-shadow: 1px 1px 3px #282828;
}


.hero .btn {
   display: flex;
   align-items: center;
}
.hero .fas {
   font-size: 1.3rem;
   margin-right: 5px;
}
.hero .fab {
   font-size: 1.6rem;
   margin-right: 5px;
}

.badge-xp {
   display: inline-block;
   background: #e1f5fe;
   color: #0277bd;
   padding: 5px 15px;
   border-radius: 20px;
   font-size: .9rem;
   font-weight: 600;
   margin-bottom: 20px;
}

/* --- DOR & SOLUÇÃO --- */
.section-padding {
   padding: var(--spacing) 0;
}

.bg-light {
   background-color: var(--light-bg);
}

.grid-3 {
   display: grid;
   grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
   gap: 40px;
   margin-top: 50px;
}

.card {
   background: white;
   padding: 40px;
   border-radius: 12px;
   box-shadow: 0 5px 20px rgba(0,0,0,.05);
   transition: transform .3s;
}

.card:hover {
   transform: translateY(-5px);
}

.card-icon {
   font-size: 3rem;
   color: var(--primary-color);
   margin-bottom: 20px;
}

/* --- PROVA SOCIAL --- */
.testimonial-grid {
   display: grid;
   grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
   gap: 30px;
}

.testimonial {
   background: #fff;
   padding: 30px;
   border-left: 4px solid var(--primary-color);
   border-radius: 4px;
}

.stars {
   color: #f1c40f;
   margin-top: 10px;
}

.client-name {
   font-weight: 700;
   margin-top: 15px;
   display: block;
}

/* --- LISTA DE SERVIÇOS --- */
.check-list li {
   margin-bottom: 15px;
   display: flex;
   align-items: center;
   font-size: 1.1rem;
}

.check-list i {
   color: var(--primary-color);
   margin-right: 15px;
   font-size: 1.2rem;
}

/* --- FORMULÁRIO --- */
.form-box {
   background: white;
   padding: 40px;
   border-radius: 15px;
   box-shadow: 0 10px 30px rgba(0,0,0,.1);
   max-width: 600px;
   margin: 0 auto;
}

.form-group {
   margin-bottom: 20px;
}

.form-group label {
   display: block;
   margin-bottom: 8px;
   font-weight: 500;
}

.form-control {
   width: 100%;
   padding: 12px;
   border: 1px solid #ddd;
   border-radius: 8px;
   font-family: inherit;
}

/* --- FOOTER --- */
footer {
   padding: 50px 0;
   text-align: center;
   font-size: .9rem;
   color: #afafaf;
   background: var(--text-color);
}

footer a {
   color: white;
}


#overflow {
   position: fixed;
   z-index: 2000;
   display: none;
   top: 0;
   right: 0;
   bottom: 0;
   left: 0;
   background-color: var(--amarelo);
}
#overflow.ok {
   background-color: var(--verde);
}
#overflow.erro {
   background-color: var(--vermelho);
}
#overflow #banner,
#overflow #bannerOK,
#overflow #bannerERRO {
   position: absolute;
   top: 50%;
   left: 50%;
   padding: 50px;
   transform: translate(-50%, -50%);
   background-color: #fff;
}
#overflow #bannerOK,
#overflow #bannerERRO {
   display: none;
}


#botao_whatsapp {
   position: fixed;
   bottom: 20px;
   right: 20px;
   width: 160px;
   height: auto;
}
#botao_whatsapp img {
   box-shadow: 0 4px 15px 0px rgb(85 167 72 / 40%);
   border-radius: 10px;
}


/* RESPONSIVO */
@media (max-width: 768px) {
   .hero h1 {
      font-size: 2rem;
   }

   .nav-flex {
      flex-direction: column;
      gap: 15px;
   }

   #overflow #banner,
   #overflow #bannerOK,
   #overflow #bannerERRO {
      padding: 50px 18px;
   }

   #botao_whatsapp {
      width: 70px;
   }
   #botao_whatsapp img {
      width: 68px;
      aspect-ratio: 1/1;
      object-fit: cover;
      object-view-box: inset(2% 75% 0% 3%);
      object-position: 0% 50%;
   }

}
