/* Shared floating Facebook contact for every public/customer-facing page. */
.site-floating-fb-contact{
  position:fixed;
  right:max(10px, calc((100vw - var(--phone-max, 100vw))/2 + 10px));
  bottom:calc(12px + env(safe-area-inset-bottom, 0px));
  z-index:120;
  width:clamp(190px, 52vw, 250px);
  max-width:62vw;
  display:block;
  text-decoration:none;
  filter:drop-shadow(0 14px 26px rgba(15,50,44,.22));
  transform:translateZ(0);
  transition:transform .18s ease, filter .18s ease, opacity .18s ease;
}
.site-floating-fb-contact img{
  display:block;
  width:100%;
  height:auto;
  pointer-events:none;
  user-select:none;
  -webkit-user-drag:none;
}
.site-floating-fb-contact:active{transform:scale(.965);}
@media (hover:hover){
  .site-floating-fb-contact:hover{
    transform:translateY(-4px);
    filter:drop-shadow(0 18px 32px rgba(15,50,44,.26));
  }
}
@media (max-width:380px){
  .site-floating-fb-contact{
    width:178px;
    max-width:56vw;
    right:max(7px, calc((100vw - var(--phone-max, 100vw))/2 + 7px));
    bottom:calc(9px + env(safe-area-inset-bottom, 0px));
  }
}
@media (min-width:768px){
  .site-floating-fb-contact{
    width:clamp(260px, 22vw, 340px);
    max-width:340px;
    right:clamp(20px, 3vw, 46px);
    bottom:calc(22px + env(safe-area-inset-bottom, 0px));
  }
}
@media (min-width:1280px){
  .site-floating-fb-contact{width:330px;}
}
body.pin-open .site-floating-fb-contact{
  opacity:0;
  pointer-events:none;
}
