@charset "UTF-8";
/* ============================================================
   君遇圣景 · 移动端官网（独立站点）
   设计稿宽度：600px（1rem = 100 设计像素，整体较 750 基准放大 1.25×）
   自适应：html font-size = 100vw/7.5，宽屏(≥750)锁定 100px
   结构参考：君帝龍移动站（轮播 / 宫格导航 / 列表 / 底部导航）
   ============================================================ */

/* -------- 毛笔字体 -------- */
@font-face{
  font-family:"JYSJ-Brush";
  src:url("assets/fonts/mashanzheng-subset.woff2") format("woff2");
  font-weight:400; font-display:swap;
}

/* -------- 设计令牌 -------- */
:root{
  /* 白底主题（金色相应加深以保证白底可读） */
  --gold:      #a8802e;   /* 主金：用于文字，白底可读 */
  --gold-soft: #c5a55a;   /* 品牌金：装饰 / 描边 / 水印 */
  --ink:       #ffffff;   /* 页面底色 */
  --ink-2:     #faf8f5;   /* 卡片 / 列表底 */
  --ink-3:     #f2efe9;   /* 板块分隔带 */
  --text:      #2b2721;   /* 主文字 */
  --dim:       #6f6859;   /* 次要文字 */
  --soft:      #9a9384;   /* 弱化文字 */
  --line:      rgba(168,128,46,.28);
  --line-2:    rgba(168,128,46,.45);
  --sep:       #eee9e1;   /* 分隔线 */

  --serif:"Noto Serif SC","Source Han Serif SC","Songti SC","STSong","SimSun",serif;
  --sans:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  --brush:"JYSJ-Brush","Noto Serif SC","Songti SC",serif;

  --nav-h:  1rem;   /* 顶部栏 100 */
  --tab-h:  1.08rem;  /* 底部导航 108 */
}

/* -------- 750 设计稿基准 -------- */
html{
  font-size:16.6667vw;              /* 100vw / 6 */
  -webkit-text-size-adjust:100%;
}
@media (min-width:750px){
  html{ font-size:100px; }          /* 宽屏锁定 1rem=100px，页面 750 居中 */
}

/* -------- 基础重置 -------- */
*,*::before,*::after{ box-sizing:border-box; }
html,body{ margin:0; padding:0; }
body{
  width:6rem;
  margin:0 auto;
  background:var(--ink);
  color:var(--text);
  font-family:var(--sans);
  font-size:.24rem;
  line-height:1.7;
  overflow-x:hidden;
  /* 内容不足一屏时也要撑满视口，避免底部露出 html 的米色留白（桌面端左右留白色） */
  min-height:100vh;
  padding-top:var(--nav-h);
  padding-bottom:calc(var(--tab-h) + .2rem);
  -webkit-font-smoothing:antialiased;
}
img{ max-width:100%; display:block; border:0; }
a{ color:inherit; text-decoration:none; }
button{ font:inherit; color:inherit; background:none; border:0; padding:0; cursor:pointer; }
ul,ol,dl{ list-style:none; margin:0; padding:0; }
h1,h2,h3,h4,p{ margin:0; }

.pad{ padding-left:.3rem; padding-right:.3rem; }

/* ================= 顶部栏 ================= */
.topbar{
  position:fixed; top:0; left:50%; transform:translateX(-50%);
  z-index:60;
  width:6rem; height:var(--nav-h);
  background:rgba(255,255,255,.96);
  backdrop-filter:saturate(140%) blur(12px);
  -webkit-backdrop-filter:saturate(140%) blur(12px);
  border-bottom:1px solid var(--sep);
  transition:background .25s ease, box-shadow .25s ease;
}
.topbar.is-stuck{ background:#fff; box-shadow:0 .02rem .14rem rgba(0,0,0,.07); }
.topbar-inner{
  height:100%;
  display:flex; align-items:center; justify-content:space-between;
  gap:.24rem;
}
.brand{ display:flex; align-items:center; gap:.14rem; flex-shrink:0; }
.brand-mark{ height:.52rem; width:auto; flex-shrink:0; }
.brand-name{
  font-family:var(--serif); font-size:.3rem;   /* 顶栏品牌为纯文字「万古文化」，四字名稍放大并加宽字距 */
  letter-spacing:.14em; color:var(--text);
  line-height:1; white-space:nowrap;
}
.burger{
  width:.44rem; height:.32rem; flex-shrink:0;
  display:flex; flex-direction:column; justify-content:space-between;
  padding:.03rem 0;
}
.burger span{
  display:block; width:100%; height:.03rem;
  background:var(--text); border-radius:.02rem;
  transition:transform .25s ease, opacity .2s ease;
}
.burger.is-open span:nth-child(1){ transform:translateY(.12rem) rotate(45deg); }
.burger.is-open span:nth-child(2){ opacity:0; }
.burger.is-open span:nth-child(3){ transform:translateY(-.12rem) rotate(-45deg); }

/* 抽屉菜单 */
.drawer{
  position:fixed; top:var(--nav-h); left:50%; transform:translateX(-50%);
  z-index:55; width:6rem;
  background:#fff;
  backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid var(--sep);
  display:none; flex-direction:column;
  box-shadow:0 .1rem .24rem rgba(0,0,0,.08);
}
.drawer.is-open{ display:flex; }
.drawer a{
  padding:.28rem .3rem;
  font-size:.26rem; letter-spacing:.16em; color:var(--dim);
  border-bottom:1px solid var(--sep);
}
.drawer a:last-child{ border-bottom:0; }
.drawer a:active{ background:rgba(197,165,90,.08); color:var(--gold); }

/* ================= 首屏轮播 ================= */
.banner{
  position:relative;
  width:auto;
  margin:0 .22rem;
  aspect-ratio:15/8;
  padding-top:0;
  border-radius:.16rem;
  overflow:hidden;
  background:var(--ink-2);
  transform:translateZ(0);          /* 修复 iOS 溢出裁剪失效导致圆角不生效 */
  -webkit-mask-image:-webkit-radial-gradient(white, black);
}
.banner-track{
  position:absolute; top:0; left:0; width:100%; height:100%;
  display:flex;
  transition:transform .5s ease;
  will-change:transform;
}
.banner-slide{ width:100%; height:100%; flex:0 0 100%; overflow:hidden; border-radius:.16rem; }
.banner-slide img{ width:100%; height:100%; object-fit:cover; object-position:center center; border-radius:.16rem; }
.banner-mask{
  position:absolute; inset:0;
  /* 纯图轮播：仅底部留极淡渐变，保证分页圆点在任何图片上都可见 */
  background:linear-gradient(180deg, rgba(0,0,0,.08) 0%, transparent 55%, rgba(0,0,0,.34) 100%);
}
/* 视觉隐藏：保留给搜索引擎与读屏软件的标题（banner 已取消可见文字） */
.sr-only{
  position:absolute; width:1px; height:1px;
  padding:0; margin:-1px; overflow:hidden;
  clip:rect(0,0,0,0); white-space:nowrap; border:0;
}
.banner-dots{
  position:absolute; left:0; right:0; bottom:.34rem;
  display:flex; justify-content:center; gap:.12rem;
}
.banner-dots i{
  width:.14rem; height:.14rem; border-radius:50%;
  background:rgba(255,255,255,.62);
  box-shadow:0 .01rem .04rem rgba(0,0,0,.38);
  transition:background .25s ease, width .25s ease;
}
.banner-dots i.is-on{ background:var(--gold); width:.34rem; border-radius:.07rem; }

/* ================= 六宫格导航 ================= */
.grid-nav{
  display:flex; flex-wrap:wrap; gap:.16rem;
  background:#ffffff;
  padding:.3rem .22rem .2rem;
  border-bottom:1px solid var(--sep);
}
.grid-nav a{
  width:calc((100% - .32rem) / 3);
  aspect-ratio:1 / 1;                 /* 背景比例为正方形 */
  padding:.12rem .08rem;
  display:flex; flex-direction:column;
  align-items:center; justify-content:center;
  text-align:center;
  background:linear-gradient(158deg,#ffffff 0%,var(--ink-2) 100%);
  border:1px solid var(--line);
  border-radius:.2rem;
  box-shadow:0 .04rem .14rem rgba(168,128,46,.08);
}
.gn-icon{
  width:.8rem; height:.8rem; margin:0 auto .08rem;   /* 图标放大、与文字间距收紧 */
  display:flex; align-items:center; justify-content:center;
  background:var(--ink-3); border-radius:.2rem;       /* 图标带明显浅底 */
  color:var(--gold);
}
.gn-icon svg, .gn-icon img{ width:.74rem; height:.74rem; object-fit:contain; }
.grid-nav cite{
  display:block; font-style:normal;
  font-size:.24rem; letter-spacing:.02em; color:var(--text);
}

/* ================= 区块通用 ================= */
.band{ padding:.56rem 0; border-top:.14rem solid var(--ink-3); }

/* 标题条（参考站 list-title：色块 + 标题 + 更多） */
.bar-title{
  display:flex; align-items:center;
  padding:.24rem .3rem;
  border-bottom:1px solid var(--sep);
  background:var(--ink-2);
}
.bar-title i{
  width:.06rem; height:.28rem; border-radius:.03rem;
  background:var(--gold); margin-right:.14rem; flex-shrink:0;
}
.bar-title h3{
  font-family:var(--serif); font-size:.3rem; font-weight:400;
  letter-spacing:.04em; color:var(--text);
}
.bar-title .more-link{
  margin-left:auto; font-size:.22rem; color:var(--gold);
  text-decoration:none; letter-spacing:.02em; flex-shrink:0;
}
.bar-title .more-link:active{ opacity:.6; }

/* ================= 设计理念 ================= */
.design-fig{
  margin-top:.3rem; border:1px solid var(--line); overflow:hidden;
}
.design-fig img{ width:100%; }
.design-fig figcaption{
  padding:.16rem .2rem; font-size:.2rem;
  letter-spacing:.14em; color:#eae4d6; background:rgba(0,0,0,.52);
}
.pillars{ margin-top:.28rem; }
.pillars li{ padding:.22rem 0; border-bottom:1px dashed rgba(197,165,90,.16); }
.pillars li:last-child{ border-bottom:0; }
.pillars b{
  display:block; font-family:var(--serif); font-weight:400;
  font-size:.27rem; color:var(--gold); letter-spacing:.08em; margin-bottom:.04rem;
}
.pillars span{ font-size:.22rem; color:var(--dim); line-height:1.8; }

/* ================= 产品分类 + 列表 ================= */
.tabs{ display:flex; gap:.14rem; margin:.28rem 0 .3rem; }
.tab{
  flex:1; padding:.16rem .04rem; text-align:center;
  font-size:.24rem; letter-spacing:.1em; color:var(--dim);
  border:1px solid var(--line); border-radius:.04rem;
  transition:all .25s ease; white-space:nowrap;
}
.tab.is-active{ background:var(--gold); border-color:var(--gold); color:#fff; }

/* 列表项：左图右文（参考站 page_right_case_list1） */
.plist{ background:var(--ink-2); position:relative; z-index:1; }

/* ================= 文创产品 · 《将进酒》诗墙背景 ================= */
#products{ position:relative; overflow:hidden; }
#products .pad, #products .plist, #products .bar-title{ position:relative; z-index:1; }
.poem-bg{
  position:absolute; inset:0; z-index:0; pointer-events:none; overflow:hidden;
  display:flex; justify-content:center; align-items:flex-start;
}
.poem-bg-text{
  writing-mode:vertical-rl; -webkit-writing-mode:vertical-rl; text-orientation:mixed;
  font-family:var(--brush);
  font-size:.26rem; line-height:1.9; letter-spacing:.1em;
  color:var(--gold); opacity:.2; padding:1.1rem 0 .4rem;
  -webkit-mask-image:radial-gradient(ellipse 82% 56% at 50% 40%, #000 34%, transparent 100%);
          mask-image:radial-gradient(ellipse 82% 56% at 50% 40%, #000 34%, transparent 100%);
}
.poem-bg-text .pstanza{ display:block; margin:0; }
.poem-bg-text .pch{
  display:inline-block; opacity:0;
  transform:translateY(-.4em) scale(.92);
  animation:poemIn .85s cubic-bezier(.22,.68,.28,1) forwards;
  animation-delay:var(--d, 0s);
}
@keyframes poemIn{
  0%   { opacity:0;   transform:translateY(-.4em) scale(.92); }
  60%  { opacity:.28; }
  100% { opacity:.2;  transform:translateY(0) scale(1); }
}
@media (prefers-reduced-motion:reduce){
  .poem-bg-text .pch{ opacity:.2; transform:none; animation:none; }
}

.plist a{
  display:flex; gap:.22rem; padding:.26rem .3rem;
  border-bottom:1px solid var(--sep);
}
.plist a:last-child{ border-bottom:0; }
.plist dd{ width:2.1rem; flex-shrink:0; margin:0; box-sizing:border-box;
  background:var(--ink); border:1px solid var(--line); border-radius:.16rem;
  padding:.06rem; overflow:hidden; }
.plist dd img{ width:100%; height:1.48rem; object-fit:cover; display:block; border-radius:.1rem; }
.plist dt{ flex:1; min-width:0; }
.plist dt{ display:flex; flex-direction:column; gap:.12rem; }
.p-name{
  font-family:var(--serif); font-size:.26rem; font-weight:400;
  line-height:1.55; color:var(--text); margin-bottom:.04rem;
}
.p-meta{ display:flex; align-items:center; gap:.1rem; flex-wrap:wrap; }
.p-label{ font-size:.22rem; color:var(--dim); letter-spacing:.02em; }
.p-price{
  display:inline-flex; align-items:center; justify-content:center;
  height:.54rem; padding:0 .24rem;
  background:#8b1e1e; color:#fff; border-radius:.54rem;
  font-family:var(--serif); font-size:.3rem; line-height:1;
  box-shadow:0 .04rem .12rem rgba(139,30,30,.28);
}
.p-price .p-unit{
  margin-left:.04rem;
  font-size:.2rem; line-height:1;
}
.p-row{ display:flex; align-items:center; justify-content:space-between; gap:.14rem; margin-top:.18rem; }
.p-sales{
  display:inline-flex; align-items:center; justify-content:center;
  height:.54rem; padding:0 .24rem;
  background:var(--gold); color:#fff; border-radius:.54rem;
  font-size:.22rem; letter-spacing:.02em;
  box-shadow:0 .04rem .12rem rgba(168,128,46,.28);
}

/* 系列信息面板：三个选项（价格 / 销量 / 查看详情） */
.series-panel .p-row{ gap:.12rem; }
.series-panel .p-price{ padding:0 .18rem; }
.series-panel .p-sales{ height:.5rem; padding:0 .18rem; font-size:.2rem; }
.series-panel .p-detail{
  display:inline-flex; align-items:center; justify-content:center;
  height:.5rem; padding:0 .18rem;
  border:1px solid var(--gold); border-radius:.5rem;
  background:var(--ink-2); color:var(--gold);
  font-size:.2rem; letter-spacing:.04em;
  text-decoration:none; white-space:nowrap;
  box-shadow:0 .04rem .12rem rgba(0,0,0,.06);
}
.series-panel .p-detail:active{ background:var(--gold); color:#fff; }

.p-empty{
  text-align:center; color:var(--dim);
  font-size:.26rem; padding:.8rem .2rem 1rem;
}
/* 系列封面大图 */
.series-banner{
  margin:0 .3rem .28rem; border-radius:.18rem; overflow:hidden;
  background:var(--ink-3); box-shadow:0 .06rem .24rem rgba(0,0,0,.28);
  position:relative;
}
.series-banner img{
  width:100%; display:block; aspect-ratio:3/2; object-fit:cover; object-position:center;
}
.series-slider{
  display:flex; width:100%; transition:transform .35s ease;
}
.series-slide{
  flex:0 0 100%; width:100%;
}
.series-slide img{
  width:100%; display:block;
}
.series-dots{
  position:absolute; left:0; right:0; bottom:.12rem; z-index:2;
  display:flex; justify-content:center; gap:.1rem;
  padding:0;
}
.series-dots i{
  width:.14rem; height:.14rem; border-radius:50%;
  background:rgba(255,255,255,.55); box-shadow:0 .01rem .04rem rgba(0,0,0,.35);
  transition:all .2s;
}
.series-dots i.is-on{
  background:var(--gold); transform:scale(1.15);
}
.series-panel{
  margin:0 .3rem;
  padding:.28rem .28rem .48rem;
  background:var(--ink-3);
}

/* 首页文创产品产品网格：与二级页保持一致的左右留白 */
#prodList{ padding:0 .3rem; }
.series-desc{
  margin:0 0 .12rem; font-size:.28rem; color:var(--text);
  letter-spacing:.01rem; text-align:center; font-weight:700;
}
.series-intro{
  margin:0 0 .24rem; font-size:.24rem; line-height:1.65;
  color:var(--dim); text-align:justify;
}
.series-specs{
  margin:0 0 .28rem; padding:.24rem .26rem; border-radius:.18rem;
  background:rgba(255,255,255,.08); border:1px solid rgba(212,175,55,.2);
}
.series-specs .specs-title{
  margin:0 0 .18rem; font-size:.26rem; color:var(--gold);
  font-weight:600; text-align:center; letter-spacing:.02rem;
}
.series-specs .specs-list{
  list-style:none; margin:0; padding:0;
}
.series-specs .specs-list li{
  display:flex; align-items:center; justify-content:space-between;
  padding:.12rem 0; border-bottom:1px dashed rgba(255,255,255,.08);
  font-size:.24rem; line-height:1.4;
}
.series-specs .specs-list li:last-child{ border-bottom:0; }
.series-specs .specs-k{
  color:var(--dim); letter-spacing:.02rem;
}
.series-specs .specs-v{
  color:var(--ink); text-align:right;
}

/* ================= 文化视界 / 文章列表 ================= */
.alist{ background:var(--ink-2); }
.alist a{
  display:flex; flex-direction:row-reverse; gap:.22rem; padding:.26rem .3rem;
  border-bottom:1px solid var(--sep);
}
.alist a:last-child{ border-bottom:0; }
.alist dd{ width:2.1rem; flex-shrink:0; margin:0; }
.alist dd img{ width:2.1rem; height:1.45rem; object-fit:cover; border-radius:.12rem; }
.alist dt{ flex:1; min-width:0; display:flex; flex-direction:column; }
.a-title{
  font-size:.26rem; line-height:1.6; color:var(--text); margin-bottom:.1rem;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}
.a-meta{ margin-top:auto; display:flex; align-items:center; justify-content:space-between; font-size:.2rem; color:var(--soft); }

/* ================= 页脚 ================= */
.foot{
  padding:.16rem .3rem .18rem; text-align:center;
  border-top:1px solid var(--sep); background:var(--ink);
}
.foot-logo{ display:none; width:.8rem; height:.8rem; margin:0 auto .18rem; }
.foot-name{
  font-family:var(--serif); font-size:.3rem;
  letter-spacing:.24em; color:var(--text); margin-bottom:.1rem;
}
.foot-slogan{ font-size:.22rem; letter-spacing:.2em; color:var(--soft); margin-bottom:.2rem; }
.foot-copy{ font-size:.2rem; color:#a09a8c; line-height:1.9; }

/* ================= 底部固定导航 ================= */
.tabbar{
  position:fixed; bottom:0; left:50%; transform:translateX(-50%);
  z-index:60; width:6rem; height:var(--tab-h);
  display:flex;
  background:rgba(255,255,255,.97);
  backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
  border-top:1px solid var(--sep);
  padding-bottom:env(safe-area-inset-bottom);
}
.tabbar a{
  flex:1; display:flex; flex-direction:column;
  align-items:center; justify-content:center; gap:.06rem;
  color:var(--soft);
}
.tabbar a.is-on{ color:var(--gold); }
.tabbar svg{ width:.42rem; height:.42rem; }
.tabbar cite{ font-style:normal; font-size:.2rem; letter-spacing:.1em; }
.tabbar .tab-call{ color:var(--gold); font-weight:600; }

/* ================= 二级栏目图文简介卡（首页区块） ================= */
.intro-card{
  display:flex; gap:.24rem; align-items:stretch;
  margin:.3rem .3rem 0; padding:.24rem;
  background:var(--ink-2); border:1px solid var(--line);
  border-radius:.16rem; text-decoration:none;
}
.intro-card:active{ background:var(--ink-3); }
.ic-cover{
  width:2.3rem; flex-shrink:0;
  border-radius:.12rem; overflow:hidden;
  background:var(--ink); border:1px solid var(--line);
}
.ic-cover img{
  width:100%; height:100%; min-height:1.9rem;
  object-fit:cover; display:block;
}
.ic-body{ flex:1; min-width:0; display:flex; flex-direction:column; }
.ic-body h4{
  font-family:var(--serif); font-weight:400;
  font-size:.28rem; color:var(--text);
  margin:0 0 .1rem; letter-spacing:.02em; line-height:1.5;
}
.ic-body p{
  font-size:.22rem; line-height:1.7; color:var(--dim);
  margin:0 0 .12rem; text-align:justify;
  display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden;
}
.ic-go{
  margin-top:auto; align-self:flex-start;
  font-size:.22rem; color:var(--gold); letter-spacing:.04em;
}

/* ================= 滚动揭示 ================= */
[data-anim]{ opacity:0; transform:translateY(.28rem); transition:opacity .7s ease, transform .7s ease; }
[data-anim].is-in{ opacity:1; transform:none; }
@media (prefers-reduced-motion:reduce){
  [data-anim]{ opacity:1; transform:none; transition:none; }
  .banner-track{ transition:none; }
}

/* ================= 返回顶部 ================= */
.back-to-top{
  position:fixed; right:.24rem; bottom:calc(var(--tab-h) + .32rem);
  z-index:70;
  width:.72rem; height:.72rem;
  border-radius:50%;
  background:#fff;
  border:1px solid var(--line-2);
  box-shadow:0 .06rem .2rem rgba(0,0,0,.12);
  display:flex; align-items:center; justify-content:center;
  opacity:0; visibility:hidden;
  transform:translateY(.2rem);
  transition:opacity .3s ease, visibility .3s ease, transform .3s ease, box-shadow .3s ease;
}
.back-to-top.is-visible{
  opacity:1; visibility:visible; transform:translateY(0);
}
.back-to-top:active{ box-shadow:0 .03rem .1rem rgba(0,0,0,.1); transform:scale(.95); }
.back-to-top svg{
  width:.32rem; height:.32rem; color:var(--gold);
  stroke-width:2.2;
}

/* ---------------- 首页客户见证（1 大 + 2 小） ---------------- */
.cases-show{
  display:grid;
  grid-template-columns:1.52fr 1fr;   /* 左大图:右小图 ≈ 253:167（严格按参考图） */
  grid-template-rows:1.42rem 1.42rem; /* 小图高 ≈ 167:102 比例换算 */
  gap:.08rem;
  padding:0 .3rem;
}
.cs-item{
  position:relative; display:block; overflow:hidden;
  border-radius:.08rem; background:#eee;
}
.cs-big{ grid-row:1 / span 2; }
.cs-item img{
  width:100%; height:100%; object-fit:cover; display:block;
}
.cs-cap{
  position:absolute; left:0; right:0; bottom:0;
  padding:.16rem .12rem .1rem;
  font-size:.21rem; line-height:1.35; color:#fff; font-weight:500;
  background:linear-gradient(transparent, rgba(0,0,0,.6));
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}

/* ---------------- 文化视界（参考样式：头条大图 + 小缩略图列表） ---------------- */
.alist .nw-head{
  display:block; position:relative; overflow:hidden;
  margin:.06rem .3rem; border-radius:.12rem; background:#eee;
}
.alist .nw-head img{
  width:100%; height:2.7rem; object-fit:cover; display:block;
}
.alist .nw-head-cap{
  position:absolute; left:0; right:0; bottom:0;
  padding:.5rem .2rem .14rem;
  background:linear-gradient(transparent, rgba(0,0,0,.62));
  color:#fff;
}
.alist .nw-head-cap .a-title{
  color:#fff; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}
.alist .nw-head-cap .a-meta{ color:rgba(255,255,255,.85); margin-top:.06rem; }
.alist .nw-item{
  display:flex; align-items:center; gap:.16rem;
  margin:.06rem .3rem; padding:.16rem .18rem;
  background:var(--ink); border-radius:.12rem;
}
.alist .nw-item dt{ flex:1; min-width:0; display:flex; flex-direction:column; }
.alist .nw-item dd{ width:1.4rem; flex-shrink:0; margin:0; }
.alist .nw-item dd img{
  width:1.4rem; height:1.05rem; object-fit:cover; border-radius:.1rem; display:block;
}
.alist .nw-item .a-meta{ margin-top:.08rem; }
/* 覆盖旧 .alist a 通用规则 */
.alist a.nw-head{
  display:block; padding:0; border-bottom:0;
}
.alist a.nw-item{
  flex-direction:row; padding:.16rem .18rem; border-bottom:0; gap:.16rem;
}

/* ================= 图片查看器（灯箱） ================= */
.img-viewer{
  position:fixed; inset:0; z-index:2000;
  display:flex; align-items:center; justify-content:center;
  background:rgba(0,0,0,.94);
  opacity:0; visibility:hidden;
  transition:opacity .22s ease, visibility .22s ease;
  -webkit-tap-highlight-color:transparent;
}
.img-viewer.is-open{ opacity:1; visibility:visible; }
.img-viewer .iv-stage{
  display:flex; align-items:center; justify-content:center;
  width:100%; height:100%;
  touch-action:none;                 /* 交给 JS 处理双指缩放/拖动 */
  will-change:transform;
  transform-origin:center center;
  z-index:1;                         /* 图片层压在最下，按钮/图注浮其上 */
}
.img-viewer .iv-img{
  max-width:96vw; max-height:88vh; width:auto; height:auto;
  object-fit:contain; border-radius:.06rem;
  box-shadow:0 .2rem .6rem rgba(0,0,0,.5);
  user-select:none; -webkit-user-select:none;
  -webkit-user-drag:none; pointer-events:none;   /* 手势统一在 stage 上处理 */
}
.img-viewer .iv-cap{
  position:absolute; left:0; right:0; bottom:calc(env(safe-area-inset-bottom) + .3rem);
  padding:0 .4rem; text-align:center;
  font-size:.24rem; line-height:1.6; color:rgba(255,255,255,.82);
  z-index:3; pointer-events:none;
}
.img-viewer .iv-close{
  position:absolute; top:calc(env(safe-area-inset-top) + .24rem); right:.3rem;
  width:.72rem; height:.72rem; line-height:1;
  font-size:.5rem; color:#fff; background:rgba(255,255,255,.16);
  border-radius:50%; border:0;
  display:flex; align-items:center; justify-content:center;
  z-index:4;                         /* 必须高于全屏 stage，否则被遮住点不到 */
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}
.img-viewer .iv-close:active{ background:rgba(255,255,255,.3); }
/* 正文配图加轻微可点提示 */
.cd-body figure img,
.ad-body figure img,
.pd-panel figure img{ cursor:zoom-in; }

/* ---- 产品卡片缩略图切换（横版图，首页/列表页共用） ---- */
.pcard-img.pc-img-wrap{
  position:relative;
  aspect-ratio:16/9;
  overflow:hidden;
}
.pc-img-wrap .pc-track{
  display:flex; height:100%;
  overflow-x:auto; scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch; scrollbar-width:none;
}
.pc-img-wrap .pc-track::-webkit-scrollbar{ display:none; }
.pc-img-wrap .pc-track img{
  flex:0 0 100%; width:100%; height:100%;
  object-fit:cover; scroll-snap-align:center;
}
.pc-img-wrap .pc-dots{
  position:absolute; left:0; right:0; bottom:.12rem;
  display:flex; justify-content:center; gap:.1rem;
  pointer-events:none;
}
.pc-img-wrap .pc-dots i{
  width:.1rem; height:.1rem; border-radius:50%;
  background:rgba(255,255,255,.55);
  box-shadow:0 0 .04rem rgba(0,0,0,.3);
  transition:background .2s;
}
.pc-img-wrap .pc-dots i.is-on{ background:#fff; }

/* -------- 列表分页（栏目页 / 产品列表页共用） -------- */
.col-pager{
  display:flex; justify-content:center; gap:.2rem;
  padding:.36rem .3rem .2rem;
}
.col-pager a{
  min-width:1.8rem; text-align:center;
  padding:.14rem .24rem;
  border:1px solid var(--line); border-radius:.1rem;
  font-size:.24rem; letter-spacing:.08em; color:var(--gold);
  text-decoration:none; background:transparent;
}
.col-pager a:active{ background:rgba(197,165,90,.08); }
.col-pager .pg-current{
  min-width:1.8rem; text-align:center;
  padding:.14rem .24rem;
  border:1px solid var(--gold); border-radius:.1rem;
  font-size:.24rem; letter-spacing:.08em; color:#fff;
  background:var(--gold);
}
.col-pager .pg-gap{
  align-self:center; color:var(--muted);
  font-size:.24rem; padding:0 .06rem;
}
/* 移动端隐藏页码分页，由 list-infinite.js 接管为上滑加载更多 */
@media (max-width:768px){
  .col-pager{ display:none; }
}
/* 上滑加载更多指示器（仅移动端、由脚本注入并显示）*/
.list-more{
  display:none;
  justify-content:center; align-items:center; gap:.12rem;
  padding:.34rem .3rem .44rem;
  color:var(--muted); font-size:.24rem;
}
.lm-spinner{
  width:.26rem; height:.26rem; border-radius:50%;
  border:.04rem solid var(--line); border-top-color:var(--gold);
  animation:lm-spin .7s linear infinite; display:none;
}
.list-more.is-loading .lm-spinner{ display:inline-block; }
@keyframes lm-spin{ to{ transform:rotate(360deg); } }
