/* =========================================================
   CAREKA DIGITAL — V59 HARDENING UX/UI GLOBAL
   Correção final contra textos verticais, cards comprimidos,
   CTAs estreitos e grids que quebram a leitura em qualquer página.
   ========================================================= */

:root{
  --ck-v59-card-pad: clamp(24px, 3.8vw, 52px);
  --ck-v59-card-radius: clamp(22px, 2.2vw, 34px);
  --ck-v59-safe-text: min(100%, 860px);
}

/* Trava global de leitura: nenhum conteúdo textual deve virar coluna letra por letra. */
body :where(h1,h2,h3,h4,h5,h6,p,a,span,strong,b,em,small,li,button,label,blockquote){
  writing-mode: horizontal-tb!important;
  text-orientation: mixed!important;
  word-break: normal!important;
  overflow-wrap: anywhere;
  hyphens: none!important;
  min-inline-size: 0!important;
  max-inline-size: 100%!important;
}

/* Containers editoriais devem permitir que seus filhos tenham largura real. */
:where(.ckContentMain,.blogEditorial,.blogPost,.ckArticlePage,.guideLanding,.ckContentShell,.blogShell,.guideShell,.ckContentLayout,.ckContentText,.ckArticleProse,.ckContentNext,.ckContentNext__box,.ckEditorialCta,.ckMidCta,.guideCta,.ckDirectBox,.ckInsightBox--cta,.ckSideCta,.ckAsideCard,.ckSidebarBox,.ckContentPanel){
  min-width: 0!important;
  max-width: 100%!important;
  box-sizing: border-box!important;
}

/* Correção do bloco mostrado no print: próximo passo das páginas de conteúdo. */
.ckContentNext__box{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  align-items:start!important;
  justify-items:start!important;
  gap:clamp(16px,2.4vw,28px)!important;
  padding:var(--ck-v59-card-pad)!important;
  border-radius:var(--ck-v59-card-radius)!important;
  overflow:hidden!important;
}
.ckContentNext__box > *{
  grid-column:1 / -1!important;
  width:auto!important;
  min-width:0!important;
  max-width:100%!important;
}
.ckContentNext__box > span{
  display:inline-flex!important;
  width:auto!important;
  max-width:max-content!important;
  margin:0!important;
  white-space:normal!important;
}
.ckContentNext__box h2{
  max-width:980px!important;
  margin:0!important;
  line-height:.98!important;
  text-wrap:balance!important;
}
.ckContentNext__box p{
  max-width:780px!important;
  margin:0!important;
  line-height:1.72!important;
  white-space:normal!important;
}
.ckContentActions{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:12px!important;
  width:100%!important;
}
.ckContentActions a,
.ckContentPanel a,
.ckAsideCta,
.ckEditorialCta > a,
.ckMidCta a,
.ckSideCta a,
.guideCta__actions a,
.guidePreview a,
.guideCard a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:min(100%, 220px)!important;
  max-width:100%!important;
  white-space:normal!important;
  text-align:center!important;
  line-height:1.18!important;
}

/* CTAs do blog e postagens: sempre em composição editorial, nunca apertados. */
.ckEditorialCta,
.ckMidCta,
.ckInsightBox--cta{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  align-items:start!important;
  justify-items:start!important;
  gap:clamp(16px,2.2vw,28px)!important;
  padding:var(--ck-v59-card-pad)!important;
  overflow:hidden!important;
}
.ckEditorialCta > *,
.ckMidCta > *,
.ckInsightBox--cta > *{
  grid-column:1 / -1!important;
  min-width:0!important;
  max-width:100%!important;
}
.ckEditorialCta h2,
.ckMidCta h3,
.ckInsightBox--cta h2,
.guideCta h2{
  max-width:920px!important;
  text-wrap:balance!important;
}
.ckEditorialCta p,
.ckMidCta p,
.ckInsightBox--cta p,
.guideCta p{
  max-width:760px!important;
  line-height:1.72!important;
}

/* Mini LP do guia e cards auxiliares. */
.guideCta{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  align-items:start!important;
  justify-items:start!important;
  gap:clamp(18px,2.6vw,32px)!important;
  padding:var(--ck-v59-card-pad)!important;
  overflow:hidden!important;
}
.guideCta > *,
.guideCta__actions{
  min-width:0!important;
  max-width:100%!important;
}
.guideCta__actions{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:12px!important;
  width:100%!important;
}

/* Grids: em telas menores, sempre empilhar antes de comprimir. */
@media (max-width:1180px){
  .ckContentHero__grid,
  .ckContentLayout,
  .blogLayout,
  .guideHero__grid,
  .guideGrid,
  .ckEditorialCta,
  .ckContentNext__box{
    grid-template-columns:1fr!important;
  }
  .ckContentAside,
  .ckArticleAside{
    position:static!important;
    top:auto!important;
  }
}

@media (max-width:720px){
  .ckContentShell,
  .blogShell,
  .guideShell{
    width:min(100% - 24px,1180px)!important;
  }
  .ckContentNext__box,
  .ckEditorialCta,
  .ckMidCta,
  .guideCta,
  .ckDirectBox,
  .ckContentPanel,
  .ckAsideCard,
  .ckSidebarBox,
  .ckSideCta{
    padding:24px!important;
    border-radius:22px!important;
  }
  .ckContentNext__box h2,
  .ckEditorialCta h2,
  .guideCta h2{
    font-size:clamp(32px,10vw,48px)!important;
    line-height:1!important;
  }
  .ckContentActions,
  .guideCta__actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    width:100%!important;
  }
  .ckContentActions a,
  .guideCta__actions a,
  .ckEditorialCta > a,
  .ckMidCta a,
  .ckSideCta a{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
}

/* Tema claro: reforço de contraste sem alterar a versão escura aprovada. */
html[data-theme="light"] :where(.ckContentNext__box,.ckEditorialCta,.ckMidCta,.guideCta,.ckSideCta){
  background:linear-gradient(180deg,rgba(255,251,244,.98),rgba(244,232,214,.94))!important;
  border-color:rgba(196,93,24,.20)!important;
  box-shadow:0 20px 52px rgba(67,42,21,.08), inset 0 1px 0 rgba(255,255,255,.72)!important;
}
html[data-theme="light"] :where(.ckContentNext__box h2,.ckEditorialCta h2,.ckMidCta h3,.guideCta h2,.ckSideCta h2){
  color:#24170f!important;
  text-shadow:none!important;
}
html[data-theme="light"] :where(.ckContentNext__box p,.ckEditorialCta p,.ckMidCta p,.guideCta p,.ckSideCta p){
  color:#6a5645!important;
}
