.floating-cta{
  position:fixed;
  bottom:24px;
  right:24px;
  z-index:1050;
  display:flex;
  flex-direction:column-reverse;
  align-items:flex-end;
  gap:12px;
}
.floating-cta-toggle{
  width:56px;
  height:56px;
  border-radius:50%;
  border:none;
  background:#0084ff;
  color:#fff;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 4px 16px rgba(0, 0, 0, 0.2);
  transition:transform 0.3s ease, box-shadow 0.3s ease;
}

.floating-cta-toggle:hover{
  transform:scale(1.08);
  box-shadow:0 6px 24px rgba(0, 0, 0, 0.28);
}

.floating-cta-toggle svg{
  width:28px;
  height:28px;
}

.floating-cta-toggle .bi{
  font-size:1.4rem;
}
.floating-cta.is-open .floating-cta-toggle{
  width:48px;
  height:48px;
}

.floating-cta.is-open .floating-cta-toggle .bi{
  font-size:1.2rem;
}
.floating-cta-menu{
  display:flex;
  flex-direction:column-reverse;
  align-items:flex-end;
  gap:10px;
  pointer-events:none;
}

.floating-cta.is-open .floating-cta-menu{
  pointer-events:auto;
}
.floating-cta-item{
  display:flex;
  align-items:center;
  gap:10px;
  text-decoration:none;
  opacity:0;
  transform:translateY(16px) scale(0.8);
  transition:opacity 0.25s ease, transform 0.25s ease;
}

.floating-cta.is-open .floating-cta-item{
  opacity:1;
  transform:translateY(0) scale(1);
}
.floating-cta.is-open .floating-cta-item:nth-child(1){ transition-delay:0.04s; }
.floating-cta.is-open .floating-cta-item:nth-child(2){ transition-delay:0.08s; }
.floating-cta.is-open .floating-cta-item:nth-child(3){ transition-delay:0.12s; }
.floating-cta.is-open .floating-cta-item:nth-child(4){ transition-delay:0.16s; }
.floating-cta.is-open .floating-cta-item:nth-child(5){ transition-delay:0.20s; }
.floating-cta-icon{
  width:48px;
  height:48px;
  min-width:48px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  box-shadow:0 2px 10px rgba(0, 0, 0, 0.18);
  transition:transform 0.2s ease;
}

.floating-cta-item:hover .floating-cta-icon{
  transform:scale(1.1);
}

.floating-cta-icon svg{
  width:24px;
  height:24px;
}

.floating-cta-icon .bi{
  font-size:1.25rem;
}
@media (max-width: 768px){
  .floating-cta{
    bottom:24px;
    right:16px;
  }

  .floating-cta-toggle{
    width:50px;
    height:50px;
  }

  .floating-cta-icon{
    width:44px;
    height:44px;
    min-width:44px;
  }
}
