/* Floating WhatsApp button */
    .wa-float {
      position: fixed;
      right: 20px;
      bottom: calc(20px + env(safe-area-inset-bottom, 0px));
      z-index: 2147483647;
      display: flex;
      align-items: center;
      gap: 10px;
      text-decoration: none
    }

    .wa-float .wa-ic {
      position: relative;
      width: 60px;
      height: 60px;
      border-radius: 50%;
      background: #25d366;
      display: grid;
      place-items: center;
      box-shadow: 0 6px 22px rgba(37, 211, 102, .55), 0 2px 8px rgba(0, 0, 0, .35);
      transition: transform .25s
    }

    .wa-float .wa-ic svg {
      width: 34px;
      height: 34px;
      fill: #fff;
      display: block
    }

    .wa-float .wa-ic:before,
    .wa-float .wa-ic:after {
      content: "";
      position: absolute;
      inset: 0;
      border-radius: 50%;
      border: 2px solid #25d366;
      animation: waPulse 2s ease-out infinite;
      pointer-events: none
    }

    .wa-float .wa-ic:after {
      animation-delay: 1s
    }

    .wa-float:hover .wa-ic {
      transform: scale(1.1)
    }

    .wa-float .wa-tx {
      background: #fff;
      color: #0a1a3a;
      font: 600 13px/1 Sora, system-ui, sans-serif;
      padding: 10px 14px;
      border-radius: 999px;
      box-shadow: 0 4px 16px rgba(0, 0, 0, .3);
      white-space: nowrap;
      opacity: 0;
      transform: translateX(10px);
      transition: .3s;
      pointer-events: none;
      order: -1
    }

    .wa-float:hover .wa-tx,
    .wa-float:focus-visible .wa-tx {
      opacity: 1;
      transform: none
    }

    @keyframes waPulse {
      0% {
        transform: scale(1);
        opacity: .8
      }

      100% {
        transform: scale(1.7);
        opacity: 0
      }
    }

    @media(max-width:560px) {
      .wa-float {
        right: 14px;
        bottom: calc(14px + env(safe-area-inset-bottom, 0px))
      }

      .wa-float .wa-ic {
        width: 54px;
        height: 54px
      }

      .wa-float .wa-tx {
        display: none
      }
    }
