/* Precision Home v9.72.0 — universal floating contact rail */
.ph-floating-contact{
  position:fixed!important;
  z-index:10019!important;
  right:max(16px,env(safe-area-inset-right))!important;
  left:auto!important;
  bottom:max(92px,calc(env(safe-area-inset-bottom) + 92px))!important;
  width:52px!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  pointer-events:none!important;
  direction:rtl!important;
}
.ph-floating-contact__item{
  position:relative!important;
  pointer-events:auto!important;
  display:grid!important;
  place-items:center!important;
  width:50px!important;
  height:50px!important;
  min-width:50px!important;
  min-height:50px!important;
  max-width:50px!important;
  max-height:50px!important;
  margin:0!important;
  padding:0!important;
  border:2px solid rgba(255,255,255,.98)!important;
  border-radius:50%!important;
  overflow:visible!important;
  font-size:0!important;
  line-height:0!important;
  text-decoration:none!important;
  box-sizing:border-box!important;
  box-shadow:0 8px 22px rgba(21,23,27,.22)!important;
  transform-origin:center center!important;
  will-change:transform,box-shadow!important;
}
.ph-floating-contact__item--phone{
  order:1!important;
  color:#fff!important;
  background:linear-gradient(135deg,#a93443,#742f36)!important;
  animation:ph-contact-wiggle 3.6s ease-in-out infinite!important;
}
.ph-floating-contact__item--whatsapp{
  order:2!important;
  color:#fff!important;
  background:#20bf5a!important;
  animation:ph-contact-wiggle 3.6s ease-in-out .9s infinite!important;
}
.ph-floating-contact__icon{
  position:static!important;
  inset:auto!important;
  display:grid!important;
  place-items:center!important;
  width:26px!important;
  height:26px!important;
  min-width:26px!important;
  min-height:26px!important;
  max-width:26px!important;
  max-height:26px!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  line-height:0!important;
  flex:none!important;
}
.ph-floating-contact__icon svg,
.ph-floating-contact__item--phone .ph-floating-contact__icon svg,
.ph-floating-contact__item--whatsapp .ph-floating-contact__icon svg{
  display:block!important;
  width:26px!important;
  height:26px!important;
  min-width:26px!important;
  min-height:26px!important;
  max-width:26px!important;
  max-height:26px!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  transform:none!important;
  flex:none!important;
}
.ph-floating-contact__item--phone .ph-floating-contact__icon svg{width:25px!important;height:25px!important;min-width:25px!important;min-height:25px!important;max-width:25px!important;max-height:25px!important}
.ph-floating-contact__item strong{display:none!important}
.ph-floating-contact__item::before{
  content:""!important;
  position:absolute!important;
  inset:-6px!important;
  border-radius:50%!important;
  pointer-events:none!important;
  border:2px solid currentColor!important;
  opacity:0!important;
  animation:ph-contact-halo 2.7s ease-out infinite!important;
}
.ph-floating-contact__item--whatsapp::before{animation-delay:.75s!important}
@keyframes ph-contact-wiggle{
  0%,68%,100%{transform:translate3d(0,0,0) rotate(0deg)}
  72%{transform:translate3d(-2px,0,0) rotate(-7deg)}
  76%{transform:translate3d(2px,0,0) rotate(7deg)}
  80%{transform:translate3d(-1px,0,0) rotate(-4deg)}
  84%{transform:translate3d(1px,0,0) rotate(4deg)}
  88%{transform:translate3d(0,0,0) rotate(0deg)}
}
@keyframes ph-contact-halo{
  0%,52%,100%{transform:scale(.96);opacity:0;box-shadow:0 0 0 0 currentColor}
  66%{opacity:.30}
  88%{transform:scale(1.26);opacity:0;box-shadow:0 0 18px 6px currentColor}
}
.ph-floating-contact__item:hover,.ph-floating-contact__item:focus-visible{filter:brightness(1.06)!important;box-shadow:0 10px 26px rgba(21,23,27,.28)!important}
body:has(.ph-ai01[data-state="open"]) .ph-floating-contact{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
@media(max-width:767px){
  .ph-floating-contact{
    right:max(10px,env(safe-area-inset-right))!important;
    bottom:max(78px,calc(env(safe-area-inset-bottom) + 78px))!important;
    width:48px!important;
    gap:7px!important;
  }
  .ph-floating-contact__item{
    width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;max-width:46px!important;max-height:46px!important;
  }
  .ph-floating-contact__icon,
  .ph-floating-contact__icon svg,
  .ph-floating-contact__item--whatsapp .ph-floating-contact__icon svg{
    width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important;max-width:24px!important;max-height:24px!important;
  }
  .ph-floating-contact__item--phone .ph-floating-contact__icon svg{width:23px!important;height:23px!important;min-width:23px!important;min-height:23px!important;max-width:23px!important;max-height:23px!important}
}
@media(max-width:380px){
  .ph-floating-contact{right:max(8px,env(safe-area-inset-right))!important;bottom:max(76px,calc(env(safe-area-inset-bottom) + 76px))!important;width:45px!important}
  .ph-floating-contact__item{width:43px!important;height:43px!important;min-width:43px!important;min-height:43px!important;max-width:43px!important;max-height:43px!important}
  .ph-floating-contact__icon,.ph-floating-contact__icon svg,.ph-floating-contact__item--whatsapp .ph-floating-contact__icon svg{width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important;max-width:22px!important;max-height:22px!important}
  .ph-floating-contact__item--phone .ph-floating-contact__icon svg{width:21px!important;height:21px!important;min-width:21px!important;min-height:21px!important;max-width:21px!important;max-height:21px!important}
}
@media(prefers-reduced-motion:reduce){
  .ph-floating-contact__item,.ph-floating-contact__item::before{animation:none!important}
}
@media print{.ph-floating-contact{display:none!important}}
