/* ==========================================================================
   KAKTUS — Seção final com formulário de orçamento (envia ao WhatsApp)
   Verde de marca + card de formulário branco. Classes kk-cta / kk-form.
   ========================================================================== */

.kk-cta{position:relative;overflow:hidden;background:linear-gradient(135deg,#8fce0a 0%,#5f8f06 60%,#4c7300 100%);padding:84px 0}
.kk-cta::before{content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);
  background-size:52px 52px;mask-image:radial-gradient(ellipse 80% 80% at 30% 30%,#000 20%,transparent 70%);-webkit-mask-image:radial-gradient(ellipse 80% 80% at 30% 30%,#000 20%,transparent 70%)}
.kk-cta__grid{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;max-width:1160px;margin:0 auto}

/* ---------- coluna esquerda ---------- */
.kk-cta__title{font-family:var(--font-display);font-weight:800;font-size:clamp(30px,3.6vw,46px);line-height:1.1;letter-spacing:-.02em;color:#fff;margin:0 0 18px}
.kk-cta__text{color:rgba(255,255,255,.9);font-size:18px;line-height:1.6;margin:0 0 28px;max-width:500px}
.kk-cta__wa{
  display:inline-flex;align-items:center;gap:10px;background:#fff;color:#2b5c0e;
  font-family:var(--font-display);font-weight:700;font-size:16px;padding:15px 26px;border-radius:14px;
  transition:transform .2s,box-shadow .2s}
.kk-cta__wa:hover{transform:translateY(-2px);box-shadow:0 16px 40px rgba(0,0,0,.25)}
.kk-cta__wa:active{transform:scale(.98)}
.kk-cta__note{display:flex;align-items:center;gap:8px;color:rgba(255,255,255,.85);font-size:13.5px;margin-top:18px}

/* ---------- card do formulário ---------- */
.kk-form{background:#fff;border-radius:24px;padding:34px 32px;box-shadow:0 30px 70px rgba(11,15,7,.28)}
.kk-form__head{margin-bottom:20px}
.kk-form__head h3{font-family:var(--font-display);font-weight:800;font-size:22px;color:var(--black,#0b0f07);margin:0 0 4px}
.kk-form__head p{color:#6b7362;font-size:14px;margin:0}

.kk-form__row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.kk-field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.kk-field label{font-size:13px;font-weight:600;color:#2b3123}
.kk-field label .req{color:#c0392b}
.kk-field input,.kk-field textarea{
  font-family:var(--font-body);font-size:15px;color:var(--black,#0b0f07);
  background:#fff;border:1.5px solid #d8ddd0;border-radius:11px;padding:12px 14px;transition:border-color .2s,box-shadow .2s;width:100%}
.kk-field input::placeholder,.kk-field textarea::placeholder{color:#9aa08c}
.kk-field input:focus,.kk-field textarea:focus{outline:none;border-color:var(--green,#7db800);box-shadow:0 0 0 3px rgba(125,184,0,.18)}
.kk-field textarea{resize:vertical;min-height:82px}

/* serviços — chips selecionáveis */
.kk-form__label{display:block;font-size:13px;font-weight:600;color:#2b3123;margin:2px 0 8px}
.kk-chips{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:16px}
.kk-chip{position:relative;cursor:pointer;user-select:none}
.kk-chip input{position:absolute;opacity:0;width:0;height:0}
.kk-chip span{
  display:inline-flex;align-items:center;gap:7px;font-size:13.5px;font-weight:600;color:#3f4638;
  border:1.5px solid #d8ddd0;border-radius:999px;padding:9px 15px;transition:all .18s}
.kk-chip span::before{content:"";width:15px;height:15px;border-radius:5px;border:1.5px solid #c2c9b8;transition:all .18s;flex:0 0 auto}
.kk-chip input:checked + span{border-color:var(--green,#7db800);background:var(--green-tint,#f4fae6);color:var(--green-deep,#4c7000)}
.kk-chip input:checked + span::before{background:var(--green,#7db800);border-color:var(--green,#7db800);box-shadow:inset 0 0 0 2px #fff}
.kk-chip input:focus-visible + span{box-shadow:0 0 0 3px rgba(125,184,0,.25)}

.kk-form__submit{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;
  background:var(--green,#7db800);color:#0b0f07;font-family:var(--font-display);font-weight:700;font-size:16.5px;
  padding:15px 24px;border:none;border-radius:13px;cursor:pointer;margin-top:4px;
  transition:transform .2s,box-shadow .2s,background .2s;box-shadow:0 12px 30px rgba(125,184,0,.3)}
.kk-form__submit:hover{background:#8fce0a;transform:translateY(-2px);box-shadow:0 16px 40px rgba(125,184,0,.42)}
.kk-form__submit:active{transform:scale(.98)}
.kk-form__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.kk-form__legal{font-size:12px;color:#9aa08c;text-align:center;margin:12px 0 0}
.kk-form__status{font-size:14px;font-weight:600;color:var(--green-deep,#4c7000);text-align:center;margin:12px 0 0;display:none}
.kk-form__status.is-on{display:block}

/* ---------- reveal ---------- */
.kk-cta .kk-reveal{opacity:0;transform:translateY(16px);transition:opacity .55s cubic-bezier(.16,1,.3,1),transform .55s cubic-bezier(.16,1,.3,1)}
.kk-cta .kk-reveal.is-in{opacity:1;transform:none}

/* ============================ RESPONSIVO ============================ */
@media (max-width:900px){
  .kk-cta{padding:60px 0}
  .kk-cta__grid{grid-template-columns:1fr;gap:34px}
  .kk-cta__text{max-width:100%}
}
@media (max-width:520px){
  .kk-form{padding:26px 20px}
  .kk-form__row{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  .kk-cta .kk-reveal{opacity:1;transform:none;transition:none}
  .kk-cta__wa,.kk-form__submit{transition:none}
}
