Seu evento corporativo pode ser apenas mais um… ou uma experiência memorável.
Eu sou um botão
<div class="form-wrapper">

  <!-- PROGRESS -->
  <div class="progress-wrapper">
    <div class="progress-header">
      <span id="stepText">Etapa 1 de 5</span>
      <button id="backBtn">Voltar</button>
    </div>

    <div class="progress-bar">
      <div class="progress" id="progress"></div>
    </div>
  </div>

  <!-- STEP 1 -->
  <div class="step active" data-step="1">
    <h2>Qual tipo de evento você está planejando?</h2>
    <div class="options">
      <button class="option" data-field="tipo_evento" data-value="confraternizacao">Confraternização</button>
      <button class="option" data-field="tipo_evento" data-value="corporativo">Evento corporativo</button>
      <button class="option" data-field="tipo_evento" data-value="happy_hour">Happy hour de equipe</button>
      <button class="option" data-field="tipo_evento" data-value="outro">Outro</button>
    </div>
  </div>

  <!-- STEP 2 -->
  <div class="step" data-step="2">
    <h2>Quantas pessoas você pretende reunir?</h2>
    <div class="options">
      <button class="option" data-field="pessoas" data-value="ate20">Até 20</button>
      <button class="option" data-field="pessoas" data-value="20a50">20 a 50</button>
      <button class="option" data-field="pessoas" data-value="50a100">50 a 100</button>
      <button class="option" data-field="pessoas" data-value="100+">100+</button>
    </div>
  </div>

  <!-- STEP 3 -->
  <div class="step" data-step="3">
    <h2>Quando você pretende realizar o evento?</h2>
    <div class="options">
      <button class="option" data-field="data_evento" data-value="mes">Ainda este mês</button>
      <button class="option" data-field="data_evento" data-value="3meses">Próximos 3 meses</button>
      <button class="option" data-field="data_evento" data-value="indefinido">Sem data definida</button>
    </div>
  </div>

  <!-- STEP 4 -->
  <div class="step" data-step="4">
    <div class="cta">
      <h2>Um evento bem planejado não é apenas uma reunião.</h2>
      <p>É uma oportunidade de fortalecer conexões, engajar pessoas e gerar resultados.</p>
      <button class="cta-btn" id="goForm">Quero receber uma proposta personalizada</button>
    </div>
  </div>

  <!-- STEP 5 -->
  <div class="step" data-step="5">
    <h2>Receba uma proposta sob medida</h2>

    <form id="finalForm">

      <div class="field">
        <label>Nome</label>
        <input type="text" required>
      </div>

      <div class="field">
        <label>Email</label>
        <input type="email" required>
      </div>

      <div class="field">
        <label>Empresa</label>
        <input type="text">
      </div>

      <div class="field">
        <label>Cargo</label>
        <input type="text">
      </div>

      <div class="field full">
        <label>WhatsApp</label>
        <input type="text" id="whatsapp" placeholder="(00) 00000-0000">
      </div>

      <button type="submit">Receber proposta</button>

      <p class="form-note">
        Retornamos em até 24h com uma proposta personalizada
      </p>

    </form>
  </div>

</div>
body {
  margin: 0;
  font-family: Arial;
  background: #000;
  color: #fff;
}

/* CONTAINER */
.form-wrapper {
  max-width: 800px;
  margin: auto;
  padding: 40px 20px;
}

/* TITULO */
h2 {
  text-align: center;
  margin: 60px 0;
  line-height: 1.3;
}

/* OPTIONS */
.options {
  display: grid;
  gap: 12px;
}

.option {
  padding: 18px;
  border-radius: 12px;
  border: 1px solid #333;
  background: #111;
  color: #fff;
  text-align: left;
  cursor: pointer;
  transition: 0.2s;
}

.option:hover {
  background: #1a1a1a;
}

.option.active {
  border-color: #c9a35b;
  background: rgba(201,163,91,0.15);
}

/* STEPS */
.step {
  display: none;
}

.step.active {
  display: block;
}

/* PROGRESS */
.progress-wrapper {
  margin-bottom: 80px;
}

.progress-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 6px;
}

.progress-bar {
  height: 4px;
  background: #222;
  border-radius: 999px;
  overflow: hidden;
}

.progress {
  height: 100%;
  width: 0%;
  background: #c9a35b;
  transition: 0.3s;
}

#backBtn {
  background: none;
  border: none;
  color: #aaa;
  font-size: 14px;
  cursor: pointer;
}

#backBtn:hover {
  color: #fff;
}

#backBtn.hidden {
  visibility: hidden;
}

/* CTA */
.cta {
  text-align: center;
}

.cta p {
  color: #aaa;
  margin: 20px 0;
}

.cta-btn {
  background: #c9a35b;
  border: none;
  padding: 15px 25px;
  border-radius: 10px;
  cursor: pointer;
}

/* FORM GRID */
form {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 15px;
  margin-bottom: 100px;
}

/* campos */
.field {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

label {
  font-size: 14px;
  color: #ccc;
}

/* inputs */
input {
  padding: 2px;
  border-radius: 10px;
  border: 1px solid rgba(217,217,217,0.25);
  background: #1a1a1a;
  color: #fff;
  width: 100%;
}

#whatsapp::placeholder {
padding-left: 20px;
}

/* full width */
.field.full {
  grid-column: 1 / -1;
}

/* botão */
form button {
  grid-column: 1 / -1;
  background: #c9a35b;
  border: none;
  padding: 16px;
  border-radius: 10px;
  cursor: pointer;
  text-align: center;
  font-size: 16px;
}

/* texto */
.form-note {
  grid-column: 1 / -1;
  text-align: center;
  font-size: 13px;
  color: #aaa;
  margin-top: 5px;
}

/* ========================= */
/* 📱 RESPONSIVIDADE */
/* ========================= */


/* tablets */
@media (max-width: 768px) {

  .form-wrapper {
    padding: 30px 15px;
  }

  h2 {
    font-size: 22px;
    margin: 40px 0;
  }

}

/* mobile */
@media (max-width: 480px) {

  h2 {
    font-size: 20px;
    margin: 30px 0;
  }

  .option {
    padding: 16px;
    font-size: 15px;
  }

  form {
    grid-template-columns: 1fr;
  }

  .progress-header span {
    font-size: 13px;
  }

}

/* mobile pequeno */
@media (max-width: 360px) {

  h2 {
    font-size: 18px;
  }

  .option {
    font-size: 14px;
    padding: 14px;
  }

  form button {
    font-size: 14px;
    padding: 14px;
  }

}
let currentStep = 1;
const totalSteps = 5;

const data = {};

const steps = document.querySelectorAll(".step");
const progress = document.getElementById("progress");
const stepText = document.getElementById("stepText");
const backBtn = document.getElementById("backBtn");

function updateUI() {
  steps.forEach(step => step.classList.remove("active"));
  document.querySelector(`[data-step="${currentStep}"]`).classList.add("active");

  progress.style.width = ((currentStep - 1) / (totalSteps - 1)) * 100 + "%";
  stepText.innerText = `Etapa ${currentStep} de ${totalSteps}`;

  if (currentStep === 1) {
    backBtn.classList.add("hidden");
  } else {
    backBtn.classList.remove("hidden");
  }
}

function nextStep() {
  if (currentStep < totalSteps) {
    currentStep++;
    updateUI();
  }
}

function prevStep() {
  if (currentStep > 1) {
    currentStep--;
    updateUI();
  }
}

backBtn.addEventListener("click", prevStep);

/* opções */
document.querySelectorAll(".option").forEach(btn => {
  btn.addEventListener("click", () => {

    const field = btn.dataset.field;
    const value = btn.dataset.value;

    data[field] = value;

    btn.parentElement.querySelectorAll(".option").forEach(b => b.classList.remove("active"));
    btn.classList.add("active");

    setTimeout(nextStep, 300);
  });
});

/* CTA */
document.getElementById("goForm").addEventListener("click", nextStep);

/* máscara whatsapp */
const whatsappInput = document.getElementById("whatsapp");

whatsappInput.addEventListener("input", function(e) {
  let value = e.target.value.replace(/\D/g, "");

  if (value.length > 11) value = value.slice(0, 11);

  value = value.replace(/^(\d{2})(\d)/g, "($1) $2");
  value = value.replace(/(\d{5})(\d)/, "$1-$2");

  e.target.value = value;
});

/* submit */
document.getElementById("finalForm").addEventListener("submit", (e) => {
  e.preventDefault();

  console.log("Dados completos:", data);

  alert("Form enviado!");
});
Qual tipo de evento você está planejando?
Quantas pessoas você pretende reunir?
Quando você pretende realizar o evento?
Escolha uma de nossas casas
Receba uma proposta sob medida
Retornamos em até 24h com uma proposta personalizada