/* Fixed contact and concierge controls: desktop composition only.
 * Compact/mobile keeps its dedicated clearance above Listings / Map View. */
@media (min-width: 1400px) {
  body:not(.elementor-editor-active) .artbin-floating-contact {
    bottom: calc(var(--artbin-floating-edge) + var(--artbin-floating-backtop-size) + var(--artbin-floating-gap) + env(safe-area-inset-bottom, 0px));
  }

  body:not(.elementor-editor-active) .artbin-property-brief-launcher {
    bottom: calc(30px + 42px + 12px + 54px + 22px + env(safe-area-inset-bottom, 0px));
  }

  body:not(.elementor-editor-active) .artbin-property-brief-teaser {
    bottom: calc(30px + 64px + 18px + 42px + 12px + 54px + 22px + 2px + env(safe-area-inset-bottom, 0px));
  }
}

/* Selected option 01 — the right rail is one quiet, vertically spaced stack:
 * Arthur's portrait, a gold contact action and a separate outlined return
 * control.  The back-to-top control always owns the lowest position. */
body:not(.elementor-editor-active) {
  --artbin-right-rail-edge: 30px;
  --artbin-right-rail-top-size: 42px;
  --artbin-right-rail-contact-size: 54px;
  --artbin-right-rail-gap: 14px;
  --artbin-right-rail-base: 0px;
}

body:not(.elementor-editor-active) #scroll-top.btn-back-to-top {
  position: fixed !important;
  right: calc(var(--artbin-right-rail-edge) + env(safe-area-inset-right, 0px)) !important;
  bottom: calc(var(--artbin-right-rail-base) + var(--artbin-right-rail-edge) + env(safe-area-inset-bottom, 0px)) !important;
  z-index: 200040 !important;
  width: var(--artbin-right-rail-top-size) !important;
  min-width: var(--artbin-right-rail-top-size) !important;
  height: var(--artbin-right-rail-top-size) !important;
  min-height: var(--artbin-right-rail-top-size) !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
  line-height: calc(var(--artbin-right-rail-top-size) - 2px) !important;
  border: 1px solid rgba(244, 181, 27, 0.92) !important;
  border-radius: 50% !important;
  color: #f4b51b !important;
  background: rgba(16, 43, 71, 0.96) !important;
  box-shadow: 0 12px 28px rgba(3, 13, 23, 0.24) !important;
  transition: transform 180ms ease, background 180ms ease, color 180ms ease, box-shadow 180ms ease !important;
}

body:not(.elementor-editor-active) #scroll-top.btn-back-to-top i {
  margin: 0 !important;
  color: currentColor !important;
  font-size: 15px !important;
  line-height: inherit !important;
}

body:not(.elementor-editor-active) #scroll-top.btn-back-to-top:is(:hover, :focus-visible) {
  color: #102b47 !important;
  background: #f4b51b !important;
  box-shadow: 0 16px 34px rgba(3, 13, 23, 0.30), 0 0 0 4px rgba(244, 181, 27, 0.12) !important;
  outline: 0 !important;
  transform: translateY(-2px) !important;
}

body:not(.elementor-editor-active) .artbin-floating-contact {
  bottom: calc(var(--artbin-right-rail-base) + var(--artbin-right-rail-edge) + var(--artbin-right-rail-top-size) + var(--artbin-right-rail-gap) + env(safe-area-inset-bottom, 0px)) !important;
}

body:not(.elementor-editor-active) .artbin-floating-contact-button {
  border-color: rgba(244, 181, 27, 0.94) !important;
  box-shadow: 0 14px 32px rgba(3, 13, 23, 0.28), 0 0 0 5px rgba(244, 181, 27, 0.10) !important;
}

body:not(.elementor-editor-active) .artbin-floating-contact-orbit {
  display: none !important;
  animation: none !important;
}

body:not(.elementor-editor-active) .artbin-property-brief-launcher {
  bottom: calc(var(--artbin-right-rail-base) + var(--artbin-right-rail-edge) + var(--artbin-right-rail-top-size) + var(--artbin-right-rail-gap) + var(--artbin-right-rail-contact-size) + var(--artbin-right-rail-gap) + env(safe-area-inset-bottom, 0px)) !important;
}

@media (max-width: 767.98px) {
  body:not(.elementor-editor-active) {
    --artbin-right-rail-edge: 15px;
    --artbin-right-rail-contact-size: 52px;
    --artbin-right-rail-gap: 12px;
    /* The existing mobile Listings / Map View switcher occupies this lane. */
    --artbin-right-rail-base: calc(var(--artbin-mobile-view-switcher-clearance, 84px) - 30px);
  }
}
