@media screen and (max-width:768px) {
  :root {
    --head: 54px;
    --color: #0b3125;
    --green: #0b3125;
    --green2: #4d8e7a;
    --white: #fdfdfd;
    --tt: #333;
    --tt2: #666;
    --tt3: #999;
  }

  body {
    color: var(--tt);
  }

  a {
    color: inherit;
  }

  .C-wrap {
    width: 90%;


    margin: 0 auto;
  }

  /* ========== 通用按钮 ========== */
  .C-btn1 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 21px;
    padding: 0 16px;
    background: var(--green);
    color: #fff;
    border-radius: 50px;
    white-space: nowrap;
    transition: all .35s ease;
  }

  .C-btn1:hover {
    background: white;
    color: #003429;
  }

  .info .C-btn2 {
    width: auto;
    height: 40px;
  }

  .C-btn2 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 25px;
    padding: 0 16px;
    border: 1px solid var(--green);
    color: var(--green);
    border-radius: 500px;
    transition: all .35s ease;
  }

  .C-btn2:hover {
    background: var(--green);
    color: #fff;
  }

  /* ========== 顶部导航（手机端） ========== */

  /* 整体导航条：实色白底，无透明（覆盖 common.css 固定高度） */
  .head1 {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 9999;
    width: 100%;
    height: auto;
    min-height: var(--head);
    background: #ffffff;
    box-shadow: 0 2px 16px rgba(11, 49, 37, .10);
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  header:not(.open) .head1 {
    height: var(--head);
    overflow: visible;
  }

  .isback .head1 {
    transform: translateY(-100%);
    transition: transform .35s ease;
  }

  body.is-home56-sequence .head1 {
    transform: translateY(-100%);
  }

  /* ——— 顶部一行：logo + 汉堡；打开后整块可上下滑动 ——— */
  .head1 .C-wrap {
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0 16px 0 20px;
    height: var(--head);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    background: #ffffff;
    position: relative;
    z-index: 1;
  }

  header.open .head1 {
    height: 100%;
    max-height: 100vh;
    max-height: 100dvh;
    overflow: hidden;
  }

  header.open .head1 .C-wrap {
    height: 100%;
    min-height: var(--head);
    max-height: 100dvh;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    align-items: flex-start;
    align-content: flex-start;
    padding-bottom: 24px;
    overscroll-behavior: contain;
  }

  header.open .head1 .logo {
    position: sticky;
    top: 0;
    z-index: 3;
    background: #fff;
    box-shadow: 0 1px 0 rgba(0, 0, 0, .04);
  }

  /* logo：左侧，弹性填满 */
  .head1 .logo {
    order: 0;
    flex: 1 1 auto;
    display: flex;
    align-items: center;
    height: var(--head);
    min-width: 0;
  }

  .head1 .logo img {
    height: 28px;
    width: auto;
    display: block;
  }

  /* 汉堡按钮：右侧，始终可见 */
  .head1 .navbar-toggle {
    position: absolute;
    right: 12px;
    top: 7px;
    flex-shrink: 0;
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 6px;
    width: 40px;
    height: 40px;
    padding: 0;
    background: transparent;
    border: 0;
    cursor: pointer;
    border-radius: 10px;
    transition: background .2s ease;
  }

  .head1 .navbar-toggle:active {
    background: #f0f5f3;
  }

  .head1 .navbar-toggle span {
    display: block;
    background: var(--green);
    border-radius: 3px;
    transition: transform .32s cubic-bezier(.4, 0, .2, 1),
      opacity .32s ease,
      width .32s ease;
  }

  .head1 .navbar-toggle span:nth-child(1) {
    width: 22px;
    height: 2px;
  }

  .head1 .navbar-toggle span:nth-child(2) {
    width: 16px;
    height: 2px;
  }

  .head1 .navbar-toggle span:nth-child(3) {
    width: 22px;
    height: 2px;
  }

  header.open .head1 .navbar-toggle {
    position: fixed;
    top: 7px;
    right: 12px;
    z-index: 10001;
    background: #fff;
    box-shadow: 0 2px 8px rgba(11, 49, 37, .08);
  }

  /* 打开状态变 × */
  header.open .head1 .navbar-toggle span:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
    width: 22px;
  }

  header.open .head1 .navbar-toggle span:nth-child(2) {
    opacity: 0;
    width: 0;
  }

  header.open .head1 .navbar-toggle span:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg);
    width: 22px;
  }

  /* ——— 顶栏：工具区常驻（语言/搜索），菜单抽屉默认隐藏 ——— */
  .head1 .menu {
    display: none;
  }

  .head1 .right {
    order: 1;
    display: flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
  }

  header:not(.open) .head1 .right {
    flex: 0 0 auto;
    margin-right: 46px;
    padding: 0;
    background: transparent;
    border-top: 0;
  }

  header:not(.open) .head1 .right .C-btn1 {
    display: none !important;
  }

  header:not(.open) .head1 .right .tools {
    gap: 10px;
  }

  header:not(.open) .head1 .right .search-box {
    width: 34px;
    height: 34px;
    padding: 0;
    border-radius: 10px;
    justify-content: center;
    gap: 0;
  }

  header:not(.open) .head1 .right .search-input {
    display: none;
  }

  header:not(.open) .head1 .right .search-box.open {
    width: 180px;
    padding: 0 12px;
    border-radius: 999px;
    justify-content: flex-start;
    gap: 8px;
  }

  header:not(.open) .head1 .right .search-box.open .search-input {
    display: block;
  }

  header:not(.open) .head1 .right .search-trigger {
    width: 18px;
    height: 18px;
  }

  /* 打开：主菜单 / 工具区 — 突破 C-wrap 内边距，占满屏幕 100% */
  header.open .head1 .menu,
  header.open .head1 .right {
    width: 100vw;
    max-width: 100vw;
    flex: 0 0 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    box-sizing: border-box;
  }

  header.open .head1 .menu {
    order: 2;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    padding: 6px 0 0;
    background: #ffffff;
    gap: 0;
  }

  header.open .head1 .right {
    order: 3;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
    padding: 14px 20px 20px;
    background: #fff;
    border-top: 1px solid #e6eeeb;
  }

  /* ——— 菜单项 ——— */
  .head1 .menu .link {
    width: 100%;
  }

  .head1 .menu .link a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 52px;
    padding: 0 20px;
    color: #333;
    font-size: 16px;
    font-weight: 400;
    border-bottom: 1px solid #f0f0f0;
    transition: color .2s ease, padding-left .2s ease;
  }

  .head1 .menu .link:last-child a {
    border-bottom: 0;
  }

  .head1 .menu .link.on a {
    color: var(--green);
    font-weight: 600;
  }

  .head1 .menu .link a:active {
    color: var(--green);
    padding-left: 6px;
  }

  /* 移除 PC 下划线 */
  .head1 .menu .link a::after {
    display: none !important;
    content: none !important;
  }

  .head1 .menu .link a::before {
    content: none;
  }

  /* ——— 含子菜单项（关于我们）：右侧独立向下箭头 ——— */
  .head1 .menu .has-dropdown>.m-dropdown-head {
    display: flex;
    align-items: center;
    width: 100%;
    border-bottom: 1px solid #f0f0f0;
  }

  .head1 .menu .has-dropdown>.m-dropdown-head>a {
    flex: 1;
    min-width: 0;
    justify-content: flex-start;
    border-bottom: 0;
  }

  .head1 .menu .m-dropdown-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 52px;
    height: 52px;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
  }

  .head1 .menu .m-dropdown-arrow {
    display: inline-block;
    width: 10px;
    height: 10px;
    border-right: 2px solid #9aa6a1;
    border-bottom: 2px solid #9aa6a1;
    border-radius: 1px;
    transform: rotate(45deg);
    transition: transform .25s ease, border-color .25s ease;
  }

  .head1 .menu .has-dropdown.m-open .m-dropdown-arrow {
    border-color: var(--green);
    transform: rotate(-135deg);
  }

  .head1 .menu .has-dropdown.m-open>.m-dropdown-head>a {
    color: var(--green);
    font-weight: 600;
  }

  /* ——— 关于我们 手风琴子菜单：占满全屏宽，紧贴“关于我们”下方 ——— */
  /* 未被 JS 移动的下拉一律隐藏（兜底） */
  .head1>.dropdown {
    display: none !important;
  }

  .head1 .menu .m-sub {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin: 0;
    padding: 0;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    background: transparent;
    box-shadow: none;
    transition: max-height .38s cubic-bezier(.4, 0, .2, 1), opacity .3s ease, padding .3s ease;
    /* 重置 PC 下拉的定位/动效 */
    position: static;
    left: auto;
    top: auto;
    transform: none;
    border-radius: 0;
    visibility: visible;
    pointer-events: auto;
    min-width: 0;
  }

  .head1 .menu .m-sub.m-open {
    background-color: #fff;
    max-height: 360px;
    opacity: 1;
    padding-top: 6px;
    padding-bottom: 8px;
    box-shadow: inset 0 1px 0 #e3ece8, inset 0 -1px 0 #e3ece8;
  }

  .head1 .menu .m-sub .ditem {
    display: flex;
    align-items: center;
    height: 46px;
    padding: 0 20px;
    color: #5a6661;
    font-size: 14px;
    border-bottom: 1px solid #e6efeb;
    transition: color .2s ease, background .2s ease;
  }

  .head1 .menu .m-sub .ditem::before {
    content: "";
    width: 4px;
    height: 4px;
    margin-right: 10px;
    border-radius: 50%;
    background: #b7c7c0;
    flex-shrink: 0;
    transition: background .2s ease;
  }

  .head1 .menu .m-sub .ditem:last-child {
    border-bottom: 0;
  }

  .head1 .menu .m-sub .ditem::after {
    display: none !important;
    content: none !important;
  }

  .head1 .menu .m-sub .ditem.on,
  .head1 .menu .m-sub .ditem:active {
    color: var(--green);
    font-weight: 500;
  }

  .head1 .menu .m-sub .ditem.on::before,
  .head1 .menu .m-sub .ditem:active::before {
    background: var(--green);
  }

  /* ——— 右侧工具区内容 ——— */
  /* 语言 + 搜索一行 */
  .head1 .right .tools {
    display: flex;
    align-items: center;
    gap: 10px;
  }

  .head1 .right .tools .lang {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
  }

  .head1 .right .tools .lang-trigger {
    width: 34px;
    height: 34px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border: 1px solid #e0ebe6;
    border-radius: 8px;
    padding: 0;
    cursor: pointer;
  }

  .head1 .right .tools .lang-trigger img {
    width: 18px;
    height: 18px;
  }

  .head1 .right .tools .lang-dd {
    position: absolute;
    right: 0;
    top: 40px;
    min-width: 120px;
    padding: 8px;
    background: #fff;
    border: 1px solid rgba(11, 49, 37, .14);
    border-radius: 12px;
    box-shadow: 0 10px 26px rgba(11, 49, 37, .14);
    display: flex;
    flex-direction: column;
    gap: 6px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-4px);
    transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
    z-index: 40;
  }

  .head1 .right .tools .lang.open .lang-dd {
    opacity: 1;
    visibility: visible;
    transform: translateX(66px);
  }

  .head1 .right .tools .lang-dd .lang-item {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 36px;
    border-radius: 10px;
    font-size: 14px;
    color: var(--tt);
    background: #f6faf8;
    border: 1px solid rgba(11, 49, 37, .10);
  }

  .head1 .right .tools .lang-dd .lang-item.on {
    background: var(--green);
    border-color: var(--green);
    color: #fff;
  }

  .head1 .right .tools .lang-dd .lang-item:active {
    opacity: .92;
  }

  .head1 .right .tools>.icon {
    width: 34px;
    height: 34px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border: 1px solid #e0ebe6;
    border-radius: 8px;
  }

  .head1 .right .tools>.icon img {
    width: 18px;
    height: 18px;
  }

  /* 搜索框：常驻展开 */
  .head1 .right .search-box {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    align-items: center;
    height: 36px;
    padding: 0 12px;
    background: #ffffff;
    border: 1px solid #d4e4de;
    border-radius: 999px;
    gap: 8px;
    overflow: hidden;
    width: auto;
    transition: border-color .2s ease, box-shadow .2s ease;
    opacity: 1;
  }

  .head1 .right .search-box:focus-within {
    border-color: var(--green);
    box-shadow: 0 0 0 3px rgba(11, 49, 37, .08);
  }

  .head1 .right .search-trigger {
    width: 16px;
    height: 16px;
    padding: 0;
    border: 0;
    background: transparent;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    order: 0;
  }

  .head1 .right .search-trigger img {
    width: 100%;
    height: 100%;
    opacity: .5;
  }

  .head1 .right .search-input {
    order: 1;
    flex: 1 1 0;
    min-width: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--tt);
    font-size: 14px;
    opacity: 1;
    pointer-events: auto;
  }

  .head1 .right .search-input::placeholder {
    color: #aaa;
  }

  .head1 .right .search-input:focus {
    outline: none;
  }

  /* 联系我们按钮 */
  .head1 .right .C-btn1 {
    display: flex !important;
    width: 100%;
    height: 46px;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: .02em;
    justify-content: center;
    align-items: center;
    border-radius: 10px;
    background: var(--green);
    color: #fff;
    box-shadow: 0 4px 14px rgba(11, 49, 37, .22);
    padding: 0;
    transition: opacity .2s ease, box-shadow .2s ease;
  }

  .head1 .right .C-btn1:active {
    opacity: .88;
    box-shadow: 0 2px 8px rgba(11, 49, 37, .18);
  }

  /* ========== Home12 ========== */
  .home12 {
    padding: 43px 0 90px 0;
    background: #fff;
  }

  .home12 .top {
    display: grid;
    align-items: flex-start;
    justify-content: space-between;
    gap: 30px;
    margin-top: 8px;
  }

  .home12 .top .tt {
    width: auto;
    font-weight: 700;
    color: var(--green);
    line-height: 1.4;
  }

  .home12 .top .info {
    width: 100%;
    display: grid;
    flex-direction: column;
    gap: 20px;
  }

  .home12 .top .info .desc {
    line-height: 1.5;
    color: var(--tt2);
    opacity: 0.8;
  }

  .home12 .cards {
    margin-top: 56px;
    display: grid;
    justify-content: center;
    gap: 11px;
  }

  .home12-card {
    width: 335px;
    height: 135px;
    background: #f3f3f3;
    border-radius: 10px;
    padding: 16px;
    position: relative;
    display: block;
    transition: all .4s ease;
    overflow: hidden;
  }

  .home12-card .icon {
    width: 24px;
    height: 24px;
  }

  .home12-card .icon img {
    width: 100%;
    height: 100%;
    transition: all .4s ease;
  }

  .home12-card .text {
    position: absolute;
    right: 16px;
    bottom: 16px;
    text-align: right;
  }

  .home12-card .text .sub {
    color: var(--tt2);
    line-height: 1.5;
    transition: color .4s ease;
  }

  .home12-card .text .num {
    font-weight: 700;
    color: #003429;
    line-height: 1.5;
    transition: color .4s ease;
  }

  .home12-card:hover {
    background: var(--green);
    transform: translateY(-5px);
  }

  .home12-card:hover .text .sub,
  .home12-card:hover .text .num {
    color: #fff;
  }

  .home12-card:hover .icon img {
    filter: brightness(0) invert(1);
  }

  /* ========== Home13 ========== */
  .home13 {
    position: relative;
    width: 100%;
    min-height: 0;
    height: auto;
    padding: 64px 0 44px;
    overflow: hidden;
    background: #0b3125;
  }

  .home13 .bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }

  .home13 .bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .home13 .bg::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, .2) 0%, rgba(0, 0, 0, .86) 100%), rgba(0, 0, 0, .5);
  }

  .home13 .inner {
    position: relative;
    z-index: 2;
    width: 100%;
    padding: 0 0px;
  }

  .home13 .tt {
    width: 100%;
    color: #fff;
    line-height: 1.2;
    margin-bottom: 18px;
  }

  .home13 .card {
    width: 100%;
    max-width: none;
    height: auto;
    min-height: 196px;
    padding: 22px 20px;
    border-radius: 14px;
    background: rgba(255, 255, 255, .14);
    box-shadow: inset 0 2px 0 0 rgba(255, 255, 255, .5);
    display: flex;
    flex-direction: column;
    margin: 16px 0 0;
  }

  .home13 .card .row {
    display: flex;
    align-items: center;
    gap: 8px;
    padding-bottom: 14px;
  }

  .home13 .card .row .ic {
    width: 18px;
    height: 18px;
  }

  .home13 .card .row .ic img {
    width: 100%;
    height: 100%;
  }

  .home13 .card .row .name {
    color: #fff;
    font-weight: 500;
  }

  .home13 .card .desc {
    line-height: 1.5;
    color: rgba(255, 255, 255, .68);
  }

  .home13 .slides {
    margin-top: 22px;
    padding: 0 20px;
    display: grid;
    gap: 14px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    scroll-padding: 20px;
    scrollbar-width: none;
  }

  .home13 .slides::-webkit-scrollbar {
    display: none;
  }

  .home13-slide {
    flex: 0 0 auto;
    width: 100%;
    cursor: pointer;
    opacity: .5;
    transition: opacity .35s ease;
    scroll-snap-align: start;
  }

  .home13-slide.on,
  .home13-slide:hover {
    opacity: 1;
  }

  .home13-slide .top-bar {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
  }

  .home13-slide .top-bar .ic {
    width: 18px;
    height: 18px;
  }

  .home13-slide .top-bar .ic img {
    width: 100%;
    height: 100%;
  }

  .home13-slide .top-bar .name {
    color: #fff;
    font-weight: 500;
  }

  .home13-slide .line {
    width: 100%;
    height: 1px;
    background: rgba(255, 255, 255, .3);
    position: relative;
    overflow: hidden;
  }

  .home13-slide .line::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 0;
    height: 100%;
    background: #fff;
    transition: width .5s ease;
  }

  .home13-slide.on .line::after,
  .home13-slide:hover .line::after {
    width: 100%;
  }

  /* ========== Home14 ========== */
  .home14 {
    padding: 64px 0 78px 0;
    background: #fff;
  }

  .home14 .tabs {
    display: flex;
    justify-content: flex-start;
    gap: 10px;
    margin-bottom: 26px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }

  .home14 .tabs::-webkit-scrollbar {
    display: none;
  }

  .home14-btn {
    height: 38px;
    min-width: 116px;
    padding: 0 16px;
    background: #fff;
    border-radius: 37px;
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    transition: all .35s ease;
    box-shadow: 0 4px 6px rgba(0, 0, 0, .06);
    flex: 0 0 auto;
    scroll-snap-align: start;
  }

  .home14-btn .ic {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
  }

  .home14-btn .ic img {
    width: 100%;
    height: 100%;
    transition: all .35s ease;
  }

  .home14-btn .t {
    color: var(--tt3);
    transition: all .35s ease;
  }

  .home14-btn:hover,
  .home14-btn.on {
    background: var(--green);
    box-shadow: 0 7px 11px -4px rgba(0, 0, 0, .1);
  }

  .home14-btn:hover .t,
  .home14-btn.on .t {
    color: #fff;
  }

  .home14-btn:hover .ic img,
  .home14-btn.on .ic img {
    filter: brightness(0) invert(1);
  }

  .home14 .main {
    display: block;
  }

  /* 多 tab 内容面板：默认隐藏，只显示当前 on */
  .home14 .home14-pane {
    display: none;
  }

  .home14 .home14-pane.on {
    display: block;
  }

  .home14 .main .pic {
    width: 100%;
    height: 216px;
    border-radius: 14px;
    overflow: hidden;
    flex-shrink: 0;
    background: #f5f5f5;
  }

  .home14 .main .pic img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .home14 .main .you {
    margin-top: 18px;
  }

  .home14 .main .you .head {
    padding-bottom: 0;
  }

  .home14 .main .you .head .tt {
    font-weight: 700;
    color: var(--tt);
    margin-bottom: 10px;
  }

  .home14 .main .you .head .desc {
    line-height: 1.6;
    color: var(--tt2);
  }

  .home14 .main .you .list {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin-top: 18px;
  }

  .home14 .main .you .list .home14-item {
    order: initial !important;
  }

  .home14-item {
    border-top: 1px solid rgba(17, 17, 17, .28);
    padding-top: 14px;
  }

  .home14-item .row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    cursor: pointer;
  }

  .home14-item .row .left {
    display: flex;
    align-items: center;
    gap: 10px;
  }

  .home14-item .row .left .num {
    color: #000;
    font-family: var(--family-num);
  }

  .home14-item .row .left .q {
    color: #111;
    font-weight: 500;
  }

  .home14-item .row .toggle {
    width: 22px;
    height: 22px;
    border-radius: 4px;
    background: var(--green2);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    position: relative;
    transition: all .35s ease;
  }

  .home14-item .row .toggle::before,
  .home14-item .row .toggle::after {
    content: "";
    position: absolute;
    background: #fff;
    border-radius: 1px;
  }

  .home14-item .row .toggle::before {
    width: 8px;
    height: 1px;
  }

  .home14-item .row .toggle::after {
    width: 1px;
    height: 8px;
    transition: all .35s ease;
  }

  .home14-item.on .row .toggle {
    background: var(--green);
  }

  .home14-item.on .row .toggle::after {
    transform: rotate(90deg);
    opacity: 0;
  }

  .home14-item .answer {
    display: none;
    padding-top: 10px;
    line-height: 1.7;
    color: var(--tt2);
  }

  /* ========== Home15 ========== */
  .home15 {
    position: relative;
    width: 100%;
    height: auto;
    min-height: 960px;
    padding: 64px 0 76px;
    overflow: hidden;
    background: var(--green);
  }

  .home15 .bg {
    position: absolute;
    inset: 0;
    z-index: 0;
  }

  .home15 .bg::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(226deg, #0b3125 33%, rgba(11, 49, 37, .64) 84%, #0b3125 118%);
  }

  .home15 .bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .4;
  }

  .home15 .deco {
    position: absolute;
    left: 18px;
    top: 22px;
    width: 168px;
    height: 168px;
    border-radius: 50%;
    z-index: 1;
    background: var(--green2);
    filter: blur(110px);
  }

  .home15 .inner {
    position: relative;
    z-index: 2;
    padding-top: 0;
  }

  .home15 .tt {
    color: #fff;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 18px;
  }

  .home15 .main {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 18px;
  }

  .home15 .main .info {
    width: 100%;
    padding-bottom: 0;
  }

  .home15 .main .info .name {
    color: #fff;
    font-weight: 500;
    margin-bottom: 10px;
    text-transform: uppercase;
  }

  .home15 .main .info .desc {
    width: 100%;
    line-height: 1.7;
    letter-spacing: 0;
    color: rgba(255, 255, 255, .8);
  }

  .home15 .pics {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    justify-content: center;
    justify-items: center;
    align-items: center;
    gap: 12px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    scroll-padding: 20px;
    padding: 8px 0px 0;
    scrollbar-width: none;
  }

  .home15 .pics::-webkit-scrollbar {
    display: none;
  }

  .home15-pic {
    flex: 0 0 auto;
    width: 100%;
    height: 208px;
    margin: 0 auto;
    border-radius: 14px;
    overflow: hidden;
    position: relative;
    display: block;
    cursor: pointer;
    transition: transform .45s ease, box-shadow .45s ease;
    scroll-snap-align: start;
  }

  .home15-pic img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .6s ease;
  }

  .home15-pic::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 53%, rgba(0, 0, 0, .8) 100%);
  }

  .home15-pic .intr {
    left: 16px;
    bottom: 16px;
  }


  .home15-pic .t2 {
    max-height: none;
  }

  .home15-pic:hover .t2 {
    max-height: none;
  }

  .home15-pic:hover {
    transform: none;
    box-shadow: none;
  }

  .home15-pic:hover img {
    transform: none;
  }

  /* ========== Home16 ========== */
  .home16 {
    position: relative;
    width: 100%;
    min-height: auto;
    padding: 84px 0 0px;
    background: #fff;
    overflow: hidden;
  }

  /* 背景光晕 */
  .home16-deco {
    position: absolute;
    width: 193px;
    height: 192px;
    border-radius: 193px;
    opacity: 0.5;
    background: #4D8E7A;
    filter: blur(127px);
    z-index: 0;
    pointer-events: none;
  }

  .home16-deco1 {
    left: calc(50% - 403px);
    top: 292px;
  }

  .home16-deco2 {
    left: calc(50% + 4px);
    top: 203px;
  }

  .home16-deco3 {
    left: calc(50% + 282px);
    top: 271px;
  }

  .home16 .C-wrap {
    position: relative;
    z-index: 2;
  }

  .home16-tt {
    font-weight: 700;
    color: var(--tt);
    text-align: center;
    line-height: 1.2;
    margin-bottom: 28px;
  }

  .home16-slider-wrap {
    position: relative;
    z-index: 2;
    max-width: none;
    margin: 0;
    padding: 0 20px;
  }

  .home16-swiper {
    overflow: visible;
    width: 100%;
  }

  .home16-swiper .swiper-wrapper {
    align-items: stretch;
    flex-direction: column;
    gap: 14px;
    transform: none !important;
  }

  .home16-swiper .swiper-slide {
    width: 100% !important;
    height: auto;
  }

  /* 卡片：白底气泡 + 底部小三角 */
  .home16-card {
    position: relative;
    width: 100%;
    padding-bottom: 0;
    cursor: pointer;
  }

  .home16-card-inner {
    min-height: auto;
    padding: 25px;
    background: #fff;
    border-radius: 14px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 20px;
    transition: background .4s ease;
  }

  .home16-card-tail {
    display: none;
  }

  .home16-card .quote {
    line-height: 1.5;
    color: var(--tt2);
    transition: color .4s ease;
  }

  .home16-card .person {
    display: flex;
    align-items: center;
    gap: 6px;
  }

  .home16-card .person .avatar {
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    background: var(--green);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    transition: background .4s ease, color .4s ease;
  }

  .home16-card .person .avatar svg {
    display: block;
  }

  .home16-card .person .avatar svg [stroke] {
    transition: stroke .4s ease;
  }

  .home16-card .person .info .name {
    color: var(--tt);
    font-weight: 500;
    line-height: 1.2;
    margin-bottom: 3px;
    transition: color .4s ease;
  }

  .home16-card .person .info .pos {
    color: var(--tt2);
    line-height: 1.2;
    transition: color .4s ease;
  }

  /* 卡片 hover：深绿底 + 白字 + 白头像圈 */
  .home16-card:hover .home16-card-inner,
  .home16-card:hover .home16-card-tail {
    background: var(--green);
  }

  .home16-card:hover .quote,
  .home16-card:hover .person .info .name,
  .home16-card:hover .person .info .pos {
    color: #fff;
  }

  /* hover：与默认互换 —— 白底圆 + 深绿图标 */
  .home16-card:hover .person .avatar {
    background: #fff;
    color: var(--green);
  }

  /* 圆形描边箭头 */
  .home16-arrow {
    display: none;
  }

  .home16-arrow img {
    width: 100%;
    height: 100%;
    display: block;
    transition: filter .35s ease;
  }

  .home16-arrow.prev {
    left: 60px;
  }

  .home16-arrow.next {
    right: 60px;
  }

  .home16-arrow:hover {
    background: var(--green);
  }

  .home16-arrow:hover img {
    filter: brightness(0) invert(1);
  }

  .home16-arrow.swiper-button-disabled {
    opacity: .35;
    cursor: not-allowed;
    pointer-events: none;
  }

  /* ========== Home17 ========== */
  .home17 {
    position: relative;
    width: 100%;
    padding: 0px 0 77px 0;
    background: #fff;
    overflow: hidden;
  }

  .home17 .deco {
    position: absolute;
    left: 34px;
    bottom: 6px;
    width: 193px;
    height: 192px;
    z-index: 0;
    pointer-events: none;
    border-radius: 193px;
    opacity: 0.5;
    background: #4D8E7A;
    filter: blur(127px);
  }

  .home17 .inner {
    position: relative;
    z-index: 2;
    display: grid;
    justify-content: space-between;
    align-items: flex-start;
    gap: 40px;
  }

  .home17 .zuo {
    width: 100%;
    padding-top: 43px;
    flex-shrink: 0;
  }

  .home54 .zuo {
    width: 252px;
    padding-top: 43px;
    flex-shrink: 0;
  }

  .home17 .zuo .tt {
    font-weight: 600;
    color: var(--tt);
    line-height: 1.2;
    margin-bottom: 13px;
  }

  .home17 .zuo .desc {
    line-height: 1.5;
    color: var(--tt2);
    letter-spacing: .16px;
    margin-bottom: 24px;
    opacity: 0.8;
  }

  .home17 .zuo .contact {
    display: flex;
    flex-direction: column;
    gap: 10px;
  }

  .home17 .zuo .contact .label {
    color: var(--tt2);
    line-height: 14px;
    margin-bottom: 2px;
  }

  .home17 .zuo .contact .val {
    font-weight: 600;
    color: var(--green);
    font-family: var(--family-en);
  }

  .home17 .you {
    flex: 1;
    max-width: 474px;
  }

  .home17 .form-row {
    display: flex;
    gap: 12px;
    margin-bottom: 8px;
  }

  .home17 .form-item {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
  }

  .home17 .form-item .ftt {
    color: var(--tt);
    line-height: 1.5;
  }

  .home17 .form-item input,
  .home17 .form-item textarea {
    width: 100%;
    height: 30px;
    border: 1px solid var(--tt3);
    border-radius: 4px;
    padding: 6px 10px;
    color: var(--tt);
    background: #fff;
    transition: border-color .3s ease;
    font-family: var(--family);
    font-size: 14px;
  }

  .home17 .form-item textarea {
    height: 80px;
    resize: none;
    border-radius: 10px;
    line-height: 1.5;
  }

  .home17 .form-item input::placeholder,
  .home17 .form-item textarea::placeholder {
    color: var(--tt2);
  }

  .home17 .form-item input:focus,
  .home17 .form-item textarea:focus {
    border-color: var(--green);
  }

  .home17 .form-item.error input,
  .home17 .form-item.error textarea {
    border-color: #e44;
  }

  .home17 .form-item .err-tip {
    display: none;
    color: #e44;
    margin-top: 2px;
  }

  .home17 .form-item.error .err-tip {
    display: block;
  }

  .home17 .submit {
    width: 100%;
    height: 47px;
    border: 0;
    border-radius: 10px;
    background: var(--green);
    color: #fff;
    font-weight: 500;
    margin-top: 16px;
    cursor: pointer;
    transition: all .35s ease;
    font-family: var(--family);
  }

  .home17 .submit:hover {
    background: #fff;
    color: var(--green);
  }

  /* ========== Footer（手机端：纵向堆叠 + 紧凑导航） ========== */
  .footer {
    position: relative;
    width: 100%;
    padding: 36px 0 20px;
    color: #fff;
    overflow: hidden;
    background: var(--green);
    height: auto;
  }

  .footer .bg {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
  }

  .footer .bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .25;
  }

  .footer .bg::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(11, 49, 37, .4) 0%, rgba(11, 49, 37, .85) 100%);
  }

  .footer .inner {
    position: relative;
    z-index: 2;
  }

  /* 顶部：单列堆叠 - logo+联系 / 导航网格 / 标语 */
  .footer .top {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 32px;
    margin-bottom: 24px;
  }

  /* logo + 联系信息 + 社交按钮 */
  .footer .top .col-logo {
    display: flex;
    flex-direction: column;
    gap: 20px;
    flex-shrink: 0;
  }

  .footer .top .col-logo .logo {
    width: 120px;
    height: 36px;
  }

  .footer .top .col-logo .logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .footer .contact {
    display: flex;
    flex-direction: column;
    gap: 12px;
    overflow: visible;
  }

  .footer .contact .item {
    display: flex;
    flex-direction: column;
    gap: 4px;
  }

  .footer .contact .item .label {
    line-height: 1.4;
    color: rgba(255, 255, 255, .6);
    font-size: 12px;
  }

  .footer .contact .item .val {
    font-weight: 400;
    color: #fff;
    font-size: 16px;
    line-height: 1.4;
    letter-spacing: .3px;
    font-family: var(--family-en);
  }

  /* 社交按钮：圆形描边、间距适中 */
  .footer .social {
    display: flex;
    align-items: center;
    gap: 12px;
    overflow: visible;
  }

  .footer .social-btn {
    position: relative;
    width: 32px;
    height: 32px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .2);
    transition: background-color .3s ease, border-color .3s ease;
  }

  .footer .social-btn .social-ic {
    width: 100%;
    height: 100%;
    display: block;
    transition: filter .3s ease;
  }

  .footer .social-btn.is-qr-open {
    background: #fff;
    border-color: #fff;
  }

  .footer .social-btn.is-qr-open .social-ic {
    filter: brightness(0) saturate(100%) invert(11%) sepia(32%) saturate(1200%) hue-rotate(118deg) brightness(92%) contrast(101%);
  }

  .footer .social-qr {
    position: absolute;
    left: 50%;
    bottom: calc(100% + 10px);
    transform: translateX(-30%);
    display: block;
    width: 120px;
    height: 120px;
    padding: 0;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 6px 20px rgba(0, 0, 0, .22);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .25s ease, visibility .25s ease, transform .25s ease;
    z-index: 30;
    overflow: hidden;
  }

  .footer .social-qr img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
  }

  .footer .social-btn.is-qr-open .social-qr {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateX(-30%) translateY(-4px);
  }

  .footer .top .col-logo,
  .footer .contact,
  .footer .social {
    overflow: visible;
  }

  /* 6 列导航 → 手机端 2 列网格 */
  .footer .nav-cols {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 24px;
    row-gap: 22px;
    flex-shrink: 0;
  }

  .footer .nav-cols .col {
    width: auto;
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-width: 0;
  }

  .footer .nav-cols .col .ctt {
    font-weight: 400;
    color: var(--white);
    font-size: 15px;
    line-height: 1.3;
  }

  .footer .nav-cols .col .links {
    display: flex;
    flex-direction: column;
    gap: 6px;
    font-weight: 300;
  }

  .footer .nav-cols .col .links a {
    color: rgba(253, 253, 253, .7);
    font-size: 13px;
    line-height: 1.5;
    transition: color .3s ease;
  }

  .footer .nav-cols .col .links a:active {
    color: #fff;
  }

  /* 标语：左对齐，全宽 */
  .footer .slogan {
    width: 100%;
    font-weight: 400;
    color: #fff;
    line-height: 1.4;
    text-align: left;
    font-size: 24px;
    padding-top: 8px;
    border-top: 1px solid rgba(255, 255, 255, .12);
  }

  /* 底部备案 + 法律链接：纵向堆叠 */
  .footer .bot {
    padding-top: 16px;
    border-top: 1px solid rgba(255, 255, 255, .18);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 10px;
    color: rgba(255, 255, 255, .55);
    font-size: 11px;
    line-height: 1.5;
  }

  .footer .bot .left {
    word-break: break-word;
  }

  .footer .bot .right {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
  }

  .footer .bot a {
    transition: color .25s ease;
  }

  .footer .bot a:active {
    color: #fff;
  }

  /* ========== Home7 公共首屏 banner（home1/home10/home50 共用） ========== */
  .home7 {
    position: relative;
    width: 96%;
    margin: 0 auto;
    margin-top: var(--head);
    height: 260px;
    overflow: hidden;
    background: #fff;
  }

  .home7 .bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    color: #fff;
  }

  .home7 .bg::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0);
    border-radius: 20px;
    height: 100%;
    width: 100%;
    margin: 0 auto;
  }

  .home7 .bg img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 12px;
    margin: 0 auto;
  }

  .home7 .wrap {
    position: absolute;
    left: 10%;
    bottom: 38px;
    z-index: 2;
    display: flex;
    align-items: flex-end;
    gap: 5px;
  }

  .home7 .tt {
    color: #fff;
    line-height: 1.5;
    font-weight: 500;
    text-shadow: 3px 2px 4px rgba(0, 0, 0, .2);
  }

  .home7 .ico {
    width: 49px;
    height: 49px;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .home7 .ico img {
    width: 30px;
    height: auto;
  }

  /* ---------- 各内页 banner 在 home11 基础上的单独覆盖 ---------- */
  .home18 .wrap {
    left: 60px;
    bottom: 78px;
  }

  .home18 .ico,
  .home18 .ico img {
    width: 49px;
    height: 49px;
  }

  .home18 .tt {
    line-height: 1.5;
    font-weight: 500;
  }

  .home35 .wrap {
    left: 60px;
    bottom: 78px;
  }

  .home35 .ico,
  .home35 .ico img {
    width: 49px;
    height: 49px;
  }

  .home35 .tt {
    line-height: 1.5;
    font-weight: 500;
  }

  /* 新闻 news.html */
  .home31 .bg img {
    display: block;
    width: 96%;
    height: 360px;
    object-fit: cover;
    border-radius: 12px;
    margin: 0 auto;
  }

  .home42 {
    height: 408px;
  }

  /* ESG esg.html */
  .home42 .bg img {
    display: block;
    width: 96%;
    height: 360px;
    object-fit: cover;
    border-radius: 12px;
    margin: 0 auto;
  }

  .home42 .bg::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.2);
    border-radius: 20px;
    height: 360px;
    width: 96%;
    margin: 0 auto;
  }

  /* 新闻 news.html */
  .home31 .wrap {
    position: absolute;
    left: 60px;
    bottom: 79px;
    z-index: 2;
    display: flex;
    align-items: flex-end;
    gap: 5px;
  }

  /* 招贤纳士 joinus.html */
  .home50 .wrap {
    position: absolute;
    left: 60px;
    bottom: 75px;
    z-index: 2;
    display: flex;
    align-items: flex-end;
    gap: 5px;
  }

  /* ESG esg.html */
  .home42 .wrap {
    position: absolute;
    left: 60px;
    bottom: 78px;
    z-index: 2;
    display: flex;
    align-items: flex-end;
    gap: 5px;
  }

  /* ========== Home19 核心产品体系手风琴（横向排列） ========== */
  .home19 {
    padding: 36px 0 48px;
    background: #fff;
    overflow: hidden;
  }

  .home19-tt {
    font-weight: 600;
    color: var(--tt);
    text-align: center;
    line-height: 1.2;
    margin-bottom: 24px;
    font-size: 26px;
  }

  .home19-systems {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 8px;
    height: 380px;
    margin: 0 auto;
    padding: 0 16px;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  .home19-systems::-webkit-scrollbar {
    display: none;
  }

  .home19-system {
    position: relative;
    flex: 0 0 168px;
    width: 168px;
    height: 100%;
    border-radius: 12px;
    overflow: hidden;
    cursor: pointer;
    flex-shrink: 0;
    transition: flex .5s cubic-bezier(.4, 0, .2, 1), width .5s cubic-bezier(.4, 0, .2, 1);
  }

  .home19-system.active {
    flex: 1 1 260px;
    width: auto;
    min-width: 240px;
  }

  .home19-system .bg {
    position: absolute;
    inset: 0;
  }

  .home19-system .bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .home19-system .bg::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, #000 197%);
    border-radius: 12px;
  }

  .home19-system:not(.active) .bg::after {
    background: rgba(0, 0, 0, .45);
  }

  .home19-system .label {
    position: absolute;
    color: #fff;
    font-weight: 400;
    z-index: 2;
    transition: opacity .35s ease;
    left: 50%;
    right: auto;
    bottom: 20px;
    width: 100%;
    transform: translateX(-50%);
    font-weight: 400;
  }

  .home19-system.active .label {
    opacity: 0;
    pointer-events: none;
  }

  .home19-system .expand {
    position: absolute;
    left: 16px;
    right: 16px;
    bottom: 16px;
    z-index: 2;
    display: flex;
    flex-direction: column;
    gap: 10px;
    opacity: 0;
    visibility: hidden;
    transition: opacity .4s ease, visibility .4s ease;
  }

  .home19-system.active .expand {
    opacity: 1;
    visibility: visible;
  }

  .home19-system .expand .name {
    color: #fff;
    font-size: 22px;
    font-weight: 500;
    line-height: 1.25;
  }

  .home19-system .expand .desc {
    color: rgba(255, 255, 255, .75);
    font-size: 13px;
    line-height: 1.7;
    max-width: 100%;
    font-weight: 400;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .home19-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 24px;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 500px;
    color: #fff;
    background: rgba(255, 255, 255, .2);
    box-shadow: inset 0 2px 0 rgba(255, 255, 255, .5);
    transition: all .35s ease;
    width: fit-content;
    font-weight: 300;
  }

  .home19-btn:hover {
    background: rgba(255, 255, 255, .35);
  }

  .home19-btn .arrow {
    display: inline-block;
    width: 8px;
    height: 8px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='white'%3E%3Cpath d='M3 8h10M9 4l4 4-4 4' stroke='white' stroke-width='1.5' fill='none'/%3E%3C/svg%3E") center/contain no-repeat;
  }

  /* ========== Home20 产品列表（手机端重设计） ========== */
  .home20 {
    padding: 48px 0 56px;
    background: #f8faf9;
  }

  .home20 .C-wrap {
    width: 100%;
    max-width: 100%;
    padding: 0 20px;
    margin: 0 auto;
  }

  .home20-head {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 14px;
    margin-bottom: 16px;
    border-bottom: 0;
    padding-bottom: 0;
    width: 100%;
    height: auto;
    position: relative;
    z-index: 1;
  }

  .home20-head .tt {
    font-size: 26px;
    font-weight: 600;
    color: var(--green);
    line-height: 1.3;
  }

  .home20-nav {
    display: flex !important;
    flex-wrap: nowrap;
    align-items: center;
    gap: 8px;
    width: auto;
    height: auto;
    padding: 0 20px 4px;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    scroll-snap-type: x proximity;
  }

  .home20-nav::-webkit-scrollbar {
    display: none;
  }

  .home20-nav a {
    position: relative;
    display: inline-flex;
    align-items: center;
    height: 34px;
    padding: 0 16px;
    border-radius: 999px;
    border: 1px solid #d4e4de;
    background: #fff;
    color: var(--tt2);
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0;
    transition: background .25s ease, border-color .25s ease, color .25s ease;
    flex: 0 0 auto;
    scroll-snap-align: start;
    white-space: nowrap;
  }

  .home20-nav a::after {
    display: none !important;
    content: none !important;
  }

  .home20-nav a.on {
    color: #fff;
    background: var(--green);
    border-color: var(--green);
    box-shadow: 0 4px 12px rgba(11, 49, 37, .18);
  }

  .home20-filters {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 8px;
    margin: 0 -20px 18px;
    padding: 0 20px 4px;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    scroll-snap-type: x proximity;
  }

  .home20-filters::-webkit-scrollbar {
    display: none;
  }

  .home20-filter {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 32px;
    min-width: 0;
    padding: 0 14px;
    border-radius: 999px;
    border: 1px solid #d4e4de;
    color: var(--green);
    font-size: 13px;
    text-align: center;
    transition: all .25s ease;
    cursor: pointer;
    background: #fff;
    flex: 0 0 auto;
    scroll-snap-align: start;
    white-space: nowrap;
  }

  .home20-filter.on {
    background: var(--green);
    color: #fff;
    border-color: var(--green);
  }

  .home20-grid.is-loading {
    opacity: .45;
    pointer-events: none;
    transition: opacity .25s ease;
  }

  .home20-main {
    display: flex;
    flex-direction: column;
    gap: 18px;
    align-items: stretch;
  }

  .home20-feature {
    width: 100%;
    height: 200px;
    padding: 18px 16px 16px;
    border-radius: 16px;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 8px;
    box-shadow: 0 12px 32px rgba(11, 49, 37, .12);
    flex: none;
  }

  .home20-feature .bg {
    position: absolute;
    inset: 0;
    z-index: 0;
  }

  .home20-feature .bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .home20-feature .bg::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, .05) 0%, rgba(11, 49, 37, .72) 100%);
  }

  .home20-feature .name,
  .home20-feature .desc {
    position: relative;
    z-index: 1;
    color: #fff;
  }

  .home20-feature .name {
    font-size: 22px;
    line-height: 1.25;
    font-weight: 600;
  }

  .home20-feature .desc {
    font-size: 13px;
    line-height: 1.75;
    max-width: 100%;
    font-weight: 400;
    opacity: .92;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .home20-grid-wrap {
    flex-shrink: 0;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 20px;
  }

  .home20-grid {
    display: flex;
    flex-direction: column;
    gap: 14px;
  }

  .home20-row {
    display: flex;
    flex-direction: column;
    gap: 14px;
  }

  .home20-card {
    position: relative;
    width: 100%;
    height: auto;
    min-height: 0;
    border-radius: 16px;
    overflow: hidden;
    background: #fff;
    border: 1px solid #e6eeeb;
    display: flex;
    flex-direction: column;
    box-shadow: 0 8px 24px rgba(11, 49, 37, .08);
    transition: transform .2s ease, box-shadow .2s ease;
  }

  .home20-card:hover {
    background: #fff;
  }

  .home20-card:active {
    transform: scale(.99);
    box-shadow: 0 4px 16px rgba(11, 49, 37, .10);
  }

  .home20-card .default {
    position: relative;
    z-index: 1;
    height: auto;
    padding: 0;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    justify-content: flex-start;
    opacity: 1;
    visibility: visible;
  }

  .home20-card:hover .default {
    opacity: 1;
    visibility: visible;
  }

  .home20-card .pic {
    width: 100%;
    height: 160px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(180deg, #f3f7f5 0%, #eef4f1 100%);
    flex-shrink: 0;
  }

  .home20-card .pic img {
    width: 72%;
    height: 72%;
    max-height: 130px;
    object-fit: contain;
  }

  .home20-card .info {
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-width: 0;
    flex: 1;
    padding: 14px 16px 12px;
    border-bottom: 1px solid #eef2f0;
  }

  .home20-card .info .name {
    color: var(--green);
    font-size: 17px;
    font-weight: 600;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .home20-card .info .tag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 22px;
    padding: 0 10px;
    border: 1px solid rgba(11, 49, 37, .2);
    border-radius: 999px;
    color: var(--green);
    font-size: 12px;
    width: fit-content;
    background: #f6faf8;
  }

  .home20-card .hover-panel {
    position: relative;
    inset: auto;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 12px 16px 16px;
    background: #fff;
    opacity: 1;
    visibility: visible;
  }

  .home20-card .hover-head {
    display: none;
  }

  .home20-card .hover-body {
    display: flex;
    flex-direction: column;
    gap: 10px;
  }

  .home20-card .spec-row {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding-bottom: 8px;
    border-bottom: 1px dashed #e8eeeb;
  }

  .home20-card .spec-row:last-of-type {
    border-bottom: 0;
    padding-bottom: 0;
  }

  .home20-card .spec-row .label {
    flex: 0 0 72px;
    width: 72px;
    flex-shrink: 0;
    color: var(--tt3);
    font-size: 12px;
    line-height: 1.5;
    white-space: nowrap;
  }

  .home20-card .spec-row .val {
    flex: 1;
    min-width: 0;
    color: var(--tt);
    font-size: 13px;
    line-height: 1.5;
    border-bottom: 0;
    padding-bottom: 0;
  }

  .home20-card .link-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 100%;
    height: 40px;
    margin-top: 4px;
    padding: 0 16px;
    background: var(--green);
    border: 0;
    border-radius: 10px;
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.4;
    transition: opacity .2s ease;
  }

  .home20-card:hover .link-btn {
    background: var(--green);
  }

  .home20-card .link-btn:active {
    opacity: .88;
  }

  .home20-card .link-btn .arrow {
    flex-shrink: 0;
    width: 14px;
    height: 14px;
    object-fit: contain;
    filter: brightness(0) invert(1);
  }

  .home20-card .hover-pic {
    display: none;
  }

  .home20-page,
  .home32-page {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    padding-top: 4px;
  }

  .home20-page .pg-btn,
  .home32-page .pg-btn {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1px solid #d4e4de;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all .25s ease;
    color: var(--green);
    font-size: 18px;
    line-height: 1;
    flex-shrink: 0;
  }

  .home20-page .pg-btn img,
  .home32-page .pg-btn img {
    width: 8px;
    height: 8px;
    filter: brightness(0) saturate(100%) invert(13%) sepia(38%) saturate(1066%) hue-rotate(118deg) brightness(95%) contrast(96%);
    transition: filter .25s ease;
  }

  .home20-page .pg-btn:active:not(:disabled),
  .home32-page .pg-btn:active:not(:disabled) {
    background: var(--green);
    color: #fff;
    border-color: var(--green);
  }

  .home20-page .pg-btn:active:not(:disabled) img,
  .home32-page .pg-btn:active:not(:disabled) img {
    filter: brightness(0) invert(1);
  }

  .home20-page .pg-btn:disabled,
  .home32-page .pg-btn:disabled {
    opacity: .35;
    cursor: not-allowed;
  }

  .home20-page .nums,
  .home32-page .nums {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: center;
  }

  .home20-page .nums a,
  .home20-page .nums span,
  .home32-page .nums a,
  .home32-page .nums span {
    color: var(--tt2);
    font-size: 14px;
    line-height: 1.4;
    transition: color .25s ease;
  }

  .home20-page .nums a.on,
  .home32-page .nums a.on {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 32px;
    height: 32px;
    padding: 0 8px;
    border-radius: 999px;
    background: var(--green);
    color: #fff;
    font-weight: 500;
  }

  .home20-page .nums .dots,
  .home32-page .nums .dots {
    font-weight: 500;
    color: var(--tt3);
  }

  /* ========== Home21 CTA ========== */
  .home21 {
    position: relative;
    width: 100%;
    height: 400px;
    overflow: hidden;
  }

  .home21 .bg {
    position: absolute;
    inset: 0;
  }

  .home21 .bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .home21 .bg::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, .5);
  }

  .home21 .inner {
    position: relative;
    z-index: 2;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 30px;
    padding: 0 60px;
  }

  .home21 .tt {
    color: #fff;
    font-weight: 500;
    line-height: 1.5;
    padding-bottom: 28px;
  }

  .home21 .desc {
    color: #fff;
    line-height: 1.5;
    letter-spacing: .24px;
    margin-top: -18px;
  }

  .home21-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 25px;
    padding: 6px 16px;
    border: 1px solid #fff;
    border-radius: 500px;
    color: #fff;
    font-weight: 500;
    transition: all .35s ease;
  }

  .home21-cta:hover {
    background: #fff;
    color: var(--green);
  }

  /* ========== productdetail.html — home22 产品详情首屏 ========== */
  .home7.home22,
  .home22 {
    height: auto;
    overflow: visible;
    margin-top: var(--head);
    padding: 16px 0 0;
    background: #f8faf9;
  }

  .home22-banner {
    position: relative;
    width: calc(100% - 32px);
    max-width: 100%;
    height: auto;
    min-height: 0;
    margin: 0 auto;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 12px 32px rgba(11, 49, 37, .12);
  }

  .home22-banner .bg {
    position: relative;
    width: 100%;
    height: 220px;
    z-index: 0;
  }

  .home22-banner .bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .home22-info {
    position: relative;
    left: auto;
    top: auto;
    bottom: auto;
    z-index: 2;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 18px 16px 20px;
    background: #fff;
    border-radius: 0 0 16px 16px;
  }

  .home22-info .title {
    color: var(--tt);
    font-size: 26px;
    font-weight: 600;
    line-height: 1.25;
    text-shadow: none;
  }

  .home22-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
  }

  .home22-tag {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    height: 26px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 12px;
    white-space: nowrap;
  }

  .home22-tag img {
    width: 12px;
    height: 12px;
  }

  .home22-tag.green {
    background: #ecfdf5;
    border: 1px solid #a7f3d0;
    color: #007a55;
  }

  .home22-tag.blue {
    background: #eff6ff;
    border: 1px solid #bfdbfe;
    color: #1447e6;
  }

  .home22-spec {
    display: flex;
    gap: 10px;
    padding: 12px;
    border-radius: 12px;
    background: #f3f7f5;
  }

  .home22-spec .labels,
  .home22-spec .values {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
  }

  .home22-spec .labels .row,
  .home22-spec .values .row {
    display: flex;
    align-items: center;
    gap: 4px;
    min-height: 20px;
    font-size: 12px;
    line-height: 1.4;
  }

  .home22-spec .labels .row {
    color: var(--tt3);
  }

  .home22-spec .labels .row .ic {
    width: 14px;
    height: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
  }

  .home22-spec .labels .row .ic img {
    width: 12px;
    height: 12px;
  }

  .home22-spec .values .row {
    color: var(--tt);
    font-weight: 500;
    font-size: 13px;
  }

  .home22-btns {
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: stretch;
    padding-top: 4px;
  }

  .home22-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    height: 44px;
    padding: 0 20px;
    border-radius: 999px;
    border: 1px solid #fff;
    background: var(--green);
    font-size: 15px;
    font-weight: 500;
    transition: all .25s ease;
  }

  .home22-btn img {
    width: 14px;
  }

  /* ========== productdetail.html — home23 产品特点 / 演示 / 参数 ========== */
  .home23 {
    position: relative;
    background: #fff;
    padding-top: 8px;
    margin-top: 20px;
  }

  .home23-nav {
    position: static;
    top: var(--head);
    z-index: 30;
    background: #fff;
    margin-bottom: 20px;
    box-shadow: 0 4px 12px rgba(11, 49, 37, .04);
  }

  .home23-nav .inner {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 8px;
    height: auto;
    min-height: 44px;
    padding: 8px 20px 0;
    margin: 0;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    border-bottom: 1px solid #e8eeeb;
  }

  .home23-nav .inner::-webkit-scrollbar {
    display: none;
  }

  .home23-nav a {
    position: relative;
    display: inline-flex;
    align-items: center;
    height: 36px;
    padding: 0 14px;
    border-radius: 999px;
    color: var(--tt2);
    font-size: 14px;
    font-weight: 500;
    white-space: nowrap;
    flex: 0 0 auto;
    transition: color .25s ease, background .25s ease;
  }

  .home23-nav a.on {
    color: #fff;
    background: var(--green);
  }

  .home23-nav a::after {
    display: none;
  }

  .home23-panel {
    position: relative;
    top: auto;
    width: 100%;
    max-width: 100%;
    margin: 0 auto 16px;
    padding: 0 20px;
    background: transparent;
    border-radius: 0;
    overflow: visible;
  }

  .home23-panel .panel-inner {
    width: 100%;
    max-width: 100%;
    margin: 0;
    min-height: 0;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 20px;
    padding: 20px 16px;
    background: #f5f7f6;
    border-radius: 16px;
  }

  .home23-feature .zuo,
  .home23-demo .zuo {
    width: 100%;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin-top: 0;
  }

  .home23-feature .zuo .tt,
  .home23-demo .zuo .tt {
    color: var(--tt);
    font-size: 24px;
    font-weight: 600;
    line-height: 1.3;
    margin-bottom: 0;
  }

  .home23-feature .zuo .desc,
  .home23-demo .zuo .desc {
    color: var(--tt2);
    font-size: 14px;
    line-height: 1.75;
  }

  .home23-btns {
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: stretch;
    padding-top: 4px;
  }

  .home23-pill {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    height: 42px;
    padding: 0 20px;
    border: 1px solid var(--green);
    border-radius: 999px;
    color: var(--green);
    font-size: 15px;
    font-weight: 500;
    background: #fff;
    transition: all .25s ease;
  }

  .home23-pill img {
    width: 14px;
    height: 14px;
  }

  .home23-cards {
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: 100%;
  }

  .home23-card {
    position: relative;
    width: 100%;
    height: auto;
    min-height: 88px;
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    padding: 16px 56px 16px 16px;
    border: 1px solid #e8eeeb;
    transition: background .25s ease, border-color .25s ease;
  }

  .home23-card:active {
    background: var(--green);
    border-color: var(--green);
  }

  .home23-card:active .head .name,
  .home23-card:active .ctext {
    color: #fff;
  }

  .home23-card:active .head .ic img {
    filter: brightness(0) invert(1);
  }

  .home23-card:active .num {
    color: rgba(255, 255, 255, .35);
  }

  .home23-card .head {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 6px;
  }

  .home23-card .head .ic {
    width: 32px;
    height: 32px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .home23-card .head .ic img {
    width: 32px;
    height: 32px;
  }

  .home23-card .head .name {
    color: var(--tt);
    font-size: 16px;
    font-weight: 500;
    line-height: 1.4;
    white-space: normal;
  }

  .home23-card .ctext {
    color: var(--tt2);
    font-size: 13px;
    line-height: 1.6;
    max-width: 100%;
  }

  .home23-card .num {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    font-family: var(--family-num);
    font-weight: 700;
    font-size: 36px;
    line-height: 1;
    letter-spacing: 0;
    color: rgba(11, 49, 37, .12);
  }

  .home23-demo .you {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 10;
    flex-shrink: 0;
    border-radius: 12px;
    overflow: hidden;
    background: #e8eae9;
  }

  .home23-demo .you video,
  .home23-demo .you img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .home23-params {
    position: relative;
    top: auto;
    padding: 0 20px 32px;
  }

  .home23-params .params-inner {
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 24px 16px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    background: #f5f7f6;
    border-radius: 16px;
  }

  .home23-params .tt {
    color: var(--tt);
    font-size: 24px;
    font-weight: 600;
    line-height: 1.3;
  }

  .home23-table {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }

  .home23-col {
    flex: none;
    width: 100%;
    min-width: 0;
    border: 1px solid #e8eeeb;
    border-radius: 12px;
    overflow: hidden;
    background: #fff;
  }

  .home23-row {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    min-height: 44px;
    padding: 10px 12px;
    background: #fff;
  }

  .home23-row:nth-child(odd) {
    background: #f8faf9;
  }

  .home23-row .k {
    width: 88px;
    flex-shrink: 0;
    color: var(--tt3);
    font-size: 12px;
    line-height: 1.5;
  }

  .home23-row .v {
    flex: 1;
    min-width: 0;
    color: var(--tt);
    font-size: 13px;
    line-height: 1.5;
    font-weight: 500;
  }

  /* ========== Home31 新闻首屏（banner 见上方 home11 / .home31 覆盖） ========== */

  /* ========== Home32 新闻列表（Figma 10294:9606） ========== */
  .home32 {
    position: relative;
    background: #fff;
    padding: 41px 0 94px;
    overflow: hidden;
  }

  .home32 .deco {
    display: none;
  }

  .home32 .C-wrap {
    width: 800px;
    position: relative;
    z-index: 1;
  }

  /* 顶部分类 tabs（圆角胶囊） */
  .home32-tabs {
    display: flex;
    gap: 12px;
    align-items: center;
    justify-content: flex-start;
    margin-bottom: 18px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }

  .home32-tabs::-webkit-scrollbar {
    display: none;
  }

  .home32-tab {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto;
    min-width: 0;
    max-width: none;
    padding: 6px 16px;
    border-radius: 500px;
    color: var(--tt2);
    font-weight: 500;
    white-space: nowrap;
    transition: background-color .35s ease, color .35s ease;
    flex: 0 0 auto;
    scroll-snap-align: start;
  }

  .home32-tab.on,
  .home32-tab:hover {
    background: var(--green);
    color: #fff;
  }

  /* 新闻多标签胶囊 */
  .news-tag-pill {
    position: absolute;
    left: 10px;
    top: 10px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    max-width: calc(100% - 20px);
    padding: 4px 10px;
    border-radius: 999px;
    background: rgba(0, 0, 0, .5);
    border: 1px solid rgba(255, 255, 255, .18);
    color: #fff;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    line-height: 1.45;
    font-weight: 400;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    pointer-events: none;
  }

  .news-tag-pill--detail,
  .news-tag-pill--inline {
    position: static;
    max-width: 100%;
    pointer-events: auto;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    background: rgba(0, 0, 0, .06);
    border-color: rgba(0, 0, 0, .08);
    color: var(--tt2);
  }

  .home32-feature .pic,
  .home32-card .pic,
  .home8-news-card .pic {
    position: relative;
  }

  .home8-news-card .news-tag-pill {
    left: 12px;
    top: 12px;
  }

  /* 通用：分类标签 / 时间 / 了解更多 */
  .home32 .cat {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    padding: 3px 7px;
    border: 1px solid rgba(153, 153, 153, .2);
    border-radius: 3px;
    color: var(--tt3);
    line-height: 1.5;
    font-weight: 400;
  }

  .home32 .meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
  }

  .home32 .meta .date {
    color: #686d7a;
    line-height: 11px;
  }

  .home32 .meta .more {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: var(--tt2);
    line-height: 1.5;
    transition: color .3s ease;
  }

  .home32 .meta .more img {
    width: 14px;
    height: 14px;
    transition: transform .3s ease, filter .3s ease;
  }

  .home32-feature:hover .meta .more,
  .home32-card:hover .meta .more {
    color: var(--green);
  }

  .home32-feature:hover .meta .more img,
  .home32-card:hover .meta .more img {
    transform: translateX(2px);
  }

  /* 头条 feature：items-end + 左图 self-stretch + 右 545.33px 信息块（内容撑高） */
  .home32-feature {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    width: 100%;
    margin-bottom: 18px;
    background: #fff;
    border-radius: 14px;
    overflow: hidden;
    border: 1px solid rgba(17, 17, 17, .08);
  }

  .home32-feature .pic {
    position: relative;
    width: 100%;
    flex: none;
    height: 196px;
    overflow: hidden;
  }

  .home32-feature .pic img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .6s ease;
  }

  .home32-feature .pic::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, .12) 0%, rgba(0, 0, 0, .55) 100%);
    pointer-events: none;
  }

  .home32-feature:hover .pic img {
    transform: scale(1.08);
  }

  .home32-feature .info {
    width: 100%;
    padding: 14px 14px 16px;
    display: flex;
    flex-direction: column;
    gap: 14px;
    align-items: flex-start;
  }

  .home32-feature .info .top {
    display: flex;
    flex-direction: column;
    gap: 6px;
    width: 100%;
  }

  .home32-feature .info .tt {
    color: var(--green);
    line-height: 1.5;
    font-weight: 400;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  /* 列表 9 卡片：3 行 × 3 列（前两张固定 509.333px，第 3 张 flex 占满） */
  .home32-grid {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 34px;
  }

  .home32-row {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: stretch;
    height: auto;
  }

  .home32-card {
    display: flex;
    flex-direction: column;
    flex: 0 0 auto;
    width: 100%;
    min-width: 0;
    height: auto;
    border-radius: 14px;
    overflow: hidden;
    background: #fff;
    border: 1px solid rgba(17, 17, 17, .08);
  }

  .home32-card .pic {
    position: relative;
    width: 100%;
    flex: none;
    height: 168px;
    overflow: hidden;
  }

  .home32-card .pic img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .6s ease;
  }

  .home32-card .pic::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, .4);
    pointer-events: none;
  }

  .home32-card:hover .pic img {
    transform: scale(1.08);
  }

  .home32-card .info {
    flex-shrink: 0;
    padding: 14px 14px 16px;
    display: flex;
    flex-direction: column;
    gap: 12px;
  }

  .home32-card .info .top {
    display: flex;
    flex-direction: column;
    gap: 6px;
  }

  .home32-card .info .tt {
    color: var(--green);
    line-height: 1.5;
    font-weight: 400;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  /* ========== 新闻详情 newsdetail / home34 ========== */
  .newsdetail {
    position: relative;
    margin-top: var(--head);
    padding: 75px 0 79px;
    background: #fff;
    overflow: hidden;
  }

  .newsdetail .deco {
    position: absolute;
    left: -195px;
    top: 421px;
    width: 345px;
    height: 345px;
    border-radius: 50%;
    background: var(--green2);
    opacity: .14;
    filter: blur(80px);
    z-index: 0;
    pointer-events: none;
  }

  .newsdetail-inner {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: calc(100% - 40px);
    margin: 0 auto;
    display: flex;
    gap: 43px;
    align-items: flex-start;
  }

  .newsdetail-main {
    width: 100%;
    flex-shrink: 0;
  }

  /* 标题区 */
  .newsdetail-head {
    margin-bottom: 34px;
  }

  .newsdetail-head .tt {
    color: #000;
    font-weight: 500;
    line-height: 1.5;
    margin-bottom: 24px;
  }

  .newsdetail-head .meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 6px;
  }

  .newsdetail-head .tags {
    display: flex;
    gap: 3px;
    align-items: center;
  }

  .newsdetail .cat {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 3px 7px;
    border: 1px solid rgba(153, 153, 153, .2);
    border-radius: 3px;
    color: var(--tt3);
  }

  .newsdetail-head .date {
    color: var(--tt2);
    letter-spacing: .3px;
  }

  .newsdetail-head .line {
    height: 1px;
    width: 100%;
    background: rgba(0, 0, 0, .8);
  }

  /* 正文：图片与段落同一父元素 */
  .newsdetail-content {
    display: flex;
    flex-direction: column;
  }

  .newsdetail-content h3 {
    color: var(--tt);
    font-weight: 500;
    font-size: 15px;
    line-height: 1.5;
    margin-top: 10px;
  }

  .newsdetail-content p {
    color: var(--tt2);
    line-height: 1.5;
    font-size: 12px;
  }

  .newsdetail-content img {
    display: block;
    width: 100%;
    height: auto;
    margin: 10px 0;
    border-radius: 8px;
  }

  .newsdetail-foot {
    margin-top: 28px;
    display: flex;
    flex-direction: column;
    gap: 16px;
  }

  .newsdetail-foot .line {
    height: 1px;
    width: 100%;
    background: #e5e6eb;
  }

  .newsdetail-foot .bar {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 100%;
  }

  .newsdetail-foot .share {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 16px;
    background: #f8faf9;
    border: 1px solid #eef2f0;
    border-radius: 12px;
  }

  .newsdetail-foot .share .lb {
    color: var(--tt2);
    font-size: 14px;
    font-weight: 500;
    flex-shrink: 0;
  }

  .newsdetail-foot .share .icons {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex: 1;
  }

  .newsdetail-foot .share .ic {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border: 1px solid #e3ece8;
    box-shadow: 0 4px 12px rgba(11, 49, 37, .06);
    transition: all .25s ease;
  }

  .newsdetail-foot .share .ic img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .newsdetail-foot .share .ic:active {
    background: var(--green);
    border-color: var(--green);
  }

  .newsdetail-foot .share .ic:active img {
    filter: brightness(0) invert(1);
  }

  .newsdetail-foot .acts {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    width: 100%;
  }

  .newsdetail-foot .act {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 16px;
    border-radius: 10px;
    background: #f3f7f5;
    border: 1px solid #e3ece8;
    color: var(--green);
    font-size: 14px;
    font-weight: 500;
    transition: all .25s ease;
  }

  .newsdetail-foot .act[data-act="list"] {
    grid-column: 1 / -1;
    min-height: 48px;
    background: var(--green);
    border-color: var(--green);
    color: #fff;
    box-shadow: 0 8px 20px rgba(11, 49, 37, .14);
  }

  .newsdetail-foot .act[data-act="list"]:active {
    background: var(--green2);
    border-color: var(--green2);
  }

  .newsdetail-foot .act[data-act="prev"]:active,
  .newsdetail-foot .act[data-act="next"]:active {
    background: var(--green);
    border-color: var(--green);
    color: #fff;
  }

  .newsdetail-foot .act.disabled {
    opacity: .45;
    cursor: not-allowed;
    pointer-events: none;
    background: #f5f5f5;
    border-color: #ececec;
    color: var(--tt3);
    box-shadow: none;
  }

  /* 侧边栏 */
  .newsdetail-side {
    width: 128px;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    gap: 9px;
  }

  .newsdetail-side .side-tt {
    color: var(--tt);
    line-height: 14px;
  }

  .newsdetail-side .side-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }

  .newsdetail-side .side-card {
    display: flex;
    flex-direction: column;
    border-radius: 8px;
    overflow: hidden;
    background: #fff;
  }

  .newsdetail-side .side-card .pic {
    position: relative;
    height: 80px;
    overflow: hidden;
  }

  .newsdetail-side .side-card .pic img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .6s ease;
  }

  .newsdetail-side .side-card:hover .pic img {
    transform: scale(1.2);
  }

  .newsdetail-side .side-card .info {
    padding: 8px 8px 12px;
    display: flex;
    flex-direction: column;
    gap: 29px;
  }

  .newsdetail-side .side-card .top {
    display: flex;
    flex-direction: column;
    gap: 6px;
  }

  .newsdetail-side .side-card .t {
    color: var(--green);
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .newsdetail-side .side-card .meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }

  .newsdetail-side .side-card .date {
    color: #686d7a;
  }

  .newsdetail-side .side-card .more {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: var(--tt2);
  }

  .newsdetail-side .side-card .more img {
    width: 7px;
    height: 7px;
  }

  .newsdetail-side .side-card:hover .more {
    color: var(--green);
  }

  .newsdetail-side .side-more {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 25px;
    border: 1px solid #e5e6eb;
    border-radius: 8px;
    color: #414960;
    transition: all .3s ease;
  }

  .newsdetail-side .side-more:hover {
    background: var(--green);
    color: #fff;
    border-color: var(--green);
  }

  /* ========== productdetail.html — home24 应用场景 ========== */
  .home15.home24 {
    min-height: 0;
    padding: 48px 0 56px;
  }

  .home24 .tt {
    font-size: 24px;
    line-height: 1.3;
    margin-bottom: 16px;
  }

  .home15.home24 .main .info .name {
    font-size: 18px;
    margin-bottom: 8px;
  }

  .home15.home24 .main .info .desc {
    font-size: 14px;
    line-height: 1.75;
  }

  .home15.home24 .pics {
    gap: 10px;
    padding-top: 4px;
  }

  .home15.home24 .home15-pic {
    height: 180px;
    border-radius: 12px;
  }

  .home15.home24 .home15-pic .label {
    font-size: 18px;
    left: 14px;
    bottom: 14px;
  }

  /* ========== productdetail.html — home25 资料下载 + 关联产品 ========== */
  .home25 {
    background: #f8faf9;
    padding: 40px 0 48px;
  }

  .home25 .C-wrap {
    width: 100%;
    max-width: 100%;
    padding: 0 20px;
  }

  .home25 .tt {
    color: var(--tt);
    font-size: 24px;
    font-weight: 600;
    line-height: 1.3;
  }

  #anchorDownload {
    margin-bottom: 36px;
  }

  .home25 .gdt{
    padding: 20px 0;
  }
  .home25-downloads {
    gap: 12px;
    margin: 16px 0 0;
  }

  .home25-doc {
    flex: none;
    width: 280px;
    min-width: 0;
    height: auto;
    background: #fff;
    border: 1px solid #e8eeeb;
    border-radius: 14px;
    padding: 16px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
    box-shadow: 0 6px 18px rgba(11, 49, 37, .05);
  }

  .home25-doc .doc-ic {
    width: 36px;
    height: 36px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: #f3f7f5;
  }

  .home25-doc .doc-ic img {
    width: 20px;
    height: 20px;
    object-fit: contain;
  }

  .home25-doc>div:nth-child(2) {
    flex: 1;
    min-width: 0;
  }

  .home25-doc .doc-name {
    color: var(--tt);
    font-size: 15px;
    font-weight: 600;
    line-height: 1.4;
  }

  .home25-doc .doc-size {
    color: var(--tt3);
    font-size: 12px;
    line-height: 1.4;
    margin-top: 4px;
  }

  .home25-doc .doc-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 100%;
    height: 38px;
    padding: 0 16px;
    border: 1px solid var(--green);
    border-radius: 999px;
    color: var(--green);
    font-size: 14px;
    font-weight: 500;
    background: #fff;
    transition: all .25s ease;
  }

  .home25-doc .doc-btn img {
    width: 12px;
    height: 12px;
  }

  .home25-related .tt {
    margin-bottom: 16px;
  }

  .home25-row-wrap {
    overflow: hidden;
    margin: 0 -20px;
    padding: 0 20px;
    cursor: grab;
    -webkit-overflow-scrolling: touch;
  }

  .home25-row-wrap.grabbing {
    cursor: grabbing;
  }

  .home25-card-row {
    display: flex;
    gap: 12px;
    align-items: stretch;
    width: max-content;
    will-change: transform;
  }

  .home25-card-row .home20-card {
    flex-shrink: 0;
    width: 280px;
  }

  .home25-card-row.dragging .home20-card {
    pointer-events: none;
  }


  /* ========== Home36 走进光诚 ========== */
  .home36 {
    padding: 0px 0 50px 0;
    background: #fff;
  }

  .home36 .inner {
    display: grid;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    padding-bottom: 80px;
  }

  .home36 .zuo {
    width: 100%;
    flex-shrink: 0;
  }

  .home36 .zuo .tt {
    font-weight: 600;
    color: var(--tt);
    line-height: 1.5;
    margin-bottom: 13px;
  }

  .home36 .zuo .desc {
    color: var(--tt2);
    line-height: 1.5;
    opacity: 0.8;
  }

  .home36 .zuo .desc p:last-child {
    margin-bottom: 0;
  }

  .home36 .you {
    position: relative;
    flex: 1;
    min-width: 0;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .home36-bg {
    position: absolute;
    right: 43px;
    top: 50%;
    transform: translateY(-50%);
    width: 321px;
    height: 321px;
    pointer-events: none;
  }

  .home36-bg img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .home36-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(2, 160px);
    gap: 10px;
  }

  .home36-card {
    position: relative;
    width: 160px;
    height: auto;
    border-radius: 10px;
    background: rgba(255, 255, 255, .7);
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    transition: background .35s ease, box-shadow .35s ease;
  }

  .home36-card .ic {
    position: static;
    display: block;
    margin: 20px;
    left: 20px;
    top: 20px;
    width: 21px;
    height: 21px;
  }

  .home36-card .ic img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transition: filter .35s ease;
  }

  .home36-card .name {
    position: static;
    left: 0;
    right: 0;
    bottom: 12px;
    text-align: end;
    color: var(--green);
    line-height: 1.5;
    letter-spacing: .48px;
    padding: 16px;
    transition: color .35s ease;
  }

  .home36-card:hover {
    background: var(--green);
    box-shadow: 0 8px 22px rgba(11, 49, 37, .2);
  }

  .home36-card:hover .name {
    color: #fff;
  }

  .home36-card:hover .ic img {
    filter: brightness(0) invert(1);
  }

  /* ========== Home37 专注高端耗材与技术落地服务 ========== */
  .home37 {
    position: relative;
    padding: 50px 0 0;
    background: #fff;
    overflow: hidden;
  }

  .home37 .tt {
    padding: 0;
    text-align: center;
    font-weight: 500;
    color: var(--tt);
    line-height: 1.5;
    margin-bottom: 24px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
  }

  .home37-stats {
    width: 100%;
    gap: 10px 0;
    margin: 0 auto;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .home37-stat {
    width: 50%;
    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;
    gap: 15px;
  }

  .home37-stat .line {
    width: 1px;
    height: 26px;
    background: #000;
    display: none;
  }

  .home37-stat .num {
    color: var(--green2);
    font-weight: 500;
    line-height: 1.5;
  }

  .home37-stat .lb {
    color: var(--tt2);
    line-height: 1.5;
    opacity: 0.8;
  }

  .home37-pic {
    position: relative;
    margin-top: 43px;
    height: 327px;
  }

  .home37-pic img {
    display: block;
    width: 620px;
    max-width: 100%;
    height: 100%;
    object-fit: contain;
    margin: 0 auto;
    -webkit-mask-image: linear-gradient(180deg, #000 70%, transparent 100%);
    mask-image: linear-gradient(180deg, #000 70%, transparent 100%);
  }

  /* ========== Home38 时间轴 ========== */
  .home38 {
    position: relative;
    padding: 35px 0 20px;
    background: #fff;
    overflow: hidden;
    height: auto;
  }

  .home38-tt {
    text-align: center;
    font-weight: 600;
    color: var(--tt);
    line-height: 1.5;
    margin-bottom: 34px;
  }

  .home38-track-wrap {
    position: relative;
    overflow: hidden;
    cursor: grab;
    padding-top: 10px;
  }

  .home38-track-wrap.grabbing {
    cursor: grabbing;
  }

  /* 固定在正中间的绿色三角标记，指向当前年份 */
  .home38-marker {
    position: absolute;
    left: 50%;
    top: 0;
    transform: translateX(-50%);
    width: 17px;
    z-index: 5;
    pointer-events: none;
  }

  .home38-marker img {
    display: block;
    width: 100%;
  }

  .home38-bg {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 0;
    width: 676px;
    max-width: 90%;
    opacity: 1;
    pointer-events: none;
    z-index: 0;
  }

  .home38-bg img {
    width: 100%;
  }

  .home38-track {
    position: relative;
    display: flex;
    width: max-content;
    will-change: transform;
  }

  .home38-col {
    position: relative;
    width: 200px;
    flex-shrink: 0;
    padding: 75px 0 0 38px;
  }

  .home38-col .yr {
    position: absolute;
    left: 0;
    top: 0;
    height: 28px;
    line-height: 1;
  }

  .home38-col.active .yr {
    color: var(--green2);
    font-weight: 500;
  }

  /* 区块左侧竖向分隔线 */
  .home38-col .divider {
    position: absolute;
    left: 18px;
    top: 36px;
    width: 1px;
    height: 184px;
    background: linear-gradient(180deg, #0B3125 0%, rgba(11, 49, 37, 0.00) 100%);
  }

  /* 年份下方刻度尺：9 根刻度，间隔 40px，一短一长（短 32 / 长 40），底部对齐 */
  .home38-col .ruler {
    position: absolute;
    left: 38px;
    top: 39px;
    width: 161px;
    height: 20px;
  }

  .home38-col .ruler::before,
  .home38-col .ruler::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    background: linear-gradient(90deg, #4D8E7A 0%, rgba(77, 142, 122, 0.50) 100%);
  }

  /* 短刻度：32px，位于 0/80/160/240/320 */
  .home38-col .ruler::before {
    height: 16px;
    -webkit-mask-image: repeating-linear-gradient(90deg, #000 0, #000 1px, transparent 1px, transparent 40px);
    mask-image: repeating-linear-gradient(90deg, #000 0, #000 1px, transparent 1px, transparent 40px);
  }

  /* 长刻度：40px，位于 40/120/200/280 */
  .home38-col .ruler::after {
    height: 20px;
    -webkit-mask-image: repeating-linear-gradient(90deg, transparent 0, transparent 20px, #000 20px, #000 21px, transparent 21px, transparent 40px);
    mask-image: repeating-linear-gradient(90deg, transparent 0, transparent 20px, #000 20px, #000 21px, transparent 21px, transparent 40px);
  }

  .home38-col .evs {
    display: flex;
    flex-direction: column;
    gap: 18px;
  }

  .home38-col .ev .d {
    color: var(--tt2);
    font-weight: 500;
    line-height: 1.5;
    margin-bottom: 6px;
    transition: color .3s ease;
  }

  .home38-col.active .ev .d {
    color: var(--green);
  }

  .home38-col .ev ul {
    list-style: disc;
    padding-left: 12px;
  }

  .home38-col .ev li::marker {
    font-size: 0.7em;
  }

  .home38-col.active .ev li {
    color: var(--tt2);
  }

  /* ========== Home39 行业权威认证 ========== */
  .home39 {
    position: relative;
    padding: 84px 0 76px;
    background: #fff;
    overflow: hidden;
  }

  .home39-tt {
    text-align: center;
    font-weight: 700;
    color: var(--tt);
    line-height: 1.2;
    margin-bottom: 24px;
  }

  .home39-main {
    width: auto;
    max-width: calc(100% - 40px);
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 18px;
    margin-top: 0;
  }

  .home39-zuo {
    position: relative;
    width: 100%;
    padding-left: 24px;
  }

  .home39-line {
    position: absolute;
    left: 32px;
    top: 10px;
    height: calc(100% - 20px);
    width: 10px;
  }

  .home39-line img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    opacity: 0.2;
  }

  .home39-list {
    margin-top: 0;
    gap: 14px;
    padding: 0;
    height: 130px;
  }

  .home39-list::-webkit-scrollbar {
    width: 0;
    height: 0;
    display: none;
  }

  .home39-award {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    transition: transform .3s ease, opacity .3s ease;
    opacity: .78;
  }

  .home39-award .ic {
    position: relative;
    flex-shrink: 0;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: #4d8e7a;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background .3s ease;
    opacity: 0.8;
  }

  .home39-award .ic::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #fff;
    transform: translate(-50%, -50%);
  }

  .home39-award .ic img {
    position: relative;
    z-index: 1;
    width: 10px;
    height: 10px;
  }

  .home39-award:hover .ic,
  .home39-award.on .ic {
    background: var(--green);
  }

  .home39-award.on {
    opacity: 1;
  }

  .home39-award .txt .yr {
    color: var(--green2);
    font-weight: 500;
    line-height: 1.2;
    margin-bottom: 2px;
  }

  .home39-award .txt .name {
    font-weight: 500;
    color: #000;
    line-height: 1.5;
  }

  .home39-you {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    flex-shrink: 0;
    order: -1;
    position: relative;
  }

  .home39-arrow {
    width: 40px;
    height: 40px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #fff;
    border: 1.5px solid var(--green);
    box-sizing: border-box;
    cursor: pointer;
    transition: background .25s ease, transform .25s ease, opacity .25s ease;
    position: absolute;
    bottom: 12px;
    z-index: 3;
    box-shadow: 0 8px 18px rgba(11, 49, 37, .12);
  }

  .home39-arrow img {
    width: 14px;
    height: 10px;
  }

  .home39-arrow.prev {
    left: 12px;
  }

  .home39-arrow.next {
    right: 12px;
  }

  .home39-arrow:hover {
    background: var(--green);
    transform: scale(1.05);
  }

  .home39-arrow:hover img {
    filter: brightness(0) invert(1);
  }

  .home39-cert {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 136%;
    border-radius: 18px;
    overflow: hidden;
    background: #f6f6f6;
    box-shadow: 0 16px 40px rgba(11, 49, 37, .10);
  }

  .home39-cert .yr-tag {
    position: absolute;
    left: 14px;
    top: 14px;
    z-index: 2;
    color: var(--green2);
    font-weight: 500;
    line-height: 1.2;
    pointer-events: none;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .88);
    box-shadow: 0 6px 16px rgba(11, 49, 37, .08);
  }

  /* ========== Home40 以信任相连的合作关系（手机端重设计） ========== */
  .home40 {
    background: #f8faf9;
    padding: 48px 0 56px;
  }

  .home40 .inner {
    width: 100%;
    max-width: 100%;
    padding: 0 20px;
    margin: 0 auto;
  }

  .home40 .tt {
    text-align: center;
    font-size: 26px;
    font-weight: 600;
    color: var(--green);
    line-height: 1.35;
    margin-bottom: 24px;
  }

  .home40-stage {
    position: relative;
    width: 100%;
    height: auto;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
  }

  .home40-tile {
    position: relative;
    left: auto;
    top: auto;
    flex: 0 0 calc((100% - 20px) / 3);
    width: calc((100% - 20px) / 3);
    height: 84px;
    background: #fff;
    border: 1px solid #e3ece8;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px;
    cursor: pointer;
    transition: border-color .25s ease, box-shadow .25s ease, transform .2s ease;
  }

  .home40-tile.t1,
  .home40-tile.t2,
  .home40-tile.t3,
  .home40-tile.t4,
  .home40-tile.t5,
  .home40-tile.t6 {
    left: auto;
    top: auto;
    width: calc((100% - 20px) / 3);
    height: 84px;
  }

  .home40-tile img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
  }

  .home40-tile.on {
    border-color: var(--green);
    box-shadow: 0 0 0 2px rgba(11, 49, 37, .12), 0 6px 16px rgba(11, 49, 37, .08);
    transform: translateY(-2px);
  }

  .home40-tile:active {
    transform: scale(.98);
  }

  .home40-detail-card {
    position: relative;
    left: auto;
    top: auto;
    order: 10;
    flex: 0 0 100%;
    width: 100%;
    height: auto;
    min-height: 0;
    margin-top: 10px;
    border: 1px solid #e6eeeb;
    border-radius: 16px;
    background: #fff;
    padding: 22px 18px;
    box-shadow: 0 8px 24px rgba(11, 49, 37, .08);
  }

  .home40-detail {
    display: none;
    flex-direction: column;
    gap: 0;
  }

  .home40-detail.on {
    display: flex;
  }

  .home40-detail .logos {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 16px;
    padding-bottom: 16px;
    border-bottom: 1px solid #eef2f0;
  }

  .home40-detail .logos .lg {
    height: 36px;
    min-width: 72px;
    width: auto;
    padding: 0 10px;
    border: 1px solid #d9e4e0;
    border-radius: 10px;
    background: #f8faf9;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
  }

  .home40-detail .logos .lg img {
    display: block;
    height: 22px;
    width: auto;
    max-width: 100%;
    object-fit: contain;
  }

  .home40-detail .logos .x {
    color: var(--green2);
    font-size: 14px;
    font-weight: 500;
  }

  .home40-detail .cname {
    color: var(--green);
    font-size: 18px;
    font-weight: 600;
    line-height: 1.45;
    margin-bottom: 10px;
    text-align: center;
  }

  .home40-detail .cdesc {
    color: var(--tt2);
    font-size: 14px;
    line-height: 1.8;
    letter-spacing: 0;
    text-align: left;
  }

  /* ========== Home41 底部 CTA ========== */
  .home41 {
    position: relative;
    height: 400px;
    overflow: hidden;
  }

  .home41 .bg {
    position: absolute;
    inset: 0;
  }

  .home41 .bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .home41 .bg::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, .5);
  }

  .home41-inner {
    position: relative;
    z-index: 2;
    height: 100%;
    width: 628px;
    max-width: calc(100% - 40px);
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 25px;
    text-align: center;
  }

  .home41 .tt {
    color: #fff;
    font-weight: 700;
    line-height: 1.4;
  }

  .home41 .btns {
    display: flex;
    gap: 8px;
  }

  .home41 .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 86px;
    padding: 6px 16px;
    border-radius: 500px;
    border: 1px solid #fff;
    transition: all .3s ease;
  }

  .home41 .btn.solid {
    background: #fff;
    color: var(--green);
  }

  .home41 .btn.ghost {
    color: #fff;
  }

  .home41 .btn.solid:hover {
    background: transparent;
    color: #fff;
  }

  .home41 .btn.ghost:hover {
    background: #fff;
    color: var(--green);
  }

  /* ========== Home43 光诚与社会公益（按 1920 坐标系绝对定位） ========== */
  .home43 {
    position: relative;
    padding: 56px 0 64px;
    background: #fff;
    overflow: hidden;
  }

  .home43-inner {
    position: relative;
    width: auto;
    max-width: calc(100% - 40px);
    margin: 0 auto;
    height: auto;
    display: flex;
    flex-direction: column;
    gap: 20px;
  }

  /* 左上：标题 + 描述 */
  .home43-info {
    position: relative;
    left: auto;
    top: auto;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 16px;
  }

  .home43-info .tt {
    color: var(--green);
    font-size: 30px;
    font-weight: 600;
    line-height: 1.28;
    margin: 0;
  }

  .home43-info .desc {
    color: #222;
    font-size: 15px;
    line-height: 1.9;
    opacity: 1;
    margin: 0;
  }

  /* 左下：光诚字标，与图片有重叠 */
  /* 大图：贴右侧 */
  .home43-you {
    position: relative;
    left: auto;
    top: auto;
    width: 100%;
    height: 0;
    padding-top: 64%;
    border-radius: 18px;
    overflow: hidden;
    z-index: 2;
    order: 1;
    box-shadow: 0 16px 34px rgba(11, 49, 37, .10);
  }

  .home43-you img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  /* ========== Home44 光诚致远 传递公益温度 ========== */
  .home44 {
    position: relative;
    width: 100%;
    height: auto;
    min-height: 0;
    overflow: hidden;
  }

  .home44 .bg {
    position: absolute;
    inset: 0;
  }

  .home44 .bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  .home44 .mask {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, .0);
  }

  /* 内容区按 Figma 1920 坐标系定位 */
  .home44-inner {
    position: relative;
    z-index: 2;
    width: auto;
    max-width: calc(100% - 40px);
    height: auto;
    margin: 0 auto;
    padding: 56px 0 64px;
    display: flex;
    flex-direction: column;
    gap: 16px;
  }

  .home44 .tt {
    position: relative;
    left: auto;
    top: auto;
    width: 100%;
    color: #fff;
    font-size: 30px;
    font-weight: 600;
    line-height: 1.28;
    margin: 0 0 6px;
  }

  /* 分隔线：贯穿模块的十字 + 右半区上排再分一根短竖 */
  .home44-line {
    display: none;
  }

  /* 竖中线（左右分半） */
  .home44 .vline {
    left: 480px;
    top: 0;
    width: 1px;
    height: 100%;
  }

  /* 横中线（仅右半区） */
  .home44 .hline {
    left: 480px;
    top: 240px;
    width: 480px;
    height: 1px;
  }

  /* 右半区上排的短竖线（把上排再分两个卡片） */
  .home44 .vline-short {
    left: 720px;
    top: 0;
    width: 1px;
    height: 240px;
  }

  /* 三个卡片定位（左上为标题，左下空） */
  .home44-cell {
    position: relative;
    z-index: 3;
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: 100%;
    min-height: 0;
    padding: 18px 18px 20px;
    border-radius: 18px;
    background: rgba(255, 255, 255, .14);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, .18);
    color: #fff;
  }

  .home44-cell.c1,
  .home44-cell.c2,
  .home44-cell.c3 {
    left: auto;
    top: auto;
  }

  .home44-cell .ic {
    display: inline-block;
    width: 38px;
    height: 38px;
    margin-bottom: 2px;
  }

  .home44-cell .ic img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .home44-cell .lb {
    color: #fff;
    font-size: 14px;
    line-height: 1.6;
  }

  .home44-cell .nm {
    color: #fff;
    font-size: 20px;
    line-height: 1.6;
  }

  /* ========== Home45 肩负责任感和使命感（轮播） ========== */
  .home45 {
    padding: 92px 0 0;
    background: #fff;
  }

  .home45-tt {
    font-weight: 500;
    color: #000;
    line-height: 1.06;
    margin-bottom: 34px;
  }

  .home45-stage {
    position: relative;
  }

  .home45-track-wrap {
    overflow: hidden;
    cursor: grab;
  }

  .home45-track-wrap.grabbing {
    cursor: grabbing;
  }

  .home45-track {
    display: flex;
    gap: 44px;
    width: max-content;
    will-change: transform;
  }

  .home45-card {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 44px;
    width: 80vw;
    flex-shrink: 0;
  }

  .home45-card .info {
    width: 100%;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
  }

  .home45-card .info .cat {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    align-self: flex-start;
    height: 20px;
    padding: 0 8px;
    border-radius: 72px;
    background: var(--green);
    color: #fff;
    line-height: 1;
  }

  .home45-card .info .nm {
    color: #222;
    font-weight: 500;
    line-height: 1.5;
  }

  .home45-card .info .more {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--tt2);
    font-weight: 500;
    line-height: 1.5;
    transition: color .25s ease;
  }

  .home45-card .info .more img {
    width: 14px;
    height: 14px;
    transition: transform .25s ease;
  }

  .home45-card:hover .info .more {
    color: var(--green);
  }

  .home45-card:hover .info .more img {
    transform: translateX(2px);
  }

  .home45-card .pic {
    width: 100%;
    height: auto;
    border-radius: 10px;
    overflow: hidden;
    flex-shrink: 0;
  }

  .home45-card .pic img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .6s ease;
  }

  .home45-card:hover .pic img {
    transform: scale(1.04);
  }

  .home45-progress {
    position: relative;
    height: 1px;
    background: rgba(0, 0, 0, .1);
    margin: 0;
  }

  .home45-progress .bar {
    position: absolute;
    left: 0;
    top: -2px;
    height: 3px;
    width: 0;
    background: #4d8e7a;
    transition: width .15s linear;
  }

  /* ========== Home46 驱动未来 的可持续发展 ========== */
  .home46 {
    padding: 56px 0 64px;
    background: #fff;
  }

  .home46 .inner {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 22px;
    width: auto;
    max-width: calc(100% - 40px);
    margin: 0 auto;
  }

  .home46 .zuo {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 72%;
    flex-shrink: 0;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 16px 36px rgba(0, 0, 0, .14);
  }

  .home46 .zuo img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  .home46 .zuo .quote {
    position: absolute;
    left: 16px;
    right: 16px;
    bottom: 16px;
    max-width: none;
    padding: 14px 16px;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 14px;
    line-height: 1.6;
  }

  .home46 .you {
    flex: none;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 18px;
  }

  .home46 .you .tt {
    color: var(--green);
    font-size: 30px;
    font-weight: 600;
    line-height: 1.28;
    margin: 0;
  }

  .home46 .you .desc {
    color: #222;
    font-size: 15px;
    line-height: 1.9;
    margin: 0;
  }

  .home46-stats {
    display: flex;
    flex-direction: column;
    gap: 14px;
  }

  .home46-stats .stat {
    width: 100%;
    padding: 18px 16px;
    border-left: 0;
    border: 1px solid rgba(77, 142, 122, .18);
    border-radius: 16px;
    background: #f6faf8;
  }

  .home46-stats .num {
    color: #00342b;
    font-weight: 400;
    font-size: 24px;
    line-height: 1.4;
    margin-bottom: 8px;
  }

  .home46-stats .lb {
    color: #3f4945;
    font-size: 14px;
    line-height: 1.8;
  }

  /* =====================================================================
   * 首页 index.html 专属：home1 / home10 / home2 / home3 / home4 /
   *                     home5 / home6 / home8 / home9 手机端
   * ===================================================================== */

  /* ---------- home1 首屏 banner（视频）+ home10 数据条 ---------- */
  .kaiping-splash {
    display: none !important;
  }

  body.is-kaiping,
  body.is-home1-intro {
    overflow: visible;
  }

  body.is-kaiping header,
  body.is-home1-intro header {
    opacity: 1;
    pointer-events: auto;
  }

  .home1.is-intro-pending .home10-wrap,
  .home1.is-intro-pending .home10-stats {
    opacity: 1;
  }

  .home1.is-intro-pending .bg video,
  .home1.is-intro-pending .bg img {
    opacity: 1;
  }

  .home7.home1,
  .home1 {
    position: relative;
    width: 100%;
    margin-top: var(--head);
    height: 480px;
    overflow: hidden;
    background: #fff;
  }

  .home1 .bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }

  .home1 .bg::after {
    content: "";
    position: absolute;
    inset: 0;
  }

  .home1 .bg video,
  .home1 .bg img {
    display: block;
    width: 94%;
    height: 360px;
    object-fit: cover;
    border-radius: 12px;
    margin: 0 auto;
  }

  .home1 .wrap,
  .home1 .home10-wrap {
    position: absolute;
    left: 30px;
    top: 90px;
    bottom: auto;
    z-index: 2;
    display: flex;
    align-items: flex-end;
    gap: 6px;
  }

  .home1 .tt {
    color: #fff;
    line-height: 1.3;
    font-weight: 500;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, .2);
  }

  /* home10 数据条：4 项均分，覆盖在 banner 底部 */
  .home10-stats {
    position: absolute;
    left: 0px;
    right: 0px;
    bottom: 20px;
    z-index: 2;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 0;
    margin: 0px 10px;
  }

  .home10-stat {
    position: relative;
    flex: 1 1 0;
    min-width: 0;
    padding-left: 12px;
    color: #000;
    display: flex;
    flex-direction: column;
    gap: 4px;
  }

  .home10-stat.has-divider::before {
    content: "";
    position: absolute;
    left: 0;
    top: 6px;
    width: 1px;
    height: 42px;
    background: rgba(0, 0, 0, .15);
  }

  .home10-stat .num-line {
    height: auto;
    display: flex;
    align-items: baseline;
    gap: 4px;
  }

  .home10-stat .num {
    font-size: 22px;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: .5px;
    color: #000;
    text-shadow: none;
  }

  .home10-stat .unit {
    color: #000;
    text-shadow: none;
    transform: translateY(-10px);
  }

  .home10-stat .lb {
    color: #000;
    text-shadow: none;
    letter-spacing: .2px;
    line-height: 1.4;
  }

  /* ---------- home2 核心产品体系（横向 5 卡片，移动端横向滚动） ---------- */
  .home2 {
    padding: 40px 0 36px;
    background: #fff;
  }

  .home2-tt {
    font-weight: 500;
    color: var(--tt);
    text-align: center;
    line-height: 1.3;
    margin-bottom: 24px;
  }

  .home2-systems {
    display: flex;
    flex-wrap: nowrap;
    gap: 10px;
    align-items: flex-start;
    margin: 0;
    padding: 0 20px;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }

  .home2-systems::-webkit-scrollbar {
    display: none;
  }

  .home2-item {
    flex: 0 0 200px;
    width: 200px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    cursor: pointer;
    transition: width .45s cubic-bezier(.4, 0, .2, 1), flex-basis .45s cubic-bezier(.4, 0, .2, 1);
  }

  .home2-item.active {
    flex: 0 0 260px;
    width: 260px;
  }

  .home2-item .label {
    color: #000;
    font-weight: 400;
    text-align: center;
    letter-spacing: .5px;
    opacity: 0.7;
  }

  .home2-system {
    position: relative;
    height: 320px;
    border-radius: 12px;
    overflow: hidden;
  }

  .home2-system .bg {
    position: absolute;
    inset: 0;
  }

  .home2-system .bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .home2-system .bg::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 30%, rgba(0, 0, 0, .55) 100%);
    border-radius: 12px;
  }

  .home2-item:not(.active) .home2-system .bg::after {
    background: rgba(0, 0, 0, .4);
  }

  .home2-system .label {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 16px;
    z-index: 2;
    color: #fff;
    font-weight: 500;
    text-align: center;
    letter-spacing: .5px;
  }

  /* ---------- home3 四大核心优势（2×2 网格） ---------- */
  .home3 {
    padding: 10px 0 60px;
    background: #fff;
  }

  .home3-head {
    width: auto;
    max-width: calc(100% - 40px);
    margin: 0 auto 32px;
    text-align: center;
  }

  .home3-head .tt {
    color: #333;
    font-weight: 500;
    line-height: 1.3;
    margin-bottom: 12px;
  }

  .home3-head .desc {
    color: #666;
    line-height: 1.6;
    opacity: .8;
  }

  .home3-cards {
    width: auto;
    max-width: calc(100% - 40px);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 24px;
    row-gap: 28px;
  }

  .home3-card {
    flex: none;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 0 4px;
  }

  .home3-card .ic {
    position: relative;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: #f0f0f0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background .35s ease;
  }

  .home3-card .ic img {
    width: 28px;
    height: 28px;
    object-fit: contain;
  }

  .home3-card .name {
    color: var(--tt);
    text-align: center;
    line-height: 1.4;
  }

  /* ---------- home4 行业联动（3 行：信息在上，大图在下） ---------- */
  .home4 {
    padding: 0 0 60px;
    background: #fff;
  }

  .home4-inner {
    width: auto;
    max-width: calc(100% - 40px);
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 40px;
  }

  .home4-row {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }

  .home4-info {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 12px;
  }

  .home4-info .tt {
    color: var(--tt);
    font-weight: 500;
    line-height: 1.3;
  }

  .home4-info .desc {
    color: var(--tt2);
    line-height: 1.6;
    letter-spacing: .2px;
  }

  .home4-btn {
    align-self: flex-start;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 36px;
    padding: 0 18px;
    border-radius: 999px;
    background: var(--green);
    color: #fff;
    margin-top: 4px;
  }

  .home4-card {
    position: relative;
    width: 100%;
    height: 240px;
    border-radius: 12px;
    overflow: hidden;
  }

  .home4-card-bg {
    position: absolute;
    inset: 0;
  }

  .home4-card-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .home4-tabs {
    position: absolute;
    left: 12px;
    bottom: 12px;
    z-index: 2;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
  }

  .home4-tab {
    display: inline-flex;
    align-items: center;
    height: 50px;
    padding: 0 12px;
    font-size: 12px;
    text-align: center;
    border-radius: 999px;
    background: rgba(255, 255, 255, .7);
    color: #333;
    backdrop-filter: blur(6px);
    transition: background .25s ease, color .25s ease;
  }

  .home4-tab.on,
  .home4-tab:hover {
    background: var(--green);
    color: #fff;
  }

  /* ---------- home56：手机端 home5 与 home6 纵向排列 ---------- */
  .home56-arena {
    position: relative;
    width: auto;
    max-width: none;
    height: auto;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0;
  }

  .home6-stage {
    order: 2;
    width: auto;
    max-width: calc(100% - 40px);
    height: auto;
    margin: 0 auto;
  }

  .home5 {
    position: relative;
    order: 1;
    width: 100%;
    height: 320px;
    z-index: 1;
    overflow: hidden;
  }

  .home5-track {
    position: relative;
    width: 100%;
    height: 100%;
  }

  .home5-slide {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    will-change: transform;
  }

  .home5-slide.is-active {
    z-index: 2;
  }

  .home5-bg {
    position: absolute;
    inset: 0;
  }

  .home5-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .home5-bg::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, .15) 0%, rgba(0, 0, 0, .45) 100%);
  }

  .home5-inner {
    width: 100%;
    position: absolute;
    left: 24px;
    right: 24px;
    bottom: 36px;
    z-index: 2;
    color: #fff;
    display: flex;
    flex-direction: column;
    gap: 10px;
    will-change: transform;
  }

  .home5-inner .tt {
    color: #fff;
    font-weight: 500;
    line-height: 1.3;
  }

  .home5-inner .desc {
    color: #fff;
    line-height: 1.6;
    letter-spacing: .2px;
    font-weight: 300;
  }

  .home5-slide.is-light .home5-bg::after {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .18) 100%);
  }

  .home5-slide.is-light .home5-inner .tt {
    color: #fff;
    text-shadow: none;
  }

  /* ---------- home6 立足东亚（3D 地球在手机端隐藏，改为简化版） ---------- */
  html.home6-view-pinned {
    overflow: auto;
    overscroll-behavior: auto;
  }

  html.home6-view-pinned body {
    overflow: auto;
    overscroll-behavior-y: auto;
  }

  .home6 {
    position: relative;
    background: #fff;
    padding: 50px 0 60px;
  }

  .home6-head {
    margin-bottom: 24px;
  }

  .home6-head .tt {
    color: #333;
    font-weight: 500;
    line-height: 1.3;
    text-align: center;
  }

  .home6-stage {
    position: relative;
    width: auto;
    max-width: calc(100% - 40px);
    height: auto;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 20px;
  }

  /* 隐藏 3D 地球、热点、迁移所需的 home8-bg 接管目标 */
  .home6-map,
  .home6-map model-viewer,
  #modelViewer,
  .Hotspot,
  .HotspotAnnotation,
  .HotspotAnnotationStack {
    display: none !important;
  }

  /* 卡片 / 城市列表均改为静态展示，关闭迁移与入场隐藏 */
  .home6-stage.is-ui-hidden .home6-card,
  .home6-stage:not(.is-cards-in) .home6-card,
  .home6-stage.is-ui-hidden .home6-cities,
  .home6-stage:not(.is-cards-in) .home6-cities,
  .home6-stage.is-earth-migrate .home6-card,
  .home6-stage.is-earth-migrate .home6-cities {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: none;
    transition: none;
  }

  .home6-stage.is-ui-hidden .home6-city,
  .home6-stage:not(.is-cards-in) .home6-city,
  .home6-stage.is-cards-in .home6-city {
    opacity: 1;
    transform: none;
    transition-delay: 0s !important;
  }

  /* 左侧公司信息卡：移动端转为顺序块 */
  .home6-card {
    position: static;
    width: 100%;
    padding: 20px 16px;
    background: rgba(255, 255, 255, .92);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(0, 0, 0, .06);
    border-radius: 12px;
    box-shadow: 0 8px 24px rgba(11, 49, 37, .06);
  }

  .home6-card-pane {
    display: none;
    flex-direction: column;
    gap: 14px;
  }

  .home6-card-pane.on {
    display: flex;
  }

  .home6-card-pane .pic {
    display: flex;
    align-items: flex-end;
    gap: 10px;
  }

  .home6-card-pane .pic .city {
    width: 60%;
    height: 120px;
    border-radius: 8px;
    object-fit: cover;
    flex-shrink: 0;
  }

  .home6-card-pane .pic .symbol {
    flex: 1 1 0;
    max-width: 90px;
    height: 80px;
    object-fit: contain;
  }

  .home6-card-pane .cname {
    color: #333;
    font-weight: 500;
    line-height: 1.4;
    text-align: left;
  }

  .home6-card-pane .caddr {
    color: var(--tt2);
    line-height: 1.5;
    text-align: left;
  }

  .home6-card-pane .caddr p {
    margin: 0;
    text-align: left;
  }

  .home6-card-pane .cmeta {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 2px;
  }

  .home6-card-pane .cmeta li {
    display: flex;
    align-items: left;
    justify-content: left;
    gap: 8px;
  }

  .home6-card-pane .cmeta .ic {
    width: 18px;
    height: 18px;
  }

  .home6-card-pane .cmeta .ic img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .home6-card-pane .cmeta .txt {
    color: var(--tt2);
    line-height: 1.5;
  }

  /* 城市胶囊：手机端横向 2 列网格 */
  .home6-cities {
    position: static;
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }

  .home6-city {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 14px;
    background: rgba(255, 255, 255, .92);
    border-radius: 8px;
    box-shadow: 2px 2px 6px rgba(215, 215, 215, .3);
    color: #1d1d1d;
    transition: background .25s ease, color .25s ease;
  }

  .home6-city .left {
    display: inline-flex;
    align-items: center;
    gap: 8px;
  }

  .home6-city .dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--green);
    flex-shrink: 0;
  }

  .home6-city .plus {
    position: relative;
    width: 12px;
    height: 12px;
    flex-shrink: 0;
    color: #0b3125;
  }

  .home6-city .plus::before,
  .home6-city .plus::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    background: currentColor;
    border-radius: 1px;
    transform: translate(-50%, -50%);
  }

  .home6-city .plus::before {
    width: 10px;
    height: 1.4px;
  }

  .home6-city .plus::after {
    width: 1.4px;
    height: 10px;
  }

  .home6-city.on,
  .home6-city:hover {
    background: var(--green);
    color: #fff;
  }

  .home6-city.on .dot,
  .home6-city:hover .dot {
    background: #fff;
  }

  .home6-city.on .plus,
  .home6-city:hover .plus {
    color: #fff;
  }

  /* ---------- home8 合作网络 + 技术与行业洞察 ---------- */
  .home8 {
    position: relative;
    background: #fafafa;
    padding: 40px 0 60px;
    overflow: hidden;
    height: auto;
    margin-bottom: 0;
  }

  /* 隐藏装饰玻璃 / 形状 / 接管背景 */
  .home8 .home16-deco,
  .home8-bg,
  .home8-glass,
  .home8-shape {
    display: none !important;
  }

  /* 顶部标题区：信赖相连的合作网络 */
  .home8-top {
    position: relative;
    z-index: 4;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    padding-bottom: 24px;
    /* 关闭 PC 端入场 transform，避免初次不可见 */
    opacity: 1;
    transform: none;
    transition: none;
  }

  .home8-top.is-revealed {
    opacity: 1;
    transform: none;
  }

  .home8-top-you {
    width: auto;
    padding-left: 0;
    display: flex;
    flex-direction: column;
    gap: 14px;
  }

  .home8-top-you .tt {
    color: #333;
    font-weight: 500;
    line-height: 1.3;
  }

  .home8-top-you .desc {
    color: var(--tt2);
    line-height: 1.6;
    letter-spacing: .2px;
    opacity: .85;
    max-width: none;
  }

  .home8-btn-solid {
    align-self: flex-start;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 20px;
    border-radius: 999px;
    background: var(--green);
    color: #fff;
    font-weight: 300;
    width: fit-content;
    margin-top: 6px;
  }

  /* 中部：partner 简介 + 轨道（移动端纵向） */
  .home8-mid {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 24px;
    width: auto;
    max-width: calc(100% - 40px);
    margin: 16px auto 0;
    opacity: 1;
    transform: none;
  }

  .home8-top-zuo {
    position: relative;
    z-index: 4;
    flex: none;
    padding: 0 0 16px;
    border-right: 0;
    border-bottom: 1px solid rgba(0, 0, 0, .1);
    margin-top: 0;
    opacity: 1;
    visibility: visible;
    transform: none;
    transition: none;
  }

  .home8-top-zuo.is-revealed {
    opacity: 1;
    visibility: visible;
    transform: none;
  }

  .home8-track-peek {
    display: none;
  }

  .home8-partner .pname {
    color: #000;
    font-weight: 400;
    line-height: 1.4;
    margin-bottom: 10px;
  }

  .home8-partner .pdesc {
    color: var(--tt2);
    line-height: 1.5;
  }

  /* 轨道：移动端横向自动滚动，缩小卡片 */
  .home8-track-wrap {
    position: relative;
    z-index: 2;
    flex: none;
    width: 100%;
    margin: 0;
    overflow: hidden;
    opacity: 1;
    visibility: visible;
    transform: none;
    transition: none;
  }

  .home8-track-wrap.is-revealed {
    opacity: 1;
    visibility: visible;
    transform: none;
  }

  .home8-track {
    display: inline-flex;
    align-items: center;
    gap: 14px;
  }

  .home8-track-card {
    flex-shrink: 0;
    width: 140px;
    height: 100px;
    border-radius: 12px;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 14px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, .04);
  }

  .home8-track-card img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
  }

  /* 新闻区：取消绝对定位，改为流式 */
  .home8-news-block {
    position: static;
    left: auto;
    right: auto;
    bottom: auto;
    height: auto;
    margin-top: 40px;
    display: flex;
    flex-direction: column;
    opacity: 1;
    visibility: visible;
    transform: none;
    transition: none;
  }

  .home8-news-block.is-revealed {
    opacity: 1;
    visibility: visible;
    transform: none;
  }

  .home8-news-head {
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 14px;
    margin-bottom: 20px;
  }

  .home8-news-zuo .tt {
    color: #333;
    font-weight: 500;
    line-height: 1.4;
    margin-bottom: 6px;
  }

  .home8-news-zuo .desc {
    color: var(--tt2);
    line-height: 1.6;
  }

  .home8-news-nav {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 8px;
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
    -webkit-overflow-scrolling: touch;
  }

  .home8-news-nav::-webkit-scrollbar {
    display: none;
  }

  .home8-news-nav a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px 16px;
    border-radius: 999px;
    color: #666;
    font-weight: 500;
    background: transparent;
    white-space: nowrap;
    flex-shrink: 0;
    transition: background .25s ease, color .25s ease;
  }

  .home8-news-nav a.on,
  .home8-news-nav a:hover {
    background: var(--green);
    color: #fff;
  }

  /* 新闻卡片：单列堆叠 */
  .home8-news {
    flex-shrink: 0;
    margin-top: 8px;
    display: flex;
    flex-direction: column;
    gap: 18px;
  }

  .home8-news-card {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 10px;
    background: transparent;
  }

  .home8-news-card .pic {
    position: relative;
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-radius: 10px;
    box-shadow: 0 6px 16px rgba(0, 0, 0, .06);
  }

  .home8-news-card .pic img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .home8-news-card .pic > a {
    display: block;
    width: 100%;
    height: 100%;
  }

  .home8-news-card .tag {
    position: absolute;
    left: 12px;
    top: 12px;
    z-index: 2;
    padding: 4px 8px;
    border-radius: 999px;
    background: rgba(0, 0, 0, .35);
    border: 1px solid rgba(255, 255, 255, .22);
    color: #fff;
    backdrop-filter: blur(8px);
    line-height: 1.3;
  }

  .home8-news-card .info {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 0;
    margin-bottom: 0;
  }

  .home8-news-card .info .date {
    color: #999;
    letter-spacing: .6px;
  }

  .home8-news-card .info .tit {
    color: #333;
    font-weight: 400;
    line-height: 1.4;
  }

  /* 移动端无 hover：将"新闻详情/更多新闻"常驻显示 */
  .home8-news-actions {
    display: flex;
    align-items: center;
    gap: 18px;
    max-height: none;
    opacity: 1;
    overflow: visible;
    pointer-events: auto;
    margin-top: 4px;
    transition: none;
  }

  .home8-news-card.is-filtered {
    display: none;
  }

  .home8-news-act {
    color: var(--green);
    font-weight: 500;
    text-decoration: underline;
    text-underline-offset: 3px;
  }

  /* ---------- home9 联系表单条 ---------- */
  .home9 {
    width: 100%;
    height: auto;
    background: linear-gradient(135deg, #567e72 0%, #fafafa 100%);
  }

  .home9-inner {
    height: auto;
    padding: 28px 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: flex-start;
    gap: 18px;
  }

  .home9 .tt {
    color: #fff;
    font-weight: 300;
    line-height: 1.3;
  }

  .home9-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 22px;
    border-radius: 999px;
    background: var(--green);
    color: #fff;
    font-weight: 300;
  }

  /* ================================================================
     service.html — home27 / home28 / home29 / home30
     ================================================================ */

  /* ---------- home27 全球服务 banner（home11 变体） ---------- */
  .home27 {
    position: relative;
    margin-top: var(--head);
    height: 280px;
    overflow: hidden;
    background: #0b3125;
  }

  .home27 .bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }

  .home27 .bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 0;
    margin: 0;
    opacity: .85;
  }

  .home27 .bg::after {
    display: none;
  }

  .home27 .wrap {
    position: absolute;
    left: 20px;
    bottom: 32px;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 10px;
  }

  .home27 .tt {
    color: #fff;
    font-size: 34px;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: .02em;
    text-shadow: 0 2px 8px rgba(0, 0, 0, .2);
  }

  .home27 .ico {
    width: 32px;
    height: 32px;
  }

  .home27 .ico img {
    width: 100%;
    height: 100%;
  }

  .home28 {
    position: relative;
    padding: 50px 0 76px;
    background: #f5f8f6;
    overflow: hidden;
  }

  .home28-inner {
    height: auto;
  }

  .home28 .home28-bg {
    position: static;
    inset: 0;
    opacity: .18;
    display: none;
  }

  .home28 .home28-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .home28-zuo {
    display: flex;
    flex-direction: column;
    gap: 14px;
    width: 100%;
    position: relative;
    top: 0;
  }

  .home28-zuo .tt {
    color: var(--green);
    font-size: 28px;
    font-weight: 600;
    line-height: 1.25;
  }

  .home28-cities {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 10px;
    width: 100%;
    max-height: 240px;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
    padding-bottom: 0;
  }

  .home28-cities::-webkit-scrollbar {
    display: none;
  }

  .home28-city {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    height: 40px;
    padding: 0 14px;
    background: #fff;
    border: 1px solid rgba(11, 49, 37, .20);
    border-radius: 500px;
    color: rgba(0, 0, 0, .70);
    font-size: 14px;
    font-weight: 500;
    transition: all .25s ease;
    flex: 0 0 auto;
    width: calc(50% - 10px);
    min-width: 0;
    box-shadow: 0 6px 18px rgba(11, 49, 37, .06);
  }

  .home28-city .left {
    display: inline-flex;
    align-items: center;
    gap: 8px;
  }

  .home28-city .dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: rgba(11, 49, 37, .30);
    transition: background .25s ease;
  }

  .home28-city .plus {
    position: relative;
    width: 14px;
    height: 14px;
    opacity: .55;
    display: none;
  }

  .home28-city .plus::before,
  .home28-city .plus::after {
    content: "";
    position: absolute;
    background: currentColor;
  }

  .home28-city .plus::before {
    left: 0;
    right: 0;
    top: 50%;
    height: 1.5px;
    transform: translateY(-50%);
  }

  .home28-city .plus::after {
    top: 0;
    bottom: 0;
    left: 50%;
    width: 1.5px;
    transform: translateX(-50%);
  }

  .home28-city.on {
    background: var(--green);
    border-color: var(--green);
    color: #fff;
  }

  .home28-city.on .dot {
    background: #d4ff9d;
  }

  .home28-map {
    position: relative;
    width: 100%;
    aspect-ratio: 1680 / 1025;
    border-radius: 18px;
    overflow: hidden;
    background: rgba(255, 255, 255, .55);
    box-shadow: 0 14px 40px rgba(11, 49, 37, .10);
    display: none;
  }

  .home28-lines {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: .75;
    pointer-events: none;
  }

  .home28-dot {
    position: absolute;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: var(--green);
    transform: translate(-50%, -50%);
    box-shadow: 0 0 0 6px rgba(11, 49, 37, .14);
  }

  .home28-dot::after {
    content: "";
    position: absolute;
    inset: -10px;
    border-radius: 50%;
    background: rgba(11, 49, 37, .12);
    opacity: 0;
    transition: opacity .25s ease;
  }

  .home28-dot.on::after {
    opacity: 1;
  }

  .home28-tag {
    position: absolute;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 28px;
    padding: 0 12px;
    border-radius: 500px;
    background: rgba(0, 0, 0, .38);
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    transform: translate(12px, -50%);
  }

  .home28-tag.is-topleft {
    transform: translate(-12px, -100%);
  }

  .home28-tag.on {
    background: var(--green);
  }

  .home28-dot[data-city="nanjing"] {
    left: 57.56%;
    top: 26.24%;
  }

  .home28-dot[data-city="japan"] {
    left: 78.93%;
    top: 19.41%;
  }

  .home28-dot[data-city="shenzhen"] {
    left: 52.14%;
    top: 41.76%;
  }

  .home28-dot[data-city="vietnam"] {
    left: 42.86%;
    top: 46.83%;
  }

  .home28-dot[data-city="malaysia"] {
    left: 40.48%;
    top: 74.44%;
  }

  .home28-tag[data-city="nanjing"] {
    left: 57.56%;
    top: 26.24%;
  }

  .home28-tag[data-city="japan"] {
    left: 78.93%;
    top: 19.41%;
  }

  .home28-tag[data-city="shenzhen"] {
    left: 52.14%;
    top: 41.76%;
  }

  .home28-tag[data-city="vietnam"] {
    left: 42.86%;
    top: 46.83%;
  }

  .home28-tag[data-city="malaysia"] {
    left: 40.48%;
    top: 74.44%;
  }

  .home28-card {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
    width: 100%;
    margin: 0;
    background: #fff;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 14px 40px rgba(11, 49, 37, .12);
    height: auto;
    padding: 10px;
    margin-top: 40px;
  }

  .home28-card .pic {
    position: relative;
    width: 100%;
    height: auto;
    overflow: hidden;
    border-radius: 8px;
  }

  .home28-card .pic .city {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .home28-card .pic::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 54%, rgba(0, 0, 0, .45) 100%);
  }

  .home28-card .pic .symbol {
    position: absolute;
    right: 14px;
    bottom: 14px;
    width: 58px;
    height: auto;
    z-index: 2;
    filter: drop-shadow(0 6px 16px rgba(0, 0, 0, .25));
  }

  .home28-card .nm {
    padding: 14px 16px 16px;
    color: var(--green);
    font-size: 16px;
    font-weight: 600;
    line-height: 1.45;
  }

  .home29 {
    position: relative;
    padding: 72px 0 0px;
    background: #fff;
    overflow: hidden;
  }

  .home29::before {
    content: "";
    position: absolute;
    left: -60px;
    top: 120px;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    background: rgba(77, 142, 122, .55);
    filter: blur(110px);
    pointer-events: none;
  }

  .home29-inner {
    width: 100%;
    max-width: 100%;
    margin: 0;
    height: auto;
    min-height: 0;
    padding: 0 20px;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 20px;
    padding-top: 0;
    box-sizing: border-box;
  }

  .home29-zuo {
    display: flex;
    flex-direction: column;
    gap: 14px;
    width: 100%;
    max-width: 100%;
    flex: none;
  }

  .home29-zuo .tt {
    color: var(--green);
    font-size: 26px;
    font-weight: 600;
    line-height: 1.2;
  }

  .home29-zuo .desc {
    color: var(--tt2);
    font-size: 14px;
    line-height: 1.75;
  }

  .home29-you {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 100%;
    margin-right: -20px;
    padding: 0;
    position: static !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    pointer-events: auto !important;
    height: auto;
  }

  .home29-card {
    position: relative !important;
    top: auto !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    width: 100%;
    padding: 26px 20px 22px;
    border-radius: 20px;
    overflow: hidden;
    border: 1px solid rgba(11, 49, 37, .10);
    border-left: 0;
    border-right: 0;
    box-shadow: 0 18px 44px rgba(11, 49, 37, .10);
  }

  .home29-card.dark {
    background: linear-gradient(135deg, #0b3125 0%, #18483a 100%);
    border-color: rgba(255, 255, 255, .12);
    color: #fff;
    height: auto;
    width: 100%;
  }

  .home29-card.light {
    background: #fff;
    color: var(--tt);
    height: auto;
    width: 100%;
  }

  .home29-card .head {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 14px;
    padding-right: 64px;
  }

  .home29-card .head .ic {
    width: 54px;
    height: 54px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background: rgba(255, 255, 255, .12);
    border-radius: 16px;
  }

  .home29-card.light .head .ic {
    background: rgba(11, 49, 37, .06);
  }

  .home29-card .head .ic img {
    width: 28px;
    height: 28px;
    object-fit: contain;
  }

  .home29-card .head .nm {
    font-size: 20px;
    font-weight: 600;
    line-height: 1.25;
  }

  .home29-card .ctext {
    font-size: 15px;
    line-height: 1.85;
    opacity: .88;
    width: 100%;
  }

  .home29-card .num {
    display: none !important;
  }

  .home29-card.light .num {
    background: rgba(11, 49, 37, .08);
    color: var(--green);
  }

  /* ---------- home30 表单（继承 home17，无需额外覆盖） ---------- */

  /* ================================================================
     contact.html — home55 / home56 / home57
     ================================================================ */

  /* ---------- home55 联系咨询 banner ---------- */
  .home55 {
    position: relative;
    margin-top: var(--head);
    height: 280px;
    overflow: hidden;
    background: #0b3125;
  }

  .home55 .bg {
    position: absolute;
    inset: 0;
  }

  .home55 .bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .9;
  }

  .home55 .bg::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, .10) 0%, rgba(0, 0, 0, .45) 100%);
  }

  .home55 .wrap {
    position: absolute;
    left: 20px;
    bottom: 32px;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 10px;
  }

  .home55 .tt {
    color: #fff;
    font-size: 34px;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: .02em;
    text-shadow: 0 2px 8px rgba(0, 0, 0, .2);
  }

  .home55 .ico {
    width: 32px;
    height: 32px;
  }

  .home55 .ico img {
    width: 100%;
    height: 100%;
  }

  /* ---------- home56 全球化布局（简化：隐藏地图、纵向栈） ---------- */
  .home56.is-nanjing,
  .home28 {
    /* display: none !important; */
  }

  .home56 {
    position: relative;
    padding: 40px 0 50px;
    height: auto;
    background: #f8faf9;
    overflow: hidden;
  }

  .home56-mask {
    display: none;
  }

  .home56-bg {
    position: relative;
    top: 0;
    display: none;
  }

  .home56-inner {
    position: relative;
    z-index: 1;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 22px;
  }

  /* 右侧城市选择器 - 放在前面 */
  .home56-you {
    order: 1;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    width: 100%;
    position: static !important;
    border-right: none;
    display: none;
  }

  .home56-progress .total {
    font-size: 14px;
    line-height: 1.4;
  }

  .home56-city {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    height: 32px;
    padding: 0 14px;
    background: #fff;
    border: 1px solid #e3ece8;
    border-radius: 10px;
    color: var(--tt2);
    font-size: 14px;
    font-weight: 500;
    transition: all .25s ease;
  }

  .home56-city .nm {
    font-size: 14px;
  }

  .home56-city .radio {
    width: 14px;
    height: 14px;
    border: 1.5px solid #c3d0cb;
    border-radius: 50%;
    transition: all .25s ease;
    display: none;
  }

  .home56-city.on {
    background: var(--green);
    border-color: var(--green);
    color: #fff;
  }

  .home56-city.on .radio {
    border-color: #d4ff9d;
    background: #d4ff9d;
    box-shadow: inset 0 0 0 3px var(--green);
  }

  /* 左侧标题 + 详情 */
  .home56-zuo {
    order: 2;
    display: flex;
    flex-direction: column;
    gap: 18px;
    width: 100%;
    position: static;
  }

  .home56-zuo .tt {
    color: var(--green);
    font-size: 28px;
    font-weight: 600;
    line-height: 1.3;
  }

  .home56-body {
    background: #fff;
    border-radius: 14px;
    padding: 20px 18px;
    box-shadow: 0 8px 24px rgba(11, 49, 37, .08);
    display: flex;
    flex-direction: column;
    gap: 16px;
  }

  .home56-name-wrap {
    padding-bottom: 14px;
    border-bottom: 1px solid #eef2f0;
  }

  .home56-name {
    color: var(--green);
    font-size: 18px;
    font-weight: 600;
    line-height: 1.4;
  }

  .home56-meta {
    display: flex;
    flex-direction: column;
    gap: 14px;
    list-style: none;
    margin: 0;
    padding: 0;
  }

  .home56-meta li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
  }

  .home56-meta .ic {
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f3f7f5;
    border-radius: 6px;
    margin-top: 1px;
  }

  .home56-meta .ic img {
    width: 20px;
    height: 20px;
  }

  .home56-meta .txt {
    flex: 1;
    color: var(--tt);
    font-size: 14px;
    line-height: 1.6;
  }

  .home56-pager {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 14px;
    border-top: 1px solid #eef2f0;
  }

  .home56-arrows {
    display: flex;
    gap: 8px;
  }

  .home56-arrow {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f5f8f6;
    border: 1px solid #e3ece8;
    border-radius: 50%;
    transition: all .25s ease;
  }

  .home56-arrow:active {
    background: var(--green);
    border-color: var(--green);
  }

  .home56-arrow:active img {
    filter: brightness(0) invert(1);
  }

  .home56-arrow img {
    width: 14px;
    height: 14px;
  }

  .home56-progress {
    color: var(--tt2);
    font-size: 14px;
    letter-spacing: .05em;
  }

  .home56-progress .cur {
    color: var(--green);
    font-weight: 600;
    font-size: 18px;
  }

  /* ================================================================
     esg.html — home47 / home48 / home49
     ================================================================ */

  /* ---------- home47 2024 ESG 年度报告 ---------- */
  .home47 {
    padding: 56px 0 64px;
    background: #fff;
  }

  .home47 .home47-bg {
    position: relative;
    width: auto;
    max-width: calc(100% - 40px);
    margin: 0 auto;
    min-height: 440px;
    overflow: hidden;
    border-radius: 22px;
  }

  .home47 .home47-bg>img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .home47 .home47-bg::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(11, 49, 37, .20) 0%, rgba(11, 49, 37, .70) 100%);
  }

  .home47 .home47-bg .home47-inner {
    left: auto;
    top: auto;
    right: auto;
    bottom: auto;
    width: auto;
    position: relative;
    z-index: 1;
    min-height: 440px;
    padding: 34px 16px 28px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    text-align: center;
    gap: 32px;
  }

  .home47 .home47-bg .home47-inner .tt {
    color: #fff;
    width: 100%;
    font-size: 30px;
    font-weight: 600;
    line-height: 1.28;
    text-shadow: 0 2px 6px rgba(0, 0, 0, .25);
    margin: 0;
  }

  .home47 .home47-bg .home47-inner .acts {
    display: flex;
    flex-direction: column;
    width: 100%;
    align-items: center;
    gap: 12px;
  }

  .home47 .home47-bg .home47-inner .act {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    max-width: 280px;
    min-height: 54px;
    padding: 14px 18px;
    background: rgba(255, 255, 255, .15);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, .3);
    border-radius: 999px;
    color: #fff;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.2;
    transition: all .25s ease;
  }

  .home47 .home47-bg .home47-inner .act:hover,
  .home47 .home47-bg .home47-inner .act:active {
    background: #fff;
    color: var(--green);
  }

  .home47 .home47-bg .home47-inner .act .bt {
    width: 18px;
    height: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background: transparent;
    border-radius: 0;
  }

  .home47 .home47-bg .home47-inner .act .bt img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: brightness(0) invert(1);
    transition: filter .25s ease;
  }

  .home47 .home47-bg .home47-inner .act:hover .bt,
  .home47 .home47-bg .home47-inner .act:active .bt {
    background: transparent;
  }

  .home47 .home47-bg .home47-inner .act:hover .bt img,
  .home47 .home47-bg .home47-inner .act:active .bt img {
    filter: none;
  }

  /* ---------- home48 往期报告 ---------- */
  .home48 {
    padding: 50px 0 60px;
    background: #f8faf9;
  }

  .home48 .inner {
    padding: 0 20px;
  }

  .home48 .tt {
    color: var(--green);
    font-size: 26px;
    font-weight: 600;
    line-height: 1.3;
    margin-bottom: 22px;
  }
  .home48 .gdt{
    padding: 10px 0;
  }
  .home48-grid {
    gap: 12px;
  }

  .home48-card {
    width: 280px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 16px 18px;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 4px 14px rgba(11, 49, 37, .06);
    transition: transform .25s ease, box-shadow .25s ease;
  }

  .home48-card:active {
    transform: scale(.98);
    box-shadow: 0 2px 8px rgba(11, 49, 37, .10);
  }

  .home48-card .head {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 1;
    min-width: 0;
  }

  .home48-card .ic {
    flex-shrink: 0;
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f3f7f5;
    border-radius: 10px;
  }

  .home48-card .ic img {
    width: 22px;
    height: 22px;
  }

  .home48-card .txt {
    flex: 1;
    min-width: 0;
  }

  .home48-card .nm {
    color: var(--green);
    font-size: 15px;
    font-weight: 600;
    line-height: 1.4;
    margin-bottom: 3px;
  }

  .home48-card .size {
    color: var(--tt3);
    font-size: 12px;
    line-height: 1.4;
  }

  .home48-card .btn {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--green);
    border-radius: 50%;
  }

  .home48-card .btn img {
    width: 14px;
    height: 14px;
    filter: brightness(0) invert(1);
  }

  /* ---------- home49 底部 CTA (复用 home41) ---------- */

  /* ================================================================
     joinus.html — home51 / home52 / home53 / home54
     ================================================================ */

  /* ---------- home51 在光诚 遇到更好的自己 ---------- */
  .home51 {
    padding: 56px 0 64px;
    background: #fff;
  }

  .home51 .inner {
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0 20px;
    display: flex;
    flex-direction: column;
    gap: 24px;
  }

  .home51 .zuo {
    display: flex;
    flex-direction: column;
    gap: 20px;
    flex: none;
    width: 100%;
    max-width: 100%;
    padding: 0;
  }

  .home51 .zuo .tt {
    color: var(--green);
    font-size: 32px;
    font-weight: 600;
    line-height: 1.28;
    letter-spacing: 0;
    margin: 0;
  }

  .home51 .zuo .desc {
    width: 100%;
    color: #222;
    font-size: 15px;
    line-height: 1.9;
    display: flex;
    flex-direction: column;
    gap: 12px;
  }

  .home51 .zuo .desc p {
    margin: 0;
  }

  .home51 .you {
    flex: none;
    width: 100%;
    max-width: 100%;
  }

  .home51-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .home51-grid .deco {
    display: none;
  }

  .home51-col {
    display: contents;
  }

  .home51-card {
    display: flex;
    align-items: center;
    gap: 18px;
    width: 100%;
    min-height: 168px;
    padding: 24px 20px;
    background: #f5f8f6;
    border: 1px solid rgba(11, 49, 37, .08);
    border-radius: 18px;
    text-align: left;
    box-shadow: none;
    transition: transform .25s ease, border-color .25s ease;
  }

  .home51-card:active {
    transform: translateY(-2px);
    border-color: rgba(11, 49, 37, .2);
  }

  .home51-card .ic {
    width: 52px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border-radius: 14px;
    border: 1px solid rgba(11, 49, 37, .08);
    flex-shrink: 0;
  }

  .home51-card .ic img {
    width: 28px;
    height: 28px;
  }

  .home51-card .nm {
    color: var(--green);
    font-size: 20px;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: .02em;
  }

  /* ---------- home52 与光诚同行（招聘卡片：单列纵滑） ---------- */
  .home52 {
    padding: 50px 0 60px;
    background: #f8faf9;
  }

  .home52 .C-wrap {
    padding: 0 20px;
    max-width: 100%;
    width: 100%;
  }

  .home52-head {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 22px;
  }

  .home52-head .tt {
    color: var(--green);
    font-size: 26px;
    font-weight: 600;
    line-height: 1.3;
  }

  .home52-tabs {
    display: inline-flex;
    align-self: center;
    padding: 4px;
    background: #fff;
    border: 1px solid #e3ece8;
    border-radius: 999px;
    gap: 4px;
  }

  .home52-tab {
    padding: 8px 18px;
    border-radius: 999px;
    color: var(--tt2);
    font-size: 14px;
    font-weight: 500;
    transition: all .25s ease;
  }

  .home52-tab.on {
    background: var(--green);
    color: #fff;
  }

  .home52-stage {
    position: relative;
    display: flex;
    align-items: center;
    gap: 8px;
  }

  .home52-arrow {
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border: 1px solid #e3ece8;
    border-radius: 50%;
    transition: all .25s ease;
  }

  .home52-arrow img {
    width: 12px;
    height: 12px;
  }

  .home52-arrow:active {
    background: var(--green);
    border-color: var(--green);
  }

  .home52-arrow:active img {
    filter: brightness(0) invert(1);
  }

  .home52-viewport {
    flex: 1;
    overflow: hidden;
    min-width: 0;
  }

  .home52-track {
    display: flex;
    overflow: auto;
    gap: 14px;
    transition: transform .4s cubic-bezier(.4, 0, .2, 1);
  }

  .home52-card {
    flex: none;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 22px 20px;
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 4px 16px rgba(11, 49, 37, .06);
    position: relative;
  }

  .home52-card .head {
    display: flex;
    flex-direction: column;
    gap: 6px;
  }

  .home52-card .nm {
    color: var(--green);
    font-size: 18px;
    font-weight: 600;
  }

  .home52-card .meta {
    color: var(--tt3);
    font-size: 12px;
    line-height: 1.5;
  }

  .home52-card .line {
    height: 1px;
    background: #eef2f0;
  }

  .home52-card .body {
    display: flex;
    flex-direction: column;
    gap: 8px;
  }

  .home52-card .lb {
    color: var(--tt2);
    font-size: 13px;
    font-weight: 500;
  }

  .home52-card .duty {
    display: flex;
    flex-direction: column;
    gap: 4px;
    color: var(--tt2);
    font-size: 13px;
    line-height: 1.7;
  }

  .home52-card .duty p {
    margin: 0;
  }

  .home52-card .go {
    position: absolute;
    right: 20px;
    top: 22px;
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f3f7f5;
    border-radius: 50%;
  }

  .home52-card .go img {
    width: 12px;
    height: 12px;
  }

  /* ---------- home53 以才为基 光诚聚力前行 ---------- */
  .home53 {
    position: relative;
    padding: 56px 0 70px;
    background: #fff;
    overflow: hidden;
  }

  .home53-deco {
    display: none;
  }

  .home53 .C-wrap {
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0 20px;
  }

  .home53-head {
    display: flex;
    flex-direction: column;
    gap: 18px;
    width: 100%;
    margin-bottom: 28px;
  }

  .home53-head .tt {
    color: var(--green);
    width: 100%;
    font-size: 32px;
    font-weight: 600;
    line-height: 1.28;
    letter-spacing: 0;
    margin: 0;
  }

  .home53-head .desc {
    width: 100%;
    max-width: 100%;
    flex: none;
    color: #222;
    font-size: 15px;
    line-height: 1.9;
    margin: 0;
  }

  .home53-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .home53-cell {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    position: relative;
    flex: none;
    width: 100%;
    min-height: 0;
    padding-bottom: 0;
    background: #f7faf8;
    border: 1px solid rgba(11, 49, 37, .08);
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 10px 28px rgba(11, 49, 37, .08);
    transition: transform .3s ease, box-shadow .3s ease;
  }

  .home53-cell:active {
    transform: translateY(-2px);
    box-shadow: 0 14px 30px rgba(11, 49, 37, .12);
  }

  .home53-cell .pic {
    width: 100%;
    height: 250px;
    overflow: hidden;
    flex-shrink: 0;
  }

  .home53-cell .pic img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .home53-cell .info {
    position: relative;
    left: auto;
    right: auto;
    bottom: auto;
    flex: 1 1 auto;
    min-height: 0;
    width: 100%;
    padding: 28px 20px 30px;
    display: flex;
    flex-direction: column;
    gap: 14px;
    background: #f7faf8;
  }

  .home53-cell .nm {
    color: var(--green);
    font-size: 22px;
    font-weight: 600;
    line-height: 1.45;
  }

  .home53-cell .bar {
    width: 40px;
    height: 3px;
    background: var(--green);
    border-radius: 2px;
  }

  .home53-cell .info .ctext {
    color: #444;
    font-size: 15px;
    line-height: 1.9;
  }

  /* ---------- home54 表单（继承 home17/home26，简历上传项） ---------- */
  .home54 .home54-upload-item {
    width: 100%;
  }

  .home54 .home54-upload {
    position: relative;
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    gap: 10px;
    height: 40px;
    padding: 0 14px;
    background: #fff;
    border: 1px solid #000;
    border-radius: 4px;
    color: var(--tt3);
    font-size: 14px;
    cursor: pointer;
    transition: border-color .25s ease, background .25s ease;
  }

  .home54 .home54-upload:active {
    border-color: var(--green);
    background: #f6faf8;
  }

  .home54 .home54-upload .ph {
    flex: 1;
    min-width: 0;
    color: var(--tt2);
    font-size: 13px;
    line-height: 1.4;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .home54 .home54-upload.has-file .ph {
    color: var(--tt);
  }

  .home54 .home54-upload .ic {
    flex-shrink: 0;
    width: 22px;
    height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .home54 .home54-upload .ic img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .home54 .home54-upload-item.error .home54-upload {
    border-color: #e44;
  }

  /* ========== 404 页面：home59 页面丢失 ========== */
  .home59 {
    position: relative;
    width: 100%;
    min-height: calc(100vh - var(--head));
    margin-top: var(--head);
    padding: 28px 0 40px;
    background: #fff;
    overflow: hidden;
    display: flex;
    align-items: center;
  }

  .home59-bg {
    position: absolute;
    inset: 0;
    background: rgba(77, 142, 122, .02);
    pointer-events: none;
    z-index: 0;
  }

  .home59-inner {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 24px;
    width: 90%;
    margin: 0 auto;
    padding: 0;
  }

  .home59-pic {
    flex-shrink: 0;
    width: 100%;
    max-width: 280px;
    height: auto;
    aspect-ratio: 1;
  }

  .home59-pic img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .home59-info {
    flex-shrink: 0;
    width: 100%;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .home59-info .tag {
    display: inline-flex;
    align-items: center;
    padding: 3px 10px;
    border-radius: 8px;
    background: var(--green2);
    color: #fff;
    font-family: var(--family-en);
    font-weight: 600;
    font-size: 10px;
    line-height: 15px;
    letter-spacing: 1px;
    text-transform: uppercase;
  }

  .home59-info .tt {
    color: var(--green);
    font-weight: 700;
    font-size: 36px;
    line-height: 1.2;
    letter-spacing: -1px;
    margin: 12px 0 14px;
  }

  .home59-info .desc {
    color: var(--tt2);
    line-height: 1.6;
    opacity: 0.8;
  }

  .home59-info .acts {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
    margin-top: 22px;
    width: 100%;
    max-width: 320px;
  }

  .home59-info .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 14px 24px;
    border-radius: 10px;
    line-height: 1.4;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    transition: background .25s ease, color .25s ease, box-shadow .25s ease;
  }

  .home59-info .btn.primary {
    background: var(--green);
    color: #fff;
    box-shadow: 0 8px 20px -4px rgba(0, 32, 26, .08);
  }

  .home59-info .btn.ghost {
    background: #e1e3e3;
    color: var(--green);
    box-shadow: none;
  }

  .home59-info .btn:active,
  .home59-info .btn.is-hover {
    background: var(--green);
    color: #fff;
    box-shadow: 0 8px 20px -4px rgba(0, 32, 26, .18);
  }

  .home59-info .acts.has-hover .btn:not(.is-hover) {
    background: #e1e3e3;
    color: var(--green);
    box-shadow: none;
  }

  .sresult {
    padding: 80px 0 60px;
  }
  .sresult .home20-row{
    display: grid;
    grid-template-columns: repeat(1,1fr);
  }

  .sresult .C-wrap {
    width: 100%;
  }

  .sresult-head {
    margin-bottom: 24px;
    padding-bottom: 16px;
  }

  .sresult-tip {
    margin-top: 10px;
  }

  .sresult-block {
    margin-bottom: 36px;
  }

  .sresult-bt {
    gap: 8px;
    margin-bottom: 18px;
  }

  .sresult-bt::before {
    width: 3px;
    height: 16px;
    border-radius: 2px;
  }

  .sresult-empty {
    padding: 60px 0;
  }

  .sresult-empty img {
    width: 96px;
    margin-bottom: 16px;
  }

  .sresult .home32 {
    padding: 0;
    background: transparent;
  }

  .sresult .home32-grid {
    margin-bottom: 0;
  }
}
