/* 证书延伸到屏幕边缘的设计只在模块内裁切，避免循环副本撑宽页面。 */
.about-page .honor-qualification { overflow: hidden; }
/* 证书跟随轮播项等比铺满，不依赖图片固有尺寸，避免展示为小缩略图。 */
.about-page .honor-qualification .honor-swiper .swiper-slide .img-box,
.about-page .honor-qualification .honor-swiper .swiper-slide .img-box .img {
    width: 100%;
}
.about-page .honor-qualification .honor-swiper .swiper-slide .img-box .img {
    display: block;
    height: auto;
}
@media (min-width: 801px) {
    /* 初始化前也保持四张证书的比例，初始化后由轮播的内联宽度接管。 */
    .about-page .honor-qualification .honor-swiper .swiper-slide {
        width: calc((100% - 48px) / 4);
    }
}

/* 手机首页胶囊保持原有边框和进度效果，长文案在局部横向滚动区域内完整呈现。 */
@media (max-width: 800px) {
    html body .index-page .banner-section .con_wrap .tab-con .tab-con-item .flex-box-wrapper .center-box-wrap .center-box .tab-con-btn-wrap {
        left: 0;
        transform: none !important;
        width: 100%;
        max-width: 100%;
        overflow-x: auto;
        overflow-y: hidden;
        justify-content: flex-start;
        padding: 3px 2px;
        box-sizing: border-box;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior-x: contain;
        scrollbar-width: none;
    }
    html body .index-page .banner-section .tab-con-btn-wrap::-webkit-scrollbar { display: none; }
    html body .index-page .banner-section .con_wrap .tab-con .tab-con-item .flex-box-wrapper .center-box-wrap .center-box .tab-con-btn-wrap .tab-item {
        flex: 0 0 auto;
        max-width: calc(100% - 8px);
        min-height: .58rem;
        height: auto;
        padding: 8px 14px;
        white-space: normal;
        overflow-wrap: anywhere;
        text-align: center;
    }
}

/* 设备健康履历原图含较多非对称留白：仅裁切该素材的展示窗口，保留原界面像素。
   原图 912×670，展示源区域 x=45、y=95、w=660、h=460；四语和双端共用。 */
html body .product-viewer-component .con-card-box[data-type8]:has(.img-box-wrap img[lazy-src*="1785811694781_710e42be"]) .img-box-wrap {
    width: calc(4.4rem * 660 / 460) !important;
    height: 4.4rem !important;
    top: calc((100% - .96rem) / 2) !important;
    overflow: hidden;
    border-radius: .16rem;
}
html body .product-viewer-component .con-card-box[data-type8] .img-box-wrap img[lazy-src*="1785811694781_710e42be"] {
    position: absolute;
    left: calc(-100% * 45 / 660);
    top: calc(-100% * 95 / 460);
    width: calc(100% * 912 / 660) !important;
    height: calc(100% * 670 / 460) !important;
    max-width: none;
    object-fit: fill;
    transition-property: opacity;
}

/* 产品查看器：由内容撑开选中卡片，避免延迟初始化、字体加载及缩放造成高度失效。 */
.product-viewer-component .card-component {
    --viewer-expand-ms: 300;
}
.product-viewer-component .card-component[data-viewer-expand-ready] .control-bg {
    transform-origin: top left;
}
.product-viewer-component .card-component[data-viewer-expand-ready] .cell-wrap .cell-content.on .control-content {
    /* 文字由展开动画统一调度，避免与旧版延迟透明度过渡叠加。 */
    transition: none;
}
.product-viewer-component .card-component .cell-wrap .cell-content .control-item {
    height: auto !important;
    width: max-content !important;
}
.product-viewer-component .card-component .cell-wrap .cell-content.on .control-item {
    width: var(--sk-cell-width) !important;
}
.product-viewer-component .card-component .cell-wrap .cell-content.on .control-tour {
    position: absolute;
    top: 0;
    left: 0;
}
.product-viewer-component .card-component .cell-wrap .cell-content.on .control-content {
    position: relative;
    width: 100%;
}
/* 收起内容立即退出可见状态，防止淡出期间覆盖已收缩的卡片及相邻文字。 */
.product-viewer-component .card-component .cell-wrap .cell-content .control-item .control-content,
.product-viewer-component .card-component .cell-wrap .cell-content .control-item .control-tour {
    transition-property: opacity;
}
.product-viewer-component .card-component .img-wrap .img-box:not(.on),
.product-viewer-component .card-component .img-wrap .img-box .con-card-box:not(.show),
.product-viewer-component .card-component .img-img .con-card-box:not(.show) {
    /* 旧画面保持不透明直至新画面淡入完成，避免两层同时透明而露出白底。 */
    transition: opacity 0s linear .3s, visibility 0s linear .3s;
}
/* 脚本执行前仅展示第一个子卡片，防止旧模板的多个 show 状态叠加。 */
html body .product-viewer-component .card-component:not([data-state="init"]) .con-card-box ~ .con-card-box {
    opacity: 0;
    visibility: hidden;
}
/* 媒体与外框使用相同 rem 基准；宽高按素材比例共同限制，不产生额外黑边。 */
html body .product-viewer-component .card-component .con-card-box[data-type3] .con-img-wrap > .con-img {
    --viewer-media-max-width: 8.72rem;
    --viewer-media-max-height: 4.72rem;
    width: min(var(--viewer-media-width, 8.72rem), var(--viewer-media-max-width), calc(var(--viewer-media-max-height) * var(--viewer-media-ratio, 1.8474576))) !important;
    height: auto;
    max-width: 8.72rem;
    max-height: 4.72rem;
    object-fit: contain;
    /* 尺寸随 rem 同步更新，仅保留淡入，避免旧版 transition: all 临时拉错比例。 */
    transition-property: opacity;
}
html body .product-viewer-component .con-img-wrap:has(> img.product-viewer-media:not([lazy-status="load"])) {
    background-color: transparent;
}
/* 同类媒体共享常驻底图，切换及首次图片下载期间不透出白色卡片底色。 */
.product-viewer-component .img-wrap:has(.product-viewer-media),
.product-viewer-component .img-img:has(.product-viewer-media) {
    background: url("/static/pages/images/hry/img108.webp") center / cover no-repeat;
    border-radius: .24rem;
}
.product-viewer-component .con-card-box.show {
    z-index: 2;
}
/* 上级 Tab 显示后，初始化前也有首张画面，不再等待 200ms 才填充右侧区域。 */
html body .product-viewer-component .card-component:not([data-state="init"]) .img-wrap > .img-box:first-child {
    opacity: 1;
    visibility: visible;
}
@media (max-width: 800px) {
    .product-viewer-component .card-component .cell-wrap .cell-content .control-item {
        width: 100% !important;
    }
    html body .product-viewer-component .card-component .con-card-box[data-type3] .con-img-wrap > .con-img {
        --viewer-media-max-width: 6.06rem;
        --viewer-media-max-height: 6.06rem;
        max-width: 6.06rem;
        max-height: 6.06rem;
    }
}

.events-details-page.news-details-page .page-main .page-wrapper .link-button .navigation .img-box .img {
    object-fit: contain;
}


.fmcs-page .platform-architecture .-body .box-view3 .logo-img img {
    margin: 0 auto;
}

.fmcs-page .digital-management .-box .-body .card-swiper .swiper-wrapper .swiper-slide,
.fmcs-page .bring-value .-box .-body .card-swiper .swiper-slide,
.fmcs-page .operations-system .-box .card-swiper .swiper-slide{
    height: auto;
}

@media screen and (min-width: 800px) {
    .product-viewer-component .card-component .img-wrap .img-box {
        transition: .3s;
    }
    .product-viewer-component .card-component .img-wrap .img-box .con-card-box[data-type3] .con-img-wrap {
        background-color: transparent;
    }
    .product-viewer-component .card-component .img-wrap .img-box .con-card-box[data-type3] .con-img-wrap:has([lazy-status="load"]) {
        background-color: black;
    }

    .events-details-page .page-main .page-wrapper .content-box .card-wrapper .date-wrapper .share-box {
        flex-shrink: 0;
        margin-left: 0.2rem;
    }
    .delivery-section {
        overflow: hidden;
    }
    .application-scenarios-section {
        overflow: hidden;
    }
}

@media screen and (max-width: 800px) {

}

/* Joly IPC 產品特點：沿用 JolyHi 的外框比例，僅在內層裁減素材黑邊。 */
.icair-page .product-viewer-component .con-card-box[data-type3] .con-img-crop {
  width: 8.4rem;
  max-width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 0.16rem;
}

.icair-page .product-viewer-component .con-card-box[data-type3] .con-img-crop > img.con-img {
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  object-fit: cover;
  border-radius: 0;
  transform: scale(1.11);
  transform-origin: center;
}

/* 数据可视化截图没有素材黑边，应完整显示，避免裁切 Logo 与边缘数据。 */
.icair-page .product-viewer-component .con-card-box[data-type3] .con-img-crop > img.con-img[src*="joly-data-visualization-clean.png"],
.icair-page .product-viewer-component .con-card-box[data-type3] .con-img-crop > img.con-img[lazy-src*="joly-data-visualization-clean.png"] {
  object-fit: contain;
  transform: none;
}

@media screen and (max-width: 800px) {
  .icair-page .product-viewer-component .con-card-box[data-type3] .con-img-crop {
    width: 6.06rem;
    border-radius: 0.14rem;
  }
}

/* 關於集團：每個合作夥伴 Tab 使用雙行無縫輪播。 */
.about-page .cooperative-enterprise-section {
  overflow: hidden;
}

.about-page .cooperative-enterprise-section .marquee-wrap .marquee {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  -webkit-animation: marquee var(--animation-duration) linear infinite;
  animation: marquee var(--animation-duration) linear infinite;
}

.about-page .cooperative-enterprise-section .marquee-wrap .marquee:nth-child(2n) {
  margin-top: 0.16rem;
  -webkit-animation-name: marquee-left;
  animation-name: marquee-left;
}

.about-page .cooperative-enterprise-section .marquee-wrap .marquee .marquee-content {
  display: inline-block;
  flex-wrap: nowrap;
  justify-content: initial;
  min-width: auto;
  margin: 0;
}

.about-page .cooperative-enterprise-section .marquee-wrap .marquee .marquee-content .card-img {
  width: 2.88rem;
  margin: 0 0.16rem 0 0;
}

/* 文章详情：微信二维码分享弹窗。 */
body.article-share-dialog-open {
  overflow: hidden;
}

.article-share-dialog {
  position: fixed;
  z-index: 100000;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.24rem;
  background: rgba(19, 37, 40, 0.58);
}

.article-share-dialog__panel {
  position: relative;
  width: min(4.4rem, calc(100vw - 0.48rem));
  padding: 0.42rem;
  border-radius: 0.24rem;
  background: #fff;
  box-shadow: 0 0.24rem 0.64rem rgba(19, 37, 40, 0.18);
  text-align: center;
}

.article-share-dialog__close {
  position: absolute;
  top: 0.12rem;
  right: 0.12rem;
  display: flex;
  width: 0.4rem;
  height: 0.4rem;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #eff8f8;
  color: #132528;
  font-size: 0.28rem;
  line-height: 1;
  cursor: pointer;
}

.article-share-dialog__title {
  margin: 0;
  color: #132528;
  font-family: var(--sk-font-SemiBold);
  font-size: 0.28rem;
  line-height: 0.4rem;
}

.article-share-dialog__description {
  margin: 0.12rem 0 0;
  color: rgba(19, 37, 40, 0.72);
  font-size: 0.15rem;
  line-height: 0.25rem;
}

.article-share-dialog__qrcode {
  width: 2.2rem;
  height: 2.2rem;
  margin: 0.24rem auto;
  padding: 0.08rem;
  border: 1px solid #dce8e8;
  border-radius: 0.12rem;
  background: #fff;
}

.article-share-dialog__qrcode canvas,
.article-share-dialog__qrcode img,
.article-share-dialog__qrcode svg {
  display: block;
  width: 100%;
  height: 100%;
}

.article-share-dialog__copy {
  min-width: 1.36rem;
  min-height: 0.42rem;
  padding: 0.08rem 0.24rem;
  border: 0;
  border-radius: 0.24rem;
  background: #49b73f;
  color: #fff;
  font-family: var(--sk-font-SemiBold);
  font-size: 0.15rem;
  line-height: 0.24rem;
  cursor: pointer;
}

/* 文章详情：小红书沿用页脚的二维码悬浮展示方式。 */
.events-details-page .page-main .share-box .icon-link-list .icon-link {
  position: relative;
}

.events-details-page .page-main .share-box .icon-link-list .icon-link .layer_box {
  position: absolute;
  z-index: 3;
  bottom: 100%;
  left: 50%;
  padding-bottom: 0.14rem;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateX(-50%);
  transition: opacity 0.2s, visibility 0.2s;
}

.events-details-page .page-main .share-box .icon-link-list .icon-link:hover .layer_box,
.events-details-page .page-main .share-box .icon-link-list .icon-link:focus-visible .layer_box {
  opacity: 1;
  visibility: visible;
}

.events-details-page .page-main .share-box .icon-link-list .icon-link .layer_box .qr-img {
  display: block;
  max-width: none;
  width: 1.2rem;
  height: 1.2rem;
  padding: 0.06rem;
  border-radius: 0.08rem;
  background: #fff;
  box-shadow: 0 0.08rem 0.24rem rgba(19, 37, 40, 0.16);
}

@media screen and (max-width: 800px) {
  .article-share-dialog {
    padding: 0.32rem;
  }

  .article-share-dialog__panel {
    width: min(6.4rem, calc(100vw - 0.64rem));
    padding: 0.64rem 0.48rem 0.48rem;
    border-radius: 0.36rem;
  }

  .article-share-dialog__close {
    top: 0.16rem;
    right: 0.16rem;
    width: 44px;
    height: 44px;
    font-size: 0.46rem;
  }

  .article-share-dialog__title {
    font-size: 0.36rem;
    line-height: 0.5rem;
  }

  .article-share-dialog__description {
    margin-top: 0.16rem;
    font-size: 0.25rem;
    line-height: 0.4rem;
  }

  .article-share-dialog__qrcode {
    width: 3.8rem;
    height: 3.8rem;
    margin: 0.32rem auto;
    padding: 0.12rem;
    border-radius: 0.2rem;
  }

  .article-share-dialog__copy {
    min-width: 2.3rem;
    min-height: 44px;
    padding: 0.14rem 0.32rem;
    border-radius: 0.44rem;
    font-size: 0.26rem;
    line-height: 0.38rem;
  }

  .events-details-page .page-main .share-box .icon-link-list .icon-link .layer_box {
    padding-bottom: 0.2rem;
  }

  .events-details-page .page-main .share-box .icon-link-list .icon-link .layer_box .qr-img {
    width: 2.16rem;
    height: 2.16rem;
    padding: 0.1rem;
    border-radius: 0.14rem;
  }
}

/* 案例詳情：項目名稱與地址膠囊。 */
.case-details-page .page-main .header-wal .img-warp .case-meta-tags {
  position: absolute;
  z-index: 1;
  bottom: 0.16rem;
  left: 0.16rem;
  display: flex;
  align-items: center;
  gap: 0.12rem;
  max-width: calc(100% - 0.32rem);
}

.case-details-page .page-main .header-wal .img-warp .case-meta-tags .tag {
  position: static;
  min-width: 0;
}

.case-details-page .page-main .header-wal .img-warp .case-meta-tags .case-project-tag {
  max-width: 6.4rem;
  color: #fff;
  background: rgba(15, 45, 48, 0.72);
  border: 1px solid rgba(255, 255, 255, 0.18);
  box-shadow: 0 0.08rem 0.24rem rgba(0, 0, 0, 0.12);
}

.case-details-page .page-main .header-wal .img-warp .case-meta-tags .case-project-tag .icon {
  color: #7bd270;
}

.case-details-page .page-main .header-wal .img-warp .case-meta-tags .tag-text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

@media screen and (max-width: 800px) {
  .about-page .cooperative-enterprise-section .marquee-wrap .marquee:nth-child(2n) {
    margin-top: 0.14rem;
  }

  .about-page .cooperative-enterprise-section .marquee-wrap .marquee .marquee-content .card-img {
    width: 2.88rem;
    margin-right: 0.14rem;
  }

  .case-details-page .page-main .header-wal .img-warp .case-meta-tags {
    bottom: 0.14rem;
    left: 0.14rem;
    gap: 0.1rem;
    max-width: calc(100% - 0.28rem);
  }

  .case-details-page .page-main .header-wal .img-warp .case-meta-tags .case-project-tag {
    max-width: 4.2rem;
  }

}

/* Careers：职位卡片发布时间。 */
.careers-page .page-main .con .right-box .card-list .card-item .card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.24rem;
}

.careers-page .page-main .con .right-box .card-list .card-item .card-head .title {
  min-width: 0;
}

.careers-page .page-main .con .right-box .card-list .card-item .publish-date {
  flex-shrink: 0;
  font-size: 0.14rem;
  line-height: 0.24rem;
  color: rgba(19, 37, 40, 0.6);
  white-space: nowrap;
}

@media screen and (max-width: 800px) {
  .careers-page .page-main .con .right-box .card-list .card-item .card-head {
    gap: 0.2rem;
  }

  .careers-page .page-main .con .right-box .card-list .card-item .publish-date {
    padding-top: 0.04rem;
    font-size: 0.2rem;
    line-height: 0.36rem;
  }
}

/* Career 首页：岗位卡片发布时间。 */
.career-page .page-main .get-to-know-our-team-section .card-wrap .card-list .card-item {
  position: relative;
}



.career-page .page-main .get-to-know-our-team-section .card-wrap .card-list .card-item .tag {
  position: absolute;
  top: 0.24rem;
  right: 0.24rem;
  display: flex;
  align-items: center;
}

.career-page .page-main .get-to-know-our-team-section .card-wrap .card-list .card-item .tag .label-icon {
  width: 0.24rem;
  height: 0.24rem;
}

.career-page .page-main .get-to-know-our-team-section .card-wrap .card-list .card-item .tag .tag-value {
  margin-left: 0.08rem;
  font-size: 0.16rem;
  line-height: 0.24rem;
  white-space: nowrap;
}

@media screen and (max-width: 800px) {
  .career-page .page-main .get-to-know-our-team-section .card-wrap .card-list .card-item .title {
    max-width: 3rem;
  }


  .career-page .page-main .get-to-know-our-team-section .card-wrap .card-list .card-item .tag {
    top: 0.31rem;
    right: 1.2rem;
  }

  .career-page .page-main .get-to-know-our-team-section .card-wrap .card-list .card-item .tag .label-icon {
    width: 0.43rem;
    height: 0.43rem;
  }

  .career-page .page-main .get-to-know-our-team-section .card-wrap .card-list .card-item .tag .tag-value {
    margin-left: 0.14rem;
    font-size: 0.22rem;
    line-height: 0.43rem;
  }
}

/* 职位详情：标题区域发布时间。 */
.job-details-page .page-main .card-wrapper .job-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.32rem;
}

.job-details-page .page-main .card-wrapper .job-head .h1 {
  min-width: 0;
}

.job-details-page .page-main .card-wrapper .publish-date {
  flex-shrink: 0;
  padding-top: 0.08rem;
  font-size: 0.16rem;
  line-height: 0.24rem;
  color: rgba(19, 37, 40, 0.6);
  white-space: nowrap;
}

@media screen and (max-width: 800px) {
  .job-details-page .page-main .card-wrapper .job-head {
    gap: 0.2rem;
  }

  .job-details-page .page-main .card-wrapper .publish-date {
    padding-top: 0.06rem;
    font-size: 0.2rem;
    line-height: 0.36rem;
  }
}

/* 聯絡頁三類留資表單 */
.contact-page .contact-form-section {
  scroll-margin-top: 1.2rem;
}

.contact-page .page-main .card___wrap .contact-form-section.contact-sales-section {
  padding-top: 0.56rem;
}

.contact-page .contact-form-tabs {
  display: flex;
  justify-content: center;
  gap: 0.12rem;
  margin: 0 auto 0.36rem;
  padding: 0 0.24rem;
}

.contact-page .contact-form-tab {
  min-height: 0.38rem;
  padding: 0.06rem 0.22rem;
  border: 1px solid rgba(19, 37, 40, 0.42);
  border-radius: 0.44rem;
  background: #fff;
  color: #132528;
  font-family: var(--sk-font-Medium);
  font-size: 0.16rem;
  line-height: 0.24rem;
  cursor: pointer;
  transition: color 0.25s ease, background-color 0.25s ease, border-color 0.25s ease;
}

.contact-page .contact-form-tab:hover,
.contact-page .contact-form-tab.is-active {
  border-color: #132528;
  background: #132528;
  color: #fff;
}

.contact-page .contact-form-section .flex-box {
  align-items: flex-start;
}

.contact-page .contact-form-section .flex-box > .left-box {
  position: sticky;
  top: 1.2rem;
}

.contact-page .contact-form-section .contact-sales-content {
  white-space: pre-line;
}

.contact-page .contact-form-section .form___box .content-container {
  display: block;
  margin: 0;
}

.contact-page .contact-form-group + .contact-form-group {
  margin-top: 0.24rem;
}

.contact-page .contact-form-group-title {
  position: relative;
  margin-bottom: 0.14rem;
  padding-bottom: 0.1rem;
  color: #132528;
  font-family: var(--sk-font-SemiBold);
  font-size: 0.2rem;
  line-height: 0.28rem;
}

.contact-page .contact-form-group-title::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0.48rem;
  height: 2px;
  border-radius: 2px;
  background: var(--sk-global-color);
}

.contact-page .contact-form-grid {
  display: flex;
  flex-wrap: wrap;
  margin: -0.08rem;
}

.contact-page .contact-form-section .form___box .content-container .contact-form-grid .input___content {
  margin: 0.08rem;
}

.contact-page .contact-form-section .select-input .input_box {
  min-width: 0;
}

.contact-page .contact-field-error {
  margin: 0.06rem 0.2rem 0;
  color: #d64545;
  font-size: 0.13rem;
  line-height: 0.2rem;
}

.contact-page .contact-checkbox-field {
  display: flex;
  align-items: center;
  min-height: 0.56rem;
  padding: 0 0.08rem;
}

.contact-page .contact-checkbox-field label {
  display: inline-flex;
  align-items: center;
  gap: 0.12rem;
  min-height: 0.44rem;
  cursor: pointer;
  font-size: 0.16rem;
}

.contact-page .contact-checkbox-field input {
  width: 0.2rem;
  height: 0.2rem;
  accent-color: var(--sk-global-color);
}

.contact-page .contact-upload-field {
  padding-top: 0.04rem;
}

.contact-page .contact-upload-box {
  display: flex;
  align-items: center;
  gap: 0.16rem;
  min-height: 0.64rem;
  padding: 0.12rem 0.16rem;
  border: 1px dashed rgba(19, 37, 40, 0.25);
  border-radius: 0.18rem;
  background: #f7fbfb;
}

.contact-page .contact-upload-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 0.4rem;
  padding: 0.08rem 0.2rem;
  border-radius: 0.4rem;
  background: var(--sk-global-color);
  color: #fff;
  font-family: var(--sk-font-Medium);
  font-size: 0.15rem;
  cursor: pointer;
}

.contact-page .contact-upload-button.is-disabled {
  cursor: not-allowed;
  opacity: 0.5;
}

.contact-page .contact-upload-hint {
  color: rgba(19, 37, 40, 0.58);
  font-size: 0.14rem;
  line-height: 0.22rem;
}

.contact-page .contact-upload-list {
  margin-top: 0.12rem;
}

.contact-page .contact-upload-item {
  display: flex;
  align-items: center;
  gap: 0.12rem;
  min-height: 0.48rem;
  margin-top: 0.08rem;
  padding: 0.08rem 0.12rem 0.08rem 0.16rem;
  border-radius: 0.12rem;
  background: #eff8f8;
}

.contact-page .contact-upload-name {
  display: flex;
  align-items: baseline;
  gap: 0.08rem;
  min-width: 0;
  flex: 1;
}

.contact-page .contact-upload-name span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 0.15rem;
}

.contact-page .contact-upload-name small,
.contact-page .contact-upload-status {
  flex-shrink: 0;
  color: rgba(19, 37, 40, 0.55);
  font-size: 0.12rem;
}

.contact-page .contact-upload-status.is-error {
  color: #d64545;
}

.contact-page .contact-upload-remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 0.36rem;
  height: 0.36rem;
  border-radius: 50%;
  color: #132528;
  font-size: 0.24rem;
  cursor: pointer;
}

.contact-page .contact-upload-remove:disabled {
  cursor: not-allowed;
  opacity: 0.35;
}

.contact-page .contact-form-section .default___btn:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

@media (max-width: 768px) {
  .contact-page .contact-form-section {
    scroll-margin-top: 0.9rem;
  }

  .contact-page .page-main .card___wrap .contact-form-section.contact-sales-section {
    padding-top: 0.4rem;
  }

  .contact-page .contact-form-tabs {
    justify-content: flex-start;
    gap: 0.12rem;
    margin-bottom: 0.36rem;
    padding: 0 0.31rem 0.08rem;
    overflow-x: auto;
    scrollbar-width: none;
  }

  .contact-page .contact-form-tabs::-webkit-scrollbar {
    display: none;
  }

  .contact-page .contact-form-tab {
    flex: 0 0 auto;
    min-height: 38px;
    padding: 0.08rem 0.24rem;
    border-radius: 0.68rem;
    font-size: 0.25rem;
    line-height: 0.38rem;
  }

  .contact-page .contact-form-section .flex-box > .left-box {
    position: static;
  }

  .contact-page .contact-form-group + .contact-form-group {
    margin-top: 0.36rem;
  }

  .contact-page .contact-form-group-title {
    margin-bottom: 0.18rem;
    padding-bottom: 0.12rem;
    font-size: 0.32rem;
    line-height: 0.44rem;
  }

  .contact-page .contact-form-group-title::after {
    width: 0.72rem;
    height: 0.04rem;
  }

  .contact-page .contact-form-grid {
    margin: -0.075rem;
  }

  .contact-page .contact-form-section .form___box .content-container .contact-form-grid .input___content {
    width: 100%;
    margin: 0.075rem;
  }

  .contact-page .contact-field-error {
    margin: 0.08rem 0.31rem 0;
    font-size: 0.22rem;
    line-height: 0.34rem;
  }

  .contact-page .contact-checkbox-field {
    min-height: 0.84rem;
    padding: 0 0.08rem;
  }

  .contact-page .contact-checkbox-field label {
    gap: 0.18rem;
    min-height: 44px;
    font-size: 0.27rem;
    line-height: 0.4rem;
  }

  .contact-page .contact-checkbox-field input {
    width: 0.36rem;
    height: 0.36rem;
  }

  .contact-page .contact-upload-box {
    align-items: flex-start;
    flex-direction: column;
    gap: 0.12rem;
    min-height: 1.4rem;
    padding: 0.24rem;
    border-radius: 0.3rem;
  }

  .contact-page .contact-upload-button {
    min-height: 44px;
    padding: 0.14rem 0.32rem;
    border-radius: 0.72rem;
    font-size: 0.26rem;
  }

  .contact-page .contact-upload-hint {
    font-size: 0.22rem;
    line-height: 0.34rem;
  }

  .contact-page .contact-upload-item {
    gap: 0.12rem;
    min-height: 0.82rem;
    padding: 0.12rem 0.14rem 0.12rem 0.24rem;
    border-radius: 0.2rem;
  }

  .contact-page .contact-upload-name {
    display: block;
  }

  .contact-page .contact-upload-name span {
    display: block;
    font-size: 0.24rem;
  }

  .contact-page .contact-upload-name small,
  .contact-page .contact-upload-status {
    font-size: 0.2rem;
  }

  .contact-page .contact-upload-remove {
    width: 44px;
    height: 44px;
    font-size: 0.42rem;
  }
}



/* 解决方案页面start */
.case__card___list .card-item .card-con {
  min-height: 2.8rem;
}

@media (max-width: 768px) {
  .case__card___list .card-item .card-con {
    min-height: 3.9rem;
  }
}

/* 解决方案页面end */

/* Global Office 原版恢复：来源 yunengcn-html/dist/css/main.css（herry.scss、nala.scss）。
   仅增加选择器权重覆盖早期静态列表规则，不更改原版尺寸与响应式布局。 */
@media screen and (max-width: 800px){
html body .global-offices-page.office-original .head-info {
    padding: 0 0.43rem;
  }
}
html body .global-offices-page.office-original .head-info .h1 {
  font-size: 0.96rem;
  line-height: 0.96rem;
  font-family: var(--sk-EN-font-Medium);
  font-weight: normal;
}
@media screen and (max-width: 800px){
html body .global-offices-page.office-original .head-info .h1 {
    font-size: 0.43rem;
    line-height: 0.58rem;
  }
}
html body .global-offices-page.office-original .head-info .head-text {
  max-width: 8rem;
  margin: 0.72rem auto 0;
  font-size: 0.24rem;
  line-height: 0.32rem;
  text-align: center;
}
@media screen and (max-width: 800px){
html body .global-offices-page.office-original .head-info .head-text {
    font-size: 0.25rem;
    line-height: 0.43rem;
  }
}
html body .global-offices-page.office-original .head-info .select-box {
  margin: 0.64rem auto 0;
  width: 5.92rem;
  position: relative;
}
@media screen and (max-width: 800px){
html body .global-offices-page.office-original .head-info .select-box {
    margin: 0.07rem;
    width: 100%;
    margin: 0.87rem auto 0;
  }
}
html body .global-offices-page.office-original .head-info .select-box.on {
  z-index: 2;
}
html body .global-offices-page.office-original .head-info .select-box.on .cell-box .icon {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
}
html body .global-offices-page.office-original .head-info .select-box .cell-box {
  height: 0.48rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0 0.24rem;
  border-radius: 0.48rem;
  cursor: pointer;
  background: #FFFFFF;
}
@media screen and (max-width: 800px){
html body .global-offices-page.office-original .head-info .select-box .cell-box {
    height: 0.87rem;
    padding: 0 0.29rem;
    border-radius: 0.87rem;
  }
}
html body .global-offices-page.office-original .head-info .select-box .cell-box .input-value {
  font-size: 0.16rem;
  line-height: 0.24rem;
  margin-right: 0.08rem;
}
@media screen and (max-width: 800px){
html body .global-offices-page.office-original .head-info .select-box .cell-box .input-value {
    font-size: 0.25rem;
    line-height: 0.43rem;
    margin-right: 0.14rem;
  }
}
html body .global-offices-page.office-original .head-info .select-box .cell-box .icon {
  width: 0.24rem;
  height: 0.24rem;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 800px){
html body .global-offices-page.office-original .head-info .select-box .cell-box .icon {
    width: 0.43rem;
    height: 0.43rem;
  }
}
html body .global-offices-page.office-original .head-info .select-box .-select-layer {
  position: absolute;
  width: 100%;
  height: 0;
  bottom: -0.1rem;
  left: 0;
  -webkit-transform: translate(0, 100%);
      -ms-transform: translate(0, 100%);
          transform: translate(0, 100%);
  overflow: hidden;
  background: rgba(19, 37, 40, 0.05);
  box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
}
@media screen and (max-width: 800px){
html body .global-offices-page.office-original .head-info .select-box .-select-layer {
    bottom: -0.14rem;
    box-shadow: 0 0.08rem 0.24rem 0 rgba(0, 0, 0, 0.1);
  }
}
html body .global-offices-page.office-original .head-info .select-box .-select-layer .-inner {
  background: #EFF8F8;
  border-radius: 0.24rem 0.24rem 0.24rem 0.24rem;
  padding: 0.16rem 0.04rem 0.21rem 0.22rem;
}
@media screen and (max-width: 800px){
html body .global-offices-page.office-original .head-info .select-box .-select-layer .-inner {
    border-radius: 0.15rem;
    padding: 0.24rem 0.08rem 0.3rem 0.24rem;
  }
}
html body .global-offices-page.office-original .head-info .select-box .-select-layer .-inner dl dd {
  cursor: pointer;
  margin-top: 0.12rem;
  font-size: 0.16rem;
  line-height: 0.2rem;
  color: rgba(0, 0, 0, 0.4);
  font-family: var(--sk-font-Medium);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 800px){
html body .global-offices-page.office-original .head-info .select-box .-select-layer .-inner dl dd {
    margin-top: 0.24rem;
    font-size: 0.24rem;
    line-height: 0.32rem;
  }
}
html body .global-offices-page.office-original .head-info .select-box .-select-layer .-inner dl dd.on {
  color: var(--fcolor-default);
}
html body .global-offices-page.office-original .head-info .select-box .-select-layer .-inner dl dd:first-child {
  margin-top: 0;
}
html body .global-offices-page.office-original .head-info .select-box .-select-layer .-inner dl dd:hover {
  color: #000;
}
html body .global-offices-page.office-original .mapMk {
  --image: url();
  width: 34px;
  height: 40px;
  background-image: var(--image);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}
html body .global-offices-page.office-original .-container .wal {
  padding-top: 2.08rem;
  padding-bottom: 1.6rem;
}
html body .global-offices-page.office-original .-container .wal .offices-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: 0.64rem;
  height: 8.5rem;
}
html body .global-offices-page.office-original .-container .wal .offices-box .content-list {
  max-width: 6rem;
  width: calc(100% + .08rem);
  height: 100%;
  padding-right: 0.08rem;
  margin-right: 0.16rem;
  overflow: auto;
}
html body .global-offices-page.office-original .-container .wal .offices-box .content-list::-webkit-scrollbar {
  width: 4px;
  height: 4px;
}
html body .global-offices-page.office-original .-container .wal .offices-box .content-list::-webkit-scrollbar-thumb {
  border-radius: 4px;
  background: rgba(19, 37, 40, 0.2);
}
html body .global-offices-page.office-original .-container .wal .offices-box .content-list::-webkit-scrollbar-thumb:vertical {
  background-color: rgba(19, 37, 40, 0.2);
}
html body .global-offices-page.office-original .-container .wal .offices-box .content-list::-webkit-scrollbar-width {
  width: 4px;
}
html body .global-offices-page.office-original .-container .wal .offices-box .content-list::-webkit-scrollbar-track {
  border-radius: 4px;
  background-color: none;
}
html body .global-offices-page.office-original .-container .wal .offices-box .content-list ul {
  width: 100%;
}
html body .global-offices-page.office-original .-container .wal .offices-box .content-list ul li {
  cursor: pointer;
  margin-top: 0.16rem;
  width: 100%;
  padding: 0.32rem;
  border-radius: 0.24rem;
  background-color: white;
  border: 1px solid transparent;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
html body .global-offices-page.office-original .-container .wal .offices-box .content-list ul li:hover, html body .global-offices-page.office-original .-container .wal .offices-box .content-list ul li.active {
  border-color: #51B146;
}
html body .global-offices-page.office-original .-container .wal .offices-box .content-list ul li:hover .-name, html body .global-offices-page.office-original .-container .wal .offices-box .content-list ul li.active .-name {
  color: #51B146;
}
html body .global-offices-page.office-original .-container .wal .offices-box .content-list ul li:first-child {
  margin-top: 0;
}
html body .global-offices-page.office-original .-container .wal .offices-box .content-list ul li .-name {
  font-family: var(--sk-font-SemiBold);
  font-size: 0.24rem;
  line-height: 0.32rem;
  color: #1E1E1E;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
html body .global-offices-page.office-original .-container .wal .offices-box .content-list ul li .-contact {
  margin-top: 0.32rem;
}
html body .global-offices-page.office-original .-container .wal .offices-box .content-list ul li .-contact .dl .dd {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: 0.16rem;
  font-size: 0.16rem;
  line-height: 0.24rem;
}
html body .global-offices-page.office-original .-container .wal .offices-box .content-list ul li .-contact .dl .dd:first-child {
  margin-top: 0;
}
html body .global-offices-page.office-original .-container .wal .offices-box .content-list ul li .-contact .dl .dd img {
  width: 0.24rem;
  height: 0.24rem;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  object-fit: contain;
  margin-right: 0.16rem;
}
html body .global-offices-page.office-original .-container .wal .offices-box .map-box {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  width: 100%;
  height: 100%;
  border-radius: 0.24rem;
  overflow: hidden;
  background-color: #e9e9e9;
}
html body .global-offices-page.office-original .-container .wal .offices-box .map-box .map-inner {
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 800px){
html body .global-offices-page.office-original .-container .wal {
    padding: 1.88rem 0 1.15rem;
  }
html body .global-offices-page.office-original .-container .wal .offices-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    margin-top: 0.88rem;
    height: auto;
  }
html body .global-offices-page.office-original .-container .wal .offices-box .content-list {
    padding: 0 0.43rem 0;
    max-width: 100%;
    width: 100%;
    height: 7rem;
    margin: 0.58rem 0 0;
  }
html body .global-offices-page.office-original .-container .wal .offices-box .content-list ul {
    width: 100%;
  }
html body .global-offices-page.office-original .-container .wal .offices-box .content-list ul li {
    margin-top: 0.29rem;
    padding: 0.43rem;
    border-radius: 0.43rem;
  }
html body .global-offices-page.office-original .-container .wal .offices-box .content-list ul li .-name {
    font-size: 0.32rem;
    line-height: 0.43rem;
  }
html body .global-offices-page.office-original .-container .wal .offices-box .content-list ul li .-contact {
    margin-top: 0.29rem;
  }
html body .global-offices-page.office-original .-container .wal .offices-box .content-list ul li .-contact .dl .dd {
    margin-top: 0.14rem;
    font-size: 0.25rem;
    line-height: 0.43rem;
  }
html body .global-offices-page.office-original .-container .wal .offices-box .content-list ul li .-contact .dl .dd img {
    width: 0.43rem;
    height: 0.43rem;
    margin-right: 0.29rem;
  }
html body .global-offices-page.office-original .-container .wal .offices-box .map-box {
    -webkit-box-flex: 0;
    -webkit-flex: none;
        -ms-flex: none;
            flex: none;
    width: 100%;
    height: 10.1rem;
    border-radius: 0.24rem;
    overflow: hidden;
  }
html body .global-offices-page.office-original .-container .wal .offices-box .map-box .map-inner {
    width: 100%;
    height: 100%;
  }
}


/* 清除早期双列卡片新增属性，还原源码中的块级独立卡片。 */
html body .global-offices-page.office-original .-container .wal .offices-box .content-list ul { display: block; gap: 0; }
html body .global-offices-page.office-original .-container .wal .offices-box .content-list ul li { display: list-item; min-height: 0; }
.office-original [v-cloak] { display: none; }
.office-original .select-box .-select-layer { visibility: hidden; }
.office-original .map-inner { display: flex; align-items: center; justify-content: center; }
.office-original .office-map-canvas { position: relative; flex: none; isolation: isolate; }
.office-original .office-map-canvas picture, .office-original .office-map-canvas img { display: block; width: 100%; height: 100%; }
.office-original .office-map-canvas img { object-fit: cover; object-position: center; }
.office-original .office-marker-lines { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; }
.office-original .office-marker-lines line { stroke:#176344; stroke-width:1; stroke-linecap:round; opacity:.55; }
.office-original .office-marker-lines circle { fill:#176344; opacity:.7; }
.office-original .office-marker-lines .is-active line { stroke:#52ad45; stroke-width:2.5; opacity:.65; }
.office-original .office-marker-lines .is-active circle { fill:#52ad45; opacity:.65; }
.office-original .office-navigation { display: flex; align-items: center; justify-content: flex-end; gap: .16rem; margin-top: .32rem; }
.office-original .office-navigation button { display: grid; place-items: center; width: .56rem; height: .56rem; min-width: 44px; min-height: 44px; border: 0; border-radius: 50%; background: rgba(19,37,40,.1); color: #132528; font-size: .24rem; cursor: pointer; }
.office-original .office-navigation button:hover { background: #51b146; color: white; }
.office-original .office-navigation button:disabled { opacity: .35; cursor: default; }
.office-original .office-counter { margin-right: .16rem; font-size: .16rem; }
.office-original .office-current-title { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.office-original button:focus-visible, .office-original [tabindex]:focus-visible { outline: 2px solid #51b146; outline-offset: -2px; }
.office-original .office-pin { position: absolute; width: var(--office-pin-hit-size,44px); height: var(--office-pin-hit-size,44px); padding: 0; border: 0; background: transparent; transform: translate(-50%, -50%); cursor: pointer; z-index: 2; }
/* 原图包含底部阴影，两态分别以针尖对齐坐标，而非按整张 PNG 中心定位。 */
/* 基准宽度为32屏幕像素，变量补偿当前像素比，刷新与缩放保持一致；轻投影保留原版图形层次。 */
.office-original .office-map-canvas .office-pin .office-pin-art { position:absolute; left:50%; top:50%; width:var(--office-pin-size,32px); min-width:var(--office-pin-size,32px); max-width:var(--office-pin-size,32px); height:auto; object-fit:contain; transform:translate(-50%,-83%); filter:drop-shadow(0 2px 1px #123e3033); }
.office-original .office-map-canvas .office-pin.is-active .office-pin-art { transform:translate(-50%,-85%); }
.office-original .office-pin:hover, .office-original .office-pin:focus-visible { z-index:5; }
.office-original .office-pin.is-active { z-index: 4; }
.office-original .office-pin.is-active::before { content: ''; position: absolute; inset: 4px; border-radius: 50%; border: 2px solid #236f40; animation: office-pin-pulse 1.2s ease-out 3; pointer-events: none; }
/* 名称浮层与锚点共用像素比补偿；小屏保留最大宽度限制，避免长公司名称溢出地图。 */
.office-original .office-map-label { position: absolute; transform: translate(-50%, calc(-100% - 24 * var(--office-overlay-unit,1px))); width: max-content; max-width: 54%; padding: calc(10 * var(--office-overlay-unit,1px)) calc(14 * var(--office-overlay-unit,1px)); border-radius: calc(12 * var(--office-overlay-unit,1px)); background: #123e30f2; color: #fff; font-size: calc(14 * var(--office-overlay-unit,1px)); font-weight: 600; line-height: 1.5; text-align: center; box-shadow: 0 calc(4 * var(--office-overlay-unit,1px)) calc(14 * var(--office-overlay-unit,1px)) #123e3033; pointer-events: none; z-index: 5; overflow-wrap: anywhere; }
.office-original .office-empty, .office-original .office-map-unavailable { padding: 32px; text-align: center; color: #657779; }
/* 空结果复用现有插图；桌面尺寸跟随全站 rem 比例，避免浏览器缩放后仅图片和文字缩小。 */
.office-original .office-empty-state {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .24rem;
    padding: .48rem .24rem;
    min-height: 3.4rem;
    box-sizing: border-box;
    border: 0;
    border-radius: 0;
    background: transparent;
    text-align: center;
}
.office-original .office-empty-state .cms-empty-state-img {
    display: block;
    width: 1.8rem;
    max-width: 60%;
    max-height: 1.3rem;
    object-fit: contain;
}
.office-original .office-empty-state h2 { margin: 0; color: #132a2d; font-size: .24rem; line-height: 1.5; }
.office-original .office-empty-state p { margin: .1rem auto 0; max-width: 5.6rem; color: #657779; font-size: .16rem; line-height: 1.75; }
.office-original .office-empty-reset { max-width: 100%; border: 0; cursor: pointer; }
.office-original .office-empty-reset:focus-visible { outline: 2px solid #0b5144; outline-offset: 4px; }
@media (max-width: 800px) {
    .office-original .office-empty-state { min-height: 300px; padding: 32px 20px; gap: 20px; }
    .office-original .office-empty-state .cms-empty-state-img { width: 150px; max-height: 110px; }
    .office-original .office-empty-state h2 { font-size: 20px; }
    .office-original .office-empty-state p { margin-top: 10px; max-width: 560px; font-size: 14px; }
}
@keyframes office-pin-pulse { from { transform: scale(.6); opacity: .8; } to { transform: scale(2); opacity: 0; } }

@media (max-width:800px) {
 .office-original .office-navigation { padding: 0 .43rem; }
 .office-original .office-counter { font-size: .25rem; }
 .office-original .office-map-label { font-size: 14px; }
}
@media (prefers-reduced-motion: reduce) { .office-original .office-pin.is-active::before { animation: none; } }

/* 職業發展：標題、發布時間分行，避免多語長文案相互覆蓋。 */
.career-page .page-main .get-to-know-our-team-section .card-wrap .card-list .card-item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 0.16rem;
  min-width: 0;
}
html body .career-page .page-main .get-to-know-our-team-section .card-wrap .card-list .card-item .title {
  width: 100%;
  min-width: 0;
  white-space: normal;
  overflow-wrap: anywhere;
  max-width: none;
}
.career-page .page-main .get-to-know-our-team-section .card-wrap .card-list .card-item .tag {
  position: static;
  transform: none;
  width: auto;
  max-width: 100%;
  display: flex;
  align-items: flex-start;
  gap: 8px;
  white-space: normal;
  overflow-wrap: anywhere;
}
.career-page .page-main .get-to-know-our-team-section .card-wrap .card-list .card-item .tag .label-icon {
  flex-shrink: 0;
}
.career-page .page-main .get-to-know-our-team-section .card-wrap .card-list .card-item .icon-box {
  flex-shrink: 0;
  margin-top: auto;
}
html body .career-page .page-main .get-to-know-our-team-section .card-wrap .card-list .card-item .tag .tag-value {
  min-width: 0;
  max-width: none;
  margin-left: 0;
  white-space: normal;
}

/* 泰语首页移动端：双行按钮按内容撑高，保持胶囊轮廓与圆形箭头。 */
@media (max-width: 800px) {
  html[lang="th"] body .index-page .leftImg-rightSwiper-section .flex-box .left-img .default___btn {
    box-sizing: border-box;
    width: max-content;
    max-width: calc(100% - .86rem);
    height: auto;
    min-height: .92rem;
    padding: .14rem .15rem .14rem .34rem;
    gap: .18rem;
    border-radius: 999px;
    align-items: center;
  }
  html[lang="th"] body .index-page .leftImg-rightSwiper-section .flex-box .left-img .default___btn .btn-text {
    flex: 1 1 auto;
    min-width: 0;
    max-width: none;
    padding: 0;
    font-size: .25rem;
    line-height: 1.55;
    white-space: normal;
    overflow-wrap: break-word;
  }
  html[lang="th"] body .index-page .leftImg-rightSwiper-section .flex-box .left-img .default___btn .btn-arrow-inner {
    flex: 0 0 .61rem;
    width: .61rem;
    height: .61rem;
    margin-right: 0;
    border-radius: 50%;
  }
}

/* 案例成果卡片：长篇多语文案撑开高度，保持同排等高，避免指标溢出。 */
.case-details-page .page-main .achievements-and-transformations-section .card-wrap .card-list .card-box {
  height: auto;
  min-height: 3.52rem;
  min-width: 0;
  gap: .24rem;
  overflow-wrap: anywhere;
}
.case-details-page .page-main .achievements-and-transformations-section .card-wrap .card-list .card-box .top-box,
.case-details-page .page-main .achievements-and-transformations-section .card-wrap .card-list .card-box .number {
  min-width: 0;
  flex-shrink: 0;
}
.case-details-page .page-main .achievements-and-transformations-section .card-wrap .card-list .card-box .number {
  line-height: 1.2;
}

/* 低碳工厂：复杂背景下保持标题对比，遮罩不拦截交互。 */
/* 洞察卡片标题统一最多三行，完整文案由标题元素的原生提示提供。 */
html body .news-page .card-list-wrap .card-list .card-box .card-con-box .card-title,
html body .events-page .events-card-wrap .card-box .card-con .con-text .card-title,
html body .technical-articles-page .page-main .card-warp .card-list .card-item .con-box .card-title,
html body .download-page .page-main .conent-wrap .card-wrap .card-list .card-item .name,
html body .download-page .page-main .conent-wrap .video-wrap .video-card-list .video-card .video-name {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  white-space: normal;
  overflow: hidden;
  text-overflow: ellipsis;
}

.low-carbon-factory-page .sk-index-banner .-background::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(8, 25, 30, .18), rgba(8, 25, 30, .46) 55%, rgba(8, 25, 30, .24));
  pointer-events: none;
}
.low-carbon-factory-page .sk-index-banner .content .title,
.low-carbon-factory-page .sk-index-banner .content .subtitle,
.low-carbon-factory-page .low-carbon-factory-banner-text {
  text-shadow: 0 2px 8px rgba(0, 0, 0, .65);
}
/* 桌面端遮雾调整不得覆盖移动端白底、深色文字的原有卡片。 */
@media (min-width: 801px) {
.low-carbon-factory-page .low-carbon-factory-solution-card {
  /* 底部保留可见白雾，渐进提亮下沿，避免恢复整片白色底板。 */
  background: linear-gradient(180deg, transparent 88%, rgba(255, 255, 255, .16) 93%, rgba(255, 255, 255, .7) 100%), #132d33;
}
.low-carbon-factory-page .low-carbon-factory-solution-body {
  /* 沿用原有内边距和遮罩高度，仅减轻磨砂层的明暗与模糊强度。 */
  background: rgba(11, 26, 30, .22);
  backdrop-filter: blur(.14rem);
  -webkit-backdrop-filter: blur(.14rem);
}
.low-carbon-factory-page .low-carbon-factory-solution-card-title {
  /* 只微调标题位置，不改变文档流及阴影区域高度。 */
  position: relative;
  top: -.06rem;
}
.low-carbon-factory-page .low-carbon-factory-solution-card-title,
.low-carbon-factory-page .low-carbon-factory-solution-card-text {
  text-shadow: 0 1px 4px rgba(0, 0, 0, .5);
}
  .low-carbon-factory-page .low-carbon-factory-solution-card:hover .low-carbon-factory-solution-card-text {
    max-height: 3rem;
  }
}

/* 游客体验：手机端 AI 功能列表按展开高度占位，避免遮挡视频；保留原展开动画。 */
@media (max-width: 800px) {
  html body .index-page .banner-section .jolyhi-ai-flex .left-cell-warp .cell-wrap .cell-list {
    height: auto !important;
    align-items: flex-start;
  }
  html body .index-page .banner-section .jolyhi-ai-flex .left-cell-warp .cell-wrap .cell-list .cell-box {
    max-width: 100%;
    min-width: 0;
  }
  html body .index-page .banner-section .jolyhi-ai-flex .cell-head .icon-box {
    flex-shrink: 0;
  }
  html body .index-page .banner-section .jolyhi-ai-flex .head-text,
  html body .index-page .banner-section .jolyhi-ai-flex .cell-body .li {
    overflow-wrap: anywhere;
  }
  html body .index-page .banner-section .jolyhi-ai-flex .video-wrap {
    margin-top: .48rem !important;
  }
}

/* 手机端按文案实际高度扩展，保留短文案时原有的最小展示尺寸。 */
@media (max-width: 800px) {
  html body .low-carbon-factory-page .low-carbon-factory-stage-panel {
    height: auto;
    min-height: 8.94rem;
  }
  html body .low-carbon-factory-page .low-carbon-factory-case-card {
    height: auto;
    min-height: 7.07rem;
  }
  html body .low-carbon-factory-page .low-carbon-factory-stage-letters .low-carbon-factory-stage-letter {
    line-height: 1.2;
    min-height: 44px;
  }
  html body .low-carbon-factory-page .low-carbon-factory-stage-copy {
    margin-top: .72rem;
  }
}

/* 职位详情中的英文复合词和长邮箱按可用宽度换行，避免撑出手机卡片。 */
html body .job-details-page .card-wrapper .h1,
html body .job-details-page .card-wrapper .html-box,
html body .job-details-page .similar-job-vacancies .title {
  overflow-wrap: anywhere;
}

/* 搜索分类允许长语种换行，完整显示边框并保留手机点击高度。 */
@media (max-width: 800px) {
  html body .search-results-page .page-main .class-warp .class-list {
    width: 100%;
    margin: 0;
    gap: .14rem;
  }
  html body .search-results-page .page-main .class-warp .class-list .class {
    flex: 1 1 0;
    min-width: 0;
    height: auto;
    min-height: 44px;
    margin: 0;
    padding: .12rem .24rem;
    text-align: center;
    overflow-wrap: anywhere;
  }
}
/* 搜索结果状态：挂载前隐藏模板，加载期间不显示旧分页或空结果提示。 */
.search-results-page [v-cloak] { display: none !important; }
.search-results-page .cms-empty-state,
.search-results-page .search-loading { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:16px; padding:60px 0; width:100%; min-height:200px; text-align:center; }
.search-results-page .cms-empty-state-img { display:block; max-width:100%; height:auto; }
/* 加载提示跟随桌面整体缩放；移动端使用可读字号，不影响空结果及分页布局。 */
.search-results-page .search-loading { font-size:.16rem; line-height:1.5; padding:.6rem 0; min-height:2rem; }
@media (max-width:800px) {
    .search-results-page .search-loading { font-size:14px; padding:40px 0; min-height:160px; }
}
/* 胶囊进度线与实际外框对齐；圆角由尺寸观察器同步，兼容多行文案。 */
html body .index-page .banner-section .con_wrap .tab-con .tab-con-item .flex-box-wrapper .center-box-wrap .center-box .tab-con-btn-wrap .tab-item .bg-svg rect {
    x: 1px;
    y: 1px;
    width: calc(100% - 2px);
    height: calc(100% - 2px);
    rx: var(--capsule-radius, 16px);
    ry: var(--capsule-radius, 16px);
}
