/* =================================================================
   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-400:     #777770;
  --ink-200:     #C8C8C0;
  --ink-100:     #E4E4DC;
  --paper:       #F7F6F1;
  --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; }
.aww-sec    { padding:5.5rem 0; }
.aww-sec-sm { padding:4rem 0; }
@media (min-width:1024px) { .aww-wrap { padding:0 3rem; } }
@media (max-width:767px)  { .aww-sec { padding:3.5rem 0; } .aww-sec-sm { padding:2.5rem 0; } }

/* Tipografia */
.aww-headline {
  font-size: clamp(3.5rem,9.5vw,10rem);
  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-400);
  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;
  transition:box-shadow 0.2s, transform 0.2s;
  text-decoration:none; will-change:transform;
}
.btn-neon:hover { box-shadow:var(--neon-glow); color:var(--ink); }

.btn-ghost {
  display:inline-flex; align-items:center; gap:0.5rem;
  padding:0.875rem 2rem;
  background:transparent; color:var(--ink-600);
  font-size:0.9375rem; font-weight:600;
  border-radius:12px; border:1.5px solid var(--border);
  cursor:pointer; transition:border-color 0.2s, background 0.2s;
  text-decoration:none;
}
.btn-ghost:hover { border-color:var(--ink-200); background:var(--paper-card); color:var(--ink); }

/* 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); }
.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:100dvh;
  padding-top:7rem;
  padding-bottom:4rem;
  position:relative;
  overflow:hidden;
  display:flex;
  align-items:center;
}
.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: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.5rem;
}
.hero-eyebrow-dot { width:6px;height:6px;border-radius:50%;background:var(--neon); }

/* Text column */
.hero-headline    { margin-bottom:1.75rem; }
.hero-line-block  { display:block; }
.hero-tagline     { font-size:clamp(1rem,2vw,1.25rem);font-weight:700;color:var(--ink-800);margin-bottom:0.75rem;line-height:1.35; }
.hero-body        { margin-bottom:2.25rem; }
.hero-ctas        { display:flex;flex-wrap:wrap;gap:0.875rem;margin-bottom:1.5rem; }
.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 { 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:55fr 45fr !important; } }

/* 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); } }

/* =================================================================
   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; }

/* =================================================================
   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; justify-content: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:2.25rem; font-weight:900; color:var(--neon); }

.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.35);margin-top:2px; }
/* 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-400);margin-bottom:1rem; }
.pillar-body-nm { font-size:0.875rem;line-height:1.7;color:var(--ink-400); }
.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%);
}
/* 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%);
}

/* =================================================================
   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); } }
