/* =========================================
   泾清项目管理 - 红色主题扩展样式（参考站版式）
   依赖：style.css（参考站原版 style，红/蓝/橙配色）
   本文件仅做：覆盖多余默认、底部、响应式增强
   ========================================= */

/* ========== 基础 ========== */
body{ background:#ffffff; font-family:"Microsoft YaHei","微软雅黑","PingFang SC","Hiragino Sans GB",sans-serif; }
html{ background:#ffffff; }
.wapper{ overflow:hidden; }
.l{ float:left; }
.r{ float:right; }
.clear{ clear:both; height:0; font-size:0; line-height:0; }

/* ========== 头部 logo 电话 ========== */
.top{ height:auto; min-height:100px; background:#fff; border-bottom:1px solid #eee; box-shadow:0 1px 3px rgba(0,0,0,.04); position:relative; z-index:100; }
.head{ width:1000px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; padding:14px 0; }
.logo{ width:auto; float:none; padding:0; display:flex; align-items:center; }
.logo a{
  display:inline-block !important;
  text-decoration:none !important;
  color:inherit;
}
.logo img{ height:56px; width:auto; display:block; }
.tel{ width:auto; float:none; padding:0; display:flex; flex-direction:column; align-items:flex-end; justify-content:center; }
.jrsc{ padding:0; text-align:right; height:auto; font-size:12px; margin-bottom:8px; }
.jrsc a{ padding:0 6px; transition:color .2s; }
.jrsc a:hover{ color:#d64445; }
.tels{ text-align:right; font-size:13px; color:#666; line-height:1.6; position:relative; padding-left:42px; background:none !important; height:auto !important; padding-top:0 !important; }
.tels:before{ content:""; position:absolute; left:0; top:50%; margin-top:-16px; width:34px; height:34px; background:url(../images/tel.png) no-repeat center/contain; }
.tels span{ display:block; letter-spacing:1px; }

/* ========== 菜单（蓝色主色调 #08abfe + 全屏宽背景条 + 下拉优化 + 无间隙衔接 banner） ==========
   结构：外层 .mainmenu-wrap#mainmenu 负责 100% 全屏宽 + 蓝色渐变背景/边框/阴影；
         内层 .menu.wapper 负责 1000px 居中 + 菜单 ul 布局（透明背景，不限制外层视觉）。
   所有关键属性加 !important，防止被 style.css 旧值覆盖。 */
.mainmenu-wrap,
#mainmenu{
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  /* 全屏蓝色渐变背景 + 顶部分隔线 + 底部深蓝压边 + 阴影 */
  background:linear-gradient(90deg,#0698dc 0%,#08abfe 50%,#0698dc 100%) !important;
  border-top:1px solid rgba(255,255,255,.12) !important;
  border-bottom:3px solid #056da1 !important;
  box-shadow:0 3px 8px rgba(8,171,254,.25) !important;
  position:relative !important;
  z-index:99 !important;
  overflow:visible !important;
}
/* 内层：1000px 居中容器，透明背景，仅用于菜单内容定位 */
.menu{
  width:1000px !important;
  max-width:100% !important;
  margin:0 auto !important;
  padding:0 !important;
  overflow:visible !important;
  position:relative !important;
  height:48px !important;
  line-height:48px !important;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
}
.menu ul{ display:flex; flex-wrap:nowrap; justify-content:flex-start; align-items:stretch; margin:0; padding:0; }
.menu ul li{ float:none; width:auto; flex:1; padding:0; text-align:center; position:relative; border-right:1px solid rgba(255,255,255,.1); margin:0; }
.menu ul li:first-child{ border-left:1px solid rgba(255,255,255,.1); }
.menu ul li > span{ display:block; width:100%; height:48px; line-height:48px; }
/* 导航链接：强制白字 + 反色，杜绝任何父级覆盖导致看不见 */
.menu a{
  font-size:15px !important;
  color:#ffffff !important;
  font-weight:500 !important;
  display:block !important;
  text-align:center !important;
  padding:0 10px !important;
  height:48px !important;
  line-height:48px !important;
  letter-spacing:1px;
  position:relative;
  transition:all .22s ease;
  background:transparent !important;
}
.menu ul li:hover > span > a{ background:rgba(255,255,255,.14) !important; color:#ffffff !important; }
.menu ul li:hover > span > a:after{ content:""; position:absolute; left:50%; bottom:0; width:60%; height:3px; background:#fff; transform:translateX(-50%); border-radius:3px 3px 0 0; }
a.menu_hover{ background:#056da1 !important; color:#ffffff !important; }
a.menu_hover:after{ content:""; position:absolute; left:50%; bottom:0; width:60%; height:3px; background:#fff; transform:translateX(-50%); border-radius:3px 3px 0 0; }
.menu ul li dl{ background:#ffffff !important; width:180px; position:absolute; left:50%; top:48px; transform:translateX(-50%); box-shadow:0 8px 24px rgba(0,0,0,.18); padding:6px 0; display:none; z-index:9999; border-top:3px solid #08abfe; border-radius:0 0 4px 4px; }
.menu ul li dl dd{ line-height:36px; border-bottom:#f0f0f0 dotted 1px; margin:0 12px; }
.menu ul li dl dd:last-child{ border-bottom:none; }
/* 下拉菜单链接颜色：灰字（白底可见），hover 蓝底白字 */
.menu ul li dl dd a{
  font-size:13px !important;
  color:#555555 !important;
  background:#ffffff !important;
  padding:0 10px !important;
  text-align:left !important;
  height:36px !important;
  line-height:36px !important;
  letter-spacing:0;
  transition:all .18s;
}
.menu ul li dl dd a:hover{ color:#ffffff !important; background:#08abfe !important; padding-left:16px !important; }

/* ========== 轮播（全屏宽 + 420px 高 + 与导航无缝衔接） ==========
   banner01 外层：100% 全屏宽，红色底边贯穿屏幕；
   swiper-container 内层：100% 相对外层撑满；
   指示点/切换按钮按全屏样式定位。 */
.banner01{
  width:100% !important;
  max-width:100% !important;
  margin:0 auto !important;
  padding:0 !important;
  border-bottom:4px solid #d64445;
  position:relative;
  z-index:1;
  height:420px !important;
  overflow:hidden;
  background:#f5f5f5;
}
.banner01 .swiper-container{
  width:100% !important;
  height:420px !important;
  margin:0 !important;
}
.banner01 .swiper-wrapper{ width:100% !important; height:100% !important; }
.banner01 .swiper-slide{
  width:100% !important;
  height:420px !important;
  overflow:hidden;
}
.banner01 .swiper-slide img{
  width:100% !important;
  height:100% !important;
  object-fit:cover;
  display:block;
  margin:0 auto;
  transition:transform .6s ease;
}
.banner01 .swiper-slide:hover img{ transform:scale(1.04); }
.banner01 .swiper-pagination{ bottom:18px !important; }
.banner01 .swiper-pagination-bullet{ background:#fff; opacity:.7; width:12px; height:12px; margin:0 5px !important; transition:all .25s; vertical-align:middle; }
.banner01 .swiper-pagination-bullet-active{ background:#d64445; opacity:1; width:36px; height:10px; border-radius:5px; box-shadow:0 0 0 3px rgba(255,255,255,.3); }
.banner01 .swiper-button-prev,
.banner01 .swiper-button-next{ width:44px; height:44px; background:rgba(0,0,0,.38); color:#fff; border-radius:50%; transition:all .25s; margin-top:-22px; }
.banner01 .swiper-button-prev{ left:24px; }
.banner01 .swiper-button-next{ right:24px; }
.banner01 .swiper-button-prev:hover,
.banner01 .swiper-button-next:hover{ background:#d64445; color:#fff; transform:scale(1.1); }
.banner01 .swiper-button-prev:after,
.banner01 .swiper-button-next:after{ font-size:18px; font-weight:bold; }

/* ========== 三栏 cent01：卡片化 + 统一节奏 ========== */
.cent01{
  margin-top:0 !important;
  border-top:none !important;
  padding:28px 16px 24px !important;
  background:#fff;
  box-sizing:border-box;
  border-radius:0 0 4px 4px;
}
/* 标题条统一：红色左侧装饰线 + 英文副标 */
.xwzx01, .cgal01, .hszs01{ padding-bottom:0; }
.xwzx01 h2, .hszs01 h2, .cgal01 h2, .sqgg .xwzx01 h2{
  position:relative !important;
  padding-left:14px !important;
  font-size:20px !important;
  line-height:42px !important;
  height:42px !important;
  color:#222 !important;
  font-weight:600 !important;
}
.xwzx01 h2:before, .hszs01 h2:before, .cgal01 h2:before, .sqgg .xwzx01 h2:before{
  content:"" !important;
  display:block !important;
  position:absolute;
  left:0; top:50% !important;
  margin-top:-9px !important;
  width:4px; height:18px;
  background:#d64445;
  border-radius:2px;
}
.xwzx01 h2 em, .hszs01 h2 em, .cgal01 h2 em, .sqgg .xwzx01 h2 em{
  font-style:normal !important;
  color:#c82c2e !important;
  font-size:12px !important;
  margin-left:8px !important;
  letter-spacing:1px;
  opacity:.75;
  font-weight:normal !important;
}
.xwzx01 a, .cgal01 a{
  font-size:12px !important;
  color:#999 !important;
  padding-right:12px;
  padding-left:18px !important;
  background:url(../images/tu1.png) left center no-repeat;
  transition:color .2s;
  margin-top:6px;
}
.xwzx01 a:hover, .cgal01 a:hover{ color:#d64445 !important; }

/* 左：新闻资讯1（带图） */
.xwzx{
  padding:0 18px 14px 0 !important;
  margin-right:18px;
  border-right:1px solid #eee !important;
  border-bottom:1px solid #eee !important;
  background:#fff;
  width:245px !important;
  box-sizing:content-box;
  float:left;
}
.xwzx img{
  width:100%; max-height:146px; margin-top:14px;
  display:block;
  border-radius:4px;
  object-fit:cover;
  transition:transform .35s ease, box-shadow .35s ease;
}
.xwzx a:hover img{ box-shadow:0 6px 18px rgba(214,68,69,.18); transform:translateY(-2px); }
.xwzx span{
  display:block; font-size:15px; color:#222; line-height:1.6;
  margin-top:10px; font-weight:600;
  padding-left:0;
}
.xwzx strong{
  display:block; font-size:13px; color:#888; line-height:1.8;
  margin-top:6px;
  overflow:hidden;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}
.xwzx ul{ margin-top:10px; padding-top:4px; border-top:1px dashed #f0f0f0; }
.xwzx ul li{
  line-height:2.1; font-size:13px; color:#666;
  background:url(../images/tu44.png) left 9px no-repeat;
  padding-left:16px;
  overflow:hidden; white-space:nowrap; text-overflow:ellipsis;
  transition:all .2s;
}
.xwzx ul li:hover{ color:#d64445; padding-left:20px; }

/* 中：招标采购公告 Tab 组 */
.zhgg{
  padding:0 18px 14px 0 !important;
  margin-right:18px;
  border-right:1px solid #eee !important;
  border-bottom:1px solid #eee !important;
  width:410px !important;
  float:left;
  box-sizing:content-box;
}
/* Tab 头：从黑色下划线改为灰色底 + 红色活跃指示 */
.title, .title01{ height:42px !important; border-bottom:2px solid #f0f0f0 !important; }
.title li, .title01 li{
  height:42px !important;
  width:auto !important;
  min-width:92px;
  float:left;
  line-height:42px !important;
  text-align:center;
  font-size:15px !important;
  color:#666;
  padding:0 18px;
  cursor:pointer;
  position:relative;
  transition:color .2s;
}
.title li:hover, .title01 li:hover{ color:#d64445; }
.cur{
  border-bottom:2px solid #d64445 !important;
  color:#d64445 !important;
  font-weight:600 !important;
  margin-bottom:-2px;
}
.tab_valli ul li, .tab_valli01 ul li{
  padding:2px 6px !important;
  line-height:2.3 !important;
  border-bottom:1px dashed #f3f3f3;
  transition:all .18s;
}
.tab_valli ul li:last-child, .tab_valli01 ul li:last-child{ border-bottom:none; }
.tab_valli ul li:hover, .tab_valli01 ul li:hover{ background:#fdf7f7; }
.tab_valli ul li a span,
.tab_valli01 ul li a span,
.zhgg02 ul li a span{
  float:left; display:block;
  width:calc(100% - 92px) !important;
  font-size:13px !important;
  color:#555;
  background:url(../images/tu44.png) left 10px no-repeat !important;
  padding-left:16px !important;
  overflow:hidden; white-space:nowrap; text-overflow:ellipsis;
  transition:color .18s;
  line-height:2.3 !important;
}
.tab_valli ul li:hover a span,
.tab_valli01 ul li:hover a span,
.zhgg02 ul li:hover a span{ color:#d64445; padding-left:20px !important; background-position-x:14px !important; }
.tab_valli ul li a strong,
.tab_valli01 ul li a strong,
.zhgg02 ul li a strong{
  float:right; display:block;
  width:72px;
  font-size:12px; color:#fa802d;
  font-weight:normal;
  text-align:right;
  line-height:2.3 !important;
}
.tabs_val, .tabs_val01{ margin-top:10px; }

/* 政策法规列表：与上方 Tab 列表统一节奏 */
.zhgg02 ul{ margin-top:10px; }
.zhgg02 ul li{
  padding:2px 6px !important;
  line-height:2.3 !important;
  border-bottom:1px dashed #f3f3f3;
  transition:all .18s;
}
.zhgg02 ul li:last-child{ border-bottom:none; }
.zhgg02 ul li:hover{ background:#fdf7f7; }

/* 右：新闻资讯 */
.hszs{
  padding:0 0 14px 0 !important;
  border-bottom:1px solid #eee !important;
  border-right:none !important;
  width:230px !important;
  float:right;
  box-sizing:content-box;
}
.uwfa{
  background:#fff;
  border:1px solid #f3eeee;
  border-radius:4px;
  padding:16px 18px 6px 18px !important;
  margin-top:16px !important;
}
.uwfa .xwzx01{ border-bottom:none; }
.uwfa ul li{
  line-height:44px; height:44px;
  margin-top:0; margin-bottom:10px;
  border-bottom:1px solid #f3f3f3;
  font-size:14px;
  color:#c82c2e;
  background:url(../images/tu22.png) 14px center no-repeat !important;
  padding-left:38px !important;
  display:block;
  transition:all .2s;
  overflow:hidden; white-space:nowrap; text-overflow:ellipsis;
}
.uwfa ul li:hover{ background-color:#fdf7f7 !important; color:#d64445 !important; padding-left:42px !important; background-position-x:18px !important; }

/* 新闻资讯3（.hszs 下的 .uwfa）：删除每条标题前的方形 tu22.png 文档图标 + 左侧缩进 */
.hszs > .uwfa ul li{
  background-image: none !important;
  padding-left: 0 !important;
}
.hszs > .uwfa ul li:hover{
  background-image: none !important;
  padding-left: 0 !important;
  background-position-x: 0 !important;
}

/* ========== 工程案例滚动墙 ========== */
.cgal{
  background:#fff;
  padding:24px 18px 0 18px !important;
  width:964px !important;
  margin:0 auto;
  margin-top:28px !important;
  border-radius:4px;
  border-top:4px solid #d64445;
  box-shadow:0 2px 10px rgba(0,0,0,.04);
}
.ywal{ width:100%; margin:0 auto; overflow:hidden; }
#demo{ margin:0 auto; width:100%; overflow:hidden; padding-top:18px; padding-bottom:26px; }
.show-pic{
  border:1px solid #eee;
  padding:8px 8px 12px 8px;
  width:205px !important;
  border-bottom:3px solid #d64445;
  background:#fff;
  border-radius:4px;
  transition:all .3s ease;
  display:inline-block;
}
.show-pic:hover{
  transform:translateY(-4px);
  box-shadow:0 12px 28px rgba(214,68,69,.16);
  border-color:#d64445;
}
.show-pic a{
  font-weight:600;
  font-size:13px;
  color:#444;
  display:block;
  text-align:center;
  padding-top:8px;
  transition:color .2s;
  line-height:1.4;
}
.show-pic a:hover{ color:#d64445; }
.show-pic img{
  width:100% !important;
  height:158px !important;
  max-width:100% !important;
  object-fit:cover;
  border-radius:2px;
  display:block;
}

/* ========== 底部三栏新闻 sqgg ==========
   关键：box-sizing:border-box + 每列 33.3333% 精确 1/3，
   防止 padding + border 叠加导致总宽溢出、第3列换行掉行。 */
.sqgg{
  background:#fff;
  padding:0 !important;
  margin-top:28px !important;
  width:1000px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.sqgg ul{
  border:1px solid #f0f0f0;
  border-radius:4px;
  overflow:hidden;
  background:#fff;
}
.sqgg ul li{
  float:left;
  display:block;
  width:33.3333% !important;
  box-sizing:border-box !important;
  padding:18px 22px 20px 22px !important;
  background:#fff;
  border-right:1px solid #f3f3f3 !important;
  border-top:none !important;
  border-bottom:none !important;
  background-image:none !important;
  transition:background .25s;
}
.sqgg ul li:last-child{ border-right:none !important; }
.sqgg ul li:hover{ background:#fdf7f7; }
.sqgg ul li dl{ margin-top:8px; }
.sqgg ul li dl dd{
  line-height:2.3 !important;
  font-size:13px;
  color:#666;
  background:url(../images/tu44.png) left 11px no-repeat !important;
  padding-left:16px !important;
  overflow:hidden; white-space:nowrap; text-overflow:ellipsis;
  border-bottom:1px dashed #f5f5f5;
  transition:all .18s;
}
.sqgg ul li dl dd:last-child{ border-bottom:none; }
.sqgg ul li dl dd:hover{ color:#d64445 !important; padding-left:20px !important; background-position-x:14px !important; }

/* ========== 友情链接 / 合作伙伴 ========== */
.link{
  background:#fff;
  border-bottom:4px solid #d64445;
  margin:28px auto 0 !important;
  padding:0 !important;
  width:1000px !important;
  border-radius:4px 4px 0 0;
  border-top:1px solid #f0f0f0;
  overflow:hidden;
}
.link-tit{
  height:42px;
  padding:14px 0 4px 0 !important;
  text-align:center;
  width:130px !important;
  border-right:1px solid #f0f0f0 !important;
  color:#222 !important;
  font-size:17px !important;
  line-height:1.5;
  font-weight:600;
  float:left;
  background:linear-gradient(180deg,#fafafa 0%,#fff 100%);
}
.link-tit span{ color:#d64445; font-weight:normal; letter-spacing:2px; font-size:14px !important; opacity:.8; }
.link-list{
  float:left;
  width:848px !important;
  padding:12px 10px 10px 12px !important;
  box-sizing:border-box;
}
.link-list span{
  width:auto !important;
  padding:8px 16px !important;
  display:inline-block !important;
  float:left;
  text-align:center;
}
.link-list a{
  display:inline-block;
  padding:4px 10px;
  border-radius:3px;
  transition:all .2s;
  font-size:13px;
  color:#777;
}
.link-list a:hover{ color:#fff; background:#d64445; }
.link-list a img{ vertical-align:middle; border:1px solid #eee; padding:3px; background:#fff; transition:all .25s; border-radius:2px; }
.link-list a:hover img{ border-color:#d64445; background:#fff; transform:translateY(-1px); }

/* ========== 底部 ========== */
.footer{ background:#3a293c; color:#c8c2cb; margin-top:30px; border-top:4px solid #d64445; }
.footerTop{ padding:42px 0 32px; }
.fMenu h3{
  color:#fff;
  font-size:16px;
  font-weight:600;
  margin-bottom:18px;
  padding-bottom:12px;
  border-bottom:1px solid #5a4a5f;
  position:relative;
}
.fMenu h3:before{ content:""; position:absolute; left:0; bottom:-1px; width:40px; height:3px; background:#d64445; border-radius:2px; }
.fMenu ul li{ line-height:30px; }
.fMenu ul li a{ color:#c8c2cb; font-size:13px; transition:all .18s; padding-left:0; }
.fMenu ul li a:before{ content:"›"; color:#d64445; font-weight:bold; margin-right:6px; opacity:.6; transition:opacity .2s; }
.fMenu ul li a:hover{ color:#fff; padding-left:4px; }
.fMenu ul li a:hover:before{ opacity:1; }
.fMenu p{ font-size:13px; line-height:2 !important; color:#c8c2cb; }
.fMenu p strong{ color:#fff; font-weight:600; }
.footerBot{ background:#2a1e2c; padding:14px 0; border-top:1px solid #5a4a5f; }
.footerBot a{ color:#c8c2cb; transition:color .18s; }
.footerBot a:hover{ color:#fff; }

/* ========== 内页统一（白底 + 红色标题） ========== */
.main-content .m-top h2, .m-top h2{ color:#333; }
/* 注意：保留 .m-top h2:before（红色左侧装饰条，见下方 m-top h2:before 定义），
   不再隐藏 .xwzx01 h2:before，首页模块标题需要它。 */
.news-title{ border-bottom:none; }
.news-title:before{ display:none; }

/* 分页 */
.pagebar a:hover{ background:#d64445; color:#fff; border-color:#d64445; }
.pagebar span.active, .pagebar a.active{ background:#d64445; color:#fff; border-color:#d64445; }

/* ========== 内页侧导航 + 主内容（红色主题，细节优化） ========== */
/* 子页 banner 与主导航无缝衔接，叠加渐变蒙层 + 标题效果 */
.sub-banner{
  border-bottom:4px solid #d64445;
  width:100%;
  height:260px !important;
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  overflow:hidden;
  margin:0;
}
.sub-banner:before{
  content:"";
  position:absolute;
  left:0; top:0; right:0; bottom:0;
  background:linear-gradient(135deg, rgba(164,38,39,.55) 0%, rgba(21,156,220,.35) 100%);
  z-index:1;
}
.sub-banner:after{
  content:"";
  position:absolute;
  left:0; top:0; right:0; bottom:0;
  background:rgba(0,0,0,.32);
  z-index:1;
}
.sub-banner > div{
  position:relative;
  z-index:2;
  background:transparent !important;
  width:auto !important;
  height:auto !important;
  padding:22px 50px;
  border:1px solid rgba(255,255,255,.35);
  border-radius:2px;
  box-shadow:0 4px 20px rgba(0,0,0,.18);
  backdrop-filter: blur(3px);
}
.sub-banner h1{
  color:#fff;
  font-size:32px !important;
  font-weight:600 !important;
  letter-spacing:6px !important;
  text-shadow:0 2px 8px rgba(0,0,0,.5) !important;
  margin:0;
  line-height:1.4;
  position:relative;
  padding-bottom:10px;
}
.sub-banner h1:after{
  content:"";
  position:absolute;
  left:50%;
  bottom:0;
  width:56px;
  height:3px;
  background:#fff;
  transform:translateX(-50%);
  border-radius:3px;
  box-shadow:0 0 8px rgba(255,255,255,.6);
}
/* 左侧导航卡片化：圆角 + 微阴影 + 悬浮呼吸感 */
.side-nav{
  width:230px;
  background:#fff;
  float:left;
  border:1px solid #eee;
  border-radius:4px;
  overflow:hidden;
  box-shadow:0 2px 8px rgba(0,0,0,.04);
  transition:box-shadow .25s;
}
.side-nav:hover{ box-shadow:0 4px 14px rgba(214,68,69,.08); }
.side-nav h3{
  background:linear-gradient(135deg,#d64445,#b53031);
  color:#fff;
  padding:20px 22px;
  font-size:19px;
  font-weight:600;
  letter-spacing:2px;
  line-height:1.4;
  position:relative;
}
.side-nav h3:before{
  content:"";
  position:absolute;
  right:22px;
  top:50%;
  margin-top:-8px;
  width:6px;
  height:16px;
  background:rgba(255,255,255,.25);
  border-radius:3px;
}
.side-nav ul{ list-style:none; padding:8px 0; margin:0; }
.side-nav ul li{ line-height:44px; border-bottom:1px solid #f7f3f3; }
.side-nav ul li:last-child{ border-bottom:0; }
.side-nav ul li a{ display:block; padding:0 22px; color:#555; font-size:14px; position:relative; transition:all .2s; }
.side-nav ul li a:hover{ color:#d64445; background:#fdf7f7; }
.side-nav ul li.on a{ border-left:3px solid #d64445; padding-left:19px; font-weight:bold; color:#d64445; background:#fdf7f7; }
.side-nav ul li a:after{ content:"›"; position:absolute; right:18px; color:#bbb; font-size:16px; transition:all .2s; }
.side-nav ul li.on a:after, .side-nav ul li a:hover:after{ color:#d64445; right:14px; }
.side-contact{
  margin-top:18px;
  padding:20px;
  background:#fff;
  border:1px solid #eee;
  border-top:3px solid #d64445;
  border-radius:4px;
  text-align:center;
  box-shadow:0 2px 6px rgba(0,0,0,.03);
}
.side-contact h4{ color:#d64445; font-size:15px; margin-bottom:10px; font-weight:600; }
.side-contact p{ font-size:13px; color:#666; line-height:1.9; margin:0; padding:0; }
.side-contact .hot{ color:#d64445; font-size:20px; font-weight:bold; margin:8px 0; display:block; }

/* 右侧主内容卡片：圆角 + 阴影 + 与侧栏等高视觉 */
.main-content{
  width:calc(100% - 248px);
  float:right;
  background:#fff;
  padding:0 28px 28px;
  box-sizing:border-box;
  border:1px solid #eee;
  border-radius:4px;
  box-shadow:0 2px 8px rgba(0,0,0,.04);
  min-height:400px;
}
.m-top{
  border-bottom:2px solid #d64445;
  padding:18px 0 14px;
  margin-bottom:20px;
  position:relative;
}
.m-top h2{
  font-size:19px;
  color:#222;
  font-weight:600;
  padding-left:14px;
  position:relative;
  display:inline-block;
}
.m-top h2:before{
  content:"";
  position:absolute;
  left:0; top:6px; bottom:6px;
  width:5px;
  background:linear-gradient(180deg,#e86465 0%,#d64445 50%,#b53031 100%);
  border-radius:3px;
}
.m-top .bread{
  float:right;
  font-size:13px;
  color:#999;
  padding-top:8px;
}
.m-top .bread a{ color:#888; transition:color .18s; }
.m-top .bread a:hover{ color:#d64445; }
.m-top .bread:before{ content:"📍"; opacity:.5; margin-right:4px; }
.m-body{ font-size:14px; line-height:2; color:#555; }
.about-content p{ font-size:14px; line-height:2; color:#555; margin:0 0 14px; text-indent:2em; }
.about-content p:first-child::first-letter{ font-size:1.6em; color:#d64445; font-weight:600; margin-right:2px; float:left; line-height:1.2; }

/* 新闻列表：行高加大 + 列表指示器 */
.news-ul{ list-style:none; padding:0; margin:0; }
.news-ul li{
  line-height:46px;
  border-bottom:1px dashed #f0f0f0;
  padding:0 8px;
  transition:all .18s;
  position:relative;
}
.news-ul li:hover{ background:#fdf7f7; }
.news-ul li:hover a{ padding-left:4px; }
.news-ul li a{ display:block; color:#555; font-size:14px; transition:padding-left .18s; }
.news-ul li a:before{ content:"›"; color:#d64445; font-weight:bold; margin-right:8px; }
.news-ul li a:after{ content:""; display:block; clear:both; }
.news-ul li a:hover{ color:#d64445; }
.news-ul li a span.l{ display:inline-block; max-width:78%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.news-ul li a span.r{ float:right; color:#999; font-size:12px; }

/* 案例列表：hover 更强，卡片层次 */
.case-list{ list-style:none; padding:0; margin:0; }
.case-list li{ float:left; width:32%; margin:0 2% 22px 0; box-sizing:border-box; }
.case-list li:nth-child(3n){ margin-right:0; }
.case-list li a{
  display:block;
  background:#fff;
  border:1px solid #eee;
  padding:10px;
  transition:all .25s;
  border-radius:4px;
}
.case-list li a:hover{
  box-shadow:0 8px 24px rgba(214,68,69,.15);
  transform:translateY(-4px);
  border-color:#d64445;
}
.case-list .case-img{ overflow:hidden; border-radius:2px; }
.case-list .case-img img{ width:100%; height:190px; object-fit:cover; display:block; transition:transform .4s; }
.case-list li a:hover .case-img img{ transform:scale(1.06); }
.case-list h3{ font-size:15px; color:#333; margin:14px 0 6px; font-weight:bold; }
.case-list p{ font-size:12px; color:#999; line-height:1.6; margin:0; padding:0; }

/* 图片列表：卡片化统一 */
.img-list{ list-style:none; padding:0; margin:0; }
.img-list li{ float:left; width:32%; margin:0 2% 20px 0; text-align:center; }
.img-list li:nth-child(3n){ margin-right:0; }
.img-list li a{
  display:block;
  background:#fff;
  border:1px solid #eee;
  padding:8px;
  transition:all .25s;
  border-radius:4px;
}
.img-list li a:hover{
  box-shadow:0 6px 18px rgba(214,68,69,.13);
  transform:translateY(-3px);
  border-color:#d64445;
}
.img-list li img{ width:100%; height:160px; object-fit:cover; border-radius:2px; }
.img-list li span{ display:block; padding:10px 0 6px; color:#333; font-size:13px; font-weight:600; }

/* 详情页：新闻/案例通用质感 */
.news-title{
  font-size:24px;
  color:#222;
  font-weight:600;
  text-align:center;
  padding:22px 16px 18px;
  border-bottom:2px solid #d64445;
  margin-bottom:16px;
  line-height:1.5;
  position:relative;
}
.news-title:after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-2px;
  width:80px;
  height:2px;
  background:#fff;
  transform:translateX(-50%);
}
.news-meta{
  text-align:center;
  font-size:12px;
  color:#999;
  padding:12px 0;
  background:#fafafa;
  border-radius:3px;
  margin-bottom:22px;
  border:1px solid #f3f3f3;
}
.news-meta span{ margin:0 12px; }
.news-meta span:before{
  display:inline-block;
  margin-right:5px;
  color:#d64445;
  opacity:.6;
}
.news-body{
  padding:10px 4px 20px;
  font-size:15px;
  line-height:2;
  color:#444;
  text-align:justify;
}
.news-body p{ margin-bottom:16px; }
.news-body img{
  max-width:100%;
  height:auto;
  border-radius:4px;
  margin:8px auto;
  display:block;
  box-shadow:0 2px 10px rgba(0,0,0,.08);
}
.news-prevnext{
  padding:18px 18px;
  border-top:1px dashed #eee;
  margin-top:28px;
  font-size:13px;
  color:#888;
  background:#fafafa;
  border-radius:4px;
  border:1px solid #f3f3f3;
}
.news-prevnext p{
  padding:6px 0;
  margin:0;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
}
.news-prevnext p a{ color:#666; transition:color .18s; }
.news-prevnext p a:hover{ color:#d64445; }
.back-list{
  color:#fff !important;
  background:#d64445;
  padding:6px 16px !important;
  border-radius:3px;
  display:inline-block;
  transition:all .2s !important;
  text-decoration:none !important;
}
.back-list:hover{ background:#b53031 !important; color:#fff !important; text-decoration:none !important; }
.case-img-big{
  margin:8px 0 18px;
  overflow:hidden;
  border-radius:6px;
  box-shadow:0 4px 18px rgba(0,0,0,.1);
}
.case-img-big img{
  width:100%;
  max-height:420px;
  object-fit:cover;
  border-radius:6px;
  display:block;
  transition:transform .5s;
}
.case-img-big:hover img{ transform:scale(1.02); }
.case-info{
  background:#fdf7f7;
  padding:16px 22px;
  margin:0 0 22px;
  font-size:14px;
  color:#666;
  border-left:4px solid #d64445;
  border-radius:0 4px 4px 0;
  line-height:2;
}
.case-info p strong{ color:#222; margin-right:4px; font-weight:600; }

/* ========== 响应式 ========== */
@media (max-width:1024px){
  .wapper{ width:96% !important; }
  .menu{ width:96% !important; height:auto !important; line-height:1 !important; }
  .head{ width:96%; flex-direction:column; gap:12px; padding:14px 0; }
  .logo,.tel{ width:100%; float:none; text-align:center; align-items:center; }
  .tel{ align-items:center; }
  .tels{ padding-left:42px; text-align:center; display:inline-block; }
  .jrsc{ text-align:center; }
  .menu ul{ flex-wrap:wrap; }
  .menu ul li{ flex:0 0 auto; min-width:20%; padding:0; border:1px solid rgba(255,255,255,.08); }
  .menu ul li:first-child{ border-left:1px solid rgba(255,255,255,.08); }
  .menu a{ height:42px !important; line-height:42px !important; font-size:14px !important; }
  .menu ul li > span{ height:42px; line-height:42px; }
  .menu ul li:hover > span > a:after,
  a.menu_hover:after{ display:none; }
  .menu ul li dl{ top:42px; width:160px; }
  /* 首页三栏：1024以下竖排，重置间距 */
  .xwzx,.zhgg,.hszs{
    float:none !important;
    width:100% !important;
    box-sizing:border-box !important;
    border-right:none !important;
    padding:0 14px 16px !important;
    margin-right:0 !important;
  }
  .cgal{ width:96% !important; padding:18px 14px 0 !important; }
  .sqgg{ width:96% !important; }
  .sqgg ul li{
    float:none !important;
    width:100% !important;
    box-sizing:border-box !important;
    border-right:none !important;
    border-bottom:1px solid #f3f3f3 !important;
  }
  .sqgg ul li:last-child{ border-bottom:none !important; }
  .link{ width:96% !important; }
  .link-tit{ width:100% !important; border-right:none !important; border-bottom:1px solid #f0f0f0; height:auto; padding:14px 0 !important; }
  .link-list{ width:100% !important; padding:10px 12px !important; }
  .footerTop .fMenu{ width:50% !important; margin-bottom:20px; }
  .link-list span{ padding:8px !important; }
  .banner01{ width:100% !important; height:320px !important; }
  .banner01 .swiper-container{ width:100% !important; height:320px !important; }
  .banner01 .swiper-slide{ width:100% !important; height:320px !important; }
  .sub-banner{ height:200px !important; }
  .sub-banner > div{ padding:14px 28px; }
  .sub-banner h1{ font-size:24px !important; letter-spacing:4px !important; }
  .side-nav,.main-content{ float:none !important; width:100% !important; }
  .main-content{ margin-top:18px; padding:0 18px 18px !important; }
  .cent01{ padding:18px 14px !important; }
  .uwfa{ padding:10px 12px 0 !important; }
  /* LOGO 1024 以下 */
  .logo img{ height:48px; }
}
@media (max-width:768px){
  .head{ padding:12px 0; }
  .logo img{ height:36px; }
  .tels{ font-size:12px; padding-left:34px; }
  .tels:before{ width:28px; height:28px; margin-top:-14px; }
  .jrsc{ margin-bottom:4px; }
  .menu ul li{ min-width:25%; }
  .menu a{ height:38px !important; line-height:38px !important; font-size:13px !important; padding:0 6px !important; letter-spacing:0 !important; }
  .menu ul li > span{ height:38px; line-height:38px; }
  .menu ul li dl{ top:38px; width:140px; }
  .xwzx,.zhgg,.hszs{ padding:0 10px 14px !important; }
  .cgal{ padding:16px 10px 0 !important; }
  .show-pic{ width:170px !important; }
  .show-pic img{ height:130px !important; }
  .sqgg ul li{ padding:14px 16px !important; }
  .link-list span{ padding:6px 10px !important; display:block; float:none; text-align:left; }
  .footerTop .fMenu{ width:100% !important; padding:0 8% !important; margin-bottom:18px; box-sizing:border-box; }
  .banner01{ height:220px !important; }
  .banner01 .swiper-container{ height:220px !important; }
  .banner01 .swiper-slide{ height:220px !important; }
  .banner01 .swiper-button-prev,
  .banner01 .swiper-button-next{ width:32px; height:32px; margin-top:-16px; }
  .banner01 .swiper-button-prev:after,
  .banner01 .swiper-button-next:after{ font-size:12px; }
  .banner01 .swiper-pagination-bullet{ width:8px; height:8px; }
  .banner01 .swiper-pagination-bullet-active{ width:24px; height:7px; }
  .sub-banner{ height:160px !important; }
  .sub-banner > div{ padding:10px 18px; border-width:1px; }
  .sub-banner h1{ font-size:18px !important; letter-spacing:2px !important; }
  .sub-banner h1:after{ width:36px; height:2px; }
  .case-list li, .img-list li{ width:48% !important; margin-right:4% !important; }
  .case-list li:nth-child(2n), .img-list li:nth-child(2n){ margin-right:0 !important; }
  .case-list li:nth-child(3n){ margin-right:4% !important; }
  .m-top .bread{ float:none; display:block; padding-top:0 !important; margin-top:10px; }
  .news-title{ font-size:19px !important; padding:18px 10px 14px !important; }
  .news-meta span{ margin:0 6px; display:inline-block; }
  .case-info{ padding:12px 14px; }
  .about-content p{ text-indent:0 !important; }
  .about-content p:first-child::first-letter{ font-size:inherit; color:inherit; font-weight:inherit; float:none; }
  .m-top h2:before{ display:none !important; }
  .m-top h2{ padding-left:0 !important; }
}
