/* --- 全局样式重置 --- */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    /* 优先使用 Noto Sans SC (思源黑体)，回退到微软雅黑 */
    font-family: "Noto Sans SC", "Source Han Sans CN", "Microsoft YaHei", "PingFang SC", sans-serif;
    color: #333;
    line-height: 1.6;
    background-color: #fff;
    overflow-x: hidden; /* 防止移动端横向滚动 */
    /* zoom: 1.25; */ /* 恢复网站比例到 100% */
    font-weight: 300; /* 设置为细体 */
}

/* 全局强制细体，防止浏览器默认样式干扰 */
h1, h2, h3, h4, h5, h6, strong, b {
    font-weight: 300;
}

/* --- 通用工具类 --- */
.container {
    max-width: 1628px;
    margin: 0 auto;
    padding: 0 20px;
}

.btn {
    display: inline-flex; /* 改为 flex 布局以对齐图标 */
    align-items: center;
    justify-content: center;
    background-color: #ff5e4d; /* 白字橘色背景 */
    color: #fff; /* 白字 */
    border: 1px solid #ff5e4d; /* 橘色细边框 */
    padding: 6px 20px; /* 上下变窄 */
    border-radius: 25px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 300; /* 去掉粗体 */
    transition: all 0.3s;
    gap: 8px; /* 图标和文字的间距 */
}

/* hover 时不变 */
.btn:hover {
    background-color: #ff5941;
    color: #fff;
    opacity: 1; /* 保持不透明 */
}

/* --- 导航栏 --- */
header {
    /* 默认改为非沉浸式（白色背景带阴影），这是除首页外所有页面的样式 */
    background: #fff;
    box-shadow: 0 2px 10px rgba(0,0,0,0.05);
    position: fixed;
    width: 100%;
    top: 0;
    z-index: 1000;
    transition: background-color 0.3s;
}

/* 仅在首页(通过body.home-page)应用沉浸式透明效果 */
body.home-page header {
    background: transparent;
    box-shadow: none;
}

/* 使 header 内的 container 占满全宽，实现左右对齐 */
header .container {
    max-width: 100%;
    padding: 0 146px 0 146px; /* 左右留出边距，左侧与内容对齐 */
}

/* 当页面滚动或菜单打开时，可以添加背景色 */
header.scrolled {
    background: rgba(255, 255, 255, 0.95);
    box-shadow: 0 2px 10px rgba(0,0,0,0.05);
}

nav {
    display: flex;
    align-items: center;
    height: 70px;
}

.logo {
    font-size: 20px;
    font-weight: 500; /* 去掉粗体 */
    color: #ff5941;
    display: flex;
    align-items: center;
    z-index: 1001; /* 确保在移动端菜单之上 */
    white-space: nowrap; /* 防止换行 */
}

.logo span { color: #333; margin-left: 5px; }

/* Logo 右侧标语样式 */
.logo-divider {
    color: #ccc !important;
    margin: 0 12px !important;
    font-weight: 500;
}

.logo-slogan {
    font-size: 14px;
    color: #666 !important;
    font-weight: 500;
    margin-left: 0 !important;
    letter-spacing: 0.5px;
}

.nav-links {
    display: flex;
    align-items: center;
    margin-left: auto; /* 将导航链接推到右侧 */
}

.nav-links a {
    margin: 0 15px;
    text-decoration: none;
    color: #666;
    font-size: 14px;
    position: relative; /* 为下划线定位 */
    font-weight: 500; /* 导航链接细体 */
}

/* 强制导航栏按钮文字为白色 (解决优先级问题) */
.nav-links .btn {
    color: #fff;
    font-weight: 300; /* 去掉粗体 */
}

/* 导航栏文字下方红色线条动画 */
.nav-links > a:not(.btn)::after {
    content: '';
    position: absolute;
    width: 0;
    height: 2px;
    bottom: -5px;
    left: 0;
    background-color: #ff5941;
    transition: width 0.3s ease;
}

.nav-links > a:not(.btn):hover::after {
    width: 100%;
}

/* Beta 标签样式 */
.beta-tag {
    font-size: 12px; /* 字体变小 */
    font-weight: 700; /* 加粗 */
    color: #ff5941; /* 橘色 */
    vertical-align: bottom; /* 上标效果 */
    margin-left: 2px;

}

/* --- Dropdown Menu --- */
.dropdown {
    position: relative;
    display: inline-block;
}

/* 针对 dropdown 里的主链接也应用下划线动画 */
.dropdown > a::after {
    content: '';
    position: absolute;
    width: 0;
    height: 2px;
    bottom: -5px;
    left: 0;
    background-color: #ff5941;
    transition: width 0.3s ease;
}

.dropdown:hover > a::after {
    width: 100%;
}

.dropdown-content {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    min-width: 100px; /* 进一步变窄 */
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    z-index: 1;
    border-radius: 8px;
    padding: 8px 0;
    left: 50%; /* 居中定位 */
    transform: translateX(-50%); /* 居中定位 */
}

.dropdown-content a {
    color: black;
    padding: 10px 0; /* 调整 padding，去掉左右 padding，依靠 text-align: center */
    text-decoration: none;
    display: block;
    text-align: center; /* 文字居中 */
    font-size: 13px;
    margin: 0;
}

/* 去掉子菜单 hover 时的背景变灰 */
.dropdown-content a:hover {
    background-color: transparent;
    color: #ff5941;
}

/* 去掉子菜单 hover 时的下划线动画 */
.dropdown-content a::after {
    display: none;
}

.dropdown:hover .dropdown-content {
    display: block;
}

/* 汉堡菜单图标 (默认隐藏) */
.hamburger {
    display: none;
    cursor: pointer;
    z-index: 1001;
    margin-left: auto; /* 在移动端，汉堡菜单也推到右侧 */
}

.hamburger span {
    display: block;
    width: 25px;
    height: 3px;
    background-color: #333;
    margin: 5px 0;
    transition: all 0.3s ease;
}

/* --- Hero 轮播区域 --- */
.hero {
    position: relative;
    height: 640px; /* 减小高度，从 600px 改为 500px */
    overflow: hidden;
    margin-top: 0;
    /* zoom: 1.25; */ /* 恢复网站比例到 100% */
}

.hero-slider {
    display: flex;
    width: 500%; /* 5张幻灯片 */
    height: 100%;
    transition: transform 0.6s ease-in-out;
}

.hero-slide {
    width: 20%; /* 100% / 5 = 20% */
    height: 100%;
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
    position: relative;
}

/* 渐变遮罩，保证文字可读性 */
.hero-slide::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;

    z-index: 1;
}

.hero-content {
    max-width: 600px;
    position: relative;
    z-index: 2; /* 在遮罩之上 */
    padding: 0 20px;
    /* margin-left: auto;  去掉自动居中，实现居左 */
    /* margin-right: auto; */
    margin-left: 100px; /* 整体居左一点 */
    width: 100%;
    /* 初始状态用于动画 */
    opacity: 0;
    transform: translateY(30px);
    text-align: left; /* 确保文字居左 */
}

/* 确保内容在容器内居中对齐 */
.hero-slide .container {
    width: 100%;
    z-index: 2;
    max-width: 100%; /* 让 container 占满全宽，以便 margin-left 生效 */
    padding: 0 40px; /* 左右留出边距，与 header 一致 */
}

.hero h1 {
    font-size: 42px;
    margin-bottom: 20px;
    color: #2c3e50;
    font-weight: 300; /* 去掉粗体 */
    white-space: nowrap; /* 防止字体换行 */
}

.hero p {
    font-size: 16px;
    color: #666;
    margin-bottom: 30px;
    max-width: 450px;
    font-weight: 300;
}

/* 轮播指示点 */
.hero-dots {
    position: absolute;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 25px;
    z-index: 10;
}

.dot {
    width: 12px;
    height: 12px;
    background-color: transparent; /* 空心 */
    border: 1px solid #fff; /* 白色边框 */
    border-radius: 50%;
    cursor: pointer;
    transition: all 0.3s ease;
}

.dot.active {
    background-color: #ffffff; /* 激活变色 */
    border-color: #ffffff; /* 边框也变色 */
    transform: scale(1.2);
}

/* --- 顶部图标栏 --- */
.icon-bar {
    background-color: #e6e6e6;
    padding: 50px 0;
    border-bottom: 1px solid #eee;
}

.icon-bar .container {
    display: flex;
    justify-content: space-around;
}

.icon-item {
    display: flex;
    align-items: center;
    gap: 15px;
    /* 初始状态 */
    opacity: 0;
    transform: translateY(30px);
}

.icon-item img {
    width: 77px;
    height: 77px;
    opacity: 0.8;
}

.icon-item div h4 { font-size: 21px; color: #333; font-weight: 400; /* 去掉粗体 */ }
.icon-item div p { font-size: 14px; color: #999; font-weight: 300; }

/* --- BIM Hover Cards --- */
.bim-hover-cards {
    position: relative;
    z-index: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    padding: 60px 120px;
    max-width: 1400px; /* 缩小整体宽度 */
    margin: 0 auto; /* 居中 */
    zoom: 1.25; /* 放大 125% */
    background: #f5f6fa;
}

.bim-hover-cards::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 100vw;
    transform: translateX(-50%);
    background: #f5f6fa;
    z-index: -1;
}

.bim-card {
    position: relative;
    width: 300px; /* 缩小卡片宽度 */
    height: 400px; /* 缩小卡片高度 */
    background-size: cover;
    background-position: center;
    border-radius: 12px;
    overflow: hidden;
    transition: all 0.5s cubic-bezier(0.25, 0.8, 0.25, 1); /* 平滑过渡 */
    cursor: pointer;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 20px;
    color: white;
    flex: 1; /* 默认均分空间 */
}

/* 背景图片占位符 - 实际使用时请替换为真实图片URL */
.bim-left {
    background-image: linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0.7) 100%), url('../pics/hover-card-left.png');
}

.bim-center {
    background-image: linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0.7) 100%), url('../pics/8e826433d9e37ca37187a8f7ed6918d5.png');
}

.bim-right {
    background-image: linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0.7) 100%), url('../pics/bim-card-right.jpg');
}

.bim-card-content {
    z-index: 2;
    transform: translateY(0);
    transition: transform 0.4s ease;
}

.bim-card h3 {
    font-size: 20px;
    margin-bottom: 10px;
    font-weight: 300; /* 恢复细体 */
    white-space: nowrap; /* 防止换行 */
}

.bim-card p {
    font-size: 14px;
    opacity: 0.9;
    margin-bottom: 0;
    font-weight: 300;
}

.bim-card ul {
    list-style: none;
    padding: 0;
    margin: 15px 0;
    display: none; /* 默认隐藏列表 */
    opacity: 0;
    transition: opacity 0.4s ease;
}

.bim-card ul li {
    font-size: 13px;
    margin-bottom: 5px;
    padding-left: 15px;
    position: relative;
}

.bim-highlight {
    color: #ff5941;
    font-size: 14px;
    margin-top: 10px;
    font-weight: 400;
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.4s ease;
}

.bim-card ul li::before {
    content: '•';
    position: absolute;
    left: 0;
    color: #ff5941;
}
.bim-card:hover .bim-highlight {
    opacity: 1;
    transform: translateY(0);
}


/* --- 交互逻辑 --- */
.bim-card::after {
    content: "";
    position: absolute;
    inset: 0;
    background: #353535; /* 👈 hover时显示的纯色 */
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 1;
}

.bim-card:hover::after {
    opacity: 1;
}

.bim-card-content {
    position: relative;
    z-index: 2;
}
/* 默认状态：中间卡片稍微宽一点，或者都一样宽 */
/* 这里我们让它们默认都一样宽，hover 时变化 */

/* 当 hover 容器时，所有卡片变窄 */
.bim-hover-cards:hover .bim-card {
    flex: 1; /* 变窄 */
    opacity: 0.7; /* 稍微变暗 */
}

/* 当 hover 某个特定卡片时，它变宽 */
.bim-hover-cards .bim-card:hover {
    flex: 2; /* 变宽 (展开) */
    opacity: 1; /* 恢复亮度 */
    transform: scale(1.02); /* 稍微放大 */
    box-shadow: 0 15px 30px rgba(0,0,0,0.3);
}

/* 显示内容 */
.bim-hover-cards .bim-card:hover ul,
.bim-hover-cards .bim-card:hover .bim-btn
{
    display: block;
    opacity: 1;
}

.bim-card:hover h3,
.bim-card:hover p {
    transform: translateY(-110px); /* 👈 改这个数值 */
}
/* 当卡片展开时，将内容整体上移，让标题显得更高 */

/* 移动端适配 */
@media (max-width: 768px) {
    .bim-hover-cards {
        flex-direction: column;
        padding: 40px 20px;
    }

    .bim-card, .bim-center {
        width: 100%;
        height: 250px;
        flex: none !important; /* 移动端取消 flex 伸缩 */
    }
}

/* --- 移动端适配 (Media Queries) --- */
@media (max-width: 1100px) {
    /* 在较小屏幕上隐藏 Logo 旁的标语，防止挤压导航栏 */
    .logo-divider, .logo-slogan {
        display: none;
    }
}

@media (max-width: 768px) {
    /* 导航栏适配 */
    .hamburger {
        display: block;
    }

    .nav-links {
        display: none; /* 移动端默认隐藏 .nav-links */
        position: fixed;
        top: 0;
        right: -100%; /* 默认移出屏幕 */
        width: 70%;
        height: 100vh;
        background-color: #fff;
        flex-direction: column;
        align-items: flex-start;
        padding: 80px 30px;
        box-shadow: -5px 0 15px rgba(0,0,0,0.1);
        transition: right 0.3s ease;
        z-index: 1000;
        margin-left: 0; /* 移除移动端的 margin-left */
        margin-right: 10px;
    }

    .nav-links.active {
        display: flex; /* 当菜单激活时显示 */
        right: 0;
    }

    .nav-links a {
        margin: 15px 0;
        font-size: 16px;
        display: block;
        width: 100%;
    }

    .nav-links .btn {
        margin-top: 20px;
        text-align: center;
    }

    /* 汉堡菜单动画 */
    .hamburger.active span:nth-child(1) {
        transform: rotate(45deg) translate(5px, 6px);
    }
    .hamburger.active span:nth-child(2) {
        opacity: 0;
    }
    .hamburger.active span:nth-child(3) {
        transform: rotate(-45deg) translate(5px, -6px);
    }

    /* Hero 区域适配 */
    .hero {
        height: auto;
        min-height: 363px; /* 保证最小高度 */
        margin-left: -100px;
    }

    .hero-slide {
        padding: 100px 0 60px; /* 增加顶部padding避免被header遮挡 */
        text-align: center;
    }

    .hero-slide::before {
        /* 移动端加深背景遮罩，因为文字可能直接盖在图片上 */
        background: linear-gradient(to bottom, rgba(255, 255, 255, 0.95) 0%, rgba(255, 255, 255, 0.8) 50%, rgba(255, 255, 255, 0.4) 100%);
    }

    .hero-content {
        text-align: center; /* 移动端恢复居中，否则可能不好看，或者保持居左 */
        /* 如果用户坚持居左，可以注释掉这行。通常移动端居中更好看。但根据“都居左”的要求，我先保持居左，或者在移动端覆盖 */
        text-align: left;
    }

    .hero h1 {
        font-size: 32px;
        ;
    }

    .hero p {
        margin: 0 0 30px 0; /* 调整margin适配居左 */
    }

    /* 图标栏适配 */
    .icon-bar .container {
        flex-wrap: wrap;
        gap: 30px;
    }

    .hero-dots{
        position: absolute;
        bottom: 80px;
        left: 60%;

    }

    .nav{
        display: block;
    }

    .icon-item {
        width: 45%; /* 两列布局 */
        flex-direction: column;
        text-align: center;
    }

    .icon-item div {
        margin-top: 10px;
    }

    /* 内容板块适配 */
    .section-header {
        padding: 60px 0 30px;
    }

    .section-header h2 {
        font-size: 26px;
    }

    .feature-row {
        padding: 40px 0;
    }

    .feature-row .container,
    .feature-row.reverse .container {
        flex-direction: column !important; /* 强制垂直排列 */
        gap: 30px;
    }

    .feature-text {
        width: 100%;
    }

    .feature-text h3 {
        font-size: 24px;
    }

    /* APP 展示区适配 */
    .app-showcase h2 {
        font-size: 24px;
        padding: 0 20px;
    }

    .ai-process-section{
        display: none;
    }


}

@media (max-width: 480px) {
    .icon-item {
        width: 100%; /* 单列布局 */
    }

    .hero h1 {
        font-size: 28px;
    }
}

/* ===============================
   Solution Section
=============================== */

.solution-header-section {
    background: #fff; /* 标题区域背景 */
    padding: 10px 0 20px; /* 上下内边距 */
    text-align: center;
}

.solution-section {
    background: #fff; /* 纯白背景 */
    padding: 0 0 60px; /* 只有下内边距，因为标题在上面 */
    overflow: hidden;
}

.solution-title {
    text-align: center;
    font-size: 26px;
    font-weight: 300; /* 细体 */
    color: #333;
    margin-bottom: 0; /* 标题下边距由 section padding 控制 */
}

/* 滚动容器 */
.solution-marquee {
    position: relative;
    width: 100%;
    overflow: hidden;
    padding-top: 40px; /* 滚动内容与顶部的间距 */
    cursor: grab;
}

.solution-marquee:active {
    cursor: grabbing;
}

/* 左右渐变遮罩 */
.solution-marquee::before,
.solution-marquee::after {
    content: "";
    position: absolute;
    top: 0;
    width: 120px;
    height: 100%;
    z-index: 2;
    pointer-events: none;
}

.solution-marquee::before {
    left: 0;
    background: linear-gradient(
            to right,
            rgba(255, 255, 255, 1), /* 纯白 */
            rgba(255, 255, 255, 0)  /* 透明 */
    );
}

.solution-marquee::after {
    right: 0;
    background: linear-gradient(
            to left,
            rgba(255, 255, 255, 1), /* 纯白 */
            rgba(255, 255, 255, 0)  /* 透明 */
    );
}

/* 滚动轨道 */
.solution-track {
    display: flex;
    width: max-content;
    will-change: transform;
}

/* 卡片 */
.solution-card {
    width: 360px;
    height: 420px;
    margin-right: 24px;
    background: #fff;
    border-radius: 18px;
    overflow: hidden;
    flex-shrink: 0;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
    display: flex;
    flex-direction: column;
}

.solution-card img {
    width: 100%;
    height: 210px;
    object-fit: cover;
    display: block;
    flex-shrink: 0;
}

.solution-card-body {
    background: #f3f5f9;
    padding: 24px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.solution-card-title {
    font-size: 20px;
    color: #333;
    margin-bottom: 16px;
    font-weight: 300; /* 细体 */
}

.solution-card-list {
    list-style: none;
    margin-bottom: 20px;
    padding: 0; /* 清除默认 padding */
}

.solution-card-list li {
    font-size: 14px;
    color: #666;
    line-height: 1.8;
    display: flex;
    align-items: center;
    font-weight: 300; /* 细体 */
}

.solution-card-list li::before {
    content: "✔";
    color: #ff5941;
    margin-right: 8px;
}

/* 按钮 */
.solution-btn {
    display: block;
    width: 100%;
    padding: 12px 0;
    text-align: center;
    background: #ff5941;
    color: #fff;
    border-radius: 24px;
    font-size: 14px;
    text-decoration: none;
    font-weight: 300; /* 细体 */
}

.solution-btn:hover {
    background: #ff5941;
}

/* ===============================
   Why Choose Section
=============================== */

.why-section {
    padding: 80px 0 60px;
    /* 半椭圆扩散式渐变 */
    background: radial-gradient(
            37% 100% at 50% -12%, /* 椭圆中心在顶部中间 */ #ffcbc8 50%,         /* 核心颜色（浅橙色） */
            #f7f8fb 100%        /* 外围颜色（浅灰/白） */
    );
}

.why-title {
    text-align: center;
    font-size: 38px;
    color: #333;
    margin-bottom: 50px;
    font-weight: 400;
    margin-top: 80px;
}

/* 卡片区域 */
.why-cards {
    display: flex;
    justify-content: center;
    gap: 28px;
    margin-bottom: 60px;
}

.why-card {
    width: 360px;
    background: #fff;
    border-radius: 22px;
    padding: 22px;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.06);
}

.why-card-header {
    display: flex;
    align-items: center;
    margin-bottom: 16px;
}

.why-avatar {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: #666;
    margin-right: 12px;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    flex-shrink: 0;
    overflow: hidden;
}

.why-card:nth-child(1) .why-avatar {
    background-color: transparent;
    background-image: url("../pics/yezhuprofile.png");
}

.why-card:nth-child(2) .why-avatar {
    background-color: transparent;
    background-image: url("../pics/cpoprofile.png");
}

.why-card:nth-child(3) .why-avatar {
    background-color: transparent;
    background-image: url("../pics/ceoprofile.jpg");
}

.why-name {
    font-size: 15px;
    color: #333;
}

.why-role {
    font-size: 12px;
    color: #999;
    margin-top: 2px;
}

.why-video {
    width: 100%;
    height: 180px;
    border-radius: 14px;
    background: #ffffff;
    font-weight: 500;
    color: #000000;
    position: relative;
}

/* 强制 why-video 内文本为深灰色 */
.why-video span {
    color: #555 !important;
}

/* 打字机光标效果 */
.why-video span::after {
    content: "|";
    display: inline-block;
    color: #555;
    font-weight: 300;
    margin-left: 2px;
    animation: blinkTypingCursor 0.8s step-end infinite;
}

@keyframes blinkTypingCursor {
    0%, 100% { opacity: 1; }
    50% { opacity: 0; }
}

.anime-typewriter{
    width:0;}

/* 数据区域 */
.why-stats {
    display: flex;
    justify-content: center;
    gap: 80px;
}

.why-stat {
    text-align: center;
}

.why-number {
    font-size: 36px;
    font-weight: 600;
    color: #ff5941;
    line-height: 1;
}

.why-number span {
    font-size: 18px;
    margin-left: 2px;
}

.why-desc {
    margin-top: 10px;
    font-size: 14px;
    color: #666;
}

/* ===============================
   Tech Wall Section
=============================== */

.techwall-section {
    padding: 90px 0 100px;
    background: #f7f8fb;
    position: relative;
    overflow: hidden;
}

.techwall-title {
    text-align: center;
    font-size: 80px;
    font-weight: 700;
    letter-spacing: 2px;
    margin-bottom: 60px;
    background: linear-gradient(180deg, #ff5941, #ffaa85); /* 180deg表示从上到下，#e64a19是深橘色，#ffaa85是浅橘色 */
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.techwall-wrap {
    position: relative;
    max-width: 1400px;
    margin: 0 auto;
    height: 600px; /* 增加高度，让背景图露出更多 */
}

/* 背景证书墙 */
.techwall-bg {
    position: absolute;
    inset: 0;
    opacity: 1;
}

.techwall-bg {
    z-index: 0;
}

.techwall-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* 左侧数据 */
.techwall-left {
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
}

.techwall-item {
    margin-bottom: 28px;
}

.techwall-num {
    font-size: 42px;
    font-weight: 600;
    color: #ff5941;
    line-height: 1;
}

.techwall-num span {
    font-size: 16px;
    margin-left: 4px;
}

.techwall-text {
    margin-top: 6px;
    font-size: 14px;
    color: #666;
}

/* 右侧荣誉 */
.techwall-right {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
}

.techwall-badge {
    margin-bottom: 36px;
}

.techwall-badge-title {
    font-size: 28px;
    font-weight: 600;
    color: #ff5941;
    display: flow; /* 使用 flex 布局，让图标和文字对齐 */
    align-items: center;
}

.techwall-badge-icon {
    height: 24px; /* 统一高度 */
    width: 40px; /* 设定一个固定的宽度，比最宽的图标稍宽一点 */
    object-fit: contain; /* 保证图标等比缩放不被拉伸 */
    object-position: left; /* 关键：让图标在自己的容器里靠左 */
    margin-right: 8px; /* 图标和文字的间距 */
}

.techwall-badge-desc {
    margin-top: 6px;
    font-size: 14px;
    color: #666;
    max-width: 260px;
    line-height: 1.6;
}

@media (max-width: 768px) {
    .techwall-section {
        padding: 48px 0 56px;
        background:
            radial-gradient(circle at top, rgba(255, 120, 90, 0.1), transparent 34%),
            #f7f8fb;
    }

    .techwall-title {
        font-size: 34px;
        line-height: 1.2;
        letter-spacing: -0.03em;
        margin: 0 auto 24px;
        max-width: 8em;
    }

    .techwall-wrap {
        max-width: calc(100% - 24px);
        height: auto;
        display: grid;
        gap: 14px;
    }

    .techwall-bg {
        position: relative;
        inset: auto;
        overflow: hidden;
        border-radius: 24px;
        box-shadow: 0 16px 34px rgba(31, 35, 41, 0.08);
    }

    .techwall-bg::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.22));
        pointer-events: none;
    }

    .techwall-bg img {
        display: block;
        aspect-ratio: 16 / 10;
        object-position: center center;
    }

    .techwall-left,
    .techwall-right {
        position: static;
        top: auto;
        left: auto;
        right: auto;
        transform: none;
    }

    .techwall-left {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .techwall-item {
        margin-bottom: 0;
        padding: 16px 14px;
        border-radius: 20px;
        background: rgba(255, 255, 255, 0.88);
        border: 1px solid rgba(255, 255, 255, 0.75);
        box-shadow: 0 10px 26px rgba(31, 35, 41, 0.05);
        backdrop-filter: blur(8px);
    }

    .techwall-item:last-child {
        grid-column: 1 / -1;
    }

    .techwall-num {
        font-size: 32px;
        letter-spacing: -0.03em;
    }

    .techwall-num span {
        font-size: 14px;
        margin-left: 2px;
    }

    .techwall-text {
        margin-top: 8px;
        font-size: 13px;
        line-height: 1.6;
        color: #6b727d;
    }

    .techwall-right {
        display: grid;
        gap: 12px;
    }

    .techwall-badge {
        margin-bottom: 0;
        padding: 18px 16px;
        border-radius: 22px;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(255, 255, 255, 0.88));
        border: 1px solid rgba(255, 255, 255, 0.8);
        box-shadow: 0 12px 28px rgba(31, 35, 41, 0.06);
    }

    .techwall-badge-title {
        display: flex;
        align-items: center;
        gap: 8px;
        font-size: 22px;
        line-height: 1.3;
    }

    .techwall-badge-icon {
        width: 30px;
        height: 30px;
        margin-right: 0;
        flex-shrink: 0;
    }

    .techwall-badge-desc {
        max-width: none;
        margin-top: 10px;
        font-size: 13px;
        line-height: 1.7;
        color: #6b727d;
    }
}

@media (max-width: 480px) {
    .techwall-title {
        font-size: 28px;
        margin-bottom: 20px;
    }

    .techwall-wrap {
        max-width: calc(100% - 20px);
        gap: 10px;
    }

    .techwall-bg {
        border-radius: 20px;
    }

    .techwall-bg img {
        aspect-ratio: 4 / 3;
    }

    .techwall-left {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .techwall-item {
        padding: 14px 12px;
        border-radius: 18px;
    }

    .techwall-item:last-child {
        grid-column: auto;
    }

    .techwall-num {
        font-size: 28px;
    }

    .techwall-badge {
        padding: 16px 14px;
        border-radius: 18px;
    }

    .techwall-badge-title {
        font-size: 19px;
    }
}


/* 整体 */
.solution-case {
    font-family: "Noto Sans SC", "Source Han Sans CN", "Microsoft YaHei", "PingFang SC", sans-serif;
    color: #222;
    padding-top: 70px; /* 为 fixed header 留出空间 */
}

/* 顶部大图 */
.solution-case-hero {
    position: relative;
    height: 420px;
    overflow: hidden;
    background: #d8dadd;
}

.solution-case-hero img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    display: block;
}

/* Tab 导航 */
.solution-case-tabs {
    display: flex;
    justify-content: center;
    gap: 48px;
    background: #fff;
    border-bottom: 1px solid #eee;
    background: #f5f6fa;
}

.solution-case-tabs > a.case-tab {
    display: none;
}

.case-tab {
    position: relative;
    padding: 22px 0;
    border: 0;
    background: transparent;
    font-size: 15px;
    color: #666;
    cursor: pointer;
    white-space: nowrap;
}

.case-tab.active {
    color: #ff5941;
    font-weight: 500;
}

.case-tab.active::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 3px;
    background: #ff5941;
}

/* 主体 */
.solution-case-body {

    width: auto;
    margin: 0 auto;
    padding: 80px 120px 80px 80px;
    background: #f5f6fa;
    overflow: hidden;
}

.solution-case-stage {
    display: flex;
    gap: 80px;
    align-items: center;
    width: 100%;
}

.solution-case-body.is-switching {
    pointer-events: none;
}

.solution-case-stage.is-leaving {
    animation: solutionCaseSwipeOut 0.18s ease forwards;
}

.solution-case-stage.is-entering {
    animation: solutionCaseSwipeIn 0.42s cubic-bezier(0.22, 1, 0.36, 1);
}

/* 左侧文本 */
.solution-case-text {
    flex: 1;
}

.solution-case-text h2 {
    font-size: 34px;
    margin-bottom: 16px;
}

.case-desc {
    color: #666;
    line-height: 1.7;
    margin-bottom: 28px;
}

/* 列表 */
.case-features {
    list-style: none;
    padding: 0;
    margin-bottom: 36px;
}

.case-features li {
    margin-bottom: 14px;
    padding-left: 20px;
    position: relative;
    color: #444;
}

.case-features li::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 3px;
    width: 18px;
    height: 18px;
    background: url("../svg/check1.svg") no-repeat center center;
    background-size: contain;
}


/* 数据 */
.case-stats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    margin-bottom: 36px;
}

.case-stats strong {
    display: block;
    font-size: 28px;
    color: #ff5941;
}

.case-stats span {
    font-size: 14px;
    color: #666;
}

/* 按钮 */
.case-btn {
    display: inline-block;
    padding: 10px 30px; /* 上下变窄 */
    border: 1px solid #ff5941;
    border-radius: 28px;
    color: #ff5941;
    text-decoration: none;
    transition: 0.25s;
}

.case-btn:hover {
    background: #ff4d4f;
    color: #fff;
}

/* 右侧图片 */
.solution-case-image {
    flex: 1;
}

.solution-case-image img {
    width: 100%;
    border-radius: 12px;
    box-shadow: 0 20px 40px rgba(0,0,0,.08);
}

/* 响应式 */
@media (max-width: 960px) {
    .solution-case-stage {
        flex-direction: column;
        gap: 40px;
    }

    .case-stats {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .solution-case-hero {
        height: 300px;
    }
}

@keyframes solutionCaseSwipeOut {
    from {
        opacity: 1;
        transform: translateX(0);
    }
    to {
        opacity: 0;
        transform: translateX(-24px);
    }
}

@keyframes solutionCaseSwipeIn {
    from {
        opacity: 0;
        transform: translateX(52px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}


/* 整体 */
.footer-case {
    font-family: -apple-system, BlinkMacSystemFont, "PingFang SC",
    "Microsoft YaHei", sans-serif;
    color: #fff;
}

/* 上方横幅 */
.footer-hero {
    position: relative;
    height: 320px;
    overflow: hidden;
}

.footer-hero img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.footer-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.35);
}

.footer-hero-content {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.footer-hero-content h2 {
    font-size: 34px;
    font-weight: 500;
    margin-bottom: 22px;
    letter-spacing: 8px;
}

.footer-hero-btn {
    padding: 14px 36px;
    background: #ff5941;
    border-radius: 26px;
    color: #fff;
    text-decoration: none;
    font-size: 15px;
}

/* 主 Footer */
.footer-main {
    background: #333;
    padding: 70px 0;
}

.footer-container {
    max-width: 1628px;
    margin: 0 auto;
    padding: 0 24px;
    display: flex;
    gap: 0px;
}

/* 品牌 */
.footer-brand {
    flex: 2;
}

.brand-logo {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 14px;
}

.brand-logo img {
    height: 32px;
}

.brand-logo span {
    font-size: 20px;
    font-weight: 500;
}

.brand-desc {
    font-size: 14px;
    color: #aaa;
    margin-bottom: 18px;
}

.brand-list {
    list-style: none;
    padding: 0;
}

.brand-list li {
    font-size: 13px;
    color: #999;
    margin-bottom: 8px;
}

/* 联系方式 */
.footer-contact {
    flex: 1.5;
}

.hotline span {
    display: block;
    font-size: 14px;
    color: #aaa;
    margin-bottom: 6px;
}

.hotline strong {
    font-size: 26px;
    color: #fff;
}

.contact-info {
    margin-top: 18px;
    font-size: 13px;
    color: #aaa;
    line-height: 1.8;
}

/* 二维码 */
.footer-qrcode {
    flex: 1;
    display: flex;
    gap: 20px;
}

.qr-item {
    text-align: center;
    /* --- 新增：为 Bubble 提供相对定位参考 --- */
    position: relative;
    cursor: pointer;
}

.qr-item img {
    width: 90px;
    height: 90px;
    background: #fff;
    padding: 6px;
}

.qr-item span {
    display: block;
    margin-top: 8px;
    font-size: 12px;
    color: #aaa;
}

/* --- 新增：二维码 Hover Bubble 样式 --- */
.qr-bubble {
    position: absolute;
    bottom: 120%; /* 默认显示在二维码上方 */
    left: 50%;
    transform: translateX(-50%) translateY(10px);
    width: 180px; /* 放大版尺寸 */
    height: 180px;
    background: #fff;
    padding: 10px;
    border-radius: 8px;
    box-shadow: 0 5px 20px rgba(0,0,0,0.3);
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s cubic-bezier(0.68, -0.55, 0.27, 1.55);
    z-index: 1000;
    pointer-events: none; /* 防止遮挡鼠标导致闪烁 */
}

/* Bubble 小三角 */
.qr-bubble::after {
    content: '';
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
    border-width: 8px 8px 0;
    border-style: solid;
    border-color: #fff transparent transparent transparent;
}

.qr-bubble img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
    background: transparent;
    padding: 0;
}

/* Hover 时显示 Bubble */
.qr-item:hover .qr-bubble {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
}


/* 通用 */
.section-title {
    text-align: center;
    font-size: 28px;
    margin-bottom: 60px;
    font-weight: 500;
}

/* ==================================================
   合作招募页面 (cooperation.html) 专属样式
================================================== */

/* --- 1. Hero Section --- */
.coop-hero {
    position: relative;
    height: 480px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: #fff;
    overflow: hidden;
    margin-top: 70px; /* 为 fixed header 留出空间 */
}

.coop-hero-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    z-index: 1;
}

.coop-hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4); /* 黑色遮罩 */
    z-index: 2;
}

.coop-hero .container {
    position: relative;
    z-index: 3;
}

.coop-hero-content h1 {
    font-size: 48px;
    font-weight: 700;
    margin-bottom: 16px;
    letter-spacing: 2px;
    color: #fff; /* 确保是白色 */
}

.coop-hero-content p {
    font-size: 18px;
    font-weight: 300;
    margin-bottom: 32px;
    opacity: 0.9;
}

.btn.btn-lg {
    padding: 14px 40px;
    font-size: 16px;
    border-radius: 30px;
}

/* --- 2. Partner Support Section --- */
.partner-support {
    padding: 100px 0;
    background: #fff;
}

.support-wrapper {
    display: flex;
    align-items: center;
    gap: 80px;
}

.support-content {
    flex: 1;
}

.section-title-left {
    font-size: 36px;
    font-weight: 700;
    color: #333;
    margin-bottom: 20px;
    line-height: 1.3;
}

.support-desc {
    font-size: 16px;
    color: #666;
    margin-bottom: 40px;
    max-width: 450px;
}

.support-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
}

.support-item {
    display: flex;
    align-items: center;
    gap: 20px;
}

.support-icon-box {
    flex-shrink: 0;
    width: 64px;
    height: 64px;
    background: #fff7f5;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.support-icon-box img {
    width: 36px;
    height: 36px;
    opacity: 0.8;
}

.support-text h4 {
    font-size: 18px;
    font-weight: 500;
    color: #333;
    margin-bottom: 4px;
}

.support-text p {
    font-size: 14px;
    color: #777;
}

.support-image-wrap {
    flex: 1;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 20px 40px rgba(0,0,0,0.1);
}

.support-image-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* --- 3. Partner Conditions Section --- */
.partner-conditions {
    padding: 100px 0;
    background: #f9fafb;
}

.conditions-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 24px;
}

.condition-card {
    background: #fff;
    padding: 32px 24px;
    border-radius: 16px;
    text-align: center;
    transition: all 0.3s ease;
    border: 1px solid #eee;
}

.condition-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 30px rgba(255, 94, 77, 0.1);
    border-color: #ff5e4d;
}

.condition-icon {
    font-size: 48px;
    margin-bottom: 16px;
}

.condition-card h4 {
    font-size: 18px;
    font-weight: 500;
    color: #333;
    margin-bottom: 8px;
}

.condition-card p {
    font-size: 14px;
    color: #777;
    line-height: 1.5;
}

/* --- 4. Partner Process Section --- */
.partner-process {
    padding: 100px 0;
    background: #fff;
}

.process-container {
    max-width: 1200px;
    margin: 0 auto;
}

.process-steps {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
}

.step-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    z-index: 2;
}

.step-num {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: #f9fafb;
    border: 2px solid #eee;
    color: #999;
    font-size: 24px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}

.step-title {
    margin-top: 16px;
    font-size: 16px;
    font-weight: 500;
    color: #666;
}

.step-line {
    flex-grow: 1;
    height: 2px;
    background-color: #eee;
    margin: 0 -20px; /* 视觉上连接到圆圈边缘 */
    transform: translateY(-20px); /* 对齐到数字中间 */
}

/* 激活/Hover 状态 */
.step-item:hover .step-num {
    background: #fff7f5;
    border-color: #ff5e4d;
    color: #ff5e4d;
}

.process-cta {
    margin-top: 80px;
    background: #f9fafb;
    border-radius: 20px;
    padding: 40px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.cta-box h3 {
    font-size: 24px;
    font-weight: 700;
    color: #333;
}

.cta-box p {
    font-size: 16px;
    color: #666;
    margin: 8px 0 24px;
}

.btn.btn-primary {
    background: #ff5e4d;
    color: #fff;
}

.cta-qr {
    text-align: center;
}

.cta-qr img {
    width: 120px;
    height: 120px;
    border-radius: 8px;
}

.cta-qr p {
    font-size: 14px;
    color: #666;
    margin-top: 8px;
}

.ai-process-section {
    padding: 100px 0;
    background: #f5f6fa;
    font-family: "PingFang SC", "Microsoft YaHei", sans-serif;
    transform: scale(1.25)
}

.ai-wrapper {
    position: relative;
    width: 1200px;
    margin: 0 auto;
}

/* 背景图 */
.ai-bg {
    width: 100%;
    display: block;
}

/* 覆盖层 */
.ai-content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    font-family:"Noto Sans SC", "Source Han Sans CN", "Microsoft YaHei", "PingFang SC", sans-serif;

}

/* 每个文字块 */
.ai-item {
    position: absolute;
    width: 280px;
}

/* 标题 */
.ai-item h3 {
    color: #ff5a3c;
    font-size: 18px;
    margin-bottom: 10px;
    font-weight: 500;
}

/* 文本 */
.ai-item p {
    font-size: 10px;
    color: #666;
    font-weight: 500;
    line-height: 1.6;
}

/* 按钮 */
.ai-btn {
    display: inline-block;
    margin-top: 12px;
    padding: 4px 16px;
    background: #ff5a3c;
    color: #fff;
    border-radius: 20px;
    font-size: 13px;
    text-decoration: none;
    font-weight: 400;
}

/* ===================== */
/* 关键：定位（需要微调） */
/* ===================== */

/* 上排 */
.item-1 { top: 75px; left: 175px; }
.item-2 { top: 73px; left: 517px; }
.item-3 { top: 70px; right: 76px; }

/* 下排 */
.item-4 { bottom: 70px; left: 163px; }
.item-5 { bottom: 75px; left: 486px; }
.item-6 { bottom: 66px; right: 78px; }
.ai-title-block{
    text-align: center;
    padding: 55px 0 40px;
    background: #f5f6fa;
}
.ai-title-block h2{font-size: 40px;margin-bottom: 37px;font-weight: 350}
.ai-title-block p{font-size: 14px}


.smart-step-panel {
    padding: 40px 0 70px;
    background: #f3f4f8;
}

.smart-step-panel * {
    box-sizing: border-box;
}

.smart-step-panel__inner {
    width: 1400px;
    max-width: calc(100% - 80px);
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    gap: 24px;
    flex-wrap: wrap;
}

.smart-step-panel__item {
    position: relative;
    width: 256px;
    height: 253px;
    flex: 0 0 256px;
}

.smart-step-panel__bg {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    pointer-events: none;
    user-select: none;
}

.smart-step-panel__content {
    position: absolute;
    inset: 0;
    padding: 0;
}

/* 文字区位置：因为数字已在背景图里，所以这里直接避开上方区域 */
.smart-step-panel__list {
    position: absolute;
    left: 24px;
    right: 24px;
    top: 118px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.smart-step-panel__list li {
    position: relative;
    margin-bottom: 9px;
    padding-left: 58px;
    font-size: 16px;
    line-height: 1.5;
    color: #7a7a7a;
    font-family: "PingFang SC", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif;
    font-weight: 400;
}

.smart-step-panel__list li:last-child {
    margin-bottom: 0;
}

/* 小图标：替换成你导出的 svg */
.smart-step-panel__list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 3px;
    width: 75px;
    height: 18px;
    background: url("../svg/check1.svg") no-repeat center center;
    background-size: contain;
}

/* 平板适配 */
@media (max-width: 1400px) {
    .smart-step-panel__inner {
        justify-content: center;
    }
}

/* 手机适配 */
@media (max-width: 768px) {
    .smart-step-panel {
        padding: 24px 0;
    }

    .smart-step-panel__inner {
        max-width: calc(100% - 32px);
        gap: 16px;
    }

    .smart-step-panel__item {
        width: calc(50% - 8px);
        height: auto;
        flex: 0 0 calc(50% - 8px);
        aspect-ratio: 256 / 253;
    }

    .smart-step-panel__list {

        left: 40px;
        right: 10px;
        top: 45%;
    }

    .smart-step-panel__list li {
        font-size: 14px;
        margin-bottom: 12px;
        padding-left: 24px;
    }

    .smart-step-panel__list li::before {
        width: 16px;
        height: 16px;
        top: 2px;
    }
}

@media (max-width: 480px) {
    .smart-step-panel__item {
        width: 100%;
        flex: 0 0 100%;
        aspect-ratio: 256 / 253;
    }

    .smart-step-panel__list {
        top: 48%;
    }
}

.growth-data-section {
    background: #f3f5f8;
    padding: 0;
}

.growth-data-section * {
    box-sizing: border-box;
}

.growth-data-panel {
    position: relative;
    width: 1920px;
    max-width: 100%;
    margin: 0 auto;
    padding: 68px 0 0  ;
}

.growth-data-bg {
    display: block;
    width: 100%;
    height: 650px;
}

.growth-data-layer {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    max-height: 826px;
}

/* 顶部标题 */
.growth-data-heading {
    position: absolute;
    top: 5.2%;
    left: 50%;
    transform: translateX(-50%);
    width: 58%;
    text-align: center;
}

.growth-data-heading h2 {
    margin: 0;
    font-size: 34px;
    line-height: 1;
    font-weight: 400;
    color: #4b4747;
    letter-spacing: 1px;
    padding: 57px;
}

.growth-data-heading p {
    margin: 22px 0 0;
    font-size: 14px;
    line-height: 1.8;
    color: #8c8b8b;
    font-weight: 400;
}

/* 通用数据块 */
.growth-data-item {
    position: absolute;
}

.growth-data-num {
    margin: 0;
    color: #ff5941;
    font-weight: 300;
    line-height: 1;
    letter-spacing: 1px;
    white-space: nowrap;
}

.growth-data-text {
    margin-top: 18px;
    font-size: 15px;
    line-height: 1.6;
    color: #666666;
    font-weight: 600;
    white-space: nowrap;
}

/* 左右对齐 */
.growth-data-item--left {
    text-align: left;
}

.growth-data-item--right {
    text-align: right;
}

/* 左侧三个点位 */
.growth-data-item--l1 {
    left: 7.7%;
    top: 20.8%;
}

.growth-data-item--l2 {
    left: 7.5%;
    top: 43.6%;
}

.growth-data-item--l3 {
    left: 7.6%;
    top: 68.7%;
}

/* 右侧三个点位 */
.growth-data-item--r1 {
    right: 9.0%;
    top: 20.8%;
}

.growth-data-item--r2 {
    right: 8.7%;
    top: 43.6%;
}

.growth-data-item--r3 {
    right: 7.4%;
    top: 68.7%;
}

/* 分别控制字号，更接近你的图 */
.growth-data-item--l1 .growth-data-num,
.growth-data-item--r1 .growth-data-num,
.growth-data-item--r2 .growth-data-num {
    font-size: 56px;
}

.growth-data-item--l2 .growth-data-num,
.growth-data-item--l3 .growth-data-num {
    font-size: 60px;
}

.growth-data-item--r3 .growth-data-num {
    font-size: 58px;
    letter-spacing: -2px;
}

/* 1920 以下稍微收缩 */
@media (max-width: 1600px) {
    .growth-data-heading h2 {
        font-size: 30px;
    }

    .growth-data-heading p {
        font-size: 13px;
        margin-top: -51px;
    }

    .growth-data-item--l1 .growth-data-num,
    .growth-data-item--r1 .growth-data-num,
    .growth-data-item--r2 .growth-data-num {
        font-size: 48px;
    }

    .growth-data-item--l2 .growth-data-num,
    .growth-data-item--l3 .growth-data-num,
    .growth-data-item--r3 .growth-data-num {
        font-size: 50px;
    }

    .growth-data-text {
        font-size: 14px;
        margin-top: 24px;
    }
}

/* 平板 */
@media (max-width: 1024px) {
    .growth-data-heading {
        width: 76%;
        top: 4%;
    }

    .growth-data-heading h2 {
        font-size: 24px;
    }

    .growth-data-heading p {
        font-size: 12px;
        line-height: 1.6;
    }

    .growth-data-item--l1 .growth-data-num,
    .growth-data-item--r1 .growth-data-num,
    .growth-data-item--r2 .growth-data-num {
        font-size: 34px;
    }

    .growth-data-item--l2 .growth-data-num,
    .growth-data-item--l3 .growth-data-num,
    .growth-data-item--r3 .growth-data-num {
        font-size: 36px;
    }

    .growth-data-text {
        font-size: 12px;
        margin-top: 10px;
    }
}

/* 手机就不建议做这种绝对定位了，改成隐藏或重排 */
@media (max-width: 768px) {
    .growth-data-heading {
        width: 88%;
        top: 3%;
    }

    .growth-data-heading h2 {
        font-size: 18px;
    }

    .growth-data-heading p {
        font-size: 11px;
        margin-top: 10px;
    }

    .growth-data-item--l1 .growth-data-num,
    .growth-data-item--r1 .growth-data-num,
    .growth-data-item--r2 .growth-data-num {
        font-size: 24px;
    }

    .growth-data-item--l2 .growth-data-num,
    .growth-data-item--l3 .growth-data-num,
    .growth-data-item--r3 .growth-data-num {
        font-size: 26px;
    }

    .growth-data-text {
        font-size: 10px;
        margin-top: 6px;
    }
}

.partner-support-section {
    padding: 70px 0 90px;
    background: #f3f4f8;
}

.partner-support-section * {
    box-sizing: border-box;
}

.partner-support-wrap {
    width: 1320px;
    max-width: calc(100% - 80px);
    margin: 0 auto;
}

.partner-support-title {
    margin: 43px 11px -44px 75px;;
    font-family: "PingFang SC", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif;
    font-size: 34px;
    line-height: 1.3;
    font-weight: 500;
    color: #4b4747;
    letter-spacing: 1px;
}

.partner-support-main {
    display: flex;
    align-items: center;
    gap: 0;
    position: relative;
    justify-content: space-between;

}

/* 左侧白底内容区 */
.partner-support-card {
    width: 1028px;
    min-height: 494px;
    background: #ffffff;
    border-radius: 18px;
    box-shadow: 0 12px 32px rgba(35, 38, 45, 0.05);
    position: relative;
    z-index: 2;
}

.partner-support-card-inner {
    padding: 56px 74px 60px;
}

.partner-support-heading {
    margin: 0 0 46px;
    font-family: "PingFang SC", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif;
    font-size: 28px;
    line-height: 1.4;
    font-weight: 500;
    color: #4b4747;
}

/* 四项布局 */
.partner-support-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 92px;
    row-gap: 46px;
}

.partner-support-item {
    max-width: 100%;
}

.partner-support-icon {
    display: block;
    width: 28px;
    height: 28px;
    margin-bottom: 16px;
}

.partner-support-item-title {
    margin: 0 0 14px;
    font-size: 22px;
    line-height: 1.4;
    font-weight: 500;
    color: #4b4747;
}

.partner-support-item-text {
    margin: 0;
    font-size: 14px;
    line-height: 2;
    font-weight: 400;
    color: #7d7b7b;
}

/* 右侧图片区 */
.partner-support-visual {
    width: 600px;
    height: 720px;
    margin-left: -24px;
    position: relative;
    z-index: 1;
    overflow: visible;
    right: -130px
}

.partner-support-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* 适配 */
@media (max-width: 1440px) {
    .partner-support-wrap {
        max-width: calc(100% - 48px);
    }

    .partner-support-title {
        margin-left: 40px;
        font-size: 30px;
    }

    .partner-support-card {
        width: 58%;
    }

    .partner-support-card-inner {
        padding: 44px 42px 48px;
    }

    .partner-support-heading {
        font-size: 24px;
        margin-bottom: 36px;
    }

    .partner-support-grid {
        column-gap: 56px;
        row-gap: 36px;
    }

    .partner-support-item-title {
        font-size: 20px;
    }

    .partner-support-visual {
        width: 42%;
        height: 640px;
        margin-left: -20px;
    }
}

@media (max-width: 1024px) {
    .partner-support-section {
        padding: 48px 0 60px;
    }

    .partner-support-title {
        margin: 0 0 32px;
        font-size: 26px;
    }

    .partner-support-main {
        flex-direction: column;
        align-items: stretch;
    }

    .partner-support-card {
        width: 100%;
        min-height: auto;
    }

    .partner-support-card-inner {
        padding: 36px 28px 40px;
    }

    .partner-support-grid {
        grid-template-columns: 1fr;
        row-gap: 28px;
        column-gap: 0;
    }

    .partner-support-heading {
        margin-bottom: 28px;
        font-size: 22px;
    }

    .partner-support-item-title {
        font-size: 18px;
        margin-bottom: 10px;
    }

    .partner-support-item-text {
        font-size: 14px;
        line-height: 1.8;
    }

    .partner-support-visual {
        width: 100%;
        height: 360px;
        margin: 20px 0 0;
    }
}

@media (max-width: 640px) {
    .partner-support-wrap {
        max-width: calc(100% - 32px);
    }

    .partner-support-title {
        font-size: 22px;
        line-height: 1.4;
    }

    .partner-support-card {
        border-radius: 14px;
    }

    .partner-support-card-inner {
        padding: 28px 20px 30px;
    }

    .partner-support-heading {
        font-size: 20px;
    }

    .partner-support-icon {
        width: 24px;
        height: 24px;
        margin-bottom: 12px;
    }

    .partner-support-item-title {
        font-size: 17px;
    }

    .partner-support-item-text {
        font-size: 13px;
    }
}

.join-requirements-block {
    padding: 40px 0 80px;
    background: #f3f4f8;
}

.join-requirements-block * {
    box-sizing: border-box;
}

.join-requirements-block__inner {
    width: 1680px;
    max-width: calc(100% - 80px);
    margin: 0 auto;
}

.join-requirements-block__title {
    margin: 0 0 54px;
    text-align: center;
    font-family: "PingFang SC", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif;
    font-size: 52px;
    line-height: 1.2;
    font-weight: 500;
    color: #4b4747;
    letter-spacing: 2px;
}

.join-requirements-block__grid {
    display: flex;
    justify-content: center;
    flex-wrap: nowrap;
}

.join-requirements-block__item {
    position: relative;
    width: 332px;
    height: 322px;
    flex: 0 0 332px;
}

.join-requirements-block__bg {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    pointer-events: none;
    user-select: none;
}

.join-requirements-block__content {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    padding-top: 68px;
}

.join-requirements-block__icon {
    width: 96px;
    height: 96px;
    object-fit: contain;
    margin-bottom: 34px;
}

.join-requirements-block__text {
    font-size: 22px;
    line-height: 1.4;
    font-weight: 500;
    color: #4b4747;
    text-align: center;
    letter-spacing: 1px;
}

/* 平板 */
@media (max-width: 1600px) {
    .join-requirements-block__inner {
        max-width: calc(100% - 48px);
    }

    .join-requirements-block__title {
        font-size: 42px;
        margin-bottom: 42px;
    }

    .join-requirements-block__grid {
        flex-wrap: nowrap;
        justify-content: center;
    }

    .join-requirements-block__item {
        width: 280px;
        height: 272px;
        flex: 0 0 280px;
    }

    .join-requirements-block__content {
        padding-top: 54px;
    }

    .join-requirements-block__icon {
        width: 80px;
        height: 80px;
        margin-bottom: 26px;
    }

    .join-requirements-block__text {
        font-size: 20px;
    }
}

/* 小屏 */
@media (max-width: 1024px) {
    .join-requirements-block {
        padding: 32px 0 56px;
    }

    .join-requirements-block__title {
        font-size: 32px;
        margin-bottom: 28px;
    }

    .join-requirements-block__grid {
        flex-wrap: nowrap;
        justify-content: center;
    }

    .join-requirements-block__item {
        width: calc(50% - 8px);
        height: auto;
        flex: 0 0 calc(50% - 8px);
        aspect-ratio: 332 / 322;
    }

    .join-requirements-block__content {
        padding-top: 18%;
    }

    .join-requirements-block__icon {
        width: 72px;
        height: 72px;
        margin-bottom: 18px;
    }

    .join-requirements-block__text {
        font-size: 18px;
    }
}

/* 手机 */
@media (max-width: 640px) {
    .join-requirements-block__inner {
        max-width: calc(100% - 32px);
    }

    .join-requirements-block__title {
        font-size: 26px;
        margin-bottom: 22px;
    }

    .join-requirements-block__item {
        width: 100%;
        flex: 0 0 100%;
        aspect-ratio: 332 / 322;
    }

    .join-requirements-block__content {
        padding-top: 20%;
    }

    .join-requirements-block__icon {
        width: 64px;
        height: 64px;
        margin-bottom: 16px;
    }

    .join-requirements-block__text {
        font-size: 17px;
    }
}

.agent-steps-section {
    padding: 60px 0 80px;
    background: #f3f4f8;
}

.agent-steps-inner {
    width: 1680px;
    max-width: calc(100% - 80px);
    margin: 0 auto;
}

.agent-steps-title {
    text-align: center;
    font-size: 48px;
    color: #4b4747;
    font-weight: 500;
    margin-bottom: 60px;
}

/* 主布局 */
.agent-steps-main {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* 左侧流程 */
.agent-steps-list {
    display: flex;
    align-items: center;
    gap: 60px;
}

/* 单个步骤 */
.agent-step-item {
    position: relative;
    width: 160px;
    height: 160px;
    flex-shrink: 0;
}

/* 背景圆 */
.agent-step-bg {
    width: 100%;
    height: 100%;
    display: block;
}

/* 文本 */
.agent-step-text {
    position: absolute;
    bottom: 36px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 18px;
    color: #666;
    font-weight: 500;
}

/* 右侧二维码 */
.agent-steps-qrcode {
    text-align: center;
    margin-left: 40px;
}

.agent-steps-qrcode-img {
    width: 160px;
    height: 160px;
    display: block;
    margin: 0 auto 16px;
}

.agent-steps-qrcode-text {
    font-size: 18px;
    color: #666;
}

.hero-slogan-section {
    /* 为非沉浸式页面的 fixed header 留出空间 */
    padding-top: 70px;
}

.hero-slogan-wrap {
    position: relative;
    width: 100%;
}

.hero-slogan-bg {
    width: 100%;
    display: block;
}

/* 核心：居中覆盖文字 */
.hero-slogan-text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);

    font-size: 42px;
    color: #ffffff;
    letter-spacing: 8px;
    font-weight: 250;


    text-align: center;
}

.company-intro-section {
    padding: 80px 0;
    background: #ffffff;
}

.company-intro-inner {
    width: 1400px;
    max-width: calc(100% - 80px);
    margin: 0 auto;
    display: flex;
    gap: 80px;
    align-items: center;
}

/* 左侧图 */
.company-intro-visual {
    width: 560px;
    height: 420px;
    flex-shrink: 0;
}

.company-intro-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 16px;
}

/* 右侧内容 */
.company-intro-content {
    flex: 1;
}

/* 标题 */
.company-intro-title {
    font-size: 36px;
    color: #4b4747;
    margin-bottom: 24px;
    font-weight: 500;

}

/* 正文 */
.company-intro-text {
    font-size: 14px;
    color: #777;
    line-height: 1.9;
    margin-bottom: 18px;

}

/* 底部数据 */
.company-intro-stats {
    display: flex;
    gap: 100px;
    margin-top: 40px;
}

.company-intro-num {
    font-size: 36px;
    color: #ff5e4d;
    font-weight: 500;
    margin-bottom: 6px;
}

.company-intro-label {
    font-size: 14px;
    color: #888;
}

.tech-patent-section {
    padding: 0;
    background: #f3f4f8;
}

.tech-patent-section * {
    box-sizing: border-box;
}

.tech-patent-wrap {
    position: relative;
    width: 100%;
}

.tech-patent-bg {
    display: block;
    width: 100%;
    height: auto;
}

.tech-patent-layer {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    font-family: "Noto Sans SC", "Source Han Sans CN", "Microsoft YaHei", "PingFang SC", sans-serif;
}

/* 左上文案 */
.tech-patent-content {
    position: absolute;
    left: 5.2%;
    top: 10.8%;
    width: 58%;
}

.tech-patent-title {
    margin: 0;
    font-size: 40px;
    line-height: 1.3;
    font-weight: 500;
    color: #3f3d3d;
    letter-spacing: 1px;

}

.tech-patent-desc {
    margin: 42px 0 0;
    font-size: 12px;
    line-height: 2;
    font-weight: 400;
    color: #666666;
}

/* 左下logo说明 */
.tech-patent-badge {
    position: absolute;
    left: 7.8%;
    bottom: 13.5%;
    text-align: center;
}

.tech-patent-badge-icon {
    display: block;
    width: 42px;
    height: 56px;
    margin: 0 auto 22px;
    object-fit: contain;
}

.tech-patent-badge-text {
    font-size: 15px;
    line-height: 1.6;
    font-weight: 500;
    color: #666666;
    white-space: nowrap;
}

/* 适配 */
@media (max-width: 1600px) {
    .tech-patent-content {
        width: 62%;
    }

    .tech-patent-title {
        font-size: 30px;
    }

    .tech-patent-desc {
        margin-top: 28px;
        font-size: 13px;
        line-height: 1.9;
    }

    .tech-patent-badge-icon {
        width: 36px;
        height: 48px;
        margin-bottom: 16px;
    }

    .tech-patent-badge-text {
        font-size: 14px;
    }
}

@media (max-width: 1024px) {
    .tech-patent-content {
        left: 5%;
        top: 8%;
        width: 76%;
    }

    .tech-patent-title {
        font-size: 28px;
    }

    .tech-patent-desc {
        margin-top: 18px;
        font-size: 12px;
        line-height: 1.7;
    }

    .tech-patent-badge {
        left: 7%;
        bottom: 8%;
    }

    .tech-patent-badge-icon {
        width: 28px;
        height: 38px;
        margin-bottom: 10px;
    }

    .tech-patent-badge-text {
        font-size: 12px;
    }
}

@media (max-width: 768px) {
    .tech-patent-content {
        width: 88%;
        top: 6%;
    }

    .tech-patent-title {
        font-size: 22px;
        line-height: 1.4;
    }

    .tech-patent-desc {
        margin-top: 12px;
        font-size: 11px;
        line-height: 1.6;
    }

    .tech-patent-badge {
        left: 6%;
        bottom: 6%;
    }

    .tech-patent-badge-text {
        font-size: 11px;
    }
}

.history-timeline-section {
    padding: 40px 0 80px;
    background: #f3f4f8;
}

.history-timeline-section * {
    box-sizing: border-box;
}

.history-timeline-wrap {
    width: 1200px;
    max-width: calc(100% - 40px);
    margin: 0 auto;
}

.history-timeline-title {
    margin: 0 0 40px;
    text-align: center;
    font-size: 44px;
    line-height: 1.2;
    font-weight: 300;
    color: #4b4747;
    font-family: "PingFang SC", "Microsoft YaHei", Arial, sans-serif;
}

.history-timeline-main {
    position: relative;
    width: 100%;
    height: 980px;
}

/* 中轴线 */
.history-timeline-line {
    position: absolute;
    top: 60px;
    bottom: 120px;
    left: 50%;
    width: 2px;
    transform: translateX(-50%);
    background-image: linear-gradient(
            to bottom,
            #eb6b4b 0,
            #eb6b4b 4px,
            transparent 4px,
            transparent 10px
    );
    background-size: 2px 10px;
    background-repeat: repeat-y;
    opacity: 0.65;
}

/* 单个节点 */
.history-timeline-node {
    position: absolute;
    left: 50%;
    width: 0;
    transform: translateX(-50%);
}

/* 中间圆点 */
.history-timeline-dot {
    position: absolute;
    left: 50%;
    top: 0;
    width: 18px;
    height: 18px;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    border: 2px solid #bfbfbf;
    background: #d9d9d9;
    cursor: pointer;
    transition: all 0.25s ease;
    z-index: 3;
}

.history-timeline-node.is-active .history-timeline-dot {
    border-color: #ff5e4d;
    background: #ff5e4d;
    box-shadow: 0 0 0 3px rgba(235, 107, 75, 0.15);
}

/* 年份 */
.history-timeline-year {
    position: absolute;
    top: -73px;
    border: 0;
    background: transparent;
    padding: 0;
    margin: 0;
    cursor: pointer;
    font-family: "Bahnschrift","Noto Sans SC", "Source Han Sans CN", "Microsoft YaHei", "PingFang SC", sans-serif;
    font-size: 118px;
    line-height: 1;
    font-weight: 700;
    color: transparent;
    font-stretch: condensed;
    -webkit-text-stroke: 1px #ef7a5a;
    text-stroke: 2px #ef7a5a;
    transition: all 0.25s ease;
    white-space: nowrap;
}

.history-timeline-year--left {
    right: 79px;
}

.history-timeline-year--right {
    left: 79px;
}

.history-timeline-node.is-active .history-timeline-year {
    color: #ff5e4d;
    -webkit-text-stroke: 0;
    text-stroke: 0;
}

/* 卡片 */
.history-timeline-card {
    position: absolute;
    top: -72px;
    width: 360px;
    min-height: 122px;
    padding: 11px 30px;
    border-radius: 28px;
    background: #fff;
    border: 1.5px solid transparent;
    box-shadow: 0 10px 28px rgba(30, 35, 90, 0.06);
    transition: all 0.25s ease;
}

.history-timeline-card--left {
    right: 40px;
}

.history-timeline-card--right {
    left: 40px;
}

.history-timeline-node.is-active .history-timeline-card {
    border-color: #ff5e4d;
}

.history-timeline-card h3 {
    margin: 0 0 14px;
    font-size: 26px;
    line-height: 1.3;
    font-weight: 400;
    color: #4b4747;
    font-family: "Noto Sans SC", "Source Han Sans CN", "Microsoft YaHei", "PingFang SC", sans-serif;
}

.history-timeline-card p {
    margin: 0;
    font-size: 14px;
    line-height: 1.9;
    color: #7d7b7b;
    font-family: "Noto Sans SC", "Source Han Sans CN", "Microsoft YaHei", "PingFang SC", sans-serif;
}

/* hover 微反馈 */
.history-timeline-year:hover,
.history-timeline-dot:hover {
    opacity: 0.9;
}

.history-timeline-card:hover {
    transform: translateY(-2px);
}

/* 平板 */
@media (max-width: 1100px) {
    .history-timeline-wrap {
        max-width: calc(100% - 24px);
    }

    .history-timeline-main {
        height: 900px;
    }

    .history-timeline-year {
        font-size: 90px;
    }

    .history-timeline-card {
        width: 300px;
        padding: 24px 24px;
    }

    .history-timeline-card h3 {
        font-size: 22px;
    }
}

/* 小屏改为单列 */
@media (max-width: 768px) {
    .history-timeline-title {
        font-size: 30px;
        margin-bottom: 24px;
    }

    .history-timeline-main {
        height: auto;
        padding-left: 0px;
    }

    .history-timeline-line {
        left: 18px;
        transform: none;
        top: 21px;
        bottom: 179px;
    }

    .history-timeline-node {
        position: relative;
        left: 0;
        transform: none;
        width: auto;
        margin-bottom: 40px;
        top: auto !important;
    }

    .history-timeline-dot {
        left: 18px;
        transform: translate(-50%, 0);
        top: 18px;
    }

    .history-timeline-year {
        position: relative;
        top: 0;
        left: 0 !important;
        right: auto !important;
        display: block;
        font-size: 54px;
        margin: 0 0 12px 40px;
    }

    .history-timeline-card,
    .history-timeline-card--left,
    .history-timeline-card--right {
        position: relative;
        top: 0;
        left: 40px;
        right: auto;
        width: calc(100% - 40px);
    }
}

.intro-case-tab {
    display: flex;
    justify-content: center;
    gap: 135px;
    background: #fff;
    border-bottom: 1px solid #eee;
}

.about-tab-switcher {
    position: sticky;
    top: 70px;
    z-index: 20;
}

.about-tab-stage {
    position: relative;
    background: #f3f4f8;
    overflow: hidden;
    transition: height 0.35s ease;
}

.about-tab-panel {
    width: 100%;
    display: none;
}

.about-tab-panel.is-active {
    display: block;
}

.about-tab-panel.is-leaving {
    animation: aboutPanelOut 0.18s ease forwards;
}

.about-tab-panel.is-entering {
    animation: aboutPanelIn 0.42s cubic-bezier(0.22, 1, 0.36, 1);
}

.about-tab-panel > .intro-case-tab {
    display: none;
}

.about-contact-panel {
    padding: 72px 0 96px;
    background: #f3f4f8;
}

.about-contact-panel__inner {
    width: 1200px;
    max-width: calc(100% - 80px);
    margin: 0 auto;
}

.about-contact-panel__header {
    text-align: center;
    margin-bottom: 42px;
}

.about-contact-panel__header h2 {
    margin: 0 0 12px;
    font-size: 40px;
    font-weight: 500;
    color: #4b4747;
}

.about-contact-panel__header p {
    margin: 0;
    font-size: 15px;
    line-height: 1.8;
    color: #7b7b84;
}

.about-contact-panel__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
    margin-bottom: 34px;
}

.about-contact-card {
    padding: 30px 32px;
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 14px 32px rgba(35, 38, 45, 0.05);
}

.about-contact-card--wide {
    grid-column: 1 / -1;
}

.about-contact-card__label {
    display: block;
    margin-bottom: 14px;
    font-size: 14px;
    color: #8e8e96;
}

.about-contact-card__value {
    display: block;
    font-size: 28px;
    line-height: 1.5;
    color: #3f3d3d;
    font-weight: 500;
}

.about-contact-qrs {
    display: flex;
    justify-content: center;
    gap: 24px;
}

.about-contact-qrs__item {
    width: 220px;
    padding: 24px;
    text-align: center;
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 14px 32px rgba(35, 38, 45, 0.05);
}

.about-contact-qrs__item img {
    width: 132px;
    height: 132px;
    object-fit: contain;
    display: block;
    margin: 0 auto 16px;
}

.about-contact-qrs__item span {
    display: block;
    font-size: 14px;
    color: #6c6c74;
}

.case-tab {
    position: relative;
    padding: 22px 0;
    font-size: 15px;
    color: #666;
    cursor: pointer;
    white-space: nowrap;
    text-decoration: none;
}

.case-tab.active {
    color: #ff4d4f;
    font-weight: 500;
}

.case-tab.active::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 3px;
    background: #ff4d4f;
}

@keyframes aboutPanelOut {
    from {
        opacity: 1;
        transform: translateX(0);
    }
    to {
        opacity: 0;
        transform: translateX(-24px);
    }
}

@keyframes aboutPanelIn {
    from {
        opacity: 0;
        transform: translateX(56px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.team-goal-section {
    padding: 80px 0 120px;
    background: #ffffff;
}

.team-goal-inner {
    width: 1400px;
    max-width: calc(100% - 80px);
    margin: 0 auto;
}

/* 上部分 */
.team-goal-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 140px;
}

/* 左侧 */
.team-goal-text {
    width: 40%;
}

.team-goal-title {
    font-size: 40px;
    color: #4b4747;
    font-weight: 500;
    margin-bottom: 236px;
    font-family: "PingFang SC", "Microsoft YaHei", sans-serif;
}

.team-goal-desc {
    font-size: 14px;
    color: #777;
    line-height: 2;
}

/* 右侧图片 */
.team-goal-visual {
    position: relative;
    width: 720px;
    height: 420px;
}

.team-goal-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* 左侧渐变遮罩（你图里的效果） */
.team-goal-mask {
    position: absolute;
    left: 0;
    top: 0;
    width: 40%;
    height: 100%;
    background: linear-gradient(
            to right,
            rgba(243, 244, 248, 1),
            rgba(243, 244, 248, 0)
    );
}

/* 下部分 */
.team-goal-bottom {
    position: relative;
    min-height: 416px;
}

/* 标题右侧 */
.team-goal-title--right {
    text-align: right;
    margin-bottom: 130px;
}

/* 右下角文字 */
.team-goal-goaltext {
    width: 200px;
    margin-left: auto;
    text-align: left;
    font-size: 14px;
    line-height: 2;
    color: #666;
}

.team-computer-visual {
    position: relative;
    width: 720px;
    height: 420px;
}

.team-computer-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.team-goal-bottom2 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 140px;
}

.plan-direction-section {
    padding: 0;
    background: #f3f4f8;
}

.plan-direction-section * {
    box-sizing: border-box;
}

.plan-direction-wrap {
    position: relative;
    width: 100%;
}

.plan-direction-bg {
    display: block;
    width: 100%;
    height: auto;
}

.plan-direction-layer {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    font-family: "PingFang SC", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif;
}

/* 标题 */
.plan-direction-title {
    position: absolute;
    margin: 0;
    font-size: 52px;
    line-height: 1.2;
    font-weight: 500;
    color: #5b5a5a;
    letter-spacing: 1px;
}

.plan-direction-title--left {
    left: 38%;
    top: 8%;
    transform: translateX(-50%);
}

.plan-direction-title--right {
    left: 66%;
    top: 8%;
    transform: translateX(-50%);
}

/* 通用项 */
.plan-direction-item {
    position: absolute;
    display: flex;
    align-items: center;
    gap: 18px;
}

.plan-direction-num {
    font-size: 56px;
    line-height: 1;
    font-weight: 300;
    color: #eb6b4b;
    font-family: "Bahnschrift","Noto Sans SC", "Source Han Sans CN", "Microsoft YaHei", "PingFang SC", sans-serif;
    white-space: nowrap;
    margin-left:-40px;
}

.plan-direction-text {
    font-size: 20px;
    line-height: 1.45;
    font-weight: 500;
    color: #5d5b5b;
    white-space: nowrap;
    margin-bottom: -10px;
}

/* 左侧位置 */
.plan-direction-item--l1 {
    left: 31%;
    top: 29%;
}

.plan-direction-item--l2 {
    left: 26%;
    top: 48%;
}

.plan-direction-item--l3 {
    left: 22%;
    top: 66%;
}

.plan-direction-item--l4 {
    left: 16%;
    top: 82%;
    align-items: flex-start;
}

/* 右侧位置 */
.plan-direction-item--r1 {
    left: 59%;
    top: 29%;
}

.plan-direction-item--r2 {
    left: 66%;
    top: 48%;
}

.plan-direction-item--r3 {
    left: 73%;
    top: 66%;
}

.plan-direction-item--r4 {
    left: 79%;
    top: 82%;
    align-items: flex-start;
}

/* 适配 */
@media (max-width: 1600px) {
    .plan-direction-title {
        font-size: 42px;
    }

    .plan-direction-num {
        font-size: 48px;
    }

    .plan-direction-text {
        font-size: 18px;
    }
}

@media (max-width: 1200px) {
    .plan-direction-title {
        font-size: 34px;
    }

    .plan-direction-num {
        font-size: 38px;
    }

    .plan-direction-text {
        font-size: 15px;
    }

    .plan-direction-item {
        gap: 12px;
    }
}

@media (max-width: 768px) {
    .plan-direction-title {
        font-size: 24px;
    }

    .plan-direction-num {
        font-size: 28px;
    }

    .plan-direction-text {
        font-size: 12px;
        line-height: 1.4;
    }
}

.talent-plan-section {
    padding: 100px 0 80px;
    background: #f3f4f8; /* 👉 你要的背景色 */
}

.talent-plan-inner {
    width: 1400px;
    max-width: calc(100% - 80px);
    margin: 0 auto;
}

/* 上部分 */
.talent-plan-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 120px;
}

/* 左 */
.talent-plan-left {
    width: 40%;
}

/* 右 */
.talent-plan-right {
    width: 30%;
    text-align: right;
    margin-top: 120px; /* 控制上下错位（像你图里那样） */
}

/* 标题 */
.talent-plan-title {
    font-size: 42px;
    color: #3f3d3d;
    font-weight: 500;
    margin-bottom: 210px;
    font-family: "Bahnschrift","Noto Sans SC", "Source Han Sans CN", "Microsoft YaHei", "PingFang SC", sans-serif;
}

.talent-plan-title--right {
    text-align: right;
}

/* 文本 */
.talent-plan-desc {
    font-size: 14px;
    color: #777;
    line-height: 2;
}

.talent-plan-desc--right {
    text-align: right;
}

/* 底部按钮 */
.talent-plan-bottom {
    display: flex;
    justify-content: space-between;
    gap: 40px;
}

/* 按钮 */
.talent-plan-btn {
    display: block;
    width: 48%;
    text-decoration: none;
}

.talent-plan-btn img {
    width: 100%;
    display: block;
}

/* hover效果（可选） */
.talent-plan-btn:hover {
    transform: translateY(-3px);
    transition: 0.25s;
}

/* ==========================================================================
   Mobile Adaptation
   ========================================================================== */
@media (max-width: 768px) {
    /* Base structural changes */
    body {
        font-size: 14px;
        overflow-x: hidden;
    }

    .container, .hero-content, .talent-plan-inner {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 15px !important;
        padding-right: -10px !important;
        box-sizing: border-box;
    }

    /* Header & Navigation (simplified) */
    .header .container {
        flex-direction: column;
        align-items: flex-start;
        padding-top: 10px;
        padding-bottom: 10px;
        padding-right: 10px;
    }
    .header-logo img {
        height: 30px;
    }
    .nav {
        display: none; /* In a real scenario, implement a hamburger menu */
    }

    /* Hero Section */
    .hero {
        padding: 60px 0;
        text-align: center;
    }
    .hero h1 {
        font-size: 28px;
        line-height: 1.3;
    }
    .hero p {
        font-size: 16px;
    }
    .hero-btn, .hero-btn.outline {
        display: inline-block;
        margin-bottom: 10px;
    }

    /* Typography */
    .section-title h2 {
        font-size: 24px;
    }
    .section-desc {
        font-size: 14px;
    }

    /* Flex grids to stacked layout */
    .features-grid,
    .coop-modes,
    .cases-grid,
    .news-grid,
    .team-grid,
    .steps-container {
        display: flex;
        flex-direction: column;
        gap: 20px;
    }
    .feature-card,
    .coop-card,
    .case-card,
    .news-item,
    .team-member {
        width: 100% !important;
        margin-left: 0;
        margin-right: 0;
    }

    /* Multi-column rows to single columns */
    .row {
        flex-direction: column;
    }
    .col-half, .col-third, .col-quarter {
        width: 100% !important;
    }

    /* Talent Plan section */
    .talent-plan-top {
        flex-direction: column;
        margin-bottom: 30px;
    }
    .talent-plan-left,
    .talent-plan-right {
        width: 100%;
        text-align: left;
        margin-top: 0;
    }
    .talent-plan-title, .talent-plan-title--right {
        font-size: 24px;
        margin-bottom: 20px;
        text-align: left;
    }
    .talent-plan-desc, .talent-plan-desc--right {
        text-align: left;
    }
    .talent-plan-bottom {
        flex-direction: column;
        gap: 15px;
    }
    .talent-plan-btn {
        width: 100%;
    }

    /* Process/Steps specific fixes */
    .step-item {
        flex-direction: column;
        align-items: flex-start;
        text-align: left;
    }
    .step-number {
        margin-bottom: 10px;
    }
    .step-line {
        display: none; /* Hide connector lines on mobile */
    }

    /* Footer */
    .footer {
        padding: 40px 0;
    }
    .footer-top {
        flex-direction: column;
        gap: 30px;
    }
    .footer-col {
        width: 100%;
    }
    .footer-bottom {
        flex-direction: column;
        text-align: center;
        gap: 15px;
    }

    /* Helper Utilities */
    .hide-on-mobile {
        display: none !important;
    }
    .show-on-mobile {
        display: block !important;
    }
}

.showcase-slider {
    width: 100%;
    background: #f3f4f8;
}

.showcase-slider * {
    box-sizing: border-box;
}

.showcase-slider__wrap {
    position: relative;
    width: 100%;
    height: 620px; /* 按你的设计改 */
    overflow: hidden;
}

/* 图片舞台 */
.showcase-slider__stage {
    position: relative;
    width: 100%;
    height: 100%;
}

/* 每张图层叠在一起 */
.showcase-slider__slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity 1.2s ease, visibility 1.2s ease;
    z-index: 1;
    overflow: hidden;
}

/* 当前显示图 */
.showcase-slider__slide.is-active {
    opacity: 1;
    visibility: visible;
    z-index: 2;
}

/* 图片本体 */
.showcase-slider__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;

    transform: scale(1);
    transition: transform 6s ease, opacity 1.2s ease;
    opacity: 1;
}

/* 当前图缓慢放大 */
.showcase-slider__slide.is-active .showcase-slider__img {
    animation: showcaseZoom 6s ease forwards;
}

/* 左右按钮 */
.showcase-slider__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 5;

    width: 72px;
    height: 72px;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;

    display: flex;
    align-items: center;
    justify-content: center;
}

.showcase-slider__nav img {
    width: 44px;   /* 你的svg大小可改 */
    height: 44px;
    display: block;
}

.showcase-slider__nav--prev {
    left: 190px;
}

.showcase-slider__nav--next {
    right: 190px;
}

.showcase-slider__nav:hover {
    opacity: 0.85;
}

/* 慢慢放大 */
@keyframes showcaseZoom {
    from {
        transform: scale(1);
    }
    to {
        transform: scale(1.06);
    }
}

.case-eic {
    background: #f3f4f8;
    padding: 10px 0;
}

.case-eic__container {
    width: 1200px;
    margin: 0 auto;
}

/* 标题 */
.case-eic__header {
    text-align: center;
    margin-bottom: 50px;
}

.case-eic__title {
    font-size: 55px;
    color: #333;
    margin-bottom: 10px;
    font-weight: 400;
}

.case-eic__subtitle {
    font-size: 30px;
    color: #888;
}

/* 内容布局 */
.case-eic__content {
    display: flex;
    align-items: center;
    gap: 60px;
}

/* 左侧 */
.case-eic__info {
    flex: 1;
}

.case-eic__project {
    font-size: 30px;
    color: #333;
    display: flex;
    align-items: center;
    gap: 10px;
}

.case-eic__dot {
    width: 10px;
    height: 10px;
    background: #e55b3c;
    border-radius: 50%;
}

.case-eic__partner {
    margin: 12px 0 30px;
    color: #999;
    font-size: 14px;
}

.case-eic__desc {
    color: #666;
    line-height: 1.8;
    font-size: 18px;
}

/* 右侧图片 */
.case-eic__img-wrap {
    flex: 1;
    height: 360px;
    border-radius: 20px;
    overflow: hidden;
}

.case-eic__img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;

    transform: scale(1.02);
    transition: transform 2s cubic-bezier(0.22, 1, 0.36, 1);
}

/* 🔥 hover Ken Burns */
.case-eic__img-wrap:hover img {
    transform: scale(1.08);
}

/* 整体 */
.bim-case {
    padding: 100px 0;
    position: relative;
    overflow: hidden;
    background: #f3f4f8;
}

/* 🔥 渐变背景（你那张图用代码实现） */
.bim-case::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -160px;
    transform: translateX(-50%);
    width: 990px;
    height: 1000px;
    background: radial-gradient(
            circle at center,
            rgba(230, 90, 60, 0.45) 0%,
            rgba(230, 90, 60, 0.25) 30%,
            rgba(230, 90, 60, 0.1) 55%,
            rgba(230, 90, 60, 0.03) 75%,
            rgba(230, 90, 60, 0) 100%
    );
    z-index: 0;
}

/* 容器 */
.bim-case__container {
    width: 1200px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}

/* 标题 */
.bim-case__title {
    text-align: center;
    font-size: 32px;
    color: #333;
    margin-bottom: 50px;
}

/* 网格 */
.bim-case__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

/* 卡片 */
.bim-case__card {
    background: #fff;
    border-radius: 18px;
    overflow: hidden;
    transition: transform 0.3s ease;
}

/* 图片区域 */
.bim-case__img-wrap {
    height: 200px;
    overflow: hidden;
}

/* 🔥 Ken Burns 核心 */
.bim-case__img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;

    transform: scale(1.02);
    transition: transform 2s cubic-bezier(0.22, 1, 0.36, 1);
}

/* hover 放大 */
.bim-case__card:hover img {
    transform: scale(1.08);
}

/* 文字 */
.bim-case__content {
    padding: 20px;
}

.bim-case__content h3 {
    font-size: 22px;
    color: #333;
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
    font-weight: 400;
}

.dot {
    width: 8px;
    height: 8px;
    background: #e55b3c;
    border-radius: 50%;
}

.bim-case__content p {
    font-size: 13px;
    color: #666;
    line-height: 1.7;
    font-weight: 400;
}

.case-banner {
    padding: 0px 0px 40px 0px;
    background: #f3f4f8;
}

.case-banner__inner {
    width: 1200px;
    margin: 0 auto;
    position: relative;
    border-radius: 28px;
    overflow: hidden;
}

/* 背景图 */
.case-banner__bg {
    position: absolute;
    inset: 0;
    z-index: 1;
}

/* ❌ 去掉 blur，只保留清晰 */
.case-banner__bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* 🔥 遮罩层（核心） */
.case-banner__bg::after {
    content: "";
    position: absolute;
    inset: 0;

    /* 两种你可以选一个👇 */

    /* 方案1：整体变暗（推荐） */
    background: rgba(0, 0, 0, 0.65);

    /* 方案2：上下渐变（更高级） */
    /*
    background: linear-gradient(
      to bottom,
      rgba(0,0,0,0.2),
      rgba(0,0,0,0.5)
    );
    */
}

/* 内容 */
.case-banner__content {
    position: relative;
    z-index: 2;
    height: 210px;

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    text-align: center;
    color: #fff;
}

/* 标题 */
.case-banner__title {
    font-size: 36px;
    margin-bottom: 10px;
    letter-spacing: 3px;
}

/* 副标题 */
.case-banner__subtitle {
    font-size: 16px;
    opacity: 0.9;
    margin-bottom: 21px;
}

/* 按钮 */
.case-banner__btn {
    padding: 9px 36px;
    background: #e55b3c;
    color: #fff;
    font-size: 16px;
    border-radius: 30px;
    text-decoration: none;
    transition: all 0.3s ease;
}

/* hover */
.case-banner__btn:hover {
    background: #d94a2c;
    transform: translateY(-2px);
}

/* --- Mobile Adaptation (max-width: 768px) --- */
@media (max-width: 768px) {
    /* Container Fixes */
    .container {
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 15px !important;
    }
    header .container, .hero-slide .container, .coop-hero .container {
        padding: 0 15px !important;
    }
    /* Hero */
    .hero-content h1 {
        font-size: 32px !important;
        line-height: 1.3 !important;
    }
    .hero-content p {
        font-size: 16px !important;
    }
    /* Layout direction */
    .icon-bar .container, .why-cards, .why-stats, .feature-row .container {
        flex-direction: column !important;
        align-items: center !important;
    }
    .icon-item { width: 100% !important; margin-bottom: 15px; }
    .why-stats { gap: 30px !important; }
    /* BIM Cards Overflow Fix */
    .bim-hover-cards {
        flex-direction: column !important;
        padding: 20px 0 !important;
    }
    .bim-card {
        width: 100% !important;
        height: auto !important;
        min-height: 250px;
        flex: none !important;
        margin-bottom: 20px;
    }
    /* Footer */
    .footer-grid {
        grid-template-columns: 1fr !important;
        text-align: center !important;
        gap: 30px;
    }
    .footer-bottom {
        flex-direction: column !important;
        text-align: center;
        gap: 15px;
    }
    .footer-logo { margin: 0 auto 20px auto !important; }
    /* Grid fixes */
    .solution-grid, .step-grid, .news-grid {
        grid-template-columns: 1fr !important;
    }
    .coop-logo-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}
@media (max-width: 768px) {
    /* Ensure all images and videos are responsive */
    img, video, iframe {
        max-width: 100% !important;
        height: auto !important;
    }
    /* Remove explicit heights that might break on mobile */
    .hero, .coop-hero {
        height: auto !important;
        min-height: 50vh !important;
        padding: 50px 0 !important;
    }
    /* Prevent side-scrolling */
    body {
        overflow-x: hidden !important;
        width: 100% !important;
    }
}

/* 核心样式提取 */
.side-toolbar {
    position: fixed;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1000;
    display: flex;
    flex-direction: column;
    gap: 10px; /* 按钮间的间距 */
}

.side-widget {
    display: flex;
    align-items: center;
    justify-content: flex-end; /* 确保内容在左，按钮在右 */
}

/* 按钮通用样式 */
.side-btn {
    color: white;
    border: none;
    padding: 10px 15px;
    border-radius: 5px 0 0 5px;
    cursor: pointer;
    font-size: 14px;
    width: 40px; /* 固定宽度，竖向排版文字 */
    writing-mode: vertical-rl; /* 文字竖排 */
    letter-spacing: 2px;
    transition: background-color 0.3s, transform 0.3s;
}

.phone-btn {
    background-color: #1890ff; /* 蓝色 */
}
.phone-btn:hover {
    background-color: #096dd9;
}

.wechat-btn {
    background-color: #07C160; /* 微信绿 */
}
.wechat-btn:hover {
    background-color: #06A150;
}

.checkup-btn {
    background-color: #ff5e4d; /* 品牌红 */
}
.checkup-btn:hover {
    background-color: #d94a3a;
}

/* 展开内容通用样式 */
.widget-content {
    display: none;
    background-color: white;
    padding: 15px;
    border-radius: 5px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    margin-right: 10px;
}

.widget-content p {
    margin: 10px 0 0 0;
    font-size: 14px;
    text-align: center;
}

/* 右向左滑入关键帧动画 */
@keyframes slideInContent {
    0% {
        opacity: 0;
        transform: translateX(30px);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

.widget-content.show {
    display: block;
    animation: slideInContent 0.3s ease-out forwards;
}@media (max-width: 768px) {
    .side-toolbar {
        display: none !important;
    }
}

/* --- Mobile Stabilization (keep desktop unchanged) --- */
@media (max-width: 768px) {
    html, body {
        width: 100%;
        overflow-x: hidden;
    }

    header .container {
        padding: 0 16px !important;
    }

    nav {
        height: 64px;
        justify-content: space-between;
    }

    .logo {
        max-width: calc(100% - 64px);
        min-width: 0;
        white-space: normal;
        gap: 6px;
    }

    .logo a,
    .logo img {
        flex-shrink: 0;
    }

    .logo-slogan,
    .logo-divider {
        display: none !important;
    }

    .nav-links {
        display: flex !important;
        width: min(74vw, 286px);
        height: auto;
        max-height: calc(100dvh - 24px);
        top: 12px;
        right: 0;
        margin-right: 0;
        padding: 76px 16px 20px;
        overflow-y: auto;
        border-radius: 24px 0 0 24px;
        background: rgba(255, 255, 255, 0.96);
        box-shadow: -18px 20px 44px rgba(21, 28, 36, 0.16);
        backdrop-filter: blur(10px);
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transform: translate3d(18px, 0, 0) scale(0.985);
        transform-origin: top right;
        transition:
            transform 0.38s cubic-bezier(0.22, 1, 0.36, 1),
            opacity 0.26s ease,
            visibility 0s linear 0.38s;
    }

    .nav-links.active {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: translate3d(0, 0, 0) scale(1);
        transition-delay: 0s;
    }

    .nav-links a,
    .dropdown {
        width: 100%;
    }

    .nav-links > a,
    .nav-links .dropbtn {
        padding: 10px 0;
        margin: 2px 0;
        font-size: 15px;
        line-height: 1.4;
        opacity: 0;
        transform: translateY(8px);
        transition:
            transform 0.32s cubic-bezier(0.22, 1, 0.36, 1),
            opacity 0.24s ease;
    }

    .nav-links.active > a,
    .nav-links.active .dropbtn,
    .nav-links.active .dropdown-content a {
        opacity: 1;
        transform: translateY(0);
    }

    .dropdown-content {
        display: block;
        position: static;
        min-width: 0;
        margin-top: 8px;
        padding: 8px 0 0;
        box-shadow: none;
        border-radius: 0;
        background: transparent;
        transform: none;
        left: auto;
    }

    .dropdown-content a {
        padding: 7px 0 7px 12px;
        text-align: left;
        color: #888;
        font-size: 13px;
        opacity: 0;
        transform: translateY(6px);
        transition:
            transform 0.32s cubic-bezier(0.22, 1, 0.36, 1),
            opacity 0.24s ease;
    }

    .nav-links.active > a:nth-of-type(1) { transition-delay: 0.03s; }
    .nav-links.active > a:nth-of-type(2) { transition-delay: 0.06s; }
    .nav-links.active > a:nth-of-type(3) { transition-delay: 0.09s; }
    .nav-links.active > a:nth-of-type(4) { transition-delay: 0.12s; }
    .nav-links.active .dropbtn { transition-delay: 0.15s; }
    .nav-links.active .dropdown-content a:nth-child(1) { transition-delay: 0.18s; }
    .nav-links.active .dropdown-content a:nth-child(2) { transition-delay: 0.21s; }
    .nav-links.active .dropdown-content a:nth-child(3) { transition-delay: 0.24s; }
    .nav-links.active .dropdown-content a:nth-child(4) { transition-delay: 0.27s; }
    .nav-links.active .dropdown-content a:nth-child(5) { transition-delay: 0.3s; }

    .nav-links:not(.active) > a,
    .nav-links:not(.active) .dropbtn,
    .nav-links:not(.active) .dropdown-content a {
        transition-delay: 0s;
    }

    .hero {
        min-height: auto !important;
        margin-left: 0 !important;
    }

    .hero-slide {
        align-items: flex-end;
        padding: 104px 0 56px;
    }

    .hero-slide .container {
        padding: 0 16px !important;
    }

    .hero-content {
        max-width: 100%;
        margin-left: 0;
        padding: 0;
        text-align: left;
    }

    .hero h1,
    .hero-content h1 {
        font-size: 28px !important;
        line-height: 1.35 !important;
        white-space: normal !important;
        word-break: break-word;
    }

    .hero p,
    .hero-content p {
        max-width: 100%;
        margin-bottom: 24px;
        font-size: 15px !important;
        line-height: 1.7;
    }

    .hero .btn,
    .hero-content .btn {
        width: 100%;
        max-width: 260px;
    }

    .hero-dots {
        left: 50%;
        right: auto;
        bottom: 24px;
        transform: translateX(-50%);
        justify-content: center;
        width: max-content;
        margin: 0 auto;
    }

    .icon-bar {
        padding: 32px 0;
    }

    .icon-bar .container {
        gap: 18px;
    }

    .icon-item {
        width: 100% !important;
        flex-direction: row;
        align-items: flex-start;
        text-align: left;
        gap: 12px;
    }

    .icon-item img {
        width: 52px;
        height: 52px;
        flex-shrink: 0;
    }

    .icon-item div h4 {
        font-size: 17px;
        line-height: 1.4;
    }

    .icon-item div p {
        line-height: 1.6;
    }

    .ai-title-block {
        padding: 36px 16px 24px;
    }

    .ai-title-block h2 {
        font-size: 26px;
        line-height: 1.35;
        margin-bottom: 14px;
    }

    .ai-title-block p {
        line-height: 1.7;
    }

    .bim-hover-cards {
        padding: 24px 16px 32px !important;
        gap: 16px;
        zoom: 1 !important;
        background: transparent;
    }

    .bim-hover-cards::before {
        display: none;
    }

    .bim-card,
    .bim-center {
        width: 100% !important;
        height: auto !important;
        min-height: 0;
        padding: 132px 0 0 !important;
        border-radius: 24px;
        background-size: cover !important;
        background-position: center top !important;
        background-repeat: no-repeat;
        box-shadow: 0 18px 38px rgba(31, 35, 41, 0.12);
        overflow: hidden;
    }

    .bim-card::after {
        opacity: 0 !important;
        background: transparent !important;
    }

    .bim-card-content {
        padding: 18px 16px 20px;
        background: rgba(255, 255, 255, 0.96);
        backdrop-filter: blur(6px);
    }

    .bim-card h3 {
        white-space: normal;
        line-height: 1.4;
        margin-bottom: 8px;
        color: #2c3138;
    }

    .bim-card p,
    .bim-card:hover p,
    .bim-card:hover h3 {
        transform: none;
        color: #66707d;
    }

    .bim-card:hover,
    .bim-hover-cards:hover .bim-card,
    .bim-hover-cards .bim-card:hover {
        flex: none !important;
        opacity: 1 !important;
        transform: none !important;
        box-shadow: 0 18px 38px rgba(31, 35, 41, 0.12);
    }

    .bim-card ul {
        display: block;
        opacity: 1;
        margin-top: 12px;
        padding-top: 12px;
        border-top: 1px solid rgba(210, 216, 224, 0.72);
    }

    .bim-card ul li {
        color: #5f6976;
        line-height: 1.65;
        margin-bottom: 8px;
    }

    .bim-highlight {
        display: block;
        margin-top: 12px;
        line-height: 1.7;
        opacity: 1;
        transform: none;
        color: #ea6544;
    }

    .case-banner {
        padding: 0 0 28px;
    }

    .case-banner__inner,
    .ai-wrapper {
        width: calc(100% - 32px);
        max-width: none;
    }

    .case-banner__content {
        height: auto;
        min-height: 180px;
        padding: 28px 18px;
    }

    .case-banner__title {
        font-size: 26px;
        line-height: 1.35;
        letter-spacing: 1px;
    }

    .case-banner__subtitle {
        font-size: 14px;
        line-height: 1.7;
    }

    [style*="width: 1200px"],
    [style*="width: 1320px"],
    [style*="width: 1400px"],
    [style*="width: 1680px"],
    [style*="width: 1920px"] {
        width: 100% !important;
        max-width: 100% !important;
    }
}

@media (max-width: 768px) {
    .solution-marquee::before,
    .solution-marquee::after {
        width: 36px;
    }

    .solution-marquee {
        padding-top: 24px;
    }

    .solution-card {
        width: min(82vw, 320px);
        height: auto;
        margin-right: 16px;
    }

    .solution-card img {
        height: 180px;
    }

    .solution-card-body {
        padding: 18px;
    }

    .why-section {
        padding: 56px 0 44px;
    }

    .why-title {
        font-size: 28px;
        line-height: 1.35;
        margin: 0 16px 28px;
    }

    .why-card {
        width: 100%;
        max-width: 100%;
        padding: 18px;
    }

    .footer-hero {
        height: 240px;
    }

    .footer-hero-content h2 {
        width: calc(100% - 32px);
        font-size: 24px;
        line-height: 1.4;
        letter-spacing: 2px;
        text-align: center;
        margin-bottom: 18px;
    }

    .footer-hero-btn {
        max-width: calc(100% - 32px);
        padding: 12px 20px;
        text-align: center;
    }

    .footer-main {
        padding: 40px 0;
    }

    .footer-container {
        flex-direction: column;
        gap: 28px;
        padding: 0 16px;
    }

    .footer-qrcode {
        justify-content: center;
        flex-wrap: wrap;
    }

    .hotline strong {
        font-size: 22px;
    }

    .hero-slogan-section {
        padding-top: 64px;
    }

    .hero-slogan-bg {
        min-height: 180px;
        object-fit: cover;
    }

    .hero-slogan-text {
        width: calc(100% - 32px);
        font-size: 24px;
        line-height: 1.4;
        letter-spacing: 2px;
    }

    .intro-case-tab {
        justify-content: flex-start;
        gap: 0;
        overflow-x: auto;
        padding: 0 12px;
        scrollbar-width: none;
    }

    .intro-case-tab::-webkit-scrollbar {
        display: none;
    }

    .case-tab {
        flex: 0 0 auto;
        padding: 16px 18px;
    }

    .company-intro-section {
        padding: 40px 0 56px;
    }

    .company-intro-inner {
        width: calc(100% - 32px);
        max-width: none;
        flex-direction: column;
        gap: 24px;
    }

    .company-intro-visual {
        width: 100%;
        height: auto;
        aspect-ratio: 4 / 3;
    }

    .company-intro-title {
        font-size: 28px;
        line-height: 1.35;
        margin-bottom: 16px;
    }

    .company-intro-stats {
        flex-wrap: wrap;
        gap: 20px 16px;
    }

    .company-intro-stat {
        width: calc(50% - 8px);
    }

    .company-intro-num {
        font-size: 30px;
    }

    .tech-patent-wrap {
        min-height: 420px;
    }

    .tech-patent-bg {
        min-height: 420px;
        object-fit: cover;
    }

    .tech-patent-content {
        left: 16px;
        right: 16px;
        top: 24px;
        width: auto;
    }

    .tech-patent-title {
        font-size: 24px;
        line-height: 1.4;
    }

    .tech-patent-desc {
        font-size: 12px;
        line-height: 1.8;
    }

    .tech-patent-badge {
        left: 16px;
        right: 16px;
        bottom: 18px;
        display: flex;
        align-items: center;
        gap: 12px;
        text-align: left;
    }

    .tech-patent-badge-icon {
        width: 24px;
        height: 32px;
        margin: 0;
        flex-shrink: 0;
    }

    .tech-patent-badge-text {
        white-space: normal;
    }

    .growth-data-section {
        padding: 32px 0;
    }

    .growth-data-panel {
        width: calc(100% - 32px);
        padding: 0;
    }

    .growth-data-bg {
        display: none;
    }

    .growth-data-layer {
        position: static;
        inset: auto;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px;
        max-height: none;
    }

    .growth-data-heading {
        position: static;
        transform: none;
        width: 100%;
        grid-column: 1 / -1;
        text-align: left;
    }

    .growth-data-heading h2 {
        padding: 0;
        font-size: 26px;
        line-height: 1.4;
    }

    .growth-data-heading p {
        margin: 12px 0 0;
        font-size: 13px;
        line-height: 1.8;
    }

    .growth-data-item,
    .growth-data-item--left,
    .growth-data-item--right {
        position: static;
        text-align: left;
        padding: 16px;
        border-radius: 18px;
        background: #fff;
        box-shadow: 0 8px 20px rgba(0, 0, 0, 0.05);
    }

    .growth-data-num,
    .growth-data-text {
        white-space: normal;
    }

    .growth-data-item .growth-data-num {
        font-size: 28px !important;
        letter-spacing: 0;
    }

    .growth-data-item .growth-data-text {
        margin-top: 8px;
        font-size: 13px;
        line-height: 1.6;
    }

    .partner-support-section {
        padding: 40px 0 56px;
    }

    .partner-support-wrap {
        width: calc(100% - 32px);
        max-width: none;
    }

    .partner-support-title {
        margin: 0 0 20px;
        font-size: 26px;
        line-height: 1.35;
    }

    .partner-support-main {
        flex-direction: column;
        gap: 20px;
    }

    .partner-support-card,
    .partner-support-visual {
        width: 100%;
    }

    .partner-support-card {
        min-height: 0;
    }

    .partner-support-card-inner {
        padding: 24px 18px 28px;
    }

    .partner-support-heading {
        margin-bottom: 24px;
        font-size: 22px;
    }

    .partner-support-grid {
        grid-template-columns: 1fr;
        column-gap: 0;
        row-gap: 22px;
    }

    .partner-support-visual {
        height: auto;
        margin-left: 0;
        right: auto;
    }

    .partner-support-image {
        height: auto;
        aspect-ratio: 4 / 5;
    }

    .join-requirements-block {
        padding: 32px 0 48px;
    }

    .join-requirements-block__inner {
        width: calc(100% - 32px);
        max-width: none;
    }

    .join-requirements-block__title {
        font-size: 28px;
        margin-bottom: 22px;
    }

    .join-requirements-block__grid {
        display: grid;
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .join-requirements-block__item {
        width: 100%;
        height: auto;
        flex: 0 0 auto;
        aspect-ratio: 332 / 220;
    }

    .join-requirements-block__content {
        padding-top: 12%;
    }

    .join-requirements-block__icon {
        width: 56px;
        height: 56px;
        margin-bottom: 12px;
    }

    .join-requirements-block__text {
        font-size: 18px;
    }

    .agent-steps-section {
        padding: 40px 0 56px;
    }

    .agent-steps-inner {
        width: calc(100% - 32px);
        max-width: none;
    }

    .agent-steps-title {
        font-size: 28px;
        margin-bottom: 24px;
    }

    .agent-steps-main,
    .agent-steps-list {
        flex-direction: column;
        align-items: stretch;
        gap: 16px;
    }

    .agent-step-item {
        width: 100%;
        max-width: 220px;
        height: auto;
        margin: 0 auto;
    }

    .agent-step-text {
        bottom: 26px;
        font-size: 16px;
    }

    .agent-steps-qrcode {
        margin-left: 0;
        margin-top: 12px;
    }

    .team-goal-section {
        padding: 40px 0 56px;
    }

    .team-goal-inner {
        width: calc(100% - 32px);
        max-width: none;
    }

    .team-goal-top,
    .team-goal-bottom2 {
        flex-direction: column;
        gap: 24px;
        margin-bottom: 40px;
    }

    .team-goal-text,
    .team-goal-goaltext {
        width: 100%;
    }

    .team-goal-title,
    .team-goal-title--right {
        font-size: 28px;
        line-height: 1.35;
        text-align: left;
        margin-bottom: 18px;
    }

    .team-goal-bottom {
        min-height: 0;
    }

    .team-goal-visual,
    .team-computer-visual {
        width: 100%;
        height: auto;
        aspect-ratio: 16 / 10;
    }

    .plan-direction-wrap {
        padding: 40px 16px;
        background: #f3f4f8;
    }

    .plan-direction-bg {
        display: none;
    }

    .plan-direction-layer {
        position: static;
        inset: auto;
        display: grid;
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .plan-direction-title {
        position: static;
        transform: none;
        font-size: 28px;
        line-height: 1.35;
        margin: 0 0 4px;
        text-align: left;
    }

    .plan-direction-item {
        position: static;
        gap: 12px;
        align-items: flex-start;
        padding: 16px;
        border-radius: 16px;
        background: #fff;
        box-shadow: 0 8px 20px rgba(0, 0, 0, 0.04);
    }

    .plan-direction-num {
        margin-left: 0;
        font-size: 24px;
        flex-shrink: 0;
    }

    .plan-direction-text {
        font-size: 14px;
        line-height: 1.6;
        white-space: normal;
        margin-bottom: 0;
    }

    .talent-plan-section {
        padding: 40px 0 56px;
    }

    .talent-plan-inner {
        width: calc(100% - 32px) !important;
        max-width: none !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .showcase-slider__wrap {
        height: 260px;
    }

    .showcase-slider__nav {
        width: 44px;
        height: 44px;
    }

    .showcase-slider__nav img {
        width: 24px;
        height: 24px;
    }

    .showcase-slider__nav--prev {
        left: 12px;
    }

    .showcase-slider__nav--next {
        right: 12px;
    }

    .case-eic {
        padding: 32px 0;
    }

    .case-eic__container,
    .bim-case__container {
        width: calc(100% - 32px);
        max-width: none;
    }

    .case-eic__header {
        margin-bottom: 24px;
    }

    .case-eic__title {
        font-size: 28px;
        line-height: 1.35;
    }

    .case-eic__subtitle {
        font-size: 16px;
        line-height: 1.5;
    }

    .case-eic__content {
        flex-direction: column;
        gap: 20px;
    }

    .case-eic__project {
        font-size: 22px;
        line-height: 1.4;
        align-items: flex-start;
    }

    .case-eic__desc {
        font-size: 15px;
    }

    .case-eic__img-wrap {
        width: 100%;
        height: auto;
        aspect-ratio: 4 / 3;
    }

    .bim-case {
        padding: 48px 0;
    }

    .bim-case::after {
        width: 140%;
        height: 520px;
        bottom: auto;
        top: 120px;
    }

    .bim-case__title {
        font-size: 28px;
        margin-bottom: 24px;
    }

    .bim-case__grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .bim-case__content h3 {
        font-size: 18px;
        align-items: flex-start;
    }
}

@media (max-width: 480px) {
    .growth-data-layer {
        grid-template-columns: 1fr;
    }

    .company-intro-stat {
        width: 100%;
    }

    .hero-slogan-text,
    .case-eic__title,
    .team-goal-title,
    .team-goal-title--right,
    .partner-support-title,
    .agent-steps-title,
    .join-requirements-block__title,
    .plan-direction-title {
        font-size: 24px;
    }
}

@media (max-width: 768px) {
    .solution-case {
        padding-top: 64px;
    }

    .solution-case-hero {
        height: 220px;
    }

    .solution-case-tabs {
        justify-content: flex-start;
        gap: 0;
        overflow-x: auto;
        padding: 0 8px;
        white-space: nowrap;
        scrollbar-width: none;
    }

    .solution-case-tabs::-webkit-scrollbar {
        display: none;
    }

    .solution-case-tabs .case-tab {
        flex: 0 0 auto;
        padding: 16px 14px;
    }

    .solution-case-body {
        padding: 32px 16px 40px !important;
        gap: 28px;
    }

    .solution-case-text h2 {
        font-size: 28px;
        line-height: 1.35;
    }

    .case-desc,
    .case-features li {
        font-size: 15px;
        line-height: 1.8;
    }

    .case-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px 12px;
    }

    .case-stats strong {
        font-size: 24px;
    }

    .case-btn {
        width: 100%;
        text-align: center;
    }

    .smart-step-panel {
        padding: 32px 0 48px;
    }

    .smart-step-panel__inner {
        max-width: calc(100% - 24px);
        gap: 12px;
    }

    .smart-step-panel__item {
        width: 100%;
        flex: 0 0 100%;
        height: auto;
        aspect-ratio: 256 / 253;
    }

    .smart-step-panel__list {
        top: 44%;
        left: 20%;
    }

    .smart-step-panel__list li {
        font-size: 13px;
        line-height: 1.55;
        margin-bottom: 10px;
    }

    .qr-bubble {
        display: none !important;
    }

    .news-center-page {
        padding: 88px 0 48px !important;
    }

    .news-center-page__container {
        width: calc(100% - 24px) !important;
        max-width: none !important;
        margin: 0 auto !important;
    }

    .news-grid {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }

    .news-card {
        border-radius: 20px !important;
    }

    .news-card__image-wrap {
        height: 200px !important;
    }

    .news-card__content {
        min-height: 0 !important;
        padding: 16px !important;
    }

    .news-card__title {
        font-size: 16px !important;
        line-height: 1.6 !important;
    }

    .news-card__footer {
        margin-top: 18px !important;
    }

    .news-card__date {
        font-size: 18px !important;
    }

    .news-pagination {
        margin-top: 28px !important;
        gap: 8px !important;
        flex-wrap: wrap;
    }

    .news-pagination__page {
        width: 28px !important;
        height: 28px !important;
        line-height: 26px !important;
        font-size: 14px !important;
    }

    .news-detail-page {
        padding: 84px 0 48px !important;
    }

    .news-detail-page__container {
        width: calc(100% - 24px) !important;
        max-width: none !important;
    }

    .news-detail-layout {
        grid-template-columns: 1fr !important;
        gap: 28px !important;
    }

    .news-detail-main {
        padding-right: 0 !important;
        border-right: 0 !important;
    }

    .news-detail-title {
        font-size: 26px !important;
        line-height: 1.4 !important;
    }

    .news-detail-meta {
        margin-top: 20px !important;
        gap: 10px 16px !important;
        font-size: 13px !important;
    }

    .news-detail-tag {
        margin-left: 0 !important;
        min-width: 0 !important;
        height: 26px !important;
        padding: 0 12px !important;
        font-size: 13px !important;
    }

    .news-detail-content {
        margin-top: 24px !important;
        font-size: 15px !important;
        line-height: 1.85 !important;
    }

    .news-detail-content img {
        max-width: 100% !important;
        margin: 20px auto 28px !important;
        border-radius: 14px;
    }

    .news-detail-bottom {
        margin-top: 40px !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 16px !important;
    }

    .news-detail-prevnext {
        width: 100% !important;
    }

    .news-detail-prevnext__item {
        height: auto !important;
        line-height: 1.5 !important;
        padding: 10px 14px !important;
        white-space: normal !important;
    }

    .news-detail-back {
        width: 100% !important;
        height: 58px !important;
        gap: 14px !important;
        font-size: 17px !important;
    }

    .news-detail-back__arrow {
        width: 24px !important;
        height: 24px !important;
    }

    .news-detail-sidebar {
        padding-top: 0 !important;
    }

    .news-detail-sidebar__tabs {
        gap: 18px !important;
        margin-bottom: 16px !important;
    }

    .news-detail-sidebar__tabs button {
        font-size: 15px !important;
    }

    .news-detail-sidebar__list {
        gap: 12px !important;
    }

    .news-side-card {
        border-radius: 14px !important;
    }

    .news-side-card__image {
        height: 148px !important;
    }

    .news-side-card__body {
        padding: 12px !important;
    }

    .news-side-card__title {
        font-size: 13px !important;
        line-height: 1.6 !important;
    }

    .news-side-card__date {
        margin-top: 8px !important;
        font-size: 12px !important;
    }
}

@media (max-width: 480px) {
    .solution-case-hero {
        height: 180px;
    }

    .solution-case-text h2,
    .news-detail-title {
        font-size: 24px !important;
    }

    .case-stats {
        grid-template-columns: 1fr;
    }

    .news-card__image-wrap {
        height: 180px !important;
    }
}

@media (max-width: 768px) {
    .hero {
        height: auto !important;
        min-height: 0 !important;
    }

    .hero-slide {
        min-height: 72svh;
        background-size: cover !important;
        background-position: center center !important;
        background-repeat: no-repeat;
    }

    .hero-slide::before {
        background: linear-gradient(
            to bottom,
            rgba(255, 255, 255, 0.92) 0%,
            rgba(255, 255, 255, 0.78) 42%,
            rgba(255, 255, 255, 0.3) 100%
        );
    }

    .hero-slogan-wrap {
        position: relative;
        min-height: 220px;
        overflow: hidden;
    }

    .hero-slogan-bg {
        width: 100%;
        height: 220px;
        min-height: 220px;
        object-fit: cover;
        object-position: center center;
        display: block;
    }

    .solution-case-hero {
        height: 220px;
        overflow: hidden;
    }

    .solution-case-hero img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center center;
        display: block;
    }

    .showcase-slider__wrap {
        height: 240px;
        overflow: hidden;
    }

    .showcase-slider__slide,
    .showcase-slider__stage {
        height: 100%;
    }

    .showcase-slider__img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center center;
    }

    .footer-hero {
        position: relative;
        height: 320px;
        overflow: hidden;
    }

    .footer-hero > img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center 42%;
        display: block;
        transform: scale(1.28);
        transform-origin: center center;
    }

    .footer-hero::after {
        background: rgba(0, 0, 0, 0.4);
    }
}

@media (max-width: 480px) {
    .hero-slide {
        min-height: 68svh;
        background-position: 60% center !important;
    }

    .hero-slogan-wrap,
    .hero-slogan-bg,
    .solution-case-hero,
    .showcase-slider__wrap,
    .footer-hero {
        height: 260px;
        min-height: 260px;
    }
}

@media (max-width: 768px) {
    :root {
        --m-shell: 16px;
        --m-radius-lg: 24px;
        --m-radius-md: 18px;
        --m-shadow-soft: 0 14px 36px rgba(31, 35, 41, 0.08);
        --m-shadow-card: 0 10px 28px rgba(31, 35, 41, 0.06);
        --m-border: 1px solid rgba(255, 255, 255, 0.65);
        --m-accent: #eb6245;
        --m-accent-deep: #d95135;
        --m-surface: rgba(255, 255, 255, 0.88);
    }

    body {
        background:
            radial-gradient(circle at top, rgba(255, 120, 90, 0.08), transparent 32%),
            #f4f5f8 !important;
    }

    header {
        backdrop-filter: blur(10px);
    }

    nav {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
    }

    .logo {
        display: flex !important;
        align-items: center;
        justify-content: flex-start;
        flex: 0 0 auto;
        max-width: none;
        min-width: 0;
        margin-right: auto;
    }

    .logo a {
        display: inline-flex !important;
        align-items: center;
        justify-content: flex-start;
        padding: 6px 10px 6px 0;
    }

    .logo a img {
        height: 30px !important;
        width: auto !important;
        display: block;
    }

    .hero-content {
        max-width: min(100%, 520px);
        padding: 22px 18px;
        border-radius: 24px;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.78));
        border: 1px solid rgba(255, 255, 255, 0.72);
        box-shadow: 0 18px 40px rgba(31, 35, 41, 0.12);
        backdrop-filter: blur(10px);
    }

    .hero h1,
    .hero-content h1 {
        color: #23303d;
        letter-spacing: -0.02em;
    }

    .hero p,
    .hero-content p {
        color: #596574;
    }

    .hero-dots .dot {
        width: 8px;
        height: 8px;
        opacity: 0.55;
        border-radius: 999px;
        transition: all 0.25s ease;
    }

    .hero-dots .dot.active {
        width: 26px;
        opacity: 1;
    }

    .btn,
    .case-btn,
    .solution-btn,
    .footer-hero-btn,
    .news-detail-back {
        border-radius: 999px !important;
        box-shadow: 0 10px 24px rgba(235, 98, 69, 0.22);
    }

    .btn,
    .solution-btn,
    .footer-hero-btn {
        background: linear-gradient(135deg, var(--m-accent), #ff7c59) !important;
        border-color: transparent !important;
    }

    .case-btn,
    .news-detail-back {
        background: #fff !important;
        border-color: rgba(235, 98, 69, 0.28) !important;
        color: var(--m-accent) !important;
    }

    .ai-title-block {
        position: relative;
        overflow: hidden;
        background:
            radial-gradient(circle at 50% 0%, rgba(255, 126, 92, 0.18), transparent 55%),
            #f5f6fa;
    }

    .ai-title-block h2 {
        max-width: 12em;
        margin-left: auto;
        margin-right: auto;
        letter-spacing: -0.02em;
        color: #34363f;
    }

    .ai-title-block p {
        max-width: 24em;
        margin: 0 auto;
        color: #727783;
    }

    .intro-case-tab,
    .solution-case-tabs {
        gap: 10px;
        padding: 10px 12px 14px;
        background: transparent;
        border-bottom: 0;
    }

    .case-tab {
        padding: 11px 16px !important;
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.75);
        border: 1px solid rgba(226, 229, 234, 0.95);
        box-shadow: 0 6px 18px rgba(31, 35, 41, 0.04);
        color: #666d78;
        line-height: 1;
    }

    .case-tab.active {
        background: linear-gradient(135deg, var(--m-accent), #ff7c59);
        color: #fff !important;
        border-color: transparent;
        box-shadow: 0 12px 26px rgba(235, 98, 69, 0.24);
    }

    .case-tab.active::after {
        display: none;
    }

    .solution-card,
    .why-card,
    .bim-case__card,
    .partner-support-card,
    .history-timeline-card,
    .growth-data-item,
    .plan-direction-item,
    .news-card,
    .news-side-card,
    .case-banner__inner,
    .company-intro-visual,
    .solution-case-image img,
    .case-eic__img-wrap,
    .bim-card,
    .news-detail-prevnext__item {
        border-radius: var(--m-radius-lg) !important;
        box-shadow: var(--m-shadow-card) !important;
    }

    .solution-card,
    .why-card,
    .bim-case__card,
    .partner-support-card,
    .history-timeline-card,
    .growth-data-item,
    .plan-direction-item,
    .news-card,
    .news-side-card {
        border: var(--m-border);
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(255, 255, 255, 0.88));
        backdrop-filter: blur(8px);
    }

    .icon-item,
    .company-intro-stat,
    .case-stats > div,
    .why-stat {
        padding: 14px 14px 12px;
        border-radius: 18px;
        background: rgba(255, 255, 255, 0.72);
        box-shadow: 0 8px 18px rgba(31, 35, 41, 0.04);
    }

    .case-stats > div {
        border: 1px solid rgba(232, 234, 238, 0.95);
    }

    .news-card__content,
    .bim-case__content,
    .solution-card-body,
    .partner-support-card-inner,
    .news-detail-content {
        color: #5c6470;
    }

    .news-card__title,
    .bim-case__content h3,
    .partner-support-heading,
    .company-intro-title,
    .case-eic__project,
    .news-detail-title {
        color: #333844 !important;
        letter-spacing: -0.02em;
    }

    .news-detail-main,
    .news-detail-sidebar {
        border-radius: 24px;
    }

    .news-detail-main {
        padding: 18px;
        background: rgba(255, 255, 255, 0.8);
        box-shadow: var(--m-shadow-soft);
    }

    .news-detail-sidebar {
        padding: 16px !important;
        background: rgba(255, 255, 255, 0.72);
        box-shadow: var(--m-shadow-card);
    }

    .news-detail-sidebar__tabs {
        padding-bottom: 4px;
        border-bottom: 1px solid rgba(231, 233, 238, 0.95);
    }

    .news-detail-sidebar__tabs button.is-active {
        position: relative;
        font-weight: 600;
    }

    .news-detail-sidebar__tabs button.is-active::after {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        bottom: -8px;
        height: 2px;
        border-radius: 999px;
        background: linear-gradient(90deg, var(--m-accent), #ff8b68);
    }

    .footer-hero-content {
        padding: 20px;
    }

    .footer-hero-content h2 {
        max-width: 11em;
        padding: 14px 16px;
        border-radius: 20px;
        background: rgba(17, 20, 26, 0.28);
        backdrop-filter: blur(6px);
    }

    .footer-main {
        background:
            radial-gradient(circle at top right, rgba(255, 120, 90, 0.12), transparent 30%),
            #2f3137;
    }

    .brand-desc,
    .brand-list li,
    .contact-info {
        color: #b8bdc7;
    }

    .footer-qrcode .qr-item img {
        border-radius: 18px;
        box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
    }
}

@media (max-width: 480px) {
    .footer-hero {
        position: relative;
        height: 260px !important;
        min-height: 260px !important;
        overflow: hidden;
    }

    .footer-hero > img {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 260px !important;
        min-height: 260px !important;
        max-height: none !important;
        object-fit: cover !important;
        object-position: center center !important;
        display: block !important;
        transform: scale(1.22) !important;
        transform-origin: center center !important;
    }

    .solution-case-hero {
        position: relative;
        height: 260px !important;
        min-height: 260px !important;
        overflow: hidden;
    }

    .solution-case-hero img {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 260px !important;
        min-height: 260px !important;
        max-height: none !important;
        object-fit: cover !important;
        object-position: center center !important;
        display: block !important;
    }

    .bim-card,
    .bim-center {
        padding-top: 118px !important;
        border-radius: 22px;
    }

    .bim-card-content {
        padding: 16px 14px 18px;
    }

    .bim-card h3 {
        font-size: 18px;
    }

    .bim-card p {
        font-size: 13px;
    }

    .bim-card ul li {
        font-size: 12px;
    }

    .hero-content {
        padding: 18px 16px;
        border-radius: 22px;
    }

    .case-tab {
        padding: 10px 14px !important;
        font-size: 13px;
    }

    .footer-hero-content h2 {
        font-size: 22px;
        padding: 12px 14px;
    }

    .news-detail-main,
    .news-detail-sidebar {
        padding: 14px;
    }
}

@media (max-width: 768px) {
    .contact-page .about-contact-panel,
    .about-tab-panel .about-contact-panel {
        padding: 28px 0 44px;
        background:
            radial-gradient(circle at top, rgba(255, 120, 90, 0.1), transparent 36%),
            linear-gradient(180deg, #f8f5f1 0%, #f4f6f9 100%);
    }

    .contact-page .about-contact-panel__inner,
    .about-tab-panel .about-contact-panel__inner {
        width: calc(100% - 32px);
        max-width: none;
    }

    .contact-page .about-contact-panel__header,
    .about-tab-panel .about-contact-panel__header {
        margin-bottom: 22px;
        text-align: left;
    }

    .contact-page .about-contact-panel__header h2,
    .about-tab-panel .about-contact-panel__header h2 {
        font-size: 28px;
        margin-bottom: 10px;
    }

    .contact-page .about-contact-panel__header p,
    .about-tab-panel .about-contact-panel__header p {
        font-size: 14px;
        line-height: 1.7;
    }

    .contact-page .about-contact-panel__grid,
    .about-tab-panel .about-contact-panel__grid {
        grid-template-columns: 1fr;
        gap: 12px;
        margin-bottom: 16px;
    }

    .contact-page .about-contact-card,
    .about-tab-panel .about-contact-card {
        padding: 20px 18px;
        border-radius: 22px;
        background: rgba(255, 255, 255, 0.94);
        box-shadow: 0 16px 32px rgba(31, 35, 41, 0.08);
    }

    .contact-page .about-contact-card__label,
    .about-tab-panel .about-contact-card__label {
        margin-bottom: 10px;
        font-size: 13px;
    }

    .contact-page .about-contact-card__value,
    .about-tab-panel .about-contact-card__value {
        font-size: 22px;
        line-height: 1.45;
        word-break: break-word;
    }

    .contact-page .about-contact-qrs,
    .about-tab-panel .about-contact-qrs {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .contact-page .about-contact-qrs__item,
    .about-tab-panel .about-contact-qrs__item {
        width: auto;
        padding: 18px 14px;
        border-radius: 22px;
        box-shadow: 0 16px 32px rgba(31, 35, 41, 0.08);
    }

    .contact-page .about-contact-qrs__item img,
    .about-tab-panel .about-contact-qrs__item img {
        width: min(100%, 108px);
        height: auto;
        aspect-ratio: 1 / 1;
        margin-bottom: 12px;
    }

    .contact-page .about-contact-qrs__item span,
    .about-tab-panel .about-contact-qrs__item span {
        line-height: 1.5;
    }
}

@media (max-width: 480px) {
    .contact-page .about-contact-panel,
    .about-tab-panel .about-contact-panel {
        padding: 24px 0 40px;
    }

    .contact-page .about-contact-panel__header h2,
    .about-tab-panel .about-contact-panel__header h2 {
        font-size: 25px;
    }

    .contact-page .about-contact-card,
    .about-tab-panel .about-contact-card {
        padding: 18px 16px;
        border-radius: 20px;
    }

    .contact-page .about-contact-card__value,
    .about-tab-panel .about-contact-card__value {
        font-size: 20px;
    }

    .contact-page .about-contact-qrs,
    .about-tab-panel .about-contact-qrs {
        grid-template-columns: 1fr;
    }

    .contact-page .about-contact-qrs__item,
    .about-tab-panel .about-contact-qrs__item {
        padding: 16px 14px;
        border-radius: 20px;
    }
}

@media (max-width: 768px) {
    .talent-plan-top {
        gap: 16px;
        margin-bottom: 22px;
    }

    .talent-plan-left,
    .talent-plan-right {
        padding: 20px 18px;
        border-radius: 22px;
        background: rgba(255, 255, 255, 0.88);
        box-shadow: 0 14px 30px rgba(31, 35, 41, 0.06);
    }

    .talent-plan-title,
    .talent-plan-title--right {
        margin-bottom: 12px;
        font-size: 26px;
        line-height: 1.32;
        letter-spacing: -0.02em;
    }

    .talent-plan-desc,
    .talent-plan-desc--right {
        font-size: 14px;
        line-height: 1.85;
        color: #666f7b;
        letter-spacing: 0;
        word-break: break-word;
    }

    .talent-plan-desc br,
    .talent-plan-desc--right br {
        display: none;
    }

    .talent-plan-bottom {
        gap: 12px;
    }

    .talent-plan-btn {
        border-radius: 22px;
        overflow: hidden;
        box-shadow: 0 14px 28px rgba(31, 35, 41, 0.08);
    }

    .talent-plan-btn img {
        display: block;
    }
}

@media (max-width: 480px) {
    .talent-plan-section {
        padding: 32px 0 48px;
    }

    .talent-plan-top {
        gap: 14px;
        margin-bottom: 18px;
    }

    .talent-plan-left,
    .talent-plan-right {
        padding: 18px 16px;
        border-radius: 20px;
    }

    .talent-plan-title,
    .talent-plan-title--right {
        font-size: 23px;
        margin-bottom: 10px;
    }

    .talent-plan-desc,
    .talent-plan-desc--right {
        font-size: 13px;
        line-height: 1.78;
    }
}

@media (max-width: 768px) {
    .team-goal-top,
    .team-goal-bottom2 {
        gap: 16px;
        margin-bottom: 28px;
    }

    .team-goal-text,
    .team-goal-goaltext {
        padding: 20px 18px;
        border-radius: 22px;
        background: rgba(255, 255, 255, 0.9);
        box-shadow: 0 14px 30px rgba(31, 35, 41, 0.06);
    }

    .team-goal-title,
    .team-goal-title--right {
        margin-bottom: 12px;
        font-size: 26px;
        line-height: 1.32;
        letter-spacing: -0.02em;
    }

    .team-goal-desc,
    .team-goal-goaltext {
        font-size: 14px;
        line-height: 1.85;
        color: #666f7b;
        letter-spacing: 0;
        word-break: break-word;
    }

    .team-goal-desc br,
    .team-goal-goaltext br {
        display: none;
    }

    .team-goal-visual,
    .team-computer-visual {
        border-radius: 24px;
        overflow: hidden;
    }

    .plan-direction-wrap {
        padding: 34px 16px 40px;
    }

    .plan-direction-title {
        margin-bottom: 10px;
        font-size: 26px;
        line-height: 1.32;
        letter-spacing: -0.02em;
    }

    .plan-direction-item {
        gap: 10px;
        padding: 18px 16px;
        border-radius: 18px;
    }

    .plan-direction-num {
        font-size: 26px;
    }

    .plan-direction-text {
        font-size: 14px;
        line-height: 1.65;
        color: #66707c;
    }

    .plan-direction-text br {
        display: none;
    }
}

@media (max-width: 480px) {
    .team-goal-top,
    .team-goal-bottom2 {
        gap: 14px;
        margin-bottom: 22px;
    }

    .team-goal-text,
    .team-goal-goaltext {
        padding: 18px 16px;
        border-radius: 20px;
    }

    .team-goal-title,
    .team-goal-title--right {
        font-size: 23px;
        margin-bottom: 10px;
    }

    .team-goal-desc,
    .team-goal-goaltext {
        font-size: 13px;
        line-height: 1.78;
    }

    .plan-direction-wrap {
        padding: 30px 14px 36px;
    }

    .plan-direction-title {
        font-size: 23px;
        margin-bottom: 8px;
    }

    .plan-direction-item {
        padding: 16px 14px;
        border-radius: 16px;
    }

    .plan-direction-num {
        font-size: 24px;
    }

    .plan-direction-text {
        font-size: 13px;
        line-height: 1.6;
    }
}

@media (max-width: 768px) {
    .smart-step-panel {
        padding: 20px 0 34px !important;
    }

    .smart-step-panel__inner {
        width: calc(100% - 24px) !important;
        max-width: 420px !important;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px !important;
        justify-content: center;
    }

    .smart-step-panel__item {
        width: 100% !important;
        flex: none !important;
        height: auto;
        aspect-ratio: 1 / 1.03;
        border-radius: 18px;
        overflow: hidden;
        box-shadow: 0 8px 22px rgba(31, 35, 41, 0.05);
    }

    .smart-step-panel__bg {
        object-fit: cover;
    }

    .smart-step-panel__list {
        top: 45%;
        left: 35px !important;
        right: 12px !important;
    }

    .smart-step-panel__list li {
        margin-bottom: 8px !important;
        padding-left: 18px !important;
        font-size: 12px !important;
        line-height: 1.45 !important;
        color: #686f7a;
    }

    .smart-step-panel__list li::before {
        width: 12px !important;
        height: 12px !important;
        top: 3px !important;
        background-size: contain;
    }

    .smart-step-panel__item:last-child {
        grid-column: 1 / -1;
        max-width: 205px;
        margin: 0 auto;
    }
}

@media (max-width: 480px) {
    .smart-step-panel {
        padding: 18px 0 28px !important;
    }

    .smart-step-panel__inner {
        width: calc(100% - 20px) !important;
        gap: 8px !important;
    }

    .smart-step-panel__item {
        aspect-ratio: 1 / 1.02;
        border-radius: 16px;
    }

    .smart-step-panel__list {
        top: 41%;
        left: 36px !important;
        right: 10px !important;
    }

    .smart-step-panel__list li {
        font-size: 11px !important;
        line-height: 1.4 !important;
        margin-bottom: 6px !important;
        padding-left: 16px !important;
    }

    .smart-step-panel__list li::before {
        width: 10px !important;
        height: 10px !important;
        top: 2px !important;
    }

    .smart-step-panel__item:last-child {
        max-width: 48%;
    }
}

@media (max-width: 768px) {
    .join-requirements-block__grid {
        gap: 12px !important;
    }

    .join-requirements-block__item {
        aspect-ratio: 332 / 180 !important;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .join-requirements-block__bg {
        width: 84%;
        height: auto;
        max-height: 88%;
        margin: 0 auto;
        object-fit: contain;
    }

    .join-requirements-block__content {
        inset: 8% 10%;
        padding-top: 0 !important;
        justify-content: center;
    }

    .join-requirements-block__icon {
        width: 48px !important;
        height: 48px !important;
        margin-bottom: 10px !important;
    }

    .join-requirements-block__text {
        font-size: 16px !important;
        line-height: 1.35;
        letter-spacing: 0;
    }
}

@media (max-width: 480px) {
    .join-requirements-block__item {
        aspect-ratio: 332 / 170 !important;
    }

    .join-requirements-block__bg {
        width: 82%;
        max-height: 84%;
    }

    .join-requirements-block__content {
        inset: 10% 12%;
    }

    .join-requirements-block__icon {
        width: 42px !important;
        height: 42px !important;
        margin-bottom: 8px !important;
    }

    .join-requirements-block__text {
        font-size: 15px !important;
    }
}

@media (max-width: 768px) {
    .agent-steps-section {
        background:
            radial-gradient(circle at top, rgba(219, 167, 110, 0.12), transparent 54%),
            linear-gradient(180deg, #f8f4ef 0%, #f1f4f8 100%);
    }

    .agent-steps-main {
        gap: 18px;
    }

    .agent-steps-list {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
        align-items: stretch;
    }

    .agent-step-item {
        width: 100%;
        max-width: none;
        min-height: 132px;
        margin: 0;
        padding: 12px 10px 16px;
        border-radius: 22px;
        overflow: hidden;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.96) 0%, rgba(247, 241, 233, 0.98) 100%);
        box-shadow: 0 16px 34px rgba(102, 84, 62, 0.12);
        display: flex;
        align-items: center;
        justify-content: flex-start;
    }

    .agent-step-bg {
        width: 78%;
        max-width: 118px;
        height: auto;
        flex: 0 0 auto;
        object-fit: contain;
        margin: 4px auto 34px;
        transform: none;
    }

    .agent-step-text {
        left: 18px;
        right: 18px;
        bottom: 12px;
        transform: none;
        min-height: 34px;
        padding: 0 10px;
        border-radius: 999px;
        display: flex;
        align-items: center;
        justify-content: center;
        background: rgba(255, 255, 255, 0.9);
        box-shadow: 0 10px 24px rgba(120, 98, 74, 0.14);
        font-size: 14px;
        line-height: 1.2;
        color: #5d4f45;
        white-space: nowrap;
    }

    .agent-steps-qrcode {
        margin-top: 4px;
        padding: 18px 16px 16px;
        border-radius: 28px;
        background: rgba(255, 255, 255, 0.86);
        box-shadow: 0 18px 36px rgba(83, 72, 61, 0.1);
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 12px;
    }

    .agent-steps-qrcode-img {
        width: 132px;
        height: 132px;
        margin: 0;
    }

    .agent-steps-qrcode-text {
        font-size: 15px;
        line-height: 1.45;
        color: #65584e;
    }
}

@media (max-width: 480px) {
    .agent-steps-list {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .agent-step-item {
        min-height: 122px;
        padding: 10px 10px 14px;
        border-radius: 20px;
    }

    .agent-step-bg {
        width: 72%;
        max-width: 104px;
        margin: 2px auto 30px;
    }

    .agent-step-text {
        left: 16px;
        right: 16px;
        bottom: 10px;
        min-height: 32px;
        font-size: 14px;
    }

    .agent-steps-qrcode {
        padding: 16px 14px 14px;
        border-radius: 24px;
        gap: 10px;
    }

    .agent-steps-qrcode-img {
        width: 120px;
        height: 120px;
    }
}
