/* Só o que muda no WordPress em relação ao site estático. */
.admin-bar .site-header { top: var(--wp-admin--admin-bar--height, 32px); }
.admin-bar .site-menu { top: var(--wp-admin--admin-bar--height, 32px); }
/* a faixa decorativa do bloco de números passava da largura da tela no celular */
.stats { overflow-x: clip; }

/* O cano azul cresce com a tela: o respiro acima do texto acompanha a altura dele (172/1477 do desenho) */
.stats {
  --cano-largura: max(102.6vw, 1477px);
  --cano-topo: 95px;
  padding-top: calc(var(--cano-largura) * 172 / 1477 - var(--cano-topo) + var(--s-32));
}
@media (max-width: 1279px) { .stats { --cano-topo: 60px; } }
@media (max-width: 767px) { .stats { --cano-largura: 190vw; --cano-topo: 36px; } }

/* Caixas de números: todas da mesma altura, também entre linhas diferentes */
.stats__grid, .indicadores__grid { grid-auto-rows: 1fr; }
.stat-card, .ind-card { height: 100%; }
.numeros__grid { align-items: stretch; }

/* Valores: ícone do pacote da marca sobre o texto */
.value-tile { flex-direction: column; gap: var(--s-8); }
.value-tile__icone { width: 48px; height: 48px; flex: none; }
.mvv-values__row { grid-auto-rows: 1fr; }

/* Card de área sem link: não reage ao mouse como se fosse clicável */
div.area-card:hover { transform: none; box-shadow: none; }

/* Ícones do pacote da marca (linha azul): sem a caixa de fundo */
.icon-box:has(.e-icone), .icon-circle:has(.e-icone) { width: auto; height: auto; padding: 0; background: none; border-radius: 0; }
.icon-box .e-icone, .icon-circle .e-icone, .sol-card .icon-box .e-icone { width: 56px; height: 56px; max-width: none; flex: none; }

/* Card de case: foto e título também levam ao case */
a.case-card__image { display: block; }
.case-card__title a { transition: color var(--dur-fast) var(--ease); }
.case-card__title a:hover, .case-card__title a:focus-visible { color: var(--c-primary); }

/* Card de serviço: o título também leva à área */
.service-card__title a { transition: color var(--dur-fast) var(--ease); }
.service-card__title a:hover, .service-card__title a:focus-visible { color: var(--c-primary-dark); }

/* ---------- Responsivo ---------- */
/* Foco levado por código (título após trocar de página) não mostra contorno; foco pelo teclado continua visível nos links */
[tabindex="-1"]:focus, [tabindex="-1"]:focus-visible { outline: none; }

/* Carrossel da equipe: abre no primeiro card, anda só para os lados, um card por vez */
.lideranca__slider.is-active .lideranca__grid { justify-content: flex-start; flex-wrap: nowrap; overflow-y: hidden; overscroll-behavior-x: contain; touch-action: pan-x pan-y; }
.lideranca__slider.is-active .lideranca__grid > * { scroll-snap-stop: always; }

/* Missão e visão não esticam até a altura do slide de valores */
.mvv__slider.is-active .mvv__row { align-items: flex-start; }

@media (max-width: 767px) {
  /* Filtro de cases: quebra de linha em vez de cortar o botão */
  .filter-tabs { flex-wrap: wrap; justify-content: center; overflow: visible; margin-inline: 0; padding-inline: 0; }
  .value-tile__icone { width: 40px; height: 40px; }
  /* Pontos do carrossel encolhem em telas muito estreitas */
  .slider-nav__dots { min-width: 0; flex-shrink: 1; }
  .slider-nav__dot { flex-shrink: 1; min-width: 10px; }
}

/* Alvos de toque de pelo menos 40 px, sem mudar o espaço que ocupam na página */
@media (max-width: 1279px), (pointer: coarse) {
  .link-arrow, .link-blue, .link-gold, .canal-card > a { padding-block: 10px; margin-block: -10px; }
  .btn-link { padding-top: 18px; margin-top: -10px; }
  .leader__in { padding: 8px; margin: -8px; }
}
