/* Parte técnica da Tecnologia, carregada em todas as páginas e posts (gerar_site.py injeta o link).
   Não vem do pacote do Claude Design: pacote novo não apaga o que está aqui.
   O CSS de cada página entra depois deste arquivo: regra daqui que disputa com a página precisa de
   seletor mais específico ou !important. */

/* UI04: a barra "Suporte / Falar com vendas" fica sempre visível.
   O pacote apaga a barra com uma animação ligada à rolagem quando o formulário final entra na tela. */
.ct-fade { animation: none !important; opacity: 1 !important; visibility: visible !important; }

/* UI09: no celular a barra ocupa a largura toda; o fim da página termina acima dela.
   O espaço vai no rodapé (último bloco da página): padding no body não empurra o conteúdo, que
   transborda o body nestas páginas. */
@media (max-width: 767px) {
  html body footer[data-screen-label="Footer"] { padding-bottom: 96px !important; }
}

/* UI13: aviso de cookies em faixa centralizada logo acima da barra flutuante (a barra fica em bottom: 24px,
   com cerca de 56px de altura). Centralizado, não cruza o botão do hero, que fica à esquerda em umas
   páginas e à direita em outras. */
.ck-aviso {
  position: fixed; left: 50%; bottom: 96px; z-index: 250; transform: translateX(-50%);
  width: calc(100vw - 48px); max-width: 760px; box-sizing: border-box;
  display: flex; align-items: center; gap: 20px;
  padding: 14px 18px; border-radius: 16px;
  background: #ffffff; color: #3a3f4d; border: 1px solid rgba(58, 63, 77, .12);
  box-shadow: 0 12px 32px rgba(58, 63, 77, .18);
  font-family: 'Nunito', sans-serif; font-size: 14px; line-height: 1.5;
}
.ck-aviso p { margin: 0; flex: 1 1 auto; }
.ck-aviso a { color: #108089; font-weight: 700; }
.ck-acoes { display: flex; gap: 10px; flex: 0 0 auto; }
.ck-acoes button {
  height: 38px; padding: 0 20px; border-radius: 999px; cursor: pointer;
  font-family: inherit; font-size: 14px; font-weight: 800;
}
/* #108089 com texto branco dá 4,7:1 (AA); o verde da marca #129faa daria 3,2:1. */
.ck-aceitar { background: #108089; color: #ffffff; border: none; }
.ck-recusar { background: transparent; color: #3a3f4d; border: 1.5px solid rgba(58, 63, 77, .3); }
.ck-acoes button:focus-visible { outline: 2px solid #108089; outline-offset: 2px; }

/* UI05: quem navega por teclado foca a caixa invisível do "Suporte"; o contorno aparece no botão visível. */
.ct-check:focus-visible + .ct-support { outline: 2px solid #108089; outline-offset: 2px; }

/* UI05: aviso quando o chat do Intercom não abre (bloqueador, rede ou domínio não liberado). */
.ic-aviso {
  position: fixed; left: 50%; bottom: 96px; z-index: 260; transform: translateX(-50%);
  width: calc(100vw - 48px); max-width: 520px; box-sizing: border-box;
  display: flex; align-items: center; gap: 14px; padding: 12px 16px; border-radius: 14px;
  background: #ffffff; color: #3a3f4d; border: 1px solid rgba(58, 63, 77, .12);
  box-shadow: 0 12px 32px rgba(58, 63, 77, .18);
  font-family: 'Nunito', sans-serif; font-size: 14px; line-height: 1.5;
}
.ic-aviso p { margin: 0; flex: 1 1 auto; }
.ic-aviso a { color: #108089; font-weight: 700; white-space: nowrap; }
.ic-fechar {
  flex: 0 0 auto; height: 34px; padding: 0 14px; border-radius: 999px; cursor: pointer;
  background: transparent; color: #3a3f4d; border: 1.5px solid rgba(58, 63, 77, .3);
  font-family: inherit; font-size: 13px; font-weight: 800;
}
.ic-fechar:focus-visible { outline: 2px solid #108089; outline-offset: 2px; }
@media (max-width: 767px) {
  .ic-aviso { left: 12px; right: 12px; width: auto; transform: none; }
}
@media (max-width: 767px) {
  .ck-aviso { left: 12px; right: 12px; width: auto; transform: none; flex-direction: column; align-items: stretch; gap: 12px; }
  .ck-acoes button { flex: 1 1 0; }
}
