/* ===== B2B01 门户 — AI 时代清爽蓝风格 v4 ===== */
:root{--pri:#2563eb;--pri2:#3b82f6;--d:#0f172a;--t1:#1e293b;--t2:#64748b;--t3:#94a3b8;--bg:#f8fafc;--card:#fff;--bor:#e2e8f0;--blue-bg:#eff6ff}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:-apple-system,"PingFang SC","Microsoft YaHei","Segoe UI",sans-serif;background:var(--bg);color:var(--t1);font-size:15px;line-height:1.68}
a{text-decoration:none;color:inherit}
img{max-width:100%}
.pw{max-width:1160px;margin:0 auto;padding:0 clamp(18px,3vw,28px)}

/* ===== 顶导 ===== */
.ptop{background:rgba(255,255,255,.96);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--bor);position:sticky;top:0;z-index:100}
.ptop .pw{display:flex;align-items:center;justify-content:space-between;height:56px}
.ptop .logo{font-size:19px;font-weight:900;color:var(--pri);letter-spacing:-0.4px}
.ptop nav{display:flex;gap:clamp(10px,2vw,22px)}
.ptop nav a{font-size:14px;font-weight:600;color:var(--t2);padding:6px 0;border-bottom:2px solid transparent;transition:.15s}
.ptop nav a:hover,.ptop nav a.active{color:var(--pri);border-color:var(--pri)}
.ptop .act{display:flex;align-items:center;gap:10px}
.ptop .btn{display:inline-block;padding:8px 20px;border-radius:10px;font-size:13px;font-weight:700;transition:.15s;white-space:nowrap}
.ptop .btn-blue{background:var(--pri);color:#fff;box-shadow:0 2px 8px rgba(37,99,235,.2)}
.ptop .btn-blue:hover{background:#1d4ed8;box-shadow:0 4px 14px rgba(37,99,235,.3)}
.ptop .btn-ghost{color:var(--t2);border:1.5px solid var(--bor)}
.ptop .btn-ghost:hover{border-color:var(--pri);color:var(--pri)}
.ptop .hi{font-size:13px;color:var(--t2)}
/* 登录表单 */
.plogin{display:flex;align-items:center;gap:6px}
.plogin input{border:1px solid var(--bor);border-radius:8px;padding:6px 10px;font-size:13px;width:100px;outline:none;transition:border-color .15s}
.plogin input:focus{border-color:var(--pri)}
.plogin button{background:var(--pri);color:#fff;border:none;border-radius:8px;padding:6px 14px;font-size:13px;font-weight:700;cursor:pointer;transition:.15s}
.plogin button:hover{background:#1d4ed8}

/* ===== Banner — 深蓝AI风 + 动效 ===== */
@keyframes bannerGlow{0%,100%{opacity:.3}50%{opacity:.6}}
@keyframes bannerFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes bannerPulse{0%,100%{box-shadow:0 12px 36px rgba(37,99,235,.08)}50%{box-shadow:0 20px 52px rgba(37,99,235,.14)}}
.pban{background:linear-gradient(160deg,#dbeafe 0%,#e0e7ff 30%,#eff6ff 55%,#f0f4ff 80%,#f8fafc 100%);padding:clamp(60px,6vw,82px) 0 clamp(48px,5vw,64px);text-align:center;position:relative;overflow:hidden}
.pban::before{content:'';position:absolute;top:-20%;left:50%;transform:translateX(-50%);width:800px;height:800px;background:radial-gradient(circle,rgba(59,130,246,.1) 0%,rgba(37,99,235,.04) 40%,transparent 70%);animation:bannerGlow 4s ease-in-out infinite;pointer-events:none}
.pban::after{content:'';position:absolute;top:20%;right:10%;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(96,165,250,.06) 0%,transparent 70%);animation:bannerGlow 3s ease-in-out infinite 1.5s;pointer-events:none}
.pban .domain{font-size:clamp(40px,8vw,60px);font-weight:900;color:#1e3a8a;letter-spacing:4px;margin-bottom:12px;font-variant:small-caps;position:relative;z-index:1;animation:bannerFloat 3s ease-in-out infinite}
.pban .slogan{color:#94a3b8;font-size:clamp(14px,1.5vw,16px);margin-bottom:32px;position:relative;z-index:1}
.psbox{max-width:620px;margin:0 auto 22px;display:flex;background:var(--card);border-radius:16px;overflow:hidden;box-shadow:0 16px 48px rgba(37,99,235,.1);position:relative;z-index:1;animation:bannerPulse 3s ease-in-out infinite}
.psbox input{flex:1;border:none;outline:none;padding:16px 22px;font-size:15px;color:var(--t1)}
.psbox input::placeholder{color:var(--t3)}
.psbox button{background:var(--pri);color:#fff;border:none;padding:0 36px;font-size:15px;font-weight:800;cursor:pointer;transition:.15s;white-space:nowrap}
.psbox button:hover{background:#1d4ed8}
.pban .links{font-size:13px;color:var(--t3);position:relative;z-index:1}
.pban .links a{color:var(--pri);font-weight:700;margin:0 10px;transition:.15s}
.pban .links a:hover{color:#1d4ed8}

/* ===== 子页面 banner ===== */
.pban-sub{background:linear-gradient(150deg,#dbeafe,#e0e7ff 50%,#eff6ff);border-bottom:1px solid var(--bor);padding:clamp(28px,3vw,40px) 0;text-align:center}
.pban-sub h1{font-size:clamp(20px,2.4vw,28px);font-weight:900;color:var(--d);margin-bottom:6px}
.pban-sub p{font-size:14px;color:var(--t2)}

/* ===== 内容区块 ===== */
.psec{padding:clamp(36px,3.5vw,50px) 0}
.psec-light{background:#fff}
.psec-h{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:20px}
.psec-h h2{font-size:19px;font-weight:800;color:var(--d)}
.psec-h a{font-size:13px;color:var(--pri);font-weight:700;transition:opacity .15s}
.psec-h a:hover{opacity:.8}

/* 企业卡片 3列 */
.e-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.e-card{background:var(--card);border:1px solid var(--bor);border-radius:14px;padding:20px 18px;transition:.18s;display:block;box-shadow:0 1px 2px rgba(0,0,0,.03)}
.e-card:hover{border-color:#bfdbfe;box-shadow:0 10px 28px rgba(37,99,235,.06);transform:translateY(-2px)}
.e-card .ec-name{font-size:16px;font-weight:800;color:var(--d);margin-bottom:4px}
.e-card .ec-hero{font-size:13px;font-weight:600;color:var(--pri);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.e-card .ec-desc{font-size:13px;color:var(--t2);margin-bottom:12px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:42px}
.e-card .ec-tags{display:flex;gap:6px;flex-wrap:wrap}
.e-tag{background:var(--blue-bg);color:var(--pri);font-size:11px;font-weight:600;padding:3px 10px;border-radius:12px}

/* 产品卡片 4列 */
.p-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}
.p-card{background:var(--card);border:1px solid var(--bor);border-radius:14px;padding:17px 15px;transition:.18s;display:block;box-shadow:0 1px 2px rgba(0,0,0,.02)}
.p-card:hover{border-color:#bfdbfe;box-shadow:0 8px 24px rgba(37,99,235,.05);transform:translateY(-2px)}
.p-card .pc-cat{display:inline-block;background:var(--blue-bg);color:var(--pri);font-size:11px;font-weight:700;padding:3px 10px;border-radius:10px;margin-bottom:9px}
.p-card .pc-name{font-size:15px;font-weight:800;color:var(--d);margin-bottom:5px}
.p-card .pc-desc{font-size:12px;color:var(--t2);margin-bottom:9px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.p-card .pc-meta{font-size:11px;color:var(--t3)}
.p-card .pc-meta b{color:var(--t1)}

/* 资讯 2列 */
.n-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.n-card{background:var(--card);border:1px solid var(--bor);border-radius:14px;padding:18px 20px;transition:.15s;display:block}
.n-card:hover{border-color:#bfdbfe;background:#fafcff}
.n-card .nc-title{font-size:15px;font-weight:700;color:var(--d);margin-bottom:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.n-card .nc-desc{font-size:13px;color:var(--t2);margin-bottom:10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.6}
.n-card .nc-meta{font-size:12px;color:var(--t3)}
.n-card .nc-meta b{color:var(--t1)}

/* 空 */
.pempty{text-align:center;color:var(--t3);padding:52px 0;font-size:14px}
.pempty a{color:var(--pri);font-weight:700}

/* CTA */
.pcta{padding:clamp(32px,3vw,48px) 0}
.c-box{background:linear-gradient(135deg,var(--pri),#7c3aed);border-radius:18px;color:#fff;padding:clamp(30px,3vw,40px);text-align:center;box-shadow:0 14px 40px rgba(37,99,235,.18)}
.c-box h3{font-size:21px;font-weight:900;margin-bottom:8px}
.c-box p{color:#dbe4ff;font-size:14px;margin-bottom:20px}
.c-box a{display:inline-block;background:#fff;color:var(--pri);font-weight:800;border-radius:10px;padding:12px 34px;font-size:14px;transition:transform .15s}
.c-box a:hover{transform:translateY(-2px)}

/* 底部 */
.pfoot{border-top:1px solid var(--bor);background:#fff;padding:clamp(34px,4vw,48px) 0 0}
.pfoot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:clamp(18px,3vw,30px);padding-bottom:30px}
.pfoot-grid h4{font-size:14px;font-weight:800;color:var(--d);margin-bottom:13px}
.pfoot-grid p,.pfoot-grid li{font-size:13px;color:var(--t2);line-height:2.1;list-style:none}
.pfoot-grid a{color:var(--t2);transition:color .15s}
.pfoot-grid a:hover{color:var(--pri)}
.pfoot-btm{margin-top:22px;padding:16px 0;border-top:1px solid #f3f4f7;font-size:12px;text-align:center;color:var(--t3)}

/* 分页 */
.pager{display:flex;gap:5px;justify-content:center;margin-top:26px;flex-wrap:wrap}
.pager a,.pager span{padding:8px 14px;border-radius:8px;font-size:13px;font-weight:600;border:1px solid var(--bor);background:#fff;color:var(--t2);transition:.15s}
.pager a:hover{border-color:var(--pri);color:var(--pri);background:var(--blue-bg)}

/* 响应式 */
@media(max-width:900px){.e-grid,.n-grid{grid-template-columns:repeat(2,1fr)}.p-grid{grid-template-columns:repeat(2,1fr)}.pfoot-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.e-grid,.p-grid,.n-grid{grid-template-columns:1fr}.pfoot-grid{grid-template-columns:1fr;display:none}.pfoot-btm{margin-top:0;border-top:none}.psbox input{font-size:14px;padding:14px 16px}.psbox button{padding:0 22px;font-size:14px}.pban .domain{font-size:32px}.ptop nav{display:none}.plogin{display:none}.ptop .hi{font-size:12px}.ptop .act{gap:6px}}
