/* Bplan - CSS consolidado dos snippets do WPCode. Gerado automaticamente. Nao editar a mao. */
/* ===== wpcode 12891 | Home - faixa de fundo do bloco de servicos em largura total ===== */
/* Home 5673 - a faixa de fundo do bloco de servicos (.bsst-wrap) parava na
   largura do conteudo (1160px) dentro de uma secao branca de largura total,
   criando um degrau de cor. Os blocos irmaos (treinamentos, experiencia e
   depoimentos) ja sangram para a largura total. Aqui a faixa passa a sangrar
   do mesmo jeito e o conteudo fica centralizado em 1200px, a mesma largura das demais dobras. */

.bsst-wrap {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc( ( 100% - 100vw ) / 2 );
	margin-right: calc( ( 100% - 100vw ) / 2 );
}

.bsst-wrap > .bsst-inner {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}

/* Padronizacao de largura de conteudo da home em 1200px.
   A secao da rede nacional (16ab869) vinha em 1160px contra as demais. */

.bp-rede-inner {
	/* o proprio bloco declara 1160px depois no documento, por isso o important */
	max-width: 1200px !important;
}

/* A dobra de experiencia (.bpexp) nao tem conteiner interno, os filhos iam
   ate 1624px contra os 1200px das demais dobras. O respiro lateral passa a
   centrar o conteudo em 1200px, sem mexer no respiro vertical de 72px. */

.bpexp {
	/* o proprio bloco declara 40px depois no documento, por isso o important */
	padding-left: max( 40px, calc( 50% - 600px ) ) !important;
	padding-right: max( 40px, calc( 50% - 600px ) ) !important;
}

/* ===== Ritmo de cor das dobras da home 5673 =====
   Antes havia tres tons claros quase iguais (#FFFFFF, #F8FAFC e #F0F5FA, com
   100%, 98% e 96% de luminosidade), o que nao le como alternancia, le como
   inconsistencia. Fica so com dois tons claros, alternados, mais o navy das
   faixas. Nenhuma dobra encosta em outra do mesmo tom. */

/* 1. O #F8FAFC sai de cena */
.bsst-wrap {
	background-color: #FFFFFF !important;
}

/* 2. Tom claro alternado, dobra a dobra */
.elementor-5673 > .elementor-element-16ab869,
.elementor-5673 > .elementor-element-13248561,
.elementor-5673 > .elementor-element-9d8f8ab {
	background-color: #F0F5FA !important;
}

.elementor-5673 > .elementor-element-6d1b1bc6,
.elementor-5673 > .elementor-element-510910f,
.elementor-5673 > .elementor-element-a510b86 {
	background-color: #FFFFFF !important;
}

/* 3. O respiro vertical de 56px e o padrao de espacamento do site e fica como
      esta. O que nao pode e um tom estranho vazando em volta da faixa, entao a
      secao das dobras navy recebe o mesmo navy da faixa e a dobra inteira passa
      a ser de uma cor so, de borda a borda.
      A dobra de cobertura nacional e a excecao proposital, a secao dela segue
      branca porque esse respiro claro e o que separa as duas faixas navy em
      sequencia, treinamentos e cobertura. */

.elementor-5673 > .elementor-element-trein2026 {
	background-color: #14202E !important;
}

/* a faixa de depoimentos usa um navy proprio, entao a secao acompanha ela */
.elementor-5673 > .elementor-element-dep2026 {
	background-color: #0D1B2A !important;
}


/* ===== wpcode 12890 | Padrao de cor do texto do corpo (#1C244B) ===== */
/* Padrao 18-10-2026: cor do texto do corpo do site.
   Regra unica no body, mesma logica da cor de corpo do kit do Elementor.
   Cada bloco com cor propria (cabecalho, rodape, botao, titulo, texto sobre
   fundo escuro) continua vencendo esta regra por heranca normal. */

body.elementor-kit-7980 {
	color: #1C244B;
}

/* ===== wpcode 12877 | Bplan - CSS base do rodape v2 ===== */
#bplan-footer-v2 .bplan-footer-main,
#bplan-footer-v3 .bplan-footer-main {
  grid-template-columns: 2fr 1fr 1.5fr 1.5fr 1.5fr !important;
}
.bplan-footer-col h4.bplan-footer-heading {
  color: var(--bp-gold-2);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  margin: 0 0 16px 0;
  font-family: 'Poppins', sans-serif;
}
.bplan-footer-col .bplan-footer-links {
  list-style: none;
  padding: 0;
  margin: 8px 0 0 0;
}
.bplan-footer-col .bplan-footer-links li {
  margin-bottom: 8px;
}
.bplan-footer-col .bplan-footer-links li a {
  color: rgba(255,255,255,0.75);
  text-decoration: none;
  font-size: 14px;
  transition: color 0.2s;
}
.bplan-footer-col .bplan-footer-links li a:hover {
  color: var(--bp-gold-2);
}

  #bplan-footer-v2 .bplan-contact-link{ font-weight:400 !important; }
  #bplan-footer-v2 .bplan-footer-cta{ font-weight:400 !important; }
  #bplan-footer-v2 .bplan-state-pills{ display:block !important; }
  #bplan-footer-v2 .bplan-state-pills span{ display:block !important; background:transparent !important; padding:2px 0 !important; border-radius:0 !important; font-weight:400 !important; margin-bottom:4px !important; margin-right:0 !important; }

/* Padronizacao de fonte e tamanho - texto normal x titulos */
#bplan-footer-v2 *:not(h4):not(svg):not(path):not(img):not(circle):not(rect):not(polyline):not(polygon):not(.bplan-contact-icon):not(.bplan-social-icons):not(.bplan-security-badges){
  font-family:'Poppins', sans-serif !important;
  font-size:13px !important;
  font-weight:400 !important;
}
#bplan-footer-v2 h4{
  font-family:'Poppins', sans-serif !important;
  font-size:11px !important;
  font-weight:700 !important;
}
#bplan-footer-v3 *:not(h4):not(svg):not(path):not(img):not(circle):not(rect):not(polyline):not(polygon):not(.bplan-contact-icon):not(.bplan-social-icons):not(.bplan-security-badges){
  font-family:'Poppins', sans-serif !important;
  font-size:13px !important;
  font-weight:400 !important;
}
#bplan-footer-v3 h4{
  font-family:'Poppins', sans-serif !important;
  font-size:11px !important;
  font-weight:700 !important;
}

/* Ajustes footer - v4: badges premium, links de estado, cor texto geral */
#bplan-footer-v2 .bplan-footer-bottom, #bplan-footer-v2 .bplan-footer-bottom a{
  color:var(--bp-ink-400) !important;
}
#bplan-footer-v2 .bplan-state-link{
  display:block !important;
  color:var(--bp-ink-400) !important;
  text-decoration:none !important;
  margin-bottom:4px !important;
  transition:color .15s ease;
}
#bplan-footer-v2 .bplan-state-link:hover{
  color:var(--bp-gold-2) !important;
  text-decoration:underline !important;
}
#bplan-footer-v2 .bplan-security-badges{
  gap:14px !important;
  flex-wrap:wrap;
}
#bplan-footer-v2 .bplan-security-badges span{
  background:linear-gradient(180deg, rgba(201,164,92,0.12), rgba(201,164,92,0.04)) !important;
  border:1px solid rgba(201,164,92,0.55) !important;
  border-radius:8px !important;
  padding:8px 14px !important;
  font-weight:700 !important;
  font-size:12px !important;
  letter-spacing:0.4px;
  text-transform:uppercase;
  color:#E8D9B8 !important;
  box-shadow:0 2px 10px rgba(0,0,0,0.25), inset 0 1px 0 rgba(255,255,255,0.05) !important;
}
#bplan-footer-v2 .bplan-security-badges .bp-ico{
  width:18px !important;
  height:18px !important;
  color:var(--bp-gold-2) !important;
  stroke:var(--bp-gold-2) !important;
}


  #bplan-footer-v2 .bplan-footer-col h4{ color:#FFFFFF !important; }
  .bplan-footer-col h4.bplan-footer-heading{ color:#FFFFFF !important; }
  #bplan-footer-v2 .bp-ico{ width:14px; height:14px; vertical-align:-2px; margin-right:6px; flex-shrink:0; }
  #bplan-footer-v2 .bplan-contact-icon{ display:inline-flex; align-items:center; color:var(--bp-gold-2); }
  #bplan-footer-v2 .bp-ico-contact{ width:16px; height:16px; margin-right:0; }
  #bplan-footer-v2 .bplan-contact-item{ align-items:center !important; }
  #bplan-footer-v2 .bplan-contact-link{ color:var(--bp-ink-400) !important; text-decoration:none; font-weight:600; }
  #bplan-footer-v2 .bplan-contact-link:hover{ color:var(--bp-gold-2) !important; }
  #bplan-footer-v2 .bplan-contact-item small{ color:var(--bp-ink-400); font-size:11px; font-weight:400; }
  #bplan-footer-v2 .bplan-security-badges span{ display:inline-flex; align-items:center; gap:4px; }
  .bplan-footer-col .bplan-footer-links li a{ display:inline-flex; align-items:center; color:var(--bp-ink-400) !important; }
  .bplan-footer-col .bplan-footer-links li a:hover{ color:var(--bp-gold-2) !important; }
  .bplan-footer-col .bplan-footer-links .bp-ico{ color:var(--bp-gold-2); }


  /* --- Auditoria de melhoria: correções de contraste e ícones --- */
  #bplan-footer-v2 .bplan-footer-col h4{ color:#FFFFFF !important; }
  #bplan-footer-v2 .bp-ico{ width:14px; height:14px; vertical-align:-2px; margin-right:6px; flex-shrink:0; }
  #bplan-footer-v2 .bplan-contact-icon{ display:inline-flex; align-items:center; color:var(--bp-gold-2); }
  #bplan-footer-v2 .bp-ico-contact{ width:16px; height:16px; margin-right:0; }
  #bplan-footer-v2 .bplan-contact-item{ align-items:center !important; }
  #bplan-footer-v2 .bplan-contact-link{ color:var(--bp-ink-400) !important; text-decoration:none; font-weight:600; }
  #bplan-footer-v2 .bplan-contact-link:hover{ color:var(--bp-gold-2) !important; }
  #bplan-footer-v2 .bplan-contact-item small{ color:var(--bp-ink-400); font-size:11px; font-weight:400; }
  #bplan-footer-v2 .bplan-security-badges span{ display:inline-flex; align-items:center; gap:4px; }
  #bplan-footer-v2 .bplan-footer-links li a{ display:inline-flex; align-items:center; color:var(--bp-ink-400) !important; }
  #bplan-footer-v2 .bplan-footer-links li a:hover{ color:var(--bp-gold-2) !important; }
  #bplan-footer-v2 .bplan-footer-links .bp-ico{ color:var(--bp-gold-2); }

  #bplan-footer-v2 .bplan-contact-link{ font-weight:400 !important; }
  #bplan-footer-v2 .bplan-footer-cta{ font-weight:400 !important; }
  #bplan-footer-v2 .bplan-state-pills{ display:block !important; }
  #bplan-footer-v2 .bplan-state-pills span{ display:block !important; background:transparent !important; padding:2px 0 !important; border-radius:0 !important; font-weight:400 !important; margin-bottom:4px !important; margin-right:0 !important; }

/* Padronizacao de fonte e tamanho - texto normal x titulos */
#bplan-footer-v2 *:not(h4):not(svg):not(path):not(img):not(circle):not(rect):not(polyline):not(polygon):not(.bplan-contact-icon):not(.bplan-social-icons):not(.bplan-security-badges){
  font-family:'Poppins', sans-serif !important;
  font-size:13px !important;
  font-weight:400 !important;
}
#bplan-footer-v2 h4{
  font-family:'Poppins', sans-serif !important;
  font-size:11px !important;
  font-weight:700 !important;
}
#bplan-footer-v3 *:not(h4):not(svg):not(path):not(img):not(circle):not(rect):not(polyline):not(polygon):not(.bplan-contact-icon):not(.bplan-social-icons):not(.bplan-security-badges){
  font-family:'Poppins', sans-serif !important;
  font-size:13px !important;
  font-weight:400 !important;
}
#bplan-footer-v3 h4{
  font-family:'Poppins', sans-serif !important;
  font-size:11px !important;
  font-weight:700 !important;
}

/* Ajustes footer - v4: badges premium, links de estado, cor texto geral */
#bplan-footer-v2 .bplan-footer-bottom, #bplan-footer-v2 .bplan-footer-bottom a{
  color:var(--bp-ink-400) !important;
}
#bplan-footer-v2 .bplan-state-link{
  display:block !important;
  color:var(--bp-ink-400) !important;
  text-decoration:none !important;
  margin-bottom:4px !important;
  transition:color .15s ease;
}
#bplan-footer-v2 .bplan-state-link:hover{
  color:var(--bp-gold-2) !important;
  text-decoration:underline !important;
}
#bplan-footer-v2 .bplan-security-badges{
  gap:14px !important;
  flex-wrap:wrap;
}
#bplan-footer-v2 .bplan-security-badges span{
  background:linear-gradient(180deg, rgba(201,164,92,0.12), rgba(201,164,92,0.04)) !important;
  border:1px solid rgba(201,164,92,0.55) !important;
  border-radius:8px !important;
  padding:8px 14px !important;
  font-weight:700 !important;
  font-size:12px !important;
  letter-spacing:0.4px;
  text-transform:uppercase;
  color:#E8D9B8 !important;
  box-shadow:0 2px 10px rgba(0,0,0,0.25), inset 0 1px 0 rgba(255,255,255,0.05) !important;
}
#bplan-footer-v2 .bplan-security-badges .bp-ico{
  width:18px !important;
  height:18px !important;
  color:var(--bp-gold-2) !important;
  stroke:var(--bp-gold-2) !important;
}


/* ===== GRADE DO RODAPE - 5 colunas (sobrepoe a regra antiga de 4) ===== */
html body #bplan-footer-v2 .bplan-footer-main,
html body #bplan-footer-v3 .bplan-footer-main{
  grid-template-columns: 2fr 1fr 1.5fr 1.5fr 1.5fr !important;
}
@media (max-width: 1024px){
  html body #bplan-footer-v2 .bplan-footer-main,
  html body #bplan-footer-v3 .bplan-footer-main{
    grid-template-columns: 1fr 1fr !important;
  }
}
@media (max-width: 600px){
  html body #bplan-footer-v2 .bplan-footer-main,
  html body #bplan-footer-v3 .bplan-footer-main{
    grid-template-columns: 1fr !important;
  }
}

/* ===== wpcode 12785 | Bplan - Tokens de cor (paleta canonica) ===== */
/* ============================================================
   BPLAN - TOKENS DE COR (fonte unica da verdade)
   Regra: diferenca de cor (dE Lab) menor que 6 foi colapsada no
   token canonico (imperceptivel). Acima de 6 virou token proprio.
   ============================================================ */
:root{
  --bp-navy-900:#0D1B2A;   /* absorve #151430 (dE 5.7), #0D1B3E (4.5) */
  --bp-navy-800:#0D1B2A;   /* absorve #0F172A (4.4) */
  --bp-navy-700:#0D1B2A;   /* absorve #1E293B (5.2) */
  --bp-navy-600:#1A2D4A;   /* EXCECAO dE 11.8 */
  --bp-slate-700:#374151;  /* EXCECAO dE 14.5 - /contato/ */

  --bp-indigo-700:#1C244B; /* absorve #20296F (6.1) */
  --bp-indigo-900:#1C244B; /* EXCECAO dE 26.3 */

  --bp-gold:#C4A267;       /* marca. absorve #C9A96E (2.6) */
  --bp-gold-2:#C4A267;     /* EXCECAO dE 6.9 - fundo/borda */
  --bp-gold-hover:#B8905A; /* EXCECAO dE 7.0 - hover */
  --bp-gold-deep:#C9922A;  /* EXCECAO dE 25.3 - Kit Elementor, loja */
  --bp-gold-ink:#8A5E0A;   /* texto sobre claro. absorve #7A5800 (5.7) */
  --bp-gold-hi:#C4A267;    /* EXCECAO dE 36.8 - legado da home */

  --bp-ink-900:#1C244B;
  --bp-ink-700:#374151;    /* absorve #334155 (2.8), #3C4A59 (4.0) */
  --bp-ink-600:#374151;    /* absorve #475569 (3.9) */
  --bp-ink-500:#6B7280;    /* absorve #64748B (6.0) */
  --bp-ink-400:#94A3B8;    /* absorve #9CA3AF (5.6), #9AA3B4 (3.0) */

  --bp-white:#FFFFFF;
  --bp-surface:#F0F5FA;    /* absorve #F8F9FB #F9FAFB #F5F6FA #F3F5F8 */
  --bp-surface-2:#F0F5FA;  /* absorve #F0F4F8 #EEF1F8 */
  --bp-line:#D7DEE8;       /* absorve #E8EDF3 #E0E8F0 #E4E8F0 #E6E6E6 #F1F3F7 */
  --bp-line-strong:#D1D5DB;/* absorve #DDDDDD (4.6) */
  --bp-line-mid:#C9D2DE;   /* EXCECAO dE 8.3 */

  --bp-amber:#F59E0B;
  --bp-wa:#25D366;         /* WhatsApp - cor de terceiro */

  --bp-link:#046BD2;       /* azul do tema Astra, fora da marca */
  --bp-link-hover:#045CB4;
}
/* NAO TOKENIZADOS de proposito: #555555 #6B6B6B #5B6B7C (cinzas neutros),
   #0052A3 #003087 #3858E9 (azuis estranhos), #C0C0C0 #157351 #856404
   #FFF3CD #FFEEBA (loja: Kit, WooCommerce, Bootstrap) */

/* ===== wpcode 12375 | Bplan - Fix Contraste NR-1 (título, botões WA, rodapé) ===== */
/* Bplan - Fix Contraste (auditoria WCAG) v1 */
html body .entry-content .bp-cta h2, html body .entry-content .bp-cta h3, html body .entry-content .bp-cta h4 { color: #ffffff !important; }
body a.btn-wa { color: #14202e !important; }
body #bplan-footer-v2 .bplan-footer-bottom p, body #bplan-footer-v2 .bplan-footer-bottom a { color: #94a3b8 !important; }
html body .entry-content .bp-hero h1, html body .entry-content .bp-hero h2, html body .entry-content .bp-hero h3 { color: #ffffff !important; }

/* ===== wpcode 12327 | Blog SST - Design Consolidado Bplan (2026) ===== */
/* ---- bplan-preview-css ---- */

body.blog .bplan-hero{
  background: linear-gradient(135deg, var(--bp-navy-900) 0%, var(--bp-navy-700) 65%, #1D3A5C 100%) !important;
  position: relative;
  overflow: hidden;
  padding: 64px 24px 48px !important;
}
body.blog .bplan-hero::before{
  content:"";
  position:absolute; inset:0;
  background: radial-gradient(circle at 80% 20%, rgba(196,162,103,0.18), transparent 60%);
  pointer-events:none;
}
body.blog .bplan-hero-inner{ position:relative; z-index:1; }
body.blog .bplan-hero-badge{
  display:inline-flex !important;
  align-items:center;
  gap:8px;
  background: rgba(196,162,103,0.15) !important;
  border: 1px solid rgba(196,162,103,0.35) !important;
  color:#F0D898 !important;
  border-radius:50px !important;
  padding:8px 20px !important;
  font-weight:600 !important;
  letter-spacing:0.5px !important;
  font-size:13px !important;
}
body.blog .bplan-hero-title{
  font-weight:700 !important;
  letter-spacing:-0.5px;
}
body.blog .bplan-stats{
  display:flex !important;
  flex-wrap:wrap;
  gap:12px !important;
  margin-top:24px !important;
}
body.blog .bplan-stat{
  display:inline-flex !important;
  align-items:center;
  gap:6px;
  background: rgba(255,255,255,0.06) !important;
  border:1px solid rgba(255,255,255,0.14) !important;
  border-radius:12px !important;
  padding:10px 18px !important;
  color:rgba(255,255,255,0.85) !important;
  font-size:13px;
}
body.blog .bplan-stat strong{
  color:var(--bp-gold) !important;
  font-size:16px;
  margin-right:4px;
}
body.blog .bplan-search-form{
  display:flex !important;
  max-width:640px;
  margin-top:28px !important;
  border-radius:50px !important;
  overflow:hidden;
  box-shadow:0 8px 24px rgba(0,0,0,0.25);
}
body.blog .bplan-search-input{
  border:none !important;
  padding:16px 24px !important;
  font-size:15px !important;
  flex:1;
}
body.blog .bplan-search-btn{
  background:var(--bp-gold) !important;
  color:var(--bp-navy-700) !important;
  border:none !important;
  border-radius:0 !important;
  padding:16px 32px !important;
  font-weight:600 !important;
  transition:background .25s;
}
body.blog .bplan-search-btn:hover{ background:#d4b57b !important; }
body.blog .bplan-pill{
  border-radius:50px !important;
  border:1px solid rgba(20,32,46,0.15) !important;
  background:#fff !important;
  color:var(--bp-navy-700) !important;
  padding:10px 20px !important;
  font-weight:600 !important;
  font-size:13px;
  transition:all .25s ease;
}
body.blog .bplan-pill:hover{
  border-color:var(--bp-gold) !important;
  color:#8a6a34 !important;
}
body.blog .bplan-pill.active{
  background:linear-gradient(135deg,var(--bp-navy-700),#1D3A5C) !important;
  color:#fff !important;
  border-color:transparent !important;
  box-shadow:0 4px 14px rgba(196,162,103,0.35);
}
body.blog .bp-post-card{
  border-radius:16px !important;
  overflow:hidden !important;
  border:1px solid rgba(20,32,46,0.08) !important;
  box-shadow:0 2px 10px rgba(20,32,46,0.06) !important;
  transition: transform .3s ease, box-shadow .3s ease !important;
  background:#fff !important;
}
body.blog .bp-post-card:hover{
  transform: translateY(-6px);
  box-shadow:0 16px 32px rgba(20,32,46,0.14) !important;
}
body.blog .bp-post-card img{
  object-fit:cover !important;
  width:100% !important;
  aspect-ratio:16/10 !important;
  height:auto !important;
  background:var(--bp-surface-2) !important;
}
body.blog .bp-post-card .cat-links a{
  color:#8a6a34 !important;
  background:rgba(196,162,103,0.12) !important;
  padding:4px 12px !important;
  border-radius:50px !important;
  font-size:11px !important;
  font-weight:700 !important;
  text-transform:uppercase;
  text-decoration:none !important;
}
body.blog .bp-post-card .entry-title a{
  color:var(--bp-navy-700) !important;
  font-weight:700 !important;
  transition:color .2s;
}
body.blog .bp-post-card .entry-title a:hover{
  color:#8a6a34 !important;
}
body.blog .bp-post-card .entry-meta{
  background:transparent !important;
  color:var(--bp-ink-500) !important;
  padding:0 !important;
  font-size:12.5px !important;
}
body.blog .bp-post-card .entry-meta a{ color:var(--bp-ink-500) !important; }


/* ---- bplan-preview-fix2 ---- */

body.blog .bplan-search-wrap{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  flex:1 !important;
  height:auto !important;
}
body.blog .bplan-search-icon{
  position:absolute !important;
  left:22px !important;
  color:var(--bp-ink-400) !important;
  font-size:15px !important;
  pointer-events:none !important;
  top:50% !important;
  transform:translateY(-50%) !important;
}
body.blog .bplan-search-input{
  width:100% !important;
  height:auto !important;
  padding:16px 20px 16px 48px !important;
  border-radius:0 !important;
  box-sizing:border-box !important;
}
body.blog .bplan-search-btn{
  flex-shrink:0 !important;
  height:auto !important;
  display:flex !important;
  align-items:center !important;
}
body.blog .bplan-search-form{
  align-items:stretch !important;
}


/* ---- bplan-preview-fix3 ---- */

body.blog .bp-post-card .entry-header.ast-blog-meta-container{
  background:transparent !important;
  padding:0 !important;
  margin-bottom:6px !important;
}
body.blog .bp-post-card .entry-meta{
  color:var(--bp-ink-500) !important;
  font-size:12.5px !important;
}
body.blog .bp-post-card .entry-meta a, body.blog .bp-post-card .entry-meta span{
  color:var(--bp-ink-500) !important;
}


/* ---- bplan-preview-refine ---- */

/* ===== REFINO SOFISTICADO ===== */
body.blog .bplan-hero{
  padding-bottom: 56px !important;
}
body.blog .bplan-hero-title{
  line-height:1.15 !important;
  letter-spacing:-0.3px !important;
}
body.blog .bplan-hero-badge{
  letter-spacing:0.8px !important;
  backdrop-filter: blur(6px);
}
body.blog .bplan-stat{
  backdrop-filter: blur(4px);
  border-radius:10px !important;
  transition: background .25s ease, border-color .25s ease;
}
body.blog .bplan-stat:hover{
  background: rgba(255,255,255,0.1) !important;
  border-color: rgba(196,162,103,0.4) !important;
}
body.blog .bplan-search-input:focus{
  outline:none !important;
  box-shadow: inset 0 0 0 2px rgba(196,162,103,0.35) !important;
}
body.blog .bplan-pill{
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease, color .2s ease !important;
}
body.blog .bplan-pill:hover{
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(20,32,46,0.12);
}
body.blog .bplan-pill.active:hover{
  transform:none;
}

/* Cards - refino premium */
body.blog .bp-post-card{
  border-radius:18px !important;
  box-shadow:0 4px 16px rgba(20,32,46,0.05) !important;
  position:relative;
}
body.blog .bp-post-card::before{
  content:"";
  position:absolute;
  top:0; left:0; right:0;
  height:3px;
  background:linear-gradient(90deg,var(--bp-gold),#e9d4ab,var(--bp-gold));
  opacity:0;
  transition:opacity .3s ease;
  z-index:2;
}
body.blog .bp-post-card:hover::before{ opacity:1; }
body.blog .bp-post-card:hover{
  box-shadow:0 20px 40px rgba(20,32,46,0.16) !important;
}
body.blog .bp-post-card .entry-image-wrap, body.blog .bp-post-card picture{
  overflow:hidden !important;
  display:block !important;
}
body.blog .bp-post-card img{
  transition: transform .5s ease !important;
}
body.blog .bp-post-card:hover img{
  transform: scale(1.06) !important;
}
body.blog .bp-post-card .entry-title a{
  font-weight:600 !important;
  line-height:1.35 !important;
  letter-spacing:-0.1px !important;
}
body.blog .bp-post-card .cat-links a{
  letter-spacing:0.6px !important;
}


/* ---- bplan-preview-caprichada ---- */

/* ===== CAPRICHO FINAL - HERO ===== */
body.blog .bplan-hero::before{
  background: radial-gradient(circle at 75% 0%, rgba(196,162,103,0.14), transparent 55%) !important;
}
body.blog .bplan-hero::after{
  content:"";
  position:absolute;
  left:0; right:0; bottom:0;
  height:120px;
  background: linear-gradient(180deg, rgba(20,32,46,0) 0%, rgba(20,32,46,0.35) 100%);
  pointer-events:none;
}
body.blog .bplan-hero-inner{
  position:relative;
  z-index:2;
}

/* espaçamento entre badge / título / subtítulo */
body.blog .bplan-hero-badge{
  margin-bottom:22px !important;
}
body.blog .bplan-hero-title{
  margin-bottom:14px !important;
}
body.blog .bplan-hero p{
  margin-bottom:32px !important;
  color: rgba(255,255,255,0.72) !important;
}

/* chips de estatística - acabamento vidro */
body.blog .bplan-stat{
  position:relative;
  overflow:hidden;
  border-radius:14px !important;
  background: linear-gradient(180deg, rgba(255,255,255,0.09), rgba(255,255,255,0.03)) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.12), 0 2px 8px rgba(0,0,0,0.2) !important;
}
body.blog .bplan-stats{
  margin-top:28px !important;
  margin-bottom:8px !important;
}

/* transição suave do hero pra área branca dos filtros */
body.blog .bplan-hero{
  margin-bottom:0 !important;
}


/* ---- bplan-preview-pills ---- */

body.blog .bplan-pill {
  padding: 11px 22px !important;
  border-radius: 50px !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  letter-spacing: 0.3px !important;
  border: 1px solid rgba(9,18,58,0.12) !important;
  background: #fff !important;
  color: var(--bp-navy-700) !important;
  box-shadow: 0 1px 2px rgba(9,18,58,0.04) !important;
  transition: all 0.25s ease !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
}
body.blog .bplan-pill i {
  color: var(--bp-gold) !important;
  font-size: 13px !important;
  transition: transform 0.25s ease !important;
}
body.blog .bplan-pill:hover {
  border-color: rgba(196,162,103,0.5) !important;
  box-shadow: 0 4px 12px rgba(9,18,58,0.10) !important;
  transform: translateY(-2px) !important;
  color: var(--bp-navy-900) !important;
}
body.blog .bplan-pill:hover i {
  transform: scale(1.12) !important;
}
body.blog .bplan-pill.active {
  background: linear-gradient(135deg, var(--bp-navy-900) 0%, var(--bp-navy-700) 65%, #1D3A5C 100%) !important;
  border-color: transparent !important;
  color: #fff !important;
  box-shadow: 0 4px 14px rgba(9,18,58,0.28) !important;
}
body.blog .bplan-pill.active i {
  color: #F0D898 !important;
}
body.blog .bplan-pill.active:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 18px rgba(9,18,58,0.34) !important;
}
/* count number styling */
body.blog .bplan-pill::after {
  content: "";
}


/* ---- bplan-preview-pills-count ---- */

body.blog .bplan-pill-count {
  background: rgba(9,18,58,0.06) !important;
  color: var(--bp-navy-700) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  padding: 2px 8px !important;
  border-radius: 20px !important;
  margin-left: 2px !important;
  transition: all 0.25s ease !important;
}
body.blog .bplan-pill:hover .bplan-pill-count {
  background: rgba(196,162,103,0.18) !important;
  color: var(--bp-navy-900) !important;
}
body.blog .bplan-pill.active .bplan-pill-count {
  background: rgba(240,216,152,0.22) !important;
  color: #F0D898 !important;
}


/* ---- bplan-preview-spacing ---- */

body.blog #bplan-filter-bar {
  padding-top: 34px !important;
  padding-bottom: 22px !important;
}
body.blog .bplan-hero {
  padding-bottom: 8px !important;
}




/* ===== wpcode 12082 | Bplan Home - Correções Globais de Design ===== */
/* BPLAN - CORREÇÕES GLOBAIS DE DESIGN v1.0 */

/* 1. OCULTAR script> VISÍVEL */
body > p:first-of-type:empty,
body > *[class=""]:not(#wpadminbar):not(header):not(div):first-child {
  display: none !important;
}

/* 2. TOKENS DE COR */
:root {
  --bplan-navy: #14202E;
  --bplan-gold: #C9A45C;
  --bplan-white: #FFFFFF;
}

/* 3. BOTÕES CTA - PADRÃO UNIFICADO */
.elementor-button,
a.elementor-button {
  border-radius: 100px !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  transition: all 0.2s ease !important;
  color: #FFFFFF !important;
}

/* Header CTA próprio */
header .elementor-button {
  border-radius: 8px !important;
  padding: 10px 22px !important;
  color: #14202E !important;
}

/* 4. GAP BRANCO APÓS HERO */
.elementor-section.elementor-section-boxed + .elementor-section.elementor-section-boxed:nth-of-type(2) {
  margin-top: 0 !important;
}

/* 5. CONTAINERS - PADDING LATERAL */
.e-con-inner {
  padding-left: 20px !important;
  padding-right: 20px !important;
}

/* 6. TIPOGRAFIA */
.elementor-widget-heading h2.elementor-heading-title {
  font-size: clamp(32px, 4vw, 44px) !important;
  line-height: 1.15 !important;
  letter-spacing: -0.5px !important;
}
.elementor-widget-heading h3.elementor-heading-title {
  font-size: clamp(20px, 2.5vw, 28px) !important;
}
.elementor-widget-text-editor p {
  font-size: 16px !important;
  line-height: 1.7 !important;
}

/* 7. FAQ - BOTÃO INVISÍVEL */
.elementor-button:not([style*="color: rgb"]) {
  color: #FFFFFF !important;
}

/* 8. DEPOIMENTOS OVERFLOW */
.elementor-widget-testimonial-carousel {
  overflow: visible !important;
}

/* 9. SEGMENTOS - VISUAL LIMPO */
.elementor-widget-icon-box .elementor-icon-box-wrapper {
  text-align: center !important;
  padding: 16px 8px !important;
}
.elementor-widget-icon-box .elementor-icon-box-content .elementor-icon-box-title {
  font-size: 13px !important;
  font-weight: 600 !important;
}
.elementor-widget-icon-box .elementor-icon-box-content .elementor-icon-box-description {
  font-size: 11px !important;
  color: #6B7280 !important;
}



/* =============================================
   SLIDER SECTION - mesma largura da Seção 2
   =============================================
   Section 1 is e-con-full (flex row, full width).
   We center the widget item using justify-content
   and constrain its max-width like Section 2.
   ============================================= */
/* Center the widget item inside the full-width section */
[data-id="a9872aa"].e-con-full {
  justify-content: center !important;
}
/* Constrain the widget to match Section 2's content width */
[data-id="a9872aa"] > .elementor-element {
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: var(--bp-max) !important;
}

/* ===== wpcode 12080 | Bplan - Botao Flutuante Fale Conosco (CSS) ===== */
/* Botao Flutuante Fale Conosco - Bplan */
/* Redireciona para /contato/ (formulario de leads) */
#bplan-wa-float {
  position: fixed !important;
  bottom: 28px !important;
  left: 28px !important;
  z-index: 99999 !important;
  width: 58px !important;
  height: 58px !important;
  background: #091235 !important;
  border-radius: 50% !important;
  box-shadow: 0 4px 16px rgba(0,0,0,.25) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  transition: transform .2s, box-shadow .2s !important;
  text-decoration: none !important;
}
#bplan-wa-float:hover {
  transform: scale(1.1) !important;
  box-shadow: 0 6px 24px rgba(0,0,0,.35) !important;
}
#bplan-wa-float svg {
  width: 30px !important;
  height: 30px !important;
  fill: #fff !important;
}

/* ===== wpcode 11413 | Bplan Design System v2.0 ===== */
/* ============================================================
   BPLAN DESIGN SYSTEM v2.0
   Instalado via WPCode — grupobplan.com.br
   ============================================================ */

/* ---------- TOKENS ---------- */
:root {
  --bp-primary: #0D1B2A;
  --bp-accent: #C4A267;
  --bp-accent-hover: #8A5E0A;
  --bp-blue: #1C244B;
  --bp-surface: #F0F5FA;
  --bp-white: #FFFFFF;
  --bp-text: #0D1B2A;
  --bp-muted: #6B7280;
  --bp-radius: 12px;
  --bp-shadow: 0 4px 24px rgba(13,27,42,0.10);
  --bp-shadow-hover: 0 12px 40px rgba(13,27,42,0.18);
  --bp-transition: 0.25s cubic-bezier(.4,0,.2,1);
}

/* ---------- HEADER / FALE CONOSCO ---------- */
/* Sobrescreve elementor-animation-float e qualquer variante */
.elementor-element-5f0fd8f .elementor-button,
.elementor-element-5f0fd8f a.elementor-button,
.elementor-element-5f0fd8f .elementor-button.elementor-animation-float,
a.elementor-button.elementor-animation-float,
header .elementor-button,
header a.elementor-button {
  background-color: var(--bp-accent) !important;
  border-color: var(--bp-accent) !important;
  color: var(--bp-primary) !important;
  font-weight: 700 !important;
  border-radius: 8px !important;
}
.elementor-element-5f0fd8f .elementor-button:hover,
.elementor-element-5f0fd8f a.elementor-button:hover,
header .elementor-button:hover {
  background-color: var(--bp-accent-hover) !important;
  transform: translateY(-2px) !important;
}

/* ---------- HERO CTA BUTTONS (slide buttons) ---------- */
/* Botão principal âmbar — "Falar com especialista" */
.elementor-element[data-id="sst_cta_btn"] .elementor-button,
.elementor-element[data-id="sst_cta_btn"] a.elementor-button,
/* Qualquer botão nos slides do hero que não seja transparente/ghost */
.e-con .elementor-button:not(.elementor-animation-float),
.e-con-inner .elementor-button:not(.elementor-animation-float) {
  background-color: var(--bp-accent) !important;
  border-color: var(--bp-accent) !important;
  color: var(--bp-primary) !important;
  font-weight: 700 !important;
  border-radius: 8px !important;
  transition: background var(--bp-transition), transform var(--bp-transition) !important;
}
.e-con .elementor-button:not(.elementor-animation-float):hover,
.e-con-inner .elementor-button:not(.elementor-animation-float):hover {
  background-color: var(--bp-accent-hover) !important;
  transform: translateY(-2px) !important;
}

/* ---------- BOTÃO WHATSAPP --- mantém estilo próprio ---------- */
.elementor-element-7f0495c9 .elementor-button {
  background-color: #25D366 !important;
  border-color: #25D366 !important;
  color: #FFFFFF !important;
}

/* ---------- SEÇÃO DE SERVIÇOS ---------- */
.elementor-icon-box-wrapper .elementor-icon {
  transition: transform var(--bp-transition) !important;
}
.elementor-icon-box-wrapper:hover .elementor-icon {
  transform: scale(1.1) !important;
}
.elementor-icon-box-icon .elementor-icon {
  font-size: 40px !important;
  color: var(--bp-accent) !important;
}

/* ---------- CARDS TREINAMENTOS / BLOG ---------- */
/* Fix truncamento de títulos */
.elementor-posts .elementor-post__title,
.elementor-posts .elementor-post__title a,
.elementor-element-9d8f8ab .elementor-post__title,
.elementor-element-9d8f8ab .elementor-post__title a {
  display: block !important;
  -webkit-line-clamp: unset !important;
  overflow: visible !important;
  text-overflow: unset !important;
  white-space: normal !important;
}

/* Hover elevation nos cards */
.elementor-posts .elementor-post,
.elementor-element-9d8f8ab .elementor-post {
  transition: transform var(--bp-transition), box-shadow var(--bp-transition) !important;
  border-radius: var(--bp-radius) !important;
  overflow: hidden !important;
}
.elementor-posts .elementor-post:hover,
.elementor-element-9d8f8ab .elementor-post:hover {
  transform: translateY(-4px) !important;
  box-shadow: var(--bp-shadow-hover) !important;
}

/* Botão "LEIA MAIS" nos cards → âmbar */
.elementor-element-6d10ffd .elementor-button,
.elementor-element-6d10ffd a.elementor-button,
.elementor-posts .elementor-post__read-more,
.elementor-element-9d8f8ab .elementor-post__read-more {
  background-color: var(--bp-accent) !important;
  border-color: var(--bp-accent) !important;
  color: var(--bp-primary) !important;
  font-weight: 700 !important;
}

/* ---------- DEPOIMENTOS ---------- */
.elementor-testimonial-wrapper,
.elementor-testimonial__content {
  box-shadow: var(--bp-shadow) !important;
  border-radius: var(--bp-radius) !important;
  transition: box-shadow var(--bp-transition) !important;
}
.elementor-testimonial-wrapper:hover {
  box-shadow: var(--bp-shadow-hover) !important;
}

/* ---------- FOOTER ORIGINAL → OCULTAR ---------- */
.elementor-element-36da7e4 {
  display: none !important;
}

/* ---------- FOOTER v2.0 ---------- */
#bplan-footer-v2 {
  background: #0D1B2A !important;
  color: #C9D2DE !important;
  font-family: inherit !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
#bplan-footer-v2 .bplan-footer-main {
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 60px 32px 40px !important;
  display: grid !important;
  grid-template-columns: 2fr 1fr 1.5fr 1.5fr !important;
  gap: 48px !important;
}
#bplan-footer-v2 .bplan-footer-col h4 {
  color: var(--bp-accent) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  margin: 0 0 20px !important;
  padding-bottom: 10px !important;
  border-bottom: 1px solid rgba(201,164,92,0.25) !important;
}
#bplan-footer-v2 .bplan-footer-col .bplan-footer-desc {
  font-size: 13.5px !important;
  line-height: 1.7 !important;
  color: #94A3B8 !important;
  margin: 0 0 24px !important;
}
#bplan-footer-v2 .bplan-footer-col .bplan-footer-nav {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
#bplan-footer-v2 .bplan-footer-col .bplan-footer-nav li {
  margin-bottom: 10px !important;
}
#bplan-footer-v2 .bplan-footer-col .bplan-footer-nav a {
  color: #94A3B8 !important;
  text-decoration: none !important;
  font-size: 13.5px !important;
  transition: color 0.2s !important;
}
#bplan-footer-v2 .bplan-footer-col .bplan-footer-nav a:hover {
  color: var(--bp-accent) !important;
}
#bplan-footer-v2 .bplan-social-icons {
  display: flex !important;
  gap: 12px !important;
  margin-top: 8px !important;
}
#bplan-footer-v2 .bplan-social-icons a {
  width: 36px !important;
  height: 36px !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,0.07) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: background 0.2s, transform 0.2s !important;
}
#bplan-footer-v2 .bplan-social-icons a:hover {
  background: var(--bp-accent) !important;
  transform: translateY(-2px) !important;
}
#bplan-footer-v2 .bplan-social-icons svg {
  width: 18px !important;
  height: 18px !important;
  fill: #C9D2DE !important;
}
#bplan-footer-v2 .bplan-social-icons a:hover svg {
  fill: var(--bp-primary) !important;
}
#bplan-footer-v2 .bplan-state-pills {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  margin-top: 4px !important;
}
#bplan-footer-v2 .bplan-state-pills span {
  background: rgba(255,255,255,0.07) !important;
  color: #94A3B8 !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  padding: 3px 8px !important;
  border-radius: 4px !important;
  letter-spacing: 0.05em !important;
}
#bplan-footer-v2 .bplan-contact-item {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  margin-bottom: 12px !important;
  font-size: 13.5px !important;
  color: #94A3B8 !important;
}
#bplan-footer-v2 .bplan-contact-icon {
  font-size: 16px !important;
  margin-top: 1px !important;
  flex-shrink: 0 !important;
}
#bplan-footer-v2 .bplan-footer-cta {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: transparent !important;
  color: #94A3B8 !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  padding: 0 !important;
  border-radius: 0 !important;
  text-decoration: none !important;
  margin-top: 12px !important;
  transition: color 0.2s !important;
}
#bplan-footer-v2 .bplan-footer-cta:hover {
  color: #C4A267 !important;
  background: transparent !important;
  transform: none !important;
}
#bplan-footer-v2 .bplan-footer-bottom {
  border-top: 1px solid rgba(255,255,255,0.07) !important;
  padding: 20px 32px !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
}
#bplan-footer-v2 .bplan-footer-bottom p {
  font-size: 12px !important;
  color: #6B7280 !important;
  margin: 0 !important;
}
#bplan-footer-v2 .bplan-footer-bottom a {
  color: #6B7280 !important;
  font-size: 12px !important;
  text-decoration: none !important;
  margin-left: 16px !important;
  transition: color 0.2s !important;
}
#bplan-footer-v2 .bplan-footer-bottom a:hover {
  color: var(--bp-accent) !important;
}
#bplan-footer-v2 .bplan-security-badges {
  display: flex !important;
  gap: 12px !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  margin-top: 20px !important;
}
#bplan-footer-v2 .bplan-security-badges span {
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  color: #6B7280 !important;
  font-size: 11px !important;
  padding: 4px 10px !important;
  border-radius: 6px !important;
  font-weight: 500 !important;
}

/* ---------- RESPONSIVO ---------- */
@media (max-width: 1024px) {
  #bplan-footer-v2 .bplan-footer-main {
    grid-template-columns: 1fr 1fr !important;
    gap: 32px !important;
  }
}
@media (max-width: 600px) {
  #bplan-footer-v2 .bplan-footer-main {
    grid-template-columns: 1fr !important;
    padding: 40px 20px 24px !important;
  }
  #bplan-footer-v2 .bplan-footer-bottom {
    flex-direction: column !important;
    text-align: center !important;
    padding: 16px 20px !important;
  }
}
/* ---------- OVERRIDE: elementor-animation-float (inline Elementor style) ---------- */
/* O Elementor injeta inline CSS para animation-float com a cor primária global */
/* Precisamos sobrescrever com especificidade máxima */
body .elementor-element-6d10ffd .elementor-button.elementor-animation-float,
body .elementor-element-6d10ffd a.elementor-button.elementor-animation-float,
body .elementor-button.elementor-animation-float[href],
body a.elementor-button.elementor-animation-float {
  background-color: var(--bp-accent) !important;
  border-color: var(--bp-accent) !important;
  color: var(--bp-primary) !important;
}
/* Excepção: botão WhatsApp mantém verde */
body .elementor-element-7f0495c9 .elementor-button.elementor-animation-float,
body .elementor-element-7f0495c9 a.elementor-button.elementor-animation-float {
  background-color: #25D366 !important;
  border-color: #25D366 !important;
  color: #FFFFFF !important;
}
/* ---------- "Ver todas as unidades" → hero slide button específico ---------- */
/* Botão escuro do hero — também forçar âmbar */
.elementor-element-355fe437 .elementor-button,
.elementor-element-355fe437 a.elementor-button {
  background-color: var(--bp-accent) !important;
  border-color: var(--bp-accent) !important;
  color: var(--bp-primary) !important;
  font-weight: 700 !important;
}

/* ---------- HERO .c-btn (botões customizados do tema nos slides) ---------- */
/* Botões dos 3 slides do hero usam .c-btn ao invés de .elementor-button */
.c-btn,
a.c-btn,
.elementor-element-d8aa141 .c-btn {
  background-color: var(--bp-accent) !important;
  border-color: var(--bp-accent) !important;
  color: var(--bp-primary) !important;
  font-weight: 700 !important;
  border-radius: 8px !important;
  transition: background var(--bp-transition), transform var(--bp-transition) !important;
}
.c-btn:hover,
a.c-btn:hover,
.elementor-element-d8aa141 .c-btn:hover {
  background-color: var(--bp-accent-hover) !important;
  transform: translateY(-2px) !important;
}

/* ---------- OCULTAR PARTES ANTIGAS DO FOOTER ---------- */
/* Ocultar container do footer original (36da7e4) e componentes extras */
.elementor-element-36da7e4,
.elementor-element-1285cab,
.elementor-element-c20518c {
  display: none !important;
}

/* ---------- OCULTAR CONTAINERS DUPLICADOS DO FOOTER ---------- */
/* Container da barra inferior antiga do Elementor */
.elementor-element-c20518c,
.elementor-element-1285cab,
/* Qualquer footer injetado por JS anterior */
#bplan_footer_con,
[id^="bplan_footer_"] {
  display: none !important;
}

/* ---------- OCULTAR CONTAINER DUPLICADO DO FOOTER V2 ---------- */
/* O container 1c89df2 é o duplicado criado fora do template */
.elementor-element-1c89df2 {
  display: none !important;
}
/* Garantir que o footer v2 principal apareça corretamente */
[data-id="bplan_footer_con"] {
  display: block !important;
}

/* ---------- OCULTAR CONTAINER FOOTER DUPLICADO (adicionado por sessão anterior) ---------- */
.elementor-element-02b9ca8,
.elementor-element-1c89df2 {
  display: none !important;
}

/* ===== wpcode 11411 | Bplan – Fix Pagination Design + Floating Buttons Overlap ===== */
/* =========================================================
   BPLAN - Pagination Fix v3 + Search Results Page + Floating Buttons
   ========================================================= */

/* ---- PAGINATION ---- */

.ast-pagination .nav-links {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  flex-wrap: wrap !important;
  padding: 40px 0 48px !important;
}

/* Base style for all page numbers */
.ast-pagination .page-numbers {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 44px !important;
  height: 44px !important;
  padding: 0 16px !important;
  border-radius: 10px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  font-family: 'Poppins', 'Inter', sans-serif !important;
  text-decoration: none !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  overflow: visible !important;
  border: 1.5px solid #d1d8e0 !important;
  background: #ffffff !important;
  color: #14202e !important;
  letter-spacing: 0.01em !important;
  box-shadow: none !important;
  transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease !important;
}

/* Active / current page */
.ast-pagination .page-numbers.current {
  background: #14202e !important;
  color: #ffffff !important;
  border-color: #14202e !important;
  box-shadow: 0 2px 10px rgba(20,32,46,0.25) !important;
  cursor: default !important;
}

/* Hover on inactive links */
.ast-pagination a.page-numbers:hover,
.ast-pagination a.page-numbers:focus {
  background: #c4a267 !important;
  color: #ffffff !important;
  border-color: #c4a267 !important;
  box-shadow: 0 2px 10px rgba(196,162,103,0.35) !important;
  outline: none !important;
}

/* Dots */
.ast-pagination .page-numbers.dots {
  border: none !important;
  background: transparent !important;
  color: #7a8a9a !important;
  min-width: 20px !important;
  padding: 0 2px !important;
  cursor: default !important;
  box-shadow: none !important;
}

/* Prev / Next - wider with gold border */
.ast-pagination .prev.page-numbers,
.ast-pagination .next.page-numbers {
  min-width: 110px !important;
  padding: 0 18px !important;
  background: #ffffff !important;
  color: #14202e !important;
  border-color: #c4a267 !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
  gap: 6px !important;
}

.ast-pagination .prev.page-numbers:hover,
.ast-pagination .next.page-numbers:hover {
  background: #c4a267 !important;
  color: #ffffff !important;
  border-color: #c4a267 !important;
  box-shadow: 0 2px 10px rgba(196,162,103,0.35) !important;
}

.ast-pagination .prev.page-numbers .ast-left-arrow,
.ast-pagination .next.page-numbers .ast-right-arrow {
  font-style: normal !important;
  display: inline !important;
}

/* ---- SEARCH RESULTS PAGE (/?s=term) ---- */

/* Override the dark Astra search page hero banner */
body.search .ast-banner-layout-section,
body.search .entry-header,
body.search .page-header {
  background: #14202e !important;
  padding: 50px 0 !important;
  margin-bottom: 0 !important;
}

body.search .page-title,
body.search .search-title,
body.search h1.entry-title {
  color: #ffffff !important;
  font-family: 'Poppins', sans-serif !important;
  font-size: 2rem !important;
  font-weight: 700 !important;
}

body.search .page-title span,
body.search .search-title span {
  color: #c4a267 !important;
}

/* Search results content area */
body.search #content,
body.search .ast-container {
  background: #ffffff !important;
}

/* Style individual search result articles */
body.search article.post {
  background: #ffffff !important;
  border: 1px solid #e8ecf0 !important;
  border-radius: 12px !important;
  padding: 24px !important;
  margin-bottom: 20px !important;
  transition: box-shadow 0.2s ease !important;
}

body.search article.post:hover {
  box-shadow: 0 4px 20px rgba(20,32,46,0.1) !important;
}

body.search article.post .entry-title a {
  color: #14202e !important;
  font-family: 'Poppins', sans-serif !important;
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

body.search article.post .entry-title a:hover {
  color: #c4a267 !important;
}

body.search article.post .entry-meta,
body.search article.post .entry-summary {
  color: #5a6a7a !important;
  font-size: 0.9rem !important;
}

/* No results message */
body.search .no-results .page-title,
body.search-no-results h1 {
  color: #14202e !important;
  font-family: 'Poppins', sans-serif !important;
}

body.search .no-results-message,
body.search .no-results p {
  color: #5a6a7a !important;
  font-size: 1rem !important;
}

/* Custom search form on results page */
body.search .search-form {
  display: flex !important;
  gap: 10px !important;
  margin: 24px 0 !important;
  max-width: 600px !important;
}

body.search .search-form input[type="search"],
body.search .search-form .search-field {
  flex: 1 !important;
  padding: 12px 18px !important;
  border: 1.5px solid #d1d8e0 !important;
  border-radius: 10px !important;
  font-size: 15px !important;
  outline: none !important;
  color: #14202e !important;
}

body.search .search-form input[type="search"]:focus {
  border-color: #c4a267 !important;
  box-shadow: 0 0 0 3px rgba(196,162,103,0.15) !important;
}

body.search .search-form .search-submit,
body.search .search-form button {
  background: #14202e !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 12px 24px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  font-size: 14px !important;
}

body.search .search-form .search-submit:hover {
  background: #c4a267 !important;
}

/* ---- BACK-TO-TOP + WHATSAPP FIX ---- */

#ast-scroll-top {
  bottom: 80px !important;
  right: 18px !important;
  width: 44px !important;
  height: 44px !important;
  background: #14202e !important;
  border-radius: 10px !important;
  border: 1.5px solid #c4a267 !important;
  box-shadow: 0 2px 12px rgba(20,32,46,0.3) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 9998 !important;
}

#ast-scroll-top:hover {
  background: #c4a267 !important;
  box-shadow: 0 4px 16px rgba(196,162,103,0.4) !important;
}

#ast-scroll-top svg,
#ast-scroll-top i,
#ast-scroll-top::before,
#ast-scroll-top .ast-arrow-svg {
  color: #ffffff !important;
  fill: #ffffff !important;
}

#piperun-whatsapp-logo {
  bottom: 18px !important;
  right: 18px !important;
  z-index: 9999 !important;
}

@media (max-width: 768px) {
  #ast-scroll-top { bottom: 82px !important; right: 12px !important; }
  #piperun-whatsapp-logo { bottom: 14px !important; right: 12px !important; }
  .ast-pagination .prev.page-numbers,
  .ast-pagination .next.page-numbers { min-width: 80px !important; padding: 0 12px !important; }
  .ast-pagination .page-numbers { min-width: 38px !important; height: 38px !important; font-size: 13px !important; }
}

/* ===== wpcode 10786 | Bplan Design Fixes - Popup, Alignment, Colors, Sections ===== */
/* ================================================================
   BPLAN HARMONIZAÇÃO COMPLETA v3.0 — Design System Definitivo
   Cores: Azul #0D1B2A | Dourado #C4A267 | Branco #fff
   ================================================================ */

/* ---------------------------------------------------------------
   1. VARIÁVEIS E RESET GLOBAL
--------------------------------------------------------------- */
:root {
  --bp-navy:   #0D1B2A;
  --bp-navy2:  #0D1B2A;
  --bp-gold:   #C4A267;
  --bp-gold-l: #C4A267;
  --bp-white:  #ffffff;
  --bp-light:  #F0F5FA;
  --bp-light2: #F0F5FA;
  --bp-text:   #1C244B;
  --bp-muted:  rgba(28,36,75,0.55);
  --bp-radius: 12px;
  --bp-section-pad: 90px 0;
  --bp-max: 1200px;
  --bp-side: 94px;
  --bp-gold-line: 3px;
}

/* ---------------------------------------------------------------
   2. HIDE ANNOUNCEMENT BANNER (convertido em popup JS)
--------------------------------------------------------------- */
#bplan-nr1-banner { display: none !important; }

/* ---------------------------------------------------------------
   3. HEADER — alinhamento e linha dourada
--------------------------------------------------------------- */
/* Ouvidoria bar */
.elementor-element-25422163 .e-con-inner {
  padding-left: var(--bp-side) !important;
  padding-right: var(--bp-side) !important;
}
/* Nav bar */
.elementor-element-54a66ddf .e-con-inner {
  padding-left: var(--bp-side) !important;
  padding-right: var(--bp-side) !important;
}
/* Linha dourada sob ouvidoria — mesma espessura da progress bar */
body .elementor-element.elementor-element-25422163 {
  border-bottom: var(--bp-gold-line) solid rgba(196,162,103,0.80) !important;
}
/* Linha dourada no topo do header */
.elementor-element-54a66ddf {
  border-top: var(--bp-gold-line) solid var(--bp-gold) !important;
}

/* ---------------------------------------------------------------
   4. TIPOGRAFIA — hierarquia consistente
--------------------------------------------------------------- */
h1.elementor-heading-title {
  font-size: clamp(36px, 4vw, 54px) !important;
  font-weight: 700 !important;
  line-height: 1.18 !important;
  letter-spacing: -0.5px !important;
}
h2.elementor-heading-title {
  font-size: clamp(28px, 3vw, 40px) !important;
  font-weight: 700 !important;
  line-height: 1.22 !important;
  letter-spacing: -0.3px !important;
}
h3.elementor-heading-title {
  font-size: clamp(18px, 2vw, 22px) !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
}
.elementor-widget-text-editor p,
.elementor-text-editor p {
  line-height: 1.72 !important;
  font-size: 16px !important;
}

/* ---------------------------------------------------------------
   5. SEÇÕES — ALTERNÂNCIA SUTIL E SOFISTICADA
   O mapa de fundo da home vive no snippet "Bplan - Ritmo de fundo da home".
   As regras daqui perdiam para a camada CSS do Elementor e foram retiradas
   em 21/10/2026 para nao existir dois donos do mesmo fundo.
--------------------------------------------------------------- */

/* Hero (slides) — branco puro */
.elementor-element-a9872aa { background-color: #ffffff !important; }
/* Seção "Por que a Bplan?" — azul claro muito suave */
.elementor-element-b2848a9 {
  background-color: var(--bp-light) !important;
}

/* Seção features/cards grande — levemente mais fria */
/* Seção números / stats — navy profundo */
.elementor-element-36da7e4 {
  background: linear-gradient(160deg, #0b1840 0%, var(--bp-navy) 60%, #070f2a 100%) !important;
}

/* Seções de serviços alternadas (claro/médio) */
/* CTA final — navy */
.elementor-element-ctafinal2026 {
  background: linear-gradient(135deg, #0b1840 0%, #091235 100%) !important;
}

/* Seção cobertura/mapa */
/* ---------------------------------------------------------------
   6. ESPAÇAMENTO INTERNO DAS SEÇÕES
--------------------------------------------------------------- */
.elementor-top-section > .elementor-container,
.e-con.elementor-element > .e-con-inner {
  max-width: var(--bp-max) !important;
}

/* Padding vertical das secoes vive no Elementor, as regras daqui eram inertes */
/* ---------------------------------------------------------------
   7. BOTÕES — sistema unificado, dois estilos
--------------------------------------------------------------- */

/* Botão primário escuro (Fale Conosco, Falar com Especialista) */
.elementor-button[href*="contato"],
.elementor-button-wrapper .elementor-button {
  border-radius: 100px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  letter-spacing: 0.3px !important;
  transition: all 0.22s ease !important;
}

/* Botão "Fale Conosco" no header — outline dourado */
.elementor-element-54a66ddf .elementor-button {
  border: 1.5px solid var(--bp-gold) !important;
  background: transparent !important;
  color: var(--bp-white) !important;
  padding: 10px 22px !important;
}
.elementor-element-54a66ddf .elementor-button:hover {
  background: var(--bp-gold) !important;
  color: var(--bp-navy) !important;
}

/* Botão dourado sólido (CTA principal) */
.elementor-button.elementor-button-link,
a.elementor-button:not([href*="fale"]) {
  border-radius: 100px !important;
  transition: all 0.22s ease !important;
}

/* Hover geral em botões dourados */
.elementor-widget-button .elementor-button[style*="background-color: rgb(196, 162, 103)"],
.elementor-widget-button .elementor-button[style*="background-color:#C4A267"] {
  box-shadow: 0 4px 18px rgba(196,162,103,0.25) !important;
}
.elementor-widget-button .elementor-button[style*="background-color: rgb(196, 162, 103)"]:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(196,162,103,0.38) !important;
}

/* ---------------------------------------------------------------
   8. CARDS — uniformidade com variação sutil
--------------------------------------------------------------- */
/* Cards de features (ícone + título + texto) */
.elementor-widget-icon-box .elementor-icon-box-wrapper,
.elementor-widget-image-box .elementor-image-box-wrapper {
  border-radius: var(--bp-radius) !important;
  transition: transform 0.22s ease, box-shadow 0.22s ease !important;
}

/* Cards na seção clara */
.elementor-element-6d1b1bc6 .elementor-widget-icon-box .elementor-icon-box-wrapper {
  background: #ffffff !important;
  border: 1px solid rgba(20,32,46,0.07) !important;
  padding: 28px 24px !important;
  box-shadow: 0 2px 12px rgba(20,32,46,0.06) !important;
}
.elementor-element-6d1b1bc6 .elementor-widget-icon-box .elementor-icon-box-wrapper:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 8px 28px rgba(20,32,46,0.10) !important;
}

/* ---------------------------------------------------------------
   9. SEÇÃO ESCURA (stats/cobertura) — contraste perfeito
--------------------------------------------------------------- */
.elementor-element-36da7e4 *,
.elementor-element-36da7e4 h2,
.elementor-element-36da7e4 h3,
.elementor-element-36da7e4 p,
.elementor-element-36da7e4 span {
  color: rgba(255,255,255,0.85) !important;
}
.elementor-element-36da7e4 .elementor-heading-title {
  color: #ffffff !important;
}
/* Números em dourado */
.elementor-element-36da7e4 .elementor-counter-number-wrapper,
.elementor-element-36da7e4 .elementor-counter-number,
.elementor-element-36da7e4 .elementor-counter-number-suffix,
.elementor-element-36da7e4 .elementor-counter-number-prefix {
  color: var(--bp-gold) !important;
}
/* Post titles na seção escura */
.elementor-element-36da7e4 .elementor-post__title,
.elementor-element-36da7e4 .elementor-post__title a {
  color: #ffffff !important;
}
/* Botões na seção escura */
.elementor-element-36da7e4 .elementor-button {
  background: transparent !important;
  border: 1.5px solid var(--bp-gold) !important;
  color: var(--bp-gold) !important;
}
.elementor-element-36da7e4 .elementor-button:hover {
  background: var(--bp-gold) !important;
  color: var(--bp-navy) !important;
}

/* ---------------------------------------------------------------
   10. SECTION LABELS / EYEBROWS — padronização
--------------------------------------------------------------- */
/* Tags/labels pequenas acima dos títulos (ex: "GESTÃO COMPLETA · RH & SST") */
.elementor-widget-text-editor span[style*="color: rgb(196, 162, 103)"],
.elementor-widget-heading .elementor-heading-title[style*="color: rgb(196, 162, 103)"] {
  letter-spacing: 1.5px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
}

/* Linha decorativa dourada ao lado de eyebrows */
.elementor-widget-divider .elementor-divider-separator {
  border-color: var(--bp-gold) !important;
  border-width: var(--bp-gold-line) !important;
}

/* ---------------------------------------------------------------
   11. LOGOS DE PARCEIROS — grayscale uniforme com hover colorido
--------------------------------------------------------------- */
.elementor-widget-image-carousel .swiper-slide img,
.elementor-widget-image-carousel img {
  filter: grayscale(100%) opacity(0.55) !important;
  transition: filter 0.25s ease !important;
}
.elementor-widget-image-carousel .swiper-slide:hover img {
  filter: grayscale(0%) opacity(1) !important;
}

/* ---------------------------------------------------------------
   12. TODAS AS LINHAS DOURADAS DO SITE — espessura 3px uniforme
--------------------------------------------------------------- */
.elementor-widget-divider .elementor-divider-separator {
  border-top-width: var(--bp-gold-line) !important;
}
hr.elementor-divider-separator {
  border-top-width: var(--bp-gold-line) !important;
}

/* ---------------------------------------------------------------
   13. RODAPÉ — harmonização
--------------------------------------------------------------- */
.elementor-location-footer,
footer.elementor-location-footer {
  background: var(--bp-navy) !important;
  border-top: var(--bp-gold-line) solid rgba(196,162,103,0.5) !important;
}
.elementor-location-footer *,
footer.elementor-location-footer * {
  color: rgba(255,255,255,0.70) !important;
}
.elementor-location-footer a:hover,
footer.elementor-location-footer a:hover {
  color: var(--bp-gold) !important;
}

/* ---------------------------------------------------------------
   14. SCROLLBAR PERSONALIZADA (toque premium)
--------------------------------------------------------------- */
::-webkit-scrollbar { width: 5px; }
::-webkit-scrollbar-track { background: #f0f2f8; }
::-webkit-scrollbar-thumb { background: var(--bp-gold); border-radius: 10px; }
::-webkit-scrollbar-thumb:hover { background: var(--bp-navy); }

/* ---------------------------------------------------------------
   15. RESPONSIVIDADE — mobile harmonizado
--------------------------------------------------------------- */
@media (max-width: 768px) {
  :root {
    --bp-side: 20px;
    --bp-section-pad: 60px 0;
  }
  .elementor-element-6d1b1bc6,
  .elementor-element-510910f,
  .elementor-element-6ef2a98a,
  .elementor-element-dep2026,
  .elementor-element-trein2026,
  }

/* =============================================================
   FAQ NUMBERING - Numerar perguntas da seção Dúvidas Frequentes
   ============================================================= */
.bfaq-list {
  counter-reset: faq-counter;
}

.bfaq-item {
  counter-increment: faq-counter;
}

.bfaq-item > button > span::before {
  content: counter(faq-counter) ". ";
}

/* =============================================================
   ACESSIBILIDADE — CORREÇÕES DE CONTRASTE (WCAG AA)
   Todos os ajustes abaixo garantem ratio ≥ 4.5:1 (texto normal)
   ou ≥ 3:1 (texto grande ≥ 18 px / bold ≥ 14 px)
   ============================================================= */

/* 1. Texto quase invisível: rgba branco sobre fundo branco
      (.bfaq-cta-text span herdava rgba(255,255,255,0.7))          */
.bfaq-cta-text span {
  color: #4B5563 !important;
}

/* 2. Parágrafo com cor inline #dce8ff sobre fundo branco
      (Elementor element c4ceb40 — subtítulo de seção)             */
.elementor-element-c4ceb40 p {
  color: #374151 !important;
}

/* 3. Botões Elementor: span interno com branco sobre dourado/verde
      Fale Conosco (ouro) → ratio 2.35 | WhatsApp (verde) → 1.98  */
.elementor-button .elementor-button-content-wrapper,
.elementor-button .elementor-button-text,
.elementor-button span {
  color: inherit !important;
}
/* Força cor escura nos botões dourados */
a.elementor-button[style*="rgb(201"],
a.elementor-button[style*="#C4A2"],
a.elementor-button[style*="#c4a2"],
a.elementor-button[style*="rgb(37, 211"],
a.elementor-button[style*="rgb(37,211"] {
  color: #0D1B2A !important;
}

/* 4. Texto dourado grande em seções brancas (.g highlights)
      S-2240, Triangulação, FAP etc. — ratio 2.41 → abaixo de 3:1 */
.g,
.elementor-heading-title .g {
  color: #8B6914 !important;
}

/* 5. Tags de parceiros e seção "Clientes & Parceiros"
      gold #C4A267 sobre #F0F5FA (pale blue) → ratio 2.2           */
.bfaq-tag,
.bsst-tag,
.bseg-tag {
  color: #7A5800 !important;
  border-color: rgba(122, 88, 0, 0.4) !important;
}

/* 6. Separator decorativo "✦ SAÚDE OCUPACIONAL" — gold on white  */
.elementor-element-d9437e5 p {
  color: #8B6914 !important;
  border-color: rgba(139, 105, 20, 0.4) !important;
}

/* 7. .bsst-separator-label "Segurança & Conformidade"
      slate-400 rgb(148,163,184) sobre branco → ratio 2.56          */
.bsst-separator-label {
  color: #4B5563 !important;
}

/* 8. Footer security badges — slate-500 sobre fundo escuro
      rgb(100,116,139) em rgba(255,255,255,0.05) on dark → 3.67    */
.bplan-security-badges span,
.bfoot-security span {
  color: #CBD5E1 !important;
}

/* 9. Links "Leia mais" escuros sobre fundo dourado
      rgb(130,95,30) sobre rgb(201,164,92) → ratio 2.48             */
.elementor-post__read-more {
  color: #0D1B2A !important;
}

/* 10. Tags pequenas no ticker/ticker-bar — gold on cream
       rgb(154,117,48) em rgb(253,243,224) → ratio 3.84 < 4.5       */
.bsst-tags span,
.bsst-badge {
  color: #7A5800 !important;
}

/* =============================================================
   CONTRASTE BOTÕES — Texto escuro sobre fundos claros
   Fale Conosco (dourado) e WhatsApp (verde) tinham branco → 2.35:1
   ============================================================= */

/* Fale Conosco e Leia Mais: texto escuro sobre dourado */
.elementor-element-5f0fd8f .elementor-button,
header .elementor-button {
  color: #0D1B2A !important;
}
.elementor-element-5f0fd8f .elementor-button *,
header .elementor-button * {
  color: #0D1B2A !important;
}
.elementor-element-5f0fd8f .elementor-button:hover,
header .elementor-button:hover {
  color: #0D1B2A !important;
}

/* WhatsApp: texto escuro sobre verde (#25D366 claro) */
.elementor-element-7f0495c9 .elementor-button,
.elementor-element-7f0495c9 .elementor-button * {
  color: #0D1B2A !important;
}
.elementor-element-7f0495c9 .elementor-button:hover,
.elementor-element-7f0495c9 .elementor-button:hover * {
  color: #0D1B2A !important;
}

/* Leia Mais em posts: texto escuro sobre dourado */
.elementor-post__read-more {
  color: #0D1B2A !important;
  font-weight: 600;
}

/* =============================================================
   CONTRASTE BOTÕES — Alta Especificidade (supera animation-float)
   Regra "a.elementor-button.elementor-animation-float span" = 0,3,1
   Nossas regras precisam de especificidade ≥ 0,4,1
   ============================================================= */

/* Fale Conosco — text dark on gold (high specificity) */
.elementor-element-5f0fd8f a.elementor-button.elementor-animation-float,
.elementor-element-5f0fd8f a.elementor-button.elementor-animation-float span,
.elementor-element-5f0fd8f a.elementor-button.elementor-animation-float .elementor-button-content-wrapper,
.elementor-element-5f0fd8f a.elementor-button.elementor-animation-float .elementor-button-text {
  color: #0D1B2A !important;
}

/* WhatsApp — text dark on green (high specificity) */
body .elementor-element-7f0495c9 a.elementor-button.elementor-animation-float,
body .elementor-element-7f0495c9 a.elementor-button.elementor-animation-float span,
body .elementor-element-7f0495c9 a.elementor-button.elementor-animation-float .elementor-button-content-wrapper,
body .elementor-element-7f0495c9 a.elementor-button.elementor-animation-float .elementor-button-text {
  color: #0D1B2A !important;
}

/* Generic: all animated float buttons on gold background */
.elementor-button.elementor-animation-float[style*="background-color: rgb(201"],
.elementor-button.elementor-animation-float[style*="background-color:#C4A2"],
.elementor-button.elementor-animation-float[style*="background-color: rgb(37"] {
  color: #0D1B2A !important;
}
/* Leia Mais btn (6d10ffd) — dark text on gold */
.elementor-element-6d10ffd a.elementor-button.elementor-animation-float,
.elementor-element-6d10ffd a.elementor-button.elementor-animation-float span,
.elementor-element-6d10ffd a.elementor-button.elementor-animation-float .elementor-button-content-wrapper {
  color: #0D1B2A !important;
}

/* ===== wpcode 10477 | BPlan - Fix Botoes Dourados ===== */
/* BPlan - Fix Botoes Dourados */
a.bptrein-btn, .bptrein-btn, a.bptrein-btn span, .bptrein-btn span, a.bptrein-btn *, .bptrein-btn * { color: #14202E !important; background-color: #C4A267 !important; border: 1.5px solid #14202E !important; }
a.bpdep-btn, .bpdep-btn, a.bpdep-btn *, .bpdep-btn * { color: #14202E !important; background-color: #C4A267 !important; border: 1.5px solid #14202E !important; }
a.bpctaclean-btn-primary, .bpctaclean-btn-primary, a.bpctaclean-btn-primary *, .bpctaclean-btn-primary * { color: #14202E !important; background-color: #C4A267 !important; border: 1.5px solid #14202E !important; }

/* HOME - Títulos em widgets HTML customizados */
.bpind-inner h1,
.bpind-inner h2,
.bpind-inner h3 { color: #14202E !important; }

.bptrein-head,
.bptrein-left h2 { color: #14202E !important; }

/* HOME - H3 nos cards de treinamento */
.bptrein-card h2,
.bptrein-card h3,
.bptrein-card h4 { color: #14202E !important; }

/* GLOBAL - Posts Elementor title (blog cards, unidades) */
.elementor-post__title,
.elementor-post__title a,
.elementor-post__title * { color: #14202E !important; }
/* Blog post title override */
.elementor-posts-container .elementor-post__title,
.elementor-posts-container h3.elementor-post__title,
.elementor-posts-container .elementor-post__title a { color: #14202E !important; }

/* ===== wpcode 9540 | Bplan Color Fix — Padrão de Cores Oficial ===== */
/* ============================================================
   BPLAN COLOR FIX — Padrão oficial Bplan
   Azul marinho: var(--bp-navy-600) | Dourado: var(--bp-gold-deep) | Branco: #FFFFFF
   Fundo claro: var(--bp-surface) | Texto escuro: var(--bp-navy-600)
   ============================================================ */

/* --- Corrige variável Elementor dourado incorreto (var(--bp-gold) → var(--bp-gold-deep)) --- */
.elementor-kit-7980,
body,
:root {
  --e-global-color-91896ba: var(--bp-gold-deep) !important;
}

/* --- Header: botão "Fale Conosco" com dourado correto e texto branco --- */
.elementor-element-5f0fd8f .elementor-button,
header .elementor-button {
  background-color: var(--bp-gold-deep) !important;
  color: #FFFFFF !important;
  border-color: var(--bp-gold-deep) !important;
  font-weight: 700 !important;
}

.elementor-element-5f0fd8f .elementor-button:hover,
header .elementor-button:hover {
  background-color: #a87820 !important;
  color: #FFFFFF !important;
  border-color: #a87820 !important;
}

/* --- Botões .btn-gold: texto branco, sem underline --- */
a.btn-gold,
.btn-gold,
button.btn-gold {
  background-color: var(--bp-gold-deep) !important;
  color: var(--bp-navy-700) !important;
  text-decoration: none !important;
  border: none !important;
}

a.btn-gold:hover,
.btn-gold:hover {
  background-color: #a87820 !important;
  color: var(--bp-navy-700) !important;
}

/* --- Botão WhatsApp outline: borda e texto brancos --- */
a.btn-outline {
  color: var(--bp-navy-700) !important;
  border: 2px solid var(--bp-navy-700) !important;
  background: transparent !important;
  text-decoration: none !important;
}

/* --- Hero: gradiente azul marinho --- */
section.bplan-hero {
  background: linear-gradient(135deg, var(--bp-navy-600) 0%, #0D1E3A 100%) !important;
}

/* --- Badges dourados --- */
.bplan-badge,
.bplan-alert-badge {
  background-color: var(--bp-gold-deep) !important;
  color: #FFFFFF !important;
}

/* --- Títulos no hero: branco --- */
.bplan-hero h1,
.bplan-hero h2,
.bplan-hero-content h1,
.bplan-hero-content h2 {
  color: #FFFFFF !important;
}

/* --- Texto hero: alto contraste --- */
.bplan-hero p,
.bplan-hero-content p,
.bplan-hero-content li {
  color: rgba(255,255,255,0.92) !important;
}

/* --- Seção credibilidade: números dourados --- */
section.bplan-credibility {
  background-color: #FFFFFF !important;
}

/* --- Seção serviços: fundo cinza claro --- */
section.bplan-services {
  background-color: var(--bp-surface) !important;
}

section.bplan-services h2 {
  color: var(--bp-navy-600) !important;
}

/* --- Cards brancos com sombra sutil --- */
.bplan-card {
  background-color: #FFFFFF !important;
  border: 1px solid var(--bp-line) !important;
  border-radius: 12px !important;
  box-shadow: 0 2px 12px rgba(27,42,74,0.06) !important;
}

.bplan-card h3 { color: var(--bp-navy-600) !important; }
.bplan-card p { color: var(--bp-ink-600) !important; }
.bplan-card-icon { background-color: #FFF3E0 !important; }

/* --- Seção "Por que": fundo levemente cinza --- */
section.bplan-why {
  background-color: var(--bp-surface) !important;
}

section.bplan-why h2 { color: var(--bp-navy-600) !important; }
.bplan-why li, .bplan-why-list li { color: var(--bp-slate-700) !important; }

/* --- Seção alerta NR-1: azul escuro --- */
section.bplan-alert {
  background: linear-gradient(135deg, var(--bp-navy-600) 0%, #0D1E3A 100%) !important;
}

.bplan-alert h2, .bplan-alert h3, .bplan-alert p {
  color: #FFFFFF !important;
}

/* --- Seção contato: fundo cinza claro --- */
section.bplan-contact-section {
  background-color: var(--bp-surface) !important;
}

section.bplan-contact-section h2 { color: var(--bp-navy-600) !important; }

/* --- Formulário de contato: branco com sombra --- */
.bplan-main-form {
  background-color: #FFFFFF !important;
  border-radius: 16px !important;
  box-shadow: 0 4px 20px rgba(27,42,74,0.08) !important;
}

.bplan-main-form input,
.bplan-main-form select,
.bplan-main-form textarea {
  border: 1.5px solid var(--bp-line-strong) !important;
  color: var(--bp-navy-600) !important;
  border-radius: 8px !important;
  background-color: var(--bp-surface) !important;
}

.bplan-main-form input:focus,
.bplan-main-form select:focus,
.bplan-main-form textarea:focus {
  border-color: var(--bp-gold-deep) !important;
  box-shadow: 0 0 0 3px rgba(201,146,42,0.15) !important;
}

/* --- Botões de mapa/waze --- */
a[href*="google.com/maps"],
a[href*="waze.com"] {
  background-color: var(--bp-gold-deep) !important;
  color: #FFFFFF !important;
  text-decoration: none !important;
  border-color: var(--bp-gold-deep) !important;
}

/* --- FAQ: fundo branco --- */
section.bplan-faq {
  background-color: #FFFFFF !important;
}

section.bplan-faq h2 { color: var(--bp-navy-600) !important; }

/* --- CTA Final: azul escuro sólido --- */
section.bplan-cta-final {
  background-color: var(--bp-navy-600) !important;
}

section.bplan-cta-final h2 { color: #FFFFFF !important; }
section.bplan-cta-final p { color: rgba(255,255,255,0.85) !important; }

/* --- Corrige herança de link do Astra em botões dourados --- */
.entry-content a.btn-gold, .bplan-lapa-page a.btn-gold, article a.btn-gold {
  color: var(--bp-navy-700) !important;
  text-decoration: none !important;
}

/* --- Remove padding branco acima do hero --- */
article.page,
article.post,
article[id*="post-"] {
  padding-top: 0 !important;
}

.ast-page-builder-template .entry-content {
  padding: 0 !important;
  margin: 0 !important;
}

/* --- Footer: azul escuro elegante --- */
footer.site-footer {
  background-color: #0D1E3A !important;
  color: rgba(255,255,255,0.82) !important;
}

.site-footer a {
  color: rgba(255,255,255,0.75) !important;
  text-decoration: none !important;
}

.site-footer a:hover {
  color: var(--bp-gold-deep) !important;
}

/* === CORREÇÕES ADICIONAIS - Alta Especificidade === */

/* --- H1/H2 no hero: branco com especificidade alta para vencer global CSS --- */
section.bplan-hero h1,
section.bplan-hero h2,
section.bplan-hero h3,
.bplan-hero .entry-content h1,
.bplan-hero .entry-content h2,
body .bplan-hero h1,
body .bplan-hero h2,
body section.bplan-hero h1,
body section.bplan-hero h2 {
  color: #FFFFFF !important;
}

/* --- Span dentro do H1 do hero (SST na Lapa) --- */
section.bplan-hero h1 span,
body section.bplan-hero h1 span {
  color: var(--bp-gold-deep) !important;
}

/* --- Título do formulário hero --- */
section.bplan-hero h3,
.bplan-hero-form h2,
.bplan-hero-form h3,
body .bplan-hero-form h2,
body .bplan-hero-form h3 {
  color: #FFFFFF !important;
}

/* --- Título "Proposta grátis em 24h" --- */
body .bplan-hero h2,
body .bplan-hero-form h2 {
  color: #FFFFFF !important;
}

/* --- Seção alerta: títulos brancos com alta especificidade --- */
body section.bplan-alert h2,
body section.bplan-alert h3,
body section.bplan-alert h4 {
  color: #FFFFFF !important;
}

/* --- CTA final: títulos brancos com alta especificidade --- */
body section.bplan-cta-final h2,
body section.bplan-cta-final h3 {
  color: #FFFFFF !important;
}

/* --- Parágrafos no hero: alta especificidade --- */
body section.bplan-hero p,
body .bplan-hero-content p,
body section.bplan-hero li {
  color: rgba(255,255,255,0.92) !important;
}

/* --- Parágrafos no alerta: alta especificidade --- */
body section.bplan-alert p {
  color: rgba(255,255,255,0.9) !important;
}

/* --- Parágrafos no CTA final: alta especificidade --- */
body section.bplan-cta-final p {
  color: rgba(255,255,255,0.85) !important;
}


/* --- Botões mapa/waze: alta especificidade para vencer Elementor --- */
body .bplan-mapa-link a[href*="google.com/maps"],
body .bplan-mapa-link a[href*="waze.com"],
.elementor-5421 a[href*="google.com/maps"],
.elementor-5421 a[href*="waze.com"],
.single-unidade a[href*="google.com/maps"],
.single-unidade a[href*="waze.com"] {
  background-color: var(--bp-navy-600) !important;
  color: #FFFFFF !important;
  text-decoration: none !important;
  border-radius: 8px !important;
  font-weight: 700 !important;
  opacity: 1 !important;
}

body .bplan-mapa-link a[href*="google.com/maps"]:hover,
body .bplan-mapa-link a[href*="waze.com"]:hover,
.single-unidade a[href*="google.com/maps"]:hover,
.single-unidade a[href*="waze.com"]:hover {
  background-color: var(--bp-gold-deep) !important;
  color: #FFFFFF !important;
  opacity: 1 !important;
}

/* --- Google Reviews: remover fundo branco --- */
.single-unidade img[src*="Google-Reviews"],
.single-unidade img[alt*="Google"],
.elementor-5421 img[src*="Google-Reviews"],
.elementor-5421 img[alt*="Google"] {
  background: transparent !important;
}


/* --- Google Reviews: remover box-shadow da imagem --- */
.single-unidade img[src*="Google-Reviews"],
.elementor-5421 img[src*="Google-Reviews"],
.single-unidade .elementor-element-87ef0c6 img,
img.wp-image-6903 {
  box-shadow: none !important;
  border: none !important;
}

/* ============================================================
   CORREÇÕES DE CONTRASTE — WCAG 2.1 AA
   Auditado em 22/05/2026 | Ratio mínimo: 4.5:1 (normal) / 3:1 (grande)
   ============================================================ */

/* --- 1. Botão secundário do Hero: texto escuro em fundo transparente/escuro ---
   Problema: color:var(--bp-navy-700) sobre fundo hero gradient var(--bp-navy-900) → ratio 1.1:1
   Solução:  color:#FFFFFF → ratio 18.1:1                                      */
.bp-srv-hero-ctas a.secondary {
  color: #FFFFFF !important;
}

/* --- 2. Skip-link de acessibilidade: azul Astra var(--bp-link) em body bg var(--bp-surface) ---
   Problema: ratio 4.45:1 (abaixo dos 4.5:1 exigidos)
   Solução:  azul mais escuro #0052a3 → ratio 6.3:1                            */
a.skip-link,
a.skip-link:focus {
  color: #0052a3 !important;
}

/* --- 3. Textos semi-transparentes em fundos escuros — garante legibilidade ---
   Aumenta a opacidade de variações de rgba(255,255,255,x) usadas
   em seções dark do Elementor Kit e componentes globais                        */
.elementor-kit-7980 [class*="elementor-heading-title"],
.elementor-kit-7980 p {
  /* Previne herança de opacidade baixa em containers com overlay */
}

/* --- 4. Texto de subtítulos em fundos coloridos (badge/tag accent) ---
   .bp-srv-hero .bp-hero-badge já tem contraste 6.83:1 — OK, sem alteração      */

/* --- 5. Garante contraste em textos de descrição de categoria (p em fundo claro) ---
   .bp-srv-cat-title p usa color:var(--bp-ink-600) em fundo #fff → 7.46:1 — OK           */

/* --- 6. Links globais — garante que links em body bg var(--bp-surface) passem WCAG AA --- */
body a:not([class]),
.entry-content a,
.ast-article-post a:not(.button) {
  color: #0052a3;
}
body a:not([class]):hover,
.entry-content a:hover {
  color: #003d7a;
}

/* ===== wpcode 9372 | Bplan - Padronização Global de Fontes e Cores ===== */
/* =====================================================
 *    BPLAN - PADRONIZAO GLOBAL DE FONTES E CORES
 *    Padro: Fonte = Poppins | Azul escuro = #1c244b | Cinza texto = #808285 | Dourado = #c4a267
 *    ===================================================== */

/* 1. FONTE GLOBAL - Substituir -apple-system, Roboto, Montserrat, Rubik, Arial por Poppins */
body,
body *:not(i):not(.dashicons):not([class*="fa-"]):not([class*="font-icon"]) {
	  font-family: 'Poppins', sans-serif !important;
}

/* 2. TEXTOS PADRO DO CORPO */
body p,
body li,
body td,
body th,
.entry-content p,
.elementor-widget-theme-post-content p,
.wp-block-paragraph {
	  font-family: 'Poppins', sans-serif !important;
	  color: #1c244b !important;
	  font-size: 16px;
	  font-weight: 400;
	  line-height: 1.7;
}

/* 3. HEADINGS - Padronizar hierarquia */
h1, h2, h3, h4, h5, h6,
.entry-content h1, .entry-content h2, .entry-content h3,
.entry-content h4, .entry-content h5, .entry-content h6,
.elementor-widget-theme-post-content h1,
.elementor-widget-theme-post-content h2,
.elementor-widget-theme-post-content h3,
.elementor-widget-theme-post-content h4 {
	  font-family: 'Poppins', sans-serif !important;
	  color: #1c244b !important;
	  font-weight: 600 !important;
	  line-height: 1.25;
}

/* 4. TTULOS DE POSTS DO BLOG */
.elementor-post__title,
.elementor-post__title a,
.elementor-post__title a:hover {
	  font-family: 'Poppins', sans-serif !important;
	  color: #1c244b !important;
	  font-weight: 600 !important;
}

/* 5. LINKS "LEIA MAIS" / READ MORE */
.elementor-post__read-more,
.elementor-post__read-more:hover {
	  font-family: 'Poppins', sans-serif !important;
	  color: #c4a267 !important;
	  font-weight: 500 !important;
}

/* 6. CONTADORES (Indicadores de Sucesso) */
.elementor-counter-number-wrapper,
.elementor-counter-number,
.elementor-counter-number-prefix,
.elementor-counter-number-suffix {
	  font-family: 'Poppins', sans-serif !important;
}

/* 7. ITENS DE MENU */
.elementor-nav-menu a,
.elementor-nav-menu .elementor-item,
nav a,
.menu-link {
	  font-family: 'Poppins', sans-serif !important;
}

/* 8. LISTA DE CONES */
.elementor-icon-list-text {
	  font-family: 'Poppins', sans-serif !important;
}

/* 9. WIDGET WHATSAPP / PIPERUN */
.piperun-whatsapp-accept-text,
[class*="piperun"],
[class*="whatsapp-widget"] {
	  font-family: 'Poppins', sans-serif !important;
}

/* 10. BLOG - Artigos internos: body text mais legvel */
.single-post .entry-content p,
.single-post .elementor-widget-theme-post-content p,
.single .entry-content p {
	  font-family: 'Poppins', sans-serif !important;
	  font-size: 16px !important;
	  font-weight: 400 !important;
	  color: #1c244b !important;
	  line-height: 1.75 !important;
}

/* 11. BLOG - H2 dos artigos com cor correta */
.single-post .entry-content h2,
.single .entry-content h2,
.elementor-widget-theme-post-content h2 {
	  color: #1c244b !important;
	  font-weight: 700 !important;
}

/* 12. BLOG - H3 dos artigos */
.single-post .entry-content h3,
.single .entry-content h3,
.elementor-widget-theme-post-content h3 {
	  color: #1c244b !important;
	  font-weight: 600 !important;
}

/* 13. LINKS DENTRO DE CONTEDO */
.entry-content a,
.elementor-widget-theme-post-content a {
	  font-family: 'Poppins', sans-serif !important;
	  color: #8a5e0a !important;
	  font-weight: 500;
}
.entry-content a:hover,
.elementor-widget-theme-post-content a:hover {
	  color: #1c244b !important;
}

/* 14. META INFO (data, autor) do blog */
.elementor-post-info,
.elementor-post-info__item,
.elementor-post-info .elementor-icon-list-text,
time {
	  font-family: 'Poppins', sans-serif !important;
	  color: #808285 !important;
}

/* 15. FOOTER - Padronizar */
footer, footer *:not(i):not(.dashicons) {
	  font-family: 'Poppins', sans-serif !important;
}

/* 16. STRONG / NEGRITO nos artigos */
.entry-content strong,
.elementor-widget-theme-post-content strong {
	  font-family: 'Poppins', sans-serif !important;
	  font-weight: 700 !important;
	  color: #1c244b !important;
}

/* 17. CARDS PORTFLIO - hover efeito Bplan */
.bplan-portfolio-card:hover {
	  transform: translateY(-4px);
	  box-shadow: 0 12px 40px rgba(28, 36, 75, 0.18);
	  transition: all 0.3s ease;
}

/* 18. GARANTIR que textos em fundo escuro fiquem brancos */
[style*="background-color: rgb(20, 32, 46)"] *,
[style*="background-color:#14202e"] *,
.elementor-section.elementor-section-boxed [style*="background"] p {
	  font-family: 'Poppins', sans-serif !important;
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}

/* Override: botoes Elementor preservam sua propria cor */
.entry-content .elementor-button,
.entry-content a.elementor-button,
.elementor-widget-button .elementor-button,
.elementor-widget-button a.elementor-button {
  color: inherit !important;
}

/* Corrigir cor do botao padrao Elementor */
.elementor-button.elementor-button-link,
.elementor-button {
  color: var(--e-global-color-secondary, #ffffff) !important;
}

.elementor-button[style*="background-color: #c4a267"],
.elementor-button[style*="background-color: rgb(201"],
[style*="background-color: #C9922A"] .elementor-button-text {
  color: #1b2a4a !important;
}


/* =====================================================
 * BPLAN - TIPOGRAFIA RESPONSIVA PADRONIZADA
 * Sistema: H1=clamp(32px,5vw,48px) | H2=clamp(26px,3.5vw,38px) | H3=clamp(20px,2.5vw,28px)
 * Alinhamento: centrado em seções de apresentação
 * ===================================================== */

/* SISTEMA TIPOGRÁFICO GLOBAL RESPONSIVO */

/* H1 - Título principal hero */
.elementor-widget-heading h1,
.elementor-heading-title.elementor-size-default[class*="elementor-widget"] h1,
h1.elementor-heading-title {
  font-size: clamp(32px, 4.5vw, 48px) !important;
  font-weight: 700 !important;
  line-height: 1.15 !important;
}

/* H2 - Títulos de seção */
.elementor-widget-heading h2,
h2.elementor-heading-title,
.elementor-heading-title h2 {
  font-size: clamp(24px, 3vw, 38px) !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
}

/* H3 - Sub-títulos */
.elementor-widget-heading h3,
h3.elementor-heading-title,
.elementor-heading-title h3 {
  font-size: clamp(18px, 2.2vw, 28px) !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
}

/* H4 - Títulos de card */
.elementor-widget-heading h4,
h4.elementor-heading-title,
.elementor-heading-title h4 {
  font-size: clamp(15px, 1.6vw, 20px) !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
}

/* Seção Serviços SST - título grande demais, normalizar */
[data-id="6d1b1bc6"] .elementor-heading-title,
[data-id="6d1b1bc6"] h2 {
  font-size: clamp(26px, 3vw, 38px) !important;
}

/* Seção Clientes/Parceiros - normalizar */
[data-id="13248561"] .elementor-heading-title,
[data-id="13248561"] h2 {
  font-size: clamp(24px, 3vw, 36px) !important;
}

/* Seção Blog - normalizar */
[data-id="9d8f8ab"] .elementor-heading-title,
[data-id="9d8f8ab"] h2 {
  font-size: clamp(24px, 3vw, 36px) !important;
}

/* Cobertura Nacional - H3 muito grande */
[data-id="6ef2a98a"] .elementor-heading-title,
[data-id="6ef2a98a"] h3,
[data-id="44b7064f"] .elementor-heading-title,
[data-id="44b7064f"] h3 {
  font-size: clamp(22px, 2.8vw, 34px) !important;
  font-weight: 700 !important;
}

/* NR-1 Hero - H2 padronizado */
[data-id="nr1hero2026"] .elementor-heading-title,
[data-id="nr1hero2026"] h2,
.bpnr1-title {
  font-size: clamp(28px, 3.5vw, 42px) !important;
  font-weight: 700 !important;
  line-height: 1.18 !important;
}

/* Treinamentos - H2 padronizado */
[data-id="trein2026"] > .elementor-container > .elementor-column > .elementor-widget-wrap .elementor-heading-title {
  font-size: clamp(22px, 2.8vw, 34px) !important;
}

/* CTA Final - Título */
[data-id="ctafinal2026"] .elementor-heading-title,
[data-id="ctafwgt2026"] .elementor-heading-title {
  font-size: clamp(22px, 2.8vw, 34px) !important;
  font-weight: 700 !important;
}

/* ALINHAMENTOS - Garantir simetria por seção */

/* Seções centradas: Indicadores, Serviços, Clientes, Blog, Depoimentos */
[data-id="b2848a9"] .elementor-widget-container,
[data-id="6d1b1bc6"] > .elementor-container > .elementor-column > .elementor-widget-wrap > .elementor-widget-heading .elementor-widget-container,
[data-id="13248561"] .elementor-widget-container,
[data-id="dep2026"] > .elementor-container > .elementor-column > .elementor-widget-wrap > .elementor-widget-heading .elementor-widget-container,
[data-id="9d8f8ab"] > .elementor-container > .elementor-column > .elementor-widget-wrap > .elementor-widget-heading .elementor-widget-container {
  text-align: center !important;
}

/* Textos body das seções centradas */
[data-id="b2848a9"] .elementor-widget-text-editor .elementor-widget-container,
[data-id="b2848a9"] p {
  text-align: center !important;
}

/* Hero - alinhamento à esquerda */
[data-id="7a54b810"] .elementor-widget-heading .elementor-widget-container,
[data-id="7a54b810"] .elementor-widget-text-editor .elementor-widget-container {
  text-align: left !important;
}

/* NR-1 - alinhamento à esquerda */
[data-id="nr1hero2026"] .elementor-widget-container {
  text-align: left !important;
}

/* CTA Final - centralizado */
[data-id="ctafinal2026"] .elementor-widget-container,
[data-id="ctafwgt2026"] .elementor-widget-container {
  text-align: center !important;
}

/* MOBILE - Tamanhos mínimos garantidos */
@media (max-width: 767px) {
  .elementor-widget-heading h1,
  h1.elementor-heading-title {
    font-size: clamp(28px, 8vw, 36px) !important;
    line-height: 1.2 !important;
  }

  .elementor-widget-heading h2,
  h2.elementor-heading-title {
    font-size: clamp(22px, 6.5vw, 30px) !important;
    line-height: 1.25 !important;
  }

  .elementor-widget-heading h3,
  h3.elementor-heading-title {
    font-size: clamp(18px, 5.5vw, 24px) !important;
    line-height: 1.3 !important;
  }

  .elementor-widget-heading h4,
  h4.elementor-heading-title {
    font-size: clamp(15px, 4.5vw, 18px) !important;
  }

  /* Hero mobile - centralizar */
  [data-id="7a54b810"] .elementor-widget-heading .elementor-widget-container,
  [data-id="7a54b810"] .elementor-widget-text-editor .elementor-widget-container {
    text-align: center !important;
  }

  /* NR-1 mobile - centralizar */
  [data-id="nr1hero2026"] .elementor-widget-container {
    text-align: center !important;
  }

  /* Padding de seções no mobile */
  [data-id="b2848a9"],
  [data-id="6d1b1bc6"],
  [data-id="trein2026"],
  [data-id="nr1hero2026"],
  [data-id="6ef2a98a"],
  [data-id="13248561"],
  [data-id="dep2026"],
  [data-id="ctafinal2026"],
  [data-id="9d8f8ab"] {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

/* TABLET */
@media (min-width: 768px) and (max-width: 1024px) {
  .elementor-widget-heading h2,
  h2.elementor-heading-title {
    font-size: clamp(22px, 4vw, 32px) !important;
  }

  .elementor-widget-heading h3,
  h3.elementor-heading-title {
    font-size: clamp(18px, 3vw, 24px) !important;
  }
}


/* =====================================================
 * BPLAN - CORREÇÃO DE PADDINGS EXCESSIVOS
 * ===================================================== */

/* Seção Clientes/Parceiros (13248561) - padding % muito alto em desktop */
[data-id="13248561"] > .e-con-inner {
  padding-top: 60px !important;
  padding-bottom: 60px !important;
}

/* Texto do subtítulo na seção Cobertura em capitalização errada - forçar lowercase */
[data-id="44b7064f"] .elementor-icon-box-description p {
  text-transform: none !important;
}

/* Simetria - limitar max-width dos textos em seções full-width */
[data-id="6ef2a98a"] .elementor-icon-box-description {
  max-width: 700px !important;
  margin: 0 auto !important;
  text-align: center !important;
}

/* Hero section - left-align text column only (max-width via specific wrapper) */
[data-id="7a54b810"] > .e-con-inner > .elementor-element:first-child .elementor-widget-container {
  /* Natural left-align from flex layout */
}

/* Seção de serviços - limitar padding interno */
[data-id="6d1b1bc6"] > .e-con-inner {
  padding-top: 80px !important;
  padding-bottom: 80px !important;
}


/* =====================================================
 * BPLAN - CORREÇÕES FINAIS DE TEXTO E TIPOGRAFIA
 * ===================================================== */

/* Corrigir text-transform:capitalize no subtítulo da Cobertura Nacional (44b7064f) */
.elementor-element-44b7064f .elementor-icon-box-description,
.elementor-element-44b7064f .elementor-icon-box-description p {
  text-transform: none !important;
}

/* Garantir que títulos de seções centradas fiquem legíveis em mobile */
@media (max-width: 767px) {
  /* Cards de serviços - garantir que cards não fiquem muito estreitos */
  [data-id="6d1b1bc6"] [data-element_type="container"] {
    min-width: 0 !important;
  }

  /* Indicadores de Sucesso - grid responsivo no mobile */
  .bpind-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 16px !important;
  }

  /* NR-1 hero - padding lateral adequado no mobile */
  .bpnr1-hero {
    padding: 24px 20px 60px !important;
  }

  /* Depoimentos - padding reduzido no mobile */
  .bpdep {
    padding: 48px 16px !important;
  }

  /* CTA final - padding reduzido no mobile */
  .bpctaclean {
    padding: 48px 16px !important;
  }
}

/* ===== wpcode 9364 | Fix - Logo header tamanho tablet ===== */
/* Correo: logo do header muito pequeno em telas tablet (<=1024px) */
@media (max-width: 1024px) {
	.elementor-90 .elementor-element.elementor-element-d2b16d0 img {
		    width: 84% !important;
	}
}
	}
}

/* ===== wpcode 12849 | Bplan - Sistema bp2 (modelo de pagina de servico) ===== */
/* ============================================================
   BPLAN - SISTEMA bp2 (modelo de pagina de servico)
   Criado em 18/10/2026. Reversivel por toggle. Prioridade 95.
   Extraido de /seguranca-do-trabalho-servicos/, o melhor padrao
   do site. Camada global para que as paginas novas carreguem
   apenas markup. Depende dos tokens do snippet 12844.
   ============================================================ */
.bplan-container{max-width:1160px;margin:0 auto;padding:0 24px}
.bp2-hero{background:linear-gradient(135deg,var(--bp-navy-900) 0%,var(--bp-navy-700) 60%,var(--bp-navy-600) 100%);padding:90px 0 70px}
.bp2-hero h1{color:#fff;font-size:44px;font-weight:700;line-height:1.15;margin:0 0 18px}
.bp2-hero .sub{color:rgba(255,255,255,.85);font-size:17px;line-height:1.75;margin-bottom:32px;max-width:640px}
.bp2-badge{display:inline-block;background:rgba(196,162,103,.15);color:var(--bp-gold);padding:6px 18px;border-radius:20px;font-size:12px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;margin-bottom:18px;border:1px solid rgba(196,162,103,.3)}
.bp2-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:48px;padding-top:40px;border-top:1px solid rgba(255,255,255,.1)}
.bp2-stat-val{font-size:36px;font-weight:700;color:var(--bp-gold);line-height:1}
.bp2-stat-lbl{font-size:13px;color:rgba(255,255,255,.7);margin-top:6px}
.btn-wa{display:inline-flex;align-items:center;gap:8px;background:var(--bp-gold);color:var(--bp-navy-700)!important;padding:14px 28px;border-radius:6px;font-weight:700;font-size:15px;text-decoration:none;transition:background .2s}
.btn-wa:hover{background:var(--bp-gold-hover)}
.btn-tel{display:inline-flex;align-items:center;gap:8px;background:transparent;color:#fff!important;padding:13px 27px;border-radius:6px;font-weight:600;font-size:15px;text-decoration:none;border:2px solid rgba(255,255,255,.5);margin-left:12px;transition:all .2s}
.btn-tel:hover{background:rgba(255,255,255,.1);border-color:#fff}
.bp2-hero a.btn-wa,.bp2-hero a.btn-tel,.bp2-cta-final a.btn-wa{text-decoration:none!important}
.bp2-sec{padding:72px 0}
.bp2-sec-light{background:var(--bp-surface-2)}
.bp2-sec-white{background:#fff}
.bp2-sec-dark{background:var(--bp-navy-700)}
.bp2-h2{font-size:34px;font-weight:700;color:var(--bp-navy-700);margin:0 0 12px;line-height:1.2}
.bp2-h2.claro{color:#fff}
.bp2-divider{width:52px;height:3px;background:var(--bp-gold);border-radius:2px;margin:0 0 24px}
.bp2-lead{font-size:17px;color:var(--bp-ink-700);line-height:1.75;margin-bottom:20px}
.bp2-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px}
.bp2-card{background:#fff;border-radius:10px;padding:28px 22px;border:1px solid rgba(20,32,46,.08);box-shadow:0 2px 12px rgba(20,32,46,.05);transition:box-shadow .2s,transform .2s}
.bp2-card:hover{box-shadow:0 8px 28px rgba(20,32,46,.12);transform:translateY(-2px)}
.bp2-card-ico{width:48px;height:48px;background:var(--bp-surface-2);border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.bp2-card h3{font-size:17px;font-weight:600;color:var(--bp-navy-700);margin:0 0 8px}
.bp2-card p{font-size:14px;color:var(--bp-ink-700);line-height:1.65;margin:0}
.bp2-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:32px}
.bp2-step{text-align:center;padding:20px 16px}
.bp2-step-num{width:54px;height:54px;border-radius:50%;background:rgba(196,162,103,.12);border:2px solid var(--bp-gold);display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;color:var(--bp-gold);margin:0 auto 14px}
.bp2-step h3{font-size:16px;font-weight:600;color:#fff;margin:0 0 8px}
.bp2-step p{font-size:13px;color:rgba(255,255,255,.7);line-height:1.6;margin:0}
.bp2-list{list-style:none;padding:0;margin:0}
.bp2-list li{display:flex;align-items:flex-start;gap:12px;padding:10px 0;border-bottom:1px solid rgba(20,32,46,.06);font-size:15px;color:var(--bp-ink-700);line-height:1.6}
.bp2-list li:last-child{border:none}
.bp2-legis{background:var(--bp-surface-2);border-left:4px solid var(--bp-gold);border-radius:0 8px 8px 0;padding:18px 22px;margin:24px 0}
.bp2-legis .lbl{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--bp-gold);margin-bottom:6px}
.bp2-legis p{font-size:14px;color:var(--bp-navy-700);line-height:1.6;margin:0}
.bp2-faq-item{border-bottom:1px solid rgba(20,32,46,.08)}
.bp2-faq-q{width:100%;background:none;border:none;padding:18px 0;display:flex;justify-content:space-between;align-items:center;font-size:16px;font-weight:600;color:var(--bp-navy-700);cursor:pointer;text-align:left;gap:16px}
.bp2-faq-ico{flex-shrink:0;transition:transform .25s;color:var(--bp-gold);font-size:20px;font-weight:300;line-height:1}
.bp2-faq-item.aberto .bp2-faq-ico{transform:rotate(45deg)}
.bp2-faq-r{display:none;padding:0 24px 18px;font-size:15px;color:var(--bp-ink-700);line-height:1.7}
.bp2-faq-item.aberto .bp2-faq-r{display:block}
.bp2-cta-final{background:linear-gradient(135deg,var(--bp-navy-900) 0%,var(--bp-navy-700) 100%);padding:80px 0;text-align:center}
.bp2-cta-final h2{color:#fff;font-size:32px;font-weight:700;margin:0 0 14px}
.bp2-cta-final p{color:rgba(255,255,255,.78);font-size:16px;margin:0 0 32px;line-height:1.7}
.bp2-cta-trust{font-size:13px;color:rgba(255,255,255,.55);margin-top:20px}
@media(max-width:768px){.bp2-hero h1{font-size:28px}.bp2-cards{grid-template-columns:1fr}.bp2-steps{grid-template-columns:1fr 1fr}.bp2-stats{grid-template-columns:1fr}}
body .bp2-hero h1,body .bp2-sec-dark .bp2-h2,body .bp2-sec-dark h2,body .bp2-sec-dark h3,body .bp2-step h3,body .bp2-cta-final h2{color:#fff!important}
body .bp2-hero .sub,body .bp2-hero p,body .bp2-sec-dark p,body .bp2-sec-dark .bp2-lead,body .bp2-cta-final p{color:rgba(255,255,255,.85)!important}
body .bp2-step p{color:rgba(255,255,255,.78)!important}
body .bp2-cta-trust{color:rgba(255,255,255,.7)!important}
body .bp2-badge,body .bp2-legis .lbl{color:var(--bp-gold)!important}
body .bp2-sec-light .bp2-h2,body .bp2-sec-light h2,body .bp2-sec-white .bp2-h2,body .bp2-sec-white h2,body .bp2-card h3,body .bp2-legis p,body .bp2-faq-q{color:var(--bp-navy-700)!important}
body .bp2-sec-light .bp2-lead,body .bp2-sec-light p,body .bp2-sec-white .bp2-lead,body .bp2-sec-white p,body .bp2-card p,body .bp2-faq-r,body .bp2-list li{color:var(--bp-ink-700)!important}
body .btn-wa{color:var(--bp-navy-700)!important}
body .btn-tel{color:#fff!important}

/* ---- contraste com especificidade alta ----
   As paginas bp2 ficam dentro de .entry-content, e existem
   regras globais de titulo com !important que vencem seletor
   de classe simples. Estas reafirmam o branco no bloco escuro. */
html body .entry-content .bp2-hero h1,
html body .entry-content .bp2-sec-dark .bp2-h2,
html body .entry-content .bp2-sec-dark h2,
html body .entry-content .bp2-sec-dark h3,
html body .entry-content .bp2-step h3,
html body .entry-content .bp2-cta-final h2,
html body .bp2-hero h1,
html body .bp2-sec-dark .bp2-h2,
html body .bp2-sec-dark h2,
html body .bp2-sec-dark h3,
html body .bp2-step h3,
html body .bp2-cta-final h2{color:#fff!important}

html body .entry-content .bp2-badge,
html body .bp2-badge,
html body .entry-content .bp2-legis .lbl,
html body .bp2-legis .lbl,
html body .entry-content .bp2-stat-val,
html body .bp2-stat-val,
html body .entry-content .bp2-faq-ico,
html body .bp2-faq-ico,
html body .entry-content .bp2-step-num,
html body .bp2-step-num{color:var(--bp-gold)!important}

html body .entry-content .bp2-hero .sub,
html body .entry-content .bp2-sec-dark p,
html body .entry-content .bp2-cta-final p{color:rgba(255,255,255,.85)!important}
html body .entry-content .bp2-step p{color:rgba(255,255,255,.78)!important}
html body .entry-content .bp2-stat-lbl,
html body .entry-content .bp2-cta-trust{color:rgba(255,255,255,.7)!important}

html body .entry-content .bp2-sec-light .bp2-h2,
html body .entry-content .bp2-sec-white .bp2-h2,
html body .entry-content .bp2-card h3,
html body .entry-content .bp2-faq-q{color:var(--bp-navy-700)!important}
html body .entry-content .bp2-card p,
html body .entry-content .bp2-faq-r,
html body .entry-content .bp2-list li,
html body .entry-content .bp2-sec-light .bp2-lead,
html body .entry-content .bp2-sec-white .bp2-lead{color:var(--bp-ink-700)!important}
html body .entry-content .btn-wa{color:var(--bp-navy-700)!important}
html body .entry-content .btn-tel{color:#fff!important}

/* existe no site uma regra .bp2-badge.bp2-badge que repinta o
   selo de navy por supor fundo claro; aqui o fundo e dourado
   translucido sobre navy, entao o selo volta ao dourado */
html body .bp2-badge.bp2-badge.bp2-badge,
html body .entry-content .bp2-badge.bp2-badge.bp2-badge{color:var(--bp-gold)!important}

/* ===== wpcode 12844 | Bplan - Regua de design (tokens canonicos) ===== */
/* ============================================================
   BPLAN - REGUA DE DESIGN (tokens canonicos)
   Criado em 17/10/2026. Reversivel por toggle.

   O site carregava 21 blocos :root e quatro vocabularios de
   token concorrentes. Tokens com o mesmo nome tinham valores
   diferentes e quem vencia dependia da ordem de carga.

   Este snippet NAO cria estilo novo e nao toca em seletor
   nenhum. Ele so resolve as colisoes de nome e publica as
   escalas de tipografia e espacamento que faltavam.

   Fonte de verdade da cor: snippet 12785.
   Prioridade 99 para carregar depois dos blocos concorrentes.
   ============================================================ */

:root{

  /* ---- 1. COR. Reafirma a paleta canonica do snippet 12785 ---- */
  --bp-navy-900:#0D1B2A;
  --bp-navy-800:#0D1B2A;
  --bp-navy-700:#0D1B2A;
  --bp-navy-600:#1A2D4A;
  --bp-slate-700:#374151;
  --bp-indigo-700:#1C244B;
  --bp-indigo-900:#1C244B;
  --bp-gold:#C4A267;
  --bp-gold-2:#C4A267;
  --bp-gold-hover:#B8905A;
  --bp-gold-deep:#C9922A;
  --bp-gold-ink:#8A5E0A;
  --bp-gold-hi:#C4A267;
  --bp-ink-900:#1C244B;
  --bp-ink-700:#374151;
  --bp-ink-600:#374151;
  --bp-ink-500:#6B7280;
  --bp-ink-400:#94A3B8;
  --bp-white:#FFFFFF;
  --bp-surface:#F0F5FA;
  --bp-surface-2:#F0F5FA;
  --bp-line:#D7DEE8;
  --bp-line-strong:#D1D5DB;
  --bp-line-mid:#C9D2DE;
  --bp-amber:#F59E0B;
  --bp-wa:#25D366;
  --bp-link:#046BD2;
  --bp-link-hover:#045CB4;

  /* ---- 2. COLISOES RESOLVIDAS ----
     Cada linha abaixo tinha dois valores vivos no site. */

  /* --bp-text vinha como #1A1A2E e como #14202E */
  --bp-text:var(--bp-navy-700);
  /* --bp-muted vinha como #6B7A8D e como rgba(20,32,46,.55) */
  --bp-muted:var(--bp-ink-500);
  /* --bp-surface vinha como #F0F4F8 e como #F8FAFC */

  /* apelidos do bloco "DESIGN SYSTEM v2.0" */
  --bp-primary:var(--bp-navy-800);
  --bp-accent:var(--bp-gold);
  --bp-accent-hover:var(--bp-gold-hover);
  --bp-blue:var(--bp-link);

  /* apelidos do bloco "HARMONIZACAO" */
  --bp-navy:var(--bp-navy-900);
  --bp-navy2:var(--bp-navy-700);
  --bp-light:var(--bp-surface);
  --bp-light2:var(--bp-surface-2);
  /* EXCECAO mantida: dourado claro de gradiente, fora da paleta */
  --bp-gold-l:#C4A267;

  /* camada de compatibilidade --bplan-*, a remover na migracao */
  --bplan-navy:var(--bp-navy-700);
  --bplan-gold:var(--bp-gold);
  --bplan-white:var(--bp-white);
  --bplan-azul:var(--bp-navy-700);
  --bplan-azul-medio:var(--bp-navy-900);
  --bplan-azul-claro:var(--bp-link);
  --bplan-dourado:var(--bp-gold);
  --bplan-dourado-hov:var(--bp-gold-hover);
  --bplan-cinza-claro:var(--bp-surface-2);
  --bplan-cinza-texto:var(--bp-ink-700);
  --bplan-cinza-escuro:var(--bp-navy-700);

  /* ---- 3. TIPOGRAFIA (novo) ----
     Sete degraus. Substitui os 47 tamanhos medidos na home.
     Publicado aqui como token. A aplicacao nos seletores
     entra na etapa seguinte, com teste pagina a pagina. */
  --bp-font:'Poppins',sans-serif;
  --bp-fs-display:clamp(32px,4.5vw,48px);
  --bp-fs-1:clamp(26px,3.4vw,40px);
  --bp-fs-2:clamp(22px,2.8vw,32px);
  --bp-fs-3:clamp(18px,2.2vw,24px);
  --bp-fs-4:clamp(16px,1.8vw,20px);
  --bp-fs-body:16px;
  --bp-fs-small:14px;
  --bp-fs-micro:12px;
  --bp-lh-titulo:1.2;
  --bp-lh-texto:1.65;
  --bp-fw-titulo:700;
  --bp-fw-sub:600;
  --bp-fw-texto:400;

  /* ---- 4. ESPACAMENTO (novo) ----
     Seis degraus. Substitui os 49 valores de padding da home. */
  --bp-space-1:8px;
  --bp-space-2:16px;
  --bp-space-3:24px;
  --bp-space-4:32px;
  --bp-space-5:48px;
  --bp-space-6:80px;
  /* valores ja em uso, preservados para nao mover layout */
  --bp-section-pad:90px 0;
  --bp-max:1200px;
  --bp-side:94px;

  /* ---- 5. FORMA ---- */
  --bp-radius:12px;
  --bp-radius-sm:8px;
  --bp-shadow:0 4px 24px rgba(13,27,42,.10);
  --bp-shadow-hover:0 12px 40px rgba(13,27,42,.18);
  --bp-transition:.25s cubic-bezier(.4,0,.2,1);
  --bp-gold-line:3px;

  /* ---- 6. RITMO DE FUNDO (novo) ----
     Alternancia canonica das dobras, em ordem. */
  --bp-bg-1:var(--bp-white);
  --bp-bg-2:var(--bp-surface);
  --bp-bg-3:var(--bp-navy-700);

  /* ---- 7. CAMADAS (espelha o snippet 12651) ---- */
  --bp-z-header:300;
  --bp-z-flutuante:400;
  --bp-z-faixa:500;
  --bp-z-popup:600;
  --bp-z-aviso:700;
  --bp-z-consent:800;
}

/* ===== wpcode 12848 | Bplan - Harmonia do portal BPRH (paginas sem iframe) ===== */
/* ============================================================
   BPLAN - HARMONIA DO PORTAL BPRH (paginas sem iframe)
   Criado em 18/10/2026. Reversivel por toggle. Prioridade 100.

   A pagina /processo/ monta o mesmo portal BPRH direto no
   documento, sem iframe, e por isso nao e alcancada pelo
   snippet que veste o iframe de /vagas/.

   Mesmo mapeamento: a paleta do Manual de Marca antigo, azul
   #1D2675 com ciano e verde-agua, passa a usar os tokens do
   snippet 12844. Prefixo html para vencer o CSS embutido.
   ============================================================ */

html:root{
  --navy:#14202E;
  --navy-d:#091235;
  --ink:#14202E;
  --muted:#6B7280;
  --line:#E2E8F0;
  --soft:#F8FAFC;
  --cyan:#C4A267;
  --teal:#C4A267;
  --ok:#166534;
  --err:#B91C1C;
  --err-bg:#FDECEC;
  --focus:#C4A267;
}

html body .lado{background:linear-gradient(160deg,#091235 0%,#14202E 100%)!important}
html body .lado .marca,
html body .lado .meta,
html body .lado .tempo,
html body .lado .relogio{color:rgba(255,255,255,.72)!important}
html body .lado .resumo,
html body .etapas .feita button{color:rgba(255,255,255,.88)!important}
html body .selo{color:var(--bp-gold)!important;border-color:rgba(196,162,103,.45)!important}
html body .grade{border-color:var(--bp-line)!important}
html body .etapas .n{border-color:rgba(196,162,103,.55)!important}
html body ::placeholder{color:var(--bp-ink-400)!important;opacity:1}
html body input:hover,
html body select:hover,
html body textarea:hover{border-color:var(--bp-line-mid)!important}
html body .chips span::before{border-color:var(--bp-ink-400)!important}

/* ---- ajuste 2: elementos do portal fora do bloco .lado ---- */
html body .app,
html body .grade,
html body .form,
html body .caixa,
html body .painel{color:var(--bp-navy-700)!important}
html body .selo{color:var(--bp-gold)!important;border-color:rgba(196,162,103,.45)!important}
html body .meta,
html body .relogio{color:rgba(255,255,255,.72)!important}
html body .grade .meta,
html body .form .meta,
html body .caixa .meta{color:var(--bp-ink-500)!important}

/* ---- ajuste 3: a pagina /processo/ usa o container #bpp, com um
   quinto vocabulario de token (marinho, ciano, laranja, tinta,
   linha, suave, fundo) e seletores de ID que vencem classe ---- */
html body #bpp{
  --marinho:#14202E;
  --ciano:#C4A267;
  --laranja:#C9922A;
  --tinta:#14202E;
  --linha:#E2E8F0;
  --suave:#6B7280;
  --fundo:#F8FAFC;
}
html body #bpp .selo,
html body #bpp .painel .selo{color:var(--bp-gold)!important}
html body #bpp .painel p,
html body #bpp .painel li,
html body #bpp .painel span,
html body #bpp .painel .meta,
html body #bpp .painel .relogio{color:rgba(255,255,255,.78)!important}
html body #bpp .meta,
html body #bpp .relogio{color:rgba(255,255,255,.72)!important}
html body #bpp .grade,
html body #bpp .form,
html body #bpp .caixa{color:var(--bp-navy-700)!important}

/* ---- ajuste 4: o questionario tecnico (pagina 12615) traz um
   sexto vocabulario, declarado em :root global ---- */
html:root{
  --marinho:#14202E;
  --marinho2:#091235;
  --ciano:#C4A267;
  --verde:#166534;
  --amarelo:#C9922A;
  --ink:#14202E;
  --muted:#6B7280;
  --line:#E2E8F0;
  --paper:#F8FAFC;
  --tinta:#14202E;
  --linha:#E2E8F0;
  --suave:#6B7280;
  --fundo:#F8FAFC;
  --laranja:#C9922A;
}

/* ===== wpcode 12845 | Bplan - Harmonia cromatica (secoes fora da identidade) ===== */
/* ============================================================
   BPLAN - HARMONIA CROMATICA (secoes fora da identidade)
   Criado em 18/10/2026. Reversivel por toggle. Prioridade 100.

   Auditoria de 18/10/2026 encontrou 8 paginas usando uma paleta
   generica de framework (indigo, rosa, laranja, verde, vermelho)
   que nao pertence ao sistema navy + dourado.

   Nao muda layout, nao mexe em fonte e nao apaga nada. So
   remapeia essas cores para os tokens canonicos do 12844.
   Prefixo html body para vencer o CSS embutido na pagina.
   ============================================================ */

:root{
  --bp-gold-soft:rgba(196,162,103,.15);
  --bp-green-ink:#C4A267;
  --bp-red-ink:#8A5E0A;
}

/* ---------- 1. HOME, secao sstgrid2026 ---------- */
html body .bsst-wrap .bsst-badge{
  background:var(--bp-surface-2)!important;
  color:var(--bp-navy-700)!important;
  border:1px solid var(--bp-line)!important;
}
html body .bsst-wrap .bsst-badge svg{stroke:var(--bp-navy-700)!important;color:var(--bp-navy-700)!important;}

html body .bsst-wrap .bsst-badge-seg{
  background:var(--bp-gold-soft)!important;
  color:var(--bp-gold-ink)!important;
  border:1px solid var(--bp-line)!important;
}
html body .bsst-wrap .bsst-badge-seg svg{stroke:var(--bp-gold-ink)!important;color:var(--bp-gold-ink)!important;}

html body .bsst-wrap .bsst-card-icon{
  background:var(--bp-surface-2)!important;
  color:var(--bp-navy-700)!important;
}
html body .bsst-wrap .bsst-card-icon svg,
html body .bsst-wrap .bsst-card-icon svg *{stroke:var(--bp-navy-700)!important;color:var(--bp-navy-700)!important;}

html body .bsst-wrap .bsst-card.featured .bsst-card-icon,
html body .bsst-wrap .bsst-card.seg-card .bsst-card-icon{
  background:var(--bp-gold-soft)!important;
  color:var(--bp-gold-ink)!important;
}
html body .bsst-wrap .bsst-card.featured .bsst-card-icon svg,
html body .bsst-wrap .bsst-card.featured .bsst-card-icon svg *,
html body .bsst-wrap .bsst-card.seg-card .bsst-card-icon svg,
html body .bsst-wrap .bsst-card.seg-card .bsst-card-icon svg *{
  stroke:var(--bp-gold-ink)!important;color:var(--bp-gold-ink)!important;
}

html body .bsst-wrap .bsst-card.seg-card{border-left-color:var(--bp-gold)!important;}
html body .bsst-wrap .bsst-card.seg-card:hover{
  border-color:var(--bp-gold)!important;
  border-left-color:var(--bp-gold)!important;
}

html body .bsst-wrap a.bsst-btn-seg{
  background:var(--bp-gold)!important;
  color:var(--bp-navy-700)!important;
  border-color:var(--bp-gold)!important;
}
html body .bsst-wrap a.bsst-btn-seg:hover{background:var(--bp-gold-hover)!important;}

html body .bpbplan-badge{
  background:var(--bp-gold-soft)!important;
  color:var(--bp-gold-ink)!important;
}

html body .bpdep .bpdep-verified{color:var(--bp-green-ink)!important;}
html body .bpdep .bpdep-verified svg,
html body .bpdep .bpdep-verified svg *{stroke:var(--bp-green-ink)!important;}

/* ---------- 2. PAGINAS JURIDICAS E INSTITUCIONAIS ---------- */
html body .bplan-legal-toc,
html body .garantia-card,
html body .service-card{
  background:var(--bp-surface)!important;
  border-color:var(--bp-line)!important;
}
html body .bplan-form-section{border-color:var(--bp-line)!important;}
html body .bplan-form-success{
  background:var(--bp-surface-2)!important;
  border-color:var(--bp-line-mid)!important;
  color:var(--bp-green-ink)!important;
}

html body .valor-card{
  background:var(--bp-surface)!important;
  border-color:var(--bp-gold)!important;
}

html body .check-ok{background:var(--bp-surface-2)!important;color:var(--bp-green-ink)!important;}
html body .check-no{background:var(--bp-surface)!important;color:var(--bp-red-ink)!important;}

html body .badge-essential{background:var(--bp-surface-2)!important;color:var(--bp-green-ink)!important;}
html body .badge-analytics{background:var(--bp-gold-soft)!important;color:var(--bp-gold-ink)!important;}
html body .badge-marketing{background:var(--bp-surface)!important;color:var(--bp-red-ink)!important;}

/* ---------- 3. CLINICAS (dracena e lapa) ---------- */
html body .bp-card-tag,
html body .bp-card .bp-card-tag{
  background:var(--bp-gold-soft)!important;
  color:var(--bp-gold-ink)!important;
}

/* ===== wpcode 12861 | Bplan - Ajuste fino de cor (outliers) ===== */
/* ============================================================
   BPLAN - AJUSTE FINO DE COR (outliers)
   Criado em 18/10/2026. Reversivel por toggle. Prioridade 101.

   Varredura das paginas de maior deriva encontrou tons avulsos
   que nao pertencem a paleta, quase todos em style inline de
   widget do Elementor. Aqui eles sao remapeados para os tokens
   do snippet 12844, sem editar pagina nenhuma.
   ============================================================ */

/* texto secundario claro sobre dobra navy */
html body [style*="#B0BDD4" i],
html body [style*="#D0D8F0" i],
html body [style*="#DCE8FF" i],
html body .bptrein2-stat-label,
html body .bpcta2-sub,
html body .bptrein2-sub{color:rgba(255,255,255,.78)!important}

/* texto escuro dentro de botao dourado */
html body [style*="#1A1200" i],
html body .bpcta2-btn-primary,
html body .bptrein2-btn{color:var(--bp-navy-700)!important}

/* dourado alternativo que escapou da paleta */
html body [style*="#C9A96E" i]{color:var(--bp-gold)!important}

/* cinzas avulsos */
html body [style*="#7A8494" i],
html body [style*="#808080" i]{color:var(--bp-ink-500)!important}
html body [style*="#D8D7D7" i],
html body .elementor-swiper-button{color:var(--bp-line-strong)!important}
html body .bsst-divider{background:var(--bp-line)!important;color:var(--bp-ink-500)!important}

/* widget de avaliacoes e blocos herdados nas paginas de unidade */
html body .tw-data-text,
html body .Y2IQFc{color:var(--bp-navy-600)!important}
html body [style*="#F3F5F8" i]{background-color:var(--bp-surface)!important}
html body [style*="#ECEFF3" i]{background-color:var(--bp-surface-2)!important}

/* ===== wpcode 12864 | Bplan - Grade de layout (largura, respiro, cards, cabecalho) ===== */
/* ============================================================
   BPLAN - GRADE DE LAYOUT
   Criado em 18/10/2026. Reversivel por toggle. Prioridade 103.

   Uma unica largura de conteudo, uma unica escala de respiro e
   um unico cartao em todo o site, no desktop e no celular.
   Conteudo = 1200px. Gutter = 20px (16px no celular).
   Nao edita pagina nem tema.
   ============================================================ */

:root{
  --bp-grid-max: 1200px;
  --bp-grid-gutter: 20px;
  --bp-sp-sm: 48px;
  --bp-sp-md: 56px;
  --bp-sp-lg: 96px;
  --bp-card-r: 14px;
  --bp-card-sh: 0 4px 16px rgba(20,32,46,.06);
  --bp-card-sh-hover: 0 10px 28px rgba(20,32,46,.12);
  --bp-field-h: 48px;
  --bp-field-r: 10px;
}
@media (max-width: 880px){
  :root{ --bp-grid-gutter: 16px; --bp-sp-sm: 32px; --bp-sp-md: 40px; --bp-sp-lg: 64px; }
}

/* ---------- 1. largura unica de conteudo ---------- */
html body:not(.ast-page-builder-template) .ast-container{
  max-width: calc(var(--bp-grid-max) + (var(--bp-grid-gutter) * 2)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: var(--bp-grid-gutter) !important;
  padding-right: var(--bp-grid-gutter) !important;
  width: 100% !important;
}
html body .elementor-section > .elementor-container{
  max-width: var(--bp-grid-max) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
/* o e-con-inner nao recebe teto: alguns heros pintam o fundo nele
   e o teto transformava o fundo sangrado numa faixa recortada. */
@media (max-width: 880px){
  html body .elementor-section > .elementor-container,
  html body .e-con > .e-con-inner{
    padding-left: var(--bp-grid-gutter) !important;
    padding-right: var(--bp-grid-gutter) !important;
  }
}
html, body{ overflow-x: hidden; }

/* ---------- 2. cabecalho alinhado a mesma grade ---------- */
html body .elementor-location-header .e-con-inner{
  max-width: calc(var(--bp-grid-max) + (var(--bp-grid-gutter) * 2)) !important;
  padding-left: var(--bp-grid-gutter) !important;
  padding-right: var(--bp-grid-gutter) !important;
}
html body .elementor-location-header{
  border-bottom: 1px solid rgba(255,255,255,.08);
}
html body .elementor-location-header.elementor-sticky--effects{
  box-shadow: 0 2px 14px rgba(9,18,53,.22);
}
html body .elementor-location-footer .e-con-inner{
  max-width: calc(var(--bp-grid-max) + (var(--bp-grid-gutter) * 2)) !important;
  padding-left: var(--bp-grid-gutter) !important;
  padding-right: var(--bp-grid-gutter) !important;
}

/* ---------- 3. cartao canonico ---------- */
html body .elementor-post__card,
html body.blog .site-main article.post,
html body.archive .site-main article.post,
html body.search .site-main article.post{
  background: #fff !important;
  border: 1px solid var(--bp-line, #E2E8F0) !important;
  border-radius: var(--bp-card-r) !important;
  box-shadow: var(--bp-card-sh) !important;
  overflow: hidden !important;
  transition: box-shadow .18s ease, transform .18s ease;
}
html body .elementor-post__card:hover,
html body.blog .site-main article.post:hover,
html body.archive .site-main article.post:hover{
  box-shadow: var(--bp-card-sh-hover) !important;
  transform: translateY(-2px);
}

/* ---------- 4. grade do blog igual a de unidades ---------- */
html body.blog .site-main .ast-row,
html body.archive .site-main .ast-row,
html body.search .site-main .ast-row{
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 35px 30px !important;
  margin: 0 !important;
  width: 100% !important;
}
@media (max-width: 1100px){
  html body.blog .site-main .ast-row,
  html body.archive .site-main .ast-row,
  html body.search .site-main .ast-row{ grid-template-columns: repeat(3, 1fr) !important; }
}
@media (max-width: 880px){
  html body.blog .site-main .ast-row,
  html body.archive .site-main .ast-row,
  html body.search .site-main .ast-row{ grid-template-columns: repeat(2, 1fr) !important; gap: 24px 20px !important; }
}
@media (max-width: 560px){
  html body.blog .site-main .ast-row,
  html body.archive .site-main .ast-row,
  html body.search .site-main .ast-row{ grid-template-columns: 1fr !important; }
}
html body.blog .site-main article.post,
html body.archive .site-main article.post,
html body.search .site-main article.post{
  width: 100% !important;
  max-width: none !important;
  flex: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
}
html body .site-main article.post > .ast-post-format-,
html body .site-main article.post > [class*="blog-layout-"]{
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
}
html body .site-main article.post .post-content{
  width: 100% !important;
  margin: 0 !important;
  padding: 0 0 20px !important;
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
}
html body .site-main article.post .ast-blog-featured-section,
html body .site-main article.post .post-thumb-img-content{
  width: 100% !important;
  margin: 0 0 16px !important;
}
html body .site-main article.post .post-thumb-img-content img,
html body .site-main article.post .ast-blog-featured-section img{
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  display: block;
  border-radius: 0 !important;
}
html body .site-main article.post .ast-taxonomy-container,
html body .site-main article.post .entry-title,
html body .site-main article.post .entry-header,
html body .site-main article.post .ast-excerpt-container,
html body .site-main article.post .entry-content{
  padding-left: 18px !important;
  padding-right: 18px !important;
  width: auto !important;
}
html body .site-main article.post .entry-title{
  font-size: 18px !important;
  line-height: 1.32 !important;
  margin: 0 0 8px !important;
}
html body .site-main article.post .ast-excerpt-container p{
  font-size: 14px !important;
  line-height: 1.55 !important;
  margin: 0 !important;
}
html body .site-main article.post .ast-excerpt-container{ flex: 1 1 auto !important; }
html body .site-main article.post .entry-meta,
html body .site-main article.post .entry-meta *{
  font-size: 13px !important;
}

/* ---------- 5. campo de busca unico ---------- */
html body .bplan-search-input,
html body .bplan-search-wrap input[type="text"],
html body .bplan-search-wrap input[type="search"],
html body input.orig,
html body .search-field,
html body .ast-search-menu-icon input[type="search"]{
  height: var(--bp-field-h) !important;
  min-height: var(--bp-field-h) !important;
  border: 1px solid var(--bp-line, #E2E8F0) !important;
  border-radius: var(--bp-field-r) !important;
  background: #fff !important;
  padding: 0 16px !important;
  font-size: 15px !important;
  color: var(--bp-navy-700, #14202E) !important;
  box-shadow: none !important;
  outline: none !important;
  box-sizing: border-box !important;
  transition: border-color .15s ease, box-shadow .15s ease;
}
html body .bplan-search-input:focus,
html body .bplan-search-wrap input:focus,
html body input.orig:focus,
html body .search-field:focus{
  border-color: var(--bp-gold, #C4A267) !important;
  box-shadow: 0 0 0 3px rgba(196,162,103,.22) !important;
}
html body .bplan-search-input::placeholder,
html body input.orig::placeholder,
html body .search-field::placeholder{
  color: var(--bp-ink-500, #6B7280) !important;
  opacity: 1 !important;
}
html body .bplan-search-wrap,
html body .bplan-search-form{
  max-width: 560px !important;
  width: 100% !important;
}

/* ---------- 6. paginacao ---------- */
html body .site-main .ast-pagination,
html body .site-main .navigation.pagination{
  margin-top: var(--bp-sp-md) !important;
}
html body .site-main .page-numbers{
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  height: 40px;
  padding: 0 12px;
  margin: 0 4px;
  border: 1px solid var(--bp-line, #E2E8F0) !important;
  border-radius: 10px;
  background: #fff;
  color: var(--bp-navy-700, #14202E) !important;
  font-size: 15px;
  text-decoration: none !important;
}
html body .site-main .page-numbers.current{
  background: var(--bp-navy-700, #14202E) !important;
  border-color: var(--bp-navy-700, #14202E) !important;
  color: #fff !important;
}
html body .site-main .page-numbers:hover:not(.current){
  border-color: var(--bp-gold, #C4A267) !important;
  color: var(--bp-gold-ink, #8A5E0A) !important;
}
html body .site-main .page-numbers.dots{ border-color: transparent !important; background: transparent !important; }

/* ---------- 4b. cartao do blog sem recuo interno ---------- */
html body .site-main article.post > [class*="blog-layout-"],
html body .site-main article.post > .ast-post-format-{
  padding: 0 !important;
  margin: 0 !important;
}
html body .site-main article.post .ast-blog-featured-section a,
html body .site-main article.post .post-thumb-img-content a,
html body .site-main article.post .post-thumb-img-content{
  display: block !important;
  line-height: 0 !important;
  border: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
}
html body .site-main article.post .post-thumb-img-content img{
  border: 0 !important;
  box-shadow: none !important;
}
html body .site-main article.post .ast-taxonomy-container{
  padding-top: 16px !important;
  display: block !important;
}


/* ---------- 5b. busca do Ajax Search Lite no mesmo padrao ---------- */
html body div.asl_w{ max-width: 560px !important; width: 100% !important; }
html body div.asl_w .probox{
  height: var(--bp-field-h) !important;
  border: 1px solid var(--bp-line, #E2E8F0) !important;
  border-radius: var(--bp-field-r) !important;
  background: #fff !important;
  box-shadow: none !important;
  padding: 0 6px 0 10px !important;
  box-sizing: border-box !important;
}
html body div.asl_m .proinput input.orig,
html body div.asl_m .proinput input.autocomplete,
html body div.asl_w .probox .proinput input{
  height: 44px !important;
  min-height: 44px !important;
  border: 0 !important;
  background: transparent !important;
  font-size: 15px !important;
  color: var(--bp-navy-700, #14202E) !important;
  box-shadow: none !important;
  padding: 0 6px !important;
}
html body div.asl_w:focus-within .probox{
  border-color: var(--bp-gold, #C4A267) !important;
  box-shadow: 0 0 0 3px rgba(196,162,103,.22) !important;
}


/* ---------- 7. coluna unica sem recuo extra do Elementor ----------
   Secoes de coluna unica herdavam 10px de cada lado do column-gap
   padrao, o que fazia o conteudo cair em 1180 em vez de 1200 e
   desalinhava banners entre uma pagina e outra. */
html body .elementor-column.elementor-col-100 > .elementor-widget-wrap{
  padding-left: 0 !important;
  padding-right: 0 !important;
}
html body .elementor-section.elementor-inner-section > .elementor-container{
  max-width: 100% !important;
}

/* ---------- 8. botoes flutuantes na mesma coluna ---------- */
html body #ast-scroll-top{
  right: 20px !important;
  bottom: 24px !important;
  left: auto !important;
  width: 48px !important;
  height: 48px !important;
  line-height: 48px !important;
  padding: 0 !important;
  border-radius: 12px !important;
  background: var(--bp-navy-700, #14202E) !important;
  box-shadow: 0 6px 18px rgba(9,18,53,.22) !important;
  z-index: 420 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
html body #ast-scroll-top .ast-icon{ margin: 0 !important; }
html body div[vw] div[vw-access-button],
html body [vw-access-button]{
  right: 20px !important;
  left: auto !important;
  z-index: 420 !important;
}
html body #bplan-wa-float{
  left: 20px !important;
  right: auto !important;
  bottom: 24px !important;
  width: 48px !important;
  height: 48px !important;
  border-radius: 12px !important;
  box-shadow: 0 6px 18px rgba(9,18,53,.22) !important;
  z-index: 420 !important;
}
@media (max-width: 880px){
  html body #ast-scroll-top{ right: 16px !important; bottom: 16px !important; }
  html body #bplan-wa-float{ left: 16px !important; bottom: 16px !important; }
  html body div[vw] div[vw-access-button],
  html body [vw-access-button]{ right: 16px !important; }
}


/* ---------- 9. respiro e recuo das secoes de topo ----------
   O recuo lateral passa a vir so da grade (caixa de 1200). O
   respiro vertical entre secoes passa a ter um valor unico.
   O fundo continua sangrando de ponta a ponta. */
html body .elementor-top-section,
html body .entry-content > .elementor > .e-con,
html body .elementor-location-single .e-con.e-parent{
  padding-left: 0 !important;
  padding-right: 0 !important;
}
html body .elementor-top-section:not(:first-child):not(.elementor-section-height-full),
html body .entry-content > .elementor > .e-con:not(:first-child){
  padding-top: var(--bp-sp-md) !important;
  padding-bottom: var(--bp-sp-md) !important;
}
@media (max-width: 880px){
  html body .elementor-top-section > .elementor-container{
    padding-left: var(--bp-grid-gutter) !important;
    padding-right: var(--bp-grid-gutter) !important;
  }
}

/* VLibras na mesma coluna e no mesmo tamanho do voltar ao topo */
html body .vlibras-access{
  right: 20px !important;
  left: auto !important;
  width: 48px !important;
  height: 48px !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  box-shadow: 0 6px 18px rgba(9,18,53,.22) !important;
  z-index: 420 !important;
}
html body .vlibras-access .vlibras-popup,
html body .vlibras-access .vlibras-button,
html body .vlibras-access img{
  width: 48px !important;
  height: 48px !important;
  border-radius: 12px !important;
  display: block !important;
}
@media (max-width: 880px){
  html body .vlibras-access{ right: 16px !important; }
}


/* ---------- 10. gutter unico no celular ---------- */
@media (max-width: 880px){
  html body:not(.ast-page-builder-template) .ast-container > .ast-row{ margin-left: 0 !important; margin-right: 0 !important; }
  html body .elementor-top-section{ padding-left: 0 !important; padding-right: 0 !important; }
  html body .elementor-column > .elementor-widget-wrap{ padding-left: 0 !important; padding-right: 0 !important; }
  html body .elementor-top-section > .elementor-container,
  html body .e-con.e-parent > .e-con-inner{
    padding-left: var(--bp-grid-gutter) !important;
    padding-right: var(--bp-grid-gutter) !important;
    max-width: 100% !important;
  }
  html body:not(.ast-page-builder-template) .ast-container{
    padding-left: var(--bp-grid-gutter) !important;
    padding-right: var(--bp-grid-gutter) !important;
  }
}

/* reforco do gutter no celular */
@media (max-width: 880px){
  html body:not(.ast-page-builder-template) .site-content .ast-container .ast-row{ margin-left: 0 !important; margin-right: 0 !important; }
  html body .site-content .ast-container .ast-row > .ast-grid-common-col,
  html body .site-content .ast-container .ast-row > article{ padding-left: 0 !important; padding-right: 0 !important; }
}

/* gutter aplicado na propria linha, imune a margem negativa do tema */
@media (max-width: 880px){
  html body:not(.ast-page-builder-template) .site-content .ast-container{ padding-left: 0 !important; padding-right: 0 !important; }
  html body:not(.ast-page-builder-template) .site-content .ast-container .ast-row{ margin-left: 0 !important; margin-right: 0 !important; padding-left: var(--bp-grid-gutter) !important; padding-right: var(--bp-grid-gutter) !important; box-sizing: border-box !important; }
}

/* o recuo lateral no celular vem so do inner, nunca do container externo */
@media (max-width: 880px){
  html body .e-con.e-parent{ padding-left: 0 !important; padding-right: 0 !important; }
  html body .elementor-top-section{ padding-left: 0 !important; padding-right: 0 !important; }
}


/* ---------- 11. escala tipografica ----------
   O site tinha h1 em 43, 46 e 52, h3 em 15, 16, 22 e 28 e
   paragrafo em oito tamanhos. A escala abaixo vale como base.
   Componentes com classe propria (bp2, cartao do blog) tem
   especificidade maior e mantem o tamanho desenhado. */
html body h1, html body .entry-content h1, html body h1.elementor-heading-title{
  font-size: clamp(30px, 3.6vw, 44px) !important;
  line-height: 1.14 !important;
  font-weight: 700 !important;
}
html body h2, html body .entry-content h2, html body h2.elementor-heading-title{
  font-size: clamp(25px, 2.6vw, 34px) !important;
  line-height: 1.22 !important;
  font-weight: 700 !important;
}
html body h3, html body .entry-content h3, html body h3.elementor-heading-title{
  font-size: clamp(19px, 1.6vw, 22px) !important;
  line-height: 1.32 !important;
  font-weight: 600 !important;
}
html body h4, html body .entry-content h4, html body h4.elementor-heading-title{
  font-size: 18px !important;
  line-height: 1.38 !important;
  font-weight: 600 !important;
}
html body h5, html body h5.elementor-heading-title{ font-size: 16px !important; font-weight: 600 !important; }
html body h6, html body h6.elementor-heading-title{ font-size: 14px !important; font-weight: 600 !important; }
html body .entry-content > p, html body .entry-content > ul li, html body .entry-content > ol li{
  font-size: 16px !important;
  line-height: 1.65 !important;
}
html body small, html body .entry-meta, html body .entry-meta *{ font-size: 14px !important; }

/* reforco: vence as declaracoes antigas de h2/h1 do Elementor */
html body .elementor-section h1, html body .e-con h1, html body .elementor-widget-heading h1.elementor-heading-title{
  font-size: clamp(30px, 3.6vw, 44px) !important;
}
html body .elementor-section h2, html body .e-con h2, html body .elementor-widget-heading h2.elementor-heading-title{
  font-size: clamp(25px, 2.6vw, 34px) !important;
}
html body .elementor-section h3, html body .e-con h3, html body .elementor-widget-heading h3.elementor-heading-title{
  font-size: clamp(19px, 1.6vw, 22px) !important;
}
html body .elementor-section h4, html body .e-con h4, html body .elementor-widget-heading h4.elementor-heading-title{
  font-size: 18px !important;
}

/* reforco final de especificidade na tipografia */
html body h1.elementor-heading-title.elementor-heading-title.elementor-heading-title{ font-size: clamp(30px, 3.6vw, 44px) !important; }
html body h2.elementor-heading-title.elementor-heading-title.elementor-heading-title{ font-size: clamp(25px, 2.6vw, 34px) !important; }
html body h3.elementor-heading-title.elementor-heading-title.elementor-heading-title{ font-size: clamp(19px, 1.6vw, 22px) !important; }
html body h4.elementor-heading-title.elementor-heading-title.elementor-heading-title{ font-size: 18px !important; }


/* ---------- 12. pagina de documento simples ----------
   Paginas sem construtor (termos, politicas, ouvidoria) eram
   texto cru de ponta a ponta. Ganham medida de leitura, respiro
   e a mesma hierarquia do resto do site. */
html body:not(.ast-page-builder-template):not(.elementor-page) .site-main .entry-content{
  max-width: 820px;
  margin-left: auto;
  margin-right: auto;
  padding-top: var(--bp-sp-md);
  padding-bottom: var(--bp-sp-lg);
}
html body:not(.ast-page-builder-template):not(.elementor-page) .site-main .entry-content h2{
  margin-top: 40px;
  margin-bottom: 12px;
  padding-left: 14px;
  border-left: 3px solid var(--bp-gold, #C4A267);
}
html body:not(.ast-page-builder-template):not(.elementor-page) .site-main .entry-content h3{
  margin-top: 28px;
  margin-bottom: 8px;
}
html body:not(.ast-page-builder-template):not(.elementor-page) .site-main .entry-content p,
html body:not(.ast-page-builder-template):not(.elementor-page) .site-main .entry-content li{
  font-size: 16px;
  line-height: 1.7;
  color: var(--bp-ink-700, #374151);
}
html body:not(.ast-page-builder-template):not(.elementor-page) .site-main .entry-content ul,
html body:not(.ast-page-builder-template):not(.elementor-page) .site-main .entry-content ol{
  margin: 0 0 20px 22px;
}
html body:not(.ast-page-builder-template):not(.elementor-page) .site-main .entry-content li{ margin-bottom: 6px; }
html body:not(.ast-page-builder-template):not(.elementor-page) .site-main .entry-content a{
  color: var(--bp-gold-ink, #8A5E0A);
  text-decoration: underline;
  text-underline-offset: 2px;
}
html body:not(.ast-page-builder-template):not(.elementor-page) .site-main .entry-content > div > em:first-child,
html body:not(.ast-page-builder-template):not(.elementor-page) .site-main .entry-content > em:first-child{
  display: block;
  font-style: normal;
  font-size: 14px;
  color: var(--bp-ink-500, #6B7280);
  padding: 10px 14px;
  background: var(--bp-surface, #F8FAFC);
  border: 1px solid var(--bp-line, #E2E8F0);
  border-radius: var(--bp-card-r, 14px);
  margin-bottom: 28px;
}


/* ===== wpcode 12901 | Bplan - Padrao de cor da home (ritmo e token escuro) ===== */
/* ============================================================
   BPLAN - RITMO DE FUNDO DA HOME
   Reescrito em 21/10/2026. Reversivel por toggle. Prioridade 118.

   A home tinha tres azuis escuros diferentes e faixas escuras
   coladas. Aqui o escuro vira um token unico, #0D1B2A, e as
   dobras alternam de verdade.

   Mapa aplicado, de cima para baixo.
   Saude e Seguranca ... branco
   Treinamentos ....... cinza  #F0F5FA  (era escuro)
   Cobertura Nacional . escuro #0D1B2A
   SOCNET ............. branco          (era cinza)
   Segmentos .......... cinza           (era escuro em gradiente)
   Logos de clientes .. branco          (era cinza)
   Depoimentos ........ escuro
   FAQ ................ branco
   Blog ............... cinza
   Rodape ............. escuro

   Nenhuma dobra vizinha com a mesma cor.

   O texto das duas dobras que viraram claras nao vem aqui. Ele e
   gravado inline com important pelo normalizador de cor do site,
   entao esta no snippet irmao "Bplan - Dobras claras".

   A regra vai dentro de camada CSS porque o Elementor serve a cor
   das secoes em camada propria, e declaracao important fora de
   camada perde para declaracao important dentro de camada.
   ============================================================ */

@layer bplanritmo {

  /* token escuro unico */
  html body .elementor-element-54a66ddf,
  html body .elementor-element-1285cab,
  html body .elementor-5673 .elementor-element.elementor-element-6ef2a98a,
  html body .elementor-5673 .elementor-element.elementor-element-dep2026,
  html body .bpexp,
  html body .bpdep {
    background-color: #0D1B2A !important;
  }

  /* dobras cinza */
  html body .elementor-5673 .elementor-element.elementor-element-510910f {
    background-color: #F0F5FA !important;
  }

  html body .bseg-wrap {
    background-image: none !important;
    background-color: #F0F5FA !important;
  }

  /* dobras brancas */
  html body .elementor-5673 .elementor-element.elementor-element-trein2026,
  html body .bptrein2,
  html body .elementor-5673 .elementor-element.elementor-element-16ab869,
  html body .bp-rede-section,
  html body .elementor-5673 .elementor-element.elementor-element-13248561 {
    background-color: #FFFFFF !important;
  }

  /* cartoes da dobra de treinamentos sobre fundo claro */
  html body .bptrein2 .bptrein2-card {
    background-color: #FFFFFF !important;
    border-color: #D7DEE8 !important;
  }
  html body .bptrein2 .bptrein2-icon {
    background-color: rgba(13,27,42,.06) !important;
  }
  html body .bptrein2 .bptrein2-card::before {
    color: rgba(138,94,10,.12) !important;
  }

  /* cartoes da dobra de segmentos sobre fundo claro */
  html body .bseg-card {
    background-color: #FFFFFF !important;
    border-color: #D7DEE8 !important;
  }
  html body .bseg-icon {
    background-color: rgba(13,27,42,.06) !important;
  }
  html body .bseg-arrow {
    background-color: #FFFFFF !important;
    border-color: #C9D2DE !important;
  }
  html body .bseg-dot {
    background-color: rgba(13,27,42,.25) !important;
  }
  html body .bseg-dot.ativo,
  html body .bseg-dot.active,
  html body .bseg-dot[aria-current="true"] {
    background-color: #C9922A !important;
  }


  /* sobras do azul antigo fora das dobras, 21/10/2026 */
  html body #ast-scroll-top,
  html body #bplan-wa-float,
  html body .bp-rede-badge,
  html body .bp-rede-card-icon,
  html body .bpdep-tag {
    background-color: #0D1B2A !important;
  }

  /* amarelo #F5C842 da paleta antiga, que sobrevivia em transparencia */
  html body .bpcta2-badge,
  html body .bptrein2-badge,
  html body .bptrein2-card-tag,
  html body .bseg-tag,
  html body .bpdep-card,
  html body .bsst-card-icon,
  html body .bsst-badge-seg,
  html body .bpbplan-badge {
    background-color: rgba(196,162,103,.15) !important;
  }

  /* dobras que a regua de design deixou de declarar em 21/10/2026 */
  html body .elementor-5673 .elementor-element.elementor-element-6d1b1bc6,
  html body .elementor-5673 .elementor-element.elementor-element-102d985,
  html body .elementor-5673 .elementor-element.elementor-element-a510b86 {
    background-color: #FFFFFF !important;
  }
  html body .elementor-5673 .elementor-element.elementor-element-9d8f8ab {
    background-color: #F0F5FA !important;
  }


  /* Saude e Seguranca viraram duas dobras, 22/10/2026.
     O separador <hr> saiu e a metade de seguranca ganhou faixa propria. */
  html body .bsst-wrap {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    background-color: #FFFFFF !important;
  }

  html body .bsst-seg-band {
    background-color: #F0F5FA !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc((100% - 100vw) / 2) !important;
    margin-right: calc((100% - 100vw) / 2) !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
  html body .bsst-seg-band > * {
    max-width: 1200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  html body .bsst-card {
    background-color: #FFFFFF !important;
    border-color: #D7DEE8 !important;
  }
  html body .bsst-card.featured {
    border-color: #C9922A !important;
  }


  /* ESPACAMENTO PADRAO DAS DOBRAS, 22/10/2026.
     O respiro vertical estava somando duas vezes, o da secao do Elementor
     mais o da faixa interna do widget, e por isso variava de 56 a 146px.
     Aqui a secao zera o respiro quando existe faixa interna, e o respiro
     passa a ser sempre 80px em cima e 80px embaixo, em toda dobra. */
  html body .elementor-5673 .elementor-element.elementor-element-6d1b1bc6,
  html body .elementor-5673 .elementor-element.elementor-element-trein2026,
  html body .elementor-5673 .elementor-element.elementor-element-6ef2a98a,
  html body .elementor-5673 .elementor-element.elementor-element-16ab869,
  html body .elementor-5673 .elementor-element.elementor-element-510910f,
  html body .elementor-5673 .elementor-element.elementor-element-dep2026 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  html body .bsst-inner,
  html body .bsst-seg-band,
  html body .bptrein2,
  html body .bpexp,
  html body .bp-rede-section,
  html body .bseg-wrap,
  html body .bpdep,
  html body .elementor-5673 .elementor-element.elementor-element-13248561,
  html body .elementor-5673 .elementor-element.elementor-element-a510b86,
  html body .elementor-5673 .elementor-element.elementor-element-9d8f8ab {
    padding-top: 80px !important;
    padding-bottom: 80px !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }


  /* BARRA DOURADA LATERAL DOS CARDS, retirada em 25/10/2026.
     Era um pseudo-elemento de 4px em #C9922A na lateral esquerda, no card
     em destaque da dobra de Saude e nos seis cards da dobra SOCNET.
     Nao confundir com o numero fantasma 01 02 03 da dobra de treinamentos,
     que tambem e um ::before e continua no lugar. */
  html body .bsst-card::before,
  html body .bsst-card:hover::before,
  html body .bsst-card.featured::before,
  html body .bp-rede-card::before,
  html body .bp-rede-card:hover::before {
    display: none !important;
    content: none !important;
  }

  /* CABECALHOS CENTRALIZADOS, 25/10/2026.
     Treinamentos, Cobertura, Segmentos, Logos, Depoimentos, FAQ e Blog ja
     centralizavam. Saude, Seguranca e SOCNET ainda alinhavam a esquerda.
     Aqui fica so o cabecalho, selo, titulo e texto de apoio. O conteudo
     dos cards continua alinhado a esquerda, como em toda a pagina. */
  html body .bsst-header {
    text-align: center !important;
  }
  html body .bsst-header .bsst-badge,
  html body .bsst-header .bsst-badge-seg {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body .bp-rede-badge,
  html body .bp-rede-title,
  html body .bp-rede-intro {
    text-align: center !important;
  }
  html body .bp-rede-badge {
    display: flex !important;
    width: fit-content !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  html body .bp-rede-keywords {
    justify-content: center !important;
    text-align: center !important;
  }



  /* selo da dobra do blog centralizado como as demais */
  html body .elementor-element.elementor-element-4c8d1d4::before{ margin-left:auto !important; margin-right:auto !important; }

  /* ===== MOBILE 26/10/2026 - alvos de toque, tipografia e rodape ===== */
  @media (max-width:767px){

    /* 1. rodape em coluna unica */
    html body .bplan-footer-main{ grid-template-columns:1fr !important; row-gap:28px !important; }

    /* 2. titulos do rodape legiveis */
    html body .bplan-footer-heading{ font-size:13px !important; letter-spacing:.06em !important; }

    /* 3. piso de 12px em badges, tags e labels */
    html body .bp-badge,
    html body .bpexp-tag,
    html body .bptrein2-badge,
    html body .bptrein2-stat-label,
    html body .bptrein2-card-tag,
    html body .bp-rede-keywords,
    html body .bp-rede-card-tag,
    html body .bseg-tag,
    html body .score-label,
    html body .bpdep-summary-count-label,
    html body .bp-stat-l,
    html body .lbl,
    html body .bpcta2-badge,
    html body .bpcta2-badge span,
    html body .leg-item,
    html body .leg-item span,
    html body .bpdep-badge,
    html body .bpdep-author-role,
    html body .bfaq-tag,
    html body .bplan-footer-col h4,
    html body .elementor-icon-box-description,
    html body .bplan-contact-card-label,
    html body .elementor-field-label,
    html body .bp2-dica,
    html body .bp2-dor,
    html body .quick-label,
    html body .btn.btn-green,
    html body .btn.btn-navy,
    html body .btn.btn-gold{ font-size:12px !important; }

    /* 4. hamburguer com area de toque de 44px */
    html body .elementor-menu-toggle{ min-width:46px !important; min-height:46px !important; }

    /* 5. setas e pontos de carrossel */
    html body .elementor-swiper-button{ width:46px !important; height:46px !important; display:flex !important; align-items:center !important; justify-content:center !important; }
    html body .bseg-arrow,
    html body .bpdep-arrow{ min-width:46px !important; min-height:46px !important; }
    html body .bseg-dot,
    html body .bpdep-dot{ min-width:24px !important; min-height:46px !important; padding:11px 5px !important; background-clip:content-box !important; }
    html body .bseg-dots,
    html body .bpdep-dots{ flex-wrap:wrap !important; justify-content:center !important; column-gap:2px !important; max-width:100% !important; }
    html body .elementor-element-logobadge2026 span{ font-size:12px !important; }

    /* 6. botoes com altura minima de 44px */
    html body .btn.btn-green,
    html body .btn.btn-gold,
    html body .bsst-btn-secondary{ min-height:46px !important; display:inline-flex !important; align-items:center !important; justify-content:center !important; }

  }

}

/* ===== wpcode 12879 | Bplan - Formulario e popup (fechar, foco e tipografia) ===== */
/* ============================================================
   BPLAN - Formulario e popup: fechar, foco e tipografia
   ============================================================ */

/* 1. Botao de fechar do popup: somente o X, sem quadrado nem anel */
html body .elementor-popup-modal .dialog-close-button,
html body .dialog-lightbox-close-button{
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  padding: 0 !important;
}
html body .elementor-popup-modal .dialog-close-button i,
html body .elementor-popup-modal .dialog-close-button svg{
  color: #14202E !important;
  fill: #14202E !important;
  font-size: 20px !important;
  opacity: .7;
  transition: opacity .15s ease;
}
html body .elementor-popup-modal .dialog-close-button:hover i,
html body .elementor-popup-modal .dialog-close-button:hover svg{ opacity: 1 !important; }

/* 2. Anel de foco dourado apenas para navegacao por teclado */
html body a:focus:not(:focus-visible),
html body button:focus:not(:focus-visible),
html body [tabindex]:focus:not(:focus-visible){ outline: 0 !important; }
html body a:focus-visible,
html body button:focus-visible,
html body input:focus-visible,
html body select:focus-visible,
html body textarea:focus-visible,
html body [tabindex]:focus-visible{
  outline: 2px solid #C4A267 !important;
  outline-offset: 2px !important;
}

/* 3. Escala tipografica unica do formulario (era 8 tamanhos, agora 3) */
html body .elementor-form label.elementor-field-label{
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
}
html body .elementor-form .elementor-field,
html body .elementor-form .elementor-field-textual{
  font-size: 14px !important;
  font-weight: 400 !important;
}
html body .elementor-form button.elementor-button,
html body .elementor-form .elementor-button span,
html body .bp-dores-toggle,
html body .bp-dores-toggle .bp-dores-txt{
  font-size: 14px !important;
  font-weight: 600 !important;
}
html body .bp2-dica,
html body .bp2-promessa,
html body .bp2-dor,
html body .elementor-form .elementor-field-subgroup label{
  font-size: 12px !important;
}

/* campo com 16px no celular evita o zoom automatico do iOS */
@media (max-width: 768px){
  html body .elementor-form .elementor-field,
  html body .elementor-form .elementor-field-textual{ font-size: 16px !important; }
}

/* 4. Chamada de qualificacao no topo do formulario */
html body .bp-chamada{
  display: block;
  margin: 0 0 18px;
  padding: 14px 16px;
  background: rgba(196, 162, 103, .10);
  border-left: 3px solid #C4A267;
  border-radius: 10px;
}
html body .bp-chamada__preco{
  display: block;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.35;
  color: #14202E;
  margin-bottom: 4px;
}
html body .bp-chamada__apoio{
  display: block;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  color: #4A5565;
}
@media (max-width: 600px){
  html body .bp-chamada{ padding: 12px 14px; }
  html body .bp-chamada__preco{ font-size: 18px; }
}

/* 5. Borda parasita em links sem classe
   O normalizador de cor aplica border-color inline. Em links que nao declaram
   borda, isso revela um border-style latente do WordPress e desenha um retangulo
   (era o caso do logo no cabecalho). Anula so onde nao ha borda intencional. */
html body a[style*="border-color"]:not([class]),
html body a[style*="border-color"][class=""]{
  border-style: none !important;
}

/* 6. O X do popup nunca mostra o anel dourado.
   O Elementor foca esse botao sozinho ao abrir, e o Chrome trata foco
   programatico como focus-visible. Para teclado fica um anel discreto. */
html body .elementor-popup-modal .dialog-close-button:focus,
html body .dialog-lightbox-close-button:focus{
  outline: 0 !important;
  box-shadow: none !important;
  background-color: transparent !important;
}
html body .elementor-popup-modal .dialog-close-button:focus-visible{
  outline: 2px solid rgba(20, 32, 46, .35) !important;
  outline-offset: 4px !important;
}

/* 7. Mesma escala, agora com especificidade de ID para vencer o CSS
   embutido do formulario, que carrega depois do cabecalho. */
html body #form_poup_up .bp2-dica,
html body #form_poup_up .bp2-promessa,
html body #form_poup_up .bp2-dor,
html body .elementor-widget-form .bp2-dica,
html body .elementor-widget-form .bp2-promessa,
html body .elementor-widget-form .bp2-dor,
html body .bp2-dica.bp2-dica.bp2-dica,
html body .bp2-promessa.bp2-promessa.bp2-promessa,
html body .bp2-dor.bp2-dor.bp2-dor{
  font-size: 12px !important;
  line-height: 1.45 !important;
}
html body #form_poup_up button.elementor-button,
html body #form_poup_up .elementor-button .elementor-button-text,
html body .elementor-widget-form button.elementor-button.elementor-button{
  font-size: 14px !important;
  font-weight: 600 !important;
}
/* caixas de marcacao nao carregam texto, ficam fora da escala */
html body .elementor-form input[type="checkbox"].elementor-field,
html body .elementor-form input[type="radio"].elementor-field{
  font-size: inherit !important;
}

/* 8. Selos de confianca do formulario na mesma escala de apoio */
html body .bp2-selo.bp2-selo.bp2-selo,
html body .bp2-selo.bp2-selo.bp2-selo span,
html body #form_poup_up .bp2-selo,
html body #form_poup_up .bp2-selo span{
  font-size: 12px !important;
  line-height: 1.45 !important;
}

/* ============================================================
   9. Cabecalho do formulario e faixa de preco
   O destaque passa a ser o preco, nao o titulo.
   Verde #166534 ja existe no site como token (--verde / --ok).
   ============================================================ */
html body h2.bp-title-form,
html body .bp-title-form.elementor-heading-title{
  font-size: 24px !important;
  line-height: 1.25 !important;
  font-weight: 700 !important;
  margin-bottom: 14px !important;
}

html body .bp-chamada{
  background: #166534 !important;
  border: 0 !important;
  border-left: 0 !important;
  border-radius: 12px !important;
  padding: 16px 18px !important;
  margin: 0 0 20px !important;
}
html body .bp-chamada__preco{
  color: #FFFFFF !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  margin-bottom: 5px !important;
}
html body .bp-chamada__apoio{
  color: rgba(255, 255, 255, .88) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
}

/* ============================================================
   10. Formulario pronto para o dedo
   ============================================================ */
html body .elementor-form button.elementor-button,
html body .elementor-form .elementor-button-text{
  text-transform: none !important;
  letter-spacing: 0 !important;
}
html body .elementor-form .elementor-field-textual,
html body .elementor-form select.elementor-field{
  min-height: 46px !important;
}
html body .elementor-form textarea.elementor-field{ min-height: 88px !important; }

@media (max-width: 768px){
  html body h2.bp-title-form{ font-size: 20px !important; }
  html body .bp-chamada{ padding: 14px 15px !important; }
  html body .bp-chamada__preco{ font-size: 18px !important; }
  html body .bp-chamada__apoio{ font-size: 13px !important; }

  html body .elementor-form .elementor-field-group{
    width: 100% !important;
    flex-basis: 100% !important;
    max-width: 100% !important;
    margin-bottom: 14px !important;
  }
  html body .elementor-form .elementor-field-textual,
  html body .elementor-form select.elementor-field{
    min-height: 50px !important;
    padding-top: 12px !important;
    padding-bottom: 12px !important;
  }
  html body .elementor-form button.elementor-button{
    width: 100% !important;
    min-height: 52px !important;
  }
  html body .bp-dores-toggle{ min-height: 50px !important; }
  html body .bp2-dor{ min-height: 40px !important; padding: 10px 13px !important; }
  html body .elementor-form input[type="checkbox"]{
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
  }
  html body .elementor-form .elementor-field-option label{ line-height: 1.5 !important; }
}

/* ============================================================
   11. Altura de toque dos campos
   O CSS do proprio formulario fixa 38px repetindo classes para
   ganhar especificidade. Aqui a contagem precisa ser maior.
   ============================================================ */
html body .elementor-form select.elementor-field-textual.elementor-field-textual.elementor-field-textual.elementor-field-textual.elementor-field-textual.elementor-field-textual,
html body .elementor-form input.elementor-field-textual.elementor-field-textual.elementor-field-textual.elementor-field-textual.elementor-field-textual.elementor-field-textual{
  min-height: 46px !important;
}
html body .elementor-form textarea.elementor-field-textual.elementor-field-textual.elementor-field-textual.elementor-field-textual.elementor-field-textual.elementor-field-textual{
  min-height: 88px !important;
}

@media (max-width: 768px){
  html body .elementor-form select.elementor-field-textual.elementor-field-textual.elementor-field-textual.elementor-field-textual.elementor-field-textual.elementor-field-textual,
  html body .elementor-form input.elementor-field-textual.elementor-field-textual.elementor-field-textual.elementor-field-textual.elementor-field-textual.elementor-field-textual{
    min-height: 50px !important;
    padding-top: 12px !important;
    padding-bottom: 12px !important;
  }
  html body .elementor-form button.elementor-button.elementor-button.elementor-button.elementor-button.elementor-button.elementor-button{
    min-height: 52px !important;
    width: 100% !important;
  }
}

/* ============================================================
   12. Confirmacao da empresa vinda do CNPJ
   Quando a consulta preenche razao social, cidade e estado,
   os tres campos somem e viram uma linha de conferencia.
   ============================================================ */
html body .bp-confirma{
  display: block;
  margin: 0 0 16px;
  padding: 12px 14px;
  background: #F4F6F8;
  border: 1px solid #E2E6EA;
  border-radius: 10px;
}
html body .bp-confirma__nome{
  display: block;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #14202E;
  line-height: 1.35;
}
html body .bp-confirma__local{
  display: block;
  font-size: 12px !important;
  font-weight: 400 !important;
  color: #4A5565;
  margin-top: 3px;
  line-height: 1.4;
}
html body .bp-confirma__editar{
  display: inline-block;
  margin-top: 9px;
  padding: 0 !important;
  min-height: 0 !important;
  background: none !important;
  border: 0 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  color: #166534 !important;
  text-decoration: underline;
  cursor: pointer;
  width: auto !important;
}
html body .bp-confirma__editar:hover{ opacity: .8; }
html body .bp-oculto{
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  white-space: nowrap !important;
  margin: 0 !important;
  padding: 0 !important;
}
