/*
Theme Name:   Nexas Child
Theme URI:    https://nexasconsultoria.com.br
Description:  Tema filho da Astra para a Nexas Consultoria Empresarial. Preto e cobre, fundo infinito em parallax.
Author:       Nexas
Template:     astra
Version:      2.0.0
Text Domain:  nexas-child
*/

/* ==========================================================================
   1. TOKENS — preto & cobre, agora dark-first
   ========================================================================== */

:root {
  /* fundo */
  --nx-ink:        #0A0B0D; /* preto base — sob tudo */
  --nx-ink-2:      #0E1013; /* preto elevado */
  --nx-panel:      rgba(20, 23, 27, .72); /* vidro sobre o campo */
  --nx-panel-solid:#14171B;
  --nx-edge:       rgba(255, 255, 255, .07);
  --nx-edge-2:     rgba(255, 255, 255, .13);

  /* cobre */
  --nx-copper:        #D2913F;
  --nx-copper-bright: #E8B26A; /* texto pequeno em cobre, contraste maior */
  --nx-copper-strong: #A96A28;
  --nx-copper-glow:   rgba(210, 145, 63, .16);

  /* texto */
  --nx-text:      #EFEAE2;
  --nx-text-soft: #A9A39A;
  --nx-text-dim:  #7C766E;

  /* semânticos */
  --nx-success: #4FB68C;
  --nx-danger:  #E0715C;

  /* tipografia */
  --nx-font-title: 'Sora', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --nx-font-text:  'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;

  /* espaçamento — escala 8pt */
  --nx-s1: .5rem;  --nx-s2: 1rem;  --nx-s3: 1.5rem;
  --nx-s4: 2rem;   --nx-s5: 3rem;  --nx-s6: 5rem;

  --nx-radius: 14px;
  --nx-maxw: 1180px;

  /* deslocamentos do fundo, escritos pelo JS */
  --nx-y1: 0px; --nx-y2: 0px; --nx-y3: 0px;
  --nx-progress: 0;
}

/* ==========================================================================
   2. FUNDO INFINITO — o livro-razão
   Papel pautado + colunas de lançamento + números tabulares em parallax.
   Padrões tileáveis com deslocamento em módulo: a folha nunca termina.
   ========================================================================== */

.nx-bg {
  position: fixed; inset: 0; z-index: 0; pointer-events: none;
  background: var(--nx-ink);
  overflow: hidden;
}
.nx-bg__layer { position: absolute; inset: -20vh -10vw; will-change: transform; }

/* 1. calor do abajur — luz baixa de escritório à noite */
.nx-bg__embers {
  background:
    radial-gradient(52vw 52vw at 14% 12%, rgba(210,145,63,.12), transparent 62%),
    radial-gradient(40vw 40vw at 86% 46%, rgba(14,74,87,.14),  transparent 66%),
    radial-gradient(46vw 46vw at 44% 92%, rgba(210,145,63,.08), transparent 64%);
  transform: translate3d(0, var(--nx-y1), 0);
}

/* 2. papel pautado — a linha do razão, a cada 34px */
.nx-bg__ruled {
  background-image: linear-gradient(to bottom, rgba(239,234,226,.055) 1px, transparent 1px);
  background-size: 100% 34px;
  transform: translate3d(0, var(--nx-y2), 0);
  mask-image: radial-gradient(130% 95% at 50% 30%, #000 30%, transparent 100%);
  -webkit-mask-image: radial-gradient(130% 95% at 50% 30%, #000 30%, transparent 100%);
}

/* 3. colunas de lançamento + margem de cobre, como folha de razão de verdade */
.nx-bg__columns {
  background-image:
    linear-gradient(to right, rgba(210,145,63,.20) 1px, transparent 1px),
    linear-gradient(to right, rgba(239,234,226,.05) 1px, transparent 1px);
  background-size: 560px 100%, 140px 100%;
  background-position: 96px 0, 0 0;
  transform: translate3d(0, var(--nx-y1), 0);
  opacity: .8;
}

/* 4. os números — débito, crédito, saldo — deslizando mais rápido */
.nx-bg__digits {
  background-image: url("data:image/svg+xml,<svg%20xmlns='http://www.w3.org/2000/svg'%20width='560'%20height='680'%20viewBox='0%200%20560%20680'><g%20font-family='ui-monospace%2CSFMono-Regular%2CMenlo%2Cmonospace'%20font-size='12.5'%20fill='%23D2913F'><text%20x='40'%20y='26'%20opacity='0.83'%20text-anchor='end'>764%2C13</text><text%20x='40'%20y='60'%20opacity='0.71'%20text-anchor='end'>7.032%2C03</text><text%20x='40'%20y='94'%20opacity='0.8'%20text-anchor='end'>9.429%2C28</text><text%20x='40'%20y='128'%20opacity='0.9'%20text-anchor='end'>44104%2C11</text><text%20x='40'%20y='162'%20opacity='0.89'%20text-anchor='end'>69127%2C48</text><text%20x='40'%20y='196'%20opacity='0.99'%20text-anchor='end'>91071%2C05</text><text%20x='40'%20y='230'%20opacity='0.49'%20text-anchor='end'>59650%2C46</text><text%20x='40'%20y='264'%20opacity='0.6'%20text-anchor='end'>22546%2C93</text><text%20x='40'%20y='298'%20opacity='0.88'%20text-anchor='end'>9.224%2C87</text><text%20x='40'%20y='332'%20opacity='0.49'%20text-anchor='end'>28935%2C72</text><text%20x='40'%20y='366'%20opacity='0.84'%20text-anchor='end'>18252%2C95</text><text%20x='40'%20y='400'%20opacity='0.91'%20text-anchor='end'>7.370%2C28</text><text%20x='40'%20y='434'%20opacity='1.0'%20text-anchor='end'>404%2C48</text><text%20x='40'%20y='468'%20opacity='0.85'%20text-anchor='end'>88738%2C14</text><text%20x='40'%20y='502'%20opacity='0.98'%20text-anchor='end'>59003%2C92</text><text%20x='40'%20y='536'%20opacity='0.45'%20text-anchor='end'>9.934%2C13</text><text%20x='40'%20y='570'%20opacity='0.36'%20text-anchor='end'>68940%2C00</text><text%20x='40'%20y='604'%20opacity='0.83'%20text-anchor='end'>5.245%2C07</text><text%20x='40'%20y='638'%20opacity='0.52'%20text-anchor='end'>9.784%2C16</text><text%20x='190'%20y='26'%20opacity='0.55'%20text-anchor='end'>716%2C25</text><text%20x='190'%20y='60'%20opacity='0.36'%20text-anchor='end'>58123%2C31</text><text%20x='190'%20y='94'%20opacity='0.91'%20text-anchor='end'>4.007%2C09</text><text%20x='190'%20y='162'%20opacity='0.86'%20text-anchor='end'>8.219%2C69</text><text%20x='190'%20y='196'%20opacity='0.91'%20text-anchor='end'>85441%2C45</text><text%20x='190'%20y='264'%20opacity='0.7'%20text-anchor='end'>2.062%2C51</text><text%20x='190'%20y='298'%20opacity='0.38'%20text-anchor='end'>3.285%2C59</text><text%20x='190'%20y='332'%20opacity='0.66'%20text-anchor='end'>97869%2C30</text><text%20x='190'%20y='366'%20opacity='0.62'%20text-anchor='end'>1399%2C33</text><text%20x='190'%20y='400'%20opacity='0.73'%20text-anchor='end'>9.677%2C91</text><text%20x='190'%20y='434'%20opacity='0.39'%20text-anchor='end'>6.058%2C06</text><text%20x='190'%20y='468'%20opacity='0.51'%20text-anchor='end'>423%2C15</text><text%20x='190'%20y='502'%20opacity='0.79'%20text-anchor='end'>2.429%2C84</text><text%20x='190'%20y='536'%20opacity='0.36'%20text-anchor='end'>5.405%2C16</text><text%20x='190'%20y='570'%20opacity='0.92'%20text-anchor='end'>2.075%2C68</text><text%20x='190'%20y='604'%20opacity='0.36'%20text-anchor='end'>836%2C83</text><text%20x='190'%20y='638'%20opacity='0.83'%20text-anchor='end'>5.954%2C84</text><text%20x='330'%20y='26'%20opacity='0.68'%20text-anchor='end'>92351%2C26</text><text%20x='330'%20y='60'%20opacity='0.85'%20text-anchor='end'>55849%2C35</text><text%20x='330'%20y='94'%20opacity='0.42'%20text-anchor='end'>5.165%2C94</text><text%20x='330'%20y='128'%20opacity='0.38'%20text-anchor='end'>3.558%2C04</text><text%20x='330'%20y='162'%20opacity='0.86'%20text-anchor='end'>27698%2C31</text><text%20x='330'%20y='196'%20opacity='0.92'%20text-anchor='end'>7.997%2C79</text><text%20x='330'%20y='264'%20opacity='0.45'%20text-anchor='end'>86884%2C94</text><text%20x='330'%20y='298'%20opacity='0.55'%20text-anchor='end'>61227%2C25</text><text%20x='330'%20y='332'%20opacity='0.98'%20text-anchor='end'>4.228%2C03</text><text%20x='330'%20y='366'%20opacity='0.73'%20text-anchor='end'>9.409%2C86</text><text%20x='330'%20y='400'%20opacity='0.74'%20text-anchor='end'>56353%2C93</text><text%20x='330'%20y='434'%20opacity='0.69'%20text-anchor='end'>7.921%2C73</text><text%20x='330'%20y='468'%20opacity='0.55'%20text-anchor='end'>952%2C42</text><text%20x='330'%20y='502'%20opacity='0.71'%20text-anchor='end'>86418%2C41</text><text%20x='330'%20y='536'%20opacity='0.89'%20text-anchor='end'>318%2C51</text><text%20x='330'%20y='570'%20opacity='0.79'%20text-anchor='end'>78670%2C41</text><text%20x='330'%20y='604'%20opacity='0.41'%20text-anchor='end'>37527%2C84</text><text%20x='330'%20y='638'%20opacity='0.51'%20text-anchor='end'>4.688%2C39</text><text%20x='460'%20y='26'%20opacity='0.67'%20text-anchor='end'>81589%2C24</text><text%20x='460'%20y='60'%20opacity='0.46'%20text-anchor='end'>1.914%2C96</text><text%20x='460'%20y='94'%20opacity='0.78'%20text-anchor='end'>72255%2C15</text><text%20x='460'%20y='128'%20opacity='0.89'%20text-anchor='end'>57627%2C92</text><text%20x='460'%20y='162'%20opacity='0.85'%20text-anchor='end'>58265%2C96</text><text%20x='460'%20y='196'%20opacity='0.56'%20text-anchor='end'>10730%2C36</text><text%20x='460'%20y='230'%20opacity='0.62'%20text-anchor='end'>3.154%2C29</text><text%20x='460'%20y='264'%20opacity='0.96'%20text-anchor='end'>408%2C98</text><text%20x='460'%20y='332'%20opacity='0.84'%20text-anchor='end'>409%2C53</text><text%20x='460'%20y='366'%20opacity='0.78'%20text-anchor='end'>35446%2C62</text><text%20x='460'%20y='400'%20opacity='0.72'%20text-anchor='end'>37%2C50</text><text%20x='460'%20y='468'%20opacity='0.65'%20text-anchor='end'>3.887%2C59</text><text%20x='460'%20y='502'%20opacity='0.7'%20text-anchor='end'>491%2C02</text><text%20x='460'%20y='536'%20opacity='0.97'%20text-anchor='end'>6.229%2C83</text><text%20x='460'%20y='570'%20opacity='0.97'%20text-anchor='end'>695%2C14</text><text%20x='460'%20y='604'%20opacity='0.42'%20text-anchor='end'>996%2C95</text><text%20x='460'%20y='638'%20opacity='0.61'%20text-anchor='end'>4951%2C39</text></g></svg>");
  background-size: 560px 680px;
  transform: translate3d(0, var(--nx-y3), 0);
  opacity: .16;
}

/* 5. linha de somatório — o par de fios que fecha um total no razão */
.nx-bg__total {
  background-image:
    linear-gradient(to bottom, rgba(210,145,63,.34) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(210,145,63,.18) 1px, transparent 1px);
  background-size: 100% 680px, 100% 680px;
  background-position: 0 0, 0 4px;
  transform: translate3d(0, var(--nx-y3), 0);
}

/* grão — mata o banding dos gradientes */
.nx-bg__grain {
  position: absolute; inset: 0; opacity: .04; mix-blend-mode: overlay;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* véu que protege a leitura no topo e no rodapé */
.nx-bg::after {
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(10,11,13,.74) 0%, rgba(10,11,13,.34) 30%, rgba(10,11,13,.34) 70%, rgba(10,11,13,.82) 100%);
}

/* barra de progresso de leitura */
.nx-progress {
  position: fixed; top: 0; left: 0; height: 2px; z-index: 1000;
  width: calc(var(--nx-progress) * 100%);
  background: linear-gradient(90deg, var(--nx-copper-strong), var(--nx-copper-bright));
  box-shadow: 0 0 12px var(--nx-copper-glow);
}

/* ==========================================================================
   3. BASE
   ========================================================================== */

html { scroll-behavior: smooth; }

body {
  font-family: var(--nx-font-text);
  color: var(--nx-text);
  background: var(--nx-ink);
  font-size: 17px;
  line-height: 1.68;
  -webkit-font-smoothing: antialiased;
}

/* tudo do WordPress passa a flutuar sobre o campo */
#page, .site, .site-content, .ast-container, .entry-content,
.ast-plain-container, .ast-page-builder-template, .ast-separate-container {
  background: transparent !important;
  position: relative;
  z-index: 1;
}

h1, h2, h3, h4 {
  font-family: var(--nx-font-title);
  color: #FFF;
  line-height: 1.1;
  letter-spacing: -.025em;
  font-weight: 600;
  text-wrap: balance;
}

h1 { font-size: clamp(2.4rem, 6vw, 4.2rem); }
h2 { font-size: clamp(1.8rem, 3.8vw, 2.75rem); }
h3 { font-size: clamp(1.15rem, 2vw, 1.4rem); }

p { text-wrap: pretty; }

a { color: var(--nx-copper-bright); text-underline-offset: .18em; }
a:hover { color: #FFF; }

strong { font-weight: 600; color: #FFF; }

table, .nx-num { font-variant-numeric: tabular-nums; }

::selection { background: var(--nx-copper); color: #0A0B0D; }

/* ==========================================================================
   4. LAYOUT
   ========================================================================== */

.nx-section { padding: var(--nx-s6) var(--nx-s3); position: relative; z-index: 1; }
.nx-wrap    { max-width: var(--nx-maxw); margin-inline: auto; }

/* As três variantes antigas viram três densidades de véu sobre o mesmo campo:
   --paper = transparente (o fundo aparece inteiro)
   --sand  = laje de vidro (blocos de leitura longa)
   --dark  = poço mais escuro (momentos de ênfase)  */
.nx-section--paper { background: transparent; }

.nx-section--sand {
  background: linear-gradient(180deg, rgba(14,16,19,.86), rgba(14,16,19,.72));
  border-top: 1px solid var(--nx-edge);
  border-bottom: 1px solid var(--nx-edge);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.nx-section--dark {
  background: linear-gradient(180deg, rgba(6,7,8,.90), rgba(10,11,13,.78));
  border-top: 1px solid var(--nx-edge);
  border-bottom: 1px solid var(--nx-edge);
}

.nx-grid   { display: grid; gap: var(--nx-s3); }
.nx-grid-2 { grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); }
.nx-grid-3 { grid-template-columns: repeat(auto-fit, minmax(270px, 1fr)); }

.nx-split { display: grid; gap: var(--nx-s5); grid-template-columns: minmax(0,1fr); }
@media (min-width: 900px) { .nx-split { grid-template-columns: .9fr 1.1fr; } }

/* ==========================================================================
   5. HERO
   ========================================================================== */

.nx-hero {
  padding: clamp(6rem, 16vh, 11rem) var(--nx-s3) clamp(4rem, 10vh, 7rem);
  position: relative; z-index: 1;
  background: linear-gradient(180deg, rgba(10,11,13,.78) 0%, rgba(10,11,13,.35) 60%, transparent 100%);
}
.nx-hero h1 {
  max-width: 17ch;
  background: linear-gradient(180deg, #FFFFFF 40%, #C9C2B8 100%);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent;
}
.nx-hero p {
  font-size: clamp(1.05rem, 1.6vw, 1.25rem);
  color: var(--nx-text-soft); max-width: 58ch; margin-top: var(--nx-s3);
}
.nx-hero .nx-actions { margin-top: var(--nx-s5); display: flex; gap: var(--nx-s2); flex-wrap: wrap; }

.nx-trust {
  padding: var(--nx-s3); text-align: center;
  font-size: .84rem; letter-spacing: .04em; color: var(--nx-text-dim);
  border-top: 1px solid var(--nx-edge); border-bottom: 1px solid var(--nx-edge);
  background: rgba(6,7,8,.55);
  backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
}
.nx-trust span { white-space: nowrap; }
.nx-trust span + span::before { content: "—"; margin: 0 .7rem; color: var(--nx-copper); }

/* ==========================================================================
   6. BOTÕES
   ========================================================================== */

.nx-btn {
  display: inline-flex; align-items: center; gap: .55rem;
  font-family: var(--nx-font-title); font-weight: 600; font-size: 1rem;
  padding: 1rem 1.75rem; border-radius: 999px;
  text-decoration: none; border: 1px solid transparent; min-height: 48px;
  transition: transform .16s ease, box-shadow .2s ease, background .2s ease, color .2s ease, border-color .2s ease;
}
.nx-btn--primary {
  background: linear-gradient(135deg, var(--nx-copper-bright), var(--nx-copper-strong));
  color: #14100A;
  box-shadow: 0 8px 28px rgba(210,145,63,.26);
}
.nx-btn--primary:hover { transform: translateY(-2px); box-shadow: 0 14px 38px rgba(210,145,63,.36); color: #14100A; }
.nx-btn--ghost { border-color: var(--nx-edge-2); color: var(--nx-text); background: rgba(255,255,255,.03); }
.nx-btn--ghost:hover { border-color: var(--nx-copper); color: var(--nx-copper-bright); transform: translateY(-2px); }

.nx-wpp {
  position: fixed; right: 18px; bottom: 18px; z-index: 999;
  background: linear-gradient(135deg, var(--nx-copper-bright), var(--nx-copper-strong));
  color: #14100A; border-radius: 999px; padding: .9rem 1.35rem;
  font-family: var(--nx-font-title); font-weight: 600; text-decoration: none;
  box-shadow: 0 10px 30px rgba(0,0,0,.45);
}
.nx-wpp:hover { color: #14100A; transform: translateY(-2px); }

/* ==========================================================================
   7. COMPONENTES
   ========================================================================== */

.nx-eyebrow {
  font-family: var(--nx-font-title);
  font-size: .76rem; font-weight: 600;
  letter-spacing: .18em; text-transform: uppercase;
  color: var(--nx-copper-bright);
  display: flex; align-items: center; gap: .85rem;
  margin-bottom: var(--nx-s3);
}
.nx-eyebrow::after {
  content: ""; flex: 1; height: 1px;
  background: linear-gradient(90deg, rgba(210,145,63,.55), transparent 80%);
}

.nx-card {
  background: var(--nx-panel);
  border: 1px solid var(--nx-edge);
  border-radius: var(--nx-radius);
  padding: var(--nx-s4);
  backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.nx-card:hover {
  transform: translateY(-3px);
  border-color: rgba(210,145,63,.42);
  box-shadow: 0 16px 44px rgba(0,0,0,.42);
}
.nx-card h3 { margin-top: 0; margin-bottom: .5rem; }
.nx-card p  { color: var(--nx-text-soft); margin: 0; }

/* fio de cobre — assinatura */
.nx-thread { position: relative; padding-left: 4rem; }
.nx-thread::before {
  content: ""; position: absolute; left: 1.35rem; top: .5rem; bottom: .5rem; width: 2px;
  background: linear-gradient(180deg, var(--nx-copper), rgba(210,145,63,.08));
}
.nx-thread > .nx-node { position: relative; padding-bottom: var(--nx-s5); }
.nx-thread > .nx-node:last-child { padding-bottom: 0; }
.nx-thread > .nx-node::before {
  content: attr(data-n);
  position: absolute; left: -4rem; top: -.15rem;
  width: 2.75rem; height: 2.75rem; border-radius: 50%;
  display: grid; place-items: center;
  font-family: var(--nx-font-title); font-weight: 600; font-size: 1rem;
  color: var(--nx-copper-bright);
  background: #0B0C0E;
  border: 1px solid rgba(210,145,63,.5);
  box-shadow: 0 0 0 6px rgba(10,11,13,.9), 0 0 22px var(--nx-copper-glow);
}
.nx-node h3 { margin: 0 0 .45rem; }
.nx-node p  { margin: 0; color: var(--nx-text-soft); }

/* número explicado */
.nx-figures { display: grid; gap: var(--nx-s4); grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); }
.nx-figure { border-top: 1px solid rgba(210,145,63,.45); padding-top: var(--nx-s3); }
.nx-figure b {
  display: block; font-family: var(--nx-font-title); font-weight: 600;
  font-size: clamp(2.2rem, 5vw, 3.2rem); line-height: 1;
  font-variant-numeric: tabular-nums;
  background: linear-gradient(180deg, #FFFFFF, var(--nx-copper-bright));
  -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
}
.nx-figure span { display: block; margin-top: .7rem; color: var(--nx-text-soft); font-size: .95rem; }

/* linha do tempo */
.nx-timeline { border-left: 1px solid var(--nx-edge-2); padding-left: var(--nx-s4); margin: 0; }
.nx-timeline > li { list-style: none; position: relative; padding-bottom: var(--nx-s4); }
.nx-timeline > li::before {
  content: ""; position: absolute; left: calc(-1 * var(--nx-s4) - 6px); top: .6rem;
  width: 11px; height: 11px; border-radius: 50%;
  background: var(--nx-copper); box-shadow: 0 0 0 4px rgba(10,11,13,.9);
}
.nx-timeline time {
  display: block; font-family: var(--nx-font-title); font-weight: 600;
  color: var(--nx-copper-bright); font-variant-numeric: tabular-nums; margin-bottom: .3rem;
}
.nx-timeline p { color: var(--nx-text-soft); margin: 0; }
.nx-timeline--now > li[data-now]::before { box-shadow: 0 0 0 4px rgba(10,11,13,.9), 0 0 22px var(--nx-copper); }

/* alerta */
.nx-alert {
  border: 1px solid rgba(210,145,63,.34);
  border-left: 3px solid var(--nx-copper);
  background: linear-gradient(135deg, rgba(210,145,63,.10), rgba(210,145,63,.03));
  padding: var(--nx-s4); border-radius: var(--nx-radius);
  backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
}
.nx-alert p { color: var(--nx-text-soft); }
.nx-alert strong { color: var(--nx-copper-bright); }

/* contraponto */
.nx-contra {
  border: 1px dashed rgba(210,145,63,.42);
  border-radius: var(--nx-radius); padding: var(--nx-s4);
  background: rgba(255,255,255,.02);
}
.nx-contra p, .nx-contra li { color: var(--nx-text-soft); }

.nx-fonte { font-size: .84rem; color: var(--nx-text-dim); }
.nx-lede  { font-size: clamp(1.02rem, 1.5vw, 1.15rem); max-width: 62ch; color: var(--nx-text-soft); }

.nx-list { list-style: none; padding: 0; margin: 0; color: var(--nx-text-soft); }
.nx-list li { position: relative; padding-left: 1.7rem; margin-bottom: .75rem; }
.nx-list li::before {
  content: ""; position: absolute; left: 0; top: .68em;
  width: 9px; height: 2px; background: var(--nx-copper);
}

/* tabela */
.nx-table { width: 100%; border-collapse: collapse; }
.nx-table th, .nx-table td {
  padding: 1rem; text-align: left; border-bottom: 1px solid var(--nx-edge);
  color: var(--nx-text-soft);
}
.nx-table th {
  font-family: var(--nx-font-title); color: #FFF; font-weight: 600;
  background: rgba(255,255,255,.04);
  font-size: .9rem; letter-spacing: .03em;
}
.nx-table td strong { color: var(--nx-copper-bright); }
.nx-table tr:hover td { background: rgba(210,145,63,.06); }
.nx-table-wrap {
  overflow-x: auto; border: 1px solid var(--nx-edge);
  border-radius: var(--nx-radius); background: rgba(14,16,19,.6);
  backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
}

/* FAQ */
.nx-faq details {
  border-bottom: 1px solid var(--nx-edge); padding: var(--nx-s3) 0;
}
.nx-faq summary {
  cursor: pointer; font-family: var(--nx-font-title); font-weight: 600; color: #FFF;
  list-style: none; display: flex; justify-content: space-between; gap: var(--nx-s2);
  font-size: 1.05rem;
}
.nx-faq summary::-webkit-details-marker { display: none; }
.nx-faq summary::after { content: "+"; color: var(--nx-copper); font-size: 1.5rem; line-height: 1; transition: transform .2s ease; }
.nx-faq details[open] summary::after { transform: rotate(45deg); }
.nx-faq p { margin: .7rem 0 0; color: var(--nx-text-soft); }

/* ==========================================================================
   8. FORMULÁRIO
   ========================================================================== */

.nx-form input[type=text], .nx-form input[type=email], .nx-form input[type=tel],
.nx-form textarea, .ff-el-form-control {
  width: 100%; padding: .9rem 1rem; font: inherit; min-height: 48px;
  border: 1px solid var(--nx-edge-2); border-radius: 10px;
  background: rgba(255,255,255,.04); color: var(--nx-text);
}
.nx-form input::placeholder, .ff-el-form-control::placeholder { color: var(--nx-text-dim); }
.nx-form input:focus, .ff-el-form-control:focus { border-color: var(--nx-copper); outline: none; }
.nx-form label, .ff-el-input--label label {
  font-family: var(--nx-font-title); font-weight: 600; color: #FFF;
  display: block; margin-bottom: .4rem; font-size: .95rem;
}
.nx-form .nx-help { font-size: .85rem; color: var(--nx-text-dim); margin-top: .35rem; }
.nx-form button, .ff-btn-submit {
  background: linear-gradient(135deg, var(--nx-copper-bright), var(--nx-copper-strong));
  color: #14100A; border: 0; border-radius: 999px; padding: 1rem 1.75rem;
  font-family: var(--nx-font-title); font-weight: 600; cursor: pointer; min-height: 48px;
}

/* ==========================================================================
   9. HEADER
   ========================================================================== */

.site-header, .ast-primary-header-bar, .main-header-bar {
  background: rgba(10,11,13,.72) !important;
  backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px);
  border-bottom: 1px solid var(--nx-edge) !important;
}
.main-header-menu a, .ast-builder-menu a, .site-title a {
  color: var(--nx-text) !important;
  font-family: var(--nx-font-title); font-weight: 500;
}
.main-header-menu a:hover, .ast-builder-menu a:hover { color: var(--nx-copper-bright) !important; }
.main-header-menu .current-menu-item > a { color: var(--nx-copper-bright) !important; }
.ast-mobile-popup-drawer .ast-mobile-popup-inner { background: #0A0B0D; }
.ast-mobile-menu-trigger-fill, .ast-mobile-menu-trigger-minimal { color: var(--nx-copper) !important; }

/* ==========================================================================
   10. RODAPÉ
   ========================================================================== */

.nx-footer {
  position: relative; z-index: 1;
  background: linear-gradient(180deg, rgba(6,7,8,.75), rgba(6,7,8,.95));
  border-top: 1px solid rgba(210,145,63,.35);
  padding: var(--nx-s6) var(--nx-s3) var(--nx-s4);
  color: var(--nx-text-soft); font-size: .95rem;
  backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px);
}
.nx-footer__grid { display: grid; gap: var(--nx-s5); grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); }
.nx-footer__marca {
  font-family: var(--nx-font-title); font-weight: 600; font-size: 1.9rem;
  color: #FFF; margin: 0 0 .6rem; letter-spacing: -.03em;
}
.nx-footer__titulo {
  font-family: var(--nx-font-title); font-size: .74rem; font-weight: 600;
  letter-spacing: .18em; text-transform: uppercase; color: var(--nx-copper-bright);
  margin: 0 0 .9rem;
}
.nx-footer ul { list-style: none; padding: 0; margin: 0; }
.nx-footer li { margin-bottom: .5rem; }
.nx-footer a { color: var(--nx-text-soft); text-decoration: none; }
.nx-footer a:hover { color: var(--nx-copper-bright); }
.nx-footer__legal {
  margin-top: var(--nx-s5); padding-top: var(--nx-s3);
  border-top: 1px solid var(--nx-edge); font-size: .84rem; color: var(--nx-text-dim);
}
.nx-footer__legal p { margin: 0 0 .35rem; }
.site-footer, footer.site-footer { display: none; }

/* ==========================================================================
   11. REVEAL
   ========================================================================== */

.nx-reveal { opacity: 0; transform: translateY(22px); transition: opacity .6s ease-out, transform .6s ease-out; }
.nx-reveal.is-in { opacity: 1; transform: none; }

/* ==========================================================================
   12. ACESSIBILIDADE, MOVIMENTO E IMPRESSÃO
   ========================================================================== */

:focus-visible { outline: 3px solid var(--nx-copper-bright); outline-offset: 3px; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  * { animation: none !important; transition: none !important; }
  .nx-reveal { opacity: 1; transform: none; }
  .nx-bg__layer { transform: none !important; } /* o campo congela, mas continua lá */
  .nx-btn:hover, .nx-card:hover { transform: none; }
}

@media print {
  .nx-bg, .nx-progress, .nx-wpp, .site-header, .nx-footer { display: none !important; }
  body { background: #fff; color: #000; }
  h1, h2, h3 { color: #000; -webkit-text-fill-color: #000; }
}

/* ==========================================================================
   13. FULL BLEED — solta o container da Astra
   ========================================================================== */

.nx-fullbleed .site-content .ast-container,
.nx-fullbleed .ast-page-builder-template .site-content > .ast-container {
  max-width: 100%; padding-left: 0; padding-right: 0;
}
.nx-fullbleed .entry-content > *:first-child { margin-top: 0; }
.nx-fullbleed .entry-header { display: none; }
.nx-fullbleed .site-content { padding: 0; }

/* ==========================================================================
   14. RESPONSIVO — no celular o campo fica mais leve
   ========================================================================== */

@media (max-width: 900px) {
  .nx-card, .nx-alert, .nx-table-wrap, .nx-section--sand, .nx-trust, .nx-footer, .site-header {
    backdrop-filter: none; -webkit-backdrop-filter: none;
  }
  .nx-card { background: var(--nx-panel-solid); }
  .nx-section--sand { background: rgba(14,16,19,.92); }
  .nx-bg__grain { display: none; }
}

@media (max-width: 600px) {
  body { font-size: 16px; }
  .nx-section { padding: var(--nx-s5) 1.15rem; }
  .nx-hero { padding: 5rem 1.15rem 3.5rem; }
  .nx-hero .nx-actions .nx-btn { width: 100%; justify-content: center; }
  .nx-thread { padding-left: 3.25rem; }
  .nx-thread::before { left: 1.05rem; }
  .nx-thread > .nx-node::before { left: -3.25rem; width: 2.25rem; height: 2.25rem; font-size: .9rem; }
  .nx-trust span { display: block; }
  .nx-trust span + span::before { content: none; }
  .nx-bg__columns { background-size: 100% 100%, 96px 100%; }
  .nx-bg__digits { opacity: .10; }
}

/* ==========================================================================
   15. CORREÇÕES SOBRE A ASTRA
   O tema pinta headings e texto com as variáveis dele, em seletores mais
   específicos que os nossos. Aqui a paleta é reescrita na raiz do problema.
   ========================================================================== */

:root, body {
  --ast-global-color-0: #D2913F;              /* primária do tema = cobre */
  --ast-global-color-1: #E8B26A;
  --ast-global-color-2: #FFFFFF;              /* headings */
  --ast-global-color-3: #A9A39A;              /* texto */
  --ast-global-color-4: transparent;          /* fundo de container */
  --ast-global-color-5: transparent;
  --ast-global-color-6: rgba(255,255,255,.10);
  --ast-global-color-7: #EFEAE2;
  --ast-global-color-8: #A9A39A;
}

.entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4,
.ast-page-builder-template h1, .ast-page-builder-template h2,
.ast-page-builder-template h3, .nx-section h2, .nx-section h3, .nx-card h3 {
  color: #FFFFFF;
}
.nx-hero h1 { color: transparent; } /* mantém o gradiente do hero */

.entry-content p, .entry-content li { color: var(--nx-text-soft); }
.entry-content strong { color: #FFFFFF; }
.entry-content a { color: var(--nx-copper-bright); }

/* o texto do card e da tabela tem cor própria — não deixar a Astra reescrever */
.nx-card p, .nx-node p, .nx-list li, .nx-lede, .nx-alert p, .nx-figure span,
.nx-timeline p, .nx-table td { color: var(--nx-text-soft); }
.nx-table th, .nx-faq summary, .nx-footer__marca { color: #FFFFFF; }

/* ==========================================================================
   16. HEADER EM UMA LINHA
   ========================================================================== */

.site-title, .site-title a {
  font-family: var(--nx-font-title);
  font-size: 1.15rem !important;
  font-weight: 600; letter-spacing: -.02em;
  white-space: nowrap; color: #FFFFFF !important;
}
.ast-primary-header-bar .site-branding { flex-shrink: 0; }
.main-header-menu > .menu-item > .menu-link {
  padding-inline: .7rem; font-size: .95rem; white-space: nowrap;
}
.ast-primary-header-bar .ast-builder-grid-row {
  align-items: center; gap: var(--nx-s3);
}
@media (max-width: 1100px) and (min-width: 922px) {
  .main-header-menu > .menu-item > .menu-link { padding-inline: .45rem; font-size: .88rem; }
  .site-title, .site-title a { font-size: 1rem !important; }
}

/* ==========================================================================
   17. REVEAL À PROVA DE FALHA
   Sem JS, ou se o observer não disparar, o conteúdo aparece do mesmo jeito.
   ========================================================================== */

.nx-reveal { opacity: 1; transform: none; }
html.nx-js .nx-reveal { opacity: 0; transform: translateY(22px); }
html.nx-js .nx-reveal.is-in { opacity: 1; transform: none; }

/* fundo um pouco mais discreto atrás de texto */
.nx-bg__digits { opacity: .12; }

/* ==========================================================================
   18. CALIBRAGEM FINAL
   O razão precisa ser visível para o parallax ter função; os painéis abrem
   um pouco para a folha passar por trás.
   ========================================================================== */

.nx-bg__digits  { opacity: .22; }
.nx-bg__ruled   { background-image: linear-gradient(to bottom, rgba(239,234,226,.08) 1px, transparent 1px); }
.nx-bg__columns {
  background-image:
    linear-gradient(to right, rgba(210,145,63,.30) 1px, transparent 1px),
    linear-gradient(to right, rgba(239,234,226,.07) 1px, transparent 1px);
}
.nx-bg::after {
  background: linear-gradient(180deg, rgba(10,11,13,.62) 0%, rgba(10,11,13,.20) 30%, rgba(10,11,13,.20) 70%, rgba(10,11,13,.72) 100%);
}

/* painéis mais translúcidos: a folha aparece atrás do conteúdo */
.nx-section--sand {
  background: linear-gradient(180deg, rgba(14,16,19,.74), rgba(14,16,19,.58));
}
.nx-section--dark {
  background: linear-gradient(180deg, rgba(6,7,8,.82), rgba(10,11,13,.62));
}
.nx-hero {
  background: linear-gradient(180deg, rgba(10,11,13,.72) 0%, rgba(10,11,13,.30) 60%, rgba(10,11,13,.10) 100%);
}

/* a Astra sublinha link dentro do conteúdo — botão não é texto */
.nx-btn, .entry-content a.nx-btn, .nx-wpp, .nx-footer a, .nx-trust a {
  text-decoration: none !important;
}
.nx-btn--primary { color: #14100A !important; }
.nx-btn--ghost   { color: var(--nx-text) !important; }
.nx-btn--ghost:hover { color: var(--nx-copper-bright) !important; }

/* ==========================================================================
   19. CORREÇÃO DE OVERFLOW — nada pode vazar da tela
   ========================================================================== */

html, body { max-width: 100%; overflow-x: hidden; }
.nx-section, .nx-hero, .nx-trust, .nx-facts, .nx-footer { box-sizing: border-box; max-width: 100vw; }
.nx-wrap { width: 100%; box-sizing: border-box; }
.nx-hero p, .nx-lede, .nx-card p, .nx-node p { overflow-wrap: break-word; }

/* ==========================================================================
   20. HERO EM DUAS COLUNAS + CARTÃO DE AMOSTRA
   ========================================================================== */

.nx-hero__grid {
  display: grid; gap: var(--nx-s5);
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
}
@media (min-width: 1000px) {
  .nx-hero__grid { grid-template-columns: 1.05fr .95fr; gap: var(--nx-s6); }
}

/* sustentação de leitura: o razão continua atrás, mas o texto ganha chão */
.nx-hero__texto { position: relative; }
.nx-hero__texto::before {
  content: ""; position: absolute; inset: -8% -12% -10% -14%;
  background: radial-gradient(70% 70% at 30% 45%, rgba(10,11,13,.88), rgba(10,11,13,.55) 55%, transparent 100%);
  z-index: -1;
}

.nx-hero__card {
  background: rgba(14, 16, 19, .82);
  border: 1px solid var(--nx-edge-2);
  border-radius: var(--nx-radius);
  padding: var(--nx-s4);
  backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px);
  box-shadow: 0 26px 70px rgba(0,0,0,.55);
}
.nx-hero__card h2 { font-size: 1.35rem; margin: 0 0 var(--nx-s3); }

.nx-mini { margin: 0; }
.nx-mini > div {
  display: flex; justify-content: space-between; align-items: baseline; gap: var(--nx-s2);
  padding: .85rem 0; border-bottom: 1px solid var(--nx-edge);
}
.nx-mini dt { color: var(--nx-text-soft); font-size: .97rem; }
.nx-mini dd {
  margin: 0; font-family: var(--nx-font-title); font-weight: 600;
  font-variant-numeric: tabular-nums; color: var(--nx-text);
}
.nx-mini .is-best dt { color: var(--nx-copper-bright); }
.nx-mini .is-best dd { color: var(--nx-copper-bright); }
.nx-mini .is-best { border-bottom-color: rgba(210,145,63,.45); }

.nx-mini__delta { margin: var(--nx-s3) 0 var(--nx-s2); }
.nx-mini__delta b {
  display: block; font-family: var(--nx-font-title); font-weight: 600;
  font-size: clamp(1.9rem, 3.4vw, 2.4rem); line-height: 1; font-variant-numeric: tabular-nums;
  background: linear-gradient(180deg, #FFFFFF, var(--nx-copper-bright));
  -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
}
.nx-mini__delta span { display: block; margin-top: .45rem; color: var(--nx-text-soft); font-size: .95rem; }

/* ==========================================================================
   21. BARRA DE CONFIANÇA EM LINHA + FAIXA DE FATOS
   ========================================================================== */

.nx-trust {
  display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
  gap: .5rem 0; padding: var(--nx-s3) var(--nx-s3);
}
.nx-trust span + span::before { content: "—"; margin: 0 .85rem; color: var(--nx-copper); }

.nx-facts {
  position: relative; z-index: 1;
  padding: var(--nx-s5) var(--nx-s3);
  border-bottom: 1px solid var(--nx-edge);
  background: linear-gradient(180deg, rgba(6,7,8,.55), rgba(10,11,13,.30));
}
.nx-facts__grid { display: grid; gap: var(--nx-s4); grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); }
.nx-facts__grid > div { border-left: 1px solid rgba(210,145,63,.4); padding-left: var(--nx-s3); }
.nx-facts b {
  display: block; font-family: var(--nx-font-title); font-weight: 600;
  font-size: clamp(1.4rem, 2.4vw, 1.85rem); line-height: 1.1; color: #FFFFFF;
  font-variant-numeric: tabular-nums;
}
.nx-facts span { display: block; margin-top: .5rem; color: var(--nx-text-soft); font-size: .93rem; }

/* ==========================================================================
   22. RITMO TIPOGRÁFICO
   ========================================================================== */

.nx-hero h1 { font-size: clamp(2.1rem, 4.6vw, 3.6rem); max-width: 15ch; }
.nx-card h3 { font-size: 1.18rem; text-wrap: balance; }
.nx-section > .nx-wrap > h2 { margin-bottom: var(--nx-s2); }

@media (max-width: 600px) {
  .nx-hero__texto::before { inset: -6% -8%; }
  .nx-hero__card { padding: var(--nx-s3); }
  .nx-facts__grid > div { border-left: 0; border-top: 1px solid rgba(210,145,63,.4); padding: var(--nx-s2) 0 0; }
  .nx-trust span + span::before { content: none; }
  .nx-trust span { display: block; width: 100%; }
}


/* ==========================================================================
   23. AUDITORIA r1 — hero legível em títulos longos; figuras sem quebra feia
   ========================================================================== */

.nx-hero h1 {
  background: linear-gradient(180deg, #FFFFFF 55%, #E4DED4 100%);
  -webkit-background-clip: text; background-clip: text;
}
.nx-figure b { white-space: nowrap; }
@media (max-width: 480px) { .nx-figure b { font-size: clamp(1.7rem, 8vw, 2.4rem); } }

/* ==========================================================================
   24. RODADA CLEAN — síntese da pesquisa de 50+ sites (2026-08-21)
   Convergência dos benchmarks: disciplina de acento, hairlines, flat sóbrio,
   fundo contido sob conteúdo. Ver docs/11-pesquisa-design.md.
   ========================================================================== */

/* -- 24.1 botões sóbrios: flat, canto 10px, sem glow ---------------------- */
.nx-btn { border-radius: 10px; padding: .85rem 1.5rem; }
.nx-btn--primary {
  background: var(--nx-copper);
  color: #14100A !important;
  box-shadow: none;
}
.nx-btn--primary:hover { background: var(--nx-copper-bright); transform: none; box-shadow: none; }
.nx-btn--ghost { border: 1px solid var(--nx-edge-2); background: transparent; }
.nx-btn--ghost:hover { transform: none; border-color: rgba(210,145,63,.55); }
.nx-wpp { border-radius: 12px; background: var(--nx-copper); box-shadow: 0 6px 22px rgba(0,0,0,.45); }
.nx-wpp:hover { transform: none; background: var(--nx-copper-bright); }

/* -- 24.2 números sem gradiente: cobre chapado --------------------------- */
.nx-figure b, .nx-mini__delta b {
  background: none; -webkit-text-fill-color: currentColor; color: var(--nx-copper-bright);
}
.nx-facts b { color: #F4F5F6; }
.nx-hero h1 { background: none; -webkit-text-fill-color: currentColor; color: #F4F5F6; }

/* -- 24.3 cards flat: hairline, hover só na borda ------------------------- */
.nx-card { background: rgba(18,19,22,.82); border-color: rgba(255,255,255,.07); }
.nx-card:hover { transform: none; box-shadow: none; border-color: rgba(210,145,63,.45); }
.nx-hero__card { box-shadow: none; border-color: rgba(255,255,255,.11); }

/* -- 24.4 fundo disciplinado: identidade fica, briga com o texto não ------ */
.nx-bg__digits  { opacity: .10; }
.nx-bg__ruled   { background-image: linear-gradient(to bottom, rgba(239,234,226,.05) 1px, transparent 1px); }
.nx-bg__columns {
  background-image:
    linear-gradient(to right, rgba(210,145,63,.16) 1px, transparent 1px),
    linear-gradient(to right, rgba(239,234,226,.04) 1px, transparent 1px);
}
.nx-section--paper {
  background: linear-gradient(180deg, rgba(10,11,13,.60), rgba(10,11,13,.44));
}
.nx-section--sand {
  background: rgba(14,16,19,.90);
  backdrop-filter: none; -webkit-backdrop-filter: none;
}
.nx-section--dark { background: rgba(7,8,9,.90); }

/* -- 24.5 ritmo: respiro maior, hairline entre seções, título contido ----- */
.nx-section { padding-block: clamp(4.5rem, 9vw, 8rem); }
.nx-section + .nx-section { border-top: 1px solid rgba(255,255,255,.06); }
h1 { letter-spacing: -.03em; }
.nx-section > .nx-wrap > h2 { max-width: 24ch; }

/* -- 24.6 reveal discreto: só opacidade, rápido --------------------------- */
html.nx-js .nx-reveal { opacity: 0; transform: none; transition: opacity .35s ease-out; }
html.nx-js .nx-reveal.is-in { opacity: 1; }

/* -- 24.7 menu: Contato como botão ---------------------------------------- */
.main-header-menu > .menu-item:last-child > .menu-link {
  border: 1px solid rgba(210,145,63,.55); border-radius: 10px;
  padding: .45rem 1rem !important; margin-left: .5rem;
  color: var(--nx-copper-bright) !important;
}
.main-header-menu > .menu-item:last-child > .menu-link:hover {
  background: var(--nx-copper); color: #14100A !important;
}

/* -- 24.8 componentes da página de certificado ---------------------------- */
.nx-planos { display: grid; gap: var(--nx-s3); grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); align-items: stretch; }
.nx-plano {
  position: relative; display: flex; flex-direction: column;
  background: rgba(18,19,22,.82); border: 1px solid rgba(255,255,255,.07);
  border-radius: var(--nx-radius); padding: var(--nx-s4);
}
.nx-plano--destaque { border-color: rgba(210,145,63,.55); }
.nx-plano__badge {
  position: absolute; top: -13px; left: 50%; transform: translateX(-50%);
  background: var(--nx-copper); color: #14100A;
  font-family: var(--nx-font-title); font-weight: 600; font-size: .75rem;
  letter-spacing: .06em; text-transform: uppercase;
  border-radius: 999px; padding: .3rem .9rem; white-space: nowrap;
}
.nx-plano h3 { margin: 0 0 .35rem; }
.nx-plano__meta { font-size: .88rem; color: var(--nx-text-dim); margin-bottom: var(--nx-s2); }
.nx-plano ul { list-style: none; padding: 0; margin: 0 0 var(--nx-s3); flex: 1; }
.nx-plano li { position: relative; padding-left: 1.5rem; margin-bottom: .55rem; color: var(--nx-text-soft); font-size: .95rem; }
.nx-plano li::before { content: ""; position: absolute; left: 0; top: .58em; width: 9px; height: 2px; background: var(--nx-copper); }
.nx-plano__preco { font-family: var(--nx-font-title); font-weight: 600; color: #F4F5F6; margin-bottom: var(--nx-s2); }
.nx-plano__preco small { display: block; font-family: var(--nx-font-text); font-weight: 400; color: var(--nx-text-dim); font-size: .8rem; }
.nx-plano .nx-btn { justify-content: center; }

.nx-banner211 {
  display: flex; gap: var(--nx-s3); align-items: flex-start;
  border: 1px solid rgba(210,145,63,.4); border-left: 3px solid var(--nx-copper);
  background: rgba(210,145,63,.07); border-radius: var(--nx-radius);
  padding: var(--nx-s3) var(--nx-s4); margin-top: var(--nx-s4);
}
.nx-banner211 strong { color: var(--nx-copper-bright); }
.nx-banner211 p { margin: 0; color: var(--nx-text-soft); }

.nx-compat td:first-child { color: #F4F5F6; }
.nx-compat .sim { color: var(--nx-success); font-weight: 600; }
.nx-compat .nao { color: var(--nx-text-dim); }
