/* ============================================================
 * INSVISION  theme-extra.css  (consolidated)
 * ------------------------------------------------------------
 * Single source of truth for theme-level tweaks that cannot
 * live in the Dongli per-page minified CSS (which gets
 * regenerated on every edit). Organised by component, no
 * patch stacking: each component appears exactly once.
 * ============================================================ */


/* ============================================================
 * 1. HOMEPAGE
 * ============================================================ */

/* Stats block visibility override.
   home.min.css sets .e_loop-38{visibility:hidden;opacity:0} expecting a scroll
   trigger that is not wired up in this theme. Force visible so numbers render. */
#c_static_1142-1755741278825 .e_loop-38 {
    visibility: visible !important;
    opacity: 1 !important;
}

/* Homepage hero nav contrast.
   The generated header uses white nav text + white logo before scroll, which
   relies on every hero frame being dark enough. Make the home default state
   use the same readable contrast system as the scrolled header. */
body.home #c_navigation_126_P_1582-17606661880800{
    background:rgba(255,255,255,.82) !important;
    border-bottom-color:rgba(210,220,233,.85) !important;
    box-shadow:0 10px 30px rgba(18,39,78,.08) !important;
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
}
body.home #c_navigation_126_P_1582-17606661880800 .e_navigationA-35 .p_level1Item a{
    color:#263445 !important;
    text-shadow:none !important;
}
body.home #c_navigation_126_P_1582-17606661880800 .e_navigationA-35 .p_level1Item:hover .p_menu1Item a,
body.home #c_navigation_126_P_1582-17606661880800 .e_navigationA-35 .p_level1Item.cur .p_menu1Item a{
    color:#0057a0 !important;
}
body.home #c_navigation_126_P_1582-17606661880800 .e_image-16 img:first-child{
    display:none !important;
}
body.home #c_navigation_126_P_1582-17606661880800 .e_image-16 img:nth-child(2){
    display:block !important;
}

/* Homepage CTA buttons: nowrap */
.e_button-5.s_button3,
.e_button-41.s_button3{
    white-space:nowrap !important;width:auto !important;min-width:0 !important;max-width:none !important;
    padding-left:28px !important;padding-right:28px !important;
    display:inline-flex !important;align-items:center !important;justify-content:center !important;
    line-height:1.4 !important;
}
.e_button-5.s_button3 > span,
.e_button-41.s_button3 > span{white-space:nowrap !important;display:inline-block !important;width:auto !important}

/* Homepage industry media stage.
   home.min.css mixes percentage widths, 50/50 flex overrides and height:100%
   media sizing. Normalize the desktop block into a stable two-column component
   so poster and video share one intentional stage. */
#c_effect_148-1755743551529.insv-home-industry--desktop{
    --insv-industry-gap:clamp(28px,3vw,40px);
    --insv-industry-radius:20px;
    --insv-industry-stage-border:#e7edf5;
    --insv-industry-stage-bg:linear-gradient(180deg,#ffffff 0%,#f6f9fc 100%);
}
#c_effect_148-1755743551529.insv-home-industry--desktop .insv-home-industry__grid{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    gap:var(--insv-industry-gap) !important;
    align-items:stretch !important;
}
#c_effect_148-1755743551529.insv-home-industry--desktop .insv-home-industry__list-col,
#c_effect_148-1755743551529.insv-home-industry--desktop .insv-home-industry__media-col{
    min-width:0;
    width:auto !important;
    max-width:none !important;
}
#c_effect_148-1755743551529.insv-home-industry--desktop .insv-home-industry__media-col{
    align-self:stretch !important;
}
#c_effect_148-1755743551529.insv-home-industry--desktop .insv-home-industry__media-shell,
#c_effect_148-1755743551529.insv-home-industry--desktop .insv-home-industry__media-cell{
    width:auto !important;
    height:100% !important;
    display:flex !important;
    align-items:stretch !important;
    justify-content:flex-end;
    max-width:none !important;
}
#c_effect_148-1755743551529.insv-home-industry--desktop .insv-video-stage{
    width:auto !important;
    height:100% !important;
    position:relative;
    display:block !important;
    border-radius:var(--insv-industry-radius);
    max-width:none !important;
}
#c_effect_148-1755743551529.insv-home-industry--desktop .insv-video-stage__frame{
    position:relative !important;
    width:auto !important;
    height:100% !important;
    aspect-ratio:16 / 9 !important;
    padding:0 !important;
    overflow:hidden !important;
    border-radius:var(--insv-industry-radius) !important;
    background:var(--insv-industry-stage-bg);
    border:1px solid var(--insv-industry-stage-border);
    box-shadow:0 18px 48px rgba(17,42,88,.08);
}
#c_effect_148-1755743551529.insv-home-industry--desktop .insv-video-stage__cover{
    position:absolute !important;
    inset:0 !important;
    z-index:2 !important;
    display:block;
    background:var(--insv-industry-stage-bg);
}
#c_effect_148-1755743551529.insv-home-industry--desktop .insv-video-stage__poster,
#c_effect_148-1755743551529.insv-home-industry--desktop .insv-video-stage__poster-image,
#c_effect_148-1755743551529.insv-home-industry--desktop .insv-video-stage__video{
    width:100% !important;
    height:100% !important;
    display:block !important;
}
#c_effect_148-1755743551529.insv-home-industry--desktop .insv-video-stage__poster{
    position:absolute !important;
    inset:0 !important;
}
#c_effect_148-1755743551529.insv-home-industry--desktop .insv-video-stage__poster-image,
#c_effect_148-1755743551529.insv-home-industry--desktop .insv-video-stage__video{
    object-fit:cover !important;
    border-radius:inherit !important;
}
#c_effect_148-1755743551529.insv-home-industry--desktop .insv-video-stage__video{
    position:absolute !important;
    inset:0 !important;
    z-index:1 !important;
    background:transparent !important;
}
#c_effect_148-1755743551529.insv-home-industry--desktop .insv-video-stage__cover .playBtn{
    position:absolute;
    left:50%;
    top:50%;
    margin:0 !important;
    transform:translate(-50%,-50%);
    width:clamp(56px,5vw,80px) !important;
    height:clamp(56px,5vw,80px) !important;
    z-index:3 !important;
}
@media (max-width:1180px) and (min-width:769px){
    #c_effect_148-1755743551529.insv-home-industry--desktop{ --insv-industry-gap:32px; }
}

/* Insights CTA wrapper */
/* moved to section 5 */
/* moved to section 5 */


/* ============================================================
 * 2. PRODUCTS GRID  (flat 5-card layout)
 * ============================================================ */
.insv-products-grid__inner {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 28px !important;
    max-width: 1320px !important;
    margin: 0 auto !important;
    padding: 0 24px !important;
    box-sizing: border-box !important;
}
.insv-products-grid__inner .insv-product-card {
    flex: 0 0 380px !important;
    width: 380px !important;
    max-width: 380px !important;
}
@media (max-width: 1023px) {
    .insv-products-grid__inner .insv-product-card {
        flex: 0 0 calc(50% - 14px) !important;
        width: calc(50% - 14px) !important;
        max-width: calc(50% - 14px) !important;
    }
}
@media (max-width: 640px) {
    .insv-products-grid__inner { gap: 18px !important; padding: 0 16px !important; }
    .insv-products-grid__inner .insv-product-card {
        flex: 1 1 100% !important; width: 100% !important; max-width: 100% !important;
    }
}
.insv-product-card { display:flex !important; flex-direction:column !important; height:100% !important; }
.insv-product-card__body { display:flex !important; flex-direction:column !important; flex:1 1 auto !important; }
.insv-product-card__title {
    min-height: 2.8em !important;
    display: -webkit-box !important; -webkit-line-clamp: 2 !important; -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}
.insv-product-card__desc {
    min-height: 4.5em !important;
    display: -webkit-box !important; -webkit-line-clamp: 3 !important; -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}
.insv-product-card__actions { margin-top: auto !important; }


/* ============================================================
 * 3. APPLICATION CASES GRID
 * ============================================================ */
.insv-cases-grid { max-width:1320px; margin:64px auto 56px; padding:0 24px; }
.insv-cases-grid__header { text-align:center; margin-bottom:32px; }
.insv-cases-grid__title { font-size:28px; font-weight:700; color:#183883; margin:0; letter-spacing:0.02em; }
.insv-cases-grid__inner { display:flex; flex-wrap:wrap; gap:22px; justify-content:center; }
.insv-cases-grid__inner .insv-case-card {
    width: calc((100% - 66px) / 4);
    min-width: 260px; max-width: 320px;
    background: #fff; border-radius: 8px;
    box-shadow: 0 2px 14px rgba(24, 56, 131, 0.06);
    overflow: hidden;
    display: flex; flex-direction: column;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.insv-cases-grid__inner .insv-case-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 6px 22px rgba(24, 56, 131, 0.12);
}
.insv-case-card__media { display:block; aspect-ratio: 16 / 10; overflow:hidden; background:#f3f4f8; }
.insv-case-card__media img { width:100%; height:100%; object-fit:cover; display:block; }
.insv-case-card__placeholder {
    display:flex; align-items:center; justify-content:center;
    width:100%; height:100%;
    background: linear-gradient(135deg, #1a3a8a 0%, #2b5fc8 55%, #4d86e8 100%);
    color: rgba(255,255,255,0.92);
    font-size: 18px; font-weight: 700;
    letter-spacing: 0.16em; text-transform: uppercase;
}
.insv-case-card__body { padding:16px 18px 20px; display:flex; flex-direction:column; gap:8px; flex:1; }
.insv-case-card__date { color:#6b7280; font-size:13px; }
.insv-case-card__title {
    font-size:15px; font-weight:600; line-height:1.45;
    margin:0; min-height:2.9em;
    display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}
.insv-case-card__title a { color:#1f2937; text-decoration:none; }
.insv-case-card__title a:hover { color:#183883; }
.insv-case-card__excerpt {
    color:#6b7280; font-size:13px; line-height:1.55;
    margin:0; min-height:4.65em;
    display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden;
}
.insv-cases-grid__more { text-align:center; margin-top:36px; }
.insv-cases-grid__more-link {
    display:inline-block; padding:11px 32px;
    background:#183883; color:#fff;
    border:1px solid #183883; border-radius:4px;
    font-size:14px; font-weight:500; text-decoration:none;
    transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}
.insv-cases-grid__more-link:hover {
    background:#0f2a6a; border-color:#0f2a6a; color:#fff;
    transform:translateY(-1px);
}
@media (max-width: 1023px) {
    .insv-cases-grid__inner .insv-case-card { width: calc((100% - 22px) / 2); max-width:none; }
}
@media (max-width: 640px) {
    .insv-cases-grid { margin: 48px auto 40px; padding: 0 16px; }
    .insv-cases-grid__inner .insv-case-card { width: 100%; min-width: 0; max-width: none; }
}


/* ============================================================
 * 4. SEO HELPERS
 * ============================================================ */
.insv-visually-hidden-h1 {
    position: absolute !important;
    width: 1px !important; height: 1px !important;
    padding: 0 !important; margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important; border: 0 !important;
}


/* ============================================================
 * 5. UNIFIED "MORE" CTA + view-all-news CTA (blue filled)
 * ============================================================ */
/* ============================================================
 * 5. HOMEPAGE CTA BUTTONS  (unified, class-only selectors)
 *    Applies identical skin to both News+Insights buttons across
 *    home/products/any-page, regardless of container id.
 * ============================================================ */
.home-news-top-all,
.home-insights-more{
    text-align:center !important;
    margin-top:36px !important;
    padding-right:0 !important;
    width:100% !important;
}
.home-news-top-all__link,
.home-insights-more__link,
.insv-cases-more-link,
.insv-insights-more-link{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:11px 32px !important;
    min-width:160px !important;
    background:#183883 !important;
    color:#fff !important;
    border:1px solid #183883 !important;
    border-radius:4px !important;
    font-size:14px !important;
    font-weight:500 !important;
    line-height:1.4 !important;
    letter-spacing:0 !important;
    text-decoration:none !important;
    white-space:nowrap !important;
    transition:all .2s ease !important;
    box-shadow:none !important;
}
.home-news-top-all__link:hover,
.home-insights-more__link:hover,
.insv-cases-more-link:hover,
.insv-insights-more-link:hover{
    background:#0f2a6a !important;
    border-color:#0f2a6a !important;
    color:#fff !important;
    opacity:1 !important;
    letter-spacing:0 !important;
    transform:translateY(-1px) !important;
    text-decoration:none !important;
}
.home-news-top-all__link span,
.home-insights-more__link span{
    color:inherit !important;
    background:transparent !important;
    padding:0 !important;
}
@media(max-width:768px){
    .home-news-top-all,
    .home-insights-more{
        text-align:center !important;
        padding-right:0 !important;
    }
    .home-news-top-all__link,
    .home-insights-more__link{
        padding:10px 24px !important;
        font-size:13px !important;
    }
}


/* ============================================================
 * 6. FOOTER NAV COLUMNS  (always expanded)
 * ============================================================ */
.e_bottomNav-11 .p_level2Box{
    display:block !important; visibility:visible !important; opacity:1 !important;
    height:auto !important; max-height:none !important; overflow:visible !important;
    position:static !important; transform:none !important; pointer-events:auto !important;
    width:auto !important; padding:0 !important; margin:8px 0 0 0 !important;
    background:transparent !important; box-shadow:none !important;
}
.e_bottomNav-11 .p_level2Item{display:block !important;opacity:1 !important;visibility:visible !important;padding:4px 0 !important}
.e_bottomNav-11 .p_level1Item .p_jtIcon,
.e_bottomNav-11 .p_menu1Item svg{display:none !important}
.e_bottomNav-11 .p_level1Item:hover .p_level2Box,
.e_bottomNav-11 .p_level1Item:not(:hover) .p_level2Box{display:block !important}


/* ============================================================
 * 7. EN NEWS-CARD INSVISION PLACEHOLDER
 * ============================================================ */
.news-card__cover{position:relative;display:block;overflow:hidden;background:linear-gradient(135deg,#1a3a8a 0%,#2b5fc8 55%,#4d86e8 100%)}
.news-card__cover img{display:block;width:100%;height:100%;object-fit:cover}
.news-card__placeholder{position:absolute !important;inset:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a3a8a 0%,#2b5fc8 55%,#4d86e8 100%);font-size:0 !important;text-indent:0}
.news-card__placeholder::before{content:"INSVISION";font-family:"Microsoft YaHei","Segoe UI",Arial,sans-serif;font-weight:700;font-size:clamp(22px,3.2vw,34px);letter-spacing:4px;color:rgba(255,255,255,.92);text-shadow:0 2px 10px rgba(0,0,0,.18);text-transform:uppercase}


/* ============================================================
 * 8. FLOATING RIGHT-SIDE SIDEBAR (contact widget)
 * ============================================================ */
.sidebar{position:fixed !important;right:16px !important;top:50%!important;transform:translateY(-50%)!important;z-index:9998!important}
.sidebar .barbox{display:flex;flex-direction:column;gap:14px;align-items:flex-end}
.sidebar .barbox > .relation{position:relative;width:60px;height:60px;background:linear-gradient(135deg,#1a3a8a 0%,#2b5fc8 60%,#4d86e8 100%);border-radius:50%;box-shadow:0 10px 28px rgba(24,56,131,.28),0 2px 6px rgba(24,56,131,.18);cursor:pointer;transition:transform .18s,box-shadow .18s;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;font-size:11px;line-height:1.2;text-align:center;overflow:visible;padding:10px 2px}
.sidebar .barbox > .relation:hover{transform:translateY(-2px) scale(1.04);box-shadow:0 14px 32px rgba(24,56,131,.38),0 3px 8px rgba(24,56,131,.22)}
.sidebar .barbox > .relation > i{display:block !important;width:22px;height:22px;margin:0 auto 2px;background:none !important}
.sidebar .barbox > .relation > i::before{content:"";display:block;width:22px;height:22px;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'><path d='M20 15.5c-1.25 0-2.45-.2-3.57-.57-.35-.11-.74-.03-1.02.24l-2.2 2.2a15.045 15.045 0 0 1-6.59-6.58l2.2-2.21c.28-.27.36-.66.25-1.02A11.36 11.36 0 0 1 8.5 4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1 0 9.39 7.61 17 17 17 .55 0 1-.45 1-1v-3.5c0-.55-.45-1-1-1z'/></svg>") center/22px 22px no-repeat}
.sidebar .barbox > .relation > p{margin:0;color:#fff;font-size:11px;line-height:1.15;letter-spacing:.3px}
.sidebar .posbox{position:absolute !important;right:72px !important;top:50%!important;transform:translateY(-50%)!important;width:auto !important;min-width:240px;overflow:visible !important;pointer-events:none;opacity:0;transition:opacity .15s}
.sidebar:hover .posbox{pointer-events:auto;opacity:1}
.sidebar .pre_sales{background:#fff;border-radius:12px;padding:18px 20px;box-shadow:0 12px 36px rgba(0,0,0,.16),0 2px 8px rgba(0,0,0,.08);border:1px solid rgba(0,0,0,.04);min-width:240px}
.sidebar .pre_sales .consult{display:flex;align-items:center;gap:8px;font-weight:600;color:#183883;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid #eaeef4;font-size:15px}
.sidebar .pre_sales .consult i img{width:18px;height:18px;display:block}
.sidebar .pre_sales .pre_phone{font-size:14px;color:#2a3250;line-height:1.9;margin-bottom:10px}
.sidebar .pre_sales .pre_phone p{margin:0}
.sidebar .pre_sales .link_up{display:flex;align-items:center;gap:8px;font-size:13px;color:#666;margin:10px 0 12px}
.sidebar .pre_sales .link_up a{display:inline-block;padding:6px 14px;background:#183883;color:#fff !important;border-radius:4px;text-decoration:none;font-weight:500;transition:background .2s}
.sidebar .pre_sales .link_up a:hover{background:#0f2a6a}
.sidebar .pre_sales .codes{text-align:center;padding-top:12px;border-top:1px solid #eaeef4}
.sidebar .pre_sales .codes .code_img{display:inline-block;width:96px;height:96px;background:#fff;padding:4px;border:1px solid #eaeef4;border-radius:6px;margin-bottom:4px}
.sidebar .pre_sales .codes .code_img img{width:100%;height:100%;display:block;object-fit:contain}
.sidebar .pre_sales .codes > p{font-size:12px;color:#8a96aa;margin:0}


/* ============================================================
 * 9. SECTION TITLES + UNIFORM TILES  (home, about, products)
 * ============================================================ */
#c_static_634_P_114-1755788510940 > .e_container > .p_item > p:first-of-type,
#c_static_634_P_114-1755788510940 .cbox-1-0 > p:first-of-type,
#c_static_001-1760664882631 > .e_container > .p_item > p:first-of-type,
#c_static_001-1760664882631 .cbox-1-0 > p:first-of-type,
#c_static_001-1755790172759 > .e_container > .p_item > p:first-of-type,
#c_static_001-1755790172759 .cbox-1-0 > p:first-of-type,
#c_static_1150-1754633744624 > .e_container > .p_item > p:first-of-type{
    font-size:clamp(24px,2.4vw,32px) !important;font-weight:600 !important;
    color:#1a2440 !important;text-align:center !important;
    line-height:1.25 !important;margin:0 0 14px !important;
    white-space:nowrap !important;overflow:visible !important;
}
@media (max-width:768px){
    #c_static_634_P_114-1755788510940 > .e_container > .p_item > p:first-of-type,
    #c_static_634_P_114-1755788510940 .cbox-1-0 > p:first-of-type,
    #c_static_001-1760664882631 > .e_container > .p_item > p:first-of-type,
    #c_static_001-1760664882631 .cbox-1-0 > p:first-of-type,
    #c_static_001-1755790172759 > .e_container > .p_item > p:first-of-type,
    #c_static_001-1755790172759 .cbox-1-0 > p:first-of-type,
    #c_static_1150-1754633744624 > .e_container > .p_item > p:first-of-type{
        font-size:22px !important;white-space:normal !important;
    }
}
#c_static_634_P_114-1755788510940 .p_loopitem,
#c_static_001-1760664882631 .p_loopitem,
#c_static_001-1755790172759 .p_loopitem{
    background:#fff !important;border:1px solid #eaeef4 !important;
    border-radius:10px !important;padding:28px 22px !important;
    min-height:180px !important;transition:transform .2s,box-shadow .2s !important;
    display:flex !important;flex-direction:column !important;
    align-items:flex-start !important;justify-content:flex-start !important;gap:8px !important;
}
#c_static_634_P_114-1755788510940 .p_loopitem:hover,
#c_static_001-1760664882631 .p_loopitem:hover,
#c_static_001-1755790172759 .p_loopitem:hover{
    transform:translateY(-3px) !important;
    box-shadow:0 10px 24px rgba(24,56,131,.08) !important;
    border-color:#cdd6ea !important;
}
#c_static_634_P_114-1755788510940 .p_loopitem .e_container,
#c_static_001-1760664882631 .p_loopitem .e_container,
#c_static_001-1755790172759 .p_loopitem .e_container{
    border:none !important;box-shadow:none !important;background:transparent !important;
    padding:0 !important;width:100% !important;
}


/* ============================================================
 * 10. ABOUT PAGE  :  STATS ROW  (4 big numbers)
 * ============================================================ */
body.page-id-6 .e_loop-24 > div > .p_list,
body.page-id-1358 .e_loop-24 > div > .p_list {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 24px !important;
    width: 100% !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 24px 16px !important;
    box-sizing: border-box !important;
}
body.page-id-6 .cbox-24.p_loopitem,
body.page-id-1358 .cbox-24.p_loopitem {
    flex: 1 1 calc(25% - 24px) !important;
    min-width: 180px !important;
    max-width: 260px !important;
    text-align: center !important;
    box-sizing: border-box !important;
    padding: 16px 8px !important;
}
body.page-id-6 .e_scrollNumber-27,
body.page-id-1358 .e_scrollNumber-27 {
    font-size: 3rem !important;
    font-weight: 700 !important;
    color: #183883 !important;
    line-height: 1.2 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: baseline !important;
    flex-wrap: nowrap !important;
    white-space: nowrap !important;
    margin-bottom: 8px !important;
}
body.page-id-6 .e_scrollNumber-27 .p_num,
body.page-id-1358 .e_scrollNumber-27 .p_num {
    font-size: inherit !important;
    font-weight: inherit !important;
    color: inherit !important;
    display: inline-block !important;
}
body.page-id-6 .e_scrollNumber-27 .p_prefix,
body.page-id-1358 .e_scrollNumber-27 .p_prefix,
body.page-id-6 .e_scrollNumber-27 .p_suffix,
body.page-id-1358 .e_scrollNumber-27 .p_suffix {
    font-size: 1.6rem !important;
    color: #183883 !important;
    font-weight: 700 !important;
}
body.page-id-6 .e_text-28,
body.page-id-1358 .e_text-28 {
    font-size: 0.92rem !important;
    color: #555 !important;
    line-height: 1.55 !important;
    text-align: center !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    white-space: normal !important;
    margin: 0 !important;
}


/* ============================================================
 * 11. OUR STRENGTHS ICON FALLBACK  (inspection / reverse-engineering)
 * Single mechanism: keep inspection.min.css interaction model, only
 * provide icon rendering for empty .e_icon-12 nodes in WP content.
 * ============================================================ */
body.page-id-10 #c_static_1178-17591555461030 .e_icon-12,
body.page-id-12 #c_static_1178-17591555461030 .e_icon-12,
body.page-id-1361 #c_static_1178-17591555461030 .e_icon-12,
body.page-id-1367 #c_static_1178-17591555461030 .e_icon-12 {
    background: none !important;
    background-image: none !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}
body.page-id-10 #c_static_1178-17591555461030 .e_icon-12::before,
body.page-id-12 #c_static_1178-17591555461030 .e_icon-12::before,
body.page-id-1361 #c_static_1178-17591555461030 .e_icon-12::before,
body.page-id-1367 #c_static_1178-17591555461030 .e_icon-12::before {
    content: "" !important;
    display: block !important;
    width: 48px !important;
    height: 48px !important;
    margin: 0 auto !important;
    background-color: currentColor !important;
    -webkit-mask-repeat: no-repeat !important;
    -webkit-mask-position: center center !important;
    -webkit-mask-size: contain !important;
    mask-repeat: no-repeat !important;
    mask-position: center center !important;
    mask-size: contain !important;
}
body.page-id-10 #c_static_1178-17591555461030 .cbox-10:nth-child(1) .e_icon-12::before,
body.page-id-12 #c_static_1178-17591555461030 .cbox-10:nth-child(1) .e_icon-12::before,
body.page-id-1361 #c_static_1178-17591555461030 .cbox-10:nth-child(1) .e_icon-12::before,
body.page-id-1367 #c_static_1178-17591555461030 .cbox-10:nth-child(1) .e_icon-12::before {
    -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M12 2a10 10 0 1 0 10 10A10 10 0 0 0 12 2zm0 18a8 8 0 1 1 8-8 8 8 0 0 1-8 8z'/><path fill='black' d='M12 6a6 6 0 1 0 6 6 6 6 0 0 0-6-6zm0 10a4 4 0 1 1 4-4 4 4 0 0 1-4 4z'/><circle fill='black' cx='12' cy='12' r='2'/></svg>") !important;
    mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M12 2a10 10 0 1 0 10 10A10 10 0 0 0 12 2zm0 18a8 8 0 1 1 8-8 8 8 0 0 1-8 8z'/><path fill='black' d='M12 6a6 6 0 1 0 6 6 6 6 0 0 0-6-6zm0 10a4 4 0 1 1 4-4 4 4 0 0 1-4 4z'/><circle fill='black' cx='12' cy='12' r='2'/></svg>") !important;
}
body.page-id-10 #c_static_1178-17591555461030 .cbox-10:nth-child(2) .e_icon-12::before,
body.page-id-12 #c_static_1178-17591555461030 .cbox-10:nth-child(2) .e_icon-12::before,
body.page-id-1361 #c_static_1178-17591555461030 .cbox-10:nth-child(2) .e_icon-12::before,
body.page-id-1367 #c_static_1178-17591555461030 .cbox-10:nth-child(2) .e_icon-12::before {
    -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M13 2L3 14h7l-1 8 11-14h-7z'/></svg>") !important;
    mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M13 2L3 14h7l-1 8 11-14h-7z'/></svg>") !important;
}
body.page-id-10 #c_static_1178-17591555461030 .cbox-10:nth-child(3) .e_icon-12::before,
body.page-id-12 #c_static_1178-17591555461030 .cbox-10:nth-child(3) .e_icon-12::before,
body.page-id-1361 #c_static_1178-17591555461030 .cbox-10:nth-child(3) .e_icon-12::before,
body.page-id-1367 #c_static_1178-17591555461030 .cbox-10:nth-child(3) .e_icon-12::before {
    -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M3 3h7v7H3zm11 0h7v7h-7zM3 14h7v7H3zm11 0h7v7h-7z'/></svg>") !important;
    mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M3 3h7v7H3zm11 0h7v7h-7zM3 14h7v7H3zm11 0h7v7h-7z'/></svg>") !important;
}
body.page-id-10 #c_static_1178-17591555461030 .cbox-10:nth-child(4) .e_icon-12::before,
body.page-id-12 #c_static_1178-17591555461030 .cbox-10:nth-child(4) .e_icon-12::before,
body.page-id-1361 #c_static_1178-17591555461030 .cbox-10:nth-child(4) .e_icon-12::before,
body.page-id-1367 #c_static_1178-17591555461030 .cbox-10:nth-child(4) .e_icon-12::before {
    -webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M21.41 11.58l-9-9C12.05 2.22 11.55 2 11 2H4a2 2 0 0 0-2 2v7c0 .55.22 1.05.59 1.42l9 9c.36.36.86.58 1.41.58.55 0 1.05-.22 1.41-.59l7-7c.37-.36.59-.86.59-1.41 0-.55-.23-1.06-.59-1.42zM5.5 7A1.5 1.5 0 1 1 7 5.5 1.5 1.5 0 0 1 5.5 7z'/></svg>") !important;
    mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M21.41 11.58l-9-9C12.05 2.22 11.55 2 11 2H4a2 2 0 0 0-2 2v7c0 .55.22 1.05.59 1.42l9 9c.36.36.86.58 1.41.58.55 0 1.05-.22 1.41-.59l7-7c.37-.36.59-.86.59-1.41 0-.55-.23-1.06-.59-1.42zM5.5 7A1.5 1.5 0 1 1 7 5.5 1.5 1.5 0 0 1 5.5 7z'/></svg>") !important;
}
body.page-id-10 #c_static_1178-17591555461030 .e_container-11:not(:hover) .e_icon-12,
body.page-id-12 #c_static_1178-17591555461030 .e_container-11:not(:hover) .e_icon-12,
body.page-id-1361 #c_static_1178-17591555461030 .e_container-11:not(:hover) .e_icon-12,
body.page-id-1367 #c_static_1178-17591555461030 .e_container-11:not(:hover) .e_icon-12,
body.page-id-10 #c_static_1178-17591555461030 .e_container-11:not(:hover) .e_text-13,
body.page-id-12 #c_static_1178-17591555461030 .e_container-11:not(:hover) .e_text-13,
body.page-id-1361 #c_static_1178-17591555461030 .e_container-11:not(:hover) .e_text-13,
body.page-id-1367 #c_static_1178-17591555461030 .e_container-11:not(:hover) .e_text-13 {
    color: #183883 !important;
}
body.page-id-10 #c_static_1178-17591555461030 .e_container-11:not(:hover) .e_richText-17,
body.page-id-12 #c_static_1178-17591555461030 .e_container-11:not(:hover) .e_richText-17,
body.page-id-1361 #c_static_1178-17591555461030 .e_container-11:not(:hover) .e_richText-17,
body.page-id-1367 #c_static_1178-17591555461030 .e_container-11:not(:hover) .e_richText-17 {
    color: #666 !important;
}

/* ============================================================
 * 12. PRE-FOOTER 3-CARD CTA STRIP  (Consult / Network / Support)
 *     Widget id: #c_static_001-17587679971040. Appears on every
 *     page via Dongli. All styling lives here â single source.
 *
 *     Layout:
 *       â¢ Row full-width (90%, max 1360px) matching page nav
 *       â¢ 3 cards share the row equally, no hard cap
 *       â¢ Each card: 60x60 icon (52px img inside) left + text right
 *       â¢ Icon fully visible (no crop from theme base CSS)
 *       â¢ Title 1 line, subtitle wraps
 *       â¢ Top-aligned content + optical 4px nudge for text
 *       â¢ Hover: lift + scale icon + tint title
 *       â¢ Hide stray right-arrow (cbox-7)
 * ============================================================ */

/* Container â match page nav width */
#c_static_001-17587679971040 {
    background: transparent !important;
}
#c_static_001-17587679971040 .e_container-1.s_layout,
#c_static_001-17587679971040 .cbox-1-0.p_item,
#c_static_001-17587679971040 .e_loop-2.s_list,
#c_static_001-17587679971040 .e_loop-2 > div {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}
#c_static_001-17587679971040 .e_loop-2 > div > .p_list {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    align-items: stretch !important;
    width: 90% !important;
    max-width: 1360px !important;
    margin: 0 auto !important;
    padding: 32px 0 !important;
    gap: 24px !important;
    box-sizing: border-box !important;
}

/* Each card */
#c_static_001-17587679971040 .cbox-2.p_loopitem {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    flex: 1 1 0 !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 96px !important;
    padding: 16px 10px !important;
    box-sizing: border-box !important;
    justify-content: flex-start !important;
    cursor: pointer !important;
    transition: transform .25s ease, box-shadow .25s ease, background-color .25s ease !important;
}
#c_static_001-17587679971040 .cbox-2.p_loopitem:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 28px rgba(24, 56, 131, 0.10) !important;
    background: #ffffff !important;
}

/* Icon + text flex row  (top-aligned) */
#c_static_001-17587679971040 .cbox-2.p_loopitem .e_container-3 {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    width: 100% !important;
}

/* Icon box: 60x60 centered */
#c_static_001-17587679971040 .cbox-2.p_loopitem .cbox-3-0,
#c_static_001-17587679971040 .cbox-2.p_loopitem .cbox-3-0.p_item {
    flex: 0 0 60px !important;
    width: 60px !important;
    min-width: 60px !important;
    max-width: 60px !important;
    height: 60px !important;
    min-height: 60px !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
}
#c_static_001-17587679971040 .cbox-2.p_loopitem .cbox-3-0 .e_image-4,
#c_static_001-17587679971040 .cbox-2.p_loopitem .cbox-3-0 .s_img {
    width: 60px !important;
    height: 60px !important;
    min-width: 60px !important;
    min-height: 60px !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    line-height: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
}
#c_static_001-17587679971040 .cbox-2.p_loopitem .cbox-3-0 .e_image-4 a,
#c_static_001-17587679971040 .cbox-2.p_loopitem .cbox-3-0 .s_img a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 60px !important;
    height: 60px !important;
    padding: 0 !important;
    margin: 0 !important;
    line-height: 0 !important;
    text-decoration: none !important;
    overflow: visible !important;
    box-sizing: border-box !important;
}
#c_static_001-17587679971040 .cbox-2.p_loopitem .cbox-3-0 img {
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
    max-width: 52px !important;
    max-height: 52px !important;
    object-fit: contain !important;
    object-position: center center !important;
    padding: 0 !important;
    margin: 0 !important;
    display: block !important;
    overflow: visible !important;
    clip-path: none !important;
    -webkit-clip-path: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-sizing: border-box !important;
    vertical-align: middle !important;
    background: transparent !important;
    transition: transform .4s ease !important;
}
#c_static_001-17587679971040 .cbox-2.p_loopitem:hover .cbox-3-0 img {
    transform: scale(1.08) !important;
}

/* Text column: fills remaining width, top-aligned, 4px optical nudge */
#c_static_001-17587679971040 .cbox-2.p_loopitem .cbox-3-1,
#c_static_001-17587679971040 .cbox-2.p_loopitem .cbox-3-1.p_item {
    flex: 1 1 auto !important;
    width: auto !important;
    max-width: calc(100% - 72px) !important;
    min-width: 0 !important;
    padding: 4px 0 0 0 !important;
    margin: 0 !important;
    text-align: left !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    gap: 4px !important;
}

/* Title: 1 line, no truncation (user prefers full text over ellipsis) */
#c_static_001-17587679971040 .cbox-2.p_loopitem .cbox-3-1 .e_text-5,
#c_static_001-17587679971040 .cbox-2 .cbox-3-1 .e_text-5,
#c_static_001-17587679971040 .cbox-2 .cbox-3-1 .e_text-5 a {
    text-align: left !important;
    margin: 0 !important;
    line-height: 1.4 !important;
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
    display: block !important;
    max-width: 100% !important;
}
#c_static_001-17587679971040 .cbox-2 .cbox-3-1 .e_text-5 a {
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #183883 !important;
    text-decoration: none !important;
}

/* Subtitle: wraps freely */
#c_static_001-17587679971040 .cbox-2.p_loopitem .cbox-3-1 .e_text-6,
#c_static_001-17587679971040 .cbox-2 .cbox-3-1 .e_text-6,
#c_static_001-17587679971040 .cbox-2 .cbox-3-1 .e_text-6 a {
    text-align: left !important;
    margin: 0 !important;
    line-height: 1.4 !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    display: block !important;
}
#c_static_001-17587679971040 .cbox-2 .cbox-3-1 .e_text-6 a {
    font-size: 13px !important;
    color: #5a6578 !important;
    text-decoration: none !important;
}

/* Hover: title tint */
#c_static_001-17587679971040 .cbox-2.p_loopitem:hover .e_text-5,
#c_static_001-17587679971040 .cbox-2.p_loopitem:hover .e_text-5 a {
    color: #0091D5 !important;
}

/* Kill stray right-arrow image */
#c_static_001-17587679971040 .cbox-2.p_loopitem .e_container-7,
#c_static_001-17587679971040 .cbox-2.p_loopitem .cbox-7-0,
#c_static_001-17587679971040 .cbox-2.p_loopitem .cbox-7-0 .e_image-8 {
    display: none !important;
}

/* Responsive */
@media (max-width: 1280px) {
    #c_static_001-17587679971040 .cbox-2 .cbox-3-1 .e_text-5 a { font-size: 14px !important; }
}
@media (max-width: 1024px) {
    #c_static_001-17587679971040 .e_loop-2 > div > .p_list { gap: 18px !important; }
    #c_static_001-17587679971040 .cbox-2.p_loopitem { padding: 14px 10px !important; }
}
@media (max-width: 768px) {
    #c_static_001-17587679971040 .e_loop-2 > div > .p_list { flex-wrap: wrap !important; }
    #c_static_001-17587679971040 .cbox-2.p_loopitem {
        flex: 1 1 100% !important;
        max-width: 100% !important;
        padding: 14px 14px !important;
    }
    #c_static_001-17587679971040 .cbox-2.p_loopitem .cbox-3-1 { max-width: calc(100% - 72px) !important; }
}


/* ============================================================
 * 13. FOOTER ADDRESS COLUMN  (breathing room on the right)
 * ============================================================ */
#c_static_001-1753423180914 .cbox-3-0 {
    padding-right: 40px !important;
    box-sizing: border-box !important;
}
#c_static_001-1753423180914 .cbox-3-0 .e_text-5,
#c_static_001-1753423180914 .cbox-3-0 .e_text-6,
#c_static_001-1753423180914 .cbox-3-0 .e_text-7,
#c_static_001-1753423180914 .cbox-3-0 .e_text-8,
#c_static_001-1753423180914 .cbox-3-0 .e_text-17 {
    padding-right: 16px !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
}
@media (max-width: 768px) {
    #c_static_001-1753423180914 .cbox-3-0 { padding-right: 16px !important; }
}
/* Generic footer address column (alt variant used on some pages) */
footer .cbox-1-0 {
    padding-right: 60px !important;
    max-width: 520px !important;
    box-sizing: border-box !important;
}
footer .f_contactBox,
footer .info-company,
footer .company-info,
footer > div > div > div:first-child {
    padding-right: 48px !important;
    max-width: 480px !important;
}
@media (max-width: 1200px) {
    footer .cbox-1-0 { padding-right: 32px !important; max-width: 100% !important; }
}
@media (max-width: 992px) {
    footer .cbox-1-0,
    footer .f_contactBox,
    footer .info-company,
    footer .company-info,
    footer > div > div > div:first-child { padding-right: 0 !important; max-width: 100% !important; }
}


/* ============================================================
 * 14. INDUSTRY APPLICATIONS  (IA)  page layout
 *     Pages 1475 (EN) / 1476 (CN): hero row + 7-card grid
 * ============================================================ */
body.page-id-1475 .e_container-ia_hero,
body.page-id-1476 .e_container-ia_hero {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 24px !important;
    align-items: stretch !important;
}
body.page-id-1475 .cbox-ia_hero-0,
body.page-id-1475 .cbox-ia_hero-1,
body.page-id-1476 .cbox-ia_hero-0,
body.page-id-1476 .cbox-ia_hero-1 {
    flex: 1 1 360px !important;
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    text-decoration: none !important;
    transition: box-shadow 0.2s ease, transform 0.2s ease !important;
}
body.page-id-1475 .cbox-ia_hero-0:hover,
body.page-id-1475 .cbox-ia_hero-1:hover,
body.page-id-1476 .cbox-ia_hero-0:hover,
body.page-id-1476 .cbox-ia_hero-1:hover {
    box-shadow: 0 8px 28px rgba(24, 56, 131, 0.14) !important;
    transform: translateY(-2px) !important;
}
body.page-id-1475 .e_image-ia_hero1 img,
body.page-id-1475 .e_image-ia_hero2 img,
body.page-id-1476 .e_image-ia_hero1 img,
body.page-id-1476 .e_image-ia_hero2 img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 9 !important;
    object-fit: cover !important;
}
body.page-id-1475 .cbox-ia_grid-row,
body.page-id-1476 .cbox-ia_grid-row {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)) !important;
    gap: 20px !important;
}
body.page-id-1475 .cbox-ia_grid-item,
body.page-id-1476 .cbox-ia_grid-item {
    transition: box-shadow 0.2s ease, background 0.2s ease !important;
}
body.page-id-1475 .cbox-ia_grid-item:hover,
body.page-id-1476 .cbox-ia_grid-item:hover {
    box-shadow: 0 4px 16px rgba(24, 56, 131, 0.10) !important;
    background: #ffffff !important;
}
@media (max-width: 640px) {
    body.page-id-1475 .e_container-ia_hero,
    body.page-id-1476 .e_container-ia_hero { gap: 16px !important; }
    body.page-id-1475 .cbox-ia_hero-0,
    body.page-id-1475 .cbox-ia_hero-1,
    body.page-id-1476 .cbox-ia_hero-0,
    body.page-id-1476 .cbox-ia_hero-1 { flex: 1 1 100% !important; }
}
body.page-id-1475 #c_static_IA_intro1776656051000,
body.page-id-1476 #c_static_IA_intro1776656051000 {
    padding-top: 32px !important;
    padding-bottom: 16px !important;
}


/* ============================================================
 * 15. IA HERO (canonical .ia-page component)
 * ============================================================ */
.ia-page {
    --ia-radius: 12px; --ia-accent: #0071e3; --ia-ink: #1d1d1f; --ia-muted: #6b7280;
    --ia-divider: #ededed; --ia-bg: #fff; --ia-tint: #f5f5f7;
    color: var(--ia-ink); background: var(--ia-bg);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", "PingFang SC", "Microsoft YaHei", Arial, sans-serif;
}
.ia-page > section { max-width: 1360px !important; width: 90% !important; margin: 0 auto !important; padding-left: 0 !important; padding-right: 0 !important; box-sizing: border-box !important; }
.ia-crumb { max-width: 1360px !important; width: 90% !important; margin: 0 auto !important; padding: 18px 0 0 !important; font-size: 13px !important; color: var(--ia-muted) !important; }
.ia-crumb a { color: var(--ia-muted) !important; text-decoration: none !important; }
.ia-crumb a:hover { color: var(--ia-accent) !important; }
.ia-hero-block { padding: 140px 0 20px !important; background: transparent !important; max-width: 1360px !important; width: 90% !important; margin: 0 auto !important; box-sizing: border-box !important; }
.ia-hero-grid { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 20px !important; }
.ia-hero-card { position: relative !important; display: block !important; overflow: hidden !important; border-radius: 10px !important; aspect-ratio: 16 / 3 !important; min-height: 110px !important; max-height: 140px !important; text-decoration: none !important; color: #fff !important; background: #1a2436 !important; box-shadow: 0 3px 10px rgba(15,23,42,.08) !important; transition: transform .25s ease, box-shadow .25s ease !important; }
.ia-hero-card:hover { transform: translateY(-1px) !important; box-shadow: 0 8px 18px rgba(15,23,42,.14) !important; color: #fff !important; }
.ia-hero-card__bg { position: absolute !important; inset: 0 !important; background-size: cover !important; background-position: center !important; transition: transform .5s ease !important; }
.ia-hero-card:hover .ia-hero-card__bg { transform: scale(1.03) !important; }
.ia-hero-card::before { content: "" !important; position: absolute !important; inset: 0 !important; z-index: 1 !important; background: linear-gradient(100deg, rgba(10,18,35,.72) 0%, rgba(10,18,35,.48) 55%, rgba(10,18,35,.3) 100%) !important; transition: background .3s ease !important; }
.ia-hero-card:hover::before { background: linear-gradient(100deg, rgba(10,18,35,.78) 0%, rgba(10,18,35,.52) 55%, rgba(10,18,35,.34) 100%) !important; }
.ia-hero-card__inner { position: absolute !important; inset: 0 !important; z-index: 2 !important; display: flex !important; flex-direction: column !important; justify-content: center !important; padding: 12px 22px !important; max-width: 100% !important; }
.ia-hero-card__title { margin: 0 0 4px !important; font-size: 24px !important; font-weight: 600 !important; letter-spacing: .2px !important; line-height: 1.2 !important; color: #fff !important; text-shadow: 0 2px 6px rgba(0,0,0,.4) !important; }
.ia-hero-card__lede { margin: 0 !important; font-size: 16px !important; line-height: 1.4 !important; color: rgba(255,255,255,.78) !important; display: -webkit-box !important; -webkit-line-clamp: 2 !important; -webkit-box-orient: vertical !important; overflow: hidden !important; text-shadow: 0 1px 3px rgba(0,0,0,.35) !important; }

.ia-filter-section { padding: 36px 0 0 !important; }
.ia-filter-row { display: flex !important; flex-wrap: wrap !important; gap: 10px !important; row-gap: 10px !important; align-items: center !important; padding: 14px 0 !important; margin-bottom: 8px !important; border-bottom: 0 !important; }
.ia-filter-row:last-of-type { margin-bottom: 0 !important; }
.ia-filter-label { font-size: 13px !important; color: var(--ia-muted) !important; min-width: 72px !important; font-weight: 500 !important; }
.ia-filter-pill { appearance: none !important; border: 1px solid transparent !important; background: var(--ia-tint) !important; color: var(--ia-ink) !important; padding: 7px 18px !important; border-radius: 999px !important; font-size: 13px !important; line-height: 1.4 !important; cursor: pointer !important; transition: background .15s, color .15s, border-color .15s !important; font-family: inherit !important; }
.ia-filter-pill:hover { background: #e8e8ed !important; }
.ia-filter-pill.is-active { background: var(--ia-accent) !important; color: #fff !important; }

.ia-condition { display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: 10px !important; padding: 14px 0 4px !important; }
.ia-condition[hidden] { display: none !important; }
.ia-condition-label { font-size: 13px !important; color: var(--ia-muted) !important; }
.ia-condition-chips { display: inline-flex !important; gap: 6px !important; flex-wrap: wrap !important; }
.ia-condition-chip { display: inline-flex !important; align-items: center !important; gap: 6px !important; padding: 4px 6px 4px 12px !important; background: #eaf2ff !important; border: 1px solid #bfd8ff !important; color: #0057b8 !important; border-radius: 999px !important; font-size: 12px !important; }
.ia-condition-chip-x { appearance: none !important; border: 0 !important; background: transparent !important; color: #0057b8 !important; cursor: pointer !important; padding: 0 4px !important; font-size: 14px !important; line-height: 1 !important; }
.ia-condition-clear { appearance: none !important; border: 0 !important; background: transparent !important; color: var(--ia-accent) !important; font-size: 13px !important; cursor: pointer !important; padding: 4px 8px !important; }
.ia-condition-clear:hover { text-decoration: underline !important; }

.ia-cases-section { padding: 36px 0 56px !important; }
.ia-cases-grid { display: grid !important; grid-template-columns: repeat(4, 1fr) !important; gap: 24px !important; }
.ia-case-card { display: flex; flex-direction: column !important; background: #fff !important; border: 1px solid var(--ia-divider) !important; border-radius: var(--ia-radius) !important; overflow: hidden !important; text-decoration: none !important; color: inherit !important; transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease !important; }
.ia-case-card:hover { transform: translateY(-3px) !important; box-shadow: 0 14px 26px rgba(15,23,42,.08) !important; border-color: #dfe3ea !important; }
.ia-case-thumb { position: relative !important; width: 100% !important; aspect-ratio: 16 / 10 !important; overflow: hidden !important; background: #f0f0f2 !important; }
.ia-case-thumb img { width: 100% !important; height: 100% !important; object-fit: cover !important; display: block !important; transition: transform .4s ease !important; }
.ia-case-card:hover .ia-case-thumb img { transform: scale(1.04) !important; }
.ia-case-info { display: flex !important; flex-direction: column !important; gap: 8px !important; padding: 14px 16px 18px !important; flex: 1 !important; }
.ia-case-date { font-size: 12px !important; color: var(--ia-muted) !important; font-variant-numeric: tabular-nums !important; }
.ia-case-title { font-size: 15px !important; font-weight: 500 !important; margin: 0 !important; color: var(--ia-ink) !important; line-height: 1.45 !important; overflow: hidden !important; display: -webkit-box !important; -webkit-line-clamp: 3 !important; -webkit-box-orient: vertical !important; min-height: 3em !important; }
.ia-case-meta { display: flex !important; flex-wrap: wrap !important; gap: 6px !important; margin-top: auto !important; padding-top: 6px !important; }
.ia-case-industry, .ia-case-product { padding: 2px 8px !important; border-radius: 4px !important; background: var(--ia-tint) !important; color: var(--ia-ink) !important; font-size: 11px !important; letter-spacing: .2px !important; }
.ia-case-product { background: #eaf2ff !important; color: #0057b8 !important; }
.ia-cases-empty { grid-column: 1 / -1 !important; text-align: center !important; padding: 40px 0 !important; color: var(--ia-muted) !important; font-size: 14px !important; }

.ia-pagination { display: flex !important; justify-content: center !important; align-items: center !important; gap: 6px !important; padding: 36px 0 8px !important; grid-column: 1 / -1 !important; }
.ia-pagination[hidden] { display: none !important; }
.ia-page-numbers { display: inline-flex !important; gap: 6px !important; }
.ia-page-btn { appearance: none !important; min-width: 36px !important; height: 36px !important; padding: 0 10px !important; border: 1px solid var(--ia-divider) !important; background: #fff !important; color: var(--ia-ink) !important; border-radius: 8px !important; cursor: pointer !important; font-size: 14px !important; transition: background .15s, border-color .15s !important; font-family: inherit !important; }
.ia-page-btn:hover:not(:disabled) { background: var(--ia-tint) !important; border-color: #ddd !important; }
.ia-page-btn:disabled { opacity: .35 !important; cursor: not-allowed !important; }
.ia-page-btn.is-active { background: var(--ia-accent) !important; color: #fff !important; border-color: var(--ia-accent) !important; }

@media (max-width: 1100px) { .ia-cases-grid { grid-template-columns: repeat(3, 1fr) !important; } }
@media (max-width: 1024px) { .ia-page > section, .ia-crumb, .ia-hero-block { width: 94% !important; } }
@media (max-width: 900px) {
    .ia-hero-block { padding: 96px 0 14px !important; }
    .ia-hero-grid { grid-template-columns: 1fr !important; gap: 12px !important; }
    .ia-hero-card { aspect-ratio: 16 / 4 !important; min-height: 100px !important; max-height: 130px !important; }
    .ia-hero-card__inner { padding: 10px 18px !important; max-width: 100% !important; }
    .ia-hero-card__title { font-size: 20px !important; }
    .ia-hero-card__lede { font-size: 13px !important; }
    .ia-filter-row { margin-bottom: 6px !important; }
    .ia-cases-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 18px !important; }
}
@media (max-width: 640px) {
    .ia-hero-block { padding: 86px 0 10px !important; }
    .ia-page > section, .ia-crumb, .ia-hero-block { width: 94% !important; }
    .ia-hero-card { aspect-ratio: 16 / 5 !important; min-height: 90px !important; max-height: 120px !important; border-radius: 8px !important; }
    .ia-hero-card__inner { padding: 10px 16px !important; max-width: 100% !important; }
    .ia-hero-card__title { font-size: 18px !important; margin-bottom: 2px !important; }
    .ia-hero-card__lede { font-size: 12px !important; }
    .ia-cases-grid { grid-template-columns: 1fr !important; gap: 16px !important; }
    .ia-case-thumb { aspect-ratio: 16 / 9 !important; }
}


/* ============================================================
 * 16. CASE DETAIL PAGE  (body.insv-case-body-root)
 * ============================================================ */
.insv-case-page{color:#1d1d1f;background:#fff;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Arial,sans-serif;line-height:1.7}
.insv-case-page .insv-case-wrap{width:min(88vw,1360px);max-width:1360px;margin:0 auto;padding:0}
.insv-case-hero{padding:64px 0 36px;border-bottom:1px solid #e4eaf3;background:#fff}
.insv-case-breadcrumb{font-size:13px;color:#6b7280;margin-bottom:18px}
.insv-case-breadcrumb a{color:#6b7280;text-decoration:none}
.insv-case-breadcrumb a:hover{color:#0071e3}
.insv-case-breadcrumb span{margin:0 6px;color:#c9c9c9}
.insv-case-breadcrumb .current{color:#1d1d1f}
.insv-case-title{max-width:960px;font-size:30px;line-height:1.34;font-weight:800;margin:0 0 16px;color:#2f3541;letter-spacing:0}
.insv-case-meta{display:flex;flex-wrap:wrap;gap:14px;align-items:center;font-size:14px;color:#6b7280}
.insv-case-meta .insv-case-tag{display:inline-block;padding:3px 10px;border-radius:999px;background:#f5f5f7;color:#1d1d1f;font-size:12px;font-weight:500}
.insv-case-meta .insv-case-tag--product{background:#0071e3;color:#fff;font-weight:700}
.insv-case-body{padding:48px 0 56px}
.insv-case-intro p{font-size:16px;line-height:1.85;margin:0 0 20px;color:#2f3541}
.insv-case-media{margin:32px 0}
.insv-case-media--video video{width:100%;max-width:100%;border-radius:16px;background:#000;box-shadow:0 8px 28px rgba(0,0,0,.08)}
.insv-case-media--gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.insv-case-figure{margin:0}
.insv-case-figure img{width:100%;display:block;border-radius:12px;box-shadow:0 4px 14px rgba(0,0,0,.06)}
@media (max-width:720px){
    .insv-case-hero{padding:40px 0 24px}
    .insv-case-title{font-size:24px}
    .insv-case-body{padding:32px 0}
    .insv-case-intro p{font-size:16px}
}

/* INSV case detail relation rail */
.insv-case-hero .insv-case-wrap{display:grid;grid-template-columns:minmax(0,1fr) clamp(320px,24vw,360px);column-gap:36px;align-items:start}
.insv-case-breadcrumb,.insv-case-title,.insv-case-meta{grid-column:1}
.insv-case-page .insv-case-wrap.insv-case-layout{width:min(88vw,1360px);max-width:1360px;display:grid;grid-template-columns:minmax(0,1fr) clamp(320px,24vw,360px);column-gap:36px;row-gap:28px;align-items:start}
.insv-case-main{min-width:0}
.insv-case-rail{position:sticky;top:156px;display:flex;flex-direction:column;gap:14px;align-self:start;font-family:Arial,"Microsoft YaHei",sans-serif}
.insv-case-rail-card{border:1px solid #e3eaf4;background:#fff;border-radius:8px;padding:18px;box-shadow:0 10px 28px rgba(16,32,64,.055);color:#1f2a3d}
.insv-case-rail-card h2{margin:0;color:#1f2a3d;font-size:17px;font-weight:700;line-height:1.35;letter-spacing:0}
.insv-case-rail-card--product,.insv-case-rail-card--cta{border-color:#d8e5f8;background:linear-gradient(180deg,#fff 0%,#f7fbff 100%)}
.insv-case-rail-eyebrow{margin:0 0 8px;color:#1a56a8;font-size:12px;line-height:1.2;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.insv-case-rail-copy{margin:10px 0 14px;color:#526071;font-size:13px;line-height:1.65}
.insv-case-rail-primary,.insv-case-rail-secondary{display:flex;align-items:center;justify-content:center;min-height:38px;padding:0 12px;border-radius:6px;text-decoration:none!important;font-size:13px;font-weight:700;line-height:1.2;box-sizing:border-box;transition:background .16s ease,color .16s ease,border-color .16s ease}
.insv-case-rail-primary{width:100%;background:#183883;color:#fff!important;border:1px solid #183883}
.insv-case-rail-primary:hover{background:#102b69;border-color:#102b69;color:#fff!important}
.insv-case-rail-secondary{width:100%;margin-top:10px;background:#fff;color:#183883!important;border:1px solid #c9d8f1}
.insv-case-rail-secondary:hover{background:#eef5ff;border-color:#9bb6df;color:#183883!important}
.insv-case-rail-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:12px}
.insv-case-rail-head h2{margin:0;color:#1f2a3d;font-size:17px;font-weight:700;line-height:1.35}
.insv-case-rail-head a{color:#1a56a8!important;text-decoration:none!important;font-size:12px;font-weight:700;white-space:nowrap}
.insv-case-rail-head a:hover{text-decoration:underline!important;text-underline-offset:3px}
.insv-case-related-list{display:block}
.insv-case-related-link{display:grid;grid-template-columns:74px minmax(0,1fr);gap:12px;align-items:start;padding:12px 0;border-top:1px solid #edf1f7;color:inherit!important;text-decoration:none!important;background:transparent;transition:none}
.insv-case-related-link:first-of-type{border-top:0;padding-top:0}
.insv-case-related-link:last-child{padding-bottom:0}
.insv-case-related-link:hover{background:transparent;transform:none}
.insv-case-related-link img,.insv-case-related-placeholder{width:74px;height:56px;border-radius:6px;background:#eef3f8;display:flex;align-items:center;justify-content:center;color:#8d97a6;font-size:10px;font-weight:700;object-fit:cover}
.insv-case-related-body{min-width:0;display:block}
.insv-case-related-body strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:#2b3340;font-size:13px;line-height:1.38;font-weight:700}
.insv-case-related-link:hover strong{color:#183883}
.insv-case-related-body em{display:block;margin-top:6px;color:#8c97a8;font-size:11px;font-style:normal;line-height:1.2}
@media (max-width:1024px){
    .insv-case-hero .insv-case-wrap,.insv-case-page .insv-case-wrap.insv-case-layout{display:block;width:calc(100% - 40px);max-width:none}
    .insv-case-rail{position:static;margin-top:28px;margin-bottom:28px}
}
@media (max-width:768px){
    .insv-case-page .insv-case-wrap{width:calc(100% - 40px)}
    .insv-case-hero{padding:40px 0 26px}
    .insv-case-title{font-size:23px;line-height:1.32}
    .insv-case-body{padding:32px 0 42px}
    .insv-case-rail-card{padding:16px}
}
/* Case page nav: logo swap + white bg when scrolled */
body.insv-case-body-root #c_navigation_126_P_1582-17606661880800 {
    background: #fff !important;
    box-shadow: 0 0 15px rgba(0,0,0,.12) !important;
}
body.insv-case-body-root #c_navigation_126_P_1582-17606661880800 .e_image-16 img:nth-child(1) { display: none !important; }
body.insv-case-body-root #c_navigation_126_P_1582-17606661880800 .e_image-16 img:nth-child(2) { display: block !important; }
body.insv-case-body-root main { padding-top: 80px; }


/* ============================================================
 * 17. CASE PREV / NEXT NAV  (minimal text + dark pill CTA)
 * ============================================================ */
.insv-case-nav {
    background: transparent !important;
    padding: 40px 0 60px !important;
    margin: 40px 0 0 !important;
    border-top: 1px solid #ededed !important;
    box-shadow: none !important;
}
.insv-case-nav .insv-case-wrap {
    display: grid !important;
    grid-template-columns: 1fr auto 1fr !important;
    gap: 24px !important;
    align-items: center !important;
    max-width: 1360px !important;
    width: 90% !important;
    margin: 0 auto !important;
    padding: 32px 0 0 !important;
}
.insv-case-nav-link {
    display: flex !important; flex-direction: column !important;
    gap: 4px !important;
    text-decoration: none !important;
    background: transparent !important;
    border: 0 !important; box-shadow: none !important;
    padding: 0 !important;
    min-width: 0 !important; min-height: 0 !important;
    color: #6b7280 !important;
    transition: color .15s ease !important;
}
.insv-case-nav-link:hover {
    color: #0071e3 !important;
    background: transparent !important;
    border: 0 !important; box-shadow: none !important;
    transform: none !important;
}
.insv-case-nav-link:hover .insv-case-nav-title {
    color: #0071e3 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
}
.insv-case-nav-prev { text-align: left !important; grid-column: 1 !important; }
.insv-case-nav-next { text-align: right !important; grid-column: 3 !important; }
.insv-case-nav-label {
    display: block !important;
    font-size: 11px !important;
    color: #9ca3af !important;
    text-transform: uppercase !important;
    letter-spacing: .5px !important;
    font-weight: 500 !important;
    margin: 0 !important;
}
.insv-case-nav-title {
    display: block !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    color: #6b7280 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    line-height: 1.4 !important;
    transition: color .15s ease !important;
}
.insv-case-nav-link.is-disabled,
.insv-case-nav-link[disabled],
span.insv-case-nav-link {
    opacity: .35 !important;
    pointer-events: none !important;
    background: transparent !important;
    border: 0 !important;
}
/* Center main button: dark pill (Apple-style CTA) */
.insv-case-nav-back {
    grid-column: 2 !important;
    background: #1d1d1f !important;
    color: #fff !important;
    border: 0 !important;
    padding: 12px 28px !important;
    border-radius: 999px !important;
    text-decoration: none !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    white-space: nowrap !important;
    box-shadow: none !important;
    transition: background .15s ease !important;
    flex: none !important;
    min-width: 0 !important; min-height: 0 !important;
    letter-spacing: .2px !important;
}
.insv-case-nav-back:hover {
    background: #0071e3 !important;
    color: #fff !important;
    border: 0 !important;
    box-shadow: none !important;
    transform: none !important;
}
.insv-case-nav-prev .insv-case-nav-label::before { content: "\2190\0020" !important; opacity: .7 !important; }
.insv-case-nav-next .insv-case-nav-label::after  { content: "\0020\2192" !important; opacity: .7 !important; }
@media (max-width: 720px) {
    .insv-case-nav { padding: 28px 0 40px !important; }
    .insv-case-nav .insv-case-wrap {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
        padding: 24px 0 0 !important;
        width: 92% !important;
    }
    .insv-case-nav-prev, .insv-case-nav-next {
        grid-column: 1 !important;
        text-align: left !important;
    }
    .insv-case-nav-back {
        grid-column: 1 !important;
        justify-self: stretch !important;
        text-align: center !important;
    }
}


/* ============================================================
 * 18. NAV DROPDOWN  (main nav level-2 panel)
 * ============================================================ */
.e_navigationA-35 .p_level1Item { position: relative !important; }
.e_navigationA-35 .p_level2Box {
    position: absolute !important;
    top: 100% !important; left: 50% !important;
    transform: translate(-50%, 6px) !important;
    opacity: 0 !important; visibility: hidden !important;
    pointer-events: none !important;
    transition: opacity .18s ease, transform .18s ease, visibility 0s linear .18s !important;
    min-width: max-content !important; width: auto !important;
    margin: 10px 0 0 0 !important; padding: 8px 0 !important;
    background: #ffffff !important; border-radius: 10px !important;
    box-shadow: 0 10px 30px rgba(15,23,42,.14), 0 2px 6px rgba(15,23,42,.06) !important;
    list-style: none !important;
    white-space: nowrap !important;
    z-index: 1001 !important;
}
.e_navigationA-35 .p_level1Item:hover > .p_level2Box,
.e_navigationA-35 .p_level1Item:focus-within > .p_level2Box {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translate(-50%, 0) !important;
    transition: opacity .18s ease, transform .18s ease, visibility 0s linear 0s !important;
}
.e_navigationA-35 .p_level2Item {
    display: block !important; list-style: none !important;
    margin: 0 !important; padding: 0 !important;
    white-space: nowrap !important; background: transparent !important;
}
.e_navigationA-35 .p_menu2Item {
    display: block !important; margin: 0 !important;
    padding: 10px 24px !important; white-space: nowrap !important;
    line-height: 1.4 !important;
    transition: background .15s ease !important;
}
.e_navigationA-35 .p_menu2Item:hover { background: #f5f5f7 !important; }
.e_navigationA-35 .p_menu2Item a,
.e_navigationA-35 .p_menu2Item a span,
.e_navigationA-35 .p_menu2Item p,
.e_navigationA-35 .p_menu2Item span {
    display: inline-flex !important;
    align-items: center !important; gap: 8px !important;
    color: #1d1d1f !important; text-decoration: none !important;
    white-space: nowrap !important;
    font-size: 14px !important; font-weight: 400 !important;
    line-height: 1.4 !important;
}
.e_navigationA-35 .p_menu2Item:hover a,
.e_navigationA-35 .p_menu2Item:hover a span { color: #0071e3 !important; }
.e_navigationA-35 .p_menu2Item .p_jtIcon,
.e_navigationA-35 .p_menu2Item svg.icon {
    width: 10px !important; height: 10px !important;
    margin-left: auto !important;
    opacity: .35 !important;
    flex: 0 0 auto !important; fill: currentColor !important;
}
.e_navigationA-35 .p_menu2Item:hover .p_jtIcon,
.e_navigationA-35 .p_menu2Item:hover svg.icon { opacity: .85 !important; }
.e_navigationA-35 .p_level2Box::before {
    content: "" !important;
    position: absolute !important;
    top: -10px !important; left: 0 !important; right: 0 !important;
    height: 10px !important;
}


/* ============================================================
 * 19. MAIN NAV LOAD-ORDER BLEED FIX
 *     about.min.css sets background-color:rgba(0,0,0,0) on the
 *     main nav AFTER background:rgba(255,255,255,.3). With a
 *     500ms transition, page content was visible through the
 *     nav during load. Force solid-ish default + faster swap.
 * ============================================================ */
#c_navigation_126_P_1582-17606661880800 {
    background-color: rgba(255, 255, 255, 0.9) !important;
    -webkit-backdrop-filter: saturate(140%) blur(8px) !important;
    backdrop-filter: saturate(140%) blur(8px) !important;
    transition: background-color 0.18s ease, box-shadow 0.18s ease !important;
}
#c_navigation_126_P_1582-17606661880800.active {
    background-color: #ffffff !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08) !important;
}
/* Breadcrumb: solid bg so it doesn't double-expose with nav */
#c_category_428_P_050-17568895704770 {
    background-color: #ffffff !important;
    position: relative !important;
    z-index: 5 !important;
}


/* ============================================================
 * 20. FOOTER SOCIAL ICONS  (5 brands, currentColor tint)
 *     CE about.min.css forces fill:#9da3a3 on .foot_links svg.
 *     Override to currentColor so per-link style='color:...'
 *     (EN) or child <path fill=...> (CN) paints correctly.
 * ============================================================ */
.foot_links .p_item .social-ext {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.foot_links .p_item .social-ext svg,
.foot_links .p_item .social-ext svg path {
    fill: currentColor !important;
}
.foot_links .p_item .social-ext svg {
    width: 34px !important;
    height: 34px !important;
    transition: transform .25s ease, filter .25s ease !important;
}
.foot_links .p_item .social-ext:hover svg {
    transform: translateY(-2px) scale(1.08) !important;
    filter: drop-shadow(0 4px 10px rgba(0,0,0,0.2)) !important;
}
/* widen row so all 5 brand icons stay on one line */
.foot_links {
    max-width: 300px !important;
    width: 100% !important;
    flex-wrap: nowrap !important;
    gap: 4px;
}
.foot_links .p_item {
    padding: 10px 2px !important;
    flex: 0 0 auto !important;
    min-width: 44px;
}

/* === end theme-extra.css === */

/* ============================================================
 * 6. HOMEPAGE PRODUCT CARDS  (unified shell for all 4 cards)
 *    Overrides the per-card page-builder rules on
 *    e_container-6/7/8/22 (and their cbox children)
 *    so every card has identical padding / grid / image size /
 *    text alignment, regardless of position or text length.
 * ============================================================ */

#c_static_001-1753418903463 .e_container-6,
#c_static_001-1753418903463 .e_container-7,
#c_static_001-1753418903463 .e_container-8,
#c_static_001-1753418903463 .e_container-22{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    column-gap:24px !important;
    row-gap:0 !important;
    align-items:center !important;
    padding:40px 48px !important;
    min-height:320px !important;
    box-sizing:border-box !important;
    background:#fff !important;
    border-radius:12px !important;
    box-shadow:0 2px 12px rgba(0,0,0,.04) !important;
    width:100% !important;
}

#c_static_001-1753418903463 .cbox-6-0,
#c_static_001-1753418903463 .cbox-7-0,
#c_static_001-1753418903463 .cbox-8-0,
#c_static_001-1753418903463 .cbox-22-0{
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    gap:8px !important;
    padding:0 !important;
    margin:0 !important;
    min-width:0 !important;
}

/* product name (first <p>) - blue link */
#c_static_001-1753418903463 .cbox-6-0 > p:nth-child(1),
#c_static_001-1753418903463 .cbox-7-0 > p:nth-child(1),
#c_static_001-1753418903463 .cbox-8-0 > p:nth-child(1),
#c_static_001-1753418903463 .cbox-22-0 > p:nth-child(1){
    font-size:22px !important;
    font-weight:700 !important;
    line-height:1.3 !important;
    margin:0 !important;
    padding:0 !important;
}
#c_static_001-1753418903463 .cbox-6-0 > p:nth-child(1) a,
#c_static_001-1753418903463 .cbox-7-0 > p:nth-child(1) a,
#c_static_001-1753418903463 .cbox-8-0 > p:nth-child(1) a,
#c_static_001-1753418903463 .cbox-22-0 > p:nth-child(1) a{
    color:#1a82d8 !important;
    text-decoration:none !important;
}

/* description (second <p>) - dark, clamped to 2 lines for height parity */
#c_static_001-1753418903463 .cbox-6-0 > p:nth-child(2),
#c_static_001-1753418903463 .cbox-7-0 > p:nth-child(2),
#c_static_001-1753418903463 .cbox-8-0 > p:nth-child(2),
#c_static_001-1753418903463 .cbox-22-0 > p:nth-child(2){
    font-size:17px !important;
    font-weight:600 !important;
    line-height:1.4 !important;
    color:#222 !important;
    margin:2px 0 6px !important;
    padding:0 !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
    min-height:48px !important;
}
#c_static_001-1753418903463 .cbox-6-0 > p:nth-child(2) a,
#c_static_001-1753418903463 .cbox-7-0 > p:nth-child(2) a,
#c_static_001-1753418903463 .cbox-8-0 > p:nth-child(2) a,
#c_static_001-1753418903463 .cbox-22-0 > p:nth-child(2) a{
    color:inherit !important;
    text-decoration:none !important;
}

/* slogan (third <p>) - gray small */
#c_static_001-1753418903463 .cbox-6-0 > p:nth-child(3),
#c_static_001-1753418903463 .cbox-7-0 > p:nth-child(3),
#c_static_001-1753418903463 .cbox-8-0 > p:nth-child(3),
#c_static_001-1753418903463 .cbox-22-0 > p:nth-child(3){
    font-size:14px !important;
    font-weight:400 !important;
    line-height:1.5 !important;
    color:#888 !important;
    margin:0 !important;
    padding:0 !important;
}

/* image column */
#c_static_001-1753418903463 .cbox-6-1,
#c_static_001-1753418903463 .cbox-7-1,
#c_static_001-1753418903463 .cbox-8-1,
#c_static_001-1753418903463 .cbox-22-1{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:0 !important;
    margin:0 !important;
    min-width:0 !important;
    height:100% !important;
}
#c_static_001-1753418903463 .cbox-6-1 img,
#c_static_001-1753418903463 .cbox-7-1 img,
#c_static_001-1753418903463 .cbox-8-1 img,
#c_static_001-1753418903463 .cbox-22-1 img{
    max-width:100% !important;
    max-height:240px !important;
    width:auto !important;
    height:auto !important;
    object-fit:contain !important;
    display:block !important;
    margin:0 auto !important;
}

/* mobile */
@media(max-width:768px){
    #c_static_001-1753418903463 .e_container-6,
    #c_static_001-1753418903463 .e_container-7,
    #c_static_001-1753418903463 .e_container-8,
    #c_static_001-1753418903463 .e_container-22{
        padding:24px 20px !important;
        min-height:220px !important;
        column-gap:16px !important;
    }
    #c_static_001-1753418903463 .cbox-6-0 > p:nth-child(1),
    #c_static_001-1753418903463 .cbox-7-0 > p:nth-child(1),
    #c_static_001-1753418903463 .cbox-8-0 > p:nth-child(1),
    #c_static_001-1753418903463 .cbox-22-0 > p:nth-child(1){
        font-size:18px !important;
    }
    #c_static_001-1753418903463 .cbox-6-0 > p:nth-child(2),
    #c_static_001-1753418903463 .cbox-7-0 > p:nth-child(2),
    #c_static_001-1753418903463 .cbox-8-0 > p:nth-child(2),
    #c_static_001-1753418903463 .cbox-22-0 > p:nth-child(2){
        font-size:14px !important;
        min-height:40px !important;
    }
    #c_static_001-1753418903463 .cbox-6-1 img,
    #c_static_001-1753418903463 .cbox-7-1 img,
    #c_static_001-1753418903463 .cbox-8-1 img,
    #c_static_001-1753418903463 .cbox-22-1 img{
        max-height:140px !important;
    }
}

/* =========================================================================
   7. HOMEPAGE PRODUCT CARDS - inter-card separation (r25y24n)
   r25y24m wiped the page-builder native card margin when it normalized
   inner containers. This section guarantees a clean 24px gap between all
   4 cards regardless of what the page builder emits, and ensures the
   grid cells do not accidentally add their own padding/margin that would
   shrink the cards.
   ========================================================================= */
#c_static_001-1753418903463 .e_container-2{
    display:grid !important;
    grid-template-columns:7fr 5fr !important;
    column-gap:24px !important;
    row-gap:0 !important;
    align-items:stretch !important;
}
/* row 2 flips the ratio (5fr 7fr) + adds vertical gap between rows */
#c_static_001-1753418903463 .e_container-3{
    display:grid !important;
    grid-template-columns:5fr 7fr !important;
    column-gap:24px !important;
    row-gap:0 !important;
    align-items:stretch !important;
    margin-top:24px !important;
}

/* keep the cells themselves neutral - no padding/margin wrapping each card */
#c_static_001-1753418903463 .cbox-2-0,
#c_static_001-1753418903463 .cbox-2-1,
#c_static_001-1753418903463 .cbox-3-0,
#c_static_001-1753418903463 .cbox-3-1{
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:stretch !important;
    width:auto !important;
}
/* ensure outer wrapper + row-of-rows container do not re-collapse spacing */
#c_static_001-1753418903463 .e_container-4,
#c_static_001-1753418903463 .cbox-4-0{
    display:block !important;
}
@media (max-width:768px){
    #c_static_001-1753418903463 .e_container-2,
    #c_static_001-1753418903463 .e_container-3{
        grid-template-columns:minmax(0,1fr) !important;
        row-gap:16px !important;
    }
    #c_static_001-1753418903463 .e_container-3{
        margin-top:16px !important;
    }
}

/* =========================================================================
   8. HOMEPAGE PRODUCT CARDS - bento row-height differentiation (r25y24o)
   Row 1 (AlphaScan + AlphaVista) keeps 320px baseline;
   Row 2 (V-Track + AlphaAutoScan-400) grows to 360px - bigger industrial
   products earn more vertical weight for the bento feel.
   ========================================================================= */
#c_static_001-1753418903463 .e_container-6,
#c_static_001-1753418903463 .e_container-7{
    min-height:320px !important;
}
#c_static_001-1753418903463 .e_container-8,
#c_static_001-1753418903463 .e_container-22{
    min-height:360px !important;
}
@media (max-width:768px){
    #c_static_001-1753418903463 .e_container-6,
    #c_static_001-1753418903463 .e_container-7,
    #c_static_001-1753418903463 .e_container-8,
    #c_static_001-1753418903463 .e_container-22{
        min-height:260px !important;
    }
}

/* =========================================================================
   9. HOMEPAGE PRODUCT CARDS - compact + clickable + single-line (r25y24p)
   Overrides Sections 6/7/8 to:
     - shrink padding 40->20, min-height 320/360->220/260
     - widen text column 1:1 -> 1.5:1, smaller font for narrow cards
     - single-line desc/slogan via nowrap + ellipsis
     - whole card clickable via ::after overlay on existing <a>
     - hover lift 3px for affordance
   ========================================================================= */

/* compact padding + wider text column + relative anchor for ::after overlay */
#c_static_001-1753418903463 .e_container-6,
#c_static_001-1753418903463 .e_container-7,
#c_static_001-1753418903463 .e_container-8,
#c_static_001-1753418903463 .e_container-22{
    padding:20px 28px !important;
    grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) !important;
    position:relative !important;
    cursor:pointer !important;
    transition:transform .25s ease, box-shadow .25s ease !important;
}

/* tighter min-heights (override Section 8) */
#c_static_001-1753418903463 .e_container-6,
#c_static_001-1753418903463 .e_container-7{
    min-height:220px !important;
}
#c_static_001-1753418903463 .e_container-8,
#c_static_001-1753418903463 .e_container-22{
    min-height:260px !important;
}

/* smaller product image */
#c_static_001-1753418903463 .cbox-6-1 img,
#c_static_001-1753418903463 .cbox-7-1 img,
#c_static_001-1753418903463 .cbox-8-1 img,
#c_static_001-1753418903463 .cbox-22-1 img{
    max-height:170px !important;
}

/* hover lift */
#c_static_001-1753418903463 .e_container-6:hover,
#c_static_001-1753418903463 .e_container-7:hover,
#c_static_001-1753418903463 .e_container-8:hover,
#c_static_001-1753418903463 .e_container-22:hover{
    transform:translateY(-3px) !important;
    box-shadow:0 8px 20px rgba(0,0,0,.10) !important;
}

/* single-line desc + slogan (nowrap + ellipsis safety net) */
#c_static_001-1753418903463 .cbox-6-0 p,
#c_static_001-1753418903463 .cbox-7-0 p,
#c_static_001-1753418903463 .cbox-8-0 p,
#c_static_001-1753418903463 .cbox-22-0 p{
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    -webkit-line-clamp:unset !important;
    min-height:0 !important;
}

/* desc font tuning */
#c_static_001-1753418903463 .cbox-6-0 > p:nth-child(2),
#c_static_001-1753418903463 .cbox-7-0 > p:nth-child(2),
#c_static_001-1753418903463 .cbox-8-0 > p:nth-child(2),
#c_static_001-1753418903463 .cbox-22-0 > p:nth-child(2){
    font-size:15px !important;
    margin-top:4px !important;
}

/* slogan font tuning (muted gray, smaller) */
#c_static_001-1753418903463 .cbox-6-0 > p:nth-child(3),
#c_static_001-1753418903463 .cbox-7-0 > p:nth-child(3),
#c_static_001-1753418903463 .cbox-8-0 > p:nth-child(3),
#c_static_001-1753418903463 .cbox-22-0 > p:nth-child(3){
    font-size:13px !important;
    color:#888 !important;
    margin-top:10px !important;
}

/* whole card clickable - existing <a> (wraps image) gets stretched ::after */
#c_static_001-1753418903463 .e_container-6 a,
#c_static_001-1753418903463 .e_container-7 a,
#c_static_001-1753418903463 .e_container-8 a,
#c_static_001-1753418903463 .e_container-22 a{
    position:static !important;
}
#c_static_001-1753418903463 .e_container-6 a::after,
#c_static_001-1753418903463 .e_container-7 a::after,
#c_static_001-1753418903463 .e_container-8 a::after,
#c_static_001-1753418903463 .e_container-22 a::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
}

/* mobile: single column, smaller everything */
@media (max-width:768px){
    #c_static_001-1753418903463 .e_container-6,
    #c_static_001-1753418903463 .e_container-7,
    #c_static_001-1753418903463 .e_container-8,
    #c_static_001-1753418903463 .e_container-22{
        padding:16px 20px !important;
        min-height:180px !important;
        grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) !important;
    }
    #c_static_001-1753418903463 .cbox-6-1 img,
    #c_static_001-1753418903463 .cbox-7-1 img,
    #c_static_001-1753418903463 .cbox-8-1 img,
    #c_static_001-1753418903463 .cbox-22-1 img{
        max-height:120px !important;
    }
}

/* =========================================================================
   10. HOMEPAGE PRODUCT CARDS - bigger images + one motion only (r25y24q)
     - image max-height: row 1 -> 190px, row 2 -> 230px (was 170px uniform)
     - freeze image hover: only the card moves, image stays put
   ========================================================================= */

/* row 1 images (AlphaScan, AlphaVista) */
#c_static_001-1753418903463 .cbox-6-1 img,
#c_static_001-1753418903463 .cbox-7-1 img{
    max-height:190px !important;
}
/* row 2 images (V-Track, AlphaAutoScan-400) - bigger to match taller cards */
#c_static_001-1753418903463 .cbox-8-1 img,
#c_static_001-1753418903463 .cbox-22-1 img{
    max-height:230px !important;
}

/* freeze all img transforms inside these cards: card is the one that moves */
#c_static_001-1753418903463 .e_container-6 img,
#c_static_001-1753418903463 .e_container-7 img,
#c_static_001-1753418903463 .e_container-8 img,
#c_static_001-1753418903463 .e_container-22 img{
    transition:none !important;
    transform:none !important;
}
#c_static_001-1753418903463 .e_container-6:hover img,
#c_static_001-1753418903463 .e_container-7:hover img,
#c_static_001-1753418903463 .e_container-8:hover img,
#c_static_001-1753418903463 .e_container-22:hover img,
#c_static_001-1753418903463 .e_container-6 a:hover img,
#c_static_001-1753418903463 .e_container-7 a:hover img,
#c_static_001-1753418903463 .e_container-8 a:hover img,
#c_static_001-1753418903463 .e_container-22 a:hover img,
#c_static_001-1753418903463 .e_container-6 .p_img:hover img,
#c_static_001-1753418903463 .e_container-7 .p_img:hover img,
#c_static_001-1753418903463 .e_container-8 .p_img:hover img,
#c_static_001-1753418903463 .e_container-22 .p_img:hover img{
    transform:none !important;
    scale:1 !important;
    filter:none !important;
}

/* mobile: keep image visible but not huge */
@media (max-width:768px){
    #c_static_001-1753418903463 .cbox-6-1 img,
    #c_static_001-1753418903463 .cbox-7-1 img,
    #c_static_001-1753418903463 .cbox-8-1 img,
    #c_static_001-1753418903463 .cbox-22-1 img{
        max-height:140px !important;
    }
}

/* =========================================================================
   11. HOMEPAGE PRODUCT CARDS - softer ratio + thorough image freeze (r25y24r)
     - ratio: row 1 6fr 5fr / row 2 5fr 6fr (softer than 7/5)
     - image: freeze img + any wrapper (.p_img / [class*=e_image]) so ONLY
       the card translateY(-3px) runs on hover - nothing inside shifts.
     - 'View more products' link: center-align.
   ========================================================================= */

/* softer zigzag */
#c_static_001-1753418903463 .e_container-2{
    grid-template-columns:6fr 5fr !important;
}
#c_static_001-1753418903463 .e_container-3{
    grid-template-columns:5fr 6fr !important;
}

/* thorough image freeze: cover img + wrappers + all hover/focus combinations */
#c_static_001-1753418903463 .e_container-6 img,
#c_static_001-1753418903463 .e_container-7 img,
#c_static_001-1753418903463 .e_container-8 img,
#c_static_001-1753418903463 .e_container-22 img,
#c_static_001-1753418903463 .e_container-6 .p_img,
#c_static_001-1753418903463 .e_container-7 .p_img,
#c_static_001-1753418903463 .e_container-8 .p_img,
#c_static_001-1753418903463 .e_container-22 .p_img,
#c_static_001-1753418903463 .e_container-6 [class*="e_image"],
#c_static_001-1753418903463 .e_container-7 [class*="e_image"],
#c_static_001-1753418903463 .e_container-8 [class*="e_image"],
#c_static_001-1753418903463 .e_container-22 [class*="e_image"],
#c_static_001-1753418903463 .e_container-6 .cbox-6-1,
#c_static_001-1753418903463 .e_container-7 .cbox-7-1,
#c_static_001-1753418903463 .e_container-8 .cbox-8-1,
#c_static_001-1753418903463 .e_container-22 .cbox-22-1{
    transform:none !important;
    transition:none !important;
    animation:none !important;
    scale:1 !important;
    filter:none !important;
}
/* all hover variants that might still apply a transform to the image */
#c_static_001-1753418903463 .e_container-6:hover img,
#c_static_001-1753418903463 .e_container-7:hover img,
#c_static_001-1753418903463 .e_container-8:hover img,
#c_static_001-1753418903463 .e_container-22:hover img,
#c_static_001-1753418903463 .e_container-6 a:hover img,
#c_static_001-1753418903463 .e_container-7 a:hover img,
#c_static_001-1753418903463 .e_container-8 a:hover img,
#c_static_001-1753418903463 .e_container-22 a:hover img,
#c_static_001-1753418903463 .e_container-6 .p_img:hover img,
#c_static_001-1753418903463 .e_container-7 .p_img:hover img,
#c_static_001-1753418903463 .e_container-8 .p_img:hover img,
#c_static_001-1753418903463 .e_container-22 .p_img:hover img,
#c_static_001-1753418903463 .e_container-6 [class*="e_image"]:hover img,
#c_static_001-1753418903463 .e_container-7 [class*="e_image"]:hover img,
#c_static_001-1753418903463 .e_container-8 [class*="e_image"]:hover img,
#c_static_001-1753418903463 .e_container-22 [class*="e_image"]:hover img,
#c_static_001-1753418903463 .e_container-6:hover .p_img,
#c_static_001-1753418903463 .e_container-7:hover .p_img,
#c_static_001-1753418903463 .e_container-8:hover .p_img,
#c_static_001-1753418903463 .e_container-22:hover .p_img{
    transform:none !important;
    scale:1 !important;
    filter:none !important;
    opacity:1 !important;
}

/* 'View more products' link: center-align below the 4 cards */
#c_static_001-1753418903463 .insv-home-products__more,
#c_static_001-1753418903463 .home-products-more,
#c_static_001-1753418903463 a[href$="/products/"]{
    display:block !important;
    margin-left:auto !important;
    margin-right:auto !important;
    text-align:center !important;
    margin-top:32px !important;
}
/* if it is wrapped in a div, center that wrapper too */
#c_static_001-1753418903463 .insv-more-wrap,
#c_static_001-1753418903463 .home-products__footer,
#c_static_001-1753418903463 .e_container-4 > p,
#c_static_001-1753418903463 .e_container-4 > div:last-child{
    text-align:center !important;
}

/* =========================================================================
   12. HOMEPAGE 'View more products' BUTTON - center via real parent (r25y24s)
     r25y24r put rules on the <a> itself, but the button's real parent is
     .cbox-4-0 > .e_container-39 > .cbox-39-0 > a.e_button-41 .
     If .e_container-39 is flex with default justify-content, margin:auto on
     the <a> won't center it. Force the parent to flex+center so the button
     always sits dead-center below the 4 cards.
   ========================================================================= */
#c_static_001-1753418903463 .e_container-39{
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    margin-top:32px !important;
}
#c_static_001-1753418903463 .cbox-39-0{
    margin:0 auto !important;
    text-align:center !important;
}
#c_static_001-1753418903463 .e_container-39 .e_button-41,
#c_static_001-1753418903463 .cbox-39-0 .e_button-41{
    margin-left:auto !important;
    margin-right:auto !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
}
/* also make sure the outer row wrapper is not pushing it left */
#c_static_001-1753418903463 .cbox-4-0{
    text-align:center !important;
}

/* =========================================================================
   13. HOMEPAGE PRODUCT CARDS - uniform height + top breathing room (r25y24t)
     - row 2 min-height 260 -> 220 to match row 1
     - row 2 image max-height 230 -> 190 to match row 1
     - add 48px margin-top above row 1 so the section subtitle has air
     - keep the 6:5 / 5:6 WIDTH zigzag intact (that's the bento feel now)
   ========================================================================= */

/* unify row heights - both rows 220px */
#c_static_001-1753418903463 .e_container-8,
#c_static_001-1753418903463 .e_container-22{
    min-height:220px !important;
}
/* unify image heights - both rows 190px max */
#c_static_001-1753418903463 .cbox-8-1 img,
#c_static_001-1753418903463 .cbox-22-1 img{
    max-height:190px !important;
}

/* breathing room above the first card row */
#c_static_001-1753418903463 .e_container-2{
    margin-top:48px !important;
}
/* safety net: if the subtitle/heading wrapper is cbox-1-0 / e_container-1, give it bottom space */
#c_static_001-1753418903463 .cbox-1-0,
#c_static_001-1753418903463 .e_container-1{
    margin-bottom:24px !important;
}

@media (max-width:768px){
    #c_static_001-1753418903463 .e_container-2{
        margin-top:32px !important;
    }
    #c_static_001-1753418903463 .e_container-8,
    #c_static_001-1753418903463 .e_container-22{
        min-height:180px !important;
    }
    #c_static_001-1753418903463 .cbox-8-1 img,
    #c_static_001-1753418903463 .cbox-22-1 img{
        max-height:140px !important;
    }
}

/* =========================================================================
   14. HIDE DUPLICATE 'SERVICE SUPPORT' TEXT LISTS ON PRODUCT PAGES (r25y24ae)
     Each product page (.parent-pageid-1360) carries:
       (A) c_new_list_195-17557649474550  text-only 3-col list  (DUPLICATE â hide)
       (B) c_new_list_195-17603494413530  text-only 3-col list  (DUPLICATE â hide)
       (C) c_static_001-17587679971040    icon-based 3-col CTA  (KEEPER â visible)
     IDs confirmed from live DOM of /en/products/alphascan/ â r25y24ad audit.
     Scoped to .parent-pageid-1360; About page (page-id-1358) unaffected.
   ========================================================================= */
body.parent-pageid-1360 #c_new_list_195-17557649474550,
body.parent-pageid-1360 #c_new_list_195-17603494413530 {
    display: none !important;
}

/* ===== Section 15: Video layout fix (r25y24am) =====
   c_static_001-1755164981293: video was squashed in too-narrow column.
   Fix: 60/40 split, 16:9 aspect ratio container.
*/
#c_static_001-1755164981293 .e_container-1.s_layout {
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 20px;
}
#c_static_001-1755164981293 .cbox-1-0.p_item {
    flex: 0 0 58% !important;
    width: 58% !important;
    min-width: 260px;
}
#c_static_001-1755164981293 .cbox-1-1.p_item {
    flex: 1 1 36% !important;
    min-width: 200px;
}
#c_static_001-1755164981293 .p_video {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}
#c_static_001-1755164981293 .p_video video,
#c_static_001-1755164981293 .p_video .cover {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#c_static_001-1755164981293 .p_video .coverImage,
#c_static_001-1755164981293 .p_video .coverImage img {
    width: 100%;
    height: 100%;
}
#c_static_001-1755164981293 .p_video .coverImage img {
    display: block;
    object-fit: cover;
}

/* ===== INSV-VIDEO-COVER-UNIFY (r25y24ea-vcover) BEGIN ===== */
#c_static_001-1755164981293 .p_video {
    background: #14181f;
    overflow: hidden;
}
#c_static_001-1755164981293 .p_video .cover {
    display: block;
    cursor: pointer;
}
#c_static_001-1755164981293 .p_video .coverImage {
    position: absolute;
    inset: 0;
    overflow: hidden;
    background: linear-gradient(180deg, #2a2f37 0%, #12151a 100%);
}
#c_static_001-1755164981293 .p_video .coverImage::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(7,10,14,.30) 0%, rgba(8,10,14,.62) 100%);
    pointer-events: none;
}
#c_static_001-1755164981293 .p_video .coverImage img {
    filter: saturate(90%) brightness(60%);
    transform: scale(1.01);
}
#c_static_001-1755164981293 .p_video .playBtn {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 3;
    width: 70px;
    height: 70px;
    object-fit: contain;
}
/* ===== INSV-VIDEO-COVER-UNIFY (r25y24ea-vcover) END ===== */

@media screen and (max-width: 768px) {
    #c_static_001-1755164981293 .cbox-1-0.p_item,
    #c_static_001-1755164981293 .cbox-1-1.p_item {
        flex: 0 0 100% !important;
        width: 100% !important;
    }
}

/* ===== Section 16: News card style â product page (r25y24am) =====
   c_new_list_146-17709658125640: date+title list -> card grid matching homepage style.
*/
body.parent-pageid-1360 #c_new_list_146-17709658125640 .p_list {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}
body.parent-pageid-1360 #c_new_list_146-17709658125640 .cbox-1.p_loopitem {
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06);
    padding: 20px 24px;
    transition: box-shadow 0.25s;
}
body.parent-pageid-1360 #c_new_list_146-17709658125640 .cbox-1.p_loopitem:hover {
    box-shadow: 0 6px 24px rgba(0,0,0,0.12);
}
body.parent-pageid-1360 #c_new_list_146-17709658125640 .e_container-2.s_layout {
    display: flex !important;
    flex-direction: column;
    gap: 8px;
}
body.parent-pageid-1360 #c_new_list_146-17709658125640 .e_timeFormat-3 {
    font-size: 13px !important;
    color: #999 !important;
    margin: 0 !important;
}
body.parent-pageid-1360 #c_new_list_146-17709658125640 .e_text-4 {
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 1.5 !important;
    color: #1a1a2e !important;
    margin: 0 !important;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
body.parent-pageid-1360 #c_new_list_146-17709658125640 .e_text-4 a {
    color: inherit !important;
    text-decoration: none !important;
}
body.parent-pageid-1360 #c_new_list_146-17709658125640 .e_text-4 a:hover {
    color: #0069a6 !important;
}
@media screen and (max-width: 1024px) {
    body.parent-pageid-1360 #c_new_list_146-17709658125640 .p_list {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media screen and (max-width: 640px) {
    body.parent-pageid-1360 #c_new_list_146-17709658125640 .p_list {
        grid-template-columns: 1fr;
    }
}

/* ===== Section 18: More Products â Product Centre card style (r25y24ar) =====
   Change c_static_001_P_62233 "More Products" cards to match product listing style.
   4 cards in one compact row, image + name only (no description), clean border style.
*/
[id*="c_static_001_P_62233"] .e_loop-1 .p_list {
    display: flex !important;
    flex-wrap: nowrap;
    gap: 16px;
    justify-content: center;
}
[id*="c_static_001_P_62233"] .cbox-1.p_loopitem {
    flex: 1 1 0;
    min-width: 0;
    max-width: 220px;
    background: #fff;
    border: 1px solid #e8e8e8;
    border-radius: 8px;
    overflow: hidden;
    transition: box-shadow 0.25s, border-color 0.25s;
}
[id*="c_static_001_P_62233"] .cbox-1.p_loopitem:hover {
    box-shadow: 0 4px 16px rgba(0,0,0,0.1);
    border-color: #0069a6;
}
[id*="c_static_001_P_62233"] .e_container-2.s_layout {
    display: block !important;
}
[id*="c_static_001_P_62233"] .cbox-2-0.p_item {
    display: block;
}
[id*="c_static_001_P_62233"] .e_image-4.s_img {
    display: block;
    width: 100%;
    aspect-ratio: 4/3;
    overflow: hidden;
    background: #f5f5f5;
}
[id*="c_static_001_P_62233"] .e_image-4.s_img a {
    display: block;
    width: 100%;
    height: 100%;
}
[id*="c_static_001_P_62233"] .e_image-4.s_img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 12px;
    display: block;
    transition: transform 0.3s ease;
}
[id*="c_static_001_P_62233"] .cbox-1.p_loopitem:hover .e_image-4.s_img img {
    transform: scale(1.05);
}
[id*="c_static_001_P_62233"] .e_text-3.s_title {
    padding: 10px 12px 4px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #1a1a2e !important;
    line-height: 1.4 !important;
    margin: 0 !important;
}
[id*="c_static_001_P_62233"] .e_text-3.s_title a {
    color: inherit !important;
    text-decoration: none !important;
}
[id*="c_static_001_P_62233"] .e_text-3.s_title a:hover {
    color: #0069a6 !important;
}
/* Hide the long description text â keep compact */
[id*="c_static_001_P_62233"] .e_text-12.s_title {
    display: none !important;
}
@media screen and (max-width: 900px) {
    [id*="c_static_001_P_62233"] .e_loop-1 .p_list {
        flex-wrap: wrap;
    }
    [id*="c_static_001_P_62233"] .cbox-1.p_loopitem {
        flex: 0 0 calc(50% - 8px);
        max-width: calc(50% - 8px);
    }
}

/* ===== r25y24at (narrowed by r25y24dh 2026-04-22): pre-footer CTA scoping =====
   ORIGINAL r25y24at hid BOTH c_static_001-17587680110510 AND
   c_static_001-17587679971040 globally on the theory they were 'blank
   service-support sections'. They are NOT blank; they are the
   pre-footer 3-card CTA strip (Book a demo / Service Network / Partner
   Support). Blanket hiding killed the pre-footer on every product detail
   page.

   GROUND TRUTH (verified against production
   https://www.insvision3d.com/products_details.html on 2026-04-22):
     - c_static_001-17587679971040 ("Consult & Live Demo" / icon+text,
       matches the UNIFIED 3-card style from homepage) SHOULD render.
       It's fully styled at lines 542-773 of this file; keep visible.
     - c_static_001-17587680110510 ("Book a demo: +86-571-...", plain
       3-column grid, no icons) duplicates the unified one. Scoped-hide
       it ONLY on product detail pages (body.parent-pageid-1360) to
       prevent the duplicate rendering alongside the unified variant.

   IF YOU TOUCH THIS RULE:
     Open BOTH http://47.239.70.125/products/alphascan/ AND
     http://47.239.70.125/en/products/alphascan/ first. Confirm the
     3-card pre-footer still renders. Do NOT re-broaden this hide.
*/
body.parent-pageid-1360 #c_static_001-17587680110510 {
    display: none !important;
}


/* ===== Section 20 (v1, r25y24by): reshape scanner background =====
   The scanner is .e_container-7's background-image (not an <img>). It was
   background-size:cover + position 50% 50% â scanner filled the entire
   container, overlapping the logo. Anchor it to bottom, shrink it, animate
   it upward as user scrolls for a clear parallax effect. */
#c_static_1112-1755758652960 .e_container-7 {
    background-size: auto 78% !important;
    background-position: center calc(100% - var(--insv-p-feat, 0) * 18%) !important;
    background-repeat: no-repeat !important;
    padding-top: 40px !important;
    min-height: 780px !important;
    transition: none;
    will-change: background-position;
}
/* === end Section 20 === */

/* ===== Section 21 (v14, r25y24by): logo pinned top + cards entrance =====
   Pin .cbox-7-0 to the top of its flex column (was centered in 620px forced
   height), so the 46px logo sits directly under the title, not vertically
   centered over the scanner. Unset forced height. */
:root {
    --insv-p-hero: 0;
    --insv-p-feat: 0;
    --insv-p-loop: 0;
}
#c_static_1112-1755758652960 .e_container-7 .cbox-7-0 {
    align-self: flex-start !important;
    height: auto !important;
    min-height: 0 !important;
    padding-top: 0 !important;
    margin: 0 !important;
    transform: translateY(calc((1 - var(--insv-p-feat, 0)) * 60px));
    opacity: var(--insv-p-feat, 0);
    transition: none;
    will-change: transform, opacity;
}
#c_static_1112-1755758652960 .cbox-30-0 {
    transform: translateY(calc((1 - var(--insv-p-feat, 0)) * 140px)) scale(calc(0.8 + var(--insv-p-feat, 0) * 0.2));
    opacity: var(--insv-p-feat, 0);
    transition: none;
    will-change: transform, opacity;
}
/* === end Section 21 === */

/* ===== Section 22 (v8, r25y24by): scanner loop (section 11) ===== */
#c_static_001_P_62233-1756893505503 .cbox-1.p_loopitem .e_image-4 {
    transform: translateY(calc((1 - var(--insv-p-loop, 0)) * 100px)) scale(calc(0.7 + var(--insv-p-loop, 0) * 0.3));
    opacity: var(--insv-p-loop, 0);
    transition: none;
    will-change: transform, opacity;
}
/* === end Section 22 === */

/* ===== Section 23 (v3, r25y24by): hero swiper subtle parallax ===== */
#c_product_detail_003_P_470-1755158142448 .e_imageList-106 {
    transform: translateY(calc(var(--insv-p-hero, 0) * -20px)) scale(calc(1 + var(--insv-p-hero, 0) * 0.04));
    transition: none;
    will-change: transform;
}
/* === end Section 23 === */


/* ===== Section 24 (v4, r25y24cb): tighten section 5 top + center title =====
   Keep the horizontal `margin: auto` intact so the title block stays
   centered. Only zero out VERTICAL margins/paddings. Also text-align:center
   on the title itself so the text is centered within its block. */
#c_static_1112-1755758652960 {
    padding-top: 0 !important;
    padding-bottom: 60px;
    margin-top: -40px !important;
}
#c_static_1112-1755758652960 .e_container-5 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
#c_static_1112-1755758652960 .cbox-5-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
#c_static_1112-1755758652960 .e_text-3.s_title {
    text-align: center !important;
}
/* Tighten the big 100px gap the CMS puts between title and scanner
   container, but keep some breathing room. */
#c_static_1112-1755758652960 .e_container-7 {
    margin-top: 40px !important;
}
/* === end Section 24 === */

/* ===== Section 19 (v10, r25y24cc): title reveal animation =====
   Tie CMS's --c variable to our scroll progress: --c goes from 100%
   (fully clipped) at p-feat=0 to 0% (fully revealed) at p-feat=1. This
   restores the prod-like "letters reveal leftâright as user scrolls in"
   animation that the CMS reveal JS was supposed to drive. */
#c_static_1112-1755758652960 .e_text-3.s_title {
    --c: calc((1 - var(--insv-p-feat, 0)) * 100%) !important;
    clip-path: inset(0 var(--c) 0 0) !important;
    -webkit-clip-path: inset(0 var(--c) 0 0) !important;
    color: #1f2937 !important;
    font-weight: 600 !important;
    margin: 0 !important;
    padding: 8px 0 !important;
    visibility: visible !important;
}
#c_static_1112-1755758652960 .e_text-6.s_title {
    display: none !important;
}
/* === end Section 19 === */

/* ===== Section 25 (v1, r25y24cc): force-visible Zion reveal classes =====
   CMS sets .response-transition / .s_layout / .s_title / nested figures
   to `visibility: hidden` by default, expecting intersection-observer
   reveal JS to flip them. That JS isn't firing reliably on this page,
   leaving whole sections invisible (tech specs table, scanner callouts,
   etc.). Force visible. Individual pieces that DO need animation get
   it via CSS-variable-driven transform/opacity, not visibility. */
.response-transition,
.s_layout,
.s_title,
.s_richText,
[class*="response-transition"],
#c_static_001-1758775637103 *,
#c_static_001-1758775637103 figure,
#c_static_001-1758775637103 table,
#c_static_001-1758775637103 tr,
#c_static_001-1758775637103 th,
#c_static_001-1758775637103 td,
#c_static_001-1758775637103 .e_container-2,
#c_static_001-1758775637103 .cbox-2-0,
#c_static_001-1758775637103 .e_container-3,
#c_static_001-1758775637103 .cbox-3-0,
#c_static_001-1758775637103 .e_text-4,
#c_static_001-1758775637103 .e_richText-1 {
    visibility: visible !important;
}
/* Keep our deliberately-animated elements (which use their own opacity
   transitions tied to scroll progress) â they use opacity/transform not
   visibility, so the rule above doesn't collide. */
/* === end Section 25 === */


/* ===== Section 27 (v1, r25y24ce): show scanner callouts (bg image) =====
   The .e_container-18 inside c_static_1112 uses background-size: cover on a
   1920x700 source inside a 1360x700 box â which crops the side callouts
   (26/50 æ..., 7 æ..., 1 æ..., åå±LEDè®¾è®¡).

   Two-pronged fix:
   1. Let the container break out of its parent's 1360 content width to fill
      the viewport (up to 1920px), so there's room for the full image.
   2. Switch to background-size: contain so if viewport is narrower than
      1920, the image scales down proportionally instead of cropping.

   The åå±LED callout is in the lower-left, the 1 æ callout is in the
   right side â both cropped at 1360 width. */
#c_static_1112-1755758652960 .e_container-18 {
    width: 100vw !important;
    max-width: 1920px !important;
    margin-left: calc((100% - min(100vw, 1920px)) / 2) !important;
    margin-right: calc((100% - min(100vw, 1920px)) / 2) !important;
    background-size: contain !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    padding: 0 !important;
    height: auto !important;
    aspect-ratio: 1920 / 700 !important;
    min-height: 0 !important;
}
#c_static_1112-1755758652960 .e_container-18 .cbox-18-0 {
    width: 100% !important;
    height: 100% !important;
}
/* === end Section 27 === */

/* ===== Section 28 (v1, r25y24cf): remove scanner container clip-path =====
   Zion reveal JS leaves .e_container-18 (which holds the scanner-with-callouts
   illustration as a background-image) with a clip-path of
   `polygon(40% 0%, 90% 0%, 90% 100%, 40% 100%)` â clipping away the left
   40% where the 26/50, 7æ, åå±LED labels live.

   Force clip-path: none and also kill any related reveal transform / opacity
   so the full 1920Ã700 illustration is always fully visible. */
#c_static_1112-1755758652960 .e_container-18,
#c_static_1112-1755758652960 .e_container-18 * {
    clip-path: none !important;
    -webkit-clip-path: none !important;
}
#c_static_1112-1755758652960 .e_container-18 {
    mask: none !important;
    -webkit-mask: none !important;
    opacity: 1 !important;
}
/* === end Section 28 === */


/* ===== Section 30 (v2, r25y24cj): EN variant of scanner-with-callouts =====
   The scanner-with-callouts illustration lives as a background-image on
   `.e_container-18` (1920Ã700 strip inside #c_static_1112), NOT
   .e_container-7 (which holds the clean small scanner + title).
   Swap CN a8164cae -> EN eab81556 when the document language is English. */
html[lang="en"] #c_static_1112-1755758652960 .e_container-18 {
    background-image: url(/wp-content/themes/teke/images/eab81556-2db2-4ab4-bcfc-c3cf02a11e61.jpg) !important;
}
/* === end Section 30 === */


/* ===== Section 29 (v6, r25y24cp): product-family lineup + CTA card =====
   Single horizontal row of the scanning product family (4 scanners)
   + 1 CTA card linking to /{lang}/products/. Projector is filtered
   out in the partial. On the current product's own detail page the
   matching card gets a `--current` modifier + a small badge so the
   user doesn't mis-read it as duplication. Column count driven by
   inline --insv-related-cols. Overrides scoped to
   .insv-related-products__grid. */
.insv-related-products {
    padding: 64px 24px 72px;
    background: #f7f9fc;
}
.insv-related-products__inner {
    max-width: 1400px;
    margin: 0 auto;
}
.insv-related-products__heading {
    font-size: 28px;
    font-weight: 600;
    line-height: 1.4;
    color: #1a2340;
    margin: 0 0 28px;
    text-align: center;
}
.insv-related-products__grid {
    display: grid;
    grid-template-columns: repeat(var(--insv-related-cols, 5), 1fr);
    gap: 20px;
}
.insv-related-products__grid .insv-product-card__media { aspect-ratio: 4/3; position: relative; }
.insv-related-products__grid .insv-product-card__media img { padding: 14px; }
.insv-related-products__grid .insv-product-card__body { padding: 16px; }
.insv-related-products__grid .insv-product-card__title {
    font-size: 15px;
    line-height: 1.4;
    margin: 0 0 8px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: calc(2 * 1.4em);
}
.insv-related-products__grid .insv-product-card__desc {
    font-size: 12.5px;
    line-height: 1.6;
    margin: 0 0 14px;
    -webkit-line-clamp: 3;
}
.insv-related-products__grid .insv-product-card__actions { gap: 8px; }
.insv-related-products__grid .insv-product-card__btn {
    padding: 8px 6px;
    font-size: 12px;
    border-radius: 5px;
}

/* ---- Current-product marker (shown when card.slug == current page) ---- */
.insv-related-products__grid .insv-product-card--current {
    border-color: #183883;
    box-shadow: 0 4px 14px rgba(24,56,131,.08);
}
.insv-related-products__grid .insv-product-card__badge {
    position: absolute;
    top: 10px;
    left: 10px;
    background: #183883;
    color: #fff;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: .4px;
    padding: 3px 8px;
    border-radius: 3px;
    z-index: 1;
    line-height: 1.4;
}

/* ---- CTA card ("View all products") ---- */
.insv-related-products__grid .insv-product-card--cta {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
    background: linear-gradient(160deg, #eef3fc 0%, #f7f9fc 60%);
    border: 1px dashed #c1cde3;
    border-radius: 10px;
    overflow: hidden;
    transition: transform .24s, box-shadow .24s, border-color .24s, background .24s;
}
.insv-related-products__grid .insv-product-card--cta:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 32px rgba(24,56,131,.12);
    border-color: #183883;
    background: linear-gradient(160deg, #e5edfb 0%, #f0f4fa 60%);
}
.insv-related-products__grid .insv-product-card--cta__media {
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 4/3;
    background: transparent;
    color: #183883;
}
.insv-related-products__grid .insv-product-card--cta__media svg {
    opacity: .78;
    transition: transform .3s ease, opacity .24s;
}
.insv-related-products__grid .insv-product-card--cta:hover .insv-product-card--cta__media svg {
    transform: scale(1.08);
    opacity: 1;
}
.insv-related-products__grid .insv-product-card--cta__body {
    padding: 16px;
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
.insv-related-products__grid .insv-product-card--cta__label {
    font-size: 15px;
    font-weight: 600;
    color: #1a2340;
    line-height: 1.4;
    margin-bottom: 4px;
}
.insv-related-products__grid .insv-product-card--cta__sub {
    font-size: 12.5px;
    color: #5b6177;
    line-height: 1.5;
    margin-bottom: auto;
}
.insv-related-products__grid .insv-product-card--cta__arrow {
    font-size: 22px;
    color: #183883;
    font-weight: 600;
    line-height: 1;
    padding-top: 14px;
    align-self: flex-end;
    transition: transform .24s ease;
}
.insv-related-products__grid .insv-product-card--cta:hover .insv-product-card--cta__arrow {
    transform: translateX(4px);
}

/* breakpoint reflow */
@media (max-width: 1200px) {
    .insv-related-products__grid { grid-template-columns: repeat(min(var(--insv-related-cols, 5), 3), 1fr); }
}
@media (max-width: 900px) {
    .insv-related-products__grid { grid-template-columns: repeat(min(var(--insv-related-cols, 5), 2), 1fr); }
}
@media (max-width: 560px) {
    .insv-related-products { padding: 48px 16px; }
    .insv-related-products__heading { font-size: 22px; margin-bottom: 20px; }
    .insv-related-products__grid { grid-template-columns: 1fr; gap: 16px; }
}
/* === end Section 29 === */


/* ===== Section 31: fix global word-break:break-all regression (r25y24cq) ===== */
/* global.css sets `.reset_style, body { word-break: break-all }` which
   breaks long English words mid-letter (Schedule â Schedul e, etc.)
   and collapses narrow containers (Contact Us button) to 1 letter/line.
   Restore modern bilingual default: word-break:normal + overflow-wrap:break-word. */
body,
.reset_style,
.reset_style p,
.reset_style h1, .reset_style h2, .reset_style h3, .reset_style h4, .reset_style h5, .reset_style h6,
.reset_style a,
.reset_style span,
.reset_style li,
.reset_style div {
    word-break: normal !important;
    overflow-wrap: break-word !important;
    word-wrap: break-word !important;
}


/* ===== Section 32: trim scanner callout band whitespace (r25y24cr) ===== */
/* e_container-18 bg image is 1920x700 but useful content only fills top ~540px.
   Crop the container, anchor bg to top, reduce surrounding margin/padding. */
#c_static_1112-1755758652960 .e_container-18 {
    height: 540px !important;
    margin-top: 40px !important;
    background-size: 1920px 700px !important;
    background-position: center top !important;
    background-repeat: no-repeat !important;
    overflow: hidden !important;
}
#c_static_1112-1755758652960 .e_container-2 {
    padding-bottom: 20px !important;
}


/* ===== Section 33: MIGRATED to page-alphascan.css (r25y24dj-m33, 1776835394) ===== */


/* ==== r25y24cw START ==== */
/* Section 37 r25y24cw â consolidated audit fixes */

/* ---- 37.1 Floating side-tab: kill letter-per-line ---- */
.sidebar .suspend-item p,
.sidebar .suspend-item span,
.sidebar .suspend-item .text,
.sidebar p {
    writing-mode: horizontal-tb !important;
    word-break: keep-all !important;
    white-space: nowrap !important;
    transform: rotate(-90deg);
    transform-origin: center center;
    font-size: 13px !important;
    line-height: 1 !important;
    letter-spacing: 0.5px !important;
    width: auto !important;
}
.sidebar, .sidebar.sidebar_hide, .sidebar.sidebar_show {
    width: 56px !important;
    right: 14px !important;
    z-index: 9999 !important;
}
.sidebar .suspend-item {
    min-height: 96px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* ---- 37.2 Alpha-Projector narrow-card fix (2-col) ---- */
body.page-id-1365 #c_static_1112-1755758652960 .e_loop-31 .p_list,
body.page-id-22 #c_static_1112-1755758652960 .e_loop-31 .p_list {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    width: 100% !important;
}
body.page-id-1365 #c_static_1112-1755758652960 .e_loop-31 .cbox-31.p_loopitem,
body.page-id-1365 #c_static_1112-1755758652960 .e_loop-31 .e_container-35,
body.page-id-1365 #c_static_1112-1755758652960 .e_loop-31 .cbox-35-0.p_item,
body.page-id-22 #c_static_1112-1755758652960 .e_loop-31 .cbox-31.p_loopitem,
body.page-id-22 #c_static_1112-1755758652960 .e_loop-31 .e_container-35,
body.page-id-22 #c_static_1112-1755758652960 .e_loop-31 .cbox-35-0.p_item {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
}
body.page-id-1365 #c_static_1112-1755758652960 .e_loop-31 .cbox-35-0.p_item,
body.page-id-22 #c_static_1112-1755758652960 .e_loop-31 .cbox-35-0.p_item {
    padding: 14px 18px !important;
}
body.page-id-1365 #c_static_1112-1755758652960 .e_loop-31 .e_text-33,
body.page-id-1365 #c_static_1112-1755758652960 .e_loop-31 .e_text-34,
body.page-id-22 #c_static_1112-1755758652960 .e_loop-31 .e_text-33,
body.page-id-22 #c_static_1112-1755758652960 .e_loop-31 .e_text-34 {
    word-break: normal !important;
    overflow-wrap: break-word !important;
}

/* ---- 37.2b Alpha-Projector heading column guard (r26copy01) ---- */
@media screen and (min-width: 1025px) {
    body.page-id-1365 #c_static_1112-1755758652960 .e_container-5,
    body.page-id-22 #c_static_1112-1755758652960 .e_container-5 {
        width: min(580px, 44vw) !important;
        max-width: min(580px, 44vw) !important;
        margin-left: clamp(24px, 5vw, 66.5px) !important;
        margin-right: auto !important;
        align-self: flex-start !important;
    }
    body.page-id-1365 #c_static_1112-1755758652960 .e_container-5 .e_text-3,
    body.page-id-22 #c_static_1112-1755758652960 .e_container-5 .e_text-3 {
        width: min(580px, 44vw) !important;
        max-width: min(580px, 44vw) !important;
        text-align: left !important;
        line-height: 1.22 !important;
    }
}

/* ---- 37.3 EN /contact/ 3-col card row ---- */
body.page-id-1359 #c_static_001-17587681032280 .p_list,
body.page-id-1361 #c_static_001-17587681032280 .p_list {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 24px !important;
    width: min(1200px, 92%) !important;
    margin: 0 auto !important;
    padding: 32px 0 64px !important;
}
body.page-id-1359 #c_static_001-17587681032280 .cbox-2.p_loopitem,
body.page-id-1361 #c_static_001-17587681032280 .cbox-2.p_loopitem {
    width: 100% !important;
    background: #fff !important;
    border: 1px solid #e7edf3 !important;
    border-radius: 12px !important;
    padding: 24px 20px !important;
    box-shadow: 0 2px 12px rgba(0, 87, 160, 0.04) !important;
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
    min-height: 120px;
}
body.page-id-1359 #c_static_001-17587681032280 .cbox-2.p_loopitem:hover,
body.page-id-1361 #c_static_001-17587681032280 .cbox-2.p_loopitem:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 22px rgba(0, 87, 160, 0.12) !important;
    border-color: #0057a0 !important;
}
body.page-id-1359 #c_static_001-17587681032280 .e_container-3,
body.page-id-1361 #c_static_001-17587681032280 .e_container-3 {
    flex-direction: column !important;
    align-items: flex-start !important;
    width: 100% !important;
}
body.page-id-1359 #c_static_001-17587681032280 .cbox-3-1.p_item,
body.page-id-1361 #c_static_001-17587681032280 .cbox-3-1.p_item {
    width: 100% !important;
    padding: 0 !important;
}
body.page-id-1359 #c_static_001-17587681032280 .e_text-5.s_title,
body.page-id-1361 #c_static_001-17587681032280 .e_text-5.s_title {
    font-size: 17px !important;
    font-weight: 700 !important;
    color: #0b3b63 !important;
    margin-bottom: 8px !important;
    text-align: left !important;
    width: 100% !important;
}
body.page-id-1359 #c_static_001-17587681032280::before {
    content: "What to expect after you reach out";
    display: block;
    text-align: center;
    font-size: 26px;
    font-weight: 700;
    color: #0b3b63;
    margin: 40px auto 8px;
}

/* ---- 37.4 EN /contact/ hero card widen + WhatsApp line ---- */
body.page-id-1359 #c_static_001-17582669057200 .e_container-6 {
    width: min(1200px, 92%) !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
}
body.page-id-1359 #c_static_001-17582669057200::after {
    content: "Prefer WhatsApp? Message +86 159 2644 4449 â we reply MonâFri, 9:00â18:00 China Standard Time (GMT+8).";
    display: block;
    width: min(1200px, 92%);
    margin: 12px auto 0;
    padding: 14px 20px;
    background: #eff7ff;
    border-left: 4px solid #25d366;
    border-radius: 8px;
    font-size: 14px;
    line-height: 1.6;
    color: #0b3b63;
}
body.page-id-1359 #c_static_001-17587679971040 {
    display: none !important;
}
/* ==== r25y24cw END ==== */


/* ==== r25y24cx START ==== */
/* ==== Section 38 â r25y24cx: EN /contact/ structural fixes ==== */

/* ---- 38.1 Un-anchor the absolutely-positioned China HQ blue card ---------
   It was set position:absolute + z-index:1 and overflowed the 232px-tall hero
   into the form area. Make it flow naturally inside the hero. -------------- */
body.page-id-1359 #c_static_001-17582669057200 .cbox-1-0 .e_container-7 {
    position: static !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    z-index: auto !important;
    width: min(540px, 92%) !important;
    max-width: 540px !important;
    margin: 16px auto 0 !important;
    box-shadow: 0 4px 16px rgba(0, 87, 160, 0.10) !important;
    border-radius: 10px !important;
}

/* Let the hero grow to fit headline + description + WhatsApp line + blue card */
body.page-id-1359 #c_static_001-17582669057200 {
    min-height: auto !important;
    padding: 48px 0 40px !important;
}
body.page-id-1359 #c_static_001-17582669057200 .cbox-1-0,
body.page-id-1359 #c_static_001-17582669057200 .p_item {
    position: static !important;
    overflow: visible !important;
}

/* The WhatsApp pseudo-line: separate from blue card by a bit of gap */
body.page-id-1359 #c_static_001-17582669057200::after {
    margin: 16px auto 8px !important;
}

/* ---- 38.2 Form (#c_form_089-1758778415137) visibility ------------------
   The builder left 4 empty .e_input-* wrappers (h=0). JS will populate them.
   Give them proper sizing so they render cleanly once populated. ---------- */
body.page-id-1359 #c_form_089-1758778415137 {
    padding: 56px 0 48px !important;
    background: #f6f9fd !important;
}
body.page-id-1359 #c_form_089-1758778415137 .e_container-19.s_layout {
    width: min(1200px, 92%) !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
}
body.page-id-1359 #c_form_089-1758778415137 .e_text-20.s_title {
    font-size: 20px !important;
    line-height: 1.5 !important;
    text-align: center !important;
    color: #0b3b63 !important;
    margin-bottom: 32px !important;
    max-width: 880px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
body.page-id-1359 #c_form_089-1758778415137 .e_container-31,
body.page-id-1359 #c_form_089-1758778415137 .e_container-34 {
    display: grid !important;
    gap: 16px !important;
    margin-bottom: 16px !important;
    width: 100% !important;
}
body.page-id-1359 #c_form_089-1758778415137 .e_container-31 {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}
body.page-id-1359 #c_form_089-1758778415137 .e_container-34 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
body.page-id-1359 #c_form_089-1758778415137 .e_container-31 .p_item,
body.page-id-1359 #c_form_089-1758778415137 .e_container-34 .p_item {
    width: 100% !important;
    min-height: 64px !important;
    padding: 0 !important;
}

/* Inputs that our JS will inject (class .insv-lead-field) */
.insv-lead-field-wrap {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
}
.insv-lead-field-wrap label {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #4a5d75 !important;
    letter-spacing: 0.2px !important;
}
.insv-lead-field-wrap label .req {
    color: #e14b4b !important;
    margin-left: 2px !important;
}
.insv-lead-field {
    width: 100% !important;
    height: 44px !important;
    padding: 10px 14px !important;
    border: 1px solid #d3dce7 !important;
    border-radius: 6px !important;
    background: #fff !important;
    font-size: 14px !important;
    color: #1f2b3c !important;
    outline: none !important;
    transition: border-color 0.15s, box-shadow 0.15s !important;
    box-sizing: border-box !important;
}
.insv-lead-field:focus {
    border-color: #00a7ec !important;
    box-shadow: 0 0 0 3px rgba(0, 167, 236, 0.12) !important;
}
.insv-lead-field.invalid {
    border-color: #e14b4b !important;
    background: #fff8f8 !important;
}
.insv-lead-error {
    font-size: 12px !important;
    color: #e14b4b !important;
    min-height: 16px !important;
    line-height: 1.3 !important;
}

/* The existing textarea: make it look like our fields */
body.page-id-1359 #c_form_089-1758778415137 .e_textarea-5 textarea {
    width: 100% !important;
    min-height: 140px !important;
    padding: 12px 14px !important;
    border: 1px solid #d3dce7 !important;
    border-radius: 6px !important;
    background: #fff !important;
    font-size: 14px !important;
    color: #1f2b3c !important;
    outline: none !important;
    font-family: inherit !important;
    resize: vertical !important;
    box-sizing: border-box !important;
}
body.page-id-1359 #c_form_089-1758778415137 .e_textarea-5 textarea:focus {
    border-color: #00a7ec !important;
    box-shadow: 0 0 0 3px rgba(0, 167, 236, 0.12) !important;
}

/* Submit button: actual element is <a.e_formBtn-6.s_button1.btn.btn-primary> */
body.page-id-1359 #c_form_089-1758778415137 .e_formBtn-6,
body.page-id-1359 #c_form_089-1758778415137 [class*="e_formBtn"],
body.page-id-1359 #c_form_089-1758778415137 .s_button1 {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 240px !important;
    height: 52px !important;
    margin: 32px auto 0 !important;
    padding: 0 32px !important;
    background: #0080d6 !important;
    color: #fff !important;
    border: none !important;
    border-radius: 6px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    letter-spacing: 0.3px !important;
    text-decoration: none !important;
    cursor: pointer !important;
    transition: background 0.15s, transform 0.1s !important;
    box-shadow: 0 2px 8px rgba(0, 128, 214, 0.25) !important;
}
body.page-id-1359 #c_form_089-1758778415137 .e_formBtn-6:hover,
body.page-id-1359 #c_form_089-1758778415137 [class*="e_formBtn"]:hover,
body.page-id-1359 #c_form_089-1758778415137 .s_button1:hover {
    background: #006ab0 !important;
    transform: translateY(-1px) !important;
}
body.page-id-1359 #c_form_089-1758778415137 .e_formBtn-6 span,
body.page-id-1359 #c_form_089-1758778415137 [class*="e_formBtn"] span,
body.page-id-1359 #c_form_089-1758778415137 .s_button1 span {
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    letter-spacing: 0.3px !important;
    white-space: nowrap !important;
}
/* Parent of the button â center it */
body.page-id-1359 #c_form_089-1758778415137 .cbox-1 {
    text-align: center !important;
}

/* Success flash */
.insv-form-flash {
    display: block;
    margin: 18px auto 0;
    max-width: 640px;
    padding: 12px 18px;
    border-radius: 8px;
    font-size: 14px;
    text-align: center;
    background: #e7f7ef;
    color: #14753f;
    border: 1px solid #b8e5cb;
}

/* Mobile */
@media (max-width: 768px) {
    body.page-id-1359 #c_form_089-1758778415137 .e_container-31,
    body.page-id-1359 #c_form_089-1758778415137 .e_container-34 {
        grid-template-columns: 1fr !important;
    }
}
/* ==== r25y24cx END ==== */

/* ==== Section 39 â r25y24dg START (font-fallback: single-source override) ==== */
/*
  Single-source override for thefastfile/thefastimg hosted @font-face
  rules. Each family below was previously loaded from an external host
  that 403s from our HK ECS, blocking render until font timeout (~15-20s)
  on CN /about/ etc. We re-declare each family with `src: local(...)` so
  the browser finds a system fallback immediately and never issues the
  external request.

  Discipline: this is the ONE place we fix Dongli-native CSS issues.
  Do NOT edit per-page /css/*.min.css or /assets/css/*.min.css; those are
  one-shot exports that regenerate whenever the site-builder exports, and
  any regex edit we make there will be lost and/or have subtle side
  effects (see r25y24df â AlphaScan visual regression, 2026-04-22).
*/
@font-face {
    font-family: "pingfangsc-medium_0";
    src: local("PingFang SC"), local("Microsoft YaHei"), local("Arial"), local("sans-serif");
    font-display: swap;
}
@font-face {
    font-family: "poppins-bold";
    src: local("PingFang SC"), local("Microsoft YaHei"), local("Arial"), local("sans-serif");
    font-display: swap;
}
@font-face {
    font-family: "poppins-light";
    src: local("PingFang SC"), local("Microsoft YaHei"), local("Arial"), local("sans-serif");
    font-display: swap;
}
@font-face {
    font-family: "poppins-medium";
    src: local("PingFang SC"), local("Microsoft YaHei"), local("Arial"), local("sans-serif");
    font-display: swap;
}
@font-face {
    font-family: "poppins-regular";
    src: local("PingFang SC"), local("Microsoft YaHei"), local("Arial"), local("sans-serif");
    font-display: swap;
}
@font-face {
    font-family: "poppins-semibold";
    src: local("PingFang SC"), local("Microsoft YaHei"), local("Arial"), local("sans-serif");
    font-display: swap;
}
@font-face {
    font-family: "è¹æ¹é»ä½-ä¸­ç²-ç®";
    src: local("PingFang SC"), local("Microsoft YaHei"), local("Arial"), local("sans-serif");
    font-display: swap;
}
@font-face {
    font-family: "è¹æ¹é»ä½-ä¸­ç²-ç¹";
    src: local("PingFang SC"), local("Microsoft YaHei"), local("Arial"), local("sans-serif");
    font-display: swap;
}
@font-face {
    font-family: "è¹æ¹é»ä½-ä¸­é»-ç®";
    src: local("PingFang SC"), local("Microsoft YaHei"), local("Arial"), local("sans-serif");
    font-display: swap;
}
@font-face {
    font-family: "è¹æ¹é»ä½-ä¸­é»-ç¹";
    src: local("PingFang SC"), local("Microsoft YaHei"), local("Arial"), local("sans-serif");
    font-display: swap;
}
@font-face {
    font-family: "è¹æ¹é»ä½-å-ç®";
    src: local("PingFang SC"), local("Microsoft YaHei"), local("Arial"), local("sans-serif");
    font-display: swap;
}
@font-face {
    font-family: "è¹æ¹é»ä½-å-ç¹";
    src: local("PingFang SC"), local("Microsoft YaHei"), local("Arial"), local("sans-serif");
    font-display: swap;
}
@font-face {
    font-family: "è¹æ¹é»ä½-çº¤ç»-ç®";
    src: local("PingFang SC"), local("Microsoft YaHei"), local("Arial"), local("sans-serif");
    font-display: swap;
}
@font-face {
    font-family: "è¹æ¹é»ä½-çº¤ç»-ç¹";
    src: local("PingFang SC"), local("Microsoft YaHei"), local("Arial"), local("sans-serif");
    font-display: swap;
}
@font-face {
    font-family: "è¹æ¹é»ä½-ç»-ç®";
    src: local("PingFang SC"), local("Microsoft YaHei"), local("Arial"), local("sans-serif");
    font-display: swap;
}
@font-face {
    font-family: "è¹æ¹é»ä½-ç»-ç¹";
    src: local("PingFang SC"), local("Microsoft YaHei"), local("Arial"), local("sans-serif");
    font-display: swap;
}
/* ==== Section 39 â r25y24dg END ==== */

/* ==== Section 40 â r25y24dg-v2 START (narrow-container text bugs) ==== */
/*
  Two pre-existing Dongli layout bugs visible on products/alphascan/ pages:

  (a) #c_new_list_277-17587670900600 2-card row â flex chain collapses to
      width 0 at .cbox-20-0.p_item because its nested flex descendants
      have `flex: 0 0 auto` or `flex: 0 0 50%` of 0, so the text children
      render as 20px wide vertical letter columns.

  (b) .sidebar .pre_sales/.pre_phone <p> got caught by Section 37 s
      `.sidebar p` transform: rotate(-90deg), flipping the phones /
      emails from horizontal text into 13px-wide vertical stripes.
      Un-rotate them here instead of editing Section 37 in place.

  Discipline: permanent overrides belong in theme-extra.css.
*/

/* (a) new_list_277 flex collapse â force the nested flex chain to
       inherit parent width so the 2 items sit side by side. */
#c_new_list_277-17587670900600 .cbox-20-0.p_item,
#c_new_list_277-17587670900600 .e_loop-21,
#c_new_list_277-17587670900600 .e_loop-21 > div,
#c_new_list_277-17587670900600 .p_list {
    width: 100% !important;
    flex: 1 1 100% !important;
}
/* (a/A2) r25y24di â REMOVED 2026-04-22. The original
   `.e_container-23.s_layout { position: static !important }` broke the
   baseline overlay positioning on AlphaScan Product Applications cards
   ("ä¸¤æ¡é»æ¡"). A1 above + A3 below are kept in place because they fix
   separate Dongli flex bugs; only A2 was the culprit. See rollback plan Step 1. */
#c_new_list_277-17587670900600 .cbox-23-0.p_item {
    flex: 1 1 auto !important;
    width: auto !important;
}

/* (b) un-rotate sidebar expand-panel text that Section 37 over-matched. */
.sidebar .pre_sales,
.sidebar .pre_phone,
.sidebar .posbox,
.sidebar .pre_sales p,
.sidebar .pre_phone p,
.sidebar .posbox p,
.sidebar .pre_sales span,
.sidebar .pre_phone span,
.sidebar .posbox span {
    transform: none !important;
}

/* ==== Section 40 â r25y24dg-v2 END ==== */


/* ==== Section 43 - r25y24dh START (AlphaScan hero + reveal + c36) ==== */
/*
  WHAT THIS RULE PROTECTS (2026-04-22, v2 widened-scope):

  The AlphaScan product-detail hero on BOTH languages:
    CN: http://47.239.70.125/products/alphascan/      (body.parent-pageid-14)
    EN: http://47.239.70.125/en/products/alphascan/   (body.parent-pageid-1360)
  Production references:
    https://www.insvision3d.cn/products_details.html
    https://www.insvision3d.com/products_details.html

  Polylang assigns DIFFERENT body classes per language (CN parent-pageid-14
  vs EN parent-pageid-1360). The Dongli widget ID is the SAME on both
  (#c_static_1112-1755758652960). So widget-scoped rules cover both
  languages; body-class-scoped rules are language-specific.

  FIXES IN THIS SECTION:

  (A) REVEAL VARS STUCK AT 0 on AlphaScan widget.
      Sections 19/20/21/22/23 drive opacity/transform via
      `var(--insv-p-feat, 0)` / `--insv-p-hero` / `--insv-p-loop`. JS
      driver does not fire on AlphaScan (comment line ~2603: "Scroll
      sweep proved --insv-p-feat never reaches 1"). Rule (A) sets these
      on the AlphaScan widget so descendants pick up 1 via CSS custom
      property cascade. Scoped to the widget, not :root, so other pages
      that might rely on the vars for working animations are unaffected.

  (B) HERO SIZING MISALIGNED WITH PRODUCTION.
      Production hero is 1000Ã700 with `background-size: cover` +
      `background-position: 50% 50%`. Section 20 set min-height: 780px,
      background-size: auto 78%, and parallax-via-var. Override to match
      production. Widget-scoped.

  (C) LEGACY DUPLICATE .e_container-36 LEAKS VISIBLE.
      Section 24 used to hide this; got removed in earlier restore step
      today. Re-hide here. Widget-scoped.

  (D) PRE-FOOTER WIDGET SCOPING (EN only).
      On EN product detail pages (parent-pageid-1360), DOM has both
      `c_static_001-17587680110510` and `c_static_001-17587679971040`.
      Production shows only the first; the second duplicates the first.
      Narrowed r25y24at rule above already hides 17587679971040 on EN
      product detail. Section 43 does not repeat this.
      On CN (parent-pageid-14), the visible pre-footer is
      `c_static_001-17587679971040` rendering CN copy. DO NOT hide it
      globally â the existing narrowed r25y24at rule scopes the hide
      to parent-pageid-1360 only, which is correct.

  IF YOU DELETE ANY PART OF THIS RULE:
    Open BOTH CN and EN AlphaScan pages and production references. Verify:
      - hero scanner illustration fills right column at 50%/50%/cover
      - 6 feature cards render below with full text
      - no duplicate card row
      - title "AlphaScan" fully visible (not clipped)
      - 3 pre-footer CTA modules render on BOTH languages
*/

/* (A) Unstick reveal vars â scoped to the AlphaScan widget, works on CN + EN */
#c_static_1112-1755758652960 {
    --insv-p-hero: 1 !important;
    --insv-p-feat: 1 !important;
    --insv-p-loop: 1 !important;
}

/* (B) Align hero to production â widget-scoped, works on CN + EN */
#c_static_1112-1755758652960 .e_container-7 {
    background-size: cover !important;
    background-position: 50% 50% !important;
    padding-top: 0 !important;
    min-height: 0 !important;
    height: 700px !important;
}

/* (C) Hide legacy duplicate c36 row â widget-scoped, works on CN + EN */
body:not(.page-id-24):not(.page-id-1366) #c_static_1112-1755758652960 .e_container-36 {
    display: none !important;
}

/* ==== Section 43 - r25y24dh END ==== */

/* ==== Section 44 - r25y24en START (EN Polylang class-strip workaround) ==== */
/*
  WHAT THIS RULE PROTECTS (2026-04-22):

  Polylang EN rendering of AlphaScan (body.parent-pageid-1360) strips
  the Dongli `response-transition` class from descendants of
  #c_static_1112-1755758652960. Staging-wide verified via raw HTML:
    curl /en/products/alphascan/ | grep -c 'response-transition' -> 0
    curl /products/alphascan/    | grep -c 'response-transition' -> 2

  Without the class, Dongli's scroll-reveal JS never applies its
  clip-path to .e_container-18, so it renders as a full 1360x540 rect
  showing the `eab81556-...jpg` bg image uncropped. Users see this as a
  "black bar" stripe in the middle of the Employing-AI section.

  Production end-state (from DevTools inspection of
  https://www.insvision3d.com/products_details.html):
    .e_container-18 inline style="clip-path: polygon(40% 0%, 90% 0%, 90% 100%, 40% 100%)"
    offsetWidth = 1360, offsetHeight = 700

  CN staging has the class, scroll-reveal works, matches production
  visually. DO NOT touch CN (body.parent-pageid-14) â those rules would
  fight the JS-driven animation there.

  IF YOU DELETE ANY PART OF THIS RULE:
    1. Open /en/products/alphascan/ and verify the "Employing AI
       algorithms" section. The decorative image strip should render
       as a narrow center-slice (40%-90% width), NOT as a full-width
       rectangle that obscures the underlying card column.
    2. Cross-check against https://www.insvision3d.com/products_details.html
       as ground truth.
    3. Also verify /products/alphascan/ (CN) still animates on scroll
       â if that broke, the rules leaked out of the parent-pageid-1360
       scope.
*/

/* Reveal keyframes â one-shot on page load, EN-only */
@keyframes r25y24en-c18-reveal {
    0%   { clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%); }
    100% { clip-path: polygon(40% 0%, 90% 0%, 90% 100%, 40% 100%); }
}

/* Apply production end-state + reveal animation to c18, EN product detail only */
body.parent-pageid-1360 #c_static_1112-1755758652960 .e_container-18 {
    clip-path: polygon(40% 0%, 90% 0%, 90% 100%, 40% 100%) !important;
    animation: r25y24en-c18-reveal 1.4s ease-out 0.3s both !important;
    height: 700px !important;
    min-height: 700px !important;
}

/* Widget visibility safety (in case response-animated is missing on EN) */
body.parent-pageid-1360 #c_static_1112-1755758652960 {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
}

/* Force all response-transition-dependent descendants visible on EN */
body.parent-pageid-1360 #c_static_1112-1755758652960 .e_container-5,
body.parent-pageid-1360 #c_static_1112-1755758652960 .e_container-7,
body.parent-pageid-1360 #c_static_1112-1755758652960 .e_container-30,
body.parent-pageid-1360 #c_static_1112-1755758652960 .e_loop-31 .p_loopitem {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translate(0, 0) !important;
}

/* Also fix e_container-18 inside Relevant Materials widget on EN â same
   class-strip issue would make that render wide too. Keep height as-is
   but force opacity/visibility. */
#c_static_001-1755164981293 .e_container-18 {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
}

/* ==== Section 44 - r25y24en END ==== */

/* ==== Product detail motion restore (r25y24pd) START ==== */
#c_static_1112-1755758652960 {
    --insv-detail-title-progress: 1;
    --insv-detail-hero-progress: 1;
    --insv-detail-callout-clip: none;
}

html.insv-product-detail-motion-active #c_static_1112-1755758652960 {
    --insv-detail-title-progress: 0;
    --insv-detail-hero-progress: 0;
    --insv-detail-callout-clip: polygon(40% 0%, 90% 0%, 90% 100%, 40% 100%);
}

#c_static_1112-1755758652960 .e_text-3.s_title {
    --c: calc((1 - var(--insv-detail-title-progress, 1)) * 100%) !important;
    clip-path: inset(0 var(--c) 0 0) !important;
    -webkit-clip-path: inset(0 var(--c) 0 0) !important;
}

#c_static_1112-1755758652960 .e_container-7 {
    width: 100% !important;
    max-width: calc(1000px + var(--insv-detail-hero-progress, 1) * 400px) !important;
    height: 700px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    background-size: cover !important;
    background-position: 50% 50% !important;
}

#c_static_1112-1755758652960 .e_container-7 .cbox-7-0,
#c_static_1112-1755758652960 .cbox-30-0 {
    opacity: 1 !important;
    transform: none !important;
}

#c_static_1112-1755758652960 .e_container-18 {
    width: min(1360px, calc(100vw - 48px)) !important;
    max-width: 1360px !important;
    height: 700px !important;
    min-height: 700px !important;
    aspect-ratio: auto !important;
    margin: 100px auto 0 !important;
    background-size: cover !important;
    background-position: 50% 50% !important;
    background-repeat: no-repeat !important;
    clip-path: var(--insv-detail-callout-clip, none) !important;
    -webkit-clip-path: var(--insv-detail-callout-clip, none) !important;
}

#c_static_1112-1755758652960 .e_container-18 .cbox-18-0 {
    width: 100% !important;
    height: 100% !important;
}

@media (max-width: 767px) {
    #c_static_1112-1755758652960 .e_container-7 {
        max-width: 100% !important;
    }

    #c_static_1112-1755758652960 .e_container-18 {
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        aspect-ratio: 1920 / 700 !important;
        margin-top: 40px !important;
        clip-path: none !important;
        -webkit-clip-path: none !important;
    }
}
/* ==== Product detail motion restore (r25y24pd) END ==== */

/* ==== Product detail targeted restore (r26product01) START ==== */
/* V-Track uses .e_container-36 as its right-side feature cards. The generic
   AlphaScan duplicate-row guard above must not hide it on V-Track. */
body.page-id-24 #c_static_1112-1755758652960 .e_container-36,
body.page-id-1366 #c_static_1112-1755758652960 .e_container-36 {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
}

body.page-id-24 #c_static_1112-1755758652960 .e_container-36 .p_list,
body.page-id-1366 #c_static_1112-1755758652960 .e_container-36 .p_list {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
}

body.page-id-24 #c_static_1112-1755758652960 .e_container-36 .cbox-37.p_loopitem,
body.page-id-1366 #c_static_1112-1755758652960 .e_container-36 .cbox-37.p_loopitem {
    width: auto !important;
    margin: 0 !important;
}

body.page-id-24 #c_static_1112-1755758652960 .e_container-36 .e_container-38,
body.page-id-1366 #c_static_1112-1755758652960 .e_container-36 .e_container-38 {
    min-height: 150px !important;
    padding: 22px 20px !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 8px !important;
    background: #fff !important;
    box-sizing: border-box !important;
}

body.page-id-24 #c_static_1112-1755758652960 .e_container-36 .e_image-39,
body.page-id-1366 #c_static_1112-1755758652960 .e_container-36 .e_image-39 {
    display: none !important;
}

body.page-id-24 #c_static_1112-1755758652960 .e_container-36 .e_text-40,
body.page-id-1366 #c_static_1112-1755758652960 .e_container-36 .e_text-40 {
    margin: 0 0 10px !important;
    font-size: 19px !important;
    line-height: 1.25 !important;
    font-weight: 600 !important;
    color: #333 !important;
}

body.page-id-24 #c_static_1112-1755758652960 .e_container-36 .e_text-41,
body.page-id-1366 #c_static_1112-1755758652960 .e_container-36 .e_text-41 {
    margin: 0 !important;
    font-size: 15px !important;
    line-height: 1.45 !important;
    color: #666 !important;
}

/* AlphaScan second-screen callout art is a full 1920x700 composition. Keep
   the complete labels visible at rest, while preserving the scroll-driven
   reveal clip supplied by base.js. */
body.page-id-16 #c_static_1112-1755758652960 .e_container-18,
body.page-id-1362 #c_static_1112-1755758652960 .e_container-18 {
    width: min(100vw, 1920px) !important;
    max-width: 1920px !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 1920 / 700 !important;
    margin-top: 80px !important;
    margin-left: calc(50% - min(50vw, 960px)) !important;
    margin-right: calc(50% - min(50vw, 960px)) !important;
    background-size: contain !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    clip-path: var(--insv-detail-callout-clip, none) !important;
    -webkit-clip-path: var(--insv-detail-callout-clip, none) !important;
    animation: none !important;
    overflow: visible !important;
    will-change: clip-path;
}

/* Restore the logo entrance for AlphaAutoScan-400 and AlphaVista. The image
   source is repaired in page content; this rule lets the logo participate in
   the scroll-driven reveal again. */
body.page-id-18 #c_static_1112-1755758652960 .e_container-7 .cbox-7-0,
body.page-id-20 #c_static_1112-1755758652960 .e_container-7 .cbox-7-0,
body.page-id-1363 #c_static_1112-1755758652960 .e_container-7 .cbox-7-0,
body.page-id-1364 #c_static_1112-1755758652960 .e_container-7 .cbox-7-0 {
    opacity: var(--insv-detail-hero-progress, 1) !important;
    transform: translateY(calc((1 - var(--insv-detail-hero-progress, 1)) * 56px)) !important;
    will-change: opacity, transform;
}
/* ==== Product detail targeted restore (r26product01) END ==== */

/* ==== Product detail module cleanup (r26product02) START ==== */
/* Keep the product-detail news module visually aligned with the homepage. */
body.page-child.parent-pageid-1360 #c_new_list_195-17537704131830,
body.page-child.parent-pageid-14 #c_new_list_195-17537704131830 {
    padding-top: 50px !important;
    background: #fff !important;
}

body.page-child.parent-pageid-1360 #c_new_list_195-17537704131830::before,
body.page-child.parent-pageid-14 #c_new_list_195-17537704131830::before {
    display: block !important;
    width: min(1360px, calc(100vw - 48px)) !important;
    margin: 0 auto 24px !important;
    text-align: center !important;
    color: #1e2940 !important;
    font-size: 34px !important;
    line-height: 1.18 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
}

body.page-child.parent-pageid-1360 #c_new_list_195-17537704131830::before {
    content: "Company News";
}

body.page-child.parent-pageid-14 #c_new_list_195-17537704131830::before {
    content: "公司新闻";
}

/* Hide the obsolete service-copy loop that leaks raw Book-a-demo text above
   the correct three-card service strip. */
body.page-child.parent-pageid-1360 #c_static_001-17587680347540,
body.page-child.parent-pageid-14 #c_static_001-17587680347540 {
    display: none !important;
}

/* Guard parameter tables that use per-product section IDs. */
body.page-id-1363 #c_static_001-17587763236050,
body.page-id-1364 #c_static_001-17587765741590 {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    min-height: 0 !important;
}

body.page-id-1363 #c_static_001-17587763236050 table,
body.page-id-1364 #c_static_001-17587765741590 table {
    display: table !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Alpha-Projector has eight feature cards. Bottom-aligning that tall card
   column pulls the first row upward into the sticky product nav; align it
   from the top and give the section room to contain the full grid. */
body.page-id-22 #c_static_1112-1755758652960,
body.page-id-1365 #c_static_1112-1755758652960,
body.page-id-22 #c_static_1112-1755758652960 .e_container-2,
body.page-id-1365 #c_static_1112-1755758652960 .e_container-2,
body.page-id-22 #c_static_1112-1755758652960 .cbox-2-0,
body.page-id-1365 #c_static_1112-1755758652960 .cbox-2-0 {
    height: auto !important;
    min-height: 1320px !important;
}

body.page-id-22 #c_static_1112-1755758652960 .e_container-7,
body.page-id-1365 #c_static_1112-1755758652960 .e_container-7 {
    height: auto !important;
    min-height: 700px !important;
    align-items: flex-start !important;
}

body.page-id-22 #c_static_1112-1755758652960 .cbox-7-1,
body.page-id-1365 #c_static_1112-1755758652960 .cbox-7-1 {
    align-items: flex-start !important;
    justify-content: flex-start !important;
}

body.page-id-22 #c_static_1112-1755758652960 .e_container-30,
body.page-id-1365 #c_static_1112-1755758652960 .e_container-30,
body.page-id-22 #c_static_1112-1755758652960 .cbox-30-0,
body.page-id-1365 #c_static_1112-1755758652960 .cbox-30-0 {
    height: auto !important;
    align-self: flex-start !important;
}

body.page-id-22 #c_static_1112-1755758652960 .e_text-3.s_title,
body.page-id-1365 #c_static_1112-1755758652960 .e_text-3.s_title {
    clip-path: none !important;
    -webkit-clip-path: none !important;
}
/* ==== Product detail module cleanup (r26product02) END ==== */

/* ===== INSV-LAYOUT-CONTAINER-SHELL (r25y24ea-layout-shell) BEGIN ===== */
:root {
    --insv-shell-main-width: 90%;
    --insv-shell-main-max: 1360px;
    --insv-shell-narrow-max: 1200px;
}

/* Product detail: industry-application hero slot
   Keep same shell as homepage/news modules. */
.insv-product-ia-hero-slot {
    width: var(--insv-shell-main-width) !important;
    max-width: var(--insv-shell-main-max) !important;
    margin: 0 auto 30px !important;
    box-sizing: border-box !important;
}
.insv-product-ia-hero-slot .ia-hero-block {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
}
.insv-product-ia-hero-slot .ia-hero-grid {
    gap: 20px !important;
}

/* Product detail: feature section wrapper
   Base products_details_1.min.css uses width:100% for .e_container-2, which
   creates a near-full-bleed row and breaks alignment with surrounding modules.
   Constrain it to the same shell without changing module internals. */
div[id^="c_static_1112-"] .e_container-2 {
    width: var(--insv-shell-main-width) !important;
    max-width: var(--insv-shell-main-max) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

/* News list top category strip (company/discovery):
   align the strip with the same shell used by cards/list body. */
div[id^="c_category_428_P_049-"] .e_container-4 {
    width: var(--insv-shell-main-width) !important;
    max-width: var(--insv-shell-main-max) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
}

@media (max-width: 767px) {
    .insv-product-ia-hero-slot {
        margin-bottom: 20px !important;
    }
}
/* ===== INSV-LAYOUT-CONTAINER-SHELL (r25y24ea-layout-shell) END ===== */


/* Guardrail: legacy duplicate service block on v-track */
#c_static_001-17587680622200 { display: none !important; }

/* ===== INSV-SPEC-VISIBILITY-GUARD (r25y24ea-spec) BEGIN ===== */
#c_static_001-17587766231780,
#c_static_001-17587766231780 .e_container-2,
#c_static_001-17587766231780 .e_richText-1,
#c_static_001-17587766231780 table,
#c_static_001-17587766231780 tbody,
#c_static_001-17587766231780 tr,
#c_static_001-17587766231780 td,
#c_static_001-17587766231780 th {
    opacity: 1 !important;
    visibility: visible !important;
}
/* ===== INSV-SPEC-VISIBILITY-GUARD (r25y24ea-spec) END ===== */

/* IA application-area carousel styles live in css/modules/insv-ia-areas.css. */

/* ===== INSV PRODUCT DETAIL VISIBILITY FIXES (r26product03) ===== */
#c_static_001-17587763236050 .e_container-2,
#c_static_001-17587765741590 .e_container-2,
#c_static_001-17587763236050 .e_richText-1.s_title,
#c_static_001-17587765741590 .e_richText-1.s_title {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    clip-path: none !important;
    -webkit-clip-path: none !important;
    animation: none !important;
}

#c_static_001-17587763236050 table,
#c_static_001-17587765741590 table {
    opacity: 1 !important;
    visibility: visible !important;
}

/* ===== INSV PRODUCT DETAIL VISIBILITY FIXES (r26product03) END ===== */

/* ===== INSV PRODUCT DETAIL NEWS TYPOGRAPHY (r29news01) ===== */
body.page-child.parent-pageid-1360 #c_new_list_195-17537704131830 .home-news-top-card__title,
body.page-child.parent-pageid-14 #c_new_list_195-17537704131830 .home-news-top-card__title,
body.page-child.parent-pageid-1360 #c_new_list_195-17537704131830 .home-news-top-card__title-link,
body.page-child.parent-pageid-14 #c_new_list_195-17537704131830 .home-news-top-card__title-link {
    font-size: 16px !important;
    line-height: 1.38 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    color: #20324a !important;
}

body.page-child.parent-pageid-1360 #c_new_list_195-17537704131830 .home-news-top-card__excerpt,
body.page-child.parent-pageid-14 #c_new_list_195-17537704131830 .home-news-top-card__excerpt,
body.page-child.parent-pageid-1360 #c_new_list_195-17537704131830 .home-news-top-card__excerpt-link,
body.page-child.parent-pageid-14 #c_new_list_195-17537704131830 .home-news-top-card__excerpt-link {
    font-size: 14px !important;
    line-height: 1.55 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    color: #7f8a99 !important;
}

body.page-child.parent-pageid-1360 #c_new_list_195-17537704131830 .home-news-top-card__excerpt-link,
body.page-child.parent-pageid-14 #c_new_list_195-17537704131830 .home-news-top-card__excerpt-link {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    overflow: hidden !important;
    text-decoration: none !important;
}

@media (max-width: 767px) {
    body.page-child.parent-pageid-1360 #c_new_list_195-17537704131830 .home-news-top-card__title,
    body.page-child.parent-pageid-14 #c_new_list_195-17537704131830 .home-news-top-card__title,
    body.page-child.parent-pageid-1360 #c_new_list_195-17537704131830 .home-news-top-card__title-link,
    body.page-child.parent-pageid-14 #c_new_list_195-17537704131830 .home-news-top-card__title-link {
        font-size: 15px !important;
        line-height: 1.4 !important;
    }

    body.page-child.parent-pageid-1360 #c_new_list_195-17537704131830 .home-news-top-card__excerpt,
    body.page-child.parent-pageid-14 #c_new_list_195-17537704131830 .home-news-top-card__excerpt,
    body.page-child.parent-pageid-1360 #c_new_list_195-17537704131830 .home-news-top-card__excerpt-link,
    body.page-child.parent-pageid-14 #c_new_list_195-17537704131830 .home-news-top-card__excerpt-link {
        font-size: 13px !important;
        line-height: 1.5 !important;
    }
}

/* ===== INSV PRODUCT DETAIL NEWS TYPOGRAPHY (r29news01) END ===== */
/* Stable semantic anchors for migrated CE Dongli sections. */
.insv-section-anchor{display:block;position:relative;top:-96px;width:0;height:0;overflow:hidden;visibility:hidden;pointer-events:none}
@media (max-width:768px){.insv-section-anchor{top:-78px}}

/* ===== Product Feature Titles (single structured implementation) ===== */
#c_static_1112-1755758652960 .insv-product-feature-title {
    width: min(100%, 960px) !important;
    max-width: 960px !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 auto !important;
    padding: 0 !important;
    text-align: center !important;
    line-height: 1.22 !important;
    letter-spacing: 0 !important;
    font-size: 0 !important;
    color: #1f2937 !important;
    clip-path: none !important;
    -webkit-clip-path: none !important;
    white-space: normal !important;
    overflow: visible !important;
}
#c_static_1112-1755758652960 .insv-product-feature-title__name,
#c_static_1112-1755758652960 .insv-product-feature-title__tagline {
    display: block !important;
    letter-spacing: 0 !important;
    text-align: center !important;
}
#c_static_1112-1755758652960 .insv-product-feature-title__name {
    font-size: 36px !important;
    line-height: 1.16 !important;
    font-weight: 700 !important;
    color: #1f2937 !important;
}
#c_static_1112-1755758652960 .insv-product-feature-title__tagline {
    max-width: 760px !important;
    margin: 10px auto 0 !important;
    font-size: 18px !important;
    line-height: 1.5 !important;
    font-weight: 500 !important;
    color: #5f6b7a !important;
}
body.page-id-1365 #c_static_1112-1755758652960 .e_container-5,
body.page-id-22 #c_static_1112-1755758652960 .e_container-5 {
    width: 90% !important;
    max-width: 1180px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    align-self: center !important;
}
body.page-id-1365 #c_static_1112-1755758652960 .e_container-5 .insv-product-feature-title,
body.page-id-22 #c_static_1112-1755758652960 .e_container-5 .insv-product-feature-title {
    width: min(100%, 960px) !important;
    max-width: 960px !important;
    text-align: center !important;
    line-height: 1.22 !important;
}
@media screen and (max-width: 768px) {
    #c_static_1112-1755758652960 .insv-product-feature-title {
        width: 92% !important;
        max-width: 92% !important;
    }
    #c_static_1112-1755758652960 .insv-product-feature-title__name {
        font-size: 28px !important;
        line-height: 1.2 !important;
    }
    #c_static_1112-1755758652960 .insv-product-feature-title__tagline {
        font-size: 15px !important;
        line-height: 1.55 !important;
    }
}

/* INSV GEO LANGUAGE SUGGEST BEGIN */
.insv-language-suggest{position:fixed;left:24px;bottom:24px;z-index:1200;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;width:min(430px,calc(100vw - 32px));padding:16px 18px;background:rgba(255,255,255,.96);border:1px solid rgba(19,35,58,.12);box-shadow:0 18px 46px rgba(17,31,49,.18);border-radius:8px;color:#13233a;opacity:0;transform:translateY(14px);pointer-events:none;transition:opacity .24s ease,transform .24s ease;backdrop-filter:blur(12px)}
.insv-language-suggest.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}
.insv-language-suggest__copy{min-width:0;padding-right:18px}
.insv-language-suggest__copy span{display:block;margin-bottom:4px;font-size:12px;line-height:1.2;color:#5e728f;text-transform:uppercase;letter-spacing:0}
.insv-language-suggest__copy strong{display:block;font-size:18px;line-height:1.25;font-weight:700;color:#102033}
.insv-language-suggest__copy p{margin:5px 0 0;font-size:13px;line-height:1.55;color:#50627b}
.insv-language-suggest__action{display:inline-flex;align-items:center;justify-content:center;min-width:92px;height:40px;padding:0 16px;border-radius:6px;background:#1267d8;color:#fff!important;font-size:14px;font-weight:700;text-decoration:none;white-space:nowrap}
.insv-language-suggest__action:hover{background:#0b58bd;color:#fff!important;text-decoration:none}
.insv-language-suggest__close{position:absolute;right:8px;top:7px;width:28px;height:28px;border:0;background:transparent;color:#6b7d94;font-size:22px;line-height:28px;cursor:pointer;border-radius:50%}
.insv-language-suggest__close:hover{background:rgba(19,35,58,.08);color:#102033}
@media(max-width:767px){.insv-language-suggest{left:16px;right:16px;bottom:16px;width:auto;grid-template-columns:1fr;gap:12px;padding:15px 16px 16px}.insv-language-suggest__copy{padding-right:26px}.insv-language-suggest__action{width:100%}}
/* INSV GEO LANGUAGE SUGGEST END */

/* === INSV NAV DROPDOWN STABILITY BEGIN === */
@media screen and (min-width: 769px) {
    #c_navigation_126_P_1582-17606661880800,
    #c_navigation_126_P_1582-17606661880800 .e_container-21,
    #c_navigation_126_P_1582-17606661880800 .p_navContent,
    #c_navigation_126_P_1582-17606661880800 .p_level1Box,
    #c_navigation_126_P_1582-17606661880800 .p_level1Item {
        overflow: visible !important;
    }

    #c_navigation_126_P_1582-17606661880800 {
        z-index: 10050 !important;
    }

    #c_navigation_126_P_1582-17606661880800 .e_navigationA-35 .p_level2Box {
        display: block !important;
        top: 100% !important;
        margin-top: 10px !important;
        will-change: opacity, transform !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        transform: translate(-50%, 6px) !important;
        transition: opacity .16s ease, transform .16s ease, visibility 0s linear .16s !important;
    }

    #c_navigation_126_P_1582-17606661880800 .e_navigationA-35 .p_level1Item:not(.insv-nav-open) > .p_level2Box,
    #c_navigation_126_P_1582-17606661880800 .e_navigationA-35 .p_level1Item:not(.insv-nav-open):hover > .p_level2Box,
    #c_navigation_126_P_1582-17606661880800 .e_navigationA-35 .p_level1Item:not(.insv-nav-open):focus-within > .p_level2Box {
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        transform: translate(-50%, 6px) !important;
        transition: opacity .16s ease, transform .16s ease, visibility 0s linear .16s !important;
    }

    #c_navigation_126_P_1582-17606661880800 .e_navigationA-35 .p_level1Item.insv-nav-open > .p_level2Box {
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        transform: translate(-50%, 0) !important;
        transition: opacity .16s ease, transform .16s ease, visibility 0s linear 0s !important;
    }

    #c_navigation_126_P_1582-17606661880800 .e_navigationA-35 .p_level2Box::before {
        top: -24px !important;
        height: 24px !important;
    }
}
/* === INSV NAV DROPDOWN STABILITY END === */

/* === INSV HOME PRODUCT HEADING HOTZONE FIX BEGIN ===
   Keep the home product-section heading visually linked, but prevent the
   blank space across the full row from becoming a clickable /products/ area. */
#c_static_001-1753418903463 .e_h1-42 > a[href$="/products/"],
#c_static_001-1753418903463 .e_h1-42 > a[href$="/products"] {
    display: inline-block !important;
    width: auto !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: inherit !important;
}
/* === INSV HOME PRODUCT HEADING HOTZONE FIX END === */


/* === INSV COOKIE PRIVACY UI BEGIN === */
.insv-footer-legal{margin-top:8px!important;font-size:13px!important;line-height:1.5!important;color:#6b778c!important;}
.insv-footer-legal a{color:#1f438c!important;text-decoration:none!important;}
.insv-footer-legal a:hover{color:#0aa7df!important;text-decoration:underline!important;}
.insv-cookie-consent[hidden]{display:none!important;}
.insv-cookie-consent{position:fixed;left:0;right:0;bottom:0;z-index:99990;padding:18px 24px;pointer-events:none;opacity:0;transform:translateY(18px);transition:opacity .22s ease,transform .22s ease;}
.insv-cookie-consent.is-visible{opacity:1;transform:translateY(0);}
.insv-cookie-consent__panel{pointer-events:auto;box-sizing:border-box;width:min(1040px,calc(100vw - 48px));margin:0 auto;padding:22px 24px;background:rgba(255,255,255,.98);border:1px solid rgba(31,67,140,.16);border-top:4px solid #13a8df;box-shadow:0 18px 52px rgba(18,37,63,.18);display:grid;grid-template-columns:1fr auto;gap:18px 26px;align-items:center;}
.insv-cookie-consent__eyebrow{margin:0 0 5px!important;font-size:12px!important;line-height:1.4!important;font-weight:700!important;text-transform:uppercase!important;color:#1f438c!important;letter-spacing:0!important;}
.insv-cookie-consent h2{margin:0 0 8px!important;font-size:24px!important;line-height:1.2!important;font-weight:800!important;color:#18233d!important;letter-spacing:0!important;}
.insv-cookie-consent p{margin:0!important;font-size:14px!important;line-height:1.75!important;color:#39465e!important;}
.insv-cookie-consent a{color:#1f438c!important;text-decoration:underline!important;text-underline-offset:3px;}
.insv-cookie-consent__actions{display:flex;gap:12px;align-items:center;justify-content:flex-end;}
.insv-cookie-consent__button{min-width:138px;height:42px;border-radius:4px;border:1px solid #1f438c;background:#fff;color:#1f438c;font-size:14px;font-weight:700;line-height:1;cursor:pointer;transition:background .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease;}
.insv-cookie-consent__button:hover{box-shadow:0 8px 18px rgba(31,67,140,.14);}
.insv-cookie-consent__button--primary{background:#0b8fe8;border-color:#0b8fe8;color:#fff;}
.insv-cookie-consent__button--primary:hover{background:#0874c8;border-color:#0874c8;}
.insv-cookie-consent__settings{grid-column:1 / -1;border-top:1px solid rgba(31,67,140,.14);padding-top:14px;display:grid;gap:10px;}
.insv-cookie-consent__settings[hidden]{display:none!important;}
.insv-cookie-consent__row{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;padding:12px 0;border-bottom:1px solid rgba(31,67,140,.08);font-size:14px;color:#25324a;}
.insv-cookie-consent__row strong{display:block;margin-bottom:3px;font-size:14px;color:#18233d;}
.insv-cookie-consent__row span{display:block;font-size:13px;line-height:1.55;color:#627086;}
.insv-cookie-consent__row input{width:20px;height:20px;accent-color:#0b8fe8;}
.insv-cookie-consent__always{font-size:12px!important;font-weight:700!important;color:#1f438c!important;white-space:nowrap;}
.insv-cookie-consent__actions--settings{justify-content:flex-end;margin-top:4px;}
.insv-legal-page{background:#f4f8fc;padding:64px 24px 76px;color:#243047;}
.insv-legal-page__inner{max-width:1060px;margin:0 auto;background:#fff;border:1px solid rgba(31,67,140,.12);box-shadow:0 18px 46px rgba(18,37,63,.08);padding:46px 56px;}
.insv-legal-page__eyebrow{margin:0 0 10px!important;font-size:13px!important;font-weight:800!important;text-transform:uppercase!important;color:#0aa7df!important;letter-spacing:0!important;}
.insv-legal-page h1{margin:0 0 14px!important;font-size:38px!important;line-height:1.16!important;color:#18233d!important;font-weight:800!important;letter-spacing:0!important;}
.insv-legal-page__intro{max-width:820px;margin:0 0 26px!important;font-size:16px!important;line-height:1.8!important;color:#536176!important;}
.insv-legal-page__meta{display:flex;flex-wrap:wrap;gap:10px 22px;margin:0 0 34px;padding:14px 0;border-top:1px solid rgba(31,67,140,.1);border-bottom:1px solid rgba(31,67,140,.1);font-size:14px;color:#627086;}
.insv-legal-page h2{margin:32px 0 12px!important;font-size:22px!important;line-height:1.3!important;color:#18233d!important;font-weight:800!important;letter-spacing:0!important;}
.insv-legal-page p,.insv-legal-page li{font-size:15px!important;line-height:1.78!important;color:#39465e!important;}
.insv-legal-page ul{margin:0 0 18px 20px!important;padding:0!important;}
.insv-legal-page a{color:#1f438c!important;text-decoration:underline!important;text-underline-offset:3px;}
@media (max-width: 767px){
  .insv-cookie-consent{padding:10px;}
  .insv-cookie-consent__panel{width:100%;padding:18px 16px;grid-template-columns:1fr;gap:14px;max-height:calc(100vh - 24px);overflow:auto;}
  .insv-cookie-consent__actions{justify-content:stretch;flex-direction:column;align-items:stretch;}
  .insv-cookie-consent__button{width:100%;}
  .insv-cookie-consent__row{grid-template-columns:1fr;gap:9px;}
  .insv-cookie-consent__always{white-space:normal;}
  .insv-legal-page{padding:34px 14px 48px;}
  .insv-legal-page__inner{padding:30px 20px;}
  .insv-legal-page h1{font-size:30px!important;}
}
/* === INSV COOKIE PRIVACY UI END === */


/* === INSV COOKIE PRIVACY COMPACT REVISION BEGIN === */
.insv-cookie-consent{padding:10px 16px!important;}
.insv-cookie-consent__panel{width:min(1040px,calc(100vw - 32px))!important;padding:14px 18px!important;border-top:3px solid #13a8df!important;grid-template-columns:minmax(0,1fr) auto!important;gap:12px 18px!important;align-items:center!important;box-shadow:0 12px 32px rgba(18,37,63,.14)!important;}
.insv-cookie-consent__eyebrow{display:none!important;}
.insv-cookie-consent h2{margin:0 0 3px!important;font-size:18px!important;line-height:1.15!important;}
.insv-cookie-consent p{font-size:13px!important;line-height:1.55!important;max-width:690px!important;}
.insv-cookie-consent__actions{gap:10px!important;}
.insv-cookie-consent__button{min-width:128px!important;height:38px!important;font-size:13px!important;border-radius:4px!important;}
.insv-cookie-consent__settings{padding-top:10px!important;gap:6px!important;}
.insv-cookie-consent__row{padding:8px 0!important;gap:14px!important;}
.insv-cookie-consent__row strong{font-size:13px!important;margin-bottom:2px!important;}
.insv-cookie-consent__row span{font-size:12px!important;line-height:1.45!important;}
.insv-cookie-consent__row input{width:18px!important;height:18px!important;}
.insv-legal-page{padding-top:56px!important;}
body.page-id-2410 .insv-legal-page{margin-top:0!important;}
@media (min-width: 768px){
  .insv-cookie-consent:not(.is-managing) .insv-cookie-consent__panel{min-height:82px!important;}
  .insv-cookie-consent:not(.is-managing) .insv-cookie-consent__main{display:block!important;}
}
@media (max-width: 767px){
  .insv-cookie-consent{padding:8px!important;}
  .insv-cookie-consent__panel{width:100%!important;padding:13px 14px!important;gap:10px!important;}
  .insv-cookie-consent h2{font-size:17px!important;}
  .insv-cookie-consent p{font-size:12px!important;line-height:1.5!important;}
  .insv-cookie-consent__actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;}
  .insv-cookie-consent__button{min-width:0!important;width:100%!important;height:36px!important;font-size:12px!important;}
  .insv-cookie-consent__actions--settings{grid-template-columns:1fr!important;}
}
/* === INSV COOKIE PRIVACY COMPACT REVISION END === */


/* === INSV COOKIE MINI BAR REVISION BEGIN === */
@media (min-width: 768px){
  .insv-cookie-consent{padding:0 0 12px!important;}
  .insv-cookie-consent__panel{width:min(820px,calc(100vw - 32px))!important;margin:0 auto!important;padding:10px 12px!important;border:1px solid rgba(31,67,140,.16)!important;border-left:3px solid #13a8df!important;border-top:1px solid rgba(31,67,140,.16)!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px 14px!important;box-shadow:0 10px 28px rgba(18,37,63,.13)!important;}
  .insv-cookie-consent:not(.is-managing) .insv-cookie-consent__panel{min-height:64px!important;}
  .insv-cookie-consent:not(.is-managing) .insv-cookie-consent__main{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;gap:8px!important;align-items:baseline!important;}
  .insv-cookie-consent:not(.is-managing) h2{font-size:15px!important;line-height:1.2!important;margin:0!important;white-space:nowrap!important;}
  .insv-cookie-consent:not(.is-managing) p{font-size:12px!important;line-height:1.4!important;max-width:none!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
  .insv-cookie-consent:not(.is-managing) .insv-cookie-consent__button{min-width:104px!important;height:34px!important;font-size:12px!important;padding:0 12px!important;}
  .insv-cookie-consent.is-managing .insv-cookie-consent__panel{width:min(760px,calc(100vw - 32px))!important;align-items:start!important;}
  .insv-cookie-consent.is-managing h2{font-size:17px!important;}
  .insv-cookie-consent.is-managing p{font-size:12px!important;line-height:1.45!important;}
}
/* === INSV COOKIE MINI BAR REVISION END === */


/* === INSV COOKIE WIDE BAR FINAL BEGIN === */
@media (min-width: 768px){
  body .insv-cookie-consent{padding:0 0 14px!important;}
  body .insv-cookie-consent .insv-cookie-consent__panel{width:min(1120px,calc(100vw - 64px))!important;min-height:76px!important;margin:0 auto!important;padding:13px 18px!important;border:1px solid rgba(31,67,140,.16)!important;border-left:3px solid #13a8df!important;border-top:1px solid rgba(31,67,140,.16)!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:18px!important;align-items:center!important;background:rgba(255,255,255,.98)!important;box-shadow:0 12px 30px rgba(18,37,63,.13)!important;}
  body .insv-cookie-consent .insv-cookie-consent__main{display:block!important;min-width:0!important;max-width:none!important;}
  body .insv-cookie-consent .insv-cookie-consent__eyebrow{display:none!important;visibility:hidden!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;}
  body .insv-cookie-consent h2{display:block!important;width:auto!important;min-width:0!important;margin:0 0 4px!important;padding:0!important;font-size:15px!important;line-height:1.2!important;text-align:left!important;color:#18233d!important;white-space:normal!important;}
  body .insv-cookie-consent p{display:block!important;width:auto!important;max-width:none!important;margin:0!important;padding:0!important;font-size:12px!important;line-height:1.45!important;color:#39465e!important;overflow:visible!important;-webkit-line-clamp:unset!important;-webkit-box-orient:initial!important;}
  body .insv-cookie-consent .insv-cookie-consent__actions{display:flex!important;flex-direction:row!important;gap:10px!important;align-items:center!important;justify-content:flex-end!important;min-width:250px!important;}
  body .insv-cookie-consent .insv-cookie-consent__button{width:auto!important;min-width:112px!important;height:34px!important;padding:0 14px!important;font-size:12px!important;line-height:1!important;white-space:nowrap!important;}
  body .insv-cookie-consent.is-managing .insv-cookie-consent__panel{width:min(980px,calc(100vw - 64px))!important;align-items:start!important;}
  body .insv-cookie-consent.is-managing .insv-cookie-consent__actions{min-width:250px!important;}
  body .insv-cookie-consent.is-managing .insv-cookie-consent__settings{grid-column:1 / -1!important;}
}
@media (max-width: 767px){
  body .insv-cookie-consent .insv-cookie-consent__panel{display:grid!important;grid-template-columns:1fr!important;}
  body .insv-cookie-consent .insv-cookie-consent__eyebrow{display:none!important;}
  body .insv-cookie-consent h2{font-size:16px!important;margin:0 0 4px!important;}
  body .insv-cookie-consent p{font-size:12px!important;line-height:1.45!important;}
}
/* === INSV COOKIE WIDE BAR FINAL END === */


/* === INSV COOKIE WIDE BAR OVERRIDE FIX BEGIN === */
@media (min-width: 768px){
  body .insv-cookie-consent:not(.is-managing) .insv-cookie-consent__panel{width:min(1120px,calc(100vw - 64px))!important;min-height:74px!important;grid-template-columns:minmax(0,1fr) auto!important;}
  body .insv-cookie-consent:not(.is-managing) .insv-cookie-consent__main{display:block!important;grid-template-columns:none!important;gap:0!important;min-width:0!important;}
  body .insv-cookie-consent:not(.is-managing) .insv-cookie-consent__eyebrow{display:none!important;visibility:hidden!important;height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;}
  body .insv-cookie-consent:not(.is-managing) #insv-cookie-title{display:block!important;width:auto!important;margin:0 0 4px!important;font-size:15px!important;line-height:1.2!important;white-space:normal!important;text-align:left!important;}
  body .insv-cookie-consent:not(.is-managing) #insv-cookie-desc{display:block!important;width:auto!important;max-width:none!important;margin:0!important;font-size:12px!important;line-height:1.45!important;overflow:visible!important;-webkit-line-clamp:unset!important;-webkit-box-orient:initial!important;}
  body .insv-cookie-consent:not(.is-managing) .insv-cookie-consent__actions{min-width:250px!important;}
}
/* === INSV COOKIE WIDE BAR OVERRIDE FIX END === */

/* ============================================================
 * 11. HOMEPAGE ACCESSIBILITY CONTRAST
 * ============================================================ */
body.home #c_static_001-1753418903463 .e_text-27 {
    color: #006fae !important;
}
body.home .e_text-28 a {
    color: #4b5563 !important;
}
body.home .e_button-41.s_button3,
body.home .e_button-41.s_button3 > span {
    color: #005f9e !important;
}
body.home .home-news-top-card__date,
body.home .home-news-list__date {
    color: #5f6f85 !important;
}
body.home .home-news-top-card__excerpt-link {
    color: #4f5f72 !important;
}

body.home .e_button-11.s_button3,
body.home .e_button-11.s_button3 > span,
.insv-cookie-consent__button--primary {
    background-color: #0b4d8b !important;
    border-color: #0b4d8b !important;
    color: #ffffff !important;
}

.e_navigationA-35 .p_level2Item .p_menu2Item a,
.e_navigationA-35 .p_level2Item .p_menu2Item span,
.p_navContent .p_level2Item .p_menu2Item a,
.p_navContent .p_level2Item .p_menu2Item span {
    color: #263445 !important;
}

.p_level2Box.s_templatesum .p_level2Item .p_menu2Item,
.p_level2Box.s_templatesum .p_level2Item .p_menu2Item a,
.p_level2Box.s_templatesum .p_level2Item .p_menu2Item span {
    color: #4b5563 !important;
}

body.home #c_static_001-17575728213000 .e_text-27 {
    color: #006fae !important;
}
body.home .e_text-46 a {
    color: #4b5563 !important;
}

