/* IMV Platform 页面特有样式 */ /* 隐藏原生滚动条但保持滚动功能 */ body  {
    scrollbar-width: none;
    /* Firefox */ -ms-overflow-style: none;
    /* IE and Edge */
}
body::-webkit-scrollbar  {
    display: none;
    /* Chrome,
    Safari,
    Opera */
}
.scroll-container  {
    scrollbar-width: none;
    -ms-overflow-style: none;

}
.scroll-container::-webkit-scrollbar  {
    display: none;

}
.scroll-content  {
    scrollbar-width: none;
    -ms-overflow-style: none;
    padding-top: calc(80 * 100vw / 1920);

}
.scroll-content::-webkit-scrollbar  {
    display: none;

}
/* Banner部分 */ .imv-banner  {
    position: relative;
    width: 100vw;
    height: calc(769 * 100vw / 1920);
    /* 移除背景图片 */ /* background: url('../../images/IMV/IMV-banner.jpg') no-repeat center center;
    */ /* background-size: cover;
    */ display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;

}
/* 添加视频背景容器 */ .imv-banner .banner-background  {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;

}
/* 视频样式 */ .imv-banner .banner-video  {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;

}
/* 黑色透明蒙版 */ .imv-banner .video-overlay  {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4);
    /* 黑色透明蒙版，透明度为0.4 */ z-index: 2;
    /* 初始隐藏，延迟显示 */
    opacity: 0;
    transition: opacity 0.5s ease;

}

/* 蒙版延迟显示状态 */
.imv-banner .video-overlay.delayed-show {
    opacity: 1;
}
.banner-content h1  {
    position: absolute;
    width: 100%;
    top: calc(250 * 100vw / 1920);
    font-size: calc(70 * 100vw / 1920);
    font-weight: bold;
    line-height: normal;
    text-align: center;
    letter-spacing: 0em;
    font-variation-settings: "opsz" auto;
    color: #FFFFFF;
    opacity: 0;
    animation: fadeInUp 1s ease forwards;

}
.banner-content  {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    text-align: center;
    color: #fff;
    z-index: 3;

}
.banner-content .subtitle  {
    position: absolute;
    width: 100%;
    top: calc(350 * 100vw / 1920);
    font-size: calc(70 * 100vw / 1920);
    font-weight: bold;
    line-height: normal;
    text-align: center;
    letter-spacing: 0em;
    font-variation-settings: "opsz" auto;
    color: #FFFFFF;
    opacity: 0;
    animation: fadeInUp 1s ease forwards 0.3s;

}
.banner-content .slogan  {
    position: absolute;
    width: 100%;
    top: calc(490 * 100vw / 1920);
    font-size: calc(30 * 100vw / 1920);
    font-weight: bold;
    line-height: calc(26 * 100vw / 1920);
    text-align: center;
    letter-spacing: 0em;
    font-variation-settings: "opsz" auto;
    color: #FFFFFF;
    opacity: 0;
    animation: fadeInUp 1s ease forwards 0.6s;

}
.banner-content .consult-btn  {
    position: absolute;
    top: calc(641 * 100vw / 1920);
    left: 0;
    right: 0;
    margin: 0 auto;
    width: fit-content;
    /* 注意：合作咨询按钮的样式已移至组件CSS文件，此处仅保留位置定位 */
}
/* 通用section样式 */ section:not(.imv-banner)  {
    padding-top: calc(100 * 100vw / 1920) ;
    /* background: #fff;
    */
}
.container  {
    max-width: calc(1920 * 100vw / 1920);
    padding: 0 calc(160 * 100vw / 1920);

}
/* 标题组样式 */ .title-group  {
    position: relative;
    height: calc(200 * 100vw / 1920);
    margin-bottom: 0;
    top: calc(100 * 100vw / 1920);
    z-index: 2;

}
.title-group .subtitle  {
    position: absolute;
    /* left: calc(23 * 100vw / 1920);
    */ top: calc(0 * 100vw / 1920);
    /* width: calc(133 * 100vw / 1920);
    */ height: calc(18 * 100vw / 1920);
    font-size: calc(18 * 100vw / 1920);
    font-weight: 600;
    line-height: calc(22 * 100vw / 1920);
    text-transform: uppercase;
    letter-spacing: 0em;
    font-variation-settings: "opsz" auto;
    color: #5C5D95;

}
.title-group .subtitle::before  {
    content: '';
    position: absolute;
    left: calc(-23 * 100vw / 1920);
    top: calc(6 * 100vw / 1920);
    width: calc(9 * 100vw / 1920);
    height: calc(9 * 100vw / 1920);
    background-color: #5C5D95;
    border-radius: 50%;

}
.title-group .main-title  {
    position: absolute;
    /* left: calc(22 * 100vw / 1920);
    */ top: calc(32 * 100vw / 1920);
    width: calc(1559 * 100vw / 1920);
    height: calc(137 * 100vw / 1920);
    font-size: calc(50 * 100vw / 1920);
    font-weight: bold;
    line-height: 136%;
    letter-spacing: 0em;
    font-variation-settings: "opsz" auto;
    color: #6D99F0;
    background: radial-gradient(141% 141% at 4% -5%,
    rgba(98, 208, 244, 0.95) 28%, #6D99F0 72%, #90B2F6 100%, #2E1FA2 100%, #2E1FA2 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
    text-align: left;

}
.title-group .intro-text  {
    position: absolute;
    /* left: calc(22 * 100vw / 1920);
    */ top: calc(209 * 100vw / 1920);
    width: calc(1559 * 100vw / 1920);
    height: calc(65 * 100vw / 1920);
    font-size: calc(18 * 100vw / 1920);
    font-weight: 200;
    line-height: 180%;
    letter-spacing: 0em;
    color: #3A3937;
    opacity: 0.8;

}
/* 内容区域样式 */ .intro-content,
.architecture-content,
.technology-content  {
    max-width: calc(800 * 100vw / 1920);
    margin: 0 auto;
    text-align: center;
    line-height: 1.8;

}
.intro-content p,
.architecture-content p  {
    margin-bottom: calc(20 * 100vw / 1920);
    font-size: calc(18 * 100vw / 1920);
    color: #666;

}
/* 动画效果 */ @keyframes fadeInUp   {

    from  {
        opacity: 0;
        transform: translateY(30px);

    }
    to  {
        opacity: 1;
        transform: translateY(0);

    }

}
/* 特性卡片样式 */ .feature-cards  {
    position: relative;
    top: calc(0 * 100vw / 1920);
    /* margin: 0 auto;
    */ margin-top: calc(240 * 100vw / 1920);
    margin-bottom: 0;
    display: flex;
    gap: calc(20 * 100vw / 1920);
    z-index: 2;
    justify-content: left;
    width: calc(1559 * 100vw / 1920);

}
.feature-card  {
    position: relative;
    width: calc(375 * 100vw / 1920);
    height: calc(466 * 100vw / 1920);
    background: transparent;
    opacity: 1;
    overflow: hidden;
    box-sizing: border-box;
    border: 2px solid;
    border-image: radial-gradient(141% 141% at 4% -5%,
    rgba(98, 208, 244, 0.95) 28%, #6D99F0 72%, #90B2F6 100%, #2E1FA2 100%, #2E1FA2 100%) 2;
    background-size: cover;
    background-position: center;
    transition: all 0.3s ease;

}
.feature-card:nth-child(1)  {
    background-image: url('../../images/IMV/k1.jpg');

}
.feature-card:nth-child(2)  {
    background-image: url('../../images/IMV/k2.jpg');

}
.feature-card:nth-child(3)  {
    background-image: url('../../images/IMV/k3.jpg');

}
.feature-card:nth-child(4)  {
    background-image: url('../../images/IMV/k4.jpg');

}
.feature-card.active  {
    background-image: none;
    background-color: #FFFFFF;
    transition: all 0.3s ease;

}
.feature-card .card-title  {
    position: absolute;
    left: calc(44 * 100vw / 1920);
    top: calc(65 * 100vw / 1920);
    font-size: calc(38 * 100vw / 1920);
    font-weight: 900;
    line-height: 1.5;
    text-align: left;
    letter-spacing: 0;
    color: #6D99F0;
    background: radial-gradient(141% 141% at 4% -5%,
    rgba(98, 208, 244, 0.95) 28%, #6D99F0 72%, #90B2F6 100%, #2E1FA2 100%, #2E1FA2 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
    transition: all 0s ease,
    transform 0.5s ease,
    opacity 0.5s ease;
    opacity: 0;
    visibility: hidden;
    transform: translateY(20px);

}
.feature-card .card-subtitle  {
    position: absolute;
    left: calc(44 * 100vw / 1920);
    top: calc(44 * 100vw / 1920);
    font-size: calc(12 * 100vw / 1920);
    font-weight: normal;
    line-height: 1.2;
    text-align: left;
    letter-spacing: 0;
    color: #6D99F0;
    background: radial-gradient(141% 141% at 4% -5%,
    rgba(98, 208, 244, 0.95) 28%, #6D99F0 72%, #90B2F6 100%, #2E1FA2 100%, #2E1FA2 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
    transition: all 0s ease,
    transform 0.5s ease,
    opacity 0.5s ease;
    opacity: 0;
    visibility: hidden;
    transform: translateY(20px);

}
.feature-card .card-desc  {
    position: absolute;
    left: calc(44 * 100vw / 1920);
    bottom: calc(44 * 100vw / 1920);
    width: calc(285 * 100vw / 1920);
    font-size: calc(14 * 100vw / 1920);
    font-weight: 200;
    line-height: 1.6;
    text-align: left;
    letter-spacing: 0;
    color: #6588D9;
    transition: all 0.3s ease,
    transform 0.5s ease,
    opacity 0.5s ease;
    opacity: 0;
    visibility: hidden;
    transform: translateY(20px);

}
/* 设置悬浮或激活时的动画延迟 */ .feature-card:hover .card-title,
.feature-card.active .card-title  {
    transition-delay: 0s;

}
.feature-card:hover .card-subtitle,
.feature-card.active .card-subtitle  {
    transition-delay: 0.1s;

}
.feature-card:hover .card-desc,
.feature-card.active .card-desc  {
    transition-delay: 0.2s;

}
/* 鼠标悬浮和激活时显示文字 */ .feature-card:hover .card-title,
.feature-card:hover .card-subtitle,
.feature-card:hover .card-desc,
.feature-card.active .card-title,
.feature-card.active .card-subtitle,
.feature-card.active .card-desc  {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);

}
.feature-card .starfield-canvas  {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 1s ease;
    pointer-events: none;
    z-index: 1;

}
.feature-card:hover .starfield-canvas  {
    opacity: 0.1;

}
.feature-card::before  {
    content: attr(data-title);
    position: absolute;
    left: calc(30 * 100vw / 1920);
    bottom: calc(30 * 100vw / 1920);
    font-size: calc(28 * 100vw / 1920);
    font-weight: bold;
    color: #FFFFFF;
    z-index: 2;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);

}
.feature-card::after  {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: calc(100 * 100vw / 1920);
    background: linear-gradient(to bottom,
    transparent,
    rgba(0, 0, 0, 0.7));
    z-index: 1;

}
/* 当卡片处于active状态时隐藏图片上的标题 */ .feature-card.active::before,
.feature-card.active::after  {
    display: none;

}
.imv-intro  {
    background-color: #FFFFFF;
    position: relative;
    opacity: 1;
    /* 修改为默认可见 */
}
.imv-intro.animate-in  {
    animation: slideUpIn 0.8s ease-out forwards;

}
.imv-intro .title-group .subtitle,
.imv-intro .title-group .main-title,
.imv-intro .title-group .intro-text  {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.6s ease-out,
    transform 0.6s ease-out;

}
.imv-intro.animate-in .title-group .subtitle  {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.2s;

}
.imv-intro.animate-in .title-group .main-title  {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.4s;

}
.imv-intro.animate-in .title-group .intro-text  {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.6s;

}
.imv-intro .feature-card  {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.6s ease-out,
    transform 0.6s ease-out;

}
.imv-intro.animate-in .feature-card:nth-child(1)  {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.7s;

}
.imv-intro.animate-in .feature-card:nth-child(2)  {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.8s;

}
.imv-intro.animate-in .feature-card:nth-child(3)  {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.9s;

}
.imv-intro.animate-in .feature-card:nth-child(4)  {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 1s;

}
.imv-intro .decoration-ball  {
    position: absolute;
    left: calc(-164 * 100vw / 1920);
    top: calc(347 * 100vw / 1920);
    width: calc(939 * 100vw / 1920);
    height: calc(939 * 100vw / 1920);
    opacity: 0.8;
    background: radial-gradient(141% 141% at 4% -5%,
    rgba(98, 208, 244, 0.95) 28%, #6D99F0 72%, #90B2F6 100%, #2E1FA2 100%, #2E1FA2 100%);
    filter: blur(calc(337 * 100vw / 1920));
    pointer-events: none;
    z-index: 1;

}
.imv-architecture  {
    padding: calc(100 * 100vw / 1920) 0;
    background: #FFFFFF;
    position: relative;

}
.imv-architecture .container  {
    max-width: calc(1920 * 100vw / 1920) !important;
    margin: calc(0 * 100vw / 1920) !important;

}
.imv-architecture .architecture-images  {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: calc(20 * 100vw / 1920);
    position: relative;
    margin-top: calc(60 * 100vw / 1920);

}
.imv-architecture .arch-img  {
    display: block;
    transition: all 0.5s ease;
    position: relative;
    z-index: 1;
    cursor: pointer;

}
.imv-architecture .arch-img-1  {
    width: calc(1130 * 100vw / 1920);
    height: calc(442 * 100vw / 1920);

}
.imv-architecture .arch-img-2  {
    width: calc(1364 * 100vw / 1920);
    height: calc(350 * 100vw / 1920);

}
.imv-architecture .arch-img-3  {
    width: calc(1004 * 100vw / 1920);
    height: calc(170 * 100vw / 1920);

}
.imv-architecture .architecture-content  {
    width: 100%;
    text-align: center;

}
.imv-architecture .main-title  {
    position: relative;
    display: inline-block;
    font-size: calc(66 * 100vw / 1920);
    font-weight: bold;
    line-height: normal;
    letter-spacing: 0em;
    font-variation-settings: "opsz" auto;
    background: radial-gradient(141% 141% at 4% -5%,
    rgba(98, 208, 244, 0.95) 28%, #6D99F0 72%, #90B2F6 100%, #2E1FA2 100%, #2E1FA2 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    width: fit-content;
    margin: 0 auto;
    text-align: center;

}
.carousel-container  {
    margin-top: calc(73 * 100vw / 1920);
    position: relative;
    left: calc(0 * 100vw / 1920);

}
.carousel-tabs  {
    display: flex;
    gap: calc(10 * 100vw / 1920);
    margin-bottom: 0;
    position: relative;
    width: calc(1240 * 100vw / 1920);
    overflow: hidden;
    left: calc(-20 * 100vw / 1920);

}
.carousel-tabs .inner-container  {
    display: flex;
    gap: calc(15 * 100vw / 1920);
    transition: transform 0.5s ease;
    width: max-content;

}
.carousel-tabs .tab  {
    width: calc(413 * 100vw / 1920);
    height: calc(100 * 100vw / 1920);
    position: relative;
    cursor: pointer;
    opacity: 0.4;
    background: #FFFFFF;
    transition: all 0.3s ease;
    flex-shrink: 0;

}
.carousel-tabs .tab::before  {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background: #6567DE;
    transition: all 0.3s ease;

}
.carousel-tabs .tab.active  {
    opacity: 1;
    background: linear-gradient(270deg,
    rgba(150, 89, 255, 0.1) 0%,
    rgba(89, 159, 255, 0) 100%);

}
.carousel-tabs .tab.active::before  {
    height: 2px;
    background: linear-gradient(90deg, #7B53EB 0%, #645EEF 50%, #5068F2 100%);

}
.carousel-tabs .tab-number  {
    display: none;
    position: absolute;
    left: calc(20 * 100vw / 1920);
    top: 50%;
    transform: translateY(-50%);
    font-size: calc(60 * 100vw / 1920);
    font-weight: normal;
    line-height: 190%;
    letter-spacing: 0em;
    background: linear-gradient(180deg,
    #9496FC 40%,
    rgba(255, 255, 255, 0) 75%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;

}
.carousel-tabs .tab.active .tab-number  {
    display: block;

}
.carousel-tabs .tab-content  {
    padding: calc(20 * 100vw / 1920);
    transition: all 0.3s ease;
    white-space: nowrap;

}
.carousel-tabs .tab.active .tab-content  {
    padding-left: calc(100 * 100vw / 1920);

}
.carousel-tabs .tab-content h3  {
    font-size: calc(24 * 100vw / 1920);
    font-weight: bold;
    color: #6A6DF3;
    margin-bottom: calc(0 * 100vw / 1920);

}
.carousel-tabs .tab-content p  {
    font-size: calc(14 * 100vw / 1920);
    color: #6A6DF3;
    opacity: 0.8;

}
.carousel-main  {
    position: relative;
    width: calc(1559 * 100vw / 1920) !important;
    height: calc(590 * 100vw / 1920) !important;
    overflow: hidden;

}
.carousel-main::after  {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 50%;
    background: linear-gradient(to top,
    rgba(0, 0, 0, 0.5), transparent);
    z-index: 1;
    pointer-events: none;

}
.carousel-main img  {
    width: calc(1559 * 100vw / 1920) !important;
    height: calc(590 * 100vw / 1920) !important;
    object-fit: cover;

}
.carousel-main .image-caption  {
    position: absolute;
    left: calc(40 * 100vw / 1920);
    bottom: calc(40 * 100vw / 1920);
    color: #FFFFFF;
    z-index: 2;

}
.carousel-main .caption-small  {
    font-size: calc(12 * 100vw / 1920);
    margin-bottom: calc(8 * 100vw / 1920);
    font-weight: 600;
    line-height: 150%;
    text-transform: uppercase;
    letter-spacing: 0em;
    font-variation-settings: "opsz" auto;
    color: #FFFFFF;
    opacity: 0;
    transform: translateY(15px);
    transition: opacity 0.5s ease,
    transform 0.5s ease;

}
.carousel-main .caption-large  {
    font-size: calc(38 * 100vw / 1920);
    font-weight: bold;
    line-height: 150%;
    letter-spacing: 0em;
    font-variation-settings: "opsz" auto;
    color: #FFFFFF;
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.5s ease 0.1s,
    transform 0.5s ease 0.1s;

}
/* 当图片加载完成后，触发动画 */ .carousel-main .image-caption.show-caption .caption-small,
.carousel-main .image-caption.show-caption .caption-large  {
    opacity: 1;
    transform: translateY(0);

}
.carousel-description  {
    position: relative;
    margin-top: calc(27 * 100vw / 1920);
    display: flex;
    align-items: center;

}
.carousel-description .description-line  {
    position: relative;
    width: calc(2 * 100vw / 1920);
    height: calc(52 * 100vw / 1920);
    background: linear-gradient(180deg, #96A6EC 0%, #eceffd 100%);

}
.carousel-description .description-text  {
    position: relative;
    margin-left: calc(24 * 100vw / 1920);
    width: calc(1440 * 100vw / 1920);
    font-size: calc(18 * 100vw / 1920);
    font-weight: 100;
    line-height: 190%;
    color: #2F2F2F;

}
.carousel-progress  {
    position: absolute;
    right: calc(38 * 100vw / 1920);
    top: calc(-2 * 100vw / 1920);
    display: flex;
    flex-direction: row;
    gap: calc(6 * 100vw / 1920);

}
.carousel-progress .progress-item  {
    width: calc(7 * 100vw / 1920);
    height: calc(7 * 100vw / 1920);
    background: rgba(101, 103, 222, 0.3);
    border-radius: calc(7 * 100vw / 1920);
    cursor: pointer;
    transition: all 0.5s ease;

}
.carousel-progress .progress-item.active  {
    width: calc(70 * 100vw / 1920);
    background: #6567DE;

}
.imv-value  {
    margin-top: 0;

}
.imv-value .container  {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    /* padding: calc(100 * 100vw / 1920);
    */ text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;

}
.imv-value .title-group  {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    height: auto;
    margin-bottom: calc(0 * 100vw / 1920);

}
.imv-value .title-group .subtitle  {
    position: relative;
    left: auto;
    display: inline-block;

}
.imv-value .title-group .subtitle::before  {
    left: calc(-13 * 100vw / 1920);

}
.imv-value .title-group .main-title  {
    position: relative;
    left: auto;
    margin-top: calc(0 * 100vw / 1920);
    width: auto;
    height: auto;
    text-align: center;

}
.imv-technology .main-title,
.imv-value .main-title  {
    position: relative;
    display: inline-block;
    font-size: calc(66 * 100vw / 1920);
    font-weight: bold;
    line-height: normal;
    letter-spacing: 0em;
    font-variation-settings: "opsz" auto;
    color: #6D99F0;
    background: radial-gradient(141% 141% at 4% -5%,
    rgba(98, 208, 244, 0.95) 28%, #6D99F0 72%, #90B2F6 100%, #2E1FA2 100%, #2E1FA2 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
    width: fit-content;
    margin: 0 auto;
    text-align: left;

}
.imv-value .value-content  {
    margin-top: calc(200 * 100vw / 1920);
    width: calc(1559 * 100vw / 1920);
    height: calc(753 * 100vw / 1920);
    margin-left: auto;
    margin-right: auto;
    border-top: 1px solid #B8C8FC;
    border-bottom: 1px solid #B8C8FC;
    position: relative;
    max-width: none;

}
.value-content .value-list  {
    width: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    display: flex;
    flex-direction: column;

}
.value-content .value-item  {
    position: relative;
    height: calc(70 * 100vw / 1920);
    transition: all 0s cubic-bezier(0.5,0, 0.5, 1);
    overflow: hidden;
    cursor: pointer;

}
.value-content .value-item.active  {
    height: calc(333 * 100vw / 1920);

}
.value-content .value-item .item-content  {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: calc(333 * 100vw / 1920);
    opacity: 0;
    visibility: hidden;
    transition: all 0s cubic-bezier(0.4, 0, 0.2, 1);

}
.value-content .value-item.active .item-content  {
    opacity: 1;
    visibility: visible;

}
.value-content .value-item:not(:last-child)::after  {
    content: '';
    position: absolute;
    left: calc(563 * 100vw / 1920);
    bottom: 0;
    width: calc(995 * 100vw / 1920);
    height: 1px;
    background-color: #B8C8FC;

}
.value-content .value-item.active .cn-text,
.value-content .value-item.active .en-text  {
    opacity: 0;
    visibility: hidden;
    transform: translateY(-30%);

}
.value-content .value-item .cn-text,
.value-content .value-item .en-text  {
    position: absolute;
    font-size: calc(20 * 100vw / 1920);
    top: 50%;
    transform: translateY(-50%);
    font-weight: 100;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);

}
.value-content .value-item .cn-text  {
    left: calc(608 * 100vw / 1920);
    color: #696875;

}
.value-content .value-item .en-text  {
    left: calc(973 * 100vw / 1920);
    color: #7885E1;

}
.value-content .value-item:hover .cn-text,
.value-content .value-item:hover .en-text  {
    color: #6567DE;

}
.value-content .core-images  {
    display: flex;
    width: 100%;
    height: 100%;

}
.value-content .core-left  {
    width: calc(564 * 100vw / 1920);
    height: 100%;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    transition: transform 0.6s ease-out,
    filter 0.6s ease-out;
    transform-origin: center;
    overflow: hidden;
    /* 默认稍微变暗，鼠标悬浮时恢复并放大 */ filter: brightness(0.9);

}
/* 添加左侧图片悬浮放大效果 */ .value-content .value-item.active:hover .core-left  {
    transform: scale(1.08);
    filter: brightness(1.05);

}
.value-content .core-right  {
    width: calc(995 * 100vw / 1920);
    height: 100%;
    background: url('../../images/CORE-bg.png') no-repeat center center;
    background-size: cover;
    position: relative;

}
.value-content .core-right .en-title  {
    position: absolute;
    left: calc(45 * 100vw / 1920);
    top: calc(40 * 100vw / 1920);
    font-size: calc(12 * 100vw / 1920);
    color: #FFFFFF;
    opacity: 0;
    transform: translateY(calc(20 * 100vw / 1920));
    transition: opacity 0.6s ease,
    transform 0.6s ease;

}
.value-content .core-right .cn-title  {
    position: absolute;
    left: calc(45 * 100vw / 1920);
    top: calc(60 * 100vw / 1920);
    font-size: calc(38 * 100vw / 1920);
    font-weight: bold;
    color: #FFFFFF;
    opacity: 0;
    transform: translateY(calc(20 * 100vw / 1920));
    transition: opacity 0.6s ease 0.1s,
    transform 0.6s ease 0.1s;

}
.value-content .core-right .description  {
    position: absolute;
    left: calc(45 * 100vw / 1920);
    bottom: calc(40 * 100vw / 1920);
    width: calc(832 * 100vw / 1920);
    font-size: calc(18 * 100vw / 1920);
    color: #FFFFFF;
    line-height: 1.5;
    font-weight: 100;
    text-align: left;
    opacity: 0;
    transform: translateY(calc(20 * 100vw / 1920));
    transition: opacity 0.6s ease 0.2s,
    transform 0.6s ease 0.2s;

}
/* 当value-item处于active状态时显示文字，并在鼠标悬浮时触发上滑动画 */ .value-content .value-item.active .core-right .en-title,
.value-content .value-item.active .core-right .cn-title,
.value-content .value-item.active .core-right .description  {
    opacity: 1;
    transform: translateY(0);

}
/* 当用户悬浮在active的item上时，重置动画以便再次触发 */ .value-content .value-item.active:hover .core-right .en-title  {
    animation: slideUpFadeIn 0.6s ease forwards;

}
.value-content .value-item.active:hover .core-right .cn-title  {
    animation: slideUpFadeIn 0.6s ease forwards 0.1s;

}
.value-content .value-item.active:hover .core-right .description  {
    animation: slideUpFadeIn 0.6s ease forwards 0.2s;

}
@keyframes slideUpFadeIn   {

    0%  {
        opacity: 0;
        transform: translateY(calc(20 * 100vw / 1920));

    }
    100%  {
        opacity: 1;
        transform: translateY(0);

    }

}
.value-content .value-item:nth-child(1) .core-left  {
    background-image: url('../../images/IMV/k1.jpg');

}
.value-content .value-item:nth-child(2) .core-left  {
    background-image: url('../../images/IMV/k2.jpg');

}
.value-content .value-item:nth-child(3) .core-left  {
    background-image: url('../../images/IMV/k3.jpg');

}
.value-content .value-item:nth-child(4) .core-left  {
    background-image: url('../../images/IMV/k4.jpg');

}
.imv-application .container  {
    width: 100%;
    max-width: calc(1559 * 100vw / 1920);
    margin: 0 auto;
    padding: 0;
    text-align: left;
    margin-top: 0;

}
.imv-application .title-group  {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
    margin-bottom: calc(0 * 100vw / 1920);
    margin-left: calc(0 * 100vw / 1920);

}
.imv-application .title-group .subtitle  {
    /* position: relative;
    */ left: auto;
    display: inline-block;

}
.imv-application .title-group .subtitle::before  {
    left: calc(-13 * 100vw / 1920);

}
.imv-application .title-group .main-title  {
    position: relative;
    font-size: calc(66 * 100vw / 1920);
    font-weight: 600;
    left: auto;
    margin-top: calc(0 * 100vw / 1920);
    width: auto;
    height: auto;
    text-align: left;
    background: radial-gradient(141% 141% at 4% -5%,
    rgba(98, 208, 244, 0.95) 28%, #6D99F0 72%, #90B2F6 100%, #2E1FA2 100%, #2E1FA2 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;

}
/* 应用场景图片展示 */ .application-gallery  {
    margin-top: calc(80 * 100vw / 1920);
    width: calc(1559 * 100vw / 1920);
    height: calc(755 * 100vw / 1920);
    margin-left: auto;
    margin-right: auto;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;

}
.application-gallery .gallery-item  {
    position: absolute;
    height: 100%;
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
    overflow: hidden;

}
.application-gallery .gallery-item .title-wrapper  {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding-bottom: calc(80 * 100vw / 1920);
    padding-left: calc(56 * 100vw / 1920);
    z-index: 3;
    pointer-events: none;

}
.application-gallery .gallery-item:not(.active) .title-wrapper  {
    justify-content: center;
    align-items: flex-start;
    padding: calc(300 * 100vw / 1920) 0 0 0;
    flex-direction: row;
    gap: calc(10 * 100vw / 1920);

}
.application-gallery .gallery-item .en-title,
.application-gallery .gallery-item .cn-title  {
    transition: none;

}
.application-gallery .gallery-item.active .en-title  {
    position: absolute;
    left: calc(56 * 100vw / 1920);
    bottom: calc(140 * 100vw / 1920);
    font-size: calc(12 * 100vw / 1920);
    color: #FFFFFF;
    transform: none;
    transition: none;

}
.application-gallery .gallery-item.active .cn-title  {
    position: absolute;
    left: calc(56 * 100vw / 1920);
    bottom: calc(80 * 100vw / 1920);
    font-size: calc(38 * 100vw / 1920);
    color: #FFFFFF;
    transform: none;
    transition: none;

}
.application-gallery .gallery-item:not(.active) .en-title,
.application-gallery .gallery-item:not(.active) .cn-title  {
    text-transform: uppercase;
    writing-mode: vertical-lr;
    transform: rotate(0deg);
    transition: none;

}
.application-gallery .gallery-item:not(.active) .en-title  {
    font-size: calc(14 * 100vw / 1920);
    font-weight: 400;
    color: #ffffff;

}
.application-gallery .gallery-item:not(.active) .cn-title  {
    font-size: calc(20 * 100vw / 1920);
    font-weight: 400;
    color: #ffffff;

}
.application-gallery .gallery-item img  {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);

}
.application-gallery .gallery-item:not(.active) img  {
    opacity: 1;

}
.application-gallery .gallery-item.active img  {
    opacity: 1;

}
.application-gallery .gallery-item .mask  {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: hsla(235, 60%, 13%, 0.7);
    transition: all 0.5s cubic-bezier(1, 0, 0, 0);
    pointer-events: none;

}
/* 计算每个图片的位置和宽度 */ .application-gallery .gallery-item:nth-child(1),
.application-gallery .gallery-item:nth-child(2),
.application-gallery .gallery-item:nth-child(3),
.application-gallery .gallery-item:nth-child(4),
.application-gallery .gallery-item:nth-child(5),
.application-gallery .gallery-item:nth-child(6)  {
    transform: translateX(0);
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);

}
.application-gallery .gallery-item:nth-child(7),
.application-gallery .gallery-item:nth-child(8)  {
    display: none;

}
/* 蒙版效果 */ .application-gallery .gallery-item:hover .mask  {
    opacity: 0;

}
.application-gallery .gallery-item:hover ~ .gallery-item .mask  {
    opacity: 1;

}
.application-gallery .gallery-item.active .mask  {
    opacity: 0;

}
.application-gallery .gallery-item:not(.active) .mask  {
    opacity: 1;

}
.carousel-slide .image-caption  {
    position: absolute;
    left: calc(40 * 100vw / 1920);
    bottom: calc(40 * 100vw / 1920);
    color: #FFFFFF;
    z-index: 2;

}
/* 图片查看器样式 */ .image-viewer  {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.9);
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;

}
.image-viewer.active  {
    opacity: 1;
    visibility: visible;

}
.image-viewer .viewer-content  {
    position: relative;
    width: 80%;
    height: 80%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

}
.image-viewer .viewer-image  {
    max-width: 100%;
    max-height: 85%;
    object-fit: contain;
    flex-shrink: 0;
    border-radius: calc(4 * 100vw / 1920);
    box-shadow: 0 0 calc(30 * 100vw / 1920) rgba(0, 0, 0, 0.5);

}
.image-viewer .close-viewer  {
    position: absolute;
    top: calc(-60 * 100vw / 1920);
    right: calc(-60 * 100vw / 1920);
    width: calc(40 * 100vw / 1920);
    height: calc(40 * 100vw / 1920);
    cursor: pointer;

}
.image-viewer .close-viewer:hover  {
    transform: rotate(90deg);
    transition: transform 0.3s ease;

}
.image-viewer .close-viewer:before  {
    content: '×';
    font-size: calc(40 * 100vw / 1920);
    color: white;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);

}
.image-viewer .viewer-caption  {
    position: relative;
    bottom: auto;
    left: 0;
    width: 100%;
    text-align: center;
    color: #FFFFFF;
    margin-top: calc(20 * 100vw / 1920);

}
.image-viewer .viewer-caption .en-title  {
    font-size: calc(14 * 100vw / 1920);
    text-transform: uppercase;
    margin-bottom: calc(8 * 100vw / 1920);

}
.image-viewer .viewer-caption .cn-title  {
    font-size: calc(24 * 100vw / 1920);
    font-weight: bold;

}
/* 添加向上滑动的入场动画 */ @keyframes slideUpIn   {

    from  {
        transform: translateY(50px);
        opacity: 0;

    }
    to  {
        transform: translateY(0);
        opacity: 1;

    }

}
/* 移动端适配 */ @media screen and (max-width: 768px)   {

    .imv-banner  {
        height: calc(1100 * 100vw / 750);
        /* 增加移动端banner高度 */
    }
    .banner-content  {
        position: relative;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        padding: 0 calc(30 * 100vw / 750);
        height: 100%;

    }
    .banner-content h1  {
        position: relative;
        top: auto;
        font-size: calc(60 * 100vw / 750);
        margin-bottom: calc(30 * 100vw / 750);

    }
    .banner-content .subtitle  {
        position: relative;
        top: auto;
        font-size: calc(60 * 100vw / 750);
        margin-bottom: calc(30 * 100vw / 750);

    }
    .banner-content .slogan  {
        position: relative;
        top: auto;
        font-size: calc(32 * 100vw / 750);
        line-height: 1.4;
        margin-bottom: calc(50 * 100vw / 750);

    }
    .banner-content .consult-btn  {
        position: absolute;
        top: auto;
        bottom: calc(40 * 100vw / 750);
        left: 0;
        right: 0;
        margin: 0 auto;

    }

/* 手机版图片查看器适配 */
.image-viewer .viewer-content {
    width: 95%;
    height: 90%;
    padding: calc(20 * 100vw / 750);
    flex-direction: column;
    justify-content: center;
}

.image-viewer .viewer-image {
    max-width: 100%;
    max-height: 85%;
    object-fit: contain;
}

.image-viewer .close-viewer {
    top: calc(-60 * 100vw / 750);
    right: calc(-10 * 100vw / 750);
    width: calc(60 * 100vw / 750);
    height: calc(60 * 100vw / 750);
    background: rgba(255, 255, 255, 0.3);
    border-radius: 50%;
}

.image-viewer .close-viewer:before {
    font-size: calc(40 * 100vw / 750);
}

.image-viewer .viewer-caption {
    position: relative;
    bottom: auto;
    margin-top: calc(20 * 100vw / 750);
    padding: 0 calc(20 * 100vw / 750);
}

.image-viewer .viewer-caption .en-title {
    font-size: calc(20 * 100vw / 750);
    margin-bottom: calc(8 * 100vw / 750);
}

.image-viewer .viewer-caption .cn-title {
    font-size: calc(32 * 100vw / 750);
    font-weight: bold;
}

/* 手机版应用场景区域适配 */
.application-gallery .gallery-item.active {
    cursor: pointer;
}

/* 手机版feature-card禁用交互操作 */
.feature-card {
    pointer-events: none !important;
}

}

/* ============================
   IMV页面图片预览遮罩层样式（与NPC页面相同）
   ============================ */

/* 预览遮罩层 */
.preview-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.9);
    z-index: 10000;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
}

.preview-overlay.active {
    opacity: 1;
    visibility: visible;
}

.preview-content {
    position: relative;
    max-width: 90vw;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.preview-image {
    max-width: 100%;
    max-height: calc(90vh - 100px);
    object-fit: contain;
    border-radius: 8px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
}

.preview-title {
    margin-top: 20px;
    text-align: center;
    color: #fff;
}

.preview-cn-title {
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 8px;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
}

.preview-en-title {
    font-size: 16px;
    opacity: 0.8;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
}

.preview-close {
    position: absolute;
    top: -50px;
    right: 0;
    width: 40px;
    height: 40px;
    background: rgba(255, 255, 255, 0.2);
    border: none;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}

.preview-close:hover {
    background: rgba(255, 255, 255, 0.4);
    transform: scale(1.1);
}

.close-line {
    position: absolute;
    width: 20px;
    height: 2px;
    background: #fff;
    border-radius: 1px;
}

.close-line-1 {
    transform: rotate(45deg);
}

.close-line-2 {
    transform: rotate(-45deg);
}

/* 移动端适配 */
@media screen and (max-width: 768px) {
    .preview-content {
        max-width: 95vw;
        max-height: 95vh;
    }

    .preview-image {
        max-height: calc(95vh - 120px);
    }

    .preview-close {
        top: -40px;
        right: -5px;
        width: 32px;
        height: 32px;
        background: transparent;
        border-radius: 0;
    }

    .preview-close:hover {
        background: transparent;
        transform: scale(1.2);
    }

    .close-line {
        width: 20px;
        height: 2px;
    }

    .preview-cn-title {
        font-size: 20px;
        margin-bottom: 6px;
    }

    .preview-en-title {
        font-size: 14px;
    }
    .title-group .intro-text{
        font-size: calc(12 * 100vw / 750) !important;
        top: calc(184 * 100vw / 1920) !important;
    }
    .title-group .intro-text{
        font-size: calc(12 * 100vw / 750) !important;
        top: calc(74 * 100vw / 750) !important;
        line-height: 1.2;
        display: none;
    }
    .title-group .subtitle{
         font-size: calc(12 * 100vw / 750) !important;
    }
    .title-group{
        margin-top: calc(20 * 100vw / 750) !important;
    }
   
    .hyperasset-business-value .title-group .main-title{
        margin-top: calc(20 * 100vw / 750) !important;
    }
    .hyperasset-business-value .business-value-image img{
        height: calc(204 * 100vw / 750) !important;
    }
    .feature-cards{
        margin-top: calc(50 * 100vw / 750) !important;
    }
    .feature-card .card-subtitle{
        display: none !important;
    }
    .value-content .value-item .en-text{
        display: none !important;
    }
    .carousel-tabs{
        display: none !important;
    }
     .carousel-progress{
        display: none !important;
    }
    .carousel-description{
        display: none !important;
    }
    .carousel-main img{
        height: calc(300 * 100vw / 750) !important;
    }
    .carousel-main{
        height: calc(262 * 100vw / 750) !important;
    }
    .value-content .core-right .en-title{
        display: none !important;
   }
    .carousel-main .caption-small{
        font-size: calc(12 * 100vw / 750) !important;
   }
    .carousel-main .caption-large{
        font-size: calc(22 * 100vw / 750) !important;
   }

   /* 核心价值区域手机版样式 */
   .imv-value .value-content {
        height: auto !important;
        min-height: calc(300 * 100vw / 750) !important;
   }

   .value-content .value-list {
        position: relative !important;
        height: auto !important;
   }

   .value-content .value-item {
        height: calc(60 * 100vw / 750) !important;
   }

   .value-content .value-item.active {
        height: calc(162 * 100vw / 750) !important;
   }

   .value-content .core-right .description {
        font-size: calc(12 * 100vw / 750) !important;
        line-height: 1.1 !important;
        font-weight: 300 !important;
   }
   .value-content .core-right .cn-title{
        font-size: calc(22 * 100vw / 750) !important;
   }
   .value-content .value-item .cn-text, .value-content .value-item .en-text{
       font-size: calc(18 * 100vw / 750) !important;
       font-weight: 300 !important;
   }
   .value-content .value-item .item-content{
    height: calc(162 * 100vw / 750) !important;
   }
   .architecture-images{
    transform: scale(1.2);
   }
   .imv-architecture .container{
    height: calc(550 * 100vw / 750) !important;
   }
   .imv-architecture .architecture-content{
    margin-top: calc(100 * 100vw / 750) !important;
   }
   .application-gallery .gallery-item:not(.active) .en-title{
    display: none !important;
   }
   .application-gallery .gallery-item.active .en-title{
    display: none !important;
   }
   .application-gallery .gallery-item:not(.active) .cn-title{
    font-size: calc(12 * 100vw / 750) !important;
   }
   .hyperasset-business-value .title-group .subtitle{
    display: none !important;
   }
   .hyperasset-business-value .business-value-text .description{
    display: none !important;
   }
   .hyperasset-business-value .separator-line{
    margin-top: calc(100 * 100vw / 750)  !important;
    width: calc(150 * 100vw / 750)  !important;
    border-top: 1px solid;
   }

}

/* 动画期间禁用hover效果 */
.application-gallery.animating {
    pointer-events: none;
}

.application-gallery.animating .gallery-item {
    pointer-events: none;
}
