/* INSV unified floating contact rail. */
#c_effect_163-1757646854878,#c_static_1142-1755741278825 .e_button-44,#c_static_1142-1755741278825 .e_button-45{display:none!important}
.home-about-demo-link{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 22px;margin:0 0 18px;border-radius:6px;background:#183883;color:#fff!important;font-size:14px;font-weight:700;line-height:1;text-decoration:none!important;box-shadow:0 10px 24px rgba(24,56,131,.16);transition:background .18s,transform .18s,box-shadow .18s}
.home-about-demo-link:hover{background:#0f2a6a;transform:translateY(-1px);box-shadow:0 12px 28px rgba(24,56,131,.22)}
.insv-floating-contact{position:fixed;right:14px;top:50%;transform:translateY(-50%);z-index:9998;width:142px;display:grid;gap:8px;pointer-events:none;font-family:Microsoft YaHei,Arial,sans-serif;color:#17213a}
.insv-floating-contact__title{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.insv-floating-contact__list{display:grid;gap:8px;pointer-events:auto}
.insv-floating-contact__action{position:relative;display:flex;align-items:center;gap:8px;min-height:40px;padding:6px 10px;border:1px solid #dbe6f5;border-radius:999px;background:#fff;color:#17213a!important;text-decoration:none!important;box-sizing:border-box;box-shadow:0 8px 24px rgba(20,36,68,.12);transition:border-color .18s,background .18s,transform .18s,box-shadow .18s;-webkit-appearance:none;appearance:none;cursor:pointer;text-align:left;font:inherit}
.insv-floating-contact__action:hover,.insv-floating-contact__action:focus-visible{border-color:#9eb8e5;background:#f7fbff;transform:translateX(-2px);box-shadow:0 10px 26px rgba(20,36,68,.18);outline:none}
.insv-floating-contact__action::after{content:attr(data-tip);position:absolute;right:calc(100% + 10px);top:50%;transform:translateY(-50%);max-width:260px;padding:7px 10px;border-radius:6px;background:#17213a;color:#fff;font-size:12px;line-height:1.35;white-space:nowrap;opacity:0;pointer-events:none;box-shadow:0 8px 20px rgba(0,0,0,.18);transition:opacity .16s,right .16s}
.insv-floating-contact__action:hover::after,.insv-floating-contact__action:focus-visible::after{right:calc(100% + 8px);opacity:1}
.insv-floating-contact__icon{display:flex;align-items:center;justify-content:center;flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:#eef5ff;color:#183883;font-size:10px;font-weight:700;line-height:1;text-align:center;letter-spacing:0}
.insv-floating-contact__text{display:flex;min-width:0;flex-direction:column;gap:1px;line-height:1.2}
.insv-floating-contact__label{font-size:12px;font-weight:700;color:#183883;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:0}
.insv-floating-contact__value{display:none;font-size:11px;color:#53627a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:0}
.insv-floating-contact__action--primary{background:#183883;color:#fff!important;border-color:#183883}
.insv-floating-contact__action--primary:hover,.insv-floating-contact__action--primary:focus-visible{background:#0f2a6a;border-color:#0f2a6a}
.insv-floating-contact__action--primary .insv-floating-contact__icon{background:rgba(255,255,255,.18);color:#fff}
.insv-floating-contact__action--primary .insv-floating-contact__label,.insv-floating-contact__action--primary .insv-floating-contact__value{color:#fff}
.insv-floating-contact__qr{position:absolute;right:calc(100% + 12px);top:132px;width:168px;padding:14px 14px 12px;border:1px solid #dbe6f5;border-radius:8px;background:#fff;box-shadow:0 16px 40px rgba(20,36,68,.18);pointer-events:auto;text-align:center;color:#17213a}
.insv-floating-contact__qr[hidden]{display:none!important}.insv-floating-contact__qr img{display:block;width:120px;height:120px;margin:2px auto 8px;object-fit:contain}.insv-floating-contact__qr p{margin:0;font-size:13px;font-weight:700;color:#183883;line-height:1.35}
.insv-floating-contact__qr-close{position:absolute;right:7px;top:6px;width:24px;height:24px;border:0;background:transparent;color:#6b7890;font-size:18px;line-height:1;cursor:pointer}.insv-floating-contact__qr-close:hover{color:#183883}
.insv-floating-contact__top{display:flex;align-items:center;justify-content:center;justify-self:center;width:38px;height:38px;border:1px solid #c7d8f0;border-radius:999px;background:#fff;color:#183883;font-size:0;font-weight:800;box-shadow:0 8px 22px rgba(20,36,68,.12);cursor:pointer;pointer-events:auto;transition:background .18s,border-color .18s,transform .18s}.insv-floating-contact__top::before{content:"\2191";font-size:22px;line-height:1}.insv-floating-contact__top:hover{border-color:#183883;background:#f4f8ff;transform:translateY(-1px)}

@media (min-width:769px) and (max-width:1540px){body.insv-news-single .insv-floating-contact{width:52px;right:10px}body.insv-news-single .insv-floating-contact__action{width:44px;height:44px;min-height:44px;padding:0;justify-content:center}body.insv-news-single .insv-floating-contact__text{display:none}body.insv-news-single .insv-floating-contact__action::after{white-space:normal;width:max-content;max-width:220px}body.insv-news-single .insv-floating-contact__qr{top:58px}}
@media (min-width:1181px){.insv-floating-contact__action:hover .insv-floating-contact__value{display:block}.insv-floating-contact__action:hover{min-height:48px}}
@media (max-width:1180px){.insv-floating-contact{width:52px;right:10px}.insv-floating-contact__action{width:44px;height:44px;min-height:44px;padding:0;justify-content:center}.insv-floating-contact__text{display:none}.insv-floating-contact__action::after{white-space:normal;width:max-content;max-width:220px}.insv-floating-contact__qr{top:58px}}
@media (max-width:768px){body{padding-bottom:64px}.insv-floating-contact{left:8px;right:8px;top:auto;bottom:8px;transform:none;width:auto;display:block}.insv-floating-contact__list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;padding:6px;border:1px solid #dbe6f5;border-radius:8px;background:rgba(255,255,255,.96);box-shadow:0 10px 28px rgba(20,36,68,.16);backdrop-filter:saturate(140%) blur(8px)}.insv-floating-contact__action{width:auto;height:46px;min-height:46px;padding:0;justify-content:center;border-radius:6px;box-shadow:none}.insv-floating-contact__icon{width:30px;height:30px;flex-basis:30px}.insv-floating-contact__text,.insv-floating-contact__action::after,.insv-floating-contact__top,.insv-floating-contact__action--office{display:none!important}.insv-floating-contact__qr{left:50%;right:auto;top:auto;bottom:66px;transform:translateX(-50%);width:164px}.insv-floating-contact--en .insv-floating-contact__list{grid-template-columns:repeat(5,minmax(0,1fr))}.insv-floating-contact--en .insv-floating-contact__action--office{display:flex!important}}

/* Stabilize desktop floating contact cards: long phone/email values live in the tooltip, not inside the rail. */
@media (min-width:1181px){
  .insv-floating-contact{right:18px;width:150px}
  .insv-floating-contact__action{width:100%;height:40px;min-height:40px;padding:6px 10px;overflow:visible}
  .insv-floating-contact__action:hover,.insv-floating-contact__action:focus-visible{min-height:40px;transform:translateX(-2px)}
  .insv-floating-contact__text{flex:1 1 auto;max-width:calc(100% - 36px);min-width:0}
  .insv-floating-contact__label{display:block;width:100%;line-height:1.2}
  .insv-floating-contact__value,.insv-floating-contact__action:hover .insv-floating-contact__value,.insv-floating-contact__action:focus-visible .insv-floating-contact__value{display:none!important}
  .insv-floating-contact__action::after{max-width:280px}
}
@media (min-width:769px) and (max-width:1540px){
  body.insv-news-single .insv-floating-contact{width:52px;right:10px}
  body.insv-news-single .insv-floating-contact__action,body.insv-news-single .insv-floating-contact__action:hover,body.insv-news-single .insv-floating-contact__action:focus-visible{width:44px;height:44px;min-height:44px;padding:0;transform:none}
}

/* Medium desktop: keep the contact entry visible without covering archive/card content. */
@media (min-width:769px) and (max-width:1540px){
  .insv-floating-contact{width:52px;right:10px}
  .insv-floating-contact__action,.insv-floating-contact__action:hover,.insv-floating-contact__action:focus-visible{width:44px;height:44px;min-height:44px;padding:0;justify-content:center;transform:none}
  .insv-floating-contact__text{display:none!important}
  .insv-floating-contact__action::after{white-space:normal;width:max-content;max-width:220px}
  .insv-floating-contact__qr{top:58px}
}

/* CN large desktop: labels are self-explanatory, so remove decorative icon pills. */
@media (min-width:1541px){
  .insv-floating-contact--cn{width:136px;gap:10px}
  .insv-floating-contact--cn .insv-floating-contact__list{gap:9px}
  .insv-floating-contact--cn .insv-floating-contact__action{justify-content:center;min-height:42px;padding:7px 15px;border-color:#cfdcf0;background:rgba(255,255,255,.97);text-align:center;box-shadow:0 9px 24px rgba(20,36,68,.11)}
  .insv-floating-contact--cn .insv-floating-contact__action:hover,.insv-floating-contact--cn .insv-floating-contact__action:focus-visible{border-color:#9eb8e5;background:#f4f8ff}
  .insv-floating-contact--cn .insv-floating-contact__icon{display:none!important}
  .insv-floating-contact--cn .insv-floating-contact__text{max-width:100%;align-items:center;text-align:center}
  .insv-floating-contact--cn .insv-floating-contact__label{width:auto;max-width:100%;color:#163a83;font-size:13px;font-weight:800;line-height:1.2}
  .insv-floating-contact--cn .insv-floating-contact__action--primary{background:#183883;border-color:#183883;box-shadow:0 13px 30px rgba(24,56,131,.22)}
  .insv-floating-contact--cn .insv-floating-contact__action--primary:hover,.insv-floating-contact--cn .insv-floating-contact__action--primary:focus-visible{background:#0f2a6a;border-color:#0f2a6a}
  .insv-floating-contact--cn .insv-floating-contact__action--primary .insv-floating-contact__label{color:#fff}
}

/* Persistent detail card for contact values that must be copied or read carefully. */
.insv-floating-contact__detail{position:absolute;right:calc(100% + 12px);top:0;width:320px;padding:15px 16px 14px;border:1px solid #dbe6f5;border-radius:8px;background:#fff;box-shadow:0 18px 44px rgba(20,36,68,.18);pointer-events:auto;color:#17213a;text-align:left}
.insv-floating-contact__detail[hidden]{display:none!important}
.insv-floating-contact__detail-close{position:absolute;right:8px;top:7px;width:26px;height:26px;border:0;background:transparent;color:#6b7890;font-size:20px;line-height:1;cursor:pointer}.insv-floating-contact__detail-close:hover{color:#183883}
.insv-floating-contact__detail-title{margin:0 28px 12px 0;color:#183883;font-size:15px;font-weight:800;line-height:1.3}
.insv-floating-contact__detail-values{display:grid;gap:8px}
.insv-floating-contact__detail-row{display:grid;grid-template-columns:minmax(0,1fr) 58px;align-items:center;gap:8px}
.insv-floating-contact__detail-value{display:block;min-height:36px;padding:8px 10px;border:1px solid #e5edf8;border-radius:6px;background:#f8fbff;color:#17213a!important;font-size:15px;font-weight:800;line-height:1.25;text-decoration:none!important;word-break:break-all;letter-spacing:0}
.insv-floating-contact__detail-value:hover{border-color:#bdd4f5;background:#f2f8ff;color:#183883!important}
.insv-floating-contact__copy{height:36px;border:0;border-radius:6px;background:#183883;color:#fff;font-size:13px;font-weight:800;cursor:pointer}.insv-floating-contact__copy:hover{background:#0f2a6a}
.insv-floating-contact__detail-status{min-height:18px;margin:9px 0 0;color:#49617e;font-size:12px;line-height:1.5}
.insv-floating-contact__detail-qr{display:grid;justify-items:center;gap:7px;margin:0 0 10px;padding:10px;border:1px solid #e5edf8;border-radius:8px;background:#f8fbff}
.insv-floating-contact__detail-qr img{display:block;width:132px;height:132px;object-fit:contain}
.insv-floating-contact__detail-qr span{color:#53627a;font-size:12px;font-weight:800;line-height:1.35}
.insv-floating-contact__detail-open{display:flex;align-items:center;justify-content:center;min-height:38px;margin:0 0 8px;border-radius:6px;background:#1f8f4d;color:#fff!important;font-size:14px;font-weight:800;line-height:1;text-decoration:none!important}
.insv-floating-contact__detail-open:hover{background:#16713d;color:#fff!important}

.insv-floating-contact__detail-email-primary{display:flex;align-items:center;justify-content:center;min-height:40px;border-radius:7px;background:#183883;color:#fff!important;font-size:14px;font-weight:800;line-height:1;text-decoration:none!important;box-shadow:0 10px 24px rgba(24,56,131,.18)}
.insv-floating-contact__detail-email-primary:hover{background:#0f2a6a;color:#fff!important}
.insv-floating-contact__detail-row--email{grid-template-columns:minmax(0,1fr) auto;align-items:center;margin-top:2px;padding-top:8px;border-top:1px solid #eef3fa}
.insv-floating-contact__detail-value--email{min-height:0;padding:0;border:0;background:transparent;color:#49617e!important;font-size:13px!important;font-weight:700;line-height:1.35}
.insv-floating-contact__detail-value--email:hover{background:transparent;border-color:transparent;color:#183883!important}
.insv-floating-contact__copy--quiet{height:30px;padding:0 10px;border:1px solid #d7e4f5;background:#fff;color:#183883;font-size:12px;box-shadow:none}
.insv-floating-contact__copy--quiet:hover{background:#f4f8ff;color:#0f2a6a}
@media (max-width:1540px){.insv-floating-contact__detail{top:0;width:300px}.insv-floating-contact__detail-value{font-size:14px}}
@media (max-width:768px){.insv-floating-contact__detail{display:none!important}}
@media (min-width:1181px){.insv-floating-contact__action::after{font-size:13px;padding:8px 11px}}

/* Large visual areas need contact access without covering the hero artwork. */
@media (min-width:769px){
  .insv-floating-contact--visual-compact:not(:hover):not(:focus-within){width:112px;gap:7px}
  .insv-floating-contact--visual-compact:not(:hover):not(:focus-within) .insv-floating-contact__list{gap:7px}
  .insv-floating-contact--visual-compact:not(.insv-floating-contact--en):not(:hover):not(:focus-within) .insv-floating-contact__action:not(.insv-floating-contact__action--sales):not(.insv-floating-contact__action--whatsapp):not(.insv-floating-contact__action--primary){display:none!important}
  .insv-floating-contact--visual-compact:not(:hover):not(:focus-within) .insv-floating-contact__action,
  .insv-floating-contact--visual-compact:not(:hover):not(:focus-within) .insv-floating-contact__action:hover,
  .insv-floating-contact--visual-compact:not(:hover):not(:focus-within) .insv-floating-contact__action:focus-visible{width:112px;min-height:40px;height:40px;padding:6px 12px;transform:none}
  .insv-floating-contact--visual-compact:not(:hover):not(:focus-within) .insv-floating-contact__top{display:none!important}
  .insv-floating-contact--visual-compact:not(:hover):not(:focus-within) .insv-floating-contact__label{font-size:12px}
  .insv-floating-contact--visual-compact:not(:hover):not(:focus-within) .insv-floating-contact__icon{display:none!important}
  .insv-floating-contact--visual-compact:not(:hover):not(:focus-within) .insv-floating-contact__text{display:flex!important;max-width:100%;align-items:center;text-align:center}
  .insv-floating-contact--visual-compact:not(:hover):not(:focus-within) .insv-floating-contact__action::after{display:none}
}

/* EN visual-compact rail: keep only the two highest-intent entries collapsed. */
@media (min-width:769px){
  .insv-floating-contact--en.insv-floating-contact--visual-compact:not(:hover):not(:focus-within){width:112px;gap:7px}
  .insv-floating-contact--en.insv-floating-contact--visual-compact:not(:hover):not(:focus-within) .insv-floating-contact__list{gap:7px}
  .insv-floating-contact--en.insv-floating-contact--visual-compact:not(:hover):not(:focus-within) .insv-floating-contact__action:not(.insv-floating-contact__action--email):not(.insv-floating-contact__action--primary){display:none!important}
  .insv-floating-contact--en.insv-floating-contact--visual-compact:not(:hover):not(:focus-within) .insv-floating-contact__action--email,
  .insv-floating-contact--en.insv-floating-contact--visual-compact:not(:hover):not(:focus-within) .insv-floating-contact__action--primary{display:flex!important}
  .insv-floating-contact--en.insv-floating-contact--visual-compact:not(:hover):not(:focus-within) .insv-floating-contact__action,
  .insv-floating-contact--en.insv-floating-contact--visual-compact:not(:hover):not(:focus-within) .insv-floating-contact__action:hover,
  .insv-floating-contact--en.insv-floating-contact--visual-compact:not(:hover):not(:focus-within) .insv-floating-contact__action:focus-visible{width:112px;min-height:40px;height:40px;padding:6px 12px;transform:none}
  .insv-floating-contact--en.insv-floating-contact--visual-compact:not(:hover):not(:focus-within) .insv-floating-contact__top{display:none!important}
  .insv-floating-contact--en.insv-floating-contact--visual-compact:not(:hover):not(:focus-within) .insv-floating-contact__icon{display:none!important}
  .insv-floating-contact--en.insv-floating-contact--visual-compact:not(:hover):not(:focus-within) .insv-floating-contact__text{display:flex!important;max-width:100%;align-items:center;text-align:center}
  .insv-floating-contact--en.insv-floating-contact--visual-compact:not(:hover):not(:focus-within) .insv-floating-contact__label{font-size:12px}
  .insv-floating-contact--en.insv-floating-contact--visual-compact:not(:hover):not(:focus-within) .insv-floating-contact__action::after{display:none}
}

/* Replace the browser's black click outline on floating-contact controls with a softer brand focus state. */
.insv-floating-contact__action:focus,
.insv-floating-contact__top:focus,
.insv-floating-contact__detail-close:focus,
.insv-floating-contact__qr-close:focus,
.insv-floating-contact__copy:focus,
.insv-floating-contact__detail-value:focus,
.insv-floating-contact__detail-open:focus{outline:none!important}
.insv-floating-contact__action:focus-visible{outline:none!important;border-color:#9eb8e5!important;box-shadow:0 0 0 3px rgba(24,56,131,.18),0 10px 26px rgba(20,36,68,.16)!important}
.insv-floating-contact__top:focus-visible{outline:none!important;border-color:#9eb8e5!important;background:#f4f8ff!important;box-shadow:0 0 0 3px rgba(24,56,131,.18),0 8px 22px rgba(20,36,68,.12)!important}
.insv-floating-contact__detail-close:focus-visible,
.insv-floating-contact__qr-close:focus-visible,
.insv-floating-contact__copy:focus-visible,
.insv-floating-contact__detail-value:focus-visible,
.insv-floating-contact__detail-open:focus-visible{outline:none!important;box-shadow:0 0 0 3px rgba(24,56,131,.18)!important}

