/* WessIA V22.9 — camada final consolidada.
   Preserva em ordem a cascata aprovada de V22.1 → V22.8.
   WhatsApp flutuante removido por redundância/overlap no mobile. */

/* ===== origem consolidada: wessia-integrity-final.css ===== */
/* WessIA integrity closure — 2026-09-25
   Purpose: reserve safe space for the fixed lead CTA and prevent mobile overlap.
   Scoped to institutional v22 pages only. Demos retain their own layout systems. */
@media (max-width:760px){
  html body.v22{padding-bottom:calc(104px + env(safe-area-inset-bottom))!important;}
  html body.v22 .v88-lead-float{
    left:12px!important;right:12px!important;
    bottom:max(12px,env(safe-area-inset-bottom))!important;
    width:auto!important;max-width:none!important;
    min-height:52px!important;
    padding:12px 16px!important;
    border-radius:16px!important;
  }
  html body.v22 main#main-content{min-width:0!important;}
  html body.v22 main#main-content>*{max-width:100%;}
}
@media (max-width:360px){
  html body.v22 .v88-lead-float{left:10px!important;right:10px!important;}
}

/* ===== origem consolidada: wessia-coherence-v22-2.css ===== */

/* =========================================================
   WessIA V22.2 — coerência visual sem alterar estrutura
   Escopo: navegação, contraste do header/menu e WhatsApp.
   ========================================================= */

/* Header: reforça leitura mantendo geometria original */
html body.v22:not(.v21-demo) .v25-header,
html body.v22:not(.v21-demo) .v22-header{
  background:#F4F6F5!important;
  border-bottom:1px solid #B9C7CC!important;
}
html body.v22:not(.v21-demo) .v22-brand strong{
  color:#17313B!important;
  -webkit-text-fill-color:#17313B!important;
}
html body.v22:not(.v21-demo) .v22-brand small{
  color:#29434D!important;
  -webkit-text-fill-color:#29434D!important;
  opacity:1!important;
}
html body.v22:not(.v21-demo) .v25-header-cta,
html body.v22:not(.v21-demo) .v22-cta{
  background:#FFFFFF!important;
  background-image:none!important;
  color:#17313B!important;
  -webkit-text-fill-color:#17313B!important;
  border:1px solid #9FB0B7!important;
  box-shadow:none!important;
}
html body.v22:not(.v21-demo) .v25-header-cta:hover,
html body.v22:not(.v21-demo) .v22-cta:hover{
  background:#17313B!important;
  border-color:#17313B!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
}

/* Toggle mobile: hambúrguer/fechar nunca some no fundo claro */
html body.v22:not(.v21-demo) .v25-mobile-toggle{
  background:#FFFFFF!important;
  border:1px solid #9FB0B7!important;
  box-shadow:none!important;
  color:#17313B!important;
}
html body.v22:not(.v21-demo) .v25-mobile-toggle span{
  background:#17313B!important;
  opacity:1!important;
}

/* Dropdown desktop: remove bege quente e usa a mesma superfície fria do site */
html body.v22:not(.v21-demo) :is(.v22-menu-panel,.v25-menu-panel){
  background:#FFFFFF!important;
  border:1px solid #C4D0D4!important;
  box-shadow:0 18px 44px rgba(23,49,59,.12)!important;
}
html body.v22:not(.v21-demo) :is(.v22-menu-panel,.v25-menu-panel) a{
  color:#17313B!important;
  -webkit-text-fill-color:#17313B!important;
}
html body.v22:not(.v21-demo) :is(.v22-menu-panel,.v25-menu-panel) span{
  color:#5A6F77!important;
  -webkit-text-fill-color:#5A6F77!important;
}
html body.v22:not(.v21-demo) :is(.v22-menu-panel,.v25-menu-panel) a:hover{
  background:#EEF3F3!important;
}

/* Painel mobile: mesma identidade das páginas publicadas */
@media(max-width:980px){
  html body.v22:not(.v21-demo) .v25-mobile-panel{
    background:#F4F6F5!important;
    border-top:1px solid #B9C7CC!important;
    box-shadow:0 22px 56px rgba(23,49,59,.13)!important;
  }
  html body.v22:not(.v21-demo) .v25-mobile-group{
    background:#FFFFFF!important;
    border:1px solid #C5D1D5!important;
    box-shadow:none!important;
  }
  html body.v22:not(.v21-demo) .v25-mobile-group summary,
  html body.v22:not(.v21-demo) .v25-mobile-direct{
    color:#17313B!important;
    -webkit-text-fill-color:#17313B!important;
  }
  html body.v22:not(.v21-demo) .v25-mobile-group a{
    color:#29434D!important;
    -webkit-text-fill-color:#29434D!important;
    border-top-color:#DCE4E6!important;
  }
  html body.v22:not(.v21-demo) .v25-mobile-group a:hover,
  html body.v22:not(.v21-demo) .v25-mobile-direct:hover{
    background:#EEF3F3!important;
    color:#17313B!important;
    -webkit-text-fill-color:#17313B!important;
  }
  /* WhatsApp dentro do menu: comercial, sóbrio, sem faixa dourada */
  html body.v22:not(.v21-demo) .v25-mobile-primary{
    min-height:54px!important;
    margin-top:8px!important;
    background:#17313B!important;
    background-image:none!important;
    color:#FFFFFF!important;
    -webkit-text-fill-color:#FFFFFF!important;
    border:1px solid #17313B!important;
    border-radius:14px!important;
    box-shadow:none!important;
  }
  html body.v22:not(.v21-demo) .v25-mobile-primary:hover,
  html body.v22:not(.v21-demo) .v25-mobile-primary:focus-visible{
    background:#29434D!important;
    border-color:#29434D!important;
    color:#FFFFFF!important;
    -webkit-text-fill-color:#FFFFFF!important;
  }
}

/* WhatsApp flutuante: canal discreto; não compete com CTA principal */
html body.v22:not(.v21-demo) a.v88-lead-float{
  left:auto!important;
  right:18px!important;
  bottom:max(18px,env(safe-area-inset-bottom))!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  min-height:52px!important;
  height:52px!important;
  padding:0 15px!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  border-radius:14px!important;
  background:#FFFFFF!important;
  background-image:none!important;
  border:1px solid #9FB0B7!important;
  color:#17313B!important;
  -webkit-text-fill-color:#17313B!important;
  box-shadow:0 10px 28px rgba(23,49,59,.12)!important;
  text-align:left!important;
}
html body.v22:not(.v21-demo) a.v88-lead-float:hover,
html body.v22:not(.v21-demo) a.v88-lead-float:focus-visible{
  background:#17313B!important;
  border-color:#17313B!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
}
html body.v22:not(.v21-demo) a.v88-lead-float>.v22-wa-icon{
  width:21px!important;
  height:21px!important;
  flex:0 0 21px!important;
  display:block!important;
  color:currentColor!important;
}
html body.v22:not(.v21-demo) a.v88-lead-float>.v22-wa-copy{
  display:grid!important;
  gap:1px!important;
}
html body.v22:not(.v21-demo) a.v88-lead-float>.v22-wa-copy>span{
  font-size:13px!important;
  font-weight:850!important;
  line-height:1.05!important;
  color:inherit!important;
  -webkit-text-fill-color:inherit!important;
}
html body.v22:not(.v21-demo) a.v88-lead-float>.v22-wa-copy>small{
  font-size:10.5px!important;
  line-height:1.05!important;
  color:#62757D!important;
  -webkit-text-fill-color:#62757D!important;
}
html body.v22:not(.v21-demo) a.v88-lead-float:hover>.v22-wa-copy>small{
  color:#DDE5E7!important;
  -webkit-text-fill-color:#DDE5E7!important;
}

/* Mobile: WhatsApp vira somente um botão identificável de 52px no canto */
@media(max-width:760px){
  html body.v22:not(.v21-demo){
    padding-bottom:calc(74px + env(safe-area-inset-bottom))!important;
  }
  html body.v22:not(.v21-demo) a.v88-lead-float{
    left:auto!important;
    right:13px!important;
    bottom:max(13px,env(safe-area-inset-bottom))!important;
    width:52px!important;
    min-width:52px!important;
    max-width:52px!important;
    height:52px!important;
    min-height:52px!important;
    padding:0!important;
    border-radius:16px!important;
    text-align:center!important;
  }
  html body.v22:not(.v21-demo) a.v88-lead-float>.v22-wa-copy{
    display:none!important;
  }
  html body.v22:not(.v21-demo) a.v88-lead-float>.v22-wa-icon{
    width:23px!important;
    height:23px!important;
    flex-basis:23px!important;
  }
}


/* Fechamento de coerência do menu mobile após QA visual */
@media(max-width:980px){
  html body.v22:not(.v21-demo) a.v25-mobile-direct{
    display:flex!important;
    align-items:center!important;
    min-height:58px!important;
    padding:0 20px!important;
    background:#FFFFFF!important;
    border:1px solid #C5D1D5!important;
    border-radius:16px!important;
    color:#17313B!important;
    -webkit-text-fill-color:#17313B!important;
    box-shadow:none!important;
  }
  html body.v22:not(.v21-demo) a.v25-mobile-primary,
  html body.v22:not(.v21-demo) a.v25-mobile-primary:link,
  html body.v22:not(.v21-demo) a.v25-mobile-primary:visited{
    background:#17313B!important;
    background-color:#17313B!important;
    background-image:none!important;
    border-color:#17313B!important;
    color:#FFFFFF!important;
    -webkit-text-fill-color:#FFFFFF!important;
  }
  html body.v22:not(.v21-demo) a.v25-mobile-primary *,
  html body.v22:not(.v21-demo) a.v25-mobile-primary span{
    color:#FFFFFF!important;
    -webkit-text-fill-color:#FFFFFF!important;
  }
}

/* ===== origem consolidada: wessia-refine-v22-3.css ===== */

/* =========================================================
   WessIA V22.3 — refino responsivo sem alterar arquitetura
   - mesma paleta/fundo
   - bordas mais legíveis
   - case real alinhado
   - WhatsApp mais refinado
   ========================================================= */

/* Linhas globais um pouco mais presentes, sem trocar o fundo */
html body.v22:not(.v21-demo){
  --ws-line:#B8C7CC;
  --ws-line-strong:#8FA5AD;
  --ws-shadow:0 8px 24px rgba(22,42,51,.06);
  --ws-shadow-hover:0 12px 30px rgba(22,42,51,.09);
}

/* Separadores permanecem discretos, mas não somem */
html body.v22:not(.v21-demo) main>section{
  border-color:var(--ws-line)!important;
}

/* Cards e superfícies: apenas reforço de contorno */
html body.v22:not(.v21-demo) :is(
  article,[class*="card"],details,.faq-list details,
  .v22-cap-grid>a,.v22-market-grid>a,.v22-insight-grid>a,
  .v9-blog-card,.v91-preferred,.v86-audit-card
){
  border-color:var(--ws-line)!important;
}

/* CASE REAL — preserva o bloco, corrige equilíbrio e alinhamento */
html body.v22.v21-home .v77-case-proof{
  background:var(--ws-page)!important;
  border-top:1px solid var(--ws-line)!important;
  border-bottom:1px solid var(--ws-line)!important;
}
html body.v22.v21-home .v77-case-proof .v72-proof-inner{
  grid-template-columns:128px minmax(0,1fr) 224px!important;
  grid-template-areas:"thumb main actions"!important;
  gap:22px!important;
  align-items:center!important;
  padding:22px!important;
  background:var(--ws-surface)!important;
  border:1px solid var(--ws-line)!important;
  border-radius:18px!important;
  box-shadow:var(--ws-shadow)!important;
}
html body.v22.v21-home .v77-case-proof .v72-case-thumb{
  grid-area:thumb!important;
  width:128px!important;
  height:96px!important;
  align-self:center!important;
  margin:0!important;
  border:1px solid var(--ws-line-strong)!important;
  border-radius:10px!important;
  background:var(--ws-surface)!important;
}
html body.v22.v21-home .v77-case-proof .v72-case-thumb img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:top center!important;
}
html body.v22.v21-home .v77-case-proof .v72-case-main{
  grid-area:main!important;
  align-self:center!important;
}
html body.v22.v21-home .v77-case-proof .v72-case-label{
  color:#3E5963!important;
  -webkit-text-fill-color:#3E5963!important;
  letter-spacing:.12em!important;
}
html body.v22.v21-home .v77-case-proof .v72-case-main h2{
  color:var(--ws-text)!important;
  -webkit-text-fill-color:var(--ws-text)!important;
  margin:4px 0 7px!important;
}
html body.v22.v21-home .v77-case-proof .v72-case-context{
  color:#53666E!important;
  -webkit-text-fill-color:#53666E!important;
  line-height:1.48!important;
}
html body.v22.v21-home .v77-case-proof .v72-case-context strong{
  color:var(--ws-text)!important;
  -webkit-text-fill-color:var(--ws-text)!important;
}
html body.v22.v21-home .v77-case-proof .v14-case-actions{
  grid-area:actions!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
  width:100%!important;
  align-self:center!important;
}
html body.v22.v21-home .v77-case-proof .v14-case-actions>a{
  width:100%!important;
  min-height:48px!important;
  padding:10px 14px!important;
  border-radius:12px!important;
  justify-content:center!important;
  text-align:center!important;
  white-space:normal!important;
  border:1px solid var(--ws-line-strong)!important;
}
/* A prova real vira a ação principal; contato permanece secundário */
html body.v22.v21-home .v77-case-proof .v72-case-link{
  background:var(--ws-text)!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
  border-color:var(--ws-text)!important;
  text-decoration:none!important;
}
html body.v22.v21-home .v77-case-proof .v72-case-link:hover,
html body.v22.v21-home .v77-case-proof .v72-case-link:focus-visible{
  background:#2C4650!important;
  border-color:#2C4650!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
}
html body.v22.v21-home .v77-case-proof .v90-case-cta{
  background:#FFFFFF!important;
  color:var(--ws-text)!important;
  -webkit-text-fill-color:var(--ws-text)!important;
  border-color:var(--ws-line-strong)!important;
}
html body.v22.v21-home .v77-case-proof .v90-case-cta:hover,
html body.v22.v21-home .v77-case-proof .v90-case-cta:focus-visible{
  background:#EEF3F3!important;
  color:var(--ws-text)!important;
  -webkit-text-fill-color:var(--ws-text)!important;
}

/* Tablet: ações descem sem comprimir texto ou imagem */
@media(max-width:980px){
  html body.v22.v21-home .v77-case-proof .v72-proof-inner{
    grid-template-columns:112px minmax(0,1fr)!important;
    grid-template-areas:
      "thumb main"
      "actions actions"!important;
    align-items:start!important;
    gap:16px 18px!important;
  }
  html body.v22.v21-home .v77-case-proof .v72-case-thumb{
    width:112px!important;
    height:84px!important;
    align-self:start!important;
  }
  html body.v22.v21-home .v77-case-proof .v14-case-actions{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

/* Mobile: imagem + texto alinhados; ações abaixo ocupam a mesma régua */
@media(max-width:600px){
  html body.v22.v21-home .v77-case-proof{
    padding-block:28px!important;
  }
  html body.v22.v21-home .v77-case-proof .v72-proof-inner{
    grid-template-columns:92px minmax(0,1fr)!important;
    grid-template-areas:
      "thumb main"
      "actions actions"!important;
    gap:14px 14px!important;
    padding:18px!important;
    border-radius:16px!important;
  }
  html body.v22.v21-home .v77-case-proof .v72-case-thumb{
    width:92px!important;
    height:72px!important;
    align-self:start!important;
  }
  html body.v22.v21-home .v77-case-proof .v72-case-main h2{
    font-size:clamp(18px,5.2vw,22px)!important;
    line-height:1.08!important;
  }
  html body.v22.v21-home .v77-case-proof .v72-case-context{
    font-size:clamp(12px,3.4vw,14px)!important;
    line-height:1.45!important;
  }
  html body.v22.v21-home .v77-case-proof .v14-case-actions{
    grid-template-columns:1fr!important;
    gap:9px!important;
  }
  html body.v22.v21-home .v77-case-proof .v14-case-actions>a{
    min-height:48px!important;
  }
}

/* WhatsApp — mais reconhecível, sóbrio e não invasivo */
html body.v22:not(.v21-demo) a.v88-lead-float{
  border-color:var(--ws-line-strong)!important;
  box-shadow:0 8px 22px rgba(22,42,51,.11)!important;
}
html body.v22:not(.v21-demo) a.v88-lead-float>.v22-wa-icon{
  width:22px!important;
  height:22px!important;
  flex:0 0 22px!important;
}
html body.v22:not(.v21-demo) a.v88-lead-float:hover,
html body.v22:not(.v21-demo) a.v88-lead-float:focus-visible{
  transform:translateY(-1px)!important;
  box-shadow:0 10px 25px rgba(22,42,51,.14)!important;
}
@media(max-width:760px){
  html body.v22:not(.v21-demo) a.v88-lead-float{
    width:52px!important;
    min-width:52px!important;
    max-width:52px!important;
    height:52px!important;
    min-height:52px!important;
    right:14px!important;
    bottom:max(14px,env(safe-area-inset-bottom))!important;
    border-radius:15px!important;
  }
  html body.v22:not(.v21-demo) a.v88-lead-float>.v22-wa-icon{
    width:24px!important;
    height:24px!important;
    flex-basis:24px!important;
  }
}


/* Fechamento do case em celulares estreitos:
   as duas ações seguem a largura do card e não ficam deslocadas para a direita. */
@media(max-width:600px){
  html body.v22.v21-home .v77-case-proof .v14-case-actions>a,
  html body.v22.v21-home .v77-case-proof .v72-case-link,
  html body.v22.v21-home .v77-case-proof .v90-case-cta{
    grid-column:1 / -1!important;
    justify-self:stretch!important;
    align-self:stretch!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
  }
}

/* ===== origem consolidada: wessia-finish-v22-4.css ===== */

/* =========================================================
   WessIA V22.4 — acabamento de linhas e WhatsApp
   Escopo estrito: sem trocar fundo, layout, ordem ou tipografia.
   ========================================================= */

/* Régua de linha levemente mais nítida em todo o sistema institucional */
html body.v22:not(.v21-demo){
  --ws-line:#AFC0C6;
  --ws-line-strong:#839BA4;
}

/* Cards, blocos, filtros e controles: contorno não pode desaparecer */
html body.v22:not(.v21-demo) :is(
  [data-w12-card="1"],.card,.panel,.tile,.prime-card,.service-card,.project-card,.choice-card,
  .feature-card,.item-card,.menu-card,.catalog-card,.v9-blog-card,.v16-demo-card,.v20-demo-card,
  .v25-inline-cta,.v72-proof-inner,.v91-preferred,.v91-data-card,.v91-metric,.v26-doc-card,
  .faq-list details,.v21-related-grid>a,.v22-cap-grid>a,.v22-market-grid>a,.v22-insight-grid>a
){
  border-color:var(--ws-line)!important;
}

/* Botões em pill: todos os quatro lados sempre visíveis.
   Corrige especificamente o "Fazer diagnóstico inicial" que herdava border-bottom:0. */
html body.v22:not(.v21-demo) :is(
  .v25-diagnostic-link,.prime-diagnostic-open,.v22-btn,.v86-audit-btn,.v86-audit-link,
  .v25-header-cta,.v22-cta,.v25-mobile-primary,.v14-case-actions>a
){
  border:1px solid var(--ws-line-strong)!important;
  border-bottom:1px solid var(--ws-line-strong)!important;
}
html body.v22:not(.v21-demo) :is(.v25-diagnostic-link,.prime-diagnostic-open){
  box-shadow:none!important;
  text-decoration:none!important;
}

/* Blog: cada célula mantém sua linha inferior, inclusive WEB.
   Evita a última célula parecer "aberta" no mobile. */
html body.v22:not(.v21-demo) .v22-blog-strip>.v22-shell>div{
  border-bottom:1px solid var(--ws-line)!important;
  padding-bottom:14px!important;
}
@media(min-width:821px){
  html body.v22:not(.v21-demo) .v22-blog-strip>.v22-shell>div{
    border-bottom:1px solid var(--ws-line)!important;
  }
}
@media(max-width:820px){
  html body.v22:not(.v21-demo) .v22-blog-strip>.v22-shell>div:last-child{
    border-bottom:1px solid var(--ws-line)!important;
  }
}

/* Rodapé: só e-mail. O WhatsApp comercial fica exclusivamente no ícone flutuante. */
html body.v22:not(.v21-demo) .v22-footer-contact{
  display:inline-flex!important;
  max-width:100%!important;
  overflow-wrap:anywhere!important;
  color:var(--ws-text)!important;
  -webkit-text-fill-color:var(--ws-text)!important;
}

/* WhatsApp flutuante: mais legível sem verde externo à paleta. */
html body.v22:not(.v21-demo) a.v88-lead-float{
  background:#FFFFFF!important;
  background-image:none!important;
  border:1px solid var(--ws-line-strong)!important;
  color:#17313B!important;
  -webkit-text-fill-color:#17313B!important;
  box-shadow:0 8px 22px rgba(22,42,51,.12)!important;
}
html body.v22:not(.v21-demo) a.v88-lead-float>.v22-wa-icon{
  color:#17313B!important;
  stroke-width:2.15!important;
}
html body.v22:not(.v21-demo) a.v88-lead-float:hover,
html body.v22:not(.v21-demo) a.v88-lead-float:focus-visible{
  background:#17313B!important;
  border-color:#17313B!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
}
html body.v22:not(.v21-demo) a.v88-lead-float:hover>.v22-wa-icon,
html body.v22:not(.v21-demo) a.v88-lead-float:focus-visible>.v22-wa-icon{
  color:#FFFFFF!important;
}

/* Mobile: somente o ícone, sem cobrir conteúdo ou criar faixa. */
@media(max-width:760px){
  html body.v22:not(.v21-demo) a.v88-lead-float{
    width:52px!important;
    min-width:52px!important;
    max-width:52px!important;
    height:52px!important;
    min-height:52px!important;
    right:14px!important;
    bottom:max(14px,env(safe-area-inset-bottom))!important;
    padding:0!important;
    border-radius:15px!important;
  }
  html body.v22:not(.v21-demo) a.v88-lead-float>.v22-wa-copy{
    display:none!important;
  }
  html body.v22:not(.v21-demo) a.v88-lead-float>.v22-wa-icon{
    width:24px!important;
    height:24px!important;
    flex:0 0 24px!important;
  }
}

/* ===== origem consolidada: wessia-premium-v22-7.css ===== */

/* =========================================================
   WessIA V22.7 — Refino Premium Coerente
   Escopo:
   - mantém fundo claro frio e superfícies brancas
   - mantém texto principal/segundário com alto contraste
   - bronze frio somente em microacentos
   - sem gradientes, fundos dourados ou texto claro em fundo claro
   ========================================================= */

html body#wessia-v9#wessia-v9.v22:not(.v21-demo){
  --ws-page:#F4F6F5;
  --ws-surface:#FFFFFF;
  --ws-text:#17313B;
  --ws-text-soft:#52666E;
  --ws-line:#AFC0C6;
  --ws-line-strong:#839BA4;
  --ws-accent:#315C57;
  --ws-premium:#8A6A2F;
  --ws-focus:rgba(49,92,87,.18);
}

/* Fundo e superfícies permanecem frios e limpos. */
html body#wessia-v9#wessia-v9.v22:not(.v21-demo),
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) main#main-content,
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) main#main-content>section{
  background-color:var(--ws-page)!important;
}
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) :is(
  [data-w12-card="1"],.card,.panel,.tile,.prime-card,.service-card,.project-card,
  .choice-card,.feature-card,.item-card,.menu-card,.catalog-card,.v9-blog-card,
  .v16-demo-card,.v20-demo-card,.v25-inline-cta,.v72-proof-inner,.v91-preferred,
  .v91-data-card,.v91-metric,.v26-doc-card,.faq-list details,.v21-related-grid>a,
  .v22-cap-grid>a,.v22-market-grid>a,.v22-insight-grid>a
){
  background:var(--ws-surface)!important;
  background-image:none!important;
  border-color:var(--ws-line)!important;
}

/* Texto: duas cores funcionais. Bronze NÃO entra em parágrafo comum. */
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) :is(h1,h2,h3,h4,h5,h6,strong,b,summary){
  color:var(--ws-text)!important;
  -webkit-text-fill-color:var(--ws-text)!important;
}
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) :is(p,li,dd,dt,label,figcaption,caption){
  color:var(--ws-text-soft)!important;
  -webkit-text-fill-color:var(--ws-text-soft)!important;
}
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) :is(
  small,.muted,.meta,.breadcrumbs,.article-breadcrumb,.prime-breadcrumb,.v9-article-meta
){
  color:#5A6E76!important;
  -webkit-text-fill-color:#5A6E76!important;
  opacity:1!important;
}

/* Microacento premium: somente rótulos/eyebrows e pequenos marcadores editoriais. */
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) :is(
  .eyebrow,.hero-kicker,.v22-kicker,.v9-kicker,.v9-blog-kicker,
  .section-heading>span,.v22-section-head>div>span,.deliverables>span,
  .c26-kicker,.v72-case-label,.v21-related-head>span
){
  color:var(--ws-premium)!important;
  -webkit-text-fill-color:var(--ws-premium)!important;
}

/* Links de conteúdo: leitura em petróleo; bronze só no hover/underline. */
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) main#main-content a:not(
  .v22-btn
):not(.v22-cta):not(.v25-header-cta):not(.v25-mobile-primary):not(
  .v88-lead-float
):not(.v14-case-actions>a){
  color:#315C57!important;
  -webkit-text-fill-color:#315C57!important;
  text-decoration-color:rgba(138,106,47,.55)!important;
}
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) main#main-content a:not(
  .v22-btn
):not(.v22-cta):not(.v25-header-cta):not(.v25-mobile-primary):not(
  .v88-lead-float
):not(.v14-case-actions>a):hover{
  color:#244944!important;
  -webkit-text-fill-color:#244944!important;
  text-decoration-color:var(--ws-premium)!important;
}

/* Botões: continuam sóbrios, sem dourado grande. */
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) :is(
  .v22-btn,.v22-cta,.v25-header-cta,.v86-audit-btn,.v86-audit-link,
  .v25-diagnostic-link,.prime-diagnostic-open,.v14-case-actions>a
){
  border-color:var(--ws-line-strong)!important;
  box-shadow:none!important;
}
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) :is(
  .v22-btn,.v22-cta,.v25-header-cta,.v86-audit-btn,.v86-audit-link,
  .v25-diagnostic-link,.prime-diagnostic-open,.v14-case-actions>a
):focus-visible{
  outline:2px solid var(--ws-accent)!important;
  outline-offset:3px!important;
  box-shadow:0 0 0 4px var(--ws-focus)!important;
}

/* Pequeno detalhe premium no case real, sem alterar o fundo. */
html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v72-proof-inner{
  border-color:var(--ws-line)!important;
  box-shadow:0 10px 28px rgba(23,49,59,.07)!important;
}
html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v72-case-thumb{
  border-color:var(--ws-line-strong)!important;
}
html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v72-case-label{
  color:var(--ws-premium)!important;
  -webkit-text-fill-color:var(--ws-premium)!important;
}
html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v72-case-main h2{
  color:var(--ws-text)!important;
  -webkit-text-fill-color:var(--ws-text)!important;
}
html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v72-case-context{
  color:var(--ws-text-soft)!important;
  -webkit-text-fill-color:var(--ws-text-soft)!important;
}

/* WhatsApp: permanece monocromático e coerente. */
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) a.v88-lead-float{
  background:#FFFFFF!important;
  border-color:var(--ws-line-strong)!important;
  color:var(--ws-text)!important;
  -webkit-text-fill-color:var(--ws-text)!important;
}
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) a.v88-lead-float:hover,
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) a.v88-lead-float:focus-visible{
  background:var(--ws-text)!important;
  border-color:var(--ws-text)!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
}

/* Linhas e separadores: visíveis sem ficarem pesados. */
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) :is(
  header,.v22-header,.v25-header,.v22-footer,.v25-footer,.v22-blog-strip
){
  border-color:var(--ws-line)!important;
}
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) hr{
  border:0!important;
  border-top:1px solid var(--ws-line)!important;
}

/* Sem alteração de layout por viewport. */

/* ===== origem consolidada: wessia-case-audit-v22-8.css ===== */

/* =========================================================
   WessIA V22.8 — ajuste auditado do case real
   Escopo estrito:
   - desktop/tablet preservam composição horizontal
   - mobile ganha composição própria para leitura
   - bordas estruturais mais nítidas
   - bordas internas/CTAs não ficam pesadas
   - paleta V22.7 preservada
   ========================================================= */

/* Estrutura principal: um pouco mais desenhada, sem endurecer a interface. */
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) main#main-content > section{
  border-color:#9FAFB5!important;
}
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) :is(
  .v72-proof-inner,.v91-preferred,.v25-inline-cta,
  .v9-blog-card,.v21-related-grid>a,.v22-cap-grid>a,.v22-market-grid>a,.v22-insight-grid>a
){
  border-color:#9FAFB5!important;
}

/* Elementos internos continuam leves. */
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) :is(
  .v22-btn,.v86-audit-btn,.v86-audit-link,.v25-diagnostic-link,
  .prime-diagnostic-open,.v14-case-actions>a
){
  border-color:#AFC0C6!important;
}

/* CASE — desktop mantém leitura horizontal e proporção já aprovada. */
html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v72-proof-inner{
  grid-template-columns:128px minmax(0,1fr) 224px!important;
  grid-template-areas:"thumb main actions"!important;
  gap:22px!important;
  align-items:center!important;
  padding:22px!important;
}
html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v72-case-thumb{
  grid-area:thumb!important;
  width:128px!important;
  height:96px!important;
  margin:0!important;
  align-self:center!important;
  border-radius:10px!important;
  border:1px solid #9FAFB5!important;
}
html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v72-case-main{
  grid-area:main!important;
  min-width:0!important;
}
html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v72-case-context{
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}
html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v14-case-actions{
  grid-area:actions!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:9px!important;
  width:100%!important;
}

/* Hierarquia: case é a ação principal; contato fica secundário e mais leve. */
html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v72-case-link{
  background:#17313B!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
  border-color:#17313B!important;
  font-weight:850!important;
}
html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v72-case-link:hover,
html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v72-case-link:focus-visible{
  background:#29434D!important;
  border-color:#29434D!important;
}
html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v90-case-cta{
  background:#FFFFFF!important;
  color:#17313B!important;
  -webkit-text-fill-color:#17313B!important;
  border-color:#AFC0C6!important;
  font-weight:750!important;
}

/* Tablet: imagem + conteúdo; ações abaixo, sem compressão. */
@media (min-width:601px) and (max-width:980px){
  html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v72-proof-inner{
    grid-template-columns:112px minmax(0,1fr)!important;
    grid-template-areas:
      "thumb main"
      "actions actions"!important;
    gap:16px 18px!important;
    align-items:start!important;
  }
  html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v72-case-thumb{
    width:112px!important;
    height:84px!important;
    align-self:start!important;
  }
  html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v14-case-actions{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

/* Mobile: não tenta reproduzir desktop.
   Imagem ganha largura real, depois texto inteiro e só então as ações. */
@media (max-width:600px){
  html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof{
    padding-block:28px!important;
  }
  html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v72-proof-inner{
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-areas:
      "thumb"
      "main"
      "actions"!important;
    gap:16px!important;
    padding:18px!important;
    align-items:start!important;
  }
  html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v72-case-thumb{
    grid-area:thumb!important;
    width:100%!important;
    height:auto!important;
    aspect-ratio:16/9!important;
    max-height:185px!important;
    margin:0!important;
    align-self:auto!important;
    border-radius:10px!important;
  }
  html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v72-case-thumb img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:top center!important;
  }
  html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v72-case-main{
    grid-area:main!important;
    width:100%!important;
  }
  html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v72-case-label{
    margin-bottom:6px!important;
    line-height:1.3!important;
  }
  html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v72-case-main h2{
    margin:0 0 10px!important;
    max-width:none!important;
    font-size:clamp(1.85rem,8vw,2.25rem)!important;
    line-height:1.02!important;
    text-wrap:balance!important;
  }
  html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v72-case-context{
    width:100%!important;
    max-width:none!important;
    font-size:1rem!important;
    line-height:1.58!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    hyphens:none!important;
  }
  html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v14-case-actions{
    grid-area:actions!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
    width:100%!important;
    margin:0!important;
  }
  html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v14-case-actions>a{
    width:100%!important;
    min-height:50px!important;
    margin:0!important;
    justify-self:stretch!important;
    padding:11px 15px!important;
    border-radius:12px!important;
  }
}

/* Celulares muito estreitos: sem quebra de palavra forçada. */
@media (max-width:360px){
  html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v72-proof-inner{
    padding:16px!important;
  }
  html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v72-case-main h2{
    font-size:clamp(1.7rem,8.5vw,2rem)!important;
  }
  html body#wessia-v9#wessia-v9.v22.v21-home .v77-case-proof .v72-case-context{
    font-size:.98rem!important;
  }
}

/* ===== Fechamento V22.9 ===== */

/* Âncoras e foco: leitura previsível. */
html body.v22:not(.v21-demo) :focus-visible{
  outline-offset:3px;
}

/* O case permanece sem hifenização automática em telas estreitas. */
html body.v22.v21-home .v77-case-proof .v72-case-context{
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}

/* Linhas estruturais continuam nítidas, sem escurecer o fundo. */
html body.v22:not(.v21-demo) main#main-content>section{
  border-color:#9FAFB5!important;
}


/* =========================================================
   WessIA V22.12 — Hero mobile compacta, SEO preservado
   Somente apresentação. Conteúdo, H1, links e estrutura indexável intactos.
   ========================================================= */
@media (max-width:600px){
  html body#wessia-v9#wessia-v9.v22.v21-home .v22-hero{
    min-height:0!important;
    padding-top:36px!important;
    padding-bottom:34px!important;
  }

  html body#wessia-v9#wessia-v9.v22.v21-home .v22-hero-grid{
    width:calc(100% - 24px)!important;
  }

  html body#wessia-v9#wessia-v9.v22.v21-home .v22-hero .v22-kicker{
    margin-bottom:16px!important;
    gap:10px!important;
    font-size:.67rem!important;
    line-height:1.35!important;
  }

  html body#wessia-v9#wessia-v9.v22.v21-home .v22-hero .v22-kicker::after{
    width:20px!important;
    flex:0 0 20px!important;
  }

  html body#wessia-v9#wessia-v9.v22.v21-home .v22-hero h1{
    font-size:clamp(2.28rem,10vw,2.78rem)!important;
    line-height:.98!important;
    max-width:15.5ch!important;
    margin-bottom:16px!important;
    letter-spacing:-.045em!important;
  }

  html body#wessia-v9#wessia-v9.v22.v21-home .v22-hero-copy>p{
    margin-bottom:22px!important;
    font-size:1rem!important;
    line-height:1.52!important;
    max-width:100%!important;
  }

  html body#wessia-v9#wessia-v9.v22.v21-home .v22-hero .v22-actions{
    gap:9px!important;
  }

  html body#wessia-v9#wessia-v9.v22.v21-home .v22-hero .v22-btn{
    min-height:48px!important;
    padding:10px 16px!important;
  }

  /* Imagem continua presente e indexável; apenas recebe crop mobile controlado. */
  html body#wessia-v9#wessia-v9.v22.v21-home .wimg3-hero-media{
    width:100%!important;
    height:auto!important;
    aspect-ratio:21/9!important;
    max-height:160px!important;
    margin:24px 0 0!important;
    overflow:hidden!important;
    border-radius:14px!important;
    border:1px solid #9FAFB5!important;
    background:#FFFFFF!important;
  }

  html body#wessia-v9#wessia-v9.v22.v21-home .wimg3-hero-media img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center!important;
  }

  html body#wessia-v9#wessia-v9.v22.v21-home .v86-proofline{
    margin:12px 0 0!important;
    font-size:.78rem!important;
    line-height:1.35!important;
  }
}

/* 320–359 px: evita alongar a primeira dobra. */
@media (max-width:359px){
  html body#wessia-v9#wessia-v9.v22.v21-home .v22-hero{
    padding-top:30px!important;
    padding-bottom:30px!important;
  }
  html body#wessia-v9#wessia-v9.v22.v21-home .v22-hero h1{
    font-size:2.18rem!important;
  }
  html body#wessia-v9#wessia-v9.v22.v21-home .wimg3-hero-media{
    max-height:128px!important;
  }
}


/* =========================================================
   WessIA V22.14 — affordance de navegação em cards clicáveis
   Escopo: somente <a data-w12-card="1">.
   Botões, links comuns, menus e cards informativos permanecem intactos.
   ========================================================= */
html body.v22:not(.v21-demo) a[data-w12-card="1"]{
  position:relative!important;
  padding-right:52px!important;
}

html body.v22:not(.v21-demo) a[data-w12-card="1"]:not([data-w14-existing-indicator="1"])::after{
  content:"›";
  position:absolute;
  right:20px;
  top:50%;
  transform:translateY(-50%);
  color:#315C57;
  -webkit-text-fill-color:#315C57;
  font-family:Arial,Helvetica,sans-serif;
  font-size:1.55rem;
  font-weight:500;
  line-height:1;
  opacity:.78;
  pointer-events:none;
  transition:transform .16s ease,opacity .16s ease;
}

@media (hover:hover) and (pointer:fine){
  html body.v22:not(.v21-demo) a[data-w12-card="1"]:not([data-w14-existing-indicator="1"]):hover::after{
    transform:translate(3px,-50%);
    opacity:1;
  }
}

html body.v22:not(.v21-demo) a[data-w12-card="1"]:not([data-w14-existing-indicator="1"]):focus-visible::after{
  transform:translate(3px,-50%);
  opacity:1;
}

html body.v22:not(.v21-demo) a[data-w12-card="1"]:not([data-w14-existing-indicator="1"]):active::after{
  transform:translate(1px,-50%);
  opacity:1;
}

@media(max-width:600px){
  html body.v22:not(.v21-demo) a[data-w12-card="1"]{
    padding-right:46px!important;
  }
  html body.v22:not(.v21-demo) a[data-w12-card="1"]:not([data-w14-existing-indicator="1"])::after{
    right:16px;
    font-size:1.45rem;
  }
}

@media(prefers-reduced-motion:reduce){
  html body.v22:not(.v21-demo) a[data-w12-card="1"]:not([data-w14-existing-indicator="1"])::after{
    transition:none;
  }
}


/* V22.15 — um único indicador por card.
   Se o card já possui sua própria seta/ícone de navegação, o chevron automático não aparece. */
html body.v22:not(.v21-demo) a[data-w12-card="1"][data-w14-existing-indicator="1"]{
  padding-right:inherit!important;
}
html body.v22:not(.v21-demo) a[data-w12-card="1"][data-w14-existing-indicator="1"]::after{
  content:none!important;
  display:none!important;
}


/* =========================================================
   WessIA V22.16 — segundo case real, sem criar nova seção
   Mantém a prova principal e adiciona uma prova complementar compacta.
   ========================================================= */
html body.v22.v21-home .v77-case-proof .v16-case-secondary{
  width:min(1180px,calc(100% - 40px));
  margin:14px auto 0;
  display:grid;
  grid-template-columns:220px minmax(0,1fr) 190px;
  gap:22px;
  align-items:center;
  padding:16px;
  background:#FFFFFF;
  border:1px solid #9FAFB5;
  border-radius:18px;
  box-shadow:0 10px 28px rgba(23,49,59,.055);
}

html body.v22.v21-home .v16-case-secondary-media{
  display:block;
  overflow:hidden;
  border:1px solid #AFC0C6;
  border-radius:12px;
  aspect-ratio:16/9;
  background:#F4F6F5;
}

html body.v22.v21-home .v16-case-secondary-media picture,
html body.v22.v21-home .v16-case-secondary-media img{
  display:block;
  width:100%;
  height:100%;
}

html body.v22.v21-home .v16-case-secondary-media img{
  object-fit:cover;
  object-position:center top;
}

html body.v22.v21-home .v16-case-secondary-copy{
  min-width:0;
}

html body.v22.v21-home .v16-case-secondary-label{
  display:block;
  margin:0 0 6px;
  color:#8A6A2F;
  -webkit-text-fill-color:#8A6A2F;
  font-size:.68rem;
  line-height:1.25;
  font-weight:850;
  letter-spacing:.13em;
  text-transform:uppercase;
}

html body.v22.v21-home .v16-case-secondary h3{
  margin:0 0 7px;
  color:#17313B;
  -webkit-text-fill-color:#17313B;
  font-family:Georgia,'Times New Roman',Times,serif;
  font-size:clamp(1.35rem,2vw,1.85rem);
  line-height:1.05;
  font-weight:500;
  letter-spacing:-.03em;
}

html body.v22.v21-home .v16-case-secondary p{
  margin:0;
  max-width:62ch;
  color:#52666E;
  -webkit-text-fill-color:#52666E;
  font-size:.94rem;
  line-height:1.5;
}

html body.v22.v21-home .v16-case-secondary-actions{
  display:grid;
  gap:8px;
}

html body.v22.v21-home .v16-case-secondary-actions a{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:9px 12px;
  border:1px solid #AFC0C6;
  border-radius:11px;
  background:#FFFFFF;
  color:#17313B;
  -webkit-text-fill-color:#17313B;
  text-align:center;
  text-decoration:none;
  font-size:.78rem;
  line-height:1.25;
  font-weight:800;
}

html body.v22.v21-home .v16-case-secondary-actions a:first-child{
  background:#17313B;
  border-color:#17313B;
  color:#FFFFFF;
  -webkit-text-fill-color:#FFFFFF;
}

@media(hover:hover) and (pointer:fine){
  html body.v22.v21-home .v16-case-secondary{
    transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;
  }
  html body.v22.v21-home .v16-case-secondary:hover{
    border-color:#839BA4;
    box-shadow:0 14px 34px rgba(23,49,59,.075);
    transform:translateY(-1px);
  }
  html body.v22.v21-home .v16-case-secondary-actions a:hover{
    border-color:#839BA4;
  }
}

@media(max-width:900px){
  html body.v22.v21-home .v77-case-proof .v16-case-secondary{
    grid-template-columns:180px minmax(0,1fr);
    grid-template-areas:
      "media copy"
      "actions actions";
    gap:14px 18px;
  }
  html body.v22.v21-home .v16-case-secondary-media{grid-area:media}
  html body.v22.v21-home .v16-case-secondary-copy{grid-area:copy}
  html body.v22.v21-home .v16-case-secondary-actions{
    grid-area:actions;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:600px){
  html body.v22.v21-home .v77-case-proof .v16-case-secondary{
    width:calc(100% - 24px);
    margin-top:12px;
    grid-template-columns:1fr;
    grid-template-areas:
      "media"
      "copy"
      "actions";
    gap:14px;
    padding:16px;
    border-radius:18px;
  }
  html body.v22.v21-home .v16-case-secondary-media{
    aspect-ratio:21/9;
    max-height:160px;
  }
  html body.v22.v21-home .v16-case-secondary h3{
    font-size:1.55rem;
  }
  html body.v22.v21-home .v16-case-secondary p{
    font-size:.94rem;
    line-height:1.5;
  }
  html body.v22.v21-home .v16-case-secondary-actions{
    grid-template-columns:1fr;
    gap:8px;
  }
}

@media(prefers-reduced-motion:reduce){
  html body.v22.v21-home .v16-case-secondary{
    transition:none;
  }
}


/* V22.16 — preview do site publicado dentro da página do case */
html body.v22:not(.v21-demo) .v16-live-site-preview .v26-doc-window{
  aspect-ratio:16/9;
  overflow:hidden;
  background:#F4F6F5;
}
html body.v22:not(.v21-demo) .v16-live-site-preview .v26-doc-window img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
}


/* V22.16 — fechamento de contraste do CTA primário do segundo case */
html body#wessia-v9.v22.v21-home .v77-case-proof .v16-case-secondary .v16-case-secondary-actions>a:first-child{
  background:#17313B!important;
  background-image:none!important;
  border-color:#17313B!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
}


/* =========================================================
   WessIA V22.17 — arquitetura profissional de cases
   Home = vitrine compacta. /trabalhos/ = coleção central.
   Não altera menu, Hero, paleta, rodapé ou demais seções.
   ========================================================= */
html body.v22:not(.v21-demo) .v17-cases-showcase,
html body.v22:not(.v21-demo) .v17-case-library{
  padding:clamp(30px,4vw,54px) 0;
  background:#F4F6F5;
  border-top:1px solid #9FAFB5;
  border-bottom:1px solid #9FAFB5;
}

html body.v22:not(.v21-demo) .v17-cases-head{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(280px,.75fr);
  gap:clamp(24px,4vw,56px);
  align-items:end;
  margin:0 0 22px;
}

html body.v22:not(.v21-demo) .v17-cases-head>div,
html body.v22:not(.v21-demo) .v17-cases-head>p{
  min-width:0;
}

html body.v22:not(.v21-demo) .v17-cases-kicker{
  display:block;
  margin:0 0 8px;
  color:#8A6A2F;
  -webkit-text-fill-color:#8A6A2F;
  font-size:.69rem;
  font-weight:850;
  letter-spacing:.14em;
  text-transform:uppercase;
}

html body.v22:not(.v21-demo) .v17-cases-head h2{
  margin:0;
  max-width:16ch;
  color:#17313B;
  -webkit-text-fill-color:#17313B;
  font-family:Georgia,'Times New Roman',Times,serif;
  font-size:clamp(2rem,4vw,3.45rem);
  line-height:.98;
  font-weight:500;
  letter-spacing:-.045em;
}

html body.v22:not(.v21-demo) .v17-cases-head>p{
  margin:0;
  justify-self:end;
  max-width:46ch;
  color:#52666E;
  -webkit-text-fill-color:#52666E;
  font-size:1rem;
  line-height:1.55;
}

html body.v22:not(.v21-demo) .v17-cases-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

html body.v22:not(.v21-demo) .v17-case-card{
  display:grid;
  grid-template-columns:42% minmax(0,1fr);
  min-width:0;
  overflow:hidden;
  background:#FFFFFF;
  border:1px solid #9FAFB5;
  border-radius:18px;
  box-shadow:0 10px 28px rgba(23,49,59,.05);
}

html body.v22:not(.v21-demo) .v17-case-media{
  display:block;
  min-width:0;
  overflow:hidden;
  background:#F4F6F5;
  border-right:1px solid #AFC0C6;
}

html body.v22:not(.v21-demo) .v17-case-media picture,
html body.v22:not(.v21-demo) .v17-case-media img{
  display:block;
  width:100%;
  height:100%;
}

html body.v22:not(.v21-demo) .v17-case-media img{
  min-height:100%;
  object-fit:cover;
  object-position:center top;
}

html body.v22:not(.v21-demo) .v17-case-body{
  display:flex;
  flex-direction:column;
  min-width:0;
  padding:18px;
}

html body.v22:not(.v21-demo) .v17-case-body>span{
  display:block;
  margin:0 0 7px;
  color:#8A6A2F;
  -webkit-text-fill-color:#8A6A2F;
  font-size:.64rem;
  line-height:1.3;
  font-weight:850;
  letter-spacing:.12em;
  text-transform:uppercase;
}

html body.v22:not(.v21-demo) .v17-case-body h3{
  margin:0 0 8px;
  color:#17313B;
  -webkit-text-fill-color:#17313B;
  font-family:Georgia,'Times New Roman',Times,serif;
  font-size:clamp(1.35rem,2.2vw,1.85rem);
  line-height:1.03;
  font-weight:500;
  letter-spacing:-.035em;
}

html body.v22:not(.v21-demo) .v17-case-body p{
  margin:0 0 14px;
  color:#52666E;
  -webkit-text-fill-color:#52666E;
  font-size:.88rem;
  line-height:1.5;
}

html body.v22:not(.v21-demo) .v17-case-link{
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  margin-top:auto;
  color:#17313B;
  -webkit-text-fill-color:#17313B;
  font-size:.78rem;
  line-height:1.3;
  font-weight:850;
  text-decoration:none;
  border-bottom:1px solid #839BA4;
}

html body.v22:not(.v21-demo) .v17-cases-foot{
  display:flex;
  justify-content:flex-end;
  margin-top:16px;
}

html body.v22:not(.v21-demo) .v17-cases-foot>a{
  color:#17313B;
  -webkit-text-fill-color:#17313B;
  font-size:.82rem;
  font-weight:850;
  text-decoration:none;
  border-bottom:1px solid #839BA4;
}

@media(hover:hover) and (pointer:fine){
  html body.v22:not(.v21-demo) .v17-case-card{
    transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;
  }
  html body.v22:not(.v21-demo) .v17-case-card:hover{
    transform:translateY(-2px);
    border-color:#839BA4;
    box-shadow:0 14px 34px rgba(23,49,59,.07);
  }
}

@media(max-width:900px){
  html body.v22:not(.v21-demo) .v17-cases-head{
    grid-template-columns:1fr;
    gap:12px;
  }
  html body.v22:not(.v21-demo) .v17-cases-head>p{
    justify-self:start;
  }
  html body.v22:not(.v21-demo) .v17-cases-grid{
    grid-template-columns:1fr;
  }
  html body.v22:not(.v21-demo) .v17-case-card{
    grid-template-columns:34% minmax(0,1fr);
  }
}

@media(max-width:600px){
  html body.v22:not(.v21-demo) .v17-cases-showcase,
  html body.v22:not(.v21-demo) .v17-case-library{
    padding:28px 0;
  }

  html body.v22:not(.v21-demo) .v17-cases-head{
    margin-bottom:16px;
  }

  html body.v22:not(.v21-demo) .v17-cases-head h2{
    font-size:clamp(1.9rem,9vw,2.45rem);
    max-width:12ch;
  }

  html body.v22:not(.v21-demo) .v17-cases-head>p{
    font-size:.94rem;
    line-height:1.48;
  }

  html body.v22:not(.v21-demo) .v17-cases-grid{
    gap:12px;
  }

  html body.v22:not(.v21-demo) .v17-case-card{
    grid-template-columns:112px minmax(0,1fr);
    min-height:154px;
    border-radius:16px;
  }

  html body.v22:not(.v21-demo) .v17-case-media{
    border-right:1px solid #AFC0C6;
  }

  html body.v22:not(.v21-demo) .v17-case-body{
    padding:14px;
  }

  html body.v22:not(.v21-demo) .v17-case-body>span{
    margin-bottom:5px;
    font-size:.58rem;
  }

  html body.v22:not(.v21-demo) .v17-case-body h3{
    margin-bottom:6px;
    font-size:1.22rem;
    line-height:1.04;
  }

  html body.v22:not(.v21-demo) .v17-case-body p{
    margin-bottom:10px;
    font-size:.82rem;
    line-height:1.42;
  }

  html body.v22:not(.v21-demo) .v17-case-link{
    font-size:.73rem;
  }

  html body.v22:not(.v21-demo) .v17-cases-foot{
    justify-content:flex-start;
    margin-top:14px;
  }
}

@media(max-width:350px){
  html body.v22:not(.v21-demo) .v17-case-card{
    grid-template-columns:96px minmax(0,1fr);
  }
  html body.v22:not(.v21-demo) .v17-case-body{
    padding:12px;
  }
  html body.v22:not(.v21-demo) .v17-case-body p{
    font-size:.79rem;
  }
}

@media(prefers-reduced-motion:reduce){
  html body.v22:not(.v21-demo) .v17-case-card{
    transition:none;
  }
}


/* =========================================================
   WessIA V22.19 — régua tipográfica institucional
   Escopo: microtítulos bronze + títulos editoriais grandes no mobile.
   Conteúdo, SEO, paleta e arquitetura preservados.
   ========================================================= */

/* Uma única régua visual para microtítulos institucionais. */
html body.v22:not(.v21-demo) :is(
  .hero-kicker,.eyebrow,.v25-proof-tag,.v72-case-label,.v17-cases-kicker,
  .v9-kicker,.v9-blog-kicker,.section-heading>span,.v22-section-head>div>span,
  .deliverables>span,.c26-kicker,.v21-related-head>span
){
  display:inline-flex!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:0!important;
  width:auto!important;
  max-width:100%!important;
  margin-top:0!important;
  padding:0!important;
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  border-radius:0!important;
  color:#8A6A2F!important;
  -webkit-text-fill-color:#8A6A2F!important;
  font-size:.68rem!important;
  line-height:1.35!important;
  font-weight:850!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  text-wrap:balance;
}

html body.v22:not(.v21-demo) .hero-kicker>i{
  display:none!important;
}

/* Mantém o mesmo respiro entre microtítulo e o título que vem abaixo. */
html body.v22:not(.v21-demo) :is(
  .inner-hero .hero-kicker,
  .v26-project-proof .v25-proof-tag,
  .final-cta .eyebrow,
  .v77-evidence-section .hero-kicker,
  .section-heading>span,
  .v17-cases-kicker
){
  margin-bottom:10px!important;
}

/* O título do bloco de evidência não deve ficar preso a uma coluna estreita no celular. */
@media(max-width:640px){
  html body.v22.v21-case:not(.v21-demo) .v26-project-proof-copy h2{
    width:100%!important;
    max-width:none!important;
    font-size:clamp(2.25rem,10.4vw,2.8rem)!important;
    line-height:1.01!important;
    letter-spacing:-.045em!important;
    text-wrap:balance!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }

  html body.v22.v21-case:not(.v21-demo) .final-cta h2{
    width:100%!important;
    max-width:none!important;
    font-size:clamp(2.35rem,10.7vw,2.95rem)!important;
    line-height:1.01!important;
    letter-spacing:-.045em!important;
    text-wrap:balance!important;
  }

  html body.v22.v21-case:not(.v21-demo) .inner-hero .hero-kicker{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
  }
}

@media(max-width:360px){
  html body.v22:not(.v21-demo) :is(
    .hero-kicker,.eyebrow,.v25-proof-tag,.v72-case-label,.v17-cases-kicker,
    .v9-kicker,.v9-blog-kicker,.section-heading>span,.v22-section-head>div>span,
    .deliverables>span,.c26-kicker,.v21-related-head>span
  ){
    font-size:.64rem!important;
    letter-spacing:.12em!important;
  }
}


/* =========================================================
   WessIA V22.20 — escala tipográfica institucional
   Títulos curtos, médios e longos recebem tamanhos proporcionais.
   Home preservada na escala própria aprovada.
   ========================================================= */

/* H1 institucionais — desktop */
@media(min-width:1000px){
  html body.v22:not(.v21-demo):not(.v21-home) h1[data-w20-title-size="short"]{
    font-size:clamp(3.75rem,5vw,4.35rem)!important;
    line-height:.97!important;
    letter-spacing:-.045em!important;
  }
  html body.v22:not(.v21-demo):not(.v21-home) h1[data-w20-title-size="medium"]{
    font-size:clamp(3.35rem,4.5vw,3.9rem)!important;
    line-height:.98!important;
    letter-spacing:-.043em!important;
  }
  html body.v22:not(.v21-demo):not(.v21-home) h1[data-w20-title-size="long"]{
    font-size:clamp(3rem,4vw,3.45rem)!important;
    line-height:1!important;
    letter-spacing:-.04em!important;
  }
}

/* H1 institucionais — mobile/tablet */
@media(max-width:999px){
  html body.v22:not(.v21-demo):not(.v21-home) h1[data-w20-title-size="short"]{
    font-size:clamp(2.55rem,10.8vw,3rem)!important;
    line-height:.98!important;
    letter-spacing:-.045em!important;
    text-wrap:balance!important;
  }
  html body.v22:not(.v21-demo):not(.v21-home) h1[data-w20-title-size="medium"]{
    font-size:clamp(2.35rem,9.8vw,2.75rem)!important;
    line-height:.99!important;
    letter-spacing:-.043em!important;
    text-wrap:balance!important;
  }
  html body.v22:not(.v21-demo):not(.v21-home) h1[data-w20-title-size="long"]{
    font-size:clamp(2.12rem,8.9vw,2.5rem)!important;
    line-height:1.01!important;
    letter-spacing:-.04em!important;
    text-wrap:balance!important;
  }
}

/* Grandes H2 editoriais — não afeta subtítulos comuns de artigos. */
@media(min-width:1000px){
  html body.v22:not(.v21-demo) h2[data-w20-display-size="short"]{
    font-size:clamp(3rem,4vw,3.55rem)!important;
    line-height:.99!important;
    letter-spacing:-.043em!important;
  }
  html body.v22:not(.v21-demo) h2[data-w20-display-size="medium"]{
    font-size:clamp(2.65rem,3.5vw,3.1rem)!important;
    line-height:1!important;
    letter-spacing:-.04em!important;
  }
  html body.v22:not(.v21-demo) h2[data-w20-display-size="long"]{
    font-size:clamp(2.3rem,3vw,2.7rem)!important;
    line-height:1.02!important;
    letter-spacing:-.038em!important;
  }
}

@media(max-width:999px){
  html body.v22:not(.v21-demo) h2[data-w20-display-size="short"]{
    font-size:clamp(2.15rem,9.2vw,2.65rem)!important;
    line-height:1!important;
    letter-spacing:-.043em!important;
    text-wrap:balance!important;
  }
  html body.v22:not(.v21-demo) h2[data-w20-display-size="medium"]{
    font-size:clamp(2rem,8.4vw,2.4rem)!important;
    line-height:1.01!important;
    letter-spacing:-.04em!important;
    text-wrap:balance!important;
  }
  html body.v22:not(.v21-demo) h2[data-w20-display-size="long"]{
    font-size:clamp(1.85rem,7.7vw,2.18rem)!important;
    line-height:1.03!important;
    letter-spacing:-.036em!important;
    text-wrap:balance!important;
  }
}

/* Home: linguagem simplificada e título da vitrine mais compacto no mobile. */
@media(max-width:600px){
  html body.v22.v21-home .v17-cases-head h2{
    font-size:clamp(2rem,8.7vw,2.35rem)!important;
    line-height:1!important;
    max-width:13ch!important;
  }
}


/* V22.20 — fechamento das exceções de títulos longos */

/* Blog hub: o título não precisa ficar preso a uma coluna estreita no mobile. */
@media(max-width:640px){
  html body#wessia-v9.v22.v21-blog-index .v9-blog-hero .v9-title[data-w20-title-size]{
    width:100%!important;
    max-width:100%!important;
  }
}

/* Artigos longos: no desktop, aumentar a largura útil é melhor do que reduzir demais a fonte. */
@media(min-width:1000px){
  html body#wessia-v9.v22.v21-article .v9-article-hero h1[data-w20-title-size="short"]{
    max-width:16ch!important;
  }
  html body#wessia-v9.v22.v21-article .v9-article-hero h1[data-w20-title-size="medium"]{
    max-width:18ch!important;
  }
  html body#wessia-v9.v22.v21-article .v9-article-hero h1[data-w20-title-size="long"]{
    max-width:20ch!important;
  }
}

/* CTAs editoriais muito longos: regra específica vence as camadas antigas. */
@media(max-width:640px){
  html body#wessia-v9.v22.v21-case:not(.v21-demo) .final-cta h2[data-w20-display-size="long"]{
    width:100%!important;
    max-width:none!important;
    font-size:clamp(1.9rem,7.8vw,2.12rem)!important;
    line-height:1.03!important;
    letter-spacing:-.036em!important;
    text-wrap:balance!important;
  }
}


/* V22.20 — CTA final longo: mais largura ao texto no desktop, sem mudar o mobile. */
@media(min-width:1000px){
  html body#wessia-v9.v22:not(.v21-demo) .final-cta-inner[data-w20-long-cta="1"]{
    grid-template-columns:minmax(0,1.7fr) minmax(250px,.55fr)!important;
    align-items:end!important;
  }
  html body#wessia-v9.v22:not(.v21-demo) .final-cta-inner[data-w20-long-cta="1"] h2[data-w20-display-size="long"]{
    width:100%!important;
    max-width:15ch!important;
  }
}


/* =========================================================
   WessIA V22.21 — texto sem cortes artificiais + microtítulos consistentes
   Escopo institucional. Demos preservadas.
   ========================================================= */

/* Texto corrido: quebra entre palavras, nunca hifenização automática. */
html body.v22:not(.v21-demo) :is(
  p,li,dd,summary,
  .v17-case-body p,
  .v9-blog-card p,
  .article-body p,
  .v9-article-main p
){
  hyphens:none!important;
  -webkit-hyphens:none!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}

/* Títulos continuam sem cortes de palavras. */
html body.v22:not(.v21-demo) :is(h1,h2,h3,h4,h5,h6){
  hyphens:none!important;
  -webkit-hyphens:none!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}

/* Metadados "PROJETO REAL" dos cards: mesma régua dos microtítulos do site. */
html body.v22:not(.v21-demo) .v17-case-body>span{
  font-size:.68rem!important;
  line-height:1.35!important;
  font-weight:850!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  white-space:normal!important;
  hyphens:none!important;
  -webkit-hyphens:none!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}

/* Microtítulos editoriais: mesma escala, peso e espaçamento.
   Cor existente é preservada quando o rótulo não é bronze. */
html body.v22:not(.v21-demo) :is(
  .hero-kicker,.eyebrow,.v25-proof-tag,.v72-case-label,.v17-cases-kicker,
  .v9-kicker,.v9-blog-kicker,.v22-kicker,.section-heading>span,
  .v22-section-head>div>span,.deliverables>span,.c26-kicker,
  .v21-related-head>span,.v86-audit-offer small:first-child
){
  font-size:.68rem!important;
  line-height:1.35!important;
  font-weight:850!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  hyphens:none!important;
  -webkit-hyphens:none!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}

/* Bronze editorial: exatamente a mesma cor em todos os microtítulos aprovados. */
html body.v22:not(.v21-demo) :is(
  .hero-kicker,.eyebrow,.v25-proof-tag,.v72-case-label,.v17-cases-kicker,
  .v9-kicker,.v9-blog-kicker,.section-heading>span,
  .v22-section-head>div>span,.deliverables>span,.c26-kicker,
  .v21-related-head>span
){
  color:#8A6A2F!important;
  -webkit-text-fill-color:#8A6A2F!important;
}

/* Em telas muito estreitas reduz só o microtexto, mantendo a mesma régua. */
@media(max-width:360px){
  html body.v22:not(.v21-demo) :is(
    .v17-case-body>span,.hero-kicker,.eyebrow,.v25-proof-tag,.v72-case-label,
    .v17-cases-kicker,.v9-kicker,.v9-blog-kicker,.v22-kicker,
    .section-heading>span,.v22-section-head>div>span,.deliverables>span,
    .c26-kicker,.v21-related-head>span,.v86-audit-offer small:first-child
  ){
    font-size:.64rem!important;
    letter-spacing:.12em!important;
  }
}

/* URLs/códigos podem quebrar por segurança sem alterar texto normal. */
html body.v22:not(.v21-demo) :is(code,pre,.v26-doc-head b,.footer-email){
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}

/* V22.21 — variável única para o microtítulo longo da Hero */
html body.v22:not(.v21-demo){
  --w21-micro-size:.68rem;
  --w21-micro-track:.14em;
}
@media(max-width:360px){
  html body.v22:not(.v21-demo){
    --w21-micro-size:.64rem;
    --w21-micro-track:.12em;
  }
}


/* =========================================================
   WessIA V22.22 — coerência visual real
   Corrige diagnóstico, menu mobile e proporção dos projetos reais.
   ========================================================= */

/* ---------- Menu mobile ---------- */

/* O estado aberto deve ser um X limpo, nunca três traços cruzados. */
html body.v22:not(.v21-demo) .v25-mobile-toggle[aria-expanded="true"] span:nth-child(1){
  transform:translateY(7px) rotate(45deg)!important;
}
html body.v22:not(.v21-demo) .v25-mobile-toggle[aria-expanded="true"] span:nth-child(2){
  opacity:0!important;
  transform:none!important;
}
html body.v22:not(.v21-demo) .v25-mobile-toggle[aria-expanded="true"] span:nth-child(3){
  transform:translateY(-7px) rotate(-45deg)!important;
}

/* Painel ocupa apenas o espaço necessário; sem barra decorativa escura no fim. */
@media(max-width:980px){
  html body.v22:not(.v21-demo) .v25-mobile-panel{
    background:#F4F6F5!important;
  }
  html body.v22:not(.v21-demo) .v25-mobile-panel-inner{
    gap:10px!important;
    padding-bottom:14px!important;
  }
}

/* ---------- Diagnóstico ---------- */

html body.v22:not(.v21-demo) .prime-diagnostic{
  background:transparent!important;
  color:#17313B!important;
  box-shadow:0 24px 70px rgba(23,49,59,.24)!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic::backdrop{
  background:rgba(23,49,59,.38)!important;
  backdrop-filter:blur(5px)!important;
  -webkit-backdrop-filter:blur(5px)!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-diagnostic-inner{
  background:#F4F6F5!important;
  border:1px solid #9FB0B7!important;
  color:#17313B!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-diagnostic-head{
  background:#FFFFFF!important;
  background-image:none!important;
  color:#17313B!important;
  border-bottom:1px solid #AFC0C6!important;
  padding:26px 28px 22px!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-diagnostic-head h2{
  color:#17313B!important;
  -webkit-text-fill-color:#17313B!important;
  max-width:16ch!important;
  margin:10px 0 8px!important;
  font-size:clamp(2rem,4vw,3rem)!important;
  line-height:1!important;
  letter-spacing:-.045em!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-diagnostic-head p{
  color:#52666E!important;
  -webkit-text-fill-color:#52666E!important;
  line-height:1.55!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-kicker{
  display:inline-flex!important;
  width:auto!important;
  max-width:100%!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  background-image:none!important;
  color:#8A6A2F!important;
  -webkit-text-fill-color:#8A6A2F!important;
  font-size:.68rem!important;
  line-height:1.35!important;
  font-weight:850!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  white-space:normal!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-dialog-close{
  width:46px!important;
  height:46px!important;
  border-radius:14px!important;
  border:1px solid #9FB0B7!important;
  background:#FFFFFF!important;
  color:#17313B!important;
  -webkit-text-fill-color:#17313B!important;
  box-shadow:none!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-dialog-close:hover,
html body.v22:not(.v21-demo) .prime-diagnostic .prime-dialog-close:focus-visible{
  background:#EEF3F3!important;
  border-color:#839BA4!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-diagnostic-progress{
  background:#F4F6F5!important;
  padding:16px 24px 0!important;
  gap:8px!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-diagnostic-progress span{
  background:#FFFFFF!important;
  border:1px solid #C5D1D5!important;
  color:#52666E!important;
  -webkit-text-fill-color:#52666E!important;
  border-radius:13px!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-diagnostic-progress span b{
  background:#EEF3F3!important;
  color:#17313B!important;
  -webkit-text-fill-color:#17313B!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-diagnostic-progress span.is-on{
  background:#EEF3F3!important;
  border-color:#839BA4!important;
  color:#17313B!important;
  -webkit-text-fill-color:#17313B!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-diagnostic-progress span.is-on b{
  background:#17313B!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic #prime-diagnostic-form{
  background:#F4F6F5!important;
  padding:20px 24px 24px!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-diagnostic-step legend{
  color:#17313B!important;
  -webkit-text-fill-color:#17313B!important;
  font-size:1.28rem!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-step-copy{
  color:#52666E!important;
  -webkit-text-fill-color:#52666E!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-choice>span{
  background:#FFFFFF!important;
  border:1px solid #AFC0C6!important;
  box-shadow:none!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-choice strong{
  color:#17313B!important;
  -webkit-text-fill-color:#17313B!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-choice small{
  color:#52666E!important;
  -webkit-text-fill-color:#52666E!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-choice input:checked+span{
  background:#EEF3F3!important;
  border-color:#315C57!important;
  box-shadow:0 0 0 2px rgba(49,92,87,.10)!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-diag-fields label{
  color:#17313B!important;
  -webkit-text-fill-color:#17313B!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic :is(input,select,textarea){
  background:#FFFFFF!important;
  border:1px solid #AFC0C6!important;
  color:#17313B!important;
  -webkit-text-fill-color:#17313B!important;
  box-shadow:none!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic :is(input,textarea)::placeholder{
  color:#6E8087!important;
  -webkit-text-fill-color:#6E8087!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-direction{
  background:#FFFFFF!important;
  background-image:none!important;
  border:1px solid #AFC0C6!important;
  color:#17313B!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-direction>b{
  color:#8A6A2F!important;
  -webkit-text-fill-color:#8A6A2F!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-direction>strong{
  color:#17313B!important;
  -webkit-text-fill-color:#17313B!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-direction>p{
  color:#52666E!important;
  -webkit-text-fill-color:#52666E!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-whatsapp-note{
  background:#FFFFFF!important;
  border:1px solid #AFC0C6!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-whatsapp-note strong{
  color:#17313B!important;
  -webkit-text-fill-color:#17313B!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-whatsapp-note p{
  color:#52666E!important;
  -webkit-text-fill-color:#52666E!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-diagnostic-nav{
  border-top:1px solid #AFC0C6!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-diagnostic-nav button{
  background:#FFFFFF!important;
  border:1px solid #9FB0B7!important;
  color:#17313B!important;
  -webkit-text-fill-color:#17313B!important;
  box-shadow:none!important;
}

html body.v22:not(.v21-demo) .prime-diagnostic .prime-diagnostic-nav :is(.diag-next,.diag-finish){
  background:#17313B!important;
  border-color:#17313B!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
}

@media(max-width:640px){
  html body.v22:not(.v21-demo) .prime-diagnostic{
    width:min(100% - 20px,880px)!important;
    max-height:92dvh!important;
    border-radius:22px!important;
  }

  html body.v22:not(.v21-demo) .prime-diagnostic .prime-diagnostic-inner{
    border-radius:22px!important;
  }

  html body.v22:not(.v21-demo) .prime-diagnostic .prime-diagnostic-head{
    gap:14px!important;
    padding:22px 22px 18px!important;
  }

  html body.v22:not(.v21-demo) .prime-diagnostic .prime-diagnostic-head h2{
    font-size:clamp(2rem,10vw,2.55rem)!important;
    max-width:12ch!important;
  }

  html body.v22:not(.v21-demo) .prime-diagnostic .prime-diagnostic-progress{
    padding:14px 18px 0!important;
  }

  html body.v22:not(.v21-demo) .prime-diagnostic #prime-diagnostic-form{
    padding:18px!important;
  }
}

/* ---------- Projetos reais da Home ---------- */

html body.v22.v21-home .v17-cases-grid{
  align-items:stretch!important;
}

html body.v22.v21-home .v17-case-card{
  height:100%!important;
}

html body.v22.v21-home .v17-case-body{
  height:100%!important;
}

@media(max-width:900px){
  html body.v22.v21-home .v17-cases-grid{
    grid-auto-rows:1fr!important;
  }
}

/* Os dois rótulos seguem exatamente a mesma régua. */
html body.v22.v21-home .v17-case-body>span{
  min-height:2.7em!important;
  display:flex!important;
  align-items:flex-start!important;
  font-size:.68rem!important;
  line-height:1.35!important;
  letter-spacing:.14em!important;
  font-weight:850!important;
}
@media(max-width:360px){
  html body.v22.v21-home .v17-case-body>span{
    font-size:.64rem!important;
    letter-spacing:.12em!important;
  }
}


/* V22.22 — fechamento de especificidade das camadas legadas.
   O projeto antigo usa seletores com ID duplicado; esta camada apenas
   garante que os estados aprovados acima realmente prevaleçam. */

html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .v25-mobile-toggle[aria-expanded="true"] span:nth-child(1){
  transform:translateY(7px) rotate(45deg)!important;
}
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .v25-mobile-toggle[aria-expanded="true"] span:nth-child(2){
  opacity:0!important;
  transform:none!important;
}
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .v25-mobile-toggle[aria-expanded="true"] span:nth-child(3){
  transform:translateY(-7px) rotate(-45deg)!important;
}

html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .prime-diagnostic .prime-diagnostic-head{
  background:#FFFFFF!important;
  background-image:none!important;
  color:#17313B!important;
  border-bottom-color:#AFC0C6!important;
}
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .prime-diagnostic .prime-diagnostic-head h2{
  color:#17313B!important;
  -webkit-text-fill-color:#17313B!important;
}
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .prime-diagnostic .prime-diagnostic-head p{
  color:#52666E!important;
  -webkit-text-fill-color:#52666E!important;
}
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .prime-diagnostic .prime-diagnostic-head .prime-kicker{
  color:#8A6A2F!important;
  -webkit-text-fill-color:#8A6A2F!important;
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  padding:0!important;
}
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .prime-diagnostic .prime-dialog-close{
  background:#FFFFFF!important;
  color:#17313B!important;
  -webkit-text-fill-color:#17313B!important;
  border-color:#9FB0B7!important;
}

html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .prime-diagnostic .prime-diagnostic-progress{
  background:#F4F6F5!important;
}
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .prime-diagnostic .prime-diagnostic-progress span{
  background:#FFFFFF!important;
  color:#52666E!important;
  -webkit-text-fill-color:#52666E!important;
  border-color:#C5D1D5!important;
}
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .prime-diagnostic .prime-diagnostic-progress span.is-on{
  background:#EEF3F3!important;
  color:#17313B!important;
  -webkit-text-fill-color:#17313B!important;
  border-color:#839BA4!important;
}
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .prime-diagnostic .prime-diagnostic-progress span.is-on b{
  background:#17313B!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
}

html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .prime-diagnostic #prime-diagnostic-form{
  background:#F4F6F5!important;
}
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .prime-diagnostic .prime-choice>span,
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .prime-diagnostic .prime-whatsapp-note,
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .prime-diagnostic .prime-direction{
  background:#FFFFFF!important;
  background-image:none!important;
  border-color:#AFC0C6!important;
}
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .prime-diagnostic .prime-choice strong,
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .prime-diagnostic .prime-whatsapp-note strong,
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .prime-diagnostic .prime-direction>strong,
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .prime-diagnostic .prime-diagnostic-step legend,
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .prime-diagnostic .prime-diag-fields label{
  color:#17313B!important;
  -webkit-text-fill-color:#17313B!important;
}
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .prime-diagnostic .prime-choice small,
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .prime-diagnostic .prime-step-copy,
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .prime-diagnostic .prime-whatsapp-note p,
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .prime-diagnostic .prime-direction>p{
  color:#52666E!important;
  -webkit-text-fill-color:#52666E!important;
}
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .prime-diagnostic .prime-direction>b{
  color:#8A6A2F!important;
  -webkit-text-fill-color:#8A6A2F!important;
}

html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .prime-diagnostic :is(input,select,textarea){
  background:#FFFFFF!important;
  border-color:#AFC0C6!important;
  color:#17313B!important;
  -webkit-text-fill-color:#17313B!important;
}
html body#wessia-v9#wessia-v9.v22:not(.v21-demo) .prime-diagnostic .prime-diagnostic-nav :is(.diag-next,.diag-finish){
  background:#17313B!important;
  border-color:#17313B!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
}


/* =========================================================
   WessIA V22.23 — ETAPA 1: menu mobile definitivo
   X real + fundo/overlay coerente + painel compacto.
   ========================================================= */
@media(max-width:980px){
  html body.v22:not(.v21-demo) .v25-mobile-toggle{
    position:relative!important;
    overflow:hidden!important;
  }

  html body.v22:not(.v21-demo) .v25-mobile-toggle[aria-expanded="true"] span{
    display:none!important;
  }

  html body.v22:not(.v21-demo) .v25-mobile-toggle[aria-expanded="true"]::before,
  html body.v22:not(.v21-demo) .v25-mobile-toggle[aria-expanded="true"]::after{
    content:""!important;
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    width:28px!important;
    height:2.5px!important;
    border-radius:999px!important;
    background:#17313B!important;
    transform-origin:center!important;
    pointer-events:none!important;
  }

  html body.v22:not(.v21-demo) .v25-mobile-toggle[aria-expanded="true"]::before{
    transform:translate(-50%,-50%) rotate(45deg)!important;
  }

  html body.v22:not(.v21-demo) .v25-mobile-toggle[aria-expanded="true"]::after{
    transform:translate(-50%,-50%) rotate(-45deg)!important;
  }

  html body.v22:not(.v21-demo) .v25-mobile-panel{
    position:fixed!important;
    top:72px!important;
    right:0!important;
    bottom:0!important;
    left:0!important;
    width:100vw!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:auto!important;
    padding:18px 16px max(22px,env(safe-area-inset-bottom))!important;
    background:rgba(23,49,59,.36)!important;
    background-image:none!important;
    border:0!important;
    box-shadow:none!important;
    backdrop-filter:blur(7px)!important;
    -webkit-backdrop-filter:blur(7px)!important;
  }

  html body.v22:not(.v21-demo) .v25-mobile-panel-inner{
    width:min(100%,620px)!important;
    max-height:calc(100dvh - 112px)!important;
    overflow:auto!important;
    margin:0 auto!important;
    padding:14px!important;
    display:grid!important;
    gap:10px!important;
    background:#F4F6F5!important;
    border:1px solid #AFC0C6!important;
    border-radius:20px!important;
    box-shadow:0 20px 55px rgba(23,49,59,.22)!important;
    overscroll-behavior:contain!important;
  }

  html body.v22:not(.v21-demo) .v25-mobile-group,
  html body.v22:not(.v21-demo) .v25-mobile-direct{
    background:#FFFFFF!important;
    border:1px solid #AFC0C6!important;
    border-radius:15px!important;
    color:#17313B!important;
    -webkit-text-fill-color:#17313B!important;
    box-shadow:none!important;
  }

  html body.v22:not(.v21-demo) .v25-mobile-group{
    padding:0 14px!important;
  }

  html body.v22:not(.v21-demo) .v25-mobile-direct{
    padding:16px 18px!important;
  }

  html body.v22:not(.v21-demo) .v25-mobile-group summary{
    padding:15px 0!important;
    color:#17313B!important;
    -webkit-text-fill-color:#17313B!important;
  }

  html body.v22:not(.v21-demo) .v25-mobile-group a{
    color:#52666E!important;
    -webkit-text-fill-color:#52666E!important;
    border-top:1px solid #D4DEE1!important;
  }
}


/* =========================================================
   WessIA V22.23 — ETAPA 3: preço + conteúdo longo + Observatório
   ========================================================= */

/* ----- Faixas de investimento ----- */
html body.v22 .v22-answer-band .v23-price-answer{
  margin-top:14px;
}

html body.v22 .v23-price-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-bottom:14px;
}

html body.v22 .v23-price-grid article{
  padding:16px;
  border:1px solid #AFC0C6;
  border-radius:15px;
  background:#FFFFFF;
}

html body.v22 .v23-price-grid article span{
  display:block;
  margin-bottom:5px;
  color:#52666E;
  -webkit-text-fill-color:#52666E;
  font-size:.78rem;
  line-height:1.3;
  font-weight:800;
}

html body.v22 .v23-price-grid article strong{
  display:block;
  color:#17313B;
  -webkit-text-fill-color:#17313B;
  font-size:1rem;
  line-height:1.25;
  font-weight:900;
}

html body.v22 .v23-price-context,
html body.v22 .v23-price-extras{
  margin:0;
  color:#52666E;
  -webkit-text-fill-color:#52666E;
  font-size:.96rem;
  line-height:1.6;
}

html body.v22 .v23-price-context{
  padding-top:2px;
}

html body.v22 .v23-price-extras{
  margin-top:8px;
  padding-top:10px;
  border-top:1px solid #C8D4D8;
}

html body.v22 .v23-price-context strong,
html body.v22 .v23-price-extras strong{
  color:#17313B;
  -webkit-text-fill-color:#17313B;
}

@media(max-width:720px){
  html body.v22 .v23-price-grid{
    grid-template-columns:1fr;
    gap:8px;
  }
  html body.v22 .v23-price-grid article{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:14px;
    align-items:center;
    padding:14px 15px;
  }
  html body.v22 .v23-price-grid article span{
    margin:0;
  }
  html body.v22 .v23-price-grid article strong{
    text-align:right;
    font-size:.94rem;
  }
}

/* ----- Leitura editorial longa ----- */
html body.v22.v21-article .v9-prose{
  max-width:780px!important;
}

html body.v22.v21-article .v9-prose>h2{
  margin:42px 0 13px!important;
  max-width:18ch!important;
  color:#17313B!important;
  -webkit-text-fill-color:#17313B!important;
  font-size:clamp(2.1rem,3.7vw,3.05rem)!important;
  line-height:1.02!important;
  letter-spacing:-.04em!important;
  text-wrap:balance!important;
}

html body.v22.v21-article .v9-prose>p{
  margin:0 0 20px!important;
  max-width:68ch!important;
  color:#52666E!important;
  -webkit-text-fill-color:#52666E!important;
  font-size:1.02rem!important;
  line-height:1.72!important;
}

html body.v22.v21-article .v9-prose>h2+p{
  padding-bottom:4px!important;
}

@media(max-width:640px){
  html body.v22.v21-article .v9-prose{
    max-width:none!important;
  }
  html body.v22.v21-article .v9-prose>h2{
    margin:34px 0 12px!important;
    max-width:16ch!important;
    font-size:clamp(2rem,9.2vw,2.48rem)!important;
    line-height:1.01!important;
  }
  html body.v22.v21-article .v9-prose>p{
    font-size:1rem!important;
    line-height:1.68!important;
  }
}

/* ----- Observatório: remover numeração duplicada e organizar leitura ----- */
html body.v22 .v91-dimension{
  padding:clamp(20px,3vw,28px)!important;
}

html body.v22 .v91-dimension h3{
  margin:0 0 10px!important;
  color:#17313B!important;
  -webkit-text-fill-color:#17313B!important;
  font-size:1.45rem!important;
  line-height:1.15!important;
}

html body.v22 .v91-dimension ol{
  list-style:none!important;
  margin:0!important;
  padding:0!important;
}

html body.v22 .v91-dimension li{
  margin:0!important;
  padding:16px 0!important;
  border-top:1px solid #D4DEE1!important;
  color:#52666E!important;
  -webkit-text-fill-color:#52666E!important;
  font-size:.98rem!important;
  line-height:1.62!important;
}

html body.v22 .v91-dimension li:first-child{
  border-top:0!important;
}

html body.v22 .v91-dimension li>a{
  display:block!important;
  margin-bottom:5px!important;
  text-decoration:none!important;
}

html body.v22 .v91-dimension li>a strong{
  display:block!important;
  color:#17313B!important;
  -webkit-text-fill-color:#17313B!important;
  font-size:1rem!important;
  line-height:1.35!important;
}

@media(max-width:640px){
  html body.v22 .v91-dimension{
    padding:18px!important;
  }
  html body.v22 .v91-dimension h3{
    font-size:1.32rem!important;
  }
  html body.v22 .v91-dimension li{
    padding:14px 0!important;
    font-size:.95rem!important;
    line-height:1.58!important;
  }
  html body.v22 .v91-dimension li>a strong{
    font-size:.96rem!important;
  }
}


/* =========================================================
   WessIA V22.24 — polimento estrutural mobile + navegação.
   Ajusta alinhamento, centralização e leitura sem mexer no SEO.
   ========================================================= */

/* 1) Card visual de páginas editoriais: centralização real no mobile. */
html body.v22:not(.v21-demo) .v21-hero-visual{
  display:grid!important;
  grid-template-rows:auto 1fr auto!important;
  align-content:start!important;
}
html body.v22:not(.v21-demo) .v21-hero-visual .v21-visual-top,
html body.v22:not(.v21-demo) .v21-hero-visual .v21-visual-main{
  position:relative!important;
  z-index:1!important;
}
html body.v22:not(.v21-demo) .v21-hero-visual .v21-visual-main{
  margin-top:34px!important;
  gap:12px!important;
}
html body.v22:not(.v21-demo) .v21-hero-visual .v21-visual-main>strong{
  max-width:11ch!important;
  text-wrap:balance!important;
}
html body.v22:not(.v21-demo) .v21-hero-visual .v21-visual-chips{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  width:100%!important;
}
html body.v22:not(.v21-demo) .v21-hero-visual .v21-visual-chips span{
  min-height:46px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  padding:10px 12px!important;
}
html body.v22:not(.v21-demo) .v21-hero-visual .v21-visual-bars{
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  height:110px!important;
  margin-top:20px!important;
  right:auto!important;
  bottom:auto!important;
}
html body.v22:not(.v21-demo) .v21-hero-visual .v21-visual-foot{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  margin-top:14px!important;
  padding-top:12px!important;
}
@media(max-width:700px){
  html body.v22:not(.v21-demo) .v21-hero-visual{
    min-height:auto!important;
    padding:18px!important;
    border-radius:20px!important;
  }
  html body.v22:not(.v21-demo) .v21-hero-visual .v21-visual-top{
    align-items:flex-start!important;
  }
  html body.v22:not(.v21-demo) .v21-hero-visual .v21-visual-main{
    margin-top:20px!important;
  }
  html body.v22:not(.v21-demo) .v21-hero-visual .v21-visual-main>small,
  html body.v22:not(.v21-demo) .v21-hero-visual .v21-visual-main>strong{
    text-align:left!important;
  }
  html body.v22:not(.v21-demo) .v21-hero-visual .v21-visual-main>strong{
    max-width:none!important;
    font-size:clamp(2rem,9.2vw,2.35rem)!important;
    line-height:1.02!important;
  }
  html body.v22:not(.v21-demo) .v21-hero-visual .v21-visual-foot{
    justify-content:space-between!important;
    flex-wrap:wrap!important;
    row-gap:8px!important;
  }
}

/* 2) Critérios/Resposta/Limites/Ação: cards uniformes e centrados. */
html body.v22:not(.v21-demo) .depth-steps{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
}
html body.v22:not(.v21-demo) .depth-steps>article{
  min-height:210px!important;
  padding:22px 20px!important;
  border:1px solid #CBD6DA!important;
  border-radius:16px!important;
  display:grid!important;
  grid-template-rows:auto auto 1fr!important;
  align-content:start!important;
  gap:10px!important;
}
html body.v22:not(.v21-demo) .depth-steps>article>span{
  display:block!important;
  font-size:1rem!important;
  font-weight:700!important;
  letter-spacing:.02em!important;
  color:#52666E!important;
}
html body.v22:not(.v21-demo) .depth-steps>article h3{
  margin:0!important;
  font-size:clamp(1.65rem,3vw,2rem)!important;
  line-height:1.05!important;
}
html body.v22:not(.v21-demo) .depth-steps>article p{
  margin:0!important;
  max-width:none!important;
}
@media(max-width:700px){
  html body.v22:not(.v21-demo) .depth-steps{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  html body.v22:not(.v21-demo) .depth-steps>article{
    min-height:0!important;
    padding:18px 16px!important;
    gap:8px!important;
  }
}

/* 3) Home — segmentos: menos vazio, conteúdo centralizado e seta consistente. */
html body.v22.v21-home .v22-market-grid{
  display:grid!important;
  gap:14px!important;
}
html body.v22.v21-home .v22-market-grid>a{
  display:grid!important;
  grid-template-columns:72px minmax(0,1fr) 20px!important;
  align-items:center!important;
  gap:16px!important;
  min-height:188px!important;
  padding:22px 24px!important;
  position:relative!important;
}
html body.v22.v21-home .v22-market-grid>a>b{
  width:48px!important;
  min-width:48px!important;
  height:74px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  justify-self:center!important;
  margin:0!important;
  border-radius:18px!important;
}
html body.v22.v21-home .v22-market-grid>a>span{
  display:grid!important;
  gap:8px!important;
  align-content:center!important;
  min-width:0!important;
}
html body.v22.v21-home .v22-market-grid>a>span>small{
  display:block!important;
  margin:0!important;
  letter-spacing:.12em!important;
}
html body.v22.v21-home .v22-market-grid>a>span>strong{
  display:block!important;
  margin:0!important;
  max-width:18ch!important;
  line-height:1.15!important;
}
html body.v22.v21-home .v22-market-grid>a::after{
  content:'›'!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:20px!important;
  height:20px!important;
  font-size:26px!important;
  line-height:1!important;
  color:#6F929F!important;
  justify-self:end!important;
}
@media(max-width:700px){
  html body.v22.v21-home .v22-market-grid>a{
    grid-template-columns:56px minmax(0,1fr) 18px!important;
    min-height:0!important;
    padding:18px 16px!important;
    gap:12px!important;
  }
  html body.v22.v21-home .v22-market-grid>a>b{
    width:42px!important;
    min-width:42px!important;
    height:64px!important;
    border-radius:16px!important;
  }
  html body.v22.v21-home .v22-market-grid>a>span>strong{
    max-width:none!important;
    font-size:clamp(1.08rem,5.2vw,1.45rem)!important;
  }
}

/* 4) Menu mobile: ícone limpo, sem virar asterisco. */
@media(max-width:980px){
  html body.v22:not(.v21-demo) .v25-mobile-toggle{
    position:relative!important;
    overflow:visible!important;
  }
  html body.v22:not(.v21-demo) .v25-mobile-toggle::before,
  html body.v22:not(.v21-demo) .v25-mobile-toggle::after,
  html body.v22:not(.v21-demo) .v25-mobile-toggle[aria-expanded="true"]::before,
  html body.v22:not(.v21-demo) .v25-mobile-toggle[aria-expanded="true"]::after{
    content:none!important;
    display:none!important;
  }
  html body.v22:not(.v21-demo) .v25-mobile-toggle span{
    display:block!important;
    transition:transform .18s ease,opacity .18s ease,margin .18s ease!important;
    transform-origin:center!important;
  }
  html body.v22:not(.v21-demo) .v25-mobile-toggle[aria-expanded="true"] span:nth-child(1){
    transform:translateY(8px) rotate(45deg)!important;
  }
  html body.v22:not(.v21-demo) .v25-mobile-toggle[aria-expanded="true"] span:nth-child(2){
    opacity:0!important;
  }
  html body.v22:not(.v21-demo) .v25-mobile-toggle[aria-expanded="true"] span:nth-child(3){
    transform:translateY(-8px) rotate(-45deg)!important;
  }
}

/* 5) Botão inteligente de navegação: sobe/desce conforme posição. */
html body .w45-smart-jump{
  position:fixed!important;
  right:max(12px,env(safe-area-inset-right))!important;
  bottom:calc(18px + env(safe-area-inset-bottom))!important;
  z-index:2500!important;
  min-height:48px!important;
  padding:10px 14px!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  border:1px solid #9BB0B8!important;
  border-radius:999px!important;
  background:#FFFFFF!important;
  color:#17313B!important;
  box-shadow:0 10px 28px rgba(22,42,51,.16)!important;
}
html body .w45-smart-jump[hidden]{display:none!important;}
html body .w45-smart-jump .w45-smart-jump-icon{
  font-size:1.05rem!important;
  line-height:1!important;
}
html body .w45-smart-jump .w45-smart-jump-text{
  font-weight:800!important;
  font-size:.92rem!important;
  line-height:1!important;
}
html body .w45-smart-jump:focus-visible,
html body .w45-smart-jump:hover{
  border-color:#6F929F!important;
  box-shadow:0 0 0 3px rgba(111,146,159,.14),0 10px 28px rgba(22,42,51,.18)!important;
}
@media(max-width:700px){
  html body .w45-smart-jump{
    right:12px!important;
    bottom:calc(14px + env(safe-area-inset-bottom))!important;
    min-height:44px!important;
    padding:10px 12px!important;
  }
  html body .prime-mobile-cta + .w45-smart-jump,
  html body .w45-smart-jump{
    bottom:calc(74px + env(safe-area-inset-bottom))!important;
  }
}


/* =========================================================
   WessIA V22.25 — links regionais + voltar ao topo discreto
   ========================================================= */

/* Links regionais: grupo segue o eixo esquerdo; botões iguais e texto centralizado. */
html body.v22.v21-home .v22-local{
  align-items:flex-start!important;
}
html body.v22.v21-home .v22-local>div{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  width:min(100%,620px)!important;
  margin:0 auto 0 0!important;
}
html body.v22.v21-home .v22-local>div>a{
  width:100%!important;
  min-height:50px!important;
  padding:11px 16px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  line-height:1.25!important;
  white-space:normal!important;
}
@media(max-width:620px){
  html body.v22.v21-home .v22-local>div{
    grid-template-columns:1fr!important;
    width:min(100%,370px)!important;
  }
  html body.v22.v21-home .v22-local>div>a{
    min-height:54px!important;
  }
}

/* Voltar ao topo: utilitário pequeno, sem texto e sem estado "descer". */
html body.v22:not(.v21-demo) .w45-smart-jump{
  position:fixed!important;
  right:max(14px,env(safe-area-inset-right))!important;
  bottom:calc(16px + env(safe-area-inset-bottom))!important;
  z-index:2500!important;
  width:44px!important;
  min-width:44px!important;
  max-width:44px!important;
  height:44px!important;
  min-height:44px!important;
  padding:0!important;
  margin:0!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid #9BB0B8!important;
  border-radius:50%!important;
  background:#FFFFFF!important;
  color:#17313B!important;
  -webkit-text-fill-color:#17313B!important;
  box-shadow:0 8px 22px rgba(22,42,51,.14)!important;
  opacity:.96!important;
}
html body.v22:not(.v21-demo) .w45-smart-jump[hidden]{
  display:none!important;
}
html body.v22:not(.v21-demo) .w45-smart-jump .w45-smart-jump-icon{
  display:block!important;
  font-size:1.08rem!important;
  line-height:1!important;
  font-weight:800!important;
  transform:translateY(-1px)!important;
}
html body.v22:not(.v21-demo) .w45-smart-jump .w45-smart-jump-text{
  display:none!important;
}
html body.v22:not(.v21-demo) .w45-smart-jump:hover,
html body.v22:not(.v21-demo) .w45-smart-jump:focus-visible{
  border-color:#6F929F!important;
  background:#F8FAFA!important;
  box-shadow:0 0 0 3px rgba(111,146,159,.13),0 8px 22px rgba(22,42,51,.16)!important;
}
@media(max-width:700px){
  html body.v22:not(.v21-demo) .w45-smart-jump{
    right:12px!important;
    bottom:calc(14px + env(safe-area-inset-bottom))!important;
    width:42px!important;
    min-width:42px!important;
    max-width:42px!important;
    height:42px!important;
    min-height:42px!important;
  }
}


/* V22.25 — fechamento do X do menu: barras continuam visíveis para formar o X. */
@media(max-width:980px){
  html body.v22:not(.v21-demo) .v25-mobile-toggle[aria-expanded="true"] span{
    display:block!important;
  }
  html body.v22:not(.v21-demo) .v25-mobile-toggle[aria-expanded="true"] span:nth-child(1){
    opacity:1!important;
    transform:translateY(8px) rotate(45deg)!important;
  }
  html body.v22:not(.v21-demo) .v25-mobile-toggle[aria-expanded="true"] span:nth-child(2){
    opacity:0!important;
    transform:none!important;
  }
  html body.v22:not(.v21-demo) .v25-mobile-toggle[aria-expanded="true"] span:nth-child(3){
    opacity:1!important;
    transform:translateY(-8px) rotate(-45deg)!important;
  }
}
