.page-id-3999 #header {
  display: none !important;
}

.page-id-3999 p.aqua-description{
  text-align: left;
  word-break: normal !important;
  overflow-wrap: normal !important;
  word-wrap: normal !important;
  hyphens: none !important;
  -webkit-hyphens: none !important;
}
.calendly-badge-widget {
  bottom: 20px !important;
  right: 20px !important;
}
/* Move reCAPTCHA badge to bottom-left */
.grecaptcha-badge {
  left: 20px !important;
  right: auto !important;
  bottom: 20px !important;
}
/* Move the CALL button iframe (widgetCta) */
iframe[name="widgetCta"]{
  position: fixed !important;
  left: 50% !important;
  right: auto !important;
  bottom: 20px !important;
  transform: translateX(-50%) !important;
  z-index: 999999 !important;
}
/* Make reCAPTCHA badge smaller but still visible */
.grecaptcha-badge {
  transform: scale(0.7);
  transform-origin: left bottom;
}
@media (max-width: 600px){
  .grecaptcha-badge {
    transform: scale(0.6);
  }
}
.grecaptcha-badge {
  left: 20px !important;
  right: auto !important;
  bottom: 20px !important;
  transform: scale(0.7);
  transform-origin: left bottom;
  z-index: 999999 !important;
}
.calendly-badge-widget {
  left: 50% !important;
  right: auto !important;
  bottom: 20px !important;
  transform: translateX(-50%) !important;
  z-index: 999999 !important;
}
iframe[name="widgetCta"] {
  position: fixed !important;
  right: 20px !important;
  left: auto !important;
  bottom: 20px !important;
  transform: none !important;
  z-index: 999999 !important;
}
/* MOBILE ONLY: compact + animated smart stack on the right */
@media (max-width: 800px){

  /* Tune these two numbers to tighten/loosen spacing */
  :root{
    --stack-right: 10px;
    --stack-bottom: 6px;
    --stack-gap: 40px; /* smaller = tighter */
  }

  /* Smooth transitions for the “stack shifting” */
  body .grecaptcha-badge,
  body .calendly-badge-widget,
  body iframe[name="widgetCta"]{
    transition: bottom 220ms ease, transform 220ms ease, opacity 220ms ease;
    will-change: bottom, transform, opacity;
    z-index: 999999 !important;
  }

  /* 1) reCAPTCHA always at bottom */
  body .grecaptcha-badge{
    left: auto !important;
    right: var(--stack-right) !important;
    bottom: var(--stack-bottom) !important;
    transform: scale(0.55) !important;  /* slightly smaller than before */
    transform-origin: right bottom !important;
  }

  /* 2) Calendly (when present) */
  body .calendly-badge-widget{
    left: auto !important;
    right: var(--stack-right) !important;
    bottom: calc(var(--stack-bottom) + var(--stack-gap)) !important;
    transform: none !important;
  }

  /* Default: call button sits right above reCAPTCHA (same spot as Calendly would be) */
  body iframe[name="widgetCta"]{
    position: fixed !important;
    left: auto !important;
    right: var(--stack-right) !important;
    bottom: calc(var(--stack-bottom) + var(--stack-gap)) !important;
    transform: none !important;
  }

  /* If Calendly exists, move call button above it */
  body:has(.calendly-badge-widget) iframe[name="widgetCta"]{
    bottom: calc(var(--stack-bottom) + (var(--stack-gap) * 2)) !important;
  }

  /* Compliant “hide on scroll”: fade it down but keep visible */
  body.is-scrolling .grecaptcha-badge{
    opacity: 0.18 !important;          /* still visible */
    transform: scale(0.50) !important; /* slightly smaller while scrolling */
  }
}
/* Fix property description text being cut off */
.single-property .property-description,
.single-property .detail-wrap .content-wrap,
.single-property .block-content-wrap,
.single-property .hz-content-text,
.single-property .houzez-content-wrap,
.single-property .property-description-wrap,
.single-property .description,
.single-property .entry-content,
.single-property p {
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  hyphens: manual !important;
  display: block !important;
  height: auto !important;
  max-height: none !important;
}

/* Extra protection in case the parent wrapper is clipping text */
.single-property .detail-wrap,
.single-property .block-wrap,
.single-property .property-detail-wrap,
.single-property .content-area,
.single-property article,
.single-property section {
  overflow: visible !important;
  height: auto !important;
  max-height: none !important;
}
/* Fix mobile hamburger on homepage */
@media (max-width: 991px) {
  body.home button.navbar-toggler {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
    border: 1px solid #333 !important;
    padding: 4px 8px !important;
    background: white !important;
    position: relative !important;
    z-index: 999999 !important;
  }
  body.home button.navbar-toggler i {
    display: none !important;
  }
  body.home button.navbar-toggler::after {
    content: "☰" !important;
    color: #333 !important;
    font-size: 22px !important;
    display: block !important;
    line-height: 1 !important;
    font-family: Arial, sans-serif !important;
  }
}
/* Hide parallax bg until SiteOrigin JS has initialized it */
img[data-siteorigin-parallax] {
    visibility: hidden;
}
img[data-siteorigin-parallax][style] {
    visibility: visible;
}