/* =========================================================
   星梦健康官网 · v5 视觉稿共享样式（两页引同一份，无页面私有样式）
   设计语言取自旧版：纸感底 + 衬线标题 + 1px 细线 + 缝线栅格 + 深色页脚
   结构按 content-plan 现行版；两页 = 同一套模板的两个实例
   ========================================================= */

:root{
  --paper:#FBFAF7;
  --paper-2:#F4F1EA;
  --ink:#111318;
  --ink-2:#3D4250;
  --muted:#6C7280;
  --muted-2:#8A909C;
  --line:#E7E3DA;
  --line-strong:#D6D0C3;
  --brand:#1E5B47;
  --brand-2:#2C7A5B;
  --gold:#A87B34;
  --maxw:1200px;
  --nav-h:76px;
  --ease:cubic-bezier(.22,.61,.36,1);
  --serif:"Noto Serif SC","Source Han Serif SC","Songti SC","STSong",serif;
  --sans:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--nav-h) + 24px)}
body{margin:0;background:var(--paper);color:var(--ink-2);
  font-family:var(--sans);font-size:16px;line-height:1.75;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
::selection{background:#1E5B4722}
:focus-visible{outline:2px solid var(--brand);outline-offset:3px}
.nowrap{white-space:nowrap}
h1,h2,h3{text-wrap:balance}
.skip-link{position:absolute;left:-9999px;top:0;background:#fff;color:var(--brand);
  padding:8px 16px;z-index:300;border:1px solid var(--brand)}
.skip-link:focus{left:8px;top:8px}
.wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 40px}
.small{font-size:13px;line-height:1.8;color:var(--muted)}

/* ---------------- nav（两页同构） ---------------- */
.nav{position:sticky;top:0;z-index:100;background:var(--paper);border-bottom:1px solid var(--line)}
.nav-in{display:flex;align-items:center;justify-content:space-between;height:var(--nav-h);gap:24px}
.brand{display:flex;align-items:center;gap:12px;flex:none}
.brand-logo{height:38px;width:auto;display:block}
.foot-logo{height:158px;width:auto}
.brand-mark{width:30px;height:30px;flex:none}
.brand-txt{display:flex;flex-direction:column;line-height:1.1}
.brand-cn{font-family:var(--serif);font-size:17px;font-weight:600;letter-spacing:.06em;color:var(--ink)}
.brand-en{font-size:9px;letter-spacing:.3em;color:var(--muted);margin-top:4px}
.links{display:flex;align-items:center;gap:34px;margin-left:auto}
.links a{font-size:14px;color:var(--ink-2);position:relative;padding:6px 0;transition:color .25s}
.links a::after{content:"";position:absolute;left:0;bottom:0;height:1px;width:0;background:var(--ink);transition:width .3s var(--ease)}
.links a:hover{color:var(--ink)}
.links a:hover::after{width:100%}
.links a[aria-current="page"]{color:var(--ink)}
.links a[aria-current="page"]::after{width:100%;background:var(--brand);height:2px;bottom:-1px}
.burger{display:none;width:44px;height:44px;border:1px solid var(--line-strong);border-radius:50%;background:none;cursor:pointer;position:relative}
.burger span{position:absolute;left:50%;transform:translateX(-50%);width:16px;height:1px;background:var(--ink)}
.burger span:nth-child(1){top:18px}
.burger span:nth-child(2){top:25px}

/* ---------------- 按钮 / 胶囊 tag（两页同构） ---------------- */
.btn{display:inline-flex;align-items:center;gap:10px;font-size:14.5px;font-weight:500;
  padding:14px 28px;border-radius:999px;transition:.3s var(--ease);cursor:pointer;border:1px solid transparent}
.btn-primary{background:var(--ink);color:var(--paper)}
.btn-primary:hover{background:var(--brand);transform:translateY(-1px)}
.btn-primary:active{background:#123A2E}
.btn-ghost{border-color:var(--line-strong);color:var(--ink)}
.btn-ghost:hover{border-color:var(--ink);background:#fff}
.btn .arrow{transition:transform .3s var(--ease)}
.btn:hover .arrow{transform:translateX(4px)}
.link-arrow{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--ink);
  border-bottom:1px solid var(--line-strong);padding-bottom:3px}
.link-arrow:hover{border-color:var(--ink)}
.link-arrow .arrow{transition:transform .3s var(--ease)}
.link-arrow:hover .arrow{transform:translateX(4px)}
.tag{font-size:11px;letter-spacing:.08em;padding:5px 12px;border-radius:999px;
  border:1px solid var(--line-strong);color:var(--muted)}
.tag.live{border-color:#2C7A5B33;background:#2C7A5B0F;color:#2C7A5B}

/* ---------------- Section 骨架（两页同构：120px 上下 + 1px 顶线） ---------------- */
.sec{padding:120px 0;border-top:1px solid var(--line)}
.section-head{margin-bottom:56px}
.eyebrow{font-size:11px;letter-spacing:.22em;text-transform:uppercase;
  color:var(--muted);font-weight:600;display:flex;align-items:center;gap:12px}
.eyebrow::before{content:"";width:26px;height:1px;background:var(--line-strong);flex:none}
.section-head h2{font-family:var(--serif);font-weight:600;color:var(--ink);
  font-size:clamp(36px,4.1vw,56px);line-height:1.26;letter-spacing:-.022em;margin:16px 0 0}
.section-head .sub{margin:14px 0 0;font-size:14.5px;color:var(--muted);line-height:1.85;max-width:820px}
.note{font-size:13px;color:var(--muted);margin:26px 0 0}
.prose{max-width:820px;font-size:16px;line-height:1.95;color:var(--ink-2);margin:0}

/* ---------------- Hero（两页同构：eyebrow + H1 + 副标题640 + 按钮行 + meta 细线行） ---------------- */
.hero{padding:110px 0 88px}
.hero h1{font-family:var(--serif);font-weight:600;color:var(--ink);
  font-size:clamp(36px,4.1vw,56px);line-height:1.26;letter-spacing:-.022em;
  margin:24px 0 0;max-width:820px;font-feature-settings:"halt" 1}
.hero h1 em{font-style:normal;color:var(--brand);position:relative;white-space:nowrap;z-index:1}
.hero h1 em::after{content:"";position:absolute;left:0;right:0;bottom:.1em;height:.34em;
  background:#1E5B4714;z-index:-1}
.hero .sub{margin:26px 0 0;max-width:640px;font-size:16.5px;line-height:1.92;color:var(--ink-2)}
.hero-actions{display:flex;align-items:center;gap:18px;margin-top:42px;flex-wrap:wrap}
.hero-meta{margin-top:56px;border-top:1px solid var(--line);padding-top:20px;
  font-size:12.5px;color:var(--muted);letter-spacing:.03em;line-height:1.7}
.hero-meta b{color:var(--ink);font-weight:600}
.hero-meta .dot{margin:0 12px;color:var(--line-strong)}

/* ---------------- 条目 .entry（首页产品线 / 课程 / 人群，两页同构：64px 序号列） ---------------- */
.entries{border-bottom:1px solid var(--line)}
.entry{display:grid;grid-template-columns:64px minmax(0,1fr);gap:32px;
  padding:48px 0;border-top:1px solid var(--line);align-items:start}
.entry-no{font-family:var(--serif);font-size:15px;letter-spacing:.14em;color:var(--muted-2);padding-top:8px}
.entry h3{font-family:var(--serif);font-size:26px;font-weight:600;color:var(--ink);
  letter-spacing:-.01em;line-height:1.3;margin:0}
.entry .hook{margin:10px 0 0;font-size:17px;font-weight:600;color:var(--ink)}
.entry .desc{margin:8px 0 0;font-size:15px;line-height:1.85;color:var(--ink-2);max-width:820px}
.entry .foot{margin-top:22px}

/* ---------------- 码卡 .qr-card（首页 4 码 / 内页 2 码，同一组件同尺寸） ---------------- */
.qr-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.qr-grid.cols-2{grid-template-columns:repeat(2,1fr)}
.qr-card{background:var(--paper);padding:40px 28px;display:flex;flex-direction:column;
  align-items:center;text-align:center;transition:background .3s;cursor:pointer;font-family:inherit;border:0}
.qr-card:hover{background:#fff}
.qr-card:focus-visible{outline:2px solid var(--brand);outline-offset:4px}
.qr-slot{width:200px;height:200px;border:1px dashed var(--line-strong);border-radius:2px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;
  color:var(--muted-2);font-size:11.5px;letter-spacing:.02em;text-align:center;padding:0 14px;background:#fff}
.qr-card .name{font-family:var(--serif);font-size:17px;font-weight:600;color:var(--ink);margin-top:20px}
/* 真码位（替换 .qr-slot 占位）：正方形 200×200，白底不加边框，图案自带宽白边即安静区 */
.qr-img{width:200px;height:200px;max-width:100%;display:block;background:#fff}
.qr-card .q-desc{font-size:12.5px;color:var(--muted);margin-top:4px}
.qr-card .hint{font-size:11.5px;color:var(--brand);margin-top:10px;letter-spacing:.04em}

/* ---------------- 伙伴墙（占位 8 格，两页同构） ---------------- */
.partner-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.pcell{background:var(--paper);height:110px;display:flex;align-items:center;justify-content:center;
  font-size:13px;color:var(--muted-2);letter-spacing:.04em;transition:background .3s}
.pcell:hover{background:#fff;color:var(--muted)}

/* ---------------- 视频区（去卡片化：通栏细线区块，1000px 画面落地无边框） ---------------- */
.video-frame{position:relative;max-width:1000px;margin:0 auto;aspect-ratio:16/9;
  background:var(--paper-2);display:flex;align-items:center;justify-content:center;text-align:center}
.video-frame>span{font-size:13px;color:var(--muted-2);line-height:1.7;padding:0 16px}
.video-tag{position:absolute;top:14px;left:16px;font-size:13px;font-weight:600;
  color:var(--brand);letter-spacing:.04em}
.video-meta{max-width:1000px;margin:18px auto 0;font-size:12.5px;color:var(--muted)}
.video-meta b{color:var(--ink);font-weight:600;margin-right:6px}
.video-meta .sep{margin-left:24px}

/* ---------------- 事务所平台图标行（首页条目04专用；hover 浮层仅视觉，触屏走灯箱） ---------------- */
.social-row{display:flex;gap:28px;margin-top:20px}
.social{position:relative;display:inline-flex;align-items:center;justify-content:center;
  width:40px;height:40px;color:var(--ink-2);transition:color .25s}
.social:hover,.social:focus-visible{color:var(--brand)}
.social svg{width:26px;height:26px}
.social-pop{position:fixed;left:0;top:0;width:200px;z-index:150;pointer-events:none;
  padding:16px;background:#fff;border:1px solid var(--line);border-radius:2px;
  box-shadow:0 12px 32px #1B24301A;
  display:flex;flex-direction:column;align-items:center;text-align:center;
  transform:translate3d(-9999px,-9999px,0);
  opacity:0;visibility:hidden;transition:opacity .18s var(--ease)}
.social:hover .social-pop,.social:focus-visible .social-pop,.social:focus-within .social-pop{opacity:1;visibility:visible}
.social-pop-qr{width:160px;height:160px;border:1px dashed var(--line-strong);background:#fff;
  display:flex;align-items:center;justify-content:center;text-align:center;
  font-size:10.5px;color:var(--muted-2);letter-spacing:.02em;padding:0 10px}
.social-pop-name{font-family:var(--serif);font-size:13px;font-weight:600;color:var(--ink);margin-top:10px}
.social-pop-hint{font-size:11.5px;color:var(--brand);margin-top:2px;letter-spacing:.04em}

/* ---------------- footer（两页同构） ---------------- */
footer{background:var(--ink);color:#8C929B;padding:0 0 40px;border-top:1px solid #2A2E35}
.foot-grid{display:grid;grid-template-columns:1.5fr 1.3fr .8fr .8fr;gap:44px;padding:60px 0 46px}
.foot-brand{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.foot-brand .brand-cn{color:#EDEAE3}
.foot-brand .brand-en{color:#6B717A}
.foot-desc{font-size:13px;line-height:1.85;max-width:320px}
.foot-qr{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.foot-qr .ph{width:88px;height:88px;border:1px dashed #3A3F47;background:#191B20;
  display:flex;align-items:center;justify-content:center;font-size:10.5px;color:#6B717A}
.foot-qr .name{font-size:12px;color:#B7BCC4;margin-top:8px}
.foot-col h5{font-size:11px;letter-spacing:.2em;color:#6B717A;margin:0 0 16px;font-weight:600;text-transform:uppercase}
.foot-col a{display:block;font-size:13.5px;color:#B7BCC4;padding:6px 0;transition:color .25s}
.foot-col a:hover{color:#FBFAF7}
.legal{border-top:1px solid #2A2E35;padding-top:24px;display:flex;justify-content:space-between;
  gap:24px;flex-wrap:wrap;font-size:12px;line-height:1.9}
.legal a{color:#8C929B;border-bottom:1px solid #3A3F47}
.legal a:hover{color:#EDEAE3}
.legal-note{font-size:11.5px;color:#6B717A;max-width:800px;margin-top:12px;line-height:1.8}

/* ---------------- responsive（390/768/1440 全覆盖） ---------------- */
@media (max-width:1080px){
  .qr-grid,.qr-grid.cols-2{grid-template-columns:1fr 1fr}
  .partner-grid{grid-template-columns:1fr 1fr}
  .foot-grid{grid-template-columns:1fr 1fr;gap:36px}
}
@media (max-width:720px){
  .wrap{padding:0 22px}
  .sec{padding:76px 0}
  .hero{padding:64px 0 56px}
  .hero h1{font-size:31px}
  .section-head h2{font-size:31px}
  .links{display:none}
  .burger{display:block}
  .entry{grid-template-columns:1fr;gap:14px;padding:40px 0}
  .entry-no{padding-top:0}
  .qr-grid,.qr-grid.cols-2{grid-template-columns:1fr}
  .qr-slot{width:200px;height:200px;max-width:100%}
  .video-frame{aspect-ratio:4/3}
  .social-pop{display:none}
  .foot-grid{grid-template-columns:1fr}
  .legal{flex-direction:column;gap:8px}
}
@media (prefers-reduced-motion:reduce){
  *{transition:none !important;animation:none !important}
}

/* =========================================================
   ↓↓↓ 以下为 site/ 交付新增段（v5 未覆盖的组件与页面）
   规则：只新增，不改动上方任何既有规则的数值。
   所有色值一律取 :root 变量，不新增硬编码颜色。
   ========================================================= */

/* ---- 通用可点元素重置（button 承接 .btn / .link-arrow 皮肤时必须） ---- */
.act{font-family:inherit;cursor:pointer}
.social-btn{border:0;background:transparent;padding:0;font-family:inherit;cursor:pointer}
.linkbtn{border:0;border-bottom:1px solid var(--line-strong);background:none;
  display:inline-flex;align-items:center;gap:8px;padding:0 0 3px;
  font-family:inherit;font-size:14px;color:var(--ink);cursor:pointer;transition:border-color .25s}
.linkbtn:hover{border-color:var(--ink)}
.linkbtn .arrow{transition:transform .3s var(--ease)}
.linkbtn:hover .arrow{transform:translateX(4px)}

/* ---- 移动端菜单面板（≤720px 时 .links 隐藏，这里给可用形态） ---- */
.mnav{display:none}
.mnav a{display:flex;align-items:center;min-height:52px;padding:0 22px;
  font-size:16px;color:var(--ink-2);border-top:1px solid var(--line)}
.mnav a:first-child{border-top:0}
.mnav a[aria-current="page"]{color:var(--ink);font-weight:600;
  border-left:3px solid var(--brand);padding-left:19px}

/* ---- 未上线页面占位（成长计划 / 健康好物 / 事务所）：不可点击 ----
   链接去掉 href（不可聚焦、不可访问），pointer-events 关掉悬停态；
   三处语境各给一档降饱和色，位置与原链接完全一致，不挤动版式 */
a.soon{cursor:not-allowed;pointer-events:none}
.links a.soon{color:#A9B0B8}
.links a.soon::after{display:none}
.foot-col a.soon{color:#7A828C}
.mnav a.soon{color:#A9B0B8}
.pill.soon{opacity:.55}
@media (max-width:720px){
  .mnav{display:block;position:fixed;left:0;right:0;top:var(--nav-h);z-index:99;
    background:var(--paper);border-bottom:1px solid var(--line);
    max-height:calc(100vh - var(--nav-h));overflow-y:auto}
  .mnav[hidden]{display:none}
}

/* ---- 二维码灯箱（全站唯一弹层；×/遮罩/Esc 三种关闭 + 焦点管理） ---- */
body.lb-open{overflow:hidden}
.lb{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;
  padding:56px 20px;background:rgba(10,14,12,.72)}
.lb[hidden]{display:none}
.lb-dialog{position:relative;width:100%;max-width:min(86vw,600px);background:#fff;
  border:1px solid var(--line-strong);padding:20px 20px 24px;text-align:center}
.lb-slot{width:min(70vw,520px);height:min(70vw,520px);max-width:100%;margin:0 auto;
  border:1px dashed var(--line-strong);background:#fff;display:flex;align-items:center;
  justify-content:center;text-align:center;padding:0 18px;
  color:var(--muted-2);font-size:13px;line-height:1.7}
/* 真码版：去掉虚线占位框，图片按 1:1 撑满并保留内白边 */
.lb-slot.has-img{border:0;background:transparent;padding:0}
.lb-slot.has-img img{width:100%;height:100%;object-fit:contain;display:block}
.lb-name{font-family:var(--serif);font-size:17px;font-weight:600;color:var(--ink);margin:16px 0 0}
.lb-hint{font-size:13px;color:var(--muted);margin:4px 0 0;line-height:1.7}
.lb-close{position:absolute;top:16px;right:16px;width:44px;height:44px;border:0;
  background:transparent;color:var(--paper);font-size:28px;line-height:1;cursor:pointer;font-family:inherit;
  transition:opacity .25s}
.lb-close:hover{opacity:.65}
@media (max-width:720px){
  .lb{padding:24px 16px}
  .lb-slot{width:min(78vw,420px);height:min(78vw,420px)}
}

/* ---- 占位块（截图 / 商品图 / 视频封面；虚线 + 浅底，比例锁定不塌版） ---- */
.ph-box{background:var(--paper-2);border:1px dashed var(--line-strong);display:flex;
  flex-direction:column;align-items:center;justify-content:center;gap:6px;
  text-align:center;padding:20px;color:var(--muted-2);font-size:12.5px;line-height:1.75}
.ph-16-9{aspect-ratio:16/9}
.ph-3-2{aspect-ratio:3/2}
.ph-1-1{aspect-ratio:1/1}
.ph-3-4{aspect-ratio:3/4}
.ph-wrap{max-width:1000px;margin:40px auto 0}
.ph-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:36px}
.ph-grid.two{grid-template-columns:repeat(2,1fr)}
@media (max-width:720px){.ph-grid,.ph-grid.two{grid-template-columns:1fr}}

/* ---- 二维码栅格补充列数（3 列 / 单列居中；媒体查询必须自带，否则被上方基线规则盖掉） ---- */
.qr-grid.cols-3{grid-template-columns:repeat(3,1fr)}
.qr-single{max-width:380px;margin:0 auto;border:1px solid var(--line)}
.qr-single .qr-card{width:100%;background:#fff}  /* 真码是白底方图，卡片同白才不会出现「贴纸」感 */
@media (max-width:1080px){.qr-grid.cols-3{grid-template-columns:1fr 1fr}}
@media (max-width:720px){.qr-grid.cols-3{grid-template-columns:1fr}}

/* ---- 视频真正落地时的原生播放器（替换 .video-frame 内占位块用） ---- */
.video-frame video{width:100%;height:100%;display:block;object-fit:cover}

/* ---- 内页条目标题做成链接回指详情页（不新增文案） ---- */
.entry h3 a{transition:color .25s}
.entry h3 a:hover{color:var(--brand)}

/* ---- 法务页（privacy / terms）：单栏 720 + 页内锚点目录 ---- */
.doc-head{padding:96px 0 56px;border-bottom:1px solid var(--line)}
.doc-head h1{font-family:var(--serif);font-weight:600;color:var(--ink);
  font-size:clamp(32px,3.4vw,48px);line-height:1.3;letter-spacing:-.015em;margin:18px 0 0}
.doc-meta{font-size:13px;color:var(--muted);margin:16px 0 0;line-height:1.8}
.doc-body{padding:56px 0 110px}
.doc{max-width:720px}
.doc .toc{border:1px solid var(--line);background:var(--paper-2);padding:22px 26px;margin:0 0 44px}
.toc-title{font-size:11px;letter-spacing:.22em;text-transform:uppercase;
  color:var(--muted);font-weight:600;margin:0 0 12px}
.doc .toc a{display:block;font-size:14px;color:var(--ink-2);padding:5px 0;transition:color .25s}
.doc .toc a:hover{color:var(--brand)}
.doc h2{font-family:var(--serif);font-size:22px;font-weight:600;color:var(--ink);
  line-height:1.45;letter-spacing:-.01em;margin:44px 0 12px}
.doc .toc+.doc-lead+h2,.doc .doc-lead+h2{margin-top:0}
.doc p{font-size:15.5px;line-height:1.95;color:var(--ink-2);margin:0 0 14px}
.doc ul{margin:0 0 16px;padding-left:1.3em}
.doc li{font-size:15.5px;line-height:1.95;color:var(--ink-2);margin:0 0 8px}
.doc strong{color:var(--ink);font-weight:600}
.doc .n{font-family:var(--serif);font-size:12px;letter-spacing:.14em;color:var(--muted-2);margin-right:10px}
.doc a{color:var(--brand);border-bottom:1px solid var(--line-strong)}
.doc a:hover{border-color:var(--brand)}
.doc-lead{font-size:16px;line-height:1.95;color:var(--ink);margin:0 0 20px}
.doc-note{font-size:13px;line-height:1.85;color:var(--muted);
  border-top:1px solid var(--line);padding-top:18px;margin:36px 0 0}

/* ---- 404 ---- */
.nf{padding:130px 0 142px;text-align:center}
.nf .en-title{margin:0 0 20px}
.nf-code{font-family:var(--serif);font-weight:600;font-size:clamp(84px,15vw,168px);
  line-height:1;color:var(--brand);letter-spacing:.04em;margin:0}
.nf-txt{font-family:var(--serif);font-size:28px;line-height:1.5;color:var(--ink-2);margin:26px 0 0}
.nf-txt .br-m{display:none}
.nf-acts{margin-top:38px;display:flex;justify-content:center;gap:18px;flex-wrap:wrap}
@media (max-width:720px){.nf{padding:84px 0 96px}.nf .en-title{margin:0 0 14px}.nf-txt{font-size:20px;margin-top:20px}.nf-txt .br-m{display:inline}}

/* ---- 深色页脚内的焦点态（基线未覆盖；用纸色变量，不新增色值） ---- */
footer :focus-visible{outline-color:var(--paper)}

/* ---- 少量间距工具类（替换内联 style，避免页面里出现硬编码样式） ---- */
.mt-0{margin-top:0}
.mt-16{margin-top:16px}
.mt-20{margin-top:20px}
.mt-32{margin-top:32px}

/* ---- 正文内联链接与强调（.prose / .entry） ---- */
.prose p{margin:0 0 14px}
.prose a,.entry .desc a,.hero .sub a{color:var(--brand);border-bottom:1px solid var(--line-strong);transition:border-color .25s}
.prose a:hover,.entry .desc a:hover,.hero .sub a:hover{border-color:var(--brand)}
.prose strong{color:var(--ink);font-weight:600}

/* ---- 灯箱码位：正方形由 aspect-ratio 锁定，移动端窄屏不再变形 ---- */
.lb-slot{height:auto;aspect-ratio:1/1}

/* ---- .note / .small 内的行内链接（与 .prose 同规格） ---- */
.note a,.small a{color:var(--brand);border-bottom:1px solid var(--line-strong);transition:border-color .25s}
.note a:hover,.small a:hover{border-color:var(--brand)}

/* ---- 事务所平台图标：视觉仍是 40×40，热区补到 44×44（a11y 硬项） ---- */
.social-btn::after{content:"";position:absolute;inset:-2px}
.lb-close{z-index:1}

/* ---- 页脚栏目标题：v5 用 <h5>（h2 后直跳两级），改为 <h2 class="foot-h"> 保持视觉不变 ---- */
:root{--foot-dim:#6B717A}
.foot-col .foot-h{font-size:11px;letter-spacing:.2em;color:var(--foot-dim);
  margin:0 0 16px;font-weight:600;text-transform:uppercase}

/* ---- 占位图栅格限宽（3 张 1:1 不再拉满 1120px） ---- */
.ph-grid{max-width:960px}

/* =========================================================
   验收修正（lead 复核后补，2026-10-27）
   1) 灯箱关闭按钮原为 28px 白色 ×, 与导航末项同一水平线, 像"多出一个菜单项"
      → 改圆形药丸按钮 + 开灯箱时淡出导航
   2) 移动端 hero-meta 折行时行尾悬挂「·」→ 窄屏改为 flex 分栏, 隐藏分隔符
   3) 移动端下拉菜单与正文之间无分层 → 补投影
   4) 深色页脚对比度不足（栏目标题 3.7:1 / 品牌标 3.0:1）→ 提亮
   ========================================================= */

/* 1) 灯箱关闭按钮 */
.lb-close{top:18px;right:18px;width:44px;height:44px;border-radius:50%;
  background:rgba(255,255,255,.12);color:#fff;font-size:22px;font-weight:300;
  display:flex;align-items:center;justify-content:center;
  transition:background .25s,opacity .25s}
.lb-close:hover{background:rgba(255,255,255,.24);opacity:1}
body.lb-open .nav{opacity:0;pointer-events:none;transition:opacity .2s var(--ease)}

/* 2) 移动端 hero-meta：不悬挂分隔符 */
@media (max-width:720px){
  .hero-meta{display:flex;flex-wrap:wrap;column-gap:14px;row-gap:2px}
  .hero-meta .dot{display:none}
}

/* 3) 移动端下拉菜单分层：遮罩压暗正文，菜单边缘不再与正文粘在一起 */
@media (max-width:720px){
  .mnav{box-shadow:0 18px 36px rgba(17,19,24,.14)}
  body.menu-open::after{content:"";position:fixed;left:0;right:0;top:var(--nav-h);bottom:0;
    background:rgba(17,19,24,.26);z-index:98}
}

/* 4) 页脚对比度（#6B717A → #8A909C：3.7:1 → 5.9:1） */
:root{--foot-dim:#8A909C}
footer .foot-brand .brand-en{color:#8A909C}
footer .foot-brand svg circle[stroke="#5F6B63"]{stroke:#8D9A93}
footer .foot-brand svg circle[fill="#9AA0A8"]{fill:#B4BAC2}

/* =========================================================
   v6 首页（用户 2026-10-28 改稿）
   依据用户首页图实测（图宽 1280，版心 992），按 1.129 换算到本站 1120 版心：
   H1 56→63 · 英文引题 34→38 · 中文大标题 40→44 · 条目数字 76→84
   条目标题 25→28 · 条目标语 17→19 · 条目正文 13→15 · 分隔线满幅、条目内线锁版心
   仅作用于 body.home，其它五页保持原状，待确认后再统一
   ========================================================= */

/* ---- 首屏 ---- */
.home .hero{padding:96px 0 64px}
.home .hero h1{font-size:63px;line-height:1.2;letter-spacing:.005em;max-width:15em;margin:0}
.home .hero .sub{font-size:17px;line-height:1.9;max-width:40em;margin:22px 0 0;color:var(--ink-2)}
.home .hero-actions{margin-top:30px}
.home .btn-primary{background:#111318;border-radius:999px;padding:13px 26px;font-size:14px;
  letter-spacing:.02em;border:1px solid #111318}
.home .btn-primary:hover{background:#000}
.home .btn-primary .arrow{margin-left:6px}

/* ---- 区块骨架：满幅细线分隔 ---- */
.home .sec{padding:76px 0 64px}
.home .sec-lined{border-top:1px solid var(--line)}

/* ---- 英文斜体引题：全站统一（首页区块 / 关于我们 / 法律页） ---- */
.en-title{font-family:"Times New Roman",Georgia,var(--serif);font-style:italic;font-weight:400;
  font-size:38px;line-height:1.2;color:#2F5B4A;letter-spacing:.01em;margin:0}
.home .sec-cn{font-family:var(--serif);font-size:44px;line-height:1.28;font-weight:600;
  color:var(--ink);margin:12px 0 0;letter-spacing:.01em}
.home .sec > .wrap > .sub{font-size:17px;line-height:1.8;color:var(--ink-2);margin:18px 0 0}

/* ---- 条目 01–04：大数字 + 左右错落 ---- */
.home .entries{margin-top:36px}
.home .entry{display:grid;grid-template-columns:122px minmax(0,1fr);gap:8px;
  margin:0;padding:26px 0 30px;border-top:1px solid var(--line);align-items:start}
.home .entry-no{font-family:"Times New Roman",var(--serif);font-size:112px;line-height:.88;
  font-weight:400;font-style:italic;color:#1E5B47;letter-spacing:-.04em;margin-left:0;
  font-variant-numeric:lining-nums;padding:0}
.home .entry-right{margin-left:28.3%}
.home .entry-body h3{font-family:var(--serif);font-size:32px;line-height:1.34;
  font-weight:700;color:var(--ink);margin:0 0 0 -2px;letter-spacing:.02em}
.home .entry-body h3 a{color:inherit;border:0}
.home .entry-body .lede{font-size:19px;line-height:1.6;color:#31363B;margin:6px 0 0;
  max-width:44em;font-weight:400}
.home .entry-body .desc{font-size:15px;line-height:1.75;color:var(--muted);
  margin:14px 0 0;max-width:38em}
.home .entry-body .foot{margin:16px 0 0}
.home .entry-body .small{margin-top:14px}
.home .entry-body .scan-hint{margin-top:16px;color:var(--brand)}

/* 胶囊小按钮 / 小链接 */
.home .pill{display:inline-flex;align-items:center;gap:7px;
  border:1px solid var(--line-strong);border-radius:999px;background:none;
  padding:7px 15px;font-size:12.5px;line-height:1.5;letter-spacing:.02em;
  color:var(--brand);cursor:pointer;font-family:inherit;transition:border-color .25s,color .25s,background .25s}
.home .pill svg{width:13px;height:13px;flex:0 0 13px}
.home .pill:hover{border-color:var(--brand);background:#F2F6F4}
.home .pill:focus-visible{outline:2px solid var(--brand);outline-offset:3px}

/* ---- 产品体验：6 个码位，3 列 ---- */
.home .pt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;
  background:var(--line);border:1px solid var(--line);margin-top:36px}
.home .pt-card{background:#fff;border:0;padding:24px 52px 20px;
  display:flex;flex-direction:column;align-items:center;gap:12px;cursor:pointer;
  font-family:inherit;transition:background .25s}
.home .pt-card:hover{background:#FCFBF8}
.home .pt-card:focus-visible{outline:2px solid var(--brand);outline-offset:-3px}
.home .pt-slot{width:100%;aspect-ratio:1/1;border:1px solid var(--line-strong);
  background:var(--paper);display:flex;align-items:center;justify-content:center;
  color:var(--muted-2);font-size:12px;text-align:center;padding:0 16px}
.home .pt-name{font-family:var(--serif);font-size:16px;line-height:1.4;
  color:var(--ink);letter-spacing:.01em}

/* ---- 合作伙伴：一行四个正方格（横竖 logo 兼容） ---- */
.home .partner-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;
  background:var(--line);border:1px solid var(--line);margin-top:30px;
  aspect-ratio:4/1}
.home .partner-grid .pcell{background:var(--paper);height:auto;
  display:flex;align-items:center;justify-content:center;
  color:var(--muted-2);font-size:12px;letter-spacing:.02em}

/* ---- 页脚：品牌 + 页面 + 法律（用户新版去掉了页脚码列） ---- */
footer{padding:84px 0 34px}
.foot-main{display:grid;grid-template-columns:1.6fr .55fr .55fr;gap:48px;
  padding-bottom:58px}
.foot-brand-col .foot-brand{margin-bottom:0}
.foot-brand .brand-cn{font-size:22px;letter-spacing:.06em}
.foot-brand .brand-en{font-size:11px;letter-spacing:.32em}
footer .foot-col .foot-h{font-size:11.5px;letter-spacing:.18em;color:#8A909C}
footer .foot-col a{font-size:13.5px;padding:5px 0}

/* ---- 断点 ---- */
@media (max-width:1080px){
  .home .hero h1{font-size:52px}
  .home .sec-cn{font-size:38px}
  .en-title{font-size:32px}
  .home .entry{grid-template-columns:104px minmax(0,1fr);gap:4px}
  .home .entry-body h3{font-size:28px}
  .home .entry-no{font-size:88px}
  .home .entry-right{margin-left:22%}
  .foot-main{grid-template-columns:1fr 1fr;gap:36px}
}
@media (max-width:860px){
  .home .pt-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:720px){
  .nav .brand-logo{height:30px}
  .home .hero{padding:72px 0 64px}
  .home .hero h1{font-size:33px;line-height:1.3}
  .home .hero .sub{font-size:15.5px;line-height:1.85;margin-top:22px}
  .home .hero-actions{margin-top:30px}
  .home .sec{padding:64px 0}
  .en-title{font-size:24px}
  .home .sec-cn{font-size:28px;margin-top:8px}
  .home .sec > .wrap > .sub{font-size:15px}
  .home .entries{margin-top:36px}
  .home .entry{grid-template-columns:66px minmax(0,1fr);gap:10px;padding:30px 0 34px}
  .home .entry-no{font-size:58px;margin-left:0}
  .home .entry-right{margin-left:0}
  .home .entry-body h3{font-size:23px}
  .home .entry-body .lede{font-size:15.5px;margin-top:6px}
  .home .entry-body .desc{font-size:14px;margin-top:16px;line-height:1.8}
  .home .entry-body .foot{margin-top:18px}
  .home .pt-grid{grid-template-columns:1fr 1fr;margin-top:34px}
  .home .pt-card{padding:18px 14px 16px;gap:12px}
  .home .pt-name{font-size:13.5px}
  .home .pt-slot{font-size:11px}
  .home .partner-grid{grid-template-columns:1fr 1fr;margin-top:28px;aspect-ratio:1/1}
  .home .partner-grid .pcell{font-size:11px}
  footer{padding:56px 0 28px}
  .foot-main{grid-template-columns:1fr;gap:32px;padding-bottom:44px}
}

/* 页脚品牌：堆叠式（标 + 星梦健康 + XDREAM），同参考图 */
.home footer .foot-brand{display:block}
.home footer .foot-brand svg{width:44px;height:44px;margin:0 0 16px}
.home footer .foot-brand .brand-txt{display:block}
.home footer .foot-brand .brand-cn{display:block;font-size:26px;letter-spacing:.12em}
.home footer .foot-brand .brand-en{display:block;margin-top:8px;font-size:11px;letter-spacing:.42em}

/* 首屏细节：标题标点改回全角（去掉 halt 的半角压缩）、高亮带压到基线附近并留出左右余量 */
.home .hero h1{font-feature-settings:normal}
.home .hero h1 em::after{bottom:.06em;height:.26em;left:-.05em;right:-.05em;background:#1E5B4712}
.home .hero .sub{max-width:39em}
.home .hero .sub{max-width:44em;text-wrap:pretty}
.home .hero .sub .ln{display:block}
.home .hero .sub .nw{white-space:nowrap}
.home .hero h1 em::after{height:.22em;bottom:.02em;background:#1E5B4718}

/* ---- 关于我们：公司介绍区块（正文放大一档，收紧上下留白） ---- */
#intro{padding:4px 0 44px}
#intro .prose{max-width:900px;font-size:17.5px;line-height:1.92}
#intro .prose p:last-child{margin-bottom:0}

/* ---- 关于我们：英文引题 + 收紧留白（与首页标题区同一套比例） ---- */
.page-about .hero{padding:92px 0 46px}
.page-about .en-title{margin:0 0 16px}
.page-about .hero h1{margin:0;max-width:17em}
.page-about #intro{padding:40px 0}
.page-about #contact{padding:52px 0 60px}
.page-about .mail-line{margin:0 0 16px;font-size:28px;line-height:1.5;font-family:var(--serif)}
.page-about .mail-line a{color:var(--ink);border-bottom:1px solid var(--line-strong)}
.page-about .reply-note{margin:0;font-size:16px;line-height:1.85;color:var(--muted)}
.page-about .mail-line a:hover{color:var(--brand);border-color:var(--brand)}
@media (max-width:720px){
  .page-about .hero{padding:64px 0 36px}
  .page-about .en-title{margin-bottom:10px}
  .page-about #intro{padding:28px 0}
  .page-about #contact{padding:40px 0 48px}
  .page-about .mail-line{font-size:20px;margin-bottom:12px}
  .page-about .reply-note{font-size:14.5px}
}

/* =========================================================
   抗炎生活页（body.page-anti）· 说明书式单页
   作用域一律 .page-anti，只新增组件，不改上方任何既有规则；
   色值全部取 :root 变量，不新增硬编码颜色（数字卡绿 = var(--brand)）
   ========================================================= */

/* ---- 区块骨架留白：全局 .sec 是 120/120（相邻区块视觉空隙 240），
   本页内容密度高，收到 80/80（空隙 160）；hero 与 section-head 同步收紧 ---- */
.page-anti .hero{padding:92px 0 60px}
.page-anti .sec{padding:80px 0}
.page-anti .section-head{margin-bottom:44px}

/* ---- 页首：文字列 + 手机壳截图（≥1081 并排右落，以下落到文下居中） ---- */
.page-anti .anti-hero-in{display:grid;grid-template-columns:minmax(0,1fr);align-items:center}
.page-anti .anti-shot{max-width:250px;margin:46px auto 0;width:100%}
@media (min-width:1081px){
  .page-anti .anti-hero-in{grid-template-columns:minmax(0,1fr) 250px;gap:72px}
  .page-anti .anti-shot-hero{margin:0}
}

/* ---- 手机壳（照搬说明书 .phone：深色壳 + 8px 内边距 + 截图 23px 圆角 +
   顶部听筒条压在截图沿上 + 一层投影），宽高比由 img 的 width/height 属性锁定 ---- */
.page-anti .phone{position:relative;background:#0e2b2d;border-radius:30px;padding:8px;
  box-shadow:0 18px 40px rgba(21,58,60,.18), inset 0 0 0 1px rgba(255,255,255,.06)}
.page-anti .phone::before{content:"";position:absolute;top:12px;left:50%;transform:translateX(-50%);
  width:64px;height:5px;border-radius:999px;background:rgba(255,255,255,.28);z-index:2}
.page-anti .phone img{display:block;border-radius:23px;width:100%;height:auto}

/* H1 用 <br> 做语义断行（「把「今天吃什么」」/「交给一个懂你的营养顾问」）。
   376px 以下第二行 11 字放不进 31px 行宽会二次折行，balance 会留 1 字尾行，
   改 pretty：同宽度下变成 9+2 的平衡折行，1440/1024/390 渲染不变。 */
.page-anti .hero h1{text-wrap:pretty}

/* ---- 区块内小标题（H2 之下的 H3：它不做什么 / 章节分隔） ---- */
.page-anti .anti-h3{font-family:var(--serif);font-size:22px;line-height:1.4;
  font-weight:600;color:var(--ink);letter-spacing:-.01em;margin:42px 0 18px}

/* ---- 四宫格条目（它不做什么 / 谁在用它）：缝线栅格，gap 1px 出细线 ---- */
.page-anti .anti-cells{display:grid;grid-template-columns:1fr 1fr;gap:1px;
  background:var(--line);border:1px solid var(--line)}
.page-anti .anti-cell{background:var(--paper);padding:30px 28px 32px}
.page-anti .anti-cell-t{font-family:var(--serif);font-size:19px;line-height:1.45;
  font-weight:600;color:var(--ink);letter-spacing:.01em;margin:0}
.page-anti .anti-cell-d{font-size:15px;line-height:1.85;color:var(--ink-2);margin:9px 0 0;
  text-wrap:pretty}

/* ---- 横排条目（五大模块）：一发线一行，标题 + 一句说明 ---- */
.page-anti .anti-list{border-bottom:1px solid var(--line)}
.page-anti .anti-item{padding:30px 0 32px;border-top:1px solid var(--line)}
.page-anti .anti-item-t{font-family:var(--serif);font-size:21px;line-height:1.42;
  font-weight:600;color:var(--ink);letter-spacing:.01em;margin:0}
.page-anti .anti-item-d{font-size:15px;line-height:1.85;color:var(--ink-2);
  margin:9px 0 0;max-width:46em;text-wrap:pretty}

/* ---- 功能卡（核心功能精选）：两列缝线栅格，奇数尾卡横跨整行 ---- */
.page-anti .anti-cards{display:grid;grid-template-columns:1fr 1fr;gap:1px;
  background:var(--line);border:1px solid var(--line)}
.page-anti .anti-card{background:var(--paper);padding:32px 30px 34px}
.page-anti .anti-card:last-child:nth-child(odd){grid-column:1/-1}
.page-anti .anti-card-t{font-family:var(--serif);font-size:20px;line-height:1.45;
  font-weight:600;color:var(--ink);letter-spacing:.01em;margin:0}
.page-anti .anti-card-d{font-size:15px;line-height:1.9;color:var(--ink-2);
  margin:10px 0 0;max-width:44em;text-wrap:pretty}

/* ---- 界面截图带（五大模块 / 界面速览共用）：电脑端一行最多 3 张，
   每张套手机壳居中，图注在壳下方；1020 版宽水平居中，3 列各 302、壳 260 ---- */
.page-anti .anti-shotband{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:48px 56px;max-width:1020px;margin:44px auto 0}
.page-anti .anti-h3 + .anti-shotband{margin-top:24px}
.page-anti .anti-shotband figure{margin:0;display:flex;flex-direction:column;align-items:center}
.page-anti .anti-shotband .phone{width:100%;max-width:260px}
.page-anti .anti-shotband figcaption{font-size:12px;line-height:1.6;color:var(--muted);
  margin-top:12px;letter-spacing:.02em;text-align:center;text-wrap:pretty}

/* 五大模块截图带第 6 格：还没有截图，用两行字补位
   （主行对齐 about 页 .mail-line：宋体 28px；副行对齐 .reply-note：16px 灰） */
.page-anti .anti-shotband .anti-note{justify-content:center;gap:24px;padding:0 10px}
.page-anti .anti-note-line{margin:0;font-family:var(--serif);font-size:28px;line-height:1.5;
  color:var(--ink);letter-spacing:.01em;text-align:center}
.page-anti .anti-note-sub{margin:0;font-size:16px;line-height:1.8;color:var(--muted);
  text-align:center;letter-spacing:.02em}
.page-anti .anti-note-line .br-m,.page-anti .anti-note-sub .br-m{display:none}

/* ---- 断点：1080 / 720 ---- */
@media (max-width:1080px){
  .page-anti .anti-cards{grid-template-columns:1fr}
  .page-anti .anti-card:last-child:nth-child(odd){grid-column:auto}
}
@media (max-width:720px){
  .page-anti .sec{padding:52px 0}
  .page-anti .section-head{margin-bottom:32px}
  .page-anti .anti-shot{max-width:250px;margin-top:36px}
  .page-anti .anti-h3{font-size:20px;margin:38px 0 16px}
  .page-anti .anti-cells{grid-template-columns:1fr}
  .page-anti .anti-cell{padding:24px 20px 26px}
  .page-anti .anti-cell-t{font-size:18px}
  .page-anti .anti-item{padding:26px 0 28px}
  .page-anti .anti-item-t{font-size:19px}
  .page-anti .anti-card{padding:26px 20px 28px}
  .page-anti .anti-card-t{font-size:19px}
  .page-anti .anti-shotband{grid-template-columns:1fr 1fr;gap:32px 20px;margin-top:36px}
  .page-anti .anti-note-line{font-size:20px}
  .page-anti .anti-note-sub{font-size:14.5px}
  .page-anti .anti-note-line .br-m,.page-anti .anti-note-sub .br-m{display:inline}
  .page-anti .anti-shotband > :last-child:nth-child(odd){grid-column:1/-1;
    width:calc(50% - 10px);justify-self:center}
}

/* ---- ≤360：截图带收到单列，手机壳保持 ≤240 居中 ----
   （390 基线仍用 2 列：单列会让移动端页高从约 10.4k 涨到 13.9k） ---- */
@media (max-width:360px){
  .page-anti .anti-shotband{grid-template-columns:1fr}
  .page-anti .anti-shotband > :last-child:nth-child(odd){grid-column:auto;
    width:100%;justify-self:stretch}
}
