/* Larger native WhatsApp and email links shared by public pages. */
body .floating-contact-dock{--contact-size:76px;--contact-face:64px;--contact-glyph:46px;position:fixed;z-index:90;right:22px;bottom:26px;display:flex;flex-direction:column;align-items:center;gap:12px;width:var(--contact-size);animation:contact-gentle-float 4s ease-in-out infinite}
body .floating-contact-dock a.whatsapp-float,body .floating-contact-dock a.email-float{position:relative!important;inset:auto!important;right:auto!important;bottom:auto!important;box-sizing:border-box;display:grid!important;place-items:center!important;flex:0 0 var(--contact-size)!important;width:var(--contact-size)!important;min-width:0!important;height:var(--contact-size)!important;min-height:0!important;margin:0!important;padding:6px!important;border:0!important;border-radius:50%!important;box-shadow:0 5px 18px #102b232e;text-decoration:none;animation:none!important;transition:scale .18s ease,box-shadow .18s ease;transform:none!important}
body .floating-contact-dock a.whatsapp-float{background:#28674f!important;color:#159149!important}
body .floating-contact-dock a.email-float{background:#0f6cbd!important;color:#0f6cbd!important}
body .floating-contact-dock .whatsapp-float-label,body .floating-contact-dock .whatsapp-float>b{display:none!important}
body .floating-contact-dock .whatsapp-float-icon,body .floating-contact-dock .email-float-icon{display:grid!important;place-items:center!important;box-sizing:border-box;flex:none!important;flex-basis:auto!important;width:var(--contact-face)!important;height:var(--contact-face)!important;min-height:0!important;padding:0!important;border-radius:50%!important;background:#fff!important;opacity:1!important;transform:none!important}
body .floating-contact-dock .whatsapp-float-icon svg,body .floating-contact-dock .email-float-icon svg{display:block;width:var(--contact-glyph)!important;height:var(--contact-glyph)!important;flex:none!important}
body .floating-contact-dock a:focus-visible{outline:3px solid #b7853d;outline-offset:4px}
body .floating-contact-dock:focus-within,body .floating-contact-dock:hover{animation-play-state:paused}
body .floating-contact-tooltip{position:absolute;right:calc(100% + 12px);top:50%;translate:0 -50%;width:max-content;max-width:calc(100vw - 116px);padding:9px 12px;border-radius:7px;background:#272b26;color:#fff;font:500 12px/1.5 var(--sans,Arial,sans-serif);opacity:0;visibility:hidden;pointer-events:none;box-shadow:0 3px 12px #0002}
body .floating-contact-dock a:focus-visible .floating-contact-tooltip{opacity:1;visibility:visible}
body.navigation-open .floating-contact-dock{visibility:hidden!important;pointer-events:none}
@media(hover:hover){body .floating-contact-dock a:hover{scale:1.08;box-shadow:0 8px 24px #102b2340}body .floating-contact-dock a:hover .floating-contact-tooltip{opacity:1;visibility:visible}}
@keyframes contact-gentle-float{0%,100%{translate:0 0}50%{translate:0 -4px}}
@media(max-width:760px){body .floating-contact-dock{--contact-size:68px;--contact-face:56px;--contact-glyph:42px;right:16px;bottom:calc(84px + env(safe-area-inset-bottom))}body .floating-contact-dock--standalone{bottom:calc(20px + env(safe-area-inset-bottom))}body .ui-project-teaser{max-width:calc(100vw - 116px)}}
@media(max-height:480px) and (orientation:landscape){body .floating-contact-dock{flex-direction:row;width:auto;right:16px;bottom:calc(78px + env(safe-area-inset-bottom));gap:10px;--contact-size:56px;--contact-face:44px;--contact-glyph:34px}body .floating-contact-dock--standalone{bottom:16px}body .ui-project-teaser{display:none!important}}
@media(prefers-reduced-motion:reduce){body .floating-contact-dock{animation:none!important}body .floating-contact-dock a{transition:none!important;scale:1!important}}
@media print{body .floating-contact-dock{display:none!important}}
