/* Floating WhatsApp button (all screens) + mobile pilot bar. */
.contact-dock{position:fixed;right:20px;bottom:20px;z-index:55;display:flex;align-items:center;gap:10px;pointer-events:none;transition:opacity .2s ease,transform .2s ease}
.contact-dock>a{pointer-events:auto}
.contact-dock-pilot{display:none}
.contact-dock-wa{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:58px;height:58px;border-radius:50%;background:#25d366;color:#fff;text-decoration:none;box-shadow:0 10px 28px rgba(15,23,42,.24);transition:transform .15s ease,box-shadow .15s ease}
.contact-dock-wa:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(15,23,42,.28);color:#fff}
.contact-dock-wa:focus-visible,.contact-dock-pilot:focus-visible{outline:3px solid #93c5fd;outline-offset:3px}
.contact-dock-wa svg{width:30px;height:30px;flex:none}
.contact-dock-wa span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
body:has(.download-nudge:not([hidden])) .contact-dock{opacity:0;transform:translateY(12px)}
body:has(.download-nudge:not([hidden])) .contact-dock>a{pointer-events:none}
@media (max-width:740px){
  body{padding-bottom:80px}
  .contact-dock{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px))}
  .contact-dock .contact-dock-pilot{opacity:0;transform:translateY(16px);pointer-events:none;transition:opacity .2s ease,transform .2s ease}
  .contact-dock.is-visible .contact-dock-pilot{opacity:1;transform:none;pointer-events:auto}
  .contact-dock-pilot{flex:1;display:flex;align-items:center;justify-content:center;min-height:52px;padding:0 16px;border-radius:14px;background:#2563eb;color:#fff;font-weight:800;font-size:16px;text-decoration:none;box-shadow:0 10px 28px rgba(15,23,42,.24)}
  .contact-dock-pilot:hover{color:#fff}
  .contact-dock-wa{width:52px;height:52px;border-radius:14px}
}
@media (prefers-reduced-motion:reduce){.contact-dock,.contact-dock-wa{transition:none}}
