/* =================================================================
   public.css — CSS centralizado para páginas públicas do LeadCNPJ
   Cobre: LP (index), auth (login/registro/esqueci-senha), footer
   ================================================================= */

/* ── Variáveis globais ── */
:root {
  --neon:        #25D366;
  --neon-dim:    rgba(37,211,102,0.10);
  --neon-mid:    rgba(37,211,102,0.22);
  --neon-glow:   0 0 32px rgba(37,211,102,0.35);
  --ink:         #0A0A0A;
  --ink-800:     #1C1C1C;
  --ink-600:     #3A3A3A;
  --ink-500:     #5A5A55; /* body copy WCAG AA+ sobre --paper (5.9:1) */
  --ink-400:     #777770;
  --ink-200:     #C8C8C0;
  --ink-100:     #E4E4DC;
  --paper:       #F7F6F1;
  --paper-dark:  #EFEDE6;
  --paper-card:  #FFFFFF;
  --border:      #E2E2DA;
}

/* ── Base ── */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body {
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
  -webkit-font-smoothing: antialiased;
}

/* =================================================================
   AUTH — login.php / registro.php / esqueci-senha.php
   ================================================================= */

.auth-bg {
  background: var(--paper);
  position: relative;
  overflow-x: hidden;
  overflow-y: auto;
}
.auth-bg::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle, rgba(37,211,102,0.14) 1px, transparent 1px);
  background-size: 36px 36px;
  pointer-events: none;
}
.auth-card {
  box-shadow: 0 4px 32px rgba(10,10,10,0.07), 0 1px 4px rgba(10,10,10,0.04);
  border: 1px solid #E5E5E0;
}
.input-field { transition: border-color 0.2s, box-shadow 0.2s; }
.input-field::placeholder { color: #94a3b8; }
.input-field:focus {
  border-color: var(--neon);
  box-shadow: 0 0 0 3px rgba(37,211,102,0.15);
  outline: none;
}
.feature-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.375rem 0.75rem;
  background: rgba(37,211,102,0.08);
  border: 1px solid rgba(37,211,102,0.25);
  border-radius: 0.75rem;
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--ink);
  transition: background 0.2s;
}
.feature-pill:hover { background: rgba(37,211,102,0.14); }
.feature-pill i { color: var(--neon); }

.btn-neon-auth {
  width: 100%;
  padding: 0.9rem 1.5rem;
  background: var(--neon);
  color: var(--ink);
  font-weight: 700;
  border-radius: 12px;
  font-size: 0.875rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  transition: opacity 0.18s, transform 0.18s;
  text-decoration: none;
}
.btn-neon-auth:hover { opacity: 0.88; transform: translateY(-1px); }

/* Cor da marca no logo */
.pub-neon { color: var(--neon); }

/* Toast */
.toast-enter { animation: toastIn 0.35s ease-out forwards; }
.toast-exit  { animation: toastOut 0.3s ease-in  forwards; }
@keyframes toastIn  { from { opacity:0; transform:translateX(40px); } to { opacity:1; transform:translateX(0); } }
@keyframes toastOut { from { opacity:1; transform:translateX(0); }    to { opacity:0; transform:translateX(40px); } }

/* =================================================================
   FOOTER — src/templates/footer.php
   ================================================================= */

.footer-grid-inner {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.5rem;
}
@media (min-width: 640px) {
  .footer-grid-inner { grid-template-columns: 1fr 1fr; }
}
@media (min-width: 1024px) {
  .footer-grid-inner { grid-template-columns: 1.4fr 1fr 0.8fr; gap: 4rem; }
}
.footer-heading {
  font-size: 0.75rem;
  font-weight: 700;
  color: #0f172a;
  text-transform: uppercase;
  letter-spacing: 0.07em;
  margin-bottom: 0.875rem;
}
.footer-subheading {
  font-size: 0.6875rem;
  font-weight: 600;
  color: #94a3b8;
  text-transform: uppercase;
  letter-spacing: 0.07em;
  margin-bottom: 0.5rem;
  margin-top: 0.25rem;
}
.footer-link {
  font-size: 0.875rem;
  color: #64748b;
  text-decoration: none;
  transition: color 0.18s;
}
.footer-link:hover { color: var(--neon); }
.footer-social-btn {
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  background: #f1f5f9;
  color: #64748b;
  text-decoration: none;
  transition: background 0.18s, color 0.18s;
}
.footer-social-btn:hover { background: var(--neon-dim); color: var(--neon); }

/* =================================================================
   LP — index.php  |  Layout + Tipografia + Acento
   ================================================================= */

body.lp-aww {
  background: var(--paper);
  color: var(--ink);
  overflow-x: hidden;
}

/* Layout */
.aww-wrap    { width:100%; max-width:1280px; margin:0 auto; padding:0 1.5rem; }
.lp-container{ width:100%; max-width:1280px; margin:0 auto; padding:0 1.5rem; }
.aww-sec    { padding:5.5rem 0; }
.aww-sec-sm { padding:4rem 0; }
@media (min-width:1024px) { .aww-wrap { padding:0 3rem; } .lp-container { padding:0 3rem; } }
@media (max-width:767px)  { .aww-sec { padding:3.5rem 0; } .aww-sec-sm { padding:2.5rem 0; } }

/* Em desktops amplos o container permanece em 1280px (centralizado) para
   manter margens laterais confortáveis. O "crescimento" visual é feito
   via tipografia, scaling do mockup e ar vertical — nunca alargando a
   grade. Mesma filosofia de Stripe, Linear e Apollo.io. */

/* Tipografia */
.aww-headline {
  font-size: clamp(3.5rem,10vw,8rem);
  font-weight: 900;
  letter-spacing: -0.04em;
  line-height: 0.88;
  color: var(--ink);
}
.aww-title {
  font-size: clamp(2.25rem,4.5vw,3.75rem);
  font-weight: 900;
  letter-spacing: -0.035em;
  line-height: 1.02;
  color: var(--ink);
}
.aww-lead {
  font-size: 1.0625rem;
  line-height: 1.7;
  color: var(--ink-500);
  max-width: 600px;
}

/* Acentos neon */
.neon-text { color: var(--neon); }
.neon-line {
  text-decoration: underline;
  text-decoration-color: var(--neon);
  text-underline-offset: 8px;
  text-decoration-thickness: 3px;
}

/* Label / eyebrow */
.aww-label {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 5px 13px;
  background: var(--neon-dim);
  border: 1px solid rgba(37,211,102,0.28);
  border-radius: 99px;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: var(--ink-800);
  margin-bottom: 1.25rem;
}
.aww-label-dot {
  width:6px; height:6px;
  border-radius:50%;
  background: var(--neon);
  flex-shrink:0;
}

/* Botões LP */
.btn-neon {
  display:inline-flex; align-items:center; gap:0.5rem;
  padding:0.875rem 2rem;
  background:var(--neon); color:var(--ink);
  font-size:0.9375rem; font-weight:700;
  border-radius:12px; border:none; cursor:pointer;
  box-shadow:3px 3px 0 rgba(0,0,0,0.32);
  transition:box-shadow 0.12s, transform 0.12s;
  text-decoration:none; will-change:transform;
}
.btn-neon:hover { box-shadow:1px 1px 0 rgba(0,0,0,0.32); transform:translate(2px,2px); color:var(--ink); }

.btn-ghost {
  display:inline-flex; align-items:center; gap:0.5rem;
  padding:0.875rem 2rem;
  background:rgba(255,255,255,0.5); color:var(--ink-600);
  font-size:0.9375rem; font-weight:600;
  border-radius:12px; border:1.5px solid rgba(0,0,0,0.22);
  cursor:pointer; transition:border-color 0.2s, background 0.2s, color 0.2s, box-shadow 0.2s;
  text-decoration:none;
  backdrop-filter:blur(4px);
}
.btn-ghost:hover {
  border-color: var(--ink);
  background: rgba(255,255,255,0.85);
  backdrop-filter: blur(10px);
  color: var(--ink);
  box-shadow: 0 2px 12px rgba(0,0,0,0.08);
}

/* Nav links dropdown trigger button (Especialistas) */
.nav-link-btn {
  font-size:0.875rem; font-weight:500; color:var(--ink-400);
  background:none; border:none; cursor:pointer; padding:0;
  display:flex; align-items:center; gap:0.25rem; transition:color 0.2s;
}
.nav-link-btn:hover { color:var(--ink); }
.nav-link-btn i { width:14px; height:14px; }
/* Nav */
#aww-nav {
  position:fixed; top:0; left:0; right:0; z-index:200;
  padding:1.25rem 0;
  transition:background 0.3s, backdrop-filter 0.3s, padding 0.3s, box-shadow 0.3s;
}
#aww-nav.nav-scrolled {
  background:rgba(247,246,241,0.92);
  backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
  box-shadow:0 1px 0 var(--border);
  padding:0.75rem 0;
}
.nav-inner { display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.nav-logo  { display:flex; align-items:center; gap:0.5rem; text-decoration:none; flex-shrink:0; }
.nav-logo-text { font-size:1.125rem; font-weight:900; letter-spacing:-0.02em; color:var(--ink); }
@media (max-width:767px) { .nav-btn-cta { display:none !important; } }
.nav-links { display:none; align-items:center; gap:2rem; list-style:none; }
@media (min-width:1024px) { .nav-links { display:flex; } }
.nav-links a { font-size:0.875rem; font-weight:500; color:var(--ink-400); text-decoration:none; transition:color 0.2s; }
.nav-links a:hover { color:var(--ink); }
.nav-ctas { display:flex; align-items:center; gap:0.625rem; }
.nav-login { font-size:0.875rem; font-weight:600; color:var(--ink-400); text-decoration:none; padding:0.5rem 1rem; border-radius:8px; transition:color 0.2s; }
.nav-login:hover { color:var(--ink); }
.nav-btn-cta {
  display:inline-flex; align-items:center; gap:0.375rem;
  padding:0.5625rem 1.125rem;
  background:var(--neon); color:var(--ink);
  font-size:0.875rem; font-weight:700;
  border-radius:10px; text-decoration:none; transition:box-shadow 0.2s;
}
.nav-btn-cta:hover { box-shadow:var(--neon-glow); color:var(--ink); }
.nav-menu-toggle {
  display:flex; align-items:center; justify-content:center;
  width:38px; height:38px;
  border:1.5px solid var(--border); border-radius:8px;
  background:transparent; cursor:pointer; color:var(--ink);
}
@media (min-width:1024px) { .nav-menu-toggle { display:none; } }
#mobile-menu {
  display:none; position:absolute; top:100%; left:0; right:0;
  background:var(--paper-card); border-bottom:1px solid var(--border);
  padding:1rem 1.5rem;
}
#mobile-menu a { display:block; padding:0.75rem 0; font-size:0.9375rem; font-weight:600; color:var(--ink-600); text-decoration:none; border-bottom:1px solid var(--border); }
#mobile-menu a:last-child { border-bottom:none; }

/* =================================================================
   LP — Hero section
   ================================================================= */
#hero-section {
  min-height:calc(100dvh - 1px);
  padding-top:5rem;
  padding-bottom:3rem;
  position:relative;
  overflow:hidden;
  display:flex;
  align-items:center;
}
@media (max-width:767px) { #hero-section { padding-top:7rem; } }
.aww-hero-bg {
  position:absolute;inset:0;pointer-events:none;
  background-image:radial-gradient(circle, var(--ink-100) 1px, transparent 1px);
  background-size:30px 30px;
  opacity:0.65;
}
.hero-glow-blob {
  position:absolute;top:-10%;left:-8%;width:600px;height:600px;border-radius:50%;
  background:radial-gradient(circle, rgba(37,211,102,0.07) 0%, transparent 65%);
  pointer-events:none;
}
.hero-wrap { position:relative;z-index:1;width:100%; }
.hero-grid { display:grid;grid-template-columns:1fr;gap:3rem;align-items:center; }

/* Eyebrow pill */
.hero-eyebrow {
  display:inline-flex;align-items:center;gap:8px;
  padding:5px 13px;
  background:rgba(37,211,102,0.20);
  border:1px solid rgba(37,211,102,0.60);
  border-radius:99px;
  font-size:10.5px;font-weight:700;letter-spacing:0.09em;text-transform:uppercase;
  color:#1a5c38;margin-bottom:1.125rem;
}
.hero-eyebrow-dot { width:6px;height:6px;border-radius:50%;background:var(--neon); }

/* Text column */
/* Hero H1 — override menor que .aww-headline porque as linhas do hero
   têm frases mais longas ("Prospecção B2B", "para equipes") e precisam
   caber na coluna de ~640px do grid 52/48 no desktop.
   REGRA: H1 tem no máximo 3 linhas — nunca deve quebrar uma frase. */
.hero-headline {
  font-size: clamp(2.25rem, 6.5vw, 4.5rem);
  line-height: 0.95;
  margin-bottom: 1.25rem;
}
.hero-line-block  {
  display: block;
  white-space: nowrap; /* garante máx. 3 linhas: cada span = 1 linha */
}
.hero-tagline     { font-size:clamp(1.1875rem,2.5vw,1.5rem);font-weight:700;color:var(--ink);margin-bottom:1.5rem;margin-top:0.5rem;line-height:1.35; }
.hero-body        { margin-bottom:1.5rem; }
.hero-ctas        { display:flex;flex-wrap:wrap;gap:0.875rem;margin-bottom:1.5rem;align-items:center; }
@media(min-width:480px){ .hero-ctas { flex-wrap:nowrap; } }
.btn-neon-hero    { font-size:1rem;padding:1rem 2.25rem; }
.btn-ghost-hero   { font-size:1rem;padding:1rem 2rem; }
.hero-icon-lg     { width:17px;height:17px; }
.hero-trust       { display:flex;flex-wrap:wrap;gap:1.25rem;font-size:0.8125rem;color:var(--ink-400); }
.hero-trust-item  { display:flex;align-items:center;gap:5px; }
.hero-check       { color:var(--neon);font-weight:700; }

/* Visual column */
.hero-visual { position:relative; }

/* Chips */
.hero-chip-base {
  position:absolute;
  display:inline-flex;align-items:center;gap:7px;
  padding:8px 15px;
  background:var(--paper-card);border:1px solid var(--border);
  border-radius:99px;box-shadow:0 4px 18px rgba(0,0,0,0.09);
  font-size:12px;font-weight:700;color:var(--ink-800);
  white-space:nowrap;z-index:10;
}
.hero-chip-top    { top:-18px;right:-10px; }
.hero-chip-bottom { bottom:-14px;right:5%; }
.hero-chip-dot    { width:8px;height:8px;border-radius:50%;background:var(--neon); }
.hero-chip-icon   { width:14px;height:14px;color:var(--neon); }

/* Browser mockup */
.hero-mockup {
  background:var(--paper-card);
  border-radius:16px;border:1px solid var(--border);
  box-shadow:0 24px 64px rgba(0,0,0,0.13),0 4px 12px rgba(0,0,0,0.06);
  overflow:hidden;font-size:12px;
}
.mockup-bar {
  background:#F0EFEa;border-bottom:1px solid var(--border);
  padding:10px 14px;display:flex;align-items:center;gap:8px;
}
.mockup-dots     { display:flex;gap:5px; }
.mockup-dot-r    { width:11px;height:11px;border-radius:50%;background:#FF5F57; }
.mockup-dot-y    { width:11px;height:11px;border-radius:50%;background:#FEBC2E; }
.mockup-dot-g    { width:11px;height:11px;border-radius:50%;background:#28C840; }
.mockup-url      { flex:1;background:#E4E3DE;border-radius:6px;padding:4px 10px;font-size:11px;color:#888;text-align:center; }
.mockup-body     { padding:14px; }
.mockup-filters  { display:flex;flex-wrap:wrap;gap:5px;margin-bottom:10px; }
.mockup-tag-active {
  display:inline-flex;align-items:center;gap:4px;
  padding:3px 9px;border-radius:99px;font-size:10px;font-weight:700;
  background:var(--neon-dim);color:var(--ink-800);border:1px solid rgba(37,211,102,0.3);
}
.mockup-tag-active i { width:9px;height:9px; }
.mockup-tag-muted { display:inline-flex;align-items:center;padding:3px 9px;border-radius:99px;font-size:10px;font-weight:600;background:#f0f0ea;color:#999;border:1px solid var(--border); }
.mockup-count    { font-size:10px;color:var(--ink-200);font-weight:500;margin-bottom:9px; }

.mockup-row      { display:flex;align-items:center;gap:9px;padding:9px;border-radius:9px;margin-bottom:5px; }
.mockup-row-def  { background:#fafaf7;border:1px solid var(--border); }
.mockup-row-hi   { background:var(--neon-dim);border:1px solid rgba(37,211,102,0.3); }
.mockup-row-last { margin-bottom:11px; }
.mockup-avatar   { width:30px;height:30px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0; }
.mockup-avatar-def { background:#e8e8e3;color:#666; }
.mockup-avatar-hi  { background:var(--neon);color:var(--ink); }
.mockup-row-info { flex:1;min-width:0; }
.mockup-row-name { font-weight:700;font-size:11px;color:var(--ink); }
.mockup-row-sub  { font-size:10px;color:var(--ink-400);margin-top:1px; }
.mockup-badge-ok { padding:2px 7px;border-radius:99px;font-size:9px;font-weight:700;background:#dcfce7;color:#166534; }

.mockup-crm      { padding:11px 13px;border-radius:11px;background:var(--ink); }
.mockup-crm-hdr  { display:flex;align-items:center;gap:6px;font-size:10px;font-weight:700;color:var(--neon);margin-bottom:8px; }
.mockup-crm-hdr i { width:12px;height:12px; }
.mockup-crm-pipe { display:flex;align-items:center;gap:4px;font-size:9.5px; }
.mockup-pipe-active { padding:3px 8px;border-radius:5px;background:var(--neon);color:var(--ink);font-weight:700; }
.mockup-pipe-sep    { color:rgba(255,255,255,0.3); }
.mockup-pipe-idle   { padding:3px 8px;border-radius:5px;background:rgba(255,255,255,0.08);color:rgba(255,255,255,0.5); }

/* Hero — estados de animação iniciais */
.hero-line   { opacity:0; transform:translateY(52px); }
.hero-visual { opacity:0; transform:translateX(28px); }
.hero-chip   { opacity:0; transform:scale(0.82); }
@media (min-width:1024px) { .hero-grid-lg { grid-template-columns:52fr 48fr !important; } }
@media (min-width:1024px) { .hero-visual { transform:scale(0.96); transform-origin:center right; } }

/* ═════════════════════════════════════════════════════════════════
   HERO — Escala inteligente para desktops amplos
   Container SEMPRE em 1280px (centrado) — o "crescimento" em telas full
   acontece via AR VERTICAL: padding top/bottom maior, gaps entre
   elementos (eyebrow → H1 → tagline → body → CTAs → trust) maiores,
   min-height do hero ajustado à altura da tela, tipografia e mockup
   ligeiramente ampliados. Preserva margens laterais confortáveis.
   ═════════════════════════════════════════════════════════════════ */

/* Desktop amplo — 1440px+ (16" laptop retina, 1440p monitor) */
@media (min-width: 1440px) {
  /* Ar vertical: mais padding e min-height maior (já é 100dvh, mas
     vamos aumentar gaps internos entre elementos) */
  #hero-section {
    padding-top: 6rem;
    padding-bottom: 5rem;
  }

  /* Gaps verticais maiores entre cada elemento do hero */
  .hero-eyebrow    { margin-bottom: 1.75rem; }
  .hero-headline   { margin-bottom: 2rem; font-size: clamp(3.25rem, 5.25vw, 4.75rem); }
  .hero-tagline    { margin-top: 0; margin-bottom: 2rem; font-size: clamp(1.3125rem, 1.65vw, 1.5rem); }
  .hero-body       { margin-bottom: 2.25rem; font-size: 1.0625rem; line-height: 1.75; }
  .hero-ctas       { margin-bottom: 2rem; gap: 1rem; }
  .hero-trust      { gap: 1.75rem; }

  /* Gap maior entre coluna texto e mockup */
  .hero-grid-lg { gap: 4rem !important; }

  /* Remove o shrink do mockup — tamanho natural em telas grandes */
  .hero-visual { transform: none; }

  /* Stats strip e demais seções ganham ar vertical também */
  .stats-strip { padding: 4.5rem 0; }
  .aww-sec     { padding: 6.5rem 0; }
}

/* Ultra-wide — 1920px+ (1080p full, 4K escalado, ultrawide 21:9) */
@media (min-width: 1920px) {
  /* Mais ar vertical ainda */
  #hero-section {
    padding-top: 7rem;
    padding-bottom: 6rem;
  }

  .hero-eyebrow    { margin-bottom: 2rem; }
  .hero-headline   { margin-bottom: 2.25rem; font-size: clamp(3.75rem, 4.25vw, 5rem); }
  .hero-tagline    { margin-bottom: 2.25rem; font-size: 1.5rem; line-height: 1.4; }
  .hero-body       { margin-bottom: 2.5rem; font-size: 1.125rem; max-width: 560px; line-height: 1.75; }
  .hero-ctas       { margin-bottom: 2.25rem; gap: 1.125rem; }
  .hero-trust      { gap: 2rem; font-size: 0.875rem; }

  /* Mockup ganha leve boost — 1.04x com origem à direita */
  .hero-visual { transform: scale(1.04); transform-origin: center right; }

  /* Chips flutuantes um pouco maiores */
  .hero-chip-base { font-size: 13px; padding: 9px 17px; }

  /* Seções ainda mais espaçadas */
  .stats-strip { padding: 5rem 0; }
  .aww-sec     { padding: 7.5rem 0; }
}

/* Telas ALTAS — hero alinhado ao topo (não "preso" no meio da tela)
   + padding generoso top/bottom para aproveitar a altura extra.
   Unifica o que antes estava fragmentado em 4 media queries. */
@media (min-height: 900px) and (min-width: 1024px) {
  #hero-section {
    align-items: flex-start;
    min-height: auto;  /* 100dvh forçado some → hero ganha altura natural */
    padding-top: 8rem;
    padding-bottom: 5.5rem;
  }
}
@media (min-height: 1100px) and (min-width: 1440px) {
  #hero-section { padding-top: 10rem; padding-bottom: 7rem; }
}

/* Nav CTA — outline when page is at top, fills on scroll */
#aww-nav.nav-at-top .nav-btn-cta {
  background: transparent;
  color: var(--neon);
  border: 1.5px solid var(--neon);
  box-shadow: none;
}
#aww-nav.nav-at-top .nav-btn-cta:hover {
  background: var(--neon-dim);
  box-shadow: none;
}

/* Scroll-reveal */
.js-reveal, .js-reveal-scale, .js-stagger-item { opacity:0; }
@media (prefers-reduced-motion:reduce) {
  .hero-line,.hero-visual,.hero-chip,
  .js-reveal,.js-reveal-scale,.js-stagger-item,
  .bento-cell,.pillar-card,.plan-card { opacity:1 !important; transform:none !important; filter:none !important; }
}

/* Stats strip */
@media (min-width:768px) { .stats-grid-lg { grid-template-columns:repeat(4,1fr) !important; } }

/* Seção Problema */
@media (min-width:640px)  { .problem-tools-grid { grid-template-columns:repeat(2,1fr) !important; } }
@media (min-width:1100px) { .problem-tools-grid { grid-template-columns:repeat(4,1fr) !important; } }
.pain-tool-card:hover { border-color:#D4B5A8 !important; box-shadow:0 4px 20px rgba(0,0,0,0.07) !important; }

/* Bento Grid */
.true-bento { display:grid; grid-template-columns:1fr; gap:1rem; }
@media (min-width:640px)  { .true-bento { grid-template-columns:1fr 1fr; } .bento-wa,.bento-qsa { grid-column:1/3; } }
@media (min-width:1100px) { .true-bento { grid-template-columns:repeat(4,1fr); } .bento-wa { grid-column:1/3; } .bento-qsa { grid-column:3/5; } }
.bento-wa-inner  { display:grid; grid-template-columns:1fr; gap:1.5rem; }
.bento-qsa-inner { display:grid; grid-template-columns:1fr; gap:1.25rem; }
@media (min-width:900px) { .bento-wa-inner { grid-template-columns:1fr 1fr; align-items:center; } }
@media (min-width:900px) { .bento-qsa-inner { grid-template-columns:1fr 1fr; align-items:center; } }
.bento-cell:not(.bento-wa):hover { border-color:rgba(37,211,102,0.4) !important; box-shadow:0 8px 24px rgba(0,0,0,0.06) !important; }
.bento-wa:hover { border-color:rgba(37,211,102,0.2) !important; }
@keyframes pulse-neon { 0%,100% { opacity:1; } 50% { opacity:0.35; } }

/* Avaliação — Pillars */
@media (min-width:768px)  { .pillars-grid { grid-template-columns:repeat(2,1fr) !important; } }
@media (min-width:1200px) { .pillars-grid { grid-template-columns:repeat(3,1fr) !important; } .pillars-grid .js-stagger-item:last-child { grid-column:1/-1; max-width:60%; } }
.pillar-card:hover { border-color:var(--neon) !important; box-shadow:0 0 0 3px var(--neon-dim) !important; }

/* Marquee Integrações */
.marquee-track { overflow:hidden; }
.marquee-inner { display:flex; align-items:center; width:max-content; animation:marquee-scroll 36s linear infinite; }
.marquee-inner:hover { animation-play-state:paused; }
.marquee-item { display:inline-flex; align-items:center; gap:7px; padding:10px 22px; font-size:0.875rem; font-weight:600; color:var(--ink-400); white-space:nowrap; border-right:1px solid var(--border); transition:color 0.2s; cursor:default; }
.marquee-item:hover { color:var(--ink); }
@keyframes marquee-scroll { from { transform:translateX(0); } to { transform:translateX(-50%); } }
@media (prefers-reduced-motion:reduce) { .marquee-inner { animation:none; } }

/* Comparativo */
@media (min-width:768px) { .comp-grid { grid-template-columns:1fr 1.08fr 1fr !important; } .comp-featured-card { transform:scale(1.02); } }
@media (max-width:767px) {
  .comp-grid {
    display:flex !important;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
    gap:1rem !important;
    padding:0.25rem 0 1rem;
    /* hide scrollbar */
    scrollbar-width:none;
  }
  .comp-grid::-webkit-scrollbar { display:none; }
  .comp-grid > * {
    flex:0 0 82%;
    max-width:320px;
    scroll-snap-align:start;
  }
  /* LeadCNPJ first on mobile */
  .comp-featured-card { order:-1; }
  /* swipe hint */
  .comp-grid::after {
    content:'';
    flex:0 0 0.25rem;
  }
}

/* =================================================================
   LP — Pricing section (shared via pricing-section.php)
   ================================================================= */
.sec-pricing        { background:var(--paper-card);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:5rem 0; }
.pricing-header     { text-align:center;max-width:640px;margin:0 auto 2.5rem; }
.aww-label-center   { justify-content:center; }
.pricing-toggle-row { display:flex;align-items:center;justify-content:center;gap:0.75rem;flex-wrap:wrap;margin-bottom:2.75rem; }
.pricing-toggle-lbl { font-size:0.9rem;transition:color 0.2s,font-weight 0.1s; }
.pricing-toggle-lbl.active { font-weight:700;color:var(--ink); }
.pricing-toggle-lbl.muted  { font-weight:500;color:var(--ink-400); }
.pricing-toggle-btn { position:relative;display:inline-flex;align-items:center;width:52px;height:28px;border-radius:99px;background:#D4D4CC;border:none;cursor:pointer;transition:background 0.25s;flex-shrink:0; }
.pricing-toggle-dot { position:absolute;left:3px;width:22px;height:22px;border-radius:50%;background:var(--ink-800);transition:left 0.25s cubic-bezier(0.16,1,0.3,1),background 0.25s; }
.pricing-badge-gratis   { display:none;align-items:center;gap:5px;padding:4px 12px;border-radius:99px;background:var(--neon-dim);border:1px solid rgba(37,211,102,0.3);font-size:11px;font-weight:700;color:var(--ink-800); }
.pricing-badge-gratis i { width:11px;height:11px;flex-shrink:0; }
.pricing-promo-btn      { display:inline-flex;align-items:center;gap:5px;font-size:0.8125rem;font-weight:600;color:#25D366;background:none;border:none;cursor:pointer; }
.pricing-promo-btn i    { width:13px;height:13px; }
.pricing-footer-note    { text-align:center;font-size:0.8125rem;color:var(--ink-200);margin-top:2rem; }
/* Plan card grid */
.pricing-grid-lg    { display:grid;gap:1rem;grid-template-columns:1fr; }
@media (min-width:640px)  { .pricing-grid-lg { grid-template-columns:repeat(2,1fr); } }
@media (min-width:1100px) { .pricing-grid-lg { grid-template-columns:repeat(4,1fr);align-items:stretch; } .pcard { height:100%; } }
/* Plan cards */
.pcard          { display:flex;flex-direction:column;border-radius:20px;position:relative;transition:transform 0.2s,box-shadow 0.2s;overflow:hidden; }
.pcard-standard { background:var(--paper-card);border:1.5px solid var(--border); }
.pcard-standard:hover { transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,0,0,0.06); }
.pcard-featured { background:#FFFFFF;border:2px solid var(--neon);box-shadow:0 0 0 4px var(--neon-dim),0 24px 48px rgba(37,211,102,0.10); }
.pcard-featured:hover { transform:translateY(-4px);box-shadow:0 0 0 4px var(--neon-dim),0 32px 56px rgba(37,211,102,0.18); }
.pcard-premium  { background:#FFFFFF;border:2px solid var(--ink);box-shadow:0 8px 32px rgba(10,10,10,0.07); }
.pcard-premium:hover  { transform:translateY(-2px);box-shadow:0 12px 40px rgba(10,10,10,0.12); }
.pcard-badge    { position:absolute;top:0;right:1.25rem;padding:4px 14px;font-size:10px;font-weight:800;letter-spacing:0.06em;text-transform:uppercase;border-radius:0 0 10px 10px; }
.pcard-badge-featured { background:var(--neon);color:var(--ink); }
.pcard-badge-premium  { background:var(--ink);color:#fff; }
.pcard-body     { padding:1.75rem;display:flex;flex-direction:column;flex:1; }
.pcard-body-top { padding-top:2rem; }
.pcard-name-hdr { margin-bottom:1.25rem; }
.pcard-name     { font-size:1.125rem;font-weight:800;margin-bottom:0.25rem; }
.pcard-name-default  { color:var(--ink); }
.pcard-name-featured { color:var(--neon); }
.pcard-tagline  { font-size:0.8125rem;color:var(--ink-400);line-height:1.4; }
.pcard-inherited { font-size:0.75rem;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;color:var(--ink-400);margin-bottom:0.75rem; }
.pcard-price    { margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border); }
.pcard-enterprise-price { font-size:1.875rem;font-weight:900;letter-spacing:-0.04em;color:var(--ink); }
.pcard-enterprise-note  { font-size:0.8125rem;color:var(--ink-400);margin-top:4px; }
.pcard-currency { font-size:0.9rem;font-weight:600;color:var(--ink-400);vertical-align:top;margin-top:10px;display:inline-block; }
.pcard-price-val { font-size:2.5rem;font-weight:900;letter-spacing:-0.04em;line-height:1;color:var(--ink); }
.pcard-price-val-lg  { font-size:3rem;color:var(--neon); }
.pcard-price-cents   { font-size:1.125rem;color:var(--ink-400); }
.pcard-price-cents-featured { color:var(--neon);opacity:0.7; }
.pcard-price-period  { display:block;font-size:0.8125rem;color:var(--ink-400);margin-top:3px; }
.pcard-sem-val         { font-size:1.875rem;font-weight:900;letter-spacing:-0.04em;line-height:1;color:var(--ink); }
.pcard-sem-val-featured { color:var(--neon); }
.pcard-sem-period      { font-size:0.8125rem;color:var(--ink-400);margin-top:3px; }
.pcard-sem-compare     { display:flex;align-items:center;gap:8px;margin-top:6px; }
.pcard-sem-old         { font-size:0.75rem;text-decoration:line-through;color:var(--ink-400); }
.pcard-sem-new         { font-size:0.75rem;font-weight:700;color:var(--neon); }
.pcard-sem-badge       { display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:99px;background:var(--neon);color:var(--ink);font-size:10px;font-weight:800;letter-spacing:0.04em;text-transform:uppercase;margin-top:8px; }
.pcard-sem-badge i     { width:11px;height:11px;flex-shrink:0; }
.pcard-features        { display:flex;flex-direction:column;gap:0;flex:1;margin-bottom:1.5rem;list-style:none;padding:0;margin-top:0; }
.pcard-feat            { display:flex;align-items:flex-start;gap:8px;padding:6px 0;border-bottom:1px solid var(--border); }
.pcard-feat-icon       { width:14px;height:14px;flex-shrink:0;margin-top:2px;color:var(--ink-800); }
.pcard-feat-icon-muted { width:14px;height:14px;flex-shrink:0;margin-top:2px;color:var(--ink-400); }
.pcard-featured .pcard-feat-icon,
.pcard-premium  .pcard-feat-icon { color:var(--neon); }
.pcard-feat-text       { font-size:0.875rem;color:var(--ink-600);line-height:1.45; }
.pcard-feat-text-bold  { font-size:0.875rem;color:var(--ink);font-weight:700;line-height:1.45; }
.pcard-feat-text-muted { font-size:0.875rem;color:var(--ink-400);line-height:1.45; }
.pcard-soon-badge      { display:inline-block;padding:1px 6px;border-radius:4px;background:rgba(255,200,0,0.12);color:#b45309;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;vertical-align:middle;margin-left:4px; }
/* Expandable sections (CRM, LeadWhats, Em breve) */
.pcard-section-trigger { display:flex;align-items:center;gap:6px;width:100%;text-align:left;background:none;border:none;cursor:pointer;padding:8px 0;border-top:1px solid var(--border);margin-top:4px; }
.pcard-section-trigger:first-of-type { margin-top:0; }
.pcard-section-icon    { width:14px;height:14px;flex-shrink:0; }
.pcard-section-label   { font-size:0.75rem;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;flex:1; }
.pcard-section-chevron { width:12px;height:12px;transition:transform 0.2s; }
.pcard-section-content { padding-left:20px; }
/* CTAs */
.pcard-cta-featured  { display:flex;align-items:center;justify-content:center;gap:8px;padding:0.9375rem 1.5rem;border-radius:12px;background:var(--neon);color:var(--ink);font-size:0.9375rem;font-weight:700;text-decoration:none;transition:box-shadow 0.2s,transform 0.2s;width:100%;box-sizing:border-box;margin-top:auto; }
.pcard-cta-featured:hover  { box-shadow:var(--neon-glow);transform:translateY(-1px); }
.pcard-cta-secondary { display:flex;align-items:center;justify-content:center;gap:8px;padding:0.875rem 1.5rem;border-radius:12px;background:transparent;color:var(--ink);border:1.5px solid var(--border);font-size:0.9375rem;font-weight:600;text-decoration:none;transition:border-color 0.2s,background 0.2s;width:100%;box-sizing:border-box;margin-top:auto; }
.pcard-cta-secondary:hover { border-color:var(--ink-200);background:var(--paper); }
.pcard-cta-dark      { display:flex;align-items:center;justify-content:center;gap:8px;padding:0.9375rem 1.5rem;border-radius:12px;background:var(--ink);color:#fff;font-size:0.9375rem;font-weight:700;text-decoration:none;transition:opacity 0.2s;width:100%;box-sizing:border-box;margin-top:auto; }
.pcard-cta-dark:hover { opacity:0.85; }
.pcard-cta-featured i,.pcard-cta-secondary i,.pcard-cta-dark i { width:15px;height:15px;flex-shrink:0; }

/* FAQ */
.faq-layout { display:grid; grid-template-columns:1fr; gap:3rem; }
@media (min-width:1024px) { .faq-layout { grid-template-columns:1fr 2fr; align-items:start; } }
.faq-item:first-of-type { border-top:1px solid var(--border); }
.faq-item.open .faq-icon { border-color:var(--neon) !important; color:var(--neon) !important; transform:rotate(45deg); }
/* FAQ — créditos: tabela compacta */
.faq-credits-table { list-style:none;padding:0;margin:0.875rem 0 0.625rem;display:flex;flex-direction:column; }
.faq-credits-row   { display:flex;align-items:flex-start;gap:0.75rem;padding:0.4375rem 0;border-bottom:1px solid var(--border);font-size:0.875rem; }
.faq-credits-row:first-child { border-top:1px solid var(--border); }
.faq-credits-action { flex:1;color:var(--ink-600);line-height:1.4; }
.faq-credits-action small { display:block;font-size:0.75rem;color:var(--ink-400);margin-top:1px; }
.faq-credits-cost   { font-size:0.8125rem;font-weight:700;color:var(--ink);white-space:nowrap;padding-top:1px; }
.faq-link-more      { display:inline-flex;align-items:center;gap:5px;font-size:0.875rem;font-weight:600;color:var(--neon);text-decoration:none; }
.faq-link-more:hover { text-decoration:underline; }
.faq-link-more svg  { width:14px;height:14px;flex-shrink:0; }

/* =================================================================
   LeadWhats — Bento Grid & Asymmetric Layouts
   ================================================================= */

/* Bento Grid: 7 cells (A=2×2, B,C=1×1, D=1×1, E=2×1, F=2×1, G=1×1) */
.bento-lw { display:grid; grid-template-columns:1fr; gap:1rem; }
.bento-lw-cell { border-radius:24px; }
@media (min-width:768px) {
  .bento-lw { grid-template-columns:repeat(3,1fr); }
  .blw-a { grid-column:1/3; grid-row:1/3; }
  .blw-b { grid-column:3;   grid-row:1;   }
  .blw-c { grid-column:3;   grid-row:2;   }
  .blw-d { grid-column:1;   grid-row:3;   }
  .blw-e { grid-column:2/4; grid-row:3;   }
  .blw-f { grid-column:1/3; grid-row:4;   }
  .blw-g { grid-column:3;   grid-row:4;   }
}
.blw-e-inner,.blw-f-inner { display:grid; gap:1.5rem; }
@media (min-width:640px) {
  .blw-e-inner { grid-template-columns:1fr 1fr; align-items:center; }
  .blw-f-inner { grid-template-columns:1fr 1fr; align-items:center; }
}

/* Problema: 1 large card (3fr) + 2 stacked cards (2fr) */
.prob-asym { display:grid; grid-template-columns:1fr; gap:1rem; }
.prob-asym-side { display:flex; flex-direction:column; gap:1rem; }
@media (min-width:640px) {
  .prob-asym { grid-template-columns:3fr 2fr; align-items:stretch; }
}

/* Para Quem: 1 wide (2col) + 1 narrow + 1 full-width dark */
.paraquem-asym { display:grid; grid-template-columns:1fr; gap:1.25rem; }
@media (min-width:768px) {
  .paraquem-asym { grid-template-columns:repeat(3,1fr); }
  .pq-a { grid-column:1/3; }
  .pq-b { grid-column:3; }
  .pq-c { grid-column:1/4; }
}

/* =================================================================
   LP — Como funciona (4 passos) — index.php
   ================================================================= */
.how-section {
  background:var(--paper-card);
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
}
.how-header {
  max-width:720px; margin:0 auto 3rem; text-align:center;
}
.how-steps {
  list-style:none; padding:0; margin:0;
  display:grid; grid-template-columns:1fr; gap:1rem;
  counter-reset:how;
}
@media (min-width:640px)  { .how-steps { grid-template-columns:repeat(2,1fr); } }
@media (min-width:1024px) { .how-steps { grid-template-columns:repeat(4,1fr); } }

.how-step {
  position:relative;
  background:var(--paper);
  border:1.5px solid var(--border);
  border-radius:18px;
  padding:1.75rem 1.5rem 1.5rem;
  display:flex; flex-direction:column; gap:0.75rem;
  transition:border-color 0.2s, box-shadow 0.2s, transform 0.2s;
}
.how-step:hover {
  border-color:rgba(37,211,102,0.4);
  box-shadow:0 8px 20px rgba(10,10,10,0.05);
  transform:translateY(-2px);
}
.how-step-highlight {
  background:#fff;
  border-color:rgba(37,211,102,0.4);
  box-shadow:0 0 0 3px var(--neon-dim);
}

.how-step-num {
  position:absolute; top:1rem; right:1.25rem;
  font-size:1.625rem; font-weight:900;
  color:var(--ink-100); letter-spacing:-0.04em; line-height:1;
}
.how-step-highlight .how-step-num { color:rgba(37,211,102,0.35); }

.how-step-icon {
  width:44px; height:44px; border-radius:12px;
  background:var(--paper-dark);
  display:flex; align-items:center; justify-content:center;
}
.how-step-icon i { width:22px; height:22px; color:var(--ink-800); }
.how-step-highlight .how-step-icon { background:#f0fdf4; }
.how-step-highlight .how-step-icon i { color:var(--neon); }

.how-step-h {
  font-size:1.0625rem; font-weight:800;
  color:var(--ink); letter-spacing:-0.015em; line-height:1.3;
}
.how-step-body {
  font-size:0.875rem; line-height:1.65; color:var(--ink-500);
}
.how-step-body strong { color:var(--ink-800); font-weight:700; }

.how-cta {
  display:flex; flex-wrap:wrap; align-items:center; justify-content:center;
  gap:1rem; margin-top:3rem;
}
.how-cta-note { font-size:0.8125rem; color:var(--ink-400); }

/* =================================================================
   LP — Trust / Dados & LGPD (index.php)
   ================================================================= */
.trust-section {
  background:var(--paper-card);
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
}
.trust-header {
  max-width:720px; margin:0 auto 3rem; text-align:center;
}
.trust-grid {
  display:grid; grid-template-columns:1fr; gap:1rem;
  margin-bottom:2.25rem;
}
@media (min-width:640px)  { .trust-grid { grid-template-columns:repeat(2,1fr); } }
@media (min-width:1024px) { .trust-grid { grid-template-columns:repeat(4,1fr); } }

.trust-card {
  background:var(--paper);
  border:1.5px solid var(--border);
  border-radius:18px;
  padding:1.75rem 1.5rem;
  display:flex; flex-direction:column; gap:0.875rem;
  transition:border-color 0.2s, box-shadow 0.2s, transform 0.2s;
}
.trust-card:hover {
  border-color:rgba(37,211,102,0.35);
  box-shadow:0 10px 24px rgba(10,10,10,0.05);
  transform:translateY(-2px);
}
.trust-card-highlight {
  background:#fff;
  border-color:rgba(37,211,102,0.4);
  box-shadow:0 0 0 3px var(--neon-dim);
}

.trust-icon {
  width:46px; height:46px; border-radius:12px;
  display:flex; align-items:center; justify-content:center;
  background:var(--paper-dark);
  flex-shrink:0;
}
.trust-icon i { width:22px; height:22px; color:var(--ink-800); }
.trust-icon-neon { background:#f0fdf4; }
.trust-icon-neon i { color:var(--neon); }

.trust-title {
  font-size:1.0625rem; font-weight:800;
  color:var(--ink); letter-spacing:-0.015em;
  line-height:1.3;
}
.trust-body {
  font-size:0.875rem; line-height:1.65;
  color:var(--ink-400); flex:1;
}
.trust-body strong { color:var(--ink-800); font-weight:700; }
.trust-body em { font-style:italic; color:var(--ink-600); }

.trust-meta {
  display:inline-flex; align-items:center; gap:6px;
  padding-top:0.75rem; margin-top:auto;
  border-top:1px dashed var(--border);
  font-size:0.75rem; font-weight:700;
  text-transform:uppercase; letter-spacing:0.08em;
  color:var(--ink-800);
}
.trust-meta i { width:13px; height:13px; color:var(--neon); flex-shrink:0; }

.trust-footer {
  display:flex; align-items:flex-start; gap:0.875rem;
  padding:1.25rem 1.5rem;
  background:var(--neon-dim);
  border:1px solid rgba(37,211,102,0.25);
  border-radius:14px;
  max-width:920px; margin:0 auto;
}
.trust-footer-icon {
  width:32px; height:32px; border-radius:50%;
  background:#fff; border:1px solid rgba(37,211,102,0.3);
  display:flex; align-items:center; justify-content:center;
  flex-shrink:0;
}
.trust-footer-icon i { width:16px; height:16px; color:var(--neon); }
.trust-footer-text {
  font-size:0.9375rem; line-height:1.65;
  color:var(--ink-800); margin:0;
}
.trust-footer-text strong { color:var(--ink); font-weight:700; }
@media (max-width:640px) {
  .trust-footer { flex-direction:column; text-align:left; }
}

/* =================================================================
   LP — Nav extras
   ================================================================= */
.nav-wrap-rel  { position:relative; }
.nav-logo-img  { width:30px; height:auto; }
.nav-icon-sm   { width:14px; height:14px; }
.nav-icon-md   { width:18px; height:18px; }
.mobile-login  { color:var(--ink-400); }
.mobile-cta    { margin-top:0.75rem; display:flex !important; justify-content:center; text-align:center; }

/* =================================================================
   LP — Stats strip (dark bar)
   ================================================================= */
.stats-strip { background:var(--ink); padding:3.5rem 0; }
.stats-grid  {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:2.5rem;
  text-align:center;
}
.stat-num {
  font-size:clamp(2.5rem,5vw,4rem);
  font-weight:900;
  letter-spacing:-0.04em;
  color:var(--neon);
  line-height:1;
}
/* =================================================================
   LP — Seção Problema
   ================================================================= */
.prob-section { background:var(--paper-card); border-top:1px solid var(--border); padding:5rem 0 4rem; }
.prob-tools   { display:grid; grid-template-columns:1fr; gap:0.75rem; margin-bottom:3rem; }

.pain-tool-card {
  background:#F5EEE8; border:1px solid #E8D5C8; border-radius:16px;
  padding:1rem 1.25rem; display:flex; align-items:center; gap:1rem;
  position:relative; overflow:hidden; transition:border-color 0.2s,box-shadow 0.2s;
}
.pain-tool-icon {
  width:42px; height:42px; border-radius:10px;
  display:flex; align-items:center; justify-content:center; flex-shrink:0;
  background: var(--tool-bg, #f0f0f0);
}
.pain-tool-icon i { width:18px; height:18px; color: var(--tool-color, #666); }
.pain-tool-body  { flex:1; min-width:0; }
.pain-tool-name  { font-size:0.9375rem; font-weight:700; color:var(--ink); }
.pain-tool-sub   { font-size:0.8125rem; color:var(--ink-400); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.pain-tool-price-wrap { text-align:right; flex-shrink:0; }
.pain-tool-price { font-size:1.125rem; font-weight:900; color:#FF3B30; letter-spacing:-0.03em; }
.pain-tool-note  { font-size:0.7rem; color:var(--ink-400); }
.pain-tool-tag   {
  position:absolute; top:0; right:0; padding:2px 9px;
  font-size:9px; font-weight:800; letter-spacing:0.06em;
  background:#FF3B30; color:#fff; border-radius:0 16px 0 9px;
}

.prob-vs        { display:flex; flex-wrap:wrap; align-items:stretch; justify-content:center; gap:1rem; }
.prob-old       { flex:1; min-width:240px; max-width:340px; padding:1.75rem 2rem; border-radius:16px; background:#FFF0EE; border:1.5px solid #FF3B30; text-align:center; }
.prob-old-label { display:flex; align-items:center; justify-content:center; gap:6px; font-size:0.6875rem; font-weight:800; text-transform:uppercase; letter-spacing:0.1em; color:#FF3B30; margin-bottom:0.75rem; }
.prob-old-label i { width:13px; height:13px; color:#FF3B30; }
.prob-old-price { font-size:2.75rem; font-weight:900; letter-spacing:-0.05em; color:#FF3B30; line-height:1; }
.prob-old-note  { font-size:0.8125rem; color:var(--ink-400); margin-top:0.5rem; }

.prob-arrow      { display:flex; align-items:center; justify-content:center; flex-shrink:0; padding:0.5rem; }
.prob-arrow-txt  { font-size:0; color:var(--neon); }
.prob-arrow-txt::after { font-size:2.25rem; font-weight:900; content:'→'; }
@media (max-width:767px) {
  .prob-arrow-txt::after { content:'↓'; }
  .prob-arrow { padding:0.25rem; }
}

.prob-new       { flex:1; min-width:240px; max-width:340px; padding:1.75rem 2rem; border-radius:16px; background:#fff; border:2px solid rgba(37,211,102,0.4); text-align:center; position:relative; overflow:hidden; }
.prob-new-badge { position:absolute; top:0; right:0; padding:3px 12px; background:var(--neon); color:var(--ink); font-size:9px; font-weight:800; letter-spacing:0.06em; text-transform:uppercase; border-radius:0 16px 0 9px; }
.prob-new-label { display:flex; align-items:center; justify-content:center; gap:6px; font-size:0.6875rem; font-weight:800; text-transform:uppercase; letter-spacing:0.1em; color:var(--ink); margin-bottom:0.75rem; }
.prob-new-label i { width:13px; height:13px; color:var(--neon); }
.prob-new-price { font-size:2.75rem; font-weight:900; letter-spacing:-0.05em; color:var(--ink); line-height:1; }
.prob-new-note  { font-size:0.8125rem; color:var(--ink-400); margin-top:0.5rem; }
.prob-new-cta   { margin-top:1.25rem; font-size:0.875rem; padding:0.75rem 1.5rem; }

.stat-lbl {
  font-size:0.75rem;
  font-weight:600;
  color:rgba(255,255,255,0.45);
  text-transform:uppercase;
  letter-spacing:0.09em;
  margin-top:6px;
}

/* =================================================================
   PÁGINAS AUXILIARES — termos, privacidade, contrato, ajuda, feedback
   ================================================================= */

/* Page hero (dark ink, dot pattern) */
.lp-page-hero {
  background:var(--ink);
  padding:5rem 0 3rem;
  position:relative;
  overflow:hidden;
}
.lp-page-hero-bg {
  position:absolute;inset:0;pointer-events:none;
  background-image:radial-gradient(circle, rgba(255,255,255,0.06) 1px, transparent 1px);
  background-size:32px 32px;
}
.lp-page-hero-inner { position:relative;z-index:1; }
.lp-page-hero-badge {
  display:inline-flex;align-items:center;gap:6px;
  padding:4px 12px;border-radius:99px;
  background:rgba(37,211,102,0.15);border:1px solid rgba(37,211,102,0.3);
  font-size:11px;font-weight:700;letter-spacing:0.05em;text-transform:uppercase;
  color:var(--neon);margin-bottom:1.25rem;
}
.lp-page-hero-badge i { width:13px;height:13px;flex-shrink:0; }
.lp-page-hero h1 {
  font-size:clamp(1.75rem,4vw,2.5rem);
  font-weight:800;color:#fff;
  margin:0 0 0.5rem;letter-spacing:-0.03em;
}
.lp-page-hero-meta {
  font-size:0.8125rem;color:rgba(255,255,255,0.45);
  display:flex;align-items:center;gap:0.5rem;margin-top:0.5rem;flex-wrap:wrap;
}
.lp-page-hero-meta i { width:14px;height:14px;flex-shrink:0; }

/* Page body wrapper */
.lp-page-body { background:var(--paper);padding:3rem 0 4rem; }
.lp-page-card {
  background:var(--paper-card);
  border:1px solid var(--border);
  border-radius:16px;
  padding:2.5rem;
}
@media (max-width:640px) { .lp-page-card { padding:1.5rem; } }

/* Prose styles inside lp-page-card */
.lp-prose h3 { font-size:1.1rem;font-weight:700;color:var(--ink);margin:2rem 0 0.5rem; }
.lp-prose h3:first-child { margin-top:0; }
.lp-prose p { font-size:0.9rem;line-height:1.75;color:var(--ink-600);margin-bottom:0.75rem; }
.lp-prose ul,.lp-prose ol { font-size:0.9rem;line-height:1.75;color:var(--ink-600);margin-bottom:0.75rem;padding-left:1.5rem; }
.lp-prose ul { list-style-type:disc; }
.lp-prose ol { list-style-type:decimal; }
.lp-prose li { margin-bottom:0.25rem; }
.lp-prose strong { color:var(--ink-800);font-weight:600; }
.lp-prose a { color:var(--neon);text-decoration:none; }
.lp-prose a:hover { text-decoration:underline; }
.lp-callout {
  padding:12px 16px;border-radius:10px;margin:1.25rem 0;
  font-size:0.875rem;display:flex;gap:10px;align-items:flex-start;
}
.lp-callout-info { background:var(--neon-dim);border:1px solid rgba(37,211,102,0.25); }
.lp-callout-info i { color:var(--neon);flex-shrink:0;width:18px;height:18px;margin-top:2px; }
.lp-callout p { color:var(--ink-600);margin:0; }
.lp-callout strong { color:var(--ink); }

/* =================================================================
   LP — Bento Grid section
   ================================================================= */
.bento-sec-hdr       { max-width:720px; margin-bottom:3.25rem; }
/* Cell types */
.bento-cell-dark     { background:var(--ink); border:1px solid rgba(255,255,255,0.08); border-radius:20px; padding:2.25rem; }
.bento-cell-light    { background:var(--paper-card); border:1px solid var(--border); border-radius:20px; padding:1.75rem; transition:border-color 0.22s,box-shadow 0.22s; }
.bento-cell-paper    { background:var(--paper); border:1px solid var(--border); border-radius:20px; padding:1.75rem; transition:border-color 0.22s,box-shadow 0.22s; }
/* "Killer Feature" badge */
.bento-badge-neon    { display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:99px;background:rgba(37,211,102,0.15);border:1px solid rgba(37,211,102,0.3);font-size:10px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--neon);margin-bottom:1.5rem; }
.bento-badge-dot     { width:5px;height:5px;border-radius:50%;background:var(--neon);animation:pulse-neon 1.5s ease-in-out infinite; }
/* WA cell text */
.bento-wa-title      { font-size:clamp(1.25rem,2.5vw,1.625rem);font-weight:800;color:#fff;margin-bottom:0.75rem;letter-spacing:-0.025em;line-height:1.15; }
.bento-wa-body       { font-size:0.9375rem;line-height:1.7;color:rgba(255,255,255,0.5);margin-bottom:1.5rem;max-width:400px; }
.bento-stats         { display:flex;gap:2rem;flex-wrap:wrap; }
.bento-stat-val      { font-size:1.375rem;font-weight:900;color:var(--neon);line-height:1; }
.bento-stat-lbl      { font-size:0.75rem;color:rgba(255,255,255,0.5);margin-top:4px;line-height:1.35; }
.bento-stat-src      { display:inline-block;margin-top:2px;font-size:0.6875rem;font-weight:500;color:rgba(255,255,255,0.35);font-style:italic;letter-spacing:0.01em; }
/* WhatsApp chat mockup */
.wa-mock              { background:rgba(255,255,255,0.04);border-radius:14px;padding:14px;border:1px solid rgba(255,255,255,0.07); }
.wa-mock-hdr          { display:flex;align-items:center;gap:8px;padding:7px 9px;background:rgba(255,255,255,0.06);border-radius:8px;margin-bottom:10px; }
.wa-mock-hdr-avatar   { width:26px;height:26px;border-radius:50%;background:rgba(37,211,102,0.25);display:flex;align-items:center;justify-content:center;flex-shrink:0; }
.wa-mock-hdr-avatar i { width:12px;height:12px;color:var(--neon); }
.wa-mock-hdr-name     { font-size:10px;font-weight:700;color:rgba(255,255,255,0.75); }
.wa-mock-hdr-score    { font-size:9px;color:rgba(255,255,255,0.35); }
.wa-mock-hdr-score em { color:var(--neon);font-style:normal; }
.wa-msg-recv          { max-width:80%;padding:8px 11px;border-radius:0 10px 10px 10px;background:rgba(255,255,255,0.09);font-size:11px;line-height:1.45;color:rgba(255,255,255,0.75);margin-bottom:8px; }
.wa-msg-sent-wrap     { display:flex;justify-content:flex-end;margin-bottom:8px; }
.wa-msg-sent          { max-width:80%;padding:8px 11px;border-radius:10px 0 10px 10px;background:rgba(37,211,102,0.2);font-size:11px;line-height:1.45;color:rgba(255,255,255,0.88); }
.wa-composer          { display:flex;align-items:center;gap:6px;padding:7px 9px;background:rgba(255,255,255,0.06);border-radius:8px;margin-top:10px; }
.wa-composer-txt      { flex:1;font-size:10px;color:rgba(255,255,255,0.25); }
.wa-send-btn          { width:20px;height:20px;border-radius:50%;background:var(--neon);display:flex;align-items:center;justify-content:center; }
.wa-send-btn i        { width:10px;height:10px;color:var(--ink); }
/* Bento icon wrappers */
.bento-ico          { width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem; }
.bento-ico i        { width:20px;height:20px; }
.bento-ico-neon     { background:var(--neon-dim); }
.bento-ico-neon i   { color:var(--neon); }
.bento-ico-blue     { background:#eff6ff; }
.bento-ico-blue i   { color:#3b82f6; }
.bento-ico-orange   { background:#fff7ed; }
.bento-ico-orange i { color:#f97316; }
.bento-ico-purple   { background:#fdf4ff; }
.bento-ico-purple i { color:#a855f7; }
.bento-ico-green    { background:#f0fdf4; }
.bento-ico-green i  { color:#22c55e; }
/* Bento card text */
.bento-big-num         { font-size:clamp(2rem,4.5vw,3rem);font-weight:900;letter-spacing:-0.04em;color:var(--neon);line-height:1;margin-bottom:0.375rem; }
.bento-title           { font-size:1.0625rem;font-weight:700;color:var(--ink);margin-bottom:0.5rem; }
.bento-body            { font-size:0.875rem;line-height:1.6;color:var(--ink-400);margin-bottom:1rem; }
.bento-body-nm         { font-size:0.875rem;line-height:1.6;color:var(--ink-400); }
.bento-filter-tags     { display:flex;flex-wrap:wrap;gap:5px; }
.bento-filter-tag      { padding:3px 9px;border-radius:6px;font-size:10px;font-weight:600;background:var(--paper);border:1px solid var(--border);color:var(--ink-400); }
.bento-filter-tag-neon { padding:3px 9px;border-radius:6px;font-size:10px;font-weight:700;background:var(--neon-dim);border:1px solid rgba(37,211,102,0.3);color:var(--ink); }
/* CRM mini-kanban (Cell C) */
.bento-kanban               { display:flex;gap:5px; }
.bento-kanban-stage         { flex:1;border-radius:7px;padding:5px 3px;text-align:center; }
.bento-kanban-stage-lbl     { font-size:8px;font-weight:700; }
.bento-kanban-stage-bar     { width:18px;height:4px;border-radius:2px;margin:5px auto 0; }
.bento-kanban-stage.active  { background:var(--neon-dim);border:1px solid rgba(37,211,102,0.3); }
.bento-kanban-stage.active .bento-kanban-stage-lbl { color:var(--ink-800); }
.bento-kanban-stage.active .bento-kanban-stage-bar { background:var(--neon); }
.bento-kanban-stage.idle    { background:var(--paper);border:1px solid var(--ink-100); }
.bento-kanban-stage.idle .bento-kanban-stage-lbl   { color:var(--ink-400); }
.bento-kanban-stage.idle .bento-kanban-stage-bar   { background:var(--ink-100); }
/* QSA Visual network (Cell D) */
.qsa-viz              { display:flex;align-items:center;justify-content:center; }
.qsa-svg              { width:100%;max-width:220px; }
.qsa-svg text         { text-anchor:middle; }
.qsa-edge             { stroke:#94a3b8;stroke-width:1;stroke-dasharray:3,3; }
.qsa-node-main        { fill:rgba(249,115,22,0.15);stroke:#f97316;stroke-width:2; }
.qsa-node-socio       { fill:#dbeafe;stroke:#3b82f6;stroke-width:1.5; }
.qsa-node-filial      { fill:#f3e8ff;stroke:#a855f7;stroke-width:1.5; }
.qsa-node-emp         { fill:#dcfce7;stroke:#22c55e;stroke-width:1.5; }
.qsa-node-top         { fill:#ffedd5;stroke:#f97316;stroke-width:1.5; }
.qsa-txt-main         { font-size:8px;font-weight:700;fill:#ea580c; }
.qsa-txt-sub          { font-size:7px;fill:#f97316; }
.qsa-txt-socio        { font-size:7px;fill:#1d4ed8;font-weight:600; }
.qsa-txt-filial       { font-size:7px;fill:#7e22ce;font-weight:600; }
.qsa-txt-emp          { font-size:7px;fill:#15803d;font-weight:600; }
.qsa-txt-top          { font-size:7px;fill:#c2410c;font-weight:600; }
/* AI prompt mockup (Cell E) */
.bento-ai-prompt { margin-top:1rem;background:var(--paper);border:1px solid var(--border);border-radius:10px;padding:10px 12px; }
.bento-ai-label  { font-size:10px;color:var(--ink-400);margin-bottom:6px; }
.bento-ai-text   { font-size:11.5px;line-height:1.5;color:var(--ink-600); }
/* Lead scoring badges (Cell F) */
.score-badges  { display:flex;gap:6px;flex-wrap:wrap; }
.score-frio    { padding:5px 13px;border-radius:99px;font-size:11px;font-weight:700;background:#dbeafe;color:#1e40af; }
.score-morno   { padding:5px 13px;border-radius:99px;font-size:11px;font-weight:700;background:#fed7aa;color:#9a3412; }
.score-quente  { padding:5px 13px;border-radius:99px;font-size:11px;font-weight:700;background:var(--neon-dim);color:var(--ink-800);border:1px solid rgba(37,211,102,0.3); }

/* =================================================================
   LP — Expert Evaluation section
   ================================================================= */
.sec-card             { background:var(--paper-card);border-top:1px solid var(--border);border-bottom:1px solid var(--border); }
.eval-header          { max-width:950px;margin-bottom:3.5rem; }
.eval-quote           { font-size:clamp(1.625rem,3.75vw,2.875rem);font-weight:800;letter-spacing:-0.03em;line-height:1.18;color:var(--ink); }
.eval-author          { display:flex;align-items:center;gap:1rem; }
.eval-author-avatar   { width:42px;height:42px;border-radius:50%;background:var(--neon-dim);border:1px solid rgba(37,211,102,0.3);display:flex;align-items:center;justify-content:center;flex-shrink:0; }
.eval-author-avatar i { width:18px;height:18px;color:var(--neon); }
.eval-author-name     { font-size:0.875rem;font-weight:700;color:var(--ink); }
.eval-author-sub      { font-size:0.8125rem;color:var(--ink-400); }
.eval-context         { padding:1.5rem 1.75rem;background:var(--neon-dim);border:1px solid rgba(37,211,102,0.28);border-radius:16px;margin-bottom:3rem; }
.eval-context-txt     { font-size:0.9375rem;line-height:1.75;color:var(--ink-800); }
.eval-pillars-title   { font-size:1.1875rem;font-weight:700;color:var(--ink);margin-bottom:1.5rem; }
/* Pillar cards — base styles (hover already defined) */
.pillar-card    { background:var(--paper-card);border:1px solid var(--border);border-radius:16px;padding:1.5rem;transition:border-color 0.2s,box-shadow 0.2s; }
.pillar-num     { font-size:2.75rem;font-weight:900;letter-spacing:-0.04em;color:var(--ink-100);line-height:1;margin-bottom:0.625rem; }
.pillar-h4      { font-size:1rem;font-weight:700;color:var(--ink);margin-bottom:0.5rem; }
.pillar-body    { font-size:0.875rem;line-height:1.7;color:var(--ink-500);margin-bottom:1rem; }
.pillar-body-nm { font-size:0.875rem;line-height:1.7;color:var(--ink-500); }
.pillar-tags    { display:flex;flex-wrap:wrap;gap:6px; }
.pillar-tag-green { padding:3px 9px;border-radius:99px;font-size:11px;font-weight:600;background:#dcfce7;color:#166534; }
.pillar-tag-neon  { padding:3px 9px;border-radius:99px;font-size:11px;font-weight:600;background:var(--neon-dim);color:var(--ink-800); }

/* =================================================================
   LP — Integrations Marquee
   ================================================================= */
.sec-marquee        { background:var(--paper-card);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:3.5rem 0;overflow:hidden; }
.marquee-label-wrap { text-align:center;margin-bottom:1.75rem; }
.marquee-label      { font-size:0.75rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--ink-400); }
.marquee-outer      { position:relative; }
.marquee-fade-l     { position:absolute;left:0;top:0;bottom:0;width:7rem;background:linear-gradient(to right,var(--paper-card),transparent);z-index:2;pointer-events:none; }
.marquee-fade-r     { position:absolute;right:0;top:0;bottom:0;width:7rem;background:linear-gradient(to left,var(--paper-card),transparent);z-index:2;pointer-events:none; }

/* =================================================================
   LP — Comparison section
   ================================================================= */
.comp-header      { max-width:680px;margin-bottom:3.5rem; }
.comp-card        { border-radius:20px;background:var(--paper);border:1px solid var(--border);overflow:hidden; }
.comp-card-hdr    { padding:1.5rem;border-bottom:1px solid var(--border); }
.comp-card-vendor { font-size:0.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:0.09em;color:var(--ink-400);margin-bottom:4px; }
.comp-card-name   { font-size:1.0625rem;font-weight:800;color:var(--ink-600); }
.comp-card-sub    { font-size:0.8125rem;color:var(--ink-400);margin-top:4px; }
.comp-card-rows   { padding:0 1.5rem; }
.comp-card-ftr    { padding:1.25rem 1.5rem; }
.comp-row         { display:flex;align-items:center;justify-content:space-between;gap:0.75rem;padding:9px 0;border-bottom:1px solid var(--border); }
.comp-row-lbl     { font-size:0.8125rem;color:var(--ink-400); }
.comp-row-val     { display:flex;align-items:center;gap:4px;font-size:0.75rem;font-weight:700;white-space:nowrap; }
.comp-row-val i   { width:12px;height:12px;flex-shrink:0; }
.comp-ok          { color:var(--ink); }
.comp-ok i        { color:#22c55e; }
.comp-mid         { color:var(--ink-600); }
.comp-mid i       { color:#f59e0b; }
.comp-bad         { color:var(--ink-400); }
.comp-bad i       { color:#ef4444; }
/* Featured comparison card overrides */
.comp-feat-badge   { position:absolute;top:0;left:50%;transform:translateX(-50%);padding:4px 18px;background:var(--neon);color:var(--ink);white-space:nowrap;font-size:10px;font-weight:800;letter-spacing:0.07em;text-transform:uppercase;border-radius:0 0 12px 12px; }
.comp-feat-hdr     { padding:2.25rem 1.5rem 1.25rem;border-bottom:2px solid rgba(37,211,102,0.18); }
.comp-feat-vendor  { font-size:0.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:0.09em;color:var(--neon);margin-bottom:4px; }
.comp-feat-name    { font-size:1.25rem;font-weight:900;color:var(--ink);letter-spacing:-0.025em; }
.comp-feat-sub     { font-size:0.8125rem;color:var(--ink-400);margin-top:4px; }
.comp-feat-rows    { padding:0 1.5rem; }
.comp-feat-row     { display:flex;align-items:center;justify-content:space-between;gap:0.75rem;padding:9px 0;border-bottom:1px solid rgba(37,211,102,0.13); }
.comp-feat-row-lbl { font-size:0.8125rem;color:var(--ink-600);font-weight:500; }
.comp-feat-row-val { display:flex;align-items:center;gap:4px;font-size:0.75rem;font-weight:700;color:var(--ink);white-space:nowrap; }
.comp-feat-row-val i { width:12px;height:12px;color:var(--neon);flex-shrink:0; }
.comp-feat-cta     { padding:1.25rem 1.5rem; }

/* =================================================================
   LP — FAQ section
   ================================================================= */
.faq-item     { border-bottom:1px solid var(--border);padding:1.5rem 0; }
.faq-trigger  { display:flex;justify-content:space-between;align-items:center;gap:1rem;cursor:pointer; }
.faq-q        { font-size:1.0625rem;font-weight:600;color:var(--ink); }
.faq-icon     { width:26px;height:26px;border-radius:50%;border:1.5px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:18px;color:var(--ink-400);transition:transform 0.2s,border-color 0.2s; }
.faq-a        { font-size:0.9375rem;line-height:1.7;color:var(--ink-400);margin-top:1rem;display:none; }

/* =================================================================
   LP — Final CTA section
   ================================================================= */
.sec-cta-final      { background:var(--ink);padding:6rem 0;position:relative;overflow:hidden; }
.sec-cta-final-blob { position:absolute;width:700px;height:700px;border-radius:50%;background:radial-gradient(circle,rgba(37,211,102,0.12) 0%,transparent 65%);top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none; }
.sec-cta-final-dots { position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,0.06) 1px,transparent 1px);background-size:32px 32px;pointer-events:none; }
.cta-final-inner    { position:relative;z-index:1;text-align:center; }
.aww-label-dark     { justify-content:center;margin-bottom:1.75rem;color:rgba(255,255,255,0.75);background:rgba(37,211,102,0.15);border-color:rgba(37,211,102,0.35); }
.cta-final-title    { font-size:clamp(2.75rem,7vw,5.75rem);font-weight:900;letter-spacing:-0.04em;line-height:0.93;color:#fff;margin-bottom:1.5rem; }
.cta-final-body     { font-size:1.0625rem;color:rgba(255,255,255,0.55);max-width:520px;margin:0 auto 2.75rem;line-height:1.7; }
.cta-final-btns     { display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-bottom:2.25rem; }
.btn-neon-xl        { font-size:1rem;padding:1.0625rem 2.5rem; }
.cta-final-ghost    { display:inline-flex;align-items:center;gap:0.5rem;padding:1.0625rem 2rem;border:1.5px solid rgba(255,255,255,0.2);color:rgba(255,255,255,0.65);font-size:1rem;font-weight:600;border-radius:12px;transition:border-color 0.2s,color 0.2s;text-decoration:none; }
.cta-final-trust    { display:flex;flex-wrap:wrap;justify-content:center;gap:2rem;font-size:0.8125rem;color:rgba(255,255,255,0.35); }
.cta-final-trust-item   { display:flex;align-items:center;gap:6px; }
.cta-final-trust-item i { width:14px;height:14px;color:var(--neon); }

/* =================================================================
   VERTICAL LPs — hero & CTA dark sections (agencias, sdr, copilot…)
   ================================================================= */
.lp-vhero {
  position: relative;
  overflow: hidden;
  color: white;
  background: linear-gradient(135deg, #0f172a 0%, #1e293b 50%, #0f172a 100%);
  padding-top: 4.5rem; /* offset for fixed #aww-nav */
}
/* Dot-grid overlay — replaces all inline style="background-image: radial-gradient(...)" */
.lp-vhero-grid {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image: radial-gradient(circle at 2px 2px, rgba(255,255,255,0.06) 1px, transparent 0);
  background-size: 32px 32px;
}
/* Eyebrow badge pill */
.lp-vhero-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 5px 14px;
  background: rgba(37,211,102,0.12);
  border: 1px solid rgba(37,211,102,0.25);
  border-radius: 99px;
  font-size: 0.8125rem;
  font-weight: 600;
  color: rgba(255,255,255,0.9);
  margin-bottom: 1.5rem;
}
.lp-vhero-badge i { color: var(--neon); width:14px; height:14px; flex-shrink:0; }
/* Accent text inside hero (replaces colored gradient spans) */
.lp-vhero-accent { color: var(--neon); }
/* Elimina azul/ciano no hero escuro — força neon em ícones e textos coloridos */
.lp-vhero .text-blue-400,
.lp-vhero .text-blue-300,
.lp-vhero .text-blue-500,
.lp-vhero .text-cyan-400,
.lp-vhero .text-cyan-300,
.lp-vhero .text-cyan-500 { color: var(--neon) !important; }
.lp-vcta-dark .text-blue-400,
.lp-vcta-dark .text-blue-300,
.lp-vcta-dark .text-cyan-400,
.lp-vcta-dark .text-cyan-300 { color: var(--neon) !important; }
/* Final CTA dark section (same bg as hero but can have its own padding) */
.lp-vcta-dark {
  position: relative;
  overflow: hidden;
  color: white;
  background: linear-gradient(135deg, #0f172a 0%, #1e293b 50%, #0f172a 100%);
}

/* =================================================================
   LP — LeadWhats killer feature grid
   ================================================================= */
.kf-grid { display:grid; grid-template-columns:1fr; gap:3rem; align-items:center; }
@media(min-width:900px) { .kf-grid { grid-template-columns:1fr 1fr; } }

/* LP — LeadWhats feature groups (SEO bullet list) */
.feat-lw-groups { display:grid; grid-template-columns:repeat(2,1fr); gap:1.5rem; margin-top:3rem; }
@media(max-width:767px) { .feat-lw-groups { grid-template-columns:1fr; } }
@media(min-width:1024px) { .feat-lw-groups { grid-template-columns:repeat(4,1fr); } }
.feat-lw-group { background:var(--paper-card); border:1.5px solid var(--border); border-radius:14px; padding:1.25rem; }
.feat-lw-group-title { font-size:0.8125rem; font-weight:700; color:var(--ink); text-transform:uppercase; letter-spacing:.04em; margin-bottom:0.875rem; display:flex; align-items:center; gap:6px; }
.feat-lw-group-title i { width:15px; height:15px; color:var(--neon); }
.feat-lw-list { list-style:none; display:flex; flex-direction:column; gap:0.5rem; }
.feat-lw-list li { font-size:0.8125rem; color:var(--ink-500); line-height:1.5; padding-left:1rem; position:relative; }
.feat-lw-list li::before { content:'✓'; position:absolute; left:0; color:var(--neon); font-weight:700; font-size:0.75rem; }

/* =================================================================
   LP — LeadWhats: Copilot IA (3 funções)
   ================================================================= */
.lw-copilot-section { background: var(--paper); }
.lw-copilot-header { max-width: 720px; margin: 0 auto 3rem; text-align: center; }
.lw-copilot-grid {
  display: grid; grid-template-columns: 1fr; gap: 1.25rem;
}
@media (min-width:1024px) { .lw-copilot-grid { grid-template-columns: repeat(3,1fr); } }

.lw-copilot-card {
  background: var(--paper-card);
  border: 1.5px solid var(--border);
  border-radius: 18px;
  padding: 1.75rem;
  display: flex; flex-direction: column; gap: 0.875rem;
  transition: border-color .2s, box-shadow .2s, transform .2s;
}
.lw-copilot-card:hover {
  border-color: rgba(37,211,102,0.35);
  box-shadow: 0 10px 28px rgba(10,10,10,0.05);
  transform: translateY(-2px);
}
.lw-copilot-icon {
  width: 52px; height: 52px; border-radius: 14px;
  display: flex; align-items: center; justify-content: center;
}
.lw-copilot-icon i { width: 24px; height: 24px; }
.lw-copilot-icon-green  { background: #ecfdf5; }
.lw-copilot-icon-green  i { color: #059669; }
.lw-copilot-icon-amber  { background: #fffbeb; }
.lw-copilot-icon-amber  i { color: #d97706; }
.lw-copilot-icon-violet { background: #faf5ff; }
.lw-copilot-icon-violet i { color: #7c3aed; }

.lw-copilot-tag {
  display: inline-block;
  font-size: 11px; font-weight: 700;
  letter-spacing: 0.06em; text-transform: uppercase;
  color: var(--ink-400);
}
.lw-copilot-h {
  font-size: 1.0625rem; font-weight: 800;
  color: var(--ink); letter-spacing: -0.015em; line-height: 1.3;
}
.lw-copilot-body {
  font-size: 0.875rem; line-height: 1.65;
  color: var(--ink-500);
}
.lw-copilot-body strong { color: var(--ink-800); font-weight: 700; }

/* Sample sugestão */
.lw-copilot-sample {
  margin-top: auto;
  padding: 0.875rem 1rem;
  background: var(--paper-dark);
  border: 1px dashed var(--border);
  border-radius: 10px;
}
.lw-copilot-sample-lbl {
  display: flex; align-items: center; gap: 4px;
  font-size: 10.5px; font-weight: 700;
  letter-spacing: 0.06em; text-transform: uppercase;
  color: #059669; margin-bottom: 5px;
}
.lw-copilot-sample-lbl i { width: 11px; height: 11px; }
.lw-copilot-sample-txt {
  font-size: 0.8125rem; color: var(--ink-600);
  line-height: 1.55; font-style: italic;
}

/* Gauges (sentimento + fechamento) */
.lw-copilot-gauges {
  margin-top: auto; display: flex; flex-direction: column; gap: 0.75rem;
}
.lw-copilot-gauge {
  padding: 0.625rem 0.875rem;
  background: var(--paper-dark);
  border-radius: 10px;
}
.lw-copilot-gauge-label {
  font-size: 11px; font-weight: 700;
  color: var(--ink-500); margin-bottom: 5px;
}
.lw-copilot-gauge-bar {
  height: 6px; background: var(--border);
  border-radius: 99px; overflow: hidden; position: relative;
}
.lw-copilot-gauge-fill {
  height: 100%; border-radius: 99px; transition: width .4s;
}
.lw-copilot-gauge-val {
  font-size: 11px; font-weight: 700;
  color: var(--ink-800); margin-top: 4px;
  display: flex; justify-content: flex-end;
}

/* Summary bullets (resumir conversa) */
.lw-copilot-summary {
  list-style: none; padding: 0; margin: 0 0 0.25rem;
  display: flex; flex-direction: column; gap: 0.5rem;
  margin-top: auto;
}
.lw-copilot-summary li {
  display: flex; align-items: flex-start; gap: 6px;
  font-size: 0.8125rem; color: var(--ink-600); line-height: 1.55;
}
.lw-copilot-summary li i {
  width: 14px; height: 14px; color: #059669;
  flex-shrink: 0; margin-top: 2px;
}

.lw-copilot-foot {
  text-align: center; font-size: 0.8125rem;
  color: var(--ink-400); margin-top: 2.5rem;
}

/* =================================================================
   LP — LeadWhats: Tudo na mesma tela (6 features CRM integradas)
   ================================================================= */
.lw-integration-grid {
  display: grid; grid-template-columns: 1fr; gap: 1rem;
}
@media (min-width:640px)  { .lw-integration-grid { grid-template-columns: repeat(2,1fr); } }
@media (min-width:1024px) { .lw-integration-grid { grid-template-columns: repeat(3,1fr); } }

.lw-integration-item {
  background: var(--paper);
  border: 1.5px solid var(--border);
  border-radius: 16px;
  padding: 1.5rem 1.25rem;
  display: flex; flex-direction: column; gap: 0.625rem;
  transition: border-color .2s, transform .2s;
}
.lw-integration-item:hover {
  border-color: rgba(37,211,102,0.35);
  transform: translateY(-2px);
}
.lw-integration-icon {
  width: 44px; height: 44px; border-radius: 12px;
  background: var(--neon-dim);
  border: 1px solid rgba(37,211,102,0.2);
  display: flex; align-items: center; justify-content: center;
}
.lw-integration-icon i { width: 22px; height: 22px; color: var(--neon); }
.lw-integration-h {
  font-size: 0.9375rem; font-weight: 800;
  color: var(--ink); letter-spacing: -0.015em; line-height: 1.3;
}
.lw-integration-body {
  font-size: 0.8125rem; line-height: 1.6;
  color: var(--ink-500);
}

/* =================================================================
   LP — LeadWhats: Multi-atendente (Scale)
   ================================================================= */
.lw-multi-section { background: var(--paper); }
.lw-multi-grid {
  display: grid; grid-template-columns: 1fr; gap: 2.5rem;
  align-items: center;
}
@media (min-width:1024px) { .lw-multi-grid { grid-template-columns: 1fr 1fr; gap: 4rem; } }

.lw-multi-copy .aww-title { margin-bottom: 1rem; }
.lw-multi-bullets {
  list-style: none; padding: 0; margin: 1.25rem 0 0;
  display: flex; flex-direction: column; gap: 0.75rem;
}
.lw-multi-bullets li {
  display: flex; align-items: flex-start; gap: 0.625rem;
  font-size: 0.9375rem; color: var(--ink-500); line-height: 1.6;
}
.lw-multi-bullets li i {
  width: 18px; height: 18px; color: var(--neon);
  flex-shrink: 0; margin-top: 2px;
}
.lw-multi-bullets li strong { color: var(--ink); font-weight: 700; }

.lw-multi-visual {
  background: var(--paper-card);
  border: 1.5px solid var(--border);
  border-radius: 20px;
  padding: 1.5rem;
  display: flex; flex-direction: column; gap: 0.875rem;
  box-shadow: 0 12px 40px rgba(10,10,10,0.06);
}
.lw-multi-number {
  padding: 1rem 1.125rem;
  background: var(--paper-dark);
  border: 1px solid var(--border);
  border-radius: 14px;
}
.lw-multi-number-hdr {
  display: flex; align-items: center; gap: 0.75rem;
}
.lw-multi-number-bubble {
  width: 42px; height: 42px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
}
.lw-multi-number-bubble i { width: 18px; height: 18px; color: #fff; }
.lw-multi-number-info { flex: 1; min-width: 0; }
.lw-multi-number-name {
  font-size: 0.9375rem; font-weight: 800; color: var(--ink);
}
.lw-multi-number-sub {
  font-size: 0.75rem; color: var(--ink-500); margin-top: 2px;
}
.lw-multi-online {
  display: inline-flex; align-items: center; gap: 4px;
  font-size: 10.5px; font-weight: 700;
  color: #059669; flex-shrink: 0;
}
.lw-multi-online-dot {
  width: 6px; height: 6px; border-radius: 50%;
  background: #059669;
  animation: lwPulse 1.8s ease-in-out infinite;
}
@keyframes lwPulse {
  0%,100% { opacity: 1; transform: scale(1); }
  50%     { opacity: .55; transform: scale(.85); }
}
.lw-multi-number-team {
  margin-top: 0.625rem; padding-top: 0.625rem;
  border-top: 1px dashed var(--border);
  font-size: 0.75rem; color: var(--ink-500);
  font-weight: 600;
}
.lw-multi-note {
  display: flex; align-items: center; gap: 8px;
  padding: 0.75rem 1rem; margin-top: 0.25rem;
  background: var(--neon-dim);
  border: 1px solid rgba(37,211,102,0.28);
  border-radius: 10px;
  font-size: 0.8125rem; color: var(--ink-800);
  font-weight: 600;
}
.lw-multi-note i {
  width: 16px; height: 16px; color: var(--neon);
  flex-shrink: 0;
}

/* =================================================================
   LP — LeadWhats: Templates + Tipos de mensagem
   ================================================================= */
.lw-types-grid {
  display: grid; grid-template-columns: 1fr; gap: 1rem;
}
@media (min-width:640px)  { .lw-types-grid { grid-template-columns: repeat(2,1fr); } }
@media (min-width:1024px) { .lw-types-grid { grid-template-columns: repeat(4,1fr); } }

.lw-types-card {
  background: var(--paper);
  border: 1.5px solid var(--border);
  border-radius: 14px;
  padding: 1.25rem 1.125rem;
  display: flex; flex-direction: column; gap: 0.5rem;
  transition: border-color .2s, transform .2s;
}
.lw-types-card:hover {
  border-color: rgba(37,211,102,0.35);
  transform: translateY(-2px);
}
.lw-types-icon {
  width: 26px; height: 26px;
  color: var(--neon);
}
.lw-types-h {
  font-size: 0.9375rem; font-weight: 800;
  color: var(--ink); letter-spacing: -0.015em;
}
.lw-types-body {
  font-size: 0.8125rem; line-height: 1.55;
  color: var(--ink-500);
}

/* =================================================================
   LP — LeadWhats: Segurança & LGPD
   ================================================================= */
.lw-lgpd-section { background: var(--paper-card); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }
.lw-lgpd-grid {
  display: grid; grid-template-columns: 1fr; gap: 2.5rem;
  align-items: center;
}
@media (min-width:1024px) { .lw-lgpd-grid { grid-template-columns: 1.15fr 1fr; gap: 3.5rem; } }

.lw-lgpd-copy .aww-title { margin-bottom: 1rem; }
.lw-lgpd-bullets {
  list-style: none; padding: 0; margin: 0;
  display: flex; flex-direction: column; gap: 1rem;
}
.lw-lgpd-bullets li {
  display: flex; align-items: flex-start; gap: 0.875rem;
  font-size: 0.9375rem; line-height: 1.6;
  color: var(--ink-500);
}
.lw-lgpd-bullets li i {
  width: 22px; height: 22px;
  color: var(--neon);
  flex-shrink: 0; margin-top: 1px;
}
.lw-lgpd-bullets li strong { color: var(--ink-800); font-weight: 700; }
.lw-lgpd-bullets li em { font-style: italic; color: var(--ink-600); }

.lw-lgpd-card {
  background: var(--paper);
  border: 1.5px solid rgba(37,211,102,0.35);
  border-radius: 18px;
  padding: 1.75rem;
  box-shadow: 0 0 0 4px var(--neon-dim);
}
.lw-lgpd-card-hdr {
  display: flex; align-items: center; gap: 0.875rem;
  margin-bottom: 1rem;
}
.lw-lgpd-card-hdr > i {
  width: 40px; height: 40px; padding: 8px;
  background: var(--neon-dim);
  border-radius: 12px; color: var(--neon);
  flex-shrink: 0;
}
.lw-lgpd-card-h {
  font-size: 1rem; font-weight: 800; color: var(--ink);
  letter-spacing: -0.015em;
}
.lw-lgpd-card-sub {
  font-size: 11.5px; font-weight: 700;
  letter-spacing: 0.06em; text-transform: uppercase;
  color: var(--neon); margin-top: 2px;
}
.lw-lgpd-card-body {
  font-size: 0.875rem; line-height: 1.7;
  color: var(--ink-500);
  margin-bottom: 1.25rem;
}
.lw-lgpd-card-body strong { color: var(--ink-800); font-weight: 700; }
.lw-lgpd-card-body em { font-style: italic; color: var(--ink-600); }
.lw-lgpd-badges {
  display: flex; flex-wrap: wrap; gap: 6px;
}
.lw-lgpd-badge {
  display: inline-flex; align-items: center; gap: 4px;
  padding: 4px 10px;
  background: var(--paper-dark);
  border: 1px solid var(--border);
  border-radius: 99px;
  font-size: 11px; font-weight: 600;
  color: var(--ink-800);
}
.lw-lgpd-badge i {
  width: 12px; height: 12px; color: #059669;
}

/* =================================================================
   LP — LeadWhats: Comparativo estendido (5 colunas)
   ================================================================= */
.lw-comp-wrap { overflow-x: auto; }
.lw-comp-table {
  width: 100%; border-collapse: collapse;
  min-width: 760px;
}
.lw-comp-table thead tr { border-bottom: 2px solid var(--border); }
.lw-comp-table th {
  padding: 0.875rem 1rem;
  font-size: 0.75rem; font-weight: 700;
  letter-spacing: 0.05em; text-transform: uppercase;
}
.lw-comp-th-func  { text-align: left; color: var(--ink-400); width: 34%; }
.lw-comp-th-us    { text-align: center; color: #059669; background: #f0fdf4; border-radius: 8px 8px 0 0; }
.lw-comp-th-other { text-align: center; color: var(--ink-500); }

.lw-comp-table tbody tr { border-bottom: 1px solid var(--border); }
.lw-comp-striped { background: var(--paper-card); }
.lw-comp-td-func { padding: 0.75rem 1rem; font-size: 0.875rem; color: var(--ink-800); font-weight: 500; }
.lw-comp-td-us   { padding: 0.75rem 1rem; text-align: center; background: rgba(5,150,105,0.04); }
.lw-comp-td      { padding: 0.75rem 1rem; text-align: center; }
.lw-comp-ico     { width: 18px; height: 18px; display: inline-block; vertical-align: middle; }
.lw-comp-ok      { color: #22c55e; }
.lw-comp-mid     { color: #f59e0b; }
.lw-comp-bad     { color: #ef4444; }

.lw-comp-pricing { background: var(--paper-card); border-top: 2px solid var(--border); }

.lw-comp-note {
  margin-top: 1rem;
  padding: 0.75rem 1rem;
  background: var(--paper);
  border-radius: 8px;
  font-size: 0.75rem; color: var(--ink-500);
  line-height: 1.55;
}
.lw-comp-note i { color: var(--ink-400); margin-right: 3px; }

/* =================================================================
   LP — Enriquecimento: mockup do hero (input CNPJs → output CSV)
   Mesmo padrão visual dos mockups da home/LeadWhats/Copilot.
   ================================================================= */
.lp-enriq-mock {
  background: var(--paper-card);
  border: 1px solid var(--border);
  border-radius: 16px;
  box-shadow: 0 24px 64px rgba(10,10,10,0.13),
              0 4px 12px rgba(10,10,10,0.06);
  overflow: hidden;
}
.lp-enriq-mock-bar {
  background: #F0EFEA;
  padding: 10px 14px;
  display: flex; align-items: center; gap: 8px;
  border-bottom: 1px solid var(--border);
}
.lp-enriq-mock-dot { width: 10px; height: 10px; border-radius: 50%; flex-shrink: 0; }
.lp-enriq-mock-dot.dot-r { background: #FF5F57; }
.lp-enriq-mock-dot.dot-y { background: #FEBC2E; }
.lp-enriq-mock-dot.dot-g { background: #28C840; }
.lp-enriq-mock-url {
  margin-left: 8px;
  font-size: 11px; color: var(--ink-500);
  letter-spacing: 0.01em;
}
.lp-enriq-mock-body {
  padding: 1rem 1.125rem 1.125rem;
  display: flex; flex-direction: column; gap: 0.625rem;
}
.lp-enriq-mock-label {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: 10.5px; font-weight: 700;
  letter-spacing: 0.08em; text-transform: uppercase;
  color: var(--ink-500);
  margin-bottom: 4px;
}
.lp-enriq-mock-label i { width: 12px; height: 12px; color: var(--ink-400); }
.lp-enriq-mock-badge {
  margin-left: auto;
  padding: 2px 8px;
  background: var(--paper-dark);
  border: 1px solid var(--border);
  border-radius: 99px;
  font-size: 9.5px; font-weight: 700; letter-spacing: 0.04em;
  color: var(--ink-600); text-transform: none;
}
/* Input fake "textarea" com CNPJs */
.lp-enriq-mock-input .lp-enriq-mock-label { display: flex; }
.lp-enriq-mock-textarea {
  background: var(--paper);
  border: 1px solid var(--border);
  border-radius: 10px;
  padding: 10px 12px;
  display: flex; flex-direction: column; gap: 3px;
  font-family: 'JetBrains Mono', ui-monospace, Menlo, monospace;
  font-size: 11.5px; color: var(--ink-800);
}
.lp-enriq-mock-textarea span { line-height: 1.5; }

/* Seta "Enriquecer" */
.lp-enriq-mock-arrow {
  align-self: center;
  display: inline-flex; align-items: center; gap: 5px;
  padding: 4px 12px;
  background: var(--neon-dim);
  border: 1px solid rgba(37,211,102,0.32);
  border-radius: 99px;
  font-size: 11px; font-weight: 700;
  color: #059669;
  text-transform: uppercase; letter-spacing: 0.06em;
}
.lp-enriq-mock-arrow i { width: 13px; height: 13px; }

/* Tabela CSV output */
.lp-enriq-mock-table {
  background: var(--paper);
  border: 1px solid var(--border);
  border-radius: 10px;
  overflow: hidden;
}
.lp-enriq-mock-row {
  display: grid;
  grid-template-columns: 1.3fr 0.9fr 1fr 0.5fr 0.6fr;
  gap: 8px;
  padding: 7px 10px;
  font-size: 10.5px; color: var(--ink-800);
  border-bottom: 1px solid var(--border);
  align-items: center;
}
.lp-enriq-mock-row:last-child { border-bottom: none; }
.lp-enriq-mock-row .truncate {
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.lp-enriq-mock-thead {
  background: var(--paper-dark);
  font-size: 9.5px; font-weight: 700;
  letter-spacing: 0.05em; text-transform: uppercase;
  color: var(--ink-500);
}
.lp-enriq-mock-row-dim { opacity: 0.55; }
.lp-enriq-mock-ok {
  display: inline-flex; align-items: center;
  padding: 1px 7px;
  background: #dcfce7;
  border: 1px solid #86efac;
  border-radius: 99px;
  color: #166534;
  font-size: 9px; font-weight: 700;
  white-space: nowrap;
}
.lp-enriq-mock-bad {
  display: inline-flex; align-items: center;
  padding: 1px 7px;
  background: #fef2f2;
  border: 1px solid #fca5a5;
  border-radius: 99px;
  color: #991b1b;
  font-size: 9px; font-weight: 700;
  white-space: nowrap;
}

/* =================================================================
   LP — /agencias: pills de filtro no mockup do hero
   ================================================================= */
.lp-agencia-mock-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 0.375rem;
  margin-top: 0.375rem;
}
.lp-agencia-mock-pill {
  display: inline-flex;
  align-items: center;
  padding: 0.25rem 0.5rem;
  background: #ecfdf5;
  border: 1px solid #a7f3d0;
  border-radius: 999px;
  color: #047857;
  font-size: 9px;
  font-weight: 600;
  white-space: nowrap;
}

/* =================================================================
   LP — /enriquecimento: chips das 18 colunas do CSV
   ================================================================= */
.lp-enriq-fields {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  margin-top: 0.75rem;
}
.lp-enriq-field {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.3125rem 0.625rem;
  background: #ecfdf5;
  border: 1px solid #a7f3d0;
  border-radius: 999px;
  color: #047857;
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 1.2;
  white-space: nowrap;
  transition: background 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
}
.lp-enriq-field::before {
  content: "";
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #10b981;
  flex-shrink: 0;
}
.lp-enriq-field:hover {
  background: #d1fae5;
  border-color: #6ee7b7;
  transform: translateY(-1px);
}

/* (Removido .lp-verticals-* — a home e /leadwhats agora usam diretamente o
   mesmo .lp-marquee-* do /startups para consistência visual e menos CSS duplicado.) */

/* =================================================================
   LP — Copilot: Comparativo (IA generalista vs IA contextualizada)
   ================================================================= */
.lp-copilot-comp-wrap { overflow-x: auto; max-width: 1100px; margin: 0 auto; }
.lp-copilot-comp {
  width: 100%; border-collapse: collapse;
  min-width: 780px;
}
.lp-copilot-comp thead tr { border-bottom: 2px solid var(--border); }
.lp-copilot-comp th {
  padding: 0.875rem 1rem;
  font-size: 0.75rem; font-weight: 700;
  letter-spacing: 0.05em; text-transform: uppercase;
}
.lp-copilot-comp .comp-th-func  { text-align: left;   color: var(--ink-400); width: 36%; }
.lp-copilot-comp .comp-th-us    { text-align: center; color: #059669; background: #f0fdf4; border-radius: 8px 8px 0 0; }
.lp-copilot-comp .comp-th-other { text-align: center; color: var(--ink-500); }
.lp-copilot-comp tbody tr { border-bottom: 1px solid var(--border); }
.lp-copilot-comp .comp-striped { background: var(--paper-card); }
.lp-copilot-comp .comp-td-func { padding: 0.75rem 1rem; font-size: 0.875rem; color: var(--ink-800); font-weight: 500; }
.lp-copilot-comp .comp-td-us   { padding: 0.75rem 1rem; text-align: center; background: rgba(5,150,105,0.04); }
.lp-copilot-comp .comp-td      { padding: 0.75rem 1rem; text-align: center; }
.lp-copilot-comp .comp-ico     { width: 18px; height: 18px; display: inline-block; vertical-align: middle; }
.lp-copilot-comp .comp-ok      { color: #22c55e; }
.lp-copilot-comp .comp-mid     { color: #f59e0b; }
.lp-copilot-comp .comp-bad     { color: #ef4444; }
.lp-copilot-comp-note {
  margin-top: 1rem;
  padding: 0.75rem 1rem;
  background: var(--paper);
  border-radius: 8px;
  font-size: 0.75rem; color: var(--ink-500);
  line-height: 1.55;
  max-width: 1100px; margin-left: auto; margin-right: auto;
}
.lp-copilot-comp-note i { color: var(--ink-400); margin-right: 3px; }

/* =================================================================
   LP — Copilot: Privacidade & LGPD
   ================================================================= */
.lp-privacy-grid {
  display: grid; grid-template-columns: 1fr; gap: 2.5rem;
  align-items: center;
}
@media (min-width:1024px) { .lp-privacy-grid { grid-template-columns: 1.15fr 1fr; gap: 3.5rem; } }
.lp-privacy-bullets {
  list-style: none; padding: 0; margin: 1.25rem 0 0;
  display: flex; flex-direction: column; gap: 1rem;
}
.lp-privacy-bullets li {
  display: flex; align-items: flex-start; gap: 0.875rem;
  font-size: 0.9375rem; line-height: 1.6;
  color: var(--ink-500);
}
.lp-privacy-bullets li i {
  width: 22px; height: 22px; color: var(--neon);
  flex-shrink: 0; margin-top: 1px;
}
.lp-privacy-bullets li strong { color: var(--ink-800); font-weight: 700; }
.lp-privacy-card {
  background: var(--paper);
  border: 1.5px solid rgba(37,211,102,0.35);
  border-radius: 18px;
  padding: 1.75rem;
  box-shadow: 0 0 0 4px var(--neon-dim);
}
.lp-privacy-card-hdr {
  display: flex; align-items: center; gap: 0.875rem;
  margin-bottom: 1rem;
}
.lp-privacy-card-hdr > i {
  width: 40px; height: 40px; padding: 8px;
  background: var(--neon-dim);
  border-radius: 12px; color: var(--neon);
  flex-shrink: 0;
}
.lp-privacy-card-h {
  font-size: 1rem; font-weight: 800; color: var(--ink);
  letter-spacing: -0.015em;
}
.lp-privacy-card-sub {
  font-size: 11.5px; font-weight: 700;
  letter-spacing: 0.06em; text-transform: uppercase;
  color: var(--neon); margin-top: 2px;
}
.lp-privacy-card-body {
  font-size: 0.875rem; line-height: 1.7;
  color: var(--ink-500);
  margin-bottom: 1.25rem;
}
.lp-privacy-card-body strong { color: var(--ink-800); font-weight: 700; }
.lp-privacy-badges {
  display: flex; flex-wrap: wrap; gap: 6px;
}
.lp-privacy-badge {
  display: inline-flex; align-items: center; gap: 4px;
  padding: 4px 10px;
  background: var(--paper-dark);
  border: 1px solid var(--border);
  border-radius: 99px;
  font-size: 11px; font-weight: 600;
  color: var(--ink-800);
}
.lp-privacy-badge i { width: 12px; height: 12px; color: #059669; }

/* LP — Copilot: pequeno ajuste no header do lp-sec para comportar descrição */
.lp-sec-hdr .lp-sec-desc {
  max-width: 640px;
  margin: 1rem auto 0;
  font-size: 0.9375rem;
  line-height: 1.7;
  color: var(--ink-500);
  text-align: center;
}

/* =================================================================
   LP — Copilot: Hero com mockup (2 colunas: texto + chat-like preview)
   ================================================================= */
.lp-copilot-hero .lp-copilot-hero-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.5rem;
  align-items: center;
  margin-top: 1.5rem;
}
@media (min-width: 960px) {
  .lp-copilot-hero .lp-copilot-hero-grid {
    grid-template-columns: 1.05fr 0.95fr;
    gap: 3.5rem;
  }
}

.lp-copilot-hero-left { display: flex; flex-direction: column; gap: 1.5rem; }

.lp-copilot-hero-h1 {
  font-size: clamp(2.25rem, 4.8vw, 4.25rem);
  font-weight: 900; line-height: 1.02;
  letter-spacing: -0.035em;
  color: var(--ink);
  margin: 0;
}
.lp-copilot-hero-h1 .hl { color: var(--neon); }

.lp-copilot-hero-desc {
  font-size: 1.0625rem; line-height: 1.65;
  color: var(--ink-500);
  max-width: 540px;
}
.lp-copilot-hero-desc strong { color: var(--ink-800); font-weight: 700; }

.lp-copilot-hero-stats {
  display: flex; flex-wrap: wrap; gap: 1.75rem;
  padding-top: 0.25rem;
}
.lp-copilot-hero-stats > div { display: flex; flex-direction: column; }
.lp-copilot-hero-stats .lp-stat-num {
  font-size: 1.625rem; font-weight: 900;
  line-height: 1; letter-spacing: -0.03em;
  color: var(--ink);
}
.lp-copilot-hero-stats .lp-stat-num.neon { color: var(--neon); }
.lp-copilot-hero-stats .lp-stat-lbl {
  font-size: 0.75rem; color: var(--ink-500);
  margin-top: 5px;
}

.lp-copilot-hero-ctas {
  display: flex; flex-wrap: wrap; align-items: center; gap: 0.75rem 1rem;
  padding-top: 0.25rem;
}
.lp-copilot-hero-ctas .lp-hero-cred {
  font-size: 0.8125rem; color: var(--ink-400);
}

/* ── Mockup (chat-like preview à direita) ───────────────────────── */
.lp-copilot-hero-mockup {
  position: relative;
  background: #0f172a;
  border: 1px solid #1e293b;
  border-radius: 18px;
  /* overflow: hidden REMOVIDO — estava cortando as chips flutuantes
     (chip-top/bottom posicionadas em -14px ficavam pela metade).
     O visual de cantos arredondados é garantido porque o .mockup-bar
     agora tem border-radius explícito no topo e o body não sangra. */
  box-shadow: 0 24px 60px rgba(15, 23, 42, 0.22),
              0 6px 14px rgba(15, 23, 42, 0.12);
}
.lp-copilot-hero-mockup-bar {
  background: #1e293b;
  padding: 9px 14px;
  display: flex; align-items: center; gap: 6px;
  border-bottom: 1px solid #0f172a;
  border-radius: 17px 17px 0 0; /* casa com .mockup border-radius:18px - 1px border */
}
.lp-copilot-hero-mockup-dot { width: 9px; height: 9px; border-radius: 50%; }
.lp-copilot-hero-mockup-dot.dot-r { background: #ef4444; }
.lp-copilot-hero-mockup-dot.dot-y { background: #f59e0b; }
.lp-copilot-hero-mockup-dot.dot-g { background: #22c55e; }
.lp-copilot-hero-mockup-url {
  flex: 1; text-align: center;
  font-size: 11px; color: #64748b;
  letter-spacing: 0.02em;
}

.lp-copilot-hero-mockup-body {
  padding: 1rem 1.125rem 1.25rem;
  display: flex; flex-direction: column; gap: 0.875rem;
}

/* Prompt "do usuário" */
.lp-copilot-hero-mockup-user {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 9px 12px;
  background: #1e293b;
  border: 1px solid #334155;
  border-radius: 10px;
  font-size: 12.5px; color: #cbd5e1;
  align-self: flex-start;
  max-width: 100%;
}
.lp-copilot-hero-mockup-user-ic { width: 14px; height: 14px; color: var(--neon); flex-shrink: 0; }
.lp-copilot-hero-mockup-user strong { color: #f1f5f9; font-weight: 700; }

/* Resposta da IA */
.lp-copilot-hero-mockup-ai {
  background: linear-gradient(180deg, rgba(37,211,102,0.08) 0%, rgba(37,211,102,0.03) 100%);
  border: 1px solid rgba(37,211,102,0.22);
  border-radius: 12px;
  padding: 0.875rem 1rem 1rem;
  display: flex; flex-direction: column; gap: 0.625rem;
}
.lp-copilot-hero-mockup-ai-hdr {
  display: inline-flex; align-items: center; gap: 5px;
  font-size: 10.5px; font-weight: 700;
  color: #4ade80;
  letter-spacing: 0.04em;
}
.lp-copilot-hero-mockup-ai-hdr i { width: 12px; height: 12px; }

.lp-copilot-hero-mockup-row {
  display: flex; flex-direction: column; gap: 3px;
  padding-top: 7px;
  border-top: 1px dashed rgba(255,255,255,0.07);
}
.lp-copilot-hero-mockup-row:first-of-type { border-top: none; padding-top: 0; }
.lp-copilot-hero-mockup-row .row-k {
  font-size: 10.5px; font-weight: 700;
  letter-spacing: 0.04em; text-transform: uppercase;
  color: #64748b;
}
.lp-copilot-hero-mockup-row .row-v {
  display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px;
  font-size: 12px; color: #cbd5e1;
}
.lp-copilot-hero-mockup-row .row-v-txt {
  font-size: 12px; color: #cbd5e1; line-height: 1.5;
}
.lp-copilot-hero-mockup-row .row-v-strong {
  color: #f1f5f9; font-weight: 700;
  white-space: nowrap;
}
.lp-copilot-hero-mockup-row .row-v-tag {
  display: inline-flex; align-items: center;
  padding: 2px 8px;
  background: rgba(251,191,36,0.16);
  border: 1px solid rgba(251,191,36,0.35);
  border-radius: 99px;
  font-size: 10px; font-weight: 700;
  color: #fbbf24;
  white-space: nowrap;
}
/* Gauge horizontal (fit %) */
.lp-copilot-hero-mockup-gauge {
  display: inline-block;
  width: 90px; height: 6px;
  background: #334155;
  border-radius: 99px; overflow: hidden;
}
.lp-copilot-hero-mockup-gauge-fill {
  display: block; height: 100%;
  background: linear-gradient(90deg, #f59e0b, #22c55e);
  border-radius: 99px;
}
/* CTA embutido no mockup */
.lp-copilot-hero-mockup-cta {
  padding-top: 8px;
  border-top: 1px dashed rgba(255,255,255,0.07);
}
.lp-copilot-hero-mockup-cta-btn {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 6px 11px;
  background: var(--neon);
  color: #0a1a0a;
  border-radius: 8px;
  font-size: 11.5px; font-weight: 700;
}
.lp-copilot-hero-mockup-cta-btn i { width: 13px; height: 13px; }

/* Floating chips */
.lp-copilot-hero-chip {
  position: absolute;
  display: inline-flex; align-items: center; gap: 6px;
  padding: 6px 11px;
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 99px;
  box-shadow: 0 4px 14px rgba(10,10,10,0.08);
  font-size: 11px; font-weight: 700;
  color: var(--ink-800);
  white-space: nowrap;
  z-index: 2;
}
.lp-copilot-hero-chip i { width: 13px; height: 13px; color: var(--neon); }
.lp-copilot-hero-chip.chip-top    { top: -14px; right: 18px; }
.lp-copilot-hero-chip.chip-bottom { bottom: -14px; left: 18px; }

/* =================================================================
   LP — Copilot: "Em ação" demos (3 mockups de output real)
   ================================================================= */
.lp-copilot-demos-section { background: var(--paper); }
.lp-copilot-demos {
  display: grid; grid-template-columns: 1fr; gap: 1.25rem;
  margin-top: 1rem;
}
@media (min-width:900px)  { .lp-copilot-demos { grid-template-columns: repeat(2, 1fr); } }
@media (min-width:1180px) { .lp-copilot-demos { grid-template-columns: repeat(3, 1fr); gap: 1.5rem; } }

.lp-copilot-demo {
  background: var(--paper-card);
  border: 1.5px solid var(--border);
  border-radius: 18px;
  padding: 1.5rem 1.5rem 1.75rem;
  display: flex; flex-direction: column; gap: 0.875rem;
  transition: border-color .2s, box-shadow .2s, transform .2s;
}
.lp-copilot-demo:hover {
  border-color: rgba(37,211,102,0.4);
  box-shadow: 0 12px 28px rgba(10,10,10,0.06);
  transform: translateY(-2px);
}

.lp-copilot-demo-hdr {
  display: flex; align-items: center; justify-content: space-between;
}
.lp-copilot-demo-badge {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 5px 11px;
  background: var(--neon-dim);
  border: 1px solid rgba(37,211,102,0.28);
  border-radius: 99px;
  font-size: 11px; font-weight: 700;
  color: #059669;
}
.lp-copilot-demo-badge i { width: 13px; height: 13px; }
.lp-copilot-demo-num {
  font-size: 28px; font-weight: 900;
  letter-spacing: -0.04em;
  color: var(--ink-100); line-height: 1;
}

/* Input row */
.lp-copilot-demo-input {
  display: flex; flex-direction: column; gap: 6px;
}
.lp-copilot-demo-input-lbl {
  font-size: 10.5px; font-weight: 700;
  letter-spacing: 0.08em; text-transform: uppercase;
  color: var(--ink-400);
}
.lp-copilot-demo-input-chip {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 8px 12px;
  background: var(--paper-dark);
  border: 1px solid var(--border);
  border-radius: 10px;
  font-size: 12.5px; font-weight: 600;
  color: var(--ink-800);
}
.lp-copilot-demo-input-chip i {
  width: 15px; height: 15px; color: var(--ink-500);
  flex-shrink: 0;
}

/* Seta */
.lp-copilot-demo-arrow {
  align-self: center;
  font-size: 20px; font-weight: 700;
  color: var(--neon);
  line-height: 1;
}

/* Output box */
.lp-copilot-demo-output {
  background: #0f172a;
  border: 1px solid #1e293b;
  border-radius: 12px;
  padding: 0.875rem 1rem 1rem;
  display: flex; flex-direction: column; gap: 0.625rem;
}
.lp-copilot-demo-output-lbl {
  display: inline-flex; align-items: center; gap: 5px;
  font-size: 10.5px; font-weight: 700;
  letter-spacing: 0.05em;
  color: var(--neon);
}
.lp-copilot-demo-output-lbl i { width: 12px; height: 12px; }

.lp-copilot-demo-field {
  display: flex; flex-direction: column; gap: 3px;
  padding-top: 7px;
  border-top: 1px dashed rgba(255,255,255,0.08);
}
.lp-copilot-demo-field:first-of-type { border-top: none; padding-top: 0; }
.lp-copilot-demo-field-k {
  font-size: 10.5px; font-weight: 700;
  letter-spacing: 0.04em; text-transform: uppercase;
  color: #64748b;
}
.lp-copilot-demo-field-v {
  font-size: 12.5px; line-height: 1.5;
  color: #cbd5e1;
  display: flex; flex-wrap: wrap; gap: 6px 10px;
  align-items: center;
}
.lp-copilot-muted { color: #64748b; font-size: 11px; }

.lp-copilot-tag-hot {
  display: inline-flex; align-items: center;
  padding: 3px 9px;
  background: rgba(251,191,36,0.15);
  border: 1px solid rgba(251,191,36,0.35);
  border-radius: 99px;
  font-size: 10.5px; font-weight: 700;
  color: #fbbf24;
}
.lp-copilot-tag-neutral {
  display: inline-flex;
  padding: 3px 9px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 99px;
  font-size: 11px; font-weight: 600;
  color: #e2e8f0;
}

/* WhatsApp mockup (Demo 2) — mensagem estilo bubble WhatsApp + meta */
.lp-copilot-wa-mock {
  display: flex; flex-direction: column; gap: 0.625rem;
}
.lp-copilot-wa-mock-bubble {
  align-self: flex-start;
  background: #25D366;
  color: #0a1a0a;
  border-radius: 12px 12px 12px 3px;
  padding: 0.75rem 0.875rem;
  font-size: 12.5px; line-height: 1.55;
  max-width: 100%;
}
.lp-copilot-wa-mock-bubble strong { color: #052e16; font-weight: 700; }
.lp-copilot-wa-mock-meta {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: 10.5px; font-weight: 600;
  color: #4ade80;
}
.lp-copilot-wa-mock-meta i { width: 12px; height: 12px; }
.lp-copilot-cursor {
  color: var(--neon);
  animation: lpCopilotBlink 1s steps(1) infinite;
}
@keyframes lpCopilotBlink {
  0%,50% { opacity: 1; }
  51%,100% { opacity: 0; }
}
.lp-copilot-demo-meta {
  display: flex; flex-wrap: wrap; gap: 10px;
  font-size: 10.5px; font-weight: 600;
  color: #4ade80;
}

.lp-copilot-demos-foot {
  margin-top: 2rem;
  text-align: center;
  font-size: 0.8125rem;
  color: var(--ink-500);
  max-width: 720px; margin-left: auto; margin-right: auto;
}
.lp-copilot-demos-foot strong { color: var(--ink-800); }

/* =================================================================
   LP — Copilot: Trust strip (fontes e integrações)
   ================================================================= */
.lp-copilot-trust {
  background: var(--paper-card);
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  padding: 1.25rem 0;
}
.lp-copilot-trust-inner {
  display: flex; flex-wrap: wrap; align-items: center;
  justify-content: center; gap: 1rem 1.25rem;
}
.lp-copilot-trust-lbl {
  font-size: 10.5px; font-weight: 700;
  letter-spacing: 0.1em; text-transform: uppercase;
  color: var(--ink-400);
}
.lp-copilot-trust-items {
  display: flex; flex-wrap: wrap; align-items: center;
  gap: 0.5rem 0.875rem;
}
.lp-copilot-trust-item {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: 0.8125rem;
  color: var(--ink-500);
}
.lp-copilot-trust-item strong { color: var(--ink-800); font-weight: 700; }
.lp-copilot-trust-item i {
  width: 15px; height: 15px;
  color: var(--neon);
  flex-shrink: 0;
}
.lp-copilot-trust-sep {
  color: var(--ink-200);
  user-select: none;
}
@media (max-width:640px) {
  .lp-copilot-trust-sep { display: none; }
}

/* (Badges "EM BREVE" removidas — todas as features anunciadas já existem em produção.) */

/* =================================================================
   REGISTRO — animação do check de sucesso
   ================================================================= */
.check-animated { stroke-dasharray:30; stroke-dashoffset:30; animation:drawCheck 0.4s ease-out 0.2s forwards; }
@keyframes drawCheck { to { stroke-dashoffset:0; } }
#estado-sucesso { animation:fadeScaleIn 0.3s ease-out forwards; }
@keyframes fadeScaleIn { from { opacity:0; transform:scale(0.95); } to { opacity:1; transform:scale(1); } }

/* =================================================================
   LP — Testimonials
   ================================================================= */
.testi-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; }
@media(max-width:767px) { .testi-grid { grid-template-columns:1fr; } }
@media(min-width:768px) and (max-width:1023px) { .testi-grid { grid-template-columns:repeat(2,1fr); } }
.testi-card { background:#fff; border:1px solid var(--border); border-radius:16px; padding:1.75rem; display:flex; flex-direction:column; gap:1rem; }
.testi-stars { color:#f59e0b; font-size:1rem; letter-spacing:2px; }
.testi-body { font-size:0.9375rem; color:var(--ink-500); line-height:1.7; flex:1; }
.testi-author { display:flex; align-items:center; gap:0.75rem; }
.testi-avatar { width:40px; height:40px; border-radius:50%; background:var(--neon); color:var(--ink); font-weight:800; font-size:1rem; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.testi-name { font-size:0.9375rem; font-weight:700; color:var(--ink); }
.testi-role { font-size:0.8125rem; color:var(--ink-400); margin-top:1px; }
.testi-footer { text-align:center; font-size:0.8125rem; color:var(--ink-400); margin-top:2rem; }
/* Use-case card (verticais) — substitui depoimentos genéricos */
.testi-usecase-icon {
  width:48px; height:48px; border-radius:14px;
  background:var(--neon-dim); border:1px solid rgba(37,211,102,0.25);
  display:flex; align-items:center; justify-content:center;
}
.testi-usecase-icon i { width:22px; height:22px; color:var(--neon); }
.testi-usecase-h { font-size:1.0625rem; font-weight:800; color:var(--ink); letter-spacing:-0.015em; }
.testi-usecase-tags { display:flex; flex-wrap:wrap; gap:6px; margin-top:auto; }
.testi-tag {
  padding:4px 10px; border-radius:99px;
  font-size:11px; font-weight:600;
  background:var(--paper-dark); color:var(--ink-600);
  border:1px solid var(--border);
}

/* =================================================================
   LP — Economia (savings comparison)
   ================================================================= */
.econ-grid { display:grid; grid-template-columns:1fr auto 1fr; gap:1.5rem; align-items:center; max-width:900px; margin:0 auto; }
@media(max-width:767px) { .econ-grid { grid-template-columns:1fr; gap:0.75rem; } .econ-vs { text-align:center; } }
.econ-col { border-radius:16px; padding:1.5rem; }
.econ-col-bad { background:#fff; border:1.5px solid #fecaca; }
.econ-col-good { background:#f0fdf4; border:1.5px solid #a7f3d0; }
.econ-col-label { font-size:0.75rem; font-weight:700; text-transform:uppercase; letter-spacing:.06em; color:var(--ink-400); margin-bottom:1rem; }
.econ-item { display:flex; justify-content:space-between; align-items:center; gap:0.5rem; padding:0.5rem 0; border-bottom:1px solid rgba(0,0,0,.06); font-size:0.875rem; color:var(--ink-600); }
.econ-item:last-of-type { border-bottom:none; }
.econ-price { font-weight:600; color:var(--ink); white-space:nowrap; font-size:0.875rem; }
.econ-price-bad { color:#dc2626; }
.econ-price-ok { color:#059669; }
.econ-total { margin-top:1rem; padding-top:0.75rem; border-top:2px solid rgba(0,0,0,.08); font-size:0.9375rem; color:var(--ink-600); }
.econ-total strong { color:var(--ink); }
.econ-total-good strong { color:#059669; }
.econ-vs { font-size:1.5rem; font-weight:900; color:var(--ink-300); text-align:center; }

/* =================================================================
   LP LIGHT — Sistema de Design para Landing Pages Claras (Awwwards)
   Paleta monocromática + neon #25D366. Tipografia oversized.
   Layout assimétrico / Bento Grid. Sem hero centralizado padrão.
   ================================================================= */

/* ── Eyebrow badge ─────────────────────────────────────────────── */
.lp-eyebrow {
  display: inline-flex; align-items: center; gap: 8px;
  background: rgba(37,211,102,0.20); color: #1a5c38;
  border: 1px solid rgba(37,211,102,0.60); padding: 5px 13px;
  border-radius: 100px;
  font-size: 10.5px; font-weight: 700; letter-spacing: 0.09em;
  text-transform: uppercase; margin-bottom: 1.125rem;
}
.lp-eyebrow::before {
  content: ''; display: inline-block; flex-shrink: 0;
  width: 6px; height: 6px; border-radius: 50%; background: var(--neon);
}
.lp-eyebrow-tag { font-weight: 800; }
.lp-eyebrow-tag::after { content: " ·"; font-weight: 400; opacity: 0.5; margin-right: 0.125rem; }
.lp-eyebrow-sep { opacity: 0.5; }

/* ── Hero: split assimétrico ───────────────────────────────────── */
.lp-hero-split { padding: calc(64px + 5rem) 0 3.5rem; background: var(--paper); }
@media (max-width:767px) { .lp-hero-split { padding-top: calc(64px + 2.5rem); padding-bottom: 3rem; } }
/* Override para páginas com id="hero-section" (agencias, fintechs…) que herdam min-height:100dvh */
#hero-section.lp-hero-split {
  min-height: auto;
  align-items: flex-start;
  padding-top: calc(64px + 5rem);
  padding-bottom: 4rem;
}
@media (max-width:767px) {
  #hero-section.lp-hero-split { padding-top: calc(64px + 2.5rem); padding-bottom: 3rem; }
}
.lp-hero-grid {
  display: grid; grid-template-columns: 1.1fr 0.9fr;
  gap: 5rem; align-items: start; margin-top: 1.5rem;
}
@media (max-width: 1023px) {
  .lp-hero-grid { grid-template-columns: 1fr; gap: 2.5rem; }
}

/* ── Tipografia oversized ──────────────────────────────────────── */
.lp-hero-h1 {
  font-size: clamp(3.25rem, 7vw, 6.75rem);
  font-weight: 900; line-height: 0.93; letter-spacing: -0.04em;
  color: var(--ink);
}
.lp-hero-h1 em { font-style: italic; color: var(--ink-400); }
.lp-hero-h1 .hl { color: var(--neon); }

.lp-hero-side {
  display: flex; flex-direction: column; gap: 1.5rem;
  padding-top: 0.75rem;
}
.lp-hero-desc {
  font-size: 1.0625rem; line-height: 1.7; color: var(--ink-600);
}

/* ── CTA primário neon (fundo claro) ──────────────────────────── */
.btn-neon-primary {
  display: inline-flex; align-items: center; gap: 0.5rem;
  background: var(--neon); color: #0A0A0A; font-weight: 700;
  font-size: 0.9375rem; padding: 14px 28px; border-radius: 8px;
  text-decoration: none; border: none; cursor: pointer;
  box-shadow: 3px 3px 0 rgba(0,0,0,0.28);
  transition: transform 0.12s ease, box-shadow 0.12s ease;
  width: fit-content;
}
.btn-neon-primary:hover {
  transform: translate(2px, 2px);
  box-shadow: 1px 1px 0 rgba(0,0,0,0.28);
}
.btn-lp-sec {
  display: inline-flex; align-items: center; gap: 0.375rem;
  font-size: 0.875rem; color: var(--ink-400); font-weight: 500;
  text-decoration: none; transition: color 0.18s; width: fit-content;
}
.btn-lp-sec:hover { color: var(--ink); }

/* ── Hero stats row ────────────────────────────────────────────── */
.lp-hero-stats {
  display: flex; gap: 1.5rem; flex-wrap: wrap;
}
.lp-stat-num {
  display: block; font-size: 1.875rem; font-weight: 900;
  color: var(--ink); line-height: 1; letter-spacing: -0.04em;
}
.lp-stat-lbl {
  display: block; font-size: 0.8125rem; font-weight: 500;
  color: var(--ink-400); margin-top: 4px;
}

/* ── Hero CTA group ────────────────────────────────────────────── */
.lp-hero-ctas { display: flex; align-items: center; gap: 1rem; flex-wrap: wrap; }
.lp-hero-cred { font-size: 0.8125rem; color: var(--ink-400); }

/* ── Section padding variants ──────────────────────────────────── */
.lp-sec-paper-dark, .lp-sec.lp-sec-paper-dark { background: var(--paper-dark); }
.lp-sec-hdr { margin-bottom: 3rem; }

/* ── Global highlight accent ───────────────────────────────────── */
.hl { color: var(--neon); }

/* ── Separador marquee ─────────────────────────────────────────── */
.lp-marquee-wrap,
.lp-marquee {
  overflow: hidden; padding: 1.25rem 0;
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  background: var(--paper);
}
.lp-marquee-track {
  display: flex; gap: 3.5rem; white-space: nowrap;
  animation: lp-marquee-anim 28s linear infinite;
}
.lp-marquee-track:hover { animation-play-state: paused; }
@keyframes lp-marquee-anim {
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}
.lp-marquee-item {
  display: inline-flex; align-items: center; gap: 0.5rem;
  font-size: 0.8125rem; font-weight: 600; color: var(--ink-400);
}
.lp-marquee-item i { color: var(--neon); width: 14px; height: 14px; flex-shrink: 0; }

/* ── Secções compartilhadas ────────────────────────────────────── */
.lp-sec { padding: 5.5rem 0; background: var(--paper); }
.lp-sec-white { padding: 5.5rem 0; background: var(--paper-card); }
.lp-sec-dark { padding: 5.5rem 0; background: var(--ink); }
.lp-sec-sm { padding: 3.5rem 0; }

.lp-label {
  display: inline-block; font-size: 10.5px; font-weight: 700;
  letter-spacing: 0.12em; text-transform: uppercase;
  color: var(--neon); margin-bottom: 0.875rem;
}
.lp-sec-title {
  font-size: clamp(2rem, 4vw, 3.25rem); font-weight: 800;
  letter-spacing: -0.03em; line-height: 1.05; color: var(--ink);
  margin-bottom: 1.25rem;
}
.lp-sec-lead {
  font-size: 1.0625rem; line-height: 1.7; color: var(--ink-600);
  max-width: 42rem;
}
.lp-sec-dark .lp-sec-title { color: #fff; }
.lp-sec-dark .lp-sec-lead { color: rgba(255,255,255,.65); }
.lp-sec-dark .lp-label { color: var(--neon); }
.lp-bc-eyebrow { font-size: 10.5px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--ink-400); margin-bottom: 0.75rem; display: block; }
.lp-bc.dark .lp-bc-eyebrow { color: rgba(255,255,255,0.45); }
.lp-bc.neon-bg .lp-bc-eyebrow { color: rgba(10,10,10,0.55); }

/* ── Bento cell content classes ────────────────────────────────── */
.lp-bc-num {
  font-size: clamp(2.5rem,5vw,4rem); font-weight: 900;
  letter-spacing: -0.04em; line-height: 1; color: var(--ink);
}
.lp-bc.dark .lp-bc-num { color: #fff; }
.lp-bc-headline {
  font-size: 1.5rem; font-weight: 900; color: var(--ink);
  letter-spacing: -0.03em; line-height: 1.1;
}
.lp-bc-subhead {
  font-size: 1.25rem; font-weight: 800; color: var(--ink); line-height: 1.2;
}
.lp-bc-body { font-size: 0.9375rem; color: var(--ink-400); margin-top: 0.5rem; }
.lp-bc.dark .lp-bc-headline { color: #fff; }
.lp-bc.dark .lp-bc-subhead { color: rgba(255,255,255,0.85); }
.lp-bc.dark .lp-bc-body { color: rgba(255,255,255,0.6); }
.lp-bc.neon-bg .lp-bc-body { color: rgba(10,10,10,0.65); margin-top: 0.25rem; }
.lp-bc-desc { font-size: 0.875rem; color: var(--ink-400); margin-top: 0.5rem; }

/* ── Stat num accent ────────────────────────────────────────────── */
.lp-stat-num.neon { color: var(--neon); }

/* ── Bento Grid ────────────────────────────────────────────────── */
.lp-bento {
  display: grid; grid-template-columns: repeat(6, 1fr);
  gap: 0.875rem; margin-top: 3rem;
}
.lp-bc { /* bento cell base */
  background: var(--paper-card); border: 1px solid var(--border);
  border-radius: 18px; padding: 2rem; overflow: hidden;
  position: relative; transition: border-color 0.2s, box-shadow 0.2s;
}
.lp-bc:hover {
  border-color: rgba(37,211,102,0.4);
  box-shadow: 0 4px 24px rgba(37,211,102,0.06);
}
.lp-bc.s2 { grid-column: span 2; }
.lp-bc.s3 { grid-column: span 3; }
.lp-bc.s4 { grid-column: span 4; }
.lp-bc.s6 { grid-column: span 6; }
.lp-bc.dark {
  background: var(--ink); border-color: var(--ink-800); color: #fff;
}
.lp-bc.dark:hover { border-color: var(--neon); box-shadow: 0 4px 24px rgba(37,211,102,0.12); }
.lp-bc.neon-bg { background: var(--neon); border-color: var(--neon); }
.lp-bc.paper { background: var(--paper); }
@media (max-width: 1023px) {
  .lp-bento { grid-template-columns: repeat(2, 1fr); }
  .lp-bc.s4, .lp-bc.s3, .lp-bc.s6 { grid-column: span 2; }
  .lp-bc.s2 { grid-column: span 1; }
}
@media (max-width: 600px) {
  .lp-bento { grid-template-columns: 1fr; }
  .lp-bc, .lp-bc.s2, .lp-bc.s3, .lp-bc.s4, .lp-bc.s6 { grid-column: span 1; }
}

.lp-bc-icon {
  width: 40px; height: 40px; background: var(--neon-dim); border-radius: 10px;
  display: flex; align-items: center; justify-content: center;
  margin-bottom: 1rem; color: var(--neon); flex-shrink: 0;
}
.lp-bc-icon i { width: 20px; height: 20px; }
.lp-bc.dark .lp-bc-icon { background: rgba(255,255,255,.08); }
.lp-bc-num {
  font-size: clamp(3rem, 5.5vw, 5rem); font-weight: 900;
  letter-spacing: -0.05em; line-height: 1; color: var(--ink);
}
.lp-bc.dark .lp-bc-num { color: var(--neon); }
.lp-bc.neon-bg .lp-bc-num { color: var(--ink); }
.lp-bc-title {
  font-size: 1.0625rem; font-weight: 700; color: var(--ink);
  margin-bottom: 0.5rem; line-height: 1.3;
}
.lp-bc.dark .lp-bc-title { color: #fff; }
.lp-bc.neon-bg .lp-bc-title { color: var(--ink); }
.lp-bc-desc {
  font-size: 0.875rem; color: var(--ink-400); line-height: 1.65;
}
.lp-bc.dark .lp-bc-desc { color: rgba(255,255,255,.55); }
.lp-bc.neon-bg .lp-bc-desc { color: rgba(10,10,10,.7); }
.lp-bc-tag {
  display: inline-block; font-size: 10px; font-weight: 700;
  letter-spacing: 0.1em; text-transform: uppercase;
  background: var(--neon-dim); color: var(--neon);
  border: 1px solid var(--neon-mid); padding: 3px 8px;
  border-radius: 100px; margin-bottom: 0.75rem;
}

/* ── Use-case cards ────────────────────────────────────────────── */
.lp-uc-grid {
  display: grid; grid-template-columns: repeat(2, 1fr);
  gap: 0.875rem; margin-top: 3rem;
}
@media (max-width: 768px) { .lp-uc-grid { grid-template-columns: 1fr; } }
.lp-uc-icon {
  width: 40px; height: 40px;
  display: flex; align-items: center; justify-content: center;
  background: var(--paper-dark); border: 1px solid var(--border);
  border-radius: 10px; margin-bottom: 1rem; flex-shrink: 0;
}
.lp-uc-icon i { width: 20px; height: 20px; color: var(--ink-400); stroke-width: 1.75; }
.lp-uc-card {
  background: var(--paper-card); border: 1px solid var(--border);
  border-radius: 16px; padding: 1.75rem; position: relative;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.lp-uc-card:hover {
  border-color: var(--neon);
  box-shadow: 0 0 0 1px var(--neon), 0 4px 20px rgba(37,211,102,0.08);
}
.lp-uc-title {
  font-size: 1.0625rem; font-weight: 700; color: var(--ink);
  margin-bottom: 0.5rem; line-height: 1.3;
}
.lp-uc-quote {
  font-size: 0.9375rem; font-style: italic; color: var(--ink-600);
  border-left: 3px solid var(--neon); padding-left: 1rem;
  margin-bottom: 1rem; line-height: 1.6;
}
.lp-uc-desc { font-size: 0.875rem; color: var(--ink-400); line-height: 1.65; }
.lp-uc-items { list-style: none; padding: 0; margin: 0.75rem 0 0; }
.lp-uc-items li {
  font-size: 0.8125rem; color: var(--ink-400); padding: 4px 0;
  display: flex; align-items: flex-start; gap: 8px;
}
.lp-uc-items li::before {
  content: ''; width: 6px; height: 6px; border-radius: 50%;
  background: var(--neon); flex-shrink: 0; margin-top: 5px;
}

/* ── Steps ─────────────────────────────────────────────────────── */
.lp-steps {
  display: grid; grid-template-columns: repeat(4, 1fr);
  gap: 0.875rem; margin-top: 3rem; counter-reset: lp-step;
}
@media (max-width: 900px) { .lp-steps { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 480px) { .lp-steps { grid-template-columns: 1fr; } }
.lp-step {
  background: var(--paper-card); border: 1px solid var(--border);
  border-radius: 16px; padding: 1.75rem; counter-increment: lp-step;
}
.lp-step::before {
  content: counter(lp-step, decimal-leading-zero);
  display: block; font-size: 2.25rem; font-weight: 900;
  color: var(--border); line-height: 1; margin-bottom: 1rem;
  letter-spacing: -0.04em;
}
.lp-step-title { font-size: 1rem; font-weight: 700; color: var(--ink); margin-bottom: 0.5rem; }
.lp-step-desc { font-size: 0.875rem; color: var(--ink-400); line-height: 1.65; }

/* ── Final CTA strip ───────────────────────────────────────────── */
.lp-cta-strip { background: var(--ink); padding: 6.5rem 0; }
.lp-cta-strip-inner {
  display: grid; grid-template-columns: 1fr auto;
  gap: 4rem; align-items: center;
}
@media (max-width: 768px) { .lp-cta-strip-inner { grid-template-columns: 1fr; gap: 2rem; } }
.lp-cta-h {
  font-size: clamp(2.25rem, 5vw, 4rem); font-weight: 900;
  letter-spacing: -0.04em; line-height: 0.97; color: #fff;
}
.lp-cta-h .hl { color: var(--neon); }
.lp-cta-sub { font-size: 1rem; color: rgba(255,255,255,.55); margin-top: 1rem; }
.lp-cta-trust { display: flex; gap: 2rem; margin-top: 2rem; flex-wrap: wrap; }
.lp-cta-trust-item { color: rgba(255,255,255,0.6); font-size: 0.9375rem; }
.lp-cta-col { display: flex; flex-direction: column; gap: 1rem; align-items: flex-start; }
.lp-cta-plans-link { color: rgba(255,255,255,0.5); font-size: 0.875rem; text-decoration: none; }
.lp-cta-plans-link:hover { color: rgba(255,255,255,0.8); }

/* ── Trust bar ─────────────────────────────────────────────────── */
.lp-trust {
  display: flex; align-items: center; gap: 2rem; flex-wrap: wrap;
  padding: 1.25rem 0; border-top: 1px solid var(--border);
}
.lp-trust-item {
  display: flex; align-items: center; gap: 0.5rem;
  font-size: 0.8125rem; color: var(--ink-400); white-space: nowrap;
}
.lp-trust-item i { color: var(--neon); width: 15px; height: 15px; }

/* ── Neon accent decoration ────────────────────────────────────── */
.lp-neon-dot {
  display: inline-block; width: 8px; height: 8px;
  background: var(--neon); border-radius: 50%;
  box-shadow: 0 0 8px rgba(37,211,102,0.6);
}
.lp-neon-bar {
  display: inline-block; width: 28px; height: 3px;
  background: var(--neon); border-radius: 2px;
  margin-right: 8px; vertical-align: middle;
}

/* ── Alternating feature row ───────────────────────────────────── */
.lp-alt-row {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 4rem; align-items: center; padding: 3.5rem 0;
  border-bottom: 1px solid var(--border);
}
.lp-alt-row:last-child { border-bottom: none; }
.lp-alt-row.rev { direction: rtl; }
.lp-alt-row.rev > * { direction: ltr; }
@media (max-width: 768px) {
  .lp-alt-row { grid-template-columns: 1fr; gap: 2rem; direction: ltr; }
  .lp-alt-row.rev { direction: ltr; }
}
.lp-alt-visual {
  background: var(--paper); border: 1px solid var(--border);
  border-radius: 16px; min-height: 220px;
  display: flex; align-items: center; justify-content: center;
  overflow: hidden; position: relative;
}

/* Direct-answer block now uses the canonical .lp-sec-white pattern
   (lp-label + lp-sec-title + lp-sec-lead) for visual consistency
   with /prospeccao-de-leads-b2b. See CLAUDE.md > SEO Standards. */
