/* ============================================================
   产品与解决方案中心 — 蓝金世界风（与官网首页统一）
   设计理念：深海军蓝 + 主蓝 + 暖金 + 浅蓝白，清爽一致
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@400;600;700;900&family=Ma+Shan+Zheng&display=swap');

:root {
    --ink: #0b2e59;          /* 深海军蓝 - 标题/主文字 */
    --ink-light: #3b6188;    /* 次级文字 */
    --rice: #f5f9fe;         /* 浅蓝白 - 页面底色 */
    --rice-dark: #e3edf7;    /* 浅蓝边框/分隔 */
    --seal: #f59e0b;         /* 暖金 - 强调 */
    --seal-light: #fbbf24;
    --jade: #2563eb;         /* 主蓝（与世界地图节点同色） */
    --jade-dark: #1d4ed8;    /* 深蓝 */
    --gold: #f59e0b;         /* 金 */
    --gold-light: #fbbf24;
    --blue-soft: #3b82f6;
    --blue-sky: #0ea5e9;
    --shadow-sm: 0 2px 12px rgba(11,46,89,0.07);
    --shadow-md: 0 8px 32px rgba(11,46,89,0.10);
    --shadow-lg: 0 16px 48px rgba(11,46,89,0.14);
    --radius: 16px;
    --radius-lg: 24px;
}

/* ===== 基础 ===== */
body { background: var(--rice); color: var(--ink); font-family: 'Noto Serif SC', serif; line-height: 1.7; }
.prod-container { max-width: 1160px; margin: 0 auto; padding: 0 28px; }

/* ===== 导航栏 ===== */
.prod-navbar {
    position: sticky; top: 0; z-index: 1000;
    background: rgba(11,46,89,0.95); backdrop-filter: blur(20px) saturate(1.4);
    border-bottom: 1px solid rgba(245,158,11,0.25);
}
.prod-navbar .prod-container {
    display: flex; align-items: center; justify-content: space-between;
    height: 60px; gap: 20px;
}
.prod-logo { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }
.prod-logo .logo-icon {
    width: 38px; height: 38px; border-radius: 10px; background: linear-gradient(135deg, var(--seal), var(--seal-light));
    display: flex; align-items: center; justify-content: center; color: #fff;
    font-size: 0.65rem; font-weight: 700; letter-spacing: 1px;
    box-shadow: 0 3px 12px rgba(245,158,11,0.35);
}
.prod-logo .logo-title { font-size: 1rem; font-weight: 700; color: #fff; letter-spacing: 1.5px; white-space: nowrap; }
.prod-logo .logo-sub { font-size: 0.58rem; color: rgba(255,255,255,0.4); letter-spacing: 0.5px; white-space: nowrap; }
.prod-nav-links { display: flex; gap: 4px; list-style: none; margin: 0 auto; padding: 0; }
.prod-nav-links a {
    color: rgba(255,255,255,0.65); text-decoration: none; padding: 7px 14px; border-radius: 8px;
    font-size: 0.84rem; transition: all 0.25s ease;
    font-family: -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;
    white-space: nowrap;
}
.prod-nav-links a:hover, .prod-nav-links a.active { color: var(--gold); background: rgba(245,158,11,0.12); }
.prod-nav-actions { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }
.prod-nav-actions .lang-select {
    background: rgba(255,255,255,0.08); color: rgba(255,255,255,0.8);
    border: 1px solid rgba(255,255,255,0.15); padding: 5px 10px; border-radius: 8px;
    font-size: 0.78rem; cursor: pointer; outline: none;
}
.prod-nav-actions .lang-select option { color: #333; }
.prod-nav-actions .nav-cta {
    background: linear-gradient(135deg, var(--seal), var(--seal-light)); color: #fff;
    border: none; padding: 7px 18px; border-radius: 8px;
    font-size: 0.82rem; cursor: pointer; font-weight: 600; letter-spacing: 1px;
    text-decoration: none; box-shadow: 0 3px 12px rgba(245,158,11,0.3);
    transition: all 0.25s ease;
}
.prod-nav-actions .nav-cta:hover { transform: translateY(-1px); box-shadow: 0 6px 20px rgba(245,158,11,0.4); }

/* ===== Hero 区域 ===== */
.prod-hero {
    position: relative; padding: 100px 0 80px;
    background: linear-gradient(165deg, #0b2e59 0%, #103a6b 40%, #0f2e4d 100%);
    color: #fff; overflow: hidden;
}
.prod-hero::before {
    content: ''; position: absolute;
    right: -10%; top: -15%; width: 600px; height: 600px;
    background:
        radial-gradient(circle at 30% 30%, rgba(245,158,11,0.15) 0%, transparent 60%),
        radial-gradient(circle at 70% 70%, rgba(59,130,246,0.12) 0%, transparent 50%);
    animation: heroFloat 20s ease-in-out infinite alternate;
}
.prod-hero::after {
    content: ''; position: absolute;
    left: -5%; bottom: -10%; width: 400px; height: 400px;
    background: radial-gradient(circle, rgba(245,158,11,0.08) 0%, transparent 60%);
    animation: heroFloat 15s ease-in-out infinite alternate-reverse;
}
@keyframes heroFloat {
    0% { transform: translate(0, 0) scale(1); }
    100% { transform: translate(30px, -20px) scale(1.08); }
}

.prod-hero .prod-container { position: relative; z-index: 2; }

.prod-hero .hero-badge {
    display: inline-flex; align-items: center; gap: 8px;
    background: rgba(245,158,11,0.12); border: 1px solid rgba(245,158,11,0.35);
    color: var(--gold-light); padding: 8px 22px; border-radius: 50px;
    font-size: 0.82rem; letter-spacing: 3px; margin-bottom: 28px;
    backdrop-filter: blur(4px);
}
.prod-hero h1 {
    font-size: 2.8rem; font-weight: 900; letter-spacing: 2px; line-height: 1.25;
    max-width: 820px; text-shadow: 0 2px 30px rgba(0,0,0,0.3);
}
.prod-hero h1 .accent {
    background: linear-gradient(135deg, var(--gold-light), var(--gold));
    -webkit-background-clip: text; -webkit-text-fill-color: transparent;
    background-clip: text;
}
.prod-hero .hero-sub {
    font-size: 1.08rem; color: rgba(255,255,255,0.72); margin-top: 22px;
    max-width: 720px; line-height: 1.9;
}
.prod-hero .hero-tags {
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px;
    margin-top: 36px; max-width: 720px;
}
.prod-hero .hero-tag {
    background: rgba(255,255,255,0.07); border: 1px solid rgba(255,255,255,0.1);
    border-radius: 14px; padding: 18px 16px; text-align: center;
    backdrop-filter: blur(4px); transition: all 0.3s ease;
}
.prod-hero .hero-tag:hover {
    background: rgba(255,255,255,0.12); border-color: rgba(245,158,11,0.4);
    transform: translateY(-3px);
}
.prod-hero .hero-tag b {
    display: block; font-size: 1.6rem; color: var(--gold-light); margin-bottom: 4px;
}

/* ===== 多角色快捷入口 ===== */
.entry-bar {
    position: relative; padding: 48px 0 52px;
    background: linear-gradient(180deg, var(--rice-dark) 0%, var(--rice) 100%);
}
.entry-head {
    text-align: center; color: var(--ink-light); font-size: 1rem;
    margin-bottom: 28px; letter-spacing: 1.5px; font-weight: 600;
}
.entry-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.entry-card {
    display: flex; flex-direction: column; align-items: center;
    text-decoration: none; border-radius: var(--radius-lg);
    padding: 32px 20px 26px; text-align: center;
    background: #fff; box-shadow: var(--shadow-md);
    border: 1px solid rgba(11,46,89,0.05);
    transition: all 0.35s cubic-bezier(.22,1,.36,1);
    position: relative; overflow: hidden;
}
.entry-card::before {
    content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px;
    border-radius: var(--radius-lg) var(--radius-lg) 0 0;
}
.entry-card.patient::before { background: linear-gradient(90deg, var(--jade), #60a5fa); }
.entry-card.doctor::before { background: linear-gradient(90deg, var(--seal), var(--seal-light)); }
.entry-card.video::before { background: linear-gradient(90deg, var(--gold), var(--gold-light)); }
.entry-card.hardware::before { background: linear-gradient(90deg, var(--blue-soft), #82b4e0); }

.entry-card:hover { transform: translateY(-8px); box-shadow: var(--shadow-lg); }
.entry-icon {
    width: 72px; height: 72px; border-radius: 20px;
    display: flex; align-items: center; justify-content: center;
    font-size: 2rem; margin-bottom: 16px; position: relative;
}
.entry-card.patient .entry-icon { background: linear-gradient(135deg, rgba(37,99,235,0.12), rgba(96,165,250,0.15)); }
.entry-card.doctor .entry-icon { background: linear-gradient(135deg, rgba(245,158,11,0.1), rgba(251,191,36,0.12)); }
.entry-card.video .entry-icon { background: linear-gradient(135deg, rgba(245,158,11,0.12), rgba(251,191,36,0.15)); }
.entry-card.hardware .entry-icon { background: linear-gradient(135deg, rgba(59,130,246,0.1), rgba(130,180,224,0.12)); }

.entry-title { font-size: 1.12rem; font-weight: 700; color: var(--ink); letter-spacing: 0.5px; }
.entry-desc { font-size: 0.82rem; color: var(--ink-light); margin-top: 8px; line-height: 1.55; }
.entry-go {
    display: inline-block; margin-top: 16px; padding: 7px 18px; border-radius: 50px;
    font-size: 0.82rem; font-weight: 600; letter-spacing: 0.5px; transition: all 0.25s ease;
}
.entry-card.patient .entry-go { color: var(--jade-dark); background: rgba(37,99,235,0.08); }
.entry-card.doctor .entry-go { color: var(--seal); background: rgba(245,158,11,0.08); }
.entry-card.video .entry-go { color: #c47d0a; background: rgba(245,158,11,0.1); }
.entry-card.hardware .entry-go { color: var(--blue-soft); background: rgba(59,130,246,0.08); }
.entry-go:hover { transform: translateX(3px); }

/* ===== 通用区块 ===== */
.prod-section { padding: 80px 0; position: relative; }
.prod-section.alt { background: #e6effa; }
.prod-section-head { text-align: center; margin-bottom: 52px; }
.prod-section-head .eyebrow {
    display: inline-block; color: var(--seal); font-size: 0.78rem; letter-spacing: 5px;
    font-weight: 700; text-transform: uppercase; margin-bottom: 10px;
}
.prod-section-head h2 {
    font-size: 2.1rem; font-weight: 900; letter-spacing: 2px; color: var(--ink);
    margin-top: 8px;
}
.prod-section-head .divider {
    width: 56px; height: 4px; background: linear-gradient(90deg, var(--seal), var(--gold));
    margin: 14px auto 0; border-radius: 4px;
}
.prod-section-head p { color: var(--ink-light); margin-top: 16px; font-size: 1rem; max-width: 680px; margin-left: auto; margin-right: auto; line-height: 1.75; }

/* ===== 整体架构 ===== */
.arch-wrap { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 48px; align-items: center; }
.arch-svg {
    width: 100%; filter: drop-shadow(0 8px 24px rgba(11,46,89,0.12));
    border-radius: var(--radius); background: #fff; padding: 20px;
}
.arch-legend { display: flex; flex-direction: column; gap: 20px; }
.arch-legend .arch-item {
    background: #fff; border-radius: var(--radius); padding: 22px 26px;
    box-shadow: var(--shadow-sm); border-left: 4px solid transparent;
    transition: all 0.3s ease; position: relative; overflow: hidden;
}
.arch-legend .arch-item:nth-child(1) { border-left-color: var(--jade); }
.arch-legend .arch-item:nth-child(2) { border-left-color: var(--seal); }
.arch-legend .arch-item:nth-child(3) { border-left-color: var(--blue-soft); }
.arch-legend .arch-item:hover { transform: translateX(6px); box-shadow: var(--shadow-md); }
.arch-legend .arch-item h4 { font-size: 1.08rem; color: var(--ink); display: flex; align-items: center; gap: 8px; }
.arch-legend .arch-item .num {
    display: inline-flex; align-items: center; justify-content: center;
    width: 28px; height: 28px; border-radius: 8px; color: #fff;
    font-size: 0.82rem; font-weight: 900; flex-shrink: 0;
}
.arch-legend .arch-item:nth-child(1) .num { background: var(--jade); }
.arch-legend .arch-item:nth-child(2) .num { background: var(--seal); }
.arch-legend .arch-item:nth-child(3) .num { background: var(--blue-soft); }
.arch-legend .arch-item p { color: var(--ink-light); font-size: 0.88rem; margin-top: 8px; line-height: 1.7; }

/* ===== 四大产品模块 ===== */
.prod-block { margin-bottom: 64px; }
.prod-block:last-child { margin-bottom: 0; }
.prod-block-head { display: flex; align-items: center; gap: 18px; margin-bottom: 30px; }
.prod-block-head .idx {
    flex: none; width: 62px; height: 62px; border-radius: 16px;
    display: flex; align-items: center; justify-content: center;
    font-size: 1.7rem; font-weight: 900;
    font-family: 'Ma Shan Zheng', cursive; color: #fff;
    box-shadow: 0 6px 20px rgba(11,46,89,0.18);
}
.prod-block-head .idx:not(.seal) { background: linear-gradient(135deg, var(--jade-dark), var(--jade)); }
.prod-block-head .idx.seal { background: linear-gradient(135deg, var(--seal), var(--seal-light)); }
.prod-block-head h3 { font-size: 1.5rem; font-weight: 900; letter-spacing: 1px; color: var(--ink); }
.prod-block-head .en { color: var(--gold); font-size: 0.82rem; letter-spacing: 2px; font-weight: 500; }
.prod-block-head .lead { color: var(--ink-light); font-size: 0.95rem; margin-top: 5px; }

.prod-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; }
.prod-card {
    background: #fff; border-radius: var(--radius); padding: 28px;
    box-shadow: var(--shadow-sm); border: 1px solid rgba(11,46,89,0.04);
    transition: all 0.35s cubic-bezier(.22,1,.36,1);
    position: relative; overflow: hidden;
}
.prod-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px; }
.prod-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-lg); }
.prod-card .pc-icon {
    width: 56px; height: 56px; border-radius: 14px;
    display: flex; align-items: center; justify-content: center;
    font-size: 1.8rem; margin-bottom: 16px;
    background: linear-gradient(135deg, rgba(37,99,235,0.08), rgba(37,99,235,0.04));
}
.prod-card h4 { font-size: 1.15rem; color: var(--ink); font-weight: 800; }
.prod-card .pc-desc { color: var(--ink-light); font-size: 0.9rem; line-height: 1.7; margin-top: 8px; }
.prod-card ul { margin: 14px 0 0; padding-left: 0; list-style: none; }
.prod-card ul li {
    color: var(--ink-light); font-size: 0.86rem; line-height: 1.8;
    padding: 4px 0 4px 24px; position: relative;
}
.prod-card ul li::before { content: '✦'; position: absolute; left: 0; color: var(--jade); font-size: 0.7rem; }
.prod-card .func-tag {
    display: inline-block; background: linear-gradient(135deg, rgba(37,99,235,0.1), rgba(37,99,235,0.05));
    color: var(--jade-dark); font-size: 0.76rem; padding: 5px 13px;
    border-radius: 50px; margin: 4px 5px 0 0; font-weight: 500;
    border: 1px solid rgba(37,99,235,0.12);
}

/* 虚拟分身强调卡 */
.prod-card.feature {
    background: linear-gradient(160deg, #f3f9ff, #fff);
    border: 1px solid rgba(245,158,11,0.08);
}
.prod-card.feature::before { background: linear-gradient(90deg, var(--seal), var(--seal-light)); }
.prod-card.feature .pc-icon { background: linear-gradient(135deg, rgba(245,158,11,0.08), rgba(251,191,36,0.04)); }
.prod-card.feature .func-tag {
    background: linear-gradient(135deg, rgba(245,158,11,0.08), rgba(245,158,11,0.03));
    color: var(--seal); border-color: rgba(245,158,11,0.12);
}
.prod-card.feature ul li::before { color: var(--seal); }

/* ===== 模块操作按钮 ===== */
.prod-act {
    display: inline-flex; align-items: center; gap: 6px;
    margin-top: 18px; padding: 11px 22px; border-radius: 50px;
    background: linear-gradient(135deg, var(--jade-dark), var(--jade));
    color: #fff; text-decoration: none;
    font-size: 0.86rem; font-weight: 600; letter-spacing: 0.5px;
    transition: all 0.3s ease; box-shadow: 0 4px 14px rgba(29,78,216,0.25);
}
.prod-act:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(29,78,216,0.35); }
.prod-act.big { font-size: 0.96rem; padding: 14px 32px; }
.hw-cta { text-align: center; margin-top: 30px; }

/* ===== 硬件套件 ===== */
.hw-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.hw-card {
    background: #fff; border-radius: var(--radius); padding: 28px 20px; text-align: center;
    box-shadow: var(--shadow-sm); border: 1px solid rgba(11,46,89,0.04);
    transition: all 0.35s cubic-bezier(.22,1,.36,1);
    position: relative; overflow: hidden;
}
.hw-card::after {
    content: ''; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%);
    width: 60%; height: 3px; border-radius: 3px; opacity: 0; transition: opacity 0.3s;
}
.hw-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-lg); }
.hw-card:hover::after { opacity: 1; }
.hw-card:nth-child(1)::after { background: var(--jade); }
.hw-card:nth-child(2)::after { background: var(--seal); }
.hw-card:nth-child(3)::after { background: var(--blue-soft); }
.hw-card:nth-child(4)::after { background: var(--gold); }

.hw-card .hw-illu {
    width: 90px; height: 90px; margin: 0 auto 16px;
    filter: drop-shadow(0 4px 8px rgba(11,46,89,0.08));
    transition: transform 0.3s ease;
}
.hw-card:hover .hw-illu { transform: scale(1.08) rotate(2deg); }
.hw-card h4 { font-size: 1.1rem; color: var(--ink); font-weight: 800; }
.hw-card .hw-en { font-size: 0.72rem; color: var(--gold); letter-spacing: 1.5px; font-weight: 500; margin-top: 2px; }
.hw-card p { color: var(--ink-light); font-size: 0.84rem; line-height: 1.65; margin-top: 10px; }

/* ===== 技术参数卡 ===== */
.spec-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.spec-card {
    background: #fff; border-radius: var(--radius); padding: 26px 24px;
    box-shadow: var(--shadow-sm); border: 1px solid rgba(11,46,89,0.04);
    transition: all 0.3s ease; position: relative; overflow: hidden;
}
.spec-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); }
.spec-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px; }
.spec-card:nth-child(1)::before { background: linear-gradient(90deg, var(--jade), #60a5fa); }
.spec-card:nth-child(2)::before { background: linear-gradient(90deg, var(--seal), var(--seal-light)); }
.spec-card:nth-child(3)::before { background: linear-gradient(90deg, var(--gold), var(--gold-light)); }
.spec-card:nth-child(4)::before { background: linear-gradient(90deg, var(--blue-soft), #82b4e0); }
.spec-card:nth-child(5)::before { background: linear-gradient(90deg, var(--blue-sky), #7dd3fc); }
.spec-card:nth-child(6)::before { background: linear-gradient(90deg, #0b2e59, #15487f); }

.spec-card .spec-icon { font-size: 1.6rem; margin-bottom: 10px; }
.spec-card .spec-name { font-size: 0.88rem; color: var(--ink-light); font-weight: 600; }
.spec-card .spec-val {
    font-size: 1.7rem; font-weight: 900; margin: 8px 0;
    background: linear-gradient(135deg, var(--ink), var(--ink-light));
    -webkit-background-clip: text; -webkit-text-fill-color: transparent;
    background-clip: text;
}
.spec-card .spec-desc { font-size: 0.8rem; color: var(--ink-light); line-height: 1.6; opacity: 0.75; }

/* 保留旧表格样式作为 fallback */
.spec-table { width: 100%; border-collapse: collapse; background: #fff; border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow-sm); }
.spec-table th, .spec-table td { padding: 16px 20px; text-align: left; border-bottom: 1px solid var(--rice-dark); }
.spec-table thead { background: var(--jade-dark); color: #fff; }
.spec-table thead th { font-size: 0.92rem; letter-spacing: 1px; }
.spec-table tbody tr:hover { background: var(--rice); }
.spec-table td.spec-name { font-weight: 700; color: var(--ink); }
.spec-table td.spec-val { color: var(--seal); font-weight: 700; font-family: monospace; font-size: 0.95rem; }
.spec-table td.spec-desc { color: var(--ink-light); font-size: 0.84rem; }

/* ===== AI 辅助闭环 ===== */
.ai-flow {
    display: flex; align-items: stretch; justify-content: center; gap: 0;
    flex-wrap: wrap; padding: 20px 0;
}
.ai-node {
    background: #fff; border-radius: var(--radius); padding: 24px 18px; text-align: center;
    box-shadow: var(--shadow-sm); border: 1px solid rgba(11,46,89,0.04);
    min-width: 120px; flex: 1; max-width: 160px; transition: all 0.3s ease; position: relative;
}
.ai-node:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); }
.ai-node .ai-icon {
    width: 54px; height: 54px; border-radius: 14px;
    display: flex; align-items: center; justify-content: center;
    font-size: 1.6rem; margin: 0 auto 12px;
    background: linear-gradient(135deg, rgba(37,99,235,0.08), rgba(37,99,235,0.03));
}
.ai-node h4 { font-size: 1rem; color: var(--ink); font-weight: 800; }
.ai-node p { font-size: 0.78rem; color: var(--ink-light); margin-top: 6px; line-height: 1.5; }
.ai-node.core {
    background: linear-gradient(160deg, var(--seal), var(--seal-light));
    color: #fff; border: none; min-width: 140px; max-width: 180px;
}
.ai-node.core .ai-icon { background: rgba(255,255,255,0.18); }
.ai-node.core h4, .ai-node.core p { color: #fff; }

.ai-arrow {
    display: flex; align-items: center; justify-content: center;
    color: var(--gold); font-size: 1.4rem; font-weight: 300;
    padding: 0 4px; flex-shrink: 0;
}
.ai-arrow svg { width: 28px; height: 28px; fill: var(--gold); opacity: 0.5; }

/* ===== 成熟度 ===== */
.maturity-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.maturity-card {
    background: #fff; border-radius: var(--radius); padding: 28px;
    box-shadow: var(--shadow-sm); border: 1px solid rgba(11,46,89,0.04);
    transition: all 0.3s ease;
}
.maturity-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); }
.maturity-card .status-pill {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 6px 16px; border-radius: 50px; font-size: 0.8rem; font-weight: 700; margin-bottom: 14px;
}
.maturity-card .ready {
    background: linear-gradient(135deg, rgba(37,99,235,0.1), rgba(96,165,250,0.08));
    color: var(--jade-dark); border: 1px solid rgba(37,99,235,0.15);
}
.maturity-card .beta {
    background: linear-gradient(135deg, rgba(245,158,11,0.12), rgba(251,191,36,0.08));
    color: #c47d0a; border: 1px solid rgba(245,158,11,0.2);
}
.maturity-card h4 { font-size: 1.1rem; color: var(--ink); font-weight: 800; }
.maturity-card p { color: var(--ink-light); font-size: 0.88rem; line-height: 1.75; margin-top: 10px; }

.maturity-bar {
    margin-top: 14px; height: 6px; border-radius: 6px;
    background: var(--rice-dark); overflow: hidden;
}
.maturity-bar-fill {
    height: 100%; border-radius: 6px;
    background: linear-gradient(90deg, var(--jade), #60a5fa);
    transition: width 1s ease;
}
.maturity-card:nth-child(2) .maturity-bar-fill { background: linear-gradient(90deg, var(--jade), #60a5fa); }
.maturity-card:nth-child(3) .maturity-bar-fill { background: linear-gradient(90deg, var(--gold), var(--gold-light)); width: 60% !important; }

/* ===== 创新点 ===== */
.innov-wrap {
    background: linear-gradient(145deg, #0b2e59 0%, #103a6b 50%, #0e2742 100%);
    color: #fff; border-radius: var(--radius-lg); padding: 56px 48px;
    text-align: center; position: relative; overflow: hidden;
}
.innov-wrap::before {
    content: ''; position: absolute; top: -40%; right: -20%;
    width: 500px; height: 500px;
    background: radial-gradient(circle, rgba(245,158,11,0.1) 0%, transparent 60%);
}
.innov-wrap h3 { font-size: 1.7rem; margin-bottom: 18px; position: relative; }
.innov-wrap p {
    color: rgba(255,255,255,0.78); font-size: 1.02rem; line-height: 1.95;
    max-width: 820px; margin: 0 auto; position: relative;
}
.innov-wrap .loop-tags {
    display: flex; justify-content: center; gap: 12px; margin-top: 28px; flex-wrap: wrap; position: relative;
}
.innov-wrap .loop-tags span {
    background: rgba(255,255,255,0.07); border: 1px solid rgba(245,158,11,0.3);
    color: var(--gold-light); padding: 10px 24px; border-radius: 50px;
    font-size: 0.92rem; font-weight: 500; transition: all 0.3s ease;
}
.innov-wrap .loop-tags span:hover {
    background: rgba(245,158,11,0.12); border-color: var(--gold); transform: translateY(-2px);
}

/* ===== 应用场景 ===== */
.scene-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.scene-card {
    background: #fff; border-radius: var(--radius); overflow: hidden;
    box-shadow: var(--shadow-sm); border: 1px solid rgba(11,46,89,0.04);
    transition: all 0.35s cubic-bezier(.22,1,.36,1);
    position: relative;
}
.scene-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-lg); }
.scene-card .scene-banner {
    height: 100px; display: flex; align-items: center; justify-content: center;
    font-size: 2.8rem; position: relative; overflow: hidden;
}
.scene-card:nth-child(1) .scene-banner { background: linear-gradient(135deg, #e6f0fb, #cfe2fa); }
.scene-card:nth-child(2) .scene-banner { background: linear-gradient(135deg, #fef3e2, #fbe3c2); }
.scene-card:nth-child(3) .scene-banner { background: linear-gradient(135deg, #eaf3ff, #d3e6fb); }
.scene-card:nth-child(4) .scene-banner { background: linear-gradient(135deg, #eef1fb, #dde3f7); }

.scene-card .scene-body { padding: 22px 20px; }
.scene-card .scene-icon { display: none; }
.scene-card h4 { font-size: 1.05rem; color: var(--ink); font-weight: 800; }
.scene-card p { color: var(--ink-light); font-size: 0.84rem; line-height: 1.7; margin-top: 8px; }
.scene-card .scene-case {
    margin-top: 14px; padding-top: 12px;
    border-top: 1px dashed var(--rice-dark); font-size: 0.8rem; color: var(--jade-dark);
}
.scene-card .scene-case b { color: var(--seal); }

/* ===== CTA ===== */
.prod-cta {
    background: linear-gradient(165deg, #0b2e59 0%, #103a6b 50%, #0f2e4d 100%);
    color: #fff; text-align: center; padding: 80px 0;
    position: relative; overflow: hidden;
}
.prod-cta::before {
    content: ''; position: absolute; left: 50%; top: 50%;
    transform: translate(-50%, -50%); width: 700px; height: 700px;
    background: radial-gradient(circle, rgba(245,158,11,0.06) 0%, transparent 60%);
}
.prod-cta .prod-container { position: relative; z-index: 2; }
.prod-cta h2 { font-size: 2.1rem; letter-spacing: 2px; font-weight: 900; }
.prod-cta p { color: rgba(255,255,255,0.72); margin: 16px 0 32px; font-size: 1.02rem; }
.prod-cta .cta-btns { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }
.prod-cta .btn-primary, .prod-cta .btn-ghost {
    padding: 15px 38px; border-radius: 50px; font-size: 0.96rem;
    font-weight: 600; text-decoration: none; letter-spacing: 1px; transition: all 0.3s ease;
}
.prod-cta .btn-primary {
    background: linear-gradient(135deg, var(--seal), var(--seal-light));
    color: #fff; box-shadow: 0 6px 24px rgba(245,158,11,0.35);
}
.prod-cta .btn-primary:hover { transform: translateY(-3px); box-shadow: 0 10px 32px rgba(245,158,11,0.45); }
.prod-cta .btn-ghost {
    background: transparent; color: var(--gold-light);
    border: 1.5px solid rgba(245,158,11,0.4);
}
.prod-cta .btn-ghost:hover { background: rgba(245,158,11,0.1); border-color: var(--gold); }

/* ===== 页脚 ===== */
.prod-footer { background: var(--ink); color: rgba(255,255,255,0.55); padding: 56px 0 28px; }
.prod-footer .footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 36px; }
.prod-footer h4 { color: #fff; margin-bottom: 16px; font-size: 1rem; font-weight: 700; }
.prod-footer a, .prod-footer p { color: rgba(255,255,255,0.5); text-decoration: none; font-size: 0.86rem; line-height: 2; }
.prod-footer a:hover { color: var(--gold); }
.prod-footer .footer-bottom {
    border-top: 1px solid rgba(255,255,255,0.06); margin-top: 36px;
    padding-top: 20px; text-align: center; font-size: 0.78rem;
}

/* ===== 响应式 ===== */
@media (max-width: 1024px) {
    .hw-grid { grid-template-columns: repeat(2, 1fr); }
    .scene-grid { grid-template-columns: repeat(2, 1fr); }
    .spec-cards { grid-template-columns: repeat(2, 1fr); }
    .entry-grid { grid-template-columns: repeat(2, 1fr); }
    .ai-flow { flex-wrap: wrap; justify-content: center; }
    .ai-arrow { transform: rotate(90deg); padding: 8px 0; }
}
@media (max-width: 768px) {
    .arch-wrap, .prod-grid { grid-template-columns: 1fr; }
    .maturity-grid { grid-template-columns: 1fr; }
    .prod-footer .footer-grid { grid-template-columns: 1fr; }
    .prod-hero h1 { font-size: 2rem; }
    .prod-hero .hero-tags { grid-template-columns: repeat(2, 1fr); }
    /* 主导航：手机端改为可横向滑动条，保证可达（不再 display:none） */
    .prod-navbar .prod-container { flex-wrap: wrap; height: auto; padding-top: 8px; padding-bottom: 8px; }
    .prod-nav-links {
        display: flex; order: 3; flex-basis: 100%; justify-content: flex-start;
        overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch;
    }
    .prod-nav-links::-webkit-scrollbar { display: none; }
    .prod-nav-links a { white-space: nowrap; }
    .entry-grid { grid-template-columns: 1fr 1fr; }
    /* AI 闭环流程：手机端纵向堆叠，箭头旋转居间，避免横向溢出 */
    .ai-flow { flex-direction: column; align-items: center; }
    .ai-arrow { transform: rotate(90deg); padding: 8px 0; }
    .ai-node { max-width: 240px; }
    .scene-grid { grid-template-columns: 1fr; }
    .spec-cards { grid-template-columns: 1fr; }
    .innov-wrap { padding: 36px 24px; }
    .prod-section { padding: 56px 0; }
    .prod-container { padding: 0 18px; }
}
@media (max-width: 480px) {
    .prod-navbar .prod-container { gap: 8px; padding: 8px 14px; }
    .prod-logo .logo-sub { display: none; }
    .prod-logo .logo-title { font-size: 0.82rem; }
    .nav-cta { padding: 6px 12px; font-size: 0.74rem; }
    .prod-hero { min-height: 420px; }
    .prod-hero h1 { font-size: 1.6rem; letter-spacing: 1px; }
    .prod-hero .hero-sub { font-size: 0.96rem; letter-spacing: 1px; padding: 0 6px; }
    .prod-hero .hero-tags { grid-template-columns: 1fr; }
    .entry-grid { grid-template-columns: 1fr; }
    .hw-grid, .scene-grid, .spec-cards { grid-template-columns: 1fr; }
    .prod-section-head h2 { font-size: 1.5rem; letter-spacing: 2px; }
    .prod-container { padding: 0 14px; }
}
