Pré Pago
[et_pb_section fb_built="1" fullwidth="on" admin_label="Hero" _builder_version="4.27.4" _module_preset="default" da_disable_devices="off|off|off" global_colors_info="{}" da_is_popup="off" da_exit_intent="off" da_has_close="on" da_alt_close="off" da_dark_close="off" da_not_modal="on" da_is_singular="off" da_with_loader="off" da_has_shadow="on"][et_pb_fullwidth_code _builder_version="4.27.4" _module_preset="default" global_colors_info="{}"] 02 · HERO — só HTML ═══════════════════════════════════════════════════════════════ -->
Compre hoje, notifique quando precisar. Créditos avulsos para enviar notificações extrajudiciais por e-mail, SMS e WhatsApp, com Carimbo do Tempo ICP-Brasil e dossiê de provas incluído. A partir de R$ 4,97 por crédito, com validade de 12 meses. Sem assinatura, sem compromisso. Comprar créditos agora Ver preços por volume
[/et_pb_fullwidth_code][/et_pb_section][et_pb_section fb_built="1" fullwidth="on" admin_label="PREÇOS POR FAIXA + CALCULADORA" _builder_version="4.27.4" _module_preset="default" da_disable_devices="off|off|off" global_colors_info="{}" da_is_popup="off" da_exit_intent="off" da_has_close="on" da_alt_close="off" da_dark_close="off" da_not_modal="on" da_is_singular="off" da_with_loader="off" da_has_shadow="on"][et_pb_fullwidth_code _builder_version="4.27.4" _module_preset="default" global_colors_info="{}"] 03 · PREÇOS POR FAIXA + CALCULADORA — só HTML Depende do JS global (arquivo 09). ═══════════════════════════════════════════════════════════════ -->
Quanto mais créditos, menor o valor unitário. Cada crédito corresponde ao envio de uma notificação por um único canal (AR-E-mail, AR-SMS ou AR-WhatsApp). Faça a simulação abaixo.
3 a 14 créditos R$ 4,97 /crédito
validade 12 meses
15 a 49 créditos R$ 4,70 /crédito
validade 12 meses
50 a 99 créditos R$ 4,19 /crédito
validade 12 meses
100 a 500 créditos R$ 3,89 /crédito
validade 12 meses
De quantos envios você precisa?
Investimento único R$ 209,50
R$ 4,19 por crédito · validade 12 meses
ar_bulk_mode=credits (compra avulsa, sem recorrência) e quantity = créditos. Mesmo formulário/produto (176) usado na loja oficial (ar-online.com.br/loja/), seção "AR CRÉDITOS". O preço unitário por faixa é calculado no servidor. --> Comprar 50 créditos Pagamento único — sem renovação automática. Os créditos ficam disponíveis no Portal AR até o fim da validade.
💡 Envia todo mês? A assinatura mensal tem preço unitário a partir de R$ 4,00 — e os créditos acumulam.
[/et_pb_fullwidth_code][/et_pb_section][et_pb_section fb_built="1" fullwidth="on" admin_label="O QUE ESTÁ INCLUÍDO" _builder_version="4.27.4" _module_preset="default" da_disable_devices="off|off|off" global_colors_info="{}" da_is_popup="off" da_exit_intent="off" da_has_close="on" da_alt_close="off" da_dark_close="off" da_not_modal="on" da_is_singular="off" da_with_loader="off" da_has_shadow="on"][et_pb_fullwidth_code _builder_version="4.27.4" _module_preset="default" global_colors_info="{}"] 04 · O QUE ESTÁ INCLUÍDO (6 cards) — só HTML ═══════════════════════════════════════════════════════════════ -->
Cada crédito carrega o serviço completo.
[ multicanal ] E-mail, SMS e WhatsApp Use o canal que preferir — ou combine-os em régua para multiplicar as chances de recebimento e as provas geradas.
[ fé pública ] Carimbo do Tempo ICP-Brasil Envio, entrega e abertura autenticados conforme a MP 2.200-2/2001. Comprovante pronto para juízo e reguladores.
[ guarda ] Provas guardadas por 3 anos Dossiê legível e localizável em segundos, sem custo extra de guarda. Depois, apenas R$ 0,17 por documento ao ano.
[ começo rápido ] Portal pronto em minutos Sem integração, sem TI: crie a conta, redija a notificação e envie pelo Portal web hoje mesmo.
[ suporte ] Suporte prioritário Time de atendimento humano para tirar dúvidas de envio, modelos e comprovação — do primeiro crédito em diante.
[ bônus ] E-book de otimização Guia prático de boas práticas de notificação extrajudicial incluído na sua primeira compra.
[/et_pb_fullwidth_code][/et_pb_section][et_pb_section fb_built="1" fullwidth="on" admin_label="FAQ" _builder_version="4.27.4" _module_preset="default" da_disable_devices="off|off|off" global_colors_info="{}" da_is_popup="off" da_exit_intent="off" da_has_close="on" da_alt_close="off" da_dark_close="off" da_not_modal="on" da_is_singular="off" da_with_loader="off" da_has_shadow="on"][et_pb_fullwidth_code _builder_version="4.27.4" _module_preset="default" global_colors_info="{}"] 05 · PERGUNTAS RÁPIDAS (FAQ) — só HTML ═══════════════════════════════════════════════════════════════ -->
Perguntas frequentes.
Os créditos expiram? Sim. Os créditos têm validade de 12 meses. Cada crédito corresponde ao envio de uma notificação por um único canal (1 crédito = 1 canal). Posso usar os créditos em canais diferentes? Sim. Os créditos valem para AR-Email, AR-SMS e AR-WhatsApp. Precisa de AR-Voz ou AR-Cartas? Esses canais estão disponíveis no plano personalizado. A notificação tem validade jurídica? A AR Online emite provas auditáveis com base em registros autenticados por Carimbo do Tempo ICP-Brasil, conforme a MP nº 2.200-2/2001. E se meu volume crescer? Você evolui sem perder nada: migre para a assinatura mensal (créditos que acumulam e preço menor) ou para o plano personalizado com API, múltiplos usuários e condições especiais.
[/et_pb_fullwidth_code][/et_pb_section][et_pb_section fb_built="1" fullwidth="on" admin_label="CTA Final" _builder_version="4.27.4" _module_preset="default" da_disable_devices="off|off|off" global_colors_info="{}" da_is_popup="off" da_exit_intent="off" da_has_close="on" da_alt_close="off" da_dark_close="off" da_not_modal="on" da_is_singular="off" da_with_loader="off" da_has_shadow="on"][et_pb_fullwidth_code _builder_version="4.27.4" _module_preset="default" global_colors_info="{}"] 06 · CHAMADA FINAL — só HTML ═══════════════════════════════════════════════════════════════ -->
Seus primeiros créditos a poucos cliques. Compre na loja, acesse o Portal e envie a primeira notificação com validade jurídica ainda hoje. Comprar créditos na loja Tirar dúvida no WhatsApp
[/et_pb_fullwidth_code][/et_pb_section][et_pb_section fb_built="1" fullwidth="on" admin_label="CONHEÇA TAMBÉM" _builder_version="4.27.4" _module_preset="default" da_disable_devices="off|off|off" global_colors_info="{}" da_is_popup="off" da_exit_intent="off" da_has_close="on" da_alt_close="off" da_dark_close="off" da_not_modal="on" da_is_singular="off" da_with_loader="off" da_has_shadow="on"][et_pb_fullwidth_code _builder_version="4.27.4" _module_preset="default" global_colors_info="{}"] 07 · CONHEÇA TAMBÉM (cross-sell) — só HTML ═══════════════════════════════════════════════════════════════ -->
Seu uso é outro? Há um plano para cada operação.
Uso recorrente Assinatura mensal Créditos mensais que acumulam e renovação automática no cartão de crédito. Contratar plano assinatura Operação personalizada Plano pós-pago sob medida Alto volume, AR-Voz e AR-Cartas, integração API/SFTP, múltiplos usuários e atendimento VIP com condições comerciais especiais. Falar com especialista
[/et_pb_fullwidth_code][/et_pb_section][et_pb_section fb_built="1" fullwidth="on" admin_label="JS Global" _builder_version="4.27.4" _module_preset="default" da_disable_devices="off|off|off" global_colors_info="{}" da_is_popup="off" da_exit_intent="off" da_has_close="on" da_alt_close="off" da_dark_close="off" da_not_modal="on" da_is_singular="off" da_with_loader="off" da_has_shadow="on"][et_pb_fullwidth_code _builder_version="4.27.4" _module_preset="default" global_colors_info="{}"] 09 · JAVASCRIPT GLOBAL — PÁGINA PRÉ-PAGO Colar no ÚLTIMO módulo Código da página. Faz funcionar: · calculadora de preço por faixa de volume · preenchimento dourado do slider (--fill-pct) · destaque automático da faixa de preço correspondente · tracking de cliques (GTM/GA4) · menu hambúrguer mobile · CTAs "Tirar dúvida no WhatsApp" (.js-open-wa) abrindo o widget flutuante do WhatsApp já existente no site (injetado fora do Divi/Código, é o mesmo widget global do WordPress). O href wa.me do link continua lá como fallback, para o caso de o widget não estar presente na página ═══════════════════════════════════════════════════════════════ --><!-- [et_pb_line_break_holder] -->(function(){<!-- [et_pb_line_break_holder] --> "use strict";<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --> /* ═══ repasse de UTMs ═══════════════════════════════════════════<!-- [et_pb_line_break_holder] --> Sem isto a campanha de origem morre no meio do funil: os links<!-- [et_pb_line_break_holder] --> internos são absolutos ("/assinatura/") e o botão de compra é um<!-- [et_pb_line_break_holder] --> POST para uma URL limpa — o carrinho chega sem nenhuma UTM.<!-- [et_pb_line_break_holder] --> Cobre os dois casos: links internos e o action do formulário. */<!-- [et_pb_line_break_holder] --> var UTM_KEYS = ["utm_source","utm_medium","utm_campaign","utm_id",<!-- [et_pb_line_break_holder] --> "utm_term","utm_content","gclid","fbclid"];<!-- [et_pb_line_break_holder] --> /* As UTMs vivem na URL só na primeira página da visita. A partir da<!-- [et_pb_line_break_holder] --> segunda (e no POST do formulário/carrinho) elas sumiam — por isso o<!-- [et_pb_line_break_holder] --> lead chegava no CRM sem origem. Agora a primeira ocorrência é<!-- [et_pb_line_break_holder] --> gravada em sessionStorage e reaproveitada em toda a navegação. */<!-- [et_pb_line_break_holder] --> var UTM_STORE = "arOnlineUtms";<!-- [et_pb_line_break_holder] --> var UTMS = (function(){<!-- [et_pb_line_break_holder] --> var src = new URLSearchParams(window.location.search), out = {}, has = false;<!-- [et_pb_line_break_holder] --> UTM_KEYS.forEach(function(k){<!-- [et_pb_line_break_holder] --> var v = src.get(k);<!-- [et_pb_line_break_holder] --> if(v){ out[k] = v; has = true; }<!-- [et_pb_line_break_holder] --> });<!-- [et_pb_line_break_holder] --> try{<!-- [et_pb_line_break_holder] --> if(has){<!-- [et_pb_line_break_holder] --> sessionStorage.setItem(UTM_STORE, JSON.stringify(out));<!-- [et_pb_line_break_holder] --> }else{<!-- [et_pb_line_break_holder] --> var saved = JSON.parse(sessionStorage.getItem(UTM_STORE) || "null");<!-- [et_pb_line_break_holder] --> if(saved && Object.keys(saved).length){ out = saved; has = true; }<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> }catch(e){ /* modo privado / storage bloqueado: segue só com a URL */ }<!-- [et_pb_line_break_holder] --> return has ? out : null;<!-- [et_pb_line_break_holder] --> })();<!-- [et_pb_line_break_holder] --> /* exposto para os outros módulos da página (ex.: formulário comercial) */<!-- [et_pb_line_break_holder] --> window.arOnlineUtms = UTMS || {};<!-- [et_pb_line_break_holder] --> function withUtms(raw){<!-- [et_pb_line_break_holder] --> try{<!-- [et_pb_line_break_holder] --> var u = new URL(raw, window.location.origin);<!-- [et_pb_line_break_holder] --> if(u.origin !== window.location.origin) return raw; /* não mexe em link externo */<!-- [et_pb_line_break_holder] --> Object.keys(UTMS).forEach(function(k){<!-- [et_pb_line_break_holder] --> if(!u.searchParams.has(k)) u.searchParams.set(k, UTMS[k]);<!-- [et_pb_line_break_holder] --> });<!-- [et_pb_line_break_holder] --> return u.href;<!-- [et_pb_line_break_holder] --> }catch(e){ return raw; }<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> function forwardUtms(){<!-- [et_pb_line_break_holder] --> if(!UTMS) return;<!-- [et_pb_line_break_holder] --> document.querySelectorAll('a[href]').forEach(function(a){<!-- [et_pb_line_break_holder] --> var h = a.getAttribute("href");<!-- [et_pb_line_break_holder] --> if(!h || h.charAt(0) === "#") return; /* âncora da própria página */<!-- [et_pb_line_break_holder] --> a.setAttribute("href", withUtms(h));<!-- [et_pb_line_break_holder] --> });<!-- [et_pb_line_break_holder] --> document.querySelectorAll('form[action]').forEach(function(f){<!-- [et_pb_line_break_holder] --> f.setAttribute("action", withUtms(f.getAttribute("action")));<!-- [et_pb_line_break_holder] --> });<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --> function init(){<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --> forwardUtms();<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --> /* O forwardUtms() acima só alcança o que já existe no DOM. O Divi e<!-- [et_pb_line_break_holder] --> alguns widgets injetam links depois — este ouvinte, em captura,<!-- [et_pb_line_break_holder] --> completa o href no instante do clique, antes da navegação. */<!-- [et_pb_line_break_holder] --> document.addEventListener("click", function(e){<!-- [et_pb_line_break_holder] --> if(!UTMS || !e.target || !e.target.closest) return;<!-- [et_pb_line_break_holder] --> var a = e.target.closest("a[href]");<!-- [et_pb_line_break_holder] --> if(!a) return;<!-- [et_pb_line_break_holder] --> var h = a.getAttribute("href");<!-- [et_pb_line_break_holder] --> if(!h || h.charAt(0) === "#") return;<!-- [et_pb_line_break_holder] --> var nh = withUtms(h);<!-- [et_pb_line_break_holder] --> if(nh !== h) a.setAttribute("href", nh);<!-- [et_pb_line_break_holder] --> }, true);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --> /* ── calculadora de preço por faixa ── */<!-- [et_pb_line_break_holder] --> var TIERS = [<!-- [et_pb_line_break_holder] --> {min:3, max:14, price:4.97, val:"12 meses"},<!-- [et_pb_line_break_holder] --> {min:15, max:49, price:4.70, val:"12 meses"},<!-- [et_pb_line_break_holder] --> {min:50, max:99, price:4.19, val:"12 meses"},<!-- [et_pb_line_break_holder] --> {min:100,max:500, price:3.89, val:"12 meses"}<!-- [et_pb_line_break_holder] --> ];<!-- [et_pb_line_break_holder] --> var qty = document.getElementById("qty");<!-- [et_pb_line_break_holder] --> var range = document.getElementById("qtyRange");<!-- [et_pb_line_break_holder] --> var totalEl = document.getElementById("total");<!-- [et_pb_line_break_holder] --> var unitEl = document.getElementById("unitPrice");<!-- [et_pb_line_break_holder] --> var valEl = document.getElementById("validity");<!-- [et_pb_line_break_holder] --> var tierEls = document.querySelectorAll(".tier");<!-- [et_pb_line_break_holder] --> var checkoutBtn = document.getElementById("checkoutBtn");<!-- [et_pb_line_break_holder] --> var checkoutQty = document.getElementById("checkoutQty");<!-- [et_pb_line_break_holder] --> var cartQty = document.getElementById("cartQty");<!-- [et_pb_line_break_holder] --> var brl = new Intl.NumberFormat("pt-BR",{style:"currency",currency:"BRL"});<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --> if(qty && range){<!-- [et_pb_line_break_holder] --> function tierFor(n){<!-- [et_pb_line_break_holder] --> for(var i=0;i<TIERS.length;i++) if(n>=TIERS[i].min && n<=TIERS[i].max) return TIERS[i];<!-- [et_pb_line_break_holder] --> return TIERS[TIERS.length-1];<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> function updateFill(){<!-- [et_pb_line_break_holder] --> var min = parseFloat(range.min) || 0, max = parseFloat(range.max) || 100;<!-- [et_pb_line_break_holder] --> var pct = ((parseFloat(range.value) - min) / (max - min)) * 100;<!-- [et_pb_line_break_holder] --> range.style.setProperty("--fill-pct", pct + "%");<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> function update(n){<!-- [et_pb_line_break_holder] --> n = Math.max(3, Math.min(500, Math.round(n) || 3));<!-- [et_pb_line_break_holder] --> qty.value = n; range.value = n;<!-- [et_pb_line_break_holder] --> var t = tierFor(n);<!-- [et_pb_line_break_holder] --> totalEl.textContent = brl.format(n * t.price);<!-- [et_pb_line_break_holder] --> unitEl.textContent = brl.format(t.price);<!-- [et_pb_line_break_holder] --> valEl.textContent = t.val;<!-- [et_pb_line_break_holder] --> tierEls.forEach(function(el){<!-- [et_pb_line_break_holder] --> el.classList.toggle("active",<!-- [et_pb_line_break_holder] --> n >= +el.getAttribute("data-min") && n <= +el.getAttribute("data-max"));<!-- [et_pb_line_break_holder] --> });<!-- [et_pb_line_break_holder] --> if(checkoutQty) checkoutQty.textContent = n;<!-- [et_pb_line_break_holder] --> if(cartQty) cartQty.value = n;<!-- [et_pb_line_break_holder] --> updateFill();<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> /* o range ajusta ao vivo; o campo numérico só ajusta ao concluir a<!-- [et_pb_line_break_holder] --> digitação ("change"). Com "input", o clamp de mínimo dispara a cada<!-- [et_pb_line_break_holder] --> tecla e embaralha a digitação de valores maiores. */<!-- [et_pb_line_break_holder] --> qty.addEventListener("change", function(){ update(qty.value); });<!-- [et_pb_line_break_holder] --> range.addEventListener("input", function(){ update(range.value); });<!-- [et_pb_line_break_holder] --> update(50);<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --> /* ── trava de segurança: a quantidade enviada é sempre a da tela ──<!-- [et_pb_line_break_holder] --> Se o "change" do campo numérico não tiver disparado (o usuário digita<!-- [et_pb_line_break_holder] --> e clica direto no botão), o campo oculto ainda estaria com o valor<!-- [et_pb_line_break_holder] --> anterior e o carrinho receberia uma quantidade diferente da simulada.<!-- [et_pb_line_break_holder] --> Recalculamos no submit, que é a última palavra antes do POST. */<!-- [et_pb_line_break_holder] --> if(checkoutBtn && qty){<!-- [et_pb_line_break_holder] --> var checkoutForm = checkoutBtn.closest("form");<!-- [et_pb_line_break_holder] --> if(checkoutForm){<!-- [et_pb_line_break_holder] --> checkoutForm.addEventListener("submit", function(){<!-- [et_pb_line_break_holder] --> var n = Math.max(3, Math.min(500, Math.round(+qty.value) || 3));<!-- [et_pb_line_break_holder] --> if(cartQty) cartQty.value = n;<!-- [et_pb_line_break_holder] --> });<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --> /* ── evento de início de checkout (GTM/GA4) ── */<!-- [et_pb_line_break_holder] --> if(checkoutBtn){<!-- [et_pb_line_break_holder] --> checkoutBtn.addEventListener("click", function(){<!-- [et_pb_line_break_holder] --> var n = +qty.value;<!-- [et_pb_line_break_holder] --> var t = TIERS.find(function(tier){ return n >= tier.min && n <= tier.max; }) || TIERS[TIERS.length-1];<!-- [et_pb_line_break_holder] --> window.dataLayer = window.dataLayer || [];<!-- [et_pb_line_break_holder] --> window.dataLayer.push({<!-- [et_pb_line_break_holder] --> event: "begin_checkout_prepago",<!-- [et_pb_line_break_holder] --> creditos: n,<!-- [et_pb_line_break_holder] --> preco_unitario: t.price,<!-- [et_pb_line_break_holder] --> valor_total: +(n * t.price).toFixed(2),<!-- [et_pb_line_break_holder] --> faixa: t.min + "-" + t.max<!-- [et_pb_line_break_holder] --> });<!-- [et_pb_line_break_holder] --> });<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --> /* ── CTAs que abrem o popup de WhatsApp (.js-open-wa) ──────────────<!-- [et_pb_line_break_holder] --> O widget flutuante é injetado pelo WordPress, fora do Divi. Testamos<!-- [et_pb_line_break_holder] --> em ordem os seletores conhecidos do botão principal; se nenhum<!-- [et_pb_line_break_holder] --> existir (widget desativado, bloqueado por adblock, script ainda não<!-- [et_pb_line_break_holder] --> carregado), o próprio href do link — um wa.me completo — segue como<!-- [et_pb_line_break_holder] --> fallback e o clique não se perde. */<!-- [et_pb_line_break_holder] --> var WA_SELECTORS = [<!-- [et_pb_line_break_holder] --> "#wppMainBtn",<!-- [et_pb_line_break_holder] --> ".wpp-main-btn", ".wpp-btn-main", "#wpp-main-btn",<!-- [et_pb_line_break_holder] --> ".joinchat__button", ".joinchat .joinchat__button",<!-- [et_pb_line_break_holder] --> ".chaty-main-btn", "#chaty-widget-0 .chaty-btn-wrap",<!-- [et_pb_line_break_holder] --> ".ht-ctc-chat", ".wa__button", ".wa-chat-box-toggle"<!-- [et_pb_line_break_holder] --> ];<!-- [et_pb_line_break_holder] --> function findWaWidget(){<!-- [et_pb_line_break_holder] --> for(var i = 0; i < WA_SELECTORS.length; i++){<!-- [et_pb_line_break_holder] --> var el = document.querySelector(WA_SELECTORS[i]);<!-- [et_pb_line_break_holder] --> /* offsetParent é null em elementos position:fixed — usamos<!-- [et_pb_line_break_holder] --> getClientRects() para saber se o botão está de fato na tela */<!-- [et_pb_line_break_holder] --> if(el && el.getClientRects().length) return el;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> return null;<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> document.querySelectorAll(".js-open-wa").forEach(function(a){<!-- [et_pb_line_break_holder] --> a.addEventListener("click", function(e){<!-- [et_pb_line_break_holder] --> window.dataLayer = window.dataLayer || [];<!-- [et_pb_line_break_holder] --> window.dataLayer.push({<!-- [et_pb_line_break_holder] --> event: "abrir_whatsapp",<!-- [et_pb_line_break_holder] --> origem: a.getAttribute("data-qual") || "",<!-- [et_pb_line_break_holder] --> rotulo: (a.textContent || "").trim().slice(0, 60)<!-- [et_pb_line_break_holder] --> });<!-- [et_pb_line_break_holder] --> var w = findWaWidget();<!-- [et_pb_line_break_holder] --> if(!w) return; /* sem widget: usa o href wa.me */<!-- [et_pb_line_break_holder] --> e.preventDefault();<!-- [et_pb_line_break_holder] --> /* stopPropagation e obrigatorio: o widget fecha o popup quando um<!-- [et_pb_line_break_holder] --> clique chega ao document vindo de fora dele. Sem esta linha, o<!-- [et_pb_line_break_holder] --> proprio clique que abre o popup continua subindo, o widget<!-- [et_pb_line_break_holder] --> entende como "clicou fora" e fecha na mesma hora - parecia que<!-- [et_pb_line_break_holder] --> o botao nao fazia nada. */<!-- [et_pb_line_break_holder] --> e.stopPropagation();<!-- [et_pb_line_break_holder] --> var target = w.matches("a,button") ? w : (w.querySelector("a,button") || w);<!-- [et_pb_line_break_holder] --> target.click();<!-- [et_pb_line_break_holder] --> });<!-- [et_pb_line_break_holder] --> });<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --> /* ── tracking GTM/GA4 ── */<!-- [et_pb_line_break_holder] --> window.dataLayer = window.dataLayer || [];<!-- [et_pb_line_break_holder] --> document.querySelectorAll("a[href]").forEach(function(a){<!-- [et_pb_line_break_holder] --> a.addEventListener("click", function(){<!-- [et_pb_line_break_holder] --> window.dataLayer.push({event:"prepago_click", destino:a.href, rotulo:(a.textContent||"").trim().slice(0,60)});<!-- [et_pb_line_break_holder] --> });<!-- [et_pb_line_break_holder] --> });<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --> /* ── menu mobile (hambúrguer) ── */<!-- [et_pb_line_break_holder] --> var t = document.getElementById('navToggle'), n = document.getElementById('navLinks');<!-- [et_pb_line_break_holder] --> if(t && n){<!-- [et_pb_line_break_holder] --> function closeNav(){<!-- [et_pb_line_break_holder] --> n.classList.remove('open');<!-- [et_pb_line_break_holder] --> t.setAttribute('aria-expanded','false');<!-- [et_pb_line_break_holder] --> t.setAttribute('aria-label','Abrir menu');<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> t.addEventListener('click', function(){<!-- [et_pb_line_break_holder] --> var open = n.classList.toggle('open');<!-- [et_pb_line_break_holder] --> t.setAttribute('aria-expanded', open ? 'true' : 'false');<!-- [et_pb_line_break_holder] --> t.setAttribute('aria-label', open ? 'Fechar menu' : 'Abrir menu');<!-- [et_pb_line_break_holder] --> });<!-- [et_pb_line_break_holder] --> n.addEventListener('click', function(e){ if(e.target.closest('a')) closeNav(); });<!-- [et_pb_line_break_holder] --> document.addEventListener('keydown', function(e){ if(e.key === 'Escape') closeNav(); });<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --> if(document.readyState === "loading"){<!-- [et_pb_line_break_holder] --> document.addEventListener("DOMContentLoaded", init);<!-- [et_pb_line_break_holder] --> } else {<!-- [et_pb_line_break_holder] --> init();<!-- [et_pb_line_break_holder] --> }<!-- [et_pb_line_break_holder] -->})();<!-- [et_pb_line_break_holder] -->[/et_pb_fullwidth_code][/et_pb_section]
