/* ==========================================================================
   COUTO ASSESSORIA — animations.css
   Transições/hover simples (não-GSAP). Timelines ficam em js/animations.js
   ========================================================================== */

/* Micro-interações discretas */
.btn {
  transition: filter 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;
}

.btn:hover {
  filter: brightness(1.08);
  transform: translateY(-2px);
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.22);
}

.btn:active {
  filter: brightness(0.96);
  transform: translateY(0) scale(0.98);
}

.nav__link {
  transition: background-color 0.25s ease;
}

.nav__link:hover {
  background-color: rgba(255, 255, 255, 0.1);
}

.card-dor,
.card-solucao,
.bloco-beneficio,
.parceiros__item,
.contato__icone {
  transition: transform 0.3s ease, box-shadow 0.3s ease,
              filter 0.3s ease, border-color 0.3s ease;
}

/* Boxes/cards com o mesmo comportamento de hover dos botões:
   elevação + escala + sombra intensa, claramente perceptível
   (somente em dispositivos com ponteiro) */
@media (hover: hover) {
  .card-dor:hover {
    transform: translateY(-8px) translateX(4px) scale(1.05); 
    filter: brightness(1.03);
    box-shadow: 14px 20px 30px rgba(0, 0, 0, 0.32);
    border-top-color: var(--color-primary-deep);
  }

  .card-solucao:hover {
    transform: translateY(-8px) scale(1.02);
    filter: brightness(1.12);
    border-color: rgba(255, 255, 255, 0.45);
    box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25);
  }

  .bloco-beneficio:hover {
    filter: brightness(1.06);
    border-color: rgba(0, 150, 136, 0.35);
    box-shadow: 8px 10px 20px rgba(0, 0, 0, 0.32);
  }

  /* Logos levemente esmaecidos; ganham opacidade total + escala no hover
     (apenas desktop — no mobile o carrossel roda sem efeitos) */
  .parceiros__item {
    opacity: 0.88;
  }

  .parceiros__item:hover {
    opacity: 1;
    transform: scale(1.06);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.14);
  }

  .contato__link:hover .contato__icone {
    transform: translateY(-4px);
    filter: brightness(1.08);
    box-shadow: 0 6px 14px rgba(0, 150, 136, 0.3);
  }

  .contato__link:hover .contato__valor {
    color: var(--color-primary);
  }
}

.contato__valor {
  transition: color 0.3s ease;
}


.footer__link {
  transition: color 0.25s ease;
}

.footer__link:hover {
  color: var(--color-white);
}

.form__input {
  transition: border-color 0.25s ease;
}

/* Seta do indicador "Arraste para baixo" balança suavemente */
.beneficios__hint-arrow {
  animation: hint-bob 1.6s ease-in-out infinite;
}

@keyframes hint-bob {
  0%,
  100% {
    transform: translateY(-2px) rotate(45deg);
    opacity: 0.45;
  }
  50% {
    transform: translateY(3px) rotate(45deg);
    opacity: 1;
  }
}

/* Acessibilidade: reduz movimento quando solicitado */
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
