/* Floating contact widget: stack on desktop, bottom bar on phones */
.cw{position:fixed;bottom:20px;right:20px;z-index:90;font-family:var(--f)}
.cw-left{right:auto;left:20px}
.cw [hidden]{display:none!important}
.cw button,.cw a{font-family:inherit}
.cw-main{width:58px;height:58px;border-radius:50%;border:0;background:var(--cw-main,#0e7a6c);color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 8px 22px rgba(8,21,61,.3);position:relative;padding:0;transition:transform .2s}
.cw-main:hover{transform:scale(1.06)}
.cw-main .ic{width:26px;height:26px}
.cw-m2{display:none}
.cw.open .cw-m1{display:none}.cw.open .cw-m2{display:grid}
.cw-menu{position:absolute;bottom:72px;right:0;display:flex;flex-direction:column;align-items:flex-end;gap:12px;animation:cwin .2s ease}
.cw-left .cw-menu{right:auto;left:0;align-items:flex-start}
.cw-i{display:flex;align-items:center;gap:10px;background:none;border:0;padding:0;cursor:pointer;color:inherit;text-decoration:none}
.cw-ic{width:48px;height:48px;border-radius:50%;background:var(--c);color:#fff;display:grid;place-items:center;box-shadow:0 6px 16px rgba(8,21,61,.25);flex:none;transition:transform .2s}
.cw-i:hover .cw-ic{transform:scale(1.08)}
.cw-ic .ic{width:24px;height:24px}
.cw-l{order:-1;background:#fff;color:#08153d;font-size:13px;font-weight:700;padding:6px 12px;border-radius:999px;box-shadow:0 4px 12px rgba(8,21,61,.15);white-space:nowrap}
.cw-left .cw-l{order:1}
.cw-x{display:none}
.cw-greet{position:absolute;bottom:72px;right:0;background:#fff;color:#08153d;font-weight:700;font-size:14px;padding:10px 34px 10px 14px;border-radius:14px 14px 4px 14px;box-shadow:0 8px 24px rgba(8,21,61,.22);white-space:nowrap;animation:cwin .3s ease}
.cw-left .cw-greet{right:auto;left:0;border-radius:14px 14px 14px 4px}
.cw-gx{position:absolute;top:2px;right:6px;border:0;background:none;font-size:20px;line-height:1;color:#5b6b7a;cursor:pointer;padding:4px}
.cw-bd{position:fixed;inset:0;background:rgba(8,21,61,.35);z-index:89}
.cw-wc{position:fixed;inset:0;z-index:100;background:rgba(8,21,61,.5);display:grid;place-items:center;padding:18px}
.cw-wc[hidden]{display:none!important}
.cw-wc-b{position:relative;background:#fff;border-radius:18px;padding:22px;width:min(340px,100%);text-align:center;box-shadow:0 20px 50px rgba(8,21,61,.3);color:#08153d}
.cw-wc-x{position:absolute;top:8px;right:12px;border:0;background:none;font-size:26px;cursor:pointer;color:#5b6b7a}
.cw-wc-t{display:flex;justify-content:center;align-items:center;gap:10px;font-weight:700;font-size:18px;margin-bottom:12px}
.cw-wc-t span{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:#fff}
.cw-wc-t .ic{width:20px;height:20px}
.cw-qr{width:200px;height:auto;margin:0 auto 12px;border-radius:10px}
.cw-wc-id small{display:block;color:#5b6b7a}
.cw-wc-id b{display:block;font-size:19px;margin:2px 0 12px;word-break:break-all}
.cw-copy{border:0;color:#fff;font-weight:700;border-radius:999px;padding:10px 24px;cursor:pointer}
.cw-hint{font-size:12px;color:#5b6b7a;margin-top:12px}
@keyframes cwin{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:767px){
 .cw{bottom:16px;right:14px}.cw-left{left:14px}
 .cw.open .cw-main{display:none}
 .cw-menu{position:fixed;left:0;right:0;bottom:0;background:#fff;border-radius:18px 18px 0 0;box-shadow:0 -10px 30px rgba(8,21,61,.2);padding:18px 10px calc(12px + env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(var(--cw-n,4),1fr);gap:10px 6px;align-items:start;justify-items:center;animation:cwup .25s ease}
 .cw-left .cw-menu{left:0;right:0;align-items:start}
 .cw-i{flex-direction:column;gap:6px;text-align:center}
 .cw-l{order:0;background:none;box-shadow:none;padding:0;font-size:12px;white-space:normal}
 .cw-left .cw-l{order:0}
 .cw-x{display:grid;place-items:center;grid-column:1/-1;justify-self:center;width:46px;height:46px;border-radius:50%;border:0;background:#08153d;color:#fff;cursor:pointer;margin-top:6px}
 .cw-x .ic{width:20px;height:20px}
 .cw-greet{bottom:70px}
}
@keyframes cwup{from{transform:translateY(100%)}to{transform:none}}
@media(prefers-reduced-motion:reduce){.cw *{animation:none!important;transition:none!important}}
