.gbr-whatsapp-float {
  --gbr-whatsapp-lift: 0px;
  position: fixed;
  left: max(24px, env(safe-area-inset-left, 0px));
  bottom: calc(22px + env(safe-area-inset-bottom, 0px) + var(--gbr-whatsapp-lift));
  z-index: 1030;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 58px;
  height: 58px;
  padding: 0;
  border: 1px solid rgba(31, 66, 13, .16);
  border-radius: 50%;
  background: #128c4c;
  color: #fff;
  text-decoration: none;
  box-shadow: 0 4px 18px rgba(10, 62, 33, .22), 0 0 22px rgba(18, 140, 76, .55);
  isolation: isolate;
  transition: transform .2s ease, background-color .2s ease;
}
.gbr-whatsapp-float::before {
  content: "";
  position: absolute;
  inset: -5px;
  z-index: -1;
  border: 1px solid rgba(18, 140, 76, .42);
  border-radius: inherit;
  box-shadow: 0 0 24px 7px rgba(18, 140, 76, .25);
  animation: gbr-whatsapp-glow 3s ease-in-out infinite;
  pointer-events: none;
}
.gbr-whatsapp-float:hover {color: #fff; background: #0e753e; transform: translateY(-2px);}
.gbr-whatsapp-float:focus-visible {outline: 3px solid #163a63; outline-offset: 6px;}
.gbr-whatsapp-float svg {display: block; flex: none; width: 30px; height: 30px;}
.gbr-whatsapp-label {
  position: absolute;
  left: calc(100% + 14px);
  top: 50%;
  transform: translateY(-50%);
  padding: 8px 12px;
  border-radius: 8px;
  background: #163a63;
  color: #fff;
  font: 600 13px/1.4 Arial, Helvetica, sans-serif;
  white-space: nowrap;
  box-shadow: 0 3px 14px rgba(22, 58, 99, .16);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .2s ease;
}
.gbr-whatsapp-float:hover .gbr-whatsapp-label,
.gbr-whatsapp-float:focus-visible .gbr-whatsapp-label {opacity: 1; visibility: visible;}
body:has(dialog[open]) .gbr-whatsapp-float,
body:has(.offcanvas.show) .gbr-whatsapp-float,
body:has(.offcanvas.showing) .gbr-whatsapp-float,
body:has(.modal.show) .gbr-whatsapp-float {visibility: hidden; pointer-events: none;}
@keyframes gbr-whatsapp-glow {
  0%, 100% {transform: scale(.96); opacity: .55;}
  50% {transform: scale(1.09); opacity: 1;}
}
@media (max-width: 767px) {
  .gbr-whatsapp-float {
    left: max(16px, env(safe-area-inset-left, 0px));
    bottom: calc(16px + env(safe-area-inset-bottom, 0px) + var(--gbr-whatsapp-lift));
    width: 54px;
    height: 54px;
  }
  .gbr-whatsapp-float svg {width: 28px; height: 28px;}
}
@media (prefers-reduced-motion: reduce) {
  .gbr-whatsapp-float, .gbr-whatsapp-label {transition: none;}
  .gbr-whatsapp-float::before {animation: none;}
}
@media print {.gbr-whatsapp-float {display: none;}}
