:root {
            --primary:#1e6fff;
            --blue-dark:#0d47a1;
            --bg:#f8f9fb;
            --text:#333;
            --gray:#666;
        }

        * { margin:0; padding:0; box-sizing:border-box; }
        html,body { overflow-x:hidden; }
        body {
            font-family:"Microsoft YaHei","PingFang SC";
            color:var(--text);
        }

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

        /* Header（与最终版一致） */
        header {
            position:fixed; top:0; width:100%;
            background:rgba(255,255,255,.98);
            box-shadow:0 2px 10px rgba(0,0,0,.1);
            z-index:1000;
        }
        nav {
            display:flex; justify-content:space-between; align-items:center;
            height:76px;
        }
        .logo h1 { color:var(--primary); font-size:26px; }
        .logo span { font-size:12px; color:var(--gray); margin-left:15px; }

        .nav-menu { display:flex; list-style:none; }
        .nav-menu li { margin-left:35px; }
        .nav-menu a {
            text-decoration:none; color:var(--text);
            font-size:15px; transition:.3s;
        }
        .nav-menu a:hover,
        .nav-menu a.active { color:var(--primary); }

        .menu-toggle { display:none; font-size:24px; cursor:pointer; }

        /* Banner */
        .page-banner {
            padding-top: 76px;
            padding-bottom: 0px;
            position: relative;
            overflow: hidden;
        }
        
        .banner-image {
            height: 320px;
            background-size: cover;
            background-position: center;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        
        .banner-content {
            color: #fff;
            text-align: center;
            z-index: 2;
        }
        
        .banner-content h1 {
            font-size: 44px;
            margin-bottom: 20px;
            text-shadow: 0 4px 25px rgba(0,0,0,.5);
            line-height: 1.3;
        }
        
        .banner-content h2 {
            font-size: 22px;
            opacity: .95;
        }

        /* Section */
        section { padding:90px 0; }
        .section-title { text-align:center; margin-bottom:70px; }
        .section-title h2 { font-size:40px; margin-bottom:15px; }
        .section-title p { color:var(--gray); font-size:16px; }
        .section-title::after {
            content:''; display:block; width:80px; height:4px;
            background:var(--primary); margin:20px auto 0;
        }
		/* ================= 基础动画 ================= */
		.scroll-animate {
			opacity: 0;
			transition: all .9s cubic-bezier(.25,.46,.45,.94);
		}

		.scroll-animate.in-view {
			opacity: 1;
			transform: none !important;
		}

		.fade-scale { transform: scale(1.05); }
		.slide-in-left { transform: translateX(-60px); }
		.slide-in-right { transform: translateX(60px); }

		/* ================= 图文布局 ================= */
		.advantages-detail {
			padding: 90px 0;
			background: #fff;
		}

		.advantage-block {
			display: grid;
			grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
			gap: 60px;
			align-items: center;
			margin-bottom: 100px;
		}
		.advantage-image{width: 400px;}
		.advantage-block.reverse .advantage-image { order: 2; }
		.advantage-block.reverse .advantage-content { order: 1; }

		.advantage-image img {
			width: 100%;
			border-radius: 12px;
			box-shadow: 0 10px 40px rgba(0,0,0,.1);
		}

		/* ================= 内容样式 ================= */
		.advantage-num {
			font-size: 64px;
			font-weight: bold;
			color: var(--primary);
			opacity: .15;
			line-height: 1;
			display: block;
			margin-bottom: -20px;
		}

		.advantage-content h2 {
			font-size: 32px;
			margin-bottom: 20px;
		}

		.advantage-content p {
			color: var(--gray);
			line-height: 1.9;
			margin-bottom: 20px;
		}

		.advantage-content ul {
			list-style: none;
			padding: 0;
		}

		.advantage-content li {
			margin-bottom: 12px;
			color: var(--dark);
			font-size: 16px;
		}
		/* ================= 流程容器 ================= */
		.dev-process {
		    padding: 90px 0;
		    background-color: #ffffff;
		}
		
		.process-timeline {
		    display: flex;
		    justify-content: space-between;
		    position: relative;
		    margin-top: 60px;
		}
		
		/* 背景线 */
		.process-timeline::before {
		    content: '';
		    position: absolute;
		    top: 30px;
		    left: 0;
		    right: 0;
		    height: 4px;
		    background: #e5e7eb;
		}
		
		/* ✅ 进度线生长动画 */
		.timeline-grow::after {
		    content: '';
		    position: absolute;
		    top: 30px;
		    left: 0;
		    width: 0;
		    height: 4px;
		    background: var(--primary);
		    transition: width 1.5s ease;
		}
		
		.timeline-grow.in-view::after {
		    width: 100%;
		}
		
		/* ================= 单个步骤 ================= */
		.process-step {
		    text-align: center;
		    position: relative;
		    z-index: 2;
		    flex: 1;
		    opacity: 0;
		    transform: translateY(30px);
		    transition: all .6s ease;
		}
		
		.step-fade.in-view {
		    opacity: 1;
		    transform: translateY(0);
		}
		
		/* 节点圆圈 */
		.step-icon {
		    width: 60px;
		    height: 60px;
		    line-height: 60px;
		    margin: 0 auto 20px;
		    background: #fff;
		    border: 4px solid #e5e7eb;
		    border-radius: 50%;
		    font-weight: bold;
		    font-size: 18px;
		    transition: .6s;
		}
		
		.step-fade.in-view .step-icon {
		    background: var(--primary);
		    border-color: var(--primary);
		    color: #fff;
		}
		
		.process-step h4 {
		    font-size: 16px;
		    margin-bottom: 8px;
		}
		
		.process-step p {
		    font-size: 14px;
		    color: var(--gray);
		    line-height: 1.6;
		}
		
		/* 错落延迟 */
		.process-step:nth-child(1) { transition-delay: .1s; }
		.process-step:nth-child(2) { transition-delay: .2s; }
		.process-step:nth-child(3) { transition-delay: .3s; }
		.process-step:nth-child(4) { transition-delay: .4s; }
		.process-step:nth-child(5) { transition-delay: .5s; }
		/* CTA */
		.services-cta {
		    padding: 80px 0;
		    text-align: center;
		    background: linear-gradient(135deg, var(--primary), #00bfff);
		    color: #fff;
		}
		/* ================= CTA 按钮主体 ================= */
		.btn-cta {
			margin-top: 20px;
		    display: inline-flex;
		    align-items: center;
		    gap: 12px;
		    padding: 10px 36px;
		    background: linear-gradient(135deg, var(--primary), #00bfff);
		    color: #fff;
		    font-size: 16px;
		    font-weight: bold;
		    border-radius: 50px;
		    text-decoration: none;
		    box-shadow: 0 8px 30px rgba(30,111,255,.35);
		    transition: all .3s ease;
		    position: relative;
		    overflow: hidden;
		}
		
		/* ================= 光晕扫过效果 ================= */
		.btn-cta::before {
		    content: '';
		    position: absolute;
		    top: 0;
		    left: -100%;
		    width: 100%;
		    height: 100%;
		    background: linear-gradient(90deg, transparent, rgba(255,255,255,.3), transparent);
		    transition: .5s;
		}
		
		.btn-cta:hover::before {
		    left: 100%;
		}
		
		.btn-cta:hover {
		    transform: translateY(-4px);
		    box-shadow: 0 12px 40px rgba(30,111,255,.45);
		}
		
		/* ================= 文字 ================= */
		.btn-cta .btn-text {
		    position: relative;
		    z-index: 2;
		}
		
		/* ================= 箭头图标 ================= */
		.btn-cta .btn-icon {
		    display: flex;
		    align-items: center;
		    justify-content: center;
		    width: 24px;
		    height: 24px;
		    transition: .3s;
		}
		
		.btn-cta .btn-icon svg {
		    width: 100%;
		    height: 100%;
		    stroke: currentColor;
		}
		
		.btn-cta:hover .btn-icon {
		    transform: translateX(4px);
		}
        /* Footer */
        footer { background: #1a1a2e; color: white; padding: 70px 0 20px; }
        .footer-content { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 40px; margin-bottom: 50px; }
        .footer-column h4 { font-size: 18px; margin-bottom: 25px; position: relative; padding-bottom: 10px; }
        .footer-column h4::after { content: ''; display: block; width: 40px; height: 3px; background: var(--primary-blue); position: absolute; bottom: 0; left: 0; }
        .footer-column p { color: #aaa; line-height: 1.9; margin-bottom: 20px; }
		.footer-column h4 {
		    color: #fff;
		    margin-bottom: 25px;
		    font-size: 18px;
		}
		.footer-column img {
		    width: 20px;
		    height: 20px;
		    object-fit: contain;
		    filter: brightness(0) invert(1); /* ✅ 白色图标 */
		}
        .footer-column ul { list-style: none; }
        .footer-column ul li { margin-bottom: 12px; }
        .footer-column ul li a { color: #aaa; text-decoration: none; transition: color 0.3s; font-size: 14px; }
        .footer-column ul li a:hover { color: var(--primary-blue); }
        .social-links { display: flex; gap: 15px; margin-top: 20px; }
        .social-links a { width: 42px; height: 42px; background: #2a2a4a; border-radius: 50%; display: flex; align-items: center; justify-content: center; color: white; text-decoration: none; transition: all 0.3s; font-size: 14px; }
        .social-links a:hover { background: var(--primary-blue); transform: translateY(-3px); }
        .footer-bottom { text-align: center; padding-top: 25px; border-top: 1px solid #2a2a4a; color: #777; font-size: 14px; line-height: 25px;}
		.footer-bottom p a{
			color: #777;
			text-decoration: none; 
		}

        /* Responsive */
        @media (max-width: 1024px) { .services-grid { grid-template-columns: repeat(2, 1fr); } .advantages-grid { grid-template-columns: repeat(2, 1fr); } .cases-grid { grid-template-columns: repeat(2, 1fr); } .footer-content { grid-template-columns: repeat(2, 1fr); } }
        @media (max-width: 768px) { .menu-toggle { display: block; } .nav-menu { display: none; position: absolute; top: 100%; left: 0; right: 0; background: white; flex-direction: column; padding: 20px; box-shadow: 0 10px 30px rgba(0,0,0,0.1); } .nav-menu.active { display: flex; } .nav-menu li { margin: 10px 0; } .nav-phone { display: none; } .banner-content h1 { font-size: 36px; } .about-content, .contact-content { grid-template-columns: 1fr; } .services-grid, .cases-grid, .news-grid { grid-template-columns: 1fr; } .advantages-grid { grid-template-columns: repeat(2, 1fr); } .footer-content { grid-template-columns: 1fr; } }
        @media (max-width: 480px) { .banner { height: 450px; } .banner-content h1 { font-size: 28px; } .section-title h2 { font-size: 28px; } .advantages-grid { grid-template-columns: 1fr; } }
/* ========================================
   服务优势页 - 六大核心优势展示 样式
   ======================================== */
.core-advantages-section {
    padding: 80px 0;
    background-color: #ffffff;
}

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

.section-header {
    text-align: center;
    margin-bottom: 60px;
}

.section-header h2 {
    font-size: 2.2rem;
    color: #212529;
    margin-bottom: 10px;
}

.section-header p {
    font-size: 1.1rem;
    color: #6c757d;
}

/* 优势网格（三列） */
.advantages-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 30px;
}

/* 单个优势项 */
.advantage-item {
    display: flex;
    gap: 20px;
    padding: 30px;
    background: #f8f9fa;
    border: 1px solid #e9ecef;
    border-radius: 12px;
    transition: all 0.3s ease;
}

.advantage-item:hover {
    transform: translateY(-8px);
    box-shadow: 0 12px 30px rgba(0,0,0,.08);
    border-color: #007bff;
}

/* 图标 */
.adv-icon {
    flex-shrink: 0;
    width: 60px;
    height: 60px;
    background: #fff;
    border: 2px solid #007bff;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.8rem;
}

/* 内容区 */
.adv-content h3 {
    font-size: 1.2rem;
    color: #212529;
    margin-bottom: 8px;
    margin-top: 5px;
}

.adv-content p {
    font-size: 0.95rem;
    color: #6c757d;
    line-height: 1.7;
    margin: 0;
}

/* 移动端适配 */
@media (max-width: 400px) {
    .advantage-item {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
}
/* ========================================
   服务优势页 - 技术栈全景图 样式
   ======================================== */
.tech-stack-section {
    padding: 80px 0;
    background-color: #f8f9fa;
}

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

.section-header {
    text-align: center;
    margin-bottom: 60px;
}

.section-header h2 {
    font-size: 2.2rem;
    color: #212529;
    margin-bottom: 10px;
}

.section-header p {
    font-size: 1.1rem;
    color: #6c757d;
}

/* 技术栈容器 */
.stack-wrapper {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

/* 单个分类 */
.stack-category h3 {
    font-size: 1.3rem;
    color: #343a40;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 2px solid #007bff;
    display: inline-block;
}

/* 标签云 */
.stack-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.stack-tags span {
    padding: 10px 18px;
    background: #ffffff;
    border: 1px solid #dee2e6;
    border-radius: 30px;
    font-size: 0.95rem;
    color: #495057;
    font-weight: 500;
    transition: all 0.3s ease;
    cursor: default;
}

.stack-tags span:hover {
    background: #007bff;
    color: #fff;
    border-color: #007bff;
    transform: translateY(-3px);
    box-shadow: 0 5px 15px rgba(0,123,255,.2);
}

/* 移动端适配 */
@media (max-width: 768px) {
    .stack-tags span {
        padding: 8px 14px;
        font-size: 0.85rem;
    }
}