/* =========================================================
   【全局覆盖规范 - global.css】
   此文件在 style.css 之后加载，用于强制统一全站样式，
   不会破坏旧文件，可直接修改新增。
   ========================================================= */

/* ====== 1. 颜色与字体变量 (基于设计图1) ====== */
:root {
    --primary-blue: #0A58D4; /* 主色 */
    --primary-dark: #0D55C1; /* 主色深 (标题蓝/选中态) */
    --accent-yellow: #F2CB2E; /* 辅助色 (黄色突出) */
    --bg-light: #F5F5F5; /* 背景色 */
    --text-black: #1B1B1B; /* 标题文字 */
    --text-gray: #727272; /* 正文内容 */
    --text-light: #F5F5F5; /* 辅助文字 */
    /* 在 :root 里追加一个版心变量 */
    --container-width: 1440px;
}

body {
    font-family: "Source Han Sans CN", "PingFang SC", "Microsoft YaHei", Arial, sans-serif !important;
    color: var(--text-gray);
}

img {
    aspect-ratio: 16 / 9;
}

/* ====== 2. 字体层级规范 (全站统一) ====== */
/* 首页大标题 / Banner 文字 */
.h1-large {
    font-size: 36px;
    font-weight: bold;
    color: var(--text-black);
}

/* 模块大标题 */
.h2-module {
    font-size: 24px;
    font-weight: bold;
    color: var(--text-black);
}

/* 小标题 / 内容子标题 */
.h3-sub {
    font-size: 20px;
    font-weight: 500;
    color: var(--text-black);
}

/* 正文内容 (18px/16px) */
.body-text {
    font-size: 16px;
    font-weight: 500;
    color: var(--text-gray);
    line-height: 1.8;
}

.body-text-large {
    font-size: 18px;
    font-weight: 500;
    color: var(--text-gray);
    line-height: 1.8;
}

/* 辅助文字 / 注释 */
.text-note {
    font-size: 14px;
    color: var(--text-gray);
}

/* 最小文字 / 标签 */
.text-mini {
    font-size: 12px;
}

.img_load {
    aspect-ratio: auto;
}

.html_container img {
    aspect-ratio: auto;
}

.html_container p,
.html_container span,
.html_container font {
    font-size: 16px !important;
    line-height: 2 !important;
    color: #333333 !important;
    font-family: "Source Han Sans CN", "PingFang SC", "Microsoft YaHei", Arial, sans-serif !important;
}

/* ====== 3. 布局与宽度规范 (基于设计图2) ====== */
/*
  注意：1920自适应由 header 和 banner 的 width:100% 保证，
  下方内容区强制 1440px 居中
*/
.warp,
.warp_a,
#my_news_list,
.d2_diser,
.site-footer-inner,
.footer .warp {
    margin: 0 auto;
    width: calc(1440 * 100% / 1920);
    padding: 0 20px;
}

.warp {
    padding: 0 !important;
}

#my_news_list {
    padding: 0;
    padding-top: 20px;
}

/* 去掉单页和列表页外围可能存在的旧背景色 */
.pt-100, .pb-100, .f1_conter, .c1_pro_list {
    background-color: #fff !important;
}

/* ====== 3. 全站通用英文/数字字体规范 ====== */
/* 让所有数字和英文默认走 Arial，更贴近设计稿 */
body,
p, span, h1, h2, h3, h4, h5, h6, a, div, li {
    font-family: "Source Han Sans CN", "PingFang SC", "Microsoft YaHei", Arial, sans-serif;
}

/* 专门给英文/数字较多的元素强制指定 Arial */
.pages-wrap,
.list-date .day,
.list-date .year,
.page-jump input,
.page-jump button,
.site-footer-logo {
    font-family: Arial, sans-serif !important;
}

/* ====== 4. 页脚强制规范化 (修正 flex 布局) ====== */
/* 强制定位：左(Logo+信息) + 中(二维码) + 右(8列菜单) */
.footer .footer_left {
    width: auto !important;
    float: none !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    flex-wrap: wrap !important;
    gap: 20px !important;
}

/* 防止旧页脚干扰菜单列 */
.footer .footer_left ul {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    gap: 2% !important;
    width: 55% !important;
}

.footer .footer_left ul li {
    width: 11% !important;
    margin-bottom: 15px !important;
}

.footer .footer_left ul li h3 {
    font-size: 16px !important;
    font-weight: bold !important;
    color: #fff !important;
    margin-bottom: 12px !important;
}

.footer .footer_left ul li dl dt a {
    font-size: 13px !important;
    color: rgba(255, 255, 255, 0.7) !important;
    line-height: 2 !important;
}

/* 页脚 Logo 和 二维码块 */
.footer .footer_logo,
.footer .footer_qr {
    width: auto !important;
}

/* ====== 5. 强制列表页样式 (newsList.html) ====== */
/* ---------- 列表容器 ---------- */

#my_news_list ul li:not(:last-child) {
    padding-bottom: 35px;
}

#my_news_list ul li a {
    display: flex;
    width: 100%;
    text-decoration: none;
    color: inherit;
    gap: 50px; /* 日期栏和右侧内容的距离 */
}

/* =========================================================
   修复列表左侧日期与横线对齐（全部统一为主色）
   ========================================================= */

#my_news_list .list-date {
    flex-shrink: 0;
    width: 70px;
    display: flex;
    flex-direction: column;
    align-items: flex-end; /* 文字靠右对齐 */
    padding-top: 2px;
}

/* 大号数字日期 - 改为主色 */
#my_news_list .list-date .day {
    font-size: 42px;
    font-weight: 500;
    color: var(--primary-blue); /* ★ 改为统一的主蓝色 */
    line-height: 1;
    margin-bottom: 6px;
    font-family: "Arial", sans-serif;
}

/* 年月小字 - 改为主色 */
#my_news_list .list-date .year {
    font-size: 14px;
    color: var(--primary-blue); /* ★ 改为统一的主蓝色 */
    font-weight: 500;
    position: relative;
    padding-bottom: 8px;
    display: inline-block;
}

/* 蓝色横线 - 改为主色 */
#my_news_list .list-date .year::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 3px;
    background-color: var(--primary-blue); /* ★ 改为统一的主蓝色 */
    border-radius: 2px;
}

#my_news_list .list-thumb {
    width: 300px;
    flex-shrink: 0;
    border-radius: 4px;
    overflow: hidden;
}

/* ---------- 文字区 ---------- */
#my_news_list .list-content {
    flex: 1;
    display: flex;
    flex-direction: column;
}

/* 标题 */
#my_news_list .list-title {
    font-size: 20px;
    font-weight: 500;
    color: var(--text-black);
    margin: 0 0 16px 0; /* ★ 核心：和下面的摘要拉开16px的距离 */
    line-height: 1.5;
    transition: color 0.2s;
    cursor: pointer;
}

#my_news_list .list-title:hover {
    color: var(--primary-blue) !important;
}

/* 摘要（严格遵循16px规范） */
#my_news_list .list-desc {
    font-size: 16px;
    font-weight: 500;
    color: var(--text-gray); /* 对应规范 #727272 */
    line-height: 1.8;
    margin: 0;
    text-indent: 2em; /* 首行缩进2个汉字宽度 */
    display: -webkit-box;
    -webkit-line-clamp: 2; /* 最多显示两行 */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* 分页器外层容器 */
.pages-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 50px;
    gap: 8px;
    font-size: 14px;
}

/* 页码列表 */
.pages-list {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0;
    gap: 6px;
}

/* 页码按钮样式 */
.pages-list .page-item a,
.pages-list .page-item span {
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 36px;
    height: 36px;
    padding: 0 10px;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    background-color: #fff;
    color: #555;
    text-decoration: none;
    transition: all 0.2s ease;
    box-sizing: border-box;
}

/* 悬停效果 */
.pages-list .page-item a:hover {
    border-color: var(--primary-blue, #0A58D4);
    color: var(--primary-blue, #0A58D4);
}

/* 当前激活页码（蓝底白字） */
.pages-list .page-item.active span {
    background-color: var(--primary-blue, #0A58D4);
    border-color: var(--primary-blue, #0A58D4);
    color: #fff;
}

/* 输入框区域 */
.page-jump {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-left: 15px;
}

.page-jump input {
    width: 45px;
    height: 36px;
    text-align: center;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    outline: none;
    background-color: #fff;
    color: #333;
    font-size: 14px;
}

.page-jump input:focus {
    border-color: var(--primary-blue, #0A58D4);
}

.page-jump button {
    height: 36px;
    padding: 0 15px;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    background-color: #f9f9f9;
    color: #333;
    cursor: pointer;
    transition: all 0.2s ease;
}

.page-jump button:hover {
    border-color: var(--primary-blue, #0A58D4);
    color: var(--primary-blue, #0A58D4);
}

/* =========================================================
   新版页脚样式（已迁移）
   ========================================================= */

.site-footer {
    width: 100%;
    aspect-ratio: 1920 / 442;
    background-image: url("/static/images/footer.png");
    background-position: left top;
    background-repeat: no-repeat;
    color: #fff;
    margin-top: 40px; /* 让页脚和上面的正文稍微拉开一点距离 */
}

.site-footer a {
    color: #fff;
    text-decoration: none;
}

.site-footer-inner {
    display: flex;
    height: 100%;
    margin: 0 auto;
    padding: 34px 0 22px;
    box-sizing: border-box;
    flex-direction: column;
    justify-content: space-around;
}

.site-footer-main {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 40px;
}

/* ----- 左侧：品牌/Logo区域 ----- */
.site-footer-brand {
    flex: 0 0 auto;
    width: 420px;
    max-width: 100%;
}

.site-footer-logo {
    aspect-ratio: auto;
    display: block;
    max-width: 100%;
    height: 32px;
    object-fit: contain;
    margin-bottom: 30px;
}

.site-footer-contact {
    display: flex;
    align-items: flex-start;
    gap: 34px;
}

.site-footer-contact p {
    margin: 0 0 10px;
    font-size: 14px;
    line-height: 1.5;
    font-weight: 700;
}

.site-footer-qr {
    width: 78px;
    height: 78px;
    object-fit: cover;
    border-radius: 4px;
}

/* ----- 右侧：导航菜单区域 ----- */
.site-footer-nav {
    flex: 1;
    display: grid;
    /* 自动根据列数均匀分布，不限死7列 */
    grid-template-columns: repeat(auto-fit, minmax(60px, 1fr));
    gap: 20px 30px;
    padding-top: 2px;
}

.site-footer-col h3 {
    margin: 0 0 18px;
    font-size: 15px;
    line-height: 1;
    font-weight: 700;
    white-space: nowrap;
}

.site-footer-col a {
    display: block;
    margin-bottom: 12px;
    font-size: 13px;
    line-height: 1;
    opacity: 0.88;
    white-space: nowrap;
    transition: opacity 0.2s;
}

.site-footer-col a:hover {
    opacity: 1;
}

/* ----- 底部：版权信息 ----- */
.site-footer-bottom {
    margin-top: 34px;
    padding-top: 18px;
    border-top: 1px solid rgba(255, 255, 255, 0.18);
    text-align: center;
}

.site-footer-bottom p {
    margin: 0;
    font-size: 12px;
    line-height: 1.6;
    opacity: 0.92;
}

/* ----- 移动端适配 ----- */
@media screen and (max-width: 1100px) {
    .site-footer-inner {
        padding: 32px 20px 22px;
    }

    .site-footer-main {
        flex-direction: column;
    }

    .site-footer-brand {
        width: 100%;
        margin-bottom: 20px;
    }

    .site-footer-contact {
        justify-content: space-between;
    }

    .site-footer-nav {
        width: 100%;
    }
}

@media screen and (max-width: 768px) {
    .site-footer-logo {
        height: auto;
        max-width: 280px;
    }

    .site-footer-contact {
        flex-wrap: wrap;
        gap: 20px;
    }

    .site-footer-nav {
        grid-template-columns: repeat(3, 1fr);
        gap: 20px;
    }
}

/* =========================================================
   新版面包屑导航栏 (Breadcrumb Bar)
   ========================================================= */

.breadcrumb-bar {
    display: block !important;
    width: 100% !important;
    border-bottom: 1px solid #f0f0f0 !important; /* 底部细灰线 */
}

.breadcrumb-bar .warp {
    display: flex !important;
    justify-content: space-between !important; /* 左右分开 */
    align-items: center !important;
    height: 60px !important; /* 设定一个统一高度 */
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* --- 左侧：子导航列表 --- */
.sub-nav {
    display: flex !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 30px !important;
}

.sub-nav li a {
    font-size: 16px !important;
    color: #666 !important;
    text-decoration: none !important;
    padding-bottom: 18px !important; /* 给蓝线留出空间 */
    position: relative !important;
    transition: color 0.2s !important;
    display: block !important;
}

.sub-nav li a:hover {
    color: var(--primary-dark) !important;
}

/* 激活状态：底部蓝色横线 */
.sub-nav li.active a {
    color: var(--primary-dark) !important;
    font-weight: 500 !important;
}

.sub-nav li.active a::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    height: 3px !important;
    background-color: var(--primary-dark) !important;
    border-radius: 2px !important;
}

/* --- 右侧：面包屑路径 --- */
.crumb-path {
    display: flex !important;
    align-items: center !important;
    font-size: 14px !important;
    color: #999 !important;
    gap: 8px !important;
}

.crumb-path .home-icon img {
    width: 16px !important;
    height: auto !important;
    vertical-align: middle !important;
}

.crumb-path .sep {
    color: #ccc !important;
    font-size: 12px !important;
}

.crumb-path a {
    color: #999 !important;
    text-decoration: none !important;
    transition: color 0.2s !important;
}

.crumb-path a:hover {
    color: var(--primary-dark) !important;
}

.crumb-path a.current {
    color: #333 !important;
    font-weight: 500 !important;
}

/* --- 移动端适配 --- */
@media screen and (max-width: 768px) {
    .breadcrumb-bar .warp {
        flex-direction: column !important;
        height: auto !important;
        padding: 15px 0 !important;
        gap: 10px !important;
    }

    .sub-nav {
        gap: 20px !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
    }
}

/* =========================================================
   顶部导航栏（最终版，严格对齐设计稿）
   ========================================================= */

/* 导航栏整体容器 */
.site-header {
    position: sticky;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 70px !important;
    background-color: #ffffff !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06) !important;
    z-index: 999 !important;
}

/* 导航栏内部布局（与正文一致的 1440 版心居中；用 max-width 锁定，避免 1920+ 大屏随屏宽放大导致与正文错位） */
.site-header .warp {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    height: 70px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin: 0 auto !important;
    max-width: 1440px;
    width: 100%;
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box !important;
}

/* ----- 左侧 Logo ----- */
.header-logo {
    display: flex !important;
    align-items: center !important;
}

.header-logo img {
    aspect-ratio: auto !important;
    max-height: 40px !important;
    display: block !important;
}

/* ----- 右侧导航菜单 ----- */
.header-right {
    display: flex !important;
    align-items: center !important;
}

/* 导航菜单列表 */
.header-nav {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important; /* 菜单项不换行、不折到第二排 */
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 6px !important;
}

/* 菜单项默认状态 */
.header-nav li a.nav-link {
    display: block !important;
    white-space: nowrap !important; /* ★ 菜单文字不换行 */
    padding: 8px 18px !important;
    font-size: 16px !important;
    color: var(--text-black) !important; /* 默认颜色：#1B1B1B */
    text-decoration: none !important;
    transition: color 0.2s ease !important;
    font-weight: 500 !important;
    position: relative !important; /* ★ 加上这一行，让下划线能相对定位 */
}

/* ★ 用伪元素画出蓝线 */
.header-nav li a.nav-link::after {
    content: "" !important;
    position: absolute !important;
    left: 50% !important;
    bottom: 0 !important;
    width: 0 !important; /* 默认隐藏 */
    height: 3px !important;
    background-color: var(--primary-dark) !important;
    transform: translateX(-50%) !important;
    transition: width 0.25s ease !important;
}

/*!* 鼠标悬停和选中状态颜色 *!*/
/*.header-nav li a.nav-link:hover,*/
/*.header-nav li a.nav-link.active {*/
/*    color: var(--text-black) !important; !* 保持黑色，不要变蓝 *!*/
/*}*/
/* ★ 悬停时，线展开到文字宽度的 80%，居中显示 */
.header-nav li a.nav-link:hover::after,
.header-nav li a.nav-link.active::after {
    width: 80% !important; /* ← 下划线的展开写在这里！ */
}

/* ----- 右侧工具按钮（搜索、EN） ----- */
.header-nav li.nav-tool a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 10px !important;
    color: var(--text-black) !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
}

.header-nav li.nav-tool a:hover {
    color: var(--primary-dark) !important;
}

/* 搜索图标 */
.search-icon-img {
    font-size: 18px !important;
    width: 25px !important;
    font-style: normal !important;
}

/* 语言切换按钮 */
.lang-btn {
    font-size: 14px !important;
    font-weight: bold !important;
}

/* ----- 手机端适配 ----- */
@media screen and (max-width: 992px) {
    /* 小于 992px 时隐藏 PC 端菜单 */
    .header-nav {
        display: none !important;
    }

    /* 显示手机端汉堡菜单按钮 */
    .m_img {
        display: flex !important;
    }
}

/*!* 导航菜单核心样式（零破坏） *!*/
/*ul.header-nav > li > a.nav-link {    !* ← 改成 header-nav *!*/
/*    color: var(--text-black) !important;*/
/*    transition: color 0.2s ease !important;*/
/*}*/
/*ul.header-nav > li > a.nav-link:hover,*/
/*ul.header-nav > li > a.nav-link.active {*/
/*    color: var(--primary-dark) !important;*/
/*}*/
/* =========================================================
   恢复子菜单（下拉菜单）功能
   ========================================================= */

/* 1. 定位与形状：紧贴导航栏正下方，窄长白色卡片 */
ul.header-nav > li {
    position: relative !important;
    flex-shrink: 0 !important; /* 菜单项按文字宽度撑开，不被弹性压缩 */
}

/* 2. 交互：鼠标悬停时弹出 */
ul.header-nav > li .nav_hover_tow {
    position: absolute !important;
    top: 55px !important; /* 紧贴导航栏底边 */
    left: 0 !important;
    background: #ffffff !important;
    padding: 12px 0 !important;
    min-width: 120px !important; /* 宽度刚好装下文字 */
    display: none !important; /* 默认隐藏 */
    z-index: 999 !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08) !important; /* 仅添加轻微阴影，让卡片更清晰 */
}

/* 鼠标悬停时显示下拉菜单 */
ul.header-nav > li:hover .nav_hover_tow {
    display: block !important;
}

/* 3. 内部内容：垂直堆叠列表 */
ul.header-nav .nav_hover_tow .dl_t dl {
    display: flex !important;
    flex-direction: column !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
}

ul.header-nav .nav_hover_tow dt {
    display: block !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* 4. 选项文字：上下堆叠，不加分割线 */
ul.header-nav .nav_hover_tow dt a {
    display: block !important;
    padding: 10px 28px !important;
    font-size: 16px !important; /* 与顶部菜单字号保持一致 */
    color: var(--text-gray) !important;
    text-decoration: none !important;
    text-align: center !important;
    transition: color 0.2s ease !important;
    white-space: nowrap !important;
}

/* 5. 悬停效果：仅颜色变蓝（你规范的 #0D55C1） */
ul.header-nav .nav_hover_tow dt a:hover {
    color: var(--primary-dark) !important;
}

/* 选中态（当前在哪个子页面，对应项也变蓝） */
ul.header-nav .nav_hover_tow dt a.active {
    color: var(--primary-dark) !important;
}
/* =========================================================
   首页板块标题统一蓝色
   ========================================================= */
.index_h3 {
    display: flex;
}

.index_h3 h3 {
    color: var(--primary-dark);
}

.index_pro_ul .mor {
    font-size: 0 !important;
    border: none !important;
    background-image: url('https://static-1255648699.cos.ap-nanjing.myqcloud.com/jnejc/images/more-btn.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

.contact-icon {
    width: 20px !important;
    height: 20px !important;
    vertical-align: middle !important;
    margin-right: 6px !important;
    display: inline-block !important;
}

/* =========================================================
   数据列表下方的专属图标样式
   ========================================================= */

.under-text-icon {
    display: block;
    margin: 30px auto 0 auto;
    width: 40px;
    height: 30px;
    object-fit: contain;
}

.under-text-icon.under-text-icon-hover {
    display: none;
}

.idx_pro_list ul li:hover .under-text-icon {
    display: none;
}

.idx_pro_list ul li:hover .under-text-icon.under-text-icon-hover {
    display: block;
}

/* =========================================================
   idx_pro_list 内部 li 之间的白色竖线
   ========================================================= */

/* 1. 让外层 ul 不溢出 */
.idx_pro_list ul {
    display: flex !important;
    width: 100% !important;
}

/* 2. 每个 li 设置定位参考点 */
.idx_pro_list ul li {
    position: relative !important;
    flex: 1 !important; /* 让每个 li 平均分配宽度 */
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
}

/* 3. 用伪元素画白色竖线 (除了最后一个) */
.idx_pro_list ul li::after {
    content: "" !important;
    position: absolute !important;
    right: 0 !important; /* 画在 li 的最右边 */
    top: 25% !important; /* 起始位置：距离顶部 25% */
    height: 50% !important; /* 线的长度：总高度的 50%，居中 */
    width: 1px !important; /* 线的宽度：1px 细线 */
    background-color: rgba(255, 255, 255, 0.4) !important; /* 半透明白线 */
}

/* 4. 去掉最后一个 li 的右边竖线 */
.idx_pro_list ul li:last-child::after {
    display: none !important;
}

/* 面包屑首页图标变小 */
.brea_right ul li a img {
    width: 25px !important;
    height: auto !important;
    vertical-align: middle !important;
}

/* 面包屑内的图片统一按 1:1 比例显示（home.png 原图 24x24，全站默认的 16:9 会把图标压扁） */
.brea_right img {
    aspect-ratio: 1 / 1 !important;
    object-fit: contain; /* 按 1:1 显示时保持原图比例，不变形 */
    height: auto !important;
}

/* =========================================================
   轮播图指示点：改为长条 + 选中蓝色
   ========================================================= */

/* 1. 所有指示点的通用形状（变成胶囊长条） */
.idx_appl_span .idx_app_span .swiper-pagination-bullet {
    width: 26px !important;
    height: 4px !important;
    border-radius: 2px !important;
    background: #d0d0d0 !important; /* 未选中时为灰色 */
    border: none !important;
    opacity: 1 !important;
    margin: 0 6px !important;
    transition: all 0.2s ease !important;
}

/* 2. 选中状态：强制变成你的规范蓝色 */
.idx_appl_span .idx_app_span .swiper-pagination-bullet-active {
    background: var(--accent-yellow) !important;
    opacity: 1 !important;
    width: 32px !important; /* 选中的稍微长一点 */
}

/* =========================================================
   修复下拉菜单悬停区域不连续
   ========================================================= */

/* 1. 父菜单项作为定位参考 */
ul.header-nav > li {
    position: relative !important;
    flex-shrink: 0 !important; /* 菜单项按文字宽度撑开，不被弹性压缩 */
}

/* 2. 下拉菜单 - 增加一个透明过渡层，让悬停连续 */
ul.header-nav > li .nav_hover_tow {
    position: absolute !important;
    top: 100% !important; /* 紧贴父菜单底部 */
    left: 0 !important;
    background: #ffffff !important;
    padding: 12px 0 !important;
    min-width: 120px !important;
    display: none !important;
    z-index: 999 !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08) !important;

    /* 🔥 关键修复：用伪元素制造一个看不见的桥梁 */
    /* 这样鼠标从父菜单移到下拉菜单时不会丢失 hover */
}

/* 3. 🔥 核心：用伪元素在父菜单和下拉菜单之间建立透明桥梁 */
ul.header-nav > li .nav_hover_tow::before {
    content: "";
    position: absolute;
    top: -10px !important; /* 向上延伸10px，覆盖间隙 */
    left: 0 !important;
    width: 100% !important;
    height: 12px !important; /* 桥的高度，覆盖间隙 */
    background: transparent !important; /* 完全透明，看不见但可悬停 */
    pointer-events: auto !important; /* 允许鼠标事件穿透触发 */
}

/* 4. 鼠标悬停时显示 */
ul.header-nav > li:hover .nav_hover_tow {
    display: block !important;
}

/* 5. 内部内容样式 */
ul.header-nav .nav_hover_tow .dl_t dl {
    display: flex !important;
    flex-direction: column !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
}

ul.header-nav .nav_hover_tow dt {
    display: block !important;
    padding: 0 !important;
    margin: 0 !important;
}

ul.header-nav .nav_hover_tow dt a {
    display: block !important;
    padding: 10px 28px !important;
    font-size: 16px !important; /* 与顶部菜单字号保持一致 */
    color: var(--text-black) !important;
    text-decoration: none !important;
    text-align: center !important;
    transition: color 0.2s ease !important;
    white-space: nowrap !important;
    font-weight: 500 !important;
}

ul.header-nav .nav_hover_tow dt a:hover {
    color: var(--primary-dark) !important;
}

ul.header-nav .nav_hover_tow dt a.active {
    color: var(--primary-dark) !important;
}

/* 技术服务 */
.idx_tech_service {
    background: #f4f4f4;
    padding: 84px 0;
}

.idx_tech_service .tech_service_title strong {
    color: #1d73d4;
    font-size: 18px;
    line-height: 1;
    font-weight: 700;
}

.idx_tech_service .tech_service_title span {
    color: #c7d3e4;
    font-size: 12px;
    line-height: 1;
    font-weight: 700;
}

.idx_tech_service .tech_service_list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    width: 100%;
}

.idx_tech_service .tech_service_item {
    width: 240px;
    height: 240px;
}

.idx_tech_service .tech_service_item img {
    width: 64px;
    height: 64px;
    object-fit: contain;
}

.idx_tech_service .tech_service_item span {
    color: #333;
    font-size: 13px;
    line-height: 1;
    font-weight: 700;
}

.tech_service_item .tech_icon {
    aspect-ratio: 1;
    width: 100%;
    height: 100%;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    transition: background-image 0.2s ease-in-out; /* 动效过渡 */
}

/* 分别绑定四张正常状态图 */
.tech_service_item .icon-1 {
    /*background-image: url('https://static-1255648699.cos.ap-nanjing.myqcloud.com/jnejc/images/Union1.png');*/
    background-image: url('/static/images/tech_service1.png');
}

.tech_service_item .icon-2 {
    /*background-image: url('https://static-1255648699.cos.ap-nanjing.myqcloud.com/jnejc/images/Union2.png');*/
    background-image: url('/static/images/tech_service2.png');
}

.tech_service_item .icon-3 {
    /*background-image: url('https://static-1255648699.cos.ap-nanjing.myqcloud.com/jnejc/images/Union3.png');*/
    background-image: url('/static/images/tech_service3.png');
}

.tech_service_item .icon-4 {
    /*background-image: url('https://static-1255648699.cos.ap-nanjing.myqcloud.com/jnejc/images/Union4.png');*/
    background-image: url('/static/images/tech_service4.png');
}

/* 鼠标悬停时：切换到对应的悬停图片 */
.tech_service_item:hover .icon-1 {
    /*background-image: url('https://static-1255648699.cos.ap-nanjing.myqcloud.com/jnejc/images/Union1-hover.png');*/
    background-image: url('/static/images/tech_service1_h.png');
}

.tech_service_item:hover .icon-2 {
    /*background-image: url('https://static-1255648699.cos.ap-nanjing.myqcloud.com/jnejc/images/Union2-hover.png');*/
    background-image: url('/static/images/tech_service2_h.png');
}

.tech_service_item:hover .icon-3 {
    /*background-image: url('https://static-1255648699.cos.ap-nanjing.myqcloud.com/jnejc/images/Union3-hover.png');*/
    background-image: url('/static/images/tech_service3_h.png');
}

.tech_service_item:hover .icon-4 {
    /*background-image: url('https://static-1255648699.cos.ap-nanjing.myqcloud.com/jnejc/images/Union4-hover.png'); */
    background-image: url('/static/images/tech_service4_h.png');
}

/* 技术服务end */

/* 联系我们 */
.lxwm-content__wrapper {
    max-width: 1200px;
    margin: 0 auto;
    padding: 40px 20px;
}

.lxwm-content__wrapper .lxwm-content {
    display: flex;
    justify-content: space-between;
    align-items: stretch; /* 左侧信息块与右侧地图等高 */
    gap: 50px;
}

.lxwm-content__wrapper .lxwm-content .lxwm-content__text-info-container {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center; /* 信息块在等高区域内垂直居中 */
}

.lxwm-content__wrapper .lxwm-content .lxwm-content__text-info-container h2 {
    font-size: 20px;
    color: #0A58D4;
    margin-bottom: 30px;
    font-weight: bold;
}

.lxwm-content__wrapper .lxwm-content .lxwm-content__text-info-container .lxwn-content__detail-info {
    font-size: 16px;
    line-height: 2.8;
    color: #333;
}

.lxwm-content__map-container {
    flex: 1;
    display: flex;
    align-items: center; /* 地图在等高区域内垂直居中 */
}

.lxwm-content__map-container .lxwm-content__map {
    border-radius: 8px;
    overflow: hidden;
    width: 100%;
}

/* 联系我们end */

/* =========================================================
   供应商机(gysj)页面小标题：设计服务 / 服务状态
   左侧 16x48 图标(gysj_title.png) + 18px 间距；标题与图标等高 48px；文字 #0A58D4
   只在菜单编码为 gysj 的页面生效（容器带 .gysj-content）
   ========================================================= */
.gysj-title,
.gysj-content blockquote.blockquote {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    text-align: left !important;
    min-height: 48px !important;
    line-height: 48px !important;
    margin: 0 0 24px !important;
    padding: 0 !important;
    border: 0 none !important;
    font-size: 24px !important;
    font-weight: bold !important;
    color: #0A58D4 !important;
}

.gysj-title::before,
.gysj-content blockquote.blockquote::before {
    content: "";
    flex: 0 0 auto;
    width: calc(1em / 3);
    height: 1em;
    margin-right: 18px;
    background: url("/static/images/gysj_title.png") no-repeat center center / 100% 100%;
}

.gysj-title *,
.gysj-content blockquote.blockquote * {
    font-size: 24px !important;
    line-height: 48px !important;
    color: #0A58D4 !important;
    font-weight: bold !important;
}