*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:Arial, Helvetica, sans-serif;
}

body{
    background:#0b1e26;
    color:white;
}

html {
	scroll-behavior: smooth;
}

.hero{
    position:relative;
    min-height:100vh;
    background:url("../img/background.png") right center/cover no-repeat;
    display:grid;
    align-items:center;
}

.overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(90deg,#06252e 0%, rgba(6,37,46,0.9) 40%, rgba(6,37,46,0.2) 100%);
}

.container{
    width:90%;
    max-width:1200px;
    margin:auto;
    position:relative;
    z-index:2;
}

.logo img{
    width:320px;
    margin-bottom:60px;
}

.grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:40px;
}

.content{
    max-width:520px;
}

.content p span {
    color:#6BE10B;
    font-weight: 700;
}

h1{
    font-size:56px;
    line-height:1.1;
    margin-bottom:20px;
}

h1 span{
    color:#6BE10B;
    border-bottom:4px solid #6BE10B;
}

p{
    font-size:18px;
    opacity:0.9;
    margin-bottom:30px;
}

.btn-simular{
    display:inline-block;
    background:#7CE112;
    color:#083028;
    padding:16px 28px;
    font-size:18px;
    font-weight:600;
    border-radius:8px;
    text-decoration:none;
    animation:pulse 2s infinite;
    transition:0.3s;
    text-align: center;
}

@keyframes pulse{
    0%{transform:scale(1)}
    50%{transform:scale(1.05)}
    100%{transform:scale(1)}
}

.stats{
    display:flex;
    align-items:center;
    gap:40px;
    margin-top:40px;
}

.stat h2{
    font-size:36px;
}

.stat p{
    font-size:14px;
    opacity:0.8;
}

.divider{
    width:1px;
    height:50px;
    background:#ccc;
    opacity:0.3;
}

.saiba-mais{
    position:absolute;
    bottom:30px;
    left:50%;
    transform:translateX(-50%);
    background:rgba(255,255,255,0.08);
    padding:12px 20px;
    border-radius:30px;
    font-size:14px;
    text-decoration:none;
    color:white;

    animation:float 2s ease-in-out infinite;
}

@keyframes float{
    0%{transform:translate(-50%,0)}
    50%{transform:translate(-50%,10px)}
    100%{transform:translate(-50%,0)}
}


/* MODAL */

.modal{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,0.7);
    display:flex;
    align-items:center;
    justify-content:center;

    opacity:0;
    pointer-events:none;
    transition:0.3s;
}

.modal.active{
    opacity:1;
    pointer-events:auto;
    z-index: 1000;
}

.modal-content{
    background:white;
    color:#222;
    padding:40px;
    max-width:450px;
    border-radius:10px;
    text-align:center;
}

.modal-content h3{
    margin-bottom:20px;
}

.modal-content button{
    margin-top:20px;
    padding:10px 20px;
    border:none;
    background:#7CE112;
    cursor:pointer;
    border-radius:6px;
}


/* RESPONSIVO */

@media(max-width:900px){

    .grid{
        grid-template-columns:1fr;
    }

    h1{
        font-size:40px;
    }

    .hero{
        background:url("../img/background-mobile.png") right center/cover no-repeat;
        background-position:center;
    }
}

/* =====================
	SECTION PORQUE
	================ */
    .why{
        padding:100px 5%;
        background:#f2f4f7;
    }

    .why-container{
        max-width:1200px;
        margin:auto;
        display:grid;
        grid-template-columns:1.2fr 1fr;
        gap:60px;
        align-items:center;
    }

    .why-left h2{
        font-size:40px;
        color:#1c3b57;
        margin-bottom:20px;
    }

    .why-left h2 span{
        color:#7CE112;
    }

    .subtitle{
        color:#56697a;
        margin-bottom:40px;
        max-width:550px;
    }

    .cards{
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:25px;
    }

    .card{
        background:white;
        padding:30px;
        border-radius:14px;
        box-shadow:0 10px 25px rgba(0,0,0,0.05);

        opacity:0;
        transform:translateY(40px);
        transition:0.6s;
    }

    .card.show{
        opacity:1;
        transform:translateY(0);
    }

    .icon{
        font-size:28px;
        margin-bottom:10px;
    }

    .card h3{
        margin-bottom:10px;
        color:#1c3b57;
    }

    .card p{
        font-size:14px;
        color:#6b7f90;
    }

    .compare-card{
        background:#2c4c6e;
        padding:40px;
        border-radius:20px;
        color:white;
    }

    .compare-card h3{
        text-align:center;
        margin-bottom:30px;
    }

    .rate{
        margin-bottom:25px;
    }

    .rate-label{
        display:flex;
        justify-content:space-between;
        margin-bottom:8px;
    }

    .bar{
        height:10px;
        background:rgba(255,255,255,0.2);
        border-radius:20px;
        overflow:hidden;
    }

    .fill{
        height:100%;
        width:0%;
        border-radius:20px;
        transition:1.5s ease;
    }

    .fast{
        background:#7CE112;
    }

    .personal{
        background:#9fb3c8;
    }

    .cheque{
        background:#ff5c5c;
    }

    .garantia {
        background:#eaeaea;
        border-radius: 10px;
        margin-top: 25px;
        padding: 15px;
        color: #2f5474;
    }

/* ====================
        ESTILIZANDO BOTÃO
        ============= */
@import url('https://fonts.googleapis.com/css?family=Poppins:900i');

.cta {
    display: flex;
    padding: 10px 45px;
    width: 320px;
    text-decoration: none;
    font-family: 'Poppins', sans-serif;
    font-size: 26px;
    color: white;
    background: #7CE112;
    transition: 1s;
    box-shadow: 6px 6px 0 black;
    transform: skewX(-15deg);
}

.cta:focus {
   outline: none; 
}

.cta:hover {
    transition: 0.5s;
    box-shadow: 10px 10px 0 #FBC638;
}

.cta span:nth-child(2) {
    transition: 0.5s;
    margin-right: 0px;
}

.cta:hover  span:nth-child(2) {
    transition: 0.5s;
    margin-right: 45px;
}

  span {
    transform: skewX(15deg) 
  }

  span:nth-child(2) {
    width: 20px;
    margin-left: 30px;
    position: relative;
    top: 12%;
  }
  
/**************SVG****************/

path.one {
    transition: 0.4s;
    transform: translateX(-60%);
}

path.two {
    transition: 0.5s;
    transform: translateX(-30%);
}

.cta:hover path.three {
    animation: color_anim 1s infinite 0.2s;
}

.cta:hover path.one {
    transform: translateX(0%);
    animation: color_anim 1s infinite 0.6s;
}

.cta:hover path.two {
    transform: translateX(0%);
    animation: color_anim 1s infinite 0.4s;
}

/* SVG animations */

@keyframes color_anim {
    0% {
        fill: white;
    }
    50% {
        fill: #FBC638;
    }
    100% {
        fill: white;
    }
}


/* RESPONSIVO */

@media(max-width:900px){

    .why-container{
        grid-template-columns:1fr;
    }

    .cards{
        grid-template-columns:1fr;
    }

}

/* =========================
	SECTION JORNADA SIMPLES
	============== */
	.journey{

        background:#2f5474;
        color:white;
        padding:100px 5%;

    }

    .journey-container{

        max-width:1200px;
        margin:auto;

    }

    .journey-header{

        text-align:center;
        margin-bottom:70px;

    }

    .journey-header h2{

        font-size:40px;
        margin-bottom:10px;

    }

    .journey-header p{

        opacity:0.8;

    }

    .journey-grid{

        display:grid;
        grid-template-columns:1.2fr 1fr;
        gap:60px;
        align-items:center;

    }

    .steps{

        display:grid;
        grid-template-columns:1fr 1fr;
        gap:50px;

    }

    .step{

        position:relative;
        opacity:0;
        transform:translateY(40px);
        transition:0.6s;

    }

    .step.show{

        opacity:1;
        transform:translateY(0);

    }

    .number{

        position:absolute;
        top:-30px;
        left:-10px;

        font-size:90px;
        font-weight:bold;

        color:rgba(255,255,255,0.08);

    }

    .line{

        width:40px;
        height:4px;
        background:#7CE112;
        margin-bottom:10px;

        transform:scaleX(0);
        transform-origin:left;
        transition:0.5s;

    }

    .step.show .line{

        transform:scaleX(1);

    }

    .step h3{

        margin-bottom:10px;

    }

    .step p{

        font-size:14px;
        opacity:0.8;

    }

    .image-area img{
        width:300px;
        border-radius:12px;
        box-shadow:0 20px 40px rgba(0,0,0,0.35);
        transition: transform 0.4s ease;
    }

    .image-area img:hover{
        transform:scale(1.03);
    }

/* RESPONSIVO */

@media(max-width:900px){

    .journey-grid{
        grid-template-columns:1fr;
    }

    .steps{
        grid-template-columns:1fr;
    }

    .number{
        font-size:70px;
    }

    .image-area img{
        width:100%;
    }

}

/* ========================
	SECTION SIMULADOR
	================ */
    .simulador{
        padding:100px 5%;
        background:#f5f7fa;
    }

    .sim-container{
        max-width:1100px;
        margin:auto;
    }

    .sim-container h2{
        font-size:38px;
        text-align:center;
        margin-bottom:10px;
        color:#1c3b57;
    }

    .sim-sub{
        text-align:center;
        margin-bottom:50px;
        color:#6b7f90;
    }

    .sim-grid{
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:40px;
    }

    .sim-box{
        background:white;
        color: #2f5474;
        padding:35px;
        border-radius:12px;
        box-shadow:0 10px 25px rgba(0,0,0,0.05);
    }

    .sim-box label{

        display:block;
        margin-top:15px;
        margin-bottom:5px;
        font-weight:600;

    }

    .sim-box input{

        width:100%;
        padding:12px;
        border-radius:6px;
        border:1px solid #ddd;

    }

    .range-box{

        margin-top:10px;

    }

    #prazo{

        width:100%;

    }

    #prazoMeses{

        /*display:block;*/
        margin-top:5px;
        font-weight:bold;
        text-align: right;

    }

    #maximo{

        display:block;
        margin-top:5px;
        color:#6b7f90;
        font-size:13px;

    }

    .resultado{

        background:#2f5474;
        color:white;
        padding:40px;
        border-radius:12px;
        text-align:center;

        display:flex;
        flex-direction:column;
        justify-content:center;

    }

    .valorParcela{

        font-size:36px;
        font-weight:bold;
        margin:20px 0;
        color:#7CE112;

    }

    .taxa{

        opacity:0.8;

    }

    @media(max-width:900px){

        .sim-grid{

            grid-template-columns:1fr;

        }

    }

/* BTN SOLICITAR ANÁLISE */
.btn-analise{
    display:inline-block;
    margin-top:25px;
    background:#7CE112;
    color:#083028;
    padding:14px 26px;
    font-weight:bold;
    font-size:16px;
    border-radius:8px;
    text-decoration:none;
    transition:0.3s;
    opacity:0.4;
    pointer-events:none;
}

.btn-analise.ativo{
    opacity:1;
    pointer-events:auto;
}

.btn-analise.ativo:hover{
    transform:scale(1.05);
    box-shadow:0 10px 20px rgba(0,0,0,0.25);
}

.btn-analise:hover{
    transform:scale(1.05);
    box-shadow:0 10px 20px rgba(0,0,0,0.25);
}

/* =====================
   FORMULÁRIO SOLICITAR ANÁLISE
   ===================== */
   .formulario {
    display: none; /* inicialmente escondido */
    padding: 50px 5%;
    background: #e9f1f7;
    border-radius: 12px;
    margin-top: 40px;
    color: #1c3b57;
    font-family: Arial, Helvetica, sans-serif;
}

.formulario .form-container {
    max-width: 800px;
    margin: auto;
}

/* VALORES FIXOS */
.valores-fixos {
    background: #2f5474;
    color: white;
    padding: 20px;
    border-radius: 10px;
    margin-bottom: 30px;
}

.valores-fixos h3 {
    margin-bottom: 15px;
    font-size: 24px;
}

.valores-fixos p {
    margin: 5px 0;
    font-size: 16px;
}

/* CAMPOS DO FORMULÁRIO */
.formulario form label {
    display: block;
    margin-top: 15px;
    margin-bottom: 5px;
    font-weight: 600;
    font-size: 14px;
    color: #1c3b57;
}

.formulario form input,
.formulario form select {
    width: 100%;
    padding: 12px;
    border-radius: 6px;
    border: 1px solid #ccc;
    font-size: 14px;
    margin-bottom: 10px;
    outline: none;
    transition: 0.3s;
}

.formulario form input:focus,
.formulario form select:focus {
    border-color: #7CE112;
    box-shadow: 0 0 5px rgba(124,225,18,0.5);
}

/* UPLOAD */
.formulario form input[type="file"] {
    padding: 8px;
}

/* CHECKBOX LGPD */
.formulario form div {
    margin: 20px 0;
    font-size: 14px;
}

.formulario form div label {
    font-weight: 400;
}

.formulario form div a {
    color: #7CE112;
    text-decoration: underline;
}

/* BOTÃO ENVIAR */
#btnEnviar {
    display: none;
    background: #7CE112;
    color: #083028;
    padding: 14px 26px;
    border: none;
    border-radius: 8px;
    font-weight: bold;
    cursor: pointer;
    transition: 0.3s;
    margin-top: 10px;
}

#btnEnviar:hover {
    transform: scale(1.05);
    box-shadow: 0 10px 20px rgba(0,0,0,0.25);
}

/* RESPONSIVO */
@media (max-width: 900px) {
    .formulario {
        padding: 30px 5%;
    }

    .valores-fixos h3 {
        font-size: 20px;
    }

    .valores-fixos p {
        font-size: 14px;
    }

    #btnEnviar {
        width: 100%;
        padding: 16px;
    }
}

/* =====================
   CAIXA DE ACEITE LGPD
   ===================== */
   .formulario .lgpd-box {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    background: #f0f4f8; /* fundo leve */
    padding: 15px 20px;
    border-radius: 12px;
    border: 1px solid #ccc;
    box-shadow: 0 4px 10px rgba(0,0,0,0.08);
    transition: 0.3s;
    font-size: 14px;
}

.formulario .lgpd-box:hover {
    border-color: #7CE112;
    box-shadow: 0 6px 14px rgba(0,0,0,0.15);
}

.formulario .lgpd-box input[type="checkbox"] {
    margin-top: 3px;
    width: 18px;
    height: 18px;
    accent-color: #7CE112; /* cor verde do layout */
    cursor: pointer;
    flex-shrink: 0;
}

.formulario .lgpd-box label {
    line-height: 1.4;
    color: #1c3b57;
}

.formulario .lgpd-box a {
    color: #7CE112;
    text-decoration: underline;
}

/* =====================
   FAQ Home Equity
   ===================== */
   .faq-item {
      background: #37668a;
      margin-bottom: 12px;
      border-radius: 8px;
      overflow: hidden;
      text-align: left;
  }

  .faq-question {
      width: 100%;
      padding: 15px 20px;
      background: none;
      border: none;
      color: white;
      font-size: 16px;
      font-weight: 600;
      cursor: pointer;
      display: flex;
      justify-content: space-between;
      align-items: center;
      transition: background 0.3s;
  }

  .faq-question:hover {
      background: rgba(255,255,255,0.05);
  }

  .faq-answer {
      max-height: 0;
      padding: 0 20px;
      overflow: hidden;
      background: #2f5474;
      transition: max-height 0.3s ease, padding 0.3s ease;
      font-size: 14px;
      line-height: 1.5;
      color: #e0e8f0;
  }

  .faq-item.active .faq-answer {
      padding: 12px 20px;
      max-height: 500px; /* suficiente para texto médio */
      color: #2f5474;
      background: #fff;
  }

  .faq-toggle {
      font-size: 18px;
      transition: transform 0.3s;
  }

  .faq-item.active .faq-toggle {
      transform: rotate(45deg);
  }

.fa-home-equity {
    width: 300px;
    text-decoration: none;
    color: #2f5474;
    background: #fff;
    padding: 15px;
    border-radius: 8px;
    margin-top: 20px;
}

/* BOTÃO WHATSAPP */
.btn-whatsapp:hover {
  transform: scale(1.05);
  box-shadow: 0 10px 20px rgba(0,0,0,0.2);
}

/* RESPONSIVO */
@media(max-width:900px){
  .faq-container h2 {
    font-size:24px;
}

.faq-question {
    font-size:14px;
}
.faq-answer {
    font-size:13px;
}
}

/* =================
	FOOTER
	========== */
    .footer {
       background:#f5f7fa;
       color:#2f5474;
       padding:60px 5%;
   }

   .footer a:hover {
      color: #7CE112;
      transition: 0.3s;
      text-decoration: underline;
  }

  .footer-column a {
   text-decoration:none;
   color:#2f5474;
   font-size:14px;
}

.footer-container {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 40px;
  max-width:1200px;
  margin:auto;
  display:grid;
  grid-template-columns:2fr 1fr 1fr 1fr;
  gap:40px;
  align-items:start;
}

.footer-socials a svg {
  transition: transform 0.3s;
}

.footer-socials a:hover svg {
  transform: scale(1.1);
}

/* =====================
   RESPONSIVO
   ===================== */
   @media (max-width: 1024px) {
      .footer-container {
        grid-template-columns: repeat(2, 1fr);
        gap: 30px;
    }
}

@media (max-width: 768px) {
  .footer-container {
    grid-template-columns: 1fr;
    gap: 20px;
    text-align: center;
}

.footer-socials {
    justify-content: center;
}

.footer-contact a {
    justify-content: center;
}
}

/* CSS DO MODAL PRIVACIDADE E TERMOS */
/* MODAL PADRÃO */

.modal-geral{

    position:fixed;
    top:0;
    left:0;

    width:100%;
    height:100%;

    background:rgba(0,0,0,0.6);

    display:none;

    align-items:center;
    justify-content:center;

    padding:20px;

    z-index:999;

}


/* CAIXA */

.modal-box{

    background:white;
    color:#333;

    width:100%;
    max-width:700px;

    padding:35px;

    border-radius:12px;

    line-height:1.6;

    position:relative;

    max-height:85vh;
    overflow-y:auto;

}


/* FECHAR */

.modal-fechar{

    position:absolute;
    top:12px;
    right:18px;

    font-size:28px;
    cursor:pointer;

}


/* MOBILE */

@media (max-width:768px){

    .modal-box{

        padding:25px;

    }

}

@media (max-width:480px){

    .modal-box{

        padding:20px;

    }

}

.btn-fechar-modal {
	width: 150px;
  margin-top: 20px;
  padding: 10px 20px;
  background-color: #2f5474;
  color: white;
  border: none;
  border-radius: 12px;
  cursor: pointer;
  font-size: 1.2rem;
}

.btn-fechar-modal:hover {
  background-color: #1f3a55;
}


/* =======================
    TESTIMONIALS ====== */
.testimonials-section {
    color: #2f5474;
    background: #f5f7fa;
    border-bottom: 1px solid #ccc;
    padding-bottom: 15px;
}

.testimonials-section h1 {
    text-align: center;
    font-size: 2.5rem;
    padding-top: 20px;
}

.testimonials-section h2 {
    text-align: center;
    padding-bottom: 20px;
}

.testimonial-slider {
  position: relative;
  max-width: 350px;
  margin: auto;
  height: 320px; /* 🔥 altura fixa do card */
}

/* CARD */
.testimonial-item {
  border-radius: 16px;
  overflow: hidden;
  background: #eaeaea;
  width: 100%;
  height: 100%; /* 🔥 ocupa todo o container */
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;

  display: flex;
  flex-direction: column;

  opacity: 0;
  transform: scale(0.98);
  transition: all 0.5s ease;
}

.testimonial-item.active {
  opacity: 1;
  transform: scale(1);
  z-index: 1;
}

/* TOPO */
.testimonial-top {
  background: linear-gradient(135deg, #7b2ff7, #9b59b6);
  padding: 25px 20px 50px;
  color: white;

  min-height: 140px; /* 🔥 padroniza altura */
  display: flex;
  align-items: center;
  justify-content: center;
}

.testimonial-message {
  font-size: 1.0rem;
  line-height: 1.4;
}

/* AVATAR */
.testimonial-avatar {
  margin-top: -40px; /* 🔥 puxa pra cima */
  z-index: 2;
}

.testimonial-avatar img {
  width: 75px;
  height: 75px;
  border-radius: 50%;
  border: 4px solid white;
  object-fit: cover;
  box-shadow: 0 6px 15px rgba(0,0,0,0.15);
}

/* BASE */
.testimonial-bottom {
  padding: 10px 20px 20px;
  flex-grow: 1; /* 🔥 ocupa o restante */
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.testimonial-name {
  margin: 10px 0 5px;
  font-size: 1rem;
}

.testimonial-stars {
  margin-top: 8px;
  color: #f1c40f;
  font-size: 1.1rem;
}

/* ====================
    SECTION SEO
    =========== */
/* ===== SEO SECTION (ISOLADA) ===== */

.seo-content {
  padding: 80px 5%;
  background: #f5f7fa;
  border-top: 1px solid #ccc;
}

.seo-container {
  max-width: 900px;
  margin: auto;
}

.seo-title {
  font-size: 28px;
  color: #0a2540;
  margin-bottom: 20px;
}

.seo-subtitle {
  font-size: 20px;
  margin-top: 30px;
  color: #1a3c6e;
}

.seo-text {
    color: #2f5474;
  font-size: 16px;
  line-height: 1.6;
  margin: 15px 0;
}

.seo-highlight-box {
  background: #006db2;
  padding: 20px;
  border-radius: 8px;
  margin: 25px 0;
}

.seo-list {
  margin: 20px 0;
  padding-left: 20px;
}

.seo-list li {
    color: #2f5474;
  margin-bottom: 10px;
}

.seo-cta-box {
  margin-top: 40px;
  padding: 25px;
  background: #2f5474;
  color: white;
  border-radius: 10px;
  text-align: center;
}

.seo-btn {
  display: inline-block;
  margin-top: 15px;
  background: #7CE112;
  color: #083028;
  padding: 12px 25px;
  border-radius: 8px;
  text-decoration: none;
  font-weight: bold;
}

/* ===================
    whatsapp float
    ============== */
/* CONTAINER */
.whatsapp-container {
    color: #2c4c6e;
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 9999;
}

/* BOTÃO */
.whatsapp-button {
  width: 60px;
  height: 60px;

  background: #25d366;
  border-radius: 50%;

  display: flex;
  align-items: center;
  justify-content: center;

  font-size: 26px;
  color: white;

  cursor: pointer;

  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

/* HOVER */
.whatsapp-button:hover {
  transform: scale(1.1);
  box-shadow: 0 10px 25px rgba(0,0,0,0.25);
}

/* NOTIFICAÇÃO */
.notification {
  position: absolute;
  top: -5px;
  right: -5px;

  background: red;
  color: white;

  font-size: 12px;
  padding: 3px 6px;
  border-radius: 50%;
}

/* CHAT BOX */
.whatsapp-chat {
  position: absolute;
  bottom: 80px;
  right: 0;

  width: 300px;

  background: white;
  border-radius: 12px;

  box-shadow: 0 10px 30px rgba(0,0,0,0.2);

  opacity: 0;
  transform: translateY(20px);
  pointer-events: none;

  transition: all 0.3s ease;
}

/* QUANDO ABERTO */
.whatsapp-container.active .whatsapp-chat {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

/* HEADER */
.chat-header {
  background: #25d366;
  color: white;
  cursor: pointer;

  padding: 12px;
  font-weight: bold;

  display: flex;
  justify-content: space-between;
  align-items: center;

  border-radius: 12px 12px 0 0;
}

/* BODY */
.chat-body {
  padding: 15px;
  font-size: 14px;
}

/* BOTÃO CHAT */
.chat-button {
  display: block;
  text-align: center;

  background: #25d366;
  color: white;

  padding: 12px;
  text-decoration: none;
  font-weight: bold;

  border-radius: 0 0 12px 12px;
}

/* =================
    FAQ PÁGINA
    ============== */
/* RESET */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: Arial, sans-serif;
}

/* HERO */
.faq-hero {
  height: 100vh;
  background: url('../img/faq-home-equity.png') center/cover no-repeat;
  position: relative;
  display: flex;
  justify-content: center;
}

/* overlay ocupa toda a tela */
.faq-hero-overlay {
  width: 100%;
  height: 100%;
  position: relative;
}

/* TÍTULO CENTRALIZADO VERTICAL */
.faq-hero h1 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
   /* Fundo branco com 50% de transparência */
  background-color: rgba(255, 255, 255, 0.5);
  padding: 15px 0;
  text-align: center;
  color: #2f5474;
  font-size: 28px;
  width: 90%;
}

/* BOTÃO FIXO NA PARTE DE BAIXO */
.faq-btn {
  position: absolute;
  bottom: 60px;
  left: 50%;
  transform: translateX(-50%);

  padding: 12px 28px;
  border: none;
  background: #00c853;
  color: #fff;
  font-size: 16px;
  border-radius: 6px;
  cursor: pointer;
}

.faq-btn:hover {
  background: #00a844;
}

/* FAQ SECTION */
/* RESET */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: Arial, sans-serif;
}

/* HERO */
.faq-hero {
  height: 100vh;
  background: url('../img/faq-home-equity.png') center/cover no-repeat;
  position: relative;
  display: flex;
  justify-content: center;
}

/* overlay ocupa toda a tela */
.faq-hero-overlay {
  width: 100%;
  height: 100%;
  position: relative;
}

/* TÍTULO CENTRALIZADO VERTICAL */
.faq-hero h1 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  font-size: 28px;
  width: 90%;
  line-height: 1.4;
}

/* BOTÃO FIXO NA PARTE DE BAIXO */
.faq-btn {
  position: absolute;
  bottom: 40px;
  left: 50%;
  transform: translateX(-50%);
  padding: 14px 32px;
  border: none;
  background: #00c853;
  color: #fff;
  font-size: 16px;
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.3s ease;
}

.faq-btn:hover {
  background: #00a844;
  transform: translateX(-50%) scale(1.05);
}

/* FAQ SECTION */
.faq-container {
  padding: 60px 20px;
  max-width: 800px;
  margin: auto;
  background-color: #dee2e3;
}

.faq-container h2 {
  text-align: center;
  margin-bottom: 40px;
  font-size: 26px;
  color: #2f5474;
}

/* FAQ ITEM */
.faq-item {
  margin-bottom: 10px;
  border-bottom: 1px solid #e5e5e5;
}

/* PERGUNTA */
.faq-question {
  width: 100%;
  text-align: left;
  padding: 18px 15px;
  font-size: 16px;
  background: none;
  border: none;
  cursor: pointer;
  font-weight: bold;
  position: relative;
}

/* HOVER */
.faq-question:hover {
  background: #f9f9f9;
  color: #2f5474;
}

/* RESPOSTA (ANIMAÇÃO FLUIDA REAL) */
/*.faq-answer {
  height: 0;
  overflow: hidden;
  transition: height 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  background-color: #fff;
}*/

.faq-answer p {
  padding: 15px;
  color: #555;
  line-height: 1.6;
  background-color: #fff;
}

/* MOBILE */
@media (max-width: 768px) {
  .faq-hero {
    background: url('../img/faq-home-equity-mobile.png') center/cover no-repeat;
  }

  .faq-hero h1 {
    font-size: 22px;
  }

  .faq-btn {
    font-size: 14px;
    padding: 12px 24px;
  }

  .faq-container {
    padding: 40px 15px;
  }
}

/* ÍCONE + / - */
.faq-question::before,
.faq-question::after {
  content: '';
  position: absolute;
  right: 15px;
  top: 50%;
  width: 14px;
  height: 2px;
  background: #c9c9c9;
  transform: translateY(-50%);
  transition: transform 0.3s ease;
}

/* Linha vertical (forma o +) */
.faq-question::after {
  transform: translateY(-50%) rotate(90deg);
}

/* Quando ativo vira - */
.faq-question.active::after {
  transform: translateY(-50%) rotate(0deg);
}

/* =======================
    BOTÃO VOLTAR AO TOPO FAQ
    =============== */
/* CONTAINER */
.fab-container {
  position: fixed;
  bottom: 5px;
  right: 20px;
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  z-index: 999;
}

/* BOTÃO PRINCIPAL */
.fab-main {
  width: 55px;
  height: 55px;
  border-radius: 50%;
  background: #00c853;
  color: #fff;
  font-size: 28px;
  border: none;
  cursor: pointer;

  display: flex;
  align-items: center;
  justify-content: center;

  box-shadow: 0 4px 12px rgba(0,0,0,0.3);
  transition: 0.3s;

  animation: pulse 1.8s infinite;
}

.fab-main.active {
  transform: rotate(45deg);
  animation: none;
}

/* ITENS */
.fab-item {
  margin-bottom: 10px;
  padding: 10px 16px;
  background: #fff;
  color: #333;
  text-decoration: none;
  border-radius: 20px;
  font-size: 14px;

  box-shadow: 0 4px 10px rgba(0,0,0,0.2);

  opacity: 0;
  transform: translateY(20px);
  pointer-events: none;
  transition: 0.3s;
}

/* ATIVO */
.fab-container.active .fab-item {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
  cursor: pointer;
}

/* HOVER */
.fab-item:hover {
  background: #f5f5f5;
}

/* PULSE */
@keyframes pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(0, 200, 83, 0.7);
  }
  70% {
    box-shadow: 0 0 0 15px rgba(0, 200, 83, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(0, 200, 83, 0);
  }
}


#formValorImovel, #formValorEmprestimo, #formPrazo {
    font-weight: 700;
    color: yellow;
}
#formParcela {
    font-weight: 700;
    background-color: #fff;
    color: #2f5474;
    padding: 10px;
    border-radius: 6px;
}