* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: 'Segoe UI', 'Microsoft YaHei', sans-serif; background: #0a0e17; color: #e5e7eb; line-height: 1.6; overflow-x: hidden; }
.container { width: 100%; max-width: 1200px; margin: 0 auto; padding: 0 20px; }
#particles-js { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: -1; background: #0a0e17; }

.lang-switcher { position: fixed; top: 20px; right: 20px; z-index: 1000; display: flex; gap: 5px; }
.lang-btn { background: rgba(255,255,255,0.1); border: 1px solid rgba(56, 189, 248, 0.3); color: #94a3b8; padding: 6px 15px; border-radius: 4px; cursor: pointer; }
.lang-btn.active { background: #38bdf8; color: #0a0e17; }

.header { position: fixed; top: 0; width: 100%; background: rgba(10, 14, 23, 0.9); backdrop-filter: blur(10px); z-index: 999; border-bottom: 1px solid rgba(56, 189, 248, 0.1); }
.navbar { display: flex; justify-content: space-between; align-items: center; padding: 20px 0; }
.logo { font-size: 24px; font-weight: 700; color: #38bdf8; text-decoration: none; }
.nav-menu { display: flex; list-style: none; gap: 30px; }
.nav-menu a { color: #cbd5e1; text-decoration: none; font-weight: 500; }
.nav-menu a.active, .nav-menu a:hover { color: #38bdf8; }
.mobile-menu-btn { display: none; color: #cbd5e1; font-size: 24px; cursor: pointer; }

.section { padding: 100px 0; }
.section-title { font-size: 2.5rem; text-align: center; margin-bottom: 60px; color: #f8fafc; }
.section-title::after { content: ''; display: block; width: 60px; height: 3px; background: linear-gradient(90deg, #38bdf8, #818cf8); margin: 20px auto; border-radius: 2px; }
.bg-dark { background: rgba(15, 23, 42, 0.5); }

.hero { min-height: 100vh; display: flex; align-items: center; justify-content: center; text-align: center; padding-top: 80px; }
.hero h1 { font-size: 3.5rem; font-weight: 800; background: linear-gradient(90deg, #38bdf8, #818cf8); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.btn-primary { display: inline-block; background: linear-gradient(90deg, #38bdf8, #6366f1); color: white; padding: 15px 40px; border-radius: 8px; text-decoration: none; font-weight: 600; border: none; cursor: pointer; }

.services-grid, .tech-grid, .cases-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 30px; }
.service-card, .tech-item, .case-card { background: rgba(30, 41, 59, 0.5); border: 1px solid rgba(56, 189, 248, 0.1); border-radius: 12px; padding: 30px; text-align: center; transition: all 0.3s; }
.service-card:hover, .tech-item:hover, .case-card:hover { transform: translateY(-5px); border-color: #38bdf8; }
.service-icon, .tech-item i { font-size: 40px; color: #38bdf8; margin-bottom: 20px; }

.partner-hero { display: flex; align-items: center; gap: 40px; margin-bottom: 50px; padding: 40px; background: rgba(56, 189, 248, 0.05); border-radius: 12px; }
.logo-text { font-size: 2.5rem; font-weight: 800; color: #38bdf8; }
.partner-tag { display: inline-block; background: linear-gradient(90deg, #38bdf8, #818cf8); color: #0a0e17; padding: 6px 20px; border-radius: 20px; font-weight: 700; }

/* ✅ 留资表单 */
.lead { background: linear-gradient(180deg, #0a0e17, #111827); }
.lead-form { max-width: 420px; margin: 0 auto; background: rgba(30,41,59,.6); padding: 40px; border-radius: 12px; border: 1px solid rgba(56,189,248,.2); }
.form-group { margin-bottom: 20px; }
.form-group input { width: 100%; padding: 14px; border-radius: 6px; border: 1px solid rgba(56,189,248,.3); background: rgba(0,0,0,.3); color: #fff; font-size: 1rem; }
.code-group { display: flex; gap: 10px; }
.code-group input { flex: 1; }
.btn-code { background: #38bdf8; border: none; color: #0a0e17; padding: 0 20px; border-radius: 6px; cursor: pointer; font-weight: 600; }
.btn-block { width: 100%; padding: 14px; }
.form-tip { text-align: center; margin-top: 15px; font-size: 0.85rem; color: #94a3b8; }

.contact-info { max-width: 600px; margin: 0 auto; display: grid; gap: 25px; }
.contact-info p { display: flex; align-items: center; gap: 20px; background: rgba(30, 41, 59, 0.5); border-radius: 10px; padding: 25px; font-size: 1.1rem; }
.contact-info i { font-size: 28px; color: #38bdf8; width: 50px; text-align: center; }

.footer { background: rgba(15, 23, 42, 0.8); padding: 40px 0; text-align: center; border-top: 1px solid rgba(56, 189, 248, 0.1); }
.footer a { color: #38bdf8; text-decoration: none; }

@media (max-width: 768px) {
    .mobile-menu-btn { display: block; }
    .nav-menu { position: fixed; top: 80px; left: -100%; width: 100%; background: rgba(10, 14, 23, 0.95); flex-direction: column; padding: 20px; transition: 0.3s; }
    .nav-menu.active { left: 0; }
    .partner-hero { flex-direction: column; text-align: center; }
}