@charset "utf-8";
/* ==========================================================================
   theme-v2.css —— 思妙官网 PC 模板「品牌化覆盖层」（阶段一）
   --------------------------------------------------------------------------
   加载位置：header.html 第 23 行 {/if} 之后（即在 style.css / style_tema.css /
             style_partner.css 之后加载），因此无需 !important 即可覆盖基样式。
   目标：不改动基样式文件，把「深灰底 + 模板金」通用皮肤换成思妙品牌浅色皮肤。
   口径：品牌绿沿用 /sm/ 页已定稿的 #059e53；浅底 #f5fffa；白卡 + 细线 + 柔和阴影。
   回滚：删除 header.html 中的 <link> 引用（或本文件）即完全还原为旧皮肤。
   ========================================================================== */

:root{
  --brand:#059e53;
  --brand-d:#048847;
  --brand-l:#d9f6e0;
  --ink:#1f2d27;
  --body:#4a5a53;
  --muted:#8a9a92;
  --bg:#f5fffa;
  --surface:#ffffff;
  --line:#e3e8ef;
  --radius:14px;
  --maxw:1380px;                                  /* 内容列最大宽度＝原版 .container(1400) 减去左右各 10px 内边距 */
  --shadow-sm:0 1px 2px rgba(11,26,43,.04), 0 2px 10px -2px rgba(11,26,43,.06);
  --shadow-md:0 2px 6px -1px rgba(11,26,43,.06), 0 14px 32px -10px rgba(11,26,43,.15);
  --hairline:inset 0 1px 0 rgba(255,255,255,.72);
  --ease:cubic-bezier(.2,.7,.3,1);
}

/* --------------------------------------------------------------------------
   1. 全局底色 / 文字 / 链接
   -------------------------------------------------------------------------- */
body{
  background:var(--bg);
  color:var(--body);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
html{scroll-behavior:smooth;}
a{color:var(--brand-d);}
a:hover,a:focus{color:var(--brand);}
p{text-wrap:pretty;}
::selection{background:rgba(5,158,83,.18);}

/* 品牌色滚动条（WebKit）+ Firefox */
html{scrollbar-color:rgba(5,158,83,.38) transparent;}
::-webkit-scrollbar{width:10px;height:10px;}
::-webkit-scrollbar-track{background:transparent;}
::-webkit-scrollbar-thumb{background:rgba(5,158,83,.32);background-clip:content-box;border:3px solid transparent;border-radius:999px;}
::-webkit-scrollbar-thumb:hover{background:rgba(5,158,83,.55);background-clip:content-box;}

/* 无障碍：基样式清空了 outline，这里补回键盘焦点环 */
:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px;}

/* --------------------------------------------------------------------------
   2. 顶部导航（脏墨绿半透明 → 品牌绿毛玻璃）
   -------------------------------------------------------------------------- */
.header .header-nav{
  background-color:rgba(5,158,83,.96);
  -webkit-backdrop-filter:saturate(1.4) blur(6px);
  backdrop-filter:saturate(1.4) blur(6px);
  box-shadow:inset 0 -1px 0 rgba(255,255,255,.12), 0 6px 20px -14px rgba(11,26,43,.45);
}
.header .header-nav.fixed{
  background-color:rgba(5,158,83,.98);
  opacity:1;
}
/* 首页透明导航（hero 之上）保持透明，滚动固定后才上品牌色 */
.header.opaque .header-nav{
  background-color:transparent;
  box-shadow:none;
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
}
.header.opaque .header-nav.fixed{
  background-color:rgba(5,158,83,.98);
  box-shadow:inset 0 -1px 0 rgba(255,255,255,.12), 0 6px 20px -14px rgba(11,26,43,.45);
}
.navbar li:after{background:#fff;}
.navbar li.active>a,.navbar li.on>a,.navbar li.active>i,.navbar li.on>i{color:#fff;}
.header.opaque .header-nav.fixed .navbar li.active>a,
.header.opaque .header-nav.fixed .navbar li.on>a,
.header.opaque .header-nav.fixed .navbar li.active>i,
.header.opaque .header-nav.fixed .navbar li.on>i{color:#fff;}
.header a:hover.moble-bars{color:#fff;}
/* 下拉菜单：白色卡片 + 品牌顶边 */
#navBox>div>ul>li>ul{border-top-color:var(--brand);box-shadow:0 14px 30px -12px rgba(11,26,43,.22);}
#navBox>div>ul>li>ul>li>a:hover{color:var(--brand);}
/* 移动端抽屉菜单（复用 .inner） */
.inner li a:hover{background:var(--brand);border-bottom-color:var(--brand);}
/* 搜索按钮 */
.search-pup form button{background:var(--brand);}

/* --------------------------------------------------------------------------
   3. 内页 banner：去图化（不再显示 bn5.jpg）→ 品牌绿渐变 + 左对齐标题
   -------------------------------------------------------------------------- */
.bnBox.cateBn{
  height:clamp(180px,24vw,300px);
  max-width:100%;
  padding:0;
  display:flex;
  align-items:center;
  background:
    radial-gradient(120% 150% at 10% 0%, rgba(255,255,255,.20) 0%, rgba(255,255,255,0) 55%),
    linear-gradient(135deg,#06a95a 0%,#059e53 48%,#048847 100%);
  overflow:hidden;
}
.bnBox.cateBn .cateBnImg{width:100%;}
.bnBox.cateBn img{display:none;}                     /* 隐藏 bn5.jpg */
.bnBox.cateBn .text{
  position:static;
  top:auto;
  left:auto;
  transform:none;
  width:100%;
  max-width:var(--maxw);
  margin:0 auto;
  padding:0 24px;
  text-align:left;
  color:#fff;
}
.bnBox.cateBn .text h3{
  font-weight:700;
  font-size:34px;
  line-height:1.25;
  letter-spacing:.02em;
  text-shadow:0 2px 12px rgba(0,0,0,.12);
}
.bnBox.cateBn .text p{opacity:.9;}

/* --------------------------------------------------------------------------
   3b. 栏目背景图：每栏目一张，按栏目 id 命名，放 /static/bjsimiao/images/banner/{id}.jpg
   模板只在图片文件存在时才加 .hasBn 类与 --bn-img 变量（缺图 = 零 404 请求）；
   图片层叠在品牌绿渐变之上，最上层再压一层左侧遮罩，保证白字标题可读；
   没有图的栏目整块回落为 §3 的纯绿渐变，观感与改造前完全一致。
   -------------------------------------------------------------------------- */
.bnBox.cateBn.hasBn{
  background-image:
    linear-gradient(90deg,rgba(3,45,24,.66) 0%,rgba(3,45,24,.44) 42%,rgba(3,45,24,.12) 100%),
    var(--bn-img),
    radial-gradient(120% 150% at 10% 0%, rgba(255,255,255,.20) 0%, rgba(255,255,255,0) 55%),
    linear-gradient(135deg,#06a95a 0%,#059e53 48%,#048847 100%);
  background-size:auto, cover, auto, auto;
  /* 图片四向居中：cover 的裁切左右/上下对称，构图只需按「中间安全区」出图，
     窄屏（180px 高）与宽屏（≥1250px 恒 300px 高）都不必再设特例。 */
  background-position:0 0, center center, 0 0, 0 0;
  background-repeat:no-repeat;
}
@media print{
  /* 打印不印大图；文字转深色（否则白字落在白纸上不可见） */
  .bnBox.cateBn.hasBn{background-image:none;}
  .bnBox.cateBn .text{color:var(--ink);}
  .bnBox.cateBn .text h3{text-shadow:none;}
}

/* --------------------------------------------------------------------------
   4. 面包屑
   -------------------------------------------------------------------------- */
.breadcrumb{
  max-width:1400px;
  padding:14px 10px;
  color:var(--muted);
  border-bottom:1px solid var(--line);
}
body:has(.article-box) .breadcrumb{max-width:var(--maxw);padding-left:0;padding-right:0;}
.breadcrumb a{color:var(--muted);}
.breadcrumb a:hover{color:var(--brand);}

/* --------------------------------------------------------------------------
   5. 子栏目胶囊 tab
   -------------------------------------------------------------------------- */
.subcate li a{
  background:var(--surface);
  border:1px solid var(--line);
  color:var(--body);
}
.subcate li a:hover,.subcate li.active a{
  background:var(--brand);
  border-color:var(--brand);
  color:#fff;
}
.article:has(.article-box) .subcate{max-width:var(--maxw);margin:26px auto 14px;padding-left:0;padding-right:0;}

/* --------------------------------------------------------------------------
   6. 文章主体（单页 + 内容详情页）
   -------------------------------------------------------------------------- */
.article-box{
  max-width:var(--maxw);
  margin:28px auto 24px;
  padding:30px 38px 34px;
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:var(--shadow-sm),var(--hairline);
}
.article-top{border-bottom:1px solid var(--line);padding:4px 0 16px;}
.article-tit{font-size:28px;line-height:1.35;font-weight:700;color:var(--ink);letter-spacing:.01em;}
.article-mt span,.article-mt span a{color:var(--muted);}
.article-mt span a:hover{color:var(--brand);}

.article-main{
  font-size:15.5px;
  line-height:1.9;
  color:var(--body);
}
.article-main img{border-radius:8px;margin:8px auto;max-width:100%;height:auto;}
.article-main h2,.article-main h3,.article-main h4,.article-main h5{color:var(--ink);}
.article-main h2{
  font-size:22px;
  line-height:1.5;
  border-left:5px solid var(--brand);
  padding-left:12px;
}
.article-main h3{
  font-size:19px;
  line-height:1.55;
  padding-left:12px;
  border-left:4px solid var(--brand);
}
.article-main h4{font-size:16.5px;}
.article-main a{color:var(--brand-d);}
.article-main a:hover{color:var(--brand);}
.article-main div{text-indent:2em;padding:2px 0;line-height:1.9;}
.article-main p{margin-bottom:12px;text-indent:2em;}
/* 正文里的图片单独区分：不跟随段落/容器的 2em 首行缩进，改为一律居中。
   只命中「整块只有一张图」的段落（图文混排的不受影响）；旧浏览器不支持 :has() 时自动回退为原状。
   注：原先是 <p style="text-align:center"><img></p>，被 text-indent 顶偏 2em，右侧还会溢出被切。 */
.article-main p:has(> img:only-child),
.article-main p:has(> a:only-child > img:only-child),
.article-main div:has(> img:only-child),
.article-main div:has(> a:only-child > img:only-child){
  text-indent:0;
  text-align:center;
  padding-left:0;
  padding-right:0;
}
.article-main li{margin-bottom:8px;}
.article-main blockquote{
  background:var(--brand-l);
  border-left:6px solid var(--brand);
  color:var(--ink);
  border-radius:8px;
}
.article-main blockquote p{color:var(--ink);}
.article-main table{border-color:var(--line);}
.article-main table th{background-color:var(--brand-l);color:var(--ink);}
.article-main table td,.article-main table th{border-color:var(--line);}
/* 定向中和 Word 粘贴进来的白底内联样式（不与其业务文字色冲突） */
.article-main br[style],.article-main span[style],.article-main font[style],.article-main div[style]{
  background-color:transparent !important;
}
.article-copyright{background:var(--bg);color:var(--muted);border-radius:8px;}

/* 上一篇 / 下一篇 */
.post-nav{
  margin-top:26px;
  padding-top:18px;
  border-top:1px solid var(--line);
}
.post-nav div{color:var(--muted);line-height:2.1;}
.post-nav div a{color:var(--ink);}
.post-nav div a:hover{color:var(--brand);}
.post-nav div a:hover i{color:var(--brand);}

/* --------------------------------------------------------------------------
   7. 「猜你喜欢」相关阅读卡片
   -------------------------------------------------------------------------- */
.post.relates.imgRel .title{text-indent:0;margin-top:16px;}
.post.relates.imgRel .title h3{
  font-size:18px;
  font-weight:700;
  color:var(--ink);
  float:none;
  padding-left:12px;
  border-left:4px solid var(--brand);
}
.post.relates.imgRel .PostShow li{
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:12px;
  box-shadow:var(--shadow-sm);
  transition:transform .25s var(--ease),box-shadow .25s var(--ease),border-color .25s var(--ease);
}
.post.relates.imgRel .PostShow li:hover{
  transform:translateY(-2px);
  border-color:var(--brand);
  box-shadow:var(--shadow-md);
}
.post.relates.imgRel .PostShow li h4 a{color:var(--ink);}
.post.relates.imgRel .PostShow li h4 a:hover{color:var(--brand);}
.post.relates.imgRel .PostShow li i{color:var(--muted);}

/* --------------------------------------------------------------------------
   8. 新闻列表卡片（列表页 / 栏目页）
   -------------------------------------------------------------------------- */
.post.news li{
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:var(--radius);
  overflow:hidden;
  box-shadow:var(--shadow-sm);
  transition:transform .25s var(--ease),box-shadow .25s var(--ease),border-color .25s var(--ease);
}
.post.news li:hover{
  transform:translateY(-2px);
  border-color:var(--brand);
  box-shadow:var(--shadow-md);
}
.post.news .PostNews .imgBox{background:#fff;}
.post.news li .imgText,
.post.news .owl-carousel .item .imgText{background:transparent;}
.post.news li:hover .imgText,
.post.news .owl-carousel .item:hover .imgText{background:transparent;}
.post.news .imgText h4 a{color:var(--ink);font-weight:600;}
.post.news .imgText p{color:var(--muted);}
.post.news .imgText i a{color:var(--brand);}
.post.news li:hover .imgText a,
.post.news li:hover .imgText i a,
.post.news li:hover .imgText p{color:var(--brand);}

/* --------------------------------------------------------------------------
   9. 列表标题 / 标签 / 分页 / 搜索等零散组件
   -------------------------------------------------------------------------- */
/* 白字标题在浅底上会消失，统一改深色 */
.post .postTitle h3{color:var(--ink);}
.post .postTitle span,.post .postTitle .title1{color:var(--muted);}
.post .postTitle:after{background:var(--line);}
/* 卡片标题默认继承 h4 深色（避免全局链接色把标题染绿） */
.post li h4 a,.post .PostShow .item h4 a,.imgShow h4 a{color:inherit;}
.post li h4 a:hover,.post .PostShow .item h4 a:hover,.imgShow h4 a:hover{color:var(--brand);}
/* 团队 / 旗下企业等图片卡片列表（.list-center）：整组左对齐
   原为 justify-content:center —— 最后一行不满时会被居中（/subsidiaries/ 第 2 行即如此）。
   基样式里该规则同时存在于 style.css 与 style_tema.css，此处统一覆盖。 */
.list-center .PostShow ul{justify-content:flex-start;}
.post .more a:hover{background:var(--brand);color:#fff;border-color:var(--brand);}
.post .more a:after{background:var(--brand);}
.tag-box .tag-a a{background:var(--brand-l);color:var(--brand-d);}
.tag-box .tag-a a:hover{background:var(--brand);color:#fff;}
.pageNav a:hover{background:var(--brand);color:#fff;border-color:var(--brand);}
.pageNav span{background:var(--brand);color:#fff;border-color:var(--brand);}
.pagess ul li{background:var(--surface);border:1px solid var(--line);color:var(--body);border-radius:6px;}
.pagess ul li a{color:var(--body);}
.pagess ul li:hover{background:var(--brand);border-color:var(--brand);}
.pagess ul li:hover a{color:#fff;}
/* 当前页：CMS 分页输出的是 <li class="active">（如 /partners/list-2.html 的「2」）。
   基样式只写了 .thisclass（无模板使用，属遗留），于是「选中项」和普通项长得一模一样 ——
   这里补上选中态：品牌绿实底 + 白字，与 hover、.pageNav span 保持同一套语言。
   注意 .pagess 是各栏目列表页共用的分页容器，故此规则同时修好 /news/ 等页面。 */
.pagess ul li.active{background:var(--brand);border-color:var(--brand);}
.pagess ul li.active a,.pagess ul li.active a:hover{color:#fff;}
input.button,#cancel-reply{background-color:var(--brand);}
.list-search p a:hover,.list-search p strong{color:var(--brand);}
.divBrchives li:hover a{color:var(--brand);}
.schList li a:hover{background:var(--brand);}
#browse{background:var(--brand);}
#userMenu li.current-menu-item{border-left-color:var(--brand);}
#userMenu li.current-menu-item a{color:var(--brand);}
#backTop span.ft-qq small.qqlist a:hover{color:var(--brand);}
.post .PostMix .cateTab span.button.mixitup-control-active{background:var(--brand);}
.PostBox.process li:hover .listId,.PostBox.process li:hover .iBg{background:var(--brand);}
.contactBg .social a:hover{background:var(--brand);}
.contactBg .mapBtn{background:var(--brand);}

/* 搜索页组件 */
.search-bar form:focus-within{border-color:var(--brand);}
.search-bar .search-submit:hover{color:var(--brand);}
.search-filter-box .filter-tag:hover,.search-sort-box .filter-tag:hover{background:var(--brand);border-color:var(--brand);}
.search-filter-box .filter-tag.active,.search-sort-box .filter-tag.active{background:var(--brand);border-color:var(--brand);}
.search-results-list .search-item-text h3 a:hover{color:var(--brand);}
.search-results-ul .search-title a:hover{color:var(--brand);}
.search-results-ul .search-post-tags li a:hover{background:var(--brand);}

/* 首页 hero / 服务 hover（金色按钮 → 品牌绿） */
#owl0 .text a span{border-color:var(--brand);background:var(--brand);}
.owl1.owl-carousel .item.advIcon:hover .imgBox{background:var(--brand);}

/* --------------------------------------------------------------------------
   10. 页脚（纯黑 → 品牌深绿，文字对比度 ≥ 4.5:1）
   -------------------------------------------------------------------------- */
.footer{
  background:linear-gradient(180deg,#059e53 0%,#048847 100%);
  color:rgba(255,255,255,.88);
}
.footer a{color:rgba(255,255,255,.88);}
.footer a:hover{color:#fff;}
.footer-text{padding:32px 10px;color:rgba(255,255,255,.88);}

/* --------------------------------------------------------------------------
   11. 窄屏微调（PC 模板在小窗口下的观感）
   -------------------------------------------------------------------------- */
@media screen and (max-width:800px){
  .article-box{padding:22px 18px 26px;}
  .article-tit{font-size:23px;}
  .article-main{font-size:15px;}
  .bnBox.cateBn .text h3{font-size:26px;}
}

/* --------------------------------------------------------------------------
   12. 首页视觉体系（深灰通用底色 → 品牌浅色体系）
   首页由六个 .PostBox 区块拼成，原先各自是 #2D2D2D / #181818 的深灰块。
   这里整体改造为与内页一致的「浅底 + 白卡 + 品牌绿」：
     · 区块底色交替 #fff / var(--bg)，卡片白底 + 细边 + 柔和阴影
     · 服务图标改为品牌绿实心圆（白线图标原本为深色底设计，浅底会看不见）
     · 简介区左侧深色照片 → 品牌绿渐变数据面板
     · hero 大图叠品牌绿电影感渐层 + 白色胶囊按钮
   .PostBox 仅出现在 index.html（首页），故可安全整体重做。
   -------------------------------------------------------------------------- */
.PostBox{color:var(--body);}
.PostBox.advBg{background:#fff;}
.PostBox.serviceBg{background:var(--bg);}
.PostBox.caseBg{background:#fff;}
.PostBox.aboutBg{background:var(--bg);}
.PostBox.newsBg{background:#fff;}
.PostBox.hbBg{background:var(--bg);}
.PostBox .post{padding:84px 20px;}

/* 板块间距统一（简介区是整幅分栏，单独处理） */
.PostBox.about .post{padding:0;max-width:100%;}

/* ---- 板块副标题：绿色小字 + 灰色说明（原为白字） ---- */
.PostBox .post .postTitle .title1{
  display:block;
  margin-top:9px;
  font-size:12px;
  font-weight:600;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--brand);
  opacity:1;
}
.PostBox .post .postTitle .title2{
  display:block;
  margin-top:9px;
  width:auto;
  font-size:13.5px;
  color:var(--muted);
  opacity:1;
}

/* ---- 服务区：品牌绿实心圆 + 白线图标 ---- */
.PostBox.advBg .owl-carousel{padding:0;}
.owl1.owl-carousel .item.advIcon{text-align:center;padding:0 12px;}
.owl1.owl-carousel .item.advIcon .imgBox{
  width:112px;height:112px;margin:0 auto 22px;
  border-radius:50%;
  background:var(--brand);
  box-shadow:0 12px 26px -12px rgba(5,158,83,.55);
  display:flex;align-items:center;justify-content:center;
  -webkit-transition:transform .3s var(--ease),box-shadow .3s var(--ease),background .3s var(--ease);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease),background .3s var(--ease);
}
.owl1.owl-carousel .item.advIcon img{
  opacity:1!important;
  width:46px;height:46px;object-fit:contain;
  -webkit-transform:none!important;transform:none!important;
}
.owl1.owl-carousel .item.advIcon:hover .imgBox{
  background:var(--brand-d);
  -webkit-transform:translateY(-5px);transform:translateY(-5px);
  box-shadow:0 20px 34px -14px rgba(5,158,83,.62);
}
.owl1.owl-carousel .item.advIcon .imgText{padding-top:0;}
.owl1.owl-carousel .item.advIcon .imgText h4{
  font-size:17px;font-weight:700;color:var(--ink);
  margin:0 0 9px;padding:0;overflow:visible;white-space:normal;text-overflow:clip;
}
.owl1.owl-carousel .item.advIcon .imgText h4 a{color:inherit;}
.owl1.owl-carousel .item.advIcon .imgText p{
  font-size:13.5px;line-height:1.85;color:var(--muted);padding:0 6px;
}

/* ---- 资质荣誉 / 党建 / 新闻：白卡 ---- */
#owl1.owl-carousel{padding:0;}
#owl1.owl-carousel .item,
.PostBox.newsBg .owl3 .item{
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:14px;
  box-shadow:var(--shadow-sm);
  -webkit-transition:transform .28s var(--ease),box-shadow .28s var(--ease),border-color .28s var(--ease);
  transition:transform .28s var(--ease),box-shadow .28s var(--ease),border-color .28s var(--ease);
}
#owl1.owl-carousel .item:hover,
.PostBox.newsBg .owl3 .item:hover{
  -webkit-transform:translateY(-5px);transform:translateY(-5px);
  border-color:var(--brand);
  box-shadow:var(--shadow-md);
}
#owl1.owl-carousel .item .post-img,
.PostBox.newsBg .owl3 .item .imgBox{
  border-radius:10px;overflow:hidden;background:var(--bg);
}
/* 荣誉是证书图，用 contain 避免裁掉内容 */
#owl1.owl-carousel .item .post-img img{object-fit:contain;}
#owl1.owl-carousel .item h4{margin:14px 0 6px;padding:0 2px;}
#owl1.owl-carousel .item h4 a{color:var(--ink);font-weight:600;}
#owl1.owl-carousel .item i.h2{color:var(--muted);font-size:12px;padding:0 2px;text-align:left;}

.PostBox.newsBg .post.news{padding:84px 20px;}
.PostBox.newsBg .post.news .PostNews{margin-right:0;}
.PostBox.newsBg .owl3{padding:0;}
.PostBox.newsBg .owl3 .item{overflow:hidden;padding:0;}
.PostBox.newsBg .owl3 .item .imgBox{border-radius:0;}
.PostBox.newsBg .owl3 .item .imgBox img{
  width:100%!important;height:100%!important;
  max-width:none;max-height:none;
  object-fit:cover;
}
/* 无缩略图的文章：隐藏「暂无图片」占位水印，露出统一的浅绿底，观感更整洁。
   注：owl 懒加载插件会给 img 写内联 opacity，因此这里必须用 !important 压制。 */
.PostBox .owl3 .imgBox img[src*="nopic"],
.PostBox .owl3 .imgBox img[data-src*="nopic"],
#owl1.owl-carousel .item .post-img img[src*="nopic"]{opacity:0!important;}
/* 无缩略图的新闻卡：给一个「设计过的」品牌占位（浅绿渐变 + 同心圆纹样），避免一片空白。
   用 ::before —— ::after 被基样式用于撑 75% 宽高比（800×600），不能占用；z-index 压在图片之上、链接之下不影响点击。 */
.PostBox.newsBg .owl3 .item .imgBox:has(img[src*="nopic"]),
.PostBox.newsBg .owl3 .item .imgBox:has(img[data-src*="nopic"]){
  background:linear-gradient(135deg,#eefbf3 0%,#d6f5e1 100%);
}
.PostBox.newsBg .owl3 .item .imgBox:has(img[src*="nopic"]):before,
.PostBox.newsBg .owl3 .item .imgBox:has(img[data-src*="nopic"]):before{
  content:"";position:absolute;left:0;top:0;right:0;bottom:0;z-index:2;pointer-events:none;
  background:
    radial-gradient(circle at 50% 50%, rgba(5,158,83,.18) 0 15%, rgba(5,158,83,0) 16%),
    radial-gradient(circle at 50% 50%, rgba(5,158,83,.11) 0 27%, rgba(5,158,83,0) 28%),
    radial-gradient(circle at 50% 50%, rgba(5,158,83,.06) 0 39%, rgba(5,158,83,0) 40%);
}
.PostBox.newsBg .owl3 .imgText{padding:16px 18px 40px;background:transparent;text-align:left;}
.PostBox.newsBg .owl3 .imgText h4 a{color:var(--ink);font-weight:600;}
.PostBox.newsBg .owl3 .imgText p{color:var(--muted);}
.PostBox.newsBg .owl3 .imgText p.time{color:var(--muted);}
.PostBox.newsBg .owl3 .imgText i a{color:var(--brand);}
.PostBox.newsBg .owl3 .item:hover .imgText a,
.PostBox.newsBg .owl3 .item:hover .imgText i a,
.PostBox.newsBg .owl3 .item:hover .imgText p{color:var(--brand);}

/* 党建照片卡：圆角 + 阴影（叠层文字仍为白） */
.PostBox.caseBg .post .PostMix li .post-img{
  border-radius:12px;overflow:hidden;box-shadow:var(--shadow-sm);
  -webkit-transition:transform .28s var(--ease),box-shadow .28s var(--ease);
  transition:transform .28s var(--ease),box-shadow .28s var(--ease);
}
.PostBox.caseBg .post .PostMix li:hover .post-img{
  -webkit-transform:translateY(-3px);transform:translateY(-3px);
  box-shadow:var(--shadow-md);
}
.PostBox.caseBg .post li h4 a,.PostBox.caseBg .post li i{color:#fff;}

/* ---- 思妙简介：左侧深色照片 → 品牌绿渐变数据面板 ---- */
.PostBox.about .postLeft{
  background-image:none!important;
  background:linear-gradient(135deg,#06a95a 0%,#059e53 52%,#048847 100%)!important;
  border-radius:0 20px 20px 0;   /* 左边缘贴齐视口，只圆右侧两角 */
  overflow:hidden;
}
.PostBox.about .postLeft .mask{
  background:radial-gradient(120% 130% at 18% 8%, rgba(255,255,255,.20) 0%, rgba(255,255,255,0) 58%);
}
.PostSl li .slNumber{color:#fff;font-size:44px;font-weight:700;line-height:1.05;}
.PostSl li .slNumber em{color:var(--brand-l);opacity:1;}
.PostSl li .slTitle{color:rgba(255,255,255,.85);font-size:13.5px;letter-spacing:.05em;}

/* 数字网格定宽居中：原为铺满卡片宽度，卡片一宽 182 与 1268 就被拉开近 470px，显得散。
   注意要显式 display:block——基样式是 inline-block，margin:auto 对 inline-block 不生效。 */
.PostBox.about .PostSl{
  display:block;
  position:static;
  top:auto;
  left:auto;
  width:430px;
  max-width:100%;
  margin:0 auto;
  -webkit-transform:none;
  transform:none;
}

/* 标题与正文之间原为空档 61px（标题 pb20 + mb11 + 正文 pt30），收紧到约 26px */
.PostBox.about .postRight .postTitle{padding-bottom:10px;margin-bottom:8px;}
/* 正文：上限 860px，避免宽屏一行 60+ 字；上下留白收紧 */
.PostBox.about .post .PostText{color:var(--body);font-size:14.5px;line-height:1.9;width:100%;max-width:860px;padding:8px 0 14px;}

/* ≥1025px：两栏并排。绿卡贴齐视口左边缘、固定占比（不再吃掉剩余宽度而伸得过右）；
   四个数字在卡内定宽居中；右栏弹性，正文上限 860px。 */
@media screen and (min-width:1025px){
  .PostBox.about .post .postAbout{
    display:-webkit-flex;
    display:flex;
    -webkit-align-items:center;
    align-items:center;
    padding:64px 24px 64px 0;
    gap:clamp(36px,4vw,60px);
  }
  .PostBox.about .postLeft{
    position:static;
    width:auto;
    height:auto;
    -webkit-flex:0 0 42%;
    flex:0 0 42%;
    min-width:0;
    padding:64px 0;
  }
  .PostBox.about .postRight{
    padding:0;
    -webkit-flex:1 1 auto;
    flex:1 1 auto;
    min-width:0;
  }
}
/* ≤1024px：改为上下堆叠（绿卡在上、简介在下），避免“短卡片 + 超长文字列”的不平衡 */
@media screen and (max-width:1024px){
  .PostBox.about .post .postAbout{display:block;padding:48px 0;}
  .PostBox.about .postLeft{
    position:relative;
    top:auto;
    left:auto;
    width:100%;
    height:auto;
    padding:44px 0;
  }
  .PostBox.about .postRight{
    width:100%;
    max-width:780px;
    margin:26px auto 0;
    padding:0;
  }
  .PostBox.about .postRight .postTitle{margin-top:0;}
}
/* 简介正文分段：模板会把后台内容按 <br> 切成 <p>，这里给段间留出行距 */
.PostBox.about .post .PostText p{margin:0 0 14px;}
.PostBox.about .post .PostText p:last-child{margin-bottom:0;}
.PostBox.about .post .more a{
  background:var(--brand);color:#fff;border:0;border-radius:999px;
  padding:11px 28px;font-size:14px;font-weight:600;text-shadow:none;
  box-shadow:0 12px 26px -12px rgba(5,158,83,.6);
  -webkit-transition:background .25s,transform .25s var(--ease);
  transition:background .25s,transform .25s var(--ease);
}
.PostBox.about .post .more a:hover{background:var(--brand-d);color:#fff;-webkit-transform:translateY(-2px);transform:translateY(-2px);}
.PostBox.about .post .more a:after{background:transparent;display:none;}

/* ---- 合作伙伴：白色 logo 卡（保留翻转） ---- */
.PostBox.hbBg .hbList.owl-carousel{padding:0;}
.PostBox.hbBg .flipper{width:176px;height:86px;}
.PostBox.hbBg .front,.PostBox.hbBg .back{
  display:flex;align-items:center;justify-content:center;
  background:var(--surface);border:1px solid var(--line);border-radius:12px;
  padding:10px;
  box-shadow:0 4px 14px -6px rgba(11,26,43,.20);
  -webkit-transition:border-color .25s,box-shadow .25s;
  transition:border-color .25s,box-shadow .25s;
}
.PostBox.hbBg .front{filter:grayscale(100%);-webkit-filter:grayscale(100%);}
/* 让 logo 填满卡片（原为按原图尺寸显示，偏小） */
.PostBox.hbBg .front img,.PostBox.hbBg .back img{
  max-width:none;max-height:none;width:100%;height:100%;object-fit:contain;
}
.PostBox.hbBg .flip-container:hover .front,
.PostBox.hbBg .flip-container:hover .back{border-color:var(--brand);box-shadow:var(--shadow-sm);}

/* ---- 浅底区块里的轮播控件（原为白色，浅底上不可见） ---- */
.PostBox .owl-carousel .owl-nav i{color:var(--ink);opacity:.55;}
.PostBox .owl-carousel .owl-nav button:hover i{color:var(--brand);opacity:1;}
.PostBox .owl-carousel .owl-dots .owl-dot span{background:rgba(5,158,83,.25)!important;}
.PostBox .owl-carousel .owl-dots .owl-dot.active span{background:var(--brand)!important;}

/* ---- hero：白色胶囊按钮 ---- */
.sliderbox{position:relative;}
#owl0 .item{position:relative;}
/* 2026-10-03 按反馈「取消轮播的渐变效果」：
   原有两处渐变叠层 —— ①照片上的暗色压暗渐变；②底部 190px 白色渐隐。
   现全部去掉，照片原样呈现、与下一区块硬切。
   白字标题的可读性改由轻量文字阴影兜底（亮底照片上也不至于糊）。 */
#owl0 .item:after{display:none;}
#owl0 .text h2,#owl0 .text h4,#owl0 .text h3{text-shadow:0 2px 18px rgba(0,0,0,.45);}
#owl0 .text{z-index:3;color:#fff;}
#owl0 .text p{color:rgba(255,255,255,.92);text-shadow:0 2px 12px rgba(0,0,0,.35);}
#owl0 .text a span{
  border:0;border-radius:999px;
  background:#fff;color:var(--brand-d);
  padding:13px 38px;margin-top:26px;
  font-size:15px;font-weight:600;
  box-shadow:0 12px 30px -12px rgba(0,0,0,.5);
  -webkit-transition:transform .25s var(--ease),background .25s,color .25s,box-shadow .25s;
  transition:transform .25s var(--ease),background .25s,color .25s,box-shadow .25s;
}
#owl0 .text a span:after{display:none;}
#owl0 .text a:hover span{
  background:var(--brand);color:#fff;
  -webkit-transform:translateY(-2px);transform:translateY(-2px);
  box-shadow:0 18px 38px -14px rgba(5,158,83,.7);
}
/* hero 底部白色渐隐：2026-10-03 按反馈取消（原来是一条 190px「透明→纯白」渐变）。
   如日后需要重新衔接，把下面这条改回渐变即可。 */
.sliderbox:after{display:none;}

/* --------------------------------------------------------------------------
   14. 首页标题层级修正（hero h4→h1、板块 h3→h2）后的样式镜像 + 语义容器
   目的：让首页拥有真正的 <h1>（原 h1 是 logo），板块用 <h2>，不再 h3/h4 倒挂。
   做法：把原 h3/h4 的样式按原值补回新标签，视觉保持不变。
   -------------------------------------------------------------------------- */
main{display:block;}
/* 视觉隐藏但可被读屏/搜索引擎读到（首页用于承载唯一的 h1） */
.v2-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;}
.PostBox .post .postTitle h2{
  position:relative;
  display:inline-block;
  font-size:30px;
  font-weight:700;
  line-height:1.3;
  letter-spacing:.01em;
  color:var(--ink);
  text-indent:0;
  opacity:1;
  margin:0;
  padding-top:24px;
}
/* 标题上方的小绿条（替代原来的白色下划线） */
.PostBox .post .postTitle h2:before{
  content:"";
  position:absolute;
  left:50%;top:0;
  width:34px;height:3px;border-radius:2px;
  background:var(--brand);
  -webkit-transform:translateX(-50%);transform:translateX(-50%);
}
.PostBox .post .postTitle h2 a{color:inherit;}
.PostBox .post .postTitle h2 i{display:none;}
.PostBox .post .postTitle:after{display:none;}
#owl0 .text :is(h1,h2){
  font-size:clamp(30px,3.6vw,54px);
  color:#fff;
  font-family:"Microsoft YaHei","PingFang SC",Helvetica,Arial,sans-serif;
  font-weight:700;
  line-height:1.22;
  letter-spacing:.02em;
  text-shadow:0 4px 26px rgba(0,0,0,.35);
  margin:0;
}
@media screen and (max-width:960px){
  .PostBox .post .postTitle h2{font-size:26px;}
  #owl0 .text :is(h1,h2){font-size:44px;}
}
@media screen and (max-width:749px){
  .PostBox .post .postTitle h2{font-size:23px;}
  #owl0 .text :is(h1,h2){font-size:34px;}
}
@media screen and (max-width:640px){
  .PostBox .post .postTitle h2{font-size:21px;}
  #owl0 .text :is(h1,h2){font-size:26px;}
}

/* --------------------------------------------------------------------------
   13. 发展历程（.fzlc_list）时间轴重设计
   原状：白色 20% 透明的竖轴（浅底上几乎不可见）、蓝色圈点、无卡片、行距过大。
   现改为：品牌绿渐变细轴 + 品牌绿轴点（白环 + 光晕）+ 事件白卡 + 最新一条强调。
   仅 /history/ 使用该组件，且规则只存在于 style.css，故可安全统一覆盖。
   -------------------------------------------------------------------------- */
.fzlc_list .list{padding:10px 0 6px;}

/* 竖轴 */
.fzlc_list .list .line{
  left:152px;
  width:2px;
  top:10px;
  bottom:10px;
  background:linear-gradient(180deg,
    rgba(5,158,83,0) 0%,
    var(--brand) 7%,
    var(--brand) 93%,
    rgba(5,158,83,0) 100%);
  opacity:1;
  border-radius:2px;
}

.fzlc_list ul li{padding:9px 0;}

/* 日期列：品牌色加粗，靠向时间轴 */
.fzlc_list ul li > span{
  width:150px;
  margin-right:35px;
  padding-top:13px;
  padding-right:13px;   /* 给轴点留出间距，避免与日期末字重叠 */
  font-size:19px;
  font-weight:700;
  line-height:1.45;
  letter-spacing:.02em;
  color:var(--brand-d);
  text-align:right;
}

/* 轴点：替换原来的蓝色圈点 */
.fzlc_list ul li > span:after{
  width:15px;
  height:15px;
  border:3px solid #fff;
  background:var(--brand);
  box-shadow:0 0 0 3px rgba(5,158,83,.16);
  top:19px;
  right:-11px;
  margin-top:0;
}

/* 事件卡 */
.fzlc_list ul li .text{
  min-height:0;
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:12px;
  padding:14px 20px;
  box-shadow:0 1px 2px rgba(11,26,43,.04), 0 8px 18px -12px rgba(11,26,43,.16);
  transition:border-color .25s var(--ease), box-shadow .25s var(--ease), transform .25s var(--ease);
}
.fzlc_list ul li .text p{
  margin:0;
  font-size:14.5px;
  line-height:1.8;
  color:var(--body);
}
.fzlc_list ul li:hover .text{
  border-color:var(--brand);
  box-shadow:0 2px 6px -1px rgba(11,26,43,.06), 0 14px 30px -12px rgba(5,158,83,.28);
  transform:translateX(3px);
}

/* 最新一条（列表首项）强调 */
.fzlc_list ul li:first-child > span{color:var(--brand);}
.fzlc_list ul li:first-child > span:after{box-shadow:0 0 0 4px rgba(5,158,83,.24);}
.fzlc_list ul li:first-child .text{
  border-color:rgba(5,158,83,.38);
  background:linear-gradient(180deg,var(--brand-l) 0%,#fff 62%);
}

/* 窄屏：日期移到卡片上方，轴移至左侧 */
@media screen and (max-width:768px){
  .fzlc_list .list .line{left:6px;top:6px;bottom:6px;}
  .fzlc_list ul li > span{
    width:auto;
    float:none;
    margin:0 0 8px 24px;
    padding-top:0;
    text-align:left;
  }
  .fzlc_list ul li > span:after{top:2px;right:auto;left:-24px;}
  .fzlc_list ul li .text{margin-left:24px;}
}

/* --------------------------------------------------------------------------
   15. /partners/ 翻面卡：logo 图压掉卡片底边那条 1px 横线（鼠标指向后可见）

   成因（几何）：
     · 卡片边框 + 内边距都画在 .flipper 上（style_partner.css：300×150 + 1px 边 + 20px 内距）；
     · 两个面层 .front/.back 是 position:absolute + width/height:100%，
       它们的 100% 参照的是 .flipper 的 **padding box** —— 只有 298×148；
     · 而 300×150 的 logo 经全局 img{max-width:100%} 缩放后是 **298×149** ——
       正好比面层高 1px，多出来的那一行像素压在卡片底边框上。
   表现：
     · 默认态 .front 只有 opacity:.2，底边框能透出来（所以平时看不出问题，
       只是底边比其他三边淡）；
     · hover 翻到 .back（不透明）后，底边框被 logo 的白底彻底盖住 ——
       视觉上就是「指向图片后，底下那条横线没了」。
   修法：给两层里的 logo 都加 max-height:100%，让图整体缩进面层内（296×148），
        四边边框恢复一致。只作用于 /partners/ 列表页结构（全站仅 home/partner.html
        使用 .flip-container），首页 logo 墙用的是 .PostBox.hbBg / .logo-cell，不受影响。
   -------------------------------------------------------------------------- */
.post.list .flip-container .front img,
.post.list .flip-container .back img{max-height:100%;}

/* --------------------------------------------------------------------------
   16. 「服务图片」栏目列表（home/images.html → /ip/、/human_resources/、
       /innovation_park/、/internet_plus/ 四个服务领域页）
   需求：服务图卡原先没有外框、卡图比例为 3:2（素材原始尺寸 800×528）。
        现给卡图加白卡外框（细线 + 圆角 + 柔和阴影），并把卡图统一为
        800×600（4:3）；hover 时整卡上浮、描边转品牌绿、阴影加深，标题同步变色。
   说明（三条硬性约束，改前必读）：
     ① 容器专属类 .imgCards 只加在 images.html 上 —— 同为 .list-center 的
        tema.html（/team/ 团队页）结构不同（.pic 内含 .msk 遮罩 + 放大镜 + h4 标题），
        故不共用选择器，两边互不影响。
     ② 基样式 style.css:680 `.post .PostShow li{overflow:hidden}` 会裁掉
        .post-img 左右两侧的阴影，此处仅在 .imgCards 范围内放行为 visible；
        图片放大动效仍由 .post-img 自身的 overflow:hidden 裁剪，不受影响。
     ③ 卡图比例沿用基样式 .post-img:after 的 padding-top 机制，只改数值；
        img 基样式只有 position:absolute/top/left（无宽高），此处补 width/height:100%
        + object-fit:cover —— 原图 800×528 左右各约 7% 为白底留白，cover 裁掉的
        正是这段白边，图标主体与「服务名称」文字完整保留。
   -------------------------------------------------------------------------- */
.imgCards .PostShow li{overflow:visible;}
.imgCards .PostShow li .post-img{
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:var(--surface);
  box-shadow:0 1px 2px rgba(11,26,43,.05),0 8px 20px -12px rgba(11,26,43,.22);
  transition:border-color .35s var(--ease),box-shadow .35s var(--ease),transform .35s var(--ease);
}
.imgCards .PostShow li .post-img:after{padding-top:75%;}          /* 800×600 → 4:3 */
.imgCards .PostShow li .post-img img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.imgCards .PostShow li:hover .post-img{
  border-color:var(--brand);
  box-shadow:0 2px 6px -1px rgba(11,26,43,.08),0 18px 34px -14px rgba(5,158,83,.38);
  transform:translateY(-4px);
}
.imgCards .PostShow li i{
  font-family:inherit;
  font-size:13px;
  color:var(--body);
  line-height:22px;
  height:auto;
  padding:0 6px;
  letter-spacing:.02em;
  transition:color .35s var(--ease);
}
.imgCards .PostShow li:hover i{color:var(--brand);}
/* --------------------------------------------------------------------------
   17. 文章详情页「微信扫一扫分享」二维码块（home/show.html，全站 share 模块文章通用）
   需求：正文底部给出当前页二维码，微信扫码即可在手机上打开本文并转发 / 分享。
   实现要点（改前必读）：
     ① 二维码由 CMS 自带 dr_qrcode($my_web_url, '', 'L', 10) 服务端生成，内容即当前页
        完整 URL（与 <link rel=canonical> / og:url 同源，线上实测
        https://smiao.cn/learning_center/269.html）；纯 <img>，不依赖前端 JS 库。
        源图 350×350，此处显示 130×130（≈2.7 倍图，Retina 下清晰）。
     ② 本块位于 .article-box 内、.article-main（正文容器）之外，仍显式写 text-indent:0 ——
        基样式与第 6 节对 .article-main 后代有 2em 首行缩进，防止将来挪进正文容器时被顶偏。
     ③ 移动端走 mobile 模板、不含本块；此处只处理 PC 模板在窄窗口下的收窄。
   -------------------------------------------------------------------------- */
.art-share{
  display:flex;
  align-items:center;
  gap:22px;
  margin:28px 0 0;
  padding:20px 24px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:var(--surface);
  box-shadow:var(--shadow-sm);
  text-indent:0;
}
.art-share p{text-indent:0;}
.art-share-qr{
  flex:0 0 auto;
  width:160px;
  height:160px;
  padding:8px;
  box-sizing:border-box;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fff;
}
.art-share-qr img{
  display:block;
  width:100%;
  height:100%;
}
.art-share-txt{min-width:0;}
.art-share-t{
  margin:0 0 8px;
  font-size:17px;
  font-weight:700;
  line-height:1.45;
  color:var(--ink);
}
.art-share-d{
  margin:0;
  font-size:13px;
  line-height:22px;
  color:var(--muted);
}
@media (max-width:768px){
  .art-share{gap:14px;padding:16px;}
  .art-share-qr{width:104px;height:104px;}
  .art-share-t{font-size:15px;}
}
