/* Melhores empresas rotativo (adp-melhores-empresas) — prefixo adp-mer- */
.adp-mer { padding: 1.4rem 0 .8rem; background: transparent; }
.adp-mer .adp-mer-wrap { max-width: 1060px; margin: 0 auto; padding: 0 1.5rem; box-sizing: border-box; }
.adp-mer .adp-mer-head { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; margin: 0 0 .9rem; }
.adp-mer .adp-mer-titulo {
  margin: 0; font-size: clamp(1.1rem, 3vw, 1.4rem); line-height: 1.25;
  display: flex; align-items: center; gap: .5rem; color: var(--sd-navy, #1A2B6B);
}
.adp-mer .adp-mer-mais { font-size: .88rem; font-weight: 700; white-space: nowrap; color: var(--sd-primary, #1E50E0); text-decoration: none; }
.adp-mer .adp-mer-mais:hover { text-decoration: underline; }

/* Altura fixa desde o primeiro desenho (CLS zero) */
.adp-mer .adp-mer-janela { height: 158px; overflow: hidden; position: relative; }
.adp-mer .adp-mer-trilha {
  display: flex; flex-wrap: nowrap; width: max-content; height: 100%;
  margin: 0; padding: 0; list-style: none;
}
.adp-mer .adp-mer-item { flex: 0 0 auto; width: 112px; height: 150px; margin: 0 12px 0 0; padding: 0; list-style: none; }
.adp-mer .adp-mer-card {
  display: flex; flex-direction: column; align-items: center; justify-content: flex-start; gap: .45rem;
  width: 100%; height: 100%; box-sizing: border-box; padding: .55rem .45rem .5rem;
  background: var(--sd-bg-card, #fff); border: 1px solid var(--sd-border, #E5E9F2);
  border-radius: 16px; box-shadow: 0 2px 8px rgba(26, 43, 107, .06);
  text-decoration: none; color: var(--sd-navy, #1A2B6B);
}
.adp-mer .adp-mer-card:hover, .adp-mer .adp-mer-card:focus-visible { border-color: var(--sd-primary, #1E50E0); box-shadow: 0 4px 14px rgba(26, 43, 107, .14); }
.adp-mer .adp-mer-card:focus-visible { outline: 2px solid var(--sd-primary, #1E50E0); outline-offset: 2px; }
.adp-mer .adp-mer-logo {
  display: flex; align-items: center; justify-content: center; flex: 0 0 auto;
  width: 88px; height: 88px; border-radius: 12px; overflow: hidden; background: #fff;
}
.adp-mer .adp-mer-logo img { display: block; width: 88px; height: 88px; max-width: none; margin: 0; object-fit: contain; border-radius: 0; box-shadow: none; }
.adp-mer .adp-mer-logo--foto img { object-fit: cover; }
.adp-mer .adp-mer-logo--ini {
  background: var(--sd-primary, #1E50E0); color: #fff; font-weight: 800; font-size: 1.6rem; letter-spacing: .02em;
}
.adp-mer .adp-mer-nome {
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
  font-size: .78rem; font-weight: 700; line-height: 1.2; text-align: center; word-break: break-word;
}

/* Movimento: a trilha tem a lista duas vezes e desliza metade dela (laço sem emenda) */
.adp-mer--anima .adp-mer-trilha { animation: adp-mer-desliza var(--adp-mer-dur, 24s) linear infinite; will-change: transform; }
@keyframes adp-mer-desliza { from { transform: translateX(0); } to { transform: translateX(-50%); } }
.adp-mer--anima .adp-mer-janela:hover .adp-mer-trilha,
.adp-mer--anima .adp-mer-janela:focus-within .adp-mer-trilha,
.adp-mer--anima.adp-mer--pausa .adp-mer-trilha { animation-play-state: paused; }

/* Com o script carregado, o movimento passa a ser por rolagem (dá para arrastar nos dois sentidos) */
.adp-mer .adp-mer-janela { -webkit-user-select: none; user-select: none; }
.adp-mer--js .adp-mer-janela {
  overflow-x: auto; overflow-y: hidden; scrollbar-width: none; overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch; cursor: grab;
}
.adp-mer--js .adp-mer-janela::-webkit-scrollbar { display: none; }
.adp-mer--js .adp-mer-janela.adp-mer-arrastando { cursor: grabbing; }
.adp-mer--js.adp-mer--anima .adp-mer-trilha { animation: none; transform: none; will-change: auto; }

/* Poucos anunciantes: linha parada (sem cópia) */
.adp-mer--parado .adp-mer-janela { overflow-x: auto; scrollbar-width: none; }
.adp-mer--parado .adp-mer-janela::-webkit-scrollbar { display: none; }
.adp-mer--parado .adp-mer-trilha { margin: 0 auto; }

/* Decisão do dono (28/10/2026): a faixa anda para todos, inclusive com "reduzir movimento" ligado no aparelho. */

@media (max-width: 480px) {
  .adp-mer .adp-mer-wrap { padding: 0 1rem; }
  .adp-mer .adp-mer-mais { font-size: .82rem; }
}
