.contact-companion{position:fixed;right:max(24px,env(safe-area-inset-right));bottom:calc(24px + env(safe-area-inset-bottom));z-index:90;display:flex;flex-direction:column;align-items:center;width:124px;text-decoration:none;isolation:isolate;opacity:0}
.contact-companion[hidden]{display:none}
.contact-companion.is-visible{opacity:1;animation:companion-reveal 1.35s ease-in-out both}
@keyframes companion-reveal{from{opacity:0}to{opacity:1}}
.companion-portrait{position:relative;width:104px;height:112px}
.contact-companion img{width:104px;height:112px;object-fit:contain;display:block}
.companion-whatsapp{position:absolute;right:-5px;bottom:3px;width:31px;height:31px;display:grid;place-items:center;background:transparent;color:#222;border:0}
.companion-whatsapp svg{width:31px;height:31px;display:block;filter:drop-shadow(0 0 1px white)}
.contact-companion .companion-label{font:500 13px/1.25 Montserrat,Arial,sans-serif;letter-spacing:.02em;color:#292a28;background:transparent;padding:5px 10px;margin-top:4px;white-space:nowrap}
.contact-companion:focus-visible{outline:2px solid #400a18;outline-offset:4px}
body:not(.portal-entered) .contact-companion,body:has(header.menu-open) .contact-companion{visibility:hidden;pointer-events:none}
@media(max-width:700px){.contact-companion{right:14px;bottom:calc(16px + env(safe-area-inset-bottom));width:106px}.companion-portrait,.contact-companion img{width:88px;height:96px}.companion-whatsapp{width:29px;height:29px}.contact-companion .companion-label{font-size:12px}}
@media(prefers-reduced-motion:reduce){.contact-companion.is-visible{animation:none}}
