/*!
 * Ajustes globais do site InMinds (todas as paginas). Fonte: tools/static/site/, copiado para
 * public/assets/site/ por tools/site_polish.py. Ver tools/qa/RELATORIO-QA.md.
 */

/* ---------------------------------------------------------------- cabecalho
 * Logo: o widget de imagem do header (Elementor 967, 6fbf8a79) nao tinha largura definida; o <img>
 * (1024 px, size-large) ocupava 100% da coluna. No celular a coluna e 60% da tela, entao o logo
 * crescia com a viewport (225 px de largura a 375 px, 440 px a 767 px) e o header sticky, sempre
 * visivel depois da rolagem, cobria boa parte da tela. Largura fixa por faixa + reducao no sticky. */
#site-header .elementor-element-6fbf8a79 img {
  width: 150px;
  max-width: 100%;
  height: auto;
}
#site-header .she-header .elementor-element-6fbf8a79 img { width: 124px; }
@media (max-width: 1024px) {
  #site-header .elementor-element-6fbf8a79 img { width: 130px; }
  #site-header .she-header .elementor-element-6fbf8a79 img { width: 116px; }
}
@media (max-width: 767px) {
  #site-header .elementor-element-6fbf8a79 img { width: 132px; }
  #site-header .she-header .elementor-element-6fbf8a79 img { width: 112px; }
}

/* Header sticky: o Sticky Header Effects marca o header como transparente com
 * position:absolute !important, o que anula o position:fixed do sticky do Elementor ate o primeiro
 * evento de rolagem. Abrindo a pagina ja rolada (recarregar, voltar, link com #ancora) o header
 * ficava fora da tela. */
#site-header .elementor-sticky--active.she-header-transparent-yes:not(.elementor-sticky__spacer) {
  position: fixed !important;
}

/* ---------------------------------------------------------------- rolagem horizontal
 * Animacoes de entrada e efeitos de movimento do Elementor deslocam elementos para fora da tela
 * (translateX), o que criava rolagem lateral. clip nao cria contexto de rolagem (o sticky continua). */
#outer-wrap { overflow-x: hidden; }
@supports (overflow-x: clip) {
  #outer-wrap { overflow-x: clip; }
}

/* ---------------------------------------------------------------- breadcrumb (no hero das paginas internas)
 * Navegacao v2 (16/10/2026): unico elemento de retorno da pagina (os botoes "Voltar para ..." sairam).
 * - Fica no TOPO do hero, antes do olho e do titulo: a onda (shape divider) do rodape do hero nunca o alcanca.
 * - Pilula escura translucida: contraste AA garantido sobre qualquer foto do hero (pior caso, a pilula sobre
 *   branco: texto #FFFFFF 8,5:1 e links #B9D3E3 5,5:1; conferido pelo tools/qa/qa_check.py).
 * - Sempre em UMA linha: a trilha nao quebra; o item atual (o mais longo, ex.: titulo de post) e cortado com
 *   reticencias e tem o texto inteiro no title. Ele ja aparece por extenso no h1 logo abaixo.
 * - Celular (< 768 px): so o nivel anterior, "<- Solucoes" (para o leitor de tela, "Voltar para Solucoes"),
 *   com 44 px de altura (alvo de toque). Tablet e desktop: trilha completa. */
.elementor-widget-wrap > .inm-breadcrumb-wrap {
  width: 100%;
  display: flex;
  justify-content: center;
  margin: 0 0 14px;
  min-width: 0;
}
.inm-breadcrumb {
  max-width: 100%;
  min-width: 0;
  padding: 0 16px;
  border: 1px solid rgba(255, 255, 255, .16);
  border-radius: 999px;
  background: rgba(12, 28, 46, .78);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  font-family: "Montserrat", Sans-serif;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.4;
  color: #FFFFFF;
}
.inm-breadcrumb ol {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  min-width: 0;
  white-space: nowrap;
}
.inm-breadcrumb li { display: flex; align-items: center; flex: none; min-width: 0; margin: 0; }
.inm-breadcrumb li:last-child { flex: 0 1 auto; overflow: hidden; }
.inm-breadcrumb li + li::before {
  content: "\203A";
  margin: 0 8px;
  color: #B9D3E3;
  font-weight: 600;
}
.inm-breadcrumb a, .inm-breadcrumb li > span { display: inline-flex; align-items: center; min-height: 34px; }
.inm-breadcrumb li:last-child > span { display: block; line-height: 34px; overflow: hidden; text-overflow: ellipsis; }
.inm-breadcrumb a { gap: 8px; color: #B9D3E3; text-decoration: none; }
.inm-breadcrumb a:hover, .inm-breadcrumb a:focus-visible { color: #FFFFFF; text-decoration: underline; text-underline-offset: 3px; }
.inm-breadcrumb [aria-current="page"] { color: #FFFFFF; font-weight: 600; }
.inm-bc-arrow, .inm-bc-sr { display: none; }
@media (max-width: 767px) {
  .inm-breadcrumb { padding: 0 18px 0 14px; }
  .inm-breadcrumb li:not(.inm-bc-up) { display: none; }
  .inm-breadcrumb li + li::before { content: none; }
  .inm-breadcrumb .inm-bc-up a { min-height: 44px; font-size: 14px; font-weight: 600; color: #FFFFFF; }
  .inm-bc-arrow {
    display: block;
    flex: none;
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2.25;
    stroke-linecap: round;
    stroke-linejoin: round;
  }
  .inm-bc-sr {
    display: inline;
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
    border: 0;
  }
}

/* ---------------------------------------------------------------- rodape */
.elementor-978 p.elementor-heading-title { margin: 0; }

/* ---------------------------------------------------------------- acessibilidade: foco visivel */
a:focus-visible,
button:focus-visible,
[role="button"]:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 2px solid #6EADC9 !important;
  outline-offset: 2px;
}
