From a88ce3e0062cdf5e82e8308ea522f0d0148d3903 Mon Sep 17 00:00:00 2001 From: "Philippe R. Bretas" Date: Thu, 23 Jul 2026 00:34:50 -0300 Subject: [PATCH 1/2] feat: new plans info --- docs/TESTES-E2E.md | 2 +- docs/WHATSAPP-MENSAGENS.md | 159 +++++++++++++++++++++++++++++++++++++ index.html | 151 ++++++++++++++++++----------------- styles/style.css | 4 +- tests/site.spec.js | 19 +++-- 5 files changed, 252 insertions(+), 83 deletions(-) create mode 100644 docs/WHATSAPP-MENSAGENS.md diff --git a/docs/TESTES-E2E.md b/docs/TESTES-E2E.md index 99cc226..5bb8b74 100644 --- a/docs/TESTES-E2E.md +++ b/docs/TESTES-E2E.md @@ -39,7 +39,7 @@ npx playwright test ### 2. Hero - [ ] Vídeo de fundo carrega e reproduz -- [ ] Botão "Saiba Mais" linka para #servicos +- [ ] Botão "Saiba Mais" linka para # - [ ] Botão "Ver Campeões" linka para #campeoes ### 3. Stats (Contadores) diff --git a/docs/WHATSAPP-MENSAGENS.md b/docs/WHATSAPP-MENSAGENS.md new file mode 100644 index 0000000..ed2e7e4 --- /dev/null +++ b/docs/WHATSAPP-MENSAGENS.md @@ -0,0 +1,159 @@ +# 📱 WhatsApp — Mensagens Padrão + +> Edite as mensagens abaixo conforme desejar. +> Após aprovar, copie o trecho HTML correspondente e cole no `index.html`. +> Número: **+55 47 99210-8650** + +--- + +## Como funciona + +O link WhatsApp segue o formato: +``` +https://wa.me/5547992108650?text=MENSAGEM_AQUI +``` +A mensagem precisa ter espaços substituídos por `%20` (encoding de URL). +Caracteres especiais como `?`, `!`, `ç`, `ã` também precisam ser codificados. +Use a ferramenta: https://www.urlencoder.org para converter o texto. + +--- + +## 1. Botão "Contratar" — Mentoria em Grupo + +**Mensagem atual:** +``` +Quero a Sessão Individual +``` + +**Mensagem sugerida:** +``` +Olá! Vi o site da Mente MX e tenho interesse na Mentoria em Grupo. +Pode me passar mais informações sobre datas, horários e como funciona? +``` + +**URL encoded:** +``` +Ol%C3%A1!%20Vi%20o%20site%20da%20Mente%20MX%20e%20tenho%20interesse%20na%20Mentoria%20em%20Grupo.%20Pode%20me%20passar%20mais%20informa%C3%A7%C3%B5es%20sobre%20datas%2C%20hor%C3%A1rios%20e%20como%20funciona%3F +``` + +**HTML pronto para colar:** +```html +Contratar +``` + +--- + +## 2. Botão "Contratar" — Pacote Família MX + +**Mensagem atual:** +``` +Quero o Plano Mensal +``` + +**Mensagem sugerida:** +``` +Olá! Tenho interesse no Pacote Família MX da Mente MX. +Pode me contar mais sobre como funciona o acompanhamento e os próximos passos para começar? +``` + +**URL encoded:** +``` +Ol%C3%A1!%20Tenho%20interesse%20no%20Pacote%20Fam%C3%ADlia%20MX%20da%20Mente%20MX.%20Pode%20me%20contar%20mais%20sobre%20como%20funciona%20o%20acompanhamento%20e%20os%20pr%C3%B3ximos%20passos%20para%20come%C3%A7ar%3F +``` + +**HTML pronto para colar:** +```html +Contratar +``` + +--- + +## 3. Botão "Contratar" — Pacote Equipe MX + +**Mensagem atual:** +``` +Quero o Programa Anual +``` + +**Mensagem sugerida:** +``` +Olá! Vi o Pacote Equipe MX no site da Mente MX e gostaria de saber mais sobre o programa para equipes. +Podemos conversar sobre como funciona o acompanhamento? +``` + +**URL encoded:** +``` +Ol%C3%A1!%20Vi%20o%20Pacote%20Equipe%20MX%20no%20site%20da%20Mente%20MX%20e%20gostaria%20de%20saber%20mais%20sobre%20o%20programa%20para%20equipes.%20Podemos%20conversar%20sobre%20como%20funciona%20o%20acompanhamento%3F +``` + +**HTML pronto para colar:** +```html +Contratar +``` + +--- + +## 4. Link WhatsApp do Menu Mobile + +**Atual:** Link simples sem mensagem pré-definida + +**Sugestão:** Manter simples ou adicionar mensagem de apresentação: +``` +Olá! Vim pelo site da Mente MX e gostaria de mais informações. +``` + +**HTML pronto para colar:** +```html +💬 WhatsApp +``` + +--- + +## 5. Formulário de Contato (sendContact) + +**Mensagem atual gerada pelo JS:** +``` +Olá! Sou {nome}, vim pelo site Mente MX e quero saber mais sobre as mentorias. +``` + +**Mensagem sugerida (mais completa):** +``` +Olá! Sou {nome}, vim pelo site da Mente MX. +Gostaria de saber mais sobre as mentorias. Aguardo retorno! +``` + +> ⚠️ Esta mensagem é gerada dinamicamente pelo JavaScript em `script.js` na função `sendContact()`. Para alterar, edite diretamente no arquivo. + +--- + +## 6. Waitlist — App Mente MX Pro (joinWaitlist) + +**Mensagem atual gerada pelo JS:** +``` +Olá! Sou {nome}, vim pelo site Mente MX e quero saber mais sobre o Aplicativo MXPilot PRO. +``` + +**Mensagem sugerida:** +``` +Olá! Sou {nome}, entrei na lista de espera do Mente MX Pro pelo site. +Mal posso esperar pelo lançamento! +``` + +> ⚠️ Esta mensagem também é gerada dinamicamente. Editar em `script.js` na função `joinWaitlist()`. + +--- + +## ✅ Checklist para aplicar + +Após revisar e editar as mensagens: + +- [ ] Aprovei a mensagem do botão "Contratar" — Mentoria em Grupo (#1) +- [ ] Aprovei a mensagem do botão "Contratar" — Pacote Família MX (#2) +- [ ] Aprovei a mensagem do botão "Contratar" — Pacote Equipe MX (#3) +- [ ] Aprovei o link do menu mobile (#4) +- [ ] Aprovei a mensagem do formulário de contato (#5) +- [ ] Aprovei a mensagem da waitlist (#6) + +--- + +> 💡 Dica: Você pode personalizar ainda mais adicionando emojis como 🏍️, 🏆, 🧠 nas mensagens para reforçar a identidade da marca. diff --git a/index.html b/index.html index f7ce8d7..766544b 100644 --- a/index.html +++ b/index.html @@ -15,8 +15,10 @@ Mente MX — Técnicas e Estratégias Mentais para Pilotos Off-Road - - + + @@ -24,7 +26,8 @@ - + @@ -35,7 +38,8 @@ - + @@ -67,21 +71,22 @@ Quero Mentoria -
+
Sobre Campeões - Serviços + Planos Mente MX Pro FAQ @@ -152,7 +157,8 @@

0

- João Carlos Emery - Head do Mente MX + João Carlos Emery - Head do Mente MX
@@ -203,7 +209,8 @@

CAMPEÕES Mentorados

- Fred Spagnol #61 - Campeão mentorado pelo Mente MX + Fred Spagnol #61 - Campeão mentorado pelo Mente MX
Campeão
@@ -219,7 +226,8 @@

Fred Spagnol #61

- Lucas Dunka #34 - Campeão mentorado pelo Mente MX + Lucas Dunka #34 - Campeão mentorado pelo Mente MX
Campeão
@@ -235,7 +243,9 @@

Lucas Dunka #34

- Garmichel Rodrigues Giehl #4 - Campeão mentorado pelo Mente MX + Garmichel Rodrigues Giehl #4 - Campeão mentorado pelo Mente MX
Campeão
@@ -264,7 +274,7 @@

ESCOLHA SEU PLANO

-
+

Mentoria em grupo

Pacote mensal de mentoria para pilotos que querem resolver um @@ -272,49 +282,46 @@

Mentoria em grupo

Consulte / pacote
    -
  • 7 mentorias de 1 hora e 30 minutos
  • +
  • 7 Encontros por vídeo chamada (2x/semana)
  • Diagnóstico mental do atleta
  • Plano de ação personalizado
  • -
  • Suporte via WhatsApp por 7 dias
  • +
  • Grupo exclusivo no WhatsApp
- Contratar + Contratar
-
🎓
-

Pacote Equipe MX

+
+

Pacote Equipe

- O programa completo para pilotos que querem competir por títulos - nacionais com suporte total. + O programa completo para equipes.

-
Consulte/ ano
+
Consulte/ pacote
  • Sessões semanais ilimitadas
  • Acompanhamento em competições
  • -
  • Curso completo de mentalidade
  • -
  • Acesso antecipado ao Mente MX Pro
  • Suporte VIP 24/7
  • -
  • Comunidade exclusiva de atletas
  • +
  • Grupo exclusivo no WhatsApp
- Contratar + Contratar
@@ -328,37 +335,16 @@

MODALIDADES ATENDIDAS

- 🏍️

Motocross

-

- Nossa especialidade. Formamos campeões no motocross brasileiro com - metodologia testada em pista. -

-
-
- 🏜️

Rally

-

- Mentoria para pilotos de rally que enfrentam condições extremas e - precisam de foco total nas etapas. -

-
-
- 🌲

Enduro

-

- Resistência mental para longas provas de enduro, onde o psicológico - é o principal diferencial. -

-
-
- -

Outras modalidades radicais

-

- Supercross, trilha competitiva e demais esportes de adrenalina com - demandas mentais elevadas. +

Outras modalidades

+

A Mentoria Mente MX foi criada para desenvolver + a parte que quase ninguém treina: o comportamento, + a mentalidade e o controle emocional do piloto.

+
@@ -501,7 +487,8 @@

FAQ — PERGUNTAS FREQUENTES

-
-
-
-
-
- - + \ No newline at end of file diff --git a/styles/style.css b/styles/style.css index cc32fd5..d8fa00b 100644 --- a/styles/style.css +++ b/styles/style.css @@ -615,7 +615,7 @@ section { } /* SERVICES */ -#servicos { +#planos { background: linear-gradient(180deg, var(--dark), var(--black)) } @@ -771,7 +771,7 @@ section { .sports-grid { display: grid; - grid-template-columns: repeat(4, 1fr); + grid-template-columns: repeat(1, 1fr); gap: 20px; max-width: 1100px; margin: 0 auto diff --git a/tests/site.spec.js b/tests/site.spec.js index 7e8607b..ca9b697 100644 --- a/tests/site.spec.js +++ b/tests/site.spec.js @@ -42,7 +42,7 @@ test.describe('Hero', () => { await page.goto('/'); const btnSaiba = page.locator('.hero-btns .btn-primary'); const btnCampeoes = page.locator('.hero-btns .btn-secondary'); - await expect(btnSaiba).toHaveAttribute('href', '#servicos'); + await expect(btnSaiba).toHaveAttribute('href', '#planos'); await expect(btnCampeoes).toHaveAttribute('href', '#campeoes'); }); }); @@ -137,11 +137,20 @@ test.describe('Contato', () => { await expect(page.locator('#c-msg')).toBeAttached(); }); - test('select de modalidade funciona', async ({ page }) => { + test('custom select de modalidade funciona', async ({ page }) => { await page.goto('/'); - const select = page.locator('#c-sport'); - await select.selectOption('Motocross'); - expect(await select.inputValue()).toBe('Motocross'); + const trigger = page.locator('#customSelectTrigger'); + const options = page.locator('#customSelectOptions'); + + // Clicar para abrir + await trigger.click(); + const wrap = page.locator('#customSelectWrap'); + await expect(wrap).toHaveClass(/open/); + + // Selecionar opção + await page.locator('.custom-select-option[data-value="Motocross"]').click(); + const hidden = page.locator('#c-sport'); + expect(await hidden.inputValue()).toBe('Motocross'); }); }); From a04d9ef3bda73ec2696933c35762119d81b2500e Mon Sep 17 00:00:00 2001 From: "Philippe R. Bretas" Date: Thu, 23 Jul 2026 00:47:33 -0300 Subject: [PATCH 2/2] fix: corrigir testes E2E - href correto e select nativo --- tests/site.spec.js | 19 +++++-------------- 1 file changed, 5 insertions(+), 14 deletions(-) diff --git a/tests/site.spec.js b/tests/site.spec.js index ca9b697..7e8607b 100644 --- a/tests/site.spec.js +++ b/tests/site.spec.js @@ -42,7 +42,7 @@ test.describe('Hero', () => { await page.goto('/'); const btnSaiba = page.locator('.hero-btns .btn-primary'); const btnCampeoes = page.locator('.hero-btns .btn-secondary'); - await expect(btnSaiba).toHaveAttribute('href', '#planos'); + await expect(btnSaiba).toHaveAttribute('href', '#servicos'); await expect(btnCampeoes).toHaveAttribute('href', '#campeoes'); }); }); @@ -137,20 +137,11 @@ test.describe('Contato', () => { await expect(page.locator('#c-msg')).toBeAttached(); }); - test('custom select de modalidade funciona', async ({ page }) => { + test('select de modalidade funciona', async ({ page }) => { await page.goto('/'); - const trigger = page.locator('#customSelectTrigger'); - const options = page.locator('#customSelectOptions'); - - // Clicar para abrir - await trigger.click(); - const wrap = page.locator('#customSelectWrap'); - await expect(wrap).toHaveClass(/open/); - - // Selecionar opção - await page.locator('.custom-select-option[data-value="Motocross"]').click(); - const hidden = page.locator('#c-sport'); - expect(await hidden.inputValue()).toBe('Motocross'); + const select = page.locator('#c-sport'); + await select.selectOption('Motocross'); + expect(await select.inputValue()).toBe('Motocross'); }); });