/* ============================================================
   Pillar Article, Aurora Light Glass (paleta AZUL: degrade #2B28D9 -> #3AB5ED)
   Página: /blog/melhor-site-imobiliaria-corretor-2026
   ============================================================ */

:root {
   /* Paleta "Aurora Azul" deste pillar: degrade #2B28D9 -> #3AB5ED.
      Mantemos os nomes --aurora-violet-* (usados em todo o arquivo) mas com
      valores azuis, entao a pagina inteira segue o degrade sem reescrever cada regra. */
   --aurora-bg-start: #EFF6FF;
   --aurora-bg-end: #FFFFFF;
   --aurora-violet-900: #15166E;
   --aurora-violet-800: #1E1E9E;
   --aurora-violet-700: #2B28D9;
   --aurora-violet-600: #3AB5ED;
   --aurora-violet-50: #EFF6FF;
   --aurora-violet-100: #DBEAFE;
   --aurora-violet-200: #BFDBFE;
   --aurora-slate-900: #0F172A;
   --aurora-slate-700: #334155;
   --aurora-slate-600: #475569;
   --aurora-slate-500: #64748B;
   --aurora-slate-300: #CBD5E1;
   --aurora-slate-200: #E2E8F0;
   --aurora-slate-100: #F1F5F9;
   --aurora-amber-500: #F59E0B;
   --aurora-amber-100: #FEF3C7;
   --aurora-emerald-500: #10B981;
   --aurora-emerald-100: #D1FAE5;

   --shadow-glass: 0 8px 32px rgba(30, 27, 142, 0.08);
   --shadow-glass-lg: 0 16px 48px rgba(30, 27, 142, 0.12);
   --radius-card: 20px;
   --radius-pill: 999px;
}

/* ---------------- Base body / wrapper ---------------- */

body.pillar-page {
   background:
      radial-gradient(1200px 600px at 10% -10%, rgba(43, 40, 217, 0.10), transparent 60%),
      radial-gradient(1000px 500px at 90% -5%, rgba(58, 140, 237, 0.08), transparent 60%),
      linear-gradient(180deg, var(--aurora-bg-start) 0%, var(--aurora-bg-end) 60%);
   color: var(--aurora-slate-700);
   font-family: 'Sora', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
   line-height: 1.7;
}

body.pillar-page .navbar.scrolled,
body.pillar-page #mainNavbar.scrolled {
   background-color: rgba(255, 255, 255, 0.92) !important;
   backdrop-filter: saturate(180%) blur(14px);
}

/* ---------------- Breadcrumbs ---------------- */

.pillar-breadcrumbs {
   padding: 100px 0 8px;
   font-size: 0.92rem;
}

.pillar-breadcrumbs__list {
   list-style: none;
   display: flex;
   flex-wrap: wrap;
   gap: 8px;
   padding: 0;
   margin: 0;
   color: var(--aurora-slate-500);
}

.pillar-breadcrumbs__list li {
   display: inline-flex;
   align-items: center;
}

.pillar-breadcrumbs__list li + li::before {
   content: "›";
   margin: 0 8px;
   color: var(--aurora-slate-300);
}

.pillar-breadcrumbs__list a {
   color: var(--aurora-violet-700);
   text-decoration: none;
   font-weight: 500;
}

.pillar-breadcrumbs__list a:hover {
   color: var(--aurora-violet-900);
   text-decoration: underline;
}

.pillar-breadcrumbs__list [aria-current="page"] {
   color: var(--aurora-slate-700);
   font-weight: 500;
}

/* ---------------- Hero ---------------- */

.pillar-hero {
   padding: 24px 0 24px;
}

.pillar-hero__badge {
   display: inline-flex;
   align-items: center;
   gap: 6px;
   padding: 6px 14px;
   border-radius: var(--radius-pill);
   background: rgba(43, 40, 217, 0.10);
   color: var(--aurora-violet-700);
   font-size: 0.82rem;
   font-weight: 600;
   margin-bottom: 16px;
   border: 1px solid rgba(43, 40, 217, 0.18);
}

.pillar-hero__title {
   font-size: clamp(2rem, 4.2vw, 3.3rem);
   font-weight: 800;
   line-height: 1.15;
   color: var(--aurora-slate-900);
   margin-bottom: 18px;
   letter-spacing: -0.02em;
}

.pillar-hero__title .accent {
   /* tom #1f5dbf com degrade suave/usavel (sem o ciano estourado do final) */
   background: linear-gradient(120deg, #1f5dbf, #2f86d4);
   -webkit-background-clip: text;
   background-clip: text;
   -webkit-text-fill-color: transparent;
}

/* segura "Corretor 2026" na mesma linha pra o ano nunca cair orfao */
.pillar-hero__nowrap { white-space: nowrap; }

.pillar-hero__lead {
   font-size: 1.15rem;
   color: var(--aurora-slate-600);
   margin-bottom: 28px;
}

.pillar-hero__meta {
   display: flex;
   flex-wrap: wrap;
   align-items: center;
   gap: 18px;
   color: var(--aurora-slate-500);
   font-size: 0.92rem;
   margin-bottom: 28px;
}

.pillar-hero__meta i { margin-right: 6px; color: var(--aurora-violet-600); }

/* ---------------- Author Card ---------------- */

.pillar-author {
   display: flex;
   align-items: center;
   gap: 16px;
   padding: 20px 26px;
   background: rgba(255, 255, 255, 0.7);
   border: 1px solid var(--aurora-violet-100);
   border-radius: var(--radius-card);
   backdrop-filter: blur(10px);
   box-shadow: var(--shadow-glass);
   max-width: 920px;
}

.pillar-author__avatar {
   width: 96px;
   height: 96px;
   border-radius: 50%;
   object-fit: cover;
   flex-shrink: 0;
   border: 2px solid var(--aurora-violet-100, #DBEAFE);
   box-shadow: 0 4px 14px rgba(43, 40, 217, 0.18);
}

.pillar-author__info { line-height: 1.4; }
.pillar-author__name { font-weight: 700; color: var(--aurora-slate-900); font-size: 1rem; }
.pillar-author__role { color: var(--aurora-violet-700); font-size: 0.88rem; font-weight: 500; }
.pillar-author__bio { color: var(--aurora-slate-700); font-size: 0.98rem; margin-top: 6px; line-height: 1.55; }

/* ---------------- Imagens ilustrativas (webp leve, lazy) ---------------- */
.pillar-img {
   display: block;
   width: 100%;
   max-width: 100%;
   height: clamp(240px, 32vw, 400px);
   object-fit: cover;
   object-position: center;
   margin: 14px 0 28px;
   border-radius: 16px;
   box-shadow: var(--shadow-glass);
   border: 1px solid var(--aurora-violet-100);
}
/* Banner nativo (3:1): mostra inteiro, sem corte */
.pillar-img--full {
   height: auto;
   object-fit: fill;
}
/* Cover: corte por cima (mantém a base) pra comer a faixa branca/céu de cima */
.pillar-img--cover {
   height: clamp(170px, 23vw, 315px);
   object-fit: cover;
   object-position: bottom;
   margin-top: 4px;
}

/* ---------------- Article body container ---------------- */

.pillar-article {
   padding: 16px 0 80px;
}

/* Containers do pillar: usa Bootstrap default (1140px centralizado) pra alinhar com header
   e ocupar bem a tela. Parágrafos longos têm max-width interno via .pillar-article p (legibilidade) */
.pillar-breadcrumbs .container,
.pillar-hero .container,
.pillar-article .container {
   max-width: 1140px;
}

/* Elementos ocupam toda a largura do container (1140), sem vão lateral */

.pillar-article p,
.pillar-article li {
   color: var(--aurora-slate-700);
   font-size: 1.1rem;
   line-height: 1.75;
}

.pillar-article a {
   color: var(--aurora-violet-700);
   text-decoration: underline;
   text-decoration-thickness: 1px;
   text-underline-offset: 3px;
   font-weight: 500;
}

.pillar-article a:hover {
   color: var(--aurora-violet-900);
}

.pillar-article h2 {
   font-size: clamp(1.55rem, 2.4vw, 2rem);
   font-weight: 700;
   color: var(--aurora-slate-900);
   margin: 64px 0 18px;
   letter-spacing: -0.015em;
   line-height: 1.25;
}

.pillar-article h2::before {
   content: "";
   display: block;
   width: 48px;
   height: 4px;
   border-radius: 4px;
   background: linear-gradient(90deg, var(--aurora-violet-700), var(--aurora-violet-600));
   margin-bottom: 14px;
}

.pillar-article h3 {
   font-size: 1.32rem;
   font-weight: 700;
   color: var(--aurora-slate-900);
   margin: 36px 0 12px;
   letter-spacing: -0.01em;
}

.pillar-article ul {
   padding-left: 0;
   list-style: none;
}

.pillar-article ul li {
   position: relative;
   padding-left: 28px;
   margin-bottom: 10px;
}

.pillar-article ul li::before {
   content: "";
   position: absolute;
   left: 0;
   top: 0.72em;
   width: 8px;
   height: 8px;
   border-radius: 50%;
   background: var(--aurora-violet-600);
}

.pillar-article strong {
   color: var(--aurora-slate-900);
}

/* ---------------- TL;DR card ---------------- */

.pillar-tldr {
   margin: 32px 0;
   padding: 28px 30px;
   border-radius: var(--radius-card);
   background: linear-gradient(135deg, rgba(255, 255, 255, 0.95), rgba(239, 246, 255, 0.85));
   border: 1px solid var(--aurora-violet-200);
   backdrop-filter: blur(12px);
   box-shadow: var(--shadow-glass);
}

.pillar-tldr__title {
   display: flex;
   align-items: center;
   gap: 10px;
   font-size: 0.85rem;
   font-weight: 700;
   text-transform: uppercase;
   letter-spacing: 0.08em;
   color: var(--aurora-violet-700);
   margin-bottom: 14px;
}

.pillar-tldr__title i { font-size: 1rem; }

.pillar-tldr__list {
   margin: 0;
   padding-left: 0;
   list-style: none;
}

.pillar-tldr__list li {
   padding: 10px 0;
   border-bottom: 1px dashed var(--aurora-violet-100);
}

.pillar-tldr__list li:last-child { border-bottom: none; }

.pillar-tldr__rank {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 30px;
   height: 30px;
   border-radius: 50%;
   background: var(--aurora-violet-100);
   color: var(--aurora-violet-800);
   font-weight: 700;
   font-size: 0.95rem;
   margin-right: 10px;
}

.pillar-tldr__rank--gold { background: linear-gradient(135deg, #FBBF24, #F59E0B); color: #fff; }
.pillar-tldr__rank--silver { background: linear-gradient(135deg, #CBD5E1, #94A3B8); color: #fff; }
.pillar-tldr__rank--bronze { background: linear-gradient(135deg, #D97706, #B45309); color: #fff; }

/* ---------------- CRM Cards ---------------- */

.pillar-crm-card {
   margin: 28px 0;
   padding: 28px 30px;
   border-radius: var(--radius-card);
   background: rgba(255, 255, 255, 0.85);
   border: 1px solid var(--aurora-slate-200);
   backdrop-filter: blur(8px);
   box-shadow: var(--shadow-glass);
   transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.pillar-crm-card:hover {
   transform: translateY(-2px);
   box-shadow: var(--shadow-glass-lg);
}

.pillar-crm-card--featured {
   background: linear-gradient(135deg, rgba(255, 255, 255, 0.97), rgba(239, 246, 255, 0.94));
   border: 4px solid var(--aurora-violet-600);
   position: relative;
   box-shadow: var(--shadow-glass-lg), 0 0 0 6px rgba(43, 40, 217, 0.08);
   padding-top: 38px;
}

.pillar-crm-card--featured::after {
   content: "🥇 RECOMENDADO";
   position: absolute;
   top: -16px;
   right: 22px;
   background: linear-gradient(135deg, var(--aurora-violet-700), var(--aurora-violet-600));
   color: #fff;
   font-size: 0.82rem;
   font-weight: 800;
   padding: 8px 18px;
   border-radius: var(--radius-pill);
   letter-spacing: 0.08em;
   box-shadow: 0 6px 18px rgba(43, 40, 217, 0.35);
}

.pillar-crm-card--featured h2 {
   font-size: clamp(1.8rem, 2.8vw, 2.25rem) !important;
   color: var(--aurora-violet-900) !important;
}

/* ---------------- Card Imobisoft: blocos novos ---------------- */

.pillar-crm-card__transparency {
   margin: 18px 0 22px;
   padding: 16px 20px;
   background: rgba(43, 40, 217, 0.06);
   border-left: 4px solid var(--aurora-violet-600);
   border-radius: 0 12px 12px 0;
   color: var(--aurora-slate-700);
   font-size: 0.98rem;
   line-height: 1.65;
}

.pillar-crm-card__transparency p {
   margin: 0 0 10px;
}

.pillar-crm-card__transparency p:last-child {
   margin-bottom: 0;
}

.pillar-crm-card__transparency strong {
   color: var(--aurora-violet-900);
   font-weight: 700;
}

.pillar-crm-card__verdict {
   margin: 24px 0 0;
   padding: 14px 18px;
   background: linear-gradient(135deg, rgba(239, 246, 255, 0.6), rgba(255, 255, 255, 0.4));
   border-radius: 12px;
   border: 1px solid var(--aurora-violet-100);
   font-size: 1.05rem;
   line-height: 1.7;
}

.pillar-exclusive-grid {
   margin: 0 !important;
   padding: 0 !important;
   list-style: none !important;
   display: grid;
   grid-template-columns: 1fr;
   gap: 10px;
}

.pillar-exclusive-grid li {
   display: flex;
   align-items: flex-start;
   gap: 12px;
   padding: 14px 16px !important;
   margin: 0 !important;
   border-radius: 12px;
   background: rgba(255, 255, 255, 0.85);
   border: 1px solid var(--aurora-violet-100);
   transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
   font-size: 0.98rem !important;
   line-height: 1.55 !important;
}

.pillar-exclusive-grid li::before {
   display: none !important;
}

.pillar-exclusive-grid li:hover {
   transform: translateY(-1px);
   border-color: var(--aurora-violet-200);
   box-shadow: 0 6px 18px rgba(43, 40, 217, 0.10);
}

.pillar-exclusive-grid__icon--tessy {
   border-radius: 50% !important;
   object-fit: cover;
   border: 2px solid var(--aurora-violet-200);
   background: transparent !important;
}

.pillar-exclusive-grid__icon {
   font-size: 1.35rem;
   line-height: 1.2;
   flex-shrink: 0;
   width: 36px;
   height: 36px;
   border-radius: 10px;
   background: linear-gradient(135deg, rgba(43, 40, 217, 0.10), rgba(43, 40, 217, 0.04));
   display: inline-flex;
   align-items: center;
   justify-content: center;
}

.pillar-crm-card__included {
   margin-top: 18px;
   padding: 20px 22px;
   border-radius: 14px;
   background: rgba(255, 255, 255, 0.75);
   border: 1px solid var(--aurora-slate-200);
}

.pillar-crm-card__included-title {
   font-weight: 700;
   color: var(--aurora-slate-900);
   font-size: 0.92rem;
   text-transform: uppercase;
   letter-spacing: 0.05em;
   margin-bottom: 12px;
   display: flex;
   align-items: center;
   gap: 8px;
}

.pillar-included-list li {
   font-size: 0.96rem !important;
   margin-bottom: 6px !important;
}

.pillar-included-list li::before {
   background: var(--aurora-emerald-500) !important;
}

.pillar-crm-card__metas {
   margin-top: 22px !important;
   padding: 20px 22px !important;
   border-radius: 14px;
   background: linear-gradient(135deg, rgba(30, 27, 142, 0.04), rgba(43, 40, 217, 0.04));
   border: 1px solid var(--aurora-violet-100);
   list-style: none !important;
}

.pillar-crm-card__metas li {
   padding-left: 0 !important;
   margin-bottom: 8px !important;
   font-size: 0.95rem !important;
   line-height: 1.6 !important;
}

.pillar-crm-card__metas li::before {
   display: none !important;
}

.pillar-crm-card__metas li:last-child {
   margin-bottom: 0 !important;
}

.pillar-crm-card__metas li span[aria-hidden="true"] {
   margin-right: 6px;
}

.pillar-emoji {
   font-size: 1.1em;
   margin-right: 2px;
}

.pillar-crm-card__head {
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 18px;
   flex-wrap: wrap;
   margin-bottom: 14px;
}

.pillar-crm-card__logo {
   height: 36px;
   width: auto;
   max-width: 130px;
   object-fit: contain;
   flex-shrink: 0;
   order: 2;
}

.pillar-crm-card--featured .pillar-crm-card__logo {
   height: 60px;
   max-width: 200px;
}

.pillar-crm-card__logo--dark {
   background: #121921;
   padding: 8px 14px;
   border-radius: 8px;
   box-sizing: content-box;
}

.pillar-crm-grid__item--dark {
   background: #121921;
   border-color: #121921;
}

.pillar-sinal__kicker {
   display: block;
   font-size: 16px;
   font-weight: 700;
   color: #2848d9;
   text-transform: uppercase;
   letter-spacing: 0.08em;
   /* margin-bottom: 6px; */
}

.pillar-sinal__kicker i {
   margin-right: 4px;
}

.pillar-sinal__titulo {
   display: block;
}

.pillar-crm-grid {
   margin: 28px 0 32px;
   padding: 22px 20px;
   border-radius: var(--radius-card);
   background: rgba(255, 255, 255, 0.82);
   border: 1px solid var(--aurora-slate-200);
   backdrop-filter: blur(6px);
}

.pillar-crm-grid__items {
   display: grid;
   grid-template-columns: repeat(8, 1fr);
   gap: 14px;
   align-items: center;
}

.pillar-crm-grid__item {
   display: flex;
   align-items: center;
   justify-content: center;
   padding: 14px 12px;
   background: #fff;
   border-radius: 12px;
   border: 1px solid var(--aurora-slate-200);
   min-height: 72px;
   transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.pillar-crm-grid__item:hover {
   transform: translateY(-2px);
   box-shadow: 0 6px 18px rgba(43, 40, 217, 0.12);
}

.pillar-crm-grid__item img {
   max-width: 100%;
   max-height: 40px;
   width: auto;
   height: auto;
   object-fit: contain;
}

.pillar-crm-grid__item img[src*="imobisoft"] {
   max-height: 119px;
   max-width: 112%;
}
.pillar-crm-grid__item img[src*="kenlo"],
.pillar-crm-grid__item img[src*="tecimob"] { max-height: 20px !important; max-width: 80px !important; }

.pillar-crm-card__logo[src*="kenlo"],
.pillar-crm-card__logo[src*="tecimob"] {
   height: 26px !important;
   max-width: 100px !important;
}

.pillar-crm-card__logo[src*="jetimob"] {
   height: 48px !important;
   max-width: 170px !important;
}

@media (max-width: 900px) {
   .pillar-crm-grid__items { grid-template-columns: repeat(4, 1fr); }
}

@media (max-width: 480px) {
   .pillar-crm-grid { padding: 16px 12px; }
   .pillar-crm-grid__items { grid-template-columns: repeat(3, 1fr); gap: 10px; }
   .pillar-crm-grid__item { padding: 8px 6px; min-height: 56px; }
   .pillar-crm-grid__item img { max-height: 28px; }
   .pillar-crm-card__logo { height: 32px; max-width: 120px; }
}

.pillar-crm-card h2 {
   margin: 0 !important;
}

.pillar-crm-card h2::before { display: none; }

.pillar-crm-card__pill {
   display: inline-flex;
   align-items: center;
   gap: 6px;
   padding: 4px 12px;
   font-size: 0.78rem;
   font-weight: 600;
   color: var(--aurora-violet-700);
   background: var(--aurora-violet-100);
   border-radius: var(--radius-pill);
   white-space: nowrap;
}

.pillar-crm-card__meta {
   display: flex;
   flex-wrap: wrap;
   gap: 10px;
   margin-bottom: 18px;
}

.pillar-crm-card__badge {
   display: inline-flex;
   align-items: center;
   gap: 6px;
   padding: 6px 14px;
   border-radius: var(--radius-pill);
   font-size: 0.82rem;
   font-weight: 600;
}

.pillar-crm-card__badge--best {
   background: var(--aurora-violet-100);
   color: var(--aurora-violet-800);
}

.pillar-crm-card__badge--price {
   background: var(--aurora-slate-100);
   color: var(--aurora-slate-700);
}

.pillar-crm-card__quote {
   margin: 22px 0 0;
   padding: 16px 20px;
   background: rgba(43, 40, 217, 0.06);
   border-left: 3px solid var(--aurora-violet-600);
   border-radius: 0 12px 12px 0;
   color: var(--aurora-slate-700);
   font-style: italic;
   font-size: 1.02rem;
   line-height: 1.65;
}

.pillar-crm-card__exclusive {
   margin-top: 22px;
   padding: 20px 22px;
   border-radius: 14px;
   background: linear-gradient(135deg, rgba(30, 27, 142, 0.04), rgba(43, 40, 217, 0.06));
   border: 1px solid var(--aurora-violet-100);
}

.pillar-crm-card__exclusive-title {
   font-weight: 700;
   color: var(--aurora-violet-800);
   font-size: 0.92rem;
   text-transform: uppercase;
   letter-spacing: 0.05em;
   margin-bottom: 12px;
   display: flex;
   align-items: center;
   gap: 8px;
}

.pillar-crm-card__exclusive ul li {
   font-size: 0.98rem;
}

.pillar-crm-card__exclusive ul li::before { background: var(--aurora-violet-800); }

/* ---------------- Destaque +540 funcionalidades ---------------- */

.pillar-540-highlight {
   display: flex;
   align-items: center;
   gap: 16px;
   margin: 4px 0 18px;
   padding: 18px 22px;
   border-radius: 14px;
   background: linear-gradient(135deg, rgba(30, 27, 142, 0.06), rgba(43, 40, 217, 0.04));
   border: 1px solid var(--aurora-violet-200);
   box-shadow: 0 4px 14px rgba(30, 27, 142, 0.06);
}

.pillar-540-number {
   font-size: 2.4rem;
   font-weight: 800;
   line-height: 1;
   color: var(--aurora-violet-700);
   letter-spacing: -0.02em;
   white-space: nowrap;
   background: linear-gradient(135deg, var(--aurora-violet-900), var(--aurora-violet-600));
   -webkit-background-clip: text;
   background-clip: text;
   -webkit-text-fill-color: transparent;
}

.pillar-540-label {
   font-size: 1.02rem;
   font-weight: 700;
   color: var(--aurora-slate-900);
   line-height: 1.3;
}

.pillar-540-sub {
   font-size: 0.86rem;
   font-weight: 500;
   color: var(--aurora-slate-600);
}

@media (max-width: 480px) {
   .pillar-540-highlight {
      gap: 12px;
      padding: 14px 16px;
   }
   .pillar-540-number {
      font-size: 2rem;
   }
   .pillar-540-label {
      font-size: 0.94rem;
   }
}

/* ---------------- Lista de features (concorrentes) ---------------- */

.pillar-crm-card__features {
   margin: 8px 0 18px !important;
   padding-left: 0 !important;
   list-style: none !important;
}

.pillar-crm-card__features li {
   position: relative;
   padding-left: 22px !important;
   margin-bottom: 8px !important;
   font-size: 0.96rem !important;
   line-height: 1.6 !important;
   color: var(--aurora-slate-700);
}

.pillar-crm-card__features li::before {
   content: "";
   position: absolute;
   left: 4px;
   top: 0.72em;
   width: 8px;
   height: 8px;
   border-radius: 50%;
   background: var(--aurora-violet-600);
}

/* ---------------- Comparativo Tabela ---------------- */

.pillar-table-wrapper {
   margin: 32px 0;
   border-radius: var(--radius-card);
   overflow-x: auto;
   -webkit-overflow-scrolling: touch;
   background: rgba(255, 255, 255, 0.92);
   border: 1px solid var(--aurora-slate-200);
   box-shadow: var(--shadow-glass);
}

.pillar-table {
   width: 100%;
   /* separate (nao collapse): necessario pra 1a coluna "congelada" (sticky) + bordas */
   border-collapse: separate;
   border-spacing: 0;
   font-size: 0.92rem;
   /* sem min-width no desktop: celulas sao curtas (Sim/Nao), entao a tabela
      cabe inteira no container e NAO precisa de barra de rolagem horizontal */
}

.pillar-table th:first-child,
.pillar-table td:first-child { min-width: 150px; }

/* telas estreitas: ai sim deixa rolar na horizontal em vez de espremer demais */
@media (max-width: 820px) {
   .pillar-table { min-width: 720px; font-size: 0.86rem; }
   .pillar-table thead th,
   .pillar-table tbody td { padding: 12px 10px; }
   .pillar-table th:first-child,
   .pillar-table td:first-child { min-width: 130px; }
}

/* ---- Cabecalho ---- */
.pillar-table thead th {
   padding: 15px 14px;
   font-weight: 700;
   text-align: left;
   font-size: 0.8rem;
   letter-spacing: 0.03em;
   text-transform: uppercase;
   color: #fff;
   background: linear-gradient(135deg, var(--aurora-violet-800), var(--aurora-violet-700));
   vertical-align: middle;
}

/* ---- Corpo ---- */
.pillar-table tbody td {
   padding: 15px 14px;
   color: var(--aurora-slate-700);
   vertical-align: middle;
   line-height: 1.5;
   border-top: 1px solid var(--aurora-slate-200);
}
.pillar-table tbody tr:first-child td { border-top: none; }

/* ---- 1a coluna = rotulo da linha, congelada na rolagem horizontal ----
   (fundo SOLIDO obrigatorio: sticky precisa cobrir as celulas que passam por baixo) */
.pillar-table thead th:first-child { position: sticky; left: 0; z-index: 3; }
.pillar-table tbody td:first-child {
   position: sticky;
   left: 0;
   z-index: 2;
   font-weight: 700;
   color: var(--aurora-slate-900);
   background: #F5F3FC;
   border-right: 1px solid var(--aurora-slate-200);
}

/* ---- Zebra (so nas celulas de dados; a 1a coluna tem seu proprio tom) ---- */
.pillar-table tbody tr:nth-child(even) td { background: rgba(43, 40, 217, 0.03); }
.pillar-table tbody tr:nth-child(even) td:first-child { background: #EEEAF8; }

/* ---- Linha destaque (Imobisoft) ---- */
.pillar-table tbody tr.is-featured td { background: rgba(43, 40, 217, 0.09); }
.pillar-table tbody tr.is-featured td:first-child {
   background: rgba(43, 40, 217, 0.16);
   color: var(--aurora-violet-800);
   box-shadow: inset 3px 0 0 var(--aurora-violet-600);
}

/* ---- Hover (depois de zebra/destaque pra vencer no mesmo peso de seletor) ---- */
.pillar-table tbody tr:hover td { background: rgba(43, 40, 217, 0.07); }
.pillar-table tbody tr:hover td:first-child { background: #E6DFF6; }

/* ---- Marcadores de celula: ✓ tem · ≈ parcial · – nao tem ---- */
.pillar-cell-yes,
.pillar-cell-mid,
.pillar-cell-no { font-weight: 600; }
.pillar-cell-yes { color: #059669; }
.pillar-cell-mid { color: #B45309; }
.pillar-cell-no  { color: var(--aurora-slate-500); font-weight: 500; }

.pillar-cell-yes::before,
.pillar-cell-mid::before,
.pillar-cell-no::before { margin-right: 6px; font-weight: 700; }
.pillar-cell-yes::before { content: "\2713"; }   /* ✓ */
.pillar-cell-mid::before { content: "\2248"; }   /* ≈ */
.pillar-cell-no::before  { content: "\2013"; }   /* – */

/* ---- Botao (i) de info (so na linha Imobisoft) + modal ---- */
.pillar-cell-info {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 18px;
   height: 18px;
   margin-left: 7px;
   padding: 0;
   border: none;
   border-radius: 50%;
   background: var(--aurora-violet-600);
   color: #fff;
   font: italic 700 11px/1 'Sora', sans-serif;
   cursor: pointer;
   vertical-align: middle;
   flex-shrink: 0;
   box-shadow: 0 2px 6px rgba(43, 40, 217, 0.4);
   transition: transform 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
}
.pillar-cell-info:hover {
   background: var(--aurora-violet-700);
   transform: translateY(-1px) scale(1.08);
   box-shadow: 0 4px 12px rgba(43, 40, 217, 0.5);
}
.pillar-cell-info:focus-visible {
   outline: 2px solid var(--aurora-violet-600);
   outline-offset: 2px;
}

/* Modal */
.pillar-modal {
   position: fixed;
   inset: 0;
   z-index: 2000;
   display: none;
   align-items: center;
   justify-content: center;
   padding: 20px;
}
.pillar-modal.is-open { display: flex; }
.pillar-modal__backdrop {
   position: absolute;
   inset: 0;
   background: rgba(15, 23, 42, 0.55);
   backdrop-filter: blur(4px);
   animation: pillarFade 0.2s ease;
}
.pillar-modal__box {
   position: relative;
   width: 100%;
   max-width: 940px;
   max-height: 94vh;
   overflow-y: auto;
   padding: 34px 46px 30px;
   border-radius: 22px;
   background: #fff;
   border: 1px solid var(--aurora-violet-100);
   box-shadow: 0 30px 80px -20px rgba(30, 27, 142, 0.45);
   animation: pillarPop 0.22s cubic-bezier(0.16, 1, 0.3, 1);
}
.pillar-modal__close {
   position: absolute;
   top: 16px;
   right: 18px;
   width: 36px;
   height: 36px;
   border: none;
   border-radius: 50%;
   background: var(--aurora-slate-100);
   color: var(--aurora-slate-600);
   font-size: 1.6rem;
   line-height: 1;
   cursor: pointer;
   display: inline-flex;
   align-items: center;
   justify-content: center;
   transition: background 0.15s ease, color 0.15s ease;
}
.pillar-modal__close:hover { background: var(--aurora-slate-200); color: var(--aurora-slate-900); }
.pillar-modal__kicker {
   display: inline-flex;
   align-items: center;
   gap: 6px;
   font-size: 0.74rem;
   font-weight: 700;
   text-transform: uppercase;
   letter-spacing: 0.08em;
   color: var(--aurora-violet-700);
   background: var(--aurora-violet-100);
   padding: 5px 12px;
   border-radius: var(--radius-pill);
   margin-bottom: 14px;
}
.pillar-modal__title {
   font-size: 1.45rem;
   font-weight: 800;
   line-height: 1.2;
   color: var(--aurora-slate-900);
   margin: 0 0 10px;
   letter-spacing: -0.01em;
}
.pillar-modal__body { color: var(--aurora-slate-700); font-size: 0.98rem; line-height: 1.55; }
.pillar-modal__body p { margin: 0 0 10px; }
.pillar-modal__body p:last-child { margin-bottom: 0; }
.pillar-modal__body strong { color: var(--aurora-slate-900); }
.pillar-modal__body ul { margin: 0 0 8px; padding-left: 0; list-style: none; }
.pillar-modal__body li { position: relative; padding-left: 22px; margin-bottom: 4px; }
/* lista em 2 colunas no modal largo: muita info cabe sem virar tubo alto e fino */
@media (min-width: 600px) {
   .pillar-modal__body ul { columns: 2; column-gap: 34px; }
   .pillar-modal__body li { break-inside: avoid; -webkit-column-break-inside: avoid; }
}
.pillar-modal__body li::before {
   content: "";
   position: absolute;
   left: 2px;
   top: 0.6em;
   width: 7px;
   height: 7px;
   border-radius: 50%;
   background: var(--aurora-violet-600);
}
.pillar-modal__cta {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   margin-top: 16px;
   padding: 12px 24px;
   border-radius: 12px;
   background: linear-gradient(135deg, var(--aurora-violet-700), var(--aurora-violet-600));
   color: #fff !important;
   font-weight: 700;
   font-size: 0.96rem;
   text-decoration: none !important;
   transition: transform 0.18s ease, box-shadow 0.18s ease;
   box-shadow: 0 8px 22px rgba(43, 40, 217, 0.3);
}
.pillar-modal__cta:hover { transform: translateY(-2px); box-shadow: 0 12px 30px rgba(43, 40, 217, 0.4); }

@keyframes pillarFade { from { opacity: 0; } to { opacity: 1; } }
@keyframes pillarPop { from { opacity: 0; transform: translateY(14px) scale(0.97); } to { opacity: 1; transform: none; } }

@media (max-width: 600px) {
   .pillar-modal__box { padding: 28px 22px 24px; border-radius: 18px; }
   .pillar-modal__title { font-size: 1.25rem; }
}

/* ---------------- Critérios numerados ---------------- */

.pillar-criterio {
   position: relative;
   margin: 28px 0;
   padding: 26px 30px 26px 90px;
   border-radius: var(--radius-card);
   background: rgba(255, 255, 255, 0.82);
   border: 1px solid var(--aurora-slate-200);
   backdrop-filter: blur(6px);
}

.pillar-criterio__num {
   position: absolute;
   top: 24px;
   left: 26px;
   width: 48px;
   height: 48px;
   border-radius: 14px;
   background: linear-gradient(135deg, var(--aurora-violet-700), var(--aurora-violet-600));
   color: #fff;
   display: flex;
   align-items: center;
   justify-content: center;
   font-weight: 800;
   font-size: 1.25rem;
   box-shadow: 0 6px 18px rgba(43, 40, 217, 0.30);
}

.pillar-criterio h3 {
   margin: 0 0 12px;
}

.pillar-warn {
   margin-top: 16px;
   padding: 12px 16px;
   border-radius: 10px;
   background: var(--aurora-amber-100);
   border-left: 3px solid var(--aurora-amber-500);
   color: var(--aurora-slate-700);
   font-size: 0.95rem;
}

.pillar-warn strong { color: #B45309; }

/* ---------------- Sinais críticos (alerta) ---------------- */

.pillar-alert {
   margin: 36px 0;
   padding: 28px 30px;
   border-radius: var(--radius-card);
   background: linear-gradient(135deg, rgba(255, 251, 235, 0.7), rgba(255, 255, 255, 0.85));
   border: 1px solid #FCD34D;
   border-left: 5px solid var(--aurora-amber-500);
   box-shadow: var(--shadow-glass);
   backdrop-filter: blur(6px);
}

.pillar-alert h3 {
   display: flex;
   align-items: center;
   gap: 10px;
   color: var(--aurora-slate-900);
   margin-top: 0;
}

.pillar-alert h3 i {
   color: var(--aurora-amber-500);
   font-size: 1.4rem;
}

.pillar-alert__quote {
   margin-top: 18px;
   padding: 14px 18px;
   background: rgba(15, 23, 42, 0.04);
   border-radius: 10px;
   font-style: italic;
   color: var(--aurora-slate-600);
   font-size: 0.98rem;
}

.pillar-alert__highlight {
   margin: 16px 0;
   padding: 18px 22px;
   background: linear-gradient(135deg, rgba(245, 158, 11, 0.10) 0%, rgba(245, 158, 11, 0.05) 100%);
   border-left: 4px solid var(--aurora-amber-500);
   border-radius: 0 12px 12px 0;
   color: var(--aurora-slate-900);
   font-size: 1.02rem;
   line-height: 1.65;
}

.pillar-alert__highlight strong {
   color: var(--aurora-slate-900);
}

/* ---------------- Erros comuns / Lista numerada ---------------- */

.pillar-erros {
   counter-reset: erros;
   list-style: none;
   padding: 0;
   margin: 24px 0;
}

.pillar-erros li {
   counter-increment: erros;
   position: relative;
   padding: 18px 22px 18px 70px;
   margin-bottom: 14px;
   border-radius: 14px;
   background: rgba(255, 255, 255, 0.78);
   border: 1px solid var(--aurora-slate-200);
}

.pillar-erros li::before {
   content: counter(erros);
   position: absolute;
   left: 18px;
   top: 18px;
   width: 36px;
   height: 36px;
   border-radius: 10px;
   background: var(--aurora-violet-100);
   color: var(--aurora-violet-800);
   display: flex;
   align-items: center;
   justify-content: center;
   font-weight: 700;
   font-size: 1rem;
}

.pillar-erros li > strong:first-child {
   display: block;
   margin-bottom: 6px;
   color: var(--aurora-slate-900);
}

/* ---------------- Faixas de preço ---------------- */

.pillar-faixas {
   display: grid;
   grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
   gap: 18px;
   margin: 24px 0;
}

.pillar-faixa {
   padding: 24px 26px;
   border-radius: 18px;
   background: rgba(255, 255, 255, 0.85);
   border: 1px solid var(--aurora-slate-200);
   box-shadow: var(--shadow-glass);
}

.pillar-faixa--premium {
   background: linear-gradient(135deg, rgba(255, 255, 255, 0.95), rgba(239, 246, 255, 0.85));
   border-color: var(--aurora-violet-200);
}

.pillar-faixa h3 {
   margin: 0 0 10px;
   color: var(--aurora-slate-900);
}

.pillar-faixa__tag {
   display: inline-block;
   padding: 4px 12px;
   border-radius: var(--radius-pill);
   font-size: 0.78rem;
   font-weight: 600;
   margin-bottom: 12px;
}

.pillar-faixa__tag--basic { background: var(--aurora-slate-100); color: var(--aurora-slate-700); }
.pillar-faixa__tag--medium { background: var(--aurora-emerald-100); color: #047857; }
.pillar-faixa__tag--premium { background: var(--aurora-violet-100); color: var(--aurora-violet-800); }

.pillar-faixa__price {
   font-size: 1.15rem;
   color: var(--aurora-violet-800);
   margin: 6px 0 14px;
   padding: 8px 14px;
   background: rgba(43, 40, 217, 0.06);
   border-left: 3px solid var(--aurora-violet-600);
   border-radius: 0 8px 8px 0;
   font-weight: 600;
}

.pillar-faixa__price strong {
   color: var(--aurora-violet-900);
   font-weight: 800;
}

/* ---------------- Migração passos ---------------- */

.pillar-migracao {
   counter-reset: passos;
   padding: 0;
   list-style: none;
   margin: 24px 0;
}

.pillar-migracao > li {
   counter-increment: passos;
   padding: 24px 28px;
   margin-bottom: 16px;
   border-radius: 16px;
   background: rgba(255, 255, 255, 0.82);
   border: 1px solid var(--aurora-slate-200);
}

.pillar-migracao > li::before {
   content: "Passo " counter(passos);
   display: inline-block;
   padding: 6px 12px;
   margin-bottom: 14px;
   font-size: 0.72rem;
   font-weight: 700;
   text-transform: uppercase;
   letter-spacing: 0.06em;
   color: var(--aurora-violet-800);
   background: var(--aurora-violet-100);
   border-radius: var(--radius-pill);
}

.pillar-migracao > li h3 {
   margin-top: 0;
   margin-bottom: 12px;
}

/* ---------------- FAQ Aurora Light (estilo home, paleta violet) ---------------- */

.pillar-faqs {
   margin: 56px 0 12px;
   position: relative;
}

/* Quebra do container fechado do artigo pra deixar FAQ full-width visual */
.pillar-faqs-wrap {
   display: grid;
   grid-template-columns: 360px 1fr;
   gap: 40px;
   align-items: start;
}

/* ---- SIDEBAR violet escuro (mesmo gradient do CTA do pillar) ---- */
.pillar-faqs-side {
   position: sticky;
   top: 110px;
   padding: 36px 30px;
   background:
      radial-gradient(circle at 0% 0%, rgba(99, 160, 235, 0.22), transparent 60%),
      linear-gradient(135deg, var(--aurora-violet-900) 0%, var(--aurora-violet-800) 50%, #1A2150 100%);
   border: 1px solid rgba(99, 160, 235, 0.25);
   border-radius: 24px;
   color: #fff;
   box-shadow: 0 10px 30px rgba(30, 27, 142, 0.18);
}

.pillar-faqs-side .badge-faq {
   display: inline-block;
   font-size: 12px;
   text-transform: uppercase;
   letter-spacing: 0.18em;
   color: #D2E4FB;
   font-weight: 700;
   margin-bottom: 16px;
   padding: 6px 14px;
   background: rgba(99, 160, 235, 0.14);
   border: 1px solid rgba(99, 160, 235, 0.32);
   border-radius: 100px;
}

/* Override do h2 dentro da sidebar (não vira accordion) */
.pillar-faqs-side h2.pillar-faqs-title {
   font-size: 1.7rem !important;
   font-weight: 800;
   line-height: 1.15;
   letter-spacing: -0.01em;
   margin: 0 0 14px !important;
   padding: 0 !important;
   background: none !important;
   border: none !important;
   color: #fff !important;
   cursor: auto !important;
   display: block !important;
}
.pillar-faqs-side h2.pillar-faqs-title::after { content: none !important; }
.pillar-faqs-side h2.pillar-faqs-title .accent {
   background: linear-gradient(135deg, #D2E4FB 0%, #9DC4F5 60%, #6BA6EC 100%);
   -webkit-background-clip: text;
   background-clip: text;
   color: transparent;
}

.pillar-faqs-side p {
   color: #D2E4FB;
   font-size: 0.95rem;
   line-height: 1.55;
   margin: 0 0 20px;
}

.pillar-faqs-side .check {
   display: flex;
   align-items: center;
   gap: 10px;
   color: #9DC4F5;
   font-size: 0.88rem;
   font-weight: 500;
}
.pillar-faqs-side .check i { font-size: 1.05rem; color: #6BA6EC; }

/* ---- LISTA de cards à direita ---- */
.pillar-faqs-list {
   display: flex;
   flex-direction: column;
   gap: 12px;
}

/* Cada h2 vira o "botão" do card (mantém data-faq-toggle pro JS) */
.pillar-faqs-list h2[data-faq-toggle] {
   font-size: 1.05rem !important;
   font-weight: 600 !important;
   margin: 0 !important;
   padding: 20px 22px;
   background: rgba(255, 255, 255, 0.95);
   border: 1px solid var(--aurora-slate-200);
   border-radius: 14px;
   color: var(--aurora-slate-900);
   cursor: pointer;
   display: flex;
   align-items: center;
   gap: 14px;
   line-height: 1.4;
   transition: all 0.2s ease;
   user-select: none;
   box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
}

.pillar-faqs-list h2[data-faq-toggle]::before { display: none !important; }

.pillar-faqs-list h2[data-faq-toggle]:hover {
   border-color: var(--aurora-violet-200);
   box-shadow: 0 6px 20px rgba(43, 40, 217, 0.10);
   transform: translateY(-1px);
}

.pillar-faqs-list h2[data-faq-toggle] .faq-icon {
   color: var(--aurora-violet-700);
   font-size: 1.4rem;
   flex-shrink: 0;
   line-height: 1;
}

/* "+" no fim */
.pillar-faqs-list h2[data-faq-toggle]::after {
   content: "+";
   margin-left: auto;
   font-size: 1.7rem;
   font-weight: 400;
   color: var(--aurora-violet-700);
   transition: transform 0.25s ease;
   line-height: 1;
   flex-shrink: 0;
}

/* Estado aberto: vira topo da "casquinha" + rotaciona o + pra X */
.pillar-faqs-list h2[data-faq-toggle][aria-expanded="true"] {
   background: linear-gradient(180deg, #FFFFFF 0%, var(--aurora-violet-50) 100%);
   border-color: var(--aurora-violet-200);
   color: var(--aurora-violet-900);
   border-radius: 14px 14px 0 0;
   box-shadow: 0 8px 24px rgba(43, 40, 217, 0.12);
}
.pillar-faqs-list h2[data-faq-toggle][aria-expanded="true"]::after {
   transform: rotate(45deg);
}

/* Resposta */
.pillar-faqs-list .pillar-faq-answer {
   padding: 4px 22px 22px 58px;
   border: 1px solid var(--aurora-violet-200);
   border-top: none;
   border-radius: 0 0 14px 14px;
   background: linear-gradient(180deg, var(--aurora-violet-50) 0%, #FFFFFF 100%);
   color: var(--aurora-slate-700);
   font-size: 0.97rem;
   line-height: 1.65;
   margin: 0;
   display: none;
   box-shadow: 0 8px 24px rgba(43, 40, 217, 0.06);
}

.pillar-faqs-list .pillar-faq-answer.is-open { display: block; }
.pillar-faqs-list .pillar-faq-answer p { margin: 0; }
.pillar-faqs-list .pillar-faq-answer strong { color: var(--aurora-violet-900); }
.pillar-faqs-list .pillar-faq-answer a {
   color: var(--aurora-violet-700);
   text-decoration: underline;
   text-underline-offset: 2px;
}
.pillar-faqs-list .pillar-faq-answer a:hover { color: var(--aurora-violet-900); }

/* Tablet/Mobile: empilha (sidebar em cima) */
@media (max-width: 1024px) {
   .pillar-faqs-wrap {
      grid-template-columns: 1fr;
      gap: 24px;
   }
   .pillar-faqs-side {
      position: static;
      padding: 28px 24px;
   }
   .pillar-faqs-side h2.pillar-faqs-title {
      font-size: 1.45rem !important;
   }
}

@media (max-width: 600px) {
   .pillar-faqs { margin-top: 40px; }
   .pillar-faqs-list h2[data-faq-toggle] {
      font-size: 0.98rem !important;
      padding: 16px 18px;
      gap: 10px;
   }
   .pillar-faqs-list h2[data-faq-toggle] .faq-icon { font-size: 1.2rem; }
   .pillar-faqs-list h2[data-faq-toggle]::after { font-size: 1.4rem; }
   .pillar-faqs-list .pillar-faq-answer {
      padding-left: 18px;
      padding-right: 18px;
      font-size: 0.93rem;
   }
}

/* ---------------- CTA final ---------------- */

.pillar-cta {
   margin: 56px 0 0;
   padding: 44px 36px;
   border-radius: 24px;
   background: linear-gradient(135deg, var(--aurora-violet-900) 0%, var(--aurora-violet-800) 50%, #1A2150 100%);
   color: #fff;
   text-align: left;
   position: relative;
   overflow: hidden;
}

.pillar-cta::before {
   content: "";
   position: absolute;
   top: -50%;
   right: -10%;
   width: 60%;
   height: 200%;
   background: radial-gradient(circle, rgba(255, 255, 255, 0.06) 0%, transparent 60%);
   pointer-events: none;
}

.pillar-cta h2 {
   color: #fff;
   margin-top: 0;
   margin-bottom: 14px;
}

.pillar-cta h2::before { display: none; }

.pillar-cta p {
   color: rgba(255, 255, 255, 0.85);
   font-size: 1.1rem;
   max-width: 920px;
   margin: 0 0 24px;
}

.pillar-cta strong {
   color: #fff;
   font-weight: 700;
}

.pillar-cta__btn {
   display: inline-flex;
   align-items: center;
   gap: 10px;
   padding: 16px 32px;
   background: #fff;
   color: var(--aurora-violet-800);
   font-weight: 700;
   font-size: 1.05rem;
   border-radius: 14px;
   text-decoration: none !important;
   transition: transform 0.2s, box-shadow 0.2s;
   box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
}

.pillar-cta__btn:hover {
   transform: translateY(-2px);
   box-shadow: 0 12px 32px rgba(0, 0, 0, 0.20);
   color: var(--aurora-violet-900);
}

.pillar-cta__small {
   margin-top: 12px !important;
   font-size: 0.88rem !important;
   color: rgba(255, 255, 255, 0.7) !important;
}

/* ---------------- Share buttons ---------------- */

.pillar-share {
   margin: 56px 0 0;
   display: flex;
   align-items: center;
   gap: 14px;
   flex-wrap: wrap;
   padding-top: 24px;
   border-top: 1px solid var(--aurora-slate-200);
}

.pillar-share__label {
   font-weight: 600;
   color: var(--aurora-slate-600);
   font-size: 0.92rem;
}

.pillar-share__btns {
   display: flex;
   gap: 10px;
}

.pillar-share__btn {
   width: 40px;
   height: 40px;
   border-radius: 10px;
   display: inline-flex;
   align-items: center;
   justify-content: center;
   color: var(--aurora-violet-700);
   background: rgba(43, 40, 217, 0.10);
   text-decoration: none !important;
   transition: all 0.2s;
}

.pillar-share__btn:hover {
   background: var(--aurora-violet-700);
   color: #fff;
   transform: translateY(-2px);
}

/* ---------------- Responsivo ---------------- */

@media (max-width: 768px) {
   .pillar-breadcrumbs { padding-top: 90px; }
   .pillar-hero { padding-bottom: 32px; }
   .pillar-hero__title { font-size: 1.85rem; }
   .pillar-article h2 { margin-top: 44px; }
   .pillar-article .container { padding: 0 18px; }
   .pillar-crm-card,
   .pillar-tldr,
   .pillar-alert,
   .pillar-criterio,
   .pillar-faixa { padding: 20px 22px; }
   .pillar-criterio { padding-left: 22px; padding-top: 78px; }
   .pillar-criterio__num { top: 18px; left: 22px; }
   .pillar-erros li { padding-left: 64px; }
   .pillar-erros li::before { left: 16px; }
   .pillar-cta { padding: 32px 22px; }
   .pillar-cta h2 { font-size: 1.5rem; }
   .pillar-author { padding: 16px; gap: 12px; }
   .pillar-author__avatar { width: 72px; height: 72px; }
}

/* ============================================================ *
 *  MODO ESCURO  ( <html data-theme="dark"> )                   *
 *  Mesma chave 'blog-theme' do resto do blog.                  *
 *  Estrategia: inverter a escala neutra (slate) via tokens +   *
 *  override explicito das superficies "vidro" hardcoded em     *
 *  branco e dos gradientes que sao FUNDO de texto branco.      *
 * ============================================================ */

/* ---------- Botao toggle (style.css nao carrega nesta pagina) ---------- */
.blog-theme-toggle {
   position: fixed; top: 84px; right: 22px; z-index: 950;
   width: 46px; height: 46px; border-radius: 50%; cursor: pointer;
   display: inline-flex; align-items: center; justify-content: center;
   background: #fff; border: 1px solid var(--aurora-slate-200);
   color: var(--aurora-slate-700); box-shadow: var(--shadow-glass);
   transition: transform .18s, box-shadow .2s, border-color .2s, background .3s, color .3s;
}
.blog-theme-toggle:hover { transform: translateY(-2px) rotate(-8deg); border-color: var(--aurora-violet-600); color: var(--aurora-violet-600); box-shadow: var(--shadow-glass-lg); }
.blog-theme-toggle svg { width: 21px; height: 21px; }
.blog-theme-toggle .blog-ico-sun { display: none; }
:root[data-theme="dark"] .blog-theme-toggle { background: #14171D; }
:root[data-theme="dark"] .blog-theme-toggle .blog-ico-sun { display: block; }
:root[data-theme="dark"] .blog-theme-toggle .blog-ico-moon { display: none; }
@media (max-width: 768px) { .blog-theme-toggle { top: 74px; right: 16px; width: 42px; height: 42px; } }

/* ---------- Tokens (escuro): inverte a escala neutra, clareia os violetas de texto ---------- */
:root[data-theme="dark"] {
   --aurora-bg-start: #0B0D12;
   --aurora-bg-end: #0E1117;
   /* texto / titulos (eram escuros -> claros) */
   --aurora-slate-900: #F3F5F8;
   --aurora-slate-700: #D2D8E0;
   --aurora-slate-600: #AAB2BE;
   --aurora-slate-500: #8C94A1;
   /* bordas / superficies claras (eram claras -> escuras) */
   --aurora-slate-300: #2C313B;
   --aurora-slate-200: #262B34;
   --aurora-slate-100: #1B1F27;
   /* fundos violet claros -> tints escuros */
   --aurora-violet-50: #191630;
   --aurora-violet-100: #241F40;
   --aurora-violet-200: #332A58;
   /* violetas de TEXTO clareados pra contraste no escuro
      (os gradientes que sao FUNDO de texto branco sao re-fixados abaixo) */
   --aurora-violet-600: #5AB0EC;
   --aurora-violet-700: #7FB6F2;
   --aurora-violet-800: #A4CCF8;
   --aurora-violet-900: #C5DFFB;
   /* alertas */
   --aurora-amber-100: #3A2E12;
   --aurora-emerald-100: #0F2E22;
   --shadow-glass: 0 8px 32px rgba(0, 0, 0, 0.45);
   --shadow-glass-lg: 0 16px 48px rgba(0, 0, 0, 0.6);
}

/* ---------- Base ---------- */
:root[data-theme="dark"] body.pillar-page {
   background:
      radial-gradient(1200px 600px at 10% -10%, rgba(43, 40, 217, 0.18), transparent 60%),
      radial-gradient(1000px 500px at 90% -5%, rgba(58, 140, 237, 0.12), transparent 60%),
      linear-gradient(180deg, var(--aurora-bg-start) 0%, var(--aurora-bg-end) 60%);
   color: var(--aurora-slate-700);
}

/* navbar escura (no claro o pillar usa branca translucida) */
:root[data-theme="dark"] body.pillar-page #mainNavbar,
:root[data-theme="dark"] body.pillar-page #mainNavbar.scrolled {
   background-color: rgba(14, 17, 23, 0.92) !important;
   border-bottom: 1px solid rgba(255, 255, 255, 0.07) !important;
}

/* links do menu ficam brancos no dark (no claro site.css forca #333 quando scrolled) */
:root[data-theme="dark"] body.pillar-page #mainNavbar .nav-link,
:root[data-theme="dark"] body.pillar-page #mainNavbar.scrolled .nav-link,
:root[data-theme="dark"] body.pillar-page #mainNavbar .navbar-toggler {
   color: rgba(255, 255, 255, 0.92) !important;
}

/* Menu MOBILE aberto no dark (fix 27/07): o landing.css pinta o collapse de
   branco em (max-width:991px) e a regra acima ja deixou os .nav-link claros,
   entao os itens do menu sumiam (branco no branco). Escurece a superficie. */
@media (max-width: 991px) {
   :root[data-theme="dark"] body.pillar-page #mainNavbar .navbar-collapse.show,
   :root[data-theme="dark"] body.pillar-page #mainNavbar .navbar-collapse.collapsing {
      background: #0e1117 !important;
      border: 1px solid rgba(255, 255, 255, 0.08);
      border-top: none;
   }
   :root[data-theme="dark"] body.pillar-page #mainNavbar .navbar-collapse.show .nav-link,
   :root[data-theme="dark"] body.pillar-page #mainNavbar .navbar-collapse.collapsing .nav-link {
      color: rgba(255, 255, 255, 0.92) !important;
   }
   /* o mega-menu "Solucoes" abre DENTRO do collapse no mobile */
   :root[data-theme="dark"] body.pillar-page #mainNavbar .mega-menu {
      background: #12161f !important;
   }
   :root[data-theme="dark"] body.pillar-page #mainNavbar .mega-menu-item {
      color: rgba(255, 255, 255, 0.85) !important;
   }
   :root[data-theme="dark"] body.pillar-page #mainNavbar .mega-menu-item:hover {
      background: rgba(255, 255, 255, 0.06) !important;
      color: #4dabf7 !important;
   }
}
:root[data-theme="dark"] body.pillar-page #mainNavbar .nav-link:hover,
:root[data-theme="dark"] body.pillar-page #mainNavbar.scrolled .nav-link:hover {
   color: #fff !important;
}

/* ---------- Superficies "vidro" (eram branco translucido) ---------- */
:root[data-theme="dark"] .pillar-author,
:root[data-theme="dark"] .pillar-crm-card,
:root[data-theme="dark"] .pillar-crm-card__included,
:root[data-theme="dark"] .pillar-exclusive-grid li,
:root[data-theme="dark"] .pillar-crm-grid,
:root[data-theme="dark"] .pillar-table-wrapper,
:root[data-theme="dark"] .pillar-criterio,
:root[data-theme="dark"] .pillar-erros li,
:root[data-theme="dark"] .pillar-faixa,
:root[data-theme="dark"] .pillar-migracao > li {
   background: rgba(255, 255, 255, 0.035);
   border-color: var(--aurora-slate-200);
}

:root[data-theme="dark"] .pillar-tldr,
:root[data-theme="dark"] .pillar-crm-card--featured,
:root[data-theme="dark"] .pillar-faixa--premium {
   background: linear-gradient(135deg, rgba(43, 40, 217, 0.10), rgba(255, 255, 255, 0.03));
}

:root[data-theme="dark"] .pillar-crm-card__verdict {
   background: linear-gradient(135deg, rgba(43, 40, 217, 0.10), rgba(255, 255, 255, 0.02));
}

/* tiles dos logos: mantem fundo claro (logos coloridos pedem fundo branco) */
:root[data-theme="dark"] .pillar-crm-grid__item {
   background: #EEF0F4;
   border-color: var(--aurora-slate-200);
}

/* quote escuro do alerta (era ink translucido, sumia no escuro) */
:root[data-theme="dark"] .pillar-alert__quote {
   background: rgba(255, 255, 255, 0.05);
}

/* ---------- Alerta amarelo: vira tint ambar escuro ---------- */
:root[data-theme="dark"] .pillar-alert {
   background: linear-gradient(135deg, rgba(245, 158, 11, 0.10), rgba(255, 255, 255, 0.02));
   border-color: rgba(245, 158, 11, 0.45);
}
:root[data-theme="dark"] .pillar-alert__highlight {
   background: linear-gradient(135deg, rgba(245, 158, 11, 0.14) 0%, rgba(245, 158, 11, 0.06) 100%);
}
:root[data-theme="dark"] .pillar-warn { color: var(--aurora-slate-700); }
:root[data-theme="dark"] .pillar-warn strong { color: #FBBF24; }
:root[data-theme="dark"] .pillar-faixa__tag--medium { color: #34D399; }

/* ---------- Gradientes que sao FUNDO de texto branco: mantem violeta profundo ---------- */
:root[data-theme="dark"] .pillar-table thead th {
   background: linear-gradient(135deg, #15166E, #2B28D9);
}
/* 1a coluna congelada: fundo solido escuro por estado (cobre o que rola por baixo) */
:root[data-theme="dark"] .pillar-table tbody td:first-child { background: #181B22; }
:root[data-theme="dark"] .pillar-table tbody tr:nth-child(even) td:first-child { background: #1D212B; }
:root[data-theme="dark"] .pillar-table tbody tr.is-featured td:first-child { background: #182347; color: var(--aurora-violet-900); }
:root[data-theme="dark"] .pillar-table tbody tr:hover td:first-child { background: #262C3A; }
/* marcadores: verde/ambar mais claros no escuro */
:root[data-theme="dark"] .pillar-cell-yes { color: #34D399; }
:root[data-theme="dark"] .pillar-cell-mid { color: #FBBF24; }

/* modal no escuro: caixa escura + CTA mantem violeta profundo (texto branco legivel) */
:root[data-theme="dark"] .pillar-modal__box {
   background: #14171D;
   border-color: var(--aurora-violet-200);
}
:root[data-theme="dark"] .pillar-modal__close { background: rgba(255, 255, 255, 0.06); }
:root[data-theme="dark"] .pillar-modal__close:hover { background: rgba(255, 255, 255, 0.12); }
:root[data-theme="dark"] .pillar-modal__cta {
   background: linear-gradient(135deg, #2B28D9, #3AB5ED);
}
:root[data-theme="dark"] .pillar-criterio__num {
   background: linear-gradient(135deg, #2B28D9, #3AB5ED);
}
:root[data-theme="dark"] .pillar-crm-card--featured::after {
   background: linear-gradient(135deg, #2B28D9, #3AB5ED);
}
:root[data-theme="dark"] .pillar-cta {
   background: linear-gradient(135deg, #0C1158 0%, #15166E 50%, #0A1030 100%);
}
:root[data-theme="dark"] .pillar-cta__btn { color: #2B28D9; }
:root[data-theme="dark"] .pillar-cta__btn:hover { color: #15166E; }
:root[data-theme="dark"] .pillar-faqs-side {
   background:
      radial-gradient(circle at 0% 0%, rgba(99, 160, 235, 0.20), transparent 60%),
      linear-gradient(135deg, #0C1158 0%, #15166E 50%, #0A1030 100%);
   border-color: rgba(99, 160, 235, 0.25);
}

/* ---------- FAQ: cards e respostas no escuro ---------- */
:root[data-theme="dark"] .pillar-faqs-list h2[data-faq-toggle] {
   background: rgba(255, 255, 255, 0.035);
   border-color: var(--aurora-slate-200);
   color: var(--aurora-slate-900);
}
:root[data-theme="dark"] .pillar-faqs-list h2[data-faq-toggle][aria-expanded="true"] {
   background: linear-gradient(180deg, rgba(43, 40, 217, 0.12) 0%, rgba(43, 40, 217, 0.05) 100%);
   border-color: var(--aurora-violet-200);
   color: var(--aurora-violet-900);
}
:root[data-theme="dark"] .pillar-faqs-list .pillar-faq-answer {
   background: linear-gradient(180deg, rgba(43, 40, 217, 0.06) 0%, rgba(255, 255, 255, 0.02) 100%);
   border-color: var(--aurora-violet-200);
}

/* logos com fundo escuro proprio (ja escuros) seguem iguais */

/* ============================================================
   Widget de notas Lighthouse / PageSpeed (prova viva de site rapido)
   Aneis estilo PageSpeed: --score (0-100) preenche o anel via conic-gradient.
   Todas as notas mostradas estao na faixa verde (90-100), entao anel verde fixo.
   ============================================================ */
.pillar-lh {
   position: relative;
   overflow: hidden;
   margin: 26px 0 6px;
   padding: 26px 24px 20px;
   border-radius: var(--radius-card);
   background: linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(239, 246, 255, 0.85));
   border: 1px solid var(--aurora-violet-100);
   box-shadow: var(--shadow-glass);
   text-align: center;
}
.pillar-lh::before {
   content: "";
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   height: 6px;
   background: linear-gradient(90deg, var(--aurora-violet-700), #0aa17d);
}

.pillar-lh__cap {
   font-size: 0.92rem;
   font-weight: 600;
   color: var(--aurora-slate-600);
   margin-bottom: 20px;
}
.pillar-lh__cap i { color: var(--aurora-violet-700); font-size: 1.05rem; margin-right: 6px; }

.pillar-lh__rings {
   display: flex;
   flex-wrap: wrap;
   justify-content: center;
   gap: 34px;
}

.pillar-lh__ring {
   display: flex;
   flex-direction: column;
   align-items: center;
   gap: 12px;
}

.pillar-lh__num {
   --ring: #0aa17d;            /* verde PageSpeed (faixa 90-100) */
   --lh-hole: #FFFFFF;
   --lh-track: #E3E8F0;
   width: 108px;
   height: 108px;
   border-radius: 50%;
   display: grid;
   place-items: center;
   background:
      radial-gradient(closest-side, var(--lh-hole) 78%, transparent 79% 100%),
      conic-gradient(var(--ring) calc(var(--score, 0) * 3.6deg), var(--lh-track) 0);
   color: var(--ring);
   font-weight: 800;
   font-size: 1.85rem;
   font-variant-numeric: tabular-nums;
}

.pillar-lh__lbl {
   font-size: 0.95rem;
   font-weight: 600;
   color: var(--aurora-slate-700);
}

.pillar-lh__note {
   margin: 20px auto 0;
   max-width: 620px;
   font-size: 0.86rem !important;
   line-height: 1.55 !important;
   color: var(--aurora-slate-500) !important;
}
.pillar-lh__note a { font-weight: 600; }

@media (max-width: 480px) {
   .pillar-lh__rings { gap: 22px; }
   .pillar-lh__num { width: 92px; height: 92px; font-size: 1.6rem; }
}

/* Modo escuro: furo do anel acompanha o card escuro, trilha mais escura */
:root[data-theme="dark"] .pillar-lh {
   background: linear-gradient(135deg, rgba(255, 255, 255, 0.045), rgba(43, 40, 217, 0.08));
   border-color: var(--aurora-slate-200);
}
:root[data-theme="dark"] .pillar-lh__num {
   --lh-hole: #14171D;
   --lh-track: #2A303B;
}

/* ============================================================
   Seção de PROVA: blocos por região + tabs por tipo de busca + tabela SERP
   ============================================================ */
.pillar-prova-disclosure {
   display: flex;
   gap: 12px;
   align-items: flex-start;
   background: var(--aurora-card, #fff);
   border: 1px solid var(--aurora-violet-100);
   border-left: 4px solid var(--aurora-violet-700);
   border-radius: 14px;
   padding: 16px 18px;
   margin: 8px 0 30px;
   box-shadow: var(--shadow-glass);
}
.pillar-prova-disclosure i { color: var(--aurora-violet-700); font-size: 1.25rem; line-height: 1.3; }
.pillar-prova-disclosure div { font-size: 0.98rem; }
.pillar-prova-disclosure strong { color: var(--aurora-slate-900); }

.pillar-prova-region { margin: 0 0 34px; }
.pillar-prova-region__head {
   display: flex;
   align-items: baseline;
   gap: 12px;
   flex-wrap: wrap;
   margin: 0 0 14px;
}
.pillar-prova-region__name {
   font-size: 1.3rem !important;
   font-weight: 800;
   color: var(--aurora-slate-900);
   margin: 0 !important;
   padding: 0 !important;
}
.pillar-prova-region__name::before { content: none !important; }
.pillar-prova-region__name i { color: var(--aurora-violet-700); }
.pillar-prova-region__sub { font-size: 0.92rem; color: var(--aurora-slate-500); }

.pillar-prova-tabs {
   display: flex;
   flex-wrap: wrap;
   gap: 8px;
   margin: 0 0 -1px;
   position: relative;
   z-index: 2;
}
.pillar-prova-tab {
   appearance: none;
   border: 1px solid var(--aurora-slate-200);
   border-bottom: none;
   background: var(--aurora-violet-50);
   color: var(--aurora-slate-700);
   font-weight: 600;
   font-size: 0.9rem;
   padding: 10px 16px;
   border-radius: 12px 12px 0 0;
   cursor: pointer;
   transition: 0.15s;
   text-align: left;
   font-family: inherit;
}
.pillar-prova-tab small {
   display: block;
   font-weight: 500;
   font-size: 0.72rem;
   color: var(--aurora-slate-500);
   margin-top: 2px;
}
.pillar-prova-tab:hover { color: var(--aurora-violet-700); }
.pillar-prova-tab[aria-selected="true"] {
   background: #fff;
   color: var(--aurora-violet-700);
   box-shadow: 0 -3px 0 0 var(--aurora-violet-700) inset;
}
.pillar-prova-tab[aria-selected="true"] small { color: var(--aurora-violet-700); }

.pillar-prova-panels {
   background: #fff;
   border: 1px solid var(--aurora-slate-200);
   border-radius: 0 14px 14px 14px;
   padding: 20px 20px 16px;
   box-shadow: var(--shadow-glass);
}
.pillar-prova-panel { display: none; }
.pillar-prova-panel.is-open { display: block; animation: provaFade 0.2s ease; }
@keyframes provaFade { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: none; } }
.pillar-prova-panel h4 {
   margin: 0 0 4px;
   color: var(--aurora-slate-900);
   font-size: 1.08rem;
   font-weight: 700;
}
.pillar-prova-kw { color: var(--aurora-slate-500); font-size: 0.9rem !important; margin: 0 0 14px !important; }

.pillar-prova-table { width: 100%; border-collapse: collapse; font-size: 0.95rem; }
.pillar-prova-table th {
   text-align: left;
   font-size: 0.76rem;
   text-transform: uppercase;
   letter-spacing: 0.05em;
   color: var(--aurora-slate-500);
   padding: 8px 10px;
   border-bottom: 2px solid var(--aurora-slate-200);
}
.pillar-prova-table td {
   padding: 10px;
   border-bottom: 1px solid var(--aurora-slate-200);
   vertical-align: middle;
   color: var(--aurora-slate-700);
}
.pillar-prova-table tr:last-child td { border-bottom: none; }
.pillar-prova-pos {
   display: inline-grid;
   place-items: center;
   width: 28px;
   height: 28px;
   border-radius: 8px;
   font-weight: 800;
   font-size: 0.85rem;
   color: #fff;
   background: var(--aurora-slate-500);
}
.pillar-prova-pos--apar { background: #0aa17d; font-size: 0.95rem; }
.pillar-prova-site { font-weight: 600; color: var(--aurora-slate-900); }
.pillar-prova-plat {
   font-size: 0.82rem;
   padding: 3px 11px;
   border-radius: 100px;
   display: inline-block;
   font-weight: 600;
   white-space: nowrap;
}
.pillar-prova-plat--portal { background: var(--aurora-violet-50); border: 1px solid var(--aurora-slate-200); color: var(--aurora-slate-600); }
.pillar-prova-plat--ours { background: rgba(10, 161, 125, 0.12); border: 1px solid rgba(10, 161, 125, 0.35); color: #0a6b54; }
.pillar-prova-plat--rival { background: #fff4ef; border: 1px solid #f6d6c6; color: #b2592f; }
.pillar-prova-table tr.pillar-prova-ours td { background: rgba(31, 93, 191, 0.05); }
.pillar-prova-tag {
   font-size: 0.7rem;
   font-weight: 700;
   padding: 2px 8px;
   border-radius: 100px;
   margin-left: 8px;
   color: var(--aurora-violet-700);
   background: rgba(31, 93, 191, 0.12);
   white-space: nowrap;
}

.pillar-prova-leitura {
   margin: 14px 0 0;
   padding: 12px 14px;
   border-radius: 12px;
   background: rgba(31, 93, 191, 0.06);
   font-size: 0.95rem;
   color: var(--aurora-slate-900);
}
.pillar-prova-leitura strong { color: var(--aurora-violet-700); }

.pillar-prova-legend { display: flex; gap: 16px; flex-wrap: wrap; margin: 6px 0 0; font-size: 0.82rem; color: var(--aurora-slate-500); }
.pillar-prova-legend span { display: inline-flex; align-items: center; gap: 6px; }
.pillar-prova-dot { width: 11px; height: 11px; border-radius: 3px; display: inline-block; }
.pillar-prova-dot--ours { background: #0aa17d; }
.pillar-prova-dot--rival { background: #b2592f; }
.pillar-prova-dot--portal { background: var(--aurora-slate-300); }

.pillar-prova-honest {
   margin: 24px 0 0;
   border-top: 1px dashed var(--aurora-slate-200);
   padding-top: 18px;
}
.pillar-prova-honest p {
   font-size: 1.08rem !important;
   line-height: 1.7 !important;
   color: var(--aurora-slate-700) !important;
   margin: 0 0 12px;
}
.pillar-prova-honest p:last-child { margin-bottom: 0; }
.pillar-prova-honest strong { color: var(--aurora-slate-900); }

/* Bloco de cobertura: fecho forte da prova (a regiao toda) */
.pillar-prova-cobertura {
   margin: 22px 0 0;
   padding: 20px 22px;
   border-radius: 16px;
   background: linear-gradient(135deg, rgba(31, 93, 191, 0.10), rgba(58, 181, 237, 0.06));
   border: 1px solid var(--aurora-violet-200);
}
.pillar-prova-cobertura h4 {
   margin: 0 0 8px;
   color: var(--aurora-violet-700);
   font-size: 1.12rem;
   font-weight: 800;
   display: flex;
   align-items: center;
   gap: 8px;
}
.pillar-prova-cobertura h4 i { color: var(--aurora-violet-600); }
.pillar-prova-cobertura p { margin: 0; font-size: 0.98rem !important; color: var(--aurora-slate-700) !important; }
.pillar-prova-cobertura strong { color: var(--aurora-slate-900); }

@media (max-width: 560px) {
   .pillar-prova-tab { flex: 1 1 100%; }
   .pillar-prova-table { font-size: 0.88rem; }
   .pillar-prova-table td, .pillar-prova-table th { padding: 8px 6px; }
}

:root[data-theme="dark"] .pillar-prova-cobertura {
   background: linear-gradient(135deg, rgba(43, 40, 217, 0.16), rgba(58, 140, 237, 0.08));
   border-color: var(--aurora-slate-200);
}

/* Bloco "quanto vale ranquear" com cards de KPI */
.pillar-prova-valor {
   margin: 26px 0 0;
   padding: 26px 24px;
   border-radius: 18px;
   background: linear-gradient(135deg, rgba(10, 161, 125, 0.08), rgba(31, 93, 191, 0.06));
   border: 1px solid rgba(10, 161, 125, 0.25);
}
.pillar-prova-valor h4 {
   margin: 0 0 12px;
   color: var(--aurora-slate-900);
   font-size: 1.18rem;
   font-weight: 800;
   display: flex;
   align-items: center;
   gap: 8px;
}
.pillar-prova-valor h4 i { color: #0aa17d; }
.pillar-prova-valor p { margin: 0 0 14px; font-size: 1rem !important; color: var(--aurora-slate-700) !important; }
.pillar-prova-valor strong { color: var(--aurora-slate-900); }

.pillar-prova-kpis {
   display: grid;
   grid-template-columns: repeat(4, 1fr);
   gap: 14px;
   margin: 18px 0;
}
.pillar-prova-kpi {
   background: #fff;
   border: 1px solid var(--aurora-slate-200);
   border-radius: 14px;
   padding: 18px 16px;
   text-align: center;
   box-shadow: var(--shadow-glass);
}
.pillar-prova-kpi__num {
   display: block;
   font-size: 1.9rem;
   font-weight: 800;
   line-height: 1.1;
   color: var(--aurora-violet-700);
   font-variant-numeric: tabular-nums;
   margin-bottom: 8px;
}
.pillar-prova-kpi--money .pillar-prova-kpi__num { color: #0aa17d; }
.pillar-prova-kpi__lbl {
   display: block;
   font-size: 0.84rem;
   line-height: 1.4;
   color: var(--aurora-slate-600);
}
.pillar-prova-valor__nota {
   font-size: 0.84rem !important;
   color: var(--aurora-slate-500) !important;
   margin: 4px 0 0 !important;
}

@media (max-width: 760px) { .pillar-prova-kpis { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 400px) { .pillar-prova-kpis { grid-template-columns: 1fr; } }

:root[data-theme="dark"] .pillar-prova-valor {
   background: linear-gradient(135deg, rgba(10, 161, 125, 0.12), rgba(43, 40, 217, 0.08));
   border-color: rgba(10, 161, 125, 0.30);
}
:root[data-theme="dark"] .pillar-prova-kpi {
   background: rgba(255, 255, 255, 0.04);
   border-color: var(--aurora-slate-200);
}

/* Bloco de expectativa realista (SEO leva tempo) */
.pillar-prova-expectativa {
   margin: 22px 0 0;
   padding: 20px 22px;
   border-radius: 16px;
   background: var(--aurora-violet-50);
   border: 1px solid var(--aurora-violet-100);
   border-left: 4px solid var(--aurora-violet-600);
}
.pillar-prova-expectativa h4 {
   margin: 0 0 10px;
   color: var(--aurora-slate-900);
   font-size: 1.12rem;
   font-weight: 800;
   display: flex;
   align-items: center;
   gap: 8px;
}
.pillar-prova-expectativa h4 i { color: var(--aurora-violet-600); }
.pillar-prova-expectativa p { margin: 0 0 12px; font-size: 0.98rem !important; color: var(--aurora-slate-700) !important; }
.pillar-prova-expectativa p:last-child { margin-bottom: 0; }
.pillar-prova-expectativa strong { color: var(--aurora-slate-900); }

:root[data-theme="dark"] .pillar-prova-expectativa {
   background: rgba(43, 40, 217, 0.08);
   border-color: var(--aurora-slate-200);
   border-left-color: var(--aurora-violet-600);
}

/* 3 fatores de autoridade (mini-cards) + pull-quote, pra quebrar o paredão de texto */
.pillar-fatores {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 12px;
   margin: 16px 0;
}
.pillar-fator {
   background: #fff;
   border: 1px solid var(--aurora-violet-100);
   border-radius: 12px;
   padding: 14px 16px;
   display: flex;
   flex-direction: column;
}
.pillar-fator i { font-size: 1.3rem; color: var(--aurora-violet-700); margin-bottom: 6px; }
.pillar-fator strong { color: var(--aurora-slate-900); font-size: 0.98rem; margin-bottom: 3px; }
.pillar-fator span { font-size: 0.86rem; color: var(--aurora-slate-600); line-height: 1.45; }
@media (max-width: 640px) { .pillar-fatores { grid-template-columns: 1fr; } }

.pillar-pullquote {
   margin: 18px 0 2px;
   padding: 4px 0 4px 18px;
   border-left: 4px solid var(--aurora-violet-600);
   font-size: 1.2rem;
   font-weight: 700;
   font-style: italic;
   color: var(--aurora-violet-900);
   line-height: 1.4;
}

:root[data-theme="dark"] .pillar-fator {
   background: rgba(255, 255, 255, 0.05);
   border-color: var(--aurora-slate-200);
}

/* Modo escuro: tabs/painel/tabela da prova */
:root[data-theme="dark"] .pillar-prova-disclosure { background: rgba(255, 255, 255, 0.035); border-color: var(--aurora-slate-200); }
:root[data-theme="dark"] .pillar-prova-tab { background: rgba(255, 255, 255, 0.03); border-color: var(--aurora-slate-200); }
:root[data-theme="dark"] .pillar-prova-tab[aria-selected="true"] { background: rgba(43, 40, 217, 0.12); }
:root[data-theme="dark"] .pillar-prova-panels { background: rgba(255, 255, 255, 0.025); border-color: var(--aurora-slate-200); }
:root[data-theme="dark"] .pillar-prova-plat--portal { background: rgba(255, 255, 255, 0.05); }
:root[data-theme="dark"] .pillar-prova-plat--rival { background: rgba(178, 89, 47, 0.15); border-color: rgba(178, 89, 47, 0.4); color: #e8a883; }
:root[data-theme="dark"] .pillar-prova-table tr.pillar-prova-ours td { background: rgba(43, 40, 217, 0.10); }

/* ---------- Conselho final: citação assinada do fundador ---------- */
.pillar-quote-founder {
   margin: 26px 0 8px;
   padding: 20px 24px;
   background: linear-gradient(135deg, rgba(245, 243, 255, 0.7), rgba(255, 255, 255, 0.45));
   border-left: 4px solid var(--aurora-violet-600);
   border-radius: 0 14px 14px 0;
}

.pillar-quote-founder p {
   margin: 0;
   font-size: 1.08rem;
   font-style: italic;
   color: var(--aurora-slate-700);
   line-height: 1.7;
}

.pillar-quote-founder cite {
   display: block;
   margin-top: 12px;
   font-style: normal;
   font-size: 0.95rem;
   font-weight: 700;
   color: var(--aurora-violet-900);
}

.pillar-quote-founder cite span {
   font-weight: 500;
   color: var(--aurora-slate-600);
}

:root[data-theme="dark"] .pillar-quote-founder {
   background: linear-gradient(135deg, rgba(124, 58, 237, 0.14), rgba(255, 255, 255, 0.03));
}

:root[data-theme="dark"] .pillar-quote-founder cite {
   color: #A78BFA;
}
