/* =====================================================================
   CodaraLabs — estilos compartilhados pelas 3 páginas
   Seletor de idioma + botão flutuante de WhatsApp.
   As cores vêm das variáveis já definidas em cada página (:root).
   ===================================================================== */

/* ---------------------- SELETOR DE IDIOMA ---------------------- */

.lang {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  flex: none;
  padding: 3px;
  border: 1px solid var(--line, rgba(26, 47, 80, .12));
  border-radius: 999px;
  background: rgba(255, 255, 255, .6);
}

.lang-btn {
  font-family: inherit;
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: .04em;
  color: var(--muted, #6B7688);
  background: transparent;
  border: 0;
  border-radius: 999px;
  padding: 6px 12px;
  cursor: pointer;
  line-height: 1;
  transition: background .2s ease, color .2s ease;
}

.lang-btn:hover {
  color: var(--navy, #1A2F50);
  background: var(--navy-tint, #EDF1F7);
}

.lang-btn.is-active {
  color: #fff;
  background: var(--navy, #1A2F50);
}

.lang-btn.is-active:hover {
  background: var(--navy-deep, #132139);
}

/* no cabeçalho do index o seletor fica entre os links e o botão de CTA */
.nav .lang {
  margin-left: 4px;
}

/* ------------------------ REDES SOCIAIS ------------------------ */
/* Bloco padrão de rodapé: título curto + ícones circulares + @ visível.
   Para acrescentar uma rede nova, basta duplicar um .social-btn. */

.social {
  margin-top: 26px;
}

.social-titulo {
  display: block;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, .55);
  margin-bottom: 14px;
}

.social-lista {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.social-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, .2);
  color: rgba(255, 255, 255, .8);
  text-decoration: none;
  flex: none;
  transition: transform .2s ease, border-color .22s ease, color .22s ease, background .28s ease, box-shadow .22s ease;
}

.social-btn svg {
  width: 20px;
  height: 20px;
  display: block;
}

.social-btn:hover,
.social-btn:focus-visible {
  color: #fff;
  border-color: transparent;
  transform: translateY(-2px);
  background: linear-gradient(45deg, #F58529 0%, #DD2A7B 45%, #8134AF 72%, #515BD4 100%);
  box-shadow: 0 8px 20px rgba(221, 42, 123, .34);
}

.social-arroba {
  font-size: 14.6px;
  font-weight: 600;
  color: rgba(255, 255, 255, .62);
  text-decoration: none;
  transition: color .2s ease;
}

.social-arroba:hover {
  color: #fff;
}

/* versão compacta, para os rodapés de uma linha */
.footer-social {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.footer-social .social-btn {
  width: 36px;
  height: 36px;
}

.footer-social .social-btn svg {
  width: 17px;
  height: 17px;
}

/* ------------------- BOTÃO FLUTUANTE DE WHATSAPP ------------------- */

.wa-fab {
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 70;                      /* acima do header, que usa 60 */
  display: inline-flex;
  align-items: center;
  gap: 0;
  height: 58px;
  padding: 0 15px;
  border-radius: 999px;
  background: #25D366;
  color: #fff;
  text-decoration: none;
  box-shadow: 0 6px 18px rgba(37, 211, 102, .38), 0 2px 6px rgba(0, 0, 0, .14);
  transition: gap .28s ease, padding .28s ease, transform .2s ease, box-shadow .22s ease;
}

.wa-fab:hover,
.wa-fab:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 10px 26px rgba(37, 211, 102, .46), 0 3px 10px rgba(0, 0, 0, .16);
}

.wa-fab svg {
  width: 28px;
  height: 28px;
  flex: none;
  display: block;
}

.wa-fab-label {
  font-family: var(--font, inherit);
  font-size: 15px;
  font-weight: 700;
  letter-spacing: -.01em;
  white-space: nowrap;
  max-width: 0;
  opacity: 0;
  overflow: hidden;
  transition: max-width .28s ease, opacity .22s ease;
}

/* o rótulo só aparece no hover, em telas com mouse */
@media (hover: hover) and (min-width: 761px) {
  .wa-fab:hover .wa-fab-label,
  .wa-fab:focus-visible .wa-fab-label {
    max-width: 200px;
    opacity: 1;
  }

  .wa-fab:hover,
  .wa-fab:focus-visible {
    gap: 10px;
    padding: 0 22px 0 15px;
  }
}

/* pulso discreto, só na primeira aparição */
.wa-fab::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 999px;
  border: 2px solid #25D366;
  opacity: 0;
  animation: wa-pulso 2.6s ease-out 3;
  pointer-events: none;
}

@keyframes wa-pulso {
  0%   { transform: scale(1);    opacity: .55; }
  70%  { transform: scale(1.35); opacity: 0; }
  100% { transform: scale(1.35); opacity: 0; }
}

/* ------------------- BOTÃO DE WHATSAPP EM LINHA ------------------- */
/* usado dentro de seções (CTA final e lateral do formulário) */

.btn--wa {
  background: #25D366;
  color: #fff;
  border-color: transparent;
  box-shadow: 0 8px 22px rgba(37, 211, 102, .3);
}

.btn--wa:hover {
  background: #1EBE5A;
  transform: translateY(-2px);
}

.btn--wa svg {
  width: 19px;
  height: 19px;
}

.btn--wa:hover svg {
  transform: none;
}

/* ----------------------- RESPONSIVO ----------------------- */

@media (max-width: 760px) {
  .wa-fab {
    right: 16px;
    bottom: 16px;
    height: 54px;
    width: 54px;
    padding: 0;
    justify-content: center;
  }

  .wa-fab-label {
    display: none;
  }

  /* no cabeçalho estreito o seletor encosta à direita, antes do botão de menu.
     O .burger tem margin-left:auto na página; aqui ele passa a ficar colado
     no seletor, senão os dois "auto" dividiriam o espaço e o seletor
     terminaria no meio do cabeçalho. */
  .nav .lang {
    margin-left: auto;
  }

  .nav .burger {
    margin-left: 10px;
  }

  .lang-btn {
    padding: 6px 10px;
    font-size: 12px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .wa-fab,
  .wa-fab-label,
  .wa-fab::before {
    animation: none !important;
    transition: none !important;
  }
}
