/* ============================================================
   产品详情页专属样式  product_detail.css
   作用范围：仅 /product_detail/* （由 Html/product_detail.html 单独引入）
   设计语言：延续站点主色 #006fc0，工业 / 能源质感的现代产品阅读版式
   说明：本文件只覆盖产品详情页相关类，不影响新闻/案例/列表等其它页面
   （与 news_detail.css 同属一套视觉体系，但各自独立引入，互不依赖）
   ============================================================ */

:root{
  --brand:#006fc0;
  --brand-dark:#00529a;
  --brand-soft:#e8f2fb;
  --ink:#2c3e50;
  --ink-strong:#15212e;
  --muted:#74808f;
  --line:#e7ecf2;
  --bg:#eef1f5;
  --card:#ffffff;
  --source:#b06a00;
  --radius:14px;
  --shadow:0 10px 30px rgba(20,40,70,.08);
}

/* ---------- 顶部 Banner：保留背景图，收敛高度并加底部渐隐 ---------- */
body .ny_banner_1{
  position:relative;
  min-height:200px;
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
}
body .ny_banner_1::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:0;
  height:60px;
  background:linear-gradient(180deg, rgba(238,241,245,0), var(--bg));
}

/* ---------- 面包屑：与整页 1200px 对齐 ---------- */
body .ny-search-1 .blk-md{max-width:1200px;margin:0 auto;}
body .ny-weiz{max-width:1200px;margin:14px auto 0;font-size:13px;color:var(--muted);}
body .ny-weiz a{color:var(--brand);text-decoration:none;}
body .ny-weiz a:hover{text-decoration:underline;}
body .ny-weiz span{color:#c2cad4;margin:0 6px;}
body .ny-weiz b{color:var(--ink-strong);font-weight:600;}

/* ---------- 标题区 ---------- */
body .pro-da{padding:18px 0 8px;}
body .pro-da-r{
  width:100%!important;
  max-width:1200px;
  margin:0 auto!important;
  float:none!important;
}
body .pro-da-r h1{
  font-size:30px;
  line-height:1.4;
  color:var(--ink-strong);
  font-weight:700;
  text-align:center;
  margin:6px 0 0;
  padding-bottom:22px;
  border-bottom:1px solid var(--line);
  position:relative;
}
body .pro-da-r h1::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-1px;
  transform:translateX(-50%);
  width:64px;
  height:3px;
  border-radius:3px;
  background:var(--brand);
}
body .pro-da-r h2,
body .pro-da-r h3{
  color:var(--ink-strong);
  text-align:left;
  border-left:4px solid var(--brand);
  padding-left:14px;
  font-size:21px;
  line-height:1.5;
  margin:1.6em 0 .6em;
}

/* ---------- 正文卡片 ---------- */
/* 整站通用内容容器为 1200px（.blk-main / .content1 均为 1200px），
   详情页所有内容块统一对齐到 1200px「整页整体宽度」，不再用 960px 内容栏。 */
body .pro-da-canshu{
  width:100%!important;
  max-width:1200px;
  margin:18px auto 0!important;
  border-top:none!important;
  padding-top:6px!important;
}
body .sj_ny_proda{
  width:100%!important;
  /* 站点无全局 box-sizing 重置，样式表默认 content-box：
     若只给 width:100% + padding，卡片实际外宽会变成 1200+96+2=1298px，
     向右溢出正文栏 98px（与下方分页卡、页头标题、面包屑全都对不齐）。
     统一改为 border-box，使「外宽 = 栏宽 1200px」。 */
  box-sizing:border-box!important;
  max-width:1200px;
  margin:0 auto!important;
  background:var(--card);
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:40px 48px 36px;
}

/* ---------- 正文排版 ---------- */
body .sj_ny_proda{
  font-size:16.5px;
  line-height:1.95;
  color:var(--ink);
  word-break:break-word;
}
body .sj_ny_proda p{margin:1.1em 0;}
body .sj_ny_proda img{
  display:block;
  max-width:100%;
  height:auto;
  margin:26px auto;
  border-radius:10px;
  box-shadow:0 6px 18px rgba(20,40,70,.10);
  border:1px solid #eef2f7;
}
body .sj_ny_proda h2,
body .sj_ny_proda h3,
body .sj_ny_proda h4{
  color:var(--ink-strong);
  font-weight:700;
  line-height:1.5;
  margin:1.7em 0 .7em;
}
body .sj_ny_proda h2{font-size:21px;padding-left:14px;border-left:4px solid var(--brand);}
body .sj_ny_proda h3{font-size:18px;}
body .sj_ny_proda h4{font-size:16px;color:var(--brand-dark);}
body .sj_ny_proda strong,
body .sj_ny_proda b{color:var(--brand-dark);font-weight:700;}
body .sj_ny_proda em,
body .sj_ny_proda i{font-style:italic;}
/* 以 ● 开头的要点行做轻量高亮（CMS 中以纯文本 ● 存储） */
body .sj_ny_proda p{position:relative;}
body .sj_ny_proda ul,
body .sj_ny_proda ol{margin:1.1em 0;padding-left:1.6em;}
body .sj_ny_proda li{margin:.5em 0;padding-left:.2em;}
body .sj_ny_proda ul li::marker{color:var(--brand);}
body .sj_ny_proda ol li::marker{color:var(--brand);font-weight:700;}
body .sj_ny_proda blockquote{
  margin:1.4em 0;
  padding:14px 20px;
  background:var(--brand-soft);
  border-left:4px solid var(--brand);
  border-radius:0 8px 8px 0;
  color:#33506b;
}
body .sj_ny_proda table{
  width:100%;
  border-collapse:collapse;
  margin:1.4em 0;
  font-size:15px;
  box-shadow:0 2px 10px rgba(20,40,70,.05);
}
body .sj_ny_proda thead th,
body .sj_ny_proda th,
body .sj_ny_proda td{border:1px solid var(--line);padding:10px 14px;text-align:left;}
body .sj_ny_proda thead th{background:var(--brand);color:#fff;font-weight:600;}
body .sj_ny_proda tbody tr:nth-child(even){background:#f7fafd;}

/* ---------- 上下篇导航（宽度与正文卡片严格一致：1200px 整页宽度） ---------- */
body .p14-pagination-1{
  box-sizing:border-box!important;   /* 同正文卡片：让 max-width 就是外宽，不多出 padding+border */
  width:100%!important;
  background:var(--card);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:18px 26px;
  margin:24px auto!important;
  max-width:1200px;
  box-shadow:var(--shadow);
}
body .p14-pagination-1 dl{margin:0;}
body .p14-pagination-1 dd{
  height:auto;
  border-bottom:1px dashed var(--line);
  margin:0 0 10px;
  padding:8px 0;
  font-size:14.5px;
  color:var(--muted);
  overflow:visible;
  white-space:normal;
  text-overflow:clip;
}
body .p14-pagination-1 dd:last-child{border-bottom:none;margin-bottom:0;}
body .p14-pagination-1 dd a{color:var(--ink);text-decoration:none;}
body .p14-pagination-1 dd a:hover{color:var(--brand);}
body .p14-pagination-1 dd span{
  width:auto;
  height:auto;
  background:var(--brand-soft);
  color:var(--brand);
  border-radius:6px;
  padding:2px 10px;
  margin-right:12px;
  font-size:13px;
  font-weight:600;
}
body .p14-pagination-1-href{
  font-size:15px;
  text-align:center;
  margin-top:14px;
}
body .p14-pagination-1-href span{
  display:inline-block;
  padding:0;
  background:transparent;
}
body .p14-pagination-1-href a{
  display:inline-block;
  background:var(--brand);
  color:#fff!important;
  padding:10px 30px;
  border-radius:30px;
  font-size:15px;
  transition:.2s;
}
body .p14-pagination-1-href a:hover{background:var(--brand-dark);transform:translateY(-1px);}

/* ---------- 区块标题（同类产品 / 项目推荐） ---------- */
body .dinggou .tit .chi,
body .con .tit .chi{
  text-align:center;
  margin:8px 0 26px;
}
body .dinggou .tit .chi .wmen,
body .con .tit .chi .wmen{
  font-size:22px;
  font-weight:700;
  color:var(--ink-strong);
  letter-spacing:2px;
}
body .dinggou .tit .chi i,
body .con .tit .chi i{
  color:var(--brand);
  font-weight:700;
  font-style:normal;
  margin:0 14px;
}
body .dinggou{border-top:none!important;background:transparent!important;margin-top:10px!important;}
body .dinggou .content1{max-width:1200px;margin:0 auto;}

/* ---------- 同类产品：4 列响应式网格 ---------- */
body .pro_con_r_x1{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
  margin-top:10px;
}
body .pro_con_r_x1>a{
  display:block;
  text-decoration:none;
  background:var(--card);
  border:1px solid var(--line);
  border-radius:12px;
  overflow:hidden;
  transition:.25s;
}
body .pro_con_r_x1>a:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#cfe0f0;}
body .pro_con_r_x1 .sj_ny_pro{margin:0!important;background:transparent;border:none;box-shadow:none;}
body .pro_con_r_x1 .sj_ny_pro dt img{
  width:100%;
  height:auto;
  border-radius:0;
  box-shadow:none;
  border:none;
  margin:0;
  display:block;
}
body .pro_con_r_x1 .sj_ny_pro dd h4{
  font-size:14.5px;
  color:var(--ink-strong);
  padding:12px 14px 0;
  margin:0;
  font-weight:600;
  text-align:center;
}
body .pro_con_r_x1 p{font-size:13px;color:var(--muted);padding:6px 14px 16px;margin:0;text-align:center;}

/* ---------- 项目推荐（案例卡片）：图文横排卡 ---------- */
body .con{max-width:1200px;margin:0 auto;}
/* 卡片容器：同一产品页可能推荐 2~3 个案例，纵向排列并留 18px 间距 */
body .k12-xl-xwlb-1nt2-1-01-list{display:grid;grid-template-columns:1fr;gap:18px;}
body .jiejue_1{
  display:flex;
  align-items:stretch;
  gap:0;
  background:var(--card);
  border:1px solid var(--line);
  border-radius:var(--radius);
  overflow:hidden;
  box-shadow:var(--shadow);
  width:100%!important;
  margin:0!important;
  padding:0!important;
}
/* 案例图：主图（pic）+ 第二张（pic1）并排，两张统一尺寸、等高裁剪。
   第二张是否输出由模板 PHP 条件 !empty($dblist['pic1']) 决定：
   有数据才渲染该 <dt>，无数据则该 <dt> 不存在；
   另以 CSS 兜底隐藏退化为 /Uploads/_thumb/400x400_ 的破图。 */
body .jiejue_1 > dt{
  width:280px!important;
  flex:0 0 280px;
  margin:0;
  overflow:hidden;
  box-sizing:border-box;
}
body .jiejue_1 > dt img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
}
/* 两张图之间的细分割线（不影响布局宽度） */
body .jiejue_1 > dt + dt{border-left:2px solid var(--line);}
/* 兜底①：案例第二张图 pic1 无数据时，src 会退化成 /Uploads/_thumb/400x400_（空文件名）→ 隐藏这张破图 */
body .jiejue_1 > dt img[src$="/400x400_"]{display:none!important;}
/* 兜底②：把只剩破图的整个 dt 列收起（:has 现代浏览器支持；不支持时也只是收起失败，图已被①隐藏） */
body .jiejue_1 > dt:has(> a > img[src$="/400x400_"]){display:none!important;}
body .jiejue_1 dd.anli_con{
  flex:1;
  padding:26px 30px;
  margin:0!important;
  width:auto!important;
}
body .jiejue_1 dd.anli_con h2{margin:0 0 12px;font-size:20px;}
body .jiejue_1 dd.anli_con h2 a{color:var(--ink-strong);text-decoration:none;}
body .jiejue_1 dd.anli_con h2 a:hover{color:var(--brand);}
body .jiejue_1 .anli_ms{
  font-size:15px;
  line-height:1.85;
  color:var(--ink);
  max-height:5.6em;
  overflow:hidden;
}
body .jiejue_1 .k12-xl-xwlb-1nt2-1-01-list-deta{
  margin-top:16px;
}
body .jiejue_1 .k12-xl-xwlb-1nt2-1-01-list-deta11 a{
  display:inline-block;
  background:var(--brand);
  color:#fff!important;
  padding:9px 26px;
  border-radius:30px;
  font-size:14px;
  text-decoration:none;
  transition:.2s;
}
body .jiejue_1 .k12-xl-xwlb-1nt2-1-01-list-deta11 a:hover{background:var(--brand-dark);}

/* ---------- 相关技术资料（资讯列表）：与整页同一 1200px 宽度 ---------- */
body .p14-info-3{
  box-sizing:border-box!important;   /* 同上：max-width 即外宽，避免 padding 撑出栏外 */
  background:var(--card);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:18px 26px 22px;
  box-shadow:var(--shadow);
  margin:24px auto!important;
  max-width:1200px;
}
body .p14-info-3-tit{
  height:auto;
  line-height:1.4;
  font-size:19px;
  font-weight:700;
  color:var(--ink-strong);
  margin:0 0 6px;
  padding-left:14px;
  position:relative;
}
body .p14-info-3-tit::before{
  content:"";
  position:absolute;
  left:0;
  top:4px;
  bottom:4px;
  width:4px;
  border-radius:4px;
  background:var(--brand);
}
body .p14-info-3-list li h4{
  height:auto;
  border-top:1px dashed var(--line);
  margin:0;
  padding:14px 0;
  font-size:15px;
  font-weight:400;
  line-height:1.6;
  overflow:visible;
  white-space:normal;
  text-overflow:clip;
}
body .p14-info-3-list li h4 a{color:var(--ink);text-decoration:none;transition:.2s;}
body .p14-info-3-list li h4 a:hover{color:var(--brand);}
body .p14-info-3-list li h4 span{
  float:right;
  color:var(--brand);
  font-size:13px;
  opacity:.85;
}

/* ---------- 响应式 ---------- */
@media (max-width:1100px){
  body .pro_con_r_x{grid-template-columns:repeat(3,1fr);}
}
@media (max-width:900px){
  body .ny-search-1 .blk-md,
  body .ny-weiz,
  body .pro-da-r,
  body .pro-da-canshu,
  body .p14-pagination-1,
  body .dinggou .content1,
  body .con,
  body .p14-info-3{max-width:100%!important;padding-left:16px;padding-right:16px;}
  body .sj_ny_proda{padding:28px 20px;}
  body .pro-da-r h1{font-size:24px;}
  body .sj_ny_proda{font-size:16px;line-height:1.85;}
  body .pro_con_r_x{grid-template-columns:repeat(2,1fr);}
  body .jiejue_1{flex-direction:column;}
  body .jiejue_1 > dt{width:100%!important;flex:none;height:220px;}
  body .jiejue_1 > dt + dt{border-left:none;border-top:2px solid var(--line);}
}
@media (max-width:520px){
  body .pro_con_r_x{grid-template-columns:1fr 1fr;}
  body .pro-da-r h1{font-size:21px;}
  body .p14-pagination-1 dd span{display:block;margin-bottom:4px;}
}
