/* ===== 全局变量（统一色调） ===== */
:root {
    --main-bg: #ffffff;
    --secondary-bg: #112240;
    --accent: #e60012;   /* LOGO红色 */
    --text-main:#555555;
    --text-sub: #8892b0;
}

/* ===== 重置 ===== */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: "Segoe UI", "Microsoft YaHei", sans-serif;
    /* background: #dec2bf; */
    color: var(--text-main);
}

/* ===== 容器 ===== */
.container {
    max-width: 1800px;
    margin: auto;
    padding: 0 50px;
}

/* ===== 导航栏 ===== */
.header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    padding: 15px 0;
    background: rgba(10, 25, 47, 0.95);
    backdrop-filter: blur(10px);
    z-index: 1000;
}

/* ===== Logo ===== */
.logo {
    display: flex;
    align-items: center;
    gap: 10px;
}

.logo img {
    height: 70px;
}

.logo span {
    font-size: 18px;
    font-weight: bold;
}

/* ===== 导航菜单 ===== */
.nav {
    display: flex;
    list-style: none;
    gap: 14px;
    margin-right: 30px;
}

.nav a {
    color: var(--text-sub);
    text-decoration: none;
    font-size: 15px;
    position: relative;
    transition: 0.3s;
}

/* hover效果 */
.nav a:hover {
    color: var(--text-main);
}

/* 下划线动画 */
.nav a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -6px;
    width: 0;
    height: 2px;
    background: var(--accent);
    transition: 0.3s;
}

.nav a:hover::after {
    width: 100%;
}

/* ===== Hero 区域 ===== */

/* 主标题 */
.hero h1 {
    font-size: 52px;
    font-weight: bold;
    letter-spacing: 2px;
    animation: fadeUp 1s ease forwards;
}

/* 副标题 */
.hero p {
    margin-top: 20px;
    font-size: 18px;
    color: var(--text-sub);
    animation: fadeUp 1.5s ease forwards;
}

/* 红色装饰线 */
.hero::after {
    content: "";
    width: 60px;
    height: 4px;
    background: var(--accent);
    margin-top: 30px;
}

.hero {
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 80px;

    background: radial-gradient(circle at left);
}

/* 左文字 */
.hero-content {
    max-width: 500px;
}

.hero-content h1 {
    font-size: 48px;
}

.hero-content p {
    margin-top: 20px;
    color: #8892b0;
}

/* 右图片 */
.hero-image img {
    width: 500px;

    animation: float 4s ease-in-out infinite;
}

/* 浮动动画 */
@keyframes float {
    0% {
        transform: translateY(0px);
    }
    50% {
        transform: translateY(-15px);
    }
    100% {
        transform: translateY(0px);
    }
}

/* ===== 通用 section ===== */
.section {
    padding: 80px 320px;
    text-align: center;
}

.section h2 {
    font-size: 32px;
    margin-bottom: 50px;
}

/* ===== 卡片布局 ===== */
.grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
}
.grid a {
    text-decoration: none;
    color: #444444;
}

/* 卡片*/
/* .card {
    background:#e5dede75;
    padding: 30px;
    border-radius: 12px;
    transition: 0.4s;

    opacity: 0;
    transform: translateY(30px);
} */

/* 滚动出现 */
/* .card.show {
    opacity: 1;
    transform: translateY(0);
}

/* hover效果 */
.card:hover {
    transform: translateY(-10px) scale(1.03);
    background: #ffffff;
    color: #e60012;
} 

/* ===== 新闻 ===== */
.news-item {
    margin-bottom: 20px;
    padding: 15px;
    border-bottom: 1px solid #233554;
    text-align: left;
}

/* ===== 页脚 ===== */
.footer {
    text-align: center;
    padding: 30px;
    background: #020c1b;
    color: var(--text-sub);
}

/* ===== 动画 ===== */
@keyframes fadeUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ===== 响应式（手机） ===== */
@media (max-width: 768px) {



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

    .grid {
        grid-template-columns: 1fr;
    }

    .section {
        padding: 60px 15px;
    }
}
/* ===== 导航整体 ===== */
.header {
    position: fixed;
    width: 100%;
    top: 0;
    z-index: 1000;

    background: linear-gradient(
        to right,
        rgb(255, 255, 255),
        rgb(255, 255, 255,80%)
    );

    backdrop-filter: blur(8px);
}

.nav-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 80px;
}

/* ===== 主导航 ===== */
.nav li {
    position: relative;
    z-index: 1;
    padding-left: 20px;
}

.nav a {
    color: #5f5d5d;
    text-decoration: none;
    font-size: 18px;
}

/* hover 下划线 */
.nav a::after {
    content: "";
    display: block;
    height: 2px;
    background: #e60012;
    width: 0;
    transition: 0.3s;
}
/* ===== 下拉菜单 ===== */
.dropdown-menu {
    position: absolute;
    top: 40px;
    left: 0;

    background: rgba(17, 34, 64, 0.95);
    padding: 10px 0;
    list-style: none;

    min-width: 180px;
    display: none;
}

.dropdown-menu li {
    padding: 10px 20px;
    color: #ccc;
    cursor: pointer;
}

.dropdown-menu li:hover {
    background: #1b2f4a;
    color: #fff;
}

/* hover显示 */
.dropdown:hover .dropdown-menu {
    display: block;
}


.nav-right a {
    color: #b12e2e;
    text-decoration: none;
}

.nav-right a:hover {
    color: #e3acac;
}

/* ===== Banner ===== */
.about-banner {
    height: 300px;
    background:rgb(80 135 215 / 24%) center/cover no-repeat;
    display: flex;
    justify-content: center;
    align-items: center;
    color:#ffffff;
    margin-top: 80px;
    position: relative;
}

.about-banner::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    /* background:rgb(80 135 215 / 24%); */
    background: url(../img/11111.jpg) no-repeat;
    background-size: cover;
    background-position: center;
}


.about-banner h1 {
    position: relative;
    font-size: 40px;
    z-index: 2;
}

/* ===== 二级导航 ===== */
.sub-nav {
    display: flex;
    justify-content: center;
    gap: 40px;
    background: #f5f5f5;
    padding: 15px 0;
}

.sub-nav a {
    color: #333;
    text-decoration: none;
    padding: 8px 20px;
    border-radius: 20px;
}

.sub-nav :hover {
    background: #0a3d62;
    color: #fff;
}

/* ===== 内容区 ===== */
/* .about-content {
    max-width: 900px;
    margin: 60px auto;
    text-align: center;
} */

/* .about-content h2 {
    font-size: 30px;
}

.about-content .en {
    color: #888;
    margin-bottom: 30px;
} */

.about-content p {
    color: #555;
    line-height: 2;
    margin-bottom: 20px;
}
.abc {
    text-align: left;
    font-family: "Microsoft YaHei", Arial, sans-serif;
    text-indent: 2em;
    line-height: 35px;
    margin: 10px 200px 10px 200px;
}
/* ===== 主菜单选中（红色小条） ===== */
.nav li.active > a::after {
    content: "";
    display: block;
    width: 20px;
    height: 3px;
    background: #e60012;
    margin: 5px auto 0;
}

/* ===== 下拉菜单整体 ===== */
.dropdown-menu {
    position: absolute;
    top: 50px;
    left: 0;
    min-width: 180px;

    background: rgba(30, 60, 90, 0.95);
    padding: 0;
    list-style: none;

    display: none;
}

/* 显示 */
.dropdown:hover .dropdown-menu {
    display: block;
}

/* ===== 子菜单项 ===== */
.dropdown-menu li {
    padding: 12px 20px;
    color: #ccc;
    cursor: pointer;
    transition: 0.3s;
}

/* hover效果 */
.dropdown-menu li:hover {
    background: rgba(255,255,255,0.1);
    color: #fff;
}

/* ===== 当前选中子菜单（蓝色块） ===== */
.dropdown-menu li.active {
    background: #1f5c9a;
    color: #fff;
    position: relative;
}

/* 左侧红色标识条（关键细节！） */
.dropdown-menu li.active::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 3px;
    height: 100%;
    background: #e60012;
}
 /* ===== 整体布局 ===== */
.top-contact {
    display: flex;
    align-items: center;
    gap: 20px;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
/* 咨询热线 */
.tel i {
    background: url("../img/tel.png") 
    center no-repeat;
    background-size: cover;
    width: 15px;
    height: 15px;
    margin-right: 10px;
    align-items: center;
}
.flex {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
 }
/* 加入我们 */
.joinus {
    display: inline-block;
    margin-left: 20px;
    border-radius: 2em;
    padding: 8px 20px;
    background-color: #ba1935;
    transition: all .3s;
}
.joinus span {
    font-size: 14px;
    display: inline-block;
    margin-left: 10px;
    margin-bottom: 5px;
    color: #ffffff;
}
.joinus:hover {
    background-color: #3e8174;
    text-decoration: underline;
    outline: none;
}
.joinus i {
    background: url("../img/arr_1.png") 
    center no-repeat; 
    width: 10px;
    height: 10px;
    background-size: cover;
    margin-left: 10px;
    vertical-align: middle;
    color: #fff;
    transition: all .3s;
    display: inline-block;
}
i {
    font-style: italic;
}  
/* ===== 图片展示区 ===== */
.company-gallery {
    padding: 60px 0;
    background:#f5f5f500;
}

/* 三列布局 */
.gallery-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

/* 单个卡片 */
.gallery-item {
    overflow: hidden;
    border-radius: 8px;
}

/* 图片 */
.gallery-item img {
    width: 100%;
    height: 280px;
    object-fit: cover;
    overflow: hidden;
    border-radius: 10px;
    transition: 0.3s;
}

/* hover放大 */
.gallery-item:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 40px rgba(0,0,0,0.15);
}

@media (max-width: 768px) {
    .gallery-grid {
        grid-template-columns: 1fr;
    }
}

html {
            scroll-behavior: smooth;
        }
  /* 资质展示区整体样式 */
        .qualification-section {
            /* padding: 60px 20px; */
            background-color: #f9fafb;
            text-align: center;
            font-family: 'Microsoft YaHei', sans-serif;
        }
 
        .qualification-section h2 {
            color: var(--text-main);
            font-size: 32px;
            margin-bottom: 10px;
            margin-top: 20px;
            position: relative;
            display: inline-block;
        }
 
        .qualification-section h2::after {
            content: '';
            width: 60px;
            height: 3px;
            background: #0056b3;
            position: absolute;
            bottom: -10px;
            left: 50%;
            transform: translateX(-50%);
        }
 
        .section-desc {
            color: #666;
            margin-top: 20px;
            margin-bottom: 40px;
            font-size: 16px;
        }
 
        /* 响应式网格布局
        .qualification-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
            gap: 30px;
            max-width: 1200px;
            margin: 0 auto;
        }
  */
   /* 响应式网格布局 - 强制双排显示 */
        .qualification-grid {
            display: grid;
            grid-template-columns: repeat(2, 1fr); /* 核心修改：一行固定显示2个 */
            gap: 30px;
            max-width: 1200px; /* 限制最大宽度，让两列排版更紧凑美观 */
            margin: 0 auto;
        }
 
        /* 移动端适配：屏幕宽度小于640px时切换为单列 */
        @media (max-width: 640px) {
            .qualification-grid {
                grid-template-columns: 1fr;
            }
        }
        /* 单个证书卡片样式 */
        .qualification-card {
            background: #fff;
            border-radius: 8px;
            padding: 20px;
            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
            transition: all 0.3s ease;
            cursor: pointer;
            display: flex;
            flex-direction: column;
            align-items: center;
        }
 
        .qualification-card:hover {
            transform: translateY(-8px);
            box-shadow: 0 12px 25px rgba(0, 0, 0, 0.12);
        }
 
        /* 证书图片容器 */
        .cert-img-wrapper {
            width: 100%;
            height: 380px;
            display: flex;
            justify-content: center;
            align-items: center;
            overflow: hidden;
            border: 1px solid #eee;
            border-radius: 4px;
            background-color: #fcfcfc;
        }
 
        .cert-img-wrapper img {
            max-width: 100%;
            max-height: 100%;
            object-fit: contain;
            transition: transform 0.5s ease;
        }
 
        .qualification-card:hover .cert-img-wrapper img {
            transform: scale(1.03);
        }
 
        /* 证书文字说明 */
        .cert-title {
            margin-top: 15px;
            font-size: 16px;
            color: #333;
            font-weight: bold;
        }
 
        .cert-subtitle {
            font-size: 13px;
            color: #888;
            margin-top: 5px;
        }
 
        /* 放大预览弹窗 (Lightbox) 样式 */
        .lightbox-overlay {
            display: none;
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(0, 0, 0, 0.85);
            z-index: 9999;
            justify-content: center;
            align-items: center;
            cursor: zoom-out;
        }
 
        .lightbox-overlay img {
            max-width: 90%;
            max-height: 90%;
            object-fit: contain;
            box-shadow: 0 0 30px rgba(0,0,0,0.5);
            border-radius: 4px;
        }
 
        .lightbox-close {
            position: absolute;
            top: 30px;
            right: 30px;
            color: #fff;
            font-size: 36px;
            font-weight: bold;
            cursor: pointer;
            width: 40px;
            height: 40px;
            display: flex;
            justify-content: center;
            align-items: center;
            background: rgba(255, 255, 255, 0.1);
            border-radius: 50%;
            transition: background 0.3s;
        }
 
        .lightbox-close:hover {
            background: rgba(255, 255, 255, 0.3);
        }

        /* 底部样式 */
        .footer {
        background-color: #2c2c2c;
        color: #ffffff;
        padding: 40px 20px 20px;
        margin-top: 0;
      }
      .footer-container {
        max-width: 1200px;
        margin: 0 auto;
      }
      .footer-top {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        padding-bottom: 20px;
        border-bottom: 1px solid #444;
      }
      .footer-nav {
        flex: 1;
        min-width: 300px;
        margin-bottom: 20px;
      }
      .footer-nav a {
        color: #cccccc;
        text-decoration: none;
        margin-right: 20px;
        font-size: 15px;
        transition: color 0.3s;
        display: inline-block;
        margin-bottom: 10px;
      }
      .footer-nav a:hover {
        color: #fb0303;
      }
      .footer-contact {
        flex: 1;
        min-width: 250px;
        margin-bottom: 20px;
        font-size: 14px;
        color: #cccccc;
        line-height: 2;
      }
      .footer-contact .hotline {
        font-size: 16px;
        margin-bottom: 5px;
      }
      .footer-contact .hotline strong {
        font-size: 22px;
        color: #ffffff;
      }
      .footer-qr {
        flex: 0 0 120px;
        text-align: center;
        margin-bottom: 20px;
      }
      .qr-placeholder {
        width: 100%;
        height: 100%;
        position: relative;
        background-color: #fff;
        color: #333;
        display: block;
        align-items: center;
        unicode-bidi: isolate;
        justify-content: center;
        font-size: 12px;
        margin-bottom: 5px;
      }
      .qr-placeholder img {
        border: 0;
        width: 134px;
        height: 136px;
        display: block;
        vertical-align: middle;
      }
      .qr-placeholder p {
        font-size: 14px;
        height: 100%;
        color: #555555;
        text-align: center;
        font-family: Source Han Sans,Geneva,sans-serif;
      }
      .footer-bottom {
        padding-top: 20px;
        text-align: center;
        font-size: 13px;
        color: #999999;
        line-height: 1.8;
      }
      .footer-bottom a {
        color: #999999;
        text-decoration: none;
        transition: color 0.3s;
      }
      .footer-bottom a:hover {
        color: #ffffff;
      }
      @media (max-width: 768px) {
        .footer-top {
          flex-direction: column;
          align-items: center;
          text-align: center;
        }
        .footer-nav a {
          margin-right: 20px;
          margin-left: 20px;
        }
        .footer-contact {
          text-align: center;
        }
      }
      
      /* 职位描述样式 */
      .zhiwei {
        padding: 0;
        margin: 0;
        display: flex;
        position: relative;
        list-style: none;
        height: 100%;
      }
      .zhiwei-div {
        padding: 0;
        margin: 0 auto ;
        height: 100%;
        padding: 25px;
        flex: 1; /* 卡片平均分配空间 */
        min-width: 300px; /* 最小宽度，保证内容不会过于挤压 */
        max-width: 25%; /* 最大宽度，保持三列显示 */
        display: flex;
        flex-direction: column;
      }
      .zhiwei span {
        text-align: left;
        font-weight: bolder;
        font-size: 18px;
        color: #1f5c9a;
        display: block;
        line-height: 2.0;
      }
      .zhiwei p {
        font-weight: bolder;
        font-size: 16px;
        color: #666666;
        text-align: left;
        line-height: 2.0;
      }
      .zhiwei-ul {
        text-align: left;
        font-size: 14px;
        line-height: 1.75;
      }
      .zhiwei a {
        display: block;
        unicode-bidi: isolate;
        text-align: initial;
        font-size: 12px;
        font-style: normal;
        vertical-align: top;
        width: 100%;
        color: #ffffff;
      }
      .button-a {
        display: inline-block;
        margin: 10px auto;
        padding: 0;
        border: 6px solid #093e8d;
        border-radius: 20px;
        background-color: #093e8d;
        background-repeat: no-repeat;
        background-position: 0 0;
        line-height: 2.0;
      }
      @media (max-width: 900px) {
            .zhiwei-div  {
                max-width: 100%;
            }
      }

    .service-cards {
            display: flex;
            gap: 30px;
            width: 100%;
            height: 100%;
            position: relative;
        }
    .card {
            background-color: #fff;
            flex: 1;
            padding: 40px 30px;
            margin: 80px;
            border-radius: 8px;
            box-shadow: 0 4px 15px rgba(0,0,0,0.31);
            transition: transform 0.3s, box-shadow 0.3s;
        }
    .card:hover {
            transform: translateY(-5px);
            box-shadow: 0 8px 25px rgba(0,0,0,0.1);
        }
    .card h4 {
            font-size: 22px;
            color: #0056b3;
            margin-bottom: 20px;
            border-bottom: 2px solid #f0f0f0;
            padding-bottom: 15px;
        }
     .card p {
            font-size: 18px;
            line-height: 1.8;
            color: #666;
            text-align: justify;
        }
    .card img {
        width: auto;
        height: 53px;
        margin-bottom: 20px;
    }
    .service-bgc {
        background-attachment: fixed;
    }
    .service-content{
        margin: 0;
        padding: 0;
        width: 100%;
        height: 100%;
        background-image: url(../img/1hjxkhzkjh.jpg);
        background-repeat: no-repeat;
        background-position: 50% 50%;
        background-size: cover;
        opacity: 1;
        transition: all,0.3s;
    }
      .content-us{
        margin: auto;
        padding: 80px 300px 220px ;
        width: 100%;
        height: 100%;
        background-image: url(../img/syhkshck111.jpg);
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;
        opacity: 1;
        transition: all,0.3s;
        background-size: cover;
    }
/* 首页区 */
/* 滑动窗格 (轮播图) */
        .slider-container {
            position: relative;
            width: 100%;
            height: 100vh;
            overflow: hidden;
        }
        .slider-wrapper {
            display: flex;
            transition: transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
            height: 100%;
        }
        .slide {
            min-width: 100%;
            height: 100%;
            position: relative;
            display: flex;
            justify-content: center;
            align-items: center;
        }
        /* 使用CSS渐变模拟高大上的背景图 */
        /* .slide-bg-1 {
            background: linear-gradient(135deg, #001529 0%, #003a70 50%, #00a0e9 100%);
        }
        .slide-bg-2 {
            background: linear-gradient(135deg, #0c0c1d 0%, #2a1a5e 50%, #6a3093 100%);
        }
        .slide-bg-3 {
            background: linear-gradient(135deg, #0f2027 0%, #203a43 50%, #2c5364 100%);
        } */
        .slide-bg-1 {
            background-image: url(../img/1.jpg);
            background-repeat: no-repeat;
            background-size: cover;
            background-position: 50% 80%;
        }
        .slide-bg-2 {
            background-image: url(../img/3.jpg);
            background-repeat: no-repeat;
            background-size: cover;
            background-position: 50% 80%;
        }
        .slide-bg-3 {
            background-image: url(../img/5.jpg);
            background-repeat: no-repeat;
            background-size: cover;
            background-position: 50% 80%;
        }
 
        /* 幕布遮罩 */
        .slide::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: url(../img/微信图片_20260514173308_472_1.png);
            opacity: 0.1;
            z-index: -1;
        }
 
        .slide-content {
            position: relative;
            z-index: 2;
            text-align: center;
            color: #fff;
            padding: 0 20px;
            max-width: 1000px;
        }
        .slide-subtitle {
            font-size: 24px;
            letter-spacing: 8px;
            margin-bottom: 20px;
            opacity: 0;
            transform: translateY(30px);
            animation: fadeInUp 1s 0.3s forwards;
        }
        .slide-title {
            font-size: 68px;
            font-weight: bold;
            letter-spacing: 4px;
            margin-bottom: 30px;
            text-shadow: 0 10px 30px rgba(0,0,0,0.3);
            opacity: 0;
            transform: translateY(30px);
            animation: fadeInUp 1s 0.6s forwards;
            background: linear-gradient(to right, #ffffff, #b3e0ff);
            -webkit-background-clip: text;
            /* -webkit-text-fill-color: transparent; */
        }
        .slide-desc {
            font-size: 18px;
            line-height: 1.8;
            margin-bottom: 40px;
            opacity: 0;
            transform: translateY(30px);
            animation: fadeInUp 1s 0.9s forwards;
            color: rgba(255,255,255,0.9);
        }
        .slide-btn {
            display: inline-block;
            padding: 14px 40px;
            background: transparent;
            border: 2px solid #fff;
            color: #fff;
            font-size: 16px;
            text-decoration: none;
            border-radius: 50px;
            transition: all 0.4s;
            opacity: 0;
            transform: translateY(30px);
            animation: fadeInUp 1s 1.2s forwards;
        }
        .slide-btn:hover {
            background: #fff;
            color: #001529;
            box-shadow: 0 10px 30px rgba(0,0,0,0.2);
        }
 
        /* 控制箭头 */
        .slider-arrow {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            width: 50px;
            height: 50px;
            background: rgba(255, 255, 255, 0.1);
            border: 1px solid rgba(255,255,255,0.2);
            color: #fff;
            font-size: 24px;
            display: flex;
            justify-content: center;
            align-items: center;
            cursor: pointer;
            z-index: 10;
            transition: all 0.3s;
            border-radius: 4px;
        }
        .slider-arrow:hover {
            background: rgba(255,255,255,0.2);
        }
        .prev-arrow {
            left: 30px;
        }
        .next-arrow {
            right: 30px;
        }
 
        /* 指示器 */
        .slider-dots {
            position: absolute;
            bottom: 40px;
            left: 50%;
            transform: translateX(-50%);
            display: flex;
            gap: 12px;
            z-index: 10;
        }
        .dot {
            width: 30px;
            height: 3px;
            background: rgba(255,255,255,0.4);
            cursor: pointer;
            transition: all 0.4s;
        }
        .dot.active {
            width: 50px;
            background: #fff;
        }
 
        /* 动画定义 */
        @keyframes fadeInUp {
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }
 
        /* 响应式 */
        @media (max-width: 768px) {
            .nav-links { display: none; }
            .slide-title { font-size: 42px; }
            .slide-subtitle { font-size: 16px; letter-spacing: 4px; }
            .slide-desc { font-size: 14px; }
            .slider-arrow { width: 40px; height: 40px; font-size: 18px; }
        }
.memu1 a {
    height: auto;
    width: 100%;
    line-height: 34px;
    font-family: Arial;
    font-size: 14px;
    color: #444444;
    font-weight: bold;
    font-style: normal;
    text-decoration: none;
    outline: none;
    gap: 20px;
}
.memu1::before {
    content: "";
    padding: 0 5px;
}
.memu1 a:hover{
    color: #0349fb;
}

/* ////ip-guard终端防泄密解决方案//////// */
.ipg-wrap {
  --ipg-blue: #0a5eb2;
  --ipg-blue-dark: #073d7a;
  --ipg-blue-light: #e8f1fb;
  --ipg-teal: #00897b;
  --ipg-purple: #6a1b9a;
  --ipg-cyan: #0288d1;
  --ipg-orange: #f5a623;
  --ipg-red: #e04c4c;
  --ipg-text: #1a2340;
  --ipg-muted: #5a6582;
  --ipg-border: #dde3ef;
  --ipg-bg: #f7f9fc;
  --ipg-white: #fff;
  font-family: "PingFang SC","Microsoft YaHei","Helvetica Neue",Arial,sans-serif;
  color: var(--ipg-text);
  line-height: 1.8;
}
.ipg-wrap *, .ipg-wrap *::before, .ipg-wrap *::after { box-sizing: border-box; }

/* ---- 通用布局 ---- */
.ipg-inner { max-width: 1080px; margin: 0 auto; padding: 0 20px; }
.ipg-sec { padding: 60px 0; background: var(--ipg-bg); }
.ipg-sec.ipg-white { background: var(--ipg-white); }
.ipg-tag {
  display: inline-block;
  background: var(--ipg-blue-light);
  color: var(--ipg-blue);
  font-size: 11px; font-weight: 700; letter-spacing: 1.5px;
  padding: 3px 12px; border-radius: 4px; margin-bottom: 10px;
}
.ipg-h2 { font-size: clamp(20px,3vw,30px); font-weight: 800; margin-bottom: 12px; line-height: 1.3; }
.ipg-desc { color: var(--ipg-muted); font-size: 15px; max-width: 620px; margin-bottom: 36px; }
.ipg-center { text-align: center; }
.ipg-center .ipg-desc { margin: 0 auto 36px; }

/* ---- Hero ---- */
.ipg-hero {
  background: linear-gradient(135deg, #073d7a 0%, #0a5eb2 60%, #1e88e5 100%);
  color: #fff; text-align: center; padding: 64px 20px 52px;
}
.ipg-hero-badge {
  display: inline-block;
  border: 1px solid rgba(255,255,255,0.35);
  padding: 5px 16px; border-radius: 20px;
  font-size: 12px; letter-spacing: 1px; margin-bottom: 18px;
  background: rgba(255,255,255,0.12);
}
.ipg-hero h1 { font-size: clamp(24px,4vw,42px); font-weight: 800; margin-bottom: 14px; }
.ipg-hero h1 em { color: var(--ipg-orange); font-style: normal; }
.ipg-hero p { font-size: 16px; opacity: .88; margin: 0 auto 32px; }
.ipg-stats {
  display: flex; justify-content: center; flex-wrap: wrap; gap: 36px; margin-top: 32px;
}
.ipg-stat strong { display: block; font-size: 32px; font-weight: 900; color: var(--ipg-orange); line-height: 1; }
.ipg-stat span { font-size: 12px; opacity: .8; margin-top: 4px; display: block; }

/* ---- 痛点卡片 ---- */
.ipg-grid-4 { display: grid; grid-template-columns: repeat(auto-fit,minmax(220px,1fr)); gap: 16px; }
.ipg-pain-card {
  background: var(--ipg-white); border: 1px solid var(--ipg-border);
  border-radius: 12px; padding: 24px 20px; position: relative; overflow: hidden;
  transition: box-shadow .25s, transform .25s;
}
.ipg-pain-card:hover { box-shadow: 0 6px 24px rgba(10,94,178,.12); transform: translateY(-3px); }
.ipg-pain-card::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, var(--ipg-blue), var(--ipg-orange));
}
.ipg-pain-icon { font-size: 30px; margin-bottom: 10px; }
.ipg-pain-card h3 { font-size: 15px; font-weight: 700; margin-bottom: 6px; }
.ipg-pain-card p { font-size: 13px; color: var(--ipg-muted); line-height: 1.6; }

/* ---- 架构图层 ---- */
.ipg-arch {
  background: linear-gradient(135deg,#f0f6ff,#e8f1fb);
  border-radius: 16px; padding: 36px 28px;
}
.ipg-arch-rows { display: flex; flex-direction: column; gap: 12px; max-width: 820px; margin: 0 auto; }
.ipg-arch-row {
  display: flex; align-items: stretch; border-radius: 12px;
  overflow: hidden; box-shadow: 0 2px 14px rgba(10,94,178,.09);
}
.ipg-arch-label {
  display: flex; flex-direction: column; justify-content: center; align-items: center;
  padding: 16px 14px; min-width: 110px; text-align: center;
  font-weight: 800; font-size: 13px; line-height: 1.4; color: #fff;
}
.ipg-arch-label small { font-size: 10px; opacity: .8; font-weight: 500; margin-bottom: 3px; display: block; }
.ipg-l1 .ipg-arch-label { background: #1565c0; }
.ipg-l2 .ipg-arch-label { background: #0288d1; }
.ipg-l3 .ipg-arch-label { background: #00897b; }
.ipg-l4 .ipg-arch-label { background: linear-gradient(135deg,#6a1b9a,#e91e63); }
.ipg-arch-tags {
  flex: 1; background: var(--ipg-white); padding: 14px 18px;
  display: flex; flex-wrap: wrap; gap: 8px; align-items: center;
}
.ipg-atag {
  border-radius: 5px; padding: 4px 12px; font-size: 12px; font-weight: 600;
  background: var(--ipg-blue-light); color: var(--ipg-blue-dark);
}
.ipg-l2 .ipg-atag { background: #e3f2fd; color: #01579b; }
.ipg-l3 .ipg-atag { background: #e0f2f1; color: #00695c; }
.ipg-l4 .ipg-atag { background: #f3e5f5; color: #6a1b9a; }
.ipg-arrow { text-align: center; font-size: 18px; color: var(--ipg-blue); opacity: .4; }

/* ---- 特性两栏 ---- */
.ipg-feature {
  display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: center; margin-bottom: 52px;
}
.ipg-feature.rev { direction: rtl; }
.ipg-feature.rev > * { direction: ltr; }
.ipg-visual {
  border-radius: 14px; overflow: hidden; box-shadow: 0 4px 20px rgba(10,94,178,.1);
  background: var(--ipg-blue-light); min-height: 240px;
  display: flex; align-items: center; justify-content: center;
}
.ipg-visual svg { width: 100%; height: auto; display: block; }
.ipg-feature-text h3 { font-size: 22px; font-weight: 800; margin-bottom: 10px; }
.ipg-feature-text p { color: var(--ipg-muted); font-size: 14px; margin-bottom: 18px; }
.ipg-flist { list-style: none; padding: 0; margin: 0; }
.ipg-flist li {
  display: flex; gap: 9px; align-items: flex-start;
  padding: 7px 0; border-bottom: 1px solid var(--ipg-border); font-size: 13.5px;
}
.ipg-flist li:last-child { border-bottom: none; }
.ipg-dot {
  width: 20px; height: 20px; border-radius: 50%; background: var(--ipg-blue);
  color: #fff; font-size: 11px; flex-shrink: 0; margin-top: 2px;
  display: flex; align-items: center; justify-content: center;
}

/* ---- 优势卡片 ---- */
.ipg-adv-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(190px,1fr)); gap: 20px; }
.ipg-adv {
  background: var(--ipg-white); border: 1px solid var(--ipg-border);
  border-radius: 12px; padding: 28px 20px; text-align: center;
  transition: all .25s;
}
.ipg-adv:hover { transform: translateY(-4px); box-shadow: 0 6px 24px rgba(10,94,178,.12); }
.ipg-adv-num {
  width: 44px; height: 44px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 20px; font-weight: 900; color: #fff; margin: 0 auto 14px;
}
.ipg-adv:nth-child(1) .ipg-adv-num { background: linear-gradient(135deg,#1565c0,#0288d1); }
.ipg-adv:nth-child(2) .ipg-adv-num { background: linear-gradient(135deg,#00897b,#26a69a); }
.ipg-adv:nth-child(3) .ipg-adv-num { background: linear-gradient(135deg,#6a1b9a,#ab47bc); }
.ipg-adv:nth-child(4) .ipg-adv-num { background: linear-gradient(135deg,#f57f17,#ffa726); }
.ipg-adv:nth-child(5) .ipg-adv-num { background: linear-gradient(135deg,#b71c1c,#ef5350); }
.ipg-adv h4 { font-size: 16px; font-weight: 800; margin-bottom: 8px; }
.ipg-adv p { font-size: 13px; color: var(--ipg-muted); line-height: 1.7; }

/* ---- 功能模块标签 ---- */
.ipg-modules { display: flex; flex-wrap: wrap; gap: 10px; }
.ipg-mod {
  background: var(--ipg-white); border: 1.5px solid var(--ipg-border);
  border-radius: 7px; padding: 7px 16px; font-size: 13px; font-weight: 600;
  color: var(--ipg-blue-dark); transition: all .2s; cursor: default;
}
.ipg-mod:hover { background: var(--ipg-blue); color: #fff; border-color: var(--ipg-blue); transform: translateY(-2px); }

/* ---- 数据横幅 ---- */
.ipg-banner {
  background: linear-gradient(135deg,#073d7a,#0a5eb2);
  border-radius: 16px; display: flex; overflow: hidden;
}
.ipg-bstat {
  flex: 1; padding: 36px 20px; text-align: center; color: #fff;
  border-right: 1px solid rgba(255,255,255,.1);
}
.ipg-bstat:last-child { border-right: none; }
.ipg-bstat .n { font-size: 38px; font-weight: 900; color: var(--ipg-orange); line-height: 1; margin-bottom: 6px; }
.ipg-bstat .n sup,.ipg-bstat .n sub { font-size: 16px; }
.ipg-bstat p { font-size: 12px; opacity: .8; }

/* ---- CTA ---- */
.ipg-cta {
  background: linear-gradient(135deg,#073d7a,#0a5eb2);
  color: #fff; text-align: center; padding: 56px 20px;
}
.ipg-cta h2 { font-size: 26px; font-weight: 800; margin-bottom: 12px; }
.ipg-cta p { font-size: 15px; opacity: .85; margin-bottom: 28px; }
.ipg-btn {
  display: inline-block; background: var(--ipg-orange); color: var(--ipg-text);
  font-weight: 800; padding: 12px 36px; border-radius: 36px; font-size: 15px;
  text-decoration: none; transition: all .2s; margin: 0 6px 8px;
}
.ipg-btn:hover { background: #e09415; transform: translateY(-2px); box-shadow: 0 8px 20px rgba(0,0,0,.25); }
.ipg-btn.ipg-outline {
  background: transparent; border: 2px solid rgba(255,255,255,.45); color: #fff;
}
.ipg-btn.ipg-outline:hover { background: rgba(255,255,255,.1); }

@media(max-width:768px) {
  .ipg-feature,.ipg-feature.rev { grid-template-columns: 1fr; direction: ltr; }
  .ipg-banner { flex-direction: column; }
  .ipg-bstat { border-right: none; border-bottom: 1px solid rgba(255,255,255,.1); }
  .ipg-bstat:last-child { border-bottom: none; }
  .ipg-stats { gap: 20px; }
}

/* ===== 机房建设方案 – 命名空间样式 ===== */
.jf-wrap{font-family:"Microsoft YaHei","PingFang SC","Helvetica Neue",sans-serif;
    color:#2d3748;
    line-height:1.75;
    /* max-width:1200px;
    padding:0 20px; */
    margin:0 auto;
    box-sizing:border-box}
.jf-wrap *{box-sizing:border-box}

/* Hero */
.jf-hero{
    background:linear-gradient(135deg,#0f2b46 0%,#1a4971 40%,#1e6b9e 100%);
    background-size: cover;
    background-position: 100% 100%;
    color:#fff;
    text-align:center;
    padding:80px 30px 70px;
    border-radius:16px;
    position:relative;
    overflow:hidden;
    margin:40px 0 0
}
.jf-hero::before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 800 600'%3E%3Cg fill='none' stroke='rgba(255,255,255,.06)' stroke-width='1'%3E%3Crect x='50' y='50' width='100' height='60' rx='4' /%3E%3Crect x='200' y='80' width='100' height='60' rx='4' /%3E%3Crect x='350' y='40' width='100' height='60' rx='4' /%3E%3Crect x='500' y='70' width='100' height='60' rx='4' /%3E%3Crect x='650' y='50' width='100' height='60' rx='4' /%3E%3Crect x='120' y='180' width='100' height='60' rx='4' /%3E%3Crect x='270' y='200' width='100' height='60' rx='4' /%3E%3Crect x='420' y='180' width='100' height='60' rx='4' /%3E%3Crect x='570' y='200' width='100' height='60' rx='4' /%3E%3Crect x='50' y='310' width='100' height='60' rx='4' /%3E%3Crect x='200' y='330' width='100' height='60' rx='4' /%3E%3Crect x='350' y='310' width='100' height='60' rx='4' /%3E%3Crect x='500' y='330' width='100' height='60' rx='4' /%3E%3Crect x='650' y='310' width='100' height='60' rx='4' /%3E%3C/g%3E%3Cg stroke='rgba(255,255,255,.08)' stroke-width='1'%3E%3Cline x1='100' y1='125' x2='100' y2='165' /%3E%3Cline x1='250' y1='155' x2='250' y2='165' /%3E%3Cline x1='400' y1='115' x2='400' y2='165' /%3E%3Cline x1='550' y1='145' x2='550' y2='165' /%3E%3Cline x1='170' y1='255' x2='170' y2='295' /%3E%3Cline x1='320' y1='275' x2='320' y2='295' /%3E%3Cline x1='470' y1='255' x2='470' y2='295' /%3E%3C/g%3E%3C/svg%3E");opacity:.5}
.jf-hero>*{position:relative;z-index:1}
.jf-hero-badge{display:inline-block;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.25);border-radius:30px;padding:6px 24px;font-size:14px;letter-spacing:3px;margin-bottom:24px;backdrop-filter:blur(10px)}
.jf-hero h1{font-size:clamp(28px,5vw,48px);font-weight:700;margin:0 0 16px;letter-spacing:2px}
.jf-hero p{font-size:clamp(15px,2vw,18px);opacity:.9;max-width:800px;margin:0 auto 32px;line-height:1.9}
.jf-hero-stats{
    display:flex;
    justify-content:center;
    gap:50px;
    flex-wrap:wrap;
    margin-top:20px;

    
}
.jf-hero-stat{text-align:center}
.jf-hero-stat .jf-num{font-size:clamp(26px,3.5vw,38px);font-weight:800;display:block}
.jf-hero-stat .jf-label{font-size:13px;opacity:.75;letter-spacing:1px}

/* Section title */
.jf-section{margin:60px 0 0;
        /* max-width:1200px; */
    padding:0 40px;
}
.jf-sec-tag{display:inline-block;color:#1e6b9e;font-size:13px;font-weight:700;letter-spacing:3px;text-transform:uppercase;margin-bottom:8px}
.jf-sec-title{font-size:clamp(22px,3vw,32px);font-weight:700;color:#0f2b46;margin:0 0 12px;line-height:1.4}
.jf-sec-desc{font-size:15px;color:#5a6b7d;max-width:800px;margin:0 0 30px;line-height:1.9}

/* Overview cards */
.jf-overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;margin:30px 0}
.jf-ov-card{background:#fff;border-radius:14px;padding:32px 26px;box-shadow:0 2px 16px rgba(0,0,0,.06);border:1px solid #e8edf2;transition:transform .25s,box-shadow .25s}
.jf-ov-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px rgba(0,0,0,.1)}
.jf-ov-icon{width:52px;height:52px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:18px;font-size:24px}
.jf-ov-card h3{font-size:17px;font-weight:700;color:#0f2b46;margin:0 0 8px}
.jf-ov-card p{font-size:14px;color:#5a6b7d;margin:0;line-height:1.8}

/* Pain points */
.jf-pain-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin:30px 0}
.jf-pain-card{background:#fff;border-radius:12px;padding:28px 24px;border-left:4px solid #e74c3c;box-shadow:0 2px 12px rgba(0,0,0,.05);transition:transform .25s}
.jf-pain-card:hover{transform:translateY(-3px)}
.jf-pain-card:nth-child(2){border-left-color:#e67e22}
.jf-pain-card:nth-child(3){border-left-color:#f39c12}
.jf-pain-card:nth-child(4){border-left-color:#1e6b9e}
.jf-pain-card h4{font-size:15px;font-weight:700;color:#0f2b46;margin:0 0 8px}
.jf-pain-card p{font-size:13px;color:#5a6b7d;margin:0;line-height:1.7}

/* System cards */
.jf-sys-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:20px;margin:30px 0}
.jf-sys-card{background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 2px 16px rgba(0,0,0,.06);border:1px solid #e8edf2}
.jf-sys-hd{background:linear-gradient(135deg,#0f2b46,#1a4971);color:#fff;padding:20px 24px;display:flex;align-items:center;gap:14px}
.jf-sys-num{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:800;flex-shrink:0}
.jf-sys-hd h4{font-size:17px;margin:0;font-weight:700}
.jf-sys-body{padding:22px 24px}
.jf-sys-body p{font-size:13px;color:#5a6b7d;margin:0 0 14px;line-height:1.8}
.jf-sys-tags{display:flex;flex-wrap:wrap;gap:8px}
.jf-sys-tag{display:inline-block;background:#eef4fa;color:#1e6b9e;font-size:11px;padding:4px 12px;border-radius:18px;font-weight:600}

/* Standards section */
.jf-std-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin:30px 0}
.jf-std-card{background:#fff;border-radius:12px;padding:26px 24px;box-shadow:0 2px 12px rgba(0,0,0,.05);border:1px solid #e8edf2;border-top:3px solid #1e6b9e}
.jf-std-card:nth-child(2){border-top-color:#27ae60}
.jf-std-card:nth-child(3){border-top-color:#e67e22}
.jf-std-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:2px;margin-bottom:10px}
.jf-std-card:nth-child(1) .jf-std-label{color:#1e6b9e}
.jf-std-card:nth-child(2) .jf-std-label{color:#27ae60}
.jf-std-card:nth-child(3) .jf-std-label{color:#e67e22}
.jf-std-card h4{font-size:16px;font-weight:700;color:#0f2b46;margin:0 0 10px}
.jf-std-card ul{list-style:none;padding:0;margin:0}
.jf-std-card li{font-size:13px;color:#5a6b7d;padding:4px 0 4px 18px;position:relative;line-height:1.7}
.jf-std-card li::before{content:"";position:absolute;left:0;top:10px;width:6px;height:6px;border-radius:50%;background:#1e6b9e}

/* Process flow */
.jf-flow{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;margin:30px 0}
.jf-flow-step{background:#fff;border-radius:14px;padding:30px 22px;text-align:center;flex:1;min-width:200px;max-width:250px;box-shadow:0 2px 16px rgba(0,0,0,.06);border:1px solid #e8edf2;position:relative;transition:transform .25s}
.jf-flow-step:hover{transform:translateY(-4px)}
.jf-flow-num{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#1a4971,#1e6b9e);color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:800;margin:0 auto 14px}
.jf-flow-step h4{font-size:15px;font-weight:700;color:#0f2b46;margin:0 0 8px}
.jf-flow-step p{font-size:12px;color:#5a6b7d;margin:0;line-height:1.7}

/* Case cards */
.jf-case-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:24px;margin:30px 0}
.jf-case-card{background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 2px 16px rgba(0,0,0,.06);border:1px solid #e8edf2;transition:transform .25s}
.jf-case-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px rgba(0,0,0,.1)}
.jf-case-top{background:linear-gradient(135deg,#0f2b46,#1a4971);color:#fff;padding:22px 24px}
.jf-case-top h4{font-size:17px;margin:0 0 6px;font-weight:700}
.jf-case-top .jf-case-sub{font-size:12px;opacity:.75}
.jf-case-body{padding:22px 24px}
.jf-case-body h5{font-size:13px;color:#1e6b9e;font-weight:700;margin:0 0 8px}
.jf-case-body p{font-size:13px;color:#5a6b7d;margin:0 0 14px;line-height:1.8}
.jf-case-specs{display:flex;flex-wrap:wrap;gap:8px}
.jf-case-spec{display:inline-block;background:#eef4fa;color:#1a4971;font-size:11px;padding:4px 12px;border-radius:16px;font-weight:600}

/* Stats banner */
.jf-banner{background:linear-gradient(135deg,#1a4971,#0f2b46);color:#fff;text-align:center;padding:50px 20px;border-radius:14px;margin:50px 0 0}
.jf-banner h3{font-size:clamp(20px,3vw,28px);font-weight:700;margin:0 0 12px}
.jf-banner p{font-size:15px;opacity:.85;max-width:650px;margin:0 auto;line-height:1.8}

/* CTA */
.jf-cta{text-align:center;padding:60px 20px;margin:50px 0 40px;background:linear-gradient(135deg,#f7fafc,#e2e8f0);border-radius:16px}
.jf-cta h3{font-size:clamp(22px,3vw,30px);font-weight:700;color:#0f2b46;margin:0 0 10px}
.jf-cta p{font-size:15px;color:#5a6b7d;max-width:600px;margin:0 auto 30px;line-height:1.8}
.jf-cta-btns{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}
.jf-btn{display:inline-block;padding:13px 36px;border-radius:30px;font-size:15px;font-weight:700;text-decoration:none;transition:all .3s;cursor:pointer;border:none}
.jf-btn-primary{background:linear-gradient(135deg,#1e6b9e,#2889c4);color:#fff;box-shadow:0 4px 15px rgba(30,107,158,.35)}
.jf-btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(30,107,158,.45)}
.jf-btn-outline{background:transparent;color:#1e6b9e;border:2px solid #1e6b9e}
.jf-btn-outline:hover{background:#1e6b9e;color:#fff}

/* SVG visual */
.jf-diagram{margin:35px 0;display:flex;
    padding: 0 200px;
    justify-content:center}
.jf-diagram svg{max-width:100%;height:auto}

/* Responsive */
@media(max-width:768px){
  .jf-hero{padding:50px 20px 40px}
  .jf-hero-stats{gap:28px}
  .jf-flow{flex-direction:column;align-items:center}
  .jf-flow-step{max-width:100%}
  .jf-sys-grid{grid-template-columns:1fr}
  .jf-case-grid{grid-template-columns:1fr}
}

/* === 基础变量 === */
#yln-avone{--yl-p:#0A5CFF;--yl-pd:#003FBF;--yl-pl:#E8F0FF;--yl-a:#00D4AA;--yl-ad:#00B894;--yl-dk:#0F172A;--yl-dl:#1E293B;--yl-t:#334155;--yl-tl:#64748B;--yl-w:#FFF;--yl-bg:#F8FAFC;--yl-bd:#E2E8F0;--yl-gh:linear-gradient(135deg,#0A5CFF 0%,#003FBF 40%,#1E1B4B 100%);--yl-ga:linear-gradient(135deg,#00D4AA 0%,#0A5CFF 100%);--yl-rs:8px;--yl-rm:12px;--yl-rl:20px;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Hiragino Sans GB','Microsoft YaHei',sans-serif;color:#334155;line-height:1.7;overflow-x:hidden;box-sizing:border-box}
#yln-avone *,#yln-avone *::before,#yln-avone *::after{box-sizing:border-box;}
#yln-avone a{text-decoration:none;color:inherit}
#yln-avone img{max-width:100%;display:block}

/* === 动画 === */
@keyframes yl-fadeIn{from{opacity:0}to{opacity:1}}
@keyframes yl-fadeUp{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}
@keyframes yl-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes yl-pulse{0%{transform:scale(1);opacity:1}100%{transform:scale(1.5);opacity:0}}

/* === 通用 === */
.yl-c{max-width:1200px;margin:0 auto;padding:0 24px}
.yl-label{display:inline-block;font-size:13px;font-weight:600;color:var(--yl-p);background:var(--yl-pl);padding:6px 16px;border-radius:100px;letter-spacing:1px;margin-bottom:16px}
.yl-title{font-size:clamp(26px,4vw,40px);font-weight:700;color:var(--yl-dk);line-height:1.25;margin-bottom:16px}
.yl-desc{font-size:16px;color:var(--yl-tl);max-width:640px;line-height:1.8}
.yl-ani{opacity:0;transform:translateY(30px);transition:all .6s cubic-bezier(.22,1,.36,1)}
.yl-ani.yl-vis{opacity:1;transform:translateY(0)}

/* === Hero === */
#yln-avone .yl-hero{position:relative;padding:100px 0 80px;background:var(--yl-gh);overflow:hidden}
#yln-avone .yl-hero::before{content:'';position:absolute;top:-40%;right:-15%;width:700px;height:700px;background:radial-gradient(circle,rgba(0,212,170,.15) 0%,transparent 60%);border-radius:50%;animation:yl-float 8s ease-in-out infinite}
#yln-avone .yl-hero::after{content:'';position:absolute;bottom:-25%;left:-8%;width:500px;height:500px;background:radial-gradient(circle,rgba(10,92,255,.2) 0%,transparent 60%);border-radius:50%;animation:yl-float 10s ease-in-out infinite reverse}
#yln-avone .yl-hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:60px 60px}
#yln-avone .yl-hero .yl-c{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
#yln-avone .yl-hero-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 18px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:100px;color:rgba(255,255,255,.9);font-size:13px;font-weight:500;margin-bottom:24px;backdrop-filter:blur(10px)}
#yln-avone .yl-hero-dot{width:8px;height:8px;background:var(--yl-a);border-radius:50%;position:relative}
#yln-avone .yl-hero-dot::after{content:'';position:absolute;inset:-3px;border:2px solid var(--yl-a);border-radius:50%;animation:yl-pulse 2s ease-out infinite}
#yln-avone .yl-hero h2{font-size:clamp(32px,4.5vw,50px);font-weight:800;color:#fff;line-height:1.15;margin-bottom:18px}
#yln-avone .yl-hero h2 .yl-ac{color:var(--yl-a)}
#yln-avone .yl-hero-sub{font-size:17px;color:rgba(255,255,255,.75);line-height:1.7;margin-bottom:36px;max-width:500px}
#yln-avone .yl-hero-btns{display:flex;gap:14px;flex-wrap:wrap}
#yln-avone .yl-btn-w{display:inline-flex;align-items:center;gap:8px;padding:13px 30px;background:#fff;color:var(--yl-p);font-weight:600;font-size:15px;border-radius:100px;border:none;cursor:pointer;transition:all .3s}
#yln-avone .yl-btn-w:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(255,255,255,.25)}
#yln-avone .yl-btn-o{display:inline-flex;align-items:center;gap:8px;padding:13px 30px;background:transparent;color:#fff;font-weight:600;font-size:15px;border-radius:100px;border:1.5px solid rgba(255,255,255,.3);cursor:pointer;transition:all .3s}
#yln-avone .yl-btn-o:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.6)}
#yln-avone .yl-hero-card{background:rgba(255,255,255,.08);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.12);border-radius:var(--yl-rl);padding:36px;position:relative;overflow:hidden}
#yln-avone .yl-hero-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--yl-ga)}
#yln-avone .yl-stats{display:grid;grid-template-columns:1fr 1fr;gap:20px}
#yln-avone .yl-stat{padding:18px;background:rgba(255,255,255,.05);border-radius:var(--yl-rm);border:1px solid rgba(255,255,255,.08);transition:all .3s}
#yln-avone .yl-stat:hover{background:rgba(255,255,255,.1);transform:translateY(-2px)}
#yln-avone .yl-stat-v{font-size:30px;font-weight:800;color:#fff;margin-bottom:3px}
#yln-avone .yl-stat-v .yl-u{font-size:15px;font-weight:500;color:var(--yl-a)}
#yln-avone .yl-stat-l{font-size:13px;color:rgba(255,255,255,.6)}

/* === 核心优势 === */
#yln-avone .yl-sec-vals{padding:80px 0;background:var(--yl-bg)}
#yln-avone .yl-sec-head{text-align:center;margin-bottom:50px}
#yln-avone .yl-sec-head .yl-desc{margin:0 auto}
#yln-avone .yl-vgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
#yln-avone .yl-vcard{background:#fff;border-radius:var(--yl-rl);padding:32px 24px;text-align:center;transition:all .4s cubic-bezier(.22,1,.36,1);border:1px solid var(--yl-bd);position:relative;overflow:hidden}
#yln-avone .yl-vcard::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--yl-ga);transform:scaleX(0);transition:transform .4s ease}
#yln-avone .yl-vcard:hover::before{transform:scaleX(1)}
#yln-avone .yl-vcard:hover{transform:translateY(-5px);box-shadow:0 10px 40px rgba(0,0,0,.1)}
#yln-avone .yl-vicon{width:56px;height:56px;margin:0 auto 18px;background:var(--yl-pl);border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:26px;transition:all .3s}
#yln-avone .yl-vcard:hover .yl-vicon{background:var(--yl-p);color:#fff}
#yln-avone .yl-vcard h4{font-size:17px;font-weight:700;color:var(--yl-dk);margin-bottom:8px}
#yln-avone .yl-vcard p{font-size:14px;color:var(--yl-tl);line-height:1.7}

/* === 产品体系 === */
#yln-avone .yl-sec-prod{padding:80px 0}
#yln-avone .yl-pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
#yln-avone .yl-pcard{background:#fff;border-radius:var(--yl-rl);border:1px solid var(--yl-bd);overflow:hidden;transition:all .4s cubic-bezier(.22,1,.36,1)}
#yln-avone .yl-pcard:hover{transform:translateY(-5px);box-shadow:0 16px 50px rgba(0,0,0,.12)}
#yln-avone .yl-pban{height:160px;display:flex;align-items:center;justify-content:center;font-size:50px}
#yln-avone .yl-pban.yl-bg1{background:linear-gradient(135deg,#0A5CFF,#003FBF)}
#yln-avone .yl-pban.yl-bg2{background:linear-gradient(135deg,#00D4AA,#00B894)}
#yln-avone .yl-pban.yl-bg3{background:linear-gradient(135deg,#6366F1,#4F46E5)}
#yln-avone .yl-pban.yl-bg4{background:linear-gradient(135deg,#F59E0B,#D97706)}
#yln-avone .yl-pban.yl-bg5{background:linear-gradient(135deg,#EF4444,#DC2626)}
#yln-avone .yl-pban.yl-bg6{background:linear-gradient(135deg,#8B5CF6,#7C3AED)}
#yln-avone .yl-pbody{padding:24px}
#yln-avone .yl-psub{font-size:13px;color:var(--yl-p);font-weight:600;margin-bottom:10px}
#yln-avone .yl-pbody h4{font-size:17px;font-weight:700;color:var(--yl-dk);margin-bottom:8px}
#yln-avone .yl-pbody > p{font-size:14px;color:var(--yl-tl);line-height:1.7;margin-bottom:14px}
#yln-avone .yl-tags{display:flex;flex-wrap:wrap;gap:6px}
#yln-avone .yl-tag{padding:4px 11px;background:var(--yl-bg);border-radius:100px;font-size:12px;color:var(--yl-t);font-weight:500}

/* === 场景 Tab === */
#yln-avone .yl-sec-scene{padding:80px 0;background:var(--yl-dk);color:#fff}
#yln-avone .yl-sec-scene .yl-label{background:rgba(10,92,255,.2);color:#7CB3FF}
#yln-avone .yl-sec-scene .yl-title{color:#fff}
#yln-avone .yl-sec-scene .yl-desc{color:rgba(255,255,255,.6)}
#yln-avone .yl-tabs{display:flex;justify-content:center;gap:8px;margin-bottom:40px;flex-wrap:wrap}
#yln-avone .yl-tab{padding:10px 20px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:100px;color:rgba(255,255,255,.6);font-size:14px;font-weight:500;cursor:pointer;transition:all .3s;font-family:inherit}
#yln-avone .yl-tab:hover,#yln-avone .yl-tab.yl-on{background:var(--yl-p);border-color:var(--yl-p);color:#fff}
#yln-avone .yl-panel{display:none}
#yln-avone .yl-panel.yl-on{display:block;animation:yl-fadeIn .4s ease}
#yln-avone .yl-scontent{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
#yln-avone .yl-sinfo h3{font-size:26px;font-weight:700;margin-bottom:18px;color:#fff}
#yln-avone .yl-sinfo > p{font-size:15px;color:rgba(255,255,255,.65);line-height:1.8;margin-bottom:24px}
#yln-avone .yl-sfl{list-style:none;display:flex;flex-direction:column;gap:12px;margin-bottom:28px}
#yln-avone .yl-sfl li{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:rgba(255,255,255,.8)}
#yln-avone .yl-sfl li .yl-chk{flex-shrink:0;width:20px;height:20px;background:rgba(0,212,170,.15);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--yl-a);font-size:11px;margin-top:2px}
#yln-avone .yl-scard{background:rgba(255,255,255,.04);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.08);border-radius:var(--yl-rl);padding:32px}
#yln-avone .yl-scard-t{font-size:13px;font-weight:600;color:rgba(255,255,255,.5);text-transform:uppercase;letter-spacing:1px;margin-bottom:18px}
#yln-avone .yl-elist{list-style:none;display:flex;flex-direction:column;gap:10px}
#yln-avone .yl-elist li{display:flex;align-items:center;justify-content:space-between;padding:11px 14px;background:rgba(255,255,255,.04);border-radius:var(--yl-rs);font-size:14px}
#yln-avone .yl-elist li .yl-en{color:rgba(255,255,255,.9);font-weight:500}
#yln-avone .yl-elist li .yl-em{color:var(--yl-a);font-weight:600;font-size:13px}

/* === AI 能力 === */
#yln-avone .yl-sec-ai{padding:80px 0;background:var(--yl-bg)}
#yln-avone .yl-aigrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
#yln-avone .yl-aicard{background:#fff;border-radius:var(--yl-rl);padding:32px 24px;border:1px solid var(--yl-bd);transition:all .4s;position:relative;overflow:hidden}
#yln-avone .yl-aicard:hover{transform:translateY(-4px);box-shadow:0 10px 40px rgba(0,0,0,.1)}
#yln-avone .yl-ainum{font-size:64px;font-weight:900;color:var(--yl-pl);position:absolute;top:-6px;right:14px;line-height:1}
#yln-avone .yl-aiicon{width:44px;height:44px;background:linear-gradient(135deg,var(--yl-p),var(--yl-pd));border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:20px;margin-bottom:18px}
#yln-avone .yl-aicard h4{font-size:17px;font-weight:700;color:var(--yl-dk);margin-bottom:10px}
#yln-avone .yl-aicard > p{font-size:14px;color:var(--yl-tl);line-height:1.7;margin-bottom:14px}
#yln-avone .yl-ailist{list-style:none}
#yln-avone .yl-ailist li{font-size:13px;color:var(--yl-t);padding:5px 0;display:flex;align-items:center;gap:8px}
#yln-avone .yl-ailist li::before{content:'';width:5px;height:5px;background:var(--yl-a);border-radius:50%;flex-shrink:0}

/* === Room Designer === */
#yln-avone .yl-sec-des{padding:80px 0;overflow:hidden}
#yln-avone .yl-des-inner{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
#yln-avone .yl-des-vis{position:relative;background:var(--yl-gh);border-radius:var(--yl-rl);padding:40px;color:#fff;min-height:380px;display:flex;flex-direction:column;justify-content:center}
#yln-avone .yl-des-vis::before{content:'';position:absolute;top:-80px;right:-80px;width:250px;height:250px;background:radial-gradient(circle,rgba(0,212,170,.2) 0%,transparent 70%);border-radius:50%}
#yln-avone .yl-dsteps{display:flex;flex-direction:column;gap:16px;position:relative;z-index:2}
#yln-avone .yl-dstep{display:flex;align-items:center;gap:14px;padding:14px 18px;background:rgba(255,255,255,.08);border-radius:var(--yl-rm);border:1px solid rgba(255,255,255,.1);transition:all .3s}
#yln-avone .yl-dstep:hover{background:rgba(255,255,255,.14);transform:translateX(4px)}
#yln-avone .yl-dsn{width:32px;height:32px;background:var(--yl-a);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;color:var(--yl-dk);flex-shrink:0}
#yln-avone .yl-dst{font-size:14px;font-weight:500}
#yln-avone .yl-des-info h3{font-size:26px;font-weight:700;color:var(--yl-dk);margin-bottom:14px;line-height:1.3}
#yln-avone .yl-des-info > p{font-size:15px;color:var(--yl-tl);line-height:1.8;margin-bottom:28px}
#yln-avone .yl-pains{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}
#yln-avone .yl-pain{display:flex;gap:10px;padding:14px;background:#FEF2F2;border-radius:var(--yl-rs);border-left:3px solid #EF4444}
#yln-avone .yl-pain-icon{font-size:18px;flex-shrink:0}
#yln-avone .yl-pain p{font-size:13px;color:#991B1B}
#yln-avone .yl-sols{display:flex;flex-direction:column;gap:12px}
#yln-avone .yl-sol{display:flex;gap:10px;padding:14px;background:#ECFDF5;border-radius:var(--yl-rs);border-left:3px solid var(--yl-a)}
#yln-avone .yl-sol-icon{font-size:18px;flex-shrink:0}
#yln-avone .yl-sol p{font-size:13px;color:#065F46}

/* === 客户案例 === */
#yln-avone .yl-sec-cases{padding:80px 0;background:var(--yl-bg)}
#yln-avone .yl-cgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
#yln-avone .yl-ccard{background:#fff;border-radius:var(--yl-rl);overflow:hidden;border:1px solid var(--yl-bd);transition:all .4s}
#yln-avone .yl-ccard:hover{transform:translateY(-5px);box-shadow:0 16px 50px rgba(0,0,0,.12)}
#yln-avone .yl-ch{padding:28px 24px 16px}
#yln-avone .yl-cind{display:inline-block;padding:4px 11px;background:var(--yl-pl);color:var(--yl-p);font-size:12px;font-weight:600;border-radius:100px;margin-bottom:12px}
#yln-avone .yl-ch h4{font-size:20px;font-weight:700;color:var(--yl-dk);margin-bottom:5px}
#yln-avone .yl-ch > p{font-size:13px;color:var(--yl-tl);line-height:1.7}
#yln-avone .yl-cbody{padding:0 24px 24px}
#yln-avone .yl-cstats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}
#yln-avone .yl-cst{padding:12px;background:var(--yl-bg);border-radius:var(--yl-rs);text-align:center}
#yln-avone .yl-csv{font-size:19px;font-weight:800;color:var(--yl-p)}
#yln-avone .yl-csl{font-size:11px;color:var(--yl-tl);margin-top:2px}
#yln-avone .yl-cblock{margin-top:14px;padding:14px;border-radius:var(--yl-rs)}
#yln-avone .yl-cblk-y{background:#FFFBEB;border-left:3px solid #F59E0B}
#yln-avone .yl-cblk-y h5{font-size:13px;font-weight:700;color:#92400E;margin-bottom:4px}
#yln-avone .yl-cblk-y p{font-size:13px;color:#92400E;line-height:1.6}
#yln-avone .yl-cblk-g{background:#ECFDF5;border-left:3px solid var(--yl-a)}
#yln-avone .yl-cblk-g h5{font-size:13px;font-weight:700;color:#065F46;margin-bottom:4px}
#yln-avone .yl-cblk-g p{font-size:13px;color:#065F46;line-height:1.6}
#yln-avone .yl-ctags{display:flex;flex-wrap:wrap;gap:5px;margin-top:14px}
#yln-avone .yl-ctag{padding:3px 9px;background:var(--yl-bg);border:1px solid var(--yl-bd);border-radius:100px;font-size:11px;color:var(--yl-t)}

/* === CTA === */
#yln-avone .yl-sec-cta{padding:80px 0;background:var(--yl-gh);text-align:center;position:relative;overflow:hidden}
#yln-avone .yl-sec-cta::before{content:'';position:absolute;top:-40%;left:50%;transform:translateX(-50%);width:800px;height:800px;background:radial-gradient(circle,rgba(0,212,170,.1) 0%,transparent 60%);border-radius:50%}
#yln-avone .yl-sec-cta .yl-c{position:relative;z-index:2}
#yln-avone .yl-sec-cta h2{font-size:clamp(28px,4vw,40px);font-weight:800;color:#fff;margin-bottom:14px}
#yln-avone .yl-sec-cta > div > p{font-size:17px;color:rgba(255,255,255,.7);margin-bottom:36px;max-width:560px;margin-left:auto;margin-right:auto}
#yln-avone .yl-cta-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
#yln-avone .yl-cta-w{padding:15px 36px;background:#fff;color:var(--yl-p);font-weight:700;font-size:15px;border-radius:100px;border:none;cursor:pointer;transition:all .3s;display:inline-flex;align-items:center;gap:8px;font-family:inherit}
#yln-avone .yl-cta-w:hover{transform:translateY(-2px);box-shadow:0 10px 36px rgba(255,255,255,.2)}
#yln-avone .yl-cta-o{padding:15px 36px;background:transparent;color:#fff;font-weight:600;font-size:15px;border-radius:100px;border:1.5px solid rgba(255,255,255,.3);cursor:pointer;transition:all .3s;font-family:inherit}
#yln-avone .yl-cta-o:hover{background:rgba(255,255,255,.1)}
@media(max-width:576px){
#yln-avone .yl-vgrid,#yln-avone .yl-pgrid,#yln-avone .yl-aigrid{grid-template-columns:1fr}
#yln-avone .yl-finner{grid-template-columns:1fr}
}

#kc-kes{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Microsoft YaHei',sans-serif;color:#334155;line-height:1.7;box-sizing:border-box}
#kc-kes *,#kc-kes *::before,#kc-kes *::after{box-sizing:border-box;margin:0;padding:0}
#kc-kes a{text-decoration:none;color:inherit}
#kc-kes img{max-width:100%;display:block}
@keyframes kc-up{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
#kc-kes .kc-c{max-width:1160px;margin:0 auto;padding:0 24px}
#kc-kes .kc-label{display:inline-block;font-size:12px;font-weight:600;color:#1A56DB;background:#EBF0FF;padding:5px 14px;border-radius:100px;letter-spacing:.5px;margin-bottom:14px}
#kc-kes .kc-title{font-size:clamp(22px,3vw,34px);font-weight:700;color:#0F172A;line-height:1.3;margin-bottom:12px}
#kc-kes .kc-desc{font-size:15px;color:#64748B;max-width:640px;line-height:1.7}
#kc-kes .kc-sec-head{text-align:center;margin-bottom:40px}
#kc-kes .kc-sec-head .kc-desc{margin:0 auto}
#kc-kes .kc-ani{opacity:0;transform:translateY(24px);transition:all .5s ease}
#kc-kes .kc-ani.kc-vis{opacity:1;transform:translateY(0)}

/* Hero */
#kc-kes .kc-hero{padding:100px 0 60px;background:linear-gradient(135deg,#0F172A 0%,#1E3A5F 50%,#1A56DB 100%);overflow:hidden}
#kc-kes .kc-hero .kc-c{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center}
#kc-kes .kc-hero h2{font-size:clamp(26px,3.5vw,42px);font-weight:800;color:#fff;line-height:1.15;margin-bottom:14px}
#kc-kes .kc-hero h2 em{font-style:normal;color:#34D399}
#kc-kes .kc-hero-sub{font-size:15px;color:rgba(255,255,255,.65);line-height:1.7;margin-bottom:28px}
#kc-kes .kc-hero-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:28px;backdrop-filter:blur(12px)}
#kc-kes .kc-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#kc-kes .kc-stat{padding:14px;background:rgba(255,255,255,.04);border-radius:10px;text-align:center}
#kc-kes .kc-stat-v{font-size:26px;font-weight:800;color:#fff}
#kc-kes .kc-stat-v small{font-size:12px;font-weight:500;color:#34D399}
#kc-kes .kc-stat-l{font-size:11px;color:rgba(255,255,255,.5);margin-top:2px}

/* 通用白色区 */
#kc-kes .kc-sec-w{padding:60px 0;background:#F8FAFC}
#kc-kes .kc-sec{padding:60px 0}

/* 市场地位 */
#kc-kes .kc-mgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
#kc-kes .kc-mcard{background:#fff;border-radius:14px;padding:24px 16px;text-align:center;border:1px solid #E2E8F0;transition:all .3s}
#kc-kes .kc-mcard:hover{transform:translateY(-3px);box-shadow:0 8px 30px rgba(0,0,0,.07)}
#kc-kes .kc-mnum{font-size:30px;font-weight:800;color:#1A56DB;margin-bottom:2px}
#kc-kes .kc-mcard h4{font-size:14px;font-weight:700;color:#0F172A;margin-bottom:4px}
#kc-kes .kc-mcard p{font-size:12px;color:#64748B}

/* 产品体系 */
#kc-kes .kc-pgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
#kc-kes .kc-pcard{background:#fff;border-radius:14px;padding:24px;border:1px solid #E2E8F0;transition:all .3s;display:flex;gap:20px;align-items:flex-start}
#kc-kes .kc-pcard:hover{transform:translateY(-3px);box-shadow:0 8px 30px rgba(0,0,0,.07)}
#kc-kes .kc-picon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:24px;color:#fff;flex-shrink:0}
#kc-kes .kc-picon.c1{background:linear-gradient(135deg,#1A56DB,#1545B0)}
#kc-kes .kc-picon.c2{background:linear-gradient(135deg,#059669,#047857)}
#kc-kes .kc-picon.c3{background:linear-gradient(135deg,#D97706,#B45309)}
#kc-kes .kc-picon.c4{background:linear-gradient(135deg,#7C3AED,#6D28D9)}
#kc-kes .kc-pcard h4{font-size:15px;font-weight:700;color:#0F172A;margin-bottom:4px}
#kc-kes .kc-psub{font-size:11px;color:#1A56DB;font-weight:600;margin-bottom:2px}
#kc-kes .kc-pcard>p{font-size:13px;color:#64748B;line-height:1.6}
#kc-kes .kc-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}
#kc-kes .kc-tag{padding:2px 8px;background:#F1F5F9;border-radius:100px;font-size:11px;color:#334155}

/* 五大一体化 */
#kc-kes .kc-sec-integ{padding:60px 0;background:#0F172A;color:#fff}
#kc-kes .kc-sec-integ .kc-title{color:#fff}
#kc-kes .kc-sec-integ .kc-desc{color:rgba(255,255,255,.55)}
#kc-kes .kc-igrid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
#kc-kes .kc-icard{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:24px 14px;text-align:center;transition:all .3s}
#kc-kes .kc-icard:hover{background:rgba(255,255,255,.08);transform:translateY(-3px)}
#kc-kes .kc-icard-icon{width:44px;height:44px;margin:0 auto 10px;background:linear-gradient(135deg,#059669,#047857);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px}
#kc-kes .kc-icard h4{font-size:13px;font-weight:700;color:#fff;margin-bottom:4px}
#kc-kes .kc-icard p{font-size:11px;color:rgba(255,255,255,.5);line-height:1.5}

/* Tab兼容 */
#kc-kes .kc-tabs{display:flex;justify-content:center;gap:6px;margin-bottom:30px;flex-wrap:wrap}
#kc-kes .kc-tab{padding:8px 20px;background:#fff;border:1px solid #E2E8F0;border-radius:100px;color:#334155;font-size:13px;font-weight:500;cursor:pointer;transition:all .25s;font-family:inherit}
#kc-kes .kc-tab:hover,#kc-kes .kc-tab.kc-on{background:#1A56DB;border-color:#1A56DB;color:#fff}
#kc-kes .kc-panel{display:none}
#kc-kes .kc-panel.kc-on{display:block;animation:kc-up .35s ease}
#kc-kes .kc-cbar{margin-bottom:16px}
#kc-kes .kc-cbar-label{display:flex;justify-content:space-between;font-size:12px;font-weight:600;margin-bottom:5px}
#kc-kes .kc-cbar-label span:last-child{color:#1A56DB}
#kc-kes .kc-cbar-track{height:7px;background:#E2E8F0;border-radius:100px;overflow:hidden}
#kc-kes .kc-cbar-fill{height:100%;border-radius:100px;background:linear-gradient(90deg,#059669,#1A56DB);transition:width .8s ease}
#kc-kes .kc-clist{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:6px}
#kc-kes .kc-clist li{display:flex;align-items:center;gap:6px;font-size:12px;color:#334155}
#kc-kes .kc-clist li::before{content:'';width:4px;height:4px;background:#059669;border-radius:50%;flex-shrink:0}

/* 迁移 */
#kc-kes .kc-mig{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
#kc-kes .kc-steps{display:flex;flex-direction:column;gap:10px}
#kc-kes .kc-ms{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#EBF0FF;border-radius:10px;font-size:13px;font-weight:500;color:#0F172A}
#kc-kes .kc-ms-n{width:28px;height:28px;background:#1A56DB;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;color:#fff;flex-shrink:0}
#kc-kes .kc-mfgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
#kc-kes .kc-mf{padding:12px;background:#ECFDF5;border-radius:8px;border-left:3px solid #059669}
#kc-kes .kc-mf h5{font-size:12px;font-weight:700;color:#065F46;margin-bottom:2px}
#kc-kes .kc-mf p{font-size:11px;color:#065F46}

/* 案例 */
#kc-kes .kc-sec-cases{padding:60px 0;background:#0F172A;color:#fff}
#kc-kes .kc-sec-cases .kc-title{color:#fff}
#kc-kes .kc-sec-cases .kc-desc{color:rgba(255,255,255,.55)}
#kc-kes .kc-cgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
#kc-kes .kc-ccard{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:20px;transition:all .3s}
#kc-kes .kc-ccard:hover{background:rgba(255,255,255,.06);transform:translateY(-3px)}
#kc-kes .kc-ccard-ind{display:inline-block;padding:3px 8px;background:rgba(5,150,105,.15);color:#34D399;font-size:10px;font-weight:600;border-radius:100px;margin-bottom:8px}
#kc-kes .kc-ccard h4{font-size:16px;font-weight:700;color:#fff;margin-bottom:4px}
#kc-kes .kc-ccard>p{font-size:12px;color:rgba(255,255,255,.5);margin-bottom:12px}
#kc-kes .kc-cstats{display:grid;grid-template-columns:1fr 1fr;gap:8px}
#kc-kes .kc-cst{padding:8px;background:rgba(255,255,255,.04);border-radius:6px;text-align:center}
#kc-kes .kc-csv{font-size:16px;font-weight:800;color:#34D399}
#kc-kes .kc-csv small{font-size:10px;font-weight:500}
#kc-kes .kc-csl{font-size:10px;color:rgba(255,255,255,.4);margin-top:1px}

/* CTA */
#kc-kes .kc-cta{padding:60px 0;background:linear-gradient(135deg,#0F172A 0%,#1E3A5F 50%,#1A56DB 100%);text-align:center}
#kc-kes .kc-cta h2{font-size:clamp(22px,3vw,36px);font-weight:800;color:#fff;margin-bottom:12px}
#kc-kes .kc-cta>p{font-size:15px;color:rgba(255,255,255,.6);margin-bottom:28px;max-width:560px;margin-left:auto;margin-right:auto}
#kc-kes .kc-cta-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
#kc-kes .kc-btn-w{padding:12px 32px;background:#fff;color:#1A56DB;font-weight:700;font-size:14px;border-radius:100px;border:none;cursor:pointer;transition:all .3s;font-family:inherit}
#kc-kes .kc-btn-w:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(255,255,255,.15)}
#kc-kes .kc-btn-o{padding:12px 32px;background:transparent;color:#fff;font-weight:600;font-size:14px;border-radius:100px;border:1.5px solid rgba(255,255,255,.25);cursor:pointer;transition:all .3s;font-family:inherit}
#kc-kes .kc-btn-o:hover{background:rgba(255,255,255,.1)}

/* Footer */
#kc-kes .kc-footer{padding:30px 0 16px;background:#0F172A;color:rgba(255,255,255,.4);text-align:center;font-size:12px}

/* 响应式 */
@media(max-width:1024px){
#kc-kes .kc-hero .kc-c{grid-template-columns:1fr}
#kc-kes .kc-hero{text-align:center}
#kc-kes .kc-hero-sub{margin:0 auto 28px}
#kc-kes .kc-mgrid{grid-template-columns:repeat(2,1fr)}
#kc-kes .kc-pgrid{grid-template-columns:1fr}
#kc-kes .kc-igrid{grid-template-columns:repeat(3,1fr)}
#kc-kes .kc-mig{grid-template-columns:1fr}
#kc-kes .kc-cgrid{grid-template-columns:1fr;max-width:500px;margin:0 auto}
}
@media(max-width:576px){
#kc-kes .kc-mgrid,#kc-kes .kc-igrid{grid-template-columns:1fr}
#kc-kes .kc-clist{grid-template-columns:1fr}
#kc-kes .kc-mfgrid{grid-template-columns:1fr}
}

#sf-mss{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Microsoft YaHei',sans-serif;color:#334155;line-height:1.7;box-sizing:border-box}
#sf-mss *,#sf-mss *::before,#sf-mss *::after{box-sizing:border-box;margin:0;padding:0}
#sf-mss a{text-decoration:none;color:inherit}
#sf-mss img{max-width:100%;display:block}
@keyframes sf-up{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
#sf-mss .sc{max-width:1160px;margin:0 auto;padding:0 24px}
#sf-mss .sl{display:inline-block;font-size:12px;font-weight:600;color:#E53E3E;background:#FFF5F5;padding:5px 14px;border-radius:100px;letter-spacing:.5px;margin-bottom:14px}
#sf-mss .st{font-size:clamp(22px,3vw,34px);font-weight:700;color:#1A202C;line-height:1.3;margin-bottom:12px}
#sf-mss .sd{font-size:15px;color:#718096;max-width:640px;line-height:1.7}
#sf-mss .sh{text-align:center;margin-bottom:40px}
#sf-mss .sh .sd{margin:0 auto}
#sf-mss .sa{opacity:0;transform:translateY(24px);transition:all .5s ease}
#sf-mss .sa.sv{opacity:1;transform:translateY(0)}

/* Hero */
#sf-mss .hero{padding:70px 0 60px;background:linear-gradient(135deg,#1A202C 0%,#2D3748 50%,#C53030 100%);overflow:hidden}
#sf-mss .hero .sc{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center}
#sf-mss .hero h2{font-size:clamp(26px,3.5vw,42px);font-weight:800;color:#fff;line-height:1.15;margin-bottom:14px}
#sf-mss .hero h2 em{font-style:normal;color:#FC8181}
#sf-mss .hero-sub{font-size:15px;color:rgba(255,255,255,.6);line-height:1.7;margin-bottom:28px}
#sf-mss .hero-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:28px;backdrop-filter:blur(12px)}
#sf-mss .hstats{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#sf-mss .hst{padding:14px;background:rgba(255,255,255,.04);border-radius:10px;text-align:center}
#sf-mss .hsv{font-size:26px;font-weight:800;color:#fff}
#sf-mss .hsv small{font-size:12px;font-weight:500;color:#FC8181}
#sf-mss .hsl{font-size:11px;color:rgba(255,255,255,.45);margin-top:2px}

/* 通用 */
#sf-mss .sw{padding:60px 0;background:#F7FAFC}
#sf-mss .sbg{padding:60px 0;background:#1A202C;color:#fff}
#sf-mss .sbg .st{color:#fff}
#sf-mss .sbg .sd{color:rgba(255,255,255,.5)}
#sf-mss .bn{padding:10px 28px;background:#E53E3E;color:#fff;font-weight:700;font-size:14px;border-radius:100px;border:none;cursor:pointer;transition:all .3s;font-family:inherit}
#sf-mss .bn:hover{background:#C53030;transform:translateY(-2px);box-shadow:0 8px 24px rgba(229,62,62,.2)}
#sf-mss .bo{padding:10px 28px;background:transparent;color:#fff;font-weight:600;font-size:14px;border-radius:100px;border:1.5px solid rgba(255,255,255,.2);cursor:pointer;transition:all .3s;font-family:inherit}
#sf-mss .bo:hover{background:rgba(255,255,255,.08)}
#sf-mss .btns{display:flex;gap:12px;flex-wrap:wrap}

/* 机制 */
#sf-mss .mech{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:20px}
#sf-mss .mcard{background:#fff;border-radius:14px;padding:24px;border:1px solid #E2E8F0;text-align:center;transition:all .3s}
#sf-mss .mcard:hover{transform:translateY(-3px);box-shadow:0 8px 30px rgba(0,0,0,.06)}
#sf-mss .mcard-icon{width:48px;height:48px;margin:0 auto 10px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:22px;color:#fff}
#sf-mss .mcard-icon.c1{background:linear-gradient(135deg,#E53E3E,#C53030)}
#sf-mss .mcard-icon.c2{background:linear-gradient(135deg,#3182CE,#2B6CB0)}
#sf-mss .mcard-icon.c3{background:linear-gradient(135deg,#38A169,#2F855A)}
#sf-mss .mcard h4{font-size:15px;font-weight:700;color:#1A202C;margin-bottom:4px}
#sf-mss .mcard p{font-size:12px;color:#718096;line-height:1.5}

/* SLA */
#sf-mss .sla-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
#sf-mss .sla-card{background:#fff;border-radius:14px;padding:24px;border:1px solid #E2E8F0;transition:all .3s}
#sf-mss .sla-card:hover{box-shadow:0 8px 30px rgba(0,0,0,.06)}
#sf-mss .sla-card h4{font-size:16px;font-weight:700;color:#1A202C;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid #E53E3E}
#sf-mss .sla-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #F7FAFC;font-size:13px}
#sf-mss .sla-row:last-child{border-bottom:none}
#sf-mss .sla-row .val{color:#E53E3E;font-weight:700;font-size:14px}

/* 场景 */
#sf-mss .scn-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
#sf-mss .scn{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:24px;transition:all .3s}
#sf-mss .scn:hover{background:rgba(255,255,255,.06);transform:translateY(-3px)}
#sf-mss .scn-n{display:inline-block;width:32px;height:32px;background:linear-gradient(135deg,#E53E3E,#C53030);border-radius:8px;text-align:center;line-height:32px;color:#fff;font-weight:800;font-size:14px;margin-bottom:12px}
#sf-mss .scn h4{font-size:15px;font-weight:700;color:#fff;margin-bottom:6px}
#sf-mss .scn p{font-size:12px;color:rgba(255,255,255,.5);line-height:1.6}

/* 组件 */
#sf-mss .cmp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
#sf-mss .cmp{background:#fff;border-radius:14px;padding:24px;border:1px solid #E2E8F0;transition:all .3s}
#sf-mss .cmp:hover{transform:translateY(-3px);box-shadow:0 8px 30px rgba(0,0,0,.06)}
#sf-mss .cmp-n{font-size:16px;font-weight:800;color:#E53E3E;margin-bottom:2px}
#sf-mss .cmp-h{font-size:13px;font-weight:600;color:#3182CE;margin-bottom:6px}
#sf-mss .cmp p{font-size:12px;color:#718096;line-height:1.6}

/* 对比 */
#sf-mss .cmp-tbl{width:100%;border-collapse:collapse;font-size:13px}
#sf-mss .cmp-tbl th{padding:12px 16px;text-align:left;font-weight:700;font-size:12px;color:#fff;background:#2D3748}
#sf-mss .cmp-tbl th:nth-child(3){background:#E53E3E}
#sf-mss .cmp-tbl td{padding:10px 16px;border-bottom:1px solid #E2E8F0}
#sf-mss .cmp-tbl tr:hover td{background:#FFF5F5}
#sf-mss .cmp-tbl td:nth-child(3){font-weight:600;color:#E53E3E;background:#FFF5F5}

/* 案例 */
#sf-mss .cs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
#sf-mss .cs{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:24px;transition:all .3s}
#sf-mss .cs:hover{background:rgba(255,255,255,.06);transform:translateY(-3px)}
#sf-mss .cs-tag{display:inline-block;padding:3px 8px;background:rgba(229,62,62,.15);color:#FC8181;font-size:10px;font-weight:600;border-radius:100px;margin-bottom:8px}
#sf-mss .cs h4{font-size:16px;font-weight:700;color:#fff;margin-bottom:6px}
#sf-mss .cs>p{font-size:12px;color:rgba(255,255,255,.5);margin-bottom:12px;line-height:1.6}
#sf-mss .cs-data{display:grid;grid-template-columns:1fr 1fr;gap:8px}
#sf-mss .cs-d{padding:8px;background:rgba(255,255,255,.04);border-radius:6px;text-align:center}
#sf-mss .cs-dv{font-size:18px;font-weight:800;color:#FC8181}
#sf-mss .cs-dv small{font-size:10px;font-weight:500}
#sf-mss .cs-dl{font-size:10px;color:rgba(255,255,255,.4);margin-top:1px}

/* CTA */
#sf-mss .cta{padding:60px 0;background:linear-gradient(135deg,#1A202C 0%,#a9bddf 50%,#C53030 100%);text-align:center}
#sf-mss .cta h2{font-size:clamp(22px,3vw,36px);font-weight:800;color:#fff;margin-bottom:12px}
#sf-mss .cta>p{font-size:15px;color:rgba(255,255,255,.6);margin-bottom:28px;max-width:560px;margin-left:auto;margin-right:auto}
#sf-mss .cta .btns{justify-content:center}

/* */

/* 响应式 */
@media(max-width:1024px){
#sf-mss .hero .sc{grid-template-columns:1fr}
#sf-mss .hero{text-align:center}
#sf-mss .hero-sub{margin:0 auto 28px}
#sf-mss .mech,#sf-mss .scn-grid,#sf-mss .cmp-grid,#sf-mss .cs-grid{grid-template-columns:1fr 1fr}
#sf-mss .sla-grid{grid-template-columns:1fr}
}
@media(max-width:576px){
#sf-mss .mech,#sf-mss .scn-grid,#sf-mss .cmp-grid,#sf-mss .cs-grid,#sf-mss .sla-grid{grid-template-columns:1fr}
#sf-mss .hstats{grid-template-columns:1fr}
}


/* ========== 蔷薇灵动微隔离 - 样式隔离CSS ========== */
/* 所有选择器限定在 #qw-micro 下，不影响宿主页面 */

#qw-micro {
  --qw-p: #1A56DB;
  --qw-pd: #1E3A8A;
  --qw-pg: #EFF6FF;
  --qw-a: #059669;
  --qw-d: #DC2626;
  --qw-t: #1E293B;
  --qw-s: #64748B;
  --qw-bg: #FFFFFF;
  --qw-bg2: #F8FAFC;
  --qw-bg3: #0F172A;
  --qw-r: 12px;
  --qw-sh: 0 4px 24px rgba(0,0,0,0.08);
  font-family: -apple-system, "Microsoft YaHei", sans-serif;
  color: var(--qw-t);
  line-height: 1.6;
  max-width: 1200px;
  margin: 0 auto;
  overflow: hidden;
}

/* Hero */
.qw-hero {
  background: linear-gradient(135deg, var(--qw-pd) 0%, var(--qw-p) 50%, #2563EB 100%);
  padding: 150px 0px 60px;
  text-align: center;
  color: #fff;
  position: relative;
}
.qw-hero::before {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: radial-gradient(circle at 30% 50%, rgba(255,255,255,0.05) 0%, transparent 50%);
  pointer-events: none;
}
.qw-hero h1 { font-size: 36px; font-weight: 700; margin: 0 0 12px; letter-spacing: 1px; }
.qw-hero .qw-sub { font-size: 18px; opacity: 0.9; margin: 0 0 40px; }
.qw-hero .qw-tag {
  display: inline-block;
  background: rgba(255,255,255,0.15);
  border: 1px solid rgba(255,255,255,0.3);
  padding: 6px 20px;
  border-radius: 20px;
  font-size: 14px;
  margin-bottom: 40px;
}
.qw-stats {
  display: flex;
  justify-content: center;
  gap: 40px;
  flex-wrap: wrap;
}
.qw-stats .qw-stat { text-align: center; min-width: 120px; }
.qw-stats .qw-num { font-size: 40px; font-weight: 700; display: block; line-height: 1.2; }
.qw-stats .qw-label { font-size: 13px; opacity: 0.85; margin-top: 4px; display: block; }

/* Section */
.qw-sec { padding: 60px 40px; }
.qw-sec-title { font-size: 28px; font-weight: 700; text-align: center; margin: 0 0 12px; color: var(--qw-t); }
.qw-sec-desc { font-size: 15px; color: var(--qw-s); text-align: center; margin: 0 0 40px; max-width: 700px; margin-left: auto; margin-right: auto; }

/* 威胁数据 */
.qw-threat { background: var(--qw-bg2); }
.qw-threat-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.qw-threat-card {
  background: #fff; border-radius: var(--qw-r); padding: 28px 20px;
  text-align: center; box-shadow: var(--qw-sh); border-left: 4px solid var(--qw-d); transition: transform 0.2s;
}
.qw-threat-card:hover { transform: translateY(-4px); }
.qw-threat-card .qw-big { font-size: 36px; font-weight: 700; color: var(--qw-d); display: block; }
.qw-threat-card .qw-txt { font-size: 13px; color: var(--qw-s); margin-top: 6px; display: block; }

/* 黄金三角 */
.qw-tri { background: #fff; }
.qw-tri-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; position: relative; }
.qw-tri-grid::before {
  content: '>'; position: absolute; top: 50%; left: 33%;
  transform: translate(-50%, -50%); font-size: 24px; color: var(--qw-p); font-weight: 700;
}
.qw-tri-grid::after {
  content: '>'; position: absolute; top: 50%; left: 66%;
  transform: translate(-50%, -50%); font-size: 24px; color: var(--qw-p); font-weight: 700;
}
.qw-tri-card {
  background: var(--qw-pg); border-radius: var(--qw-r); padding: 32px 24px;
  text-align: center; border: 2px solid #DBEAFE; transition: border-color 0.2s;
}
.qw-tri-card:hover { border-color: var(--qw-p); }
.qw-tri-card .qw-icon {
  width: 56px; height: 56px; border-radius: 50%; display: flex;
  align-items: center; justify-content: center; margin: 0 auto 16px;
  font-size: 24px; font-weight: 700; color: #fff;
}
.qw-tri-card:nth-child(1) .qw-icon { background: #3B82F6; }
.qw-tri-card:nth-child(2) .qw-icon { background: var(--qw-a); }
.qw-tri-card:nth-child(3) .qw-icon { background: #F59E0B; }
.qw-tri-card h3 { font-size: 18px; font-weight: 700; margin: 0 0 8px; color: var(--qw-p); }
.qw-tri-card p { font-size: 13px; color: var(--qw-s); margin: 0; }
.qw-tri-note {
  text-align: center; margin-top: 20px; font-size: 14px; color: var(--qw-d);
  font-weight: 600; background: #FEF2F2; padding: 12px 24px; border-radius: 8px;
}

/* 产品能力 */
.qw-cap { background: var(--qw-bg2); }
.qw-cap-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.qw-cap-card {
  background: #fff; border-radius: var(--qw-r); padding: 28px 24px;
  box-shadow: var(--qw-sh); border-top: 3px solid var(--qw-p); transition: transform 0.2s;
}
.qw-cap-card:hover { transform: translateY(-4px); }
.qw-cap-card h3 { font-size: 16px; font-weight: 700; margin: 0 0 8px; color: var(--qw-p); }
.qw-cap-card .qw-cap-desc { font-size: 13px; color: var(--qw-s); margin: 0; line-height: 1.5; }

/* 核心优势 */
.qw-adv { background: var(--qw-bg3); color: #fff; }
.qw-adv .qw-sec-title, .qw-adv .qw-sec-desc { color: #fff; }
.qw-adv .qw-sec-desc { opacity: 0.7; }
.qw-adv-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.qw-adv-card {
  background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.12);
  border-radius: var(--qw-r); padding: 28px 20px; text-align: center; transition: background 0.2s;
}
.qw-adv-card:hover { background: rgba(255,255,255,0.12); }
.qw-adv-card h3 { font-size: 16px; font-weight: 700; margin: 0 0 8px; color: #60A5FA; }
.qw-adv-card p { font-size: 13px; opacity: 0.75; margin: 0; }

/* 客户案例 */
.qw-case { background: #fff; }
.qw-case-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; }
.qw-case-card {
  background: var(--qw-bg2); border-radius: var(--qw-r); padding: 32px 28px; border-left: 4px solid var(--qw-p);
}
.qw-case-card h3 { font-size: 18px; font-weight: 700; margin: 0 0 6px; color: var(--qw-p); }
.qw-case-card .qw-case-tag {
  display: inline-block; background: var(--qw-pg); color: var(--qw-p);
  font-size: 12px; padding: 2px 10px; border-radius: 10px; margin-bottom: 12px; font-weight: 600;
}
.qw-case-card p { font-size: 13px; color: var(--qw-s); margin: 0 0 10px; line-height: 1.6; }
.qw-case-card p:last-child { margin-bottom: 0; }
.qw-case-card strong { color: var(--qw-t); }

/* CTA */
.qw-cta {
  background: linear-gradient(135deg, var(--qw-pd), var(--qw-p));
  padding: 60px 40px; text-align: center; color: #fff;
}
.qw-cta h2 { font-size: 24px; font-weight: 700; margin: 0 0 16px; }
.qw-cta p { font-size: 15px; opacity: 0.85; margin: 0 0 28px; }
.qw-cta .qw-btn {
  display: inline-block; background: #fff; color: var(--qw-p);
  padding: 12px 36px; border-radius: 8px; font-size: 15px; font-weight: 600;
  text-decoration: none; transition: transform 0.2s, box-shadow 0.2s;
}
.qw-cta .qw-btn:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,0.2); }

/* Footer
.qw-footer {
  background: var(--qw-bg3); color: rgba(255,255,255,0.5); padding: 24px 40px; text-align: center; font-size: 13px;
}
.qw-footer a { color: rgba(255,255,255,0.7); text-decoration: none; } */

/* 滚动动画 */
@keyframes qwFadeIn {
  from { opacity: 0; transform: translateY(24px); }
  to { opacity: 1; transform: translateY(0); }
}
.qw-anim { opacity: 0; }
.qw-anim.qw-show { animation: qwFadeIn 0.5s ease forwards; }

/* 响应式 */
@media (max-width: 900px) {
  .qw-threat-grid, .qw-adv-grid { grid-template-columns: repeat(2, 1fr); }
  .qw-tri-grid { grid-template-columns: 1fr; }
  .qw-tri-grid::before, .qw-tri-grid::after { display: none; }
  .qw-cap-grid { grid-template-columns: repeat(2, 1fr); }
  .qw-case-grid { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
  .qw-hero { padding: 48px 20px 40px; }
  .qw-hero h1 { font-size: 24px; }
  .qw-stats { gap: 20px; }
  .qw-stats .qw-num { font-size: 28px; }
  .qw-sec { padding: 40px 20px; }
  .qw-sec-title { font-size: 22px; }
  .qw-threat-grid, .qw-cap-grid, .qw-adv-grid { grid-template-columns: 1fr; }
}

/* ========== 深信服超融合 VMware替代 - 样式隔离CSS ========== */
/* 所有选择器限定在 #sf-hci 下，不影响宿主页面 */

#sf-hci {
  --sh-p: #E62222;
  --sh-pd: #B91C1C;
  --sh-b: #1E3A8A;
  --sh-t: #1E293B;
  --sh-s: #64748B;
  --sh-bg: #FFFFFF;
  --sh-bg2: #F8FAFC;
  --sh-bg3: #0F172A;
  --sh-r: 12px;
  --sh-sh: 0 4px 24px rgba(0,0,0,0.08);
  font-family: -apple-system, "Microsoft YaHei", sans-serif;
  color: var(--sh-t);
  line-height: 1.6;
  max-width: 1200px;
  margin: 0 auto;
  overflow: hidden;
}

/* Hero */
.sh-hero {
  background: linear-gradient(135deg, #0F172A 0%, #1E293B 50%, #1E3A8A 100%);
  padding: 180px 40px 60px;
  text-align: center;
  color: #fff;
  position: relative;
  overflow: hidden;
}
.sh-hero::before {
  content: '';
  position: absolute;
  top: -100px; right: -100px;
  width: 400px; height: 400px;
  background: radial-gradient(circle, rgba(230,34,34,0.15) 0%, transparent 70%);
  pointer-events: none;
}
.sh-hero-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(230,34,34,0.2);
  border: 1px solid rgba(230,34,34,0.4);
  padding: 6px 18px;
  border-radius: 20px;
  font-size: 13px;
  color: #FCA5A5;
  margin-bottom: 24px;
}
.sh-hero h1 { font-size: 38px; font-weight: 700; margin: 0 0 16px; line-height: 1.3; }
.sh-hero h1 span { color: #FCA5A5; }
.sh-hero .sh-sub { font-size: 17px; opacity: 0.8; margin: 0 0 48px; max-width: 700px; margin-left: auto; margin-right: auto; }
.sh-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  background: rgba(255,255,255,0.1);
  border-radius: var(--sh-r);
  overflow: hidden;
  max-width: 800px;
  margin: 0 auto;
}
.sh-stat {
  background: rgba(255,255,255,0.06);
  padding: 24px 16px;
  text-align: center;
}
.sh-stat .sh-num { font-size: 36px; font-weight: 700; color: #FCA5A5; display: block; }
.sh-stat .sh-label { font-size: 12px; opacity: 0.7; margin-top: 4px; display: block; }

/* Section */
.sh-sec { padding: 60px 40px; }
.sh-title { font-size: 28px; font-weight: 700; text-align: center; margin: 0 0 10px; color: var(--sh-t); }
.sh-desc { font-size: 15px; color: var(--sh-s); text-align: center; margin: 0 0 40px; }

/* 市场背景 */
.sh-mkt { background: var(--sh-bg2); }
.sh-mkt-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.sh-mkt-card {
  background: #fff;
  border-radius: var(--sh-r);
  padding: 28px 24px;
  box-shadow: var(--sh-sh);
  border-top: 3px solid var(--sh-p);
  transition: transform 0.2s;
}
.sh-mkt-card:hover { transform: translateY(-4px); }
.sh-mkt-card h3 { font-size: 16px; font-weight: 700; color: var(--sh-p); margin: 0 0 10px; }
.sh-mkt-card p { font-size: 13px; color: var(--sh-s); margin: 0; line-height: 1.6; }
.sh-mkt-card .sh-data {
  font-size: 28px; font-weight: 700; color: var(--sh-p);
  display: block; margin-top: 12px;
}

/* 三大方案 */
.sh-plan { background: #fff; }
.sh-plan-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.sh-plan-card {
  border-radius: var(--sh-r);
  padding: 32px 24px;
  border: 2px solid #E2E8F0;
  transition: border-color 0.2s, transform 0.2s;
  position: relative;
}
.sh-plan-card:hover { border-color: var(--sh-p); transform: translateY(-4px); }
.sh-plan-card .sh-plan-num {
  width: 40px; height: 40px;
  background: var(--sh-p);
  color: #fff;
  border-radius: 8px;
  display: flex; align-items: center; justify-content: center;
  font-size: 18px; font-weight: 700;
  margin-bottom: 16px;
}
.sh-plan-card h3 { font-size: 18px; font-weight: 700; margin: 0 0 6px; color: var(--sh-t); }
.sh-plan-card .sh-plan-sub { font-size: 13px; color: var(--sh-p); font-weight: 600; margin-bottom: 12px; }
.sh-plan-card p { font-size: 13px; color: var(--sh-s); margin: 0; line-height: 1.6; }

/* 核心能力（Tab） */
.sh-cap { background: var(--sh-bg2); }
.sh-tabs {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 28px;
  justify-content: center;
}
.sh-tab {
  padding: 8px 20px;
  border-radius: 6px;
  border: 1px solid #CBD5E1;
  background: #fff;
  color: var(--sh-s);
  font-size: 14px;
  cursor: pointer;
  transition: all 0.2s;
  font-weight: 500;
}
.sh-tab.sh-active {
  background: var(--sh-p);
  border-color: var(--sh-p);
  color: #fff;
}
.sh-tab-content { display: none; }
.sh-tab-content.sh-show { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.sh-cap-card {
  background: #fff;
  border-radius: var(--sh-r);
  padding: 24px;
  box-shadow: var(--sh-sh);
  border-left: 4px solid var(--sh-p);
}
.sh-cap-card h4 { font-size: 15px; font-weight: 700; margin: 0 0 8px; color: var(--sh-t); }
.sh-cap-card p { font-size: 13px; color: var(--sh-s); margin: 0; line-height: 1.5; }

/* 性能数据 */
.sh-perf { background: var(--sh-bg3); color: #fff; }
.sh-perf .sh-title, .sh-perf .sh-desc { color: #fff; }
.sh-perf .sh-desc { opacity: 0.7; }
.sh-perf-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.sh-perf-card {
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: var(--sh-r);
  padding: 28px 20px;
  text-align: center;
  transition: background 0.2s;
}
.sh-perf-card:hover { background: rgba(255,255,255,0.12); }
.sh-perf-card .sh-perf-num { font-size: 36px; font-weight: 700; color: #FCA5A5; display: block; }
.sh-perf-card .sh-perf-label { font-size: 12px; opacity: 0.75; margin-top: 6px; display: block; }
.sh-perf-card .sh-perf-note { font-size: 11px; opacity: 0.5; margin-top: 4px; display: block; }

/* 兼容性 */
.sh-compat { background: #fff; }
.sh-compat-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.sh-compat-card {
  background: var(--sh-bg2);
  border-radius: var(--sh-r);
  padding: 24px 20px;
  text-align: center;
  border: 1px solid #E2E8F0;
}
.sh-compat-card .sh-compat-num { font-size: 32px; font-weight: 700; color: var(--sh-b); display: block; }
.sh-compat-card .sh-compat-txt { font-size: 13px; color: var(--sh-s); margin-top: 6px; display: block; }

/* 客户案例 */
.sh-case { background: var(--sh-bg2); }
.sh-case-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; }
.sh-case-card {
  background: #fff;
  border-radius: var(--sh-r);
  padding: 32px 28px;
  box-shadow: var(--sh-sh);
  border-left: 4px solid var(--sh-p);
}
.sh-case-card h3 { font-size: 18px; font-weight: 700; margin: 0 0 6px; color: var(--sh-t); }
.sh-case-card .sh-case-tag {
  display: inline-block;
  background: #FEF2F2;
  color: var(--sh-p);
  font-size: 12px;
  padding: 2px 10px;
  border-radius: 10px;
  margin-bottom: 12px;
  font-weight: 600;
}
.sh-case-card p { font-size: 13px; color: var(--sh-s); margin: 0 0 10px; line-height: 1.6; }
.sh-case-card p:last-child { margin-bottom: 0; }
.sh-case-card strong { color: var(--sh-t); }

/* CTA */
.sh-cta {
  background: linear-gradient(135deg, var(--sh-pd), var(--sh-p));
  padding: 60px 40px;
  text-align: center;
  color: #fff;
}
.sh-cta h2 { font-size: 26px; font-weight: 700; margin: 0 0 16px; }
.sh-cta p { font-size: 15px; opacity: 0.85; margin: 0 0 28px; }
.sh-cta .sh-btn {
  display: inline-block;
  background: #fff;
  color: var(--sh-p);
  padding: 12px 36px;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  transition: transform 0.2s, box-shadow 0.2s;
}
.sh-cta .sh-btn:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,0.2); }

/* Footer */
.sh-footer {
  background: var(--sh-bg3);
  color: rgba(255,255,255,0.5);
  padding: 24px 40px;
  text-align: center;
  font-size: 13px;
}
.sh-footer a { color: rgba(255,255,255,0.7); text-decoration: none; }

/* 滚动动画 */
@keyframes shFadeIn {
  from { opacity: 0; transform: translateY(24px); }
  to { opacity: 1; transform: translateY(0); }
}
.sh-anim { opacity: 0; }
.sh-anim.sh-show { animation: shFadeIn 0.5s ease forwards; }

/* 响应式 */
@media (max-width: 900px) {
  .sh-stats { grid-template-columns: repeat(2, 1fr); }
  .sh-mkt-grid, .sh-plan-grid { grid-template-columns: repeat(2, 1fr); }
  .sh-perf-grid, .sh-compat-grid { grid-template-columns: repeat(2, 1fr); }
  .sh-case-grid { grid-template-columns: 1fr; }
  .sh-tab-content.sh-show { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
  .sh-hero { padding: 48px 20px 40px; }
  .sh-hero h1 { font-size: 24px; }
  .sh-sec { padding: 40px 20px; }
  .sh-title { font-size: 22px; }
  .sh-stats { grid-template-columns: repeat(2, 1fr); }
  .sh-mkt-grid, .sh-plan-grid, .sh-perf-grid, .sh-compat-grid { grid-template-columns: 1fr; }
  .sh-tab-content.sh-show { grid-template-columns: 1fr; }
}

/* ========== 爱数文档云及备份解决方案 - 样式隔离CSS ========== */
/* 所有选择器限定在 #as-sol 下，不影响宿主页面 */

#as-sol {
  --as-p: #0066CC;
  --as-pd: #0052A3;
  --as-t: #1A1A2E;
  --as-s: #6B7280;
  --as-bg: #FFFFFF;
  --as-bg2: #F3F6FB;
  --as-bg3: #0F1729;
  --as-a: #FF6B35;
  --as-r: 12px;
  --as-sh: 0 4px 20px rgba(0,0,0,0.07);
  font-family: -apple-system, "Microsoft YaHei", sans-serif;
  color: var(--as-t);
  line-height: 1.6;
  max-width: 1200px;
  margin: 0 auto;
  overflow: hidden;
}

/* Hero */
.as-hero {
  background: linear-gradient(135deg, #0F1729 0%, #1A2744 50%, #003D82 100%);
  padding: 180px 40px 60px;
  text-align: center;
  color: #fff;
  position: relative;
  overflow: hidden;
}
.as-hero::before {
  content: '';
  position: absolute;
  top: -80px; left: -80px;
  width: 350px; height: 350px;
  background: radial-gradient(circle, rgba(255,107,53,0.12) 0%, transparent 70%);
  pointer-events: none;
}
.as-hero::after {
  content: '';
  position: absolute;
  bottom: -80px; right: -80px;
  width: 300px; height: 300px;
  background: radial-gradient(circle, rgba(0,102,204,0.15) 0%, transparent 70%);
  pointer-events: none;
}
.as-hero-badge {
  display: inline-block;
  background: rgba(255,107,53,0.15);
  border: 1px solid rgba(255,107,53,0.4);
  padding: 6px 18px;
  border-radius: 20px;
  font-size: 13px;
  color: #FFB088;
  margin-bottom: 24px;
}
.as-hero h1 { font-size: 36px; font-weight: 700; margin: 0 0 16px; line-height: 1.3; }
.as-hero h1 span { color: #7CB9F5; }
.as-hero .as-sub { font-size: 16px; opacity: 0.8; margin: 0 0 48px; max-width: 720px; margin-left: auto; margin-right: auto; }
.as-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  background: rgba(255,255,255,0.1);
  border-radius: var(--as-r);
  overflow: hidden;
  max-width: 800px;
  margin: 0 auto;
}
.as-stat {
  background: rgba(255,255,255,0.05);
  padding: 24px 16px;
  text-align: center;
}
.as-stat .as-num { font-size: 34px; font-weight: 700; color: #7CB9F5; display: block; }
.as-stat .as-label { font-size: 12px; opacity: 0.7; margin-top: 4px; display: block; }

/* Section */
.as-sec { padding: 60px 40px; }
.as-title { font-size: 28px; font-weight: 700; text-align: center; margin: 0 0 10px; color: var(--as-t); }
.as-desc { font-size: 15px; color: var(--as-s); text-align: center; margin: 0 0 40px; }

/* 数据挑战 */
.as-challenge { background: var(--as-bg2); }
.as-challenge-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.as-challenge-card {
  background: #fff;
  border-radius: var(--as-r);
  padding: 28px 24px;
  box-shadow: var(--as-sh);
  border-top: 3px solid var(--as-a);
  transition: transform 0.2s;
}
.as-challenge-card:hover { transform: translateY(-4px); }
.as-challenge-card h3 { font-size: 16px; font-weight: 700; color: var(--as-a); margin: 0 0 10px; }
.as-challenge-card p { font-size: 13px; color: var(--as-s); margin: 0; line-height: 1.6; }

/* 平台架构 */
.as-arch { background: #fff; }
.as-arch-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.as-arch-card {
  border-radius: var(--as-r);
  padding: 28px 22px;
  border: 2px solid #E2E8F0;
  text-align: center;
  transition: border-color 0.2s, transform 0.2s;
}
.as-arch-card:hover { border-color: var(--as-p); transform: translateY(-4px); }
.as-arch-card .as-arch-icon {
  width: 48px; height: 48px;
  background: linear-gradient(135deg, var(--as-p), var(--as-pd));
  border-radius: 12px;
  display: flex; align-items: center; justify-content: center;
  margin: 0 auto 16px;
  font-size: 20px; color: #fff;
}
.as-arch-card h3 { font-size: 16px; font-weight: 700; margin: 0 0 8px; color: var(--as-t); }
.as-arch-card p { font-size: 13px; color: var(--as-s); margin: 0; line-height: 1.5; }

/* 核心能力 Tab */
.as-cap { background: var(--as-bg2); }
.as-tabs {
  display: flex; gap: 8px; flex-wrap: wrap;
  margin-bottom: 28px; justify-content: center;
}
.as-tab {
  padding: 8px 20px; border-radius: 6px;
  border: 1px solid #CBD5E1; background: #fff;
  color: var(--as-s); font-size: 14px; cursor: pointer;
  transition: all 0.2s; font-weight: 500;
}
.as-tab.as-active { background: var(--as-p); border-color: var(--as-p); color: #fff; }
.as-tab-content { display: none; }
.as-tab-content.as-show { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.as-cap-card {
  background: #fff; border-radius: var(--as-r);
  padding: 24px; box-shadow: var(--as-sh);
  border-left: 4px solid var(--as-p);
}
.as-cap-card h4 { font-size: 15px; font-weight: 700; margin: 0 0 8px; color: var(--as-t); }
.as-cap-card p { font-size: 13px; color: var(--as-s); margin: 0; line-height: 1.5; }

/* 性能数据 */
.as-perf { background: var(--as-bg3); color: #fff; }
.as-perf .as-title, .as-perf .as-desc { color: #fff; }
.as-perf .as-desc { opacity: 0.7; }
.as-perf-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.as-perf-card {
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: var(--as-r);
  padding: 28px 20px; text-align: center;
  transition: background 0.2s;
}
.as-perf-card:hover { background: rgba(255,255,255,0.12); }
.as-perf-card .as-perf-num { font-size: 34px; font-weight: 700; color: #FF6B35; display: block; }
.as-perf-card .as-perf-label { font-size: 12px; opacity: 0.75; margin-top: 6px; display: block; }
.as-perf-card .as-perf-note { font-size: 11px; opacity: 0.5; margin-top: 4px; display: block; }

/* 制造业场景 */
.as-mfg { background: #fff; }
.as-mfg-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
.as-mfg-card {
  background: var(--as-bg2);
  border-radius: var(--as-r);
  padding: 28px 24px;
  border-left: 4px solid var(--as-a);
}
.as-mfg-card h3 { font-size: 16px; font-weight: 700; margin: 0 0 8px; color: var(--as-t); }
.as-mfg-card p { font-size: 13px; color: var(--as-s); margin: 0; line-height: 1.6; }

/* 客户案例 */
.as-case { background: var(--as-bg2); }
.as-case-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; }
.as-case-card {
  background: #fff; border-radius: var(--as-r);
  padding: 28px 24px; box-shadow: var(--as-sh);
  border-left: 4px solid var(--as-p);
}
.as-case-card h3 { font-size: 18px; font-weight: 700; margin: 0 0 6px; color: var(--as-t); }
.as-case-card .as-case-tag {
  display: inline-block;
  background: #EFF6FF; color: var(--as-p);
  font-size: 12px; padding: 2px 10px;
  border-radius: 10px; margin-bottom: 12px; font-weight: 600;
}
.as-case-card p { font-size: 13px; color: var(--as-s); margin: 0 0 10px; line-height: 1.6; }
.as-case-card p:last-child { margin-bottom: 0; }
.as-case-card strong { color: var(--as-t); }

/* CTA */
.as-cta {
  background: linear-gradient(135deg, var(--as-pd), var(--as-p));
  padding: 60px 40px; text-align: center; color: #fff;
}
.as-cta h2 { font-size: 26px; font-weight: 700; margin: 0 0 16px; }
.as-cta p { font-size: 15px; opacity: 0.85; margin: 0 0 28px; }
.as-cta .as-btn {
  display: inline-block; background: #fff; color: var(--as-p);
  padding: 12px 36px; border-radius: 8px;
  font-size: 15px; font-weight: 600; text-decoration: none;
  transition: transform 0.2s, box-shadow 0.2s;
}
.as-cta .as-btn:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,0.2); }

/* Footer */
.as-footer {
  background: var(--as-bg3);
  color: rgba(255,255,255,0.5);
  padding: 24px 40px; text-align: center; font-size: 13px;
}
.as-footer a { color: rgba(255,255,255,0.7); text-decoration: none; }

/* 滚动动画 */
@keyframes asFadeIn {
  from { opacity: 0; transform: translateY(24px); }
  to { opacity: 1; transform: translateY(0); }
}
.as-anim { opacity: 0; }
.as-anim.as-show { animation: asFadeIn 0.5s ease forwards; }

/* 响应式 */
@media (max-width: 900px) {
  .as-stats { grid-template-columns: repeat(2, 1fr); }
  .as-challenge-grid, .as-arch-grid { grid-template-columns: repeat(2, 1fr); }
  .as-perf-grid { grid-template-columns: repeat(2, 1fr); }
  .as-case-grid, .as-mfg-grid { grid-template-columns: 1fr; }
  .as-tab-content.as-show { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
  .as-hero { padding: 48px 20px 40px; }
  .as-hero h1 { font-size: 24px; }
  .as-sec { padding: 40px 20px; }
  .as-title { font-size: 22px; }
  .as-stats, .as-challenge-grid, .as-arch-grid, .as-perf-grid { grid-template-columns: 1fr; }
  .as-tab-content.as-show { grid-template-columns: 1fr; }
}

/* ========== 华为坤灵 4+10+N 智能办公 - 样式隔离CSS ========== */
/* 所有选择器限定在 #hk-sol 下，不影响宿主页面 */

#hk-sol {
  --hk-p: #CF0A2C;
  --hk-pd: #B0081F;
  --hk-r: #E60012;
  --hk-b: #007DFF;
  --hk-t: #191919;
  --hk-s: #666;
  --hk-bg: #FFFFFF;
  --hk-bg2: #F5F6FA;
  --hk-bg3: #0D1117;
  --hk-g: #4CAF50;
  --hk-rd: 12px;
  --hk-sh: 0 4px 20px rgba(0,0,0,0.06);
  font-family: -apple-system, "Microsoft YaHei", "PingFang SC", sans-serif;
  color: var(--hk-t);
  line-height: 1.6;
  max-width: 1200px;
  margin: 0 auto;
  overflow: hidden;
}

/* Hero */
.hk-hero {
  background: linear-gradient(135deg, #0D1117 0%, #1A1D29 40%, #C41A30 100%);
  padding: 180px 40px 60px;
  text-align: center;
  color: #fff;
  position: relative;
  overflow: hidden;
}
.hk-hero::before {
  content: '';
  position: absolute;
  top: -120px; right: -120px;
  width: 400px; height: 400px;
  background: radial-gradient(circle, rgba(0,125,255,0.12) 0%, transparent 70%);
  pointer-events: none;
}
.hk-hero-badge {
  display: inline-block;
  background: rgba(207,10,44,0.25);
  border: 1px solid rgba(207,10,44,0.5);
  padding: 6px 20px;
  border-radius: 20px;
  font-size: 13px;
  color: #F87171;
  margin-bottom: 24px;
}
.hk-hero h1 { font-size: 36px; font-weight: 700; margin: 0 0 16px; line-height: 1.3; }
.hk-hero h1 span { color: #60A5FA; }
.hk-hero .hk-sub { font-size: 16px; opacity: 0.8; margin: 0 0 48px; max-width: 700px; margin-left: auto; margin-right: auto; }
.hk-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  background: rgba(255,255,255,0.1);
  border-radius: var(--hk-rd);
  overflow: hidden;
  max-width: 800px;
  margin: 0 auto;
}
.hk-stat {
  background: rgba(255,255,255,0.05);
  padding: 24px 16px;
  text-align: center;
}
.hk-stat .hk-num { font-size: 34px; font-weight: 700; color: #60A5FA; display: block; }
.hk-stat .hk-label { font-size: 12px; opacity: 0.7; margin-top: 4px; display: block; }

/* Section */
.hk-sec { padding: 60px 40px; }
.hk-title { font-size: 28px; font-weight: 700; text-align: center; margin: 0 0 10px; color: var(--hk-t); }
.hk-desc { font-size: 15px; color: var(--hk-s); text-align: center; margin: 0 0 40px; }

/* 4+10+N 架构 */
.hk-arch { background: var(--hk-bg2); }
.hk-arch-row { display: flex; gap: 20px; justify-content: center; flex-wrap: wrap; margin-bottom: 20px; }
.hk-arch-item {
  background: #fff;
  border-radius: var(--hk-rd);
  padding: 20px 28px;
  text-align: center;
  box-shadow: var(--hk-sh);
  min-width: 140px;
  transition: transform 0.2s;
}
.hk-arch-item:hover { transform: translateY(-4px); }
.hk-arch-item .hk-arch-num {
  font-size: 28px; font-weight: 800;
  background: linear-gradient(135deg, var(--hk-p), var(--hk-b));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: block;
}
.hk-arch-item .hk-arch-txt { font-size: 13px; color: var(--hk-s); margin-top: 4px; }
.hk-arch-tag {
  display: inline-block;
  background: rgba(0,125,255,0.08);
  color: var(--hk-b);
  padding: 4px 12px;
  border-radius: 14px;
  font-size: 12px;
  margin: 3px;
}

/* 通网络 */
.hk-net { background: #fff; }
.hk-net-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.hk-net-card {
  border-radius: var(--hk-rd);
  padding: 28px 24px;
  border: 2px solid #E5E7EB;
  transition: border-color 0.2s, transform 0.2s;
}
.hk-net-card:hover { border-color: var(--hk-b); transform: translateY(-4px); }
.hk-net-card h3 { font-size: 17px; font-weight: 700; margin: 0 0 8px; color: var(--hk-b); }
.hk-net-card .hk-net-sub { font-size: 12px; color: var(--hk-p); font-weight: 600; margin-bottom: 12px; }
.hk-net-card p { font-size: 13px; color: var(--hk-s); margin: 0; line-height: 1.6; }
.hk-net-card .hk-data {
  font-size: 26px; font-weight: 700; color: var(--hk-b);
  display: block; margin-top: 12px;
}

/* 防黑客/防偷拍 */
.hk-sec-card { background: var(--hk-bg2); }
.hk-sec-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
.hk-sec-card-item {
  background: #fff;
  border-radius: var(--hk-rd);
  padding: 28px 24px;
  box-shadow: var(--hk-sh);
  border-top: 3px solid var(--hk-p);
  transition: transform 0.2s;
}
.hk-sec-card-item:hover { transform: translateY(-4px); }
.hk-sec-card-item h3 { font-size: 17px; font-weight: 700; margin: 0 0 10px; color: var(--hk-p); }
.hk-sec-card-item p { font-size: 13px; color: var(--hk-s); margin: 0 0 8px; line-height: 1.6; }
.hk-sec-card-item p:last-child { margin-bottom: 0; }
.hk-sec-card-item .hk-data {
  font-size: 26px; font-weight: 700; color: var(--hk-p);
  display: block; margin-top: 10px;
}
.hk-sec-card-item .hk-sub-data { font-size: 13px; color: var(--hk-s); margin-top: 2px; }

/* 交付效率 */
.hk-delivery { background: #fff; }
.hk-delivery-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px; }
.hk-delivery-card {
  text-align: center;
  padding: 24px 16px;
  border-radius: var(--hk-rd);
  background: var(--hk-bg2);
  border: 1px solid #E5E7EB;
  transition: transform 0.2s;
}
.hk-delivery-card:hover { transform: translateY(-4px); border-color: var(--hk-b); }
.hk-delivery-card .hk-step {
  width: 36px; height: 36px;
  background: var(--hk-b);
  color: #fff;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 15px; font-weight: 700;
  margin: 0 auto 12px;
}
.hk-delivery-card h4 { font-size: 14px; font-weight: 700; margin: 0 0 6px; color: var(--hk-t); }
.hk-delivery-card .hk-time { font-size: 12px; color: var(--hk-g); font-weight: 600; margin-bottom: 6px; display: block; }
.hk-delivery-card p { font-size: 12px; color: var(--hk-s); margin: 0; }

/* 品质保障 */
.hk-quality { background: var(--hk-bg3); color: #fff; }
.hk-quality .hk-title, .hk-quality .hk-desc { color: #fff; }
.hk-quality .hk-desc { opacity: 0.7; }
.hk-quality-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.hk-quality-card {
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: var(--hk-rd);
  padding: 28px 20px;
  text-align: center;
  transition: background 0.2s;
}
.hk-quality-card:hover { background: rgba(255,255,255,0.12); }
.hk-quality-card .hk-q-num { font-size: 34px; font-weight: 700; color: #60A5FA; display: block; }
.hk-quality-card .hk-q-label { font-size: 13px; opacity: 0.8; margin-top: 6px; display: block; }
.hk-quality-card .hk-q-note { font-size: 11px; opacity: 0.5; margin-top: 4px; display: block; }

/* 客户案例 */
.hk-case { background: var(--hk-bg2); }
.hk-case-card {
  background: #fff;
  border-radius: var(--hk-rd);
  padding: 32px 28px;
  box-shadow: var(--hk-sh);
  border-left: 4px solid var(--hk-p);
}
.hk-case-card h3 { font-size: 18px; font-weight: 700; margin: 0 0 6px; color: var(--hk-t); }
.hk-case-card .hk-case-tag {
  display: inline-block;
  background: #FEF2F2;
  color: var(--hk-p);
  font-size: 12px;
  padding: 2px 10px;
  border-radius: 10px;
  margin-bottom: 12px;
  font-weight: 600;
}
.hk-case-card p { font-size: 13px; color: var(--hk-s); margin: 0 0 10px; line-height: 1.6; }
.hk-case-card p:last-child { margin-bottom: 0; }
.hk-case-card strong { color: var(--hk-t); }
.hk-case-products { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 12px; }
.hk-case-products span {
  display: inline-block;
  background: #F0F9FF;
  color: var(--hk-b);
  padding: 3px 10px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 600;
}

/* CTA */
.hk-cta {
  background: linear-gradient(135deg, var(--hk-pd), var(--hk-p));
  padding: 60px 40px;
  text-align: center;
  color: #fff;
}
.hk-cta h2 { font-size: 26px; font-weight: 700; margin: 0 0 16px; }
.hk-cta p { font-size: 15px; opacity: 0.85; margin: 0 0 28px; }
.hk-cta .hk-btn {
  display: inline-block;
  background: #fff;
  color: var(--hk-p);
  padding: 12px 36px;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  transition: transform 0.2s, box-shadow 0.2s;
}
.hk-cta .hk-btn:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,0.2); }

/* Footer */
.hk-footer {
  background: var(--hk-bg3);
  color: rgba(255,255,255,0.5);
  padding: 24px 40px;
  text-align: center;
  font-size: 13px;
}
.hk-footer a { color: rgba(255,255,255,0.7); text-decoration: none; }

/* 滚动动画 */
@keyframes hkFadeIn {
  from { opacity: 0; transform: translateY(24px); }
  to { opacity: 1; transform: translateY(0); }
}
.hk-anim { opacity: 0; }
.hk-anim.hk-show { animation: hkFadeIn 0.5s ease forwards; }

/* 响应式 */
@media (max-width: 900px) {
  .hk-stats { grid-template-columns: repeat(2, 1fr); }
  .hk-net-grid { grid-template-columns: repeat(2, 1fr); }
  .hk-sec-grid { grid-template-columns: 1fr; }
  .hk-delivery-grid { grid-template-columns: repeat(3, 1fr); }
  .hk-quality-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
  .hk-hero { padding: 48px 20px 40px; }
  .hk-hero h1 { font-size: 24px; }
  .hk-sec { padding: 40px 20px; }
  .hk-title { font-size: 22px; }
  .hk-stats, .hk-net-grid, .hk-sec-grid { grid-template-columns: 1fr; }
  .hk-delivery-grid { grid-template-columns: repeat(2, 1fr); }
  .hk-quality-grid { grid-template-columns: 1fr; }
}


/* 新闻动态篇 */
.news-item a {
    text-decoration: none;
    color: #444444;
}
.news-item a:hover {
    background: #ffffff;
    color: #e60012;
}

/* AI篇 */
/* ========== 深信服 AICP 算力平台 - 样式隔离CSS ========== */
/* 所有选择器限定在 #sf-aicp 下，不影响宿主页面 */

#sf-aicp {
  --sf-p: #E84D39;
  --sf-pd: #CF3D2B;
  --sf-b: #2B7DE9;
  --sf-t: #1A1A2E;
  --sf-s: #5A6072;
  --sf-bg: #FFFFFF;
  --sf-bg2: #F4F6FA;
  --sf-bg3: #0B1120;
  --sf-g: #22C55E;
  --sf-rd: 14px;
  --sf-sh: 0 4px 24px rgba(0,0,0,0.06);
  font-family: -apple-system, "Microsoft YaHei", "PingFang SC", sans-serif;
  color: var(--sf-t);
  line-height: 1.6;
  max-width: 1200px;
  margin: 0 auto;
  overflow: hidden;
}

/* Hero */
.sf-hero {
  background: linear-gradient(135deg, #0B1120 0%, #162040 50%, #1A3050 100%);
  padding: 180px 40px 64px;
  text-align: center;
  color: #fff;
  position: relative;
  overflow: hidden;
}
.sf-hero::before {
  content: '';
  position: absolute;
  top: -160px; right: -100px;
  width: 500px; height: 500px;
  background: radial-gradient(circle, rgba(43,125,233,0.15) 0%, transparent 70%);
  pointer-events: none;
}
.sf-hero::after {
  content: '';
  position: absolute;
  bottom: -120px; left: -80px;
  width: 360px; height: 360px;
  background: radial-gradient(circle, rgba(232,77,57,0.1) 0%, transparent 70%);
  pointer-events: none;
}
.sf-hero-badge {
  display: inline-block;
  background: rgba(43,125,233,0.18);
  border: 1px solid rgba(43,125,233,0.45);
  padding: 6px 22px;
  border-radius: 22px;
  font-size: 13px;
  color: #60A5FA;
  margin-bottom: 28px;
  letter-spacing: 0.5px;
}
.sf-hero h1 { font-size: 38px; font-weight: 800; margin: 0 0 12px; line-height: 1.3; letter-spacing: 1px; }
.sf-hero h1 span { color: #60A5FA; }
.sf-hero .sf-sub { font-size: 16px; opacity: 0.75; margin: 0 0 52px; max-width: 720px; margin-left: auto; margin-right: auto; }
.sf-hero-kv {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  background: rgba(255,255,255,0.08);
  border-radius: var(--sf-rd);
  overflow: hidden;
  max-width: 840px;
  margin: 0 auto;
}
.sf-kv {
  background: rgba(255,255,255,0.04);
  padding: 26px 16px;
  text-align: center;
}
.sf-kv .sf-kv-num { font-size: 32px; font-weight: 800; color: #60A5FA; display: block; }
.sf-kv .sf-kv-label { font-size: 12px; opacity: 0.65; margin-top: 6px; display: block; }

/* Section通用 */
.sf-sec { padding: 64px 40px; }
.sf-title { font-size: 28px; font-weight: 700; text-align: center; margin: 0 0 10px; color: var(--sf-t); }
.sf-desc { font-size: 15px; color: var(--sf-s); text-align: center; margin: 0 0 40px; max-width: 640px; margin-left: auto; margin-right: auto; }

/* 挑战 */
.sf-challenge { background: var(--sf-bg2); }
.sf-challenge-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.sf-challenge-card {
  background: #fff;
  border-radius: var(--sf-rd);
  padding: 28px 24px;
  box-shadow: var(--sf-sh);
  border-top: 3px solid var(--sf-p);
  transition: transform 0.2s;
}
.sf-challenge-card:hover { transform: translateY(-4px); }
.sf-challenge-card h3 { font-size: 17px; font-weight: 700; margin: 0 0 12px; color: var(--sf-p); }
.sf-challenge-card p { font-size: 13px; color: var(--sf-s); margin: 0 0 8px; line-height: 1.7; }
.sf-challenge-card p:last-child { margin-bottom: 0; }
.sf-challenge-card strong { color: var(--sf-t); }

/* 架构全景 */
.sf-arch { background: #fff; }
.sf-arch-layer {
  border-radius: var(--sf-rd);
  padding: 24px 28px;
  margin-bottom: 16px;
  text-align: center;
  transition: transform 0.2s;
}
.sf-arch-layer:hover { transform: translateY(-3px); }
.sf-arch-layer h4 { font-size: 15px; font-weight: 700; margin: 0 0 8px; }
.sf-arch-layer p { font-size: 12px; color: var(--sf-s); margin: 0 0 10px; }
.sf-arch-layer p:last-child { margin-bottom: 0; }
.sf-arch-app { background: linear-gradient(135deg, rgba(43,125,233,0.08), rgba(43,125,233,0.03)); border: 1px solid rgba(43,125,233,0.2); }
.sf-arch-app h4 { color: var(--sf-b); }
.sf-arch-paas { background: linear-gradient(135deg, rgba(139,92,246,0.08), rgba(139,92,246,0.03)); border: 1px solid rgba(139,92,246,0.2); }
.sf-arch-paas h4 { color: #8B5CF6; }
.sf-arch-cp { background: linear-gradient(135deg, rgba(232,77,57,0.06), rgba(232,77,57,0.02)); border: 2px solid rgba(232,77,57,0.25); }
.sf-arch-cp h4 { color: var(--sf-p); font-size: 17px; }
.sf-arch-hw { background: linear-gradient(135deg, rgba(100,116,139,0.06), rgba(100,116,139,0.02)); border: 1px solid rgba(100,116,139,0.15); }
.sf-arch-hw h4 { color: #64748B; }
.sf-arch-tags { display: flex; gap: 6px; flex-wrap: wrap; justify-content: center; margin-top: 8px; }
.sf-arch-tag {
  display: inline-block;
  padding: 3px 10px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 600;
}
.sf-arch-tag.blue { background: rgba(43,125,233,0.1); color: var(--sf-b); }
.sf-arch-tag.purple { background: rgba(139,92,246,0.1); color: #8B5CF6; }
.sf-arch-tag.red { background: rgba(232,77,57,0.08); color: var(--sf-p); }
.sf-arch-tag.gray { background: rgba(100,116,139,0.1); color: #64748B; }
.sf-arch-arrow { text-align: center; font-size: 22px; color: #CBD5E1; margin: 4px 0; }

/* 核心优势 */
.sf-advantage { background: var(--sf-bg2); }
.sf-adv-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.sf-adv-card {
  background: #fff;
  border-radius: var(--sf-rd);
  padding: 32px 24px 28px;
  box-shadow: var(--sf-sh);
  text-align: center;
  border-left: 4px solid var(--sf-b);
  transition: transform 0.2s;
}
.sf-adv-card:hover { transform: translateY(-4px); }
.sf-adv-icon {
  width: 48px; height: 48px;
  border-radius: 12px;
  display: flex; align-items: center; justify-content: center;
  font-size: 22px;
  margin: 0 auto 16px;
}
.sf-adv-icon.blue { background: rgba(43,125,233,0.1); color: var(--sf-b); }
.sf-adv-icon.green { background: rgba(34,197,94,0.1); color: var(--sf-g); }
.sf-adv-icon.orange { background: rgba(245,158,11,0.1); color: #F59E0B; }
.sf-adv-card h3 { font-size: 17px; font-weight: 700; margin: 0 0 10px; color: var(--sf-t); }
.sf-adv-card p { font-size: 13px; color: var(--sf-s); margin: 0 0 8px; line-height: 1.7; }
.sf-adv-card p:last-child { margin-bottom: 0; }
.sf-adv-card .sf-adv-data { font-size: 24px; font-weight: 800; color: var(--sf-b); display: block; margin-top: 10px; }

/* AI安全护栏 */
.sf-safety { background: var(--sf-bg3); color: #fff; }
.sf-safety .sf-title, .sf-safety .sf-desc { color: #fff; }
.sf-safety .sf-desc { opacity: 0.65; }
.sf-safety-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
.sf-safety-card {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: var(--sf-rd);
  padding: 28px 24px;
  transition: background 0.2s;
}
.sf-safety-card:hover { background: rgba(255,255,255,0.1); }
.sf-safety-card h3 { font-size: 17px; font-weight: 700; margin: 0 0 12px; color: #60A5FA; }
.sf-safety-card p { font-size: 13px; opacity: 0.8; margin: 0 0 8px; line-height: 1.7; }
.sf-safety-card p:last-child { margin-bottom: 0; }
.sf-safety-card strong { color: #fff; }
.sf-safety-card .sf-safe-data {
  font-size: 26px; font-weight: 800; color: #22D3EE;
  display: block; margin-top: 12px;
}

/* 实践成果 */
.sf-practice { background: #fff; }
.sf-prac-tabs {
  display: flex; gap: 8px; justify-content: center; margin-bottom: 32px; flex-wrap: wrap;
}
.sf-prac-tab {
  padding: 8px 20px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  border: 2px solid #E5E7EB;
  background: #fff;
  color: var(--sf-s);
  transition: all 0.2s;
}
.sf-prac-tab:hover { border-color: var(--sf-b); color: var(--sf-b); }
.sf-prac-tab.active { background: var(--sf-b); color: #fff; border-color: var(--sf-b); }
.sf-prac-panel { display: none; }
.sf-prac-panel.active { display: block; }
.sf-prac-card {
  background: var(--sf-bg2);
  border-radius: var(--sf-rd);
  padding: 32px 28px;
  border-left: 4px solid var(--sf-b);
}
.sf-prac-card h3 { font-size: 17px; font-weight: 700; margin: 0 0 16px; color: var(--sf-t); }
.sf-prac-data-row { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-bottom: 20px; }
.sf-prac-data-item { text-align: center; }
.sf-prac-data-item .sf-pd-num { font-size: 28px; font-weight: 800; color: var(--sf-b); display: block; }
.sf-prac-data-item .sf-pd-label { font-size: 12px; color: var(--sf-s); margin-top: 4px; display: block; }
.sf-prac-card p { font-size: 13px; color: var(--sf-s); margin: 0 0 8px; line-height: 1.7; }
.sf-prac-card p:last-child { margin-bottom: 0; }
.sf-prac-card strong { color: var(--sf-t); }

/* 适用场景 */
.sf-scene { background: var(--sf-bg2); }
.sf-scene-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.sf-scene-card {
  background: #fff;
  border-radius: var(--sf-rd);
  padding: 24px 20px;
  text-align: center;
  box-shadow: var(--sf-sh);
  transition: transform 0.2s, box-shadow 0.2s;
}
.sf-scene-card:hover { transform: translateY(-4px); box-shadow: 0 8px 32px rgba(0,0,0,0.1); }
.sf-scene-card h4 { font-size: 15px; font-weight: 700; margin: 0 0 12px; color: var(--sf-t); }
.sf-scene-card .sf-scene-icon {
  font-size: 28px; margin-bottom: 10px; display: block;
}
.sf-scene-card p { font-size: 12px; color: var(--sf-s); margin: 0; line-height: 1.6; }

/* CTA */
.sf-cta {
  background: linear-gradient(135deg, #162040, var(--sf-b));
  padding: 64px 40px;
  text-align: center;
  color: #fff;
}
.sf-cta h2 { font-size: 28px; font-weight: 700; margin: 0 0 16px; }
.sf-cta p { font-size: 15px; opacity: 0.85; margin: 0 0 32px; }
.sf-cta .sf-btn {
  display: inline-block;
  background: #fff;
  color: var(--sf-b);
  padding: 14px 40px;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  transition: transform 0.2s, box-shadow 0.2s;
}
.sf-cta .sf-btn:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,0.25); }

/* Footer */
.sf-footer {
  background: var(--sf-bg3);
  color: rgba(255,255,255,0.45);
  padding: 24px 40px;
  text-align: center;
  font-size: 13px;
}
.sf-footer a { color: rgba(255,255,255,0.6); text-decoration: none; }

/* 滚动动画 */
@keyframes sfFadeIn {
  from { opacity: 0; transform: translateY(28px); }
  to { opacity: 1; transform: translateY(0); }
}
.sf-anim { opacity: 0; }
.sf-anim.sf-show { animation: sfFadeIn 0.5s ease forwards; }

/* 响应式 */
@media (max-width: 900px) {
  .sf-hero-kv { grid-template-columns: repeat(2, 1fr); }
  .sf-challenge-grid { grid-template-columns: 1fr; }
  .sf-adv-grid { grid-template-columns: 1fr; }
  .sf-safety-grid { grid-template-columns: 1fr; }
  .sf-prac-data-row { grid-template-columns: repeat(2, 1fr); }
  .sf-scene-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
  .sf-hero { padding: 48px 20px 40px; }
  .sf-hero h1 { font-size: 24px; }
  .sf-sec { padding: 40px 20px; }
  .sf-title { font-size: 22px; }
  .sf-hero-kv, .sf-prac-data-row { grid-template-columns: 1fr; }
  .sf-scene-grid { grid-template-columns: 1fr; }
}
