@media (max-width: 768px) {
  html {
    font-size: calc(100vw / 18);
  }
}
@media (min-width: 768px) and (max-width: 1921.99px) {
  html {
    font-size: calc(100vw / 19.2);
  }
}
@media (min-width: 1922px) and (max-width: 2558.99px) {
  html {
    font-size: calc(100vw / 22.4);
  }
}
@media (min-width: 2559px) and (max-width: 4000px) {
  html {
    font-size: calc(100vw / 25.6);
  }
}
/* 手机 */
@media (max-width: 768px) {
  /* banner */
  .wp-banner-section {
    position: relative;
    width: 100%;
    overflow: hidden;
  }
  .wp-banner-section .wp-banner-swiper {
    position: relative;
    width: 100%;
    height: 12rem;
    overflow: hidden;
  }
  .wp-banner-section .wp-banner-swiper .swiper-wrapper {
    height: 100%;
  }
  .wp-banner-section .wp-banner-swiper .swiper-wrapper .wp-banner-slide {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
  }
  .wp-banner-section .wp-banner-swiper .swiper-wrapper .wp-banner-slide .wp-banner-bg {
    width: 100%;
    position: absolute;
    inset: 0;
    z-index: 1;
    overflow: hidden;
  }
  .wp-banner-section .wp-banner-swiper .swiper-wrapper .wp-banner-slide .wp-banner-bg img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center bottom;
    transition: transform 5s ease;
  }
  .wp-banner-section .wp-banner-swiper .swiper-wrapper .wp-banner-slide .wp-banner-bg .pcshcuashci {
    display: none;
  }
  .wp-banner-section .wp-banner-swiper .swiper-wrapper .wp-banner-slide .wp-banner-bg .shoujishcuashci {
    display: block;
  }
  .wp-banner-section .wp-banner-swiper .swiper-wrapper .wp-banner-slide .wp-banner-content {
    position: relative;
    z-index: 3;
    width: 100%;
    height: 100%;
    padding: 0 5%;
    margin: 0 auto;
    padding-top: 12vh;
    text-align: left;
    color: #fff;
    box-sizing: border-box;
  }
  .wp-banner-section .wp-banner-swiper .swiper-wrapper .wp-banner-slide .wp-banner-content .canicun {
    margin: 0;
    font-size: 0.66666667rem;
    line-height: 1.8;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.88);
    text-shadow: 0 0.13333333rem 0.13333333rem rgba(35, 88, 145, 0.18);
  }
  .wp-banner-section .wp-banner-swiper .swiper-wrapper .wp-banner-slide .wp-banner-content .cnascinhein {
    width: 95%;
    margin: 0.66666667rem 0 0;
    font-size: 0.8rem;
    line-height: 1.6;
    font-weight: 700;
    color: #fff;
    text-shadow: 0 0.13333333rem 0.2rem rgba(35, 88, 145, 0.22);
  }
  /* 产品列表 */
  .productlist {
    width: 100%;
    height: 100%;
    padding: 10% 5%;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  .productlist .w-1400 {
    width: 100%;
    margin: 0 auto;
  }
  .productlist .w-1400 .scnuasnnav {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.13333333rem;
    font-size: 0.53333333rem;
    color: #333;
    margin-bottom: 1.33333333rem;
  }
  .productlist .w-1400 .scnuasnnav i {
    display: block;
    width: 0.8rem;
    height: 0.8rem;
    margin-right: 0.33333333rem;
  }
  .productlist .w-1400 .scnuasnnav i .icon {
    display: block;
    width: 0.8rem;
    height: 0.8rem;
    fill: #333;
  }
  .productlist .w-1400 .scnuasnnav a {
    font-size: 0.53333333rem;
    color: #333;
    transition: all 0.5s;
  }
  .productlist .w-1400 .product-section {
    width: 100%;
    height: 100%;
    overflow: visible;
  }
  .productlist .w-1400 .product-section .product-layout {
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    gap: 1.33333333rem;
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar {
    width: 100%;
    border-radius: 0.33333333rem;
    overflow: hidden;
    box-shadow: 0 0.13333333rem 0.33333333rem rgba(20, 60, 100, 0.08);
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar .product-all {
    padding: 0.66666667rem;
    display: flex;
    align-items: center;
    gap: 0.8rem;
    font-size: 0.66666667rem;
    color: #333;
    background: #fff;
    position: relative;
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar .product-menu {
    width: 100%;
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar .product-menu .product-menu-item {
    width: 100%;
    background: #fff;
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar .product-menu .product-menu-item .product-menu-title {
    padding: 0.66666667rem 0.8rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #f8fafc;
    color: #333;
    font-size: 0.66666667rem;
    cursor: pointer;
    transition: all 0.3s ease;
    user-select: none;
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar .product-menu .product-menu-item .product-menu-title span {
    white-space: nowrap;
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar .product-menu .product-menu-item .product-menu-title i {
    width: 0;
    height: 0;
    border-left: 0.2rem solid transparent;
    border-right: 0.2rem solid transparent;
    border-top: 0.26666667rem solid #202436;
    transition: all 0.3s ease;
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar .product-menu .product-menu-item .product-submenu {
    background: #fff;
    max-height: 0;
    overflow: hidden;
    padding: 0;
    transition: max-height 0.35s ease, padding 0.35s ease;
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar .product-menu .product-menu-item .product-submenu li {
    width: 100%;
    border-bottom: 0.03333333rem solid #eee;
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar .product-menu .product-menu-item .product-submenu li a {
    display: block;
    padding: 0.66666667rem;
    font-size: 0.53333333rem;
    line-height: 1.4;
    color: #555;
    transition: all 0.25s ease;
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar .product-menu .product-menu-item .product-submenu li:last-child {
    border: 0;
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar .product-menu .product-menu-item.active .product-menu-title {
    background: #04376d;
    color: #fff;
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar .product-menu .product-menu-item.active .product-menu-title i {
    border-top-color: #fff;
    transform: rotate(180deg);
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar .product-menu .product-menu-item.open .product-submenu {
    max-height: 21.33333333rem;
  }
  .productlist .w-1400 .product-section .product-layout .product-main {
    width: 100%;
    min-width: 0;
  }
  .productlist .w-1400 .product-section .product-layout .product-main .product-grid {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 0.66666667rem;
  }
  .productlist .w-1400 .product-section .product-layout .product-main .product-grid .product-card {
    width: 47.5%;
    height: 9.33333333rem;
    background: #fff;
    border: 0.06666667rem solid rgba(0, 0, 0, 0.06);
    border-radius: 0.33333333rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    transition: all 0.35s ease;
  }
  .productlist .w-1400 .product-section .product-layout .product-main .product-grid .product-card .product-img {
    width: 6.66666667rem;
    height: 6.66666667rem;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .productlist .w-1400 .product-section .product-layout .product-main .product-grid .product-card .product-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: all 0.35s ease;
  }
  .productlist .w-1400 .product-section .product-layout .product-main .product-grid .product-card .product-name {
    font-size: 0.66666667rem;
    line-height: 1.8;
    color: #333;
    text-align: center;
    transition: all 0.3s ease;
  }
  .productlist .w-1400 .product-section .product-layout .product-main .product-pagination {
    display: none;
  }
  .productlist .w-1400 .product-section .product-layout .product-main .fenyezhuanshi {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.33333333rem;
    font-size: 0.53333333rem;
  }
  .productlist .w-1400 .product-section .product-layout .product-main .fenyezhuanshi .shouiduan {
    display: block;
    width: 100%;
  }
  .productlist .w-1400 .product-section .product-layout .product-main .fenyezhuanshi .shouiduan i {
    display: block;
    width: 1rem;
    height: 1rem;
    margin: 2.33333333rem auto 0;
  }
  .productlist .w-1400 .product-section .product-layout .product-main .fenyezhuanshi .shouiduan i .icon {
    display: block;
    /* 关键：让 transform 生效更稳定 */
    animation: floatY 2s ease-in-out infinite;
    transform-origin: center;
    will-change: transform;
    width: 1rem;
    height: 1rem;
    fill: #04376d;
  }
  @keyframes floatY {
    0%,
    100% {
      transform: translateY(0);
    }
    50% {
      transform: translateY(-0.8rem);
    }
  }
  .productlist .w-1400 .product-section .product-layout .product-main .fenyezhuanshi .shouiduan p {
    display: none;
    width: 30%;
    margin: 0 auto;
    background-color: #04376d;
    padding: 0.4rem;
    text-align: center;
    font-size: 0.53333333rem;
    color: #fff;
    margin-top: 2rem;
  }
  .productlist .w-1400 .product-section .product-layout .product-main .fenyezhuanshi .shouiduan.is-done p {
    display: block;
  }
}
/* pc */
@media (min-width: 768px) {
  /* banner */
  .wp-banner-section {
    position: relative;
    width: 100%;
    overflow: hidden;
  }
  .wp-banner-section .wp-banner-swiper {
    position: relative;
    width: 100%;
    height: 7.5rem;
    overflow: hidden;
  }
  .wp-banner-section .wp-banner-swiper .swiper-wrapper {
    height: 100%;
  }
  .wp-banner-section .wp-banner-swiper .swiper-wrapper .wp-banner-slide {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
  }
  .wp-banner-section .wp-banner-swiper .swiper-wrapper .wp-banner-slide .wp-banner-bg {
    width: 100%;
    position: absolute;
    inset: 0;
    z-index: 1;
    overflow: hidden;
  }
  .wp-banner-section .wp-banner-swiper .swiper-wrapper .wp-banner-slide .wp-banner-bg img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center bottom;
    transition: transform 5s ease;
  }
  .wp-banner-section .wp-banner-swiper .swiper-wrapper .wp-banner-slide .wp-banner-bg .pcshcuashci {
    display: block;
  }
  .wp-banner-section .wp-banner-swiper .swiper-wrapper .wp-banner-slide .wp-banner-bg .shoujishcuashci {
    display: none;
  }
  .wp-banner-section .wp-banner-swiper .swiper-wrapper .wp-banner-slide .wp-banner-content {
    position: relative;
    z-index: 3;
    width: 15rem;
    height: 100%;
    margin: 0 auto;
    padding-top: 30vh;
    text-align: left;
    color: #fff;
    box-sizing: border-box;
  }
  .wp-banner-section .wp-banner-swiper .swiper-wrapper .wp-banner-slide .wp-banner-content .canicun {
    margin: 0;
    font-size: 0.3rem;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.88);
    text-shadow: 0 0.06rem 0.1rem rgba(35, 88, 145, 0.18);
  }
  .wp-banner-section .wp-banner-swiper .swiper-wrapper .wp-banner-slide .wp-banner-content .cnascinhein {
    width: 6.5rem;
    margin: 0.5rem 0 0;
    font-size: 0.36rem;
    line-height: 1.5;
    font-weight: 700;
    color: #fff;
    text-shadow: 0 0.05rem 0.1rem rgba(35, 88, 145, 0.22);
  }
  /* 产品列表 */
  .productlist {
    width: 100%;
    height: 100%;
    padding: 1rem 0;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  .productlist .w-1400 {
    width: 14rem;
    margin: 0 auto;
  }
  .productlist .w-1400 .scnuasnnav {
    display: flex;
    align-items: center;
    gap: 0.1rem;
    font-size: 0.16rem;
    color: #333;
    margin-bottom: 0.5rem;
  }
  .productlist .w-1400 .scnuasnnav i {
    display: block;
    width: 0.25rem;
    height: 0.25rem;
    margin-right: 0.1rem;
  }
  .productlist .w-1400 .scnuasnnav i .icon {
    display: block;
    width: 0.25rem;
    height: 0.25rem;
    fill: #333;
  }
  .productlist .w-1400 .scnuasnnav a {
    font-size: 0.16rem;
    color: #333;
    transition: all 0.5s;
  }
  .productlist .w-1400 .scnuasnnav a:hover {
    color: #033e80;
    transition: all 0.5s;
  }
  .productlist .w-1400 .product-section {
    width: 100%;
    height: 100%;
    overflow: visible;
  }
  .productlist .w-1400 .product-section .product-layout {
    width: 14rem;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 0.5rem;
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar {
    width: 3.3rem;
    border-radius: 0.15rem;
    overflow: hidden;
    box-shadow: 0 0.05rem 0.2rem rgba(20, 60, 100, 0.08);
    position: sticky;
    top: 0.02rem;
    z-index: 10;
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar .product-all {
    padding: 0.2rem 0 0.2rem 0.35rem;
    display: flex;
    align-items: center;
    gap: 0.12rem;
    font-size: 0.18rem;
    color: #333;
    background: #fff;
    position: relative;
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar .product-all::before {
    position: absolute;
    top: 0.2rem;
    left: 0.2rem;
    content: "";
    width: 0.03rem;
    height: 0.25rem;
    background: #04376d;
    display: block;
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar .product-menu {
    width: 100%;
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar .product-menu .product-menu-item {
    width: 100%;
    background: #fff;
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar .product-menu .product-menu-item .product-menu-title {
    padding: 0.2rem 0.22rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #f8fafc;
    color: #333;
    font-size: 0.16rem;
    cursor: pointer;
    transition: all 0.3s ease;
    user-select: none;
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar .product-menu .product-menu-item .product-menu-title span {
    white-space: nowrap;
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar .product-menu .product-menu-item .product-menu-title i {
    width: 0;
    height: 0;
    border-left: 0.07rem solid transparent;
    border-right: 0.07rem solid transparent;
    border-top: 0.08rem solid #202436;
    transition: all 0.3s ease;
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar .product-menu .product-menu-item .product-submenu {
    background: #fff;
    max-height: 0;
    overflow: hidden;
    padding: 0;
    transition: max-height 0.35s ease, padding 0.35s ease;
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar .product-menu .product-menu-item .product-submenu li {
    width: 100%;
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar .product-menu .product-menu-item .product-submenu li a {
    display: block;
    padding: 0.08rem 0.24rem;
    font-size: 0.14rem;
    line-height: 1.4;
    color: #555;
    transition: all 0.25s ease;
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar .product-menu .product-menu-item .product-submenu li a:hover {
    color: #04376d;
    transition: all 0.25s ease;
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar .product-menu .product-menu-item.active .product-menu-title {
    background: #04376d;
    color: #fff;
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar .product-menu .product-menu-item.active .product-menu-title i {
    border-top-color: #fff;
    transform: rotate(180deg);
  }
  .productlist .w-1400 .product-section .product-layout .product-sidebar .product-menu .product-menu-item.open .product-submenu {
    max-height: 3.2rem;
    padding: 0.18rem 0 0.2rem;
  }
  .productlist .w-1400 .product-section .product-layout .product-main {
    width: 100%;
    min-width: 0;
  }
  .productlist .w-1400 .product-section .product-layout .product-main .product-grid {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.55rem;
  }
  .productlist .w-1400 .product-section .product-layout .product-main .product-grid .product-card {
    width: 3.5rem;
    height: 3.5rem;
    background: #fff;
    border: 0.01rem solid rgba(0, 0, 0, 0.06);
    border-radius: 0.15rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    transition: all 0.35s ease;
  }
  .productlist .w-1400 .product-section .product-layout .product-main .product-grid .product-card .product-img {
    width: 2.5rem;
    height: 2.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .productlist .w-1400 .product-section .product-layout .product-main .product-grid .product-card .product-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: all 0.35s ease;
  }
  .productlist .w-1400 .product-section .product-layout .product-main .product-grid .product-card .product-name {
    font-size: 0.18rem;
    line-height: 1.8;
    color: #333;
    text-align: center;
    transition: all 0.3s ease;
  }
  .productlist .w-1400 .product-section .product-layout .product-main .product-grid .product-card .product-card:hover {
    border-color: rgba(0, 69, 125, 0.18);
    box-shadow: 0 0.14rem 0.25rem rgba(0, 69, 125, 0.12);
    transform: translateY(-0.04rem);
  }
  .productlist .w-1400 .product-section .product-layout .product-main .product-grid .product-card:hover .product-img img {
    filter: grayscale(0);
    opacity: 1;
    transform: scale(1.06);
  }
  .productlist .w-1400 .product-section .product-layout .product-main .product-grid .product-card:hover .product-name {
    color: #04376d;
    font-weight: 700;
  }
  .productlist .w-1400 .product-section .product-layout .product-main .product-pagination {
    margin-top: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.08rem;
    flex-wrap: wrap;
    font-size: 0.14rem;
  }
  .productlist .w-1400 .product-section .product-layout .product-main .product-pagination .page-btn,
  .productlist .w-1400 .product-section .product-layout .product-main .product-pagination .page-num {
    min-width: 0.38rem;
    height: 0.38rem;
    padding: 0 0.14rem;
    border: 0.01rem solid rgba(0, 69, 125, 0.14);
    background: #fff;
    border-radius: 0.05rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.14rem;
    color: #333;
    cursor: pointer;
    transition: all 0.25s ease;
  }
  .productlist .w-1400 .product-section .product-layout .product-main .product-pagination .page-btn {
    min-width: 0.75rem;
  }
  .productlist .w-1400 .product-section .product-layout .product-main .product-pagination .page-num:hover,
  .productlist .w-1400 .product-section .product-layout .product-main .product-pagination .page-btn:hover {
    border-color: #04376d;
    color: #04376d;
  }
  .productlist .w-1400 .product-section .product-layout .product-main .product-pagination .page-num.active {
    background: #04376d;
    border-color: #04376d;
    color: #fff;
  }
  .productlist .w-1400 .product-section .product-layout .product-main .product-pagination .page-btn.disabled {
    color: #aaa;
    border-color: rgba(0, 0, 0, 0.08);
    background: #f8f8f8;
    cursor: not-allowed;
  }
  .productlist .w-1400 .product-section .product-layout .product-main .product-pagination .page-btn.disabled:hover {
    color: #aaa;
    border-color: rgba(0, 0, 0, 0.08);
  }
  .productlist .w-1400 .product-section .product-layout .product-main .product-pagination .page-dot {
    height: 0.38rem;
    padding: 0 0.04rem;
    display: inline-flex;
    align-items: center;
    color: #999;
    font-size: 0.14rem;
  }
  .productlist .w-1400 .product-section .product-layout .product-main .fenyezhuanshi {
    display: none;
  }
}
