.rett-floating-contact {
  bottom: max(18px, env(safe-area-inset-bottom));
  display: grid;
  gap: 10px;
  position: fixed;
  right: max(18px, env(safe-area-inset-right));
  z-index: 35;
}

.rett-floating-contact__button {
  align-items: center;
  background: var(--dp-social-bg, #1a9fb5);
  border: 1px solid rgba(255, 255, 255, .42);
  border-radius: 50%;
  box-shadow: 0 8px 22px rgba(10, 31, 63, .2);
  color: #fff !important;
  cursor: pointer;
  display: flex;
  height: 48px;
  justify-content: center;
  padding: 0;
  transition: box-shadow 160ms ease, transform 160ms ease;
  width: 48px;
}

.rett-floating-contact__button:hover { box-shadow: 0 11px 26px rgba(10, 31, 63, .28); transform: translateY(-2px); }
.rett-floating-contact__button:focus-visible { outline: 3px solid #fff; outline-offset: 2px; }
.rett-floating-contact__button svg { color: #fff !important; fill: none; height: 23px; stroke: #fff !important; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; width: 23px; }
.rett-floating-contact__button svg.rett-floating-contact__filled { fill: #fff !important; stroke: none !important; }
.rett-floating-contact__custom-icon { height: 24px; object-fit: contain; width: 24px; }
.rett-floating-contact__button--top { --dp-social-bg: #fff; border-color: var(--dp-line, #dce3ec); color: var(--dp-navy, #0e2a55) !important; }
.rett-floating-contact__button--top svg { color: var(--dp-navy, #0e2a55) !important; stroke: var(--dp-navy, #0e2a55) !important; }
.rett-floating-contact__button--top.is-hidden { opacity: 0; pointer-events: none; transform: translateY(8px); }

@media (max-width: 749px) {
  .rett-floating-contact { bottom: max(14px, env(safe-area-inset-bottom)); gap: 8px; right: max(12px, env(safe-area-inset-right)); }
  .rett-floating-contact__button { height: 43px; width: 43px; }
}
