/* ============================================================================
   Geraldo Veroneze Child — site-style.css
   Identidade EXTRAIDA de site/index.html (nenhuma cor chutada). Ver o mapa de
   origem no execution-log-blog.md.

   Carregado por enqueue CONDICIONAL (functions.php): so em is_home / is_singular
   post / is_archive / is_search / is_404. Por isso os seletores globais (body, a,
   h1-h4) sao aceitaveis aqui: eles NAO alcancam as 12 paginas de captacao, que
   rodam em elementor_canvas.
   ========================================================================== */

:root{
  --bg:#FAFAF7;
  --ink:#27211D;
  --black:#000000;
  --ink-strong:#171310;
  --muted:#5E574F;
  --surface:#F4EFE7;
  --cream:#EDE6DA;
  --line:#EBE4DA;
  --dim:#D3C4B5;
  --gold:#B8893F;
  --gold-text:#8F6526;
  --gold-soft:rgba(184,137,63,.15);
  --clay:#8A5130;
  --accent-soft:#FAC880;
  --border:rgba(39,33,29,.12);
  --border-soft:rgba(39,33,29,.07);
  --white:#FFFFFF;

  --radius-lg:20px;
  --radius:10px;
  --radius-sm:8px;
  --pill:99px;

  --font-display:"Literata",Georgia,"Times New Roman",serif;
  --font-body:"Open Sans",system-ui,-apple-system,sans-serif;
  --font-mono:"Roboto Mono",ui-monospace,monospace;

  --container:1200px;
  --pad-x:20px;
  --measure:800px;
}

/* ---------- BASE ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family:var(--font-body);
  font-size:17px;
  line-height:1.6;
  letter-spacing:-.17px;
  overflow-x:clip;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{margin:0;overflow-wrap:break-word}
h2,h3,h4{text-wrap:balance}
p{margin:0}

.band{width:100%;position:relative}
.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--pad-x)}

.h1{font-family:var(--font-display);font-size:50px;font-weight:400;line-height:1.2;letter-spacing:-.02em;color:var(--ink);text-wrap:wrap;text-wrap:pretty}
.h2{font-family:var(--font-display);font-size:40px;font-weight:500;line-height:1.2;letter-spacing:-.02em;color:var(--ink)}
.lead{font-size:17px;color:var(--muted);line-height:1.6}

.eyebrow{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  height:26px;padding:0 14px;border-radius:var(--pill);
  background:var(--black);border:1px solid var(--black);
  font-family:var(--font-mono);font-size:12px;font-weight:400;
  letter-spacing:.05em;text-transform:uppercase;color:#FFFFFF;
}
.eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--gold);display:inline-block}

/* ---------- BOTOES ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  height:44px;padding:0 24px;border-radius:var(--pill);
  font-family:var(--font-mono);font-size:14px;font-weight:400;
  text-transform:uppercase;letter-spacing:-.14px;white-space:nowrap;
  border:1px solid transparent;cursor:pointer;
  transition:transform .25s cubic-bezier(.22,1,.36,1),opacity .25s,background .25s;
}
.btn:hover{transform:translateY(-2px)}
.btn-dark{background:var(--black);color:var(--white)}
.btn-white{background:var(--white);color:var(--ink);border-color:var(--border)}
.btn-ghost-dark{background:transparent;color:#FFFFFB;border:1px solid rgba(255,255,251,.38)}
.btn-ghost-dark:hover{border-color:var(--accent-soft);color:var(--accent-soft)}
.btn-sm{height:34px;padding:0 18px;font-size:12px;letter-spacing:.05em}

/* ---------- HEADER ---------- */
/* Logo a ESQUERDA (margin-right:auto), menu ao CENTRO (absolute + translateX),
   CTA a direita (margin-left:auto). O centro nao depende da quantidade de itens:
   o .nav-links cresce simetrico em torno do proprio meio. */
.nav-wrap{position:fixed;top:0;left:0;right:0;width:100%;z-index:900;background:var(--black);transition:background .3s,box-shadow .3s,backdrop-filter .3s}
.nav-wrap.scrolled{background:rgba(0,0,0,.94);backdrop-filter:saturate(180%) blur(14px);box-shadow:0 1px 0 rgba(255,255,255,.14)}
.nav{display:flex;align-items:center;height:76px;position:relative}
.nav-links{display:flex;align-items:center;gap:24px;position:absolute;left:50%;transform:translateX(-50%)}
.nav-links a{font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.05em;display:inline-flex;align-items:center;gap:5px;opacity:.92}
.nav-links a:hover{opacity:.6}
.nav-logo{display:inline-flex;align-items:center;gap:10px;font-size:19px;font-weight:600;letter-spacing:-.02em;white-space:nowrap;margin-right:auto}
.nav-logo img{width:38px;height:38px;object-fit:contain;flex:none}
.nav-cta{display:flex;align-items:center;gap:10px;margin-left:auto}
.burger{display:none;width:28px;height:28px;align-items:center;justify-content:center;background:none;border:0;padding:0;cursor:pointer}
.nav-wrap .nav-links a,
.nav-wrap .nav-logo,
.nav-wrap .burger{color:#FFFFFB}
.nav-wrap .nav-cta .btn-white{background:rgba(39,33,29,.65);color:#FFFFFB;border-color:rgba(255,255,251,.45)}
.nav-wrap .nav-cta .btn-dark{background:#FFFFFB;color:var(--ink)}

/* ---------- ARTIGO ---------- */
.gv-blog-main{padding-top:76px}

.post-hero{background:var(--black);color:#FFFFFB;padding:64px 0 56px}
.post-hero-inner{max-width:var(--measure);display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.post-back{
  width:max-content;display:inline-flex;align-items:center;gap:6px;
  font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.05em;
  color:rgba(255,255,251,.72);
}
.post-back:hover{color:#FFFFFB}
/* Badge de categoria: PRETO com texto branco, e nao --gold.
   O :root desta marca declara que o dourado e GRAFICO (3,00:1) e nunca texto;
   o proprio site ja resolveu isso pintando todo .eyebrow de preto. Aqui o hero
   ja e preto, entao o badge ganha borda clara para nao sumir. */
.post-cat-badge{
  display:inline-flex;align-items:center;height:26px;padding:0 14px;border-radius:var(--pill);
  background:rgba(255,255,255,.12);border:1px solid rgba(255,255,251,.28);
  font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.05em;
  color:#FFFFFB !important;
}
.post-title{
  font-family:var(--font-display);font-size:42px;font-weight:400;line-height:1.2;
  letter-spacing:-.02em;color:#FFFFFB !important;text-wrap:wrap;text-wrap:pretty;
}
.post-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:14px;letter-spacing:0;color:rgba(255,255,251,.72)}
.post-meta-sep{opacity:.5}

/* MEDIDA DE LEITURA + CAPA ALINHADA.
   Capa e texto na MESMA largura (800px) e centrados. O .container do Hello
   Elementor tem max-width proprio e sobrepoe o nosso, dai o !important. */
.post-media.container,
.post-body-wrap.container{
  max-width:var(--measure) !important;
  padding-left:var(--pad-x) !important;
  padding-right:var(--pad-x) !important;
  margin-left:auto;margin-right:auto;
}
.post-media{margin-top:-36px;position:relative;z-index:2}
.post-featured{
  width:100%;max-width:var(--measure);margin:0 auto;max-height:440px;
  object-fit:cover;border-radius:var(--radius-lg);display:block;
}
.post-featured-fallback{
  width:100%;max-width:var(--measure);margin:0 auto;aspect-ratio:16/7;max-height:440px;
  border-radius:var(--radius-lg);
  background:linear-gradient(135deg,var(--ink) 0%,var(--clay) 55%,var(--cream) 100%);
  display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.55);
}
.post-featured-fallback svg{width:72px;height:72px}

.post-body-wrap{padding-top:46px;padding-bottom:80px}
.post-body{font-size:17px;line-height:1.75;color:var(--ink)}
.post-body > *:first-child{margin-top:0}
.post-body h2{font-family:var(--font-display);font-size:30px;font-weight:500;line-height:1.25;letter-spacing:-.02em;color:var(--ink);margin:44px 0 14px}
.post-body h3{font-family:var(--font-display);font-size:22px;font-weight:500;line-height:1.3;letter-spacing:-.01em;color:var(--ink);margin:32px 0 10px}
.post-body h4{font-family:var(--font-display);font-size:18px;font-weight:500;color:var(--gold-text);margin:26px 0 8px}
.post-body p{margin:0 0 18px}
.post-body ul,.post-body ol{margin:0 0 20px;padding-left:24px}
.post-body ul{list-style:disc}
.post-body ol{list-style:decimal}
.post-body li{margin-bottom:9px}
.post-body li::marker{color:var(--gold)}
.post-body strong{font-weight:600;color:var(--ink)}
.post-body a{color:var(--gold-text);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.post-body a:hover{color:var(--ink)}
.post-body blockquote{
  margin:28px 0;padding:22px 26px;
  background:var(--cream);border-left:3px solid var(--gold);border-radius:0 var(--radius) var(--radius) 0;
  font-family:var(--font-display);font-size:19px;line-height:1.55;font-style:italic;color:var(--ink);
}
.post-body blockquote p:last-child{margin-bottom:0}
.post-body table{width:100%;border-collapse:collapse;margin:0 0 24px;font-size:16px}
.post-body th,.post-body td{border:1px solid var(--line);padding:11px 13px;text-align:left;vertical-align:top}
.post-body th{background:var(--surface);font-weight:600}
.post-body img{border-radius:var(--radius);margin:24px auto}

.post-footer-cta{
  margin-top:48px;padding:38px 32px;border-radius:var(--radius-lg);
  background:var(--black);color:#FFFFFB;text-align:center;
}
.post-footer-cta h3{font-family:var(--font-display);font-size:26px;font-weight:500;line-height:1.25;letter-spacing:-.02em;color:#FFFFFB !important;margin:0 0 14px}
.post-footer-cta p{max-width:52ch;margin:0 auto 24px;font-size:16px;line-height:1.6;letter-spacing:0;color:rgba(255,255,251,.82)}
.btn-post-cta{
  display:inline-flex;align-items:center;justify-content:center;
  height:48px;padding:0 28px;border-radius:var(--pill);
  background:#FFFFFB;color:var(--ink) !important;
  font-family:var(--font-mono);font-size:14px;text-transform:uppercase;letter-spacing:-.14px;
  text-decoration:none !important;transition:transform .25s cubic-bezier(.22,1,.36,1);
}
.btn-post-cta:hover{transform:translateY(-2px)}
.post-back-bottom{margin-top:34px;color:var(--gold-text)}
.post-back-bottom:hover{color:var(--ink)}

/* ---------- ARQUIVO /blog/ ---------- */
.blog-archive-hero{background:var(--black);color:#FFFFFB;padding:64px 0 56px}
.blog-archive-hero .container{display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.blog-archive-hero .eyebrow{background:rgba(255,255,255,.12);border-color:rgba(255,255,251,.28);color:rgba(255,255,251,.92)}
.blog-archive-title{font-family:var(--font-display);font-size:42px;font-weight:400;line-height:1.2;letter-spacing:-.02em;color:#FFFFFB !important;max-width:820px;text-wrap:wrap;text-wrap:pretty}
.blog-archive-sub{font-size:17px;line-height:1.6;color:rgba(255,255,251,.82);max-width:680px}

.blog-archive-wrap{padding-top:56px;padding-bottom:88px}
.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:28px}
.blog-card{
  display:flex;flex-direction:column;background:var(--white);
  border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;
  transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s;
}
.blog-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(39,33,29,.10)}
.blog-card-media{position:relative;aspect-ratio:16/9;overflow:hidden;background:var(--surface)}
.blog-card-img{width:100%;height:100%;object-fit:cover}
.blog-card-fallback{
  width:100%;height:100%;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,var(--ink) 0%,var(--clay) 55%,var(--cream) 100%);
  color:rgba(255,255,255,.55);
}
.blog-card-fallback svg{width:56px;height:56px}
.blog-card-badge{
  position:absolute;left:14px;bottom:14px;
  display:inline-flex;align-items:center;height:24px;padding:0 12px;border-radius:var(--pill);
  background:var(--black);color:#FFFFFF;
  font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.05em;
}
.blog-card-body{padding:22px 22px 26px;display:flex;flex-direction:column;gap:10px;flex:1}
.blog-card-title{font-family:var(--font-display);font-size:21px;font-weight:500;line-height:1.3;letter-spacing:-.01em;color:var(--ink)}
.blog-card-excerpt{font-size:15px;line-height:1.6;letter-spacing:0;color:var(--muted);flex:1}
.blog-card-date{font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.blog-empty{text-align:center;color:var(--muted);padding:60px 0}
.blog-pagination{margin-top:44px;display:flex;justify-content:center}
.blog-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 10px;margin:0 4px;border-radius:var(--pill);border:1px solid var(--line);font-family:var(--font-mono);font-size:13px;color:var(--ink)}
.blog-pagination .page-numbers.current{background:var(--black);color:#FFFFFF;border-color:var(--black)}

/* ---------- FOOTER ---------- */
.closer{position:relative;overflow:hidden;color:#fff;padding:120px var(--pad-x);display:flex;flex-direction:column;background:var(--black)}
.closer-inner{position:relative;z-index:2;width:100%;max-width:var(--container);margin-inline:auto;flex:1;display:flex;flex-direction:column}
.closer-cta{display:flex;flex-direction:column;align-items:center;text-align:center;gap:22px}
.closer-cta .h2{color:#fff;max-width:620px}
.closer-cta .lead{color:rgba(255,255,255,.86);max-width:620px}
.closer-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:14px}
.closer-mark{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(46vw,520px);height:auto;z-index:0;opacity:.10;pointer-events:none;user-select:none}
.foot{display:grid;grid-template-columns:1.9fr 1fr 1fr 1.2fr;gap:40px;margin-top:120px}
.foot .brand{display:flex;align-items:center;gap:12px;font-size:22px;font-weight:600;letter-spacing:-.02em}
.foot .brand img{width:44px;height:44px;object-fit:contain;flex:none}
.foot .brand-desc{font-size:14px;line-height:1.6;letter-spacing:0;margin-top:22px;max-width:400px;color:rgba(255,255,255,.9)}
.foot .copy{font-size:13px;line-height:1.6;letter-spacing:0;margin-top:24px;color:rgba(255,255,255,.72)}
.foot .credit{font-size:13px;letter-spacing:0;margin-top:12px;color:rgba(255,255,255,.72)}
.foot .credit a{text-decoration:underline;text-underline-offset:3px}
.foot h4{font-size:17px;font-weight:500;letter-spacing:-.17px;color:rgba(255,255,255,.8)}
.foot ul{margin-top:24px;padding:0;list-style:none;display:flex;flex-direction:column;gap:16px}
.foot li a,.foot li span{font-size:14px;font-weight:500;line-height:1.5;letter-spacing:0;display:inline-flex;align-items:flex-start;gap:10px;color:#fff;opacity:.94}
.foot li a:hover{opacity:.7}
.foot li svg{width:16px;height:16px;flex:none;margin-top:3px}

.whatsapp-float{
  position:fixed;bottom:24px;right:24px;width:60px;height:60px;
  background:#25D366;color:#fff;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  box-shadow:0 6px 24px rgba(0,0,0,.18),0 2px 8px rgba(37,211,102,.32);
  z-index:880;transition:transform .25s cubic-bezier(.22,1,.36,1);
}
.whatsapp-float:hover{transform:scale(1.06)}
.whatsapp-float svg{width:32px;height:32px;fill:currentColor}

/* ---------- RESPONSIVO ---------- */
@media (min-width:1920px){
  .eyebrow{font-size:13px}
  .foot h4{font-size:19px}
}
@media (max-width:1024px){
  .foot{grid-template-columns:1fr 1fr;gap:36px}
  .closer{padding:96px var(--pad-x)}
  .post-title,.blog-archive-title{font-size:36px}
}
@media (max-width:900px){
  .nav-links,.nav-cta{display:none}
  .burger{display:flex}
  .nav-logo{margin-right:0}
}
@media (max-width:768px){
  .post-hero,.blog-archive-hero{padding:48px 0 44px}
  .post-body-wrap{padding-top:38px;padding-bottom:64px}
  .post-footer-cta{padding:32px 22px}
  .closer{padding:80px var(--pad-x)}
  .foot{grid-template-columns:1fr;gap:32px;margin-top:80px}
  .closer-mark{width:min(72vw,360px);opacity:.09}
}
@media (max-width:640px){
  /* G-06: centralizacao total no telefone */
  :root{--pad-x:24px}
  .post-hero-inner,.blog-archive-hero .container{align-items:center;text-align:center}
  .post-meta{justify-content:center}
  .post-title,.blog-archive-title{font-size:30px;text-wrap:wrap;text-wrap:pretty}
  .post-back{margin-left:auto;margin-right:auto}
  .post-featured,.post-featured-fallback{max-height:240px}
  .post-media{margin-top:-24px}
  .post-body{font-size:16px}
  .post-body h2{font-size:25px;margin-top:36px}
  .post-body h3{font-size:20px}
  .blog-grid{grid-template-columns:1fr}
  .foot,.foot .brand,.foot ul,.foot li a,.foot li span{text-align:center}
  .foot .brand{flex-direction:column;justify-content:center}
  .foot .brand-desc,.foot .copy,.foot .credit{max-width:none}
  .foot ul{align-items:center}
  .foot li a,.foot li span{justify-content:center}
  .whatsapp-float{width:54px;height:54px;bottom:18px;right:18px}
  .whatsapp-float svg{width:28px;height:28px}
}

/* ============================================================================
   BLINDAGEM elementor-prep (etapa 7.9) em 2026-08-17 — B5 — NAO editar na mao.
   Re-rodar a 7.9 substitui este bloco inteiro (delimitado pelos dois comentarios
   `BLINDAGEM elementor-prep` / `fim da blindagem elementor-prep`).

   PRINCIPIO. As 12 paginas do pipeline sobem como widget dentro de
   `elementor_canvas` e o deploy embrulha o corpo em `#ps-site`, o que faz o reset
   escopado (1,0,1) matar de graca qualquer default do tema pai (0,1,0). O TEMA nao
   tem esse escudo: cada default do hello-elementor vaza ate levar kill explicito.
   Por isso o bloco abaixo nao conserta o que quebrou, e sim ENUMERA os defaults que
   alcancam elementos deste child e neutraliza um a um.

   Todos os seletores sao do markup REAL deste tema (G-22) e toda cor e o valor que o
   proprio CSS acima declara, nunca lista herdada de outro projeto.
   ========================================================================== */

/* ---------- ancora de heranca ----------
   Sem `#ps-site`, o `body{...}` deste arquivo e (0,0,1) e perde para
   `body.elementor-kit-NN{font-size;color}` (0,1,1) assim que a tipografia do kit
   global for configurada. */
body{
  color:var(--ink)!important;background-color:var(--bg)!important;
  font-family:var(--font-body)!important;font-size:17px!important;
  line-height:1.6!important;letter-spacing:-.17px!important;
}
html,body{overflow-x:clip!important}

/* ---------- B5d BANDAS FULL-BLEED POR ENUMERACAO DOS TEMPLATES (G-23) ----------
   header.php   -> div.nav-wrap#navWrap
   footer.php   -> section.closer.band#contato
   single.php   -> main.gv-blog-main, header.post-hero
   page.php     -> main.gv-blog-main, header.post-hero
   archive.php  -> main.gv-blog-main, header.blog-archive-hero
   index.php    -> delega para archive.php (mesmas bandas)
   Enumeracao mecanica, nao lista de memoria: o incidente de 2026-07-17 blindou o
   header e esqueceu o rodape, e a banda escura de 1140px ficou boiando no fundo. */
div.nav-wrap,
section.closer,
main.gv-blog-main,
header.post-hero,
header.blog-archive-hero{
  max-width:none!important;width:100%!important;
  margin-left:0!important;margin-right:0!important;float:none!important;
}
/* paridade metrica com as 12 paginas: a barra tem 76px, sem o `padding-block:1rem`
   que o tema pai aplica a banda de topo. */
div.nav-wrap{padding:0!important;position:fixed!important;top:0!important;left:0!important;right:0!important;z-index:900!important}
div.nav-wrap .nav{height:76px!important;display:flex!important;flex-wrap:nowrap!important;align-items:center!important;position:relative!important}
div.nav-wrap .nav-links{position:absolute!important;left:50%!important;transform:translateX(-50%)!important;display:flex!important;flex-wrap:nowrap!important}
main.gv-blog-main{padding-top:76px!important}
@media (max-width:900px){
  div.nav-wrap .nav-links,div.nav-wrap .nav-cta{display:none!important}
  div.nav-wrap .burger{display:flex!important}
}

/* ---------- containers: cada um com o SEU clamp, nunca um clamp so ----------
   O tema pai declara `.container{max-width:1140px}`. Emitir um
   `.container{max-width:var(--container)!important}` chapado resolveria a colisao e
   criaria outra: `.post-hero-inner` e `.post-body-wrap` TAMBEM sao `.container` e
   valem 800px, entao o cabecalho do artigo sairia 400px mais largo que o corpo.
   Foi o defeito achado na revisao de 2026-08-12 noutro tema. Por isso a lista e
   por elemento. */
div.nav-wrap>.container,
header.blog-archive-hero>.container,
.container.blog-archive-wrap{
  max-width:var(--container)!important;width:100%!important;
  margin-left:auto!important;margin-right:auto!important;
  padding-left:var(--pad-x)!important;padding-right:var(--pad-x)!important;
}
.container.post-hero-inner,
.post-media.container,
.post-body-wrap.container{
  max-width:var(--measure)!important;width:100%!important;
  margin-left:auto!important;margin-right:auto!important;
  padding-left:var(--pad-x)!important;padding-right:var(--pad-x)!important;
}

/* ---------- B5a KIT-PROOF PORTADO ----------
   O kit global entra como `body.elementor-kit-NN a` (0,1,2) e vence `.foot li a`
   (0,1,1) e QUALQUER cor herdada. Este tema usa `a{color:inherit}`, entao sem os
   kills abaixo o kit repinta o blog inteiro (o rodape azul e o titulo escuro sobre
   fundo escuro sao os dois sintomas ja vistos em producao). */

/* links do header e do painel mobile */
.nav-wrap .nav-links a,.nav-wrap .nav-links a:link,.nav-wrap .nav-links a:visited{color:#FFFFFB!important}
.nav-wrap a.nav-logo,.nav-wrap a.nav-logo:link,.nav-wrap a.nav-logo:visited{color:#FFFFFB!important}
.mobile-panel a.nav-logo,.mobile-panel a.nav-logo:link,.mobile-panel a.nav-logo:visited{color:#FFFFFB!important}
.mobile-panel a.mp-label,.mobile-panel a.mp-label:link,.mobile-panel a.mp-label:visited{color:#FFFFFB!important}
.mobile-panel a.mp-item,.mobile-panel a.mp-item:link,.mobile-panel a.mp-item:visited{color:#FFFFFB!important}
.mobile-panel .mp-item strong{color:#FFFFFB!important}
.mobile-panel .mp-item span span{color:rgba(255,255,251,.66)!important}
.mobile-panel .mp-item .mp-ico{color:#FFFFFB!important;border-color:rgba(255,255,251,.28)!important}
.mobile-panel span.mp-label{color:rgba(255,255,251,.72)!important}
.mobile-panel .mp-meta{color:rgba(255,255,251,.66)!important}

/* links do rodape */
.foot li a,.foot li a:link,.foot li a:visited,.foot li span{color:#FFFFFF!important}
.foot .credit a,.foot .credit a:link,.foot .credit a:visited{color:rgba(255,255,255,.72)!important;text-decoration:underline!important}
.foot .brand-desc{color:rgba(255,255,255,.9)!important}
.foot .copy,.foot .credit{color:rgba(255,255,255,.72)!important}

/* links do artigo e da listagem */
.gv-blog-main .post-back,.gv-blog-main .post-back:link,.gv-blog-main .post-back:visited{color:rgba(255,255,251,.72)!important}
.gv-blog-main .post-back.post-back-bottom,.gv-blog-main .post-back.post-back-bottom:link,.gv-blog-main .post-back.post-back-bottom:visited{color:var(--gold-text)!important}
.gv-blog-main .post-body a,.gv-blog-main .post-body a:link,.gv-blog-main .post-body a:visited{color:var(--gold-text)!important;text-decoration:underline!important;text-underline-offset:3px!important}
.gv-blog-main .post-body a:hover{color:var(--ink)!important}
a.blog-card,a.blog-card:link,a.blog-card:visited{color:var(--ink)!important;background:var(--white)!important}
.blog-pagination a,.blog-pagination a:link,.blog-pagination a:visited,.blog-pagination .page-numbers{color:var(--ink)!important}
.blog-pagination .page-numbers.current{color:#FFFFFF!important;background:var(--black)!important}

/* botao flutuante do WhatsApp (G-10) */
a.whatsapp-float,a.whatsapp-float:link,a.whatsapp-float:visited,a.whatsapp-float:hover{color:#FFFFFF!important;background:#25D366!important}
a.whatsapp-float svg{fill:#FFFFFF!important}

/* pseudo parasita do kit: `a::after{content:seta}` poe uma seta em TODO link.
   Conferido nos 6 templates: nenhum `a` deste tema usa `::after`, entao o kill
   e chapado, sem excecao a preservar. */
a::after{content:none!important}

/* botoes nativos: o reset do tema pai pinta `button` e `button:hover` e ainda forca
   `white-space:nowrap` + `text-align:center`. Estado no MESMO seletor, porque
   `button:hover` e (0,1,1) e venceria a classe sozinha. */
.nav-wrap button.burger,
.nav-wrap button.burger:hover,
.nav-wrap button.burger:focus{
  background:none!important;background-image:none!important;border:0!important;border-radius:0!important;
  box-shadow:none!important;color:#FFFFFB!important;padding:0!important;
  white-space:normal!important;text-align:center!important;
}
button.mobile-menu-close,
button.mobile-menu-close:hover,
button.mobile-menu-close:focus{
  background:none!important;background-image:none!important;
  border:1px solid rgba(255,255,251,.32)!important;border-radius:50%!important;
  box-shadow:none!important;color:#FFFFFB!important;padding:0!important;
  white-space:normal!important;text-align:center!important;
}
button.mobile-menu-close:hover{background:rgba(255,255,255,.08)!important}

/* CTAs: UMA REGRA POR VARIANTE COMPLETA, nunca na classe base.
   Armadilha de 2026-07-16: `.btn:link{color}` soma (0,1,1) e o `!important` vence
   qualquer regra normal, entao a variante ghost (0,1,0) perde e todo botao
   secundario sai na cor do primario. `.btn-white` e `.btn-dark` ainda INVERTEM
   dentro do header e do painel, dai a escada (0,3,0) < (0,4,0) < (0,5,0). */
.btn.btn-dark,.btn.btn-dark:link,.btn.btn-dark:visited{color:#FFFFFF!important;background:#000000!important}
.btn.btn-white,.btn.btn-white:link,.btn.btn-white:visited{color:var(--ink)!important;background:#FFFFFF!important;border-color:var(--border)!important}
.btn.btn-ghost-dark,.btn.btn-ghost-dark:link,.btn.btn-ghost-dark:visited{color:#FFFFFB!important;background:transparent!important;border-color:rgba(255,255,251,.38)!important}
.btn.btn-ghost-dark:hover{color:var(--accent-soft)!important;border-color:var(--accent-soft)!important}
.mobile-panel .btn.btn-white,.mobile-panel .btn.btn-white:link,.mobile-panel .btn.btn-white:visited{color:#FFFFFB!important;background:rgba(255,255,255,.10)!important;border-color:rgba(255,255,251,.45)!important}
.mobile-panel .btn.btn-dark,.mobile-panel .btn.btn-dark:link,.mobile-panel .btn.btn-dark:visited{color:#000000!important;background:#FFFFFB!important;border-color:#FFFFFB!important}
.nav-wrap .nav-cta .btn.btn-white,.nav-wrap .nav-cta .btn.btn-white:link,.nav-wrap .nav-cta .btn.btn-white:visited{color:#FFFFFB!important;background:rgba(39,33,29,.65)!important;border-color:rgba(255,255,251,.45)!important}
.nav-wrap .nav-cta .btn.btn-dark,.nav-wrap .nav-cta .btn.btn-dark:link,.nav-wrap .nav-cta .btn.btn-dark:visited{color:var(--ink)!important;background:#FFFFFB!important;border-color:#FFFFFB!important}
a.btn-post-cta,a.btn-post-cta:link,a.btn-post-cta:visited{color:var(--ink)!important;background:#FFFFFB!important;text-decoration:none!important}

/* badges: o dourado desta marca e GRAFICO (3,00:1) e nunca texto, entao os dois
   badges sao preto/branco ou branco sobre o hero preto, e nao `var(--accent)`. */
.eyebrow{background:var(--black)!important;border-color:var(--black)!important;color:#FFFFFF!important}
.blog-archive-hero .eyebrow{background:rgba(255,255,255,.12)!important;border-color:rgba(255,255,251,.28)!important;color:rgba(255,255,251,.92)!important}
.eyebrow .dot{background:var(--gold)!important}
.post-cat-badge{background:rgba(255,255,255,.12)!important;border-color:rgba(255,255,251,.28)!important;color:#FFFFFB!important}
.blog-card-badge{background:var(--black)!important;color:#FFFFFF!important}

/* familia tipografica: `body.elementor-kit-NN p,li{font-family}` e `... h1-h6{...}` sao
   (0,1,2) e vencem qualquer classe unica. Regra de tag com a familia da maioria e a
   excecao POR SELETOR por cima -- a citacao do artigo e o unico `p` em Literata aqui.
   `max-width:52ch` do CTA do artigo depende da fonte: com Arial ele encolhia 13px. */
p,li{font-family:var(--font-body)!important}
/* corpo: so os tres que ficam em classe UNICA (0,1,0) e perdem para
   `body.elementor-kit-NN p` (0,1,2). `.foot .brand-desc`, `.foot .copy` e
   `.foot .credit` sao (0,2,0) e ja vencem sozinhos, entao nao entram: acrescentar
   `!important` neles seria trocar uma disputa que o site ganha por uma trava que
   um dia contraria uma media query. `li` nao declara tamanho em lugar nenhum. */
.lead,.blog-empty{font-size:17px!important;line-height:1.6!important}
.foot li{font-size:17px!important;line-height:1.6!important}
.gv-blog-main .post-body blockquote,
.gv-blog-main .post-body blockquote p{font-family:var(--font-display)!important}
.h1,.h2{font-family:var(--font-display)!important}
.blog-archive-sub,.blog-card-excerpt,.post-footer-cta p,.lead{font-family:var(--font-body)!important}

/* headings: o kit pinta h1-h6 e o reset do tema pai forca `line-height:1.2`, que vence
   HERANCA. O h4 do rodape nao declara altura de linha: sem a trava ele cai de 28,8px
   para 21,6px e o rodape do blog fica 7px mais baixo que o das 12 paginas, que e
   exatamente o tipo de divergencia que a paridade metrica do B5 existe para pegar. */
/* `.foot h4` e (0,1,1) e nao (0,2,0): `.foot` conta como UMA classe e `h4` como tipo.
   `body.elementor-kit-NN h4` e (0,1,2) e ganha. Sem esta linha os quatro titulos de
   coluna do rodape preto saem em cinza-escuro sobre preto. */
.foot h4{color:rgba(255,255,255,.8)!important;font-family:var(--font-body)!important;line-height:1.6!important}
.h1,.h2{color:var(--ink)!important}
.closer-cta .h2{color:#FFFFFF!important}
.gv-blog-main h1.post-title{color:#FFFFFB!important}
.gv-blog-main h1.blog-archive-title{color:#FFFFFB!important}
.gv-blog-main .blog-card-title{color:var(--ink)!important}
.gv-blog-main .post-footer-cta h3{color:#FFFFFB!important}

/* ---------- B3/G-08 IMAGENS DO TEMA ----------
   `.elementor img{height:auto;max-width:100%}` (0,1,1) vence classe unica (0,1,0) e
   a folha do Elementor tambem carrega em pagina do tema. Nao vale para `svg` inline
   nem para `background-image`: os icones do rodape e do WhatsApp ficam de fora. */
img{max-width:100%!important;display:block!important}
.nav-logo img{width:38px!important;height:38px!important;flex:none!important}
.mobile-panel .nav-logo img{width:38px!important;height:38px!important}
.foot .brand img{width:44px!important;height:44px!important;flex:none!important}
img.closer-mark{width:min(46vw,520px)!important;height:auto!important}
img.blog-card-img{width:100%!important;height:100%!important;display:block!important}
img.post-featured{width:100%!important;max-width:var(--measure)!important;max-height:440px!important;display:block!important}
.gv-blog-main .post-body img{max-width:100%!important;height:auto!important;display:block!important}
@media (max-width:768px){
  img.closer-mark{width:min(72vw,360px)!important}
}
@media (max-width:640px){
  img.post-featured{max-height:240px!important}
}

/* ---------- B5b TIPOGRAFIA DOS ARTIGOS TRAVADA ----------
   Wrapper REAL do `the_content()` neste tema: `.post-body` (single.php e page.php).
   `.gv-blog-main .post-body p` e (0,2,1) e vence `body.elementor-kit-NN p` (0,1,2)
   ja por especificidade; o `!important` cobre o caso de o kit tambem usar
   `!important`. Valores conferidos contra `pipeline/tipografia-canonica.md`. */
.gv-blog-main .post-body{font-size:17px!important;line-height:1.75!important;font-family:var(--font-body)!important;color:var(--ink)!important}
.gv-blog-main .post-body p,.gv-blog-main .post-body li{font-size:17px!important;line-height:1.75!important;font-family:var(--font-body)!important}
.gv-blog-main .post-body h2{font-size:30px!important;line-height:1.25!important;font-family:var(--font-display)!important;color:var(--ink)!important;margin:44px 0 14px!important}
.gv-blog-main .post-body h3{font-size:22px!important;line-height:1.3!important;font-family:var(--font-display)!important;color:var(--ink)!important;margin:32px 0 10px!important}
.gv-blog-main .post-body h4{font-size:18px!important;line-height:1.4!important;font-family:var(--font-display)!important;color:var(--gold-text)!important;margin:26px 0 8px!important}
.gv-blog-main .post-body li::marker{color:var(--gold)!important}
.gv-blog-main .post-body blockquote{font-family:var(--font-display)!important;font-size:19px!important;line-height:1.55!important;color:var(--ink)!important;background:var(--cream)!important}
.gv-blog-main .post-body table{font-size:16px!important}
.gv-blog-main h1.post-title{font-size:42px!important;line-height:1.2!important;font-family:var(--font-display)!important;font-weight:400!important}
.gv-blog-main h1.blog-archive-title{font-size:42px!important;line-height:1.2!important;font-family:var(--font-display)!important;font-weight:400!important}
.gv-blog-main .blog-archive-sub{font-size:17px!important;line-height:1.6!important;color:rgba(255,255,251,.82)!important}
.gv-blog-main .post-meta{font-size:14px!important;color:rgba(255,255,251,.72)!important}
.gv-blog-main .post-footer-cta h3{font-size:26px!important;line-height:1.25!important;font-family:var(--font-display)!important}
.gv-blog-main .post-footer-cta p{font-size:16px!important;line-height:1.6!important;color:rgba(255,255,251,.82)!important}
.gv-blog-main .blog-card-title{font-size:21px!important;line-height:1.3!important;font-family:var(--font-display)!important}
.gv-blog-main .blog-card-excerpt{font-size:15px!important;line-height:1.6!important;color:var(--muted)!important}
.gv-blog-main .blog-card-date{font-size:12px!important;color:var(--muted)!important}
.gv-blog-main .post-back,.gv-blog-main .blog-card-date,.gv-blog-main .post-cat-badge,.blog-card-badge{font-family:var(--font-mono)!important}
@media (max-width:1024px){
  .gv-blog-main h1.post-title,.gv-blog-main h1.blog-archive-title{font-size:36px!important}
}
@media (max-width:640px){
  .gv-blog-main h1.post-title,.gv-blog-main h1.blog-archive-title{font-size:30px!important}
  .gv-blog-main .post-body,.gv-blog-main .post-body p,.gv-blog-main .post-body li{font-size:16px!important}
  .gv-blog-main .post-body h2{font-size:25px!important}
  .gv-blog-main .post-body h3{font-size:20px!important}
}
/* ===== fim da blindagem elementor-prep 7.9 ===== */
