  /* ── WHATSAPP ─────────────────────────── */

  .wa-btn {
    position: fixed; bottom: 28px; right: 28px; z-index: 999;
    width: 58px; height: 58px; border-radius: 50%;
    background: #25d366;
    display: flex; align-items: center; justify-content: center;
    color: var(--white); font-size: 1.5rem;
    text-decoration: none;
    box-shadow: 0 6px 24px rgba(37,211,102,.4);
    transition: transform .25s, box-shadow .25s;
    animation: waPulse 2.5s ease-in-out infinite;
  }
  .wa-btn:hover {
    transform: scale(1.1);
    box-shadow: 0 10px 32px rgba(37,211,102,.55);
    animation: none;
  }
  .wa-tooltip {
    position: absolute; right: 66px; top: 50%; transform: translateY(-50%);
    background: var(--blue-deep); color: var(--white);
    font-size: .75rem; font-weight: 500; white-space: nowrap;
    padding: 6px 12px; border-radius: 6px;
    opacity: 0; pointer-events: none;
    transition: opacity .2s;
  }
  .wa-tooltip::after {
    content: '';
    position: absolute; right: -5px; top: 50%; transform: translateY(-50%);
    width: 0; height: 0;
    border-top: 5px solid transparent; border-bottom: 5px solid transparent;
    border-left: 5px solid var(--blue-deep);
  }
  .wa-btn:hover .wa-tooltip { opacity: 1; }

    /* ── ANIMATIONS ───────────────────────── */
  @keyframes fadeUp {
    from { opacity: 0; transform: translateY(28px); }
    to   { opacity: 1; transform: translateY(0); }
  }
  @keyframes floatIn {
    from { opacity: 0; transform: scale(.92); }
    to   { opacity: 1; transform: scale(1); }
  }
  @keyframes spinSlow {
    to { transform: rotate(360deg); }
  }
  @keyframes marquee {
    from { transform: translateX(0); }
    to   { transform: translateX(-50%); }
  }
  @keyframes waPulse {
    0%, 100% { box-shadow: 0 6px 24px rgba(37,211,102,.4); }
    50%       { box-shadow: 0 6px 38px rgba(37,211,102,.65); }
  }