/* =========================================================
   森倍安官网 · 公共样式（全站共用）
   视觉规范：主蓝 #1B4AA0 / 深蓝 #0D3D8C / 页脚 #0B2F6B
             强调橙 #F2711C / 浅底 #F4F7FB
             标题 #16356E / 正文 #55606E / 次要 #8A95A6
             荣誉金 #C9A227 / 央视红 #C8102E
   版式：内容区 1320px；区块标题 = 中文 34px + 英文 13px + 40×4 橙线
   ========================================================= */

:root{
  --brand:#1B4AA0;
  --brand-dark:#0D3D8C;
  --brand-deep:#0E3E8F;
  --footer:#0B2F6B;
  --signal:#F2711C;
  --signal-dark:#D95E0E;
  --alt:#F4F7FB;
  --ink:#16356E;
  --body:#55606E;
  --muted:#8A95A6;
  --gold:#C9A227;
  --gold-light:#E8D08A;
  --cctv-red:#C8102E;
  --line:#E6EBF2;
  --white:#FFFFFF;
  --cn:"Noto Sans SC","Source Han Sans SC","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  --shadow:0 4px 18px rgba(22,53,110,.07);
  --shadow-up:0 12px 32px rgba(22,53,110,.13);
  --radius:12px;
  --wrap:1320px;
}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--cn);color:var(--body);background:var(--white);font-size:15px;line-height:1.75;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
ul{list-style:none}
button{font-family:var(--cn);cursor:pointer;border:none;background:none;color:inherit}
input,select,textarea{font-family:var(--cn)}
:focus-visible{outline:3px solid var(--brand);outline-offset:2px;border-radius:4px}

.container{width:var(--wrap);max-width:calc(100% - 48px);margin:0 auto}
.section{padding:84px 0}
.section.alt{background:var(--alt)}
.skip-link{position:absolute;left:-9999px;top:0;z-index:300;background:var(--brand);color:#fff;padding:10px 18px;border-radius:0 0 8px 0;font-weight:700}
.skip-link:focus{left:0}

/* ---------- 按钮 ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:15px;font-weight:700;border-radius:6px;padding:13px 32px;transition:background .2s,color .2s,border-color .2s,box-shadow .2s,transform .2s;line-height:1.4;white-space:nowrap}
.btn-orange{background:var(--signal);color:#fff;box-shadow:0 6px 16px rgba(242,113,28,.28)}
.btn-orange:hover{background:var(--signal-dark);transform:translateY(-1px)}
.btn-blue-line{border:1.5px solid var(--brand);color:var(--brand);background:transparent}
.btn-blue-line:hover{background:var(--brand);color:#fff}
.btn-white-line{border:1.5px solid rgba(255,255,255,.75);color:#fff;background:transparent}
.btn-white-line:hover{background:#fff;color:var(--brand)}
.btn-sm{padding:9px 22px;font-size:14px}

/* ---------- 区块标题（眉标 + 中文题 + 橙线） ---------- */
.sec-head{text-align:center;margin-bottom:52px}
.sec-head .eyebrow{font-size:13px;letter-spacing:4px;color:var(--muted);font-weight:500;text-transform:uppercase}
.sec-head h2{font-size:34px;font-weight:900;color:var(--ink);margin-top:10px;letter-spacing:1px;line-height:1.4}
.sec-head .rule{width:40px;height:4px;background:var(--signal);border-radius:2px;margin:16px auto 0}
.sec-head .lead{margin-top:16px;font-size:15px;color:var(--body)}
.sec-head.left{text-align:left}
.sec-head.left .rule{margin-left:0}

/* =========================================================
   1. 公共头部：信息条 + 导航（全站一致）
   ========================================================= */
.topbar{background:var(--brand);color:#fff;height:38px;display:flex;align-items:center;font-size:12.5px}
.topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:16px}
.tb-left{opacity:.95;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tb-sep{margin:0 8px;opacity:.6}
.tb-right{display:flex;align-items:center;gap:18px;white-space:nowrap}
.tb-hot{color:rgba(255,255,255,.78)}
.tb-msg{color:#fff;opacity:.95;border-bottom:1px solid rgba(255,255,255,.4);padding-bottom:1px;transition:border-color .2s}
.tb-msg:hover{border-bottom-color:#fff}

.nav{position:sticky;top:0;z-index:120;background:#fff;height:86px;border-bottom:1px solid var(--line);box-shadow:0 2px 12px rgba(22,53,110,.05)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:86px;gap:24px}
.logo{display:flex;align-items:center;flex-shrink:0}
.logo img{height:46px;width:auto}
.menu{display:flex;align-items:center;gap:26px}
.menu a{font-size:15px;color:var(--ink);font-weight:500;padding:8px 2px;position:relative;transition:color .18s;white-space:nowrap}
.menu a:hover{color:var(--brand)}
.menu a.active{color:var(--brand);font-weight:700}
.menu a.active::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--signal);border-radius:2px}
.nav-cta{flex-shrink:0}
.burger{display:none;width:44px;height:44px;align-items:center;justify-content:center;border-radius:6px;flex-shrink:0}
.burger span,.burger span::before,.burger span::after{content:"";display:block;width:22px;height:2px;background:var(--ink);position:relative;transition:transform .25s,opacity .25s}
.burger span::before{position:absolute;top:-7px;left:0}
.burger span::after{position:absolute;top:7px;left:0}
.burger[aria-expanded="true"] span{background:transparent}
.burger[aria-expanded="true"] span::before{transform:translateY(7px) rotate(45deg)}
.burger[aria-expanded="true"] span::after{transform:translateY(-7px) rotate(-45deg)}
.drawer{display:none;position:fixed;inset:0;background:#fff;z-index:110;padding:96px 28px 40px;overflow-y:auto}
.drawer.open{display:block}
.drawer .d-item{display:block;font-size:18px;font-weight:700;color:var(--ink);padding:15px 4px;border-bottom:1px solid var(--line)}
.drawer .d-item.active{color:var(--brand)}
.drawer .d-cta{width:100%;margin-top:24px;padding:15px}

/* =========================================================
   2. 首页 Banner 轮播
   ========================================================= */
.hero{position:relative;height:830px;min-height:560px;overflow:hidden;background:linear-gradient(120deg,#eef4fc 0%,#dce9f8 55%,#cfe1f5 100%)}
.slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .8s ease,visibility .8s}
.slide.active{opacity:1;visibility:visible}
.slide-bg{position:absolute;inset:0;background-size:cover;background-position:center;background-repeat:no-repeat;transform:scale(1.06);transition:transform 7s ease}
.slide.active .slide-bg{transform:scale(1)}
.slide-1 .slide-bg{background-image:url("../img/banner-slide-1.jpg")}
.slide-2 .slide-bg{background-image:url("../img/banner-slide-2.jpg")}
.slide-3 .slide-bg{background-image:url("../img/banner-slide-3.jpg")}
.slide-4 .slide-bg{background-image:url("../img/banner-slide-4.jpg")}
.slide-5 .slide-bg{background-image:url("../img/banner-slide-5.jpg")}
/* 文字可读性遮罩：左→右白色渐变（Figma 设计规范；央视张加强） */
.slide::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,.82) 0%,rgba(255,255,255,.45) 48%,rgba(255,255,255,0) 82%)}
.slide-3::after{background:linear-gradient(90deg,rgba(255,255,255,1) 0%,rgba(255,255,255,.65) 48%,rgba(255,255,255,0) 82%)}
.hero .container{position:relative;z-index:2;height:100%;display:flex;align-items:center}
.slide-copy{max-width:640px}
.slide-copy .kicker{display:flex;align-items:center;gap:12px;font-size:14px;font-weight:700;color:var(--brand);letter-spacing:2px}
.slide-copy .kicker::before{content:"";width:34px;height:3px;background:var(--signal);border-radius:2px;flex-shrink:0}
.slide-copy h2{font-size:52px;font-weight:900;line-height:1.28;color:var(--ink);margin:18px 0 20px;letter-spacing:2px}
.slide-copy p{font-size:16px;color:var(--body);line-height:1.95;margin-bottom:32px;max-width:560px}
.slide-copy .btns{display:flex;gap:14px;flex-wrap:wrap}
.hero-arrow{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;background:rgba(255,255,255,.6);color:var(--brand);display:flex;align-items:center;justify-content:center;z-index:20;transition:background .2s,color .2s;backdrop-filter:blur(2px)}
.hero-arrow:hover{background:var(--brand);color:#fff}
.hero-arrow.prev{left:26px}
.hero-arrow.next{right:26px}
.hero-dots{position:absolute;left:0;right:0;bottom:30px;display:flex;justify-content:center;gap:10px;z-index:20}
.hero-dots button{width:12px;height:12px;border-radius:999px;background:rgba(27,74,160,.25);transition:all .25s;padding:0}
.hero-dots button.active{background:var(--signal);width:30px}

/* ---------------------------------------------------------
   2.1 首屏顶部留白收紧（2026-11-09 客户反馈「上面的空白有点多」）
   ≥961 桌面：横幅高度 920→830（下方所有板块同步上移 90px）；
   文案由垂直居中改为顶部对齐，kicker 距横幅顶 291→200px；
   央视张改用「图形整体上移 110px」的背景图（banner-slide-3-up.jpg），
   底部以纯渐变补齐、无接缝。≤960 由第 17/26 节覆盖，仍用原图，零变化。
   --------------------------------------------------------- */
@media (min-width:961px){
  .hero .container{align-items:flex-start;padding-top:200px}
  .slide-3 .slide-bg{background-image:url("../img/banner-slide-3-up.jpg")}
}

/* =========================================================
   3. 内页页面 Banner
   ========================================================= */
.page-banner{position:relative;background:linear-gradient(115deg,var(--brand) 0%,var(--brand-deep) 60%,#0b3577 100%);color:#fff;padding:64px 0 76px;overflow:hidden}
.page-banner .container{position:relative;z-index:2}
.crumb{font-size:13px;color:rgba(255,255,255,.72);letter-spacing:1px;display:flex;align-items:center;gap:8px}
.crumb a{transition:color .2s}
.crumb a:hover{color:#fff}
.crumb-sep{opacity:.5}
.pb-title{font-size:44px;font-weight:900;letter-spacing:4px;margin-top:18px;line-height:1.3}
.pb-en{font-size:12px;letter-spacing:4px;color:var(--gold-light);margin-top:10px;font-weight:500}
.pb-sub{margin-top:16px;font-size:15px;color:rgba(255,255,255,.85);max-width:640px}
.pb-tag{display:inline-block;background:rgba(242,113,28,.92);color:#fff;font-size:12.5px;font-weight:700;letter-spacing:1px;border-radius:999px;padding:5px 16px;margin-top:20px;margin-bottom:18px}
.pb-deco{position:absolute;border-radius:50%;pointer-events:none;will-change:transform}

/* —— Banner 装饰元素动效（缓慢漂浮 + 呼吸缩放） —— */
@keyframes sbFloatA{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(18px,-22px,0) scale(1.06)}}
@keyframes sbFloatB{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(-16px,18px,0) scale(1.1)}}
@keyframes sbFloatHalf{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(22px,-16px,0) scale(1.08)}}
@keyframes sbFloatGold{0%,100%{transform:translateY(-50%) translate3d(0,0,0) scale(1)}50%{transform:translateY(-50%) translate3d(-20px,-14px,0) scale(1.08)}}
@keyframes sbYearPulse{0%,100%{transform:translateY(-50%) scale(1);opacity:.92}50%{transform:translateY(-50%) scale(1.045);opacity:1}}
.pb-circle-a{animation:sbFloatA 11s ease-in-out infinite}
.pb-circle-b{animation:sbFloatB 8.5s ease-in-out infinite}
.pb-half-orange{animation:sbFloatHalf 10s ease-in-out infinite}
.pb-half-gold{animation:sbFloatGold 12.5s ease-in-out infinite}
.cctv-banner .pb-year{animation:sbYearPulse 7s ease-in-out infinite}
@media (prefers-reduced-motion:reduce){
  .pb-circle-a,.pb-circle-b,.pb-half-orange,.pb-half-gold,.cctv-banner .pb-year{animation:none!important}
}
.pb-circle-a{width:340px;height:340px;right:180px;top:-110px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1)}
.pb-circle-b{width:180px;height:180px;right:420px;bottom:-70px;background:rgba(255,255,255,.05)}
.page-banner .pb-gold{background:var(--gold);opacity:.85}
.page-banner .pb-orange{background:var(--signal);opacity:.85}

/* —— 入选央视页 Banner（按设计稿） —— */
.cctv-banner .pb-tag{background:rgba(52,74,108,.85);border:1px solid rgba(231,207,142,.45);color:#EFE1A2;font-weight:500}
.cctv-banner .pb-circle-b{right:60px;bottom:-90px}
.pb-year{position:absolute;z-index:1;right:170px;top:50%;transform:translateY(-50%);width:280px;height:280px;border:1px solid rgba(201,162,39,.45);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none}
.pb-year .py-num{font-size:54px;font-weight:900;color:#E7CF8E;line-height:1;letter-spacing:2px}
.pb-year .py-line{width:44px;height:2px;background:rgba(201,162,39,.6);border-radius:1px;margin:16px 0 12px}
.pb-year .py-txt{font-size:11px;letter-spacing:3.5px;color:rgba(255,255,255,.72);line-height:2;font-weight:500}

/* =========================================================
   4. 公共页脚 + CTA 带（全站一致）
   ========================================================= */
.cta-band{background:linear-gradient(100deg,var(--brand-deep) 0%,var(--brand) 55%,#2158ad 100%);color:#fff;padding:56px 0}
.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap}
.cta-copy h2{font-size:28px;font-weight:900;letter-spacing:2px}
.cta-copy p{margin-top:10px;font-size:14.5px;color:rgba(255,255,255,.85)}
.cta-btns{display:flex;gap:14px;flex-wrap:wrap}

.footer{background:var(--footer);color:rgba(255,255,255,.78);padding:60px 0 0;font-size:14px}
.foot-grid{display:grid;grid-template-columns:1.25fr .85fr 1.05fr 1.15fr;gap:44px;padding-bottom:48px}
.foot-brand .foot-logo{height:46px;width:auto;margin-bottom:16px}
.foot-brand .co-name{color:#fff;font-weight:700;font-size:15px;line-height:1.6}
.foot-brand .co-slogan{margin-top:10px;font-size:13px;color:rgba(255,255,255,.62);line-height:1.9}
.foot-title{color:#fff;font-size:16px;font-weight:700;margin-bottom:20px;position:relative;padding-bottom:12px}
.foot-title::after{content:"";position:absolute;left:0;bottom:0;width:26px;height:3px;background:var(--signal);border-radius:2px}
.foot-nav{display:grid;grid-template-columns:1fr 1fr;gap:2px 18px}
.foot-nav a{display:block;padding:5px 0;font-size:13.5px;color:rgba(255,255,255,.72);transition:color .2s}
.foot-nav a:hover{color:var(--signal)}
.foot-contact li{display:flex;gap:10px;padding:6px 0;font-size:13.5px;color:rgba(255,255,255,.72);line-height:1.75}
.foot-contact .fc-label{color:#fff;font-weight:700;flex-shrink:0}
.foot-form{display:grid;gap:12px}
.foot-form label{display:block;font-size:12.5px;color:rgba(255,255,255,.7);margin:10px 0 5px}
.foot-form input,.foot-form select,.foot-form textarea{width:100%;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.22);border-radius:6px;color:#fff;font-size:13.5px;padding:9px 12px}
.foot-form input::placeholder,.foot-form textarea::placeholder{color:rgba(255,255,255,.4)}
.foot-form select{appearance:none;color:rgba(255,255,255,.85)}
.foot-form select option{color:var(--ink)}
.foot-form textarea{resize:vertical;min-height:64px}
.foot-form .ff-row{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
.foot-form .ff-submit{width:100%;padding:11px}
.foot-form .form-note{margin-top:0}
.form-note{display:none;margin-top:12px;font-size:12.5px;color:#FFD9C2;background:rgba(242,113,28,.16);border:1px solid rgba(242,113,28,.4);border-radius:6px;padding:9px 12px;line-height:1.6}
.form-note.show{display:block}
.fp-note.show{display:block;color:#FFD9C2;background:rgba(242,113,28,.1);border:1px solid rgba(242,113,28,.35);border-radius:6px;padding:10px 12px;line-height:1.6}
.foot-bottom{border-top:1px solid rgba(255,255,255,.14);padding:20px 0;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:12.5px;color:rgba(255,255,255,.55);flex-wrap:wrap}
.fb-links{display:flex;align-items:center;gap:10px}
.fb-links a{color:rgba(255,255,255,.7);transition:color .2s}
.fb-links a:hover{color:var(--signal)}

/* 页脚 · 官方微信客服二维码（全站公共）
   白底容器保留扫码所需静区；链接可点开大图，焦点环满足键盘可见性 */
.foot-qr{display:flex;align-items:center;gap:14px;margin-top:22px}
.foot-qr-img{flex:0 0 auto;display:block;width:88px;height:88px;padding:6px;background:#fff;border-radius:10px;box-shadow:0 6px 18px rgba(0,0,0,.18);transition:transform .25s,box-shadow .25s}
.foot-qr-img:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(0,0,0,.26)}
.foot-qr-img:focus-visible{outline:2px solid var(--signal);outline-offset:3px}
.foot-qr-img img{display:block;width:100%;height:100%;object-fit:contain}
.foot-qr-txt{min-width:0}
.foot-qr-txt b{display:block;color:#fff;font-size:13px;font-weight:700;line-height:1.55}
.foot-qr-txt span{display:block;margin-top:5px;font-size:12px;line-height:1.75;color:rgba(255,255,255,.68)}

/* =========================================================
   5. 首页区块
   ========================================================= */
/* 5.1 核心服务 */
.svc-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:20px}
.svc-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:32px 16px 28px;text-align:center;box-shadow:var(--shadow);transition:transform .25s,box-shadow .25s}
.svc-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-up)}
.svc-ico{width:64px;height:64px;margin:0 auto 16px;border-radius:16px;background:#EAF1FB;display:flex;align-items:center;justify-content:center;transition:background .25s}
.svc-ico svg{width:34px;height:34px;transition:stroke .25s}
.svc-card:hover .svc-ico{background:var(--signal)}
.svc-card:hover .svc-ico svg *{stroke:#fff}
.svc-card h3{font-size:17px;font-weight:700;color:var(--ink)}
.svc-card p{font-size:13px;color:var(--body);margin-top:6px;line-height:1.65}

/* 5.2 关于我们（创始人故事） */
.about-wrap{display:grid;grid-template-columns:44fr 56fr;gap:60px;align-items:center}
.about-media{position:relative}
.about-media .frame{border-radius:var(--radius);overflow:hidden;aspect-ratio:3/4;box-shadow:var(--shadow-up)}
.about-media .frame img{width:100%;height:100%;object-fit:cover;object-position:center 18%}
.about-badge{position:absolute;top:22px;right:-18px;background:var(--brand);color:#fff;border-radius:10px;padding:14px 20px;box-shadow:0 8px 22px rgba(11,47,107,.28);text-align:center}
.about-badge .b-num{font-size:26px;font-weight:900;line-height:1.2}
.about-badge .b-txt{font-size:12.5px;opacity:.9;margin-top:2px;white-space:nowrap}
.about-copy .eyebrow{display:inline-block;font-size:12.5px;letter-spacing:2px;color:var(--brand);font-weight:700;background:#EAF1FB;border-radius:999px;padding:5px 16px}
.about-copy h2{font-size:30px;font-weight:900;color:var(--ink);margin:16px 0 0;line-height:1.4}
.about-copy .rule{width:40px;height:4px;background:var(--signal);border-radius:2px;margin:16px 0 20px}
.about-quote{background:#EAF1FB;border-radius:var(--radius);padding:22px 26px;position:relative}
.about-quote::before{content:"“";position:absolute;left:14px;top:2px;font-size:44px;color:var(--brand);font-weight:900;line-height:1}
.about-quote::after{content:"”";position:absolute;right:14px;bottom:0;font-size:44px;color:var(--brand);font-weight:900;line-height:1}
.about-quote p{font-size:14.5px;color:var(--ink);line-height:2;padding-left:30px}
.about-tags{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 22px}
.about-tags span{font-size:12.5px;color:var(--brand);background:#EAF1FB;border-radius:999px;padding:4px 14px;font-weight:500}
.stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:36px}
.stat-card .st-num{font-size:42px;font-weight:900;line-height:1;color:var(--brand)}
.stat-card:nth-child(n+3) .st-num{color:var(--signal)}
.stat-card .st-num .st-unit{font-size:inherit;font-weight:inherit}
.stat-card .st-txt{font-size:13.5px;color:var(--body);margin-top:10px;white-space:nowrap}
.milestones{margin-top:26px}
.milestones .ms-title{font-size:17px;font-weight:900;color:var(--ink);margin-bottom:18px}
.ms-row{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ms-item{border-top:2px solid var(--line);padding-top:16px;position:relative}
.ms-item::before{content:"";position:absolute;top:-5px;left:0;width:12px;height:12px;border-radius:50%;background:var(--brand)}
.ms-item:nth-child(odd)::before{background:var(--signal)}
.ms-item .ms-year{font-size:18px;font-weight:900;color:var(--brand)}
.ms-item p{font-size:13px;color:var(--body);margin-top:6px;line-height:1.75}
.philosophy{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:0;margin-bottom:44px}
.ph-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px 24px;box-shadow:var(--shadow)}
.ph-card h3{font-size:17px;font-weight:900;color:var(--ink)}
.ph-card h3 .ph-mark{color:var(--signal);margin-right:6px}
.ph-card p{font-size:13px;color:var(--body);margin-top:10px;line-height:1.8}

/* 5.3 产品卡（首页） */
.prod-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.prod-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.prod-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-up)}
.prod-band{height:4px}
.prod-body{padding:30px 28px 24px;display:flex;flex-direction:column;flex:1}
.prod-ico{width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.prod-ico svg{width:38px;height:38px}
.prod-card h3{font-size:20px;font-weight:700;color:var(--ink)}
.prod-card .en{font-size:12.5px;color:var(--muted);letter-spacing:2px;margin-top:3px}
.prod-card .desc{font-size:14px;color:var(--body);margin-top:10px;line-height:1.85}
.prod-foot{margin-top:auto;padding-top:18px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.prod-foot .note{font-size:12px;color:var(--muted)}
.link-blue{font-size:14px;font-weight:700;color:var(--brand);display:inline-flex;align-items:center;gap:4px;transition:color .2s}
.link-blue:hover{color:var(--signal)}
.prod-img-head{height:200px;overflow:hidden}
.prod-img-head img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.prod-card:hover .prod-img-head img{transform:scale(1.05)}
.prod-tag{display:inline-block;font-size:12px;font-weight:700;color:#fff;background:#0E5A66;border-radius:4px;padding:3px 10px;margin-bottom:10px;align-self:flex-start}
.compliance{text-align:center;font-size:12.5px;color:var(--muted);margin-top:34px}

/* 5.35 项目介绍（首页） */
.proj-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.proj-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s;cursor:pointer}
.proj-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-up)}
.proj-img{position:relative;aspect-ratio:16/9;overflow:hidden;background:var(--alt)}
.proj-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.proj-card:hover .proj-img img{transform:scale(1.06)}
.proj-num{position:absolute;top:12px;left:12px;background:linear-gradient(135deg,var(--signal),var(--signal-dark));color:#fff;font-size:12px;font-weight:700;letter-spacing:1px;padding:4px 11px;border-radius:999px;box-shadow:0 4px 12px rgba(242,113,28,.32)}
.proj-body{padding:22px 24px 26px}
.proj-body h3{font-size:19px;font-weight:800;color:var(--ink);letter-spacing:.5px;display:flex;align-items:center;gap:9px}
.proj-body h3::before{content:"";width:4px;height:18px;background:var(--signal);border-radius:2px;flex:none}
.proj-body p{margin-top:11px;font-size:14px;color:var(--body);line-height:1.85}
.proj-card:focus-visible{outline:2px solid var(--signal);outline-offset:3px}
.proj-body::after{content:"查看详情 ›";display:block;margin-top:14px;font-size:13px;font-weight:700;color:var(--signal);letter-spacing:.5px;transition:color .2s}
.proj-card:hover .proj-body::after{color:var(--signal-dark)}

/* ---------- 项目详情弹窗 ---------- */
.proj-modal{position:fixed;inset:0;z-index:1200;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(8,20,45,.62);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);opacity:0;transition:opacity .2s ease}
.proj-modal.open{display:flex;opacity:1}
.pm-dialog{position:relative;display:flex;flex-direction:column;width:min(620px,94vw);max-height:90vh;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 24px 70px rgba(8,20,45,.4);transform:translateY(14px) scale(.98);transition:transform .25s ease}
.proj-modal.open .pm-dialog{transform:none}
.pm-head{flex:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line);background:#fff}
.pm-head h3{margin:0;font-size:18px;font-weight:800;color:var(--ink);letter-spacing:.5px;display:flex;align-items:center;gap:9px}
.pm-head h3::before{content:"";width:4px;height:18px;background:var(--signal);border-radius:2px;flex:none}
.pm-close{flex:none;width:38px;height:38px;border:none;border-radius:50%;background:var(--alt);color:var(--ink);font-size:22px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s}
.pm-close:hover{background:var(--signal);color:#fff}
.pm-body{flex:1;overflow:auto;-webkit-overflow-scrolling:touch}
.pm-img{display:block;width:100%;height:auto}
@media (max-width:960px){.pm-dialog{width:94vw}.pm-head h3{font-size:16px}}

/* 5.36 核心带队团队介绍（首页） */
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.team-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:transform .25s,box-shadow .25s;display:flex;flex-direction:column}
.team-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-up)}
.team-photo{position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--alt)}
.team-photo img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.team-card:hover .team-photo img{transform:scale(1.05)}
.team-photo::after{content:"";position:absolute;left:0;right:0;bottom:0;height:48px;background:linear-gradient(180deg,transparent,rgba(13,61,140,.5))}
.team-body{padding:18px 20px 22px;display:flex;flex-direction:column;align-items:flex-start}
.team-body h3{font-size:18px;font-weight:800;color:var(--ink);letter-spacing:.5px}
.team-role{display:inline-block;margin-top:8px;font-size:12.5px;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--brand),var(--brand-dark));padding:4px 13px;border-radius:999px;letter-spacing:.3px}
.team-body p{margin-top:12px;font-size:13px;color:var(--body);line-height:1.85}

/* 5.4 央视通栏 */
.cctv{background:linear-gradient(105deg,var(--brand) 0%,var(--brand-deep) 70%);color:#fff;padding:78px 0}
.cctv .container{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.cctv-left .eyebrow{font-size:12.5px;letter-spacing:3px;color:rgba(255,255,255,.68);font-weight:500}
.cctv-left h2{font-size:30px;font-weight:900;line-height:1.5;margin:14px 0 16px}
.cctv-left h2 .hl{color:#FFD9C2}
.cctv-left p{font-size:14.5px;line-height:2;color:rgba(255,255,255,.88);text-align:justify}
.badge-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.badge{border:1.5px solid rgba(255,255,255,.35);border-radius:var(--radius);padding:24px 18px;text-align:center;background:rgba(255,255,255,.06);transition:background .25s,border-color .25s}
.badge:hover{background:rgba(255,255,255,.13);border-color:rgba(255,255,255,.75)}
.badge svg{width:38px;height:38px;margin:0 auto 12px;display:block}
.badge h3{font-size:15.5px;font-weight:700;line-height:1.5}
.badge p{font-size:12px;color:rgba(255,255,255,.72);margin-top:5px;line-height:1.6}

/* 5.5 环境图集 */
.env-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:212px;gap:16px}
.env-cell{border-radius:var(--radius);overflow:hidden;position:relative;box-shadow:var(--shadow)}
.env-cell img{width:100%;height:100%;object-fit:cover;transition:transform .55s}
.env-cell:hover img{transform:scale(1.06)}
.env-big{grid-column:span 2;grid-row:span 2}
.env-wide{grid-column:span 2}

/* 5.6 招商加盟（首页） */
.partner-map{position:relative;border-radius:14px;overflow:hidden;background:linear-gradient(160deg,#e8f1fb,#d5e5f7);box-shadow:var(--shadow);margin-bottom:40px}
.partner-map img.map-bg{width:100%;height:340px;object-fit:cover;object-position:center}
.partner-overlay{position:absolute;left:44px;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.94);border-left:4px solid var(--signal);border-radius:var(--radius);padding:30px 38px;max-width:520px;box-shadow:0 12px 34px rgba(11,47,107,.18)}
.partner-overlay h3{font-size:22px;font-weight:900;color:var(--ink);line-height:1.45}
.goal-row{display:flex;gap:40px;margin-top:16px}
.goal .g-num{font-size:44px;font-weight:900;color:var(--signal);line-height:1}
.goal .g-num .unit{font-size:16px;font-weight:700}
.goal .g-txt{font-size:13px;color:var(--body);margin-top:6px}
.goal .g-txt .tag{color:var(--muted);font-size:12px}
.home-store-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:40px}
.home-store-grid .s-sub{font-size:12.5px;color:var(--brand);font-weight:700;margin-top:7px;letter-spacing:.3px}
.store-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px 26px;box-shadow:var(--shadow);transition:transform .25s,box-shadow .25s}
/* —— 招商加盟页·四种终端形态 —— */
.type-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.type-grid .store-card .s-sub{font-size:12.5px;color:var(--brand);font-weight:700;margin-top:7px;letter-spacing:.3px}
.type-grid .store-card{display:flex;flex-direction:column;padding:30px 28px;position:relative;overflow:hidden}
.type-grid .store-card::before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:linear-gradient(90deg,var(--brand),var(--signal))}
.type-grid .store-card .s-ico{width:56px;height:56px;border-radius:14px;margin-bottom:18px}
.type-grid .store-card h3{font-size:19.5px;font-weight:900;letter-spacing:.5px}
.type-grid .store-card p{margin-top:auto;padding-top:14px;font-size:13.5px;color:var(--body);line-height:1.95}.store-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-up)}
.store-card .s-ico{width:52px;height:52px;border-radius:12px;background:#EAF1FB;display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.store-card .s-ico svg{width:28px;height:28px}
.store-card h3{font-size:19px;font-weight:700;color:var(--ink)}
.store-card p{font-size:13px;color:var(--muted);margin-top:8px}
.support-head{margin-bottom:34px}
.support-row{display:grid;grid-template-columns:repeat(8,1fr);gap:14px;margin-bottom:42px}
.support-pill{background:#fff;border:1px solid var(--line);border-radius:999px;padding:14px 6px;text-align:center;box-shadow:var(--shadow)}
.support-pill .p-no{font-size:13px;font-weight:700;color:var(--signal)}
.support-pill .p-txt{font-size:13.5px;font-weight:700;color:var(--ink);margin-top:2px;white-space:nowrap}
.partner-cta{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}

/* 5.7 新闻卡（首页） */
.news-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:44px}
.news-head .sec-head{margin-bottom:0;text-align:left}
.news-head .sec-head .rule{margin-left:0}
.news-more{font-size:14px;font-weight:700;color:var(--brand);white-space:nowrap;padding-bottom:6px;transition:color .2s}
.news-more:hover{color:var(--signal)}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.news-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:transform .25s,box-shadow .25s;display:flex;flex-direction:column}
.news-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-up)}
.news-thumb{height:200px;overflow:hidden;position:relative}
.news-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.news-card:hover .news-thumb img{transform:scale(1.05)}
.news-body{padding:22px 24px 24px;display:flex;flex-direction:column;flex:1}
.news-date{font-size:13px;color:var(--signal);font-weight:700;letter-spacing:1px}
.news-body h3{font-size:17px;font-weight:700;color:var(--ink);margin-top:8px;line-height:1.6}
.news-body p{font-size:13.5px;color:var(--muted);margin-top:8px;line-height:1.8}
.news-tag{position:absolute;left:14px;top:14px;background:rgba(27,74,160,.92);color:#fff;font-size:12px;font-weight:700;border-radius:4px;padding:3px 10px;letter-spacing:1px}

/* 5.8 FAQ 手风琴 */
.faq-list{max-width:920px;margin:0 auto}
.faq-item{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:16px;overflow:hidden}
.faq-q{width:100%;display:flex;align-items:center;gap:16px;padding:20px 26px;text-align:left;font-size:16px;font-weight:700;color:var(--ink)}
.faq-q .q-no{flex-shrink:0;width:44px;height:44px;border-radius:50%;background:#EAF1FB;color:var(--brand);font-weight:900;display:flex;align-items:center;justify-content:center;font-size:15px}
.faq-q .q-icon{margin-left:auto;flex-shrink:0;width:22px;height:22px;position:relative}
.faq-q .q-icon::before,.faq-q .q-icon::after{content:"";position:absolute;background:var(--signal);border-radius:2px;transition:transform .25s}
.faq-q .q-icon::before{left:0;top:10px;width:22px;height:2.5px}
.faq-q .q-icon::after{left:10px;top:0;width:2.5px;height:22px}
.faq-item.open .q-icon::after{transform:rotate(90deg);opacity:0}
.faq-a{max-height:0;overflow:hidden;transition:max-height .35s ease}
.faq-a-inner{padding:0 26px 22px 86px;font-size:14.5px;color:var(--body);line-height:2}
.faq-item.open .faq-a{max-height:400px}

/* =========================================================
   6. 关于我们页
   ========================================================= */
.profile-wrap{display:grid;grid-template-columns:56fr 44fr;gap:60px;align-items:center}
.profile-copy p{font-size:15px;color:var(--body);line-height:2.1;margin-bottom:16px;text-align:justify}
.profile-media .frame{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-up);aspect-ratio:4/3}
.profile-media .frame img{width:100%;height:100%;object-fit:cover}

.origin-sec .container{display:block}
.origin-sec .sec-head{margin-bottom:56px}
.origin-sec .sec-head h2{margin-top:0}
.origin-sec .sec-head .eyebrow{margin-top:10px}
.origin-wrap{display:grid;grid-template-columns:32fr 62fr;gap:56px;align-items:center}
.origin-media .frame{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-up);aspect-ratio:5/7}
.origin-media .frame img{width:100%;height:100%;object-fit:cover;object-position:center 20%}
.origin-copy h2{font-size:28px;font-weight:900;color:#fff;line-height:1.45}
.origin-copy .rule{width:40px;height:4px;background:var(--signal);border-radius:2px;margin:16px 0 22px}
.origin-copy p{font-size:14.5px;color:rgba(255,255,255,.85);line-height:2.1;margin-bottom:14px;text-align:justify}
.origin-sign{font-size:13.5px;color:rgba(255,255,255,.55);margin-top:8px;letter-spacing:1px}

.culture-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.culture-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:36px 30px;box-shadow:var(--shadow);text-align:center}
.culture-card .cc-ico{width:64px;height:64px;margin:0 auto 18px;border-radius:50%;background:#EAF1FB;display:flex;align-items:center;justify-content:center}
.culture-card .cc-ico svg{width:34px;height:34px}
.culture-card h3{font-size:19px;font-weight:900;color:var(--ink)}
.culture-card p{font-size:13.5px;color:var(--body);margin-top:10px;line-height:1.9}

.ms-flow{display:grid;grid-template-columns:repeat(5,1fr);gap:20px}
.msf-item{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px 22px;box-shadow:var(--shadow);text-align:center}
.msf-item .dot{width:14px;height:14px;border-radius:50%;background:var(--signal);margin:0 auto 14px}
.msf-item:nth-child(even) .dot{background:var(--brand)}
.msf-item h3{font-size:17px;font-weight:900;color:var(--ink)}
.msf-item p{font-size:13px;color:var(--body);margin-top:10px;line-height:1.85}

.endorse-wrap{display:grid;grid-template-columns:46fr 54fr;gap:56px;align-items:center}
.endorse-media .frame{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-up)}
.endorse-media .frame img{width:100%;display:block}
.endorse-copy h2{font-size:28px;font-weight:900;color:var(--ink)}
.endorse-copy .rule{width:40px;height:4px;background:var(--signal);border-radius:2px;margin:14px 0 20px}
.endorse-copy>p{font-size:14.5px;color:var(--body);line-height:2.1;margin-bottom:20px;text-align:justify}
.endorse-list li{display:flex;gap:10px;font-size:14.5px;color:var(--ink);font-weight:500;padding:6px 0;line-height:1.8}
.endorse-list li::before{content:"";flex-shrink:0;width:18px;height:18px;border-radius:50%;background:var(--signal);margin-top:5px;position:relative}
.store-display{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.sd-cell{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);aspect-ratio:4/3}
.sd-cell img{width:100%;height:100%;object-fit:cover;transition:transform .55s}
.sd-cell:hover img{transform:scale(1.05)}

/* =========================================================
   7. 入选央视页
   ========================================================= */
.ceremony-wrap{display:grid;grid-template-columns:46fr 54fr;gap:56px;align-items:center}
.ceremony-media .frame{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-up)}
.ceremony-media .frame img{width:100%;display:block}
.ceremony-copy .cc-date{font-size:13px;color:var(--signal);font-weight:700;letter-spacing:1px}
.ceremony-copy h2{font-size:28px;font-weight:900;color:var(--ink);margin-top:10px;line-height:1.5}
.ceremony-copy>p{font-size:14.5px;color:var(--body);line-height:2.1;margin:14px 0 22px;text-align:justify}
.meta-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;border-top:1px solid var(--line);padding-top:20px}
.meta-grid .mg-label{font-size:12px;color:var(--muted)}
.meta-grid .mg-value{font-size:14px;font-weight:700;color:var(--ink);margin-top:4px}
.doc-wrap{display:grid;grid-template-columns:44fr 56fr;gap:56px;align-items:center}
.doc-media .frame{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-up);background:#fff;padding:14px}
.doc-media .frame img{width:100%;display:block;border-radius:6px}
.doc-copy .dc-eyebrow{font-size:12.5px;letter-spacing:3px;color:var(--gold);font-weight:700}
.doc-copy h2{font-size:28px;font-weight:900;color:var(--ink);margin-top:12px}
.doc-quote{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:22px 26px;margin:22px 0 24px}
.doc-quote .dq-label{font-size:11.5px;letter-spacing:3px;color:var(--gold);font-weight:700;margin-bottom:10px}
.doc-quote p{font-size:14.5px;color:var(--ink);line-height:2;margin:0}
.plaque-sec .sec-head h2{margin-top:0}
.plaque-sec .sec-head .eyebrow{margin-top:10px}
.plaque-sec .meta-grid{border-top:none;padding-top:6px}
.program-wrap{display:grid;grid-template-columns:44fr 56fr;gap:56px;align-items:start}
.program-left h2{font-size:28px;font-weight:900;color:#fff;line-height:1.5}
.program-left .rule{width:40px;height:4px;background:var(--signal);border-radius:2px;margin:16px 0 20px}
.program-left p{font-size:14.5px;color:rgba(255,255,255,.85);line-height:2.1;text-align:justify}
.program-list{display:flex;flex-direction:column;gap:16px}
.program-item{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:var(--radius);padding:22px 26px;display:flex;gap:18px}
.program-item .pi-no{font-size:24px;font-weight:900;color:var(--gold-light);flex-shrink:0;line-height:1.2}
.program-item h3{font-size:16.5px;font-weight:700;color:#fff}
.program-item p{font-size:13px;color:rgba(255,255,255,.75);margin-top:6px;line-height:1.85}

/* —— 长青商学苑页·教学理念（标题在上、卡片在下） —— */
.teach-sec .container{display:block}
.teach-sec .sec-head{margin-bottom:48px}

/* —— 产品中心页·双维调养（左文右卡，撑满容器） —— */
.dual-sec .container{display:block}
.dual-sec .program-wrap{grid-template-columns:46fr 54fr;gap:60px;align-items:center}
.dual-sec .program-left h2{font-size:30px;line-height:1.5}
.dual-sec .program-left p+p{margin-top:18px}
.dual-sec .program-list{gap:18px}
.dual-sec .program-item{padding:26px 30px;align-items:flex-start}
.dual-sec .program-item .pi-no{width:62px;font-size:26px}
.dual-sec .program-item h3{font-size:17.5px}
.dual-sec .program-item p{font-size:13.5px}

/* —— 入选央视页·关于栏目（按设计稿） —— */
.program-sec .container{display:block}
.program-sec .sec-head{margin-bottom:52px}
.program-sec .sec-head h2{margin-top:0}
.program-sec .sec-head .eyebrow{margin-top:10px}
.program-sec .program-left h2{font-size:30px;margin-bottom:18px}
.program-sec .program-left p{margin-top:0}
.program-sec .program-list{gap:0}
.program-sec .program-item{background:none;border:none;border-radius:0;box-shadow:none;padding:26px 0;border-bottom:1px solid rgba(255,255,255,.14);align-items:flex-start}
.program-sec .program-item:first-child{padding-top:4px}
.program-sec .program-item:last-child{border-bottom:none;padding-bottom:0}
.program-sec .program-item .pi-no{color:var(--signal);font-size:22px;width:56px;flex-shrink:0}
.program-sec .program-item h3{font-size:17px}
.program-sec .program-item p{font-size:13.5px}

/* —— 入选央视页·品牌纪录片（按设计稿） —— */
.film-sec .sec-head{margin-bottom:52px}
.film-sec .sec-head h2{margin-top:0}
.film-sec .sec-head .eyebrow{margin-top:10px}
.video-wrap{display:grid;grid-template-columns:56fr 40fr;gap:56px;align-items:center}
.video-media{position:relative;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-up);cursor:pointer}
.video-media img{width:100%;display:block;aspect-ratio:4/3;object-fit:cover}
.video-play{position:absolute;inset:0;margin:auto;width:78px;height:78px;border:none;cursor:pointer;background:rgba(255,255,255,.92);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 26px rgba(11,47,107,.35);transition:transform .2s,background .2s}
.video-play:hover{transform:scale(1.06);background:#fff}
.vp-btn svg{width:28px;height:28px;fill:var(--brand);margin-left:4px}
.video-time{position:absolute;right:14px;bottom:12px;font-size:12px;color:rgba(255,255,255,.92);background:rgba(11,47,107,.55);padding:3px 10px;border-radius:999px;letter-spacing:1px}
.video-copy .vc-eyebrow{font-size:12.5px;letter-spacing:3px;color:var(--gold);font-weight:700}
.video-copy h2{font-size:24px;font-weight:900;color:var(--ink);margin-top:12px;line-height:1.5}
.video-copy p{font-size:14.5px;color:var(--body);line-height:2.05;margin:16px 0 24px;text-align:justify}

/* —— 视频弹窗 —— */
.video-modal{position:fixed;inset:0;z-index:300;display:none}
.video-modal.open{display:block}
.vm-backdrop{position:absolute;inset:0;background:rgba(10,20,40,.8)}
.vm-panel{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(960px,92vw);background:#000;border-radius:14px;overflow:visible;box-shadow:0 30px 80px rgba(0,0,0,.5)}
.vm-panel video{display:block;width:100%;aspect-ratio:16/9;background:#000;border-radius:14px;object-fit:contain}
.vm-close{position:absolute;top:-46px;right:0;width:38px;height:38px;border:none;border-radius:50%;background:rgba(255,255,255,.18);color:#fff;font-size:22px;cursor:pointer;line-height:1}
.vm-close:hover{background:rgba(255,255,255,.35)}

/* —— 返回顶部（全站一致） —— */
.back-top{position:fixed;right:34px;bottom:44px;z-index:900;width:46px;height:46px;border:none;border-radius:50%;background:var(--brand);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 26px rgba(11,47,107,.35);opacity:0;visibility:hidden;transform:translateY(14px);transition:opacity .3s,transform .3s,visibility .3s,background .2s}
.back-top svg{width:20px;height:20px}
.back-top:hover{background:var(--brand-deep);transform:translateY(0)}
.back-top.show{opacity:1;visibility:visible;transform:translateY(0)}

/* —— 招商加盟页 Banner（按设计稿） —— */
.partner-banner .pb-tag{background:rgba(52,74,108,.85);border:1px solid rgba(231,207,142,.45);color:#EFE1A2;font-weight:500}
.partner-banner .pb-sub{margin-top:14px}
.pb-pills{display:flex;gap:12px;margin-top:18px;flex-wrap:wrap;position:relative;z-index:2}
.pb-pill{font-size:13px;color:#fff;background:rgba(255,255,255,.14);border-radius:999px;padding:6px 18px;letter-spacing:1px}
.pb-half-orange{width:276px;height:276px;left:-140px;bottom:-40px;background:var(--signal);opacity:.95}
.pb-half-gold{width:280px;height:280px;right:-150px;top:50%;transform:translateY(-50%);background:var(--gold);opacity:.9}
.video-wrap{display:grid;grid-template-columns:52fr 48fr;gap:56px;align-items:center}
.video-media{position:relative;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-up)}
.video-media img{width:100%;display:block}
.video-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(11,47,107,.18);transition:background .25s}
.video-play:hover{background:rgba(11,47,107,.3)}
.video-play .vp-btn{width:72px;height:72px;border-radius:50%;background:rgba(255,255,255,.92);display:flex;align-items:center;justify-content:center;box-shadow:0 10px 26px rgba(11,47,107,.3)}
.video-play svg{width:26px;height:26px;fill:var(--brand);margin-left:4px}
.video-time{position:absolute;right:14px;bottom:12px;background:rgba(11,47,107,.75);color:#fff;font-size:12px;border-radius:4px;padding:2px 8px}
.video-copy .vc-eyebrow{font-size:12.5px;color:var(--signal);font-weight:700;letter-spacing:1px}
.video-copy h2{font-size:28px;font-weight:900;color:var(--ink);margin-top:10px;line-height:1.5}
.video-copy p{font-size:14.5px;color:var(--body);line-height:2.1;margin:14px 0 24px;text-align:justify}
.weight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.weight-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:34px 30px;box-shadow:var(--shadow)}
.weight-card .wc-no{font-size:30px;font-weight:900;color:#D8E2F0;line-height:1}
.weight-card h3{font-size:18px;font-weight:900;color:var(--ink);margin-top:6px}
.weight-card p{font-size:13.5px;color:var(--body);margin-top:10px;line-height:1.95}
.scene-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.scene-cell{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);aspect-ratio:4/3}
.scene-cell img{width:100%;height:100%;object-fit:cover;transition:transform .55s}
.scene-cell:hover img{transform:scale(1.05)}
.scene-note{text-align:center;font-size:12.5px;color:var(--muted);margin-top:24px}

/* =========================================================
   8. 产品中心页
   ========================================================= */
.sys-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}
.ps-sec .sys-card{padding:38px 36px 40px}
.ps-sec .sys-card h3{font-size:21px}
.ps-sec .sys-card p{font-size:14px;margin-top:12px;line-height:2.05}
.ps-sec .sys-card .sys-no{min-width:58px;height:58px;font-size:19px;margin-bottom:20px}
.ps-sec .sys-link{margin-top:22px;font-size:15px}
#nutri-sec,#inst-sec{scroll-margin-top:96px}
.ps-sec .sec-head h2{margin-top:0}
.ps-sec .sec-head .eyebrow{margin-top:10px}
.ps-sec .sec-head{margin-bottom:44px}
.sys-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:32px 30px;box-shadow:var(--shadow);transition:transform .25s,box-shadow .25s}
.sys-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-up)}
.sys-card .sys-no{display:inline-flex;align-items:center;justify-content:center;min-width:52px;height:52px;padding:0 12px;border-radius:12px;background:var(--brand);color:#fff;font-weight:900;font-size:18px;letter-spacing:1px;margin-bottom:18px}
.sys-card h3{font-size:19px;font-weight:900;color:var(--ink)}
.sys-card p{font-size:13.5px;color:var(--body);margin-top:10px;line-height:1.95}
.sys-link{display:inline-flex;align-items:center;gap:4px;margin-top:18px;font-size:14px;font-weight:700;color:var(--signal);transition:gap .2s}
.sys-link:hover{gap:8px}

.featured{background:var(--alt);border-radius:16px;padding:40px;display:grid;grid-template-columns:44fr 56fr;gap:48px;align-items:center}
.lw-sec .sec-head h2{margin-top:0}
.lw-sec .sec-head .eyebrow{margin-top:10px}
.lw-sec .sec-head{margin-bottom:40px}
.lw-sec .featured{background:var(--alt);padding:22px;box-shadow:var(--shadow)}
.lw-sec .featured-copy{background:#fff;border-radius:12px;padding:34px 38px}
.lw-sec .feat-list li b{font-weight:900}
.featured-media{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-up)}
.featured-media img{width:100%;display:block}
.inst-sec .featured-media{position:relative;min-height:400px}
.inst-sec .featured-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.featured-copy .fc-en{font-size:12.5px;color:var(--muted);letter-spacing:1px}
.featured-copy h3{font-size:26px;font-weight:900;color:var(--ink);margin-top:6px}
.featured-copy>p{font-size:14px;color:var(--body);line-height:2.05;margin:14px 0 20px;text-align:justify}
.feat-list{display:grid;grid-template-columns:1fr 1fr;gap:14px 28px}
.feat-list li{display:flex;gap:10px;font-size:13.5px;color:var(--ink);line-height:1.7}
.feat-list li::before{content:"";flex-shrink:0;width:8px;height:8px;border-radius:50%;background:var(--signal);margin-top:8px}

/* 营养方案区（一行一个产品：左图右文） */
.nutri-sec .sec-head{margin-bottom:46px}
.nrow-list{display:flex;flex-direction:column;gap:26px}
.nrow{display:grid;grid-template-columns:38fr 62fr;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-up);transition:transform .25s,box-shadow .25s}
.nrow:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(16,42,88,.14)}
.nrow-media{position:relative;background:var(--alt);min-height:340px;overflow:hidden}
.nrow-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.nrow:hover .nrow-media img{transform:scale(1.04)}
.nrow-copy{padding:44px 48px;display:flex;flex-direction:column;justify-content:center}
.nrow-copy .nr-en{font-size:12.5px;letter-spacing:2px;color:var(--muted);font-weight:500}
.nrow-copy h3{font-size:26px;font-weight:900;color:var(--ink);margin-top:8px}
.nrow-copy p{font-size:14.5px;color:var(--body);line-height:2.05;margin-top:14px}
.nrow-copy .sys-link{margin-top:22px;font-size:15px}

/* 外律仪器区（明星仪器 + 仪器矩阵面板） */
.inst-sec .sec-head{margin-bottom:44px}
.inst-sec .featured{margin-bottom:34px}
.inst-sec .featured-copy{background:#fff;border-radius:12px;padding:34px 38px}
.inst-panel{background:var(--alt);border-radius:16px;padding:30px}
.inst-panel-head{font-size:15px;font-weight:900;color:var(--ink);letter-spacing:.5px;margin-bottom:22px}
.pcard .pc-role{display:inline-block;font-size:11.5px;font-weight:700;color:var(--brand);background:#EAF1FB;border-radius:999px;padding:3px 12px;margin-bottom:9px}

.pcard-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.pcard{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:transform .25s,box-shadow .25s}
.pcard:hover{transform:translateY(-5px);box-shadow:var(--shadow-up)}
.pcard-img{height:220px;overflow:hidden;background:var(--alt)}
.pcard-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.pcard:hover .pcard-img img{transform:scale(1.05)}
.pcard-body{padding:24px 26px 26px}
.pcard-body h3{font-size:18px;font-weight:900;color:var(--ink)}
.pcard-body .pc-en{font-size:12px;color:var(--muted);letter-spacing:1px;margin-top:3px}
.pcard-body p{font-size:13.5px;color:var(--body);margin-top:10px;line-height:1.9}
.ph-box{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--muted);font-size:14px;gap:10px;background:#EDF1F6}
.ph-box svg{width:36px;height:36px;stroke:var(--muted)}

/* 科研实力 · 品质护航（深蓝渐变 · 四卡） */
.rs-sec{background:linear-gradient(105deg,#0A2A60 0%,#0F3580 48%,var(--brand) 100%);color:#fff}
.rs-sec .sec-head{margin-bottom:44px}
.rs-sec .sec-head h2{color:#fff;font-size:32px;margin-top:0;letter-spacing:1px}
.rs-sec .sec-head .eyebrow{color:rgba(255,255,255,.6);font-size:12.5px;letter-spacing:4px;margin-top:8px}
.rs-sec .compliance{color:rgba(255,255,255,.55)}
.rd-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.rd-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:var(--radius);padding:30px 28px 32px;transition:transform .25s,background .25s}
.rd-card:hover{transform:translateY(-5px);background:rgba(255,255,255,.13)}
.rd-card .rd-no{font-size:30px;font-weight:900;color:#fff;line-height:1;letter-spacing:1px}
.rd-card h3{font-size:18px;font-weight:900;color:#fff;margin-top:14px}
.rd-card p{font-size:13.5px;color:rgba(255,255,255,.8);margin-top:10px;line-height:1.95}

/* =========================================================
   9. 产品详情页
   ========================================================= */
.pd-hero{display:grid;grid-template-columns:46fr 54fr;gap:56px;align-items:start}
.pd-media .frame{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-up);background:var(--alt);aspect-ratio:1/1}
.pd-media .frame img{width:100%;height:100%;object-fit:cover}
.pd-info .pd-tag{display:inline-block;background:#FDEAE0;color:var(--signal-dark);font-size:12.5px;font-weight:700;border-radius:999px;padding:5px 16px;letter-spacing:1px}
.pd-info h2{font-size:26px;font-weight:900;color:var(--ink);margin:14px 0 0;line-height:1.5}
.pd-badges{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 20px}
.pd-badges span{font-size:12.5px;color:var(--brand);background:#EAF1FB;border-radius:999px;padding:4px 14px;font-weight:500}
.pd-spec{background:var(--alt);border-radius:var(--radius);padding:20px 24px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:24px}
.pd-spec .sp-label{font-size:12px;color:var(--muted)}
.pd-spec .sp-value{font-size:14px;font-weight:700;color:var(--ink);margin-top:3px}
.pd-price{display:flex;align-items:baseline;gap:12px;margin:22px 0 20px}
.pd-price .p-cur{font-size:18px;font-weight:900;color:var(--signal)}
.pd-price .p-num{font-size:40px;font-weight:900;color:var(--signal);line-height:1}
.pd-price .p-origin{font-size:14px;color:var(--muted);text-decoration:line-through}
.pd-price .p-tag{font-size:12px;font-weight:700;color:#fff;background:var(--signal);border-radius:4px;padding:2px 8px}
.pd-note{font-size:12.5px;color:var(--muted);margin-top:14px;letter-spacing:1px}
.pd-exp{margin:22px 0 20px;border:1px solid var(--line);border-left:3px solid var(--signal);border-radius:var(--radius);background:var(--alt);padding:16px 20px}
.pd-exp .pe-label{font-size:11.5px;letter-spacing:2px;color:var(--muted);font-weight:700}
.pd-exp .pe-value{font-size:19px;font-weight:900;color:var(--ink);margin-top:6px}
.pd-exp .pe-note{font-size:12.5px;color:var(--body);line-height:1.95;margin-top:6px}
.pd-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:40px}
a.pcard,a.prod-card{display:block}
a.prod-card{display:flex}
a.featured{display:grid}
.featured-copy .sys-link{margin-top:22px;font-size:15px}

.benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.benefit-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px 24px;box-shadow:var(--shadow)}
.benefit-card .bc-no{width:40px;height:40px;border-radius:50%;background:var(--signal);color:#fff;font-weight:900;display:flex;align-items:center;justify-content:center;font-size:15px;margin-bottom:14px}
.benefit-card h3{font-size:16.5px;font-weight:900;color:var(--ink)}
.benefit-card p{font-size:13px;color:var(--body);margin-top:8px;line-height:1.9}

.ing-wrap{display:grid;grid-template-columns:58fr 42fr;gap:48px;align-items:start}
.ing-list li{display:flex;gap:12px;padding:9px 0;font-size:14.5px;color:var(--body);line-height:1.85}
.ing-list li::before{content:"";flex-shrink:0;width:8px;height:8px;border-radius:50%;background:var(--signal);margin-top:9px}
.ing-list li b{color:var(--ink);font-weight:700}
.ing-tip{background:var(--alt);border-radius:var(--radius);padding:18px 22px;margin-top:18px}
.ing-tip .it-label{font-size:14px;font-weight:900;color:var(--ink)}
.ing-tip p{font-size:13.5px;color:var(--body);margin-top:6px;line-height:1.9}
.ing-card{background:var(--alt);border-radius:16px;padding:36px 34px}
.ing-card h3{font-size:20px;font-weight:900;color:var(--ink)}
.ing-card>p{font-size:13.5px;color:var(--body);line-height:2;margin:12px 0 20px}
.ing-stats{display:flex;gap:36px;border-top:1px solid var(--line);padding-top:18px}
.ing-stats .is-num{font-size:30px;font-weight:900;color:var(--brand);line-height:1}
.ing-stats .is-txt{font-size:12.5px;color:var(--body);margin-top:4px}

.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.review-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px 26px;box-shadow:var(--shadow)}
.review-card p{font-size:14px;color:var(--body);line-height:2}
.review-user{display:flex;align-items:center;gap:12px;margin-top:18px}
.review-user .ru-ava{width:40px;height:40px;border-radius:50%;background:var(--signal);color:#fff;font-weight:900;display:flex;align-items:center;justify-content:center;font-size:15px}
.review-user .ru-name{font-size:14px;font-weight:700;color:var(--ink)}
.review-user .ru-meta{font-size:12px;color:var(--muted)}

.rel-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.rel-card{display:block;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);text-decoration:none;transition:transform .25s,box-shadow .25s}
.rel-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-up)}
.rel-card .rc-img{height:170px;background:var(--alt)}
.rel-card .rc-body{padding:18px 20px 20px}
.rel-card h3{font-size:16px;font-weight:900;color:var(--ink)}
.rel-card .rc-sub{font-size:12.5px;color:var(--muted);margin-top:4px}
.rel-card .rc-price{font-size:18px;font-weight:900;color:var(--signal);margin-top:8px}

/* =========================================================
   10. 新闻资讯页
   ========================================================= */
.featured-news{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:var(--shadow);display:grid;grid-template-columns:48fr 52fr}
.featured-news .fn-img{overflow:hidden}
.featured-news .fn-img img{width:100%;height:100%;object-fit:cover;min-height:340px}
.featured-news .fn-body{padding:44px 46px}
.featured-news .fn-tag{display:inline-block;background:#FDEAE0;color:var(--signal-dark);font-size:12px;font-weight:700;border-radius:4px;padding:3px 10px;letter-spacing:1px}
.featured-news .fn-date{font-size:13px;color:var(--signal);font-weight:700;margin:14px 0 8px;display:block}
.featured-news h2{font-size:24px;font-weight:900;color:var(--ink);line-height:1.55}
.featured-news p{font-size:14px;color:var(--body);line-height:2;margin:14px 0 20px}
.news-tabs{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:36px}
.news-tabs button{font-size:14px;font-weight:700;color:var(--body);background:#fff;border:1px solid var(--line);border-radius:999px;padding:9px 24px;transition:all .2s}
.news-tabs button.active,.news-tabs button:hover{background:var(--brand);border-color:var(--brand);color:#fff}

/* =========================================================
   11. 新闻详情页
   ========================================================= */
.article{max-width:860px;margin:0 auto}
.article-hero{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);margin-bottom:36px;background:var(--alt)}
.article-hero img{width:100%;display:block}
.article-body{font-size:15.5px;color:var(--body);line-height:2.15}
.article-body p{margin-bottom:18px;text-align:justify}
.article-body h3{font-size:20px;font-weight:900;color:var(--ink);margin:32px 0 14px}
.article-quote{background:var(--alt);border-left:4px solid var(--signal);border-radius:0 var(--radius) var(--radius) 0;padding:20px 26px;font-size:15px;color:var(--ink);font-weight:500;line-height:2.1;margin:22px 0}
.article-body ul.dot-list li{display:flex;gap:12px;padding:5px 0;line-height:1.95}
.article-body ul.dot-list li::before{content:"";flex-shrink:0;width:8px;height:8px;border-radius:50%;background:var(--signal);margin-top:11px}
.article-foot{border-top:1px solid var(--line);margin-top:36px;padding-top:24px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.article-tags{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.article-tags .at-label{font-size:13px;color:var(--muted)}
.article-tags a{font-size:12.5px;color:var(--brand);background:#EAF1FB;border-radius:999px;padding:4px 14px;transition:background .2s,color .2s}
.article-tags a:hover{background:var(--brand);color:#fff}
.article-share{display:flex;align-items:center;gap:10px}
.article-share .as-label{font-size:13px;color:var(--muted)}
.article-share a{width:34px;height:34px;border-radius:50%;background:var(--alt);display:flex;align-items:center;justify-content:center;transition:background .2s}
.article-share a:hover{background:var(--brand)}
.article-share a svg{width:16px;height:16px;stroke:var(--brand);transition:stroke .2s}
.article-share a:hover svg{stroke:#fff}

/* =========================================================
   12. 联系我们页
   ========================================================= */
.contact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.contact-card{background:var(--alt);border-radius:var(--radius);padding:30px 28px;text-align:center}
.contact-card .cc-ico{width:56px;height:56px;margin:0 auto 16px;border-radius:50%;background:var(--brand);display:flex;align-items:center;justify-content:center}
.contact-card .cc-ico svg{width:28px;height:28px;stroke:#fff}
.contact-card .cc-label{font-size:13px;color:var(--muted)}
.contact-card .cc-value{font-size:15px;font-weight:700;color:var(--ink);margin-top:6px;line-height:1.7}
.map-panel{background:#fff;border:1px solid var(--line);border-radius:16px;height:420px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.map-panel .mp-inner{display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--muted);text-align:center;padding:0 24px}
.map-panel .map-canvas{position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity .45s}
.map-panel.map-ready .map-canvas{opacity:1}
.map-panel.map-ready .mp-inner{display:none}
.map-panel .map-card{position:absolute;left:18px;bottom:18px;z-index:3;background:#fff;border-radius:12px;padding:14px 18px;box-shadow:0 8px 24px rgba(16,42,88,.16);max-width:64%;opacity:0;transition:opacity .45s}
.map-panel.map-ready .map-card{opacity:1}
.map-card .mc-title{font-size:14px;font-weight:900;color:var(--ink)}
.map-card .mc-addr{font-size:12.5px;color:var(--body);line-height:1.8;margin-top:4px}
.map-panel .map-nav{position:absolute;right:18px;bottom:18px;z-index:3;background:#fff;color:var(--brand);font-size:13px;font-weight:700;padding:9px 16px;border-radius:999px;box-shadow:0 6px 18px rgba(16,42,88,.18);text-decoration:none;opacity:0;transition:opacity .45s,color .2s}
.map-panel.map-ready .map-nav{opacity:1}
.map-panel .map-nav:hover{color:var(--signal)}
@media(max-width:640px){.map-panel .map-card{max-width:none;right:18px}.map-panel .map-nav{top:18px;bottom:auto}}
.map-panel svg{width:44px;height:44px;stroke:var(--brand)}
.partner-flex{display:grid;grid-template-columns:46fr 54fr;gap:56px;align-items:start}
.partner-points li{display:flex;gap:12px;padding:7px 0;font-size:14.5px;color:var(--ink);line-height:1.85}
.partner-points li::before{content:"";flex-shrink:0;width:8px;height:8px;border-radius:50%;background:var(--signal);margin-top:9px}
.hotline-box{background:var(--alt);border-radius:var(--radius);padding:20px 24px;margin-top:22px;display:flex;align-items:center;gap:14px}
.hotline-box .hl-num{font-size:24px;font-weight:900;color:var(--signal)}
.hotline-box .hl-label{font-size:13px;color:var(--body)}
.visit-box{border:1px dashed var(--line);border-radius:var(--radius);padding:22px 24px;margin-top:18px}
.visit-box h4{font-size:15px;font-weight:900;color:var(--ink)}
.visit-box p{font-size:13px;color:var(--body);margin-top:6px;line-height:1.9}
.qr-box{display:flex;align-items:center;gap:18px;margin-top:18px}
/* 官方客服二维码：白底卡片 + 轻微浮起，鼠标可点开大图便于扫描 */
.qr-frame{
  flex:0 0 auto;display:block;width:140px;height:140px;padding:8px;
  background:#fff;border:1px solid var(--line);border-radius:14px;
  box-shadow:0 8px 22px rgba(13,40,84,.09);
  transition:transform .25s,box-shadow .25s,border-color .25s;
}
.qr-frame:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(13,40,84,.14);border-color:#CBD9EE}
.qr-frame img{display:block;width:100%;height:100%;border-radius:7px}
.qr-box .qr-txt{flex:1 1 auto;min-width:0;font-size:13px;color:var(--body);line-height:1.7}
.qr-box .qr-txt b{color:var(--ink);display:block;font-size:15px;letter-spacing:.3px}
.qr-box .qr-txt span{display:block;margin-top:5px;font-size:12.5px;line-height:1.75;color:var(--body)}
.form-panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:38px 40px;box-shadow:var(--shadow)}
.form-panel h3{font-size:22px;font-weight:900;color:var(--ink)}
.form-panel .fp-tip{font-size:13px;color:var(--muted);margin-top:6px}
.fp-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
.fp-field{margin-top:16px}
.fp-field label{display:block;font-size:13px;font-weight:700;color:var(--ink);margin-bottom:6px}
.fp-field label .req{color:var(--signal)}
.fp-field input,.fp-field select,.fp-field textarea{width:100%;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:14px;color:var(--ink);padding:11px 14px;transition:border-color .2s,box-shadow .2s}
.fp-field input:focus,.fp-field select:focus,.fp-field textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(27,74,160,.12);outline:none}
.fp-field textarea{resize:vertical;min-height:110px}
.fp-chips{display:flex;gap:10px;flex-wrap:wrap}
.fp-chips label{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;padding:8px 18px;font-size:13.5px;font-weight:500;color:var(--body);cursor:pointer;transition:all .2s;margin:0}
.fp-chips input{display:none}
.fp-chips input:checked+span{color:#fff}
.fp-chips label:has(input:checked){background:var(--signal);border-color:var(--signal);color:#fff}
.fp-submit{width:100%;margin-top:22px;padding:14px}
.fp-note{font-size:12.5px;color:var(--muted);margin-top:14px;text-align:center}

/* 联系我们页·合作咨询三卡（表单统一放「在线留言」页，避免重复） */
.coop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.coop-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:34px 32px;box-shadow:var(--shadow);transition:transform .25s,box-shadow .25s}
.coop-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-up)}
.coop-card .cc-ico{width:56px;height:56px;border-radius:50%;background:#EAF1FB;display:flex;align-items:center;justify-content:center}
.coop-card .cc-ico svg{width:28px;height:28px;stroke:var(--brand)}
.coop-card h3{font-size:18px;font-weight:900;color:var(--ink);margin-top:18px}
.coop-card .partner-points{margin-top:12px}
.coop-card .partner-points li{font-size:14px;line-height:1.85;padding:6px 0}
.coop-card .co-hot{font-size:26px;font-weight:900;color:var(--signal);margin-top:20px;letter-spacing:.5px}
.coop-card .co-sub{font-size:13px;color:var(--body);margin-top:5px}
.coop-card .co-label{font-size:12.5px;color:var(--muted)}
.coop-card .co-mail{display:inline-block;font-size:17px;font-weight:700;color:var(--brand);margin-top:4px}
.coop-card .co-mail:hover{color:var(--signal)}
.coop-card .co-divide{height:1px;background:var(--line);margin:20px 0}
.coop-card .co-txt{font-size:13.5px;color:var(--body);line-height:2;margin-top:14px}
.coop-card .qr-box{margin-top:18px}
.coop-card .co-btn{display:block;width:100%;margin-top:22px;padding:13px}

/* =========================================================
   13. 在线留言页
   ========================================================= */
.msg-flex{display:grid;grid-template-columns:42fr 58fr;gap:48px;align-items:start}
.notice-card{background:var(--alt);border-radius:16px;padding:34px 36px}
.notice-card h3{font-size:19px;font-weight:900;color:var(--ink);margin-bottom:16px}
.notice-list li{display:flex;gap:10px;font-size:14px;color:var(--body);line-height:1.95;padding:5px 0}
.notice-list li::before{content:"";flex-shrink:0;width:8px;height:8px;border-radius:50%;background:var(--signal);margin-top:10px}
.notice-hot{margin-top:20px;padding-top:18px;border-top:1px dashed var(--line)}
.notice-hot .nh-label{font-size:13px;color:var(--muted)}
.notice-hot .nh-num{font-size:24px;font-weight:900;color:var(--signal);margin-top:2px}
.promise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:22px}
.promise-item{background:#fff;border:1px solid var(--line);border-radius:10px;padding:16px 14px;text-align:center}
.promise-item .pr-label{font-size:12px;color:var(--muted)}
.promise-item .pr-value{font-size:14px;font-weight:700;color:var(--ink);margin-top:4px;line-height:1.5}
.msg-contact{margin-top:22px;font-size:13.5px;color:var(--body);line-height:2}
.msg-contact b{color:var(--ink)}

/* =========================================================
   14. 招商加盟页
   ========================================================= */
.why-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:44px}
.why-stat{background:var(--alt);border-radius:var(--radius);padding:30px 26px;text-align:left}
.why-stat .ws-num{font-size:34px;font-weight:900;color:var(--signal);line-height:1}
.why-stat .ws-txt{font-size:13px;color:var(--body);margin-top:12px}
.why-sec .sec-head h2{margin-top:0}
.why-sec .sec-head .eyebrow{margin-top:10px}
.why-sec .why-lead{font-size:15px;color:var(--body);line-height:2.05;margin:0;max-width:1320px}
.why-sec .sec-head{margin-bottom:20px}
.adv-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.adv-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px 26px;box-shadow:var(--shadow)}
.adv-card .adv-no{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;background:#EAF1FB;color:var(--brand);font-weight:900;font-size:16px;margin-bottom:16px}
.adv-card h3{font-size:17.5px;font-weight:900;color:var(--ink)}
.adv-card p{font-size:13px;color:var(--body);margin-top:10px;line-height:1.95}
.flow-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.flow-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px 18px;box-shadow:var(--shadow);text-align:center}
.flow-card .fl-no{width:44px;height:44px;border-radius:50%;background:var(--signal);color:#fff;font-weight:900;display:flex;align-items:center;justify-content:center;margin:0 auto 12px;font-size:15px}
.flow-card h3{font-size:16px;font-weight:900;color:var(--ink)}
.flow-card p{font-size:12.5px;color:var(--muted);margin-top:6px;line-height:1.7}
.store-photos{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.store-photos .sp-cell{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);aspect-ratio:4/3}
.store-photos .sp-cell:first-child{grid-column:span 3}
.store-photos .sp-cell:nth-child(2),.store-photos .sp-cell:nth-child(3){grid-column:span 3}
.store-photos .sp-cell:nth-child(4),.store-photos .sp-cell:nth-child(5){grid-column:span 3}
.store-photos .sp-cell img{width:100%;height:100%;object-fit:cover;transition:transform .55s}
.store-photos .sp-cell:hover img{transform:scale(1.05)}

/* —— 招商加盟·旗舰门店形象（按设计稿） —— */
.store-head h2{margin-top:0}
.store-head .eyebrow{margin-top:10px}
.store-head{margin-bottom:16px}
.store-lead{font-size:14px;color:var(--body);margin:0 0 32px}
.store-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:20px}
.store-grid .sd-1,.store-grid .sd-2,.store-grid .sd-3{grid-column:span 2;aspect-ratio:4/3}
.store-grid .sd-4,.store-grid .sd-5{grid-column:span 3;aspect-ratio:16/9}

/* —— 招商加盟·总部赋能（按设计稿） —— */
.empower-sec .container{display:block}
.empower-head h2{margin-top:0}
.empower-head .eyebrow{margin-top:10px}
.empower-head{margin-bottom:26px}
.empower-lead{font-size:14.5px;color:rgba(255,255,255,.88);margin:0 0 36px}
.empower-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.empower-card{background:rgba(255,255,255,.07);border-radius:var(--radius);padding:30px 28px}
.ec-badge{width:46px;height:46px;border-radius:50%;background:var(--signal);color:#fff;font-size:19px;font-weight:700;display:flex;align-items:center;justify-content:center}
.empower-card h3{font-size:17px;font-weight:700;color:#fff;margin-top:18px}
.empower-card p{font-size:13.5px;color:rgba(255,255,255,.75);line-height:1.9;margin-top:10px}
.emp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.emp-card{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:var(--radius);padding:32px 30px}
.emp-card .em-ico{width:56px;height:56px;border-radius:50%;background:var(--signal);color:#fff;font-weight:900;font-size:22px;display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.emp-card h3{font-size:19px;font-weight:900;color:#fff}
.emp-card p{font-size:13.5px;color:rgba(255,255,255,.78);margin-top:10px;line-height:1.95}
.profit-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.profit-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:34px 34px;box-shadow:var(--shadow)}
.profit-card .pf-tag{display:inline-block;background:#FDEAE0;color:var(--signal-dark);font-size:12px;font-weight:700;border-radius:999px;padding:4px 14px;letter-spacing:1px}
.profit-card h3{font-size:20px;font-weight:900;color:var(--ink);margin-top:14px}
.profit-card p{font-size:14px;color:var(--body);margin-top:10px;line-height:2}
/* —— 招商加盟页·发展规划（按设计稿） —— */
.plan-sec .sec-head{margin-bottom:44px}
.plan-sec .sec-head h2{margin-top:0}
.plan-sec .sec-head .eyebrow{margin-top:10px}
.plan-wrap{display:grid;grid-template-columns:34fr 66fr;gap:64px;align-items:center}
.plan-num .pn-big{font-size:72px;font-weight:900;color:var(--signal);line-height:1;letter-spacing:1px}
.plan-num .pn-cap{font-size:13.5px;color:var(--muted);margin-top:14px;letter-spacing:.5px}
.plan-copy{font-size:14.5px;color:var(--body);line-height:2.15;text-align:justify;margin:0}

/* =========================================================
   15. 长青商学院页
   ========================================================= */
.acad-hero-wrap{display:grid;grid-template-columns:46fr 54fr;gap:56px;align-items:center}
.acad-media .frame{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-up);aspect-ratio:4/3}
.acad-media .frame img{width:100%;height:100%;object-fit:cover}
.teach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.teach-card{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:var(--radius);padding:38px 34px;text-align:center}
.teach-card .tc-ico{width:72px;height:72px;margin:0 auto 20px;border-radius:50%;background:var(--signal);color:#fff;font-size:26px;font-weight:900;display:flex;align-items:center;justify-content:center}
.teach-card h3{font-size:21px;font-weight:900;color:#fff}
.teach-card p{font-size:13.5px;color:rgba(255,255,255,.78);margin-top:12px;line-height:2}
.course-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.course-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px 26px;box-shadow:var(--shadow)}
.course-card .cs-step{font-size:12px;color:var(--signal);font-weight:700;letter-spacing:2px}
.course-card h3{font-size:17.5px;font-weight:900;color:var(--ink);margin-top:8px}
.course-card p{font-size:13px;color:var(--body);margin-top:10px;line-height:1.95}
.faculty-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.faculty-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.faculty-card .fc-img{height:230px;overflow:hidden}
.faculty-card .fc-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.faculty-card:hover .fc-img img{transform:scale(1.05)}
.faculty-card .fc-body{padding:24px 26px 26px}
.faculty-card h3{font-size:17px;font-weight:900;color:var(--ink)}
.faculty-card .fc-role{font-size:12.5px;color:var(--signal);font-weight:700;margin-top:4px}
.faculty-card p{font-size:13px;color:var(--body);margin-top:10px;line-height:1.9}

/* ===== 长青商学院 ===== */
.band-blue{background:linear-gradient(105deg,var(--brand) 0%,var(--brand-deep) 70%);color:#fff;padding:78px 0}
.band-blue .sec-head .eyebrow{color:var(--gold-light)}
.band-blue .sec-head.left h2{color:#fff}
.band-blue .sec-head.left .rule{margin-left:0}
.ad-desc p{font-size:14.5px;line-height:2.05;color:var(--body)}
.ad-desc.light p{color:rgba(255,255,255,.85)}
.ad-tag{display:inline-block;margin-top:18px;font-size:14px;font-weight:700;color:var(--signal);letter-spacing:1px}
.ad-tag.light{color:var(--gold-light)}
.acad-split{display:grid;grid-template-columns:40fr 60fr;gap:48px;align-items:center}
/* 01 学院定位 */
.acad-intro{max-width:920px;font-size:15.5px;line-height:2.05;color:var(--body);margin-bottom:42px}
.pill-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.pill-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px 26px 26px;box-shadow:var(--shadow);overflow:hidden;transition:transform .25s,box-shadow .25s}
.pill-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-up)}
.pill-card .pc-no{display:block;font-size:34px;font-weight:900;color:var(--signal);line-height:1;margin-bottom:14px}
.pill-card .pc-txt{font-size:18px;font-weight:800;color:var(--ink);letter-spacing:.5px}
.pill-card::after{content:"";position:absolute;right:-16px;bottom:-16px;width:74px;height:74px;border-radius:50%;background:rgba(27,74,160,.05)}
/* 02 铁军训练营 · 四位一体 */
.boot-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:42px}
.boot-step{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:var(--radius);padding:22px 22px 20px}
.boot-step .bs-no{display:block;font-size:12.5px;font-weight:700;color:var(--gold-light);letter-spacing:2px;margin-bottom:10px}
.boot-step .bs-txt{font-size:18px;font-weight:800;color:#fff}
/* 03 三大体系 */
.acad-sys-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.acad-sys-grid .course-card{transition:transform .25s,box-shadow .25s}
.acad-sys-grid .course-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-up)}
/* 要点列表（序号） */
.point-list{display:grid;gap:13px}
.point-item{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:14px 20px;box-shadow:var(--shadow);font-size:14.5px;color:var(--ink);font-weight:600;transition:transform .2s,box-shadow .2s,border-color .2s}
.point-item:hover{transform:translateX(5px);border-color:var(--signal);box-shadow:var(--shadow-up)}
.point-item .pi-no{flex:none;width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--signal),var(--signal-dark));color:#fff;font-size:14px;font-weight:800;display:flex;align-items:center;justify-content:center}
.band-blue .point-item{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.16);color:#fff}
.band-blue .point-item:hover{border-color:var(--gold-light)}
.band-blue .point-item .pi-no{background:linear-gradient(135deg,var(--gold-light),var(--gold));color:#3a2a00}
/* 06 融招养 */
.rc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.rc-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:34px 30px;box-shadow:var(--shadow);transition:transform .25s,box-shadow .25s}
.rc-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-up)}
.rc-card .rc-no{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,var(--signal),var(--signal-dark));color:#fff;font-size:17px;font-weight:900;margin-bottom:18px;box-shadow:0 6px 16px rgba(242,113,28,.3)}
.rc-card h3{font-size:20px;font-weight:900;color:var(--ink);display:inline-block;padding-bottom:10px;border-bottom:3px solid var(--signal)}
.rc-card ul{margin-top:18px;display:grid;gap:12px}
.rc-card li{font-size:14px;color:var(--body);line-height:1.7;position:relative;padding-left:16px}
.rc-card li::before{content:"";position:absolute;left:0;top:9px;width:6px;height:6px;border-radius:50%;background:var(--signal)}
/* 07 成长路径（白底 · 阶梯递进） */
.grow-path{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:end;margin-top:46px}
.grow-node{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px 26px 28px;box-shadow:var(--shadow);transition:transform .25s,box-shadow .25s}
.grow-node:hover{transform:translateY(-6px);box-shadow:var(--shadow-up)}
.grow-node:nth-child(1){margin-bottom:0}
.grow-node:nth-child(2){margin-bottom:30px}
.grow-node:nth-child(3){margin-bottom:60px}
.grow-node .gn-dot{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,var(--signal),var(--signal-dark));color:#fff;font-size:19px;font-weight:900;display:flex;align-items:center;justify-content:center;margin-bottom:16px;box-shadow:0 8px 20px rgba(242,113,28,.32)}
.grow-node h3{font-size:19px;font-weight:900;color:var(--ink)}
.grow-node p{font-size:13.5px;color:var(--body);margin-top:10px;line-height:1.8}
.grow-foot{text-align:center;color:var(--ink);margin-top:50px;font-size:15px;font-weight:700}
.grow-foot::before{content:"";display:inline-block;width:34px;height:2px;background:var(--signal);vertical-align:middle;margin-right:12px}
.grow-foot::after{content:"";display:inline-block;width:34px;height:2px;background:var(--signal);vertical-align:middle;margin-left:12px}
/* 08 学院使命 */
.mission-sec{background:linear-gradient(120deg,var(--brand-deep),var(--brand));color:#fff;text-align:center;padding:92px 0}
.mission-sec .sec-head .eyebrow{color:var(--gold-light)}
.mission-sec .sec-head h2{color:#fff}
.mission-sec .sec-head .rule{margin:16px auto 0}
.ms-line{font-size:27px;font-weight:800;line-height:1.95;color:#fff;letter-spacing:1px;max-width:820px;margin:0 auto}
.ms-foot{margin-top:26px;font-size:15px;color:rgba(255,255,255,.82);letter-spacing:1px}
.ms-foot::before{content:"";display:inline-block;width:40px;height:2px;background:var(--gold-light);vertical-align:middle;margin-right:14px}
.ms-foot::after{content:"";display:inline-block;width:40px;height:2px;background:var(--gold-light);vertical-align:middle;margin-left:14px}
/* 案例条 */
.case-bar{display:inline-flex;align-items:center;gap:10px;margin-top:30px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#fff;padding:11px 22px;border-radius:999px;font-size:14px}
.case-bar::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--signal)}

@media (max-width:960px){
  .acad-split{grid-template-columns:1fr;gap:30px}
  .pill-grid{grid-template-columns:1fr 1fr;gap:14px}
  .boot-steps{grid-template-columns:1fr 1fr;gap:12px}
  .acad-sys-grid{grid-template-columns:1fr;gap:16px}
  .rc-grid{grid-template-columns:1fr;gap:16px}
  .grow-path{grid-template-columns:1fr;gap:16px;align-items:stretch}
  .grow-node:nth-child(1),.grow-node:nth-child(2),.grow-node:nth-child(3){margin-bottom:0}
  .ms-line{font-size:20px}
}

/* =========================================================
   16. 滚动显现动画
   ========================================================= */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease}
.reveal.visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}
  .reveal{opacity:1;transform:none}
  .slide-bg{transform:none!important}
}

/* =========================================================
   17. 响应式 ≤960px
   ========================================================= */
@media (max-width:1180px){
  .menu{gap:18px}
  .menu a{font-size:14px}
  .support-row{grid-template-columns:repeat(4,1fr)}
  .flow-grid{grid-template-columns:repeat(3,1fr)}
  .rd-grid,.adv-grid,.benefit-grid,.rel-grid,.course-grid,.type-grid,.home-store-grid,.coop-grid{grid-template-columns:repeat(2,1fr)}
  .foot-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:960px){
  .section{padding:60px 0}
  .tb-slogan{display:none}
  .menu,.nav-cta{display:none}
  .burger{display:flex}
  .logo img{height:38px}
  .nav,.nav-inner{height:64px}
  /* 移动端横幅：文字叠图（细节见第 26 节），此处仅留占位变量 */
  .hero{height:auto;min-height:0;padding:0}
  .hero-arrow{display:none}
  .page-banner{padding:48px 0 56px}
  .pb-title{font-size:32px}
  .pb-year{display:none}
  .about-wrap,.profile-wrap,.origin-wrap,.endorse-wrap,.doc-wrap,.program-wrap,.video-wrap,.pd-hero,.ing-wrap,.partner-flex,.msg-flex,.plan-wrap,.acad-hero-wrap{grid-template-columns:1fr;gap:36px}
  .about-media{max-width:420px;margin:0 auto}
  .about-badge{right:8px}
  .svc-grid{grid-template-columns:repeat(2,1fr)}
  .prod-grid,.pcard-grid,.news-grid,.sys-grid,.culture-grid,.msf-item,.ms-row,.weight-grid,.scene-grid,.store-display,.contact-grid,.emp-grid,.teach-grid,.faculty-grid,.adv-grid,.flow-grid,.rd-grid,.benefit-grid,.rel-grid,.course-grid,.why-stats,.stat-row,.meta-grid,.type-grid,.coop-grid{grid-template-columns:1fr}
  /* 官方客服二维码：手机/平板内距略收，文案字号降一档 */
  .qr-box{gap:16px}
  .qr-box .qr-txt b{font-size:14px}
  .qr-box .qr-txt span{font-size:12px;line-height:1.7}
  .env-grid{grid-template-columns:1fr;grid-auto-rows:220px}
  .env-big,.env-wide{grid-column:span 1}
  .env-big{grid-row:span 1}
  .home-store-grid,.profit-grid{grid-template-columns:1fr}
  .proj-grid{grid-template-columns:repeat(2,1fr);gap:16px}
  .proj-body{padding:16px 16px 18px}
  .proj-body h3{font-size:16px}
  .proj-body h3::before{height:15px}
  .proj-body p{font-size:13px;margin-top:8px}
  .team-grid{grid-template-columns:repeat(2,1fr);gap:14px}
  .team-body{padding:14px 14px 16px}
  .team-body h3{font-size:16px}
  .team-role{font-size:11.5px;padding:3px 11px}
  .team-body p{font-size:12px;margin-top:9px}
  .nutri-sec .nrow{grid-template-columns:1fr}
  .nutri-sec .nrow-media{min-height:0;aspect-ratio:16/10}
  .nutri-sec .nrow-copy{padding:30px 28px 34px}
  .nutri-sec .nrow-copy h3{font-size:22px}
  .support-row{grid-template-columns:repeat(2,1fr)}
  .cctv .container{grid-template-columns:1fr;gap:36px}
  .featured{grid-template-columns:1fr;padding:28px}
  .feat-list{grid-template-columns:1fr}
  .featured-news{grid-template-columns:1fr}
  .featured-news .fn-body{padding:28px}
  .partner-map img.map-bg{height:220px}
  .partner-overlay{position:static;transform:none;max-width:none;margin:16px}
  .goal-row{gap:24px}
  .foot-grid{grid-template-columns:1fr;gap:36px}
  .foot-bottom{flex-direction:column;text-align:center}
  .store-photos{grid-template-columns:1fr}
  .store-grid{grid-template-columns:1fr}
  .store-grid .sd-1,.store-grid .sd-2,.store-grid .sd-3,.store-grid .sd-4,.store-grid .sd-5{grid-column:span 1;aspect-ratio:4/3}
  .empower-grid{grid-template-columns:1fr}
  .store-photos .sp-cell,.store-photos .sp-cell:first-child,.store-photos .sp-cell:nth-child(2),.store-photos .sp-cell:nth-child(3),.store-photos .sp-cell:nth-child(4),.store-photos .sp-cell:nth-child(5){grid-column:span 1}
  .philosophy{grid-template-columns:1fr 1fr}
  .fp-grid{grid-template-columns:1fr}
  .ing-stats{gap:20px}
  .plan-num .pn-big{font-size:56px}
  .back-top{right:18px;bottom:26px;width:42px;height:42px}
  .cta-inner{flex-direction:column;align-items:flex-start}
}

/* =========================================================
   18. 移动端紧凑化（≤960px）
   背景：客户反馈移动端首页篇幅过长（改造前实测约 15900px）
   策略：收全局留白 / 压配图高度 / 单列网格改双列 / 紧凑卡片内边距
   范围：仅作用于 ≤960px；>960px 的 PC 端样式完全不变
   ========================================================= */
@media (max-width:960px){

  /* —— 全局节奏 —— */
  .container{max-width:calc(100% - 32px)}
  .section{padding:44px 0}
  .sec-head{margin-bottom:26px}
  .sec-head h2{font-size:25px}
  .sec-head .rule{margin-top:12px}
  .sec-head .lead{margin-top:10px;font-size:13.5px}

  /* —— 信息条 / 导航 / 抽屉 —— */
  .topbar{height:32px;font-size:11.5px}
  .nav,.nav-inner{height:58px}
  .logo img{height:34px}
  .burger{width:40px;height:40px}
  .drawer{padding:92px 24px 32px}
  .drawer .d-item{font-size:16px;padding:12px 4px}
  .drawer .d-cta{margin-top:18px;padding:13px}

  /* —— 首页 Banner（叠图细节见第 26 节） —— */
  .hero{padding:0}
  .slide-copy .btns{gap:10px}
  .slide-copy .btns .btn{padding:9px 20px;font-size:13.5px}

  /* —— 核心服务 —— */
  .svc-grid{gap:12px}
  .svc-card{padding:18px 10px 16px;border-radius:10px}
  .svc-ico{width:46px;height:46px;margin:0 auto 8px;border-radius:12px}
  .svc-ico svg{width:26px;height:26px}
  .svc-card h3{font-size:14.5px}
  .svc-card p{font-size:11.5px;line-height:1.55;margin-top:4px}

  /* —— 关于我们（创始人故事） —— */
  .about-media .frame{aspect-ratio:4/3}
  .about-badge{top:14px;right:8px;padding:10px 14px;border-radius:8px}
  .about-badge .b-num{font-size:20px}
  .about-badge .b-txt{font-size:11px;margin-top:1px}
  .about-copy h2{font-size:23px;margin-top:12px}
  .about-copy .rule{margin:14px 0 16px}
  .about-quote{padding:16px 18px}
  .about-quote::before,.about-quote::after{font-size:34px}
  .about-quote p{font-size:13px;line-height:1.85;padding-left:20px}
  /* —— 创始人头衔标签：移动端保持单行、不换行（真放不下时横向滑动，绝不折行） —— */
  .about-copy{min-width:0}   /* 单行标签的最小宽度会撑宽栅格列，这里放开以免整页横向溢出 */
  .about-tags{
    flex-wrap:nowrap;gap:5px;
    overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;
    margin:14px -16px 16px 0;padding:2px 14px 2px 0;
    scrollbar-width:none;-ms-overflow-style:none;
  }
  .about-tags::-webkit-scrollbar{display:none}
  /* 只在「确实还能往右滑」时才加右缘渐隐（由 main.js 打标记），能一屏放下就保持干净 */
  .about-tags.is-scrollable{
    -webkit-mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 12px),rgba(0,0,0,0) 100%);
    mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 12px),rgba(0,0,0,0) 100%);
  }
  .about-tags span{flex:0 0 auto;white-space:nowrap;font-size:11px;padding:3px 9px;scroll-snap-align:start}
  /* —— 发展历程：改为横向滑动轨道（纵向堆叠会把这一屏拉得很长） —— */
  .milestones{margin-top:16px}
  .milestones .ms-title{font-size:15px;margin-bottom:12px}
  .ms-row{
    display:flex;gap:0;
    overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;
    margin-right:-16px;padding:6px 16px 4px 0;
    scrollbar-width:none;-ms-overflow-style:none;
    /* 右缘轻渐隐：让「还有内容」比生硬截断更明显；末尾卡右侧留了 38px，不会被切到字 */
    -webkit-mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 16px),rgba(0,0,0,0) 100%);
    mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 16px),rgba(0,0,0,0) 100%);
  }
  .ms-row::-webkit-scrollbar{display:none}
  /* 卡片宽度随屏宽自适应，右侧露出下一张的一角作为「可滑动」提示 */
  .ms-item{flex:0 0 clamp(220px,74%,320px);padding:8px 22px 0 0;scroll-snap-align:start}
  /* 圆点必须完整落在轨道可视区内：轨道上内距已留 6px，这里只让圆心对准 2px 分割线 */
  .ms-item::before{top:-4px;width:10px;height:10px}
  .ms-item .ms-year{font-size:15px}
  .ms-item p{font-size:12px;line-height:1.75;margin-top:5px}
  .philosophy{grid-template-columns:1fr 1fr;gap:12px;margin-top:0;margin-bottom:24px}
  .ph-card{padding:16px 14px;border-radius:10px}
  .ph-card h3{font-size:14.5px}
  .ph-card p{font-size:11.5px;line-height:1.65;margin-top:6px}

  /* —— 产品中心（9 卡双列，篇幅优化重点） —— */
  .prod-grid{grid-template-columns:1fr 1fr;gap:12px}
  .prod-img-head{height:118px}
  .prod-body{padding:14px 12px 12px}
  .prod-tag{font-size:10.5px;padding:2px 8px;margin-bottom:8px}
  .prod-card h3{font-size:14.5px}
  .prod-card .en{font-size:10px;letter-spacing:1px;margin-top:2px}
  .prod-card .desc{font-size:11.5px;line-height:1.6;margin-top:6px}
  .prod-foot{padding-top:10px;gap:6px}
  .prod-foot .note{font-size:10px}
  .link-blue{font-size:12px}
  .compliance{margin-top:20px;font-size:11.5px}

  /* —— 央视背书通栏 —— */
  .cctv{padding:44px 0}
  .cctv .container{gap:24px}
  .cctv-left h2{font-size:21px;margin:10px 0 12px}
  .cctv-left p{font-size:12.5px;line-height:1.75}
  .badge-grid{grid-template-columns:1fr 1fr;gap:12px}
  .badge{padding:16px 10px;border-radius:10px}
  .badge svg{width:30px;height:30px;margin:0 auto 8px}
  .badge h3{font-size:13px}
  .badge p{font-size:10.5px;line-height:1.5;margin-top:3px}

  /* —— 中心环境（双列马赛克） —— */
  .env-grid{grid-template-columns:1fr 1fr;grid-auto-rows:104px;gap:10px}
  .env-big,.env-wide{grid-column:span 2}
  .env-big{grid-row:span 1}

  /* —— 招商加盟 —— */
  .partner-map{margin-bottom:24px;border-radius:12px}
  .partner-map img.map-bg{height:168px}
  .partner-overlay{margin:12px;padding:16px 18px;border-radius:10px}
  .partner-overlay h3{font-size:16px}
  .goal-row{gap:20px;margin-top:10px}
  .goal .g-num{font-size:28px}
  .goal .g-num .unit{font-size:13px}
  .goal .g-txt{font-size:11px;margin-top:4px}
  .home-store-grid{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:24px}
  .home-store-grid .store-card{padding:18px 14px;border-radius:10px}
  .store-card .s-ico{width:42px;height:42px;margin-bottom:10px;border-radius:10px}
  .store-card .s-ico svg{width:23px;height:23px}
  .store-card h3{font-size:15px}
  .home-store-grid .s-sub{font-size:10.5px;margin-top:3px}
  .store-card p{font-size:10.5px;line-height:1.5;margin-top:6px}
  .support-title{font-size:11.5px;color:var(--muted);margin:0 0 14px}
  .support-row{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:26px}
  .support-pill{padding:10px 2px}
  .support-pill .p-no{font-size:10.5px}
  .support-pill .p-txt{font-size:11.5px;margin-top:1px}
  .partner-cta .btn{padding:11px 24px;font-size:14px}

  /* —— 新闻资讯 —— */
  .news-head{margin-bottom:24px}
  .news-grid{gap:16px}
  .news-thumb{height:140px}
  .news-body{padding:16px 16px 18px}
  .news-date{font-size:12px}
  .news-body h3{font-size:15px;line-height:1.5;margin-top:6px}
  .news-body p{font-size:12.5px;line-height:1.65;margin-top:6px}
  .news-tag{left:10px;top:10px;font-size:10.5px;padding:2px 8px}

  /* —— FAQ —— */
  .faq-item{margin-bottom:10px;border-radius:10px}
  .faq-q{padding:14px 16px;font-size:14px;gap:10px}
  .faq-q .q-no{width:34px;height:34px;font-size:12.5px}
  .faq-a-inner{padding:0 16px 14px 60px;font-size:12.5px;line-height:1.8}

  /* —— 页脚 —— */
  .footer{padding:40px 0 0;font-size:13px}
  .foot-grid{gap:26px;padding-bottom:30px}
  .foot-brand .foot-logo{height:36px;margin-bottom:12px}
  .foot-brand .co-name{font-size:14px}
  .foot-brand .co-slogan{margin-top:8px;font-size:12px;line-height:1.8}
  .foot-title{font-size:14.5px;margin-bottom:12px;padding-bottom:9px}
  .foot-nav{grid-template-columns:repeat(3,1fr);gap:2px 12px}
  .foot-nav a{font-size:12px;padding:4px 0}
  .foot-contact li{font-size:12px;line-height:1.6;padding:4px 0;gap:8px}
  .foot-form{gap:8px}
  .foot-form input,.foot-form select,.foot-form textarea{padding:8px 10px;font-size:12.5px}
  .foot-form textarea{min-height:52px}
  .foot-form .ff-submit{padding:10px;font-size:13.5px}
  .foot-bottom{padding:14px 0;font-size:11.5px;gap:8px}
  /* 页脚客服二维码：窄屏收一档，文案仍与图片横向并排 */
  .foot-qr{margin-top:18px;gap:12px}
  .foot-qr-img{width:80px;height:80px}
  .foot-qr-txt b{font-size:12.5px}
  .foot-qr-txt span{font-size:11.5px;line-height:1.7}
}

/* =========================================================
   19. 关于我们页 · 移动端适配（≤960px，PC 不变）
   修复：发展历程 5 列卡片在移动端被压至约 55px 宽、文字溢出卡片
   优化：数据统计 4 行竖堆 → 2×2；门店形象 6 图单列竖堆 → 双列
   ========================================================= */
@media (max-width:960px){

  /* —— 发展历程：5 列卡片 → 纵向时间线 —— */
  .ms-flow{grid-template-columns:1fr;gap:0}
  .msf-item{display:grid;grid-template-columns:36px 1fr;column-gap:16px;
    text-align:left;background:none;border:0;box-shadow:none;border-radius:0;
    padding:0 0 26px;position:relative}
  .msf-item::after{content:"";position:absolute;left:17px;top:22px;bottom:0;width:2px;background:var(--line)}
  .msf-item:last-child::after{display:none}
  .msf-item .dot{grid-column:1;grid-row:1/3;width:14px;height:14px;margin:6px 0 0 11px;
    box-shadow:0 0 0 4px #fff;position:relative;z-index:1}
  .msf-item h3{grid-column:2;grid-row:1;font-size:16.5px}
  .msf-item p{grid-column:2;grid-row:2;font-size:12.5px;line-height:1.75;margin-top:5px}

  /* —— 数据统计：4 行 → 2×2 —— */
  .stat-row{grid-template-columns:1fr 1fr;gap:22px 16px;margin-top:26px}
  .stat-card .st-num{font-size:36px}
  .stat-card .st-txt{font-size:12.5px;margin-top:6px}

  /* —— 门店形象：6 图单列 → 双列 —— */
  .store-display{grid-template-columns:1fr 1fr;gap:12px}
}

/* =========================================================
   20. 首页横幅 · 移动端手指左右滑动（≤960px，PC 不变）
   实现：hero-track 横向 flex 轨道，触摸拖拽跟手、松手吸附切换
   PC 端 hero-track 为普通块级容器，slide 仍绝对定位于 .hero，布局零变化
   ========================================================= */
@media (max-width:960px){
  .hero-track{display:flex;touch-action:pan-y;
    transform:translateX(calc(var(--hero-idx,0) * -100% + var(--hero-dx,0px)));
    transition:transform .42s cubic-bezier(.25,.8,.3,1)}
  .hero-track.dragging{transition:none}
  .slide{flex:0 0 100%;min-width:0}
}

/* =========================================================
   17. 新闻详情页 · 公众号风格排版（2026-11-03）
   ========================================================= */
.news-link{display:flex;flex-direction:column;flex:1;color:inherit}
.news-link .link-blue{margin-top:auto}
.art-banner{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);margin-bottom:36px;background:var(--alt)}
.art-banner img{width:100%;display:block}
.article-body p.art-meta{font-size:13px;color:var(--muted);letter-spacing:1px;margin-bottom:26px;text-align:left}
.article-body p.art-en-lead{font-size:15px;font-weight:900;color:var(--brand);letter-spacing:6px;text-align:center;margin:6px 0 20px}
/* 居中短句块（公众号诗歌体） */
.art-lines{text-align:center;margin:22px 0}
.article-body .art-lines p{margin-bottom:6px;text-align:center;line-height:2}
.art-lines .art-lead{font-size:19px;font-weight:900;color:var(--ink);margin:12px 0 12px}
/* 图 + 图注 */
.art-fig{margin:24px 0}
.art-fig img{width:100%;border-radius:var(--radius);box-shadow:var(--shadow);display:block}
.art-fig figcaption{margin-top:10px;font-size:13px;color:var(--muted);text-align:center;letter-spacing:.5px}
.article-body p.art-figcap{margin-top:10px;font-size:13px;color:var(--muted);text-align:center}
/* 编号章节（01 + 标题） */
.art-sec{display:flex;align-items:center;gap:16px;margin:38px 0 18px}
.art-sec .as-no{flex:none;width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,var(--signal),var(--signal-dark));color:#fff;font-size:19px;font-weight:900;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 16px rgba(242,113,28,.28)}
.art-sec h2{font-size:21px;font-weight:900;color:var(--ink);line-height:1.5;margin:0}
/* PART 居中标题 */
.art-part{text-align:center;margin:44px 0 26px}
.art-part .ap-no{display:block;font-size:13px;font-weight:700;color:var(--signal);letter-spacing:4px;margin-bottom:10px}
.art-part strong{display:block;font-size:24px;font-weight:900;color:var(--ink);line-height:1.6}
/* 开篇标题块 */
.art-title-block{text-align:center;margin:30px 0 26px}
.article-body .art-title-block p{text-align:center;margin-bottom:0}
.art-title-block .atb-sub{font-size:14px;color:var(--muted);letter-spacing:2px;margin-bottom:8px}
.art-title-block .atb-main{font-size:26px;font-weight:900;color:var(--ink);letter-spacing:2px}
/* 图组网格（原文「滑动查看」图组） */
.art-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:24px 0}
.art-gallery img{width:100%;border-radius:10px;box-shadow:var(--shadow);display:block;aspect-ratio:4/3;object-fit:cover}
/* 长图直放 */
.art-long{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);margin:26px 0;background:var(--alt)}
.art-long img{width:100%;display:block}
/* 尾部标语 / END */
.article-body p.art-slogan{text-align:center;font-size:16px;font-weight:700;color:var(--brand);letter-spacing:1px;margin:34px 0 8px}
.article-body p.art-end{text-align:center;font-size:14px;color:var(--muted);letter-spacing:3px;margin:26px 0}
/* 关注公众号 */
.qr-block{display:flex;align-items:center;justify-content:center;gap:18px;background:var(--alt);border:1px solid var(--line);border-radius:var(--radius);padding:22px 28px;margin:34px 0 10px}
.qr-block img{width:150px;height:150px;border-radius:10px;background:#fff;padding:6px;box-shadow:var(--shadow)}
.qr-txt{display:flex;flex-direction:column;gap:6px}
.qr-txt strong{font-size:17px;font-weight:900;color:var(--ink)}
.qr-txt span{font-size:13px;color:var(--muted)}

@media (max-width:960px){
  .art-sec{gap:12px}
  .art-sec .as-no{width:44px;height:44px;font-size:16px;border-radius:12px}
  .art-sec h2{font-size:18px}
  .art-part strong{font-size:20px}
  .art-title-block .atb-main{font-size:21px}
  .art-gallery{gap:10px}
  .qr-block{flex-direction:column;text-align:center;gap:12px;padding:20px}
  .qr-block img{width:130px;height:130px}
  .art-lines .art-lead{font-size:17px}
}

/* =========================================================
   21. 产品详情 · 全营养素（qny-）
   ========================================================= */
/* 产品主图（4:5 画幅，整盒可见） */
.pd-hero.img-ratio{grid-template-columns:40fr 60fr}
.pd-media .frame.img-45{background:#fff;aspect-ratio:4/5}
.pd-media .frame.img-45 img{object-fit:cover;object-position:center center}

/* 营养困境 4 卡 */
.qny-pain-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.qny-pain{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px 24px 26px;box-shadow:var(--shadow);overflow:hidden}
.qny-pain::after{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:linear-gradient(90deg,var(--signal),#F9BD8C)}
.qny-pain .qp-no{font-size:12.5px;font-weight:900;color:var(--signal);letter-spacing:2px}
.qny-pain h3{font-size:17px;font-weight:900;color:var(--ink);margin:8px 0 8px}
.qny-pain p{font-size:13.5px;color:var(--body);line-height:1.95}

/* 四重作用机制 */
.qny-mech-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}
.qny-mech{border-left:3px solid var(--signal);padding:2px 0 4px 20px}
.qny-mech .qm-no{font-size:40px;font-weight:900;color:#DCE6F5;line-height:1;letter-spacing:-1px}
.qny-mech h3{font-size:17px;font-weight:900;color:var(--ink);margin:8px 0 8px}
.qny-mech p{font-size:13.5px;color:var(--body);line-height:1.95}
.qny-mech-note{margin-top:36px;padding-top:22px;border-top:1px dashed var(--line);text-align:center;font-size:13px;color:var(--muted)}

/* 四大核心优势（深蓝） */
.qny-adv-sec{background:linear-gradient(135deg,#0B326F 0%,#1B4AA0 58%,#0E3E8F 100%);padding:88px 0}
.qny-adv-sec .sec-head .eyebrow{color:rgba(255,255,255,.55)}
.qny-adv-sec .sec-head h2{color:#fff}
.qny-adv-sec .sec-head .lead{color:rgba(255,255,255,.75)}
.qny-adv-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.qny-adv{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.17);border-radius:16px;padding:28px 30px 30px;transition:transform .25s,background .25s}
.qny-adv:hover{transform:translateY(-5px);background:rgba(255,255,255,.12)}
.qny-adv .qa-head{display:flex;align-items:baseline;gap:12px}
.qny-adv .qa-no{font-size:15px;font-weight:900;color:var(--signal)}
.qny-adv .qa-name{font-size:16.5px;font-weight:900;color:#fff;letter-spacing:1px}
.qny-adv .qa-val{font-size:44px;font-weight:900;color:#fff;line-height:1.15;margin:12px 0 14px;letter-spacing:-1px}
.qny-adv .qa-val .qa-unit{font-size:15px;font-weight:700;color:var(--gold-light);margin-left:8px;letter-spacing:0}
.qny-adv p{font-size:13.5px;color:rgba(255,255,255,.78);line-height:1.95}

/* 配方解析区块 */
.qny-block{margin-bottom:58px}
.qny-block:last-child{margin-bottom:0}
.qny-block .qb-head{display:flex;align-items:center;gap:16px;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.qny-block .qb-index{flex:0 0 40px;width:40px;height:40px;border-radius:10px;background:var(--brand);color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:900}
.qny-block .qb-head h3{font-size:22px;font-weight:900;color:var(--ink);line-height:1.3}
.qny-block .qb-sub{font-size:11.5px;color:var(--muted);letter-spacing:2px;margin-top:3px;text-transform:uppercase}

.qny-pro-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.qny-pro{background:var(--alt);border-radius:var(--radius);padding:26px 24px}
.qny-pro h4{font-size:16.5px;font-weight:900;color:var(--signal-dark)}
.qny-pro p{font-size:13.5px;color:var(--body);line-height:1.95;margin:8px 0 16px}
.qny-pro .qp-tags{display:flex;flex-wrap:wrap;gap:8px}
.qny-pro .qp-tags span{font-size:12px;font-weight:700;color:#fff;background:var(--signal);border-radius:4px;padding:3px 10px}

.qny-gut-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.qny-gut{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow)}
.qny-gut .qg-label{font-size:11.5px;font-weight:700;letter-spacing:2px;color:var(--muted)}
.qny-gut h4{font-size:18px;font-weight:900;color:var(--ink);margin:6px 0 10px}
.qny-gut p{font-size:13.5px;color:var(--body);line-height:2}
.qny-synergy{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:20px;background:#FDF3EC;border-radius:var(--radius);padding:16px 24px}
.qny-synergy .qs-label{flex-shrink:0;font-size:12px;font-weight:900;color:#fff;background:var(--signal);border-radius:999px;padding:4px 14px;letter-spacing:1px}
.qny-synergy .qs-flow{font-size:13.5px;color:#8A4A1E;line-height:1.9}
.qny-synergy .qs-flow i{font-style:normal;font-weight:900;color:var(--signal);margin:0 8px}

.qny-micro-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.qny-micro{background:var(--alt);border-radius:var(--radius);padding:26px 28px}
.qny-micro h4{font-size:17px;font-weight:900;color:var(--ink);margin-bottom:4px}
.qny-min-list li{font-size:13.5px;color:var(--body);line-height:1.95;padding:9px 0;border-bottom:1px dashed #E1E8F2}
.qny-min-list li:last-child{border-bottom:none}
.qny-min-list li b{color:var(--brand);font-weight:700;margin-right:6px}
.qny-micro-note{font-size:12px;color:var(--muted);line-height:1.9;margin-top:18px}

.qny-oil-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.qny-oil{border-left:3px solid var(--brand);padding:2px 0 2px 20px}
.qny-oil h4{font-size:16px;font-weight:900;color:var(--ink)}
.qny-oil p{font-size:13px;color:var(--body);line-height:1.95;margin-top:6px}

/* 适用人群 */
.qny-people-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.qny-person{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px 24px;box-shadow:var(--shadow);transition:transform .25s,border-color .25s,box-shadow .25s}
.qny-person:hover{transform:translateY(-4px);border-color:#F6CBAD;box-shadow:var(--shadow-up)}
.qny-person h3{font-size:17px;font-weight:900;color:var(--ink)}
.qny-person .qpr-sub{font-size:12px;color:var(--signal-dark);margin:5px 0 12px;letter-spacing:.5px}
.qny-person p{font-size:13px;color:var(--body);line-height:2}

/* 场景应用（深蓝 + 三图） */
.qny-scene-sec{background:var(--footer);padding:88px 0 0}
.qny-scene-head{text-align:center;padding-bottom:48px}
.qny-scene-head .eyebrow{font-size:13px;letter-spacing:4px;color:rgba(255,255,255,.55);text-transform:uppercase}
.qny-scene-head h2{font-size:34px;font-weight:900;color:#fff;letter-spacing:1px;margin-top:12px}
.qny-scene-head .rule{width:40px;height:4px;background:var(--signal);border-radius:2px;margin:16px auto 0}
.qny-scene-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.qny-scene{position:relative;margin:0;overflow:hidden;background:#08264F}
.qny-scene img{width:100%;height:460px;object-fit:cover;object-position:center;transition:transform .6s}
.qny-scene:hover img{transform:scale(1.04)}
.qny-scene::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,38,79,0) 20%,rgba(8,38,79,.55) 58%,rgba(8,38,79,.95) 100%)}
.qny-scene figcaption{position:absolute;left:38px;right:38px;bottom:36px;z-index:1;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.5)}
.qny-scene figcaption h3{font-size:23px;font-weight:900;letter-spacing:2px}
.qny-scene figcaption p{font-size:13.5px;color:rgba(255,255,255,.92);line-height:1.9;margin-top:8px}

/* 规格 */
.qny-spec-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;max-width:872px;margin:0 auto}
.qny-spec{position:relative;background:#fff;border:1px solid var(--line);border-radius:16px;padding:34px 28px 30px;text-align:center;box-shadow:var(--shadow);transition:transform .25s,box-shadow .25s}
.qny-spec:hover{transform:translateY(-5px);box-shadow:var(--shadow-up)}
.qny-spec .qs-size{width:88px;height:88px;border-radius:50%;background:#0E3E8F;color:#fff;font-size:26px;font-weight:900;display:flex;align-items:center;justify-content:center;margin:0 auto 18px;letter-spacing:-.5px}
.qny-spec .qs-size span{font-size:14px;font-weight:700;margin-left:2px}
.qny-spec h3{font-size:18px;font-weight:900;color:var(--ink)}
.qny-spec .qs-sub{font-size:12.5px;color:var(--muted);margin-top:6px;line-height:1.8}
.qny-spec .qs-price{font-size:15px;font-weight:900;color:var(--signal);margin:16px 0 18px;letter-spacing:1px}
.qny-spec .qs-btn{display:inline-block;font-size:14px;padding:10px 30px}
.qny-spec.qs-featured{border-color:var(--signal);box-shadow:0 14px 36px rgba(242,113,28,.16)}
.qny-spec .qs-hot{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--signal);color:#fff;font-size:12px;font-weight:700;border-radius:999px;padding:4px 16px;white-space:nowrap}

.qny-promise-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:44px}
.qny-promise{background:var(--alt);border-radius:var(--radius);padding:24px 22px}
.qny-promise h4{position:relative;font-size:15.5px;font-weight:900;color:var(--ink);padding-left:14px}
.qny-promise h4::before{content:"";position:absolute;left:0;top:4px;width:4px;height:15px;border-radius:2px;background:var(--signal)}
.qny-promise p{font-size:12.5px;color:var(--body);line-height:1.95;margin-top:6px}

@media (max-width:960px){
  .qny-pain-grid{grid-template-columns:repeat(2,1fr);gap:14px}
  .qny-pain{padding:22px 20px}
  .qny-mech-grid{grid-template-columns:repeat(2,1fr);gap:24px 18px}
  .qny-mech .qm-no{font-size:32px}
  .qny-mech h3{font-size:15.5px}
  .qny-adv-sec,.qny-scene-sec{padding-top:56px}
  .qny-adv-grid{grid-template-columns:1fr;gap:16px}
  .qny-adv{padding:24px 22px}
  .qny-adv .qa-val{font-size:34px}
  .qny-block{margin-bottom:40px}
  .qny-block .qb-head h3{font-size:19px}
  .qny-pro-grid,.qny-gut-grid,.qny-micro-grid,.qny-oil-grid{grid-template-columns:1fr;gap:14px}
  .qny-synergy{padding:14px 18px;gap:10px}
  .qny-people-grid{grid-template-columns:repeat(2,1fr);gap:14px}
  .qny-person{padding:22px 20px}
  .qny-scene-head h2{font-size:24px}
  .qny-scene-grid{grid-template-columns:1fr}
  .qny-scene img{height:340px}
  .qny-scene figcaption{left:22px;right:22px;bottom:24px}
  .qny-scene figcaption h3{font-size:20px}
  .qny-spec-grid{grid-template-columns:1fr;gap:18px}
  .qny-promise-grid{grid-template-columns:1fr 1fr;gap:12px}
  .qny-promise{padding:20px 18px}
}

/* =========================================================
   22. 产品详情 · PQQ / 芯源（pdx- 通用组件）
   ========================================================= */
/* 横图主视觉（16:10，概念图完整显示） */
.pd-hero.img-wide{grid-template-columns:46fr 54fr;align-items:center}
.pd-media .frame.img-wide{background:#0B2F6B;aspect-ratio:16/10}
.pd-media .frame.img-wide img{width:100%;height:100%;object-fit:cover}

/* 机制卡内「证据」行 */
.qny-mech .qm-evi{font-size:11.5px;color:var(--muted);line-height:1.8;margin-top:10px;padding-top:10px;border-top:1px dashed #DDE5F0}

/* 两列变体（窄屏回落单列） */
.qny-pro-grid.pdx-two{grid-template-columns:1fr 1fr}
.qny-people-grid.pdx-people-two{grid-template-columns:repeat(2,1fr)}

/* 双核双栏（深蓝底） */
.pdx-dual-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.pdx-dual{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.17);border-radius:16px;padding:30px 32px 32px}
.pdx-dual-head{margin-bottom:14px}
.pdx-dual-label{display:inline-block;font-size:11.5px;font-weight:700;letter-spacing:2px;color:var(--signal);border:1px solid rgba(242,113,28,.5);border-radius:999px;padding:3px 12px}
.pdx-dual-head h3{font-size:23px;font-weight:900;color:#fff;margin-top:10px;letter-spacing:.5px}
.pdx-dual-spec{font-size:12.5px;color:rgba(255,255,255,.62);line-height:1.9;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.14)}
.pdx-dual-sub{font-size:12px;font-weight:900;letter-spacing:2px;color:var(--gold-light);margin:18px 0 6px}
.pdx-dual-list li{position:relative;font-size:13.5px;color:rgba(255,255,255,.82);line-height:1.9;padding:5px 0 5px 16px}
.pdx-dual-list li::before{content:"";position:absolute;left:0;top:14px;width:5px;height:5px;border-radius:50%;background:var(--signal)}

/* 一袋双核：单卡双栏（原两卡合并为一袋粉剂） */
.pdx-dual--one{padding:34px 38px 34px}
.pdx-dual-cols{display:grid;grid-template-columns:1fr 1fr;gap:0 44px;margin-top:4px}
.pdx-dual-col{min-width:0}
.pdx-dual-col+.pdx-dual-col{border-left:1px solid rgba(255,255,255,.14);padding-left:44px}

.pdx-dual-flow{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:24px;background:#FDF3EC;border-radius:var(--radius);padding:18px 26px}
.pdx-dual-flow .pdf-label{flex-shrink:0;font-size:12px;font-weight:900;color:#fff;background:var(--signal);border-radius:999px;padding:4px 14px;letter-spacing:1px}
.pdx-dual-flow .pdf-text{font-size:13.5px;font-weight:700;color:#8A4A1E;line-height:1.9}
.pdx-dual-flow .pdf-text i{font-style:normal;font-weight:900;color:var(--signal);margin:0 8px}

/* 胶原改善趋势条 */
.pdx-trend{margin-top:34px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px 30px;box-shadow:var(--shadow)}
.pdt-title{font-size:14px;font-weight:900;color:var(--ink);letter-spacing:.5px}
.pdt-items{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:18px}
.pdt-item{background:var(--alt);border-radius:12px;padding:18px 18px 16px;text-align:center}
.pdt-name{display:block;font-size:13px;color:var(--body);font-weight:700}
.pdt-arrow{display:block;font-size:26px;font-weight:900;line-height:1.3;margin:4px 0 2px}
.pdt-arrow.up{color:#C8322B}
.pdt-arrow.down{color:#1B7A4B}
.pdt-desc{display:block;font-size:11.5px;color:var(--muted)}
.pdt-note{font-size:11.5px;color:var(--muted);line-height:1.85;margin-top:16px}

/* 成分群 5 卡 */
.pdx-comp-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:20px}
.pdx-comp-grid>.pdx-comp{grid-column:span 2}
.pdx-comp-grid>.pdx-comp:nth-child(4){grid-column:2/4}
.pdx-comp-grid>.pdx-comp:nth-child(5){grid-column:4/6}
.pdx-comp{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px 26px;box-shadow:var(--shadow);transition:transform .25s,box-shadow .25s}
.pdx-comp:hover{transform:translateY(-4px);box-shadow:var(--shadow-up)}
.pdx-comp .pc-no{font-size:12.5px;font-weight:900;color:var(--signal);letter-spacing:2px}
.pdx-comp h3{font-size:17.5px;font-weight:900;color:var(--ink);margin:8px 0 10px}
.pdx-comp .pc-ing{font-size:12px;color:var(--brand);font-weight:700;line-height:1.85;padding:8px 12px;background:#F2F6FC;border-radius:8px;margin-bottom:12px}
.pdx-comp p{font-size:13.5px;color:var(--body);line-height:1.95}

.pdx-band{margin-top:34px;background:linear-gradient(90deg,#0B326F,#1B4AA0);color:#fff;border-radius:var(--radius);padding:22px 30px;font-size:14px;line-height:1.95;text-align:center;letter-spacing:.5px}

/* 植萃网络 3 卡 */
.pdx-bot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.pdx-bot{background:var(--alt);border-radius:var(--radius);padding:30px 26px;border-top:3px solid var(--brand)}
.pdx-bot .pb-no{font-size:30px;font-weight:900;color:#D6E1F2;line-height:1;letter-spacing:-1px}
.pdx-bot h3{font-size:19px;font-weight:900;color:var(--ink);margin:10px 0 4px}
.pdx-bot .pb-sub{font-size:12px;font-weight:700;color:var(--signal);letter-spacing:.5px;margin-bottom:12px}
.pdx-bot p{font-size:13.5px;color:var(--body);line-height:1.95}
.pdx-bot .pb-from{margin-top:16px;padding-top:14px;border-top:1px dashed #D6DFEC;font-size:12.5px;color:var(--body)}
.pdx-bot .pb-from span{display:inline-block;font-size:11px;font-weight:900;color:#fff;background:var(--brand);border-radius:4px;padding:2px 8px;margin-right:8px}

/* 三维定位（深蓝 3 卡） */
.pdx-tri-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.pdx-tri{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.17);border-radius:16px;padding:32px 28px;transition:transform .25s,background .25s}
.pdx-tri:hover{transform:translateY(-5px);background:rgba(255,255,255,.12)}
.pdx-tri .pt-no{font-size:16px;font-weight:900;color:var(--signal);letter-spacing:2px}
.pdx-tri h3{font-size:28px;font-weight:900;color:#fff;letter-spacing:3px;margin:8px 0 2px}
.pdx-tri .pt-sub{font-size:12.5px;font-weight:700;color:var(--gold-light);letter-spacing:1px;margin-bottom:14px}
.pdx-tri p{font-size:13.5px;color:rgba(255,255,255,.78);line-height:1.95}

/* 纳豆激酶数据块 */
.pdx-hero-stat{display:grid;grid-template-columns:auto 1fr;gap:20px 40px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:34px 36px;box-shadow:var(--shadow);margin-bottom:28px}
.pdx-hero-stat .phs-num{font-size:64px;font-weight:900;color:var(--ink);line-height:1;letter-spacing:-2px}
.pdx-hero-stat .phs-num span{font-size:17px;font-weight:700;color:var(--signal);margin-left:6px;letter-spacing:0}
.pdx-hero-stat .phs-label{font-size:12.5px;font-weight:700;color:var(--muted);letter-spacing:1px;margin-top:8px}
.pdx-hero-stat .phs-body p{font-size:13.5px;color:var(--body);line-height:2;margin-top:8px}
.pdx-hero-stat .phs-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding-top:22px;border-top:1px dashed var(--line)}
.pdx-hero-stat .phs-grid div{display:flex;flex-direction:column;gap:4px}
.pdx-hero-stat .phs-grid b{font-size:27px;font-weight:900;color:var(--brand);letter-spacing:-.5px}
.pdx-hero-stat .phs-grid span{font-size:12px;color:var(--muted);line-height:1.7}

/* 左列表 + 右数据卡 */
.pdx-split{display:grid;grid-template-columns:60fr 40fr;gap:30px;align-items:start}
.pdx-split-side{display:grid;gap:12px}
.pdx-split-side .pss-item{background:var(--alt);border-left:3px solid var(--signal);border-radius:10px;padding:16px 20px}
.pdx-split-side .pss-item b{display:block;font-size:20px;font-weight:900;color:var(--ink);letter-spacing:-.3px}
.pdx-split-side .pss-item span{display:block;font-size:12px;color:var(--body);line-height:1.8;margin-top:4px}

/* 四通路条 */
.pdx-chain{margin-top:30px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px 28px;box-shadow:var(--shadow)}
.pdx-chain .pdc-title{font-size:14px;font-weight:900;color:var(--ink)}
.pdx-chain .pdc-items{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:18px}
.pdx-chain .pdc-item{background:var(--alt);border-radius:12px;padding:16px 18px}
.pdx-chain .pdc-no{display:block;font-size:11.5px;font-weight:900;color:var(--signal);letter-spacing:1.5px}
.pdx-chain .pdc-item b{display:block;font-size:15px;font-weight:900;color:var(--ink);margin:4px 0 6px}
.pdx-chain .pdc-item span:last-child{font-size:12.5px;color:var(--body);line-height:1.8}

/* B 族维生素条 */
.pdx-vit{margin-top:30px;background:var(--alt);border-radius:var(--radius);padding:28px 30px}
.pdx-vit .pdv-head{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}
.pdx-vit .pdv-head h3{font-size:19px;font-weight:900;color:var(--ink)}
.pdx-vit .pdv-head span{font-size:12px;color:var(--signal-dark);letter-spacing:1px}
.pdx-vit .pdv-rows{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:18px}
.pdx-vit .pdv-rows div{display:flex;gap:12px;background:#fff;border-radius:10px;padding:14px 18px}
.pdx-vit .pdv-rows b{flex:0 0 34px;font-size:14px;font-weight:900;color:var(--signal)}
.pdx-vit .pdv-rows span{font-size:13px;color:var(--body);line-height:1.85}
.pdx-vit .pdv-note{font-size:12px;color:var(--muted);line-height:1.85;margin-top:14px}

/* 协同闭环 4 步 */
.pdx-loop{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;gap:12px;align-items:stretch}
.pdx-loop .pdl-step{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px 22px;box-shadow:var(--shadow)}
.pdx-loop .pdl-no{font-size:12px;font-weight:900;color:var(--signal);letter-spacing:2px}
.pdx-loop h3{font-size:16px;font-weight:900;color:var(--ink);margin:8px 0 8px}
.pdx-loop .pdl-ing{font-size:11.5px;color:var(--brand);font-weight:700;line-height:1.8;padding:6px 10px;background:#F2F6FC;border-radius:7px;margin-bottom:10px}
.pdx-loop p{font-size:12.5px;color:var(--body);line-height:1.9}
.pdx-loop .pdl-arrow{display:flex;align-items:center;font-size:20px;font-weight:900;color:var(--signal)}
.pdx-loop .pdl-last{border-color:var(--signal);background:#FFFAF6}

/* 用法 4 卡 */
.pdx-how-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.pdx-how{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px 24px;box-shadow:var(--shadow)}
.pdx-how .ph-no{font-size:12px;font-weight:900;color:var(--signal);letter-spacing:2px}
.pdx-how h3{font-size:15px;font-weight:900;color:var(--ink);margin:8px 0 10px}
.pdx-how .ph-val{font-size:24px;font-weight:900;color:var(--brand);letter-spacing:-.5px;line-height:1.3}
.pdx-how p{font-size:12.5px;color:var(--body);line-height:1.9;margin-top:10px}

/* 成分一览表 */
.pdx-ing-wrap{background:#fff;border-radius:16px;box-shadow:var(--shadow);overflow:hidden}
.pdx-ing-table{width:100%;border-collapse:collapse}
.pdx-ing-table th{background:#123B7E;color:#fff;font-size:12.5px;font-weight:700;letter-spacing:1px;padding:14px 24px;text-align:left}
.pdx-ing-table td{font-size:13.5px;color:var(--ink);padding:13px 24px;border-bottom:1px solid var(--line)}
.pdx-ing-table td:first-child{font-weight:700}
.pdx-ing-table .it-num{color:var(--brand);font-weight:700}
.pdx-ing-table td:last-child{color:var(--body);font-size:13px}
.pdx-ing-table tbody tr:nth-child(odd){background:#FAFBFE}
.pdx-ing-table tbody tr:last-child td{border-bottom:none}

/* 晨起 / 睡前 双时间（深色区） */
.pdx-time-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.pdx-time-grid--one{grid-template-columns:minmax(0,760px);justify-content:center}
.pdx-time{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.18);border-radius:16px;padding:30px 30px 28px}
.pdx-time .pt-when{display:inline-block;font-size:12px;font-weight:900;letter-spacing:1px;color:#0B2F6B;background:var(--gold-light);border-radius:999px;padding:5px 16px}
.pdx-time h3{font-size:22px;font-weight:900;color:#fff;margin:14px 0 4px;letter-spacing:.5px}
.pdx-time .pt-sub{font-size:12.5px;color:var(--signal);font-weight:700;letter-spacing:1px}
.pdx-time .pt-rows{margin-top:16px;border-top:1px solid rgba(255,255,255,.14)}
.pdx-time .pt-rows div{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px dashed rgba(255,255,255,.12);font-size:13px}
.pdx-time .pt-rows span{color:rgba(255,255,255,.55);flex-shrink:0}
.pdx-time .pt-rows b{color:rgba(255,255,255,.9);font-weight:700;text-align:right}
.pdx-time p{font-size:12.5px;color:rgba(255,255,255,.68);line-height:1.9;margin-top:14px}

/* 饮食搭配 4 卡 */
.pdx-diet-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.pdx-diet{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px 24px;box-shadow:var(--shadow);display:flex;flex-direction:column}
.pdx-diet h3{font-size:16px;font-weight:900;color:var(--ink);line-height:1.5}
.pdx-diet .pd-food{font-size:12px;color:var(--brand);font-weight:700;line-height:1.85;background:#F2F6FC;border-radius:8px;padding:9px 12px;margin:12px 0}
.pdx-diet p{font-size:12.5px;color:var(--body);line-height:1.9;flex:1}
.pdx-diet .pd-tip{margin-top:14px;font-size:12px;font-weight:700;color:var(--signal-dark);background:#FDF3EC;border-radius:6px;padding:8px 12px}

@media (max-width:960px){
  .pd-hero.img-wide{grid-template-columns:1fr}
  .pdx-dual-grid,.pdx-bot-grid,.pdx-tri-grid,.pdx-time-grid{grid-template-columns:1fr;gap:14px}
  .pdx-comp-grid{grid-template-columns:1fr;gap:14px}
  .qny-pro-grid.pdx-two,.qny-people-grid.pdx-people-two{grid-template-columns:1fr}
  .pdx-comp-grid>.pdx-comp,.pdx-comp-grid>.pdx-comp:nth-child(4),.pdx-comp-grid>.pdx-comp:nth-child(5){grid-column:auto}
  .pdx-dual{padding:24px 22px}
  .pdx-dual--one{padding:24px 22px}
  .pdx-dual-cols{grid-template-columns:1fr;gap:0}
  .pdx-dual-col+.pdx-dual-col{border-left:none;padding-left:0;border-top:1px solid rgba(255,255,255,.14);margin-top:4px;padding-top:4px}
  .pdx-time-grid--one{grid-template-columns:1fr}
  .pdx-dual-head h3{font-size:19px}
  .pdx-dual-flow{padding:14px 18px;gap:10px}
  .pdt-items,.pdx-how-grid,.pdx-diet-grid{grid-template-columns:1fr 1fr;gap:12px}
  .pdx-bot,.pdx-tri{padding:24px 20px}
  .pdx-tri h3{font-size:22px}
  .pdx-hero-stat{grid-template-columns:1fr;padding:24px 22px}
  .pdx-hero-stat .phs-num{font-size:48px}
  .pdx-hero-stat .phs-grid{grid-template-columns:1fr 1fr;gap:14px}
  .pdx-split{grid-template-columns:1fr;gap:16px}
  .pdx-split-side{grid-template-columns:1fr 1fr;gap:10px}
  .pdx-chain .pdc-items{grid-template-columns:1fr 1fr;gap:10px}
  .pdx-vit{padding:22px 20px}
  .pdx-vit .pdv-rows{grid-template-columns:1fr}
  .pdx-loop{grid-template-columns:1fr}
  .pdx-loop .pdl-arrow{justify-content:center;transform:rotate(90deg)}
  .pdx-ing-table th,.pdx-ing-table td{padding:11px 16px;font-size:12.5px}
  .pdx-ing-table th:nth-child(2),.pdx-ing-table td:nth-child(2){white-space:nowrap}
  .pdx-band{padding:18px 20px;font-size:13px}
}

/* =========================================================
   23. 全营养成分一览（深绿数据表 · qn-）
   ========================================================= */
.qn-sec{background:linear-gradient(135deg,#0A2C66 0%,#0F3872 54%,#0B3064 100%);padding:78px 0 70px;overflow:hidden}
.qn-head{text-align:center}
.qn-eyebrow{font-size:12px;font-weight:700;letter-spacing:7px;text-indent:7px;color:var(--gold-light)}
.qn-head h2{font-size:34px;font-weight:900;letter-spacing:2px;color:#fff;margin-top:14px}
.qn-rule{display:block;width:46px;height:3px;background:var(--gold);margin:20px auto 0}
.qn-lead{font-size:14px;letter-spacing:3px;color:rgba(255,255,255,.72);margin-top:16px}

.qn-table-wrap{margin-top:46px;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 22px 54px rgba(4,20,52,.3)}
.qn-table{width:100%;border-collapse:collapse;table-layout:fixed}
.qn-c1{width:20%}
.qn-c2{width:10%}
.qn-c3{width:15%}
.qn-c4{width:20%}
.qn-c5{width:15%}
.qn-c6{width:20%}
.qn-table th{background:var(--brand);color:#fff;font-size:13.5px;font-weight:700;letter-spacing:1px;padding:15px 26px;text-align:left;white-space:nowrap}
.qn-table td{font-size:14.5px;color:#3B4757;padding:13px 26px;border-top:1px solid var(--line);vertical-align:middle}
.qn-table tbody tr:first-child td{border-top:none}
.qn-table tbody tr:nth-child(even){background:var(--alt)}
.qn-table .qn-name{color:#3B4757;font-weight:500}
.qn-table .qn-hi{color:var(--signal);font-weight:700}
.qn-table .qn-span{color:#3B4757}
.qn-table .qn-dash{color:var(--muted)}

.qn-swipe{display:none;text-align:center;font-size:11.5px;letter-spacing:1px;color:rgba(255,255,255,.5);margin-top:12px}
.qn-note{margin-top:18px;font-size:11.5px;line-height:1.9;color:rgba(255,255,255,.5)}

@media (max-width:960px){
  .qn-sec{padding:52px 0 46px}
  .qn-eyebrow{font-size:11px;letter-spacing:4px;text-indent:4px}
  .qn-head h2{font-size:25px;letter-spacing:1px;margin-top:10px}
  .qn-rule{width:38px;height:2px;margin-top:14px}
  .qn-lead{font-size:12px;letter-spacing:1.5px;margin-top:12px}
  .qn-table-wrap{margin-top:26px;border-radius:11px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}
  .qn-table{min-width:572px}
  .qn-table th{padding:9px 12px;font-size:11px;letter-spacing:0}
  .qn-table td{padding:8px 12px;font-size:12px}
  .qn-c1{width:22%}
  .qn-c2{width:12%}
  .qn-c3{width:12%}
  .qn-c4{width:19%}
  .qn-c5{width:17%}
  .qn-c6{width:18%}
  .qn-swipe{display:block}
  .qn-note{font-size:10.5px;margin-top:14px}
}

/* =========================================================
   24. 差异化对比表（qn-cmp-）
   ========================================================= */
.qn-cmp{background:#fff;border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}
.qn-cmp-tb{width:100%;border-collapse:collapse;table-layout:fixed}
.qc-c1{width:21%}
.qc-c2{width:45%}
.qc-c3{width:34%}
/* 表头 */
.qn-cmp-tb thead th{background:linear-gradient(135deg,#0E3E8F 0%,var(--brand) 100%);color:#fff;text-align:left;vertical-align:middle;padding:22px 30px}
.qn-cmp-tb thead th.qc-dim{font-size:12.5px;font-weight:500;letter-spacing:3px;color:rgba(255,255,255,.62)}
.qn-cmp-tb thead th.qc-us{background:linear-gradient(135deg,#16418F 0%,#2A62C4 100%);box-shadow:inset 0 3px 0 var(--signal)}
.qc-th-main{display:block;font-size:16px;font-weight:900;letter-spacing:1px;line-height:1.4}
.qc-th-sub{display:block;font-size:11px;font-weight:400;letter-spacing:2px;color:rgba(255,255,255,.55);margin-top:5px}
.qn-cmp-tb thead th.qc-us .qc-th-sub{color:var(--gold-light)}
/* 表体 */
.qn-cmp-tb tbody th.qc-dim{text-align:left;font-size:14px;font-weight:700;color:var(--ink);background:#FBFCFE;padding:17px 30px;border-top:1px solid var(--line)}
.qn-cmp-tb tbody td{padding:17px 30px;border-top:1px solid var(--line);font-size:14px;line-height:1.7;vertical-align:middle;text-wrap:pretty}
.qn-cmp-tb tbody td.qc-us{background:#EFF4FC;color:#2F4A78}
.qn-cmp-tb tbody td.qc-us b{font-weight:900;color:var(--brand-dark)}
.qn-cmp-tb tbody td.qc-other{color:#7E8A9B}
.qc-nw{white-space:nowrap}
.qn-cmp-tb tbody tr:hover td.qc-us{background:#E7EFFB}
.qn-cmp-tb tbody tr:hover td.qc-other{background:#FAFBFD}
/* 结论条 */
.qn-cmp-sum{display:flex;align-items:center;gap:20px;margin-top:22px;background:linear-gradient(135deg,#0E3E8F 0%,var(--brand) 100%);border-radius:var(--radius);padding:24px 30px;box-shadow:0 12px 30px rgba(13,61,140,.18)}
.qc-sum-tag{flex:0 0 auto;font-size:12.5px;font-weight:900;letter-spacing:2px;color:#fff;background:var(--signal);border-radius:999px;padding:7px 18px;white-space:nowrap}
.qn-cmp-sum p{font-size:14.5px;color:rgba(255,255,255,.93);line-height:1.9}

@media (max-width:960px){
  .qn-cmp{border-radius:11px}
  .qc-c1{width:23%}
  .qc-c2{width:47%}
  .qc-c3{width:30%}
  .qn-cmp-tb thead th{padding:13px 12px}
  .qn-cmp-tb thead th.qc-dim{font-size:10.5px;letter-spacing:1px}
  .qc-th-main{font-size:12.5px;letter-spacing:0;line-height:1.45}
  .qc-th-sub{font-size:9px;letter-spacing:.5px;margin-top:3px}
  .qn-cmp-tb tbody th.qc-dim{padding:12px 12px;font-size:12px}
  .qn-cmp-tb tbody td{padding:12px 12px;font-size:12px;line-height:1.65}
  .qn-cmp-sum{flex-direction:column;align-items:flex-start;gap:12px;padding:18px 20px}
  .qc-sum-tag{font-size:11.5px;padding:5px 14px;letter-spacing:1px}
  .qn-cmp-sum p{font-size:13px;line-height:1.85}
}

@media (max-width:560px){
  .qc-c1{width:27%}
  .qc-c2{width:40%}
  .qc-c3{width:33%}
  .qn-cmp-tb thead th{padding:11px 10px}
  .qn-cmp-tb tbody th.qc-dim{padding:11px 10px;font-size:12px;letter-spacing:0}
  .qn-cmp-tb tbody td{padding:11px 10px;font-size:12px;line-height:1.6}
}

/* =========================================================
   25. PQQ 科学背书（pqq-sci-，左右分栏 + 2×2 数据卡）
   ========================================================= */
.pqq-sci{display:grid;grid-template-columns:1fr 452px;gap:60px;align-items:stretch}
.pqq-sci-copy{min-width:0}
.pqq-sci-eyebrow{font-size:12.5px;font-weight:500;letter-spacing:4px;color:var(--muted);text-transform:uppercase}
.pqq-sci-h2{font-size:32px;font-weight:900;color:var(--ink);line-height:1.42;margin-top:14px}
.pqq-sci-rule{width:40px;height:4px;background:var(--signal);border-radius:2px;margin:16px 0 18px}
.pqq-sci-lead{font-size:14px;color:var(--body);line-height:2.05}
.pqq-sci-points{margin-top:10px}
.pqq-sci-note{font-size:12px;color:var(--muted);line-height:1.9;margin-top:16px}

.pqq-sci-side{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:18px}
.pqq-stat{position:relative;display:flex;flex-direction:column;justify-content:center;background:var(--alt);border:1px solid var(--line);border-radius:14px;padding:24px 22px 24px 26px;transition:transform .25s,box-shadow .25s,border-color .25s}
.pqq-stat::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:34px;background:var(--signal);border-radius:0 2px 2px 0}
.pqq-stat b{display:block;font-size:42px;font-weight:900;color:var(--brand);line-height:1;letter-spacing:-1.5px;font-variant-numeric:tabular-nums}
.pqq-stat b span{font-size:17px;font-weight:800;color:var(--signal);margin-left:4px;letter-spacing:0}
.pqq-stat p{font-size:12.5px;color:var(--body);line-height:1.8;margin-top:13px;text-wrap:pretty}
.pqq-stat:hover{transform:translateY(-3px);border-color:#D9E3F2;box-shadow:var(--shadow-up)}

@media (max-width:960px){
  .pqq-sci{grid-template-columns:1fr;gap:32px}
  .pqq-sci-h2{font-size:25px;margin-top:10px}
  .pqq-sci-rule{margin:14px 0 14px}
  .pqq-sci-lead{font-size:13px;line-height:1.95}
  .pqq-sci-side{grid-template-rows:auto auto}
  .pqq-stat{padding:18px 16px 18px 20px}
  .pqq-stat b{font-size:32px;letter-spacing:-1px}
  .pqq-stat b span{font-size:14px}
  .pqq-stat p{font-size:12px;margin-top:10px;line-height:1.7}
  .pqq-stat::before{height:26px}
}

/* =========================================================
   26. 首页横幅 · 移动端文字叠图（≤960px，PC 端零变化）
   背景：移动端原为「上图 180–230px + 文字在下」，与 PC 的叠图观感不一致。
   手机（≤600）：横幅加高到 560px，图片绝对铺满，文字压在底部，白色渐变蒙版保证可读；
                画面主体靠 background-position 上移，落在上半部不被文字覆盖。
   平板（601–960）：仍用「图上 / 文下」，因为中间构图（央视标识、团队合影）在宽画幅里
                无法同时做到「满宽」和「不被文字压住」，缩小还会在两侧露出图片边缘。
   ========================================================= */
@media (max-width:960px){
  .hero{height:auto;min-height:0;padding:0;overflow:hidden}
  .hero .container{height:auto;display:block;width:100%;position:relative;z-index:2}
  .slide{position:relative;inset:auto;opacity:1;visibility:visible;
    display:flex;align-items:flex-end;flex:0 0 100%;min-width:0;min-height:560px}
  .slide-bg{position:absolute;inset:0;width:100%;height:100%;
    background-size:cover;background-position:center 30%;transform:none!important;transition:none;
    -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 58%,rgba(0,0,0,.72) 78%,rgba(0,0,0,0) 100%);
    mask-image:linear-gradient(180deg,#000 0%,#000 58%,rgba(0,0,0,.72) 78%,rgba(0,0,0,0) 100%)}
  /* 竖向白色蒙版：上 1/3 通透，文字区渐白 */
  .slide::after{display:block;
    background:linear-gradient(180deg,rgba(255,255,255,0) 34%,rgba(255,255,255,.58) 58%,rgba(255,255,255,.92) 80%,rgba(255,255,255,.99) 100%)}

  .slide-copy{width:100%;padding:0 0 58px}
  .slide-copy .kicker{font-size:11.5px;letter-spacing:1px}
  .slide-copy .kicker::before{width:24px}
  /* 字号随视口收缩：保证最长标题「央视《记录中国品牌》入选品牌」（14 字）单行不折 */
  .slide-copy h2{font-size:min(26px,calc(6.05vw - 2.5px));letter-spacing:.5px;line-height:1.3;margin:12px 0 12px}
  .slide-copy p{font-size:13px;line-height:1.75;margin-bottom:18px}
  .hero-dots{bottom:14px;gap:8px}
  .hero-dots button{width:9px;height:9px}
  .hero-dots button.active{width:24px}
}

/* 手机：中心构图页缩放到上半部，文字落在下方，避免压住标识 / 人脸 */
@media (max-width:600px){
  .slide-3 .slide-bg{background-size:auto 62%;background-position:center 9%;
    background-repeat:no-repeat;background-color:#fff}
  /* 图高 62%、垂直定位 9% 会在顶部留出约 20px 画布色带，压在白色导航下像一条缝隙；
     用一段白色渐隐把这段空隙与图片顶部一起淡入导航白底 */
  .slide-3 .slide-bg::before{content:"";position:absolute;left:0;right:0;top:0;height:58px;
    background:linear-gradient(180deg,#fff 0%,rgba(255,255,255,.86) 36%,rgba(255,255,255,0) 100%);
    pointer-events:none}
  /* 第 4 张（团队合影）：图高 60%，cover 之外总会在顶部让出一点余量，纵向定位 2% 时
     导航下会露出约 4–5px 的横幅渐变底色（222,232,246），夹在纯白导航和蓝色合影之间像一条缝隙。
     处理：底色改白让空隙并入导航；定位拉到 0 让图片顶边贴住导航；再用一段白色渐隐把图片顶边一起淡入 */
  .slide-4 .slide-bg{background-size:auto 60%;background-position:center 0;background-repeat:no-repeat;
    background-color:#fff;
    -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 40%,rgba(0,0,0,.4) 54%,transparent 64%);
    mask-image:linear-gradient(180deg,#000 0%,#000 40%,rgba(0,0,0,.4) 54%,transparent 64%)}
  .slide-4 .slide-bg::before{content:"";position:absolute;left:0;right:0;top:0;height:34px;
    background:linear-gradient(180deg,#fff 0%,rgba(255,255,255,.72) 26%,rgba(255,255,255,.22) 62%,rgba(255,255,255,0) 100%);
    pointer-events:none}
  /* 第 2 张（实验室顾问）：原图人物偏右（约图宽 63%），cover 居中裁切会把人挤到右边缘、左侧留一大片空墙。
     取景右移到 80%，人物落到画面左侧三分之一，左侧空墙收掉、右侧全息屏正好接住她的视线；
     同时放大到 107%——cover 时竖向无余量、纵向定位等于失效，放大后才有约 39px 可上移，抬头把人物再抬高一截 */
  .slide-1 .slide-bg{background-size:auto 107%;background-position:80% 82%}
  /* 第 5 张（冠军代言）：cover 时图片高度正好撑满、竖向无余量，人物只能停在画面下部；
     放大到 122% 后竖向才有可移动余量，再上移定位，人物抬头到导航下方约 40px、横向居中（54%） */
  .slide-5 .slide-bg{background-size:auto 122%;background-position:54% 61%}
}

/* 320–380 窄屏：80% 的取景会让发髻贴住左边缘（缩略到 320px 时几乎被切），
   回收到 75%，leftGap 从 13px 回到约 20–55px，仍保持「人物偏左」的构图 */
@media (max-width:380px){
  .slide-1 .slide-bg{background-position:75% 82%}
}

/* 手机（≤600）：核心服务 2 列 → 3 列，图标 / 字号 / 内距同步收紧，
   6 项从 3 行压到 2 行（约 500px → 290px），一屏内看全 */
@media (max-width:600px){
  .svc-grid{grid-template-columns:repeat(3,1fr);gap:8px}
  .svc-card{padding:14px 7px 13px;border-radius:10px;display:flex;flex-direction:column;align-items:center}
  .svc-card:hover{transform:none;box-shadow:var(--shadow)}
  .svc-ico{width:38px;height:38px;margin:0 auto 7px;border-radius:10px}
  .svc-ico svg{width:21px;height:21px}
  /* 标题统一占两行高度、垂直居中：短标题（云连锁）与长标题（门店盈利模型陪跑）文字块起点才会对齐；
     text-wrap:balance 让窄屏折行落在词中间时两行长度均衡，不出现「…陪 / 跑」这种孤字 */
  .svc-card h3{font-size:12px;line-height:1.3;width:100%;min-height:2.6em;
    display:flex;align-items:center;justify-content:center;text-wrap:balance}
  .svc-card p{font-size:11px;line-height:1.55;margin-top:2px}
  /* 文案里的手工 <br> 是按 2 列宽度排的，3 列下会让短语断成三行，这里交回自动折行 */
  .svc-card p br{display:none}
}

/* 手机端「官方客服二维码」：宽度不够并排，改为二维码在上、文案满宽在下，避免文字挤成细柱 */
@media (max-width:600px){
  .qr-box{flex-direction:column;align-items:flex-start;gap:12px}
  .qr-frame{width:136px;height:136px;padding:8px;border-radius:13px}
}

/* 平板（601–960）：与手机一致，文字压在图上；画幅更宽，横幅加高，
   并按每张图的构图单独调取景——中心锁版的图（央视、团队、冠军）改用「按宽铺满 + 上移」，
   把标识 / 人脸 / 产品留在文字上方的可视区，底部用蒙版渐隐避免露出图片硬边 */
@media (min-width:601px) and (max-width:960px){
  .hero{padding:0}
  .slide{display:flex;min-height:clamp(500px,74vw,660px)}
  .slide-bg{background-position:center 24%}
  .slide-copy{max-width:620px;padding:0 0 44px}
  .slide-copy .kicker{font-size:12.5px;letter-spacing:1.5px}
  .slide-copy h2{font-size:clamp(26px,3.4vw,32px);letter-spacing:1px;line-height:1.34;margin:12px 0}
  .slide-copy p{font-size:14px;line-height:1.8;margin-bottom:20px;max-width:560px}
  .hero-dots{bottom:14px}
  /* 实验室顾问：人物偏右，取景右移让人物落在画面中右 */
  .slide-1 .slide-bg{background-position:60% 24%}
  /* 细胞：主体铺满画面，轻微上移把细胞中轴抬到文字上方 */
  .slide-2 .slide-bg{background-position:center 20%}
  /* 央视：cover 时字标正好压在文字上，改为按宽铺满并整体上移 40px */
  .slide-3 .slide-bg{background-size:100% auto;background-position:center -40px;background-repeat:no-repeat}
  /* 团队合影：画幅极宽（1920×932），cover 会切掉两侧成员，改为按宽铺满 + 底部渐隐 */
  .slide-4 .slide-bg{background-size:100% auto;background-position:center top;background-repeat:no-repeat;
    -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 40%,rgba(0,0,0,.5) 52%,rgba(0,0,0,0) 68%);
    mask-image:linear-gradient(180deg,#000 0%,#000 40%,rgba(0,0,0,.5) 52%,rgba(0,0,0,0) 68%)}
  /* 冠军代言：按宽铺满并上移，让奖牌与产品盒停在文字上方 */
  .slide-5 .slide-bg{background-size:100% auto;background-position:54% -22px;background-repeat:no-repeat;
    -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 46%,rgba(0,0,0,.55) 58%,rgba(0,0,0,0) 72%);
    mask-image:linear-gradient(180deg,#000 0%,#000 46%,rgba(0,0,0,.55) 58%,rgba(0,0,0,0) 72%)}
}

/* =========================================================
   27. 导航收窄（961–1120px）
   背景：9 项菜单 + 右侧 CTA 在 1024/1100 这类小笔记本与横屏平板上超宽，
        会把页面撑出横向滚动条（原有问题，与横幅无关，顺带修复）。
   ========================================================= */
@media (min-width:961px) and (max-width:1120px){
  .menu{gap:12px}
  .menu a{font-size:13px}
  .nav-cta{padding:0 20px;font-size:13.5px}
}

/* =========================================================
   28. 核心团队 · 桌面沿用建站初版的「8 卡网格」，移动端见 28.1
   桌面 ≥961：4 列 × 2 行 8 张等大卡片，样式来自第 5.36 节基线
             （.team-grid / .team-card / .team-photo …），本段不叠加桌面覆盖层。
   ≤960：见 28.1 段 —— 蒋世刚独占一屏，其余 7 张圆头像卡横向自动滚动。
   如要改桌面版式，请直接动 5.36 节基线，不要在此重建覆盖层。
   ========================================================= */

/* =========================================================
   28.1 核心团队 · 移动端「蒋世刚独立大卡 + 其余 7 人横向自动滚动」（≤960）
   桌面 ≥961：.team-scroll / .team-track 双层 display:contents，
              lead 卡 + 7 张卡 = 第 5.36 节的 4 列 × 2 行 8 卡网格（像素零变化）。
   ≤960：蒋世刚单独成卡，白底紧凑版（高度由内容决定，视觉尺寸再收一档）；
         其余 7 张圆头像卡在 .team-scroll 内自动循环横滚 + 手指跟手拖动，
         与产品中心 .prod-grid 共用 main.js 的 initAutoMarquee 模型。
   ========================================================= */
.team-scroll{display:contents}
.team-track{display:contents}
.team-card--clone{display:none}
/* 桌面端：8 张卡同构，蒋世刚同样展示完整履历；仅隐藏下滑引导与轨道标题 */
.team-lead-more,.team-lead-extra,.team-track-label{display:none}
.team-lead-bio{margin-top:12px}
.team-lead-bio p{margin:0;font-size:13px;color:var(--body);line-height:1.85}
.team-lead-bio p + p{margin-top:10px}

@media (max-width:960px){
  #team .team-grid{display:block;position:relative}
  #team .team-track-label{
    display:flex;align-items:center;justify-content:space-between;gap:12px;
    margin:30px 0 12px;font-size:13px;font-weight:700;color:var(--ink);
  }
  #team .team-track-label span{font-size:11.5px;font-weight:400;color:var(--muted)}

  /* —— 其余 7 人：横向自动滚动轨道 —— */
  #team .team-scroll{
    display:block;position:relative;overflow:hidden;
    margin-left:-16px;margin-right:-16px;padding:4px 0 14px 16px;
    touch-action:pan-y;
    -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 14px,#000 calc(100% - 26px),transparent 100%);
    mask-image:linear-gradient(90deg,transparent 0,#000 14px,#000 calc(100% - 26px),transparent 100%);
  }
  #team .team-track{
    display:flex;align-items:stretch;width:max-content;
    cursor:grab;will-change:transform;
    -webkit-tap-highlight-color:transparent;
    user-select:none;-webkit-user-select:none;
  }
  #team .team-track img{-webkit-user-drag:none;user-drag:none}
  #team .team-track.is-dragging{cursor:grabbing}
  #team .team-track .team-card,#team .team-track .team-card--clone{
    display:flex;flex:0 0 auto;width:230px;margin-right:12px;
    flex-direction:column;align-items:center;text-align:center;
    border-radius:14px;box-shadow:0 3px 12px rgba(13,40,84,.07);
  }
  #team .team-track .team-card:hover{transform:none;box-shadow:0 3px 12px rgba(13,40,84,.07)}
  #team .team-track .team-photo{
    flex:0 0 auto;align-self:center;
    width:104px;aspect-ratio:1/1;border-radius:50%;overflow:hidden;
    margin:18px auto 0;
    box-shadow:0 0 0 4px #F2F6FC,0 8px 18px rgba(13,40,84,.10);
  }
  #team .team-track .team-photo img{object-position:center 18%}
  #team .team-track .team-photo::after{display:none}
  #team .team-track .team-card:hover .team-photo img{transform:none}
  #team .team-track .team-body{flex:1;align-items:center;padding:12px 12px 16px}
  #team .team-track .team-body h3{font-size:15px;letter-spacing:0}
  #team .team-track .team-role{margin-top:6px;font-size:10px;padding:2.5px 9px;letter-spacing:0}
  #team .team-track .team-body p{
    margin-top:8px;font-size:12px;line-height:1.75;text-align:left;
  }

  /* —— 蒋世刚：独立成卡，高度随内容收紧（客户反馈顶部空隙太多） —— */
  #team .team-card--lead{
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    min-height:0;
    padding:26px 22px 24px;
    text-align:center;
    background:#fff;
    border:1px solid #E7EDF6;border-radius:16px;
    box-shadow:0 8px 26px rgba(13,40,84,.06);
    overflow:hidden;
  }
  #team .team-card--lead:hover{transform:none;box-shadow:0 8px 26px rgba(13,40,84,.06)}
  #team .team-card--lead .team-photo{
    flex:0 0 auto;align-self:center;position:relative;
    width:112px;aspect-ratio:1/1;border-radius:50%;overflow:hidden;
    margin:0;background:#fff;
    box-shadow:0 0 0 5px #F4F7FB,0 0 0 6px rgba(242,113,28,.22),0 10px 24px rgba(13,40,84,.14);
  }
  #team .team-card--lead .team-photo img{object-position:center 18%}
  #team .team-card--lead .team-photo::after{display:none}
  #team .team-card--lead:hover .team-photo img{transform:none}
  #team .team-card--lead .team-body{
    flex:0 1 auto;align-items:center;padding:0;margin-top:16px;max-width:460px;
  }
  #team .team-card--lead .team-body h3{
    display:flex;align-items:center;justify-content:center;gap:12px;
    font-size:24px;font-weight:900;letter-spacing:2px;color:var(--ink);
    line-height:1.3;margin:0;
  }
  #team .team-card--lead .team-body h3::before,
  #team .team-card--lead .team-body h3::after{
    content:"";width:26px;height:1px;flex:0 0 26px;
    background:linear-gradient(90deg,rgba(242,113,28,0),rgba(242,113,28,.75));
  }
  #team .team-card--lead .team-body h3::after{transform:rotate(180deg)}
  #team .team-card--lead .team-role{
    margin-top:10px;font-size:12px;font-weight:700;padding:4px 14px;
    background:linear-gradient(135deg,var(--brand),var(--brand-dark));
  }
  #team .team-intro{display:none}
  #team .team-lead-extra{display:none}
  #team .team-lead-bio{display:block;max-width:420px;margin:14px auto 0;text-align:left}
  #team .team-lead-bio p{
    margin:0;font-size:13px;line-height:1.9;color:var(--body);
    text-align:justify;letter-spacing:.2px;
  }
  #team .team-lead-bio p + p{margin-top:10px}
  #team .team-lead-more{
    display:block;margin-top:18px;font-size:11.5px;letter-spacing:.5px;color:var(--muted);
  }
}

/* 平板 601–960：轨道卡片与圆头像略放大，领衔卡同步放大 */
@media (min-width:601px) and (max-width:960px){
  #team .team-track .team-card,#team .team-track .team-card--clone{width:280px}
  #team .team-track .team-photo{width:112px}
  #team .team-track .team-body h3{font-size:16px}
  #team .team-track .team-body p{font-size:12.5px}
  #team .team-card--lead .team-photo{width:136px}
  #team .team-lead-bio{max-width:520px}
  #team .team-lead-bio p{font-size:14px}
}

/* =========================================================
   29. 项目介绍 · 移动端叠卡滑动（≤960px，PC 端零变化）
   背景：移动端原为 2 列网格，9 个项目排成 5 行、页面过长。
   做法：卡片绝对定位叠成一叠（下方两张露出边缘 + 缩小），手指左右拖动切换，
        拖动时顶部卡跟手位移/旋转、下一张同步上浮；松手超过阈值飞出。
        卡片位置与层级全部由 main.js 计算，CSS 只管外观与过渡。
   ========================================================= */
.proj-deck-ui{display:none}

@media (max-width:960px){
  .proj-sec .proj-grid.is-deck{
    display:block;position:relative;
    max-width:440px;margin:22px auto 0;
    touch-action:pan-y;
  }
  .proj-grid.is-deck .proj-card{
    position:absolute;top:0;left:0;right:0;
    border-radius:16px;cursor:grab;
    box-shadow:0 12px 30px rgba(13,40,84,.13);
    transition:transform .38s cubic-bezier(.22,.61,.36,1),opacity .3s ease;
    will-change:transform,opacity;
    -webkit-tap-highlight-color:transparent;
  }
  .proj-grid.is-deck .proj-card.dragging{cursor:grabbing}
  .proj-grid.is-deck .proj-card:hover{transform:none;box-shadow:0 12px 30px rgba(13,40,84,.13)}

  /* 切换控件：⌐ 计数 ⌐（只有启用叠卡时才出现） */
  .proj-sec .proj-grid.is-deck + .proj-deck-ui{
    display:flex;align-items:center;justify-content:center;gap:20px;margin-top:18px;
  }
  .pd-btn{
    width:40px;height:40px;flex:none;padding:0;
    border:1px solid var(--line);border-radius:50%;background:#fff;
    color:var(--brand);font-size:20px;line-height:1;font-family:inherit;
    display:flex;align-items:center;justify-content:center;
    box-shadow:0 2px 8px rgba(13,40,84,.07);
    transition:background .2s,color .2s,border-color .2s,transform .15s;
    -webkit-tap-highlight-color:transparent;cursor:pointer;
  }
  .pd-btn:active{background:var(--brand);color:#fff;border-color:var(--brand);transform:scale(.94)}
  .pd-count{
    font-size:13px;font-weight:700;color:var(--muted);letter-spacing:1px;
    font-variant-numeric:tabular-nums;min-width:64px;text-align:center;
  }
  .pd-count b{font-size:17px;font-weight:900;color:var(--brand);letter-spacing:0}
  .pd-count i{margin:0 4px;font-style:normal;font-weight:400;color:#B9C6DA}
}

/* =========================================================
   30. 产品中心 · 移动端横向自动滚动 + 手势拖动（≤960px，PC 端零变化）
   背景：移动端原为 2 列网格，9 张卡排成 5 行，与核心团队的处理保持一致，
        改为单行横向轨道：自动从右往左循环，同时支持手指左右拖动浏览。
   实现：克隆一组卡片做无缝循环；位移由 main.js 逐帧计算（要跟手，不能用 CSS 动画），
        拖动超过阈值时吞掉这次点击，避免误跳详情页。
   ========================================================= */
.prod-track{display:contents}
.prod-card--clone{display:none}

@media (max-width:960px){
  #products .prod-grid{
    display:block;position:relative;overflow:hidden;
    margin-left:-16px;margin-right:-16px;padding:4px 0 14px 16px;
    touch-action:pan-y;
    -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 14px,#000 calc(100% - 26px),transparent 100%);
    mask-image:linear-gradient(90deg,transparent 0,#000 14px,#000 calc(100% - 26px),transparent 100%);
  }
  .prod-track{
    display:flex;align-items:stretch;width:max-content;
    cursor:grab;will-change:transform;
    -webkit-tap-highlight-color:transparent;
    user-select:none;-webkit-user-select:none;
  }
  .prod-track img{-webkit-user-drag:none;user-drag:none}
  .prod-track.is-dragging{cursor:grabbing}
  .prod-card,.prod-card--clone{
    display:flex;flex:0 0 auto;width:204px;margin-right:12px;
    border-radius:14px;
  }
  .prod-card:hover,.prod-card--clone:hover{transform:none;box-shadow:var(--shadow)}
  .prod-img-head{height:126px}
  .prod-card:hover .prod-img-head img{transform:none}
  .prod-body{padding:13px 14px 14px}
  .prod-tag{font-size:10px;padding:2px 8px;margin-bottom:7px}
  .prod-card h3{font-size:15px}
  .prod-card .en{font-size:9.5px;letter-spacing:1px;margin-top:2px}
  .prod-card .desc{
    font-size:11.5px;line-height:1.65;margin-top:6px;
    display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;
  }
  .prod-foot{padding-top:10px;gap:6px}
  .prod-foot .note{font-size:9.5px}
  .prod-foot .link-blue{font-size:11px;white-space:nowrap}
}

/* =========================================================
   31. 首页首屏翻页箭头避让窄屏（961–1520px）
   背景：内容区固定 1320px；窗口 <1472px 时两侧 48px 圆形箭头
        （left/right:26px、垂直居中）会压住 slide-copy 的标题、正文与 CTA 按钮，
        实测 961–1366px 横向重叠 48px、1440px 重叠 14px（盖住按钮首字）。
   方案：箭头留在两侧中部（保证笔记本首屏仍看得见），缩为 40px 并外移到 12px；
        文案用 clamp 按视口动态补左内距，使「箭头右缘 52px → 文案左缘 ≥68px」
        恒留 16px 间距，宽屏时补白自动归零。箭头加白底与投影提升可读性。
        ≥1521px 沿用原始 48px / 26px 箭头（此时内容区左侧已有 ≥26px 空白）。
        ≤960px 箭头本就 display:none，本段不生效。
   ========================================================= */
@media (min-width:961px) and (max-width:1520px){
  .hero-arrow{
    width:40px;height:40px;
    background:rgba(255,255,255,.92);
    box-shadow:0 3px 14px rgba(13,61,140,.18);
  }
  .hero-arrow svg{width:18px;height:18px}
  .hero-arrow.prev{left:12px}
  .hero-arrow.next{right:12px}
  .hero .container{padding-left:clamp(0px, calc(68px - (100% - 1320px)/2), 44px)}
}

/* =========================================================
   32. 留资表单提交状态（全站 26 个表单）
   页脚 .form-note 沿用原深底橙提示；留言页 .fp-note.fp-status 默认隐藏，
   仅由 main.js 在「提交中 / 成功 / 失败」时切换显示。
   ========================================================= */
.fp-note.fp-status{display:none;margin-top:12px;border-radius:6px;border:1px solid transparent;line-height:1.6}
.fp-note.fp-status.show{display:block;padding:10px 12px;color:#40506A;background:#F1F5FB;border-color:#D6E2F2}
.fp-note.fp-status.show.err{color:#A33A12;background:#FFF1E8;border-color:rgba(242,113,28,.5)}
.fp-note.fp-status.show.ok{color:#0E7A46;background:#EAF8F0;border-color:rgba(16,150,90,.45)}
.form-note.ok{color:#C8F3DC;background:rgba(22,163,96,.18);border-color:rgba(22,163,96,.5)}
.form-note a,.fp-note.fp-status a{color:inherit;font-weight:700;text-decoration:underline;margin-left:4px}
.ff-submit[disabled],.fp-submit[disabled]{opacity:.6;cursor:not-allowed}
