@media (max-width: 768px) {
  html {
    font-size: calc(100vw / 18);
  }
}
@media (min-width: 768px) and (max-width: 1358.99px) {
  html {
    font-size: calc(100vw / 19.5);
  }
}
@media (min-width: 1359px) and (max-width: 1401.99px) {
  html {
    font-size: calc(100vw / 19.2);
  }
}
@media (min-width: 1402px) and (max-width: 1681.99px) {
  html {
    font-size: calc(100vw / 18.8);
  }
}
@media (min-width: 1682px) and (max-width: 1921.99px) {
  html {
    font-size: calc(100vw / 19.2);
  }
}
@media (min-width: 1922px) and (max-width: 4000px) {
  html {
    font-size: calc(100vw / 25.6);
  }
}
/* 手机 */
@media (max-width: 768px) {
  /* banner */
  .banner {
    width: 100%;
    height: 100%;
  }
  .banner .sabuubanner {
    width: 100%;
    height: 100%;
  }
  .banner .sabuubanner .con {
    position: relative;
    height: 10rem;
  }
  .banner .sabuubanner .con .mySwiper_banner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 10rem;
    overflow: hidden;
  }
  .banner .sabuubanner .con .mySwiper_banner .swiper-wrapper .swiper-slide {
    width: 100% !important;
    position: relative;
    transition: all 0.5s;
  }
  .banner .sabuubanner .con .mySwiper_banner .swiper-wrapper .swiper-slide .tupiandde {
    width: 100%;
    height: 10rem;
    overflow: hidden;
  }
  .banner .sabuubanner .con .mySwiper_banner .swiper-wrapper .swiper-slide .tupiandde img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    min-height: 100%;
    transition: 0.8s linear 1s;
    transform: scale(1);
  }
  .banner .sabuubanner .con .mySwiper_banner .swiper-wrapper .swiper-slide .cjaioso {
    width: 100%;
    margin: 0 auto;
    position: absolute;
    z-index: 12;
    top: 4.66666667rem;
    text-align: center;
  }
  .banner .sabuubanner .con .mySwiper_banner .swiper-wrapper .swiper-slide .cjaioso p {
    font-size: 0.8rem;
    color: #fff;
    text-shadow: 0.06666667rem -0.06666667rem 0.33333333rem #000000d0;
    margin-bottom: 0.33333333rem;
    font-weight: 200;
  }
  .banner .sabuubanner .con .mySwiper_banner .swiper-wrapper .swiper-slide .cjaioso h3 {
    font-size: 1.06666667rem;
    color: #fff;
    text-shadow: 0.06666667rem -0.06666667rem 0.33333333rem #000000d0;
    letter-spacing: 0.13333333rem;
    font-weight: 500;
  }
  .banner .sabuubanner .con1 {
    display: none;
  }
  /* 案例榜单 */
  .anlibangdan {
    width: 100%;
    height: 100%;
    padding: 10% 5%;
    background-color: #fff;
  }
  .anlibangdan .w-1520 {
    width: 100%;
    margin: 0 auto;
  }
  .anlibangdan .w-1520 .biaotifenfuasn {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 1.33333333rem;
  }
  .anlibangdan .w-1520 .biaotifenfuasn .left {
    width: 100%;
    margin-bottom: 1.33333333rem;
  }
  .anlibangdan .w-1520 .biaotifenfuasn .left h3 {
    font-size: 0.8rem;
    color: #000;
    margin-bottom: 0.66666667rem;
  }
  .anlibangdan .w-1520 .biaotifenfuasn .left .shansaucu {
    font-size: 0.53333333rem !important;
    color: #000 !important;
    font-family: '微软雅黑' !important;
    line-height: 1.8 !important;
    font-weight: 200 !important;
  }
  .anlibangdan .w-1520 .biaotifenfuasn .left .shansaucu * {
    width: 100%;
    font-weight: 200 !important;
    font-size: 0.53333333rem !important;
    color: #000 !important;
    font-family: '微软雅黑' !important;
    line-height: 1.8 !important;
  }
  .anlibangdan .w-1520 .biaotifenfuasn .right {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 0.33333333rem;
  }
  .anlibangdan .w-1520 .biaotifenfuasn .right .divjij {
    position: relative;
    z-index: 9;
  }
  .anlibangdan .w-1520 .biaotifenfuasn .right .divjij .mores {
    background-color: #12254600;
    border: 0.06666667rem solid #000;
    border-radius: 6.66666667rem;
    min-width: 4.66666667rem;
    height: 1.33333333rem;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all 0.5s;
  }
  .anlibangdan .w-1520 .biaotifenfuasn .right .divjij .mores .p {
    color: #000;
    font-size: 0.53333333rem;
    margin-bottom: 0;
    transition: all 0.5s;
  }
  .anlibangdan .w-1520 .biaotifenfuasn .right .divjij .mores.active {
    background-color: #f5ca60;
    border: 0.03333333rem solid #f5ca60;
    transition: all 0.5s;
  }
  .anlibangdan .w-1520 .biaotifenfuasn .right .divjij .mores.active .p {
    color: #fff;
    transition: all 0.5s;
  }
  .anlibangdan .w-1520 .caselist {
    width: 100%;
  }
  .anlibangdan .w-1520 .caselist .mokuai {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli {
    width: 100%;
    height: 9.26666667rem;
    border: 0.03333333rem solid #e3e3e3;
    border-radius: 0.33333333rem;
    padding-top: 0;
    transition: all 0.5s;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .shangbanbufen {
    display: flex;
    justify-content: space-between;
    padding: 0.66666667rem 0.66666667rem 0.33333333rem;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .shangbanbufen .leftshauin {
    width: 70%;
    /* 滚动条整体部分 */
    /* 滚动条的轨道 */
    /* 滚动条滑块 */
    /* 滑块悬停时的颜色 */
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .shangbanbufen .leftshauin h3 {
    font-size: 0.66666667rem;
    color: #000;
    margin-bottom: 0.66666667rem;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .shangbanbufen .leftshauin .content {
    color: #000 !important;
    font-family: '微软雅黑' !important;
    font-size: 0.53333333rem !important;
    line-height: 1.8 !important;
    overflow-y: auto;
    height: 5.33333333rem;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .shangbanbufen .leftshauin .content * {
    color: #000 !important;
    padding-top: 0.33333333rem;
    font-family: '微软雅黑' !important;
    font-size: 0.53333333rem !important;
    line-height: 1.8 !important;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .shangbanbufen .leftshauin .content::-webkit-scrollbar {
    width: 0.33333333rem;
    border-radius: 0.33333333rem;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .shangbanbufen .leftshauin .content::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 0.33333333rem;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .shangbanbufen .leftshauin .content::-webkit-scrollbar-thumb {
    background: #f5ca60;
    border-radius: 0.33333333rem;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .shangbanbufen .leftshauin .content::-webkit-scrollbar-thumb:hover {
    background: #ddb246;
    border-radius: 0.33333333rem;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .shangbanbufen .rightimgssi {
    width: 3.66666667rem;
    height: 3.66666667rem;
    background-color: #f5ca60;
    border-radius: 6.66666667rem;
    box-shadow: 0 0 0.33333333rem 0 #a1a1a14e;
    transition: all 0.5s;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .shangbanbufen .rightimgssi .imgscian {
    width: 3.33333333em;
    height: 3.33333333em;
    border-radius: 6.66666667rem;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .shangbanbufen .rightimgssi .imgscian img {
    width: 100%;
    height: 100%;
    border-radius: 50rem;
    object-fit: cover;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .qiehdun {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .qiehdun a {
    display: block;
    width: 50%;
    text-align: center;
    padding: 0.33333333rem 0;
    font-size: 0.53333333rem;
    color: #000;
    cursor: pointer;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .qiehdun .dianjipdf {
    border-radius: 0 0 0 0.33333333rem;
    background-color: #f5ca60;
    color: #fff;
    border-right: 0.03333333rem solid #cecece;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .qiehdun .pipeitega {
    border-radius: 0 0 0.33333333rem 0;
    background-color: #e7e7e7;
    border-left: 0.03333333rem solid #cecece;
  }
  .anlibangdan .w-1520 .caselist .fenyezhuanshi {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 0.455rem;
    gap: 0.33333333rem;
  }
  .anlibangdan .w-1520 .caselist .fenyezhuanshi a {
    display: none;
  }
  .anlibangdan .w-1520 .caselist .fenyezhuanshi .shouiduan {
    display: block;
    width: 100%;
  }
  .anlibangdan .w-1520 .caselist .fenyezhuanshi .shouiduan i {
    display: block;
    width: 1rem;
    height: 1rem;
    margin: 2.33333333rem auto 0;
  }
  .anlibangdan .w-1520 .caselist .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: #f5ca60;
  }
  @keyframes floatY {
    0%,
    100% {
      transform: translateY(0);
    }
    50% {
      transform: translateY(-0.8rem);
    }
  }
  .anlibangdan .w-1520 .caselist .fenyezhuanshi .shouiduan p {
    display: none;
    width: 100%;
    text-align: center;
    font-size: 0.53333333rem;
    color: #999;
    margin-top: 1.33333333rem;
  }
  .anlibangdan .w-1520 .caselist .fenyezhuanshi .shouiduan.is-done p {
    display: block;
  }
  /* OFFER弹窗 */
  .offer-modal {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: none;
  }
  .offer-modal .offer-modal-mask {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.65);
  }
  .offer-modal .offer-modal-dialog {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    max-width: 60rem;
    max-height: 90vh;
    border-radius: 1rem;
    padding: 1.33333333rem;
    box-sizing: border-box;
    overflow: auto;
  }
  .offer-modal .offer-modal-dialog .offer-modal-close {
    position: absolute;
    right: 0.8rem;
    top: 0.53333333rem;
    width: 2.4rem;
    height: 2.4rem;
    border: none;
    background: transparent;
    font-size: 2rem;
    line-height: 2.4rem;
    cursor: pointer;
    color: #fff;
  }
  .offer-modal .offer-modal-dialog .offer-modal-body {
    text-align: center;
    padding-top: 1.33333333rem;
  }
  .offer-modal .offer-modal-dialog .offer-modal-body img {
    max-width: 100%;
    max-height: 75vh;
    display: block;
    margin: 0 auto;
  }
  .offer-modal.show {
    display: block;
  }
}
/* pc */
@media (min-width: 768px) {
  /* banner */
  .banner {
    width: 100%;
    height: 9.5rem;
  }
  .banner .sabuubanner {
    width: 100%;
    height: 100%;
  }
  .banner .sabuubanner .con {
    position: relative;
    height: 100%;
  }
  .banner .sabuubanner .con .mySwiper_banner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
  }
  .banner .sabuubanner .con .mySwiper_banner .swiper-wrapper {
    height: 100%;
  }
  .banner .sabuubanner .con .mySwiper_banner .swiper-wrapper .swiper-slide {
    width: 100% !important;
    height: 100%;
    position: relative;
  }
  .banner .sabuubanner .con .mySwiper_banner .swiper-wrapper .swiper-slide .tupiandde {
    width: 100%;
    height: 100%;
    overflow: hidden;
    position: relative;
    z-index: 10;
  }
  .banner .sabuubanner .con .mySwiper_banner .swiper-wrapper .swiper-slide .tupiandde img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: bottom;
    min-height: 100%;
  }
  .banner .sabuubanner .con .mySwiper_banner .swiper-wrapper .swiper-slide .cjaioso {
    width: 100%;
    margin: 0 auto;
    position: absolute;
    z-index: 12;
    top: 4rem;
    text-align: center;
  }
  .banner .sabuubanner .con .mySwiper_banner .swiper-wrapper .swiper-slide .cjaioso p {
    font-size: 0.36rem;
    color: #fff;
    text-shadow: 0.01rem -0.01rem 0.05rem #000000d0;
    margin-bottom: 0.2rem;
    font-weight: 200;
  }
  .banner .sabuubanner .con .mySwiper_banner .swiper-wrapper .swiper-slide .cjaioso h3 {
    font-size: 0.6rem;
    color: #fff;
    text-shadow: 0.01rem -0.01rem 0.05rem #000000d0;
    letter-spacing: 0.02rem;
    font-weight: 500;
  }
  .banner .sabuubanner .con1 {
    display: none;
  }
  /* 案例榜单 */
  .anlibangdan {
    width: 100%;
    height: 100%;
    padding: 1.1rem 0;
    background-color: #fff;
  }
  .anlibangdan .w-1520 {
    width: 15.2rem;
    margin: 0 auto;
  }
  .anlibangdan .w-1520 .biaotifenfuasn {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.8rem;
  }
  .anlibangdan .w-1520 .biaotifenfuasn .left {
    width: 100%;
  }
  .anlibangdan .w-1520 .biaotifenfuasn .left h3 {
    font-size: 0.36rem;
    color: #000;
    margin-bottom: 0.3rem;
  }
  .anlibangdan .w-1520 .biaotifenfuasn .left .shansaucu {
    font-size: 0.24rem !important;
    color: #000 !important;
    font-family: '微软雅黑' !important;
    line-height: 1.8 !important;
    font-weight: 200 !important;
  }
  .anlibangdan .w-1520 .biaotifenfuasn .left .shansaucu * {
    width: 100%;
    font-weight: 200 !important;
    font-size: 0.24rem !important;
    color: #000 !important;
    font-family: '微软雅黑' !important;
    line-height: 1.8 !important;
  }
  .anlibangdan .w-1520 .biaotifenfuasn .right {
    display: flex;
    align-items: center;
    gap: 0.2rem;
  }
  .anlibangdan .w-1520 .biaotifenfuasn .right .divjij {
    position: relative;
    z-index: 9;
  }
  .anlibangdan .w-1520 .biaotifenfuasn .right .divjij .mores {
    background-color: #12254600;
    border: 0.01rem solid #000;
    border-radius: 1rem;
    width: 1.5rem;
    height: 0.45rem;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all 0.5s;
  }
  .anlibangdan .w-1520 .biaotifenfuasn .right .divjij .mores .p {
    color: #000;
    font-size: 0.16rem;
    margin-bottom: 0;
    transition: all 0.5s;
  }
  .anlibangdan .w-1520 .biaotifenfuasn .right .divjij .mores:hover {
    background-color: #f5ca60;
    border: 0.01rem solid #f5ca60;
    transition: all 0.5s;
  }
  .anlibangdan .w-1520 .biaotifenfuasn .right .divjij .mores:hover .p {
    color: #fff;
    transition: all 0.5s;
  }
  .anlibangdan .w-1520 .biaotifenfuasn .right .divjij .mores.active {
    background-color: #f5ca60;
    border: 0.01rem solid #f5ca60;
    transition: all 0.5s;
  }
  .anlibangdan .w-1520 .biaotifenfuasn .right .divjij .mores.active .p {
    color: #fff;
    transition: all 0.5s;
  }
  .anlibangdan .w-1520 .caselist {
    width: 100%;
  }
  .anlibangdan .w-1520 .caselist .mokuai {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli {
    width: 4.5rem;
    height: 3rem;
    border: 0.01rem solid #e3e3e3;
    border-radius: 0.15rem;
    padding-top: 0;
    transition: all 0.5s;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .shangbanbufen {
    display: flex;
    justify-content: space-between;
    padding: 0.4rem 0.2rem 0.1rem;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .shangbanbufen .leftshauin {
    width: 70%;
    padding-top: 0.1rem;
    /* 滚动条整体部分 */
    /* 滚动条的轨道 */
    /* 滚动条滑块 */
    /* 滑块悬停时的颜色 */
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .shangbanbufen .leftshauin h3 {
    font-size: 0.2rem;
    color: #000;
    margin-bottom: 0.2rem;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .shangbanbufen .leftshauin .content {
    color: #000 !important;
    font-family: '微软雅黑' !important;
    font-size: 0.16rem !important;
    line-height: 1.8 !important;
    overflow-y: auto;
    height: 1.5rem;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .shangbanbufen .leftshauin .content * {
    color: #000 !important;
    padding-top: 0.1rem;
    font-family: '微软雅黑' !important;
    font-size: 0.16rem !important;
    line-height: 1.8 !important;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .shangbanbufen .leftshauin .content::-webkit-scrollbar {
    width: 0.08rem;
    border-radius: 0.1rem;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .shangbanbufen .leftshauin .content::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 0.1rem;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .shangbanbufen .leftshauin .content::-webkit-scrollbar-thumb {
    background: #f5ca60;
    border-radius: 0.1rem;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .shangbanbufen .leftshauin .content::-webkit-scrollbar-thumb:hover {
    background: #ddb246;
    border-radius: 0.1rem;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .shangbanbufen .rightimgssi {
    width: 1.05rem;
    height: 1.05rem;
    background-color: #f5ca60;
    border-radius: 1rem;
    box-shadow: 0 0 0.1rem 0 #a1a1a14e;
    transition: all 0.5s;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .shangbanbufen .rightimgssi .imgscian {
    width: 1em;
    height: 1em;
    border-radius: 1rem;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .shangbanbufen .rightimgssi .imgscian img {
    width: 100%;
    height: 100%;
    border-radius: 1rem;
    object-fit: cover;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .qiehdun {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .qiehdun a {
    display: block;
    width: 50%;
    text-align: center;
    padding: 0.11rem 0;
    font-size: 0.16rem;
    color: #000;
    cursor: pointer;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .qiehdun .dianjipdf {
    border-radius: 0 0 0 0.15rem;
    background-color: #f5ca60;
    color: #fff;
    border-right: 0.01rem solid #cecece;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli .qiehdun .pipeitega {
    border-radius: 0 0 0.15rem 0;
    background-color: #e7e7e7;
    border-left: 0.01rem solid #cecece;
  }
  .anlibangdan .w-1520 .caselist .mokuai .asncianli:hover {
    padding-top: 0.03rem;
    transition: all 0.5s;
  }
  .anlibangdan .w-1520 .caselist .fenyezhuanshi {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.15rem;
    margin-top: 1rem;
    font-size: 0.14rem;
  }
  .anlibangdan .w-1520 .caselist .fenyezhuanshi .shouiduan {
    display: none;
  }
  .anlibangdan .w-1520 .caselist .fenyezhuanshi a {
    display: block;
    font-size: 0.14rem;
    padding: 0.05rem 0.22rem;
    color: #333;
    text-align: center;
    line-height: 1.8;
    border: 0.01rem solid #ffffff00;
    background-color: #fff;
    border-radius: 0.5rem;
    box-shadow: 0 0 0.1rem 0 #3333333e;
    transition: all 0.5s;
  }
  .anlibangdan .w-1520 .caselist .fenyezhuanshi a .icon {
    display: block;
    width: 0.2rem;
    height: 0.2rem;
    fill: #000;
  }
  .anlibangdan .w-1520 .caselist .fenyezhuanshi a.active {
    background-color: #f5ca60;
    color: #fff;
    border: 0.03rem solid #fff;
  }
  /* OFFER弹窗 */
  .offer-modal {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: none;
  }
  .offer-modal .offer-modal-mask {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.65);
  }
  .offer-modal .offer-modal-dialog {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 90%;
    max-width: 7rem;
    max-height: 90vh;
    border-radius: 0.15rem;
    padding: 0.2rem;
    box-sizing: border-box;
    overflow: auto;
  }
  .offer-modal .offer-modal-dialog .offer-modal-close {
    position: absolute;
    right: 0.12rem;
    top: 0.08rem;
    width: 0.36rem;
    height: 0.36rem;
    border: none;
    background: transparent;
    font-size: 0.3rem;
    line-height: 0.36rem;
    cursor: pointer;
    color: #fff;
  }
  .offer-modal .offer-modal-dialog .offer-modal-body {
    text-align: center;
    padding-top: 0.2rem;
  }
  .offer-modal .offer-modal-dialog .offer-modal-body img {
    max-width: 100%;
    max-height: 75vh;
    display: block;
    margin: 0 auto;
  }
  .offer-modal.show {
    display: block;
  }
}
