// D'Almada ISP Landing — components const C = { bg: "#1A1A1A", bg2: "#282828", bg3: "#1F1F1F", card: "#2A2A2A", elevated: "#333333", lime: "#C9F31D", limeH: "#D4F73D", limeM: "rgba(201,243,29,0.12)", limeB: "rgba(201,243,29,0.25)", white: "#FFFFFF", gray1: "#A0A0A0", gray2: "#6B6B6B", border: "rgba(255,255,255,0.08)", borderH: "rgba(255,255,255,0.15)", danger: "#EF4444", success: "#22C55E", fDisp: "'Inter', sans-serif", fBody: "'Inter', sans-serif", }; // ————— Responsividade hook ————— function useIsMobile(bp = 600) { const [mobile, setMobile] = React.useState(() => window.innerWidth <= bp); React.useEffect(() => { const fn = () => setMobile(window.innerWidth <= bp); window.addEventListener('resize', fn); return () => window.removeEventListener('resize', fn); }, [bp]); return mobile; } // ————— Logo ————— function LogoMark({ size = 32 }) { return ( ); } // ————— Header ————— function Header({ onOpenForm }) { const isMobile = useIsMobile(); return (
{!isMobile && ( )}
); } // ————— Buttons ————— function primaryBtn({ small } = {}) { return { fontFamily: C.fDisp, fontSize: small ? 13 : 15, fontWeight: 600, color: C.bg, background: C.lime, border: "none", borderRadius: 999, padding: small ? "9px 18px" : "14px 28px", cursor: "pointer", transition: "transform .15s, background .2s", boxShadow: "0 6px 24px rgba(201,243,29,0.18)", }; } function ghostBtn() { return { fontFamily: C.fBody, fontSize: 14, fontWeight: 500, color: C.white, background: "transparent", border: `1px solid ${C.borderH}`, borderRadius: 999, padding: "12px 22px", cursor: "pointer", }; } // ————— HERO ————— function Hero({ heroBg, onOpenForm }) { const bgVariants = { dark: { background: C.bg }, limeburst: { background: ` radial-gradient(ellipse 80% 60% at 85% 20%, rgba(201,243,29,0.22), transparent 60%), radial-gradient(ellipse 50% 40% at 10% 90%, rgba(201,243,29,0.10), transparent 60%), ${C.bg}`, }, gradient: { background: `linear-gradient(145deg, #0F1605 0%, #1A1A1A 45%, #101010 100%)`, }, }; const isMobile = useIsMobile(); return (
{/* Grid pattern */}
Marketing para Provedores de Internet

Seu CAC
sobe. Suas
vendas, não.

Enquanto um de nossos clientes investe R$ 300 no seu bairro, você queima verba em anúncios que trazem curioso.{" "} Paramos essa sangria.{" "} Tráfego geo-segmentado, IA no WhatsApp e método que fatura, não que enrola.

Ver onde estou queimando dinheiro ↓
{["#1A1A1A", "#333", "#444", "#222"].map((bg, i) => (
{["WN", "LR", "CP", "MS"][i]}
))}
★★★★★
+40 donos de ISP confiaram no método
{/* Right card: visual proof / stats — hide on mobile */} {!isMobile && }
); } function FadeIn({ delay = 0, y = 10, blur = 8, children, style, className }) { const [shown, setShown] = React.useState(false); React.useEffect(() => { const reduced = window.matchMedia && window.matchMedia('(prefers-reduced-motion: reduce)').matches; if (reduced) { setShown(true); return; } const t = setTimeout(() => setShown(true), delay); return () => clearTimeout(t); }, [delay]); return (
{children}
); } function HeroRightCard() { const [barsIn, setBarsIn] = React.useState(false); const [pulse, setPulse] = React.useState(0); React.useEffect(() => { const reduced = window.matchMedia && window.matchMedia('(prefers-reduced-motion: reduce)').matches; if (reduced) { setBarsIn(true); return; } const t = setTimeout(() => setBarsIn(true), 900); return () => clearTimeout(t); }, []); // Subtle repeating pulse on the "+48%" badge, staggered React.useEffect(() => { const id = setInterval(() => setPulse(p => p + 1), 3800); return () => clearInterval(id); }, []); const bars = [22, 35, 28, 48, 40, 62, 70, 55, 82, 75, 95, 128]; return (
{/* Fake dashboard header */}
painel.dalmada.com / isp
Últimos 90 dias AO VIVO
{/* Fake bar chart */}
Leads qualificados / semana 128
{bars.map((v, i) => (
))}
{/* WhatsApp line */}
IA qualificou 47 leads hoje
23 viraram venda · tempo médio: 4min
+48%
{/* Floating badge */}
Caso real · Provedor SC
); } function StatTile({ big, label, tone }) { return (
{big}
{label}
); } // ————— DORES (Checklist) ————— function Dores({ onOpenForm }) { const isMobile = useIsMobile(); const dores = [ { t: "CAC mais alto que a mensalidade de 2 meses", d: "Você paga R$ 180 para conquistar um cliente que fatura R$ 89/mês. A conta não fecha." }, { t: "Big telco entrou na sua área e levou seus clientes", d: "Promoção agressiva, fibra nova, e você sem resposta comercial rápida." }, { t: "Agência genérica te vende curtida, não assinante", d: "Relatório bonito, planilha cheia, mas o técnico não instala ninguém novo." }, { t: "Tráfego pago que traz gente sem dinheiro ou fora da área", d: "Verba queimada em clique que nunca vira venda. Cobertura ignorada." }, { t: "Atendimento comercial demora 40 minutos pra responder", d: "Lead já fechou com o concorrente. Você nem sabia que ele existia." }, { t: "Churn comendo sua base silenciosamente", d: "Ninguém reativa cancelado, ninguém ouve queixa. Cada mês menos assinante." }, ]; return (
Seu dia a dia, sem filtro

Você se reconhece em
quantas destas?

Se marcou 3 ou mais, você está pagando caro pra crescer devagar. É aí que o método entra.

{dores.map((d, i) => ( ))}
Chega de diagnóstico. Bora pro remédio.
Diagnóstico gratuito da sua operação. Sem script de vendas.
); } // ————— SERVICOS / PILARES ————— function Servicos() { const isMobile = useIsMobile(); const items = [ { n: "01", label: "Tráfego geo", title: "TRÁFEGO POR CEP", desc: "Anúncio só pra quem mora onde sua fibra passa. Zero clique de fora de área.", tags: ["Google Ads", "Meta Ads", "Geo-fencing", "CEP"], tone: "default", }, { n: "02", label: "IA Comercial", title: "IA + WHATSAPP", desc: "Atende, qualifica e já oferece o plano certo. 24h, sem folga, sem perder lead.", tags: ["WhatsApp", "Qualificação", "CRM", "Oferta"], tone: "featured", }, { n: "03", label: "Retenção", title: "ANTI-CHURN", desc: "Reativação de cancelado e blindagem contra a big telco com campanha de retenção.", tags: ["Reativação", "NPS", "Upsell"], tone: "default", }, ]; return (
O que fazemos no seu provedor

Três alavancas.
Um CAC menor.

Sem pacote genérico. Sem "SEO institucional". Cada serviço existe pra puxar uma alavanca específica no P&L do provedor.

{items.map((s, i) => (
{ e.currentTarget.style.transform = "translateY(-4px)"; }} onMouseLeave={e => { e.currentTarget.style.transform = "translateY(0)"; }} > {s.tone === "featured" && ( Carro-chefe )}
{s.n}
{s.label}

{s.title}

{s.desc}

{s.tags.map((t, j) => ( {t} ))}
))}
); } // ————— METODO ————— function Metodo() { const isMobile = useIsMobile(); const steps = [ { n: "01", t: "Diagnóstico cru", d: "Mergulhamos no seu P&L, cobertura, CAC real, churn, tempo médio de atendimento. 60 min, zero achismo." }, { n: "02", t: "Plano de batalha", d: "Canais certos por bairro, script de WhatsApp, IA treinada no seu plano, meta semanal clara." }, { n: "03", t: "Execução diária", d: "Anúncio, IA e time comercial rodando. Otimização semanal. Relatório que o dono entende." }, { n: "04", t: "Escala e retenção", d: "CAC caindo, LTV subindo, churn domado. Só então a gente pensa em expandir pra novo bairro." }, ]; return (
Método D'Almada para ISPs

Do diagnóstico
ao CAC previsível.

{steps.map((s, i) => (
{s.n}

{s.t}

{s.d}

{!isMobile && (
{i === 0 ? "Semana 1" : i === 1 ? "Semana 2" : i === 2 ? "Mês 1-3" : "Mês 3+"}
)}
))}
); } // ————— RESULTADOS ————— function Resultados() { const isMobile = useIsMobile(); const stats = [ { n: "−38%", l: "CAC médio" }, { n: "+214%", l: "Ativações/mês" }, { n: "−47%", l: "Churn voluntário" }, { n: "4 min", l: "Resposta no WPP" }, ]; return (
Resultados que cabem no P&L

Números de provedor.
Não de agência.

{stats.map((s, i) => (
{s.n}
{s.l}
))}
Média dos 12 provedores ativos na carteira · últimos 6 meses
); } // ————— DEPOIMENTOS ————— function Depoimentos() { const isMobile = useIsMobile(); const items = [ { stars: 5, ini: "MS", n: "Marcos Silveira", base: "3.2k assinantes", q: "Em 90 dias o CAC caiu pela metade. A IA no WhatsApp responde às 23h e eu descubro cliente novo no relatório da manhã. Outro patamar.", }, { stars: 5, ini: "LR", n: "Luciana Reis", base: "1.8k assinantes", q: "Fiquei 8 meses tentando crescer com agência genérica. Em 45 dias com o método deles, meu time comercial estava respondendo lead em menos de 5 minutos e as ativações triplicaram. Não troco mais.", }, { stars: 5, ini: "CP", n: "Carlos Pedroso", base: "5.4k assinantes", q: "Cansei de agência que vende 'presença digital'. Esses caras falam a língua do provedor: plano, bairro, cobertura, ticket médio. Faturei mais em 6 meses que no ano anterior.", }, ]; return (
Donos de ISP falando

Quem já trocou
agência bonita por
agência que entrega.

{items.map((t, i) => (
{"★".repeat(t.stars)}

"{t.q}"

{t.ini}
{t.n}
{t.r}
{t.base}
))}
); } // ————— FAQ ————— function FAQ() { const isMobile = useIsMobile(); const [open, setOpen] = React.useState(0); const qs = [ { q: "Atendem provedor com quantos assinantes?", a: "A partir de 500 assinantes. Abaixo disso, o método ainda não cabe no seu caixa — e a gente fala isso de cara." }, { q: "Quanto custa?", a: "Investimento fechado só depois do diagnóstico. Varia com tamanho da base, cobertura e canais. O diagnóstico em si é gratuito e sem compromisso." }, { q: "Em quanto tempo vejo resultado?", a: "Primeira queda de CAC perceptível em 30-45 dias. Resultado estruturado (CAC + churn + ativações) em 90 dias." }, { q: "Vocês trabalham com exclusividade por região?", a: "Sim. Só atendemos um ISP por microrregião. Se seu concorrente te procurou antes, a gente recusa." }, { q: "Preciso trocar minha agência atual?", a: "Não necessariamente. A gente entra no comercial e tráfego; se sua agência cuida só de redes orgânicas e branding, fica." }, { q: "Vocês instalam IA no meu WhatsApp oficial?", a: "Sim. WhatsApp Business API, integrado ao seu CRM ou ao que a gente recomenda. Zero gambiarra." }, ]; return (
Dúvidas reais de quem está na dúvida

Perguntas sem
rodeio.

{qs.map((item, i) => { const isOpen = open === i; return ( ); })}
); } // ————— CTA FINAL ————— function CTAFinal({ onOpenForm }) { const isMobile = useIsMobile(); return (
Pronto pra parar de queimar verba?

Diagnóstico grátis.
Sem script de vendas.

60 minutos com o time. Saímos com um plano de ação claro — você decide se contrata depois.

✓ Sem compromisso ✓ Sem script de vendas ✓ 1 ISP por microrregião
); } // ————— FOOTER ————— function Footer() { const isMobile = useIsMobile(); return (
© 2026 D'Almada Marketing · Marketing digital para provedores de internet
); } // ————— POPUP FORM ————— function getUtms() { const p = new URLSearchParams(window.location.search); return { utm_source: p.get("utm_source") || "", utm_medium: p.get("utm_medium") || "", utm_campaign: p.get("utm_campaign") || "", utm_content: p.get("utm_content") || "", utm_term: p.get("utm_term") || "", }; } function LeadPopup({ open, onClose }) { const [form, setForm] = React.useState({ nome: "", whatsapp: "", email: "", provedor: "" }); const [utms] = React.useState(getUtms); const [sent, setSent] = React.useState(false); const [errors, setErrors] = React.useState({}); React.useEffect(() => { if (open) { document.body.style.overflow = "hidden"; } else { document.body.style.overflow = ""; } }, [open]); if (!open) return null; const update = (k, v) => setForm(f => ({ ...f, [k]: v })); const submit = (e) => { e.preventDefault(); const er = {}; if (!form.nome.trim()) er.nome = "Informe seu nome"; if (!/^[\d\s()+-]{10,}$/.test(form.whatsapp.trim())) er.whatsapp = "WhatsApp inválido"; if (!/^\S+@\S+\.\S+$/.test(form.email)) er.email = "Email inválido"; if (!form.provedor.trim()) er.provedor = "Informe o nome do provedor"; setErrors(er); if (Object.keys(er).length) return; setSent(true); window.dataLayer = window.dataLayer || []; window.dataLayer.push({ event: "lead_form_submit", ...form, ...utms }); const payload = { ...form, ...utms }; fetch("https://n8n.dalmada.com/webhook/provedor", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify(payload), }).catch(() => { }); const msg = encodeURIComponent(`Olá tudo bem? Meu nome é ${form.nome.trim()} e gostaria de um diagnóstico para ${form.provedor.trim()}`); window.open(`https://wa.me/5511971254637?text=${msg}`, "_blank"); }; const fmtWpp = (v) => { const d = v.replace(/\D/g, "").slice(0, 11); if (d.length <= 2) return d; if (d.length <= 7) return `(${d.slice(0, 2)}) ${d.slice(2)}`; return `(${d.slice(0, 2)}) ${d.slice(2, 7)}-${d.slice(7)}`; }; return (
e.stopPropagation()} style={{ width: "100%", maxWidth: 520, position: "relative", background: C.bg2, border: `1px solid ${C.limeB}`, borderRadius: 20, padding: 36, overflow: "hidden", boxShadow: "0 40px 100px rgba(0,0,0,0.6), 0 0 0 1px rgba(201,243,29,0.1)", animation: "slideUp .3s cubic-bezier(.2,.8,.2,1)", }} > {/* lime accent corner */}
{!sent ? ( <>
Diagnóstico gratuito

Uma conversa. Zero script.

Nos conte o básico. Respondemos em até 4h em horário comercial com 3 horários disponíveis.

update("nome", v)} err={errors.nome} placeholder="Como devemos te chamar?" />
update("whatsapp", fmtWpp(v))} err={errors.whatsapp} placeholder="(11) 98000-0000" /> update("email", v)} err={errors.email} placeholder="voce@provedor.com.br" type="email" />
update("provedor", v)} err={errors.provedor} placeholder="Ex: NetVale ISP" />
Seus dados são usados apenas para contato. Sem spam, sem lista de newsletter.
) : (

Recebido, {form.nome.split(" ")[0]}.

Nosso especialista entrará em contato para tratar do diagnóstico para {form.provedor} ele irá te chamar no WhatsApp nas próximas horas.

)}
); } function Field({ label, value, onChange, err, placeholder, type = "text" }) { return ( ); } // ————— SHARED TITLE HELPERS ————— const h2Style = { fontFamily: C.fDisp, fontSize: 48, fontWeight: 800, color: C.white, margin: "14px 0 0", letterSpacing: "-0.03em", textTransform: "uppercase", lineHeight: 1.02, }; function SectionLabel({ children, center }) { return (
{children}
); } Object.assign(window, { Header, Hero, Dores, Servicos, Metodo, Resultados, Depoimentos, FAQ, CTAFinal, Footer, LeadPopup, });