/* ctaf */
.abcctafefg {
  position: fixed;
  left: 0.9em;
  bottom: 0.9em;
  z-index: 900;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.65em;
}

.abcctafefgbtn {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  display: inline-flex;
  flex-direction: row-reverse;
  align-items: center;
  gap: 0.7em;
  min-height: 3.3em;
  padding: 0.35em 1.3em 0.35em 0.35em;
  border: 1px solid color-mix(in srgb, var(--ebmnt1helpercolor) 28%, transparent);
  border-radius: 99px;
  box-shadow: 0 0.7em 1.8em -0.5em rgba(0, 0, 0, 0.55), inset 0 1px 0 color-mix(in srgb, var(--ebmnt1helpercolor) 35%, transparent);
  font-size: clamp(0.85rem, 0.8rem + 0.25vw, 0.98rem);
  font-weight: 700;
  line-height: 1.2;
  animation: ebmnt1ctain 0.7s cubic-bezier(0.22, 1, 0.36, 1) both;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.abcctafefgcall {
  animation-delay: 0.12s;
}

[dir="ltr"] .abcctafefgbtn {
  flex-direction: row;
}

.abcctafefgbtn::after {
  content: "";
  position: absolute;
  inset-block: 0;
  inset-inline-start: -60%;
  z-index: -1;
  width: 45%;
  background: linear-gradient(100deg, transparent, color-mix(in srgb, var(--ebmnt1helpercolor) 38%, transparent), transparent);
  transform: skewX(-20deg);
  transition: inset-inline-start 0.7s ease;
}

.abcctafefgbtn:hover {
  transform: translateY(-3px);
  box-shadow: 0 1em 2.2em -0.5em color-mix(in srgb, var(--ebmnt1primarycolor) 70%, transparent), inset 0 1px 0 color-mix(in srgb, var(--ebmnt1helpercolor) 35%, transparent);
}

.abcctafefgbtn:hover::after {
  inset-inline-start: 120%;
}

.abcctafefgicon {
  position: relative;
  flex: none;
  width: 2.6em;
  height: 2.6em;
  display: grid;
  place-items: center;
  border-radius: 50%;
  font-size: 1.1em;
  transition: transform 0.5s ease;
}

.abcctafefgbtn:hover .abcctafefgicon {
  transform: rotate(-14deg) scale(1.08);
}

.abcctafefglabel {
  white-space: nowrap;
}

.abcctafefgwhats {
  background-color: var(--ebmnt1primarycolor);
  background-image: linear-gradient(135deg, color-mix(in srgb, var(--ebmnt1helpercolor) 22%, var(--ebmnt1primarycolor)), var(--ebmnt1primarycolor) 60%);
  color: var(--ebmnt1helpercolor);
}

.abcctafefgwhats .abcctafefgicon {
  background-color: var(--ebmnt1helpercolor);
  color: var(--ebmnt1primarycolor);
}

.abcctafefgwhats .abcctafefgicon::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 50%;
  animation: ebmnt1pulse 2.2s ease-out infinite;
}

.abcctafefgcall {
  background-color: var(--ebmnt1helpercolor);
  color: var(--ebmnt1secondarycolor);
}

.abcctafefgcall .abcctafefgicon {
  background-color: var(--ebmnt1secondarycolor);
  color: var(--ebmnt1helpercolor);
}

.abcctafefgcall::after {
  background: linear-gradient(100deg, transparent, color-mix(in srgb, var(--ebmnt1primarycolor) 30%, transparent), transparent);
}

@keyframes ebmnt1pulse {
  0% {
    box-shadow: 0 0 0 0 color-mix(in srgb, var(--ebmnt1helpercolor) 70%, transparent);
  }

  80%,
  100% {
    box-shadow: 0 0 0 0.9em color-mix(in srgb, var(--ebmnt1helpercolor) 0%, transparent);
  }
}

@keyframes ebmnt1ctain {
  from {
    opacity: 0;
    transform: translateX(-2.5em);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

@media (min-width: 768px) {
  .abcctafefg {
    left: 1.5em;
    bottom: 1.5em;
  }
}

@media (prefers-reduced-motion: reduce) {
  .abcctafefgbtn,
  .abcctafefgwhats .abcctafefgicon::before {
    animation: none;
  }
}
