/* fim.css — Quem faz + FAQ + CTA final + Footer */

/* ── Quem faz ── */
.qf { background: #fff; text-align: center; }
.qf__inner { max-width: 780px; margin-inline: auto; }
.qf .kicker { display: inline-block; }
.qf h2 { margin: var(--sp-3) 0 var(--sp-6); }
.qf p { color: var(--c-text-muted); font-size: var(--fs-17); line-height: 1.7; }
.qf p + p { margin-top: var(--sp-5); }
.qf__elo {
  margin-top: var(--sp-8);
  padding: var(--sp-6);
  border-left: 3px solid var(--c-green);
  background: var(--c-green-25);
  border-radius: 0 var(--r-md) var(--r-md) 0;
  text-align: left;
  font-size: var(--fs-18);
  color: var(--c-dark);
  line-height: 1.6;
}
.qf__elo b { color: var(--c-green-2); }

/* ── FAQ ── */
.faq { background: var(--c-green-25); }
.faq__header { text-align: center; margin-bottom: var(--sp-10); }
.faq__header .kicker { display: inline-block; }
.faq__header h2 { margin-top: var(--sp-3); }
.faq__list { max-width: 780px; margin-inline: auto; display: flex; flex-direction: column; gap: 12px; }
.faq__item { background: #fff; border: 1px solid var(--c-green-100); border-radius: var(--r-md); overflow: hidden; }
.faq__q {
  width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 16px;
  padding: 20px 24px; text-align: left;
  font-family: var(--font-display); font-size: var(--fs-17); font-weight: var(--fw-semi); color: var(--c-dark);
}
.faq__q i { flex-shrink: 0; color: var(--c-green); font-size: 18px; transition: transform 0.3s var(--ease); }
.faq__item.is-open .faq__q i { transform: rotate(180deg); }
.faq__a { max-height: 0; overflow: hidden; transition: max-height 0.35s var(--ease); }
.faq__a-inner { padding: 0 24px 22px; color: var(--c-text-muted); line-height: 1.6; font-size: var(--fs-15); }

/* ── CTA final ── */
.cta { position: relative; overflow: hidden; background: var(--c-dark); color: #fff; text-align: center; }
.cta__glow { position: absolute; width: 620px; height: 620px; top: 50%; left: 50%; transform: translate(-50%,-50%); background: radial-gradient(circle, rgba(74,158,110,0.2), transparent 68%); filter: blur(70px); pointer-events: none; }
.cta__inner { position: relative; z-index: 1; max-width: 680px; margin-inline: auto; }
.cta h2 { color: #fff; margin-bottom: var(--sp-4); }
.cta p { color: var(--c-green-100); font-size: var(--fs-18); line-height: 1.6; margin-bottom: var(--sp-8); }
.cta__btn { display: inline-flex; align-items: center; gap: 10px; padding: 17px 36px; border-radius: var(--r); background: var(--c-green); color: #fff; font-size: var(--fs-17); font-weight: var(--fw-semi); box-shadow: var(--sh-green); transition: transform 0.2s var(--ease); }
.cta__btn:hover { transform: translateY(-2px); }
.cta__btn i { font-size: 22px; }
.cta__bullets { display: flex; flex-wrap: wrap; justify-content: center; gap: 24px; margin-top: var(--sp-6); color: var(--c-green-soft); font-size: var(--fs-14); }
.cta__bullets span { display: inline-flex; align-items: center; gap: 7px; }
.cta__bullets i { color: var(--c-green); }

/* ── Footer ── */
.footer { background: var(--c-dark-2); color: var(--c-green-100); padding: var(--sp-16) 0 var(--sp-8); }
.footer__top { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: var(--sp-8); padding-bottom: var(--sp-8); border-bottom: 1px solid rgba(159,217,184,0.12); }
.footer__brand { max-width: 320px; }
.footer__logo { height: 30px; width: auto; margin-bottom: var(--sp-3); }
.footer__brand p { color: var(--c-green-soft); font-size: var(--fs-14); line-height: 1.5; }
.footer__nav { display: flex; gap: var(--sp-6); flex-wrap: wrap; }
.footer__nav a { color: var(--c-green-100); font-size: var(--fs-15); transition: color 0.2s; }
.footer__nav a:hover { color: #fff; }
.footer__social a { display: inline-flex; align-items: center; gap: 8px; color: var(--c-green-soft); font-family: var(--font-mono); font-size: var(--fs-14); }
.footer__social i { font-size: 20px; }
.footer__bottom { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--sp-3); padding-top: var(--sp-6); font-size: var(--fs-13); color: var(--c-text-faint); }
.footer__bottom a { color: var(--c-green-soft); }

@media (max-width: 620px) {
  .footer__top { flex-direction: column; gap: var(--sp-6); }
}
