/* The contact control sits outside the centered page layout. */
.wechat-float { position:fixed; top:50%; right:24px; transform:translateY(-50%); z-index:1000; }
.wechat-trigger { display:flex; align-items:center; justify-content:center; width:48px; height:48px; padding:0; border:1px solid #e0f2fe; border-radius:12px; background:#fff; color:#0CA5E9; box-shadow:0 3px 16px rgb(15 70 95 / 10%); cursor:pointer; }
.wechat-trigger .bi { display:block; font-size:34px; line-height:1; }
.wechat-trigger:focus-visible { outline:3px solid #0CA5E9; outline-offset:4px; }
.wechat-popover { position:absolute; top:50%; right:calc(100% + 12px); transform:translateY(-50%); width:210px; padding:16px; border:1px solid #d8eaf3; border-radius:12px; background:#fff; box-shadow:0 8px 28px rgb(28 63 86 / 14%); text-align:center; visibility:hidden; opacity:0; pointer-events:none; }
.wechat-popover::after { content:""; position:absolute; top:0; bottom:0; left:100%; width:13px; }
.wechat-popover img { display:block; width:176px; height:176px; max-width:100%; margin:0 auto; }
.wechat-popover p { margin:12px 0 0; color:#374151; font-size:14px; line-height:1.6; white-space:nowrap; }
.wechat-float.is-open .wechat-popover { visibility:visible; opacity:1; pointer-events:auto; }
@media (hover:hover) { .wechat-float:not(.is-enhanced):hover .wechat-popover { visibility:visible; opacity:1; pointer-events:auto; } }
@media (max-width:767px) { .wechat-float { right:12px; } }
