@charset "utf-8";
/* =============================================================================
 * taoyi 主题 · page.css —— 内页样式
 * 本次范围：**仅产品部分**（T03）。T04 会往本文件追加 新闻 / 单页 / 联系 / 搜索 / 标签。
 *
 * 依据：taoyi-style-spec.md §3.5.3（原站 category/products 与 productsDetail DOM）
 *       原站 style.css / public.css 行号见每条注释
 * 约定：rem 基准 = 1920 视口下 1rem = 100px；装饰图用相对路径 ../images/
 * ========================================================================== */

/* -----------------------------------------------------------------------------
 * 0. 原站 public.css 工具类（本主题未整体引入 public.css，按需搬运）
 * -------------------------------------------------------------------------- */
.p60  { padding-top: 0.6rem; padding-bottom: 0.6rem; }   /* public.css L1407-1411 */
.mt100{ margin-top: 1rem; }                              /* public.css L831-833 */
.mt20 { margin-top: 0.2rem; }                            /* public.css L859-861 */
.mb30 { margin-bottom: 0.3rem; }                         /* public.css L895-897 */
.fz24 { font-size: 0.24rem; line-height: 1.5; }          /* public.css L297-301 */

/* -----------------------------------------------------------------------------
 * 1. 内页通栏 Banner .products_banner（style.css L4559-4585）
 * -------------------------------------------------------------------------- */
/* 兜底说明：Banner 走后台广告位 banner_products（T05 建）。
   广告位为空时的默认图由模板 {ld:slide ... empty="..."} 输出，
   刻意**不在 CSS 里放背景兜底图** —— 背景图是无条件加载的，后台一旦配了广告位，
   真实图由 <img> 渲染、背景图仍会被下载一次（100KB），白砸 LCP。两者只能选其一。 */
.products_banner { width: 100%; position: relative; }
.products_banner::before { content: ""; display: block; padding-bottom: 28.75%; }  /* L4570 1920×550 */
.products_banner img {
    width: 100%; height: 100%; object-fit: cover;
    position: absolute; left: 0; top: 0;                 /* L4573-4585 */
}

/* -----------------------------------------------------------------------------
 * 2. 面包屑 .in_position（style.css L4589-4660）
 *    原站首项图标是内联 data-uri SVG，本主题改用雪碧图 #i-home，位置/尺寸保持一致
 * -------------------------------------------------------------------------- */
.in_position {
    box-sizing: border-box;
    padding: 0.2rem 0;
    background: #f6f6f6;                                 /* L4594 */
    position: relative;
    border-bottom: #d4d4d4 1px solid;                    /* L4598 */
}
.in_position .wrap { display: flex; flex-wrap: wrap; align-items: center; }   /* L4601-4609 */
.in_position a {
    display: block; font-size: 0.16rem; color: #666;     /* L4611-4623 */
    position: relative; line-height: 0.2rem;
    font-family: Arial;
}
.in_position a:first-child { padding-left: 0.26rem; }    /* L4625-4627 */
.in_position a:first-child .ty-icon {                    /* 替代 L4629-4648 的 data-uri */
    position: absolute; left: 0; top: 50%; transform: translate(0, -50%);
    width: 0.18rem; height: 0.18rem; color: #666;
}
.in_position a:not(:last-child):after { content: ">"; margin: 0 4px; color: #555; }  /* L4650-4656 */
.in_position a:last-child { color: var(--i_color); }     /* L4658-4660 */
.in_position .in_pos_last {                              /* 详情页末项：当前文档标题（原站为 a） */
    display: block; font-size: 0.16rem; line-height: 0.2rem;
    color: var(--i_color); font-family: Arial;
    max-width: 8rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}

/* -----------------------------------------------------------------------------
 * 3. 列表页 .products_bac（style.css L4688-4694）
 * -------------------------------------------------------------------------- */
.products_bac { box-sizing: border-box; background-color: #fff; padding: 0.6rem 0; }
.products { display: flex; justify-content: space-between; }      /* L4696-4700 */

/* 左栏分类 26%（L4702-4706） */
.products_left { width: 26%; box-sizing: border-box; }
.products_left_all { background-color: #fff; }                    /* L4708-4712 */
.products_left_h2 {
    text-transform: capitalize; box-sizing: border-box; text-align: left;
    color: #333; font-size: 0.36rem; font-weight: bold;           /* L4714-4732 */
    margin-bottom: 0.1rem; font-family: Arial;
    line-height: 1.2;
}
.list { display: flex; flex-direction: column; box-sizing: border-box; gap: 0.2rem; }  /* L4748-4758 */
.list li { position: relative; }                                  /* L4760-4762 */
.list_a {
    box-sizing: border-box; padding: 0.2rem 0.2rem; position: relative;   /* L4784-4798 */
    z-index: 2; overflow: hidden; background-color: #f5f5f5; font-family: Arial;
    transition: background-color .4s ease;
}
.list_a::after {
    content: ""; position: absolute; right: 0; top: 0;            /* L4800-4818 */
    width: 0; height: 100%; transition: all .5s ease-in-out; z-index: -1;
    background-color: var(--i_color);
}
.list .list_a a {
    font-size: 0.2rem; color: #222; font-weight: bold;            /* L4820-4830 */
    box-sizing: border-box; line-height: 110%; font-family: Arial;
    display: block; padding-right: 0.3rem;
    transition: color .4s ease;
}
.list_a i { position: absolute; right: 0.2rem; top: 50%; transform: translate(0, -50%); color: #999; }
.list_a i .ty-icon { width: 0.22rem; height: 0.22rem; }
/* 当前栏目高亮（原站靠 .current-menu-item，LDCMS 里用 id 比对） */
.list_a.active { background-color: var(--i_color); }
.list_a.active::after { width: 100%; }
.list_a.active a { color: #fff; }
.list_a.active i { color: #fff; }
.list_a:hover a { color: var(--i_color); }
.list_a.active:hover a { color: #fff; }

/* 右栏内容 71.07%（L5099-5101） */
.products_right { width: 71.07%; }
.products_right_top { display: flex; flex-direction: column; gap: 0.1rem; margin-bottom: 0.4rem; }  /* L5103-5111 */
.products_right_top_title {
    color: var(--i_color); font-family: Arial; font-weight: bold; font-size: 0.28rem;  /* L5113-5121 */
}
.products_right_top_des {
    font-family: Arial; font-size: 0.16rem; font-weight: normal;   /* L5123-5135 */
    line-height: 0.24rem; color: #999;
}

/* 产品卡片 3 列（L5140-5252） */
.products_right_contain_excavatorList ul { display: flex; gap: 0.2rem; flex-wrap: wrap; }
.products_right_contain_excavatorList ul li { width: calc((100% - 2 * 0.2rem) / 3); }
.products_right_contain_excavatorList ul li a {
    display: flex; flex-direction: column; background: #f5f5f5; height: 100%;
    transition: background-color .5s ease, box-shadow .3s ease;
}
.products_right_contain_excavatorList ul li a:hover { background-color: #fff; box-shadow: 0 6px 18px rgba(0,0,0,.12); }
.products_right_contain_excavatorList ul li a:hover h3 { background-color: #fff; color: var(--i_color); }
.products_right_contain_excavatorList ul li a .hhpm_img {
    position: relative; padding: 0.16rem 0.15rem; display: block;
}
.products_right_contain_excavatorList ul li a .hhpm_img::before { content: ""; display: block; padding-bottom: 97.7%; }
.products_right_contain_excavatorList ul li a .hhpm_img i {
    position: absolute; left: 3.57%; top: 3.9%; width: 92.857%; height: 95.12%; background: #fff;
}
.products_right_contain_excavatorList ul li a .hhpm_img img { width: 100%; height: 100%; object-fit: cover; }
.products_right_contain_excavatorList ul li a h3 {
    background: #f5f5f5; padding: 0.15rem; font-family: Arial; font-size: 0.18rem;
    font-weight: normal; line-height: normal; text-align: center; text-transform: capitalize;
    color: #333; transition: background-color .5s ease, color .5s ease;
    flex: 1; display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
/* 列表为空时的兜底提示 */
.products_right_contain_excavatorList ul:empty::after {
    content: "该栏目下暂无产品"; display: block; padding: 0.6rem 0; text-align: center; color: #999; font-size: 0.16rem;
}

/* -----------------------------------------------------------------------------
 * 4. 分页 .in_paging（style.css L5313-5391）
 *    LDCMS 的 $pages 直接吐出 <ul>...</ul>，故本文件只染 ul/li/a/span
 * -------------------------------------------------------------------------- */
.in_paging { --size: 30px; --border_radius: 5px; --curr_color: var(--i_color); }
.in_paging ul { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; text-align: center; }
.in_paging li { min-width: var(--size); margin: 0 4px; }
.in_paging a, .in_paging span {
    display: block; padding: 0 10px; height: var(--size); line-height: calc(var(--size) - 2px);
    font-size: 14px; color: #666; background: #fff; box-sizing: border-box;
    border: 1px solid #ccc; border-radius: var(--border_radius); overflow: hidden;
}
.in_paging ul li:not(:first-child):not(:last-of-type) a,
.in_paging ul li:not(:first-child):not(:last-of-type) span { border-radius: 50%; }
.in_paging a:hover, .in_paging .curr_page a, .in_paging .curr_page span,
.in_paging .active a, .in_paging .active span {
    border-color: var(--curr_color); background: var(--curr_color); color: #fff;
}
.in_paging .disabled a, .in_paging .disabled span { color: #bbb; cursor: not-allowed; }

/* -----------------------------------------------------------------------------
 * 5. 详情页上部 .p_data（style.css L5395-5413）
 * -------------------------------------------------------------------------- */
.p_data { background: #f5f5f5; }
.p_data .wrap { display: flex; flex-wrap: nowrap; gap: 0 4%; }     /* L5399-5407 */
.pGallery { flex-shrink: 0; width: 36.2%; }                        /* L5409-5413 */
.pGallery_list {
    position: relative; width: 100%; border: 1px solid var(--i_color); overflow: hidden;  /* L5415-5423 */
}
.pGallery_list .swiper-wrapper { display: flex; position: relative; width: 100%; }        /* L5425-5433 */
.pGallery_list .swiper-slide { flex-shrink: 0; position: relative; width: 100%; }         /* L5435-5439 */
.pGallery_list .swiper-slide span { width: 100%; position: relative; overflow: hidden; display: block; }
.pGallery_list .swiper-slide span::before { content: ""; display: block; padding-bottom: 100%; }  /* L5449-5455 */
.pGallery_list .swiper-slide img {
    position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover;    /* L5457-5469 */
}

/* 通用分页点 .public-pagination（style.css L5471-5537） */
.public-pagination { display: block; margin-left: auto; margin-right: auto; text-align: center; }
.public-pagination .swiper-pagination-bullet {
    margin: 0 6px; width: 8px; height: 8px; display: inline-block; background: #ccc;
    outline: none; cursor: pointer; position: relative; transition: all .5s ease; border-radius: 0;
}
.public-pagination .swiper-pagination-bullet::before {
    opacity: 0; content: ""; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);
    width: 16px; height: 16px; box-sizing: border-box; border: 1px solid var(--i_color);
    transition: all .5s ease;
}
.public-pagination .swiper-pagination-bullet-active { background: var(--i_color); }
.public-pagination .swiper-pagination-bullet-active::before { opacity: 1; }

.p_info { width: 100%; }                                          /* L5565-5567 */
.pName { padding-bottom: 0.16rem; margin: 0.12rem 0 0.3rem; position: relative; }  /* L5573-5579 */
.pName::before { content: ""; position: absolute; left: 0; bottom: 0; width: 100%; height: 1px; background: #ddd; }
.pName::after  { content: ""; position: absolute; left: 0; bottom: 0; width: 40%; height: 2px; background: var(--i_color); }
.pName h1 { color: var(--i_color); font-weight: bold; font-family: Arial; }  /* L5613-5619 */

.pDes { border-bottom: 1px solid #ddd; position: relative; }      /* L5621-5625 */
.pDes article { font-size: 0.16rem; line-height: 1.8; color: var(--c_text); font-family: var(--font-cn); }
.pDes article p { margin: 0 0 0.1rem; }
.pDes article img { max-width: 100%; height: auto; }

.pMenu { display: flex; flex-wrap: wrap; align-items: center; }   /* L5645-5653 */
.pBtn  { display: flex; flex-wrap: wrap; gap: 0 0.24rem; }        /* L5655-5663 */
.pShare { margin-left: auto; display: flex; flex-wrap: wrap; align-items: center; gap: 0 0.2rem; }  /* L5671-5683 */
.pShare p { font-family: Arial; font-size: 0.18rem; color: #333; text-transform: capitalize; }  /* L5685-5699 */
.pShare dl { display: flex; flex-wrap: wrap; align-items: center; gap: 0 0.2rem; }             /* L5701-5711 */
.pShare dt a { color: #c6cfd8; display: block; }
.pShare dt a .ty-icon { width: 0.26rem; height: 0.26rem; }
.pShare dt a:hover { color: var(--i_color); }
.pShare dt a:hover .ty-icon { color: var(--i_color); }

/* -----------------------------------------------------------------------------
 * 6. 三段式 Tab .productsDetail_contain（style.css L5753-5806）
 * -------------------------------------------------------------------------- */
.productsDetail_contain { padding: 0.6rem 0; }
.pcm_top { margin-bottom: 0.2rem; }                               /* L5760-5762 */
.pcm_top ul { display: flex; gap: 0.6rem; border-bottom: 1px solid rgba(51,51,51,.2); }  /* L5764-5770 */
.pcm_top ul li {
    width: 2.95rem; background: #f5f5f5; font-family: Arial; font-size: 0.22rem;   /* L5772-5792 */
    font-weight: bold; text-align: center; letter-spacing: 0; padding: 0.14rem 0;
    color: var(--i_color); cursor: pointer; transition: background-color .3s ease, color .3s ease;
}
.pcm_top ul li.active { background-color: var(--i_color); color: #fff; }           /* L5794-5798 */
.pcm_contain .pcmc_box { display: none; }                                          /* L5800-5802 */
.pcm_contain .pcmc_box.active { display: block; }                                  /* L5804-5806 */

/* Tab 内容里的富文本：标题 / 正文 / 列表 */
.pcmc_box h2, .pcmc_box h3, .pcmc_box h4 { font-family: var(--font-cn); color: var(--c_title); line-height: 1.4; }
.pcmc_box h2 { font-size: 0.24rem; margin: 0.3rem 0 0.16rem; font-weight: bold; }
.pcmc_box h3 { font-size: 0.2rem;  margin: 0.24rem 0 0.12rem; font-weight: bold; }
.pcmc_box h4 { font-size: 0.18rem; margin: 0.2rem 0 0.1rem; font-weight: bold; }
.pcmc_box p  { font-size: 0.16rem; line-height: 1.8; color: var(--c_text); margin: 0 0 0.14rem; font-family: var(--font-cn); }
.pcmc_box ul { padding-left: 0; display: flex; flex-direction: column; gap: 0.08rem; margin: 0 0 0.2rem; }
.pcmc_box ul li { list-style: none; position: relative; padding-left: 0.2rem; font-size: 0.16rem; line-height: 1.8; color: var(--c_text); font-family: var(--font-cn); }
.pcmc_box ul li::before { content: ""; position: absolute; left: 0; top: 0.13rem; width: 0.08rem; height: 0.08rem; background: var(--i_color); }
.pcmc_box img { max-width: 100%; height: auto; }
.pcmc_box a { color: var(--i_color); }
.pcmc_box a:hover { color: var(--i_color_hover); }

/* Why Choose Us 复述块（原站产品详情 Tab1 尾部，style.css L5808-5860） */
.pcm_wht_choose_us { margin-top: 0.4rem; }
.pcm_wht_choose_us h3 {
    font-family: Arial; font-size: 0.24rem; font-weight: bold; text-transform: capitalize; color: #333;
}
.pcm_wht_choose_us ul { display: flex; flex-direction: column; gap: 0.1rem; padding-left: 0; }
.pcm_wht_choose_us ul li { list-style: none; }
.pcm_wht_choose_us ul span { font-family: Arial; font-size: 0.16rem; line-height: 0.24rem; color: #333; font-weight: bold; }
.pcm_wht_choose_us ul p { font-family: Arial; font-size: 0.16rem; line-height: 0.24rem; color: #333; margin-left: 0.1rem; margin-bottom: 0; }

/* -----------------------------------------------------------------------------
 * 7. 规格表作用域样式 .ty-spec-table
 *    富文本吐出的 <table> 没有 thead（首行即表头），故用 tr:first-child 当表头
 * -------------------------------------------------------------------------- */
.ty-spec-table { width: 100%; overflow-x: auto; margin: 0.2rem 0; }
.ty-spec-table table { width: 100%; border-collapse: collapse; font-size: 0.16rem; }
.ty-spec-table th, .ty-spec-table td {
    border: 1px solid #ddd; padding: 0.1rem 0.14rem; line-height: 1.8;
    color: var(--c_text); font-family: var(--font-cn); text-align: center; vertical-align: middle;
}
.ty-spec-table thead th,
.ty-spec-table tbody tr:first-child th,
.ty-spec-table tbody tr:first-child td {
    background: var(--i_color); color: #fff; font-weight: bold; border-color: var(--i_color);
}
.ty-spec-table tbody tr:nth-child(even) td { background: #fafafa; }
.ty-spec-table tbody tr:hover td { background: #f2f7fc; }
.ty-spec-table table img { max-width: 100%; height: auto; }
.ty-spec-table p { margin: 0; }

/* -----------------------------------------------------------------------------
 * 8. 上下篇 .single_two_bac（style.css L6014-6140）
 * -------------------------------------------------------------------------- */
.single_two_bac {
    background: var(--i_color); box-sizing: border-box;
    padding: 0.56rem var(--contain-width); margin-bottom: var(--box-bottom);
}
.single_two { width: 100%; }
.sx { display: flex; justify-content: space-between; flex-wrap: wrap; }
.sx > div { width: 48%; }
.sx a { display: flex; width: 100%; align-items: center; }
.sx p { font-size: 0.18rem; color: #fff; text-transform: capitalize; margin-right: 0.1rem; font-weight: bold; font-family: Arial; }
.sx span {
    font-size: 0.16rem; color: #fff; transition: all .3s ease; font-family: Arial;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.sx a:hover span { opacity: .75; }
.sx .ty-icon { width: 0.22rem; height: 0.22rem; color: #fff; flex-shrink: 0; transition: all .3s ease; }
.sx .sx_left .ty-icon  { margin-right: 0.1rem; }
.sx .sx_right .ty-icon { margin-left: 0.1rem; }
.sx .sx_right { text-align: right; }
.sx .sx_right a { justify-content: flex-end; }
.sx_empty { color: rgba(255,255,255,.6); font-size: 0.16rem; font-family: Arial; }

/* 8.2 标签云 .bottom_single_tags（原站单页底部标签区；本主题仅产品详情启用）
 *     标签数据来自主表 ldcms_document.tag（逗号分隔单数字段），
 *     经 {ld:tags id=...} 去 ldcms_tags 表按 title 匹配后输出。
 *     字段为空时 detail_product.html 整块不渲染，CSS 无需处理空态。 */
.bottom_single_tags {
    padding: 0.3rem 0; background: #fff;
    border-top: 1px solid var(--c_line);
}
.bottom_single_tags .wrap { display: flex; align-items: center; flex-wrap: wrap; gap: 0.12rem; }
.bst_label { font-size: 0.16rem; color: var(--c_title); flex: 0 0 auto; }
.bst_list { display: flex; flex-wrap: wrap; gap: 0.1rem; }
.bst_list li a {
    display: inline-block; padding: 0.05rem 0.16rem;
    border: 1px solid var(--c_line); border-radius: 0.3rem;
    font-size: 0.14rem; color: var(--c_text); line-height: 1.6;
    transition: all .3s ease;
}
.bst_list li a:hover {
    background: var(--i_color); border-color: var(--i_color); color: #fff;
}

/* -----------------------------------------------------------------------------
 * 9. 相关产品 .productDetail_related_products（style.css L6245-6268）
 * -------------------------------------------------------------------------- */
.productDetail_related_products {
    padding: 0.6rem 0;
    background: url(../images/related-products-bg.webp) no-repeat center/cover;  /* L6248 */
}
.prp_maxbox { position: relative; }
.productDetail_contain {
    margin-top: 0.4rem; position: relative; overflow: hidden; box-sizing: border-box;
    width: 100%; padding-bottom: 0.6rem;
}
.productDetail_contain .swiper-wrapper { display: flex; position: relative; width: 100%; padding: 0.05rem; }
.productDetail_contain .swiper-slide { flex-shrink: 0; background: #fff; box-sizing: border-box; position: relative; overflow: hidden; }
.productDetail_contain .swiper-slide a { display: block; }
.productDetail_contain .swiper-slide .hhpm_img { position: relative; padding: 0.16rem 0.15rem; display: block; }
.productDetail_contain .swiper-slide .hhpm_img::before { content: ""; display: block; padding-bottom: 97.7%; }
.productDetail_contain .swiper-slide .hhpm_img i {
    position: absolute; left: 3.57%; top: 3.9%; width: 92.857%; height: 95.12%; background: #fff; overflow: hidden;
}
.productDetail_contain .swiper-slide .hhpm_img img {
    width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease;
}
.productDetail_contain .swiper-slide:hover .hhpm_img img { transform: scale(1.06); }
.productDetail_contain .swiper-slide h3 {
    background: #f5f5f5; padding: 0.15rem; font-family: Arial; font-size: 0.18rem;
    font-weight: normal; line-height: normal; text-align: center; text-transform: capitalize;
    color: #333; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
    transition: background-color .4s ease, color .4s ease;
}
.productDetail_contain .swiper-slide:hover h3 { background: #fff; color: var(--i_color); }
.product_hot_pagination { text-align: center; }
.product_hot_pagination .swiper-pagination-bullet { background: var(--i_color); opacity: .35; }
.product_hot_pagination .swiper-pagination-bullet-active { opacity: 1; }

/* -----------------------------------------------------------------------------
 * 10. 详情页询盘入口 .p_inquiry_entry
 *     回归 1:1：原站此处不是页内表单，而是一个唤起全站弹层 .popup_form_box 的按钮。
 *     表单本体（字段 / action / token / 验证码）在 base.html，样式在 base.css §16，
 *     交互在 main.js 的 popupForm()。这里只负责按钮的居中与上下留白。
 *     旧的 .p_inquiry / .pi_* 内联表单样式已随版块一并移除，避免留死代码。
 * -------------------------------------------------------------------------- */
.p_inquiry_entry { padding: 0.6rem 0; background: #fff; text-align: center; }
.p_inquiry_entry .public_btn { margin: 0 auto; }

/* -----------------------------------------------------------------------------
 * 11. 断点
 * -------------------------------------------------------------------------- */
@media screen and (max-width: 1366px) {
    .products_left { width: 28%; }
    .products_right { width: 69%; }
}
@media screen and (max-width: 1024px) {
    .products { display: block; }                                  /* L5254-5257 */
    .products_left { width: 100%; margin-bottom: 0.3rem; }
    .products_right { width: 100%; }                               /* L5269-5271 */
    .products_right_top { display: none; }                         /* L5265-5267 */
    .products_right_contain_excavatorList ul li a h3 { padding: 0.1rem 0.2rem; font-size: 0.16rem; }
    .p_data .wrap { flex-wrap: wrap; gap: 38px 0; }                /* L5547-5552 */
    .pGallery { width: 100%; }                                     /* L5554-5556 */
    .pcm_top ul li { font-size: 0.2rem; }                          /* L5960-5963 */
    .pShare { width: 100%; margin: 20px 0 0; }                     /* L5744-5748 */
}
@media screen and (max-width: 768px) {
    .public-pagination .swiper-pagination-bullet::before { width: 14px; height: 14px; }
    .products_right_contain_excavatorList ul { gap: 0.1rem; }      /* L5274-5277 */
    .products_right_contain_excavatorList ul li { width: calc((100% - 2 * 0.1rem) / 3); }  /* L5279-5281 */
    .pcm_top ul { gap: 0.3rem; }                                   /* L5966-5969 */
    .pcm_top ul li { width: 2.5rem; font-size: 0.18rem; }           /* L5971-5975 */
    .pName { padding-bottom: 10px; margin: 10px 0 20px; }           /* L5731-5736 */
    .sx > div { width: 100%; }
    .sx > div + div { margin-top: 0.2rem; }
    .sx .sx_right { text-align: left; }
    .sx .sx_right a { justify-content: flex-start; }
    .bottom_single_tags .wrap { gap: 0.08rem; }
}
@media screen and (max-width: 560px) {
    .products_right_contain_excavatorList ul li { width: calc((100% - 0.1rem) / 2); }  /* L5284-5287 */
    .products_right_contain_excavatorList ul li a h3 { font-size: 0.14rem; }           /* L5297-5299 */
    .products_right_top { margin-bottom: 0.2rem; display: flex; }                      /* L5301-5303 */
    .products_bac { padding: 0.3rem 0; }                                               /* L5090-5096 */
    .productsDetail_contain { padding: 0.3rem 0; }                                     /* L5985-5987 */
    .pcm_top ul li { width: 2.5rem; font-size: 0.16rem; }                              /* L5978-5983 */
    .p_inquiry_entry, .productDetail_related_products { padding: 0.3rem 0; }
}
@media screen and (max-width: 425px) {
    .pcm_top ul li { font-size: 0.15rem; }                                             /* L5996-6001 */
}

/* =============================================================================
 * 以下 12–19 节为 T04 追加：新闻 / 单页 / 联系 / 搜索 / 标签
 * 作者 fe2 ｜ 追加方式 Edit（未覆写 1–11 节产品部分）
 * 依据：taoyi-style-spec.md + 原站 style.css 行号见每条注释
 * 约定：rem 基准 = 1920 视口下 1rem = 100px；与原站一致优先用 var(--i_color)
 * 冲突规避：.in_position / .in_paging / .products_banner 为第 1/2/4 节已占用类，
 *          本节一律用「父级作用域」或只补未定义属性，不做裸写二次定义
 * ========================================================================== */

/* -----------------------------------------------------------------------------
 * 12. 内页通用：主容器 / 字号工具 / 富文本正文 / 空状态 / Banner 兜底底色
 * -------------------------------------------------------------------------- */
.ty-main { display: block; }                        /* 与 list_product / index 共用，仅声明显示类型 */

.fz16 { font-size: 0.16rem; line-height: 1.8; }     /* public.css L297-301 同族 */
.fz18 { font-size: 0.18rem; line-height: 1.7; }
.fz22 { font-size: 0.22rem; line-height: 1.5; }
.fz30 { font-size: 0.3rem;  line-height: 1.4; }

/* Banner 兜底（T04 内页）：广告位未配置时不能留空白，分两层
   ① 模板端：ld:slide 的 empty 属性直接输出默认 <img>（见 list_news / list_about /
      list_page / list_contact），零额外请求、不依赖 CSS 路径解析；
   ② 样式端：下面这条只给 T04 内页加主色底，用 .ty-banner 收窄作用域，
      （第 1 节 .products_banner 已刻意不放背景兜底图，避免无条件下载 100KB；
      此处只补底色，与背景图方案二选一） */
.products_banner.ty-banner { background-color: var(--i_color); }

/* 富文本正文作用域：后台编辑器吐出的 p / h2 / ul / table / img 统一排版 */
.ty-article { color: var(--c_text); font-size: 0.16rem; line-height: 1.8; }
.ty-article p { margin: 0 0 0.2rem; }
.ty-article h2,
.ty-article h3,
.ty-article h4 { color: var(--c_title); font-weight: bold; margin: 0.3rem 0 0.2rem; }
.ty-article h2 { font-size: 0.24rem; }
.ty-article h3 { font-size: 0.2rem; }
.ty-article h4 { font-size: 0.18rem; }
.ty-article ul,
.ty-article ol { margin: 0 0 0.2rem; padding-left: 0.4rem; }
.ty-article li { margin-bottom: 0.1rem; list-style: inherit; }
.ty-article ul { list-style: disc; }
.ty-article ol { list-style: decimal; }
.ty-article img { max-width: 100%; height: auto; display: block; margin: 0.2rem auto; }
.ty-article a { color: var(--i_color); text-decoration: underline; }
.ty-article strong { font-weight: bold; }
.ty-article table { width: 100%; border-collapse: collapse; margin: 0.2rem 0; }
.ty-article table th,
.ty-article table td { border: 1px solid #ddd; padding: 0.1rem 0.14rem; line-height: 1.8; }
.ty-article table th { background: var(--i_color); color: #fff; }

/* 空状态：新闻列表 / 搜索 / 标签 共用 */
.ty-empty {
    padding: 0.8rem 0; text-align: center; color: #999;
}
.ty-empty .ty-icon {
    width: 0.6rem; height: 0.6rem; color: #ccc; display: block; margin: 0 auto 0.2rem;
}
.ty-empty p { font-size: 0.18rem; }
.ty-empty p b { color: var(--i_color); }

/* -----------------------------------------------------------------------------
 * 13. 新闻列表（style.css L8157-8448）　搜索页 / 标签页复用同一套 class
 * -------------------------------------------------------------------------- */
.news_maxbox { padding: 0.6rem 0; }                                  /* L8157-8159 */

.nmb_top {                                                            /* L8164-8174 */
    display: flex; justify-content: space-between; align-items: center;
    padding-bottom: 0.3rem; border-bottom: 1px solid #e8e8e8; margin-bottom: 0.3rem;
}
.nmb_top span {                                                       /* L8176-8188 */
    font-family: Arial; font-size: 0.4rem; font-weight: bold;
    line-height: normal; color: #333333;
}
.nmb_top ul { display: flex; gap: 0.6rem; }                           /* L8190-8193 */
.nmb_top ul li {                                                      /* L8195-8222 */
    font-family: Arial; font-size: 0.2rem; font-weight: bold;
    line-height: normal; color: #333333;
    display: flex; align-items: center; cursor: pointer; padding: 0 0.15rem;
    position: relative;
}
.nmb_top ul li:hover { color: var(--i_color); }
.nmb_top ul li.active { color: var(--i_color); }                      /* L8224-8228 */
.nmb_top ul li.active::before {                                       /* L8230-8246 激活下划线 */
    content: ""; background-color: var(--i_color); display: block;
    position: absolute; bottom: -0.3rem; left: 0; width: 100%; height: 0.02rem;
}

.nmb_contain .nmb_news { display: none; }                             /* L8250-8257 */
.nmb_contain .nmb_news.active { display: block; }

.nmb_newsbox ul { display: flex; flex-direction: column; }            /* L8244-8247 */
.nmb_newsbox ul li {                                                  /* L8260-8268 */
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.08);
    margin-bottom: 0.3rem; padding: 0.25rem 0; box-sizing: border-box;
}
.nmb_newsbox ul li a .nmbn_title {                                    /* L8287-8304 */
    display: block; font-family: Arial; font-size: 0.26rem; font-weight: bold;
    line-height: normal; color: var(--i_color);
    background: linear-gradient(90deg, rgba(10, 56, 100, 0.1) 0%, rgba(10, 56, 100, 0) 100%);
    padding: 0.15rem 0.23rem; box-sizing: border-box;
}
.nmb_newsbox ul li:hover .nmbn_title { color: var(--i_color); }

.nmbn_info {                                                          /* L8312-8320 */
    display: flex; justify-content: space-between;
    padding: 0.3rem 0.4rem 0 0.56rem; box-sizing: border-box;
}
.nmbn_info .nmbni_pic { width: 29%; }                                 /* L8322-8324 */
.nmbn_info .nmbni_pic span { width: 100%; position: relative; display: block; }   /* L8326-8332 */
.nmbn_info .nmbni_pic span::before {                                  /* L8334-8338 图区占位 */
    content: ""; display: block; padding-bottom: 80%;
}
.nmbn_info .nmbni_pic span img {                                      /* L8340-8354 */
    position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover;
}
.nmbn_info .nmbni_info { width: 66.5%; }                              /* L8356-8358 */
.nmbn_info .nmbni_info .nmbnii_h3 {                                   /* L8360-8383 */
    font-family: Arial; font-size: 0.18rem; font-weight: normal;
    line-height: 0.3rem; color: #333333; margin-bottom: 0.3rem;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
    overflow: hidden; text-overflow: ellipsis;
}

.nmbni_bottomDiv {                                                    /* L8406-8416 */
    display: flex; justify-content: space-between; align-items: center;
}
.nmbni_bottomDiv .news_btn {                                          /* L8418-8430 */
    background: transparent; border: 1px solid var(--i_color);
    color: var(--i_color); display: flex; align-items: center;
    font-size: 0.18rem; padding: 0.12rem 0.28rem;                     /* L8270-8272 */
    border-radius: 2rem; transition: all 0.5s ease;
}
.nmbni_bottomDiv .news_btn .ty-icon { width: 0.16rem; height: 0.16rem; margin-left: 0.08rem; }
.nmb_newsbox ul li:hover .nmbni_bottomDiv .news_btn {                 /* L8274-8278 */
    background: var(--i_color); color: #fff;
}
.nmbni_bottomDiv h3 {                                                 /* L8436-8457 日期 */
    font-family: Arial; font-size: 0.16rem; font-weight: normal;
    line-height: 0.3rem; text-align: right; color: #999999;
}

/* -----------------------------------------------------------------------------
 * 14. 新闻详情（原站新闻详情页内联 <style> L380-435；上下篇 hover L6148-6168）
 * -------------------------------------------------------------------------- */
.post__box {                                                          /* L380 */
    display: flex; flex-wrap: nowrap; align-items: flex-start; gap: 0 6%;
    padding: 0.6rem 0;
}
.post_content { width: 100%; max-width: 1080px; margin-left: auto; margin-right: auto; }  /* L382 */
.post_title { padding-bottom: 0.12rem; margin-bottom: 0.26rem; border-bottom: 1px solid #ddd; }  /* L383 */
.post_title h1 { margin-bottom: 0.12rem; font-weight: bold; color: var(--c_title); }      /* L384 */
.post_time { }
.post_time span { color: #999; }                                      /* L386-387 */
.post__tags {                                                         /* L390-398 */
    padding-top: 0.2rem; margin-top: 0.4rem; border-top: 1px solid #ddd;
    display: flex; flex-wrap: wrap; gap: 0.1rem 0; align-items: baseline;
}
.post__tags > p { margin-right: 0.1rem; font-size: 0.16rem; font-weight: bold; color: var(--c_title); }
.post__tags a { margin-right: 0.24rem; font-size: 0.16rem; color: #666; }
.post__tags a:hover { color: var(--i_color); text-decoration: underline; }
.post__navigation {                                                   /* L400-402 */
    padding-top: 0.2rem; margin-top: 0.3rem; border-top: 1px solid #ddd;
    display: flex; flex-wrap: nowrap; align-items: center; gap: 0 6%;
}
.post__navigation ul { width: 100%; }
.post__navigation li {                                                /* L403-405 */
    margin: 0.16rem 0; display: flex; flex-wrap: nowrap;
    align-items: baseline; gap: 0 0.1rem;
}
.post__navigation li p { flex-shrink: 0; font-size: 0.16rem; font-weight: bold; color: var(--c_title); }
.post__navigation li a { font-size: 0.16rem; color: #666; }           /* L406 */
.post__navigation li a:hover { color: #38b6ff; text-decoration: underline; }  /* L6148-6168 悬停蓝 */
.post_back {                                                          /* L408-411 */
    flex-shrink: 0; padding: 0.1rem 0.2rem; margin-left: auto;
    display: flex; flex-wrap: wrap; align-items: center; gap: 0 0.06rem;
    background: var(--i_color); border-radius: 2rem; cursor: pointer;
    transition: all 0.5s ease;
}
.post_back .ty-icon { font-size: 0.2rem; color: #fff; width: 0.2rem; height: 0.2rem; }
.post_back p { font-size: 0.16rem; color: #fff; font-weight: bold; }
.post_back:hover { transform: translate(0, -0.04rem); box-shadow: 0 0.06rem 0.1rem rgba(0, 0, 0, 0.3); }

.post_recommend {                                                     /* L414 */
    flex-shrink: 0; width: 4rem; box-sizing: border-box; padding: 0.3rem; border: 1px solid #ddd;
}
.post_recommend_title { margin-bottom: 0.24rem; font-weight: bold; color: var(--c_title); }  /* L415 */
.post_recommend_list li:not(:last-child) {                            /* L393 */
    margin-bottom: 0.26rem; padding-bottom: 0.24rem; border-bottom: 1px solid #ddd;
}
.post_recommend_list a { display: block; width: 100%; }               /* L394 */
.post_recommend_list .img { width: 100%; position: relative; overflow: hidden; }   /* L395 */
.post_recommend_list .img::before { content: ""; display: block; padding-bottom: 56.25%; }  /* L396 */
.post_recommend_list .img img {                                       /* L397 */
    position: absolute; left: 0; top: 0; width: 100%; height: 100%;
    object-fit: cover; transition: all 0.5s ease;
}
.post_recommend_list figcaption { margin: 0.14rem 0 0.1rem; }         /* L398 */
.post_recommend_list figcaption p {                                   /* L399 */
    font-size: 0.16rem; color: #333; overflow: hidden; text-overflow: ellipsis;
    display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2;
}
.post_recommend_list figure i { font-size: 0.14rem; color: #888; }    /* L400 */
.post_recommend_list li:hover img { transform: scale(1.08, 1.08); }   /* L401 */
.post_recommend_list li:hover figcaption p { color: var(--i_color); } /* L402 */

/* -----------------------------------------------------------------------------
 * 15. 关于我们（style.css L6456-6860）
 * -------------------------------------------------------------------------- */
.aboutUs_taoyi {                                                      /* L6456-6460 */
    padding: 0.6rem 0;
    background: linear-gradient(180deg, rgba(245, 245, 245, 0) 0%, #f5f5f5 100%);
}
.atm_top {                                                            /* L6465-6474 */
    display: flex; flex-direction: column; align-items: center;
    gap: 0.2rem; margin-bottom: 0.4rem;
}
.atm_top h3 {                                                         /* L6476-6488 主标题 1rem */
    font-family: Arial; font-size: 1rem; font-weight: bold;
    line-height: normal; text-transform: uppercase; color: var(--i_color);
}
.atm_top h4 {                                                         /* L6490-6502 */
    font-family: Arial; font-size: 0.26rem; font-weight: normal;
    line-height: 0.3rem; text-align: center; color: #333333;
}
.atm_top .atm_text {                                                  /* 原站为 h5（L6504-6522） */
    font-family: Arial; font-size: 0.16rem; font-weight: normal;
    line-height: 0.26rem; text-align: center; color: #333333;
}
.atm_top .atm_text p { margin: 0 0 0.1rem; }

.atma_box { position: relative; }                                     /* L6529-6531 */
.atma_box::before { content: ""; display: block; padding-bottom: 40%; }  /* L6533-6537 手风琴图区 */
.atm_accordion .atm_bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }  /* L6539-6551 */
.atm_accordion .atm_bg img {
    position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover;
}
.atm_accordion .atma_box ul {                                         /* L6553-6576 */
    display: flex; position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 5;
}
.atm_accordion .atma_box ul li {                                      /* L6578-6598 */
    flex-grow: 1; width: 13.84%; border-right: 1px solid #d8d8d8;
    transition: flex-grow 0.8s cubic-bezier(0.4, 0, 0.2, 1), filter 0.6s ease, transform 0.6s ease;
    position: relative; cursor: pointer; overflow: hidden;
}
.atm_accordion .atma_box ul li:not(.active) { filter: brightness(0.85); transform: scaleX(0.98); }  /* L6600-6604 */
.atm_accordion .atma_box ul li.active { flex-grow: 1000; filter: brightness(1); transform: scaleX(1); }  /* L6606-6611 */
.atm_accordion .atma_box ul li .atmab_info {                          /* L6613-6631 */
    position: absolute; bottom: 0; left: 0; padding: 0 0 0.2rem 0.15rem;
    box-sizing: border-box; opacity: 1;
    transition: opacity 0.4s ease, transform 0.4s ease;
}
.atmab_info img { width: 0.5rem; height: 0.5rem; object-fit: cover; } /* L6633-6639 */
.atmab_info p {                                                       /* L6641-6657 */
    font-family: Arial; font-size: 0.18rem; font-weight: normal;
    line-height: 0.24rem; color: #ffffff;
}
.atm_accordion .atma_box ul li.active .atmab_info { opacity: 0; transform: translateY(0.1rem); }  /* L6659-6665 */

.atm_accordion .atma_box ul li .atmb_Info_active {                    /* L6679-6687 */
    opacity: 0; transform: translateY(0.2rem);
    transition: opacity 0.5s ease, transform 0.5s ease;
}
.atm_accordion .atma_box ul li.active .atmb_Info_active {             /* L6667-6677 */
    opacity: 1; padding: 0 5%; height: 100%; display: flex;
    flex-direction: column; justify-content: space-between;
    margin-top: 0.5rem; transform: translateY(0); transition-delay: 0.2s;
}
.atmb_Info_active h3 {                                                /* L6689-6705 */
    font-family: Arial; font-size: 0.26rem; font-weight: bold;
    line-height: 0.4rem; text-transform: capitalize; color: #ffffff; box-sizing: border-box;
}
.atmbia_box {                                                         /* L6707-6727 */
    width: 26.875vw; background: #ffffff; padding: 0.3rem 0.25rem; box-sizing: border-box;
    box-shadow: 0 0.12rem 0.3rem rgba(0, 0, 0, 0.12);
    opacity: 0; transform: translateY(0.2rem) scale(0.96);
    transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1),
                transform 0.8s cubic-bezier(0.4, 0, 0.2, 1),
                box-shadow 0.8s ease;
    will-change: opacity, transform;
}
.atm_accordion .atma_box ul li.active .atmbia_box {                   /* L6729-6737 */
    opacity: 1; transform: translateY(0) scale(1);
    box-shadow: 0 0.18rem 0.45rem rgba(0, 0, 0, 0.18); transition-delay: 0.4s;
}
.atmbia_box span {                                                    /* L6739-6757 */
    font-family: Arial; font-size: 0.18rem; font-weight: bold;
    line-height: 0.24rem; color: var(--i_color);
    display: flex; align-items: center; margin-bottom: 0.2rem;
}
.atmbia_box span img {                                                /* L6759-6773 */
    width: 0.41rem; height: 0.41rem; object-fit: cover; margin-right: 0.2rem;
    filter: brightness(0) saturate(100%) invert(23%) sepia(55%) saturate(1800%)
            hue-rotate(198deg) brightness(78%) contrast(112%);
}
.atmbia_box h4 {                                                      /* L6775-6797 */
    font-family: Arial; font-size: 0.16rem; font-weight: normal;
    line-height: 0.22rem; color: #333333;
}
/* ≤768 的平铺替代块：默认隐藏，由断点节打开 */
.atma_minbox { display: none; }

.aboutUs_taoyi_bottom_card { padding: 1rem 0 0.6rem 0; }              /* L6799-6801 */
.aboutUs_taoyi_bottom_card ul {                                       /* L6803-6810 */
    display: flex; gap: 0.2rem; position: relative; padding: 1.2rem 0 0 0;
}
.aboutUs_taoyi_bottom_card ul::before {                               /* L6812-6844 背景大字 */
    content: "Nanjing Taoyi"; display: block; font-family: Arial;
    font-size: 1.86rem; font-weight: bold; text-align: center;
    background: linear-gradient(180deg, rgba(10, 56, 100, 0.35) 13%, rgba(10, 56, 100, 0.02) 89%);
    -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
    position: absolute; top: 0; left: 50%; transform: translateX(-50%); width: 100%;
}
.aboutUs_taoyi_bottom_card ul li {                                    /* L6846-6858 */
    width: calc((100% - 2 * 0.2rem) / 3); background-color: rgba(10, 56, 100, 0.6);
    padding: 0.32rem 0.3rem 0.12rem 0.26rem; box-sizing: border-box; cursor: pointer;
}
.aboutUs_taoyi_bottom_card ul li h3 {                                 /* L6860-6876 */
    font-family: Arial; font-size: 0.18rem; font-weight: bold;
    line-height: 0.24rem; color: #ffffff; margin-bottom: 0.15rem;
}
.aboutUs_taoyi_bottom_card ul li h4 {                                 /* L6878-6896 */
    font-family: Arial; font-size: 0.16rem; font-weight: normal;
    line-height: 0.22rem; color: #ffffff;
}

/* -----------------------------------------------------------------------------
 * 16. 通用单页：服务中心 / 隐私政策（style.css L7753-8030）
 * -------------------------------------------------------------------------- */
.service_our_service { padding: 0.6rem 0; }                           /* L7753-7755 */
.sosm_top { margin-bottom: 0.5rem; }                                  /* L7760-7762 */
.sosm_contain ul { display: flex; flex-direction: column; }           /* L7764-7767 */
.sosm_contain ul li { width: 100%; padding: 0.7rem 0; cursor: pointer; }  /* L7780-7786 */
.sosm_contain ul li:nth-child(odd) { background: #f7f7f7; }           /* L7788-7790 */
.sosm_contain ul li:nth-child(odd) .sosmc_card { flex-direction: row; }   /* L7792-7794 */
.sosm_contain ul li:nth-child(even) { background: #fff; }             /* L7798-7800 */
.sosm_contain ul li:nth-child(even) .sosmc_card { flex-direction: row-reverse; }  /* L7802-7804 */
.sosmc_card { display: flex; justify-content: space-between; align-items: center; }  /* L7808-7812 */
.sosmc_card .sosmc_pic {                                              /* L7814-7822 */
    width: 47.3%; display: flex; flex-direction: column; justify-content: center;
}
.sosmc_card .sosmc_info { width: 47.69%; }                            /* L7824-7826 */
.sosmc_card .sosmc_pic span { width: 100%; display: block; position: relative; }  /* L7828-7834 */
.sosmc_card .sosmc_pic span::before { content: ""; padding-bottom: 61.5%; display: block; }  /* L7836-7839 */
.sosmc_card .sosmc_pic span img {                                     /* L7841-7852 */
    position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover;
}
.sosmc_info h3 {                                                      /* L7850-7866 */
    font-family: Arial; font-size: 0.24rem; font-weight: bold; text-transform: capitalize;
    padding: 0.2rem 0; border-bottom: #dddddd 2px solid;
    color: var(--i_color); margin-bottom: 0.2rem;
}
.sosmc_info h4 {                                                      /* L7868-7880 */
    font-family: Arial; font-size: 0.16rem; font-weight: normal;
    line-height: 0.28rem; color: #333333;
}

/* 正文区（隐私政策等纯文本单页只显示这一块） */
.page_content { padding: 0.6rem 0; }

/* 服务优势：左列表 58.84% + 右图 */
.service_ser_advantage { padding: 0.6rem 0; background: #fff; }       /* L7932-7936 */
.ssam_top { margin-bottom: 0.5rem; }                                  /* L7945-7947 */
.ssam_contain { display: flex; justify-content: space-between; }      /* L7949-7953 */
.ssamc_leftbox { width: 58.84%; }                                     /* L7955-7957 */
.ssamc_leftbox ul {                                                   /* L7959-7967 */
    display: flex; flex-direction: column; height: 100%;
    justify-content: space-between; gap: 0.2rem;
}
.ssamc_leftbox ul li {                                                /* L7969-7979 */
    padding: 0.3rem 1rem 0.3rem 0.4rem; box-sizing: border-box;
    background: #f5f5f5; cursor: pointer; position: relative;
    transition: background 0.5s ease;
}
.ssamc_leftbox ul li.active { background: rgba(10, 56, 100, 0.05); }  /* L7981-7985 */
.ssamc_leftbox ul li.active::before {                                 /* L7987-8005 左侧主色竖条 */
    content: ""; width: 0.07rem; height: 100%; background-color: var(--i_color);
    display: block; position: absolute; left: 0; top: 0;
}
.ssamc_leftbox ul li.active h3 { color: var(--i_color); }             /* L8007-8009 */
.ssamc_leftbox ul li h3 {                                             /* L8011-8031 */
    font-family: Arial; font-size: 0.24rem; font-weight: bold;
    line-height: normal; text-transform: capitalize; color: #333333; margin-bottom: 0.2rem;
}
.ssamc_leftbox ul li h4 { font-size: 0.16rem; line-height: 1.8; color: #666; }
.ssamc_rightbox { flex: 1; }
.ssamcr_pic { position: relative; width: 100%; }
.ssamcr_pic::before { content: ""; display: block; padding-bottom: 82.5%; }
.ssamcr_pic img {
    position: absolute; top: 0; left: 0; width: 100%; height: 100%;
    object-fit: cover; opacity: 0; transition: opacity 0.5s ease;
}
.ssamcr_pic img.active { opacity: 1; }

/* -----------------------------------------------------------------------------
 * 17. 联系我们（style.css L8588-8860）
 * -------------------------------------------------------------------------- */
.contact_us { padding: 0.6rem 0; }                                    /* L8588-8590 */
.cum_top { margin-bottom: 0.5rem; }                                   /* L8595-8597 */
.cum_contain { display: flex; justify-content: space-between; }       /* L8599-8603 */
.cum_contain .cumc_info { width: 47.69%; }                            /* L8605-8607 */
.cum_contain .cumc_info ul {                                          /* L8609-8617 */
    display: flex; flex-direction: column; justify-content: space-between; height: 100%;
}
.cum_contain .cumc_info ul li h3 {                                    /* L8619-8627 */
    display: flex; align-items: center; border-bottom: 1px solid rgba(51, 51, 51, 0.2);
    position: relative; padding-bottom: 0.1rem;
}
.cum_contain .cumc_info ul li h3::before {                            /* L8629-8645 下划线展开动画 */
    content: ""; display: block; width: 40%; height: 0.015rem;
    background: var(--i_color); position: absolute; bottom: 0; left: 0;
    transition: all 0.7s ease;
}
.cum_contain .cumc_info ul li:hover h3::before { width: 100%; }       /* L8647-8649 */
.cum_contain .cumc_info ul li h3 i {                                  /* L8651-8659 */
    font-family: Arial; font-size: 0.24rem; font-weight: normal; color: #333333;
    font-style: normal;
}
.cum_contain .cumc_info ul li h3 img {                                /* L8661-8671 */
    width: 0.48rem; height: 0.48rem; object-fit: contain; margin-right: 0.15rem;
}
.cum_contain .cumc_info ul li a {                                     /* L8673-8693 */
    font-family: Arial; font-size: 0.18rem; font-weight: normal;
    line-height: 0.32rem; color: #333333; padding-top: 0.1rem;
    display: block; white-space: normal; word-break: break-word; overflow-wrap: break-word;
}
.cum_contain .cumc_info ul li a:hover { color: var(--i_color); }
.cum_contain .cumc_pic { width: 47.69%; display: block; }             /* L8695-8701 */
.cum_contain .cumc_pic span { display: block; position: relative; }   /* L8703-8707 */
.cum_contain .cumc_pic span::before { content: ""; display: block; padding-bottom: 82.5%; }  /* L8709-8713 */
.cum_contain .cumc_pic span img {                                     /* L8715-8727 */
    width: 100%; height: 100%; object-fit: cover; position: absolute; top: 0; left: 0;
}

.online_message { padding: 0.6rem 0; }                                /* L8799-8801 */
.omm_top { margin-bottom: 0.5rem; }                                   /* L8806-8808 */
/* 留言表单：字段布局，验证码块沿用 base.css 的 .captcha-row */
.ty-msg-form { width: 100%; max-width: 1080px; margin: 0 auto; }
.ty-msg-form input[type="text"],
.ty-msg-form input[type="tel"],
.ty-msg-form input[type="email"],
.ty-msg-form textarea {
    width: 100%; box-sizing: border-box; padding: 0.12rem 0.16rem;
    border: 1px solid #ddd; background: #fff; color: #333;
    font-size: 0.16rem; line-height: 1.6; margin-bottom: 0.2rem;
    transition: border-color 0.3s ease;
}
.ty-msg-form input[type="text"]:focus,
.ty-msg-form input[type="tel"]:focus,
.ty-msg-form input[type="email"]:focus,
.ty-msg-form textarea:focus { border-color: var(--i_color); outline: none; }
/* 留言页副标题下方的紧急联系电话 */
.omm_hotline { margin-top: 0.1rem; font-size: 0.16rem; color: #666; }
.omm_hotline a { color: var(--i_color); }
.ty-msg-form textarea { resize: vertical; min-height: 1.2rem; }
.ty-msg-form .captcha-row { display: flex; align-items: center; gap: 0.1rem; margin-bottom: 0.2rem; }
.ty-msg-form .captcha-row input { flex: 1; margin-bottom: 0; }
.ty-msg-form .captcha-row img { height: 0.44rem; cursor: pointer; }
.ty-msg-form button[type="submit"] {
    padding: 0.12rem 0.4rem; background: var(--i_color); color: #fff;
    border: none; font-size: 0.18rem; cursor: pointer; border-radius: 2rem;
    transition: all 0.5s ease;
}
.ty-msg-form button[type="submit"]:hover { background: #38b6ff; }

/* -----------------------------------------------------------------------------
 * 18. 搜索 / 标签：复用第 13 节新闻列表一套 class，此处只补页头修饰
 * -------------------------------------------------------------------------- */
.ty-search_kw { font-size: 0.18rem; color: #666; }
.ty-search_kw b { color: var(--i_color); font-weight: bold; }
.ty-search_retry { margin: 0.3rem 0; }
.ty-search_retry form { display: flex; align-items: stretch; max-width: 6rem; }
.ty-search_retry input[type="text"] {
    flex: 1; box-sizing: border-box; padding: 0.1rem 0.16rem;
    border: 1px solid #ddd; border-right: none; font-size: 0.16rem;
}
.ty-search_retry button {
    width: 0.6rem; background: var(--i_color); border: none; cursor: pointer;
    display: flex; align-items: center; justify-content: center;
}
.ty-search_retry button .ty-icon { width: 0.2rem; height: 0.2rem; color: #fff; }

/* -----------------------------------------------------------------------------
 * 19. 断点（T04 部分的 1024 / 768 / 560）
 * -------------------------------------------------------------------------- */
@media screen and (max-width: 1440px) {
    .atmbia_box { width: 35.83vw; }                                   /* L6889-6891 */
}
@media screen and (max-width: 1024px) {
    /* 新闻列表 */
    .nmb_top span { font-size: 0.3rem; }                              /* L8450-8452 */
    .nmb_top { padding-bottom: 0.2rem; margin-bottom: 0.2rem; }       /* L8454-8458 */
    .nmb_top ul { gap: 0.3rem; }
    .nmb_top ul li { font-size: 0.18rem; padding: 0 0.1rem; }
    .nmbn_info { padding: 0.2rem 0.2rem 0 0.3rem; }
    .nmb_newsbox ul li a .nmbn_title { font-size: 0.22rem; padding: 0.12rem 0.16rem; }  /* L8467 */
    .nmbn_info .nmbni_info .nmbnii_h3 { font-size: 0.16rem; line-height: 0.26rem; }     /* L8477 */

    /* 新闻详情：正文与推荐改为上下堆叠 */
    .post__box { flex-wrap: wrap; gap: 0.5rem 0; }                    /* L406-408 */
    .post_title h1 { font-size: 0.26rem; }
    .post_recommend { width: 100%; margin: 0 0; }
    .post_recommend_list { display: flex; flex-wrap: wrap; gap: 0.4rem 4%; }
    .post_recommend_list li { width: 48%; padding: 0 0; margin: 0 0; border-bottom: none; }
    .post_recommend_list li:not(:last-child) { border-bottom: none; }

    /* 通用单页 */
    .sosmc_info h3 { font-size: 0.2rem; }                             /* L7878-7880 */
    .sosmc_info h4 { font-size: 0.14rem; line-height: 0.25rem; }
    .ssam_contain { flex-wrap: wrap; gap: 0.3rem 0; }
    .ssamc_leftbox { width: 100%; }
    .ssamc_leftbox ul li { height: auto; padding: 0.24rem 0.3rem; }

    /* 联系我们 */
    .cum_contain .cumc_info ul li h3 img { width: 0.3rem; height: 0.3rem; margin-right: 0.1rem; }  /* L8730-8736 */
    .cum_contain .cumc_info ul li h3 i { font-size: 0.2rem; }         /* L8738-8740 */
    .cum_contain .cumc_info ul li a { font-size: 0.16rem; line-height: 0.25rem; padding-top: 0.05rem; }  /* L8742-8748 */

    /* 关于我们：手风琴改为平铺 */
    .atm_accordion .atma_box { display: none; }
    .atma_minbox { display: block; }
    .atma_minbox ul { display: flex; flex-wrap: wrap; gap: 0.2rem; }
    .atma_minbox ul li {
        width: calc((100% - 0.2rem) / 2); background: #fff;
        padding: 0.24rem; box-sizing: border-box; box-shadow: 0 0 8px rgba(0, 0, 0, 0.08);
    }
    .atma_minbox ul li h3 { font-size: 0.2rem; color: var(--i_color); margin-bottom: 0.14rem; }
    .atma_minbox ul li span {
        display: flex; align-items: center; font-size: 0.17rem; font-weight: bold;
        color: var(--i_color); margin-bottom: 0.12rem;
    }
    .atma_minbox ul li span img { width: 0.36rem; height: 0.36rem; object-fit: cover; margin-right: 0.12rem; }
    .atma_minbox ul li h4 { font-size: 0.15rem; line-height: 0.24rem; color: #666; }
    .aboutUs_taoyi_bottom_card ul::before { font-size: 1.2rem; }
}
@media screen and (max-width: 768px) {
    .nmb_top { flex-wrap: wrap; gap: 0.2rem; }
    .nmb_top span { font-size: 0.24rem; }
    .nmbn_info { flex-wrap: wrap; padding: 0.2rem; }
    .nmbn_info .nmbni_pic,
    .nmbn_info .nmbni_info { width: 100%; }
    .nmbn_info .nmbni_pic { margin-bottom: 0.2rem; }
    .nmbni_bottomDiv h3 { font-size: 0.14rem; }

    .post_title h1 { font-size: 0.22rem; }
    .post_time span { font-size: 0.14rem; }
    .post__tags > p, .post__tags a { font-size: 0.14rem; }
    .post__tags a { margin-right: 0.2rem; }
    .post__navigation li p, .post__navigation li a { font-size: 0.14rem; }
    .post_recommend_list figcaption p { font-size: 0.15rem; }

    .atm_top h3 { font-size: 0.5rem; }
    .atm_top h4 { font-size: 0.2rem; }
    .atma_minbox ul li { width: 100%; }
    .aboutUs_taoyi_bottom_card ul { flex-wrap: wrap; }
    .aboutUs_taoyi_bottom_card ul li { width: 100%; }

    .sosm_contain ul li { padding: 0.3rem 0; }
    .sosmc_card { flex-wrap: wrap; gap: 0.2rem; }
    .sosm_contain ul li:nth-child(odd) .sosmc_card,
    .sosm_contain ul li:nth-child(even) .sosmc_card { flex-direction: column; }
    .sosmc_card .sosmc_pic,
    .sosmc_card .sosmc_info { width: 100%; }
    .cum_contain { flex-wrap: wrap; gap: 0.3rem 0; }
    .cum_contain .cumc_info,
    .cum_contain .cumc_pic { width: 100%; }
}
@media screen and (max-width: 560px) {
    .nmb_newsbox ul li a .nmbn_title { font-size: 0.18rem; }          /* L8511 */
    .nmbn_info .nmbni_info .nmbnii_h3 { font-size: 0.15rem; }         /* L8523 */
    .post__tags { margin-top: 0.3rem; }
    .post__navigation { flex-wrap: wrap; padding-top: 0.1rem; }
    .post_back { margin-top: 0.1rem; padding: 0.1rem 0.16rem; }
    .post_back p { font-size: 0.14rem; }
    .post_recommend { padding: 0.2rem; }
    .post_recommend_title { margin-bottom: 0.18rem; }
    .post_recommend_list figure i { font-size: 0.13rem; }
    .post_recommend_list li { width: 100%; }

    .atm_top h3 { font-size: 0.36rem; }
    .aboutUs_taoyi_bottom_card ul::before { font-size: 0.8rem; }
    .ty-msg-form .captcha-row { flex-wrap: wrap; }
}
