:root{--blue:#0b2a43;--blue2:#11406b;--green:#1fa57f;--green-d:#17906d;--ink:#21313f;--gray:#6b7f8d;--bg:#f5f8f7}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{font-family:"PingFang SC","Microsoft YaHei","Helvetica Neue",Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.6}

/* ===== 顶部导航 ===== */
.nav{position:sticky;top:0;z-index:100;background:#fff;box-shadow:0 1px 8px rgba(11,42,67,.08)}
.nav-in{max-width:1120px;margin:0 auto;padding:0 20px;height:64px;display:flex;align-items:center;justify-content:space-between}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none}
.logo-badge{width:34px;height:34px;border-radius:9px;background:linear-gradient(135deg,#0b2a43,#1fa57f);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:16px}
.logo-txt{font-size:18px;font-weight:800;color:var(--blue);letter-spacing:.02em}
.nav-menu{display:flex;gap:30px;list-style:none}
.nav-menu a{text-decoration:none;color:var(--ink);font-size:15px;transition:color .2s}
.nav-menu a:hover{color:var(--green)}
.nav-menu a.active{color:var(--green);font-weight:600}
.nav-tel{display:inline-flex;align-items:center;gap:6px;background:var(--green);color:#fff;padding:9px 18px;border-radius:999px;font-size:14px;font-weight:600;text-decoration:none}
.nav-tel:hover{background:var(--green-d)}

/* ===== 主视觉 ===== */
.hero{position:relative;color:#fff;padding:108px 20px 96px;text-align:center;overflow:hidden}
.hero-bg{position:absolute;inset:0;background:url('/images/hero-lab.jpg') center/cover no-repeat}
.hero-mask{position:absolute;inset:0;background:linear-gradient(120deg,rgba(11,42,67,.92) 30%,rgba(17,64,107,.75) 60%,rgba(22,96,143,.55))}
.hero-in{position:relative;max-width:880px;margin:0 auto}
.hero-tag{display:inline-block;font-size:13px;letter-spacing:.14em;color:#a9e6d3;border:1px solid rgba(169,230,211,.45);padding:6px 18px;border-radius:999px;margin-bottom:26px}
.hero h1{font-size:54px;font-weight:800;margin-bottom:16px;letter-spacing:.02em}
.hero p{font-size:19px;color:#d9ebf5;margin-bottom:34px;line-height:1.8}
.hero-cta{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}
.btn{display:inline-block;padding:13px 32px;border-radius:999px;font-size:16px;font-weight:600;cursor:pointer;border:none;text-decoration:none;transition:transform .2s,box-shadow .2s;line-height:1.2}
.btn:hover{transform:translateY(-2px)}
.btn-green{background:var(--green);color:#fff;box-shadow:0 8px 20px rgba(31,165,127,.35)}
.btn-green:hover{background:var(--green-d)}
.btn-ghost{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.55)}
.btn-ghost:hover{background:rgba(255,255,255,.12)}
.btn-light{background:#fff;color:var(--blue);box-shadow:0 8px 24px rgba(0,0,0,.18)}
.btn-light:hover{background:#eef6f2}
.hero-meta{display:flex;gap:28px;justify-content:center;flex-wrap:wrap;margin-top:36px;color:#c2dcec;font-size:14px}

/* ===== 内容区 ===== */
.sec{padding:76px 20px;max-width:1120px;margin:0 auto}
.sec-head{text-align:center;margin-bottom:44px}
.sec-head h2{font-size:30px;font-weight:800;margin-bottom:8px;color:var(--blue)}
.sec-head p{color:var(--gray);font-size:15px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.card{background:#fff;border:1px solid #e6edeb;border-radius:16px;padding:30px 26px;box-shadow:0 4px 16px rgba(11,42,67,.06);transition:transform .2s,box-shadow .2s}
.card:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(11,42,67,.12)}
.card-ico{width:52px;height:52px;border-radius:12px;background:#eaf6f1;color:var(--green);display:flex;align-items:center;justify-content:center;font-size:24px;margin-bottom:16px}
.card h3{font-size:18px;margin-bottom:10px;color:var(--ink)}
.card p{font-size:14px;color:#5c6f7c;line-height:1.8}
.card a{display:inline-block;margin-top:14px;color:var(--green);font-weight:600;font-size:14px;text-decoration:none}
.card a:hover{color:var(--green-d)}

/* ===== 资讯 ===== */
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.post{border:1px solid #e6edeb;border-radius:16px;padding:24px;background:#fff;box-shadow:0 4px 16px rgba(11,42,67,.06);display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}
.post:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(11,42,67,.12)}
.post-date{font-size:12px;color:var(--gray);margin-bottom:8px}
.post h3{font-size:17px;margin-bottom:10px;line-height:1.5}
.post h3 a{color:var(--ink);text-decoration:none}
.post h3 a:hover{color:var(--green)}
.post p{font-size:13px;color:#5c6f7c;line-height:1.75;flex:1}
.post-more{margin-top:16px;color:var(--green);font-weight:600;font-size:14px;text-decoration:none}
.sec-more{text-align:center;margin-top:38px}

/* ===== 内页 Banner + 正文 ===== */
.page-banner{background:linear-gradient(135deg,#0b2a43 0%,#11406b 55%,#16608f 100%);color:#fff;text-align:center;padding:64px 20px 56px;position:relative;overflow:hidden}
.page-banner::after{content:"";position:absolute;inset:0;background:radial-gradient(520px 260px at 80% 15%,rgba(31,165,127,.3),transparent 60%)}
.page-banner .pb-in{position:relative;max-width:860px;margin:0 auto}
.page-banner h1{font-size:34px;font-weight:800;margin-bottom:10px}
.page-banner p{color:#c8deee;font-size:15px}
.page-body{max-width:920px;margin:0 auto;padding:56px 20px 72px}
.content-card{background:#fff;border:1px solid #e6edeb;border-radius:16px;padding:40px 42px;box-shadow:0 4px 16px rgba(11,42,67,.06)}
.content-card h2{font-size:22px;color:var(--blue);margin:30px 0 12px;padding-bottom:8px;border-bottom:2px solid #eaf0ee}
.content-card h2:first-child{margin-top:0}
.content-card h3{font-size:18px;color:var(--ink);margin:22px 0 8px}
.content-card p{font-size:15px;color:#3d4f5b;margin:0 0 14px;line-height:1.9}
.content-card ul,.content-card ol{margin:0 0 14px 22px;color:#3d4f5b;font-size:15px;line-height:1.9}
.content-card li{margin-bottom:6px}
.content-card blockquote{margin:16px 0;padding:12px 18px;border-left:4px solid var(--green);background:#eef7f3;color:#2c5b4a;border-radius:6px}
.content-card a{color:var(--green)}
.wechat-qr{max-width:240px;border:1px solid #e6edeb;border-radius:12px;padding:8px;background:#fff;margin-top:12px}
.post-single-head .ps-date{color:var(--gray);font-size:13px;margin-bottom:6px}
.post-single-head h1{font-size:30px;color:var(--ink);margin-bottom:10px}

/* ===== CTA ===== */
.cta{background:linear-gradient(135deg,#0b2a43,#11406b);color:#fff;text-align:center;padding:60px 20px}
.cta h2{font-size:28px;margin-bottom:10px}
.cta p{color:#c6dcea;margin-bottom:26px;font-size:15px}

/* ===== 页脚 ===== */
.footer{background:#081f33;color:#b5c9d8;padding:34px 20px;font-size:13px}
.footer-in{max-width:1120px;margin:0 auto;display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px}
.footer a{color:#8fd6bc;text-decoration:none}

/* ===== AI 浮窗 ===== */
#lab-ai-btn{position:fixed;right:22px;bottom:22px;z-index:99999;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#1f7a5c,#22a06b);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 6px 20px rgba(31,122,92,.4);transition:transform .2s;font-size:24px}
#lab-ai-btn:hover{transform:scale(1.08)}
#lab-ai-btn::before{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid rgba(34,160,107,.6);animation:labpulse 2s infinite}
@keyframes labpulse{0%{transform:scale(1);opacity:.9}70%{transform:scale(1.5);opacity:0}100%{opacity:0}}
#lab-ai-panel{position:fixed;right:22px;bottom:88px;z-index:99999;width:360px;max-width:calc(100vw - 40px);height:470px;max-height:calc(100vh - 120px);background:#fff;border-radius:16px;box-shadow:0 12px 40px rgba(0,0,0,.25);display:none;flex-direction:column;overflow:hidden}
#lab-ai-panel.show{display:flex}
#lab-ai-head{background:linear-gradient(135deg,#1f7a5c,#22a06b);color:#fff;padding:14px 16px;display:flex;align-items:center;gap:10px}
.ai-avatar{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.22);display:flex;align-items:center;justify-content:center;font-weight:700}
.ai-ttl{flex:1}
.ai-ttl b{display:block;font-size:15px}
.ai-ttl span{font-size:12px;opacity:.85}
#lab-ai-close{background:none;border:none;color:#fff;font-size:22px;cursor:pointer;line-height:1}
#lab-ai-msgs{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px;background:#f6f8f7}
.ai-msg{max-width:85%;padding:10px 13px;border-radius:12px;font-size:14px;line-height:1.6;white-space:pre-wrap;word-break:break-word}
.ai-in{background:#fff;border:1px solid #e5ece8;align-self:flex-start;border-bottom-left-radius:4px}
.ai-out{background:#22a06b;color:#fff;align-self:flex-end;border-bottom-right-radius:4px}
#lab-ai-quick{padding:8px 12px;display:flex;flex-wrap:wrap;gap:6px;background:#fff;border-top:1px solid #eef2f0}
#lab-ai-quick button{border:1px solid #22a06b;color:#1f7a5c;background:#fff;border-radius:16px;padding:5px 11px;font-size:12px;cursor:pointer}
#lab-ai-quick button:hover{background:#eaf6f1}
#lab-ai-inputrow{display:flex;gap:8px;padding:10px 12px;background:#fff;border-top:1px solid #eef2f0}
#lab-ai-input{flex:1;border:1px solid #dbe5e0;border-radius:20px;padding:9px 14px;font-size:14px;outline:none}
#lab-ai-input:focus{border-color:#22a06b}
#lab-ai-send{background:#22a06b;color:#fff;border:none;border-radius:20px;padding:0 18px;font-size:14px;cursor:pointer}
#lab-ai-send:hover{background:#1f7a5c}

/* ===== 响应式 ===== */
@media(max-width:860px){.nav-menu{display:none}.cards,.posts{grid-template-columns:1fr}.hero h1{font-size:40px}.hero{padding:80px 20px 76px}.page-body{padding:40px 16px 56px}.content-card{padding:28px 22px}}
@media(max-width:480px){.hero h1{font-size:30px}.hero-meta{gap:12px}.nav-tel{padding:8px 14px;font-size:13px}.page-banner h1{font-size:26px}}
