@charset "utf-8";
/* 主色 #0050be #1a89fe #00c6fc  #f97223 #fbf9c2  #333 #636363 */
* {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
}
body {
  margin: 0;
  padding: 0;
  color: #333;
  font-size: 100%;
  font-family:"PingFang SC", "Hiragino Sans GB", "Noto Sans SC", '思源黑体',Arial, sans-serif;
  text-size-adjust: 100% !important;
  -webkit-text-size-adjust: 100% !important;
  -moz-text-size-adjust: 100% !important;
  overflow-x: hidden;
}
p,dl,dd,ul,ol,li,h1,h2,h3,h4,h5,h6 {
  margin: 0;
  padding: 0;
}
h1,h2,h3,h4,h5,h6,dt {
  font-weight: normal;
  font-family:"PingFang SC", "Hiragino Sans GB", "Noto Sans SC", '思源黑体',Arial, sans-serif;
}
li {
  list-style: none;
}
a {
  text-decoration: none;
}
a:focus,a:hover {
  text-decoration: none;
  outline: none;
}
img {
  border: none;
  outline: none;
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}
input,button {
  border: none;
  outline: none;
  background: none;
}
button:hover,button:focus,button:active {
  outline: none;
}
input::-moz-placeholder {
  color: #5b6071;
}
input:-ms-input-placeholder {
  color: #5b6071;
}
input::-webkit-input-placeholder {
  color: #5b6071;
}
input::placeholder {
  color: #5b6071;
}
textarea::-moz-placeholder {
  color: #5b6071;
}
textarea:-ms-input-placeholder {
  color: #5b6071;
}
textarea::-webkit-input-placeholder {
  color: #5b6071;
}
.clear {
  clear: both;
  margin: 0;
  padding: 0;
}
.clearfix:after {
  content: "";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}
.clearfix {
  zoom: 1;
}

/* 谷歌滚动条样式 */
::-webkit-scrollbar {
  width: 3px;
  height: 3px;
  position: absolute;
}
::-webkit-scrollbar-thumb {
  background-color: #0050be;
}
::-webkit-scrollbar-track {
  background-color: #f8fafc;
}

/* ========== 布局与组件：胥瓷站点新增样式 ========== */

.section {
  padding: 80px 0;
}

.section-header {
  text-align: center;
  margin-bottom: 40px;
}
.section-header h2 {
  font-size: 36px;
  color: #0050be;
  margin-bottom: 20px;
}

.section-header h2 i {
  margin-right: 10px;
  color: #0050be;
  font-size: 28px;
  vertical-align: middle;
}

.section-header p {
  font-size: 16px;
  color: #666;
  line-height: 28px;
}

.section-header-row {
  overflow: hidden;
}

.section-header-row > div {
  float: left;
}

.section-header-row > a {
  float: right;
}

/* 顶部导航 */
.site-header {
  position: sticky;
  top: 0;
  z-index: 999;
  background: #fff;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

/* 内页顶栏：无 #hero / 无 Banner 时的白底样式（带 Banner 的内页与首页顶栏一致） */
body:not(:has(#hero)):not(:has(.page-news-banner)) .site-header .logo-image--light {
  display: none;
}

body:not(:has(#hero)):not(:has(.page-news-banner)) .site-header .logo-image--dark {
  display: block;
}

body:not(:has(#hero)):not(:has(.page-news-banner)) .site-header .logo-image img {
  width: auto;
  max-width: 220px;
  max-height: 42px;
  height: auto;
  vertical-align: middle;
}

body:not(:has(#hero)):not(:has(.page-news-banner)) .header-search-pill {
  position: relative;
  width: 168px;
  height: 34px;
  border: 1px solid #d7e2ee;
  border-radius: 18px;
  background: transparent;
  box-sizing: border-box;
}

body:not(:has(#hero)):not(:has(.page-news-banner)) .header-search-pill form {
  display: block;
  height: 34px;
  margin: 0;
  padding: 0;
}

body:not(:has(#hero)):not(:has(.page-news-banner)) .header-search-icon {
  position: absolute;
  left: 14px;
  top: 50%;
  width: 16px;
  height: 16px;
  margin-top: -8px;
  pointer-events: none;
  background: url(../images/icon-seach-black.png) center center / contain no-repeat;
}

body:not(:has(#hero)):not(:has(.page-news-banner)) .header-search-input {
  display: block;
  width: 100%;
  height: 32px;
  border: 0;
  outline: 0;
  background: transparent;
  color: #203349;
  font-size: 13px;
  line-height: 32px;
  padding: 0 12px 0 34px;
  box-sizing: border-box;
}

body:not(:has(#hero)):not(:has(.page-news-banner)) .header-search-input::placeholder {
  color: #6e7f95;
}

body:not(:has(#hero)):not(:has(.page-news-banner)) .header-search-pill:focus-within {
  border-color: #1a89fe;
  box-shadow: 0 0 0 3px rgba(26, 137, 254, .12);
}

.header-inner {
  height: 90px;
  position: relative;
  overflow: hidden;
}

.header-inner .logo {
  float: left;
  /* height: 90px;
  line-height: 90px;
  white-space: nowrap; */
}

.header-nav-wrap {
  height: 90px;
  line-height: 90px;
  text-align: center;
  float: right;
}

.header-right {
  float: right;
  height: 90px;
  line-height: 90px;
  text-align: right;
  position: relative;
}

.header-right > * {
  display: inline-block;
  vertical-align: middle;
  margin-left: 16px;
}

.header-right > *:first-child {
  margin-left: 0;
}

.logo {

}

.logo img {
  height: 80px;
  vertical-align: middle;
}
.main-nav {
  float: right;
  transition: opacity 0.22s ease, display 0.22s ease;
  -webkit-transition: opacity 0.22s ease, display 0.22s ease;
  -moz-transition: opacity 0.22s ease, display 0.22s ease;
  -ms-transition: opacity 0.22s ease, display 0.22s ease;
  -o-transition: opacity 0.22s ease, display 0.22s ease;
}
.main-nav ul {
  overflow: hidden;
}
.header-nav-wrap .main-nav {
  vertical-align: middle;
}
.main-nav ul li {
  float: left;
}
.main-nav ul li:first-child {
  margin-left: 0;
}
.main-nav > ul > li > a {
  display: inline-block;
  padding:0 12px;
  line-height: 90px;
  font-size: 16px;
  color: #000;
}

.main-nav > ul > li.active > a,
.main-nav > ul > li:hover >  a{
  color: rgb(26, 137, 254);
}
.main-nav li.has-sub {
  position: relative;
}

/* 参考图：全宽横条下拉，深蓝半透明，子项横向居中排列，顶部亮蓝细线 */
.main-nav .sub-nav {
  position: fixed;
  left: 0;
  right: 0;
  top: 90px;
  z-index: 998;
  margin: 0;
  padding: 5px 24px;
  min-height: 48px;
  background: linear-gradient(45deg,rgb(0, 80, 190,1) 0%,rgb(26, 137, 254,1) 100%);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
  border-top: 3px solid #1a89fe;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0.2s ease;
  text-align: center;
  list-style: none;
  font-size: 0;
}

.main-nav .sub-nav.is-open {
  opacity: 1;
  visibility: visible;
}

.main-nav li.has-sub:hover .sub-nav {
  opacity: 1;
  visibility: visible;
}

/* 子菜单为空（如无「试用入口」下的 ul）时不出现下拉条与箭头 */
.main-nav li.has-sub-empty:hover .sub-nav {
  opacity: 0;
  visibility: hidden;
}

.main-nav .sub-nav li {
  float: none;
  display: inline-block;
  margin: 0 20px;
  vertical-align: middle;
}

.main-nav .sub-nav li a {
  display: block;
  font-size: 16px;
  color: #fff;
}

.main-nav .sub-nav li a:hover {
  color: #f97223;
}

/* 卡片式下拉（全站通用；存在 .nav-dropdown 时覆盖上方全宽蓝条样式） */
/* 左缘与一级导航项对齐；箭头挂在 li 上，与小红线同处水平中点 */
.main-nav li.has-sub > .sub-nav.nav-dropdown {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  right: auto;
  z-index: 1002;
  min-height: 0;
  width: max-content;
  max-width: min(360px, calc(100vw - 32px));
  margin-left: 0;
  padding: 14px 20px 16px;
  background: #fff;
  border: 1px solid rgba(6, 75, 159, .1);
  border-radius: 10px;
  box-shadow: 0 18px 40px rgba(6, 33, 67, .14), 0 4px 12px rgba(6, 33, 67, .06);
  border-top: 0;
  text-align: left;
  font-size: 14px;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(12px) scale(0.97);
  transform-origin: 0 0;
  transition:
    opacity .26s cubic-bezier(.4, 0, .2, 1),
    transform .26s cubic-bezier(.4, 0, .2, 1),
    visibility .26s;
  box-sizing: border-box;
}

.main-nav li.has-sub > .sub-nav.nav-dropdown::before {
  content: "";
  position: absolute;
  top: -14px;
  left: 0;
  right: 0;
  height: 14px;
}

/* 箭头改挂一级项：left:50% 与小红线中心对齐（面板式下拉除外） */
.main-nav li.has-sub:not(.has-sub-empty):not(.nav-panel-trigger)::after {
  content: "";
  position: absolute;
  top: calc(100% + 1px);
  left: 50%;
  z-index: 1003;
  width: 10px;
  height: 10px;
  margin-left: -5px;
  background: #fff;
  border-top: 1px solid rgba(6, 75, 159, .1);
  border-left: 1px solid rgba(6, 75, 159, .1);
  transform: translateY(12px) rotate(45deg);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition:
    opacity .26s cubic-bezier(.4, 0, .2, 1),
    transform .26s cubic-bezier(.4, 0, .2, 1),
    visibility .26s;
}

.main-nav li.has-sub:not(.has-sub-empty):not(.nav-panel-trigger):hover::after,
.main-nav li.has-sub:not(.has-sub-empty):not(.nav-panel-trigger):focus-within::after {
  opacity: 1;
  visibility: visible;
  transform: translateY(0) rotate(45deg);
}

.main-nav li.has-sub:not(.nav-panel-trigger) > .sub-nav.nav-dropdown::after {
  display: none;
}

.main-nav .sub-nav.nav-dropdown--wide {
  margin-left: 0;
  padding: 14px 24px 16px;
}

.main-nav li.has-sub:hover > .sub-nav.nav-dropdown,
.main-nav li.has-sub:focus-within > .sub-nav.nav-dropdown {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0) scale(1);
}

.main-nav li.has-sub-empty:hover > .sub-nav.nav-dropdown,
.main-nav li.has-sub-empty:focus-within > .sub-nav.nav-dropdown {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.main-nav .sub-nav.nav-dropdown a {
  display: block;
  padding: 10px 14px;
  margin: 2px 0;
  color: #334862;
  font-size: 14px;
  line-height: 1.5;
  text-align: left;
  white-space: nowrap;
  border-radius: 8px;
  opacity: 0;
  transform: translate3d(0, 4px, 0);
  transition: color .2s ease, background .2s ease, transform .22s ease, opacity .22s ease;
}

.main-nav li.has-sub:hover > .sub-nav.nav-dropdown a,
.main-nav li.has-sub:focus-within > .sub-nav.nav-dropdown a {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

.main-nav li.has-sub:hover > .sub-nav.nav-dropdown a:nth-child(1),
.main-nav li.has-sub:focus-within > .sub-nav.nav-dropdown a:nth-child(1) { transition-delay: .03s; }
.main-nav li.has-sub:hover > .sub-nav.nav-dropdown a:nth-child(2),
.main-nav li.has-sub:focus-within > .sub-nav.nav-dropdown a:nth-child(2) { transition-delay: .05s; }
.main-nav li.has-sub:hover > .sub-nav.nav-dropdown a:nth-child(3),
.main-nav li.has-sub:focus-within > .sub-nav.nav-dropdown a:nth-child(3) { transition-delay: .07s; }
.main-nav li.has-sub:hover > .sub-nav.nav-dropdown a:nth-child(4),
.main-nav li.has-sub:focus-within > .sub-nav.nav-dropdown a:nth-child(4) { transition-delay: .09s; }
.main-nav li.has-sub:hover > .sub-nav.nav-dropdown a:nth-child(5),
.main-nav li.has-sub:focus-within > .sub-nav.nav-dropdown a:nth-child(5) { transition-delay: .11s; }
.main-nav li.has-sub:hover > .sub-nav.nav-dropdown a:nth-child(6),
.main-nav li.has-sub:focus-within > .sub-nav.nav-dropdown a:nth-child(6) { transition-delay: .13s; }

.main-nav .sub-nav.nav-dropdown a:hover {
  color: #064b9f;
  background: rgba(26, 137, 254, .1);
  transform: none;
}

.main-nav .nav-dropdown strong {
  display: block;
  font-size: 15px;
  font-weight: normal;
  transition: color .2s ease;
  -webkit-transition: color .2s ease;
  -moz-transition: color .2s ease;
  -ms-transition: color .2s ease;
  -o-transition: color .2s ease;
}

.main-nav .nav-dropdown a:hover strong {
  color: #064b9f;
}

.header-utils{
  transition: opacity 0.22s ease, display 0.22s ease;
  -webkit-transition: opacity 0.22s ease, display 0.22s ease;
  -moz-transition: opacity 0.22s ease, display 0.22s ease;
  -ms-transition: opacity 0.22s ease, display 0.22s ease;
  -o-transition: opacity 0.22s ease, display 0.22s ease;
}
.header-utils .header-icon {
  margin-left: 12px;
}

.header-utils .header-icon:first-child {
  margin-left: 0;
}

.header-icon {
  display: inline-block;
  width: 36px;
  height: 36px;
  line-height: 36px;
  text-align: center;
  color: #64748b;
  font-size: 18px;
  transition: color 0.2s ease;
}

.site-header.is-search-open .header-utils,.site-header.is-search-open .main-nav {
  opacity: 0;
  display:none;
  transition: opacity 0.22s ease, display 0.22s ease;
  -webkit-transition: opacity 0.22s ease, display 0.22s ease;
  -moz-transition: opacity 0.22s ease, display 0.22s ease;
  -ms-transition: opacity 0.22s ease, display 0.22s ease;
  -o-transition: opacity 0.22s ease, display 0.22s ease;
}
.header-nav-wrap {
 
}

.header-search-expand {
  position: absolute;
  right: 0;
  top: 50%;
  height: 40px;
  margin-top: -20px;
  width: 0;
  overflow: hidden;
  opacity: 0;
  display: none;
  white-space: nowrap;
  border-radius: 50px;
  transition: width 0.28s cubic-bezier(.2,.9,.2,1), opacity 0.18s ease, display 0.18s ease;
  -webkit-transition: width 0.28s cubic-bezier(.2,.9,.2,1), opacity 0.18s ease, display 0.18s ease;
  -moz-transition: width 0.28s cubic-bezier(.2,.9,.2,1), opacity 0.18s ease, display 0.18s ease;
  -ms-transition: width 0.28s cubic-bezier(.2,.9,.2,1), opacity 0.18s ease, display 0.18s ease;
  -o-transition: width 0.28s cubic-bezier(.2,.9,.2,1), opacity 0.18s ease, display 0.18s ease;
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
  -ms-border-radius: 50px;
  -o-border-radius: 50px;
}
.header-search-inner{
  display: inline-block;
  vertical-align: sub;
  position: relative;
  border-radius: 50px;
  height: 40px;
  overflow: hidden;
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
  -ms-border-radius: 50px;
  -o-border-radius: 50px;
}
.site-header.is-search-open .header-search-expand {
  width: 420px;
  opacity: 1;
  display: inline-block;
}
.header-search-input {
  height: 40px;
  line-height: 40px;
  width: 100%;
  padding: 0 44px 0 14px;
  border: 1px solid #e6eef9;
  font-size: 16px;
  color: #333;
  outline: none;
  background: transparent;
  border-radius: 50px;
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
  -ms-border-radius: 50px;
  -o-border-radius: 50px;
}
.header-search-input:focus {
  border-color: rgba(20, 21, 103, 0.45);
  box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.12);
}
.header-search-button{
  width: 40px;
  height: 40px;
  display: inline-block;
  position: absolute;
  right: 0;
  top: 22px;
  background-image: url(../images/icon-seach-black.png);
  background-size: 24px auto;
  background-repeat: no-repeat;
  background-position: center center;
}
.header-search-close {
  display: inline-block;
  width: 28px;
  height: 40px;
  margin-top: 0;
  line-height: 40px;
  text-align: center;
  border-radius: 999px;
  color: #333;
  font-size: 32px;
  vertical-align: super;
}
.header-search-close:hover {
  color: #0050be;
}

.header-svg-icon {
  width: 18px;
  height: 18px;
  vertical-align: middle;
  display: inline-block;
}

/* 已移除旧的搜索弹层（siteSearch）样式，保留头部展开式搜索 */

.header-icon:hover {
  color: #0050be;
}

/* 鎵嬫満瀵艰埅鍩虹 */
.mc_phone_nav {
  display: none;
  width: 24px;
  height: 24px;
  position: relative;
  cursor: pointer;
}

.mc_phone_nav .point,
.mc_phone_nav .point::before,
.mc_phone_nav .point::after {
  position: absolute;
  left: 0;
  right: 0;
  height: 2px;
  background: #0050be;
  content: "";
  transition: all 0.2s ease;
}

.mc_phone_nav .point {
  top: 50%;
  transform: translateY(-50%);
}

.mc_phone_nav .point::before {
  top: -7px;
}

.mc_phone_nav .point::after {
  top: 7px;
}

.mc_phone_nav .point.active {
  background: transparent;
}

.mc_phone_nav .point.active::before {
  transform: translateY(7px) rotate(45deg);
}

.mc_phone_nav .point.active::after {
  transform: translateY(-7px) rotate(-45deg);
}

.mobile {
  display: none;
  background: #fff;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
}

.mobilebox .ul1 > li h4 {
  padding: 12px 16px;
  font-size: 15px;
  border-bottom: 1px solid #f0f0f0;
}

.mobilebox .ul1 > li h4 a {
  color: #383735;
}

.mobilebox .ul2 {
  display: none;
  background: #f7f8fc;
}

.mobilebox .ul2 li a {
  display: block;
  padding: 8px 24px;
  font-size: 14px;
  color: #666;
}

/* 按钮样式 */
.btn {
  display: inline-block;
  padding: 10px 24px;
  border-radius: 999px;
  font-size: 14px;
  cursor: pointer;
  border: 1px solid transparent;
  transition: all 0.2s ease;
  text-align: center;
  line-height: 1.4;
}

.btn-primary {
  background: linear-gradient(135deg, #0050be, #3b43c6);
  color: #fff;
  border-color: transparent;
}

.btn-primary:hover {
  opacity: 0.92;
}

.btn-secondary {
  background: #fff;
  color: #0050be;
  border-color: #d1d5f0;
}

.btn-secondary:hover {
  background: #f4f6fb;
}

.btn-link {
  background: transparent;
  color: #0050be;
  padding-left: 4px;
  padding-right: 4px;
}

.btn-primary-outline {
  background: transparent;
  color: #0050be;
  border-color: #0050be;
}

.btn-primary-outline:hover {
  background: #0050be;
  color: #fff;
}

/* 保留原卡片样式供内页使用 */
.business-grid {
}

.business-card {
  float: left;
  width: 25%;
  padding: 0 15px;
  margin-bottom: 20px;
}

.business-card {
  background: #fff;
  border-radius: 16px;
  border: 1px solid #eef0ff;
  box-shadow: 0 12px 30px rgba(20, 21, 103, 0.06);
  overflow: hidden;
  padding-bottom: 20px;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.business-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 40px rgba(20, 21, 103, 0.12);
}

.card-thumb {
  display: block;
  height: 76px;
  overflow: hidden;
  background: #f8fafc;
}

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

.business-card h3 {
  font-size: 18px;
  color: #0050be;
  padding: 0 18px;
  margin-top: 14px;
}

.business-card p {
  font-size: 14px;
  color: #666;
  padding: 0 18px;
  margin-top: 8px;
  min-height: 60px;
}

.card-link {
  font-size: 14px;
  color: #0050be;
  margin: 12px 18px 0;
  display: inline-block;
}

.business-grid:after,
.research-grid:after,
.cases-grid:after,
.cta-inner:after {
  content: "";
  display: table;
  clear: both;
}

/* 新闻列表页：banner / 子导航 / 卡片列表 / 分页（列表区选择器挂在 .page-news-wrap 下，避免与上文通用 .news-list 冲突） */
.page-news-banner {
  position: relative;
  height: 350px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.page-news-banner .container {
  position: relative;
  top: 55%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
}
.page-news-banner__title {
  margin: 0 0 20px;
  font-size: 36px;
  color: #fff;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.25);
}
.page-news-banner__sub {
  margin: 0;
  font-size: 16px;
  width: 60%;
  color: rgba(255, 255, 255, 0.94);
  line-height: 32px;
  text-shadow: 0 1px 6px rgba(0, 0, 0, 0.2);
}
@media (max-width: 767px) {
  .page-news-banner {
    min-height: 168px;
    height: auto;
  }
  .page-news-banner .container {
    top: auto;
    padding-top: 80px;
    padding-bottom: 28px;
    transform: none;
    -webkit-transform: none;
  }
  .page-news-banner__title {
    font-size: 22px;
    margin-bottom: 10px;
  }
  .page-news-banner__sub {
    width: 100%;
    font-size: 13px;
    line-height: 1.65;
  }
}
.page-news-subnav,
.biz-seven-lines-nav {
  background: #fff;
  border-bottom: 1px solid #e8e8e8;
}

.page-news-subnav .container,
.biz-seven-lines-nav .container {
  /* overflow: hidden; */
}

.page-news-subnav__list,
.biz-seven-lines-nav__list {
  /* float: left; */
}
/* 面包屑容器仅在新闻子导航内使用：布局 + 基础文字；newsnav 内为帝国CMS路径输出 */
.page-article-breadcrumb {
  float: right;
  padding: 22px 0 20px;
  text-align: right;
  font-size: 16px;
  color: #636363;
  line-height: 28px;
  background-image: url(../images/icon-home-blue.png);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 22px auto;
  padding-left: 32px;
}
.page-article-breadcrumb .newsnav a {
  color: #636363;
  transition: color 0.2s ease, opacity 0.2s ease;
}
.page-article-breadcrumb .newsnav a:hover {
  color: #0050be;
}
.page-article-breadcrumb .newsnav a.last {
  color: #0050be;
}
.page-news-subnav__list > li,
.biz-seven-lines-nav__list > li {
  display: inline-block;
  vertical-align: bottom;
  margin: 0 32px 0 0;
}

.page-news-subnav__list > li:last-child,
.biz-seven-lines-nav__list > li:last-child {
  margin-right: 0;
}

.page-news-subnav__list a,
.biz-seven-lines-nav__list a {
  display: inline-block;
  padding: 22px 18px 20px;
  font-size: 18px;
  color: #333;
  position: relative;
  transition: color 0.2s ease, opacity 0.2s ease;
}
.page-news-subnav__list a::after,
.biz-seven-lines-nav__list a::after {
  content: "";
  position: absolute;
  width: 0;
  left: 50%;
  right: 0;
  bottom: -1px;
  height: 2px;
  background: #0050be;
  transition: width .3s ease;
  -webkit-transition: width .3s ease;
  -moz-transition: width .3s ease;
  -ms-transition: width .3s ease;
  -o-transition: width .3s ease;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
}
.page-news-subnav__list li:hover a,
.biz-seven-lines-nav__list li:hover a {
  color: #0050be;
}
.page-news-subnav__list li.is-active a,
.biz-seven-lines-nav__list li.is-active a {
  color: #0050be;
}
.page-news-subnav__list li:hover a::after,
.biz-seven-lines-nav__list li:hover a::after {
  width: 100%;
}
.page-news-subnav__list li.is-active a::after,
.biz-seven-lines-nav__list li.is-active a::after {
  width: 100%;
}
.page-news-subnav__list a.is-active,
.biz-seven-lines-nav__list a.is-active {
  color: #0050be;
}
.page-news-subnav__list a.is-active::after,
.biz-seven-lines-nav__list a.is-active::after {
  width: 100%;
}
.page-news-subnav__search {
  float: right;
  width: 300px;
  padding: 16px 0;
}
.page-news-subnav__search form {
  position: relative;
  height: 36px;
  margin: 0;
  border: 1px solid #e6e6e6;
  border-radius: 4px;
  background: #fff;
  box-sizing: border-box;
}
.page-news-subnav__search form:focus-within {
  border-color: #cfd7e3;
}
.page-news-subnav__search-input {
  display: block;
  width: 100%;
  height: 34px;
  border: 0;
  outline: 0;
  background: transparent;
  color: #333;
  font-size: 14px;
  line-height: 34px;
  padding: 0 40px 0 12px;
  box-sizing: border-box;
}
.page-news-subnav__search-input::placeholder {
  color: #c0c4cc;
}
.page-news-subnav__search-btn {
  position: absolute;
  right: 10px;
  top: 50%;
  width: 20px;
  height: 20px;
  margin-top: -10px;
  padding: 0;
  border: 0;
  background: url(../images/icon-seach-black.png) center center / contain no-repeat;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  outline: 0;
}
@media (max-width: 980px) {
  .page-news-subnav__search {
    width: 220px;
  }
}
@media (max-width: 767px) {
  .page-news-subnav .container,
  .biz-seven-lines-nav .container {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .page-news-subnav__list,
  .biz-seven-lines-nav__list {
    float: none;
    white-space: nowrap;
  }
  .page-news-subnav .page-article-breadcrumb,
  .biz-seven-lines-nav .page-article-breadcrumb {
    float: none;
    max-width: none;
    padding: 0 0 12px;
    margin-top: 2px;
    text-align: left;
    border-top: 1px solid #f2f2f2;
    white-space: normal;
  }
  .page-news-subnav__search {
    float: none;
    width: 100%;
    padding: 10px 0 4px;
  }

  .page-news-subnav__list > li,
  .biz-seven-lines-nav__list > li {
    margin-right: 20px;
  }

  .page-news-subnav__list a,
  .biz-seven-lines-nav__list a {
    padding: 12px 0 10px;
    font-size: 14px;
  }
}
.page-news-wrap {
  padding: 36px 0 56px;
  background: #fafbfc;
}
@media (max-width: 767px) {
  .page-news-wrap {
    padding: 20px 0 40px;
  }
}
.page-news-wrap .news-list {
  margin: 0;
  padding: 0;
  list-style: none;
  background: #fff;
  border: 1px solid #eee;
  border-radius: 8px;
  overflow: hidden;
  box-sizing: border-box;
}
.page-news-wrap .news-list.is-empty,
.page-news-wrap .news-list:not(:has(.news-list-item)) {
  min-height: calc(100vh - 520px);
  color: #666;
  font-size: 16px;
  line-height: 32px;
}
.page-news-wrap .news-list.is-empty:not(:has(.news-list-status)),
.page-news-wrap .news-list:not(:has(.news-list-item)):not(:has(.news-list-status)) {
  padding: 48px 32px;
}
.page-news-wrap .news-list .news-list-item {
  margin: 0;
  border-bottom: 1px solid #eee;
}
.page-news-wrap .news-list .news-list-item:last-child {
  border-bottom: 0;
}
.page-news-wrap .news-list .news-list-item__link {
  display: block;
  overflow: hidden;
  padding: 22px 24px;
  text-decoration: none;
  color: inherit;
}
.page-news-wrap .news-list .news-list-item__link:hover .news-list-item__title {
  color: #0050c8;
}
.page-news-wrap .news-list .news-list-item__thumb {
  float: right;
  width: 200px;
  max-width: 28%;
  margin-left: 24px;
  overflow: hidden;
  border-radius: 8px;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  -ms-border-radius: 8px;
  -o-border-radius: 8px;
}
.page-news-wrap .news-list .news-list-item__main {
  overflow: hidden;
  padding-top: 10px;
}
.page-news-wrap .news-list .news-list-item__date {
  float: left;
  margin-right: 22px;
  min-width: 72px;
  padding: 16px 12px;
  border: 1px solid #dcdcdc;
  border-radius: 5px;
  background: #fff;
  color: #333;
  text-align: center;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  transition: all .3s ease;
  -webkit-transition: all .3s ease;
  -moz-transition: all .3s ease;
  -ms-transition: all .3s ease;
  -o-transition: all .3s ease;
}
.page-news-wrap .news-list .news-list-item__date-day {
  display: block;
  font-size: 30px;
  font-weight: 600;
  line-height: 1;
  color: #636363;
  letter-spacing: -0.02em;
}
.page-news-wrap .news-list .news-list-item__date-ym {
  display: block;
  margin-top: 4px;
  font-size: 14px;
  line-height: 1.2;
  color: #636363;
  font-variant-numeric: tabular-nums;
}
.page-news-wrap .news-list .news-list-item__link:hover .news-list-item__date{
  background: #0050be;
  border: 1px solid #0050be;
}
.page-news-wrap .news-list .news-list-item__link:hover .news-list-item__date-ym,
.page-news-wrap .news-list .news-list-item__link:hover .news-list-item__date-day{
  color: #fff;
}

.page-news-wrap .news-list .news-list-item__body {
  overflow: hidden;
}
.page-news-wrap .news-list .news-list-item__title {
  margin: 0 0 10px;
  font-size: 18px;
  font-weight: 700;
  color: #333;
  line-height: 28px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  transition: color 0.2s;
  -webkit-transition: color 0.2s;
  -moz-transition: color 0.2s;
  -ms-transition: color 0.2s;
  -o-transition: color 0.2s;
}
.page-news-wrap .news-list .news-list-item__summary {
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  color: #636363;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
 
}
.page-news-wrap .news-list .news-list-item__thumb img {
  width: 100%;
  height: auto;
  vertical-align: top;
  display: block;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  background: #f0f2f5;
  transition: transform 0.3s ease;
  -webkit-transition: transform 0.3s ease;
  -moz-transition: transform 0.3s ease;
  -ms-transition: transform 0.3s ease;
  -o-transition: transform 0.3s ease;
}
@media (max-width: 767px) {
  .page-news-wrap .news-list .news-list-item__link {
    padding: 18px 16px;
  }
  .page-news-wrap .news-list .news-list-item__thumb {
    float: none;
    width: 100%;
    max-width: none;
    margin-left: 0;
    margin-bottom: 14px;
  }
  .page-news-wrap .news-list .news-list-item__main {
    overflow: visible;
  }
  .page-news-wrap .news-list .news-list-item__date {
    float: none;
    display: inline-block;
    vertical-align: top;
    margin-right: 16px;
    margin-bottom: 12px;
    padding: 10px 16px;
  }
  .page-news-wrap .news-list .news-list-item__date-day {
    font-size: 26px;
  }
  .page-news-wrap .news-list .news-list-item__body {
    overflow: visible;
  }
}
.page-news-wrap .news-list .news-list-item:hover .news-list-item__thumb img {
  transform: scale(1.02);
  -webkit-transform: scale(1.02);
  -moz-transform: scale(1.02);
  -ms-transform: scale(1.02);
  -o-transform: scale(1.02);
}

/* 试用入口列表：列表两列浮动并排；单卡内左图右 main；main 内左文右入口；缩略图约 200×112（16:9） */
.page-news-wrap.trial-page {
  padding: 40px 0 56px;
  background-image: url(../images/practiceCollectionBg.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top;
}
.page-news-wrap .trial-entries {

}
.page-news-wrap .trial-entries > li {
  float: left;
  width: 50%;
  padding: 0 12px;
  margin-bottom: 24px;
}
.page-news-wrap .trial-entries > li:hover .trial-row {
  background: #fff;
  cursor: default;
}
.page-news-wrap .trial-row {
  padding: 20px;
  background: rgba(255, 255, 255, 0.3);
  transition: background 0.15s;
  -webkit-transition: background 0.15s;
  -moz-transition: background 0.15s;
  -o-transition: background 0.15s;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}
.page-news-wrap .trial-row__media {
  float: left;
  width: 35%;
  border: 1px solid #e8ecf1;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  overflow: hidden;
}
.page-news-wrap .trial-row__media img {
  width: 100%;
  height: auto;
  transition: all .3s;
  -webkit-transition: all .3s;
  -moz-transition: all .3s;
  -ms-transition: all .3s;
  -o-transition: all .3s;
}
/* main：块级标准流；标题、简介、入口顺序自上而下，无 table/flex/侧栏同排 */
.page-news-wrap .trial-row__main {
  float: right;
  width: 60.5%;
  overflow: hidden;
}
.page-news-wrap .trial-row__main .trial-row__body {
  display: block;
  width: 100%;
}
.page-news-wrap .trial-row__main .trial-row__right {
  display: block;
  width: 100%;
  margin: 10px 0 0 0;
  padding-right:10px;
  text-align: right;
  background: transparent;
}
.page-news-wrap .trial-row__name {
  font-size: 18px;
  color: #333;
  line-height: 30px;
}
.page-news-wrap .trial-entries > li:hover .trial-row__name{
  color: #0050be;
}
.page-news-wrap .trial-row__brief {
  margin: 5px 0 0;
  font-size: 14px;
  line-height: 24px;
  height: 48px;
  color: #666;
  overflow: hidden;
  display: -webkit-box;
  line-clamp: 2;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
/* 入口为文字链 + 右侧箭头（持续位移动画） */
@keyframes trial-go-arrow-breathe {
  0%, 100% { -webkit-transform: translateX(0); transform: translateX(0); }
  50% { -webkit-transform: translateX(6px); transform: translateX(6px); }
}
.page-news-wrap a.trial-go,
.biz-line-illus-intro a.trial-go {
  display: inline-block;
  font-size: 16px;
  color: #0050be;
}
.page-news-wrap a.trial-go .trial-go__arrow,
.biz-line-illus-intro a.trial-go .trial-go__arrow {
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-left: 6px;
  vertical-align: middle;
  background-image: url(../images/icon-arrow.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center center;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-animation: trial-go-arrow-breathe 1.15s ease-in-out infinite;
  -moz-animation: trial-go-arrow-breathe 1.15s ease-in-out infinite;
  -o-animation: trial-go-arrow-breathe 1.15s ease-in-out infinite;
  animation: trial-go-arrow-breathe 1.15s ease-in-out infinite;
}
.page-news-wrap a.trial-go .trial-go__arrow .icon-arrow-right,
.biz-line-illus-intro a.trial-go .trial-go__arrow .icon-arrow-right {
  display: block;
  position: relative;
  vertical-align: middle;
}
.page-news-wrap a.trial-go:hover,
.biz-line-illus-intro a.trial-go:hover {
  color: #0050be;
  background: none;
  box-shadow: none;
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
}
.page-news-wrap .trial-row__ph {
  display: table;
  width: 100%;
  table-layout: fixed;
  height: 112px;
  background: linear-gradient(145deg, #eef2f6 0%, #e6ebf0 100%);
  border: 1px dashed #c5ced9;
  border-radius: 6px;
  color: #a0a8b3;
  font-size: 12px;
  line-height: 1.35;
}
.page-news-wrap .trial-row__ph-inner {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  padding: 8px;
}
.page-news-wrap .trial-row__ph-inner span {
  display: block;
}
.page-news-wrap .trial-row__img {
  display: block;
  width: 100%;
  height: 112px;
  object-fit: cover;
  border-radius: 6px;
  background: #e8ecf1;
  vertical-align: top;
}
@media (max-width: 640px) {
  .page-news-wrap .trial-row__media {
    float: none;
    width: 100%;
    margin-right: 0;
  }
  .page-news-wrap .trial-row__main {
    width: 100%;
    float: none;
    overflow: visible;
    margin-top: 12px;
  }
  .page-news-wrap .trial-row__main .trial-row__right {
    text-align: left;
  }
  .page-news-wrap a.trial-go,
  .biz-line-illus-intro a.trial-go {
    display: inline-block;
  }
  .page-news-wrap .trial-row {
    padding: 16px 2px;
  }
  .page-news-wrap .trial-row__ph,
  .page-news-wrap .trial-row__img {
    height: auto;
    min-height: 0;
  }
  .page-news-wrap .trial-row__ph {
    display: table;
    min-height: 80px;
  }
  @supports (aspect-ratio: 16 / 9) {
    .page-news-wrap .trial-row__ph,
    .page-news-wrap .trial-row__img {
      aspect-ratio: 16 / 9;
    }
    .page-news-wrap .trial-row__ph {
      height: auto;
    }
  }
}
@media (max-width: 992px) {
  .page-news-wrap .trial-entries {
    margin-left: 0;
    margin-right: 0;
  }
  .page-news-wrap .trial-entries > li {
    float: none;
    width: 100%;
    padding: 0;
  }
}

.news-pagination {
  margin-top: 28px;
  text-align: center;
}
#news-list-page.is-searching .news-pagination {
  display: none;
}
#news-list-page:not(.is-searching) #news-search-pagenation {
  display: none;
}
#news-list-page .pagenation {
  margin-top: 28px;
}
.page-news-wrap .news-list .news-list-status {
  float: none;
  width: 100%;
  list-style: none;
  margin: 0;
  padding: 80px 24px;
  text-align: center;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-sizing: border-box;
  min-height: inherit;
}
.page-news-wrap .news-list .news-list-status .tips {
  margin: 0 auto;
}
.page-news-wrap .news-list .news-list-status .pics {
  margin: 0 auto 20px;
  width: 120px;
  height: 120px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}
.page-news-wrap .news-list .news-list-status h6 {
  margin: 0;
  font-size: 16px;
  color: #666;
  line-height: 32px;
  font-weight: normal;
}
.page-news-wrap .news-list .news-list-status--loading {
  padding: 72px 20px;
}
.page-news-wrap .news-list .news-list-status__spinner {
  display: inline-block;
  width: 40px;
  height: 40px;
  box-sizing: border-box;
  border: 3px solid rgba(0, 80, 190, 0.22);
  border-top-color: #0050be;
  border-radius: 50%;
  animation: xcit-ss-spin 0.65s linear infinite;
}
@media (prefers-reduced-motion: reduce) {
  .page-news-wrap .news-list .news-list-status__spinner {
    animation: none;
    border-top-color: rgba(0, 80, 190, 0.55);
  }
}
.page-news-wrap .news-list .news-list-status__hint {
  margin: 16px 0 0;
  font-size: 16px;
  line-height: 32px;
  color: #666;
}
.news-pagination a,.news-pagination b{
  display: inline-block;
  font-size: 16px;
  padding: 6px 12px 4px;
  border: 1px solid #e8f4fc;
  border-radius: 4px;
  background: #fff;
  color: #333;
  text-align: center;
  margin: 0 2px;
  font-weight: normal;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
}
.news-pagination a:hover{
  color: #0050be;
}
.news-pagination b{
  color: #fff;
  background: #0050be;
  border-color: #0050be;
}

/* =============================================================================
   价值呈现页（value-present-*，浮动分栏 + 行内块，主布局不使用 flex/grid/表格）   ============================================================================= */

/* 价值呈现页主区（value-present-*）与核心业务线单页主区（.core-business-line-page）共用同一套背景与上下留白 */
.value-present-page {
  padding: 80px 0 56px;
  background-image: url(../images/20240820023939_790829.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top;
}

.value-present-intro {
  text-align: center;
  margin-bottom: 28px;
}
.value-present-title {
  font-size: 32px;
  color: #333;
}
.value-present-subtitle {
  margin-top: 18px;
  font-size: 16px;
  line-height: 28px;
  color: #666;
}
.value-present-stats {
  padding: 30px 0 40px;
}
.value-present-stat {
  position: relative;
  float: left;
  width: 33.333333%;
  text-align: center;
  padding: 12px 20px;
  border-right: 1px solid;
  -webkit-border-image: -webkit-linear-gradient(top, rgba(255, 255, 255, 0), rgb(151, 151, 151), rgba(255, 255, 255, 0)) 1 1;
  border-image: linear-gradient(180deg, rgba(255, 255, 255, 0), rgb(151, 151, 151), rgba(255, 255, 255, 0)) 1 1;
}
.value-present-stat:last-child{
  border-right: none;
}
.value-present-stat__num-wrap {
  position: relative;
  display: inline-block;
}

.value-present-stat__num {
  display: inline-block;
  font-size: 28px;
  color: #1a89fe;
}
.value-present-stat__num i{
  font-style: normal;
  font-size: 64px;
  font-weight: 700;
  margin-right: 10px;
}
.value-present-stat__label {
  margin-top: -2px;
  font-size: 18px;
  color: #333;
}
.value-present-services-grid {
  margin-top: 55px;
}
.value-present-services-cell {
  float: left;
  width: 50%;
  padding: 0 12px 24px;
}

.value-present-services-cell .value-present-card {
  margin-bottom: 0;
  min-height: 140px;
}

.value-present-card {
  position: relative;
  background-color: #fff;
  border-radius:10px;
  margin-bottom: 16px;
  overflow: hidden;
  box-shadow: 0 8px 32px rgba(15, 23, 42, 0.07);
  border: 1px solid rgba(226, 232, 240, 0.95);
  border-left: 4px solid #1a73e8;
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
  -webkit-border-radius:10px;
  -moz-border-radius:10px;
  -ms-border-radius:10px;
  -o-border-radius:10px;
}

.value-present-card--split {
  box-shadow: 0 6px 28px rgba(15, 23, 42, 0.08);
  border: 1px solid #e8ecf1;
  transition: box-shadow 0.35s ease;
}
.value-present-card__icon-pane {
  float: left;
}

.value-present-card__icon-pane img {
  display: block;
}

.value-present-card__body {
  overflow: hidden;
  padding: 24px;
  text-align: left;
  background: #fff;
}

.value-present-card:hover,
.value-present-card:focus-within {
  box-shadow: 0 16px 40px rgba(26, 115, 232, 0.14);
}

.value-present-card__title {
  margin: 0 0 12px;
  font-size: 19px;
  font-weight: 700;
  line-height: 1.35;
  color: #333;
  letter-spacing: 0.02em;
  transition: color 0.25s ease;
}

.value-present-card:hover .value-present-card__title,
.value-present-card:focus-within .value-present-card__title {
  color: #0050be;
}

.value-present-card--split .value-present-card__title {
  font-size: 20px;
  color: #333;
}

.value-present-card__desc {
  font-size: 16px;
  line-height:28px;
  color: #666;
}

.value-present-card--split .value-present-card__desc {
  font-size: 16px;
  color: #666;
}
.value-present-services {
  padding: 40px 0;
}
.value-present-flow{
  padding: 20px 0 40px;
}
.value-present-flow-panel {
  margin-top: 55px;
}
.value-present-flow-col {
  float: left;
  width: calc((100% - 158px) / 4);
  padding: 0 6px;
}
.value-present-flow-sep {
  float: left;
  width: 52px; 
  text-align: center;
  font-size: 52px;
  color: #cbd5e1;
  font-family: Georgia, "Times New Roman", serif;
  padding-top: 36px;
  -webkit-user-select: none;
  user-select: none;
}
.value-present-flow-card {
  text-align: center;
  padding: 25px 15px;
  min-height: 122px;
  background: linear-gradient(20deg, #ffffff 0%, #e7f2ff 42%, #eaf4ff 100%);
  border-radius: 12px;
  border: 1px solid rgba(26, 115, 232, 0.14);
  box-shadow: 0 2px 12px rgba(26, 115, 232, 0.06);
  transition: background 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
  -webkit-transition: background 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
  -moz-transition: background 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
  -ms-transition: background 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
  -o-transition: background 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

.value-present-flow-col:hover .value-present-flow-card {
  background: linear-gradient(165deg, #eef6ff 0%, #e0edfb 45%, #d4e6f7 100%);
  border-color: rgba(26, 115, 232, 0.26);
  box-shadow: 0 8px 24px rgba(26, 115, 232, 0.12);
}

.value-present-flow-badge {
  display: block;
  width: 48px;
  height: 48px;
  margin: 0 auto 12px;
  border-radius: 50%;
  background: #1a89fe;
  color: #fff;
  font-size: 24px;
  line-height: 48px;
  text-align: center;
  box-shadow: 0 4px 16px rgba(26, 115, 232, 0.32);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.value-present-flow-col:hover .value-present-flow-badge {
  transform: scale(1.04);
  box-shadow: 0 6px 20px rgba(26, 115, 232, 0.4);
}
.value-present-flow-name {
  display: block;
  font-size: 18px;
  color: #333;
  line-height: 36px;
}

.value-present-reveal {
  opacity: 0;
  animation: govFadeUp 0.55s ease forwards;
}

.value-present-intro.value-present-reveal {
  animation-delay: 0.08s;
}

.value-present-stats.value-present-reveal {
  animation-delay: 0.14s;
}

.value-present-services > .value-present-intro.value-present-reveal {
  animation-delay: 0.2s;
}

.value-present-services-grid > .value-present-services-cell:nth-child(1) .value-present-card {
  animation-delay: 0.27s;
}

.value-present-services-grid > .value-present-services-cell:nth-child(2) .value-present-card {
  animation-delay: 0.32s;
}

.value-present-services-grid > .value-present-services-cell:nth-child(3) .value-present-card {
  animation-delay: 0.37s;
}

.value-present-services-grid > .value-present-services-cell:nth-child(4) .value-present-card {
  animation-delay: 0.42s;
}

.value-present-flow > .value-present-intro.value-present-reveal {
  animation-delay: 0.48s;
}

@media (max-width: 991px) {
  .value-present-stat {
    width: 33.333333%;
  }

  .value-present-stat__num {
    font-size: 44px;
  }

  .value-present-stats {
    padding: 32px 16px 36px;
  }

  .value-present-services-grid {
    margin: 0 -8px;
  }

  .value-present-services-cell {
    padding: 0 8px 20px;
  }

  .value-present-flow-sep {
    padding-top: 48px;
    font-size: 28px;
  }
}

@media (max-width: 768px) {
  .value-present-page,
  .core-business-line-page {
    padding: 28px 0 44px;
  }

  .value-present-title {
    font-size: 24px;
  }

  .value-present-stat {
    float: none;
    width: auto;
    padding: 18px 12px 20px;
  }

  .value-present-stat:not(:first-child) {
    border-top: 1px solid #e8eaed;
  }

  .value-present-stat__num {
    font-size: 38px;
  }

  .value-present-stats {
    padding: 24px 16px 28px;
  }

  .value-present-services-grid {
    margin: 0;
  }

  .value-present-services-cell {
    float: none;
    width: auto;
    padding: 0 0 16px;
  }

  .value-present-services-cell:last-child {
    padding-bottom: 0;
  }

  .value-present-card:not(.value-present-card--split) {
    min-height: 0;
    padding: 22px 22px 22px 24px;
  }

  .value-present-card--split .value-present-card__icon-pane {
    float: none;
    width: auto;
    min-height: 0;
    padding: 26px 16px;
  }

  .value-present-card--split .value-present-card__body {
    min-height: 0;
    padding: 18px 18px 22px;
  }

  .value-present-flow-panel {
    padding: 8px 0 0;
  }

  .value-present-flow-row {
    max-width: none;
  }

  .value-present-flow-col {
    float: none;
    width: auto;
    padding: 0;
  }

  .value-present-flow-sep {
    float: none;
    width: auto;
    padding: 6px 0 10px;
    font-size: 20px;
    line-height: 1;
    transform: rotate(90deg);
    color: #94a3b8;
  }

  .value-present-flow-card {
    min-height: 0;
    padding: 18px 12px 16px;
  }

  .value-present-flow-col:hover .value-present-flow-card {
    box-shadow: 0 4px 16px rgba(26, 115, 232, 0.1);
  }

  .value-present-flow-col:hover .value-present-flow-badge {
    transform: none;
  }
}


/* 政府合作案例列表页（.gov-cases-*，标准文档流 + 浮动分栏） */
@keyframes govFadeUp {
  from {
    opacity: 0;
    transform: translateY(18px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.gov-cases-page,
.gov-cases-list li {
  opacity: 0;
  animation: govFadeUp 0.6s ease forwards;
}

.gov-cases-page {
  animation-delay: 0.12s;
  padding: 30px 0 50px;
  background-image: url(../images/hydc_background.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.gov-cases-list li:nth-child(1) { animation-delay: 0.18s; }
.gov-cases-list li:nth-child(2) { animation-delay: 0.24s; }
.gov-cases-list li:nth-child(3) { animation-delay: 0.30s; }
.gov-cases-list li:nth-child(4) { animation-delay: 0.36s; }
.gov-cases-list li:nth-child(5) { animation-delay: 0.42s; }
.gov-cases-list li:nth-child(6) { animation-delay: 0.48s; }

.gov-cases-title {
  margin: 0;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.4;
  color: #333333;
}

.gov-cases-subtitle {
  margin: 10px 0 0;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
  color: #666666;
}

.gov-cases-list {
  margin: 32px 0 0;
  padding: 0;
  list-style: none;
}

.gov-cases-list::after {
  content: "";
  display: table;
  clear: both;
}

.gov-cases-list li {
  float: left;
  width: 33.333333%;
  padding: 0 12px 24px;
}

.gov-case-card {
  display: block;
  padding: 20px;
  border-radius: 8px;
  background: #fff;
  text-decoration: none;
  color: inherit;
  border: 1px solid transparent;
  transition: transform 0.24s ease, box-shadow 0.24s ease, border-color 0.24s ease, background-color 0.24s ease;
}

.gov-case-card:hover,
.gov-case-card:focus-visible {
  transform: translateY(-6px);
  box-shadow: 0 12px 28px rgba(20, 21, 103, 0.12);
  border-color: #dbeafe;
  background-color: #ffffff;
}

.gov-case-card:focus-visible {
  outline: 0;
}

.gov-case-tag {
  display: inline-block;
  margin-bottom: 12px;
  padding: 2px 10px;
  border-radius: 5px;
  font-size: 14px;
  line-height: 1.6;
  color: #ffffff;
  background: #0050be;
  transition: transform 0.24s ease, box-shadow 0.24s ease;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.gov-case-card:hover .gov-case-tag,
.gov-case-card:focus-visible .gov-case-tag {
  transform: translateY(-1px);
  box-shadow: 0 6px 14px rgba(59, 130, 246, 0.26);
}

/* 政府案例标签分类色（与首页 .case-tag-* 同色；组合类单独配色以免与「平台」绿重复） */
.gov-case-tag--cost {
  background: #f59e0b;
}
.gov-case-tag--consult {
  background: #3b82f6;
}
.gov-case-tag--platform {
  background: #10b981;
}
.gov-case-tag--data {
  background: #8b5cf6;
}
.gov-case-tag--other {
  background: #64748b;
}
.gov-case-tag--cost-consult {
  background: #6366f1;
}
.gov-case-tag--platform-consult {
  background: #0d9488;
}
.gov-case-card:hover .gov-case-tag--cost,
.gov-case-card:focus-visible .gov-case-tag--cost {
  box-shadow: 0 6px 14px rgba(245, 158, 11, 0.35);
}
.gov-case-card:hover .gov-case-tag--consult,
.gov-case-card:focus-visible .gov-case-tag--consult {
  box-shadow: 0 6px 14px rgba(59, 130, 246, 0.3);
}
.gov-case-card:hover .gov-case-tag--platform,
.gov-case-card:focus-visible .gov-case-tag--platform {
  box-shadow: 0 6px 14px rgba(16, 185, 129, 0.32);
}
.gov-case-card:hover .gov-case-tag--data,
.gov-case-card:focus-visible .gov-case-tag--data {
  box-shadow: 0 6px 14px rgba(139, 92, 246, 0.32);
}
.gov-case-card:hover .gov-case-tag--other,
.gov-case-card:focus-visible .gov-case-tag--other {
  box-shadow: 0 6px 14px rgba(100, 116, 139, 0.35);
}
.gov-case-card:hover .gov-case-tag--cost-consult,
.gov-case-card:focus-visible .gov-case-tag--cost-consult {
  box-shadow: 0 6px 14px rgba(99, 102, 241, 0.32);
}
.gov-case-card:hover .gov-case-tag--platform-consult,
.gov-case-card:focus-visible .gov-case-tag--platform-consult {
  box-shadow: 0 6px 14px rgba(13, 148, 136, 0.32);
}

.gov-case-name {
  margin: 0 0 10px;
  font-size: 18px;
  line-height: 30px;
  color: #333;
  height: 60px;
  transition: color 0.24s ease;
}
.gov-case-card:hover .gov-case-name,
.gov-case-card:focus-visible .gov-case-name {
  color: #0050be;
}

.gov-case-owner,
.gov-case-date {
  font-size: 15px;
  line-height: 24px;
  color: #636363;
  transition: color 0.24s ease;
}
.gov-case-date {
  height: 24px;
}

.gov-case-card:hover .gov-case-owner,
.gov-case-card:hover .gov-case-date,
.gov-case-card:focus-visible .gov-case-owner,
.gov-case-card:focus-visible .gov-case-date {
  color: #4b5563;
}

.gov-case-date {
  margin-top: 4px;
}

/* 新闻详情页：正文卡片 */
.page-article-card {
  background: #fff;
  border: 1px solid #eee;
  border-radius: 8px;
  padding: 32px 36px 40px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}
.page-article-card-header {
  margin-bottom: 28px;
}
.page-article-card-header .page-article__title {
  margin: 0 0 14px;
}
.page-article-card-header .page-article__meta {

}
.page-article__title {
  font-size: 26px;
  font-weight: 700;
  color: #333;
  line-height: 1.35;
  letter-spacing: 0.02em;
}
.page-article__meta {
  padding-bottom: 20px;
  border-bottom: 1px solid #eee;
  font-size: 16px;
  color: #636363;
}
.page-article__meta .datePublished,
.page-article__meta time {
  margin-right: 18px;
}
.page-article__meta .page-article__cat {

}

.page-article__figure {
  margin: 0 0 24px;
  text-align: center;
}
.page-article__figure img {
  max-width: 100%;
  height: auto;
  border-radius: 6px;
  vertical-align: top;
  background: #f0f2f5;
}
.page-article__figure figcaption {
  margin-top: 10px;
  font-size: 13px;
  color: #9e9e9e;
}
.page-article__lead {
  margin: 0 0 20px;
  padding: 14px 18px;
  background: #f5f8fc;
  border-left: 4px solid #0050c8;
  font-size: 15px;
  line-height: 1.75;
  color: #444;
}
.page-article__body {
  font-size: 16px;
  line-height: 32px;
  color: #333;
}
.page-article__body p {
  /* margin: 5px 0; */
}
.page-article__body p img{
  display: inline-block;
  height: auto !important;
  margin: 10px 0;
}

.page-article-card-footer {
  margin-top: 40px;
  padding-top: 20px;
  border-top: 1px dashed #e0e0e0;
}
.page-article-card-footer__nav {
  overflow: hidden;
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px dashed #e0e0e0;
  font-size: 14px;
  line-height: 1.55;
  color: #555;
}
.page-article__adj--prev {
  float: left;
  max-width: 48%;
  padding-right: 10px;
}
.page-article__adj--next {
  float: right;
  max-width: 48%;
  padding-left: 10px;
  text-align: right;
}
.page-article__adj-label {
  display: inline-block;
  margin-right: 6px;
  color: #333;
  font-size: 16px;
  white-space: nowrap;
}

.page-article__adj-label a{
  color: #636363;
}
.page-article__adj-label a:hover{
  color: #0050be;
}

.page-article-card-footer__back {
  text-align: center;
}
.page-article__back {
  display: inline-block;
  padding: 10px 28px;
  border: 1px solid #0050c8;
  border-radius: 4px;
  background: #fff;
  color: #0050c8;
  font-size: 15px;
  text-decoration: none;
  transition: background 0.2s, color 0.2s;
}
.page-article__back:hover {
  background: #0050c8;
  color: #fff;
}
@media (max-width: 767px) {
  .page-article-card {
    padding: 22px 18px 28px;
  }
  .page-article-card-header {
    margin-bottom: 22px;
  }
  .page-article__title {
    font-size: 20px;
  }
  .page-article__body {
    font-size: 15px;
  }
  .page-article__meta .datePublished,
  .page-article__meta time {
    display: block;
    margin: 0 0 6px;
  }
  .page-article__meta .page-article__cat {
    display: block;
  }
  .page-article__adj--prev,
  .page-article__adj--next {
    float: none;
    max-width: none;
    padding: 0;
    text-align: left;
  }
  .page-article__adj--next {
    margin-top: 12px;
  }
}

/* 页脚 · site-footer--full 四列底部 */
.site-footer--full {
  padding-top: 45px;
  padding-bottom: 20px;
  background:#061530;
  color:rgba(255,255,255,.82);
}

.site-footer--full .footer-main {
  position: relative;
}

.site-footer--full .footer-body,
.site-footer--full .footer-bottom,
.site-footer--full .footer-line {
  position: relative;
  z-index: 1;
}

.site-footer--full .footer-body {
  padding: 0 0 32px;
}

.site-footer--full .footer-col {
  float: left;
  box-sizing: border-box;
  min-height:252px;
}

.site-footer--full .footer-brand-col {
  width: 38%;
  padding-right: 36px;
}

.site-footer--full .footer-qrs-col {
  width: 30%;
  padding: 0 36px;
  border-left: 1px solid rgba(255, 255, 255, .08);
  border-right: 1px solid rgba(255, 255, 255, .08);
  text-align: center;
}

.site-footer--full .footer-contact-col {
  width: 27%;
  float: right;
}

.site-footer--full .footer-brand {
  margin-bottom: 24px;
  /* text-align: center; */
}

.site-footer--full .footer-brand img {
  /* display: block; */
  max-height: 58px;
}

.site-footer--full .footer-slogan {
  margin: 0 0 24px;
  color: rgba(255, 255, 255, .75);
  font-size: 16px;
  font-weight: normal;
  line-height: 1.5;
  position: relative;
}
.site-footer--full .footer-slogan::after{
  content: " ";
  display: block;
  width: 32px;
  height: 2px;
  background: #1872f7;
  margin: 15px 0;
}

.site-footer--full .footer-nav {
  margin-bottom: 28px;
  font-size: 0;
}

.site-footer--full .footer-nav a {
  position: relative;
  display: inline-block;
  padding: 0 14px;
  color: rgba(255, 255, 255, .9);
  font-size: 16px;
  font-weight: normal;
  line-height: 1.5;
  white-space: nowrap;
  vertical-align: middle;
}

.site-footer--full .footer-nav a:first-child {
  padding-left: 0;
}

.site-footer--full .footer-nav a:not(:first-child)::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 1px;
  height: 12px;
  margin-top: -6px;
  background: rgba(255, 255, 255, .4);
}

.site-footer--full .footer-phone {
  color: rgba(255, 255, 255, .92);
  font-size: 16px;
  font-weight: normal;
  line-height: 28px;
}

.site-footer--full .footer-phone .footer-icon,
.site-footer--full .footer-phone span {
  display: inline-block;
  vertical-align: middle;
}

.site-footer--full .footer-phone .footer-icon {
  margin-right: 10px;
}

.site-footer--full .footer-icon {
  display: inline-block;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  vertical-align: middle;
}

.site-footer--full .footer-icon--phone {
  box-sizing: border-box;
  border: 1px solid #1872f7;
  background: url(../images/icon-call-blue.png) center / 14px auto no-repeat;
}

.site-footer--full .footer-section-title {
  margin: 0 0 12px;
  text-align: center;
  color: #fff;
  font-weight: normal;
  line-height: 1.4;
  font-size: 0;
}

.site-footer--full .footer-section-title span {
  display: inline-block;
  vertical-align: middle;
  font-size: 18px;
  font-weight: normal;
  color: #fff;
  line-height: 1.4;
}

.site-footer--full .footer-section-title::before,
.site-footer--full .footer-section-title::after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 15px;
  height: 12px;
  margin: 0 15px;
  background:
    linear-gradient(115deg, transparent 35%, #1872f7 35%, #1872f7 48%, transparent 48%),
    linear-gradient(115deg, transparent 52%, #1872f7 52%, #1872f7 65%, transparent 65%);
  opacity: .95;
}

.site-footer--full .footer-contact-col .footer-section-title::before {
  margin-left: 0;
}

.site-footer--full .footer-section-desc {
  margin: 0 0 18px;
  color: rgba(255, 255, 255, .65);
  font-size: 15px;
  font-weight: normal;
  line-height: 1.5;
}

.site-footer--full .footer-qrs {
  font-size: 0;
}

.site-footer--full .footer-qrs .qr-item {
  display: inline-block;
  width: 100px;
  margin: 0 18px;
  text-align: center;
  vertical-align: top;
  font-size: 16px;
}

.site-footer--full .footer-qrs .qr-item img {
  display: block;
  width: 100%;
  padding: 4px;
  background: #fff;
}

.site-footer--full .footer-qrs .qr-item__label {
  display: block;
  margin-top: 12px;
  color: #fff;
  font-size: 16px;
  font-weight: normal;
  line-height: 28px;
}

.site-footer--full .footer-address {
  margin-top: 8px;
}

.site-footer--full .footer-addr-item {
  padding: 12px 0 8px 36px;
  background-image: url(../images/icon-map.png);
  background-position: left top 11px;
  background-size: 24px auto;
  background-repeat: no-repeat;
}

.site-footer--full .footer-addr-item:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.site-footer--full .footer-addr-item strong {
  display: block;
  color: #fff;
  font-size: 16px;
  font-weight: normal;
  line-height: 1.4;
}

.site-footer--full .footer-addr-item span {
  display: block;
  margin-top: 4px;
  color: rgba(255, 255, 255, .82);
  font-size: 15px;
  font-weight: normal;
  line-height: 28px;
}

.site-footer--full .footer-bottom {
  clear: both;
  padding-top: 16px;
  border-top: 1px solid rgba(255, 255, 255, .22);
  text-align: center;
  color: rgba(255,255,255,.9);
  font-size: 16px;
  font-weight: normal;
  line-height: 28px;
}

.site-footer--full .footer-bottom span,
.site-footer--full .footer-bottom em,
.site-footer--full .footer-bottom a {
  display: inline-block;
  vertical-align: middle;
}
.site-footer--full .footer-bottom a.icon-ga{
  background-image: url(../images/icon-ga.png);
  background-size: 16px auto;
  background-position:left center;
  background-repeat: no-repeat;
  padding-left: 22px;
}

.site-footer--full .footer-bottom em {
  margin: 0 32px;
  color: rgba(255,255,255,.5);
  font-style: normal;
}

.site-footer--full .footer-bottom a {
  color: rgba(255,255,255,.9);
}
.site-footer--full a:hover{
  color: #1872f7;
}

/* 返回页顶 */
.back-to-top {
  position: fixed;
  right: 15px;
  bottom: 28px;
  z-index: 99;
  width: 48px;
  height: 48px;
  box-sizing: border-box;
  border-radius: 5px;
  background: #0050be;
  box-shadow: 0 4px 16px rgba(0, 0, 0, .22);
  color: rgba(255, 255, 255, .88);
  text-align: center;
  font-size: 16px;
  line-height: 20px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: background .2s ease, border-color .2s ease, color .2s ease, opacity .2s ease, visibility .2s ease, transform .2s ease;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.back-to-top::before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  margin: 10px auto 5px;
  border-left: 2px solid currentColor;
  border-top: 2px solid currentColor;
  transform: rotate(45deg);
}

.site-footer--full .back-to-top:hover,
.back-to-top:hover {
  background: #1872f7;
  border-color: #1872f7;
  color: #fff;
}

.back-to-top.show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* 内页通用 */
.page-hero {
  padding: 72px 0 40px;
  background: #f7f8fc;
}

.page-hero h1 {
  font-size: 28px;
  color: #0050be;
  margin-bottom: 8px;
}

.page-hero p {
  font-size: 14px;
  color: #666;
}

.page-main {
  padding: 48px 0 80px;
}

.page-grid-2 {
  overflow: hidden;
}
.page-grid-2 > *:first-child {
  float: left;
  width: 54.5%;
  margin-right: 32px;
}
.page-grid-2 > *:last-child {
  overflow: hidden;
}
.section-block {
  margin-bottom: 40px;
}

.section-block h2,
.section-block h3 {
  font-size: 20px;
  color: #0050be;
  margin-bottom: 8px;
}

.section-block p {
  font-size: 14px;
  color: #555;
  line-height: 1.7;
}

/* ========== 响应式样式（统一管理） ========== */

@media (max-width: 1200px) {
  .site-header.is-search-open .header-search-expand {
    width: 320px;
  }
}

@media (max-width: 1024px) {
  .business-card {
    width: 33.3333%;
  }
}

@media (max-width: 992px) {
  .header-search-expand {
    display: none;
  }
  .main-nav,
  .header-right {
    display: none;
  }
  .header-nav-wrap {
    display: block;
    float: right;
    width: auto;
    max-width: none;
    height: 58px;
    line-height: 58px;
    overflow: visible;
  }
  .mc_phone_nav {
    float: right;
    display: block;
    position: relative;
    z-index: 2010;
    width: 24px;
    height: 58px;
    line-height: 58px;
    text-align: right;
  }
  .gov-cases-list li {
    width: 50%;
  }
}

@media (max-width: 900px) {
  .research-card {
    width: 50%;
  }
  .page-grid-2 > *:first-child {
    float: none;
    width: 100%;
    margin-right: 0;
  }
}

@media (max-width: 768px) {
  .section {
    padding: 56px 0;
  }
  .section-header-row > div,
  .section-header-row > a {
    float: none;
    margin-bottom: 16px;
  }
  .business-card {
    width: 50%;
  }
  .case-card {
    width: 100%;
  }
  .gov-cases-list li {
    float: none;
    width: auto;
    padding: 0 0 16px;
  }
  .gov-cases-list li:last-child {
    padding-bottom: 0;
  }
}

@media (max-width: 600px) {
  .research-card {
    width: 100%;
  }
}

@media (max-width: 576px) {
  .business-card {
    width: 100%;
  }
}

/* =============================================================================
   关于胥瓷页（类名统一 .page-about-* / .xcabout-root，标准文档流 + 浮动分栏，不使用 grid/table）   ============================================================================= */

html.xcabout-root {
  scroll-behavior: auto;
}

@media (prefers-reduced-motion: reduce) {
  html.xcabout-root {
    scroll-behavior: auto;
  }

  .page-about-reveal,
  .page-about-stagger {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
    transition-delay: 0s !important;
  }

  .page-about-cert-thumb img,
  .page-about-ib-left img,
  .page-about-qual-card,
  .page-about-sixpos-card,
  .page-about-cert-card,
  .page-about-eco-flow__col,
  .page-about-pill:hover {
    transition: none !important;
    transform: none !important;
  }

  .gov-cases-page,
  .gov-cases-list li {
    opacity: 1;
    animation: none;
  }

  .value-present-reveal {
    opacity: 1 !important;
    animation: none !important;
  }

  .value-present-card,
  .value-present-flow-card,
  .value-present-flow-badge {
    transition: none !important;
  }

  .value-present-card:hover,
  .value-present-card:focus-within {
    transform: none !important;
  }

  .value-present-flow-col:hover .value-present-flow-badge {
    transform: none !important;
  }

  .gov-case-card,
  .gov-case-tag,
  .gov-case-name,
  .gov-case-owner,
  .gov-case-date,
  .page-news-subnav__list a,
  .page-article-breadcrumb .newsnav a {
    transition: none;
  }
}

#about-intro,
#gene,
#team,
#eco,
#history-certs,
#join-intro,
#jobs,
#cooperation,
#contact {
  scroll-margin-top: 96px;
}

:root {
  --about-primary: #0050be;
  --about-primary-light: #1a89fe;
  --about-accent: #f97223;
  --about-text: #333;
  --about-muted: #555;
  --about-ivory: #f7f5f0;
  --about-line: #e6eef9;
}

.page-about-cf::after {
  content: "";
  display: block;
  clear: both;
  height: 0;
  overflow: hidden;
  visibility: hidden;
}

.page-about-hero {
  min-height: calc(100vh - 90px);
  padding-top: 90px;
  background-image: url(../images/main6_bg.png);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  color: #fff;
  position: relative;
  overflow: hidden;
}
.page-about-hero.page-join-hero{
  background-image: url(../images/main7_bg.jpg);
}

.page-about-hero::after {
  content: "";
  position: absolute;
  right: -8%;
  top: 10%;
  width: 420px;
  height: 220px;
  background: radial-gradient(ellipse at 30% 50%, rgba(255, 255, 255, 0.12) 0%, transparent 72%);
  pointer-events: none;
  transform: rotate(-12deg);
  opacity: 0.9;
}

.page-about-hero__inner {
  position: relative;
  z-index: 1;
 
  padding: 0 16px 64px;
}

.page-about-hero h1 {
  margin: 0 0 20px;
  font-size: 40px;
  line-height: 1.25;
  color: #fff;
  text-align: center;
}

.page-about-hero__subtitle {
  margin: 0 auto 40px;
  font-size: 22px;
  color: #fff;
  text-align: center;
}

.page-about-intro {
  max-width: 61.5%;
  margin: 0 auto 48px;
  padding: 28px 32px;
  background: rgba(255, 255, 255, 0.2);
  color: #333;
  border-radius: 5px;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12);
  font-size: 16px;
  line-height: 32px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.page-about-intro p {
  margin: 0 0 16px;
}
.page-about-intro.page-join-hero__intro p{
  color: #fff;
}
.page-about-intro p:last-child {
  margin-bottom: 0;
}

.page-about-subhead {
  text-align: center;
  margin: 0 0 12px;
  font-size: 22px;
  font-weight: 600;
  color: #fff;
}

.page-about-subhead-line {
  display: block;
  width: 160px;
  height: 2px;
  margin: 0 auto 28px;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.85), transparent);
}

.page-about-position {
  max-width: 1000px;
  margin: 0 auto;
  overflow: hidden;
}

.page-about-position__item {
  float: left;
  width: 28%;
  text-align: center;
  padding: 12px 8px;
}

.page-about-position__arr {
  float: left;
  width: 8%;
  padding-top: 36px;
  font-size: 22px;
  color: rgba(255, 255, 255, 0.65);
  text-align: center;
  line-height: 1;
}

.page-about-position__icon {
  display: block;
  width: 52px;
  height: 52px;
  line-height: 52px;
  margin: 0 auto 14px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.15);
  border: 1px solid rgba(255, 255, 255, 0.35);
  font-size: 24px;
  color: #fff;
}

.page-about-position__icon i {
  vertical-align: middle;
}

.page-about-position__item h3 {
  margin: 0 0 10px;
  font-size: 18px;
  font-weight: 600;
  color: #fff;
  line-height: 1.4;
}

.page-about-position__item p {
  margin: 0;
  font-size: 14px;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.88);
}

.page-about-gene {
  position: relative;
  padding: 72px 0 38px;
  background: linear-gradient(180deg, #FFFFFF 0%, #F0F4FF 100%);
  overflow: hidden;
}
.page-about-section-title {
  position: relative;
  margin: 0 0 60px;
  font-size: 32px;
  text-align: center;
  /* font-weight: 600; */
  color: #333;
}
.page-about-gene-inner {
  position: relative;
  z-index: 1;
}
.page-about-media {
  /* overflow: hidden; */
  margin-bottom: 48px;
}

.page-about-media__fig {
  float: right;
  width: 52%;
  border-radius: 8px;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  -ms-border-radius: 8px;
  -o-border-radius: 8px;
}

.page-about-media__fig img {
  width: 100%;
  height: auto;
  object-fit: cover;
}
.page-about-gene-swiper {
  overflow: hidden;
  -webkit-box-shadow: 0px 5px 9px 0px rgba(52, 94, 184, 0.08);
  box-shadow: 0px 0 9px 0px rgba(52, 94, 184, 0.08);
  border-radius: 8px;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  -ms-border-radius: 8px;
  -o-border-radius: 8px;
}
.page-about-gene-swiper .gene-media-pagination {
  bottom: 15px !important;
}

.page-about-gene-swiper .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  background: #cbd5e1;
  opacity: 1;
}

.page-about-gene-swiper .swiper-pagination-bullet-active {
  background: var(--about-primary, #0050be);
}

.page-about-media__body {
  float: left;
  width: 44%;
  padding-top: 20px;
}

.page-about-media__body h3,
.page-about-block-label.page-about-block-label--like-body-h3 {
  font-size: 24px;
  color: var(--about-primary);
}
.page-about-block-label.page-about-block-label--like-body-h3{
  background-image: url(../images/icon-1-blue.png);
  background-repeat: no-repeat;
  background-size: 24px auto;
  background-position: left top 1px;
  padding-left: 36px;
}

.page-about-media__body h3 {
  margin: 0 0 24px;
}

.page-about-media__underline {
  display: block;
  width: 72px;
  height: 3px;
  margin-bottom: 20px;
  background: linear-gradient(90deg, var(--about-primary-light), transparent);
}

.page-about-media__body p {
  margin: 0 0 14px;
  font-size: 16px;
  line-height: 32px;
  color: #333;
}

.page-about-media__body p:last-child {
  margin-bottom: 0;
}

.page-about-block-label {
  margin: 48px 0 8px;
  font-size: 22px;
  /* font-weight: 600; */
  color: var(--about-text);
}

.page-about-block-label.page-about-block-label--like-body-h3 {
  margin-bottom: 35px;
  /* font-weight: bold; */
}

.page-about-block-label-line_under {
  display: block;
  width: 100%;
  max-width: 360px;
  height: 2px;
  margin-bottom: 28px;
  background: var(--about-line);
}

.page-about-quals {
  /* overflow: hidden; */
  margin-bottom: 8px;
}

.page-about-qual-card {
  float: left;
  width: 24%;
  margin-right:1.33%;
  padding: 5px 5px 15px;
  background: -webkit-linear-gradient(bottom, #FFFFFF 0%, #EEF4FF 100%);
  background: linear-gradient(0deg, #FFFFFF 0%, #EEF4FF 100%);
  box-shadow: 0px 5px 9px 0px rgba(52, 94, 184, 0.1), inset 0px 1px 9px 1px #FFFFFF;
  border-radius: 8px;
  border: 1px solid #FFFFFF;
  transition: all 0.3s ease-out;
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -ms-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
}
.page-about-qual-card:last-child {
  margin-right: 0;
}
.page-about-qual-card:hover {
  transform: translateY(-4px);
  -webkit-transform: translateY(-4px);
  -moz-transform: translateY(-4px);
  -ms-transform: translateY(-4px);
  -o-transform: translateY(-4px);
}

.page-about-qual-card .page-about-qual-thumb {
  margin: 0 auto 16px;
  max-width: 100%;
  border-radius: 8px;
  overflow: hidden;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  -ms-border-radius: 8px;
  -o-border-radius: 8px;
}

.page-about-qual-card .page-about-qual-thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.page-about-qual-card h4 {
  margin: 0 0 4px;
  padding: 0 10px;
  font-size: 16px;
  font-weight: 600;
  color: #333;
  line-height: 32px;
}
.page-about-qual-card p {
  font-size: 14px;
  padding: 0 10px;
  line-height: 1.65;
  color: #636363;
}

.page-about-adv-wrap {
 
}

.page-about-adv-wrap__title {
  text-align: center;
  margin-top: 0 !important;
  margin-bottom: 40px !important;
}

.page-about-adv {
  overflow: hidden;
  margin: 0 -12px;
}

.page-about-adv__card {
  float: left;
  width: 33.333%;
  padding: 0 32px 28px;
  text-align: center;
}

.page-about-adv__fig {
  width: 67px;
  height: 67px;
  margin: 0 auto 20px;
  line-height: 0;
}

.page-about-adv__fig img {
  display: block;
  width: 67px;
  height: 67px;
  margin: 0 auto;
  object-fit: contain;
}

.page-about-adv__card h4 {
  margin: 0 0 12px;
  font-size: 18px;
  font-weight: 600;
  color: var(--about-text);
  line-height: 1.4;
}

.page-about-adv__card h4::before {
  content: none;
}

.page-about-adv__card p {
  margin: 0 auto;
  max-width: 320px;
  font-size: 14px;
  line-height: 1.75;
  color: var(--about-muted);
}

.page-about-reveal,
.page-about-stagger {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}

.page-about-reveal.is-visible,
.page-about-stagger.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.page-about-band {
  padding: 72px 0 80px;
}

.page-about-team {
  background: #fff;
  overflow-x: hidden;
}

.page-about-eco {
  background: #ecf1f5;
}

.page-about-certs {
  background: #f8fafc;
}

.page-about-ib-title {
  text-align: center;
  margin: 0 0 48px;
}

.page-about-ib-title h2 {
  margin: 0 0 14px;
  font-size: 32px;
  font-weight: 600;
  color: #333;
}

.page-about-ib-title span {
  display: block;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: #94a3b8;
}

.page-about-ib-box {
  position: relative;
  margin-top: 50px;
  padding-top: 50px;
}

.page-about-ib-box::after {
  content: " ";
  display: inline-block;
  position: absolute;
  width: 85.66%;
  height: 100%;
  right: 0;
  top: 0;
  /* z-index: -2; */
  background: #eff4ff;
}

.page-about-ib-box::before {
  content: " ";
  display: inline-block;
  position: absolute;
  width: 25.5%;
  height: 100%;
  left: -13.5%;
  top: 0;
  /* z-index: -2; */
  background: url(../images/bg-round.png) no-repeat right top;
  background-size: 100% auto;
}

.page-about-ib-row {
  position: relative;
  z-index: 1;
  overflow: hidden;
}

.page-about-ib-right {
  float: right;
  width: 61.75%;
  padding-right: 50px;
  text-align: left;
}
.page-about-ib-right .page-about-team-showcase__title {
  font-size: 24px;
  color: #333;
  position: relative;
  margin-bottom: 45px;
}

.page-about-ib-right .page-about-team-showcase__title::before {
  content: " ";
  display: inline-block;
  width: 48px;
  height: 9px;
  background: #0050be;
  position: absolute;
  bottom:2px;
  left: 0;
  z-index: -1;
}

.page-about-ib-left {
  float: left;
  width: 34.3%;
  margin-top: 50px;
  overflow: hidden;
  border-radius: 10px;
}

.page-about-ib-left img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  vertical-align: top;
  background: #f1f5f9;
}
.page-about-team-showcase__body strong {
  font-weight: normal;
  color: #0050be;
}

.page-about-ib-right .page-about-team-showcase__body {
  color: #333;
  font-size: 16px;
  line-height: 32px;
}
.page-about-ib-right .page-about-team-showcase__body ul{
  margin-bottom: 8px;
}
.page-about-ib-right .page-about-team-showcase__body ul li{
  position: relative;
  padding-left: 20px;
}
.page-about-ib-right .page-about-team-showcase__body ul li::before {
  content: " ";
  display: inline-block;
  width: 6px;
  height: 3px;
  background: #0050be;
  position: absolute;
  left: 0;
  top: 14px;
}

.page-about-team-feature-label {
  margin-top: 40px;
  margin-bottom: 0;
}

.page-about-team .page-about-team-feature-label + .page-about-block-label-line_under {
  margin-bottom: 20px;
}

/* 核心团队 · 团队特色 tag_box（对齐 .about .main1 .tag_box 规格，作用域限定在 .page-about-team） */
.page-about-team .tag_box.flex {
  margin-top: 28px;
  clear: both;
}

.page-about-team .tag_box.flex .tag_block {
  position: relative;
  float: left;
  width: 32.41667%;
  overflow: hidden;
  border-radius: 8px;
  background: #e8eef5;
}

.page-about-team .tag_box.flex .tag_block:not(:last-child) {
  margin-right: 1.33333%;
}

.page-about-team .tag_block .img {
  margin: 0;
  line-height: 0;
}

.page-about-team .tag_box.flex .tag_block .picture_container {
  position: relative;
  padding-top: 60.41131%;
  overflow: hidden;
}

.page-about-team .tag_box.flex .tag_block .picture_container img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.page-about-team .tag_block .mask.flex.flex_column_center {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  padding-left: 32px;
  padding-right: 24px;
}

.page-about-team .tag_block .txt_box {
  width: 100%;
  color: #fff;
}

.page-about-team .tag_block .txt_box .icon {
  
}

.page-about-team .tag_block .txt_box .icon img {
  display: block;
  width: auto;
  max-width: 40px;
  height: auto;
}

.page-about-team .tag_block .txt_box .name {
  font-size: 24px;
  font-weight: 700;
  color: #fff;
  margin-top: 16px;
  margin-bottom: 0;
  line-height: 1.25;
}

.page-about-team .tag_block .txt_box .line {
  font-size: 16px;
  opacity: 0.85;
  line-height: 24px;
  margin-top: 8px;
  margin-bottom: 0;
  color: #fff;
}

.page-about-plus {
  margin: 0 8px;
  color: var(--about-primary);
  font-weight: 500;
}

.page-about-eco-flow {
  overflow: hidden;
  margin-bottom: 40px;
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
}

.page-about-eco-flow__col {
  float: left;
  width: 28%;
  text-align: center;
  padding: 24px 16px;
  background: #fff;
  border: 1px solid var(--about-line);
  border-radius: 8px;
  transition: box-shadow 0.25s ease, transform 0.25s ease;
}

.page-about-eco-flow__col:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 28px rgba(0, 40, 100, 0.1);
}

.page-about-eco-flow__badge {
  display: inline-block;
  width: 44px;
  height: 44px;
  line-height: 44px;
  margin-bottom: 14px;
  border-radius: 50%;
  background: var(--about-primary);
  color: #fff;
  font-size: 20px;
}

.page-about-eco-flow__col h4 {
  margin: 0 0 12px;
  font-size: 18px;
  color: var(--about-text);
  line-height: 30px;
}

.page-about-eco-flow__col p {
  font-size: 16px;
  line-height: 28px;
  color: var(--about-muted);
}

.page-about-eco-flow__arr {
  float: left;
  width: 8%;
  padding-top: 88px;
  font-size: 22px;
  color: rgba(0, 80, 190, 0.85);
  text-align: center;
}

.page-about-org {
  max-width: 90%;
  text-align: center;
}

.page-about-org__node {
  display: inline-block;
  padding: 16px 24px;
  border-radius: 8px;
  border: 1px solid var(--about-line);
  background: #fff;
  box-shadow: 0 4px 16px rgba(0, 50, 120, 0.05);
  vertical-align: top;
}

.page-about-org__node span {
  display: block;
  font-size: 17px;
  font-weight: 600;
  color: var(--about-text);
  line-height: 1.35;
}

.page-about-org__node small {
  display: block;
  margin-top: 6px;
  font-size: 13px;
  color: #888;
}

.page-about-org__stem {
  width: 2px;
  height: 22px;
  margin: 0 auto;
  background: linear-gradient(180deg, rgba(0, 80, 190, 0.5), rgba(0, 80, 190, 0.35));
}

.page-about-org__regions {
  overflow: hidden;
  margin-top: 18px;
  padding-top: 18px;
  border-top: 2px solid rgba(0, 80, 190, 0.18);
  position: relative;
}

.page-about-org__regions::before {
  content: "";
  position: absolute;
  top: -22px;
  left: 50%;
  margin-left: -1px;
  width: 2px;
  height: 22px;
  background: linear-gradient(180deg, rgba(0, 80, 190, 0.35), rgba(0, 80, 190, 0.18));
}

.page-about-org__region {
  float: left;
  width: 20%;
  padding: 12px 8px;
  margin-bottom: 12px;
  font-size: 14px;
  font-weight: 600;
  color: var(--about-text);
  background: #fff;
  border: 1px solid var(--about-line);
  border-radius: 6px;
  text-align: center;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.page-about-org__region:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 20px rgba(0, 40, 100, 0.1);
}

.page-about-map {
  position: relative;
  text-align: center;
}

.page-about-map__silhouette {
  position: absolute;
  left: 50%;
  top: 42%;
  width: 72%;
  max-width: 520px;
  height: auto;
  transform: translate(-50%, -50%);
  pointer-events: none;
  opacity: 1;
}

.page-about-map__inner {
  position: relative;
  z-index: 2;
  min-height: 260px;
}

.page-about-map-pin {
  position: absolute;
  padding: 0;
  margin: 0;
  border: 0;
  background: none;
  cursor: pointer;
  transform: translate(-50%, -50%);
  font: inherit;
  color: inherit;
}

.page-about-map-pin--bj { top: 30%; left: 52%; }
.page-about-map-pin--js { top: 52%; left: 62%; }
.page-about-map-pin--gd { top: 68%; left: 54%; }

.page-about-map-dot {
  display: block;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--about-primary);
  border: 3px solid #fff;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.18);
  transition: transform 0.25s ease;
}

.page-about-map-pin:hover .page-about-map-dot,
.page-about-map-pin:focus .page-about-map-dot {
  transform: scale(1.15);
}

.page-about-map-tooltip {
  position: absolute;
  left: 50%;
  bottom: calc(100% + 12px);
  transform: translateX(-50%);
  min-width: 140px;
  padding: 10px 12px;
  font-size: 13px;
  line-height: 1.45;
  text-align: center;
  color: #fff;
  background: rgba(20, 24, 40, 0.92);
  border-radius: 8px;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0.2s ease;
  pointer-events: none;
  white-space: normal;
}

.page-about-map-pin:hover .page-about-map-tooltip,
.page-about-map-pin:focus .page-about-map-tooltip {
  opacity: 1;
  visibility: visible;
}

.page-about-map__note {
  position: relative;
  z-index: 2;
  margin: 16px 0 0;
  text-align: center;
  font-size: 13px;
  color: #999;
}

.page-about-sixpos__row--3 {
  /* overflow: hidden; */
  margin-bottom: 10px;
}

.page-about-sixpos__row--3 .page-about-sixpos-card {
  float: left;
  width: 32%;
  margin-right: 2%;
  margin-bottom: 16px;
}

.page-about-sixpos__row--3 .page-about-sixpos-card:nth-child(3n) {
  margin-right: 0;
}

.page-about-sixpos-card {
  padding: 22px 16px;
  text-align: center;
  background: #fff;
  border: 1px solid var(--about-line);
  border-radius: 8px;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.page-about-sixpos-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 28px rgba(0, 40, 100, 0.12);
}

.page-about-sixpos-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  padding: 8px;
  margin: 0 auto 12px;
  border-radius: 50%;
  background: var(--about-primary);
  color: #fff;
  font-size: 20px;
  text-align: center;
}
.page-about-sixpos-card h4 {
  margin: 0 0 8px;
  font-size: 18px;
  color: #333;
  line-height: 30px;
}

.page-about-sixpos-quote {
  margin: 0;
  font-size: 16px;
  line-height: 28px;
  color: var(--about-muted);
}

/* 发展历程 · milestones / corp-timeline（自 css-kr.css「三十而砺」同步） */
.milestones-section {
	background-image: url(../images/bg-history.jpg);
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	position: relative;
	overflow: hidden;
	padding-top: 50px;
	padding-bottom: 50px;
	transition-delay: 0.2s;
}
.milestones-title {
	text-align: center;
	font-size: 2.083vw;
	color: #1e293b;
	font-weight: lighter;
}

.historyprocess {
	margin-top: 58px;
}
.corp-timeline-wrapper {
	position: relative;
}
.corp-timeline-header {
	text-align: center;
	position: relative;
	margin-bottom: 15px;
}
.corp-timeline-header::after {
	content: "";
	display: inline-block;
	width: calc(100% - 44px);
	height: 2px;
	background: #cacaca;
	left: 22px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
.corp-timeline-nav-swiper {
	margin: 0 70px 16px;
	padding: 6px 0;
}
.corp-timeline-nav-swiper .swiper-slide {
	text-align: center;
}
.corp-timeline-nav-item {
	display: inline-block;
	position: relative;
	cursor: pointer;
}
.corp-timeline-nav-item::before {
	content: "";
	display: inline-block;
	width: 18px;
	height: 18px;
	background: #fff;
	border: 2px solid #1a56db;
	border-radius: 50%;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
}
.corp-timeline-nav-item.active::before {
	background: #1a56db;
}
.corp-timeline-nav-title {
	display: block;
	font-size: 22px;
	color: #1e293b;
	height: 24px;
	line-height: 24px;
	margin-bottom: 34px;
}
.corp-timeline-nav-item.active .corp-timeline-nav-title {
	color: #1a56db;
	font-size: 24px;
}
.corp-timeline-nav-range {
	font-size: 20px;
	display: block;
	color: #666;
}
.corp-timeline-arrow {
	width: 22px;
	height: 22px;
	cursor: pointer;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	z-index: 2;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 12px auto;
}
.corp-timeline-arrow-prev {
	left: 0;
	background-image: url(../images/his_arrow_le.png);
}
.corp-timeline-arrow-next {
	right: 0;
	background-image: url(../images/his-right-blue.png);
}
.corp-timeline-swiper {
	width: 100%;
}
.corp-timeline-slide {
	width: 100%;
	text-align: left;
	padding: 24px 0 30px;
}
.corp-timeline-phase {
	font-size: 24px;
	color: #000;
	margin-bottom: 24px;
}
.corp-timeline-events {
	position: relative;
}
.corp-timeline-item {
	position: relative;
	overflow: hidden;
  margin-bottom: 10px;
}
.corp-timeline-year {
	float: left;
	margin: 0;
	font-size: 16px;
	font-weight: 400;
	color: #232323;
	line-height: 30px;
	width: 15.3125%;
	position: relative;
}
.corp-timeline-year::after {
	content: "";
	position: absolute;
	right: 0;
	top: 50%;
	width: 66.938755%;
	height: 2px;
	background: #d2d2d2;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
}
.corp-timeline-desc {
	float: right;
	width: 81.25%;
	padding-top: 2px;
}
.corp-timeline-desc p {
	position: relative;
	padding-left: 58px;
	font-size: 16px;
	line-height: 30px;
	color: #383838;
	margin-bottom: 10px;
}
.corp-timeline-desc p::before {
	content: "";
	position: absolute;
	left: 0;
	top: 9px;
	width: 11px;
	height: 11px;
	background: #1a56db;
	border-radius: 50%;
}

@media (max-width: 768px) {
	.milestones-section {
		padding-top: 30px;
		height: auto;
	}
	.milestones-title {
		font-size: 20px;
	}
	.corp-timeline-nav-swiper .swiper-slide {
		/* width: auto !important; */
	}
	.corp-timeline-nav-title,
	.corp-timeline-nav-range {
		font-size: 16px;
	}
	.corp-timeline-nav-item.active .corp-timeline-nav-title {
		font-size: 18px;
	}
	.milestones-title img {
		width: auto;
		height: 25px;
	}
	.historyprocess {
		margin-top: 25px;
		padding: 0 15px;
	}
	.corp-timeline-nav-item::before {
		width: 14px;
		height: 14px;
	}
	.corp-timeline-slide {
		padding: 0;
	}
	.corp-timeline-phase {
		font-size: 20px;
	}
	.corp-timeline-year {
		width: 20.3125%;
	}
	.corp-timeline-year::after {
		width: 38.938755%;
	}
	.corp-timeline-desc {
		width: 77.25%;
	}
	.corp-timeline-desc p {
		padding-left: 18px;
		line-height: 28px;
		margin-bottom: 12px;
		font-size: 15px;
	}
	.corp-timeline-desc p::before {
		top: 11px;
		width: 6px;
		height: 6px;
	}
	.xcabout-strategy-map .map-container dl dd,
	.xcabout-strategy-map .city-marker,
	.xcabout-strategy-map .city-marker .xcabout-map-pin {
		width: 10px;
		height: 14px;
	}
	.xcabout-strategy-map .city-marker .xcabout-map-pin::after {
		width: 36px;
		height: 36px;
	}
	.xcabout-strategy-map .city-name-title {
		width: 80px;
		height: 36px;
		line-height: 36px;
		padding-left: 35px;
		background-size: 18px auto;
		background-position: left 8px center;
		border-radius: 8px;
		font-size: 13px;
	}
}

.page-about-cert-swiper-wrap {
  position: relative;
  padding-bottom: 8px;
}

.page-about-cert-swiper {
  padding: 4px 0 36px;
  overflow: hidden;
}

.page-about-cert-swiper .swiper-slide {
  height: auto;
}

.page-about-cert-swiper__pagination {
  bottom: 4px !important;
}

.page-about-cert-swiper__pagination .swiper-pagination-bullet {
  background: rgba(0, 80, 190, 0.35);
  opacity: 1;
}

.page-about-cert-swiper__pagination .swiper-pagination-bullet-active {
  background: var(--about-primary);
}

.page-about-cert-card {
  float: none;
  width: 100%;
  max-width: none;
  padding: 20px;
  margin-bottom: 0;
  display: block;
  text-align: center;
  text-decoration: none;
  color: inherit;
  background: #fff;
  border: 1px solid var(--about-line);
  border-radius: 8px;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
  cursor: pointer;
  height: 100%;
}

.page-about-cert-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 28px rgba(0, 40, 100, 0.12);
  color: inherit;
}

.page-about-cert-thumb {
  height: 120px;
  margin-bottom: 14px;
  line-height: 120px;
  overflow: hidden;
  border-radius: 6px;
  background: #f4f6fb;
}

.page-about-cert-thumb img {
  max-width: 100%;
  max-height: 100%;
  vertical-align: middle;
  transition: transform 0.35s ease;
}

.page-about-cert-card:hover .page-about-cert-thumb img {
  transform: scale(1.05);
}

.page-about-cert-card h4 {
  margin: 0 0 8px;
  font-size: 15px;
  font-weight: 600;
  color: var(--about-text);
  line-height: 1.4;
}

.page-about-cert-zoom {
  font-size: 13px;
  color: var(--about-primary);
}

@media (max-width: 1199px) and (min-width: 768px) {
  .page-about-team,
  .page-about-eco,
  .page-about-certs {
    font-size: 12.8px;
  }

  .page-about-sixpos__row--3 .page-about-sixpos-card {
    width: 49%;
    margin-right: 2%;
  }

  .page-about-sixpos__row--3 .page-about-sixpos-card:nth-child(2n) {
    margin-right: 0;
  }
}

@media (max-width: 991px) {
  .page-about-hero h1 {
    font-size: 36px;
  }

  .page-about-hero__subtitle {
    font-size: 17px;
    letter-spacing: 3px;
  }

  .page-about-position__item {
    float: none;
    width: 100%;
  }

  .page-about-position__arr {
    display: none;
  }

  .page-about-media__fig {
    float: none;
    width: 100%;
    max-width: none;
    margin-right: 0;
    margin-bottom: 24px;
  }

  .page-about-qual-card {
    width: 50%;
  }

  .page-about-adv {
    margin: 0;
  }

  .page-about-adv__card {
    float: left;
    width: 50%;
    padding: 12px 16px 32px;
  }

  .page-about-eco-flow__col,
  .page-about-eco-flow__arr {
    float: none;
    width: 100%;
  }

  .page-about-eco-flow__arr {
    display: none;
  }

  .page-about-org__region {
    width: 50%;
  }

  .page-about-ib-box {
    margin-top: 32px;
    padding-top: 48px;
  }

  .page-about-ib-box::before {
    left: -10%;
    width: 45%;
    max-width: 200px;
  }

  .page-about-ib-box::after {
    width: 100%;
  }

  .page-about-ib-row {
    display: flex;
    flex-direction: column-reverse;
  }

  .page-about-ib-right,
  .page-about-ib-left {
    float: none;
    width: 100%;
    padding: 0;
  }

  .page-about-ib-left {
    margin-top: 24px;
  }

  .page-about-ib-right {
    margin-top: 28px;
  }

  .page-about-ib-right .page-about-team-showcase__title {
    margin-bottom: 28px;
    font-size: 22px;
  }

  .page-about-team-showcase__title {
    font-size: 22px;
  }

  .page-about-ib-title {
    margin-bottom: 36px;
  }

  .page-about-ib-title h2 {
    font-size: 28px;
  }

  .page-about-team .tag_box.flex {
    margin-top: 36px;
  }

  .page-about-team .tag_box.flex .tag_block {
    float: none;
    width: 100%;
    margin-right: 0 !important;
  }

  .page-about-team .tag_box.flex .tag_block:not(:last-child) {
    margin-bottom: 16px;
  }

  .page-about-team .tag_block .txt_box .name {
    font-size: 26px;
  }
}

@media (max-width: 767px) {
  .page-about-sixpos__row--3 .page-about-sixpos-card {
    float: none;
    width: 100%;
    margin-right: 0;
    margin-left: 0;
  }

  .page-about-map-pin--bj { top: 28%; left: 50%; }
  .page-about-map-pin--js { top: 50%; left: 58%; }
  .page-about-map-pin--gd { top: 70%; left: 52%; }
}

@media (max-width: 575px) {
  .page-about-intro {
    padding: 22px 18px;
    font-size: 15px;
  }

  .page-about-adv__card {
    float: none;
    width: 100%;
    padding-bottom: 28px;
  }

  .page-about-adv-wrap {
    padding: 28px 0 4px;
    border-radius: 8px;
  }

  .page-about-qual-card {
    width: 100%;
  }

  .page-about-team-showcase__title {
    font-size: 20px;
  }

  .page-about-ib-title h2 {
    font-size: 24px;
  }

  .page-about-org__region {
    width: 100%;
  }
}

/* =============================================================================
   加入我们 / 联系页（.page-join-*，与关于页视觉体系一致）
   ============================================================================= */
.page-join-hero.page-about-hero {
  min-height: 0;
  padding-bottom: 72px;
}

.page-join-hero .page-about-hero__subtitle {
  max-width: 36em;
  margin-left: auto;
  margin-right: auto;
}

.page-join-hero .page-join-hero__intro {
  max-width: 680px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 0;
}

.page-join-anchor-nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px 20px;
  margin: 0 auto 36px;
  max-width: 680px;
}

.page-join-anchor-nav a {
  display: inline-block;
  padding: 12px 28px;
  border: 1px solid rgba(255, 255, 255, 0.55);
  border-radius: 6px;
  color: #fff;
  font-size: 15px;
  text-decoration: none;
  transition: background 0.25s ease, border-color 0.25s ease;
}

.page-join-anchor-nav a:hover,
.page-join-anchor-nav a:focus {
  background: rgba(255, 255, 255, 0.14);
  border-color: rgba(255, 255, 255, 0.85);
  color: #fff;
  text-decoration: none;
}

.page-join-jobs {
  background: #f0f6ff;
}

.page-about-band.page-join-jobs,
.page-about-band.page-join-coop,
.page-about-band.page-join-contact-wrap {
  padding-top:75px;
  padding-bottom: 45px;
}

.page-join-jobs .value-present-intro,
.page-join-coop .value-present-intro,
.page-join-contact-wrap .value-present-intro {
  margin-bottom: 50px;
}

.page-join-jobs .value-present-subtitle,
.page-join-coop .value-present-subtitle {
  max-width: 58%;
  margin-left: auto;
  margin-right: auto;
  padding: 0 12px;
}

.page-join-job-grid {
  overflow: hidden;
}

.page-join-job-grid.page-about-cf {
  float: none;
  overflow: visible;
}

.page-join-job-grid.page-about-cf::after {
  content: "";
  display: table;
  clear: both;
}

.page-join-job-card {
  width: 100%;
  margin: 0 0 28px;
  padding: 30px 30px 28px;
  background: #fff;
  border: 1px solid rgba(0, 80, 190, 0.16);
  border-radius: 12px;
  box-shadow: 0 10px 36px rgba(52, 94, 184, 0.1);
  transition: transform 0.3s ease-out, box-shadow 0.3s ease-out;
}

.page-join-job-disclosure {
  margin: 0;
}

.page-join-job-summary {
  display: block;
  cursor: pointer;
}

.page-join-job-summary__title-row {
  line-height: 1.35;
  overflow: hidden;
  position: relative;
}

.page-join-job-summary__title-row h3 {
  float: left;
  width: 80%;
}

.page-join-job-summary__title-row .page-join-job-summary__chev {
  float: right;
}

.page-join-job-summary:focus-visible {
  outline: 2px solid var(--about-primary);
  outline-offset: 3px;
  border-radius: 4px;
}

.page-join-job-summary h3 {
  font-size: 20px;
  color: var(--about-text);
  line-height: 1.35;
}

.page-join-job-card__loc {
  margin: 12px 0 0;
  font-size: 16px;
  line-height: 1.5;
  color: #666;
}

.page-join-job-card__loc span {
  display: inline-block;
  min-width: 40px;
  margin-right: 8px;
  color: #94a3b8;
}

.page-join-job-summary__chev {
  width: 12px;
  height: 12px;
  margin-right: 12px;
  margin-top: 5px;
  border-right: 2px solid var(--about-primary);
  border-bottom: 2px solid var(--about-primary);
  transform: rotate(45deg);
  transition: transform 0.25s ease;
  opacity: 0.85;
}

.page-join-job-disclosure.is-open .page-join-job-summary__chev {
  transform: rotate(-135deg);
}

.page-join-job-panel {
  clear: both;
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid rgba(52, 94, 184, 0.12);
}

.page-join-job-panel[hidden] {
  display: none !important;
}

.page-join-job-panel:not([hidden]) {
  margin-top: 28px;
  padding-top: 28px;
  border-top: 1px solid rgba(52, 94, 184, 0.14);
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px 56px;
  align-items: start;
}

.page-join-job-apply {
  margin: 12px 0 0;
  font-size: 16px;
  line-height: 1.65;
  color: var(--about-muted);
}

.page-join-job-panel .page-join-job-apply {
  grid-column: 1 / -1;
}

.page-join-job-apply a {
  color: var(--about-primary);
}
.page-join-job-detail-block {
  margin-bottom: 0;
}
.page-join-job-detail-block:last-of-type {
  margin-bottom: 0;
}
.page-join-job-detail-block h4 {
  margin: 0 0 14px;
  font-size: 16px;
  color: var(--about-primary);
}
.page-join-job-detail-block ul {

  font-size: 16px;
  line-height: 32px;
  color: var(--about-muted);
}

.page-join-job-detail-block li {
  position: relative;
  padding-left: 18px;
}

.page-join-job-detail-block li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 10px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--about-primary);
  opacity: 0.9;
}

.page-join-job-detail-block li + li {
  margin-top: 8px;
}

.page-join-job-card:hover {
  transform: translateY(-3px);
  box-shadow: 0px 12px 28px rgba(52, 94, 184, 0.14);
}

.page-join-btn {
  display: inline-block;
  padding: 10px 22px;
  border-radius: 4px;
  font-size: 16px;
  transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}

.page-join-btn--primary {
  background: var(--about-primary);
  color: #fff;
  border: 2px solid var(--about-primary);
}

.page-join-btn--primary:hover,
.page-join-btn--primary:focus {
  background: #003d94;
  border-color: #003d94;
  color: #fff;
}

.page-join-btn--outline {
  background: #fff;
  color: var(--about-primary);
  border: 2px solid var(--about-primary);
}

.page-join-btn--outline:hover,
.page-join-btn--outline:focus {
  background: var(--about-primary);
  color: #fff;
}

.page-join-note {
  clear: both;
  margin: 8px auto 0;
  max-width: 800px;
  text-align: center;
  font-size: 14px;
  line-height: 1.7;
  color: #64748b;
}

.page-join-coop {
  /* background: #ecf1f5; */
  /* overflow-x: hidden; */
  background-image: url(../images/20240820023939_790829.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top;
}

/* 合作入口四卡：视觉对齐首页 .indexadvantagelist */
.page-join-coop-grid {
  overflow: hidden;
  margin-top: 49px;
}

.page-join-coop-grid.page-about-cf {
  margin-left: auto;
  margin-right: auto;
}

.page-join-coop-card {
  float: left;
  width: 23.75%;
  margin-right: 1.66%;
  margin-bottom: 0;
  padding: 45px 35px 30px;
  text-align: center;
  background: #fff;
  border-radius: 6px;
  box-shadow: 0 3px 10px rgba(2, 96, 208, 0.1);
  min-height: 340px;
  transition: background 0.3s ease, box-shadow 0.3s ease;
}

.page-join-coop-card:nth-child(4n) {
  margin-right: 0;
}

.page-join-coop-card__icon {
  display: block;
  margin: 0;
  line-height: 0;
}

.page-join-coop-card__icon img {
  display: block;
  width: 52px;
  height: auto;
  margin: 0 auto 30px;
}

.page-join-coop-card > h3 {
  margin: 0 0 20px;
  font-size: 20px;
  color: #333;
  text-align: center;
}

.page-join-coop-card > p {
  margin: 0 0 26px;
  min-height: 84px;
  font-size: 16px;
  line-height: 28px;
  color: #666;
  text-align: justify;
}

.page-join-coop-card .page-join-btn.page-join-btn--outline {
  display: inline-block;
  width: auto;
  max-width: none;
  margin: 0;
  padding: 0 15px;
  line-height: 35px;
  border: 1px solid #1a89fe;
  border-radius: 5px;
  font-size: 16px;
  color: #1a89fe;
  background: transparent;
  opacity: 0;
  transition: opacity 0.3s ease, background 0.25s ease, color 0.25s ease;
  cursor: pointer;
  text-decoration: none;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.page-join-coop-card:hover .page-join-btn.page-join-btn--outline,
.page-join-coop-card:focus-within .page-join-btn.page-join-btn--outline {
  opacity: 1;
}

.page-join-coop-card .page-join-btn.page-join-btn--outline:hover,
.page-join-coop-card .page-join-btn.page-join-btn--outline:focus {
  background: #117dff;
  color: #fff;
}

.page-join-coop-card:hover {
  background: #eff4ff;
}

/* 合作入口 · Logo 墙：Swiper 排版 + 脚本 rAF 连续平移（无缝循环） */
.page-join-service {
  position: relative;
  width: 100vw;
  max-width: 100vw;
  margin-top: 48px;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding: 32px 0 28px;
  overflow: hidden;
  text-align: center;
}

.page-join-service__logos,
.page-join-service__tip {
  position: relative;
}

.page-join-service__logos::before {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 10%;
  height: 100%;
  background: -webkit-linear-gradient(right, rgba(237, 237, 237, 0), #fbfcfd 100%);
  background: linear-gradient(to left, rgba(237, 237, 237, 0), #fbfcfd 100%);
  content: "";
  display: block;
  z-index: 2;
  pointer-events: none;
}
.page-join-service__logos::after {
  position: absolute;
  top: 0px;
  right: 0px;
  width: 10%;
  height: 100%;
  background: -webkit-linear-gradient(left, rgba(237, 237, 237, 0), #fbfcfd 100%);
  background: linear-gradient(to right, rgba(237, 237, 237, 0), #fbfcfd 100%);
  content: "";
  display: block;
  z-index: 2;
  pointer-events: none;
} 

.page-join-logo-swiper.swiper-container{
  overflow: hidden;
  margin-bottom: 40px;
}

.page-join-logo-swiper.swiper-container:last-child {
  margin-bottom: 0;
}

.page-join-logo-swiper .swiper-wrapper {
  align-items: center;
  transition-duration: 0ms !important;
  will-change: transform;
}

.page-join-logo-swiper .swiper-slide {
  width: auto;
}

.page-join-logo-swiper .swiper-slide img {
  display: block;
  height: 54px;
  width: auto;
  max-width: 350px;
  object-fit: contain;
  
}
.page-join-service__tip {
  margin-top: 40px;
  padding: 0 24px;
  font-size: 14px;
  line-height: 28px;
  color: #666;
}

.page-join-contact-wrap {
  
}

/* 加入我们页 · 联系方式（对齐 listbox + contact 版式） */
.page-join-contact-wrap .listbox {
  min-height: 480px;
  padding-bottom: 45px;
}

.page-join-contact-wrap .contact .contact-lead {
  position: relative;
  font-size: 36px;
  color: #333;
  text-align: center;
  margin: 0 0 54px;
  font-weight: 600;
  line-height: 1.3;
}

.page-join-contact-wrap .contactleft {
  float: left;
  width: 34.83%;
  background: url(../images/bg-contact.jpg) no-repeat center center;
  background-size: cover;
  padding: 42px 32px;
  min-height: 636px;
}

.page-join-contact-wrap .contactleft h2 {
  font-size: 24px;
  color: #fff;
  margin: 0 0 45px;
  font-weight: 600;
  line-height: 1.35;
}

.page-join-contact-wrap .contact-list {
  margin: 0 0 38px;
  padding: 0 0 26px;
  list-style: none;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.page-join-contact-wrap .contact-list li {
  background-position: left top 4px;
  font-size: 16px;
  color: #fff;
  line-height: 32px;
  padding-left: 40px;
  margin-bottom: 26px;
  background-size: 27px auto;
  background-repeat: no-repeat;
}

.page-join-contact-wrap .contact-list li:last-child {
  margin-bottom: 0;
}

.page-join-contact-wrap .contact-list a {
  color: #fff;
}

.page-join-contact-wrap .contact-list a:hover {
  text-decoration: none;
}

.page-join-contact-wrap .contactleft p {
  margin: 0;
  text-align: center;
  color: #fff;
  font-size: 16px;
  line-height: 1.5;
}

.page-join-contact-wrap .contactleft p img {
  display: inline-block;
  vertical-align: top;
  width: 80px;
  height: auto;
  margin-bottom: 8px;
}

.page-join-contact-wrap #map {
  float: right;
  width: 65.17%;
  height: 636px;
  background: #e8eef5;
}

.page-join-contact-wrap .contact .mapbox {
  padding: 5px 10px;
}

.page-join-contact-wrap .mapbox h2 {
  padding-left: 50px;
  font-size: 24px;
  color: #333;
  text-align: left;
  position: relative;
}

.page-join-contact-wrap .mapbox h2::before {
  width: 24px;
  height: 24px;
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -12px;
  background: url(../images/dw.png) no-repeat center;
  background-size: contain;
}

.page-join-contact-wrap .mapbox h2::after {
  position: absolute;
  content: "";
  height: 100%;
  width: 2px;
  top: 0;
  left: 35px;
  background: #1a89fe;
}
.page-join-contact-wrap .mapbox p {
  padding-left: 50px;
  font-size: 16px;
  color: #666;
  margin: 10px 0;
  line-height: 24px;
}

/* 课题研究：整卡单一链接，dt 内主图为直接子级 img */
.yjcg-list{
  background: #fff;
}
.yjcg-list ul li{padding-top: 2.5%; padding-bottom: 2.5%;}
.yjcg-list ul li > a{
  display: block;
  color: inherit;
  text-decoration: none;
}
.yjcg-list ul li dl dt{float: left; width: 25.65%; position: relative;}
.yjcg-list ul li dl dt > img{
  display: block; position: relative;
  z-index: 2; width: 65%;
  margin: 0 auto 4%;
}
.yjcg-list ul li dl dt .shadow{position: absolute; right: 0; bottom: 0; left: 0; height: 20%;}
.yjcg-list ul li dl dt .shadow img{display: block; width: 100%; height: 100%;}
.yjcg-list ul li dl dd{margin-left: 25.65%;}
.yjcg-list ul li dl dd .caption{
  color: #333; 
  transition: all .3s ease-in-out;
  -webkit-transition: all .3s ease-in-out;
  -moz-transition: all .3s ease-in-out;
  -ms-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
}
.yjcg-list ul li dl dd .caption span{
  display: inline-block; 
  font-size: 18px; font-weight: bold; 
  line-height: 28px;
}
.yjcg-list ul li dl dd .caption font{
  display: inline-block; font-size: 16px;line-height: 24px; 
}
.yjcg-list ul li dl dd .desc{
  margin-top: 40px; text-align: justify; line-height: 32px; 
  font-size:16px;color: #666;
}
.yjcg-list ul li dl dd .desc .elli-m{max-height: 8.5em; -webkit-line-clamp: 4;}
.yjcg-list ul li dl dd .more{
  margin-top: 40px;
  text-align: right;
  position: relative;
  transition: all .3s ease-in-out;
  -webkit-transition: all .3s ease-in-out;
  -moz-transition: all .3s ease-in-out;
  -ms-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
}
.yjcg-list ul li dl dd .more font{
  display: inline-block; vertical-align: top; line-height: 24px; margin-right: 10px;
  font-size: 16px;
  color: #333;

}
.yjcg-list ul li dl dd .more i{
  display: inline-block; vertical-align: top; 
  margin-right: 8px; content: ""; width: 50px; height: 24px;
  background: url(../images/more.png) no-repeat center right;
  position: relative;
  z-index: 1;
}
.yjcg-list ul li:hover > a .caption {
  color: #0050be;
}
.yjcg-list ul li:hover > a .more{margin-right: 10px;}
.yjcg-list ul li dl dd .more:after{
  position: absolute;
  top: 0;
  right: 0;
  z-index:0;
  content: "";
  width: 24px;
  height: 24px;
  background: #e5eaf5;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
}
@media (max-width:991px){
  .yjcg-list ul li{border-bottom: 1px solid #e6e6e6;}
  .yjcg-list ul li dl dd .desc .elli-m{max-height: 4.25em; -webkit-line-clamp: 2;}	
  .yjcg-list ul li dl dd .caption span{font-size: 1.375em;}
  .yjcg-list ul li dl dd .caption font{font-size: 1.0625em;}
}
@media (max-width:768px){
  .yjcg-list ul li{padding-top: 15px; padding-bottom: 15px;}	
  .yjcg-list ul li dl dd .desc{line-height: 1.875em;}
  .yjcg-list ul li dl dd .desc .elli-m{max-height: 3.75em;}
}
@media (max-width:640px){
  .yjcg-list ul li dl dd .desc{display: none;}
  .yjcg-list ul li dl dd .more{display: none;}		
  .yjcg-list ul li dl dd .caption span{display: block; font-size: 1.125em; line-height: 1.5em;}
  .yjcg-list ul li dl dd .caption font{display: block; font-size: 1em;}
}
@media (max-width:414px){
  .yjcg-list ul li{padding-bottom: 12px;}	
  .yjcg-list ul li dl dt .shadow{display: none;}
  .yjcg-list ul li dl dt > img{width: auto;}
  .yjcg-list ul li dl dd > div{margin-left: 15px;}
  .yjcg-list ul li dl dd .caption span{font-size: 1em; line-height: 1.625em;}
  .yjcg-list ul li dl dd .caption font{display: none;}
  .yjcg-list ul li dl dd .desc{display: block; font-size: .875em; line-height: 1.6em;}
  .yjcg-list ul li dl dd .desc .elli-m{max-height: 3.2em;}
}

/* 白皮书/报告下载列表 */
.bookContent {
  background: #fff;
  padding: 50px 0;
}
.bookLoopBao {
  overflow: hidden;
  zoom: 1;
}

.bookLoopBao > .bookLoop:nth-child(2n) {
  margin-right: 0;
}

.bookLoop {
  float: left;
  width: 48%;
  margin-right: 4%;
  margin-bottom: 50px;
  padding: 20px;
  border-radius: 5px;
  border: #f3f3f3 1px solid;
  background-color: #fafbfc;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.bookLoop:hover {
  border-color: #1a89fe;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.bookLoop > a {
  display: block;
  overflow: hidden;
}

.bookLoopCover {
  float: left;
  width: 28%;
  text-align: center;
  border: #f3f3f3 1px solid;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.bookLoopMain {
  float: right;
  width:68%;
  text-align: left;
  padding: 25px 0 0;
}

.bookLoopCover img {
  max-width: 100%;
  height: auto;
}
.bookLoopDownload {
  display: inline-block;
  font-size: 16px;
  color: #1a89fe;
  border-radius: 4px;
  border: 1px solid #1a89fe;
  padding: 6px 14px;
  background: #e0eeff;
  margin-top: 4px;
}

.bookLoop > a:hover .bookLoopDownload {
  color: #fff;
  background: #1a89fe;
}

@media (max-width: 767px) {
  .bookLoop {
    float: none;
    width: 100%;
    margin-right: 0;
  }

  .bookLoopCover {
    float: none;
    width: 100%;
    margin-right: 0;
    margin-bottom: 12px;
  }

  .bookLoopMain {
    overflow: visible;
  }
}

.bookTabLiActive {
  background: #3873d9;
  border:none;
  color: #fff;
}

.bookLoopTitle {
  font-weight: bold;
  font-size: 18px;
  color: #333;
  line-height: 30px;
  margin-bottom: 40px;
}

.bookLoopLable {
  /* margin-top: 10px; */
  margin-bottom: 20px;
}

.bookLoopLable span {
  border-radius: 4px;
  padding: 3px 6px;
  font-weight: 400;
  font-size: 13px;
  color: #999;
  background: #eef7ff;
  border: 1px solid #aed1ff;
  margin-right: 3px;
}
.bookLoopLable span>a{
  color: #3873D9;
}
.bookLoopName {
  font-weight: 400;
  font-size: 14px;
  color: #666;
  margin: 10px 0;
}

.bookLoopName label{
  display: inline-block;
  width: 100px;
  vertical-align: middle;
}
.bookLoopName img{
  width: 80px;
  margin-left: 0px;
}
.bookLoopBtn {
  margin-top: 15px;
}
.bookLoopBtn span>i {
  vertical-align: middle;
  width: 13px;
  height: 21px;
  -webkit-text-stroke: 0px white;
  font-size: 16px;
}
.witerArrow{
  display: none;
}
.bookLoopBtn a{
  display: inline-block;
  font-weight: 400;
  font-size: 13px;
  color: #3882d9;
  border-radius: 4px;
  border: 1px solid #3882d9;
  padding: 3px 6px;
  background: #e0eeff;
}
.bookLoopBtn span{
  vertical-align: top;
  display: inline-block;
}
.bookLoopBtn img{
  vertical-align: middle;
  margin-left: 5px;
}
.bookLoopBtn:hover a{
  color: #fff;
  background: #3882d9;
}
.bookLoopBtn:hover a>span>i {
  vertical-align: middle;
  width: 13px;
  height: 21px;
  -webkit-text-stroke: 0px #3882d9;
  font-size: 16px;
  color: #ffffff;
}
.buleArrow{
  display: block;
}
.bookLoopBtn:hover a .witerArrow{
  display: block;
}
.bookLoopBtn:hover a .buleArrow{
  display: none !important;
}
.bookBox{
  background-color: #fff;
}
.bookBox .bookContent>div{
  display: none;
}
.bookBox .bookContent>div.bookTabLiActive {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}


@media (max-width: 991px) {
  .page-join-job-card {
    width: 100%;
    float: none;
    margin-left: 0;
    margin-right: 0;
    padding: 26px 24px 24px;
  }

  .page-join-coop-grid {
    margin-top: 36px;
    margin-bottom: 48px;
  }

  .page-join-coop-card {
    width: calc((100% - 1.66%) / 2);
    margin-right: 1.66%;
    margin-bottom: 20px;
    min-height: 0;
    padding: 44px 22px 22px;
  }

  .page-join-coop-card:nth-child(4n) {
    margin-right: 1.66%;
  }

  .page-join-coop-card:nth-child(2n) {
    margin-right: 0;
  }

  .page-join-coop-card > p {
    min-height: 0;
  }

  .page-join-coop-card .page-join-btn.page-join-btn--outline {
    opacity: 1;
  }

  .page-join-contact-wrap .contactleft,
  .page-join-contact-wrap #map {
    float: none;
    width: 100%;
    min-height: 0;
  }

  .page-join-contact-wrap .contactleft {
    padding: 36px 24px;
  }

  .page-join-contact-wrap #map {
    height: 400px;
    margin-top: 0;
  }

  .page-join-contact-wrap .contact .contact-lead {
    font-size: 28px;
    margin-bottom: 36px;
  }
}

@media (max-width: 767px) {
  .page-join-job-panel:not([hidden]) {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .page-join-job-summary h3 {
    font-size: 20px;
  }
}

@media (max-width: 575px) {
  .page-join-anchor-nav {
    flex-direction: column;
    align-items: stretch;
    max-width: 280px;
  }

  .page-join-anchor-nav a {
    text-align: center;
  }

  .page-about-band.page-join-jobs,
  .page-about-band.page-join-coop,
  .page-about-band.page-join-contact-wrap {
    padding-top: 72px;
    padding-bottom: 80px;
  }

  .page-join-job-card {
    padding: 22px 18px 20px;
  }

  .page-join-coop-card {
    width: 100%;
    float: none;
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 16px;
    min-height: 0;
    padding: 40px 20px 22px;
  }

  .page-join-coop-card:nth-child(4n),
  .page-join-coop-card:nth-child(2n) {
    margin-right: 0;
  }

  .page-join-service {
    margin-top: 36px;
    padding: 24px 0 24px;
  }

  .page-join-contact-wrap .contact .contact-lead {
    font-size: 22px;
    margin-bottom: 28px;
  }

  .page-join-contact-wrap .contactleft {
    padding: 28px 18px;
  }

  .page-join-contact-wrap #map {
    height: 280px;
  }
}

/* ========== 中国城市政府治理与公共服务指数（CGI）专页 ========== */
/* 配色、字体系列：:root 中「关于胥瓷」主题变量（--about-*）及 body 继承一致；布局：标准文档流 + 浮动分栏，不使用 flex */

.cgi-page-root {
  scroll-behavior: smooth;
}

/* 首屏 Banner：与内容区统一的标题字族与主色气质 */
.cgi-page-root .page-news-banner .container {
  text-align: center;
}

.cgi-page-root .page-news-banner__title {
  font-size: 32px;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.08em;
}

.cgi-page-root .page-news-banner__sub {
  font-size: 14px;
  line-height: 1.8;
  font-weight: 400;
}

.cgi-index-page {
  padding: 36px 0 56px;
  background: linear-gradient(180deg, #ffffff 0%, #f0f4ff 100%);
}

.cgi-index-page .cgi-section,
.cgi-index-page .cgi-block {
  scroll-margin-top: 88px;
}

.cgi-index-page .value-present-intro,
.cgi-conf-module .value-present-intro,
.xcabout-page .value-present-intro,
.recruit-page .value-present-intro {
  margin-bottom: 32px;
  text-align: center;
}

.cgi-index-page .value-present-title,
.cgi-conf-module .value-present-title,
.xcabout-page .value-present-title,
.recruit-page .value-present-title {
  position: relative;
  display: inline-block;
  margin: 0;
  padding: 0 40px;
  font-size: 36px;
  color: #1a2b4a;
  line-height: 1.35;
}

.cgi-index-page .value-present-title::before,
.cgi-index-page .value-present-title::after,
.cgi-conf-module .value-present-title::before,
.cgi-conf-module .value-present-title::after,
.xcabout-page .value-present-title::before,
.xcabout-page .value-present-title::after,
.recruit-page .value-present-title::before,
.recruit-page .value-present-title::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 24px;
  height: 12px;
  margin-top: -6px;
  background-repeat: no-repeat;
  pointer-events: none;
}

.cgi-index-page .value-present-title::before,
.cgi-conf-module .value-present-title::before,
.xcabout-page .value-present-title::before,
.recruit-page .value-present-title::before {
  left: 0;
  background-image:
    radial-gradient(circle closest-side, #1a89fe 100%, transparent 100%),
    radial-gradient(circle closest-side, #1a89fe 100%, transparent 100%);
  background-size: 10px 10px, 5px 5px;
  background-position: right center, right 14px center;
}

.cgi-index-page .value-present-title::after,
.cgi-conf-module .value-present-title::after,
.xcabout-page .value-present-title::after,
.recruit-page .value-present-title::after {
  right: 0;
  background-image:
    radial-gradient(circle closest-side, #1a89fe 100%, transparent 100%),
    radial-gradient(circle closest-side, #1a89fe 100%, transparent 100%);
  background-size: 10px 10px, 5px 5px;
  background-position: left center, left 14px center;
}

.cgi-index-page .value-present-subtitle,
.cgi-conf-module .value-present-subtitle,
.xcabout-page .value-present-subtitle {
  margin-top: 14px;
  font-size: 16px;
  line-height: 26px;
  color: #666;
}

.cgi-section {
  margin-top: 60px;
}

@keyframes cgiBlockIn {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.cgi-section--intro {
  margin-top: 12px;
  opacity: 0;
  transform: translateY(18px);
  animation: cgiBlockIn 0.55s cubic-bezier(0.22, 1, 0.36, 1) 0.02s forwards;
}

/* 指数简介整块通栏模块：简介 + 目标价值 + 研发历程 */
.cgi-intro-module {
  position: relative;
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding: 44px 0 48px;
  background: linear-gradient(180deg, #f3f7fc 0%, #f8fbfe 38%, #eef4fb 100%);
  border-top: 1px solid rgba(0, 80, 190, 0.08);
  border-bottom: 1px solid rgba(0, 80, 190, 0.08);
  overflow: hidden;
}

.cgi-intro-module > .container {
  position: relative;
  z-index: 1;
}

/* 指数简介：左图右文，浮动分栏（无 flex）；右侧为正文段落 */
.cgi-intro-split {
 
}
.cgi-intro-split__media {
  float: left;
  width: 43%;
}
.cgi-intro-split__media img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 10px;
  box-shadow: 0 10px 32px rgba(0, 80, 190, 0.09);
}

/* 指数简介左侧图片轮播（淡入淡出） */
.cgi-intro-media-swiper {
  position: relative;
  overflow: hidden;
  border-radius: 10px;
  box-shadow: 0 10px 32px rgba(0, 80, 190, 0.09);
}

.cgi-intro-media-swiper .swiper-slide {
  opacity: 0 !important;
  transition-property: opacity !important;
}

.cgi-intro-media-swiper .swiper-slide-active {
  opacity: 1 !important;
}

.cgi-intro-media-swiper .swiper-slide img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 0;
  box-shadow: none;
}

.cgi-intro-media-pagination {
  bottom: 12px !important;
}

.cgi-intro-media-pagination .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  background: rgba(255, 255, 255, 0.7);
  opacity: 1;
}

.cgi-intro-media-pagination .swiper-pagination-bullet-active {
  background: #1a89fe;
}

.cgi-intro-split__body {
  float: right;
  width: 54%;
}

.cgi-intro-split__body p {
  font-size: 16px;
  line-height: 32px;
  color: #333;
  text-align: justify;
}

.cgi-intro-more {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 22px;
  padding: 0;
  font-size: 16px;
  line-height: 1;
  font-weight: 400;
  color: #333;
  text-decoration: none;
  border: none;
  border-radius: 0;
  background: none;
  box-shadow: none;
  overflow: visible;
  isolation: auto;
  transition: color 0.3s ease;
}

.cgi-intro-more::after {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  background: url(../images/icon-arrow-black.png) center / 16px auto no-repeat;
  transition: transform 0.3s cubic-bezier(0.22, 1, 0.36, 1), background-image 0.3s ease;
}

.cgi-intro-more__text {
  position: relative;
  z-index: 1;
  font-size: 16px;
  font-weight: 400;
}

.cgi-intro-more__arrow {
  display: none;
}

.cgi-intro-more:hover,
.cgi-intro-more:focus-visible {
  color: #0050be;
  text-decoration: none;
  border: none;
  background: none;
  box-shadow: none;
  transform: none;
}

.cgi-intro-more:hover::after,
.cgi-intro-more:focus-visible::after {
  background-image: url(../images/icon-arrow.png);
  transform: translateX(4px);
}

.cgi-intro-more:active {
  transform: none;
  box-shadow: none;
}

@keyframes cgiIntroMoreIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.cgi-intro-more {
  animation: cgiIntroMoreIn 0.55s cubic-bezier(0.22, 1, 0.36, 1) 0.35s both;
}

@media (prefers-reduced-motion: reduce) {
  .cgi-intro-more,
  .cgi-intro-more::after {
    animation: none;
    transition: none;
  }

  .cgi-intro-more:hover::after,
  .cgi-intro-more:focus-visible::after {
    transform: none;
  }
}

/* 简介内容区：不再单独加底和边框 */
.cgi-intro-shell {
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  box-shadow: none;
}

.cgi-intro-shell .cgi-intro-split {
  margin-top: 0;
}

/* 「指数意义」通栏，与简介上下排列 */
.cgi-significance-wrap {
  margin-top:65px;
}

/* ========== 指数意义（HTML 版式） ========== */
.cgi-significance {
  position: relative;
  padding: 0;
  background: none;
  border-radius: 0;
  border: none;
  overflow: visible;
}

.cgi-significance::before,
.cgi-significance::after {
  display: none;
}

.cgi-significance__title {
  font-size: 24px;
  color: var(--about-primary);
  line-height: 1.35;
  margin: 0 0 25px;
}

.cgi-significance__cols {
  position: relative;
  z-index: 1;
  padding-top: 15px;
}
.cgi-significance__col {
  position: relative;
  z-index: 1;
  float: left;
  width: 33.333333%;
  padding: 0 8px;
}
.cgi-significance__card {
  position: relative;
  padding: 25px;
  background: rgba(255, 255, 255, 0.96);
  border-radius: 10px;
  border: 1px solid rgba(0, 80, 190, 0.1);
  box-shadow: 0 4px 18px rgba(0, 80, 190, 0.07);
}
.cgi-significance__icon {
  width: 56px;
  height: 56px;
  margin: 0 auto;
  border-radius: 50%;
  background: linear-gradient(145deg, var(--about-primary-light) 0%, #0050be 100%);
  color: #fff;
  text-align: center;
  padding: 12px;
  box-shadow: 0 4px 12px rgba(0, 80, 190, 0.25);
}

.cgi-significance__icon img {
  display: block;
  width: 100%;
  height: auto;
}
.cgi-significance__card-title {
  margin:18px 0 10px;
  font-size: 18px;
  color:#333;
  line-height:28px;
  text-align: center;
}

.cgi-significance__text {
  font-size: 16px;
  line-height: 28px;
  color: #666;
  min-height: 84px;
  text-align: justify;
}

/* ========== 指数研发历程（图2时间轴轮播） ========== */
.cgi-history-wrap {
  margin-top: 65px;
}

.cgi-history-wrap .value-present-intro {
  /* margin-bottom: 28px; */
}

.cgi-history-panel {
  position: relative;
  margin-top: 45px;
}

.cgi-history-swiper-wrap {
  position: relative;
  padding: 0 72px 8px;
}

.cgi-history-swiper {
  overflow: hidden;
  padding-top: 4px;
  padding-bottom: 8px;
}

.cgi-history-item {
  position: relative;
  height: 100%;
}

.cgi-history-year {
  text-align: center;
  font-size: 22px;
  font-weight: 400;
  color: #1a89fe;
  line-height: 1.2;
  margin-bottom: 14px;
}

.cgi-history-axis {
  position: relative;
  height: 18px;
  margin-bottom: 18px;
}

.cgi-history-axis::before {
  content: "";
  position: absolute;
  left: -14px;
  right: -14px;
  top: 50%;
  height: 2px;
  margin-top: -1px;
  background: #1a89fe;
  z-index: 1;
}

.cgi-history-dot {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 12px;
  height: 12px;
  margin: -6px 0 0 -6px;
  background: #1a89fe;
  border-radius: 50%;
  box-shadow: 0 0 0 4px rgba(26, 137, 254, 0.18);
  z-index: 2;
}

.cgi-history-card {
  background: #fff;
  border: 1px solid rgba(0, 80, 190, 0.1);
  border-radius: 12px;
  box-shadow: 0 6px 22px rgba(0, 80, 190, 0.07);
  overflow: hidden;
  padding-bottom: 16px;
  min-height: 360px;
}

.cgi-history-card__img {
  overflow: hidden;
  border-radius: 12px 12px 0 0;
  background: #eef3f9;
  line-height: 0;
}

.cgi-history-card__img img {
  display: block;
  width: 100%;
  height: 148px;
  object-fit: cover;
}

.cgi-history-card__title {
  margin: 14px 14px 8px;
  font-size: 16px;
  font-weight: 700;
  color: #1a2b4a;
  line-height: 24px;
}

.cgi-history-card__text {
  margin: 0 14px;
  font-size: 16px;
  line-height:28px;
  color: #333;
  text-align: justify;
}

.cgi-history-card__list {
  margin: 14px 14px 0;
  padding: 0;
  list-style: none;
}

.cgi-history-card__list li {
  position: relative;
  padding-left: 18px;
  font-size: 16px;
  line-height: 28px;
  color: #333;
  text-align: justify;
}

.cgi-history-card__list li:last-child {
  margin-bottom: 0;
}

.cgi-history-card__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 11px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #1a89fe;
}

.cgi-history-swiper-wrap .cgi-history-prev,
.cgi-history-swiper-wrap .cgi-history-next {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  margin-top: 0;
  top: 53px;
  transform: translateY(-50%);
  background: #fff;
  border: 1px solid rgba(26, 137, 254, 0.35);
  border-radius: 50%;
  box-shadow: 0 6px 20px rgba(0, 80, 190, 0.16);
  outline: none;
  z-index: 8;
  opacity: 1;
  pointer-events: auto;
  cursor: pointer;
}

.cgi-history-swiper-wrap .cgi-history-prev:hover,
.cgi-history-swiper-wrap .cgi-history-next:hover {
  background: #1a89fe;
  border-color: #1a89fe;
  transform: translateY(-50%);
}

.cgi-history-swiper-wrap .cgi-history-prev:after,
.cgi-history-swiper-wrap .cgi-history-next:after {
  font-size: 22px;
  font-weight: 700;
  color: #1a89fe;
}

.cgi-history-swiper-wrap .cgi-history-prev:hover:after,
.cgi-history-swiper-wrap .cgi-history-next:hover:after {
  color: #fff;
}

.cgi-history-swiper-wrap .cgi-history-prev {
  left: 0;
}

.cgi-history-swiper-wrap .cgi-history-next {
  right: 0;
}

.cgi-history-swiper-wrap .cgi-history-prev.swiper-button-disabled,
.cgi-history-swiper-wrap .cgi-history-next.swiper-button-disabled {
  opacity: 0.45;
  pointer-events: none;
}

@media (max-width: 767px) {
  .cgi-significance__col {
    float: none;
    width: 100%;
    margin-bottom: 14px;
  }

  .cgi-significance__col:last-child {
    margin-bottom: 0;
  }

  .cgi-significance-wrap {
    margin-top: 22px;
  }

  .cgi-intro-module {
    padding: 28px 0 32px;
  }

  .cgi-intro-shell {
    padding: 0;
  }

  .cgi-index-page .value-present-title,
  .cgi-conf-module .value-present-title,
  .xcabout-page .value-present-title,
  .recruit-page .value-present-title {
    font-size: 24px;
    padding: 0 22px;
  }

  .cgi-index-page .value-present-title::before,
  .cgi-index-page .value-present-title::after,
  .cgi-conf-module .value-present-title::before,
  .cgi-conf-module .value-present-title::after,
  .xcabout-page .value-present-title::before,
  .xcabout-page .value-present-title::after,
  .recruit-page .value-present-title::before,
  .recruit-page .value-present-title::after {
    width: 18px;
  }

  .cgi-index-page .value-present-title::before,
  .cgi-conf-module .value-present-title::before,
  .xcabout-page .value-present-title::before,
  .recruit-page .value-present-title::before {
    background-size: 8px 8px, 4px 4px;
    background-position: right center, right 11px center;
  }

  .cgi-index-page .value-present-title::after,
  .cgi-conf-module .value-present-title::after,
  .xcabout-page .value-present-title::after,
  .recruit-page .value-present-title::after {
    background-size: 8px 8px, 4px 4px;
    background-position: left center, left 11px center;
  }

  .cgi-history-wrap {
    margin-top: 32px;
  }

  .cgi-history-swiper-wrap {
    padding: 0 52px 4px;
  }

  .cgi-history-year {
    font-size: 18px;
    margin-bottom: 10px;
  }

  .cgi-history-card {
    min-height: 0;
  }

  .cgi-history-card__img img {
    height: 120px;
  }

  .cgi-history-swiper-wrap .cgi-history-prev,
  .cgi-history-swiper-wrap .cgi-history-next {
    width: 44px;
    height: 44px;
    top: 44px;
  }

  .cgi-history-swiper-wrap .cgi-history-prev:after,
  .cgi-history-swiper-wrap .cgi-history-next:after {
    font-size: 18px;
  }
}

.cgi-block {
  margin-top: 35px;
  padding: 35px 30px;
  background: rgba(255, 255, 255, 0.96);
  border-radius: 10px;
  border: 1px solid rgba(0, 80, 190, 0.14);
  box-shadow: 0 8px 32px rgba(0, 80, 190, 0.07);
}

/* 历届发布会：通栏模块 + 时间轴切换（对齐视觉稿） */
.cgi-conf-module {
  position: relative;
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  margin-top: 0;
  padding: 48px 0 64px;
  background: #fff;
  border-top: 1px solid rgba(0, 80, 190, 0.06);
}

.cgi-conf-module > .container {
  position: relative;
  z-index: 1;
}

.cgi-conf-switch {
  margin-top: 36px;
}

/* 左侧：垂直时间轴（气泡激活态） */
.cgi-conf-nav {
  float: left;
  width: 14%;
  padding: 4px 0;
  position: relative;
}

.cgi-conf-nav::before {
  content: "";
  position: absolute;
  left: 7px;
  top: 18px;
  bottom: 18px;
  width: 2px;
  background: #e5e8ef;
}

.cgi-conf-nav__item {
  display: block;
  width: 100%;
  margin: 0 0 28px;
  padding: 0;
  border: none;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  cursor: pointer;
  position: relative;
  z-index: 1;
  text-align: left;
  min-height: 36px;
  transition: none;
  -webkit-user-select: none;
  user-select: none;
}

.cgi-conf-nav__item:last-child {
  margin-bottom: 0;
}

.cgi-conf-nav__dot {
  position: absolute;
  left: 3px;
  top: 50%;
  width: 10px;
  height: 10px;
  margin-top: -5px;
  border-radius: 50%;
  border: 2px solid #cfd5df;
  background: #fff;
  box-sizing: border-box;
  transition: width 0.28s ease, height 0.28s ease, left 0.28s ease, margin-top 0.28s ease, border-color 0.28s ease, background 0.28s ease, box-shadow 0.28s ease, transform 0.28s ease;
}

.cgi-conf-nav__item.is-active .cgi-conf-nav__dot {
  left: 0;
  width: 16px;
  height: 16px;
  margin-top: -8px;
  border-color: #1a89fe;
  background: #1a89fe;
  box-shadow: 0 0 0 4px rgba(26, 137, 254, 0.18);
  z-index: 2;
  animation: cgiConfDotCore 1.8s ease-in-out infinite;
}

.cgi-conf-nav__item.is-active::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 16px;
  height: 16px;
  margin-top: -8px;
  border-radius: 50%;
  border: 2px solid #1a89fe;
  box-sizing: border-box;
  transform: scale(1);
  animation: cgiConfDotRipple 1.8s ease-out infinite;
  pointer-events: none;
  z-index: 0;
}

.cgi-conf-nav__label {
  display: inline-block;
  margin-left: 28px;
  padding: 0;
  font-size: 18px;
  line-height: 36px;
  color: #333;
  white-space: nowrap;
  border-radius: 3px;
  position: relative;
  transition: color 0.28s ease, background 0.28s ease, padding 0.28s ease, box-shadow 0.28s ease, transform 0.28s ease;
}

.cgi-conf-nav__item:not(.is-active):hover .cgi-conf-nav__dot {
  border-color: #1a89fe;
}

.cgi-conf-nav__item:not(.is-active):hover .cgi-conf-nav__label {
  color: #1a89fe;
}

.cgi-conf-nav__item.is-active .cgi-conf-nav__label {
  color: #fff;
  background: #1a89fe;
  padding: 0 15px;
  box-shadow: 0 4px 12px rgba(26, 137, 254, 0.28);
}

.cgi-conf-nav__item.is-active .cgi-conf-nav__label::before {
  content: "";
  position: absolute;
  left: -6px;
  top: 50%;
  width: 0;
  height: 0;
  margin-top: -6px;
  border-style: solid;
  border-width: 6px 6px 6px 0;
  border-color: transparent #1a89fe transparent transparent;
}

.cgi-conf-nav__item.is-activating .cgi-conf-nav__dot {
  animation: cgiConfDotPulse 0.45s ease;
}

.cgi-conf-nav__item.is-activating .cgi-conf-nav__label {
  animation: cgiConfLabelPop 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes cgiConfDotPulse {
  0% {
    transform: scale(0.72);
  }
  55% {
    transform: scale(1.18);
  }
  100% {
    transform: scale(1);
  }
}

@keyframes cgiConfLabelPop {
  0% {
    opacity: 0.35;
    transform: translateX(-8px) scale(0.92);
  }
  60% {
    opacity: 1;
    transform: translateX(2px) scale(1.04);
  }
  100% {
    opacity: 1;
    transform: translateX(0) scale(1);
  }
}

@keyframes cgiConfDotRipple {
  0% {
    transform: scale(1);
    opacity: 0.7;
  }
  70% {
    transform: scale(2);
    opacity: 0;
  }
  100% {
    transform: scale(2);
    opacity: 0;
  }
}

@keyframes cgiConfDotCore {
  0%,
  100% {
    transform: scale(1);
  }
  50% {
    transform: scale(0.92);
  }
}

@media (prefers-reduced-motion: reduce) {
  .cgi-conf-nav__item.is-active .cgi-conf-nav__dot,
  .cgi-conf-nav__item.is-active::before,
  .cgi-conf-nav__item.is-activating .cgi-conf-nav__dot,
  .cgi-conf-nav__item.is-activating .cgi-conf-nav__label {
    animation: none;
  }

  .cgi-conf-nav__item.is-active::before {
    opacity: 0.35;
    transform: scale(1.4);
  }
}

.cgi-conf-panels {
  float: right;
  width: 84%;
}

.cgi-conf-head__title {
  margin: 0 0 24px;
  padding-left: 42px;
  font-size: 24px;
  line-height: 36px;
  color: #0050be;
  background-image: url(../images/icon-theme.png);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 36px auto;
}

.cgi-conf-panels .cgi-conf {
  display: none;
}

.cgi-conf-panels .cgi-conf[hidden] {
  display: none !important;
}

.cgi-conf-panels .cgi-conf.is-active {
  display: block;
}

.cgi-conf-panels .cgi-conf.is-entering {
  animation: cgiConfPanelIn 0.42s cubic-bezier(0.22, 1, 0.36, 1) both;
}

@keyframes cgiConfPanelIn {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* 右侧：主题横幅 */
.cgi-conf-hero {
  margin-bottom: 28px;
  border-radius: 6px;
  overflow: hidden;
  line-height: 0;
  box-shadow: 0 4px 20px rgba(0, 64, 152, 0.08);
  transition: box-shadow 0.35s ease, transform 0.35s ease;
}

.cgi-conf-hero:hover {
  box-shadow: 0 10px 28px rgba(0, 64, 152, 0.14);
  transform: translateY(-2px);
}

.cgi-conf-hero img {
  display: block;
  width: 100%;
  height: auto;
}

/* 右侧：各模块 */
.cgi-conf-sec {
  margin-top: 32px;
}

.cgi-conf-hero + .cgi-conf-sec {
  margin-top: 0;
}

.cgi-conf-sec__title {
  margin: 0 0 24px;
  padding-left: 36px;
  font-size: 18px;
  line-height: 36px;
  color: #0050be;
  background-image: url(../images/icon-picture.png);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 26px auto;
}

.cgi-conf-swiper-wrap {
  position: relative;
}

.cgi-conf-swiper-wrap__empty {
  display: none;
  padding: 28px 16px 36px;
  text-align: center;
}

.cgi-conf-swiper-wrap.is-empty .cgi-conf-swiper-wrap__empty {
  display: block;
}

.cgi-conf-swiper-wrap.is-empty .cgi-conf-swiper {
  display: none;
}

.cgi-conf-swiper-wrap__empty-img {
  display: block;
  width: 190px;
  max-width: 62%;
  height: auto;
  margin: 0 auto;
}

.cgi-conf-swiper-wrap__empty-text {
  margin: 18px 0 0;
  color: #666;
  font-size: 16px;
  line-height: 1.6;
}

.cgi-conf-swiper {
  overflow: hidden;
}

.cgi-conf-swiper .swiper-slide .cgi-conf-figure {
  margin: 0;
  height: 100%;
}

.cgi-conf-figure__frame {
  display: block;
  overflow: hidden;
  border-radius: 4px;
  background: #f0f4f8;
  border: 1px solid rgba(0, 80, 190, 0.08);
  line-height: 0;
  position: relative;
  transition: box-shadow 0.3s ease, transform 0.3s ease, border-color 0.3s ease;
}

.cgi-conf-swiper .swiper-slide:hover .cgi-conf-figure__frame {
  border-color: rgba(26, 137, 254, 0.35);
  box-shadow: 0 8px 22px rgba(0, 80, 190, 0.12);
  transform: translateY(-3px);
}

.cgi-conf-swiper .swiper-slide img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
  transition: transform 0.45s ease;
}

.cgi-conf-swiper .swiper-slide:hover img {
  transform: scale(1.05);
}

.cgi-conf-figure__cap {
  margin: 10px 0 0;
  font-size: 13px;
  line-height: 20px;
  text-align: center;
  color: #333;
  transition: color 0.25s ease;
}

.cgi-conf-swiper .swiper-slide:hover .cgi-conf-figure__cap {
  color: #1a89fe;
}

.cgi-conf-swiper .swiper-pagination {
  display: none;
  position: relative;
  margin-top: 14px;
  bottom: 0 !important;
}

.cgi-conf-swiper .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  background: #d0d7e2;
  opacity: 1;
  margin: 0 4px !important;
  transition: transform 0.2s ease, background 0.2s ease;
}

.cgi-conf-swiper .swiper-pagination-bullet-active {
  background: #1a89fe;
  transform: scale(1.2);
}

.cgi-conf-swiper-wrap .cgi-conf-prev,
.cgi-conf-swiper-wrap .cgi-conf-next {
  width: 32px;
  height: 32px;
  margin-top: 0;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(255, 255, 255, 0.95);
  border: 1px solid rgba(26, 137, 254, 0.2);
  border-radius: 50%;
  box-shadow: 0 2px 10px rgba(0, 80, 190, 0.1);
  z-index: 5;
  transition: background 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}


.cgi-conf-swiper-wrap .cgi-conf-prev {
  left: 0;
}

.cgi-conf-swiper-wrap .cgi-conf-next {
  right: 0;
}


/* 发布会现场：高度一致、宽度随图，无左右留白；箭头在下方 */
.cgi-conf-swiper-wrap--scene {
  padding-left: 0;
  padding-right: 0;
  text-align: center;
}

.cgi-conf-swiper-wrap--scene .cgi-conf-swiper {
  text-align: left;
  margin-bottom: 12px;
}

.cgi-conf-swiper-wrap--scene .swiper-slide {
  width: auto;
}

.cgi-conf-swiper-wrap--scene .cgi-conf-figure {
  width: auto;
  height: auto;
}

.cgi-conf-swiper-wrap--scene .cgi-conf-figure__frame {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  background: transparent;
}

.cgi-conf-swiper-wrap--scene .cgi-conf-swiper .swiper-slide .cgi-conf-figure__frame img {
  width: auto;
  max-width: 100%;
  height: 260px;
  object-fit: contain;
}

.cgi-conf-swiper-wrap--scene .cgi-conf-figure__cap {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0;
  padding: 28px 14px 12px;
  font-size: 16px;
  line-height: 28px;
  text-align: left;
  color: #fff;
  background: linear-gradient(180deg, rgba(8, 24, 48, 0) 0%, rgba(8, 24, 48, 0.78) 100%);
  transition: padding 0.3s ease, background 0.3s ease;
}

.cgi-conf-swiper-wrap--scene .swiper-slide:hover .cgi-conf-figure__cap {
  color: #fff;
  padding-bottom: 16px;
}

.cgi-conf-swiper-wrap--scene .cgi-conf-prev,
.cgi-conf-swiper-wrap--scene .cgi-conf-next {
  position: static;
  display: inline-block;
  top: auto;
  left: auto;
  right: auto;
  width: 28px;
  height: 28px;
  margin: 16px 12px 0;
  vertical-align: middle;
  transform: none;
  border: none;
  border-radius: 0;
  box-shadow: none;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  opacity: 1;
  transition: transform 0.25s ease, opacity 0.25s ease;
}

.cgi-conf-swiper-wrap--scene .cgi-conf-prev,
.cgi-conf-swiper-wrap--scene .cgi-conf-prev:hover,
.cgi-conf-swiper-wrap--scene .cgi-conf-prev:focus {
  background: transparent url(../images/arrow-left-blue.png) no-repeat center / contain;
  border: none;
  box-shadow: none;
}

.cgi-conf-swiper-wrap--scene .cgi-conf-next,
.cgi-conf-swiper-wrap--scene .cgi-conf-next:hover,
.cgi-conf-swiper-wrap--scene .cgi-conf-next:focus {
  background: transparent url(../images/arrow-right-blue.png) no-repeat center / contain;
  border: none;
  box-shadow: none;
}

.cgi-conf-swiper-wrap--scene .cgi-conf-prev:after,
.cgi-conf-swiper-wrap--scene .cgi-conf-next:after {
  display: none;
  content: none;
}

.cgi-conf-swiper-wrap--scene .cgi-conf-prev:hover,
.cgi-conf-swiper-wrap--scene .cgi-conf-prev:focus {
  transform: translateX(-3px);
  opacity: 1;
}

.cgi-conf-swiper-wrap--scene .cgi-conf-next:hover,
.cgi-conf-swiper-wrap--scene .cgi-conf-next:focus {
  transform: translateX(3px);
  opacity: 1;
}

.cgi-conf-swiper-wrap--scene .cgi-conf-prev.swiper-button-disabled,
.cgi-conf-swiper-wrap--scene .cgi-conf-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: default;
  pointer-events: none;
}

.cgi-conf-swiper-wrap--scene .cgi-conf-prev.swiper-button-disabled:hover,
.cgi-conf-swiper-wrap--scene .cgi-conf-next.swiper-button-disabled:hover {
  transform: none;
}

.cgi-conf-swiper-wrap--scene .swiper-pagination {
  display: none;
}

/* 媒体报道：三列 + 标题；无左右留白；矩形箭头 */
.cgi-conf-swiper-wrap--media {
  padding-left: 0;
  padding-right: 0;
}

.cgi-conf-swiper-wrap--media .cgi-conf-figure__frame {
  height: 240px;
}

.cgi-conf-swiper-wrap--media .cgi-conf-figure__frame img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
}

.cgi-conf-swiper-wrap--media .cgi-conf-figure__cap {
  margin-top: 10px;
  font-size: 16px;
  line-height: 28px;
}

.cgi-conf-swiper-wrap--media .cgi-conf-prev,
.cgi-conf-swiper-wrap--media .cgi-conf-next {
  width: 28px;
  height: 48px;
  margin-top: 0;
  top: 40%;
  border-radius: 4px;
  box-shadow: 0 2px 10px rgba(0, 80, 190, 0.08);
  background-color: rgba(255, 255, 255, .85);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 24px auto;
  transition: background 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}

.cgi-conf-swiper-wrap--media .cgi-conf-prev{
  left: 0;
  background-image: url(../images/arrow-hl.png);
}

.cgi-conf-swiper-wrap--media .cgi-conf-next{
  right: 0;
  background-image: url(../images/arrow-hr.png);
}

.cgi-conf-swiper-wrap--media .cgi-conf-prev:after,
.cgi-conf-swiper-wrap--media .cgi-conf-next:after {
  display: none;
  content: none;
}

.cgi-conf-swiper-wrap--media .cgi-conf-prev:hover {
  background-image: url(../images/arrow-hl-r.png);
  background-color: #1a89fe;
  box-shadow: 0 6px 16px rgba(26, 137, 254, 0.28);
}

.cgi-conf-swiper-wrap--media .cgi-conf-next:hover {
  background-image: url(../images/arrow-hr-r.png);
  background-color: #1a89fe;
  box-shadow: 0 6px 16px rgba(26, 137, 254, 0.28);
}

.cgi-conf-swiper-wrap--media .cgi-conf-prev.swiper-button-disabled,
.cgi-conf-swiper-wrap--media .cgi-conf-next.swiper-button-disabled {
  opacity: 0.4;
  cursor: default;
  pointer-events: none;
}

.cgi-conf-swiper-wrap--media .swiper-pagination {
  display: none;
}


/* 发布成果：高度一致、窄高竖版；信息少也不拉伸 */
.cgi-conf-swiper-wrap--outcome {
  --cgi-outcome-h: 260px;
  --cgi-outcome-max-w: 195px;
  padding-left: 0;
  padding-right: 0;
  text-align: center;
}

.cgi-conf-swiper-wrap--outcome .cgi-conf-swiper {
  text-align: left;
  margin-bottom: 12px;
}

.cgi-conf-swiper-wrap--outcome .swiper-slide {
  width: auto !important;
  flex-shrink: 0;
  height: auto;
}

.cgi-conf-swiper-wrap--outcome .cgi-conf-swiper .swiper-slide .cgi-conf-figure {
  display: inline-block;
  width: auto;
  max-width: var(--cgi-outcome-max-w);
  height: auto;
  margin: 0;
  vertical-align: top;
}

.cgi-conf-swiper-wrap--outcome .cgi-conf-figure__frame {
  width: auto;
  max-width: var(--cgi-outcome-max-w);
  height: auto;
  padding: 0;
  display: block;
  box-sizing: border-box;
  background: transparent;
  line-height: 0;
}

.cgi-conf-swiper-wrap--outcome .cgi-conf-swiper .swiper-slide .cgi-conf-figure__frame img {
  display: block;
  width: 100%;
  height: auto;
  transition: none;
}

.cgi-conf-swiper-wrap--outcome .swiper-slide:hover .cgi-conf-figure__frame {
  transform: none;
}

.cgi-conf-swiper-wrap--outcome .swiper-slide:hover img {
  transform: none;
}

.cgi-conf-swiper-wrap--outcome .cgi-conf-figure__cap {
  margin: 12px 0 0;
  padding: 0;
  width: 100%;
  max-width: var(--cgi-outcome-max-w);
  font-size: 16px;
  line-height: 28px;
  min-height: 28px;
  text-align: left;
  color: #333;
  box-sizing: border-box;
  word-break: break-word;
}

.cgi-conf-swiper-wrap--outcome .swiper-slide:hover .cgi-conf-figure__cap {
  color: #333;
}

.cgi-conf-swiper-wrap--outcome .cgi-conf-prev,
.cgi-conf-swiper-wrap--outcome .cgi-conf-next {
  position: static;
  display: inline-block;
  top: auto;
  left: auto;
  right: auto;
  width: 28px;
  height: 28px;
  margin: 16px 12px 0;
  vertical-align: middle;
  transform: none;
  border: none;
  border-radius: 0;
  box-shadow: none;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  opacity: 1;
  transition: transform 0.25s ease, opacity 0.25s ease;
}

.cgi-conf-swiper-wrap--outcome .cgi-conf-prev,
.cgi-conf-swiper-wrap--outcome .cgi-conf-prev:hover,
.cgi-conf-swiper-wrap--outcome .cgi-conf-prev:focus {
  background: transparent url(../images/arrow-left-blue.png) no-repeat center / contain;
  border: none;
  box-shadow: none;
}

.cgi-conf-swiper-wrap--outcome .cgi-conf-next,
.cgi-conf-swiper-wrap--outcome .cgi-conf-next:hover,
.cgi-conf-swiper-wrap--outcome .cgi-conf-next:focus {
  background: transparent url(../images/arrow-right-blue.png) no-repeat center / contain;
  border: none;
  box-shadow: none;
}

.cgi-conf-swiper-wrap--outcome .cgi-conf-prev:after,
.cgi-conf-swiper-wrap--outcome .cgi-conf-next:after {
  display: none;
  content: none;
}

.cgi-conf-swiper-wrap--outcome .cgi-conf-prev:hover,
.cgi-conf-swiper-wrap--outcome .cgi-conf-prev:focus {
  transform: translateX(-3px);
  opacity: 1;
}

.cgi-conf-swiper-wrap--outcome .cgi-conf-next:hover,
.cgi-conf-swiper-wrap--outcome .cgi-conf-next:focus {
  transform: translateX(3px);
  opacity: 1;
}

.cgi-conf-swiper-wrap--outcome .cgi-conf-prev.swiper-button-disabled,
.cgi-conf-swiper-wrap--outcome .cgi-conf-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: default;
  pointer-events: none;
}

.cgi-conf-swiper-wrap--outcome .cgi-conf-prev.swiper-button-disabled:hover,
.cgi-conf-swiper-wrap--outcome .cgi-conf-next.swiper-button-disabled:hover {
  transform: none;
}

.cgi-conf-swiper-wrap--outcome .swiper-pagination {
  display: none;
}

/* 典型城市：五列；外框阴影；箭头同媒体报道 */
.cgi-conf-swiper-wrap--city {
  padding-left: 0;
  padding-right: 0;
}

.cgi-conf-swiper-wrap--city .cgi-conf-figure__frame {
  height: 150px;
  box-shadow: 0 6px 18px rgba(0, 64, 152, 0.1);
}

.cgi-conf-swiper-wrap--city .cgi-conf-figure__frame img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: none;
}

.cgi-conf-swiper-wrap--city .swiper-slide:hover .cgi-conf-figure__frame {
  transform: none;
}

.cgi-conf-swiper-wrap--city .swiper-slide:hover img {
  transform: none;
}

.cgi-conf-swiper-wrap--city .cgi-conf-figure__cap {
  margin: 12px 8px 0;
  font-size: 16px;
  line-height: 28px;
  min-height: 28px;
  text-align: left;
  color: #333;
}

.cgi-conf-swiper-wrap--city .swiper-slide:hover .cgi-conf-figure__cap {
  color: #333;
}

.cgi-conf-swiper-wrap--city .cgi-conf-prev,
.cgi-conf-swiper-wrap--city .cgi-conf-next {
  width: 28px;
  height: 48px;
  margin-top: 0;
  top: 40%;
  border-radius: 4px;
  box-shadow: 0 2px 10px rgba(0, 80, 190, 0.08);
  background-color: rgba(255, 255, 255, .85);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 24px auto;
  transition: background 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}

.cgi-conf-swiper-wrap--city .cgi-conf-prev {
  left: 0;
  background-image: url(../images/arrow-hl.png);
}

.cgi-conf-swiper-wrap--city .cgi-conf-next {
  right: 0;
  background-image: url(../images/arrow-hr.png);
}

.cgi-conf-swiper-wrap--city .cgi-conf-prev:after,
.cgi-conf-swiper-wrap--city .cgi-conf-next:after {
  display: none;
  content: none;
}

.cgi-conf-swiper-wrap--city .cgi-conf-prev:hover {
  background-image: url(../images/arrow-hl-r.png);
  background-color: #1a89fe;
  box-shadow: 0 6px 16px rgba(26, 137, 254, 0.28);
}

.cgi-conf-swiper-wrap--city .cgi-conf-next:hover {
  background-image: url(../images/arrow-hr-r.png);
  background-color: #1a89fe;
  box-shadow: 0 6px 16px rgba(26, 137, 254, 0.28);
}

.cgi-conf-swiper-wrap--city .cgi-conf-prev.swiper-button-disabled,
.cgi-conf-swiper-wrap--city .cgi-conf-next.swiper-button-disabled {
  opacity: 0.4;
  cursor: default;
  pointer-events: none;
}

/* 优秀案例：三列 + 标题；外框阴影；箭头同发布会现场 */
.cgi-conf-swiper-wrap--case {
  padding-left: 0;
  padding-right: 0;
  text-align: center;
}

.cgi-conf-swiper-wrap--case .cgi-conf-swiper {
  text-align: left;
  margin-bottom: 12px;
}

.cgi-conf-swiper-wrap--case .cgi-conf-figure__frame {
  height: 180px;
  box-shadow: 0 6px 18px rgba(0, 64, 152, 0.1);
}

.cgi-conf-swiper-wrap--case .cgi-conf-figure__frame img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: none;
}

.cgi-conf-swiper-wrap--case .swiper-slide:hover .cgi-conf-figure__frame {
  transform: none;
}

.cgi-conf-swiper-wrap--case .swiper-slide:hover img {
  transform: none;
}

.cgi-conf-swiper-wrap--case .cgi-conf-figure__cap {
  margin: 12px 8px 0;
  font-size: 16px;
  line-height: 28px;
  min-height: 28px;
  text-align: left;
  color: #333;
}

.cgi-conf-swiper-wrap--case .swiper-slide:hover .cgi-conf-figure__cap {
  color: #333;
}

.cgi-conf-swiper-wrap--case .cgi-conf-prev,
.cgi-conf-swiper-wrap--case .cgi-conf-next {
  position: static;
  display: inline-block;
  top: auto;
  left: auto;
  right: auto;
  width: 28px;
  height: 28px;
  margin: 16px 12px 0;
  vertical-align: middle;
  transform: none;
  border: none;
  border-radius: 0;
  box-shadow: none;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  opacity: 1;
  transition: transform 0.25s ease, opacity 0.25s ease;
}

.cgi-conf-swiper-wrap--case .cgi-conf-prev,
.cgi-conf-swiper-wrap--case .cgi-conf-prev:hover,
.cgi-conf-swiper-wrap--case .cgi-conf-prev:focus {
  background: transparent url(../images/arrow-left-blue.png) no-repeat center / contain;
  border: none;
  box-shadow: none;
}

.cgi-conf-swiper-wrap--case .cgi-conf-next,
.cgi-conf-swiper-wrap--case .cgi-conf-next:hover,
.cgi-conf-swiper-wrap--case .cgi-conf-next:focus {
  background: transparent url(../images/arrow-right-blue.png) no-repeat center / contain;
  border: none;
  box-shadow: none;
}

.cgi-conf-swiper-wrap--case .cgi-conf-prev:after,
.cgi-conf-swiper-wrap--case .cgi-conf-next:after {
  display: none;
  content: none;
}

.cgi-conf-swiper-wrap--case .cgi-conf-prev:hover,
.cgi-conf-swiper-wrap--case .cgi-conf-prev:focus {
  transform: translateX(-3px);
  opacity: 1;
}

.cgi-conf-swiper-wrap--case .cgi-conf-next:hover,
.cgi-conf-swiper-wrap--case .cgi-conf-next:focus {
  transform: translateX(3px);
  opacity: 1;
}

.cgi-conf-swiper-wrap--case .cgi-conf-prev.swiper-button-disabled,
.cgi-conf-swiper-wrap--case .cgi-conf-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: default;
  pointer-events: none;
}

.cgi-conf-swiper-wrap--case .cgi-conf-prev.swiper-button-disabled:hover,
.cgi-conf-swiper-wrap--case .cgi-conf-next.swiper-button-disabled:hover {
  transform: none;
}

.cgi-conf-swiper-wrap--case .swiper-pagination {
  display: none;
}

@media (min-width: 768px) {
  .cgi-conf-nav {
    position: sticky;
    top: 96px;
    z-index: 12;
  }
}

@media (max-width: 767px) {
  .cgi-conf-module {
    padding: 36px 0 44px;
  }

  .cgi-conf-switch {
    margin-top: 24px;
  }

  .cgi-conf-nav {
    float: none;
    width: auto;
    margin-bottom: 20px;
    white-space: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 4px 16px 10px;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }

  .cgi-conf-nav::-webkit-scrollbar {
    display: none;
  }

  .cgi-conf-nav::before {
    left: 0;
    right: 0;
    top: 11px;
    bottom: auto;
    width: auto;
    height: 2px;
  }

  .cgi-conf-nav__item {
    display: inline-block;
    width: auto;
    min-width: auto;
    margin: 0 18px 0 0;
    padding: 22px 0 0;
    vertical-align: top;
    scroll-snap-align: start;
    min-height: 0;
  }

  .cgi-conf-nav__item:last-child {
    margin-right: 0;
  }

  .cgi-conf-nav__dot {
    left: 50%;
    top: 0;
    margin-left: -5px;
    margin-top: 0;
  }

  .cgi-conf-nav__item.is-active .cgi-conf-nav__dot {
    left: 50%;
    margin-left: 0;
    transform: translateX(-50%);
  }

  .cgi-conf-nav__item.is-active::before {
    display: none;
  }

  .cgi-conf-nav__label {
    margin-left: 0;
  }

  .cgi-conf-nav__item.is-active .cgi-conf-nav__label::before {
    left: 50%;
    top: -6px;
    margin-left: -6px;
    margin-top: 0;
    border-width: 0 6px 6px 6px;
    border-color: transparent transparent #1a89fe transparent;
  }

  .cgi-conf-nav__item.is-active::before {
    left: 50%;
    top: 0;
    margin-left: -8px;
    margin-top: 0;
  }

  .cgi-conf-panels {
    float: none;
    width: auto;
  }

  .cgi-conf-head__title {
    font-size: 17px;
  }

  .cgi-conf-swiper-wrap {
    padding: 0 32px 8px;
  }

  .cgi-conf-swiper-wrap--scene {
    padding-left: 0;
    padding-right: 0;
  }

  .cgi-conf-swiper-wrap--media {
    padding-left: 0;
    padding-right: 0;
  }

  .cgi-conf-swiper-wrap--outcome {
    padding-left: 0;
    padding-right: 0;
    --cgi-outcome-h: 200px;
    --cgi-outcome-max-w: 150px;
  }

  .cgi-conf-swiper-wrap--city,
  .cgi-conf-swiper-wrap--case {
    padding-left: 0;
    padding-right: 0;
  }

  .cgi-conf-swiper-wrap--scene .cgi-conf-swiper .swiper-slide .cgi-conf-figure__frame img {
    height: 200px;
  }

  .cgi-conf-swiper-wrap--outcome .cgi-conf-figure__frame {
    height: auto;
    max-width: var(--cgi-outcome-max-w);
  }

  .cgi-conf-swiper-wrap--outcome .cgi-conf-swiper .swiper-slide .cgi-conf-figure__frame img {
    width: auto;
    height: auto;
    max-height: var(--cgi-outcome-h);
    max-width: var(--cgi-outcome-max-w);
  }

  .cgi-conf-swiper-wrap--media .cgi-conf-figure__frame {
    height: 200px;
  }

  .cgi-conf-swiper-wrap--city .cgi-conf-figure__frame {
    height: 130px;
  }

  .cgi-conf-swiper-wrap--case .cgi-conf-figure__frame {
    height: 150px;
  }

  .cgi-conf-swiper-wrap .cgi-conf-prev,
  .cgi-conf-swiper-wrap .cgi-conf-next {
    width: 28px;
    height: 28px;
  }
}

/* 小标题：左侧竖线 + 18px */
.cgi-block__title {
  margin: 0 0 16px;
  padding-left: 18px;
  font-size: 20px;
  font-weight: 700;
  color: var(--about-primary);
  position: relative;
  height: 24px;
  line-height: 24px;
}
.cgi-block__title::before{
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 4px;
  height: 24px;
  background: var(--about-primary);
  border-radius: 2px;
}

/* 区块内二级小标题（典范城市 / 优秀案例 / 获奖城市代表等） */
.cgi-block__sub {
  margin: 0 15px 24px;
  font-size: 18px;
  color: #333;
  line-height: 28px;
  position: relative;
  padding-left: 24px;
}

.cgi-block__sub:first-of-type {
  margin-top: 22px;
}

/* 正文：继承 body 字号与行高 */
.cgi-text {
  margin: 10px 0 20px;
  padding-left: 18px;
  font-size: 16px;
  line-height: 32px;
  color: #333;
  text-align: justify;
}

.cgi-figure__frame {
  display: block;
  overflow: hidden;
  border-radius: 8px;
  background: var(--about-line);
  border: 1px solid var(--about-line);
  line-height: 0;
  transition: box-shadow 0.28s ease;
}

.cgi-figure--solo .cgi-figure__frame:hover,
.cgi-figure--solo .cgi-figure__frame:focus-within {
  box-shadow: 0 12px 32px rgba(0, 80, 190, 0.14);
}

.cgi-figure__frame img {
  display: block;
  width: 100%;
  height: auto;
}

.cgi-figure__cap {
  margin: 15px 0 0;
  font-size: 16px;
  line-height: 28px;
  color: #333;
  text-align: center;
}

/* 多图行：浮动 + clearfix，无 flex */
.cgi-row {
  margin-bottom: 10px;
}

.cgi-row .cgi-figure--cell {
  float: left;
  width: 50%;
  padding-left: 15px;
  padding-right: 15px;
}

.cgi-row--3 .cgi-figure--cell {
  width: 33.333333%;
}

.cgi-row .cgi-figure__frame:hover,
.cgi-row .cgi-figure__frame:focus-within {
  box-shadow: 0 10px 28px rgba(0, 80, 190, 0.12);
}

@media (max-width: 767px) {
  .cgi-page-root .page-news-banner__title {
    font-size: 26px;
  }

  .cgi-intro-split__media,
  .cgi-intro-split__body {
    float: none;
    width: auto;
    padding: 0;
  }

  .cgi-intro-split__media {
    margin-bottom: 20px;
    max-width: none;
  }

  .cgi-intro-split__body {
    padding: 0;
  }

  .cgi-intro-split__body p {
    font-size: 14px;
    text-align: left;
  }

  .cgi-block__title {
    font-size: 17px;
  }

  .cgi-row .cgi-figure--cell,
  .cgi-row--3 .cgi-figure--cell {
    float: none;
    width: auto;
    margin-bottom: 18px;
  }

  .cgi-row .cgi-figure--cell:last-child {
    margin-bottom: 0;
  }

  .cgi-block {
    padding: 18px 14px 20px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cgi-page-root {
    scroll-behavior: auto;
  }

  .cgi-section--intro {
    animation: none;
    opacity: 1;
    transform: none;
  }

  .cgi-figure__frame,
  .cgi-figure__frame img {
    transition: none;
  }
}

/* =============================================================================
   核心业务七大业务线 · 横向二级导航（独有块名 biz-seven-lines-nav / __list）   与资讯类 page-news-subnav 区分；subnav-* 后缀仅沿用旧文件的逐步废弃   ============================================================================= */

.biz-seven-lines-nav .biz-seven-lines-nav__list {
  float: none;
  width: 100%;
}

.biz-seven-lines-nav .biz-seven-lines-breadcrumb {
  float: none;
  clear: both;
  text-align: left;
  padding: 12px 0 18px;
  margin-top: 0;
  border-top: 1px solid #f2f2f2;
}

/* 业务总览封面：通栏下直连卡片，略加大上边距 */
.biz-hub-page {
  padding: 60px 0;
  background-image: url(../images/aiApplicationBg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center ;
}
.biz-hub-page .business-hub-grid {
  margin-top: 28px;
}

.biz-seven-lines-nav .biz-seven-lines-nav__list > li {
  margin-right: 10px;
}

.biz-seven-lines-nav .biz-seven-lines-nav__list a {
  padding: 18px 8px 16px;
  font-size: 15px;
}

.core-business-line-page .biz-line-article {
  padding-bottom: 8px;
}

.biz-line-prose {
  font-size: 16px;
  line-height: 28px;
  color: #666;
}
.policy-position-body{
  font-size: 16px;
  line-height: 32px;
  color: #333;
}
.biz-line-bullets {
  margin: 0 0 16px;
  font-size: 16px;
  padding-left: 16px;
}

.biz-line-bullets li {
  position: relative;
  padding-left: 18px;
} 

.biz-line-bullets li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 12px;
  width: 6px;
  height: 6px;
  background: #0050be;
  border-radius: 50%;
}

.biz-line-table-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  margin: 0 0 12px;
}

.biz-line-policy-cases {
  width: 100%;
  border-collapse: collapse;
  font-size: 15px;
  line-height: 1.55;
  color: #555;
  min-width: 520px;
}

.biz-line-policy-cases th,
.biz-line-policy-cases td {
  border: 1px solid #e2e8ef;
  padding: 12px 14px;
  text-align: left;
  vertical-align: top;
}

.biz-line-policy-cases thead th {
  background: #f0f6ff;
  color: #1a3a5c;
  font-weight: 600;
}

.biz-line-policy-cases tbody th[scope="row"] {
  background: #fafbfd;
  font-weight: 600;
  color: #333;
  white-space: nowrap;
}

.biz-line-prose .biz-line-prose-note {
  font-size: 14px;
  line-height: 24px;
  color: #888;
  margin: 0 0 16px;
}
.policy-position-body .biz-line-prose-note{
  color: #666;
}
.policy-position-body .biz-line-prose-note a{
  color: #0050be;
}
.policy-position-body .biz-line-prose-note a:hover{
  color: #f59e0b;
}

/* 政策标准页：拆成多条全宽分区，由各 .policy-standard-section 单独设背景/色值 */
.policy-standard-section {
  position: relative;
  padding: 60px 0;
  
}
.policy-standard-section .container {
  position: relative;
  z-index: 1;
}
.policy-standard-section.policy-standard-section--illus{
  background-image: url(../images/frame_bg.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

/* 业务定位：大事与服务网络表格同收在 .policy-position-body 一块硬底，阅读顺序仍为新闻表 */
.policy-standard-section--position {
  background: linear-gradient(165deg, #f6faff 0%, #ffffff 52%, #fbfcfe 100%);
}

.policy-standard-section--position .value-present-intro.value-present-intro--solo {
 
}

.policy-standard-section--position .policy-position-body {
  
}

.policy-standard-section--position .policy-position-body h3 {
  font-size: 20px;
  color: #0050be;
  margin: 25px 0  20px;
  padding-left: 12px;
  position: relative;
  border-left: 4px solid #0050be;
}

/* 双栏时两列表题顶对齐 */
.policy-standard-section--position .policy-position-body .service-network {
 
}

/* 业务定位：国家级 / 地方级两表纵向排列（不并列双栏） */
.policy-standard-section--position .policy-position-body .service-network .client-section {
  float: none !important;
  display: block;
  width: 100%;
  max-width: none;
  margin-right: 0 !important;
  margin-bottom: 28px;
  clear: both;
}

.policy-standard-section--position .policy-position-body .service-network .client-section:last-child {
  margin-bottom: 0;
}

@media (max-width: 600px) {
  .policy-standard-section--position .policy-position-body {
    padding: 22px 18px 24px;
  }

  .policy-standard-section--position .policy-position-body .service-network .client-section {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}

.biz-line-illus-title {
  font-size: 24px;
  margin: 0 0 25px;
  color: #333;
}

.biz-stats-bar {
  display: block;
}

.biz-stats-bar::after {
  content: "";
  display: table;
  clear: both;
}

.biz-stat-item {
  float: left;
  width: 25%;
  padding-right: 10px;
  box-sizing: border-box;
}

/* 六项关键数据同一行 6 等分（管理平台、数据分析等） */
.biz-stats-bar--row6 .biz-stat-item {
  float: left;
  width: 16.666666%;
  padding: 0 6px;
  margin: 0;
  box-sizing: border-box;
  clear: none;
  text-align: center;
}

.biz-stats-bar--row6 .biz-stat-item:nth-child(5) {
  clear: none;
}
.biz-stat-num {
  font-size: 24px;
  color: #0050be;
}

.biz-stat-label {
  font-size: 16px;
  color: #333;
}

.biz-stat-sub {
  font-size: 14px;
  color: #666;
  margin-top: 8px;
}

/* 业务插图：关键数据与上文留白（同在 .biz-line-illus-shell 内，含右侧栏或三全卡片下方） */
.biz-line-illus-shell .biz-stats-bar--below-intro {
  clear: both;
  margin-top: 14px;
  padding-top: 0;
}

.biz-line-illus-shell .tri-cards.tri-cards--illus {
  clear: both;
  margin-top: 28px;
}

.biz-line-illus-shell .tri-cards.tri-cards--illus .tri-card {
  margin-bottom: 0;
}

.biz-line-illus-shell .tri-cards.tri-cards--illus + .biz-stats-bar--below-intro {
  margin-top: 24px;
}

.biz-line-illus-shell > .cgi-intro-split + .biz-stats-bar--below-intro {
  margin-top: 22px;
}

.platform-cta + .biz-stats-bar {
  margin-top: 22px;
}

/* 业务插图正文内：试用入口文字链段落 */
.biz-line-illus-intro__trial {
  margin: 18px 0 0;
}

/* 业务插图右侧：关键数字视觉层次（与效果图一致） */
.biz-line-illus-shell .biz-stats-bar .biz-stat-num {
  line-height: 1.05;
  margin-bottom: 6px;
}

.biz-stats-bar--below-intro .biz-stat-num i {
  font-size: 48px;
  font-style: normal;
}

/* 业务插图右侧关键数据：与政策标准页统一为 biz-stats-bar biz-stats-bar--below-intro biz-stats-bar--policy-intro */

/* 三层标准矩阵 / 服务网络 / 能力栅格：浮动分栏 */
.standards-matrix {
  display: block;
  margin: 32px 0 40px;
}

.standards-matrix .standard-card {
  float: left;
  width: 32%;
  margin-right: 2%;
}

.standards-matrix .standard-card:nth-child(3n) {
  margin-right: 0;
}

.standard-card {
  background: #fff;
  border-radius: 8px;
  padding: 24px;
  border-top: 4px solid #0050be;
  font-size: 16px;
  line-height: 28px;
  color: #333;
  min-height: 375px;
}
.standards-matrix.standards-matrix--consulting-cards{
  margin-bottom: 0;
}
.standards-matrix--consulting-cards .standard-card {
  min-height: 455px;
}
.standard-card h4 {
  font-size: 20px;
  color: #0050be;
  margin: 0 0 18px;
  padding-bottom: 22px;
  border-bottom: 1px solid #e0e0e0;
}

.standard-item {
  margin-bottom: 16px;
  padding-bottom: 16px;
  border-bottom: 1px dashed #e0e0e0;
}

.standard-item:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}

.standard-code {
  font-size: 14px;
  color: #666;
}

.standard-name {
  font-size: 16px;
  color: #333;
  margin: 8px 0 6px;
  line-height: 28px;
}

.standard-meta {
  font-size: 14px;
  color: #666;
  margin-top: 4px;
}

/* 管理咨询页 · 三层蓝图卡片：图标与标题同一行（仅 .standards-matrix--consulting-cards） */
.standards-matrix--consulting-cards .standard-card__head {
  margin: 0 0 18px;
  padding-bottom: 18px;
  border-bottom: 1px solid #e0e0e0;
}



.client-section h4 {
  font-size: 16px;
  font-weight: 600;
  color: #333;
  margin: 0 0 16px;
  padding-left: 12px;
  border-left: 4px solid #1a5fb4;
}
.standards-matrix--consulting-cards .standard-card__head .standard-icon {
  display: inline-block;
  margin-right: 14px;
}

.standards-matrix--consulting-cards .standard-card__head h4 {
  margin: 0;
  padding: 0;
  border: none;
  display: inline-block;
}
.service-network {
  display: block;
  margin: 32px 0 28px;
}

.service-network::after {
  content: "";
  display: table;
  clear: both;
}

.service-network .client-section {
  float: left;
  width: 48%;
  margin-right: 4%;
}

.service-network .client-section:last-child {
  margin-right: 0;
}

.service-network .client-list {
  display: block;
}

.service-network .client-list::after {
  content: "";
  display: table;
  clear: both;
}

.service-network .client-tag {
  float: left;
  margin: 0 8px 8px 0;
  background: #e8f0fe;
  color: #1a5fb4;
  padding: 6px 12px;
  border-radius: 4px;
  font-size: 13px;
}

.province-table {
  width: 100%;
  background: #fff;
}

/* 业务定位 · 代表性服务表：与政策标准页一致（深蓝表头、浅底单元格）；凡在 .policy-position-body 内的 province-table 均适用 */
.policy-standard-section--position .policy-position-body .province-table {
  width: 100%;
  font-size: 16px;
  line-height: 28px;
  color: #333;
  margin: 25px 0;
}
.policy-standard-section--position .policy-position-body .province-table tr th {
  background: #15529a;
  font-size: 18px;
  color: #fff;
  line-height: 30px;
  text-align: center;
  padding-top: 16px;
  padding-bottom: 16px;
}
.policy-standard-section--position .policy-position-body .province-table tr td {
  background: #fbfcfe;
  font-size: 16px;
  line-height: 28px;
  color: #333;
  padding-top: 15px;
  padding-bottom: 15px;
  padding-left: 64px;
  padding-right: 64px;
}

.policy-standard-section.policy-standard-section--capabilities{
  background-image: url(../images/kwptcp_tab_bg.png);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.capability-grid {
  padding-top: 20px;
}

.capability-grid .capability-card {
  float: left;
  width: 23.5%;
  margin-right: 2%;
  margin-bottom: 0;
}

.capability-grid .capability-card:nth-child(4n) {
  margin-right: 0;
}

.capability-card {
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  padding: 25px;
  text-align: center;
  transition: box-shadow 0.25s, border-color 0.25s;
}

.capability-card:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  border-color: #0050be;
}

.capability-icon {
  width: 56px;
  height: 56px;
  margin: 0 auto;
  background: #e8f0fe;
  border-radius: 50%;
  display: block;
  text-align: center;
  line-height: 56px;
}

.capability-icon img {
  width: 28px;
  height: 28px;
  vertical-align: middle;
}

.capability-title {
  font-size: 18px;
  color: #333;
  margin:18px 0 10px;
}

.capability-desc {
  font-size: 16px;
  color: #666;
  line-height: 28px;
  margin: 0 0 12px;
}

.capability-proof {
  font-size: 14px;
  color: #1a5fb4;
  background: #f0f7ff;
  padding: 8px;
  border-radius: 4px;
  line-height: 24px;
  text-align: justify;
}

/* 政策标准等区域：≤991 矩阵单列与双列能力卡；≤768 插图数字；≤600 单列能力卡与一般数字字号 */
@media (max-width: 991px) {
  .standards-matrix .standard-card {
    float: none;
    width: auto;
    margin-right: 0;
    margin-bottom: 16px;
  }

  .standards-matrix .standard-card:last-child {
    margin-bottom: 0;
  }

  .service-network .client-section {
    float: none;
    width: auto;
    margin-right: 0;
    margin-bottom: 24px;
  }

  .service-network .client-section:last-child {
    margin-bottom: 0;
  }

  .capability-grid .capability-card {
    width: 49%;
    margin-right: 2%;
    margin-bottom: 16px;
  }

  .capability-grid .capability-card:nth-child(2n) {
    margin-right: 0;
  }
}

@media (max-width: 768px) {
  .biz-line-illus-shell .biz-stats-bar--below-intro {
    margin-top: 12px;
  }

  .biz-line-illus-shell .biz-stats-bar--below-intro .biz-stat-num {
    font-size: 22px;
  }

  .biz-stat-item {
    width: 50%;
  }

  .biz-stat-item:nth-child(2n + 1) {
    clear: left;
  }

  /* 管理平台六项一行：平板改为每行 3 个 */
  .biz-stats-bar--row6 .biz-stat-item {
    width: 33.333333%;
    padding: 12px 8px;
  }

  .biz-stats-bar--row6 .biz-stat-item:nth-child(2n + 1) {
    clear: none;
  }

  .biz-stats-bar--row6 .biz-stat-item:nth-child(3n + 1) {
    clear: left;
  }
}

@media (max-width: 600px) {
  .biz-stats-bar--row6 .biz-stat-item {
    width: 50%;
  }

  .biz-stats-bar--row6 .biz-stat-item:nth-child(3n + 1) {
    clear: none;
  }

  .biz-stats-bar--row6 .biz-stat-item:nth-child(2n + 1) {
    clear: left;
  }

  .capability-grid .capability-card {
    float: none;
    width: auto;
    margin-right: 0;
    margin-bottom: 16px;
  }

  .biz-stat-num {
    font-size: 38px;
  }
}

/* 业务子页：AI 产品清单（折叠长文 + 摘要行，div + .is-open） */
.biz-product-details-tools {
  margin: 0.85em 0 0.65em;
}

.biz-product-details-tools::after {
  content: "";
  display: table;
  clear: both;
}

.biz-product-details-btn {
  float: left;
  margin: 0 12px 8px 0;
  padding: 8px 16px;
  font-size: 14px;
  line-height: 1.3;
  color: #1a56a8;
  background: #fff;
  border: 1px solid rgba(26, 86, 168, 0.35);
  border-radius: 8px;
  cursor: pointer;
  transition: background 0.15s, border-color 0.15s, color 0.15s;
}
.biz-product-details-btn:hover,
.biz-product-details-btn:focus {
  color: #124080;
  background: #f0f6ff;
  border-color: rgba(26, 86, 168, 0.55);
  outline: none;
}
.biz-product-list--details {
  margin: 25px 0;
}
.biz-product-details {
  margin-bottom: 10px;
  border: 1px solid #e8edf2;
  border-radius: 10px;
  background: #fafbfd;
  overflow: hidden;
}
.biz-product-details:last-child {
  margin-bottom: 0;
}

.biz-product-details.is-open {
  border-color: #c5d5eb;
  box-shadow: 0 2px 12px rgba(26, 115, 232, 0.07);
}

.biz-product-details:not(.is-open) .biz-product-details__body {
  display: none;
}

.biz-product-details__bar {
  position: relative;
  padding: 14px 40px 14px 16px;
  overflow: hidden;
  cursor: pointer;
  font-size: 16px;
  line-height: 1.4;
  -webkit-user-select: none;
  user-select: none;
}

/* 右侧折叠箭头（伪元素，避免空 span 被压缩不显示） */
.biz-product-details__bar::after {
  content: "";
  position: absolute;
  right: 16px;
  top: 50%;
  width: 0;
  height: 0;
  margin-top: -8px;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
  border-left: 10px solid #0050be;
  transition: transform 0.2s;
  -webkit-transition: transform 0.2s;
  pointer-events: none;
}

.biz-product-details.is-open .biz-product-details__bar::after {
  transform: rotate(90deg);
}

/* 左：序号 | 右：箭头；标题在中间自适应（float + overflow 经典三栏，不用 flex） */
.biz-product-list__index {
  float: left;
  width: 32px;
  height: 32px;
  margin-right: 14px;
  line-height: 32px;
  text-align: center;
  font-size: 18px;
  color: #0050be;
  background: linear-gradient(145deg, #e8f2ff, #d8e8fc);
  border-radius: 5px;
  font-variant-numeric: tabular-nums;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.biz-product-details__name {
  display: block;
  overflow: hidden;
  font-size: 18px;
  line-height: 32px;
  color: #333;
}

.biz-product-details__body {
  padding: 15px 15px;
  border-top: 1px solid #edf1f6;
  background: #fff;
}

.biz-product-details__body h5 {
  font-size: 16px;
  line-height: 32px;
  color: #0050be;
}
.biz-product-details__body p {

  font-size: 16px;
  line-height: 32px;
  color: #666;
  text-align: justify;
}

.biz-line-cta-bar {
  position: relative;
  overflow: hidden;
  margin: 36px 0 16px;
  padding: 24px 28px;
  background: linear-gradient(120deg, #e8f2ff 0%, #f0f7ff 100%);
  border: 1px solid rgba(26, 115, 232, 0.15);
  border-radius: 12px;
  text-align: center;
}

.biz-line-cta-bar::before {
  content: "";
  position: absolute;
  top: -40%;
  right: -8%;
  width: 180px;
  height: 180px;
  background: radial-gradient(circle, rgba(0, 80, 190, 0.12) 0%, transparent 70%);
  pointer-events: none;
}

.biz-line-cta-bar::after {
  content: "";
  position: absolute;
  bottom: -35%;
  left: -5%;
  width: 160px;
  height: 160px;
  background: radial-gradient(circle, rgba(26, 137, 254, 0.1) 0%, transparent 68%);
  pointer-events: none;
}

.biz-line-cta-bar p {
  margin: 0 0 16px;
  font-size: 16px;
  color: #444;
  position: relative;
  z-index: 1;
}

a.biz-line-btn {
  position: relative;
  z-index: 1;
  display: inline-block;
  margin: 0 8px 8px;
  padding: 12px 28px;
  font-size: 16px;
  color: #fff;
  background: #0050be;
  border-radius: 6px;
  transition: background 0.2s ease;
}

a.biz-line-btn:hover{
  color: #fff;
  background: #003d94;
  text-decoration: none;
}

a.biz-line-btn--ghost {
  background: #fff;
  color: #0050be;
  border: 2px solid #0050be;
}

a.biz-line-btn--ghost:hover{
  background: #f0f6ff;
  color: #0050be;
}

/* ─── 核心业务页尾转化条（通用，可被各 business-*.html 复用）─── */
.policy-standard-section--biz-core-cta {
  position: relative;
  overflow: hidden;
  background-image:url(../images/contact_bg.png);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

.biz-core-cta {
  position: relative;
  z-index: 1;
  max-width: 820px;
  margin: 0 auto;
  padding: 28px 20px 8px;
  text-align: center;
}
.biz-core-cta__text {
  margin: 0 0 26px;
  font-size: 18px;
  line-height: 32px; 
  color: #333;

}
.biz-core-cta__accent {
  color: #0050be;
}
a.biz-core-cta__btn {
  display: inline-block;
  padding: 12px 40px;
  font-size: 16px;
  color: #fff;
  border-radius: 8px;
  background-image: linear-gradient(90deg,  #04c8fc 38%, #188ffe 100%);
  box-shadow: 0 4px 16px rgba(0, 80, 190, 0.32);
  transition: opacity 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease;
}

a.biz-core-cta__btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 22px rgba(0, 80, 190, 0.4);
}

@media (max-width: 599px) {
  .biz-core-cta__text {
    font-size: 16px;
    line-height: 1.68;
  }

  a.biz-core-cta__btn {
    width: 100%;
    max-width: 320px;
    padding-left: 20px;
    padding-right: 20px;
  }
}

.biz-line-section-spaced {


}

.business-hub-grid {
  margin-top: 8px;
}

.business-hub-cell {
  float: left;
  width: 50%;
  padding: 0 12px 24px;
}

.business-hub-card {
  display: block;
  height: 100%;
  padding: 30px 25px 15px;
  overflow: hidden;
  background: #fff;
  border-radius: 10px;
  border: 1px solid #e8ecf1;
  box-shadow: 0 6px 24px rgba(15, 23, 42, 0.06);
  color: #333;
  text-decoration: none;
  transform: translateY(0);
  transition:
    box-shadow 0.3s cubic-bezier(0.22, 1, 0.36, 1),
    border-color 0.3s ease,
    transform 0.3s cubic-bezier(0.22, 1, 0.36, 1),
    color 0.25s ease;
}

.business-hub-card:hover,
.business-hub-card:focus-visible {
  transform: translateY(-4px);
  box-shadow: 0 16px 44px rgba(26, 115, 232, 0.14);
  border-color: rgba(26, 115, 232, 0.28);
  color: #0050be;
}

/* 左图右文：左 float + 右栏 overflow 形成 BFC，无绝对定位 */
.business-hub-card__figure {
  float: left;
  width: 150px;
  height: 156px;
  text-align: center;
}

.business-hub-card__figure img {
  display: block;
  margin: 0 auto;
  object-fit: contain;
}

.business-hub-card__main {
  float: right;
  width: 71%;
}

.business-hub-card__tag {
  display: inline-block;
  margin: 0 0 18px;
  padding: 5px 8px 6px;
  max-width: 100%;
  font-size: 14px;
  line-height: 1.3;
  color: #0050be;
  background: linear-gradient(
    168deg,
    #f8fbff 0%,
    #edf3fc 48%,
    #e1e9f6 100%
  );
  border: 1px solid rgba(28, 92, 168, 0.24);
  border-radius: 6px;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.9),
    0 1px 2px rgba(12, 58, 120, 0.07);
  vertical-align: top;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}

.business-hub-card__title {
  font-size: 18px;
  margin: 0 0 12px;
  color: #333;
}

.business-hub-card__desc {
  font-size: 16px;
  line-height: 28px;
  color: #666;
}
.business-hub-card:hover .business-hub-card__title,
.business-hub-card:hover .business-hub-card__desc {
  color: #0050be;
}

@media (max-width: 767px) {
  .biz-seven-lines-nav .biz-seven-lines-nav__list > li {
    margin-right: 6px;
  }

  .biz-seven-lines-nav .biz-seven-lines-nav__list a {
    padding: 12px 4px 10px;
    font-size: 13px;
  }

  .business-hub-cell {
    float: none;
    width: auto;
    padding: 0 0 16px;
  }

  .business-hub-cell:last-child {
    padding-bottom: 0;
  }

  .business-hub-card {
    min-height: 0;
  }

  .business-hub-card__figure {
    float: none;
    display: table;
    margin: 0 auto 14px;
  }

  .business-hub-card__main {
    overflow: visible;
  }
}

/* 核心业务：插图条、能力卡图标、滚动渐显、汇总卡增强 */
.biz-line-reveal {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.55s cubic-bezier(0.22, 1, 0.36, 1),    transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
  -webkit-transform: translateY(16px);
  -moz-transform: translateY(16px);
  -ms-transform: translateY(16px);
  -o-transform: translateY(16px);
}

.biz-line-reveal.is-inview {
  opacity: 1;
  transform: translateY(0);
}

.biz-line-reveal--delay {
  transition-delay: 0.08s;
}

.biz-line-reveal--delay2 {
  transition-delay: 0.14s;
}

.biz-line-illus-shell {
  margin-bottom: 28px;
  padding: 22px 22px 24px;
    background: linear-gradient(165deg, #f6f9fd 0%, #ffffff 38%, #fafcfe 100%);
    border: 1px solid rgba(0, 80, 190, 0.12);
    border-radius: 12px;
    box-shadow: 0 8px 32px rgba(0, 80, 190, 0.07);
}


.biz-line-illus-kicker {
  display: block;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: #0050be;
  margin-bottom: 8px;
}

.value-present-card--biz .value-present-card__body {
  padding-top: 20px;
}

.biz-line-card-icon {
  margin-bottom: 12px;
  line-height: 0;
}

.biz-line-card-icon img {
  display: inline-block;
  vertical-align: middle;
  transition: transform 0.35s ease;
}

.value-present-card--biz:hover .biz-line-card-icon img,
.value-present-card--biz:focus-within .biz-line-card-icon img {
  transform: scale(1.08);
}

@media (prefers-reduced-motion: reduce) {
  .biz-line-reveal,
  .biz-line-reveal.is-inview {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .value-present-card--biz:hover .biz-line-card-icon img,
  .value-present-card--biz:focus-within .biz-line-card-icon img,
  .business-hub-card:hover,
  .business-hub-card:focus-visible {
    transform: none;
  }
}

/* ========== 管理咨询页 · 蓝图流程与资源一体化支柱（business-consulting） ========== */
.blueprint-flow {
  display: block;
  margin: 40px 0;
  text-align: center;
  font-size: 0;
}

.blueprint-flow::after {
  content: "";
  display: table;
  clear: both;
}

.flow-step {
  display: inline-block;
  vertical-align: middle;
  margin: 0 10px 16px;
  text-align: center;
  padding: 20px;
  font-size: 16px;
}

.flow-icon {
  margin-bottom: 10px;
}

.flow-num {
  font-size: 14px;
  color: #999;
  margin-bottom: 5px;
}

.flow-title {
  font-size: 18px;
  font-weight: bold;
  color: #333;
  margin-bottom: 5px;
}

.flow-desc {
  font-size: 14px;
  color: #666;
}

.flow-arrow {
  display: inline-block;
  vertical-align: middle;
  margin: 0 20px;
  font-size: 24px;
  color: #ccc;
}

/* 管理咨询页 · 蓝图流程「服务流程」式：蓝底白字序号圆 + 浅蓝卡 + 连接符 */
.blueprint-flow--service-process .flow-step {
  padding: 22px 25px 20px;
  background: linear-gradient(180deg, #f5faff 0%, #e9f3fc 100%);
  border-radius: 12px;
  box-shadow: 0 2px 10px rgba(0, 80, 190, 0.1);
}

.blueprint-flow--service-process .flow-step-badge {
  display: inline-block;
  width: 40px;
  height: 40px;
  margin: 0 auto 14px;
  background: #0050be;
  color: #fff;
  border-radius: 50%;
  font-size: 18px;
  line-height: 40px;
  text-align: center;
}

.blueprint-flow--service-process .flow-title {
  font-weight: normal;
  color: #333;
}

.blueprint-flow--service-process .flow-desc {
  font-size: 16px;
  color: #666;

}

.blueprint-flow--service-process .flow-arrow {
  color: #b8c5d6;
}

/* 管理咨询页 · 能力与网格样式：外层不包边框、不占内边距（标题已在 .policy-position-body 内单独 h3） */

.pillar-item {
  padding: 30px 0;
}

.pillar-item::after {
  content: "";
  display: table;
  clear: both;
}

.pillar-icon {
  float: left;
  width: 72px;
  height: 72px;
  margin-right: 30px;
  text-align: center;
  line-height: 72px;
  background: #f0f7ff;
  border-radius: 16px;
}

.pillar-icon img {
  vertical-align: middle;
}

.pillar-content {
  overflow: hidden;
}

.pillar-header {
  margin-bottom: 12px;
}

.pillar-header::after {
  content: "";
  display: table;
  clear: both;
}

.pillar-num {
  float: left;
  width: 28px;
  height: 28px;
  margin-right: 12px;
  line-height: 28px;
  text-align: center;
  background: #0050be;
  color: #fff;
  border-radius: 6px;
  font-size: 14px;
  font-weight: bold;
}

.pillar-header h4 {
  overflow: hidden;
  font-size: 20px;
  color: #333;
  margin: 0;
}

.pillar-content p {
  font-size: 15px;
  color: #666;
  line-height: 1.8;
  margin: 0;
}

.pillar-divider {
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, #e8e8e8 20%, #e8e8e8 80%, transparent 100%);
  margin: 0;
}

/* 管理咨询页 · 资源一体化支柱：核心能力式横排卡 + 浮动分栏 */
.governance-pillars--capability-grid .governance-pillars__grid {
  margin-top: 30px;
}

.governance-cap-card {
  float: left;
  width: 32%;
  min-height: 152px;
  margin-right: 2%;
  margin-bottom: 20px;
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.07);
  border: 1px solid #eaeef2;
}

.governance-cap-card:nth-child(3n) {
  margin-right: 0;
}
.governance-cap-card__icon {
  float: left;
  width: 92px;
  height: 100%;
  padding: 28px 16px;
  text-align: center;
  background: #0050be;
}

.governance-cap-card__icon img {
  display: inline-block;
  vertical-align: middle;
}

.governance-cap-card__body {
  float: right;
  width: 77%;
  padding: 18px 20px;
}

.governance-cap-card__body h4 {
  font-size: 18px;
  color: #333;
  margin-bottom: 12px;
}

.governance-cap-card__body p {
  font-size: 16px;
  color: #666;
  line-height: 28px;
}

@media (max-width: 768px) {
  .blueprint-flow .flow-step,
  .blueprint-flow .flow-arrow {
    display: block;
    margin-left: auto;
    margin-right: auto;
  }

  .flow-arrow {
    transform: rotate(90deg);
  }

  .blueprint-flow--service-process .flow-step {
    max-width: none;
    width: min(100%, 320px);
  }

  .pillar-icon {
    float: none;
    margin: 0 auto 20px;
  }

  .pillar-item {
    text-align: center;
  }

  .pillar-content {
    overflow: visible;
  }

  .pillar-header {
    text-align: center;
  }

  .pillar-num {
    float: none;
    display: inline-block;
    vertical-align: middle;
    margin-right: 0;
  }

  .pillar-header h4 {
    display: inline-block;
    vertical-align: middle;
    margin-left: 8px;
    overflow: visible;
  }

  .governance-pillars--capability-grid .governance-cap-card {
    float: none;
    width: auto;
    margin-right: 0;
  }

  .governance-cap-card__body {
    text-align: left;
  }

  .governance-cap-card__icon {
    width: 84px;
  }
}

/* ========== 管理平台页（business-platform） ========== */
.platform-cta {
  margin: 20px 0;
}

.platform-cta::after {
  content: "";
  display: table;
  clear: both;
}

.platform-cta__btn {
  float: left;
  margin: 0 15px 10px 0;
  display: inline-block;
  padding: 12px 28px;
  border: 1px solid #1890ff;
  border-radius: 6px;
  color: #1890ff;
  text-decoration: none;
  font-size: 15px;
  transition: opacity 0.3s;
}

.platform-cta__btn--primary {
  background: #1890ff;
  color: #fff;
}

.platform-cta__btn:hover {
  opacity: 0.85;
}

.tri-cards.tri-cards--illus{
  margin-top: 30px;
}
.tri-card {
  float: left;
  width: 32%;
  margin-right: 2%;
  /* margin-bottom: 30px; */
  box-sizing: border-box;
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
}

.tri-card:nth-child(3n) {
  margin-right: 0;
}

.tri-card__media img {
  width: 100%;
  height: auto;
  display: block;
}

.tri-card__body {
  padding: 24px;
}

.tri-card__body h4 {
  font-size: 18px;
  margin: 0 0 10px;
  color: #333;
}

.tri-card__body p {
  font-size: 15px;
  color: #666;
  line-height: 28px;
}

.five-accounts {
  margin: 30px 0;
}

.five-accounts::after {
  content: "";
  display: table;
  clear: both;
}

.account-item {
  float: left;
  width: 20%;
  box-sizing: border-box;
  padding: 0 10px;
  text-align: center;
}

.account-item img {
  margin-bottom: 10px;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.account-item span {
  display: block;
  font-size: 16px;
  color: #333;
}

.launch-showcase {
  margin-top: 40px;
}

.launch-gallery::after {
  content: "";
  display: table;
  clear: both;
}

.launch-item {
  float: left;
  width: 49%;
  margin-right: 2%;
  margin-bottom:10px;
}

.launch-item:nth-child(2n) {
  margin-right: 0;
}

.launch-item img {
  width: 100%;
  height: auto;
  border-radius: 8px;
  margin-bottom: 10px;
  display: block;
}

.launch-item span {
  font-size: 16px;
  color: #666;
}

.achievement-grid {
  margin-top: 30px;
}

.achievement-grid::after {
  content: "";
  display: table;
  clear: both;
}

.achievement-card {
  float: left;
  width: 23.5%;
  margin-right: 2%;
  margin-bottom: 20px;
  box-sizing: border-box;
  text-align: center;
  padding: 30px 20px;
  background: #f8f9fa;
  border-radius: 8px;
}

.achievement-card:nth-child(4n) {
  margin-right: 0;
}

.achievement-icon {
  margin-bottom: 15px;
  line-height: 0;
}

.achievement-card h4 {
  font-size: 18px;
  margin: 0 0 10px;
  color: #333;
  font-weight: 500;
}

.achievement-card p {
  font-size: 14px;
  color: #666;
  line-height: 1.6;
  margin: 0;
}

.achievement-metric {
  color: #0050be;
  font-size: 18px;
}

/* ========== 数据分析页（business-data） ========== */
.role-cards {
  margin: 30px 0;
}

.role-cards::after {
  content: "";
  display: table;
  clear: both;
}

.role-card {
  float: left;
  width: 32%;
  margin-right: 2%;
  box-sizing: border-box;
  text-align: center;
  padding: 30px;
  background: #f8f9fa;
  border-radius: 8px;
}

.role-card:nth-child(3n) {
  margin-right: 0;
}

.role-icon {
  margin-bottom: 15px;
  line-height: 0;
}
.role-icon img {
  width: 48px;
  height: 48px;
}
.role-card h4 {
  font-size: 18px;
  margin: 0 0 10px;
  color: #333;
  font-weight: 500;
}

.role-card p {
  font-size: 16px;
  color: #666;
  line-height:28px;
}

/* ========== 高端智库页（business-thinktank） ========== */
.collab-system {
  margin: 30px 0;
}

.collab-system::after {
  content: "";
  display: table;
  clear: both;
}

.collab-item {
  float: left;
  width: 23.5%;
  margin-right: 2%;
  margin-bottom: 20px;
  box-sizing: border-box;
  text-align: center;
  padding: 30px 20px;
  background: #f8f9fa;
  border-radius: 8px;
}

.collab-item:nth-child(4n) {
  margin-right: 0;
}

.collab-icon {
  margin-bottom: 15px;
  line-height: 0;
}

.collab-item h4 {
  font-size: 18px;
  margin: 0 0 8px;
  color: #333;
}

.collab-item p {
  font-size: 14px;
  color: #666;
  line-height: 28px;
}

.service-cards {
  margin: 30px 0;
}

.service-cards::after {
  content: "";
  display: table;
  clear: both;
}

.service-card {
  float: left;
  width: 23.5%;
  margin-right: 2%;
  margin-bottom: 20px;
  box-sizing: border-box;
  text-align: center;
  padding: 30px 20px;
  background: #fff;
  border: 1px solid #e8e8e8;
  border-radius: 8px;
}

.service-card:nth-child(4n) {
  margin-right: 0;
}

.service-num {
  display: inline-block;
  width: 36px;
  height: 36px;
  line-height: 36px;
  text-align: center;
  background: #1890ff;
  color: #fff;
  border-radius: 50%;
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 15px;
}

.service-card h4 {
  font-size: 16px;
  margin: 0 0 10px;
  color: #333;
  font-weight: 500;
}

.service-card p {
  font-size: 13px;
  color: #666;
  margin: 0;
  line-height: 1.6;
}

/* ========== AI智能页（business-ai） ========== */
.ai-product-matrix {
  margin: 30px 0;
}

.ai-product-matrix::after {
  content: "";
  display: table;
  clear: both;
}

.ai-product-item {
  float: left;
  width: 32%;
  margin-right: 2%;
  margin-bottom: 20px;
  box-sizing: border-box;
  text-align: center;
  padding: 25px 15px;
  background: #f8f9fa;
  border-radius: 8px;
}
.ai-product-item:nth-child(3n) {
  margin-right: 0;
}
.ai-product-icon {
  margin-bottom: 18px;
}
.ai-product-item h4 {
  font-size: 18px;
  margin: 0 0 8px;
  color: #333;
}
.ai-product-item p {
  font-size: 16px;
  color: #666;
  line-height:28px;
}
/* 管理平台 / 数据分析 / 高端智库 / AI智能：移动端栅格（浮动改单列/双列） */
@media (max-width: 768px) {
  .tri-card {
    float: none;
    width: auto;
    margin-right: 0;
  }

  .launch-item {
    float: none;
    width: auto;
    margin-right: 0;
  }

  .achievement-card {
    width: 49%;
    margin-right: 2%;
  }

  .achievement-card:nth-child(4n) {
    margin-right: 2%;
  }

  .achievement-card:nth-child(2n) {
    margin-right: 0;
  }

  .account-item {
    width: 50%;
    float: left;
    margin-bottom: 16px;
  }

  .role-card {
    float: none;
    width: auto;
    margin-right: 0;
  }

  .collab-item {
    width: 49%;
    margin-right: 2%;
  }

  .collab-item:nth-child(4n) {
    margin-right: 2%;
  }

  .collab-item:nth-child(2n) {
    margin-right: 0;
  }

  .service-card {
    width: 49%;
    margin-right: 2%;
  }

  .service-card:nth-child(4n) {
    margin-right: 2%;
  }

  .service-card:nth-child(2n) {
    margin-right: 0;
  }

  .ai-product-item {
    width: 49%;
    margin-right: 2%;
  }

  .ai-product-item:nth-child(3n) {
    margin-right: 2%;
  }

  .ai-product-item:nth-child(2n) {
    margin-right: 0;
  }
}

/* 搜索页 Banner：与其它内页共用 page-news-banner，从而套用同一套顶栏 */
.page-search-banner .page-news-banner__sub {
  width: auto;
  max-width: 640px;
}
.page-search-crumb {
  font-size: 14px;
  color: rgba(255, 255, 255, 0.85);
  margin: 0 0 12px;
}
.page-search-crumb a {
  color: #fff;
  text-decoration: none;
}
.page-search-crumb a:hover {
  text-decoration: underline;
}
.page-search-crumb__current {
  opacity: 0.9;
}
.page-search-summary .page-search-keyword {
  font-weight: 600;
}

/* 搜索结果列表：仅标题 + 时间（与新闻列表 DOM 独立） */
.page-search-list-wrap {
  padding: 36px 0 56px;
  background: #fafbfc;
}

.xcit-ss-head {
  margin: 0 0 22px;
}

.xcit-ss-page-title {
  float: left;
  width: 68%;
  margin: 0;
  text-align: left;
  font-size: 28px;
  line-height: 36px;
  color: #333;
}

.xcit-ss-meta.xcit-ss-summary {
  float: right;
  width: 30%;
  margin: 0;
  text-align: right;
  font-size: 16px;
  line-height: 36px;
  color: #666;
}
.xcit-ss-meta .xcit-ss-total {
  color: #0050be;
  font-weight: bold;
}

@media (max-width: 767px) {
  .xcit-ss-page-title,
  .xcit-ss-meta.xcit-ss-summary {
    float: none;
    width: auto;
  }
  .xcit-ss-page-title {
    font-size: 22px;
    line-height: 30px;
    margin-bottom: 8px;
  }
  .xcit-ss-meta.xcit-ss-summary {
    text-align: left;
    line-height: 24px;
  }
}

/* 搜索结果：无匹配时的提示块（与列表同区背景） */
.page-search-list-wrap .tips {
  margin: 0 auto 24px;
  padding: 40px 24px 48px;
  text-align: center;
}
.page-search-list-wrap .tips .pics {
  margin: 0 auto 20px;
  width: 120px;
  height: 120px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}
.page-search-list-wrap .tips h6 {
  margin: 0;
  font-size: 16px;
  color: #666;
  line-height: 32px;
}
.xcit-ss-mount{
  font-size: 16px;
  line-height: 32px;
  color: #333;
  background: #fff;
  min-height: calc(100vh - 600px);
  border: 1px solid #e2e8f0;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.06);
  border-radius: 8px;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  -ms-border-radius: 8px;
  -o-border-radius: 8px;
}

@keyframes xcit-ss-spin {
  to {
    transform: rotate(360deg);
  }
}
.xcit-ss-mount .xcit-ss-loading {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  min-height: 220px;
  padding: 40px 20px;
  box-sizing: border-box;
}
.xcit-ss-mount .xcit-ss-loading__spinner {
  width: 40px;
  height: 40px;
  box-sizing: border-box;
  border: 3px solid rgba(0, 80, 190, 0.22);
  border-top-color: #0050be;
  border-radius: 50%;
  animation: xcit-ss-spin 0.65s linear infinite;
}
@media (prefers-reduced-motion: reduce) {
  .xcit-ss-mount .xcit-ss-loading__spinner {
    animation: none;
    border-top-color: rgba(0, 80, 190, 0.55);
  }
}
.xcit-ss-mount .xcit-ss-loading__hint {
  font-size: 16px;
  line-height: 32px;
  color: #666;
}
.search-result-list {

}
.search-result-item {
  border-bottom: 1px solid #e2e8f0;
}
.search-result-item__link {
  display: block;
  padding: 18px 22px;
  text-decoration: none;
  color: #333;
  transition: background 0.15s ease, color 0.15s ease;
  -webkit-transition: background 0.15s ease, color 0.15s ease;
  -moz-transition: background 0.15s ease, color 0.15s ease;
  -ms-transition: background 0.15s ease, color 0.15s ease;
  -o-transition: background 0.15s ease, color 0.15s ease;
}
.search-result-item__link::after {
  content: "";
  display: table;
  clear: both;
}
.search-result-item__link:hover{
  background: #f8fafc;
  color: #0050be;
}
.search-result-item__title {
  float: left;
  width: 80%;
  font-size: 16px;
  line-height: 28px;
}
.search-result-item__time {
  float: right;
  font-size: 16px;
  color: #666;
  line-height: 28px;
}
.mark.search-hit,
mark.search-hit {
  background: transparent;
  color: #0050be;
  font-weight: bold;
}
.search-result-badge {
  display: inline-block;
  margin-right: 8px;
  padding: 2px 8px;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.4;
  color: #0f766e;
  background: #ccfbf1;
  border-radius: 4px;
  vertical-align: middle;
}
.search-result-badge--news {
  color: #0369a1;
  background: #e0f2fe;
}
.search-result-meta {
  clear: both;
  margin-top: 6px;
  font-size: 13px;
  color: #94a3b8;
}
.search-result-item__link:hover .search-result-meta {
  color: #64748b;
}
.search-result-item__link:hover .search-result-item__time,
.search-result-item__link:focus-visible .search-result-item__time {
  color: #0f766e;
}
@media (max-width: 640px) {
  .search-result-item__link {
    padding: 14px 16px;
  }
}

.page-search-empty-card {
  max-width: 720px;
  margin: 0 auto 48px;
  padding: 32px 28px 36px;
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 8px 32px rgba(15, 23, 42, 0.08);
}
.page-search-empty-lead {
  font-size: 18px;
  margin: 0 0 16px;
  color: #1e293b;
}
.page-search-empty-tips {
  margin: 0 0 28px;
  padding-left: 1.25em;
  color: #475569;
  line-height: 1.7;
}
.page-search-empty-tips a {
  color: #0f766e;
}
.page-search-empty-formlabel {
  font-size: 15px;
  font-weight: 600;
  margin: 0 0 12px;
  color: #334155;
}
.page-search-inline-form {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}
.page-search-inline-input {
  flex: 1 1 220px;
  min-width: 0;
  height: 44px;
  padding: 0 14px;
  border: 1px solid #cbd5e1;
  border-radius: 6px;
  font-size: 15px;
}
.page-search-inline-input:focus {
  outline: none;
  border-color: #0f766e;
  box-shadow: 0 0 0 3px rgba(15, 118, 110, 0.15);
}
.page-search-inline-submit {
  min-width: 96px;
  height: 44px;
  line-height: 44px;
  padding: 0 20px;
}
.search-pagination-wrap {
  margin-top: 8px;
}

/* ========== 首页（#hero）/ 内页 Banner 顶栏（叠加在 Banner 上，避免双层头部） ========== */
body:has(#hero), body:has(.page-news-banner) {
  --home-blue: #0050be;
  --home-blue-deep: #0050be;
  --home-blue-dark: #071A35;
  --home-red: #94070a;
  --home-silver: #F3F6F8;
  --home-text: #17283E;
  padding-top: 0;
  scroll-behavior: auto;
  overflow-anchor: auto;
}

body:has(#hero) .container,
body:has(.page-news-banner) .container {
  padding-left: 0;
  padding-right: 0;
}

@media (min-width: 1321px) {
  body:has(#hero) .container,
  body:has(.page-news-banner) .container {
    max-width: 1300px;
  }
}

body:has(#hero) .site-header, body:has(.page-news-banner) .site-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 2000;
  height: 62px;
  background: transparent;
  border-bottom: 1px solid rgba(255,255,255,.18);
  box-shadow: none;
  transition: background-color .25s ease, box-shadow .25s ease, border-color .25s ease;
}

body:has(#hero) .site-header.is-scrolled,
body:has(.page-news-banner) .site-header.is-scrolled {
  background: rgba(255,255,255,.98);
  border-bottom-color: rgba(7, 43, 83, .08);
  box-shadow: 0 10px 28px rgba(5, 33, 71, .08);
}

body:has(#hero) .site-header .header-inner,
body:has(.page-news-banner) .site-header .header-inner {
  height: 62px;
  position: relative;
  overflow: visible;
}

body:has(#hero) .header-nav-wrap, body:has(.page-news-banner) .header-nav-wrap,
body:has(#hero) .main-nav, body:has(.page-news-banner) .main-nav,
body:has(#hero) .main-nav > ul, body:has(.page-news-banner) .main-nav > ul,
body:has(#hero) .main-nav > ul > li, body:has(.page-news-banner) .main-nav > ul > li {
  position: relative;
  overflow: visible;
}

body:has(#hero) .logo, body:has(.page-news-banner) .logo {
  float: left;
  width: auto;
  max-width: 220px;
  height: 62px;
  margin: 0 24px 0 0;
  padding: 10px 0 0;
  overflow: hidden;
}

body:has(#hero) .logo-image,
body:has(.page-news-banner) .logo-image {
  display: block;
  width: auto;
  max-width: 220px;
}

body:has(#hero) .logo-image img,
body:has(.page-news-banner) .logo-image img {
  width: auto;
  max-width: 220px;
  max-height: 42px;
}

body:has(#hero) .logo-image--light,
body:has(.page-news-banner) .logo-image--light {
  display: block;
}

body:has(#hero) .logo-image--dark, body:has(.page-news-banner) .logo-image--dark,
body:has(#hero) .site-header.is-scrolled .logo-image--light,
body:has(.page-news-banner) .site-header.is-scrolled .logo-image--light {
  display: none;
}

body:has(#hero) .site-header.is-scrolled .logo-image--dark,
body:has(.page-news-banner) .site-header.is-scrolled .logo-image--dark {
  display: block;
}

body:has(#hero) .header-nav-wrap,
body:has(.page-news-banner) .header-nav-wrap {
  height: 62px;
  margin: 0;
  padding: 0;
  float: right;
  width: auto;
  max-width: calc(100% - 244px);
  position: relative;
}

body:has(#hero) .main-nav,
body:has(.page-news-banner) .main-nav {
  float: left;
  height: 62px;
}

body:has(#hero) .main-nav > ul,
body:has(.page-news-banner) .main-nav > ul {
  margin: 0;
  padding: 0;
  font-size: 0;
}

body:has(#hero) .main-nav > ul > li,
body:has(.page-news-banner) .main-nav > ul > li {
  position: relative;
  position: relative;
  display: inline-block;
  vertical-align: top;
  margin: 0 13px;
  height: 62px;
  font-size: 15px;
}

body:has(#hero) .main-nav > ul > li > a,
body:has(.page-news-banner) .main-nav > ul > li > a {
  position: relative;
  display: block;
  height: 62px;
  line-height: 62px;
  padding: 0;
  color: rgba(255,255,255,.96)
}

body:has(#hero) .site-header.is-scrolled .main-nav > ul > li > a,
body:has(.page-news-banner) .site-header.is-scrolled .main-nav > ul > li > a {
  color: #203349;
}

body:has(#hero) .main-nav > ul > li.is-active > a, body:has(.page-news-banner) .main-nav > ul > li.is-active > a,
body:has(#hero) .main-nav > ul > li:hover > a,
body:has(.page-news-banner) .main-nav > ul > li:hover > a {
  color: #fff;
}

body:has(#hero) .site-header.is-scrolled .main-nav > ul > li.is-active > a, body:has(.page-news-banner) .site-header.is-scrolled .main-nav > ul > li.is-active > a,
body:has(#hero) .site-header.is-scrolled .main-nav > ul > li:hover > a,
body:has(.page-news-banner) .site-header.is-scrolled .main-nav > ul > li:hover > a {
  color: var(--home-red);
}

body:has(#hero) .main-nav > ul > li.is-active > a::after, body:has(.page-news-banner) .main-nav > ul > li.is-active > a::after,
body:has(#hero) .main-nav > ul > li:hover > a::after, body:has(.page-news-banner) .main-nav > ul > li:hover > a::after,
body:has(#hero) .main-nav > ul > li.has-sub:focus-within > a::after,
body:has(.page-news-banner) .main-nav > ul > li.has-sub:focus-within > a::after {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 20px;
  height: 3px;
  margin-left: -10px;
  border: 0;
  background: var(--home-red);
  transform: none;
}

body:has(#hero) .main-nav li.has-sub > a:before,
body:has(.page-news-banner) .main-nav li.has-sub > a:before {
  display: none;
}

body:has(#hero) .nav-dropdown,
body:has(.page-news-banner) .nav-dropdown {
  top: calc(100% + 6px);
}

body:has(#hero) .nav-dropdown:before,
body:has(.page-news-banner) .nav-dropdown:before {
  display: block;
}

body:has(#hero) .main-nav .sub-nav.nav-dropdown,
body:has(.page-news-banner) .main-nav .sub-nav.nav-dropdown {
  position: absolute;
  right: auto;
  min-height: 0;
  text-align: left;
  list-style: none;
  border-top: 0;
  background: #fff;
}

body:has(#hero) .main-nav > ul > li.nav-panel-trigger,
body:has(.page-news-banner) .main-nav > ul > li.nav-panel-trigger {
  position: static;
}

body:has(#hero) .nav-dropdown--panel,
body:has(.page-news-banner) .nav-dropdown--panel {
  left: 50%;
  width: 980px;
  margin-left: 0;
  padding: 24px 38px 18px;
  white-space: nowrap;
  background: rgba(255,255,255,.96);
  border-top: 1px solid rgba(6, 75, 159, .18);
  transform: translateX(-50%) translateY(8px);
}

body:has(#hero) .nav-dropdown--index,
body:has(.page-news-banner) .nav-dropdown--index {
  width: 660px;
}

body:has(#hero) .nav-dropdown--solution,
body:has(.page-news-banner) .nav-dropdown--solution {
  width: 980px;
}

body:has(#hero) .nav-dropdown--small,
body:has(.page-news-banner) .nav-dropdown--small,
body:has(#hero) .nav-dropdown--about,
body:has(.page-news-banner) .nav-dropdown--about {
  width: max-content;
  margin-left: 0;
}

body:has(#hero) .nav-dropdown-col,
body:has(.page-news-banner) .nav-dropdown-col {
  display: inline-block;
  vertical-align: top;
  width: 270px;
  padding: 0 18px;
  white-space: normal;
}

body:has(#hero) .nav-dropdown--solution .nav-dropdown-col,
body:has(.page-news-banner) .nav-dropdown--solution .nav-dropdown-col {
  width: 180px;
}

body:has(#hero) .nav-dropdown a.nav-dropdown-head,
body:has(.page-news-banner) .nav-dropdown a.nav-dropdown-head {
  padding-bottom: 12px;
  margin-bottom: 4px;
  border-bottom: 1px solid rgba(6, 75, 159, .1);
}

body:has(#hero) .nav-dropdown a:not(.nav-dropdown-head),
body:has(.page-news-banner) .nav-dropdown a:not(.nav-dropdown-head) {
  padding: 10px 14px;
  text-align: left;
}

body:has(#hero) .main-nav li.has-sub:hover .nav-dropdown, body:has(.page-news-banner) .main-nav li.has-sub:hover .nav-dropdown,
body:has(#hero) .main-nav li.has-sub:focus-within .nav-dropdown,
body:has(.page-news-banner) .main-nav li.has-sub:focus-within .nav-dropdown {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0) scale(1);
}

body:has(#hero) .main-nav li.has-sub:hover .nav-dropdown--panel, body:has(.page-news-banner) .main-nav li.has-sub:hover .nav-dropdown--panel,
body:has(#hero) .main-nav li.has-sub:focus-within .nav-dropdown--panel,
body:has(.page-news-banner) .main-nav li.has-sub:focus-within .nav-dropdown--panel {
  transform: translateX(-50%) translateY(0) scale(1);
}

body:has(#hero) .main-nav li.has-sub-empty:hover .nav-dropdown,
body:has(.page-news-banner) .main-nav li.has-sub-empty:hover .nav-dropdown,
body:has(#hero) .main-nav li.has-sub-empty:focus-within .nav-dropdown,
body:has(.page-news-banner) .main-nav li.has-sub-empty:focus-within .nav-dropdown {
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transform: translateY(12px) scale(0.97);
}

body:has(#hero) .main-nav li.has-sub-empty:hover .nav-dropdown--panel,
body:has(.page-news-banner) .main-nav li.has-sub-empty:hover .nav-dropdown--panel,
body:has(#hero) .main-nav li.has-sub-empty:focus-within .nav-dropdown--panel,
body:has(.page-news-banner) .main-nav li.has-sub-empty:focus-within .nav-dropdown--panel {
  transform: translateX(-50%) translateY(8px) scale(0.97);
}

body:has(#hero) .nav-dropdown a,
body:has(.page-news-banner) .nav-dropdown a {
  display: block;
  color: #334862;
  line-height: 1.5;
  border-left: 0;
}

body:has(#hero) .nav-dropdown a:hover,
body:has(.page-news-banner) .nav-dropdown a:hover {
  color: #064b9f;
  background: rgba(26, 137, 254, .1);
  transform: none;
}

body:has(#hero) .nav-dropdown span,
body:has(.page-news-banner) .nav-dropdown span {
  display: block;
  margin-top: 5px;
  color: #8090a6;
  font-size: 14px;
}

body:has(#hero) .header-right,
body:has(.page-news-banner) .header-right {
  float: left;
  height: 62px;
  margin: 0 0 0 16px;
  padding: 13px 0 0 0;
}

body:has(#hero) .header-right > *,
body:has(.page-news-banner) .header-right > * {
  display: block;
  margin-left: 0;
}

body:has(#hero) .header-search-pill,
body:has(.page-news-banner) .header-search-pill {
  position: relative;
  width: 168px;
  height: 34px;
  border: 1px solid rgba(255,255,255,.42);
  border-radius: 18px;
  background: transparent;
  box-sizing: border-box;
}

body:has(#hero) .header-search-pill form,
body:has(.page-news-banner) .header-search-pill form {
  display: block;
  height: 34px;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body:has(#hero) .site-header.is-scrolled .header-search-pill,
body:has(.page-news-banner) .site-header.is-scrolled .header-search-pill {
  border-color: #d7e2ee;
  background: transparent;
}

body:has(#hero) .header-search-icon,
body:has(.page-news-banner) .header-search-icon {
  position: absolute;
  left: 14px;
  top: 50%;
  width: 16px;
  height: 16px;
  margin-top: -8px;
  pointer-events: none;
  background: url(../images/icon-seach-white.png) center center / contain no-repeat;
}

body:has(#hero) .site-header.is-scrolled .header-search-icon,
body:has(.page-news-banner) .site-header.is-scrolled .header-search-icon {
  background-image: url(../images/icon-seach-black.png);
}

body:has(#hero) .header-search-input,
body:has(.page-news-banner) .header-search-input {
  display: block;
  width: 100%;
  height: 32px;
  border: 0;
  outline: 0;
  background: transparent;
  color: #fff;
  font-size: 14px;
  line-height: 32px;
  padding: 0 12px 0 38px;
  box-sizing: border-box;
}

body:has(#hero) .header-search-input::placeholder,
body:has(.page-news-banner) .header-search-input::placeholder {
  color: rgba(255,255,255,.78);
}

body:has(#hero) .site-header.is-scrolled .header-search-input,
body:has(.page-news-banner) .site-header.is-scrolled .header-search-input {
  color: var(--home-text);
}

body:has(#hero) .site-header.is-scrolled .header-search-input::placeholder,
body:has(.page-news-banner) .site-header.is-scrolled .header-search-input::placeholder {
  color: #6e7f95;
}

body:has(#hero) .header-search-pill:focus-within,
body:has(.page-news-banner) .header-search-pill:focus-within {
  border-color: var(--home-cyan);
  box-shadow: 0 0 0 3px rgba(0, 169, 223, .12);
}

body:has(#hero) .section-hero {
  margin-top: 0;
  height: 100vh;
  min-height: 100vh;
  position: relative;
  overflow: hidden;
  contain: layout style paint;
}

body:has(#hero) .section-hero .slide-bg {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background-color: #071a35;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

body:has(#hero) .section-hero .slide-bg:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(90deg, rgba(7, 26, 53, .55) 0%, rgba(7, 26, 53, .22) 42%, rgba(7, 26, 53, 0) 68%);
}

body:has(#hero) .section-hero .hero-inner {
  position: relative;
  z-index: 2;
  display: block;
  height: 100%;
  min-height: 100vh;
  padding-top: 62px;
  box-sizing: border-box;
}

body:has(#hero) .hero-swiper,
body:has(#hero) .hero-swiper .swiper-slide {
  height: 100%;
  min-height: 100vh;
}

body:has(#hero) .hero-swiper .swiper-slide {
  position: relative;
}

body:has(#hero) .hero-text {
  position: relative;
  top: 38%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}
/* Hero Banner 文字区 */
body:has(#hero) .hero-swiper .swiper-slide.banner1 .hero-text,
body:has(#hero) .hero-swiper .swiper-slide.banner2 .hero-text,
body:has(#hero) .hero-swiper .swiper-slide.banner3 .hero-text,
body:has(#hero) .hero-swiper .swiper-slide.banner4 .hero-text {
  width: 62%;
}

body:has(#hero) .hero-text h1 {
  margin: 0;
  font-size: 48px;
  line-height: 1.35;
  font-weight: 700;
  color: #fff;
  text-shadow: 0 2px 12px rgba(0, 0, 0, .35);
}

body:has(#hero) .hero-accent-line {
  display: block;
  width: 96px;
  height: 3px;
  margin: 16px 0 45px;
  background: var(--home-red);
}

body:has(#hero) .hero-tagline {
  margin: 0 0 16px;
  color: #4dd4ff;
  font-size: 20px;
  line-height: 1.6;
  font-weight: 500;
  width: 100%;
  max-width: 580px;
  text-shadow: 0 1px 8px rgba(0, 0, 0, .25);
}

body:has(#hero) .hero-desc {
  margin: 0;
  color: rgba(255, 255, 255, .92);
  font-size: 18px;
  line-height:36px;
  width: 82%;

  text-shadow: 0 1px 8px rgba(0, 0, 0, .28);
}

body:has(#hero) .hero-more-link {
  position: relative;
  display: inline-block;
  margin-top: 24px;
  color: #fff;
  font-size: 16px;
  line-height: 1.5;
  text-decoration: none;
  padding-bottom: 4px;
  border-bottom: 1px solid rgba(255, 255, 255, .45);
  transition: color .25s ease;
}

body:has(#hero) .hero-more-link::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 0;
  height: 2px;
  background: var(--home-red);
  transition: width .35s ease;
}

body:has(#hero) .hero-more-link:hover {
  color: #fff;
  text-decoration: none;
}

body:has(#hero) .hero-more-link:hover::after {
  width: 100%;
}

body:has(#hero) .hero-actions {
  margin-top: 28px;
}

body:has(#hero) .btn-hero-primary,
body:has(#hero) .btn-hero-outline {
  display: inline-block;
  min-width: 148px;
  height: 44px;
  line-height: 42px;
  padding: 0 22px;
  margin-right: 16px;
  border-radius: 4px;
  font-size: 15px;
  font-weight: 500;
  text-align: center;
  text-decoration: none;
  transition: background .2s ease, border-color .2s ease, opacity .2s ease;
}

body:has(#hero) .btn-hero-primary {
  background: var(--home-red);
  border: 1px solid var(--home-red);
  color: #fff;
}

body:has(#hero) .btn-hero-primary:hover {
  background: #a52435;
  border-color: #a52435;
  color: #fff;
}

body:has(#hero) .btn-hero-outline {
  background: transparent;
  border: 1px solid rgba(255, 255, 255, .85);
  color: #fff;
}

body:has(#hero) .btn-hero-outline:hover {
  background: rgba(255, 255, 255, .12);
  color: #fff;
}

body:has(#hero) .hero-feature-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

body:has(#hero) .hero-feature-list li {
  position: relative;
  margin: 0 0 12px;
  padding-left: 18px;
  color: rgba(255, 255, 255, .92);
  font-size: 18px;
  line-height: 1.85;
  text-shadow: 0 1px 8px rgba(0, 0, 0, .28);
}

body:has(#hero) .hero-feature-list li:last-child {
  margin-bottom: 0;
}

body:has(#hero) .hero-feature-list li:before {
  content: "";
  position: absolute;
  left: 0;
  top: 12px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #4dd4ff;
  box-shadow: 0 0 8px rgba(77, 212, 255, .65);
}

body:has(#hero) .hero-feature-list strong {
  color: #fff;
  font-weight: 600;
}

body:has(#hero) .hero-inner--banner4 {
  display: block;
}

body:has(#hero) .hero-inner--banner4 .hero-text {
  
}

body:has(#hero) .hero-trust-bar {
  display: block;
  overflow: hidden;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 96px;
  width: auto;
  max-width: 920px;
  padding: 14px 24px;
  border: 1px solid rgba(255, 255, 255, .32);
  border-radius: 8px;
  background: rgba(7, 26, 53, .72);
}

body:has(#hero) .hero-trust-brand {
  display: inline-block;
  vertical-align: middle;
  min-width: 180px;
}

body:has(#hero) .hero-trust-brand-mark {
  display: inline-block;
  vertical-align: middle;
  margin-right: 12px;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(255, 255, 255, .45);
  border-radius: 50%;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 40px;
  text-align: center;
}

body:has(#hero) .hero-trust-brand-text {
  display: inline-block;
  vertical-align: middle;
  color: #fff;
  font-size: 14px;
  line-height: 1.35;
  font-weight: 500;
}

body:has(#hero) .hero-trust-cities {
  display: inline-block;
  vertical-align: middle;
  margin-left: 28px;
}

body:has(#hero) .hero-trust-city {
  display: inline-block;
  position: relative;
  margin-right: 24px;
  padding-top: 34px;
  color: rgba(255, 255, 255, .92);
  font-size: 13px;
  line-height: 1.2;
  text-align: center;
}

body:has(#hero) .hero-trust-city:last-child {
  margin-right: 0;
}

body:has(#hero) .hero-trust-city:before {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  width: 28px;
  height: 28px;
  margin-left: -14px;
  border: 1px solid rgba(255, 255, 255, .45);
  border-radius: 50%;
  background: rgba(255, 255, 255, .08);
}

body:has(#hero) .hero-trust-certs {
  float: right;
  display: inline-block;
  vertical-align: middle;
}

body:has(#hero) .hero-trust-cert {
  display: inline-block;
  margin-left: 20px;
  color: rgba(255, 255, 255, .88);
  font-size: 12px;
  line-height: 1.35;
  text-align: center;
  white-space: nowrap;
}

body:has(#hero) .hero-trust-cert:first-child {
  margin-left: 0;
}

body:has(#hero) .hero-swiper .swiper-slide.banner3 .slide-bg:after {
  background: linear-gradient(90deg, rgba(7, 26, 53, .88) 0%, rgba(7, 26, 53, .72) 34%, rgba(7, 26, 53, .18) 58%, rgba(7, 26, 53, 0) 72%);
}

body:has(#hero) .hero-swiper .swiper-slide.banner4 .slide-bg:after {
  background: linear-gradient(90deg, rgba(6, 28, 68, .82) 0%, rgba(6, 28, 68, .48) 42%, rgba(6, 28, 68, .12) 68%, rgba(6, 28, 68, 0) 100%);
}

body:has(#hero) .hero-swiper:not(.swiper-container-initialized) .swiper-slide:first-child .hero-text h1,
body:has(#hero) .hero-swiper:not(.swiper-container-initialized) .swiper-slide:first-child .hero-text .hero-accent-line,
body:has(#hero) .hero-swiper:not(.swiper-container-initialized) .swiper-slide:first-child .hero-text .hero-desc,
body:has(#hero) .hero-swiper:not(.swiper-container-initialized) .swiper-slide:first-child .hero-text .hero-tagline,
body:has(#hero) .hero-swiper:not(.swiper-container-initialized) .swiper-slide:first-child .hero-text .hero-more-link,
body:has(#hero) .hero-swiper:not(.swiper-container-initialized) .swiper-slide:first-child .hero-text .hero-actions,
body:has(#hero) .hero-swiper:not(.swiper-container-initialized) .swiper-slide:first-child .hero-text .hero-feature-list,
body:has(#hero) .hero-swiper:not(.swiper-container-initialized) .swiper-slide:first-child .hero-trust-bar {
  opacity: 1;
  transform: translateY(0);
}

body:has(#hero) .hero-swiper.swiper-container-initialized .swiper-slide:not(.swiper-slide-active) .hero-text h1,
body:has(#hero) .hero-swiper.swiper-container-initialized .swiper-slide:not(.swiper-slide-active) .hero-text .hero-accent-line,
body:has(#hero) .hero-swiper.swiper-container-initialized .swiper-slide:not(.swiper-slide-active) .hero-text .hero-desc,
body:has(#hero) .hero-swiper.swiper-container-initialized .swiper-slide:not(.swiper-slide-active) .hero-text .hero-tagline,
body:has(#hero) .hero-swiper.swiper-container-initialized .swiper-slide:not(.swiper-slide-active) .hero-text .hero-more-link,
body:has(#hero) .hero-swiper.swiper-container-initialized .swiper-slide:not(.swiper-slide-active) .hero-text .hero-actions,
body:has(#hero) .hero-swiper.swiper-container-initialized .swiper-slide:not(.swiper-slide-active) .hero-text .hero-feature-list,
body:has(#hero) .hero-swiper.swiper-container-initialized .swiper-slide:not(.swiper-slide-active) .hero-trust-bar {
  opacity: 0;
  transform: translateY(12px);
  transition: opacity .65s ease, transform .9s cubic-bezier(.16, 1, .3, 1);
}

body:has(#hero) .hero-swiper.swiper-container-initialized .swiper-slide-active .hero-text h1,
body:has(#hero) .hero-swiper.swiper-container-initialized .swiper-slide-active .hero-text .hero-accent-line,
body:has(#hero) .hero-swiper.swiper-container-initialized .swiper-slide-active .hero-text .hero-desc,
body:has(#hero) .hero-swiper.swiper-container-initialized .swiper-slide-active .hero-text .hero-tagline,
body:has(#hero) .hero-swiper.swiper-container-initialized .swiper-slide-active .hero-text .hero-more-link,
body:has(#hero) .hero-swiper.swiper-container-initialized .swiper-slide-active .hero-text .hero-actions,
body:has(#hero) .hero-swiper.swiper-container-initialized .swiper-slide-active .hero-text .hero-feature-list,
body:has(#hero) .hero-swiper.swiper-container-initialized .swiper-slide-active .hero-trust-bar {
  opacity: 1;
  transform: translateY(0);
}

body:has(#hero) .hero-swiper .swiper-slide-active .hero-text h1,
body:has(#hero) .hero-swiper .swiper-slide-active .hero-text .hero-accent-line,
body:has(#hero) .hero-swiper .swiper-slide-active .hero-text .hero-desc,
body:has(#hero) .hero-swiper .swiper-slide-active .hero-text .hero-tagline,
body:has(#hero) .hero-swiper .swiper-slide-active .hero-text .hero-more-link,
body:has(#hero) .hero-swiper .swiper-slide-active .hero-text .hero-actions,
body:has(#hero) .hero-swiper .swiper-slide-active .hero-text .hero-feature-list,
body:has(#hero) .hero-swiper .swiper-slide-active .hero-trust-bar {
  transition: opacity .65s ease, transform .9s cubic-bezier(.16, 1, .3, 1);
}

body:has(#hero) .hero-swiper.swiper-container-initialized .swiper-slide-active .hero-text h1 {
  transition-delay: .35s;
}

body:has(#hero) .hero-swiper .swiper-slide-active .hero-text .hero-accent-line {
  transition-delay: .5s;
}

body:has(#hero) .hero-swiper .swiper-slide-active .hero-text .hero-tagline {
  transition-delay: .65s;
}

body:has(#hero) .hero-swiper .swiper-slide-active .hero-text .hero-desc {
  transition-delay: .8s;
}

body:has(#hero) .hero-swiper .swiper-slide-active .hero-text .hero-more-link {
  transition-delay: .95s;
}

body:has(#hero) .hero-swiper .swiper-slide-active .hero-text .hero-actions {
  transition-delay: 1.1s;
}

body:has(#hero) .hero-swiper .swiper-slide-active .hero-text .hero-feature-list {
  transition-delay: .65s;
}

body:has(#hero) .hero-swiper .swiper-slide-active .hero-trust-bar {
  transition-delay: 1.05s;
}

/* Hero Swiper 分页圆点 */
body:has(#hero) #heroSwiper .swiper-pagination {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 36px;
  z-index: 10;
  width: 100%;
  line-height: 1;
}

body:has(#hero) #heroSwiper .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  margin: 0 14px;
  border-radius: 50%;
  background: rgba(255, 255, 255, .4);
  opacity: 1;
  vertical-align: middle;
  transition: transform .3s ease, background-color .3s ease, box-shadow .3s ease;
}

body:has(#hero) #heroSwiper .swiper-pagination-bullet-active {
  width: 12px;
  height: 12px;
  background: #fff;
  animation: heroDotPulse 1.8s ease-in-out infinite;
}

@keyframes heroDotPulse {
  0%, 100% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(255, 255, 255, .55);
  }
  50% {
    transform: scale(1.18);
    box-shadow: 0 0 0 10px rgba(255, 255, 255, 0);
  }
}

@media (max-width: 991px) {
  body:has(#hero) .hero-swiper .swiper-slide.banner1 .hero-text,
  body:has(#hero) .hero-swiper .swiper-slide.banner2 .hero-text,
  body:has(#hero) .hero-swiper .swiper-slide.banner3 .hero-text,
  body:has(#hero) .hero-swiper .swiper-slide.banner4 .hero-text {
    width: 100%;
    max-width: none;
  }



body:has(#hero) .hero-trust-bar {
    padding: 12px 16px;
    bottom: 88px;
  }

body:has(#hero) .hero-trust-brand,
  body:has(#hero) .hero-trust-cities,
  body:has(#hero) .hero-trust-certs {
    display: block;
    float: none;
    margin-left: 0;
    margin-bottom: 16px;
    width: 100%;
  }

body:has(#hero) .hero-trust-certs {
    margin-bottom: 0;
  }

body:has(#hero) .hero-text h1 {
    font-size: 32px;
  }

body:has(#hero) .hero-tagline {
    font-size: 17px;
  }

body:has(#hero) .hero-desc {
    font-size: 16px;
    line-height: 1.75;
  }

  body:has(#hero) #heroSwiper .swiper-pagination {
    bottom: 28px;
  }

  body:has(#hero) #heroSwiper .swiper-pagination-bullet {
    width: 7px;
    height: 7px;
    margin: 0 6px;
  }

  body:has(#hero) #heroSwiper .swiper-pagination-bullet-active {
    width: 11px;
    height: 11px;
  }

body:has(#hero) .section-hero,
  body:has(#hero) .hero-swiper .swiper-slide {
    height: 100vh;
    min-height: 100vh;
  }

body:has(#hero) .section-hero .hero-inner {
    min-height: 100vh;
    padding-top: 58px;
    padding-bottom: 72px;
  }
}

/* 全站统一底部 CTA：放在公共底部模板，样式不依赖各页 body:has */
.section-cta {
  position: relative;
  height: 272px;
  padding: 45px 0 0;
  overflow: hidden;
}
.section-cta::before{
  content: ""; 
  position: absolute; 
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background:
    linear-gradient(90deg,rgba(8,25,57,.96),rgba(11,54,120,.84),rgba(8,25,57,.64)),
    url("../images/gen-section-consult-sz-v1.jpg") center/cover no-repeat;
  opacity:1;
}
.cta-inner {
  position: relative;
  z-index: 1;
  text-align: center;
  color: #fff;
  padding-top: 10px;
}

.section-cta h2 {
  margin: 0 0 22px;
  color: #fff;
  font-size: 32px;
  line-height: 1.28;
}

.section-cta p {
  margin: 0 0 24px;
  color: rgba(255,255,255,.9);
  font-size: 22px;
  line-height: 1.35;
}

.cta-btn {
  position: relative;
  z-index: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 120px;
  height: 48px;
  padding: 0;
  line-height: 1;
  border: 1px solid #fff;
  border-radius: 5px;
  background: transparent;
  box-shadow: none;
  color: #fff;
  font-size: 16px;
  overflow: hidden;
  transition: border-color .3s ease, transform .25s ease, box-shadow .3s ease, filter .3s ease;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.cta-btn::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: linear-gradient(180deg, #2a9dff 0%, #1a89fe 48%, #0050be 100%);
  transform: scaleX(0);
  transform-origin: center center;
  transition: transform .42s cubic-bezier(.4, 0, .2, 1);
  z-index: -1;
  -webkit-transition: transform .42s cubic-bezier(.4, 0, .2, 1);
  -moz-transition: transform .42s cubic-bezier(.4, 0, .2, 1);
  -ms-transition: transform .42s cubic-bezier(.4, 0, .2, 1);
  -o-transition: transform .42s cubic-bezier(.4, 0, .2, 1);
}

.cta-btn:hover {
  border-color: transparent;
  color: #fff;
  filter: saturate(1.1) brightness(1.05) drop-shadow(0 4px 14px rgba(26, 137, 254, .28));
  box-shadow:
    0 4px 14px rgba(0, 80, 190, .36),
    0 10px 24px rgba(7, 26, 53, .28);
}

.cta-btn:hover::before {
  transform: scaleX(1);
}

/* 首页模块：标准文档流滚动，不使用 content-visibility / scroll-snap */
body:has(#hero) .section:not(.section-cta) {
  /* padding-top: 60px; */
  scroll-snap-align: none;
}

body:has(#hero) .section-core,
body:has(#hero) .section-core-business,
body:has(#hero) .section-release,
body:has(#hero) .section-cases,
body:has(#hero) .section-news {
  padding-top: 65px;
  padding-bottom: 0;
}

body:has(#hero) .section-core-business {
  position: relative;
}

body:has(#hero) .section-core-business:not(.business-section-v2) {
  background: linear-gradient(180deg, #e8f4fc 0%, #dbeafe 35%, #eff6ff 70%, #f0f9ff 100%);
}

body:has(#hero) .section-core-business .container {
  position: relative;
  z-index: 1;
}

/* ========== 首页核心业务（coreProduct 七大业务环） ========== */
body:has(#hero) .section-header-core .section-header-line {
  display: block;
  width: 48px;
  height: 3px;
  background: #f97223;
  margin: 10px auto 16px;
  border-radius: 0;
}

body:has(#hero) .productIntroduce {
  margin-top: 40px;
}

body:has(#hero) .productIntroduce-swiper-slide::after {
  content: '\20';
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
  overflow: hidden;
}

body:has(#hero) .productIntroduce_left {
  width: 55%;
  margin-bottom: 30px;
  float: left;
}

body:has(#hero) .productIntroduce_right {
  width: 30%;
  float: right;
  margin-top: 20px;
  margin-bottom: 30px;
  overflow: hidden;
}

body:has(#hero) .productIntroduce_title {
  font-weight: 400;
  font-size: 24px;
  color: #363740;
}

body:has(#hero) .productIntroduce_lable {
  margin-top: 20px;
}

body:has(#hero) .productIntroduce_lable>span {
  display: inline-block;
  border-radius: 4px;
  background: #eef7ff;
  border: 1px solid #aed1ff;
  font-weight: 400;
  color: #3873d9;
  padding: 0 5px;
  margin-right: 10px;
}

body:has(#hero) .productIntroduce_text {
  font-weight: 400;
  font-size: 16px;
  line-height: 36px;
  text-align: left;
  color: #666;
  margin-top: 20px;
}

body:has(#hero) .productIntroduce_btn {
  border-radius: 4px;
  background: linear-gradient(269deg, #1458a9 0%, #2e71be 46.01%, #5e9ee5 100%);
  box-shadow: 3px 3px 6px #358ee84a;
  font-weight: 400;
  font-size: 16px;
  line-height: 28px;
  color: #fff;
  width: max-content;
  padding: 10px 15px;
  margin-top: 60px;
  margin-bottom: 90px;
  cursor: pointer;
}

body:has(#hero) .productIntroduce_right img {
  width: 100%;
  height: 285px;
  object-fit: cover;
}

body:has(#hero) .productIntroduce_btn img {
  vertical-align: middle;
  margin-left: 5px;
}

body:has(#hero) .productIntroduce .swiper-button-next.swiper-button-disabled {
  opacity: 1 !important;
  background-image: url(../images/jt3.png) !important;
}

body:has(#hero) .productIntroduce .swiper-button-prev.swiper-button-disabled {
  opacity: 1 !important;
  background-image: url(../images/jt4.png) !important;
}

body:has(#hero) .core_box {
  height: 480px;
  width: 100%;
  margin: 0 auto;
  position: relative;
}

body:has(#hero) .core_box .core_pr {
  height: auto;
  animation: coreJump 2s linear infinite;
  position: absolute;
  left: 50%;
  width: 170px;
  margin-left: -85px;
  margin-top: -30px;
  z-index: 5;
}

body:has(#hero) .core_box .core_bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 450px;
  z-index: 1;
}

body:has(#hero) .core_box ul {
  position: relative;
  z-index: 3;
  width: 100%;
  margin: 0 auto;
  top: 9%;
}

body:has(#hero) .core_box ul li {
  width: 33%;
  /* cursor: pointer; */
}

body:has(#hero) .core_box ul li:first-child,
body:has(#hero) .core_box ul li:nth-child(3),
body:has(#hero) .core_box ul li:nth-child(5) {
  position: absolute;
  flex-direction: row;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

body:has(#hero) .core_box ul li:nth-child(2),
body:has(#hero) .core_box ul li:nth-child(4),
body:has(#hero) .core_box ul li:nth-child(6) {
  position: absolute;
  flex-direction: row-reverse;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

body:has(#hero) .core_box ul li:first-child {
  left: 5%;
}

body:has(#hero) .core_box ul li:nth-child(2) {
  right: 5%;
}

body:has(#hero) .core_box ul li:nth-child(3) {
  left: -6%;
}

body:has(#hero) .core_box ul li:nth-child(4) {
  right: -6%;
}

body:has(#hero) .core_box ul li:nth-child(5) {
  left: 5%;
}

body:has(#hero) .core_box ul li:nth-child(3),
body:has(#hero) .core_box ul li:nth-child(4) {
  margin-top: 6%;
}

body:has(#hero) .core_box ul li:nth-child(5),
body:has(#hero) .core_box ul li:nth-child(6) {
  margin-top: 12%;
}

body:has(#hero) .core_box ul li:nth-child(6) {
  right: 5%;
}

body:has(#hero) .core_box ul li:last-child {
  position: absolute;
  right: 0;
  margin-top: 11%;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column-reverse;
  align-content: center;
  align-items: center;
  width: 100%;
}

body:has(#hero) .core_box ul li:last-child .p_t,
body:has(#hero) .core_box ul li:last-child .p_text {
  text-align: center !important;
}

body:has(#hero) .core_box ul li>div {
  margin: auto 0;
}

body:has(#hero) .core_box ul li>div,
body:has(#hero) .core_box ul li:nth-child(3)>div,
body:has(#hero) .core_box ul li:nth-child(5)>div {
  text-align: right;
}

body:has(#hero) .core_box ul li:nth-child(2)>div,
body:has(#hero) .core_box ul li:nth-child(4)>div,
body:has(#hero) .core_box ul li:nth-child(6)>div,
body:has(#hero) .core_box ul li:last-child>div {
  text-align: left;
}

body:has(#hero) .core_box ul li .p_t {
  display: block;
  font-size: 18px;
  font-weight: 700;
  color: #2375EF;
  cursor: pointer;
}

body:has(#hero) .core_box ul li .p_text {
  font-size: 14px;
  color: #314C6B;
  cursor: pointer;
}

body:has(#hero) .core_box ul li img {
  width: 100px;
  height: auto;
  animation: coreJump 3s linear infinite;
}

body:has(#hero) .core_box ul li .icon_group img:hover {
  cursor: pointer;
  transform: scale(1.2);
  animation: coreJump 1s linear infinite;
}

body:has(#hero) .core_box ul li:first-child img,
body:has(#hero) .core_box ul li:nth-child(2) img,
body:has(#hero) .core_box ul li:nth-child(5) img,
body:has(#hero) .core_box ul li:nth-child(3) img,
body:has(#hero) .core_box ul li:nth-child(4) img,
body:has(#hero) .core_box ul li:nth-child(6) img {
  width: 60px;
}

body:has(#hero) .core_box ul li:first-child>div:first-child,
body:has(#hero) .core_box ul li:nth-child(2)>div:first-child,
body:has(#hero) .core_box ul li:nth-child(4)>div:first-child,
body:has(#hero) .core_box ul li:nth-child(6)>div:first-child {
  width: calc(100% - 81px);
}

body:has(#hero) .core_box ul li:nth-child(3)>div:first-child,
body:has(#hero) .core_box ul li:last-child>div:first-child,
body:has(#hero) .core_box ul li:nth-child(5)>div:first-child {
  width: calc(100% - 101px);
}

body:has(#hero) .core_box .animate {
  position: relative;
  z-index: 2;
  width: 100%;
  margin: 0 auto;
  top: 20%;
}

body:has(#hero) .core_box .ball {
  width: 100px;
  height: 100px;
  position: absolute;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  /* cursor: pointer; */
}

body:has(#hero) .core_box .ball img {
  width: 70px;
  height: 70px;
  margin-bottom: 10px;
}

body:has(#hero) .core_box .dot {
  position: relative;
  width: 10px;
  height: 10px;
  background-color: #b6d3ff;
  border-radius: 50%;
}

body:has(#hero) .core_box .dot::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 20px;
  height: 20px;
  background-color: rgba(182, 211, 255, 0.5);
  border-radius: 50%;
  z-index: -1;
}

body:has(#hero) .core_box .ball1 {
  animation: coreAnimX 9s cubic-bezier(0.36, 0, 0.64, 1) -4.5s infinite alternate,
    coreAnimY 9s cubic-bezier(0.36, 0, 0.64, 1) 0s infinite alternate,
    coreScale 18s cubic-bezier(0.36, 0, 0.64, 1) 0s infinite alternate;
}

body:has(#hero) .core_box .ball2 {
  animation: coreAnimX 9s cubic-bezier(0.36, 0, 0.64, 1) -7.5s infinite alternate,
    coreAnimY 9s cubic-bezier(0.36, 0, 0.64, 1) -3s infinite alternate,
    coreScale 18s cubic-bezier(0.36, 0, 0.64, 1) -3s infinite alternate;
}

body:has(#hero) .core_box .ball3 {
  animation: coreAnimX 9s cubic-bezier(0.36, 0, 0.64, 1) -10.5s infinite alternate,
    coreAnimY 9s cubic-bezier(0.36, 0, 0.64, 1) -6s infinite alternate,
    coreScale 18s cubic-bezier(0.36, 0, 0.64, 1) -6s infinite alternate;
}

body:has(#hero) .core_box .ball4 {
  animation: coreAnimX 9s cubic-bezier(0.36, 0, 0.64, 1) -13.5s infinite alternate,
    coreAnimY 9s cubic-bezier(0.36, 0, 0.64, 1) -9s infinite alternate,
    coreScale 18s cubic-bezier(0.36, 0, 0.64, 1) -9s infinite alternate;
}

body:has(#hero) .core_box .ball5 {
  animation: coreAnimX 9s cubic-bezier(0.36, 0, 0.64, 1) -16.5s infinite alternate,
    coreAnimY 9s cubic-bezier(0.36, 0, 0.64, 1) -12s infinite alternate,
    coreScale 18s cubic-bezier(0.36, 0, 0.64, 1) -12s infinite alternate;
}

body:has(#hero) .core_box .ball6 {
  animation: coreAnimX 9s cubic-bezier(0.36, 0, 0.64, 1) -19.5s infinite alternate,
    coreAnimY 9s cubic-bezier(0.36, 0, 0.64, 1) -15s infinite alternate,
    coreScale 18s cubic-bezier(0.36, 0, 0.64, 1) -15s infinite alternate;
}

body:has(#hero) .core_box .ball7 {
  animation: coreAnimX 9s cubic-bezier(0.36, 0, 0.64, 1) -22.5s infinite alternate,
    coreAnimY 9s cubic-bezier(0.36, 0, 0.64, 1) -18s infinite alternate,
    coreScale 18s cubic-bezier(0.36, 0, 0.64, 1) -18s infinite alternate;
}

@keyframes coreAnimX {
  0% { left: -3.5%; }
  100% { left: 96.5%; }
}

@keyframes coreAnimY {
  0% { top: -60px; }
  100% { top: 400px; }
}

@keyframes coreScale {
  0% { transform: scale(0.7); }
  50% { transform: scale(1.2); }
  100% { transform: scale(0.7); }
}

@keyframes coreJump {
  0% {
    opacity: 0.8;
    transform: translate(0, 0);
  }
  50% {
    opacity: 1;
    transform: translate(0, 6px);
  }
  100% {
    opacity: 0.8;
    transform: translate(0, 0);
  }
}

body:has(#hero) .section-release,
body:has(#hero) .section-cases,
body:has(#hero) .section-news {
  position: relative;
}

body:has(#hero) .section-release .container,
body:has(#hero) .section-cases .container,
body:has(#hero) .section-news .container {
  position: relative;
  z-index: 1;
}

body:has(#hero) .section-release {
  background:url('../images/section_bg4.jpg') center top / cover no-repeat;
}

body:has(#hero) .section-cases {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .18) 0%, rgba(243, 246, 248, .48) 72%, rgba(243, 246, 248, .72) 100%),
    url('../images/gen-section-cases-v2.jpg') center top / cover no-repeat;
}

body:has(#hero) .section-news {
  position: relative;
  background: linear-gradient(180deg, #f5f9fd 0%, #fafcfe 55%, #f0f6fc 100%);
}
body:has(#hero) .section-news::before{
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}

body:has(#hero) .section-panel {
  position: relative;
  padding: 10px 0px 95px;
}

body:has(#hero) .section-panel--core {
  padding: 0;
  border: none;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.section-core-business{
  padding-bottom: 80px !important;
}
body:has(#hero) .section-header {
  margin-bottom: 34px;
  text-align: center;
}

body:has(#hero) .section-header h2 {
  position: relative;
  display: inline-block;
  margin-bottom: 14px;
  padding-bottom: 12px;
}

body:has(#hero) .core-layout {
  position: relative;
  margin-bottom: 28px;
}

body:has(#hero) .core-copy {
  float: left;
  width: 28%;
  padding: 32px 0 0 6px;
}

body:has(#hero) .core-eyebrow {
  display: inline-block;
  margin-bottom: 14px;
  padding: 7px 14px;
  border-radius: 999px;
  background: rgba(6, 75, 159, .10);
  color: #064B9F;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .06em;
}

body:has(#hero) .core-copy h3 {
  margin: 0 0 16px;
  color: #071A35;
  font-size: 28px;
  line-height: 1.34;
}

body:has(#hero) .core-copy p {
  margin: 0 0 24px;
  color: #4E5D76;
  font-size: 16px;
  line-height: 1.88;
}

body:has(#hero) .core-points {
  list-style: none;
  margin: 0;
  padding: 0;
}

body:has(#hero) .core-points li {
  margin: 0 0 16px;
  padding: 14px 16px;
  border: 1px solid rgba(6, 75, 159, .12);
  border-radius: 16px;
  background: rgba(255, 255, 255, .72);
  box-shadow: 0 10px 24px rgba(7, 26, 53, .05);
}

body:has(#hero) .core-points li strong,
body:has(#hero) .core-points li span {
  display: block;
}

body:has(#hero) .core-points li strong {
  margin-bottom: 4px;
  color: #071A35;
  font-size: 16px;
  line-height: 1.35;
}

body:has(#hero) .core-points li span {
  color: #617089;
  font-size: 14px;
  line-height: 1.6;
}

body:has(#hero) .core-visual {
  float: right;
  width: 68%;
}

body:has(#hero) .core-orbit {
  position: relative;
  min-height: 470px;
  padding: 22px;
}

body:has(#hero) .core-bg {
  display: block;
  width: 100%;
  min-height: 420px;
  border-radius: 30px;
  object-fit: cover;
  box-shadow: 0 20px 42px rgba(7, 26, 53, .10);
}

body:has(#hero) .core-ring {
  position: absolute;
  left: 50%;
  border-radius: 50%;
  border: 1px solid rgba(6, 75, 159, .18);
  transform: translateX(-50%);
  pointer-events: none;
}

body:has(#hero) .core-ring--1 {
  top: 46px;
  width: 82%;
  height: 70%;
  border-color: rgba(0, 169, 223, .16);
}

body:has(#hero) .core-ring--2 {
  top: 82px;
  width: 64%;
  height: 50%;
  border-color: rgba(6, 75, 159, .18);
}

body:has(#hero) .core-node {
  position: absolute;
  z-index: 2;
  display: block;
  min-width: 112px;
  padding: 12px 18px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 12px 28px rgba(7, 26, 53, .10);
  color: #064B9F;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
}

body:has(#hero) .core-node:hover {
  transform: translateY(-4px) scale(1.03);
  box-shadow: 0 16px 32px rgba(7, 26, 53, .16);
  background: #fff;
}

body:has(#hero) .core-node--product {
  left: 14%;
  top: 20%;
}

body:has(#hero) .core-node--solution {
  right: 14%;
  top: 24%;
}

body:has(#hero) .core-node--scene {
  left: 50%;
  bottom: 18%;
  transform: translateX(-50%);
}

body:has(#hero) .core-center {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 154px;
  height: 154px;
  margin-left: -77px;
  margin-top: -77px;
  border-radius: 50%;
  background: radial-gradient(circle at 50% 38%, rgba(255,255,255,.98) 0%, rgba(255,255,255,.92) 46%, rgba(212, 232, 255, .88) 100%);
  box-shadow: 0 20px 40px rgba(6, 75, 159, .18);
  text-align: center;
}

body:has(#hero) .core-center em {
  display: block;
  margin-top: 30px;
  color: #00A9DF;
  font-size: 42px;
  font-style: normal;
  font-weight: 700;
  line-height: 1;
}

body:has(#hero) .core-center span {
  display: block;
  margin-top: 10px;
  color: #071A35;
  font-size: 15px;
  font-weight: 700;
}

body:has(#hero) .core-cards {
  margin-top: 8px;
}

body:has(#hero) .core-card {
  float: left;
  width: 31.5%;
  min-height: 118px;
  margin-right: 2.75%;
  padding: 22px 24px;
  border: 1px solid rgba(6, 75, 159, .10);
  border-radius: 22px;
  background: rgba(255, 255, 255, .88);
  box-shadow: 0 14px 34px rgba(7, 26, 53, .06);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

body:has(#hero) .core-card:last-child {
  margin-right: 0;
}

body:has(#hero) .core-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 44px rgba(7, 26, 53, .12);
  border-color: rgba(6, 75, 159, .18);
}

body:has(#hero) .core-card strong,
body:has(#hero) .core-card span {
  display: block;
}

body:has(#hero) .core-card strong {
  margin-bottom: 8px;
  color: #064B9F;
  font-size: 20px;
  line-height: 1.35;
}

body:has(#hero) .core-card span {
  color: #5F6D84;
  font-size: 15px;
  line-height: 1.75;
}

body:has(#hero) .release-layout {
  position: relative;
  margin-top: 4px;
}

body:has(#hero) .section-news .section-more {
  text-align: right;
  margin: -32px 0 20px;
  padding-right: 10px;
}

body:has(#hero) .section-news .section-more-link {
  position: relative;
  display: inline-block;
  color: #333;
  font-size: 16px;
  line-height: 1.5;
  text-decoration: none;
  padding-bottom: 2px;
  transition: color .25s ease, transform .25s ease;
}

body:has(#hero) .section-news .section-more-link::after {
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-left: 6px;
  vertical-align: -2px;
  background: url(../images/arrow-right.png) no-repeat center / contain;
  transition: background-image .25s ease, transform .25s ease;
}

body:has(#hero) .section-news .section-more-link:hover {
  color: var(--home-blue);
  text-decoration: none;
  transform: translateX(-4px);
}

body:has(#hero) .section-news .section-more-link:hover::after {
  background-image: url(../images/arrow-right-blue.png);
}

body:has(#hero) .news-layout {
  position: relative;
  margin-top: 4px;
}

body:has(#hero) .release-feature {
  float: left;
  position: relative;
  width:48%;
  box-shadow: 0 15px 30px rgba(7, 26, 53, .1);
  overflow: hidden;
  border-radius: 15px;
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
  -ms-border-radius: 15px;
  -o-border-radius: 15px;
}

body:has(#hero) .release-swiper,
body:has(#hero) .news-swiper {
  overflow: hidden;
}

body:has(#hero) .release-swiper {
  height: 452px;
}

body:has(#hero) .release-swiper .swiper-wrapper,
body:has(#hero) .release-swiper .swiper-slide,
body:has(#hero) .news-swiper .swiper-wrapper,
body:has(#hero) .news-swiper .swiper-slide {
  height: 100%;
}

body:has(#hero) .release-swiper .swiper-slide,
body:has(#hero) .news-swiper .swiper-slide {
  width: 100%;
}

body:has(#hero) .release-card {
  position: relative;
  display: block;
  height: 100%;
}

body:has(#hero) .release-card img {
  display: block;
  width: 100%;
  height: 452px;
  object-fit: cover;
}

body:has(#hero) .release-card:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(7, 26, 53, .02) 0%, rgba(7, 26, 53, .34) 76%, rgba(7, 26, 53, .66) 100%);
}

body:has(#hero) .release-card-title,
body:has(#hero) .release-card-subtitle {
  position: absolute;
  left: 28px;
  right: 28px;
  z-index: 1;
  color: #fff;
}

body:has(#hero) .release-card-title {
  bottom: 22px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4;
}

body:has(#hero) .release-card-subtitle {
  bottom: 30px;
  font-size: 15px;
  line-height: 1.8;
  color: rgba(255, 255, 255, .9);
}

body:has(#hero) .release-feature .swiper-pagination {
  display: none;
}

body:has(#hero) .release-feature .swiper-button-prev,
body:has(#hero) .release-feature .swiper-button-next {
  top: 50%;
  width: 28px;
  height: 48px;
  margin-top: -24px;
  background-color: rgba(0, 0, 0, .45);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 24px auto;
  box-shadow: none;
  transition: background 0.25s ease, box-shadow 0.25s ease;
}

body:has(#hero) .release-feature .swiper-button-prev:after,
body:has(#hero) .release-feature .swiper-button-next:after {
  content: none;
  display: none;
}

body:has(#hero) .release-feature .swiper-button-prev {
  left: 0;
  border-radius: 0 3px 3px 0;
  -webkit-border-radius: 0 3px 3px 0;
  -moz-border-radius: 0 3px 3px 0;
  -ms-border-radius: 0 3px 3px 0;
  -o-border-radius: 0 3px 3px 0;
  background-image: url(../images/arrow-hl-r.png);
}

body:has(#hero) .release-feature .swiper-button-next {
  right: 0;
  border-radius: 3px 0 0 3px;
  -webkit-border-radius: 3px 0 0 3px;
  -moz-border-radius: 3px 0 0 3px;
  -ms-border-radius: 3px 0 0 3px;
  -o-border-radius: 3px 0 0 3px;
  background-image: url(../images/arrow-hr-r.png);
}

body:has(#hero) .release-feature .swiper-button-prev:hover {
  background-image: url(../images/arrow-hl.png);
  background-color: #fff;
  box-shadow: 0 2px 10px rgba(0, 80, 190, 0.12);
}

body:has(#hero) .release-feature .swiper-button-next:hover {
  background-image: url(../images/arrow-hr.png);
  background-color: #fff;
  box-shadow: 0 2px 10px rgba(0, 80, 190, 0.12);
}

body:has(#hero) .release-news {
  float: right;
  width: 50%;
  padding: 18px 22px;
  background: #fff;
  border-radius: 15px;
  box-shadow: 0 15px 30px rgba(7, 26, 53, .08);
  box-sizing: border-box;
  min-height: 452px;
}

body:has(#hero) .release-news-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

body:has(#hero) .release-news-list li {
  margin: 0;
  border-bottom: 1px solid #eef1f5;
}

body:has(#hero) .release-news-list li:last-child {
  border-bottom: none;
}

body:has(#hero) .release-news-list a {
  display: block;
  overflow: hidden;
  padding: 15px 6px;
  border: none;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  transition: color .2s ease;
}

body:has(#hero) .release-news-list a:hover {
  transform: none;
  box-shadow: none;
  border-color: transparent;
}

body:has(#hero) .release-news-list a:hover .release-news-title {
  color: #0050be;
}

body:has(#hero) .release-news-title,
body:has(#hero) .release-news-date {
  display: block;
}

body:has(#hero) .release-news-media {
  float: left;
  margin: 0 10px 0 0;
  padding: 0 12px;
  border-radius: 5px;
  background: rgba(6, 75, 159, .10);
  color: #0050be;
  font-size: 14px;
  height: 28px;
  line-height: 28px;
  white-space: nowrap;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

body:has(#hero) .release-news-title {
  float: left;
  width: 80%;
  color: #333;
  font-size: 16px;
  line-height: 28px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

body:has(#hero) .release-news-list a.has-media .release-news-title {
  width: calc(80% - 110px);
}

body:has(#hero) .release-news-date {
  float: right;
  color: #6B7890;
  font-size: 16px;
}

body:has(#hero) .case-swiper-wrap {
  position: relative;
}

body:has(#hero) .case-swiper-wrap .swiper-container {
  overflow: hidden;
}
.case-swiper-wrap .swiper-slide {
  padding: 10px;
}
body:has(#hero) .case-card {
  overflow: hidden;
  border: 1px solid rgba(6, 75, 159, .08);
  border-radius:15px;
  background: rgba(255, 255, 255, .92);
  box-shadow: 0 0 10px rgba(7, 26, 53, .08);
  transition: box-shadow .22s ease;
  -webkit-border-radius:15px;
  -moz-border-radius:15px;
  -ms-border-radius:15px;
  -o-border-radius:15px;
}

body:has(#hero) .case-card:hover {
  box-shadow: 0 0 10px rgba(7, 26, 53, .14);
}

body:has(#hero) .case-card-media {
  overflow: hidden;
  height: 206px;
}

body:has(#hero) .case-card-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .3s ease;
}

body:has(#hero) .case-card:hover .case-card-media img {
  transform: scale(1.02);
  -webkit-transform: scale(1.02);
  -moz-transform: scale(1.02);
  -ms-transform: scale(1.02);
  -o-transform: scale(1.02);
}

body:has(#hero) .case-card-body {
  padding: 22px 20px;
}

body:has(#hero) .case-tag {
  display: inline-block;
  min-width: 52px;
  margin-bottom: 12px;
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(6, 75, 159, .10);
  color: #064B9F;
  font-size: 12px;
  font-weight: 700;
}

body:has(#hero) .case-card h3 {
  margin: 0 0 10px;
  color: #333;
  font-size: 18px;
  line-height: 28px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  transition: color .3s ease;
  -webkit-transition: color .3s ease;
  -moz-transition: color .3s ease;
  -ms-transition: color .3s ease;
  -o-transition: color .3s ease;
}

body:has(#hero) .case-card:hover h3 {
  color: #0050be;
}

body:has(#hero) .case-card p {
  margin: 0 0 16px;
  color: #6b7890;
  font-size: 14px;
  line-height: 24px;
  height: 48px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

body:has(#hero) .case-actions {
  margin: 0 -5px;
}

body:has(#hero) .case-btn {
  float: left;
  width: calc(50% - 10px);
  margin: 0 5px;
  height: 42px;
  line-height: 40px;
  border-radius: 10px;
  text-align: center;
  font-size: 14px;
  font-weight: 700;
  transition: transform .2s ease, background .2s ease, color .2s ease, border-color .2s ease;
}

body:has(#hero) .case-btn:hover {
  transform: translateY(-2px);
}

body:has(#hero) .case-btn--primary {
  border: 1px solid #3B84F6;
  background: #3B84F6;
  color: #fff;
}

body:has(#hero) .case-btn--ghost {
  border: 1px solid #3B84F6;
  background: #fff;
  color: #3B84F6;
}

body:has(#hero) .case-swiper-wrap .swiper-button-prev,
body:has(#hero) .case-swiper-wrap .swiper-button-next {
  top: 50%;
  width: 46px;
  height: 46px;
  margin-top: -23px;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, .95);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 22px auto;
  box-shadow: 0 10px 24px rgba(7, 26, 53, .14);
}

body:has(#hero) .case-swiper-wrap .swiper-button-prev:after,
body:has(#hero) .case-swiper-wrap .swiper-button-next:after {
  content: none;
  display: none;
}

body:has(#hero) .case-swiper-wrap .swiper-button-prev {
  left: -54px;
  background-image: url(../images/arrow-hl.png);
}

body:has(#hero) .case-swiper-wrap .swiper-button-next {
  right: -54px;
  background-image: url(../images/arrow-hr.png);
px}

body:has(#hero) .case-swiper-wrap .swiper-pagination {
  position: static;
  margin-top: 16px;
}

.case-consult-panel {
  max-height: 0;
  margin-top: 0;
  padding: 0 24px;
  overflow: hidden;
  opacity: 0;
  transform: translateY(16px);
  transition: max-height .45s ease, opacity .25s ease, transform .25s ease, margin-top .25s ease, padding .25s ease;
}

.case-consult-modal {
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 12000;
  display: none;
  isolation: isolate;
}

.case-consult-modal.is-open {
  display: block;
}

.case-consult-modal__backdrop {
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 12000;
  background: rgba(7, 26, 53, .55);
  cursor: pointer;
}

.case-consult-modal .case-consult-panel {
  position: fixed;
  left: 50%;
  top: 50%;
  z-index: 12001;
  width: min(1180px, 94vw);
  max-height: 0;
  margin-top: 0;
  padding: 0 24px;
  overflow: hidden;
  opacity: 0;
  transform: translate(-50%, calc(-50% + 16px));
  transition: max-height .45s ease, opacity .25s ease, transform .25s ease, padding .25s ease;
  box-sizing: border-box;
}

.case-consult-modal.is-open .case-consult-panel.is-open {
  max-height: 92vh;
  margin-top: 0;
  overflow: auto;
  padding: 32px 36px 28px;
  opacity: 1;
  transform: translate(-50%, -50%);
  border-radius: 24px;
  border: 1px solid rgba(255, 255, 255, .8);
  background-color: #fff;
  background-image: url("../images/bg-consult.jpg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  box-shadow: 0 28px 70px rgba(7, 26, 53, .18);
}

.case-consult-modal.is-open .case-consult-panel.is-open.is-success {
  width: min(480px, 92vw);
  max-height: none;
  padding: 40px 28px 32px;
}

.case-consult-modal__close {
  position: absolute;
  top: 18px;
  right: 18px;
  z-index: 2;
  width: 36px;
  height: 36px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, .72);
  color: #8a97ab;
  font-size: 26px;
  line-height: 34px;
  text-align: center;
  cursor: pointer;
}

.case-consult-modal__close:hover {
  background: #fff;
  color: #064B9F;
}

body.case-consult-modal-open {
  overflow: hidden;
}

.case-consult-main {
  float: left;
  width: 65%;
  padding-right: 36px;
  border-right: 1px solid #e4eef8;
  box-sizing: border-box;
}

.case-consult-side {
  float: right;
  width: 32%;
  padding: 30px 20px;
  margin-top: 22px;
  border: 1px solid #d7e6f6;
  border-radius: 15px;
  background: #f5f9ff;
  text-align: center;
  box-sizing: border-box;
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
  -ms-border-radius: 15px;
  -o-border-radius: 15px;
}

.case-consult-panel-head {
  width: auto;
  padding-right: 12px;
  margin-bottom: 20px;
}

.case-consult-panel-head h3,
.case-consult-panel-head p {
  margin: 0;
}

.case-consult-panel-head h3 {
  color: #0050be;
  font-size: 32px;
  font-weight: 700;
  line-height: 1.25;
}

.case-consult-panel-head p {
  margin-top: 10px;
  color: #333;
  font-size: 14px;
  line-height: 24px;
}

.case-consult-panel-head p i.case-consult-promise-icon {
  display: inline-block;
  width: 16px;
  height: 16px;
  margin-right: 6px;
  background: url("../images/icon-hegui.png") center / contain no-repeat;
  vertical-align: middle;
}

.case-consult-form {
  float: none;
  width: auto;
  padding-right: 0;
}

.case-consult-row {
  margin-bottom: 20px;
}

.case-consult-row label {
  display: block;
  margin-bottom: 10px;
  color: #203349;
  font-size: 16px;
}

.case-consult-row label em {
  color: #8d9ab0;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
}

.case-consult-col {
  float: left;
  width: 32%;
  margin-right: 2%;
}

.case-consult-col:last-child {
  margin-right: 0;
}

.case-consult-field-wrap {
  position: relative;
  height: 46px;
  padding-left: 40px;
  box-sizing: border-box;
  overflow: hidden;
  border: 1px solid #d7e3f2;
  border-radius: 5px;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: 12px center;
  background-size: 20px auto;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.case-consult-field-wrap--name {
  background-image: url("../images/icon-name.png");
}

.case-consult-field-wrap--contact {
  background-image: url("../images/icon-contact.png");
}

.case-consult-field-wrap--company {
  background-image: url("../images/icon-company.png");
}

.case-consult-field {
  width: 100%;
  box-sizing: border-box;
  min-height: 46px;
  padding: 12px 16px;
  border: 1px solid #d7e3f2;
  border-radius: 12px;
  background: #fff;
  color: #203349;
  font-size: 14px;
  line-height: 1.45;
}

.case-consult-field-wrap .case-consult-field {
  height: 100%;
  min-height: 0;
  padding: 12px 16px 12px 0;
  border: none;
  background: transparent;
}

.case-consult-field-wrap:has(.case-consult-field:not(:placeholder-shown)) {
  background-color: #f3f8ff;
}

.case-consult-field-wrap .case-consult-field:-webkit-autofill,
.case-consult-field-wrap .case-consult-field:-webkit-autofill:hover,
.case-consult-field-wrap .case-consult-field:-webkit-autofill:focus {
  -webkit-text-fill-color: #203349;
  caret-color: #203349;
  transition: background-color 99999s ease-out;
  -webkit-box-shadow: 0 0 0 1000px #f3f8ff inset;
  box-shadow: 0 0 0 1000px #f3f8ff inset;
}

.case-consult-field::placeholder {
  color: #9aa8bc;
}

.case-consult-field:focus {
  outline: none;
  border-color: #1a89fe;
  box-shadow: 0 0 0 3px rgba(26, 137, 254, .12);
}

.case-consult-field-wrap:focus-within {
  border-color: #1a89fe;
  box-shadow: 0 0 0 3px rgba(26, 137, 254, .12);
}

.case-consult-field-wrap .case-consult-field:focus {
  border: none;
  box-shadow: none;
}

.case-consult-msg {
  position: relative;
}

.case-consult-field--textarea {
  min-height: 108px;
  padding: 14px 16px 28px;
  resize: none;
}

.case-consult-count {
  position: absolute;
  right: 10px;
  bottom: 12px;
  color: #9aa8bc;
  font-size: 12px;
  line-height: 1;
}

.case-consult-tags {
  margin: 0;
  overflow: hidden;
  font-size: 0;
}

.case-consult-tags span {
  position: relative;
  float: left;
  width: auto;
  margin: 0 8px 8px 0;
  padding: 0 28px 0 40px;
  height: 36px;
  box-sizing: border-box;
  border: 1px solid #c5ddf8;
  border-radius: 999px;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: 12px center;
  background-size: 20px auto;
  color: #0050be;
  font-size: 14px;
  line-height: 36px;
  cursor: pointer;
}

.case-consult-tags span:nth-child(3n+1) {
  clear: left;
}

.case-consult-tag--zixun {
  background-image: url("../images/icon-zixun.png");
}

.case-consult-tag--banben {
  background-image: url("../images/icon-banben.png");
}

.case-consult-tag--zhaopin {
  background-image: url("../images/icon-zhaopin2.png");
}

.case-consult-tag--shuju {
  background-image: url("../images/icon-shujufenxi.png");
}

.case-consult-tag--ai {
  background-image: url("../images/icon-ai-blue.png");
}

.case-consult-tag--soft {
  background-image: url("../images/icon-softmanage.png");
}

.case-consult-tags span:hover {
  border-color: #9ec6f3;
  background-color: #f3f8ff;
}

.case-consult-tags span::after {
  content: "";
  position: absolute;
  right: 8px;
  top: 50%;
  width: 16px;
  height: 16px;
  margin-top: -8px;
  background: url("../images/icon-right-blue.png") center / contain no-repeat;
  opacity: 0;
}

.case-consult-tags span.is-active {
  border-color: #9ec6f3;
  background-color: #f3f8ff;
  color: #0050be;
}

.case-consult-tags span.is-active::after {
  opacity: 1;
}

.case-consult-actions {
  margin-top: 6px;
  font-size: 0;
}

.case-consult-submit {
  display: inline-block;
  min-width: 145px;
  height: 46px;
  padding: 0 28px 0 45px;
  border: 0;
  border-radius: 10px;
  background-color: #0050be;
  background-image: url("../images/icon-submit.png"), linear-gradient(180deg, #3ca4ff 0%, #1a89fe 48%, #0b63e8 100%);
  background-repeat: no-repeat;
  background-position: 22px center, 0 0;
  background-size: 18px auto, 100% 100%;
  color: #fff;
  font-size: 16px;
  line-height: 46px;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  box-shadow: 0 10px 22px rgba(26, 137, 254, .28);
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

.case-consult-submit:hover {
  filter: brightness(1.06);
}

.case-consult-submit.is-loading {
  cursor: wait;
  opacity: .85;
}

.case-consult-agree {
  display: inline-block;
  width: auto;
  max-width: calc(100% - 190px);
  margin: 0 0 0 18px;
  padding-left: 24px;
  color: #8d9ab0;
  font-size: 14px;
  line-height: 28px;
  vertical-align: middle;
  background: url("../images/icon-right-blue.png") left center / 18px auto no-repeat;
}

.case-consult-agree a {
  color: #0050be;
}

.case-consult-qr-title {
  margin: 0 0 6px;
  color: #0050be;
  font-size: 20px;
  line-height: 28px;
}

.case-consult-qr-desc {
  margin: 0 0 16px;
  color: #333;
  font-size: 14px;
  line-height: 24px;
}

.case-consult-qr {
  display: inline-block;
  width: auto;
  margin: 0 auto 18px;
  padding: 5px;
  border: 1px solid #e8f0fa;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 8px 20px rgba(26, 137, 254, .06);
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

.case-consult-qr img {
  display: block;
  width: 145px;
  height: 145px;
  margin: 0;
}

.case-consult-feats {
  padding: 16px 14px 6px;
  border: 1px solid rgba(255, 255, 255, .72);
  border-radius: 16px;
  background: linear-gradient(180deg, rgba(250, 252, 253, .76) 0%, rgba(249, 250, 254, .82) 100%);
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
  box-shadow: 0 8px 24px rgba(26, 80, 190, .04);
  text-align: left;
}

.case-consult-feat {
  margin-bottom: 14px;
}

.case-consult-feat:last-child {
  margin-bottom: 8px;
}

.case-consult-feat i {
  float: left;
  width: 40px;
  height: 40px;
  font-size: 0;
  line-height: 0;
  border-radius: 50%;
  background-color: #eaf3ff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 20px auto;
}

.case-consult-feat-ico--headset {
  background-image: url("../images/icon-consult.png");
}

.case-consult-feat-ico--safe {
  background-image: url("../images/icon-safe.png");
}

.case-consult-feat-ico--wenti {
  background-image: url("../images/icon-wenti.png");
}

.case-consult-feat__txt {
  margin-left: 52px;
}

.case-consult-feat__txt strong {
  display: block;
  color: #0050be;
  font-size: 15px;
  line-height: 1.4;
}

.case-consult-feat__txt span {
  display: block;
  margin-top: 3px;
  color: #8d9ab0;
  font-size: 13px;
  line-height: 1.5;
}

.case-consult-error {
  display: none;
  margin: 6px 0 0;
  color: #e24c4c;
  font-size: 12px;
  line-height: 1.4;
}

.is-error .case-consult-error {
  display: block;
}

.is-error .case-consult-field,
.is-error .case-consult-field-wrap,
.is-error .case-consult-tags {
  border-color: #e24c4c;
}

.case-consult-success {
  display: none;
  padding: 12px 8px 4px;
  text-align: center;
}

.case-consult-panel.is-success .case-consult-wrap {
  display: none;
}

.case-consult-panel.is-success .case-consult-success {
  display: block;
}

.case-consult-success i {
  display: block;
  width: 56px;
  height: 56px;
  margin: 0 auto 10px;
  background-image: url("../images/icon-right-blue.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100% auto;
}

.case-consult-success h4 {
  margin: 0 0 8px;
  color: #203349;
  font-size: 24px;
  font-weight: 700;
}

.case-consult-success p {
  margin: 0;
  color: #67758A;
  font-size: 15px;
  line-height: 30px;
}

.case-consult-privacy {
  display: none;
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 12002;
}

.case-consult-privacy.is-open {
  display: block;
}

.case-consult-privacy__mask {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background: rgba(7, 26, 53, .45);
}

.case-consult-privacy__panel {
  position: absolute;
  left: 50%;
  top: 50%;
  width: min(560px, 86%);
  max-height: 78%;
  padding: 28px 28px 22px;
  overflow: auto;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(7, 26, 53, .16);
  transform: translate(-50%, -50%);
}

.case-consult-privacy__panel h4 {
  margin: 0 0 14px;
  color: #203349;
  font-size: 24px;
}

.case-consult-privacy__content p {
  margin: 0 0 10px;
  color: #526178;
  font-size: 16px;
  line-height: 32px;
}

.case-consult-privacy__ok {
  display: block;
  width: 120px;
  height: 40px;
  margin: 16px auto 0;
  border: 0;
  border-radius: 8px;
  background: #0050be;
  color: #fff;
  font-size: 14px;
  cursor: pointer;
}

.case-consult-toast {
  position: fixed;
  left: 50%;
  bottom: 32px;
  z-index: 12100;
  max-width: 90vw;
  padding: 12px 20px;
  border-radius: 8px;
  background: rgba(17, 24, 39, .92);
  color: #fff;
  font-size: 14px;
  text-align: center;
  opacity: 0;
  pointer-events: none;
  transform: translateX(-50%) translateY(12px);
  transition: opacity .25s ease, transform .25s ease;
}

.case-consult-toast.is-visible {
  opacity: 1;
  pointer-events: auto;
  transform: translateX(-50%) translateY(0);
}

body:has(#hero) .news-tags {
  margin: 0 0 22px;
  text-align: center;
}

body:has(#hero) .news-tags span {
  display: inline-block;
  margin: 0 10px 12px;
  padding: 8px 16px;
  border-radius: 999px;
  background: rgba(6, 75, 159, .08);
  color: #064B9F;
  font-size: 14px;
  font-weight: 700;
}

body:has(#hero) .news-feature {
  float: left;
  width: 48%;
  box-shadow: 0 16px 34px rgba(7, 26, 53, .10);
  border-radius: 15px;
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
  -ms-border-radius: 15px;
  -o-border-radius: 15px;
  overflow: hidden;
}

body:has(#hero) .news-latest {
  float: right;
  width: 50%;
  padding: 12px 22px;
  background: #fff;
  border-radius: 15px;
  box-shadow: 0 15px 30px rgba(7, 26, 53, .08);
  box-sizing: border-box;
}

body:has(#hero) .news-feature .news-feature-card {
  position: relative;
  display: block;
  height: 100%;
  overflow: hidden;
  border-radius: 15px;
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
  -ms-border-radius: 15px;
  -o-border-radius: 15px;
}

body:has(#hero) .news-swiper {
  /* height: 340px; */
}

body:has(#hero) .news-feature .news-feature-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

body:has(#hero) .news-feature .news-feature-caption {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding:50px 24px 15px;
  background: linear-gradient(180deg, rgba(6, 17, 42, 0) 0%, rgba(6, 17, 42, .18) 24%, rgba(6, 17, 42, .78) 100%);
}

body:has(#hero) .news-feature .news-feature-title {
  display: block;
  color: #fff;
  font-size: 16px;
  line-height: 28px;
}

body:has(#hero) .news-feature .swiper-pagination {
  left: auto;
  right: 18px;
  bottom: 16px;
  width: auto;
  text-align: right;
}

body:has(#hero) .news-feature .swiper-pagination-bullet {
  background: rgba(255, 255, 255, .55);
  opacity: 1;
}

body:has(#hero) .news-feature .swiper-pagination-bullet-active {
  background: #fff;
}

body:has(#hero) .news-latest-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

body:has(#hero) .news-latest-list li {
  margin: 0;
  border-bottom: 1px solid #eef1f5;
}

body:has(#hero) .news-latest-list li:last-child {
  border-bottom: none;
}

body:has(#hero) .news-latest-list a {
  display: block;
  overflow: hidden;
  padding: 18px 0;
  transition: color .2s ease;
}

body:has(#hero) .news-latest-list a:hover {

}

body:has(#hero) .news-latest-list a:hover .news-item-title {
  color: #0050be;
}

body:has(#hero) .news-item-label {
  float: left;
  margin:0 10px 0 0;
  padding: 0 12px;
  border-radius: 5px;
  background: rgba(6, 75, 159, .10);
  color: #0050be;
  font-size: 14px;
  height: 28px;
  line-height: 28px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

body:has(#hero) .news-item-title {
  float: left;
  width: calc(80% - 78px);
  color: #333;
  font-size: 16px;
  line-height: 28px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

body:has(#hero) .news-item-date {
  float: right;
  color: #6B7890;
  font-size: 16px;
  line-height: 28px;
}@media (max-width: 1320px) {
body:has(#hero) .logo,
body:has(.page-news-banner) .logo {
    max-width: 190px;
    margin-right: 16px;
  }

body:has(#hero) .logo-image img,
body:has(.page-news-banner) .logo-image img {
    max-width: 190px;
  }

body:has(#hero) .header-nav-wrap,
body:has(.page-news-banner) .header-nav-wrap {
    width: auto;
    max-width: calc(100% - 206px);
  }

body:has(#hero) .main-nav > ul > li,
body:has(.page-news-banner) .main-nav > ul > li {
    position: relative;
    margin: 0 8px;
  }

body:has(#hero) .nav-dropdown--panel,
body:has(.page-news-banner) .nav-dropdown--panel {
    width: min(980px, calc(100vw - 48px));
  }

body:has(#hero) .nav-dropdown--solution .nav-dropdown-col,
body:has(.page-news-banner) .nav-dropdown--solution .nav-dropdown-col {
    width: 138px;
  }

body:has(#hero) .header-search-pill,
body:has(.page-news-banner) .header-search-pill {
    width: 148px;
  }
}

@media (max-width: 980px) {
  body:has(#hero) .site-header, body:has(.page-news-banner) .site-header,
  body:has(#hero) .site-header .header-inner,
body:has(.page-news-banner) .site-header .header-inner {
    height: 58px;
  }

body:has(#hero) .logo,
body:has(.page-news-banner) .logo {
    max-width: 160px;
    height: 58px;
    margin-right: 0;
    padding-top: 10px;
  }

body:has(#hero) .logo-image img,
body:has(.page-news-banner) .logo-image img {
    max-width: 160px;
  }

body:has(#hero) .header-nav-wrap,
body:has(.page-news-banner) .header-nav-wrap {
    width: auto;
  }

body:has(#hero) .main-nav, body:has(.page-news-banner) .main-nav,
  body:has(#hero) .header-right,
body:has(.page-news-banner) .header-right {
    display: none;
  }

body:has(#hero) .mc_phone_nav,
body:has(.page-news-banner) .mc_phone_nav {
      display: block;
    right: 0;
    top: 16px;
  }

.section-cta {
    height: 180px;
  }

  .section-cta h2 {
    font-size: 22px;
  }

.site-footer--full .footer-body {
    padding-bottom: 20px;
  }

  .site-footer--full .footer-brand-col,
  .site-footer--full .footer-qrs-col,
  .site-footer--full .footer-contact-col {
    float: none;
    width: auto;
    padding: 0;
    border: 0;
    margin-bottom: 28px;
    text-align: left;
  }

  .site-footer--full .footer-qrs .qr-item {
    margin: 0 16px 0 0;
  }

  .site-footer--full .footer-contact-col {
    margin-bottom: 0;
  }

.site-footer--full .footer-bottom a {
    float: none;
    display: block;
    margin-top: 8px;
  }
}

@media (max-width: 1320px) {
  body:has(#hero) .section-core,
  body:has(#hero) .section-core-business,
  body:has(#hero) .section-release,
  body:has(#hero) .section-cases,
  body:has(#hero) .section-news {
    padding-top: 40px;
  }

  .section-cta {
    padding-top: 40px;
  }

body:has(#hero) .core-copy {
    width: 30%;
  }

body:has(#hero) .core-visual {
    width: 66%;
  }

body:has(#hero) .core-card {
    width: 31.2%;
    margin-right: 2.4%;
  }
}

@media (max-width: 980px) {
  body:has(#hero) .section-core,
  body:has(#hero) .section-core-business,
  body:has(#hero) .section-release,
  body:has(#hero) .section-cases,
  body:has(#hero) .section-news {
    padding-top: 32px;
  }

  .section-cta {
    padding-top: 32px;
  }


body:has(#hero) .section-header {
    margin-bottom: 22px;
  }

body:has(#hero) .section-header h2 {
    font-size: 26px;
  }

body:has(#hero) .section-header p {
    font-size: 14px;
  }

body:has(#hero) .core-copy,
  body:has(#hero) .core-visual,
  body:has(#hero) .release-feature,
  body:has(#hero) .release-news,
  body:has(#hero) .news-feature,
  body:has(#hero) .news-latest {
    float: none;
    width: auto;
  }

body:has(#hero) .core-copy {
    padding: 0;
    margin-bottom: 18px;
  }

body:has(#hero) .core-copy h3 {
    font-size: 22px;
  }

body:has(#hero) .core-orbit {
    min-height: 320px;
    padding: 10px 0 0;
  }

body:has(#hero) .core-bg {
    min-height: 320px;
    border-radius: 22px;
  }

body:has(#hero) .core-node {
    min-width: 86px;
    padding: 10px 12px;
    font-size: 13px;
  }

body:has(#hero) .core-node--product {
    left: 8%;
  }

body:has(#hero) .core-node--solution {
    right: 8%;
  }

body:has(#hero) .core-node--scene {
    bottom: 12%;
  }

body:has(#hero) .core-center {
    width: 122px;
    height: 122px;
    margin-left: -61px;
    margin-top: -61px;
  }

body:has(#hero) .core-center em {
    margin-top: 22px;
    font-size: 34px;
  }

body:has(#hero) .core-card {
    float: none;
    width: auto;
    margin: 0 0 14px;
  }

body:has(#hero) .release-layout,
  body:has(#hero) .news-layout {
    display: block;
  }

body:has(#hero) .release-feature,
  body:has(#hero) .news-feature {
    margin-bottom: 18px;
  }

body:has(#hero) .release-news {
    min-height: 0;
    padding: 14px 16px;
  }

body:has(#hero) .news-latest {
    min-height: 0;
    padding: 14px 16px;
  }

body:has(#hero) .release-news-list a {
    padding: 13px 4px;
  }

body:has(#hero) .news-latest-list a {
    padding: 13px 4px;
  }

body:has(#hero) .release-swiper {
    height: 300px;
  }

body:has(#hero) .release-card img {
    height: 300px;
  }

body:has(#hero) .release-card-title {
    font-size: 18px;
    bottom: 16px;
  }


body:has(#hero) .case-card-media {
    height: 200px;
  }

body:has(#hero) .case-btn {
    width: calc(50% - 10px);
    font-size: 14px;
  }

.case-consult-panel.is-open {
    padding: 22px 16px 14px;
  }

.case-consult-modal.is-open .case-consult-panel.is-open {
    width: calc(100vw - 24px);
    max-height: 92vh;
    padding: 24px 16px 14px;
  }

.case-consult-modal.is-open .case-consult-panel.is-open.is-success {
    width: min(420px, calc(100vw - 24px));
    max-height: none;
    padding: 36px 20px 28px;
  }

.case-consult-main,
.case-consult-side {
    float: none;
    width: 100%;
  }

.case-consult-main {
    padding-right: 0;
    border-right: 0;
  }

.case-consult-side {
    margin-top: 20px;
    padding: 24px 18px 18px;
    border: 1px solid #d7e6f6;
  }

.case-consult-agree {
    max-width: calc(100% - 190px);
  }

body:has(#hero) .news-tags span {
    margin: 0 6px 10px;
    padding: 7px 12px;
    font-size: 13px;
  }

body:has(#hero) .news-swiper {
    height: 280px;
  }

body:has(#hero) .news-feature .news-feature-img {
    height: 280px;
  }

body:has(#hero) .news-feature .news-feature-title {
    font-size: 18px;
  }

body:has(#hero) .news-item-title {
    width: calc(80% - 72px);
    font-size: 15px;
  }

body:has(#hero) .release-news-title {
    width: 80%;
    font-size: 15px;
  }

body:has(#hero) .release-news-list a.has-media .release-news-title {
    width: calc(80% - 98px);
  }

body:has(#hero) .news-item-label,
body:has(#hero) .release-news-media {
    margin-right: 8px;
  }

body:has(#hero) .case-swiper-wrap .swiper-button-prev,
  body:has(#hero) .case-swiper-wrap .swiper-button-next {
    width: 40px;
    height: 40px;
    margin-top: -20px;
  }
}
@media (max-width: 640px) {
  .case-consult-col {
    float: none;
    width: 100%;
    margin: 0 0 12px;
  }

  .case-consult-tags span {
    width: auto;
    margin: 0 8px 8px 0;
  }

  .case-consult-tags span:nth-child(3n+1) {
    clear: left;
  }

  .case-consult-submit,
  .case-consult-agree {
    display: block;
    width: 100%;
    max-width: none;
    margin: 0;
  }

  .case-consult-submit {
    margin-bottom: 10px;
  }

  .case-consult-panel-head h3 {
    font-size: 26px;
  }
}
/* confirmation mock overrides */
body:has(#hero) .section-subline {
  margin-top: 8px !important;
  color: #8D9AB0 !important;
  font-size: 14px !important;
}

body:has(#hero) .core-diagram {
  position: relative;
  min-height: 640px;
  margin: 8px auto 0;
  background: url('../images/home/core-business-bg.png') center 0 / 100% 100% no-repeat;
}

body:has(#hero) .core-diagram:before,
body:has(#hero) .core-diagram:after {
  content: "";
  position: absolute;
  left: 50%;
  pointer-events: none;
  border-radius: 50%;
  transform: translateX(-50%);
}

body:has(#hero) .core-diagram:before {
  top: 128px;
  width: 88%;
  height: 70%;
  border: 1px solid rgba(85, 133, 216, .22);
  box-shadow: inset 0 0 0 8px rgba(255,255,255,.12);
}

body:has(#hero) .core-diagram:after {
  top: 170px;
  width: 68%;
  height: 48%;
  border: 1px solid rgba(44, 105, 196, .18);
}

body:has(#hero) .core-edge {
  position: absolute;
  z-index: 2;
  min-width: 92px;
  padding: 8px 18px;
  border-radius: 999px;
  background: rgba(255,255,255,.92);
  color: #0A4C9F;
  font-size: 14px;
  font-weight: 700;
  text-align: center;
  box-shadow: 0 12px 24px rgba(6, 75, 159, .10);
}

body:has(#hero) .core-edge--lt { left: 28px; top: 114px; }

body:has(#hero) .core-edge--rt { right: 28px; top: 114px; }

body:has(#hero) .core-edge--lb { left: 44px; bottom: 90px; }

body:has(#hero) .core-edge--rb { right: 44px; bottom: 90px; }

body:has(#hero) .core-node {
  position: absolute;
  z-index: 3;
  width: 260px;
  padding: 18px 18px 16px 20px;
  border-radius: 22px;
  background: rgba(255,255,255,.98);
  box-shadow: 0 14px 34px rgba(7, 26, 53, .12);
  transition: transform .22s ease, box-shadow .22s ease;
}

body:has(#hero) .core-node:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 42px rgba(7, 26, 53, .16);
}

body:has(#hero) .core-node strong,
body:has(#hero) .core-node span {
  display: block;
}

body:has(#hero) .core-node strong {
  margin-bottom: 6px;
  color: #064B9F;
  font-size: 18px;
  line-height: 1.28;
}

body:has(#hero) .core-node span {
  color: #617089;
  font-size: 14px;
  line-height: 1.6;
}

body:has(#hero) .core-node--lt { left: 170px; top: 148px; }

body:has(#hero) .core-node--rt { right: 170px; top: 148px; }

body:has(#hero) .core-node--lm { left: 112px; top: 324px; }

body:has(#hero) .core-node--rm { right: 112px; top: 324px; }

body:has(#hero) .core-node--lb { left: 172px; top: 492px; }

body:has(#hero) .core-node--rb { right: 172px; top: 492px; }

body:has(#hero) .core-center {
  position: absolute;
  left: 50%;
  top: 320px;
  z-index: 4;
  width: 176px;
  height: 176px;
  margin-left: -88px;
  border-radius: 50%;
  background: radial-gradient(circle at 50% 40%, rgba(255,255,255,.98) 0%, rgba(242,248,255,.98) 58%, rgba(203,224,255,.92) 100%);
  box-shadow: 0 24px 48px rgba(6, 75, 159, .20);
  text-align: center;
}

body:has(#hero) .core-center:before {
  content: "";
  position: absolute;
  inset: 18px;
  border: 1px solid rgba(6, 75, 159, .14);
  border-radius: 50%;
}

body:has(#hero) .core-center em {
  display: block;
  margin-top: 36px;
  color: #00A9DF;
  font-size: 48px;
  font-style: normal;
  font-weight: 700;
  line-height: 1;
}

body:has(#hero) .core-center span {
  display: block;
  margin-top: 10px;
  color: #071A35;
  font-size: 16px;
  font-weight: 700;
}

body:has(#hero) .core-bottom {
  position: absolute;
  left: 50%;
  bottom: 38px;
  z-index: 3;
  width: 760px;
  margin-left: -380px;
  text-align: center;
}

body:has(#hero) .core-bottom span {
  display: inline-block;
  margin: 0 8px;
  padding: 7px 14px;
  border: 1px solid rgba(6, 75, 159, .14);
  border-radius: 999px;
  background: rgba(255,255,255,.90);
  color: #064B9F;
  font-size: 14px;
  font-weight: 700;
}

body:has(#hero) .news-tags {
  display: none;
}

body:has(#hero) .core-confirm-panel {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

body:has(#hero) .core-confirm-panel:before,
body:has(#hero) .core-confirm-panel:after {
  display: none;
}

body:has(#hero) .core-confirm-image {
  display: block;
  width: 100%;
  height: auto;
}

/* ========== 首页核心业务 v2（来自 x-xucizhiku） ========== */
body:has(#hero) .section-core-business.business-section-v2 {
  padding-top: 75px;
  padding-bottom: 86px;
  overflow: hidden;
  background: #eef6ff;
}

body:has(#hero) .business-section-v2:before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(90deg, rgba(248, 252, 255, .99) 0%, rgba(246, 251, 255, .96) 38%, rgba(232, 243, 255, .76) 68%, rgba(224, 238, 255, .82) 100%),
    url("../images/core-business-suzhou-bg-v1.jpg");
  background-position: center center, right top;
  background-size: 100% 100%, min(1220px, 72vw) auto;
  background-repeat: no-repeat;
  filter: saturate(.86) brightness(1.12);
  opacity: 1;
}

body:has(#hero) .business-section-v2:after {
  content: "";
  position: absolute;
  left: 4%;
  right: 4%;
  bottom: 12px;
  height: 260px;
  background:
    radial-gradient(ellipse at 56% 48%, rgba(42, 119, 232, .11), rgba(42, 119, 232, 0) 62%),
    linear-gradient(180deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, .55));
  pointer-events: none;
}

body:has(#hero) .business-section-v2 .container {
  position: relative;
  z-index: 1;
  width: calc(100% - 96px);
  /* max-width: 1540px; */
}

body:has(#hero) .business-v2-head {
  max-width: 720px;
  margin-bottom: 42px;
}

body:has(#hero) .business-v2-kicker {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 0 20px;
  border-radius: 14px;
  background: linear-gradient(180deg, rgba(227, 238, 255, .98), rgba(215, 229, 253, .95));
  color: #1a66d9;
  font-size: 18px;
  font-weight: 800;
  letter-spacing: .04em;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .88), 0 10px 24px rgba(35, 92, 170, .08);
}

body:has(#hero) .business-v2-head h2 {
  margin: 22px 0 18px;
  color: #06195a;
  font-size: 42px;
  line-height: 1.2;
  font-weight: 900;
  letter-spacing: .02em;
}

body:has(#hero) .business-v2-head p {
  max-width: 670px;
  margin: 0;
  color: #64738b;
  font-size: 18px;
  line-height: 1.86;
}

body:has(#hero) .business-v2-head i {
  display: block;
  width: 46px;
  height: 4px;
  margin-top: 22px;
  border-radius: 999px;
  background: linear-gradient(90deg, #115ee9, #2e86ff);
  box-shadow: 0 4px 12px rgba(17, 94, 233, .22);
}

body:has(#hero) .business-v2-list {
  overflow: hidden;
  margin-bottom: 0;
}

body:has(#hero) .business-v2-row {
  position: relative;
  float: left;
  width: calc(50% - 9px);
  min-height: 280px;
  margin-right: 18px;
  margin-bottom: 0;
  padding: 30px 0 26px 30px;
  border: 1px solid rgba(210, 224, 243, .84);
  border-radius: 12px;
  background: linear-gradient(90deg, #f8faff 0%, #f2f5fc 42%, #ebf1fa 68%, #e3ebf8 100%);
  /*box-shadow: 0 10px 42px rgba(81, 107, 128, .1);
  */color: #071a52;
  box-sizing: border-box;
  overflow: hidden;
  text-decoration: none;
  transition: box-shadow .35s ease, border-color .35s ease;
  -webkit-transition: box-shadow .35s ease, border-color .35s ease;
  -moz-transition: box-shadow .35s ease, border-color .35s ease;
  -ms-transition: box-shadow .35s ease, border-color .35s ease;
  -o-transition: box-shadow .35s ease, border-color .35s ease;
}

body:has(#hero) .business-v2-row:last-child {
  margin-right: 0;
}

body:has(#hero) .business-v2-row:hover {
  border-color: rgba(39, 116, 225, .38);
  box-shadow: 0 28px 62px rgba(30, 75, 128, .14);
}

body:has(#hero) .business-v2-row:before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
}

body:has(#hero) .business-v2-copy {
  position: relative;
  z-index: 2;
  float: left;
  width: 50%;
  padding-right: 20px;
  box-sizing: border-box;
}

body:has(#hero) .business-v2-media {
  position: absolute;
  z-index: 1;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%;
  overflow: hidden;
  border-radius: 0 12px 12px 0;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: right -12% center;
  background-size: auto 100%;
  transition: transform .38s ease;
}

body:has(#hero) .business-v2-product .business-v2-media {
  background-image: url(../images/core-business-product-cube-v1.jpg);
}

body:has(#hero) .business-v2-solution .business-v2-media {
  background-image: url(../images/core-business-solution-shield-v1.jpg);
}

body:has(#hero) .business-v2-row:hover .business-v2-media {
  transform: scale(1.01);
  -webkit-transform: scale(1.01);
  -moz-transform: scale(1.01);
  -ms-transform: scale(1.01);
  -o-transform: scale(1.01);
}

body:has(#hero) .business-v2-card-head {
  position: relative;
  z-index: 2;
  /* overflow: hidden; */
}

body:has(#hero) .business-v2-icon {
  float: left;
  display: block;
  width: 52px;
  height: 52px;
  padding: 11px;
  border: 0;
  border-radius: 10px;
  box-sizing: border-box;
  object-fit: contain;
  background: linear-gradient(145deg, #2f7cff, #155de8);
  box-shadow: 0 16px 26px rgba(30, 101, 230, .22), inset 0 1px 0 rgba(255, 255, 255, .55);
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

body:has(#hero) .business-v2-card-head strong {
  display: block;
  overflow: hidden;
  margin-left: 66px;
  color: #071a52;
  font-size: 20px;
  line-height: 52px;
  font-weight: normal;
}

body:has(#hero) .business-v2-row p {
  position: relative;
  z-index: 2;
  margin: 25px 0 0;
  color: #333;
  font-size: 16px;
  line-height: 28px;
}

body:has(#hero) .business-v2-entry {
  position: relative;
  z-index: 3;
  display: inline-block;
  margin-top: 28px;
  color: #1f74ef;
  font-size: 16px;
  line-height: 1.5;
  transition: color .25s ease;
  -webkit-transition: color .25s ease;
  -moz-transition: color .25s ease;
  -ms-transition: color .25s ease;
  -o-transition: color .25s ease;
}

body:has(#hero) .business-v2-entry:after {
  content: "";
  display: inline-block;
  width: 20px;
  height: 12px;
  margin-left: 8px;
  vertical-align: middle;
  background: url(../images/icon-arrow.png) center center / contain no-repeat;
  transition: transform .28s ease;
}

body:has(#hero) .business-v2-row:hover .business-v2-entry {
  color: #0050be;
}

body:has(#hero) .business-v2-row:hover .business-v2-entry:after {
  transform: translateX(6px);
}

body:has(#hero) .business-v2-values {
  overflow: hidden;
  margin-top: 26px;
  padding: 22px 28px;
  border: 1px solid rgba(213, 226, 243, .88);
  border-radius: 14px;
  background: rgba(255, 255, 255, .9);
  box-shadow: 0 16px 40px rgba(30, 75, 128, .07);
  backdrop-filter: blur(8px);
}

body:has(#hero) .business-v2-values div {
  position: relative;
  float: left;
  width: 25%;
  min-height: 58px;
  padding: 8px 12px 8px 86px;
  box-sizing: border-box;
}

body:has(#hero) .business-v2-values div:not(:first-child) {
  border-left: 1px solid rgba(198, 214, 235, .88);
}

body:has(#hero) .business-v2-values-icon {
  position: absolute;
  left: 24px;
  top: 50%;
  width: 46px;
  height: 46px;
  margin-top: -23px;
  padding: 9px;
  border: 0;
  border-radius: 50%;
  box-sizing: border-box;
  object-fit: contain;
  background: linear-gradient(180deg, rgba(230, 240, 255, .98), rgba(248, 251, 255, .96));
  box-shadow: inset 0 0 0 1px rgba(198, 216, 244, .82), 0 10px 20px rgba(32, 97, 190, .1);
}

body:has(#hero) .business-v2-values b {
  display: block;
  color: #10265a;
  font-size: 18px;
  font-weight: 900;
}

body:has(#hero) .business-v2-values span {
  display: block;
  margin-top: 6px;
  color: #68788e;
  font-size: 15px;
}

@media (max-width: 1280px) {
  body:has(#hero) .business-section-v2 .container {
    width: calc(100% - 56px);
  }

  body:has(#hero) .business-v2-row {
    float: none;
    width: auto;
    min-height: 0;
    margin-right: 0;
    margin-bottom: 18px;
    padding: 24px 22px 26px;
  }

  body:has(#hero) .business-v2-row:last-child {
    margin-bottom: 0;
  }

  body:has(#hero) .business-v2-copy {
    float: none;
    width: auto;
    padding-right: 0;
  }

  body:has(#hero) .business-v2-media {
    position: relative;
    right: auto;
    top: auto;
    bottom: auto;
    width: auto;
    height: 220px;
    margin-top: 18px;
    border-radius: 10px;
    background-position: center center;
    background-size: contain;
  }
}

@media (max-width: 900px) {
  body:has(#hero) .section-core-business.business-section-v2 {
    padding: 72px 0;
  }

  body:has(#hero) .business-section-v2 .container {
    width: calc(100% - 32px);
  }

  body:has(#hero) .business-section-v2:before {
    background-size: 100% 100%, 980px auto;
    background-position: center center, right top;
  }

  body:has(#hero) .business-v2-head h2 {
    font-size: 32px;
  }

  body:has(#hero) .business-v2-head p {
    font-size: 16px;
  }

  body:has(#hero) .business-v2-row {
    padding: 24px 22px 26px;
  }

  body:has(#hero) .business-v2-copy,
  body:has(#hero) .business-v2-media {
    float: none;
    width: auto;
    padding-right: 0;
  }

  body:has(#hero) .business-v2-media {
    margin-top: 16px;
    height: 200px;
    background-position: center center;
    background-size: contain;
  }

  body:has(#hero) .business-v2-entry {
    margin-top: 18px;
  }

  body:has(#hero) .business-v2-values {
    padding: 22px;
  }

  body:has(#hero) .business-v2-values div {
    float: none;
    width: auto;
    border-left: 0 !important;
    border-top: 1px solid rgba(198, 214, 235, .88);
    padding: 16px 12px 16px 66px;
    margin-bottom: 0;
  }

  body:has(#hero) .business-v2-values div:first-child {
    border-top: 0;
    padding-top: 8px;
  }

  body:has(#hero) .business-v2-values div:last-child {
    padding-bottom: 8px;
  }

  body:has(#hero) .business-v2-values-icon {
    left: 6px;
  }
}

@media (max-width: 560px) {
  body:has(#hero) .business-v2-card-head strong {
    margin-left: 66px;
    font-size: 23px;
    line-height: 52px;
  }

  body:has(#hero) .business-v2-icon {
    width: 52px;
    height: 52px;
    padding: 11px;
    border-radius: 14px;
  }
}

/* ========== 典型案例列表 / 详情页 ========== */
body:has(.cases-shell),
body:has(.case-detail-main) {
  background:
    radial-gradient(circle at 15% 8%, rgba(6, 75, 159, 0.10), transparent 24%),
    radial-gradient(circle at 85% 0%, rgba(0, 169, 223, 0.08), transparent 22%),
    linear-gradient(180deg, #f8fbff 0%, var(--home-silver, #F3F6F8) 100%);
  color: var(--home-text, #17283E);
}

/* body 的 overflow-x:hidden 会破坏左侧导航固定，详情页单独放开 */
body:has(.case-detail-main) {
  overflow-x: clip;
}

/* 列表页 */
.cases-shell {
  padding: 45px 0;
}
.cases-filter-panel {
  background: #fff;
  border: 1px solid rgba(6, 75, 159, 0.12);
  border-radius: 10px;
  box-shadow: 0 4px 16px rgba(7, 26, 53, 0.06);
  padding: 25px 24px 20px;
  margin-bottom: 24px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

.cases-shell .solution-layout .cases-filter-panel {
  background: transparent;
  border: 0;
  box-shadow: none;
  border-radius: 0;
  padding: 0 0 14px;
  margin-bottom: 16px;
  border-bottom: 1px solid rgba(6, 75, 159, 0.08);
}

.cases-shell .solution-layout .cases-filter-row + .cases-filter-row {
  margin-top: 10px;
  padding-top: 10px;
}

@media (max-width: 991px) {
  .cases-shell .solution-main,
  .cases-shell .solution-main.solution-main--list {
    float: none;
    width: auto;
  }
}

.cases-filter-panel::after,
.cases-filter-row::after,
.cases-grid::after,
.cases-shell .case-card__actions::after {
  content: '';
  display: block;
  clear: both;
}

.cases-filter-row + .cases-filter-row {
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid rgba(6, 75, 159, 0.08);
}

.cases-filter-row__label {
  float: left;
  width: 88px;
  color: #203349;
  font-size: 16px;
  line-height: 36px;
}

.cases-filter-group {
  overflow: hidden;
  padding-left: 20px;
  padding-right: 20px;
}

.cases-filter-row:last-child .cases-filter-group {
  padding-right: 20px;
}

.cases-filter-group button,
.cases-filter-reset {
  border: 0;
  cursor: pointer;
  transition: all 0.2s ease;
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
}

.cases-filter-group button {
  display: inline-block;
  vertical-align: middle;
  margin: 0 5px 5px 0;
  min-height: 36px;
  line-height: 34px;
  padding: 0 14px;
  border-radius: 5px;
  background: #fff;
  border: 1px solid rgba(6, 75, 159, 0.14);
  color: #333;
  font-size: 15px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.cases-filter-group button:hover {
  border-color: rgba(6, 75, 159, 0.28);
  color: var(--home-text, #17283E);
}

.cases-filter-group button.is-active {
  color: #fff;
  background: var(--home-blue, #064B9F);
  border-color: var(--home-blue, #064B9F);
}

.cases-filter-group__accent span {
  display: none;
  vertical-align: middle;
  margin-left: 8px;
  padding: 2px 8px;
  border-radius: 3px;
  background: var(--about-accent, #f97223);
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.4;
}

.cases-filter-group__accent.is-active span {
  display: inline-block;
}

.cases-filter-reset {
  float: right;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 4px;
  padding: 4px 0;
  background: transparent;
  color: #333;
  font-size: 16px;
}

.cases-filter-reset:hover {
  color: #043C82;
}

.cases-filter-reset__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  transition: transform 0.4s ease;
}

.cases-filter-reset__icon img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.cases-filter-reset:hover .cases-filter-reset__icon {
  transform: rotate(-180deg);
}

.cases-filter-reset.is-spinning .cases-filter-reset__icon {
  animation: cases-filter-reset-spin 0.55s ease;
}

@keyframes cases-filter-reset-spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

.cases-filter-reset__text {
  display: inline-block;
  vertical-align: middle;
}

.cases-grid {
  margin: 0 -12px;
  overflow: hidden;
}

.cases-grid-wrap {
  position: relative;
  min-height: 280px;
}

.cases-grid-status {
  display: none;
  position: absolute;
  inset: 0;
  z-index: 2;
  align-items: center;
  justify-content: center;
  padding: 56px 24px;
  text-align: center;
  box-sizing: border-box;
}

.cases-grid-status--loading {
  background: rgba(248, 251, 255, 0.92);
  border-radius: 8px;
}

.cases-grid-wrap.is-loading .cases-grid-status--loading,
.cases-grid-wrap.is-empty .cases-grid-status--empty {
  display: flex;
}

.cases-grid-wrap.is-loading {
  min-height: 320px;
}

.cases-grid-wrap.is-loading .cases-grid,
.cases-grid-wrap.is-empty .cases-grid {
  visibility: hidden;
  pointer-events: none;
  min-height: 0;
}

.cases-grid-status__inner {
  max-width: 80%;
}

.cases-grid-status__spinner {
  position: relative;
  display: inline-block;
  width: 56px;
  height: 56px;
}

.cases-grid-status__spinner::before,
.cases-grid-status__spinner::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border-style: solid;
  box-sizing: border-box;
}

.cases-grid-status__spinner::before {
  border-width: 4px;
  border-color: rgba(6, 75, 159, 0.12);
}

.cases-grid-status__spinner::after {
  border-width: 4px;
  border-color: #064b9f transparent transparent transparent;
  animation: cases-grid-spin 0.7s linear infinite;
}

.cases-grid-status__text {
  margin: 22px 0 0;
  color: #064b9f;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.02em;
  animation: cases-grid-pulse 1.2s ease-in-out infinite;
}

.cases-grid-status__dots {
  display: inline-block;
  min-width: 1.2em;
  text-align: left;
}

.cases-grid-status__dots::after {
  content: '';
  animation: cases-grid-dots 1.2s steps(4, end) infinite;
}

.cases-grid-status__image {
  display: block;
  width: 190px;
  height: auto;
  margin: 0 auto;
}

.cases-grid-status__desc {
  margin: 24px 0 0;
  color: #333;
  font-size: 16px;
  line-height: 28px;
}

@keyframes cases-grid-spin {
  to {
    transform: rotate(360deg);
  }
}

@keyframes cases-grid-pulse {
  0%,
  100% {
    opacity: 1;
  }
  50% {
    opacity: 0.45;
  }
}

@keyframes cases-grid-dots {
  0% {
    content: '';
  }
  25% {
    content: '.';
  }
  50% {
    content: '..';
  }
  75%,
  100% {
    content: '...';
  }
}

.cases-shell .case-card {
  float: left;
  width: 33.3333%;
  padding: 0 12px;
  margin-bottom: 24px;
  box-sizing: border-box;
}

.cases-shell .case-card__inner {
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid rgba(6, 75, 159, 0.12);
  box-shadow: 0 2px 12px rgba(7, 26, 53, 0.06);
}

.cases-shell .case-card__media {
  overflow: hidden;
  background: rgba(6, 75, 159, 0.08);
}

.cases-shell .case-card__media img {
  width: 100%;
  /* height: 234px; */
  object-fit: cover;
  display: block;
}

.cases-shell .case-card__body {
  padding: 20px 20px 25px;
}

.cases-shell .case-card h3 {
  margin: 0;
  font-size: 18px;
  line-height: 28px;
  height: 56px;
  overflow: hidden;
  display: -webkit-box;
  line-clamp: 2;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  font-weight: 700;
  color: var(--home-text, #17283E);
}

.cases-shell .case-card p {
  margin: 10px 0 0;
  height: 52px;
  color: #333;
  line-height: 26px;
  font-size: 14px;
  overflow: hidden;
  display: -webkit-box;
  line-clamp: 2;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.cases-shell .case-card__actions {
  margin-top: 18px;
}

.cases-shell .case-card__actions a {
  float: left;
  width: calc(50% - 6px);
  height: 40px;
  line-height: 38px;
  border-radius: 4px;
  font-size: 14px;
  font-weight: 600;
  text-align: center;
  box-sizing: border-box;
}

.cases-shell .case-card__actions a.is-outline {
  margin-right: 12px;
  background: #fff;
  color: var(--home-blue, #064B9F);
  border: 1px solid var(--home-blue, #064B9F);
}

.cases-shell .case-card__actions a.is-outline:hover {
  background: rgba(6, 75, 159, 0.06);
}

.cases-shell .case-card__actions a.is-primary {
  background: var(--home-blue, #064B9F);
  color: #fff;
  border: 1px solid var(--home-blue, #064B9F);
}

.cases-shell .case-card__actions a.is-primary:hover {
  background: #043C82;
  border-color: #043C82;
}

/* 详情页 */
.case-tabs-bar {
  position: sticky;
  top: 62px;
  z-index: 900;
  background: rgba(255, 255, 255, 0.98);
  border-bottom: 1px solid rgba(6, 75, 159, 0.10);
  box-shadow: 0 10px 34px rgba(7, 26, 53, 0.06);
}

.case-tabs-bar.is-stuck {
  box-shadow: 0 8px 24px rgba(7, 26, 53, 0.10);
}

.case-tabs-bar__inner {
  min-height: 72px;
}

.case-tabs {
  width: 100%;
  overflow: hidden;
}

.case-tabs::after {
  content: '';
  display: block;
  clear: both;
}

.case-tabs a {
  position: relative;
  float: left;
  width: 20%;
  min-height: 72px;
  line-height: 72px;
  box-sizing: border-box;
  text-align: center;
  color: #333;
  font-size: 18px;
  font-weight: 400;
  background: #fff;
  border-right: 1px solid rgba(6, 75, 159, 0.08);
  transition: color 0.2s ease;
}

.case-tabs a:last-child {
  border-right: 0;
}

.case-tabs a::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 0;
  height: 3px;
  border-radius: 999px;
  background: var(--home-blue, #064B9F);
  transform: translateX(-50%);
  transition: width 0.2s ease;
}

.case-tabs a:hover {
  color: var(--home-blue, #064B9F);
}

.case-tabs a.is-active {
  color: var(--home-blue, #064B9F);
  background: #fff;
}

.case-tabs a.is-active::after,
.case-tabs a:hover::after {
  width: 56px;
}

.case-section {
  scroll-margin-top: 96px;
}

.case-detail-main {
  padding: 50px 0;
}

/* 详情页勿继承列表页 float，否则 grid 高度塌陷，左侧 JS 固定失效 */
.case-detail-main .solution-main {
  float: none;
  width: auto;
  margin-left: 244px;
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
  overflow: visible;
}

.case-detail-container {
  max-width: 1240px;
}

.case-page-title {
  position: relative;
  margin-bottom: 50px;
}

.case-page-title__main {
  overflow: hidden;
  padding-right: 140px;
}

.case-page-title h2 {
  font-size: clamp(28px, 3vw, 40px);
  line-height: 1.2;
  color: var(--home-blue-dark, #333);
}

.case-page-title p {
  margin: 12px 0 0;
  max-width: 760px;
  color: #67758A;
  font-size: 16px;
  line-height: 1.75;
}

.case-page-title__back {
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -20px;
  display: inline-block;
  min-width: 112px;
  height: 40px;
  line-height: 40px;
  padding: 0 18px 0 34px;
  border-radius: 5px;
  border: 1px solid rgba(6, 75, 159, .18);
  background: #fff;
  color: var(--home-blue);
  font-size: 16px;
  text-align: center;
  box-shadow: 0 10px 24px rgba(18, 46, 104, .06);
  white-space: nowrap;
  transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.case-page-title__back::before {
  content: '';
  position: absolute;
  left: 16px;
  top: 50%;
  width: 10px;
  height: 10px;
  margin-top: -5px;
  border-left: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg);
  transition: left 0.25s ease, transform 0.25s ease;
}

.case-page-title__back:hover {
  background: var(--home-blue, #064B9F);
  color: #fff;
  border-color: transparent;
  box-shadow: 0 12px 28px rgba(6, 75, 159, 0.22);
  transform: translateX(-5px);
  -webkit-transform: translateX(-5px);
  -moz-transform: translateX(-5px);
  -ms-transform: translateX(-5px);
  -o-transform: translateX(-5px);
}

.case-page-title__back:hover::before {
  left: 12px;
  transform: rotate(45deg) translateX(-1px);
}

.case-panel {
  background: #fff;
  border: 1px solid rgba(6, 75, 159, 0.10);
  border-radius: 16px;
  box-shadow: 0 12px 36px rgba(7, 26, 53, 0.06);
  padding: 28px 30px 30px;
  margin-bottom: 20px;
}

.case-section__head {
  overflow: hidden;
  margin-bottom: 25px;
}

.case-section__badge {
  position: relative;
  float: left;
  width: 40px;
  height: 40px;
  margin-right: 14px;
}

.case-section__badge-icon {
  display: block;
  width: 40px;
  height: 40px;
  object-fit: contain;
}

.case-section__badge-num {
  position: absolute;
  left: 50%;
  bottom: 4px;
  transform: translateX(-50%);
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
}

.case-section__head h3 {
  line-height: 42px;
  font-size: 24px;
  color: var(--home-blue, #0050be);
}

.case-bg-challenge {
  overflow: visible;
  font-size: 16px;
  line-height: 32px;
}

.case-bg-challenge__cols {
  overflow: hidden;
}

.case-bg-challenge__cols::after {
  content: '';
  display: block;
  clear: both;
}

.case-bg-challenge__cols .case-bg-card,
.case-bg-challenge__cols .case-challenge-card {
  float: left;
  width: calc(50% - 9px);
  box-sizing: border-box;
  padding: 22px 24px;
  border-radius: 14px;
  background: linear-gradient(180deg, #f8fbff, #f3f7ff);
  border: 1px solid rgba(6, 75, 159, 0.10);
}

.case-bg-challenge__cols .case-bg-card {
  margin-right: 18px;
}

.case-bg-challenge__cols .case-bg-card h4,
.case-bg-challenge__cols .case-challenge-card h4 {
  background-position: left center;
  background-repeat: no-repeat;
  background-size: 26px auto;
  padding-left: 34px;
  line-height: 32px;
  font-size: 18px;
  color: var(--home-blue-dark, #071A35);
  margin-bottom: 12px;
}

.case-bg-challenge__cols .case-bg-card p,.case-bg-challenge__cols .case-challenge-card p{
  color: #333;
  font-size: 16px;
  line-height: 32px;
  text-align: justify;
}


.case-bg-challenge__flow {
  padding: 22px 24px;
  border-radius: 14px;
  background: linear-gradient(180deg, #f8fbff, #f3f7ff);
  border: 1px solid rgba(6, 75, 159, 0.10);
}

.case-bg-challenge__flow > p {
  margin: 0;
  color: #333;
  font-size: 16px;
  line-height: 32px;
  text-align: justify;
}

.case-bg-challenge__flow > .case-challenge-list {
  margin: 0;
  padding: 0;
  border-top: none;
}

.case-bg-challenge__flow > p + .case-challenge-list {
  margin: 20px 0 0;
  padding: 20px 0 0;
  border-top: 1px solid rgba(6, 75, 159, 0.10);
}

.case-bg-challenge__flow > p ~ p {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid rgba(6, 75, 159, 0.10);
}

.case-challenge-list {

}

.case-challenge-list li {
  position: relative;
  padding-left: 20px;
  color: #333;
  font-size: 16px;
  line-height: 32px;
}
.case-challenge-list li::before {
  content: '';
  position: absolute;
  left: 4px;
  top: 12px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--home-blue, #064B9F);
}

.case-challenge-list strong {
  color: var(--home-blue-dark, #071A35);
  font-weight: 700;
}

.case-solution-grid {
  margin: 16px -6px 0;
  overflow: hidden;
}

.case-solution-grid::after {
  content: '';
  display: block;
  clear: both;
}

.case-solution-grid .case-solution-card {
  float: left;
  width: calc(33.3333% - 12px);
  margin: 0 6px 20px;
  padding: 22px 16px 20px;
  box-sizing: border-box;
  border-radius: 10px;
  background: linear-gradient(180deg, #ffffff, #f7fbff);
  border: 1px solid rgba(6, 75, 159, 0.12);
  text-align: center;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

.case-solution-grid .case-solution-card:nth-child(4),
.case-solution-grid .case-solution-card:nth-child(5) {
  width: calc(50% - 12px);
}

.case-solution-grid .case-solution-card:nth-child(4) {
  clear: left;
  margin-left: 6px;
}

.case-solution-grid .case-solution-card:nth-child(5) {
  margin-right: 6px;
}

.case-solution-grid--4col .case-solution-card {
  width: calc(25% - 12px);
}

.case-solution-grid--4col .case-solution-card:nth-child(4) {
  clear: none;
  width: calc(25% - 12px);
  margin-left: 6px;
}

.case-solution-grid--6col .case-solution-card,
.case-solution-grid--6col .case-solution-card:nth-child(4),
.case-solution-grid--6col .case-solution-card:nth-child(5),
.case-solution-grid--6col .case-solution-card:nth-child(6) {
  width: calc(33.3333% - 12px);
}

.case-solution-grid--6col .case-solution-card:nth-child(4) {
  clear: left;
  margin-left: 6px;
}

.case-solution-grid--6col .case-solution-card:nth-child(5) {
  margin-right: 6px;
}

.case-solution-grid--3col {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin: 16px 0 0;
  overflow: visible;
}

.case-solution-grid--3col::after {
  display: none;
}

.case-solution-grid--3col .case-solution-card,
.case-solution-grid--3col .case-solution-card:nth-child(4),
.case-solution-grid--3col .case-solution-card:nth-child(5) {
  float: none;
  width: auto;
  margin: 0;
  clear: none;
}

.case-solution-grid--2col .case-solution-card,
.case-solution-grid--2col .case-solution-card:nth-child(4),
.case-solution-grid--2col .case-solution-card:nth-child(5) {
  width: calc(50% - 12px);
  clear: none;
}

.case-solution-grid--2col .case-solution-card:nth-child(odd) {
  clear: left;
}

.case-solution-grid--2col .case-solution-card:nth-child(4) {
  clear: none;
  margin-left: 6px;
}

.case-solution-grid--2col .case-solution-card:nth-child(5) {
  margin-right: 6px;
}

.case-solution-grid--rowicon .case-solution-card {
  text-align: left;
  padding: 22px 22px 20px;
}

.case-solution-grid--rowicon .case-solution-card__icon {
  float: left;
  width: 32px;
  margin: 2px 12px 0 0;
}

.case-solution-grid--rowicon .case-solution-card h4 {
  overflow: hidden;
  margin: 0 0 10px;
  line-height: 32px;
  text-align: left;
}

.case-solution-grid--rowicon .case-solution-card p {
  clear: both;
  margin: 0;
  text-align: left;
}

.case-solution-grid--2col-bar .case-solution-card {
  text-align: left;
  padding: 22px 20px 20px 28px;
  position: relative;
}

.case-solution-grid--2col-bar .case-solution-card::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  border-radius: 10px 0 0 10px;
  background: linear-gradient(180deg, #0050be, #4d9fff);
}

.case-solution-grid--2col-bar .case-solution-card h4 {
  text-align: left;
}

.case-solution-grid--2col-bar .case-solution-card p {
  text-align: justify;
}

.case-solution-grid--list {
  margin: 20px 0 0;
}

.case-solution-grid--list .case-solution-card {
  float: none;
  width: 100%;
  margin: 0 0 14px;
  padding: 22px 24px 20px 32px;
  text-align: left;
  position: relative;
}

.case-solution-grid--list .case-solution-card:last-child {
  margin-bottom: 0;
}

.case-solution-grid--list .case-solution-card:nth-child(4),
.case-solution-grid--list .case-solution-card:nth-child(5) {
  width: 100%;
  clear: none;
  margin-left: 0;
  margin-right: 0;
}

.case-solution-grid--list .case-solution-card::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  border-radius: 10px 0 0 10px;
  background: linear-gradient(180deg, #0050be, #4d9fff);
}

.case-solution-grid--list .case-solution-card__icon {
  float: left;
  margin: 2px 12px 0 0;
  width: 32px;
}

.case-solution-grid--list .case-solution-card h4 {
  overflow: hidden;
  margin: 0 0 10px;
  line-height: 32px;
  text-align: left;
}

.case-solution-grid--list .case-solution-card p {
  clear: both;
  margin: 0;
  text-align: left;
}

.case-solution-card__icon {
  display: inline-block;
  width: 36px;
  height: auto;
  margin: 0 auto 10px;
}

.case-solution-card__icon img {
  width: 100%;
  height: auto;
  display: inline-block;
  vertical-align: middle;
}

.case-solution-grid--softicon .case-solution-card__icon {
  display: inline-block;
  width: 56px;
  height: 56px;
  margin: 0 auto 14px;
  border-radius: 50%;
  background: rgba(26, 137, 254, 0.10);
  line-height: 56px;
  text-align: center;
  font-size: 0;
}

.case-solution-grid--softicon .case-solution-card__icon img {
  width: 28px;
  height: 28px;
}

.case-solution-grid--plain .case-solution-card {
  padding: 22px 24px 20px;
}

.case-solution-grid--plain .case-solution-card::before {
  display: none;
}

.case-solution-grid--plain .case-solution-card__icon {
  width: 42px;
  height: 42px;
  margin: 0 12px 0 0;
  border-radius: 50%;
  background: rgba(26, 137, 254, 0.10);
  line-height: 42px;
  text-align: center;
  font-size: 0;
}

.case-solution-grid--plain .case-solution-card__icon img {
  width: 22px;
  height: 22px;
}

.case-solution-grid--plain .case-solution-card h4 {
  line-height: 42px;
}

.case-solution-card h4 {
  margin: 0 0 8px;
  font-size: 18px;
  line-height: 32px;
  color: var(--home-blue-dark, #071A35);
}
.case-solution-card p {
  color: #333;
  font-size: 16px;
  line-height: 28px;
  text-align: justify;
}

#solution .case-section__body > p {
  color: #333;
  font-size: 16px;
  line-height: 28px;
}

.case-solution-figures {
  margin: 24px -10px 0;
  overflow: hidden;
}

.case-solution-figures::after {
  content: '';
  display: block;
  clear: both;
}

.case-solution-figure {
  float: left;
  width: calc(33.3333% - 20px);
  margin: 0 10px 20px;
  box-sizing: border-box;
}

.case-solution-figure:nth-child(4),
.case-solution-figure:nth-child(5) {
  width: calc(50% - 20px);
}

.case-solution-figure:nth-child(4) {
  clear: left;
}

.case-solution-figures--2col .case-solution-figure {
  width: calc(50% - 20px);
  margin: 0 10px 20px;
}

.case-solution-figures--2col .case-solution-figure:nth-child(2n+1) {
  clear: left;
}

.case-solution-figures--2col .case-solution-figure:nth-child(4) {
  clear: none;
}

.case-solution-figures--2col .case-solution-figure:nth-child(4),
.case-solution-figures--2col .case-solution-figure:nth-child(5) {
  width: calc(50% - 20px);
}

.case-solution-figure__frame {
  overflow: hidden;
  border-radius: 10px;
  border: 1px solid rgba(6, 75, 159, 0.10);
  background: linear-gradient(180deg, #ffffff, #f8fbff);
}

.case-solution-figure__frame img {
  width: 100%;
  height: auto;
  display: block;
  vertical-align: top;
}

.case-solution-figure__caption {
  margin: 10px 0 0;
  color: #333;
  font-size: 16px;
  line-height:28px;
  text-align: center;
}

.case-path-block + .case-path-block {
  margin-top: 30px;
}

.case-path-block__title {
  position: relative;
  margin: 0 0 22px;
  padding-left: 24px;
  font-size: 18px;
  line-height:24px;
  color: var(--home-blue-dark, #333);
}

.case-path-block__title::before {
  content: '';
  position: absolute;
  left: 2px;
  top: 0;
  width: 5px;
  height: 22px;
  border-radius: 5px;
  background: var(--home-blue, #0050be);
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.case-path-roles {
  overflow: hidden;
}

.case-path-roles::after {
  content: '';
  display: block;
  clear: both;
}

.case-path-role {
  float: left;
  width: calc(50% - 9px);
  box-sizing: border-box;
  padding: 22px 24px;
  border-radius: 14px;
  background: linear-gradient(180deg, #f8fbff, #f3f7ff);
  border: 1px solid rgba(6, 75, 159, 0.10);
}

.case-path-role:first-child {
  margin-right: 18px;
}

.case-path-role__label {
  margin: 0 0 6px;
  font-size: 16px;
  line-height: 28px;
  color: var(--home-blue);
  font-weight:  bold;
}

.case-path-role__label--a {
  color: #188ffe;
}

.case-path-role p {
  margin: 0;
  color: #333;
  font-size: 16px;
  line-height: 32px;
  text-align: justify;
}

.case-path-milestones {
  position: relative;
  padding-left: 40px;
  padding-bottom: 36px;
  padding-top:20px;
  margin-top:10px;
}

.case-path-milestones::before {
  content: '';
  position: absolute;
  left: 11px;
  top: 8px;
  bottom: 22px;
  width: 2px;
  border-radius: 1px;
  background: linear-gradient(180deg, var(--home-blue, #064B9F), #00A9DF);
}

.case-path-milestones::after {
  content: '';
  position: absolute;
  left: 5px;
  bottom: 13px;
  width: 0;
  height: 0;
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-top: 10px solid #0050be;
}

.case-path-milestone {
  position: relative;
  padding: 10px 0 0;
}

.case-path-milestone::before {
  content: '';
  position: absolute;
  left: -33px;
  top: 22px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--home-blue, #064B9F);
  border: 2px solid #fff;
  box-shadow: 0 0 0 2px rgba(6, 75, 159, 0.25);
  box-sizing: border-box;
  z-index: 1;
}

.case-path-milestone:last-child {
  padding-bottom: 0;
}

.case-path-milestone__tag {
  position: relative;
  float: left;
  min-width: 76px;
  margin-right: 16px;
  padding: 5px 12px;
  border-radius: 3px;
  background: linear-gradient(180deg,  #188ffe, #0050be);
  color: #fff;
  font-size: 16px;
  line-height: 28px;
  text-align: center;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
}

.case-path-milestone__content {
  overflow: hidden;
}

.case-path-milestone__content strong {
  display: block;
  margin-bottom: 2px;
  color: #0050be;
  font-size: 16px;
  line-height: 32px;
  font-weight: bold;
}

.case-path-milestone__content p {
  color: #333;
  font-size: 16px;
  line-height: 28px;
  text-align: justify;
}

.case-path-milestones--notag .case-path-milestone__tag {
  display: none;
}

.case-path-phases {
  margin: 0 -8px;
  overflow: hidden;
}

.case-path-phases::after {
  content: '';
  display: block;
  clear: both;
}

.case-path-phase {
  float: left;
  width: calc(25% - 16px);
  margin: 0 8px;
  padding: 24px 20px;
  box-sizing: border-box;
  text-align: center;
  border-radius: 10px;
  background: #f8f9fb;
  border: 1px solid rgba(6, 75, 159, 0.08);
}

.case-path-phase__label {
  display: block;
  margin: 0 0 18px;
  font-size: 14px;
  line-height: 1;
  color: var(--home-blue, #0050be);
}

.case-path-phase__title {
  margin: 0 0 16px;
  font-size: 18px;
  line-height: 1.3;
  color: var(--home-blue-dark, #333);
}

.case-path-phase__tasks {
  margin: 0;
  padding: 0;
  list-style: none;
}

.case-path-phase__tasks li {
  margin: 0 0 8px;
  color: #636363;
  font-size: 16px;
  line-height: 24px;
}

.case-path-phase__tasks li:last-child {
  margin-bottom: 0;
}

.case-path-phase__text {
  margin: 0;
  color: #636363;
  font-size: 14px;
  line-height: 22px;
}

.case-path-phases--num .case-path-phase {
  padding-top: 28px;
  text-align: center;
  background: linear-gradient(180deg, #ffffff, #f8fbff);
  border: 1px solid rgba(6, 75, 159, 0.10);
}

.case-path-phases--num .case-path-phase__num {
  display: inline-block;
  width: 36px;
  height: 36px;
  margin: 0 0 16px;
  border-radius: 50%;
  background: var(--home-blue, #0050be);
  color: #fff;
  font-size: 18px;
  line-height: 36px;
  font-weight: 700;
  text-align: center;
}

.case-path-phases--num .case-path-phase__text {
  text-align: justify;
  font-size: 16px;
  line-height: 28px;
}

.case-path-phases--3 .case-path-phase {
  width: calc(33.3333% - 16px);
}

.case-section__body--results {
  /* padding-top: 2px; */
  font-size: 16px;
  line-height: 28px;
}

.case-result-block + .case-result-block {
  margin-top: 30px;
}
.case-result-block p {
  color: #333;
  font-size: 16px;
  line-height: 28px;
  text-align: justify;
}

.case-result-deliverables {
  padding: 22px 24px 22px 44px;
  border-radius: 10px;
  position: relative;
  overflow: hidden;
  background: linear-gradient(180deg, #f8fbff, #f3f7ff);
  border: 1px solid rgba(6, 75, 159, 0.10);
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}
.case-result-deliverables::before {
  content: '';
  position: absolute;
  right: -16px;
  bottom: -24px;
  width: 100%;
  height: 100%;
  background-image: url(../images/icon-result.png);
  background-repeat: no-repeat;
  background-size: 200px;
  background-position: right bottom;
  opacity: .15;
}
.case-result-deliverables li {
  position: relative;
  color: #333;
  font-size: 16px;
  line-height: 32px;
  text-align: justify;
}

.case-result-deliverables li + li {
  margin-top: 6px;
}

.case-result-deliverables li::before {
  content: '';
  position: absolute;
  left: -18px;
  top: 13px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--home-blue, #064B9F);
}

.case-result-values {
  overflow: hidden;
  margin-top:20px;
}

.case-result-values::after {
  content: '';
  display: block;
  clear: both;
}

.case-result-value {
  float: left;
  width: calc(50% - 9px);
  box-sizing: border-box;
  margin-bottom: 18px;
  padding: 22px 24px;
  border-radius: 14px;
  background: linear-gradient(180deg, #ffffff, #f8fbff);
  border: 1px solid rgba(6, 75, 159, 0.10);
}

.case-result-value:nth-child(odd) {
  margin-right: 18px;
}

.case-result-value:nth-child(5):last-child {
  width: 100%;
  margin-right: 0;
  clear: left;
}

.case-result-values--3col {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  overflow: visible;
}

.case-result-values--3col::after {
  display: none;
}

.case-result-values--3col .case-result-value {
  float: none;
  width: auto;
  margin-right: 0;
  margin-bottom: 0;
  clear: none;
  box-sizing: border-box;
}

.case-result-values--3col .case-result-value:nth-child(odd) {
  margin-right: 0;
}

.case-result-values--3col .case-result-value:nth-child(3n) {
  margin-right: 0;
}

.case-result-values--3col .case-result-value:nth-child(3n+1) {
  clear: none;
}

.case-result-values--3col .case-result-value:nth-child(5):last-child {
  width: auto;
  clear: none;
}

.case-result-values--5col {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  overflow: visible;
}

.case-result-values--5col::after {
  display: none;
}

.case-result-values--5col .case-result-value {
  float: none;
  width: auto;
  margin-right: 0;
  margin-bottom: 0;
  padding: 20px 14px;
  text-align: justify;
  clear: none;
  box-sizing: border-box;
}

.case-result-values--5col .case-result-value:nth-child(odd) {
  margin-right: 0;
}

.case-result-values--5col .case-result-value:nth-child(5),
.case-result-values--5col .case-result-value:nth-child(5):last-child {
  width: auto;
  margin-right: 0;
  clear: none;
}

.case-result-values--5col .case-result-value__icon {
  float: none;
  display: block;
  margin: 0 auto 10px;
}

.case-result-values--5col .case-result-value__text {
  display: block;
  overflow: visible;
  line-height: 28px;
  text-align: center;
  font-size: 18px;
}

.case-result-values--5col .case-result-value__label {
  text-align: center;
}

.case-result-values--5col .case-result-value p {
  margin-bottom: 0;
  font-size: 16px;
  line-height: 28px;
}

.case-result-value__label {
  overflow: hidden;
  margin: 0 0 10px;
  font-size: 18px;
  line-height: 32px;
  color: #0050be;
  /* font-weight: bold; */
}

.case-result-value__icon {
  float: left;
  width: 42px;
  height: 42px;
  margin-right: 10px;
  line-height: 42px;
  border-radius: 50%;
  background-color: rgba(6, 75, 159, 0.08);
  text-align: center;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
}

.case-result-value__text {
  display: block;
  overflow: hidden;
  line-height: 42px;
}
.case-result-value__icon img {
  width: 100%;
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: auto;
}
.case-result-value p {
  color: #333;
  font-size: 16px;
  line-height: 32px;
  text-align: justify;
}

.case-result-metrics {
  overflow: hidden;
}

.case-result-metrics::after {
  content: '';
  display: block;
  clear: both;
}

.case-result-metric {
  float: left;
  width: calc(25% - 16px);
  margin: 0 8px;
  padding: 28px 15px 24px;
  box-sizing: border-box;
  border-radius: 10px;
  text-align: center;
  background: #f8f9fb;
  border: 1px solid rgba(6, 75, 159, 0.08);
}

.case-result-metric__value {
  margin: 0 0 12px;
  font-size: 32px;
  line-height: 1.2;
  color: var(--home-blue, #0050be);
  font-weight: 700;
}

.case-result-metric__arrow {
  display: inline-block;
  margin: 0 4px;
  font-size: 24px;
  font-weight: 400;
  vertical-align: middle;
}

.case-result-metric__unit {
  font-size: 18px;
  display: inline-block;
  color: #333;
  vertical-align: middle;
  font-weight: normal;
  margin-left: 4px;
}

.case-result-metric__label {
  color: #636363;
  font-size: 16px;
  line-height: 24px;
}

#review{
  background-image: url(../images/bg-customerspj.jpg);
  background-repeat: no-repeat;
  background-size: auto 90%;
  background-position: right bottom;
}
.case-review-box {
  overflow: hidden;
}
.case-review-box::after {
  content: '';
  display: block;
  clear: both;
}

.case-quote {
  position: relative;
  float: left;
  width: 68%;
  box-sizing: border-box;
  padding: 48px 28px 24px 36px;
  min-height: 220px;
  border-radius: 15px;
  background: linear-gradient(180deg, #ffffff, #f8fbff);
  border: 1px solid rgba(6, 75, 159, 0.10);
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
  -ms-border-radius: 15px;
  -o-border-radius: 15px;
}

.case-quote__mark {
  position: absolute;
  left: 16px;
  top: 12px;
  width: 36px;
  line-height: 1;
  font-size: 0;
}

.case-quote__mark img {
  display: block;
  width: 100%;
  height: auto;
}

.case-quote p {
  color: var(--home-text);
  font-size: 16px;
  line-height: 32px;
}

.case-quote__author {
  margin-top: 18px;
  color: var(--home-blue);
  text-align: right;
  font-size: 16px;
}

.case-quote__author + p {
  margin-top: 24px;
}
body:has(.case-detail-main) .site-footer {
  /* margin-top: 36px; */
}

@media (max-width: 1200px) {
  .cases-shell .case-card {
    width: 50%;
  }

  .cases-grid-wrap {
    min-height: 280px;
  }

  .cases-grid-wrap.is-loading {
    min-height: 300px;
  }

  .cases-grid-status {
    padding: 40px 20px;
  }

  .case-bg-challenge__cols .case-bg-card,
  .case-bg-challenge__cols .case-challenge-card {
    float: none;
    width: 100%;
    margin-right: 0;
  }

  .case-bg-challenge__cols .case-challenge-card {
    margin-top: 18px;
  }

  .case-solution-grid .case-solution-card {
    width: calc(33.3333% - 12px);
    margin-bottom: 12px;
  }

  .case-solution-grid .case-solution-card:nth-child(4),
  .case-solution-grid .case-solution-card:nth-child(5) {
    width: calc(50% - 12px);
  }

  .case-solution-grid .case-solution-card:nth-child(4) {
    margin-left: 6px;
  }

  .case-solution-grid .case-solution-card:nth-child(5) {
    margin-right: 6px;
  }

  .case-solution-grid--3col {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .case-solution-grid--3col .case-solution-card,
  .case-solution-grid--3col .case-solution-card:nth-child(4),
  .case-solution-grid--3col .case-solution-card:nth-child(5) {
    width: auto;
    margin: 0 0 12px;
  }

  .case-solution-grid--4col .case-solution-card,
  .case-solution-grid--4col .case-solution-card:nth-child(4) {
    width: calc(25% - 12px);
  }

  .case-solution-grid--4col .case-solution-card:nth-child(4) {
    clear: none;
    margin-left: 6px;
  }

  .case-solution-grid--6col .case-solution-card,
  .case-solution-grid--6col .case-solution-card:nth-child(4),
  .case-solution-grid--6col .case-solution-card:nth-child(5),
  .case-solution-grid--6col .case-solution-card:nth-child(6) {
    width: calc(33.3333% - 12px);
  }

  .case-solution-grid--6col .case-solution-card:nth-child(4) {
    clear: left;
    margin-left: 6px;
  }

  .case-solution-grid--6col .case-solution-card:nth-child(5) {
    margin-right: 6px;
  }

  .case-solution-grid--2col .case-solution-card,
  .case-solution-grid--2col .case-solution-card:nth-child(4),
  .case-solution-grid--2col .case-solution-card:nth-child(5) {
    width: calc(50% - 12px);
    clear: none;
  }

  .case-solution-grid--2col .case-solution-card:nth-child(odd) {
    clear: left;
  }

  .case-solution-grid--2col .case-solution-card:nth-child(4) {
    clear: none;
    margin-left: 6px;
  }

  .case-solution-grid--list .case-solution-card,
  .case-solution-grid--list .case-solution-card:nth-child(4),
  .case-solution-grid--list .case-solution-card:nth-child(5) {
    float: none;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }

  .case-path-role {
    float: none;
    width: 100%;
    margin-right: 0;
  }

  .case-path-role + .case-path-role {
    margin-top: 18px;
  }

  .case-path-milestone__tag {
    float: none;
    display: inline-block;
    margin: 0 0 10px;
  }

  .case-path-milestone__content {
    clear: both;
  }

  .case-path-phase {
    width: calc(50% - 16px);
    margin-bottom: 16px;
  }

  .case-path-phase:nth-child(odd) {
    clear: left;
  }

  .case-result-metric {
    width: calc(50% - 16px);
    margin-bottom: 16px;
  }

  .case-result-metric:nth-child(odd) {
    clear: left;
  }

  .case-result-value {
    float: none;
    width: 100%;
    margin-right: 0;
  }

  .case-result-values--5col {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .case-result-values--5col .case-result-value,
  .case-result-values--5col .case-result-value:nth-child(5),
  .case-result-values--5col .case-result-value:nth-child(5):last-child,
  .case-result-values--3col .case-result-value {
    float: none;
    width: 100%;
    margin-right: 0;
    margin-bottom: 0;
    clear: none;
  }

  .case-result-value + .case-result-value {
    margin-top: 0;
  }

  .case-quote,
  .case-review-illustration {
    float: none;
    width: 100%;
    padding-left: 0;
  }

  .case-review-illustration {
    margin-top: 20px;
  }
}

@media (max-width: 767px) {
  .cases-shell {
    padding: 16px 0 32px;
  }

  .cases-filter-panel {
    padding: 16px;
  }

  .cases-filter-row__label {
    float: none;
    width: auto;
    line-height: 1.4;
    margin-bottom: 8px;
  }

  .cases-filter-group {
    padding-left: 0;
    padding-right: 0;
  }

  .cases-filter-row:last-child .cases-filter-group {
    padding-right: 0;
  }

  .cases-filter-reset {
    float: none;
    display: inline-block;
    margin-top: 10px;
  }

  .cases-shell .case-card {
    width: 100%;
  }

  .cases-shell .case-card__actions a {
    float: none;
    display: block;
    width: 100%;
    margin: 0 0 10px;
  }

  .case-tabs a {
    width: 50%;
    min-height: 48px;
    line-height: 48px;
    padding: 8px 6px;
    font-size: 16px;
  }

  .case-detail-main .solution-main {
    margin-left: 0;
  }

  .case-section {
    scroll-margin-top: 80px;
  }

  .case-page-title__main {
    padding-right: 0;
  }

  .case-page-title__back {
    position: static;
    margin-top: 14px;
  }

  .case-panel {
    padding: 20px 16px;
    border-radius: 18px;
  }

  .case-section__head h3 {
    line-height: 1.35;
    padding-top: 10px;
  }

  .case-solution-grid .case-solution-card {
    float: none;
    width: 100%;
    margin: 0 0 16px;
  }

  .case-solution-grid .case-solution-card:nth-child(4),
  .case-solution-grid .case-solution-card:nth-child(5) {
    width: 100%;
  }

  .case-solution-grid .case-solution-card:nth-child(4) {
    margin-left: 0;
  }

  .case-solution-grid .case-solution-card:nth-child(5) {
    margin-right: 0;
  }

  .case-solution-grid--4col .case-solution-card,
  .case-solution-grid--4col .case-solution-card:nth-child(4) {
    float: none;
    width: 100%;
    margin: 0 0 16px;
  }

  .case-solution-grid--4col .case-solution-card:nth-child(4) {
    margin-left: 0;
  }

  .case-solution-grid--6col .case-solution-card,
  .case-solution-grid--6col .case-solution-card:nth-child(4),
  .case-solution-grid--6col .case-solution-card:nth-child(5),
  .case-solution-grid--6col .case-solution-card:nth-child(6) {
    float: none;
    width: 100%;
    margin: 0 0 16px;
  }

  .case-solution-grid--6col .case-solution-card:nth-child(4) {
    clear: none;
    margin-left: 0;
  }

  .case-solution-grid--6col .case-solution-card:nth-child(5) {
    margin-right: 0;
  }

  .case-solution-grid--2col .case-solution-card,
  .case-solution-grid--2col .case-solution-card:nth-child(4),
  .case-solution-grid--2col .case-solution-card:nth-child(5) {
    float: none;
    width: 100%;
    margin: 0 0 16px;
    clear: none;
  }

  .case-solution-grid--2col .case-solution-card:nth-child(4) {
    margin-left: 0;
  }

  .case-solution-grid--list .case-solution-card,
  .case-solution-grid--list .case-solution-card:nth-child(4),
  .case-solution-grid--list .case-solution-card:nth-child(5) {
    float: none;
    width: 100%;
    margin: 0 0 14px;
  }

  .case-solution-grid--list .case-solution-card:last-child {
    margin-bottom: 0;
  }

  .case-solution-figure,
  .case-solution-figure:nth-child(4),
  .case-solution-figure:nth-child(5) {
    float: none;
    width: 100%;
    margin: 0 0 16px;
  }

  .case-solution-figure:nth-child(4) {
    clear: none;
  }

  .case-solution-figures--2col .case-solution-figure,
  .case-solution-figures--2col .case-solution-figure:nth-child(4),
  .case-solution-figures--2col .case-solution-figure:nth-child(5) {
    float: left;
    width: calc(50% - 20px);
    margin: 0 10px 20px;
  }

  .case-solution-figures--2col .case-solution-figure:nth-child(2n+1) {
    clear: left;
  }

  .case-solution-figures--2col .case-solution-figure:nth-child(4) {
    clear: none;
  }

  .case-path-phase,
  .case-result-metric {
    float: none;
    width: calc(100% - 16px);
    margin: 0 8px 14px;
  }

  .case-result-value {
    float: none;
    width: 100%;
    margin-right: 0;
  }

  .case-quote {
    padding: 24px 18px 20px 26px;
  }

  .case-quote__mark {
    left: 10px;
    top: 0;
    width: 40px;
  }
}

/* ========== 解决方案列表 / 详情页 ========== */

:root {
  --solution-navy: #0f2556;
  --solution-navy-2: #132e68;
  --solution-blue: #2f6bff;
  --solution-blue-soft: #eaf1ff;
  --solution-cyan: #48d4ff;
  --solution-gold: #f0ad4e;
  --solution-text: #173158;
  --solution-muted: #6d7ea3;
  --solution-line: rgba(31, 76, 154, 0.12);
  --solution-card: #ffffff;
  --solution-bg: #f4f8ff;
}

.solution-page {
  background:
    radial-gradient(circle at 20% 10%, rgba(79, 132, 255, 0.12), transparent 36%),
    radial-gradient(circle at 80% 0%, rgba(72, 212, 255, 0.10), transparent 30%),
    linear-gradient(180deg, #f8fbff 0%, var(--solution-bg) 100%);
  color: var(--solution-text);
}

.solution-hero,
.solution-detail-hero {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(180deg, rgba(8, 25, 64, 0.88), rgba(12, 34, 77, 0.84)),
    url('../images/banner-business.jpg') center/cover no-repeat;
  color: #fff;
}

.solution-hero::before,
.solution-detail-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 78% 18%, rgba(73, 154, 255, 0.36), transparent 18%),
    radial-gradient(circle at 62% 52%, rgba(72, 212, 255, 0.15), transparent 22%),
    linear-gradient(90deg, rgba(8, 25, 64, 0.18), rgba(8, 25, 64, 0.46));
}

.solution-hero__inner,
.solution-detail-hero__inner {
  position: relative;
  z-index: 1;
  min-height: 270px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 44px 0 48px;
}

.solution-kicker,
.solution-detail-kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 14px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.18);
  color: rgba(255, 255, 255, 0.88);
  font-size: 13px;
  letter-spacing: 0.04em;
}

.solution-hero h1,
.solution-detail-hero h1 {
  margin: 16px 0 0;
  font-size: clamp(34px, 4vw, 58px);
  line-height: 1.05;
  font-weight: 800;
  letter-spacing: -0.02em;
}

.solution-hero p,
.solution-detail-hero p {
  margin: 16px 0 0;
  max-width: 56ch;
  font-size: 16px;
  line-height: 1.85;
  color: rgba(255, 255, 255, 0.82);
}

.solution-hero__visual,
.solution-detail-hero__visual {
  display: none;
}

.solution-hero__visual::before,
.solution-detail-hero__visual::before {
  content: '';
  position: absolute;
  inset: 18px;
  border-radius: 20px;
  background:
    radial-gradient(circle at 20% 30%, rgba(255, 255, 255, 0.14), transparent 10%),
    radial-gradient(circle at 80% 30%, rgba(255, 255, 255, 0.11), transparent 10%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.01));
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.solution-shell {
  padding: 45px 0;
}

.solution-section {
  margin-bottom: 26px;
  scroll-margin-top: 116px;
}

.solution-section__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}

.solution-section__head h2 {
  margin: 0;
  font-size: 28px;
  line-height: 1.15;
  color: var(--solution-text);
}

.solution-section__head p {
  margin: 0;
  color: var(--solution-muted);
  line-height: 1.7;
}

.solution-scope {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(47, 107, 255, 0.08);
  color: var(--solution-blue);
  font-weight: 700;
  font-size: 13px;
}

.solution-card {
  background: var(--solution-card);
  border: 1px solid rgba(47, 107, 255, 0.10);
  border-radius: 24px;
  box-shadow: 0 18px 50px rgba(18, 46, 104, 0.08);
  overflow: hidden;
}

.solution-card--feature {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
}

.solution-card__media {
  min-height: 260px;
  background: #dce8ff;
  position: relative;
  overflow: hidden;
}

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

.solution-card__body {
  padding: 28px;
}

.solution-card__title {
  margin: 0;
  font-size: 24px;
  line-height: 1.25;
  color: var(--solution-text);
}

.solution-card__intro {
  margin: 12px 0 0;
  color: var(--solution-muted);
  line-height: 1.9;
}

.solution-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
}

.solution-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 9px 12px;
  border-radius: 999px;
  background: #f4f8ff;
  border: 1px solid rgba(47, 107, 255, 0.10);
  color: var(--solution-text);
  font-size: 13px;
  font-weight: 600;
}

.solution-card__link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 22px;
  color: var(--solution-blue);
  font-weight: 700;
}

.solution-grid {
  display: grid;
  gap: 18px;
}

.solution-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.solution-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.solution-detail-topnav {
  margin-top: -18px;
  position: relative;
  z-index: 2;
}

.solution-switcher {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding: 14px;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.90);
  border: 1px solid rgba(47, 107, 255, 0.10);
  box-shadow: 0 18px 42px rgba(18, 46, 104, 0.08);
}

.solution-switcher a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 11px 16px;
  border-radius: 14px;
  background: #f7faff;
  border: 1px solid rgba(47, 107, 255, 0.10);
  color: var(--solution-text);
  font-weight: 700;
  transition: all 0.2s ease;
}

.solution-switcher a.is-active,
.solution-switcher a:hover {
  background: linear-gradient(135deg, var(--solution-navy), var(--solution-blue));
  color: #fff;
  border-color: transparent;
}

.solution-detail-shell {
  padding: 50px 0;
  
}

/* body 的 overflow-x:hidden 会破坏 sticky，详情页单独放开 */
body.solution-detail-page {
  overflow-x: clip;
}

.solution-detail-grid {
  position: relative;
}

.solution-detail-rail {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 220px;
}

.solution-detail-anchors {
  position: relative;
  z-index: 20;
  background: #fff;
  border-radius: 12px;
  border: 1px solid rgba(23, 49, 88, 0.08);
  padding: 28px 20px 28px 24px;
  box-shadow: 0 8px 24px rgba(18, 46, 104, 0.06);
  box-sizing: border-box;
}

/* 详情页勿继承列表页 float，否则 grid 高度塌陷，左侧 JS 固定失效 */
.solution-detail-shell .solution-main {
  float: none;
  width: auto;
  margin-left: 244px;
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
  overflow: visible;
}

.solution-detail-anchors__title {
  margin: 0 0 12px;
  font-size: 14px;
  font-weight: 700;
  color: var(--solution-muted);
  letter-spacing: 0.08em;
}

.solution-detail-anchors__list {
  position: relative;
  display: block;
  padding-left: 24px;
}

.solution-detail-anchors__list a {
  position: relative;
  display: block;
  padding: 0;
  height: 28px;
  margin: 0 0 20px;
  border-radius: 0;
  background: transparent;
  color: #333;
  border: none;
  font-size: 18px;
  line-height: 28px;
  transition: color 0.3s ease;
}

.solution-detail-anchors__list a:last-child {
  margin-bottom: 0;
}

.solution-detail-anchors__list a::before {
  content: '';
  position: absolute;
  left: -24px;
  top: 50%;
  width: 8px;
  height: 8px;
  margin-top: 0;
  margin-left: 0;
  border-radius: 50%;
  background: #c5ced9;
  transform: translateY(-50%);
  z-index: 2;
  transition: width 0.3s ease, height 0.3s ease, background 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease;
}

.solution-detail-anchors__list a:hover {
  background: transparent;
  color: var(--home-blue, #064B9F);
}

.solution-detail-anchors__list a:hover::before {
  background: rgba(6, 75, 159, 0.45);
  transform: translateY(-50%) scale(1.15);
}

.solution-panel {
  border-radius: 15px;
  border: 1px solid rgba(23, 49, 88, 0.06);
  box-shadow: 0 16px 48px rgba(18, 46, 104, 0.06);
  padding: 25px;
  margin-bottom: 24px;
  background-color: rgba(255, 255, 255, 0.8);
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
  -ms-border-radius: 15px;
  -o-border-radius: 15px;
}
#overview{
  background-image: url(../images/bg-solutions.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: right center;
}
.solution-panel h2,
.solution-panel h3 {
  margin: 0;
}

.solution-panel__title,
.solution-section__head .solution-panel__title {
  font-size: 24px;
  line-height: 42px;
  color: var(--home-blue, #0050be);
  letter-spacing: 0;
}

.solution-detail-shell .solution-section__head {
  display: block;
  overflow: hidden;
  margin-bottom: 20px;
}

.solution-panel__text {
  margin: 0;
  color: var(--solution-text);
  font-size: 16px;
  line-height: 28px;
  margin-bottom: 20px;
  overflow: hidden;
}

.solution-panel__text .solution-intro-split__media {
  float: right;
  width: 38%;
  margin-left: 28px;
}

.solution-panel__text .solution-intro-split__media img {
  display: block;
  width: 100%;
  height: 260px;
  object-fit: cover;
  border-radius: 12px;
  background: #eef2f7;
  border: 1px solid rgba(23, 49, 88, 0.08);
}

.solution-panel__text > p {
  overflow: hidden;
}

#solution > .solution-panel__text {
  margin-bottom: 20px;
}

.solution-service-list {
  margin-top: 8px;
}

.solution-service-item {
  margin-bottom: 42px;
}

.solution-service-item:last-child {
  margin-bottom: 0;
}

.solution-service-item__title {
  margin: 0 0 14px;
  font-size: 18px;
  line-height: 1.4;
  color: var(--home-blue-dark, #071A35);
  font-weight: 700;
}

.solution-service-item__title em {
  margin-right: 6px;
  font-style: normal;
  color: var(--home-blue, #0050be);
}

.solution-service-item .solution-panel__text {
  margin-bottom: 0;
}

.solution-service-figure {
  margin-top: 22px;
}

.solution-service-figure img {
  display: block;
  width: 100%;
  height: auto;
  border: 1px solid rgba(23, 49, 88, 0.10);
  border-radius: 12px;
  background: #fff;
}

.solution-service-figure--pending {
  min-height: 160px;
  border: 1px dashed rgba(23, 49, 88, 0.18);
  border-radius: 12px;
  background: #f7fbff;
  text-align: center;
  line-height: 160px;
  color: var(--solution-muted, #6b7c93);
  font-size: 14px;
}

.solution-flow {
  margin-top: 22px;
  padding: 28px 18px 18px;
  border: 1px solid rgba(23, 49, 88, 0.10);
  border-radius: 14px;
  background: linear-gradient(180deg, #f7fbff, #ffffff);
  box-sizing: border-box;
}

.solution-flow__steps {
  overflow: hidden;
}

.solution-flow__step {
  position: relative;
  float: left;
  width: 20%;
  padding: 0 10px;
  box-sizing: border-box;
  text-align: center;
}

.solution-flow__step:not(:last-child)::after {
  content: '';
  position: absolute;
  top: 34px;
  right: -6px;
  width: 0;
  height: 0;
  border-top: 7px solid transparent;
  border-bottom: 7px solid transparent;
  border-left: 10px solid #1a89fe;
}

.solution-flow__circle {
  display: block;
  width: 76px;
  height: 76px;
  margin: 0 auto 14px;
  border-radius: 50%;
  background: linear-gradient(135deg, #1a89fe 0%, #0050be 100%);
  box-shadow: 0 0 0 6px rgba(26, 137, 254, 0.12);
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  line-height: 76px;
  text-align: center;
}

.solution-flow__step p {
  margin: 0;
  color: #333;
  font-size: 13px;
  line-height: 1.7;
  text-align: justify;
}

.solution-flow__base {
  position: relative;
  overflow: hidden;
  margin-top: 28px;
  padding: 16px 12px 14px;
  border-radius: 8px;
  background: linear-gradient(90deg, #0050be 0%, #1a89fe 100%);
  color: #fff;
  text-align: center;
}

.solution-flow__base::before {
  content: '';
  position: absolute;
  left: 50%;
  top: -10px;
  width: 0;
  height: 0;
  margin-left: -10px;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 10px solid #0050be;
}

.solution-flow__base span {
  display: inline-block;
  padding: 0 18px;
  font-size: 13px;
  line-height: 1.6;
  font-weight: 600;
}

.solution-dash-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.solution-dash-list li {
  position: relative;
  padding: 14px 0 14px 20px;
  color: var(--solution-text);
  font-size: 16px;
  line-height: 1.85;
  border-bottom: 1px solid rgba(23, 49, 88, 0.06);
}

.solution-dash-list li:first-child {
  padding-top: 0;
}

.solution-dash-list li:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.solution-dash-list li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 28px;
  width: 10px;
  height: 2px;
  border-radius: 1px;
  background: var(--solution-blue, #2f6bff);
}

.solution-dash-list li:first-child::before {
  top: 0.85em;
}

.solution-detail-shell .case-result-values {
  margin-top: 0;
}

.solution-method-stack {
  /* margin: 0 -9px; */
  overflow: hidden;
}

.solution-method-stack::after {
  content: '';
  display: block;
  clear: both;
}

.solution-method-col {
  float: left;
  width: 33.3333%;
  padding: 0 9px;
  box-sizing: border-box;
}

.solution-method-stack--2x2 .solution-method-col {
  width: 50%;
  margin-bottom: 18px;
}

.solution-method-stack--split .solution-method-col,
.solution-method-stack:has(.solution-split-card) .solution-method-col {
  float: none;
  width: auto;
  margin-bottom: 18px;
}

.solution-method-stack--2x2 .solution-method-col .case-solution-card {
  margin-bottom: 0;
}

.solution-split-card {
  overflow: hidden;
  min-height: 100%;
  padding: 18px;
  border: 1px solid rgba(21, 82, 154, 0.10);
  border-radius: 14px;
  background: linear-gradient(180deg, #f4f8fd 0%, #eef4fb 100%);
  box-sizing: border-box;
}

.solution-split-card__media {
  float: left;
  width: 48%;
}

.solution-split-card__media img {
  display: block;
  width: 100%;
  /* height: 240px; */
  height: auto;
  object-fit: cover;
  border-radius: 10px;
  background: #eef2f7;
}

.solution-split-card__body {
  overflow: hidden;
  padding-left: 20px;
}

.solution-split-card__body h4 {
  margin: 0 0 10px;
  font-size: 18px;
  line-height: 1.4;
  color: #0050be;
}

.solution-split-card__body p {
  margin: 0;
  color: #333;
  font-size: 16px;
  line-height: 28px;
  text-align: justify;
}

.solution-method-col .case-solution-card {
  float: none;
  width: auto;
  margin: 0 0 16px;
  min-height: 0;
  padding: 28px 24px 26px;
  box-sizing: border-box;
  text-align: center;
  background: transparent;
  border: 1px solid rgba(23, 49, 88, 0.12);
  border-radius: 14px;
  box-shadow: none;
}

.solution-method-col .case-solution-card__icon {
  display: block;
  width: 56px;
  height: 56px;
  margin: 0 auto 16px;
  border-radius: 50%;
  background: linear-gradient(135deg, #1a89fe 0%, #0050be 100%);
  line-height: 56px;
  text-align: center;
  overflow: hidden;
  box-shadow: 0 8px 18px rgba(0, 80, 190, 0.22);
}

.solution-method-col .case-solution-card__icon img {
  width: 32px;
  height: auto;
  display: inline-block;
  vertical-align: middle;
  filter: brightness(0) invert(1);
}

.solution-framework-figure {
  margin: 0;
  overflow: visible;
  border-radius: 0;
  background: transparent;
  border: none;
  box-shadow: none;
}

.solution-framework-figure img {
  display: block;
  width: 100%;
  /* height: 180px; */
  object-fit: cover;
  background: transparent;
  border: 1px solid rgba(23, 49, 88, 0.12);
  border-radius: 14px;
}

.solution-framework-figure__caption {
  padding: 12px 8px 0;
  text-align: center;
  color: #173158;
  font-size: 16px;
  line-height: 28px;
  background: transparent;
  border-top: 0;
}

.solution-client-list {
  border: 1px solid rgba(21, 82, 154, 0.12);
  overflow: hidden;
}

.solution-client-list__head,
.solution-client-list__row {
  overflow: hidden;
  border-bottom: 1px solid rgba(21, 82, 154, 0.12);
}

.solution-client-list__row:last-child {
  border-bottom: 0;
}

.solution-client-list__region,
.solution-client-list__name {
  float: left;
  padding: 16px;
  font-size: 16px;
  line-height: 28px;
  color: #333;
  box-sizing: border-box;
}

.solution-client-list__region {
  width: 28%;
  text-align: center;
  background: #fbfcfe;
  border-right: 1px solid rgba(21, 82, 154, 0.12);
}

.solution-client-list__name {
  width: 72%;
  text-align: left;
  background: #fff;
}

.solution-client-list__head .solution-client-list__region,
.solution-client-list__head .solution-client-list__name {
  background: #eef4fb;
  text-align: center;
}

.solution-cases-swiper-wrap {
  position: relative;
  padding: 0 36px;
}

.solution-cases-swiper {
  overflow: hidden;
}

.solution-cases-swiper .swiper-slide {
  height: auto;
}

.solution-cases-swiper .solution-related-case {
  height: 100%;
  float: none;
  width: auto;
  margin: 0;
}

.solution-cases-prev,
.solution-cases-next {
  position: absolute;
  top: 50%;
  z-index: 2;
  width: 36px;
  height: 36px;
  margin-top: -50px;
  padding: 0;
  border: 1px solid rgba(23, 49, 88, 0.14);
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 8px 20px rgba(18, 46, 104, 0.08);
  cursor: pointer;
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.solution-cases-prev {
  left: 0;
}

.solution-cases-next {
  right: 0;
}

.solution-cases-prev::before,
.solution-cases-next::before {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  width: 8px;
  height: 8px;
  border-top: 2px solid #173158;
  border-right: 2px solid #173158;
}

.solution-cases-prev::before {
  margin: -4px 0 0 -2px;
  transform: rotate(-135deg);
}

.solution-cases-next::before {
  margin: -4px 0 0 -6px;
  transform: rotate(45deg);
}

.solution-cases-prev:hover,
.solution-cases-next:hover {
  background: var(--solution-blue, #2f6bff);
  border-color: transparent;
}

.solution-cases-prev:hover::before,
.solution-cases-next:hover::before {
  border-color: #fff;
}

.solution-cases-prev.swiper-button-disabled,
.solution-cases-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: default;
  pointer-events: none;
}

.solution-related-case {
  display: block;
  overflow: hidden;
  border-radius: 16px;
  background: #fff;
  border: 1px solid rgba(23, 49, 88, 0.08);
  box-shadow: 0 12px 32px rgba(18, 46, 104, 0.05);
  box-sizing: border-box;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

/* .solution-related-case:hover {
  transform: translateY(-4px);
  box-shadow: 0 20px 44px rgba(18, 46, 104, 0.12);
} */

.solution-related-case__media {
  height: 160px;
  overflow: hidden;
  background: #eef2f7;
}

.solution-related-case__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.35s ease;
}

.solution-related-case:hover .solution-related-case__media img {
  transform: scale(1.02);
  -webkit-transform: scale(1.02);
  -moz-transform: scale(1.02);
  -ms-transform: scale(1.02);
  -o-transform: scale(1.02);
}

.solution-related-case__body {
  padding: 18px 18px 20px;
}

.solution-related-case__body h3 {
  margin: 0;
  font-size: 18px;
  line-height: 28px;
  color: var(--solution-navy, #0f2556);
  height: 56px;
  overflow: hidden;
  line-clamp: 2;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  display: -webkit-box;
}

.solution-related-case__action {
  overflow: hidden;
  margin-top: 16px;
}

.solution-related-case__more {
  float: left;
  color: var(--home-blue, #0050be);
  font-size: 16px;
  /* font-weight: 400; */
  line-height: 28px;
  
}

.solution-related-case__arrow {
  float: right;
  width: 18px;
  height: 18px;
  line-height: 1;
  margin-top: 7px;
}

.solution-related-case__arrow img {
  display: block;
  width: 18px;
  height: auto;
  transition: transform 0.25s ease;
  -webkit-transition: transform 0.25s ease;
  -moz-transition: transform 0.25s ease;
  -ms-transition: transform 0.25s ease;
  -o-transition: transform 0.25s ease;
}

.solution-related-case:hover .solution-related-case__arrow img {
  transform: translateX(-4px);
  -webkit-transform: translateX(-4px);
  -moz-transform: translateX(-4px);
  -ms-transform: translateX(-4px);
  -o-transform: translateX(-4px);
}

.solution-adv-grid {
  margin: 0 -8px;
  /* overflow: hidden; */
}

.solution-adv-grid::after {
  content: '';
  display: block;
  clear: both;
}

.solution-adv-card {
  position: relative;
  float: left;
  width: calc(33.3333% - 16px);
  margin: 0 8px 16px;
  text-align: center;
  padding: 28px 22px 24px;
  border-radius: 16px;
  background: linear-gradient(180deg, #fff, #f7faff);
  border: 1px solid rgba(47, 107, 255, 0.10);
  min-height: 0;
  box-sizing: border-box;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
  -webkit-transition: transform 0.25s ease, box-shadow 0.25s ease;
  -moz-transition: transform 0.25s ease, box-shadow 0.25s ease;
  -ms-transition: transform 0.25s ease, box-shadow 0.25s ease;
  -o-transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.solution-adv-grid .solution-adv-card:nth-child(3n+1) {
  clear: left;
}

.solution-adv-grid--4 .solution-adv-card {
  width: calc(25% - 16px);
}

.solution-adv-grid--4 .solution-adv-card:nth-child(3n+1) {
  clear: none;
}

.solution-adv-grid--4 .solution-adv-card:nth-child(4n+1) {
  clear: left;
}

.solution-adv-grid--2 .solution-adv-card {
  width: calc(50% - 16px);
}

.solution-adv-grid--2 .solution-adv-card:nth-child(3n+1) {
  clear: none;
}

.solution-adv-grid--2 .solution-adv-card:nth-child(2n+1) {
  clear: left;
}

.solution-adv-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 36px rgba(18, 46, 104, 0.08);
}

.solution-adv-card__num {
  display: block;
  width: 48px;
  height: 48px;
  margin: 0 auto 16px;
  border-radius: 50%;
  background: #eef4fb;
  border: 1px solid rgba(47, 107, 255, 0.22);
  color: var(--solution-blue, #2f6bff);
  font-size: 24px;
  letter-spacing: 0.04em;
  line-height: 48px;
  text-align: center;
}

.solution-adv-card h4 {
  margin: 0;
  font-size: 18px;
  line-height: 26px;
  color: var(--solution-navy, #333);
}

.solution-adv-card p {
  margin: 12px 0 0;
  color: var(--solution-muted);
  line-height: 28px;
  font-size: 16px;
  text-align: justify;
}

@media (max-width: 1199px) {
  .solution-detail-grid {
    display: block;
  }

  .solution-detail-rail,
  .solution-detail-anchors {
    position: static;
    float: none;
    width: auto;
    left: auto;
    top: auto;
    bottom: auto;
    margin-bottom: 20px;
  }

  .solution-detail-shell .solution-main {
    margin-left: 0;
  }

  .solution-sidebar {
    position: static;
  }

  .solution-method-col,
  .solution-adv-card {
    float: none;
    width: auto;
    margin-left: 0;
    margin-right: 0;
  }

  .solution-method-col {
    margin-bottom: 18px;
  }

  .solution-method-stack--2x2 .solution-method-col {
    width: auto;
  }

  .solution-method-stack--split .solution-method-col,
  .solution-method-stack:has(.solution-split-card) .solution-method-col {
    width: auto;
  }

  .solution-split-card__media {
    float: none;
    width: auto;
    margin-bottom: 14px;
  }

  .solution-split-card__media img {
    /* height: 180px; */
  }

  .solution-split-card__body {
    padding-left: 0;
  }

  .solution-panel__text .solution-intro-split__media {
    float: none;
    width: auto;
    margin: 0 0 16px;
  }

  .solution-panel__text .solution-intro-split__media img {
    height: 200px;
  }

  .solution-method-col:last-child {
    margin-bottom: 0;
  }

  .solution-cases-swiper-wrap {
    padding: 0 28px;
  }

  .solution-panel {
    padding: 28px 22px;
  }

  .solution-panel__title {
    font-size: 24px;
    line-height: 1.35;
  }

  .solution-client-list__region {
    width: 34%;
  }

  .solution-client-list__name {
    width: 66%;
  }

  .solution-framework-figure img {
    height: 160px;
  }

  .solution-flow__step {
    float: none;
    width: auto;
    margin-bottom: 18px;
    padding: 0 0 0 92px;
    text-align: left;
    min-height: 76px;
  }

  .solution-flow__step:not(:last-child)::after {
    display: none;
  }

  .solution-flow__circle {
    position: absolute;
    left: 0;
    top: 0;
    margin: 0;
  }

  .solution-flow__step p {
    text-align: left;
  }

  .solution-flow__base span {
    display: block;
    padding: 4px 0;
  }
}

@media (max-width: 767px) {
  .solution-hero__inner,
  .solution-detail-hero__inner {
    padding: 28px 0 34px;
  }

  .solution-shell,
  .solution-detail-shell {
    padding-top: 22px;
  }

  .solution-panel,
  .solution-card__body {
    padding: 18px;
  }

  .solution-section__head {
    display: block;
  }

  .solution-detail-anchors__list,
  .solution-switcher {
    display: block;
    overflow-x: auto;
    white-space: nowrap;
    padding-bottom: 4px;
    padding-left: 0;
  }

  .solution-detail-anchors__list a::before,
  .solution-detail-anchors__list a::after {
    display: none;
  }

  .solution-detail-anchors {
    background: #fff;
    border-radius: 12px;
  }

  .solution-detail-anchors__list a,
  .solution-switcher a {
    display: inline-block;
    margin: 0 8px 0 0;
    vertical-align: top;
  }

  .solution-detail-anchors__list a {
    padding: 8px 14px;
    margin-bottom: 0;
    border-radius: 999px;
    background: #fff;
    border: 1px solid rgba(47, 107, 255, 0.12);
    color: var(--solution-text);
    font-weight: 600;
    white-space: nowrap;
  }

  .solution-detail-anchors__list a.is-active {
    background: #eef5ff;
    border-color: rgba(47, 107, 255, 0.35);
    color: var(--home-blue, #0050be);
    font-weight: 400;
  }

  .solution-detail-anchors__list a {
    font-weight: 400;
    font-size: 15px;
    line-height: 22px;
    height: auto;
  }

  .solution-detail-anchors {
    padding: 10px 12px;
    margin-bottom: 16px;
  }

  .solution-detail-anchors__title {
    display: none;
  }

  .solution-detail-anchors__list {
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }

  .solution-detail-anchors__list::-webkit-scrollbar {
    display: none;
  }

  .solution-detail-anchors.is-mobile-pinned {
    margin: 0;
    padding-top: 8px;
    padding-bottom: 8px;
    border-radius: 0;
    box-shadow: 0 6px 18px rgba(18, 46, 104, 0.1);
  }

  .solution-detail-rail {
    margin-bottom: 12px;
  }

  .case-page-title {
    margin-bottom: 12px;
  }

  .case-page-title__main {
    padding-right: 0;
  }

  .case-page-title__back {
    position: relative;
    display: inline-block;
    margin-top: 12px;
    vertical-align: top;
  }

  .solution-detail-page-title {
    padding-bottom: 12px;
  }

  .solution-detail-page-title h2,
  .case-page-title h2 {
    font-size: 22px;
    line-height: 1.35;
    font-weight: 700;
  }

  .solution-detail-page-title .solution-detail-back-btn {
    position: static;
    display: inline-block;
    margin-top: 12px;
  }

  .solution-panel__title,
  .solution-section__head .solution-panel__title {
    font-size: 20px;
    line-height: 28px;
  }

  .case-section__head h3 {
    font-size: 20px;
    line-height: 28px;
    padding-top: 0;
  }

  .case-detail-main .case-section__badge,
  .solution-detail-shell .case-section__badge {
    width: 28px;
    height: 28px;
    margin-right: 10px;
  }

  .case-detail-main .case-section__badge-icon,
  .solution-detail-shell .case-section__badge-icon {
    width: 28px;
    height: 28px;
  }

  .solution-detail-shell .case-result-value__label,
  .case-detail-main .case-result-value__label {
    font-size: 16px;
    line-height: 24px;
    margin-bottom: 8px;
  }

  .solution-detail-shell .case-result-value__text,
  .case-detail-main .case-result-value__text {
    line-height: 24px;
  }

  .solution-detail-shell .case-result-value__icon,
  .case-detail-main .case-result-value__icon {
    width: 36px;
    height: 36px;
    line-height: 36px;
    margin-right: 8px;
  }

  .solution-detail-shell .case-solution-card h4,
  .case-detail-main .case-solution-card h4 {
    font-size: 16px;
    line-height: 24px;
  }

  .solution-panel[id],
  .case-section {
    scroll-margin-top: 118px;
  }
}

.solution-detail-back-btn {
  display: inline-block;
  min-width: 112px;
  height: 40px;
  line-height: 40px;
  padding: 0 18px;
  border-radius: 12px;
  border: 1px solid rgba(47, 107, 255, .18);
  background: #fff;
  color: #2f6bff;
  font-weight: 700;
  box-shadow: 0 10px 24px rgba(18, 46, 104, .06);
  white-space: nowrap;
  text-align: center;
}
.solution-detail-back-btn:hover {
  background: linear-gradient(135deg, var(--solution-navy), var(--solution-blue));
  color: #fff;
  border-color: transparent;
}
.solution-detail-toolbar {
  margin-top: -14px;
  padding-bottom: 10px;
}
.solution-detail-toolbar__inner {
  overflow: hidden;
  text-align: right;
}
.solution-detail-anchors__list a.is-active {
  color: var(--home-blue, #0050be);
  /* font-weight: 600; */
  background: transparent;
}

.solution-detail-anchors__list a.is-active::before {
  width: 10px;
  height: 10px;
  margin-top: 0;
  margin-left: 0;
  background: var(--home-blue, #0050be);
  box-shadow: 0 0 0 4px rgba(6, 75, 159, 0.18);
  transform: translateY(-50%) scale(1);
}

.solution-detail-anchors__list a.is-active::after {
  content: '';
  position: absolute;
  left: -24px;
  top: 50%;
  width: 10px;
  height: 10px;
  margin-top: 0;
  margin-left: 0;
  border-radius: 50%;
  border: 2px solid var(--home-blue, #0050be);
  transform: translateY(-50%);
  animation: solution-anchor-dot-pulse 1.8s ease-out infinite;
  z-index: 1;
  pointer-events: none;
}

@keyframes solution-anchor-dot-pulse {
  0% {
    transform: translateY(-50%) scale(1);
    opacity: 0.7;
  }

  70% {
    transform: translateY(-50%) scale(2.4);
    opacity: 0;
  }

  100% {
    transform: translateY(-50%) scale(2.4);
    opacity: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .solution-detail-anchors__list a.is-active::after {
    animation: none;
    opacity: 0.35;
    transform: translateY(-50%) scale(1.6);
  }
}
body:has(.solution-shell),
body:has(.solution-detail-shell) {
  background:
    radial-gradient(circle at 15% 8%, rgba(6, 75, 159, 0.10), transparent 24%),
    radial-gradient(circle at 85% 0%, rgba(0, 169, 223, 0.08), transparent 22%),
    linear-gradient(180deg, #f8fbff 0%, var(--home-silver, #F3F6F8) 100%);
  color: var(--home-text, #17283E);
}

/* 解决方案内容区：分档宽度（暂不启用，先跟全站 1300；需要时去掉注释即可）
@media (min-width: 1321px) and (max-width: 1399px) {
  body:has(.page-news-banner) .solution-shell > .container,
  body:has(.page-news-banner) .solution-detail-shell > .container {
    max-width: 1140px;
  }
}

@media (min-width: 1400px) {
  body:has(.page-news-banner) .solution-shell > .container,
  body:has(.page-news-banner) .solution-detail-shell > .container {
    max-width: 1300px;
  }
}

@media (min-width: 1560px) {
  body:has(.page-news-banner) .solution-shell > .container,
  body:has(.page-news-banner) .solution-detail-shell > .container {
    max-width: 1400px;
  }
}

@media (min-width: 1640px) {
  body:has(.page-news-banner) .solution-shell > .container,
  body:has(.page-news-banner) .solution-detail-shell > .container {
    max-width: 1600px;
  }
}
*/

/* 列表页：标准文档流（float / inline-block，不用 flex/grid/table） */
.solution-shell > .container {
  --sol-side-w: 220px;
  --sol-gap: 28px;
}

.solution-layout {
  display: block;
}

.solution-layout::after {
  content: "";
  display: block;
  clear: both;
  height: 0;
  overflow: hidden;
}

.solution-sidebar {
  float: left;
  width: 21%;
  position: sticky;
  top: 82px;
  z-index: 20;
  padding: 16px 14px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid rgba(6, 75, 159, 0.10);
  box-shadow: 0 2px 10px rgba(7, 26, 53, 0.04);
  overflow: hidden;
  box-sizing: border-box;
}

.solution-main {
  float: right;
  width: 82%;
  min-width: 0;
  overflow: hidden; /* 形成 BFC，避免内部 clear 波及左侧 float 栏 */
  padding: 20px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid rgba(6, 75, 159, 0.10);
  box-shadow: 0 2px 10px rgba(7, 26, 53, 0.04);
  box-sizing: border-box;
}
.solution-main.solution-main--list {
  width: 77%;
}
.solution-filters {
  margin-bottom: 16px;
  padding: 0 0 14px;
  border: 0;
  border-bottom: 1px solid rgba(6, 75, 159, 0.08);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.solution-filter-row {
  display: block;
  font-size: 0;
  line-height: 0;
}

.solution-filter-row + .solution-filter-row {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(6, 75, 159, 0.08);
}

.solution-filter-row__label {
  display: inline-block;
  vertical-align: top;
  width: 105px;
  margin: 0;
  padding-top: 8px;
  font-size: 16px;
  line-height: 22px;
  font-weight: 400;
  color: #333;
  letter-spacing: 0;
  white-space: nowrap;
}

.solution-cat-tabs,
.solution-rail {
  display: inline-block;
  vertical-align: top;
  width: 88%;
  margin-left: 0;
  font-size: 0;
  line-height: 0;
}

.solution-rail {
  list-style: none;
  margin: 0;
  padding: 0;
}

.solution-cat-tab,
.solution-rail-tag {
  display: inline-block;
  vertical-align: middle;
  height: 34px;
  line-height:34px;
  margin: 0 8px 0 0;
  padding:0 14px;
  border-radius: 5px;
  border: 1px solid rgba(6, 75, 159, 0.14);
  /* background: #f7fafc; */
  color: #666;
  font-size: 15px;
  line-height: 34px;
  cursor: pointer;
  user-select: none;
  transition: color 0.2s ease, background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.solution-cat-tab:hover,
.solution-rail-tag:hover {
  color: var(--home-blue, #0050be);
  background: #eef5ff;
  border-color: rgba(6, 75, 159, 0.24);
}

.solution-cat-tab.is-active,
.solution-rail-tag.is-active {
  color:  var(--home-blue, #0050be);
  background: #eef5ff;
  border-color: rgba(6, 75, 159, 0.24);
}

.solution-cat-tab__icon,
.solution-rail-tag__icon {
  display: inline-block;
  vertical-align: -4px;
  width: 18px;
  height: 18px;
  margin-right: 4px;
  line-height: 18px;
  text-align: center;
  position: relative;
  color: inherit;
}

.solution-cat-tab__icon svg,
.solution-rail-tag__icon svg {
  display: block;
  width: 18px;
  height: 18px;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* img 图标：由 JS 挂上 is-tint-icon，用 mask + currentColor 随文字换色 */
.solution-cat-tab__icon > img,
.solution-rail-tag__icon > img {
  display: block;
  width: 18px;
  height: 18px;
  object-fit: contain;
  border: 0;
  transition: filter 0.2s ease, opacity 0.2s ease;
}

.solution-cat-tab__icon.is-tint-icon,
.solution-rail-tag__icon.is-tint-icon {
  background-color: currentColor;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
}

.solution-cat-tab__icon.is-tint-icon > img,
.solution-rail-tag__icon.is-tint-icon > img {
  opacity: 0;
  pointer-events: none;
}

/* 无 JS / 未挂 mask 时的兜底：默认偏灰，悬停/选中偏蓝（图标需黑/深色 + 透明底） */
.solution-cat-tab:not(.is-active) .solution-cat-tab__icon:not(.is-tint-icon) > img,
.solution-rail-tag:not(.is-active) .solution-rail-tag__icon:not(.is-tint-icon) > img {
  filter: brightness(0) saturate(100%) invert(40%);
}

.solution-cat-tab:hover .solution-cat-tab__icon:not(.is-tint-icon) > img,
.solution-rail-tag:hover .solution-rail-tag__icon:not(.is-tint-icon) > img,
.solution-cat-tab.is-active .solution-cat-tab__icon:not(.is-tint-icon) > img,
.solution-rail-tag.is-active .solution-rail-tag__icon:not(.is-tint-icon) > img {
  filter: brightness(0) saturate(100%) invert(24%) sepia(98%) saturate(2476%) hue-rotate(204deg) brightness(95%) contrast(101%);
}

.solution-sidebar__title {
  margin: 5px 0 16px;
  font-size: 24px;
  color: #333;
}

.solution-sidebar__nav {
  display: block;
  list-style: none;
  margin: 0;
  padding: 0;
}

.solution-sidebar__nav > li {
  margin: 0 0 10px;
  padding: 0;
  list-style: none;
}

.solution-sidebar__nav > li:last-child {
  margin-bottom: 0;
}

.solution-sidebar__nav a {
  position: relative;
  display: block;
  min-height: 56px;
  margin-bottom: 0;
  padding: 12px 14px;
  border: 1px solid rgba(6, 75, 159, 0.12);
  border-radius: 12px;
  background: #f7fafc;
  color: #333;
  font-size: 18px;
  line-height: 1.4;
  font-weight: 400;
  box-shadow: none;
  overflow: hidden;
  transition: color 0.2s ease, background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.solution-sidebar__nav a:last-child {
  margin-bottom: 0;
}

.solution-nav-icon {
  display: inline-block;
  vertical-align: middle;
  width: 32px;
  height: 32px;
  margin-right: 10px;
  border-radius: 8px;
  background: #fff;
  text-align: center;
  line-height: 32px;
  overflow: hidden;
}

.solution-nav-icon img {
  display: inline-block;
  vertical-align: middle;
  width: 18px;
  height: 18px;
  object-fit: contain;
  border: 0;
  transition: filter 0.2s ease, opacity 0.2s ease;
}

.solution-sidebar__nav a .solution-nav-label {
  display: inline-block;
  vertical-align: middle;
  max-width: calc(100% - 48px);
  line-height: 1.35;
  font-size: 18px;
  font-weight: 400;
  color: inherit;
}

.solution-nav-arrow {
  display: none;
}

.solution-sidebar__nav a:hover {
  color: var(--home-blue, #0050be);
  background: #eef5ff;
  border-color: rgba(6, 75, 159, 0.22);
  box-shadow: none;
}

.solution-sidebar__nav a:hover .solution-nav-icon svg {
  stroke: var(--home-blue, #0050be);
}

.solution-sidebar__nav a.is-active {
  color: #fff;
  background: #0050be;
  border: 0;
  border-color: transparent;
  font-weight: 400;
  box-shadow: none;
}

.solution-sidebar__nav a.is-active::before {
  display: none;
}

.solution-sidebar__nav a.is-active .solution-nav-icon {
  background: rgba(255, 255, 255, 0.16);
}

.solution-sidebar__nav a.is-active .solution-nav-icon svg {
  stroke: #fff;
  fill: none;
}

/* img 图标选中反白（深色图转白） */
.solution-sidebar__nav a.is-active .solution-nav-icon img {
  filter: brightness(0) invert(1);
}

.solution-nav-icon svg {
  display: inline-block;
  vertical-align: middle;
  width: 18px;
  height: 18px;
  stroke: #64748b;
  fill: none;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: stroke 0.2s ease;
}

.solution-result-meta {
  margin-bottom: 18px;
}

.solution-result-meta::after {
  content: "";
  display: block;
  clear: both;
  height: 0;
  overflow: hidden;
}

.solution-result-count {
  float: left;
  font-size: 16px;
  line-height: 28px;
  color: #333;
}

.solution-result-count strong {
  color: #0050be;
  font-weight: 700;
  margin: 0 2px;
}

.solution-filter-pills {
  float: right;
  text-align: right;
  font-size: 0;
  line-height: 0;
}

.solution-filter-pill {
  display: inline-block;
  vertical-align: middle;
  margin-left: 8px;
  padding: 4px 12px;
  border-radius: 20px;
  border: 1px solid rgba(37, 99, 235, 0.18);
  background: #eff6ff;
  color: var(--home-blue, #0050be);
  font-size: 14px;
  line-height: 18px;
}

.solution-filter-pill__x {
  display: inline-block;
  vertical-align:text-top;
  margin-left: 4px;
  cursor: pointer;
  opacity: 0.65;
  line-height: 1;
  font-size:18px;
}

.solution-filter-pill__x:hover {
  opacity: 1;
}

.solution-empty {
  min-height: 220px;
  padding: 80px 20px;
  text-align: center;
  color: #8a97a8;
  font-size: 14px;
  line-height: 1.7;
  background: rgba(255, 255, 255, 0.6);
  border: 1px dashed rgba(6, 75, 159, 0.16);
  border-radius: 12px;
  box-sizing: border-box;
}

.solution-empty[hidden] {
  display: none !important;
}

.solution-list-wrap {
  position: relative;
  min-height: 280px;
}

.solution-list-status {
  display: none;
  position: absolute;
  inset: 0;
  z-index: 2;
  align-items: center;
  justify-content: center;
  padding: 56px 24px;
  text-align: center;
  box-sizing: border-box;
}

.solution-list-status--loading {
  background: rgba(248, 251, 255, 0.92);
  border-radius: 8px;
}

.solution-list-wrap.is-loading .solution-list-status--loading,
.solution-list-wrap.is-empty .solution-list-status--empty {
  display: flex;
}

.solution-list-wrap.is-loading {
  min-height: 320px;
}

.solution-list-wrap.is-loading .solution-list-grid,
.solution-list-wrap.is-empty .solution-list-grid {
  visibility: hidden;
  pointer-events: none;
  min-height: 0;
}

.solution-list-status__inner {
  max-width: 80%;
}

.solution-list-status__spinner {
  position: relative;
  display: inline-block;
  width: 56px;
  height: 56px;
  margin-bottom: 16px;
}

.solution-list-status__spinner::before,
.solution-list-status__spinner::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 3px solid rgba(6, 75, 159, 0.15);
  border-top-color: #0050be;
  animation: cases-grid-spin 0.8s linear infinite;
}

.solution-list-status__spinner::after {
  inset: 8px;
  animation-duration: 1.1s;
  animation-direction: reverse;
}

.solution-list-status__text {
  margin: 0;
  color: #4a5f78;
  font-size: 15px;
}

.solution-list-status__dots::after {
  content: "";
  animation: cases-grid-dots 1.2s steps(4, end) infinite;
}

.solution-list-status__image {
  display: block;
  width: 120px;
  max-width: 40%;
  margin: 0 auto 16px;
}

.solution-list-status__desc {
  margin: 0;
  color: #8a97a8;
  font-size: 14px;
  line-height: 1.7;
}

.solution-sidebar__contact {
  margin: 20px 16px 0;
  padding: 16px 14px 14px;
  border-radius: 10px;
  background: #fff;
  border: 1px solid rgba(6, 75, 159, 0.12);
  text-align: left;
}

.solution-sidebar__contact-row {
  margin-bottom: 10px;
  font-size: 0;
  line-height: 0;
}

.solution-sidebar__contact-row:last-of-type {
  margin-bottom: 14px;
}

.solution-sidebar__contact-icon {
  display: inline-block;
  vertical-align: middle;
  width: 18px;
  height: 18px;
  margin-right: 8px;
  text-align: center;
  line-height: 18px;
}

.solution-sidebar__contact-icon img {
  width: 18px;
  height: 18px;
  display: block;
  object-fit: contain;
}

.solution-sidebar__contact-kicker {
  display: inline-block;
  vertical-align: middle;
  color: var(--home-blue, #0050be);
  font-size: 14px;
  line-height: 20px;
  font-weight: 400;
}

.solution-sidebar__phone {
  display: inline-block;
  vertical-align: middle;
  color: #203349;
  font-size: 15px;
  line-height: 20px;
  font-weight: 400;
}

.solution-sidebar__contact-btn {
  display: block;
  width: 100%;
  min-height: 38px;
  padding: 8px 16px;
  border-radius: 8px;
  border: 1px solid var(--home-blue, #0050be);
  color: var(--home-blue, #0050be);
  font-size: 14px;
  line-height: 22px;
  font-weight: 400;
  text-align: center;
  background: #fff;
  box-sizing: border-box;
}

.solution-sidebar__contact-btn:hover {
  background: var(--home-blue, #0050be);
  color: #fff;
}

.solution-category-panel {
  display: none;
}

.solution-category-panel.is-active {
  display: block;
}

.solution-category-head {
  padding: 18px 20px;
  margin-bottom: 16px;
  border-radius: 10px;
  background: #fff;
  border: 1px solid rgba(6, 75, 159, 0.10);
  box-shadow: 0 2px 12px rgba(7, 26, 53, 0.04);
}

.solution-category-head::after {
  content: "";
  display: block;
  clear: both;
  height: 0;
  overflow: hidden;
}

.solution-category-head__brand {
  float: left;
  margin-right: 12px;
}

.solution-category-head__icon {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: rgba(6, 75, 159, 0.08);
  display: inline-block;
  vertical-align: middle;
  text-align: center;
  line-height: 40px;
}

.solution-category-head__icon img {
  width: 20px;
  height: 20px;
  display: inline-block;
  vertical-align: middle;
}

.solution-category-head h2 {
  display: inline-block;
  vertical-align: middle;
  margin: 0;
  font-size: 22px;
  color: #203349;
  font-weight: 700;
}

.solution-category-head__desc {
  margin: 0;
  color: #636363;
  font-size: 15px;
  line-height: 1.7;
  text-align: right;
}

.solution-tag-bar {
  margin-bottom: 20px;
  font-size: 0;
  line-height: 0;
}

.solution-tag-bar button {
  display: inline-block;
  vertical-align: middle;
  border: 0;
  cursor: pointer;
  min-height: 36px;
  margin: 0 10px 10px 0;
  padding: 0 16px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid rgba(6, 75, 159, 0.14);
  color: #333;
  font-size: 14px;
  line-height: 34px;
  transition: color 0.2s ease, border-color 0.2s ease, background-color 0.2s ease;
}

.solution-tag-bar button:hover {
  border-color: rgba(6, 75, 159, 0.28);
  color: #203349;
}

.solution-tag-bar button.is-active {
  color: #fff;
  background: var(--home-blue, #0050be);
  border-color: var(--home-blue, #0050be);
}

.solution-list-grid {
  display: block;
  margin: 0 -8px;
}

.solution-list-grid::after {
  content: "";
  display: block;
  clear: both;
  height: 0;
  overflow: hidden;
}

.solution-list-card {
  float: left;
  width: 33.333%;
  padding: 0 8px 16px;
  margin: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  box-sizing: border-box;
  transition: none;
}

.solution-list-card.is-hidden {
  display: none !important;
}

.solution-list-card__link {
  display: block;
  height: 100%;
  color: inherit;
  background: #fff;
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid rgba(6, 75, 159, 0.10);
  box-shadow: 0 2px 8px rgba(7, 26, 53, 0.05);
  transition: box-shadow 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

.solution-list-card:hover .solution-list-card__link {
  box-shadow: 0 12px 32px rgba(15, 37, 86, 0.12), 0 4px 12px rgba(15, 37, 86, 0.06);
  border-color: rgba(37, 99, 235, 0.22);
  transform: translateY(-4px);
}

.solution-list-card__media {
  position: relative;
  /* height: 100px; */
  overflow: hidden;
  background:
    radial-gradient(circle at 80% 20%, rgba(59, 130, 246, 0.25), transparent 60%),
    linear-gradient(135deg, #0f2556 0%, #1e3a8a 100%);
}

.solution-list-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  opacity: 0.92;
}

.solution-list-card__type {
  position: absolute;
  right: 12px;
  top: 12px;
  z-index: 1;
  padding: 3px 8px;
  border-radius: 5px;
  background: rgba(0, 80,190,.78);
  color: #fff;
  font-size: 14px;
  backdrop-filter: blur(4px);
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.solution-list-card__body {
  padding: 15px 15px 18px;
}

.solution-list-card__body h3 {
  margin: 0;
  font-size: 16px;
  line-height: 1.4;
  color: #333;
  font-weight: 700;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.solution-list-card__body p {
  margin: 8px 0 0;
  color: #666;
  font-size: 14px;
  line-height: 22px;
  height:44px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.solution-value-chips {
  margin-top: 12px;
  font-size: 0;
  line-height: 0;
}

.solution-value-chip {
  display: inline-block;
  vertical-align: middle;
  margin: 0 6px 6px 0;
  padding: 4px 10px;
  border-radius: 6px;
  border: 1px solid #dbeafe;
  background: #eff6ff;
  color: #0050be;
  font-size: 13px;
  line-height: 20px;
}

.solution-list-card__action {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid rgba(6, 75, 159, 0.10);
}

.solution-list-card__action::after {
  content: "";
  display: block;
  clear: both;
  height: 0;
  overflow: hidden;
}

.solution-list-card__more {
  float: left;
  color: var(--home-blue, #0050be);
  font-size: 15px;
  line-height: 18px;
}

.solution-list-card__arrow {
  float: right;
  width: 18px;
  height: 18px;
  line-height: 18px;
  text-align: center;
}

.solution-list-card__arrow img {
  display: inline-block;
  vertical-align: middle;
  width: 18px;
  height: auto;
  transition: transform 0.25s ease;
}

.solution-list-card:hover .solution-list-card__arrow img,
.solution-list-card__link:focus-visible .solution-list-card__arrow img {
  transform: translateX(4px);
}

.solution-shell strong,
.solution-shell h3 {
  /* font-weight: 600; */
}

.solution-pagination-bar__total em {
  font-style: normal;
  color: var(--home-blue, #064B9F);
  font-weight: 400;
}

.solution-pagination-bar {
  margin-top: 28px;
  padding-top: 8px;
}

.solution-pagination-bar::after {
  content: "";
  display: block;
  clear: both;
  height: 0;
  overflow: hidden;
}

.solution-pagination-bar__total {
  float: left;
  color: #636363;
  font-size: 14px;
  line-height: 32px;
}

.solution-pagination-bar .solution-pagination {
  float: left;
  margin: 0 0 0 16px;
}

.solution-pagination-bar__extra {
  float: right;
  color: #636363;
  font-size: 13px;
  line-height: 32px;
}

.solution-pagination-bar__size select,
.solution-pagination-bar__jump input {
  height: 32px;
  padding: 0 8px;
  border: 1px solid rgba(6, 75, 159, 0.14);
  border-radius: 4px;
  background: #fff;
  color: #333;
  font-size: 13px;
}

.solution-pagination-bar__jump input {
  width: 42px;
  text-align: center;
}

.solution-pagination a.is-disabled {
  opacity: 0.4;
  pointer-events: none;
}

/* 详情页 v2:与典型案例 banner 框架一致 */
.solution-detail-page-title {
  position: relative;
  padding: 8px 0 20px;
  margin-bottom: 4px;
}

.solution-detail-page-title h2 {
  margin: 0;
  font-size: 32px;
  line-height: 1.25;
  color: #203349;
  font-weight: 800;
}

.solution-detail-page-title p {
  margin: 10px 0 0;
  color: #636363;
  font-size: 16px;
  line-height: 1.75;
}

.solution-detail-page-title .solution-detail-back-btn {
  position: absolute;
  right: 0;
  top: 12px;
}

@media (max-width: 1199px) {
  .solution-list-card {
    width: 50%;
  }
}

@media (max-width: 991px) {
  .solution-sidebar {
    float: none;
    width: auto;
    position: static;
    margin-bottom: 16px;
  }

  .solution-main,
  .solution-main.solution-main--list,
  .cases-shell .solution-main,
  .cases-shell .solution-main.solution-main--list,
  .case-detail-main .solution-main,
  .solution-detail-shell .solution-main {
    float: none;
    width: 100%;
    margin-left: 0;
  }

  .solution-filter-row__label {
    display: block;
    width: auto;
    padding-top: 0;
    margin-bottom: 8px;
  }

  .solution-cat-tabs,
  .solution-rail {
    display: block;
    width: auto;
  }

  .solution-sidebar__nav {
    white-space: nowrap;
    overflow-x: auto;
    font-size: 0;
    line-height: 0;
  }

  .solution-sidebar__nav > li {
    display: inline-block;
    vertical-align: top;
    margin: 0 8px 0 0;
  }

  .solution-sidebar__nav a {
    display: block;
    width: auto;
    min-height: 42px;
    margin: 0;
    padding: 8px 14px;
    white-space: nowrap;
    font-size: 13px;
    line-height: 24px;
  }

  .solution-sidebar__nav a:hover {
    transform: none;
  }

  .solution-nav-icon {
    width: 24px;
    height: 24px;
    line-height: 24px;
    margin-right: 8px;
  }

  .solution-nav-icon img,
  .solution-nav-icon svg {
    width: 14px;
    height: 14px;
  }

  .solution-sidebar__nav a .solution-nav-label {
    max-width: none;
    font-size: 13px;
  }

  .solution-cat-tabs,
  .solution-rail {
    display: block;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    white-space: nowrap;
  }

  .solution-cat-tab,
  .solution-rail-tag {
    white-space: nowrap;
  }

  .solution-list-card {
    width: 50%;
  }

  .solution-category-head__brand {
    float: none;
    display: block;
    margin: 0 0 10px;
  }

  .solution-category-head__desc {
    text-align: left;
  }
}

@media (max-width: 767px) {
  .solution-list-card {
    width: 100%;
  }

  .solution-list-card__media {
    height: 96px;
  }

  .solution-result-count,
  .solution-filter-pills {
    float: none;
    display: block;
    text-align: left;
    margin-top: 0;
  }

  .solution-filter-pills {
    margin-top: 8px;
  }

  .solution-filter-pill {
    margin: 0 8px 8px 0;
  }

  .solution-detail-page-title .solution-detail-back-btn {
    position: static;
    margin-top: 14px;
  }

  .solution-pagination-bar__total,
  .solution-pagination-bar .solution-pagination,
  .solution-pagination-bar__extra {
    float: none;
    display: block;
    margin: 0 0 10px;
  }
}

/* =============================================================================
   关于胥瓷单页（about-xuci.html · .xcabout-*，标准文档流 + 浮动分栏，无 flex/grid/table）
   ============================================================================= */

#about-intro,
#about-history,
#about-strategy,
#about-culture,
#about-honors,
#about-activity {
  scroll-margin-top: 96px;
}

.xcabout-page-root .page-news-banner .container {
  text-align: center;
}

.xcabout-page-root .page-news-banner__title {
  font-size: 42px;
  font-weight: 700;
  letter-spacing: 0.06em;
}

.xcabout-page-root .page-news-banner {
  height: 360px;
}

.xcabout-page-root .page-news-banner__sub {
  width: auto;
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
  font-size: 16px;
  line-height: 32px;
}

.xcabout-subnav {
  position: -webkit-sticky;
  position: sticky;
  top: 62px;
  z-index: 900;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

.xcabout-subnav .page-news-subnav__list {
  text-align: center;
  font-size: 0;
}

.xcabout-page {
  background: #fff;
}

.xcabout-page .page-about-reveal,
.xcabout-page .page-about-stagger {
  opacity: 1;
  transform: none;
  transition: none;
}

.xcabout-page .page-about-reveal {
  margin-top: 55px;
}

.xcabout-page .container > .page-about-reveal:first-child {
  margin-top: 0;
}

.xcabout-section {
  padding: 65px 0 80px;
}

.xcabout-section--intro {
  /* background: #f5f8fc; */
  background-image: url(../images/bg-consult.jpg);
  background-size: cover;
  background-position: center bottom;
  background-repeat: no-repeat;
}

.xcabout-page .milestones-section.xcabout-section {
  padding-top: 75px;
  padding-bottom: 20px;
}

.xcabout-page .historyprocess {
  margin-top: 55px;
  padding: 0;
}

.xcabout-section--strategy {
  background-image: url(../images/bg-map.jpg);
  background-size: cover;
  background-position: center bottom;
  background-repeat: no-repeat;
}

.xcabout-section--culture {
  padding: 70px 0 90px;
}

.xcabout-develop-list {
  overflow: hidden;
  white-space: nowrap;
  font-size: 0;
  margin: 8px 0 0;
  padding: 0;
  cursor: default;
}

.xcabout-develop-list li {
  position: relative;
  display: inline-block;
  width: 25%;
  height: 640px;
  overflow: hidden;
  vertical-align: top;
  transition: width 0.36s;
}

.xcabout-develop-list li .develop-bg {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.xcabout-develop-list li .develop-bg::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  z-index: 3;
  width: 100%;
  height: 100%;
  background: rgba(0, 80, 190, 0.72);
  opacity: 0;
  transition: opacity 0.36s;
}

.xcabout-develop-list li .develop-img {
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.xcabout-develop-list li .develop-textbox {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 5;
  width: 100%;
  height: 100%;
  color: #fff;
  transition: all 0.36s;
  white-space: normal;
}

.xcabout-develop-list li .develop-tit {
  top: 40%;
  text-align: center;
}

.xcabout-develop-list li .develop-tit.develop-tit-active {
  width: 90%;
  margin-left: -45%;
  transform: translate(0, -50%);
}

.xcabout-develop-list li .develop-tit h2 {
  display: inline-block;
  text-align: left;
  vertical-align: top;
  margin: 0;
  font-size: 24px;
  line-height: 40px;
  color: #fff;
  font-weight: 600;
}

.xcabout-develop-list li .develop-ico {
  display: block;
  width: 42px;
  height: 42px;
  margin-bottom: 20px;
  border: 0;
  border-radius: 0;
  font-size: 0;
  line-height: 0;
}

.xcabout-develop-list li .develop-ico img {
  display: block;
  width: 42px;
  height: 42px;
}

.xcabout-develop-list li .develop-brief {
  opacity: 0;
  width: 100%;
  height: 100%;
  transform: translate(-50%, -50%);
  padding: 56px 36px 40px;
  overflow: auto;
  box-sizing: border-box;
  pointer-events: none;
}

.xcabout-develop-list li .mc_pos_center {
  position: absolute;
  top: 50%;
  left: 50%;
}

.xcabout-develop-list li .develop-brief .develop-tit {
  top: 0;
  margin-bottom: 18px;
  text-align: left;
  opacity: 1;
}

.xcabout-develop-list li .develop-brief h2 {
  font-size: 28px;
  line-height: 42px;
}

.xcabout-develop-list li .develop-info,
.xcabout-develop-list li .develop-info .page-article__body {
  color: #fff;
}

.xcabout-develop-list li .develop-info p {
  margin: 0 0 10px;
  color: #fff;
  font-size: 16px;
  line-height: 32px;
}

.xcabout-develop-list li .develop-info p strong {
  position: relative;
  display: inline-block;
  padding-left: 16px;
  font-size: 16px;
  font-weight: 600;
}

.xcabout-develop-list li .develop-info p strong::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 6px;
  height: 6px;
  margin-top: -3px;
  border-radius: 50%;
  background: #fff;
}

.xcabout-develop-list.act li {
  width: 20%;
}

.xcabout-develop-list li.on {
  width: 40%;
}

.xcabout-develop-list li.on .develop-bg::after {
  opacity: 1;
}

.xcabout-develop-list li.on .develop-textbox > .develop-tit {
  opacity: 0;
}

.xcabout-develop-list li.on .develop-brief {
  opacity: 1;
  pointer-events: auto;
  transition: opacity 0.6s;
}

.xcabout-section--honors {
  background-image: url(../images/bg-honor.jpg);
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
}

.xcabout-section--activity {
  /* background: #fff;
  padding-bottom: 130px; */
}

.xcabout-section-head {
  margin: 0 0 64px;
  font-size: 0;
  line-height: 0;
}

.xcabout-section-head--inline {
  float: left;
  margin-bottom: 0;
}

.xcabout-section-head__line {
  display: inline-block;
  vertical-align: middle;
  width: 4px;
  height: 28px;
  margin-right: 14px;
  border-radius: 2px;
  background: var(--about-primary, #0050be);
}

.xcabout-section-head__text {
  display: inline-block;
  vertical-align: middle;
  font-size: 32px;
  line-height: 1.35;
  color: #333;
}

.xcabout-block-label {
  margin: 0 0 36px;
  font-size: 22px;
  color: var(--about-primary, #1a56a8);
}

.xcabout-intro-split__body {
  float: left;
  width: 48%;
  padding-right: 48px;
  /* padding-top: 15px; */
}

.xcabout-intro-split__body p {
  margin: 0 0 20px;
  font-size: 18px;
  line-height: 36px;
  color: #333;
  text-align:justify;
}

.xcabout-intro-split__media {
  float: right;
  width: 50%;
  border-radius: 15px;
  overflow: hidden;
  box-shadow: 0 16px 48px rgba(0, 80, 190, 0.14);
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
  -ms-border-radius: 15px;
  -o-border-radius: 15px;
}

.xcabout-intro-split__media img {
  display: block;
  width: 100%;
  height: auto;
}

.xcabout-dual-icons {
  margin-top: 40px;
}

.xcabout-dual-icons__item {
  float: left;
  width: 50%;
}

.xcabout-dual-icons__circle {
  float: left;
  display: block;
  width: 64px;
  height:  64px;
  line-height: 64px;
  margin-right: 18px;
  margin-top:8px;
  border-radius: 50%;
  text-align: center;
  background: linear-gradient(180deg, #1a89fe 0%, #0050be 100%);
  box-shadow: 0 8px 24px rgba(0, 80, 190, 0.25);
}

.xcabout-dual-icons__circle img {
  display: inline-block;
  vertical-align: middle;
  width: 32px;
  height: 32px;
  object-fit: contain;
  filter: brightness(0) invert(1);
}

.xcabout-dual-icons__text {
  overflow: hidden;
}

.xcabout-dual-icons__text strong {
  display: block;
  margin-bottom: 4px;
  font-size: 18px;
  font-weight: 700;
  color: #333;
}

.xcabout-dual-icons__text span {
  display: block;
  font-size: 15px;
  line-height: 26px;
  color: #636363;
}

.xcabout-strategy-cards {
  margin-bottom: 64px;
}

.xcabout-strategy-card {
  float: left;
  width: 32%;
  margin-right: 2%;
  padding: 24px 22px;
  background: #fff;
  border: 1px solid var(--about-line, #e6eef9);
  border-radius: 12px;
  box-shadow: 0 8px 24px rgba(52, 94, 184, 0.06);
  text-align: left;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.xcabout-strategy-card:last-child {
  margin-right: 0;
}

.xcabout-strategy-card:hover {
  transform: translateY(-6px);
  border-color: rgba(26, 86, 168, 0.35);
  box-shadow: 0 18px 40px rgba(0, 80, 190, 0.12);
}

.xcabout-strategy-card__icon {
  float: left;
  width: 52px;
  height: 52px;
  line-height: 52px;
  margin-right: 16px;
  border-radius: 50%;
  background: rgba(26, 137, 254, 0.1);
  text-align: center;
}

.xcabout-strategy-card__icon img {
  display: inline-block;
  vertical-align: middle;
  width: 28px;
  height: 28px;
  object-fit: contain;
}

.xcabout-strategy-card__body {
  overflow: hidden;
}

.xcabout-strategy-card h4 {
  margin: 0 0 8px;
  font-size: 18px;
  color: var(--about-primary, #1a56a8);
}

.xcabout-strategy-card p {
  margin: 0;
  font-size: 14px;
  line-height: 1.75;
  color: #636363;
}

.xcabout-strategy-detail {
  float: left;
  width: 42%;
  padding-right: 40px;
}

.xcabout-strategy-map {
  float: right;
  width: 54%;
}

.xcabout-region-panel {
  display: none;
  padding: 0 15px;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  min-height: 0;
}

.xcabout-region-panel.is-active {
  display: block;
}

/* 战略布局地图 · 自 css-kr.css 联系我们页 china-map 同步 */
.xcabout-strategy-map .china-map {
  position: relative;
}
.xcabout-strategy-map .china-map img {
  display: block;
  width: 100%;
  height: auto;
}
.xcabout-strategy-map .map-container {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  transform: translate3d(0, 0, 0);
  will-change: transform;
  backface-visibility: hidden;
  perspective: 1000px;
}
.xcabout-strategy-map .map-container dl {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  margin: 0;
  padding: 0;
}
.xcabout-strategy-map .map-container dl dd {
  position: absolute;
  width: 21px;
  height: 30px;
  margin: 0;
  padding: 0;
  cursor: pointer;
  transform: translate3d(0, 0, 0);
  will-change: transform;
  backface-visibility: hidden;
}
.xcabout-strategy-map .map-container dl dd.index0 { left: 68.7898%; top: 56.7%; }
.xcabout-strategy-map .map-container dl dd.index1 { left: 70.5%; top: 57.4%; }
.xcabout-strategy-map .map-container dl dd.index2 { left: 62.5%; top: 36.396%; }
.xcabout-strategy-map .map-container dl dd.index3 { left: 60.4%; top: 34.234%; }
.xcabout-strategy-map .map-container dl dd.index4 { left: 72.866%; top: 20.9%; }
.xcabout-strategy-map .map-container dl dd.index5 { left: 71.3%; top: 27.468%; }
.xcabout-strategy-map .map-container dl dd.index6 { left: 69.1%; top: 34%; }
.xcabout-strategy-map .map-container dl dd.index7 { left: 69%; top: 39.2%; }
.xcabout-strategy-map .map-container dl dd.index8 { left: 62.42%; top: 43.04%; }
.xcabout-strategy-map .map-container dl dd.index9 { left: 67.57%; top: 43.2%; }
.xcabout-strategy-map .map-container dl dd.index10 { left: 65.987%; top: 54.95%; }
.xcabout-strategy-map .map-container dl dd.index11 { left: 67.5%; top: 60.9%; }
.xcabout-strategy-map .map-container dl dd.index12 { left: 70.06%; top: 63.06%; }
.xcabout-strategy-map .map-container dl dd.index13 { left: 65.6%; top: 77.17%; }
.xcabout-strategy-map .map-container dl dd.index14 { left: 58.85%; top: 82.24%; }
.xcabout-strategy-map .map-container dl dd.index15 { left: 60.6%; top: 80.8%; }
.xcabout-strategy-map .map-container dl dd.index16 { left: 49.9%; top: 76.57%; }
.xcabout-strategy-map .map-container dl dd.index17 { left: 56.8%; top: 78.2%; }
.xcabout-strategy-map .map-container dl dd.index18 { left: 61.78%; top: 65.765%; }
.xcabout-strategy-map .map-container dl dd.index19 { left: 56.43%; top: 66.66%; }
.xcabout-strategy-map .map-container dl dd.index20 { left: 60.636%; top: 59.459%; }
.xcabout-strategy-map .map-container dl dd.index21 { left: 57.5796%; top: 49%; }
.xcabout-strategy-map .map-container dl dd.index22 { left: 49.9%; top: 50.45%; }
.xcabout-strategy-map .map-container dl dd.index23 { left: 42.8%; top: 59.8%; }
.xcabout-strategy-map .map-container dl dd.index24 { left: 48.025%; top: 63.063%; }
.xcabout-strategy-map .map-container dl dd.index25 { left: 38.98%; top: 75.6756%; }
.xcabout-strategy-map .city-marker {
  position: absolute;
  left: 0;
  top: 0;
  width: 21px;
  height: 30px;
  z-index: 1;
  will-change: transform;
  transform: translate3d(0, 0, 0);
}
.xcabout-strategy-map .city-marker .xcabout-map-pin {
  display: inline-block;
  width: 21px;
  height: 30px;
  position: relative;
  font-family: inherit;
  font-style: normal;
  speak: normal;
  background-image: url(../images/icon-place.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center bottom;
  transform: translate3d(0, 0, 0);
  will-change: transform;
  backface-visibility: hidden;
}
.xcabout-strategy-map .city-marker .xcabout-map-pin::before {
  content: none;
}
.xcabout-strategy-map .city-marker .xcabout-map-pin::after {
  content: "";
  display: inline-block;
  opacity: 0;
  width: 52px;
  height: 52px;
  background: rgba(7, 53, 142, 0.1);
  position: absolute;
  left: 50%;
  top: 50%;
  border-radius: 50%;
  transform: translate3d(-50%, -50%, 0);
  transition: opacity 0.3s ease;
  will-change: opacity;
}
.xcabout-strategy-map .city-name {
  opacity: 0;
  display: none;
  position: absolute;
  right: calc(100% + 10px);
  top: 50%;
  padding-right: 8px;
  transform: translate3d(0, -50%, 0);
  will-change: opacity, transform;
}
.xcabout-strategy-map .city-name-title {
  width: 105px;
  height: 45px;
  font-size: 16px;
  line-height: 45px;
  padding-left: 48px;
  background-color: rgba(51, 51, 51, 0.8);
  background-image: url(../images/bg-placeli.png);
  background-position: left 15px center;
  background-repeat: no-repeat;
  background-size: 23px auto;
  color: #fff;
  border-radius: 18px;
}
.xcabout-strategy-map .city-name-title::after {
  content: "";
  display: inline-block;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate3d(0, -50%, 0);
  width: 0;
  height: 0;
  border-left: 8px solid rgba(51, 51, 51, 0.8);
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
}
.xcabout-strategy-map .map-container dl dd.act {
  z-index: 2;
}
.xcabout-strategy-map .map-container dl dd.act .city-marker .xcabout-map-pin::after {
  opacity: 1;
  transform: translate3d(-50%, -50%, 0) scale(1.1);
}
.xcabout-strategy-map .map-container dl dd.act .city-marker .xcabout-map-pin {
  background-image: url(../images/icon-place-r.png);
  animation: place-r 2s linear infinite;
  will-change: transform;
  -webkit-animation: place-r 2s linear infinite;
}
.xcabout-strategy-map .map-container dl dd.act .city-name {
  opacity: 1;
  display: inline-block;
}
@keyframes place-r {
  0% { transform: translate3d(0, 0, 0); }
  50% { transform: translate3d(0, -5px, 0); }
}
@media (hover: hover) {
  .xcabout-strategy-map .map-container dl dd:hover {
    z-index: 2;
  }
  .xcabout-strategy-map .map-container dl dd:hover .city-marker .xcabout-map-pin::after {
    opacity: 1;
    transform: translate3d(-50%, -50%, 0) scale(1.1);
  }
  .xcabout-strategy-map .map-container dl dd:hover .city-marker .xcabout-map-pin {
    background-image: url(../images/icon-place-r.png);
  }
  .xcabout-strategy-map .map-container dl dd:hover .city-name {
    opacity: 1;
    display: inline-block;
    transform: translate3d(0, -50%, 0);
  }
}

.xcabout-region-panel h4 {
  position: relative;
  margin: 0 0 20px;
  padding-left: 16px;
  font-size: 22px;
  color: #222;
  font-weight: 600;
  line-height: 1.45;
}

.xcabout-region-panel h4::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.28em;
  bottom: 0.28em;
  width: 3px;
  background: var(--about-primary, #0050be);
}

.xcabout-region-tags {
  margin-bottom: 20px;
  font-size: 0;
}

.xcabout-region-tags span {
  display: inline-block;
  vertical-align: top;
  margin: 0 8px 8px 0;
  padding: 4px 14px;
  border-radius: 14px;
  background: rgba(26, 137, 254, 0.1);
  color: var(--about-primary, #0050be);
  font-size: 13px;
}

.xcabout-region-list {
  margin: 0 0 28px;
  padding: 0;
  list-style: none;
}

.xcabout-region-list li {
  position: relative;
  padding-left: 22px;
  margin-bottom: 12px;
  font-size: 16px;
  line-height: 28px;
  color: #333;
}

.xcabout-region-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 9px;
  width: 10px;
  height: 10px;
  background: url(../images/icon-1-blue.png) no-repeat center;
  background-size: contain;
}

.xcabout-region-btn {
  display: inline-block;
  padding: 8px 20px;
  border-radius: 6px;
  background: var(--about-primary, #0050be);
  color: #fff;
  font-size: 16px;
  text-decoration: none;
  transition: background 0.25s ease, transform 0.25s ease;
  -webkit-transition: background 0.25s ease, transform 0.25s ease;
  -moz-transition: background 0.25s ease, transform 0.25s ease;
  -ms-transition: background 0.25s ease, transform 0.25s ease;
  -o-transition: background 0.25s ease, transform 0.25s ease;
}

.xcabout-region-btn:hover {
  background: var(--about-primary-light, #1a89fe);
  color: #fff;
  text-decoration: none;
  transform: translateY(-2px);
}

.xcabout-strategy-panel {
  margin-top: 56px;
}

.xcabout-center-tabs {
  margin: 0 0 20px;
  font-size: 0;
}

.xcabout-center-tabs span {
  display: inline-block;
  vertical-align: top;
  margin: 0 10px 10px 0;
  padding: 8px 22px;
  border: 1px solid var(--about-line, #e6eef9);
  border-radius: 5px;
  background: #fff;
  color: #333;
  font-size: 18px;
  line-height: 30px;
  cursor: pointer;
  user-select: none;
  -webkit-user-select: none;
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
}

.xcabout-center-tabs span:hover {
  border-color: rgba(26, 86, 168, 0.35);
  color: var(--about-primary, #1a56a8);
}

.xcabout-center-tabs span.is-active {
  border-color: var(--about-primary, #1a56a8);
  background: var(--about-primary, #1a56a8);
  color: #fff;
}

.xcabout-center-modal {
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 10001;
  display: none;
}

.xcabout-center-modal.is-open {
  display: block;
}

.xcabout-center-modal__backdrop {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background: rgba(7, 26, 53, 0.55);
  cursor: pointer;
}

.xcabout-center-modal__panel {
  position: fixed;
  left: 50%;
  top: 50%;
  z-index: 1;
  width: min(1180px, 94vw);
  max-height: 92vh;
  overflow: auto;
  margin: 0;
  padding: 40px 48px 36px;
  border-radius: 24px;
  border: 1px solid rgba(255, 255, 255, 0.8);
  background-color: #fff;
  background-image: url("../images/bg-consult.jpg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  box-shadow: 0 28px 70px rgba(7, 26, 53, 0.18);
  text-align: left;
  box-sizing: border-box;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.xcabout-center-modal__close {
  position: absolute;
  top: 18px;
  right: 18px;
  z-index: 2;
  width: 36px;
  height: 36px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.72);
  color: #8a97ab;
  font-size: 26px;
  line-height: 34px;
  text-align: center;
  cursor: pointer;
}

.xcabout-center-modal__close:hover {
  background: #fff;
  color: #064B9F;
}


.xcabout-center-modal__body h1,
.xcabout-center-modal__body .page-article__title {
  margin: 0 48px 16px 0;
  color: #0050be;
  font-size: 32px;
  font-weight: 700;
  line-height: 1.35;
}
.xcabout-center-modal__body h2{
  margin: 0 48px 32px 0;
  color: #000;
  font-size: 32px;
  line-height: 32px;
}
.xcabout-center-modal__body h3 {
  position: relative;
  margin: 15px 0 8px;
  padding-left: 14px;
  font-size: 18px;
  line-height: 30px;
  color: #0050be;
}

.xcabout-center-modal__body h3::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.28em;
  bottom: 0.28em;
  width: 3px;
  background: var(--about-primary, #0050be);
}

.xcabout-center-modal__body h3:first-of-type {
  margin-top: 8px;
}

.xcabout-center-modal__body p {
  font-size: 16px;
  line-height: 32px;
  color: #333;
  text-align: justify;
}

.xcabout-center-modal__body p:last-child {
  margin-bottom: 0;
}

.xcabout-center-modal__body strong {
  color: #333;
  font-weight: 600;
}

.xcabout-center-modal__body ul {
  margin: 8px 0 20px;
  padding: 0;
  list-style: none;
}

.xcabout-center-modal__body li {
  position: relative;
  padding-left: 22px;
  font-size: 16px;
  line-height: 32px;
  color: #333;
}

.xcabout-center-modal__body li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 11px;
  width: 10px;
  height: 10px;
  background: url(../images/icon-1-blue.png) no-repeat center;
  background-size: contain;
}

.xcabout-culture-grid {
  margin-top: 8px;
}

.xcabout-culture-panel {
  float: left;
  width: 49%;
  margin: 0 2% 24px 0;
  padding: 32px 24px 28px 32px;
  background: #fff;
  border-radius: 22px;
  box-shadow: 0 12px 40px rgba(26, 86, 168, 0.08);
  box-sizing: border-box;
  overflow: hidden;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.xcabout-culture-panel:nth-child(2n) {
  margin-right: 0;
}

.xcabout-culture-panel:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 44px rgba(0, 80, 190, 0.12);
}

.xcabout-culture-panel--hero {
  min-height: 250px;
}

.xcabout-culture-panel__media {
  float: right;
  width: 38%;
  margin-left: 10px;
}

.xcabout-culture-panel--hero .xcabout-culture-panel__media {
  width: 46%;
}

.xcabout-culture-panel__media img {
  display: block;
  width: 100%;
  height: auto;
}

.xcabout-culture-panel__body {
  overflow: hidden;
}

.xcabout-culture-panel__title {
  margin: 0 0 14px;
  font-size: 26px;
  font-weight: 700;
  color: #2f6bff;
  line-height: 1.3;
}

.xcabout-culture-panel__title em {
  font-style: normal;
  margin-right: 6px;
}

.xcabout-culture-panel__body > p {
  margin: 0;
  font-size: 16px;
  line-height: 1.9;
  color: #4a5568;
}

.xcabout-culture-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.xcabout-culture-list li {
  margin: 0 0 10px;
  font-size: 15px;
  line-height: 1.85;
  color: #4a5568;
}

.xcabout-culture-block {
  margin-bottom: 12px;
}

.xcabout-culture-block:last-child {
  margin-bottom: 0;
}

.xcabout-culture-block h4 {
  margin: 0 0 6px;
  font-size: 15px;
  font-weight: 700;
  color: #2f6bff;
  line-height: 1.5;
}

.xcabout-culture-block p {
  margin: 0;
  font-size: 14px;
  line-height: 1.8;
  color: #5a6577;
}

.xcabout-culture-card {
  float: left;
  width: 23.5%;
  margin-right: 2%;
  padding: 36px 22px 32px;
  background: #fff;
  border: 1px solid var(--about-line, #e6eef9);
  border-radius: 12px;
  box-shadow: 0 8px 24px rgba(52, 94, 184, 0.06);
  text-align: center;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.xcabout-culture-card:last-child {
  margin-right: 0;
}

.xcabout-culture-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 36px rgba(0, 80, 190, 0.12);
}

.xcabout-culture-card__icon {
  display: block;
  width: 56px;
  height: 56px;
  line-height: 56px;
  margin: 0 auto 20px;
  border-radius: 50%;
  overflow: hidden;
  background: rgba(26, 137, 254, 0.08);
}

.xcabout-culture-card__icon img {
  display: inline-block;
  vertical-align: middle;
  width: 32px;
  height: 32px;
  object-fit: contain;
}

.xcabout-culture-card h3 {
  margin: 0 0 12px;
  font-size: 20px;
  color: #333;
}

.xcabout-culture-card p {
  margin: 0;
  font-size: 14px;
  line-height: 1.75;
  color: #636363;
  text-align: left;
}

.xcabout-certify {
  position: relative;
  width: 100%;
  margin-top: 20px;
  padding: 0 40px;
  box-sizing: border-box;
}

.xcabout-certify .swiper-container {
  overflow: hidden;
  padding-bottom: 25px;
}

.xcabout-certify .swiper-slide {
  width: 520px;
  height: auto;
  background: #fff;
  box-shadow: 0 8px 20px #ddd;
}

.xcabout-certify .swiper-slide a {
  display: block;
  width: 100%;
  height: 100%;
  padding: 10px;
  box-sizing: border-box;
  color: inherit;
  text-decoration: none;
}

.xcabout-certify .swiper-slide .imgbox {
  overflow: hidden;
  height: 360px;
  background: #f5f8fc;
}

.xcabout-certify .swiper-slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.xcabout-certify .swiper-slide .swiper-honortit {
  text-align: center;
  font-size: 16px;
  color: #333;
  line-height: 28px;
  padding-top: 15px;
  padding-bottom: 10px;
}

.xcabout-certify .swiper-button-prev,
.xcabout-certify .swiper-button-next {
  width: 45px;
  height: 45px;
  margin-top: -22px;
  z-index: 10;
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 14px auto;
  border-radius: 50%;
  box-shadow: 0 4px 16px rgba(0, 40, 100, 0.12);
}

.xcabout-certify .swiper-button-prev::after,
.xcabout-certify .swiper-button-next::after {
  display: none;
  content: none;
}

.xcabout-certify .swiper-button-prev {
  left: 0;
  background-image: url(../images/his_arrow_le.png);
}

.xcabout-certify .swiper-button-next {
  right: 0;
  background-image: url(../images/his-right-blue.png);
}

.xcabout-certify .swiper-button-prev:hover,
.xcabout-certify .swiper-button-next:hover {
  box-shadow: 0 8px 20px rgba(0, 80, 190, 0.18);
}

.xcabout-honor-wrap {
  position: relative;
  padding: 8px 56px 52px;
}

.xcabout-honor-swiper {
  overflow: hidden;
}

.xcabout-honor-swiper .swiper-slide {
  height: auto;
}

.xcabout-honor-arrow {
  position: absolute;
  top: 42%;
  width: 40px;
  height: 40px;
  margin-top: -20px;
  border: 1px solid var(--about-line, #e6eef9);
  border-radius: 50%;
  background: #fff center center no-repeat;
  background-size: 12px auto;
  box-shadow: 0 4px 16px rgba(0, 40, 100, 0.08);
  cursor: pointer;
  z-index: 2;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.xcabout-honor-arrow:hover {
  border-color: var(--about-primary, #1a56a8);
  box-shadow: 0 8px 20px rgba(0, 80, 190, 0.15);
}

.xcabout-honor-arrow--prev {
  left: 0;
  background-image: url(../images/his_arrow_le.png);
}

.xcabout-honor-arrow--next {
  right: 0;
  background-image: url(../images/his-right-blue.png);
}

.xcabout-honor-pagination {
  position: relative;
  bottom: auto !important;
  margin-top: 32px;
  text-align: center;
}

.xcabout-honor-pagination .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  margin: 0 6px !important;
  background: rgba(26, 86, 168, 0.25);
  opacity: 1;
}

.xcabout-honor-pagination .swiper-pagination-bullet-active {
  width: 24px;
  border-radius: 4px;
  background: var(--about-primary, #1a56a8);
}

.xcabout-honor-item {
  display: block;
  width: 100%;
  text-align: center;
  text-decoration: none;
  color: inherit;
  transition: transform 0.25s ease;
}

.xcabout-honor-item:hover {
  transform: translateY(-6px);
  color: inherit;
  text-decoration: none;
}

.xcabout-honor-item__frame {
  display: block;
  padding: 12px;
  margin-bottom: 14px;
  background: #fff;
  border: 1px solid var(--about-line, #e6eef9);
  border-radius: 8px;
  box-shadow: 0 6px 18px rgba(0, 40, 100, 0.08);
  overflow: hidden;
}

.xcabout-honor-item__frame img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 0.35s ease;
}

.xcabout-honor-item:hover .xcabout-honor-item__frame img {
  transform: scale(1.01);
  -webkit-transform: scale(1.01);
  -moz-transform: scale(1.01);
  -ms-transform: scale(1.01);
  -o-transform: scale(1.01);
}

.xcabout-honor-item__label {
  display: block;
  font-size: 16px;
  color: #333;
}

.xcabout-activity-head {
  position: relative;
  margin-bottom: 36px;
}

.xcabout-activity-head .value-present-intro {
  margin-bottom: 0;
}

.xcabout-activity-foot {
  margin-top: 28px;
  text-align: center;
}

.xcabout-activity-more {
  display: inline-flex;
  align-items: center;
  font-size: 16px;
  line-height: 1;
  color: #333;
  text-decoration: none;
  transition: color 0.25s ease;
}

.xcabout-activity-more::after {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  margin-left: 8px;
  background: url(../images/arrow-right.png) no-repeat center / contain;
  transition: transform 0.3s cubic-bezier(0.22, 1, 0.36, 1), background-image 0.25s ease;
  animation: xcaboutMoreArrow 1.6s ease-in-out infinite;
}

.xcabout-activity-more:hover,
.xcabout-activity-more:focus-visible {
  color: var(--about-primary, #0050be);
  text-decoration: none;
}

.xcabout-activity-more:hover::after,
.xcabout-activity-more:focus-visible::after {
  background-image: url(../images/arrow-right-blue.png);
  transform: translateX(6px);
  animation: none;
}

@keyframes xcaboutMoreArrow {
  0%, 100% { transform: translateX(0); }
  50% { transform: translateX(5px); }
}

.xcabout-activity-swiper-wrap {
  position: relative;
  /* padding: 0 48px; */
}

.xcabout-activity-swiper {
  overflow: hidden;
}

.xcabout-activity-swiper .swiper-slide {
  height: auto;
}

.xcabout-activity-prev.swiper-button-prev,
.xcabout-activity-next.swiper-button-next {
  width: 28px;
  height: 28px;
  margin-top: -14px;
  border: none;
  outline: none;
  box-shadow: none;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100% auto;
  opacity: 1;
}

.xcabout-activity-prev::after,
.xcabout-activity-next::after {
  display: none;
  content: none;
}

.xcabout-activity-prev.swiper-button-prev {
  left: -48px;
  background-image: url(../images/arrow-left.png);
}

.xcabout-activity-next.swiper-button-next {
  right: -48px;
  background-image: url(../images/arrow-right.png);
}

.xcabout-activity-prev.swiper-button-prev:hover,
.xcabout-activity-prev.swiper-button-prev:focus {
  background-image: url(../images/arrow-left-blue.png);
}

.xcabout-activity-next.swiper-button-next:hover,
.xcabout-activity-next.swiper-button-next:focus {
  background-image: url(../images/arrow-right-blue.png);
}

.xcabout-activity-card {
  float: none;
  width: 100%;
  margin-right: 0;
}

.xcabout-activity-card:last-child {
  margin-right: 0;
}

.xcabout-activity-card__link {
  display: block;
  text-decoration: none;
  color: inherit;
  background: #fff;
  border: 1px solid var(--about-line, #e6eef9);
  border-radius: 10px;
  overflow: hidden;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.xcabout-activity-card__link:hover {
  transform: translateY(-6px);
  box-shadow: 0 0 10px rgba(0, 80, 190, 0.12);
  color: inherit;
  text-decoration: none;
}

.xcabout-activity-card__media {
  display: block;
  /* height: 180px; */
  overflow: hidden;
}

.xcabout-activity-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.35s ease;
}

.xcabout-activity-card__link:hover .xcabout-activity-card__media img {
  transform: scale(1.06);
}

.xcabout-activity-card__body {
  display: block;
  padding: 16px 16px 18px;
}

.xcabout-activity-card__body h3 {
  display: block;
  margin: 0 0 8px;
  padding: 0;
  font-size: 18px;
  line-height: 1.5;
  color: #333;
  font-weight: 600;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.xcabout-activity-card__link:hover .xcabout-activity-card__body h3 {
  color: var(--about-primary, #0050be);
}

.xcabout-activity-card__body p {
  display: block;
  margin: 0;
  padding: 0;
  font-style: normal;
  font-size: 16px;
  line-height: 1.5;
  color: #999;
}

@media (max-width: 991px) {
  .xcabout-develop-list li,
  .xcabout-develop-list.act li,
  .xcabout-develop-list li.on {
    display: block;
    width: 100%;
    height: 420px;
  }

  .xcabout-develop-list li .develop-brief {
    padding: 36px 22px 24px;
  }

  .xcabout-develop-list li .develop-brief h2 {
    font-size: 22px;
    line-height: 34px;
  }

  .xcabout-develop-list li .develop-ico,
  .xcabout-develop-list li .develop-ico img {
    width: 36px;
    height: 36px;
  }

  .xcabout-section {
    padding: 80px 0 88px;
  }

  .xcabout-section-head {
    margin-bottom: 48px;
  }

  .xcabout-intro-split__body,
  .xcabout-intro-split__media {
    float: none;
    width: 100%;
    padding-right: 0;
  }

  .xcabout-intro-split__media {
    margin-top: 40px;
  }

  .xcabout-dual-icons__item {
    float: none;
    width: 100%;
  }

  .xcabout-dual-icons__circle {
    float: left;
  }

  .xcabout-honor-wrap {
    padding: 16px 0 48px;
  }

  .xcabout-certify .swiper-slide {
    width: 380px;
  }

  .xcabout-certify .swiper-slide .imgbox {
    height: 262px;
  }

  .xcabout-certify .swiper-button-prev {
    left: 0;
  }

  .xcabout-certify .swiper-button-next {
    right: 0;
  }

  .xcabout-strategy-card {
    width: 100%;
    float: none;
    margin-right: 0;
    margin-bottom: 16px;
  }

  .xcabout-strategy-detail,
  .xcabout-strategy-map {
    float: none;
    width: 100%;
    padding-right: 0;
  }

  .xcabout-strategy-map {
    margin-top: 40px;
  }

  .xcabout-center-tabs span {
    margin-right: 8px;
    padding: 7px 16px;
    font-size: 13px;
  }

  .xcabout-center-modal__panel {
    padding: 32px 22px 28px;
    border-radius: 18px;
  }

  .xcabout-center-modal__body h2,
  .xcabout-center-modal__body h1,
  .xcabout-center-modal__body .page-article__title {
    font-size: 24px;
    margin-right: 36px;
  }

  .xcabout-center-modal__body h3 {
    font-size: 18px;
  }

  .xcabout-culture-panel,
  .xcabout-culture-card {
    width: 48%;
    margin-right: 4%;
    margin-bottom: 24px;
  }

  .xcabout-culture-panel:nth-child(2n),
  .xcabout-culture-card:nth-child(2n) {
    margin-right: 0;
  }

  .xcabout-culture-panel__title {
    font-size: 22px;
  }
}

@media (max-width: 575px) {
  .xcabout-page-root .page-news-banner {
    height: auto;
    min-height: 220px;
  }

  .xcabout-page-root .page-news-banner__title {
    font-size: 28px;
  }

  .xcabout-section {
    padding: 64px 0 72px;
  }

  .xcabout-section-head__text {
    font-size: 24px;
  }

  .xcabout-activity-swiper-wrap {
    padding: 0 36px;
  }

  .xcabout-activity-head {
    padding-bottom: 24px;
  }

  .xcabout-activity-foot {
    margin-top: 20px;
  }

  .xcabout-dual-icons__item {
    max-width: none;
  }

  .xcabout-honor-wrap {
    padding: 12px 0 40px;
  }

  .xcabout-certify {
    margin-top: 8px;
  }

  .xcabout-certify .swiper-slide {
    width: 78%;
  }

  .xcabout-certify .swiper-slide .imgbox {
    height: 210px;
  }

  .xcabout-certify .swiper-honortit {
    font-size: 14px;
    line-height: 22px;
  }

  .xcabout-certify .swiper-button-prev,
  .xcabout-certify .swiper-button-next {
    width: 36px;
    height: 36px;
    margin-top: -18px;
  }

  .xcabout-culture-panel,
  .xcabout-culture-card {
    float: none;
    width: 100%;
    margin-right: 0;
  }

  .xcabout-culture-panel {
    padding: 24px 20px 22px;
  }

  .xcabout-culture-panel__media,
  .xcabout-culture-panel--hero .xcabout-culture-panel__media {
    float: none;
    width: 56%;
    margin: 0 auto 8px;
  }
}

/* 产品详情页 */
.product-overview,
.product-painpoints,
.product-scenarios,
.product-advantages,
.product-service,
.product-users,
.product-news,
.product-cases {
  /* overflow: hidden; */
}

/* 产品介绍：左文右图 */
.product-overview-split {
  overflow: hidden;
}

.product-overview-split .solution-panel__text {
  float: left;
  width: 52%;
  margin-bottom: 0;
  line-height: 32px;
}

.product-overview-split__media {
  float: right;
  width: 44%;
}

.product-overview-split__media img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 10px;
  background: #eef2f7;
  border: 1px solid rgba(23, 49, 88, 0.08);
}

.product-overview-split .solution-panel__text ul,
.product-overview > .solution-panel__text ul {
  margin-top: 5px;
  padding: 0;
  list-style: none;
}

.product-overview-split .solution-panel__text ul li,
.product-overview > .solution-panel__text ul li {
  position: relative;
  padding-left: 25px;
  font-size: 16px;
  line-height: 32px;
  color: var(--solution-text, #2a3a4f);
}


.product-overview-split .solution-panel__text ul li::before,
.product-overview > .solution-panel__text ul li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 8px;
  width: 18px;
  height: 18px;
  background-image: url(../images/icon-right.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: left center;
}

.product-overview-split .solution-panel__text ul li strong,
.product-overview > .solution-panel__text ul li strong {
  color: var(--solution-text, #2a3a4f);
  font-weight: 700;
}

.product-intro-grid {
  overflow: hidden;
  margin: 22px -8px 0;
}

.product-intro-grid::after {
  content: '';
  display: block;
  clear: both;
}

.product-intro-grid__item {
  float: left;
  width: calc(25% - 16px);
  margin: 0 8px 16px;
  box-sizing: border-box;
  padding: 26px 18px 22px;
  border-radius: 14px;
  background: linear-gradient(180deg, #ffffff, #f8fbff);
  border: 1px solid rgba(6, 75, 159, 0.10);
  text-align: center;
}

.product-intro-grid__item:nth-child(4n+1) {
  clear: left;
}

.product-intro-grid--2 .product-intro-grid__item {
  width: calc(50% - 16px);
  padding: 20px 18px;
  text-align: left;
  overflow: hidden;
}

.product-intro-grid--2 .product-intro-grid__item:nth-child(4n+1) {
  clear: none;
}

.product-intro-grid--2 .product-intro-grid__item:nth-child(2n+1) {
  clear: left;
}

.product-intro-grid--2 .product-intro-grid__icon {
  float: left;
  margin: 2px 14px 0 0;
}

.product-intro-grid--2 .product-intro-grid__body {
  overflow: hidden;
}

.product-intro-grid--2 .product-intro-grid__title {
  margin: 4px 0 8px;
}

.product-intro-grid--5 .product-intro-grid__item {
  width: calc(20% - 16px);
}

.product-intro-grid--5 .product-intro-grid__item:nth-child(4n+1) {
  clear: none;
}

.product-intro-grid--5 .product-intro-grid__item:nth-child(5n+1) {
  clear: left;
}

.product-intro-grid__icon {
  width: 56px;
  height: 56px;
  margin: 0 auto;
  border-radius: 50%;
  background: rgba(26, 137, 254, 0.10);
  line-height: 56px;
  text-align: center;
  font-size: 0;
}

.product-intro-grid__icon img {
  display: inline-block;
  width: 28px;
  height: 28px;
  vertical-align: middle;
}

.product-intro-grid__title {
  margin: 20px 0 10px;
  font-size: 18px;
  line-height: 1.4;
  color: var(--home-blue, #064B9F);
  font-weight: 400;
}

.solution-detail-page #overview .solution-panel__text p {
  text-align: justify;
}

.product-intro-grid__text {
  margin: 0;
  font-size: 15px;
  line-height: 1.75;
  color: var(--solution-muted, #6b7c93);
}

.product-pain-list {
  overflow: hidden;
  margin: 6px -8px 0;
}

.product-pain-list::after {
  content: '';
  display: block;
  clear: both;
}

.product-pain-list__item {
  float: left;
  width: calc(50% - 16px);
  margin: 0 8px 14px;
  overflow: hidden;
  padding: 20px 22px;
  border-radius: 14px;
  background: linear-gradient(180deg, #ffffff, #f8fbff);
  border: 1px solid rgba(47, 107, 255, 0.10);
  box-sizing: border-box;
}

.product-pain-list__item:nth-child(2n+1) {
  clear: left;
}

.product-pain-list__num {
  float: left;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #eef4fb;
  border: 1px solid rgba(47, 107, 255, 0.18);
  color: var(--home-blue, #064B9F);
  font-size: 18px;
  line-height: 48px;
  text-align: center;
}

.product-pain-list__body {
  overflow: hidden;
  padding-left: 18px;
}

.product-pain-list__body h4 {
  margin: 2px 0 10px;
  font-size: 18px;
  line-height: 1.5;
  color: #333;
  /* font-weight: 600; */
  text-align: left;
}

.product-pain-list__body p {
  margin: 0;
  font-size: 16px;
  line-height: 28px;
  color: var(--solution-muted, #6b7c93);
  text-align: justify;
}

/* 业务痛点：左标签 + 右内容一体卡片 */
.product-pain-roles {
  margin-top: 8px;
}

.product-pain-roles__item {
  display: flex;
  align-items: stretch;
  overflow: hidden;
  margin-bottom: 16px;
  border-radius: 12px;
  border: 1px solid rgba(6, 75, 159, 0.10);
  background: #fff;
}

.product-pain-roles__item:last-child {
  margin-bottom: 0;
}

.product-pain-roles__aside {
  flex: 0 0 128px;
  width: 128px;
  padding: 18px 14px;
  box-sizing: border-box;
  text-align: center;
  background: linear-gradient(180deg, rgba(26, 137, 254, 0.16), rgba(26, 137, 254, 0.04));
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.product-pain-roles__num {
  display: block;
  width: 48px;
  height: 48px;
  margin: 0 auto 12px;
  border-radius: 50%;
  background: #eef4fb;
  border: 1px solid rgba(47, 107, 255, 0.22);
  color: var(--solution-blue, #0050be);
  font-size: 24px;
  letter-spacing: 0.04em;
  line-height: 48px;
  text-align: center;
}

.product-pain-roles__role {
  display: block;
  font-size: 18px;
  line-height: 22px;
  color: var(--home-blue, #0050be);
}

.product-pain-roles__body {
  flex: 1;
  min-width: 0;
  padding: 16px 22px;
  box-sizing: border-box;
}

.product-pain-roles__body h4 {
  margin: 0 0 10px;
  font-size: 18px;
  line-height: 1.5;
  color: var(--solution-text, #2a3a4f);
}

.product-pain-roles__body p {
  margin: 0;
  font-size: 16px;
  line-height: 28px;
  color: var(--solution-muted, #6b7c93);
  text-align: justify;
}

.product-adv-blocks {
  overflow: hidden;
}

.product-adv-block + .product-adv-block {
  margin-top: 28px;
}

.product-adv-block .case-path-block__title {
  margin-bottom: 16px;
}

.product-adv-block .case-result-deliverables {
  margin: 0;
  list-style: none;
}

.product-adv-milestones.case-path-milestones {
  margin-top: 0;
  padding-top: 4px;
}

.product-adv-milestones .case-path-milestone {
  padding: 10px 0 18px;
}

.product-adv-milestones .case-path-milestone::before {
  top: 16px;
}

.product-adv-milestones .case-path-milestone__content strong {
  display: block;
  margin-bottom: 10px;
}

.product-adv-points {
  margin: 0;
  padding: 0;
  list-style: none;
}

.product-adv-points li {
  position: relative;
  margin-bottom: 8px;
  padding-left: 16px;
  color: #333;
  font-size: 16px;
  line-height: 28px;
  text-align: justify;
}

.product-adv-points li:last-child {
  margin-bottom: 0;
}

.product-adv-points li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 11px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--home-blue, #064B9F);
}

.product-adv-points li strong {
  color: #333;
  font-weight: 600;
}

.product-adv-list {
  /* overflow: hidden; */
}

.product-adv-list--stack .product-adv-list__item {
  float: none;
  width: auto;
  overflow: hidden;
  margin-bottom: 12px;
  padding: 20px 24px 18px 20px;
  border-radius: 12px;
  background: linear-gradient(90deg, #f8fbff 0%, #ffffff 160px);
  border: 1px solid rgba(47, 107, 255, 0.10);
  border-left: 4px solid var(--home-blue, #064B9F);
  box-sizing: border-box;
}

.product-adv-list--stack .product-adv-list__item:last-child {
  margin-bottom: 0;
}

.product-adv-list--stack .product-adv-list__num {
  float: left;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: var(--home-blue, #064B9F);
  border: 0;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  line-height: 52px;
  text-align: center;
}

.product-adv-list--stack .product-adv-list__body {
  overflow: hidden;
  padding-left: 20px;
}

.product-adv-list--stack .product-adv-list__body h4 {
  margin: 10px 0 14px;
  font-size: 18px;
  line-height: 1.5;
  color: var(--home-blue, #064B9F);
  font-weight: 600;
  text-align: left;
}

.product-adv-list--stack .product-adv-list__body .product-dot-list {
  margin: 0;
}

.product-adv-list--stack .product-adv-list__body .product-dot-list li {
  float: none;
  width: auto;
  padding: 0 0 10px 16px;
}

.product-adv-list--stack .product-adv-list__body .product-dot-list li:last-child {
  padding-bottom: 0;
}


.product-adv-list::after {
  content: '';
  display: block;
  clear: both;
}

.product-adv-list__item {
  float: left;
  width: calc(50% - 16px);
  margin: 0 8px 14px;
  overflow: hidden;
  padding: 20px 22px;
  border-radius: 14px;
  background: linear-gradient(180deg, #ffffff, #f8fbff);
  border: 1px solid rgba(47, 107, 255, 0.10);
  box-sizing: border-box;
}

.product-adv-list__item:nth-child(2n+1) {
  clear: left;
}

.product-adv-list__num {
  float: left;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #eef4fb;
  border: 1px solid rgba(47, 107, 255, 0.18);
  color: var(--home-blue, #064B9F);
  font-size: 16px;
  font-weight: 600;
  line-height: 48px;
  text-align: center;
}

.product-adv-list__body {
  overflow: hidden;
  padding-left: 18px;
}

.product-adv-list__body h4 {
  margin: 2px 0 12px;
  font-size: 17px;
  line-height: 1.5;
  color: var(--home-blue, #064B9F);
  font-weight: 600;
  text-align: left;
}

.product-adv-list__body .product-dot-list {
  margin-top: 0;
}

.product-adv-list--media .product-adv-list__item {
  padding: 0;
}

.product-adv-list--media .product-adv-list__media {
  float: left;
  width: 38%;
  height: 100%;
  min-height: 140px;
}

.product-adv-list--media .product-adv-list__media img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 140px;
  object-fit: cover;
  border-radius: 14px 0 0 14px;
  background: #eef2f7;
}

.product-adv-list--media .product-adv-list__body {
  padding: 20px 22px 20px 18px;
}

.product-adv-list--media .product-adv-list__body h4 {
  margin: 0 0 10px;
}

.product-adv-list--media .product-adv-list__body p {
  margin: 0;
  font-size: 15px;
  line-height: 1.75;
  color: var(--solution-muted, #6b7c93);
  text-align: justify;
}

/* 产品优势：上图下文三列 */
.product-adv-list--cards .product-adv-list__item {
  float: left;
  width: calc(33.3333% - 16px);
  margin: 0 8px 16px;
  padding: 0;
  overflow: hidden;
  background-color: rgba(26, 137, 254, 0.06);
  border: none;
  border-radius: 8px;
  box-shadow: 0 0 10px rgba(23, 49, 88, 0.08);
}

.product-adv-list--cards .product-adv-list__item:nth-child(2n+1) {
  clear: none;
}

.product-adv-list--cards .product-adv-list__item:nth-child(3n+1) {
  clear: left;
}

.product-adv-list--cards .product-adv-list__media {
  float: none;
  width: 100%;
  height: auto;
  min-height: 0;
  overflow: hidden;
  background: #fff;
  border-bottom: 1px solid rgba(23, 49, 88, 0.10);
}

.product-adv-list--cards .product-adv-list__media img {
  display: block;
  width: 100%;
  height: auto;
  min-height: 0;
  object-fit: initial;
  border-radius: 8px 8px 0 0;
  background: #fff;
}

.product-adv-list--cards .product-adv-list__body {
  padding: 16px 18px 18px;
}

.product-adv-list--cards .product-adv-list__body h4 {
  margin: 0 0 10px;
  color: var(--solution-text, #2a3a4f);
}

.product-adv-list--cards .product-adv-list__body p {
  margin: 0;
  font-size: 15px;
  line-height: 1.75;
  color: var(--solution-muted, #6b7c93);
  text-align: justify;
}

.product-workflow__figure {
  margin-bottom: 22px;
  padding: 18px;
  border-radius: 14px;
  border: 1px solid rgba(23, 49, 88, 0.08);
  background: #fff;
  text-align: center;
}

.product-workflow__figure img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}

.product-workflow__milestones.case-path-milestones {
  margin-top: 8px;
  padding-top: 4px;
}

.product-workflow__milestones .case-path-milestone {
  padding: 5px 0 8px;
}

.product-workflow__milestones .case-path-milestone::before {
  top: 16px;
}

.product-workflow__milestones .case-path-milestone__content strong {
  display: block;
  /* margin-bottom: 8px; */
}

.product-workflow__chain {
  margin-bottom: 22px;
  padding: 16px 20px;
  border-radius: 10px;
  background: linear-gradient(90deg, #0050be 0%, #1a89fe 100%);
  color: #fff;
  font-size: 16px;
  line-height: 1.85;
  text-align: center;
}

.product-workflow__steps {
  overflow: hidden;
  margin: 0 -7px;
}

.product-workflow__steps::after {
  content: '';
  display: block;
  clear: both;
}

.product-workflow__step {
  float: left;
  width: calc(20% - 14px);
  margin: 0 7px 14px;
  box-sizing: border-box;
  padding: 18px 16px;
  border-radius: 12px;
  background: #f7fbff;
  border: 1px solid rgba(6, 75, 159, 0.08);
}

.product-workflow__step:nth-child(5n+1) {
  clear: left;
}

.product-workflow__step-head {
  overflow: hidden;
  margin-bottom: 12px;
}

.product-workflow__step-num {
  float: left;
  width: 32px;
  height: 32px;
  margin-right: 10px;
  border-radius: 50%;
  background:#0050be;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  line-height: 32px;
  text-align: center;
}

.product-workflow__step-head h4 {
  overflow: hidden;
  margin: 0;
  font-size: 18px;
  line-height: 32px;
  color: #333;
}

.product-workflow__step p {
  margin: 0;
  font-size: 16px;
  line-height: 28px;
  color: var(--solution-muted, #6b7c93);
  text-align: justify;
}

.product-workflow__steps--pair {
  margin: 0 -8px;
}

.product-workflow__steps--pair .product-workflow__step {
  width: calc(50% - 16px);
  margin: 0 8px 14px;
  padding: 20px 22px;
  border-radius: 14px;
  background: linear-gradient(180deg, #ffffff, #f8fbff);
  border: 1px solid rgba(47, 107, 255, 0.10);
}

.product-workflow__steps--pair .product-workflow__step:nth-child(2n+1) {
  clear: left;
}

.product-workflow__steps--pair .product-workflow__step:nth-child(5n+1) {
  clear: none;
}

.product-workflow__steps--pair .product-workflow__step-num {
  width: 48px;
  height: 48px;
  margin-right: 0;
  font-size: 18px;
  line-height: 48px;
}

.product-workflow__steps--pair .product-workflow__step-body {
  overflow: hidden;
  padding-left: 18px;
}

.product-workflow__steps--pair .product-workflow__step-body h4 {
  margin: 2px 0 10px;
  font-size: 18px;
  line-height: 1.5;
  /* font-weight: 600; */
  color: #333;
}

.product-workflow__steps--pair .product-workflow__step-body p {
  font-size: 16px;
  line-height: 28px;
}

.product-arch-layout {
  overflow: hidden;
  padding: 24px;
  border-radius: 14px;
  border: 1px solid rgba(23, 49, 88, 0.08);
  background: linear-gradient(180deg, #ffffff, #f8fbff);
}

.product-arch-layout__media {
  margin-bottom: 22px;
  text-align: center;
}

.product-arch-layout__media img {
  display: block;
  /* width: 100%; */
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  border-radius: 10px;
  border: 1px solid rgba(23, 49, 88, 0.08);
}

.product-arch-layout__main {
  /* overflow: hidden; */
}

.product-arch-grid {
  overflow: hidden;
  margin: 0 -10px;
}

.product-arch-grid::after {
  content: '';
  display: block;
  clear: both;
}

.product-arch-grid__item {
  float: left;
  width: calc(25% - 20px);
  margin: 0 10px 16px;
  box-sizing: border-box;
  padding: 24px 18px 20px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid rgba(23, 49, 88, 0.10);
  text-align: center;
}

.product-arch-grid__item:nth-child(4n+1) {
  clear: left;
}

.product-arch-grid__icon {
  display: inline-block;
  width: 64px;
  height: 64px;
  margin: 0 auto;
  border-radius: 50%;
  background: rgba(26, 137, 254, 0.10);
  line-height: 64px;
  text-align: center;
  font-size: 0;
}

.product-arch-grid__icon img {
  display: inline-block;
  width: 32px;
  height: 32px;
  vertical-align: middle;
}

.product-arch-grid__item h4 {
  margin: 16px 0 10px;
  font-size: 18px;
  color: #333;
}

.product-arch-grid__item p {
  margin: 0;
  font-size: 16px;
  line-height: 28px;
  color: var(--solution-muted, #6b7c93);
  text-align: left;
}

.product-arch-layers {
  /* overflow: hidden; */
  margin-top: 4px;
}

.product-arch-layer {
  /* overflow: hidden; */
  margin: 0 0 15px;
  padding: 0;
}

.product-arch-layer:last-child {
  margin-bottom: 0;
}

.product-arch-layer h4 {
  position: relative;
  margin: 0 0 15px;
  padding-left: 12px;
  font-size: 18px;
  line-height: 1.45;
  color: #0050be;
  font-weight: 700;
}

.product-arch-layer h4::before {
  content: '';
  position: absolute;
  left: 0;
  top: 4px;
  bottom: 4px;
  width: 3px;
  background: #0050be;
}

.product-arch-layer__intro {
  position: relative;
  margin: 0 0 12px;
  padding: 12px 14px 12px 42px;
  font-size: 16px;
  line-height:28px;
  color: var(--solution-text, #2a3a4f);
  background-color: rgba(26, 137, 254, 0.06);
  border-radius: 8px;
}

.product-arch-layer__intro::before {
  content: '';
  position: absolute;
  left: 14px;
  top: 16px;
  width: 20px;
  height: 20px;
  background-image: url(../images/icon-dingwei.png);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center center;
}

.product-arch-layer__intro--plain {
  padding-left: 14px;
}

.product-arch-layer__intro--plain::before {
  display: none;
}

.product-arch-layer__block {
  margin: 0 0 12px;
  padding: 14px 16px 4px;
  background-color: rgba(26, 137, 254, 0.06);
  border: none;
  border-radius: 8px;
}

.product-arch-layer__block h5 {
  margin: 0 0 10px;
  font-size: 16px;
  line-height: 28px;
  color: #333;
  background-position: left top 3px;
  background-size: 20px auto;
  padding-left: 28px;
}

.product-arch-layer .product-dot-list {
  /* margin: 0 -8px;
  overflow: hidden; */
}

.product-arch-layer .product-dot-list::after {
  content: '';
  display: block;
  clear: both;
}

.product-arch-layer .product-dot-list li {
  float: left;
  width: calc(33.3333% - 16px);
  margin: 0 8px 12px;
  box-sizing: border-box;
  padding: 14px 16px;
  background: #fff;
  border: none;
  border-radius: 8px;
  box-shadow: 0 0 10px rgba(23, 49, 88, 0.08);
  color: var(--solution-muted, #6b7c93);
}

.product-arch-layer .product-dot-list li:nth-child(3n+1) {
  clear: left;
}

.product-arch-layer .product-dot-list li:only-child {
  width: calc(100% - 16px);
  min-height: 0;
  clear: none;
}

.product-arch-layer .product-dot-list li::before {
  content: none;
  display: none;
}

.product-arch-layer .product-dot-list li strong {
  display: block;
  margin-bottom: 6px;
  color: var(--solution-text, #2a3a4f);
  font-weight: 700;
  line-height: 28px;
}

.product-arch-layer__block .product-dot-list {
  margin: 0 -8px;
}

.product-scene-tabs {
  overflow: hidden;
  margin: 0 -5px 5px;
}

.product-scene-tabs::after {
  content: '';
  display: block;
  clear: both;
}

.product-scene-tabs button {
  float: left;
  width: calc(25% - 10px);
  margin: 0 5px 10px;
  box-sizing: border-box;
  padding: 12px 14px;
  border: 1px solid rgba(6, 75, 159, 0.12);
  border-radius: 8px;
  background: #fff;
  color: #333;
  font-size: 16px;
  line-height: 28px;
  cursor: pointer;
  transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease;
}

.product-scene-tabs button:nth-child(4n+1) {
  clear: left;
}

.product-scene-tabs button:hover,
.product-scene-tabs button.is-active {
  color: var(--home-blue, #064B9F);
  border-color: rgba(6, 75, 159, 0.28);
  background: #f3f8ff;
}

.product-scene-panels {
  position: relative;
}

.product-scene-panel {
  display: none;
}

.product-scene-panel.is-active {
  display: block;
}

.product-scene-panel__inner {
  overflow: hidden;
  padding: 24px;
  border-radius: 14px;
  border: 1px solid rgba(23, 49, 88, 0.08);
  background: linear-gradient(180deg, #ffffff, #f8fbff);
}

.product-scene-panel__body {
  float: left;
  width: 52%;
  box-sizing: border-box;
  padding-right: 12px;
}

.product-scene-panel__body h4 {
  margin: 0 0 14px;
  font-size: 18px;
  line-height: 1.5;
  color: var(--home-blue, #064B9F);
  /* font-weight: 600; */
}

.product-scene-panel__body p {
  margin: 0;
  font-size: 16px;
  line-height: 32px;
  color: var(--solution-text, #445066);
  text-align: justify;
}

.product-scene-panel__media {
  float: right;
  width: 48%;
  box-sizing: border-box;
  padding-left: 12px;
}

.product-scene-panel__media img {
  display: block;
  /* width: 100%; */
  /* min-height: 220px; */
  object-fit: cover;
  border-radius: 10px;
  border: 1px solid rgba(23, 49, 88, 0.08);
}

.product-scene-panel--text-only .product-scene-panel__body {
  float: none;
  width: 100%;
  padding-right: 0;
}

.product-scene-panel__inner--stack .product-scene-panel__body {
  float: none;
  width: 100%;
  padding-right: 0;
}

.product-scene-panel__inner--stack .product-scene-panel__media {
  float: none;
  width: 100%;
  padding-left: 0;
  margin-top: 18px;
}

.product-scene-panel__inner--lr .product-scene-panel__body {
  float: left;
  width: 52%;
  padding-right: 12px;
}

.product-scene-panel__inner--lr .product-scene-panel__media {
  float: right;
  width: 48%;
  padding-left: 12px;
}

.product-scene-panel__inner--lr .product-scene-panel__media img {
  min-height: 0;
  object-fit: contain;
  background: #fff;
}

.product-scene-panel__caption {
  margin: 10px 0 0;
  font-size: 16px;
  line-height: 28px;
  color: var(--solution-muted, #6b7c93);
  text-align: center;
}

.product-scene-panel__body .case-solution-figures {
  margin-top: 18px;
}

.product-scene-panel__body .case-solution-figures--2col {
  margin: 18px -10px 0;
}

.product-scene-panel__body .case-solution-figures--2col .case-solution-figure {
  width: calc(50% - 20px);
  margin: 0 10px 20px;
}

.product-scene-panel__body .case-solution-figures--2col .case-solution-figure:nth-child(2n+1) {
  clear: left;
}

.product-scene-panel__body .case-solution-figures--2col .case-solution-figure:nth-child(4),
.product-scene-panel__body .case-solution-figures--2col .case-solution-figure:nth-child(5) {
  width: calc(50% - 20px);
}

.product-scene-panel__body .case-solution-figures--2col .case-solution-figure:nth-child(4) {
  clear: none;
}

.product-adv-grid--8 .solution-adv-card {
  min-height: 0;
}

.product-overview .product-news-grid {
  margin-top: 22px;
}

.product-news-grid {
  overflow: hidden;
  margin: 0 -8px;
}

.product-news-grid::after {
  content: '';
  display: block;
  clear: both;
}

.product-news-card {
  float: left;
  width: calc(33.3333% - 16px);
  margin: 0 8px 16px;
  box-sizing: border-box;
  padding: 22px 20px;
  border-radius: 14px;
  background: linear-gradient(180deg, #ffffff, #f8fbff);
  border: 1px solid rgba(6, 75, 159, 0.10);
}

.product-news-card:nth-child(3n+1) {
  clear: left;
}

.product-news-grid--4 .product-news-card {
  width: calc(25% - 16px);
}

.product-news-grid--4 .product-news-card:nth-child(3n+1) {
  clear: none;
}

.product-news-grid--4 .product-news-card:nth-child(4n+1) {
  clear: left;
}

.product-news-grid--4 .product-news-card__head h4 {
  line-height: 1.45;
  padding-top: 9px;
}

.product-news-card__head {
  overflow: hidden;
  margin-bottom: 12px;
}

.product-news-card__icon {
  float: left;
  width: 40px;
  height: 40px;
  margin-right: 12px;
  border-radius: 50%;
  background: rgba(26, 137, 254, 0.10);
  line-height: 40px;
  text-align: center;
  font-size: 0;
}

.product-news-card__icon img {
  display: inline-block;
  width: 22px;
  height: 22px;
  vertical-align: middle;
}

.product-news-card__head h4 {
  overflow: hidden;
  margin: 0;
  font-size: 17px;
  line-height: 40px;
  color: #333;
  font-weight: 600;
}

.product-news-card p {
  margin: 0;
  font-size: 15px;
  line-height: 1.75;
  color: var(--solution-muted, #6b7c93);
}

/* 产品介绍核心提炼：卡片样式 + 图标在上（仅本页等显式引用处使用） */
.product-overview .product-highlight-grid {
  margin-top: 22px;
}

.product-highlight-grid {
  overflow: hidden;
  margin: 0 -8px;
}

.product-highlight-grid::after {
  content: '';
  display: block;
  clear: both;
}

.product-highlight-card {
  float: left;
  width: calc(25% - 16px);
  margin: 0 8px 16px;
  box-sizing: border-box;
  padding: 24px 18px 22px;
  border-radius: 14px;
  background: linear-gradient(180deg, #ffffff, #f8fbff);
  border: 1px solid rgba(6, 75, 159, 0.10);
  text-align: center;
}

.product-highlight-grid--4 .product-highlight-card:nth-child(4n+1) {
  clear: left;
}

.product-highlight-grid--3 .product-highlight-card {
  width: calc(33.3333% - 16px);
}

.product-highlight-grid--3 .product-highlight-card:nth-child(4n+1) {
  clear: none;
}

.product-highlight-grid--3 .product-highlight-card:nth-child(3n+1) {
  clear: left;
}

.product-highlight-grid--5 .product-highlight-card {
  width: calc(20% - 16px);
}

.product-highlight-grid--5 .product-highlight-card:nth-child(4n+1) {
  clear: none;
}

.product-highlight-grid--5 .product-highlight-card:nth-child(5n+1) {
  clear: left;
}

.product-highlight-card__icon {
  display: block;
  width: 56px;
  height: 56px;
  margin: 0 auto 14px;
  border-radius: 50%;
  background: rgba(26, 137, 254, 0.10);
  line-height: 56px;
  text-align: center;
  font-size: 0;
}

.product-highlight-card__icon img {
  display: inline-block;
  width: 28px;
  height: 28px;
  vertical-align: middle;
}

.product-highlight-card__title {
  margin: 0 0 10px;
  font-size: 17px;
  line-height: 1.45;
  color: #333;
  font-weight: 600;
}

.product-highlight-card__text {
  margin: 0;
  font-size: 15px;
  line-height: 1.75;
  color: var(--solution-muted, #6b7c93);
  text-align: left;
}

.product-adv-grid .solution-adv-card {
  text-align: left;
}

.product-adv-grid .solution-adv-card h4 {
  text-align: center;
  color: var(--home-blue, #064B9F);
}

.product-dot-list {
  margin: 12px 0 0;
  padding: 0;
  list-style: none;
}

.product-dot-list li {
  position: relative;
  margin-bottom: 10px;
  padding-left: 16px;
  font-size: 16px;
  line-height: 28px;
  color: var(--solution-muted, #6b7c93);
}

.product-dot-list li:last-child {
  margin-bottom: 0;
}

.product-dot-list li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 11px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #1a89fe;
}

@media (max-width: 1199px) {
  .product-overview-split__body {
    width: calc(62% - 22px);
    margin-right: 22px;
  }

  .product-overview-split__media {
    width: 38%;
  }

  .product-overview-split__media img {
    min-height: 240px;
  }

  .product-intro-grid__item {
    width: calc(50% - 16px);
  }

  .product-intro-grid--5 .product-intro-grid__item {
    width: calc(33.3333% - 16px);
  }

  .product-intro-grid__item:nth-child(4n+1) {
    clear: none;
  }

  .product-intro-grid--5 .product-intro-grid__item:nth-child(5n+1) {
    clear: none;
  }

  .product-intro-grid--5 .product-intro-grid__item:nth-child(3n+1) {
    clear: left;
  }

  .product-intro-grid__item:nth-child(2n+1) {
    clear: left;
  }

  .product-arch-grid__item {
    width: calc(50% - 20px);
  }

  .product-arch-grid__item:nth-child(4n+1) {
    clear: none;
  }

  .product-arch-grid__item:nth-child(2n+1) {
    clear: left;
  }

  .product-arch-layer .product-dot-list li {
    width: calc(50% - 16px);
    min-height: 0;
  }

  .product-arch-layer .product-dot-list li:nth-child(3n+1) {
    clear: none;
  }

  .product-arch-layer .product-dot-list li:nth-child(2n+1) {
    clear: left;
  }

  .product-arch-layer .product-dot-list li:only-child {
    width: calc(100% - 16px);
    clear: none;
  }

  .product-adv-list--cards .product-adv-list__item {
    width: calc(50% - 16px);
  }

  .product-adv-list--cards .product-adv-list__item:nth-child(3n+1) {
    clear: none;
  }

  .product-adv-list--cards .product-adv-list__item:nth-child(2n+1) {
    clear: left;
  }

  .product-workflow__step {
    width: calc(33.3333% - 14px);
  }

  .product-workflow__steps--pair .product-workflow__step {
    width: calc(50% - 16px);
  }

  .product-workflow__step:nth-child(5n+1) {
    clear: none;
  }

  .product-workflow__steps--pair .product-workflow__step:nth-child(5n+1) {
    clear: none;
  }

  .product-workflow__step:nth-child(3n+1) {
    clear: left;
  }

  .product-workflow__steps--pair .product-workflow__step:nth-child(2n+1) {
    clear: left;
  }

  .product-news-card {
    width: calc(50% - 16px);
  }

  .product-news-grid--4 .product-news-card {
    width: calc(50% - 16px);
  }

  .product-news-grid--4 .product-news-card:nth-child(4n+1) {
    clear: none;
  }

  .product-news-grid--4 .product-news-card:nth-child(2n+1) {
    clear: left;
  }

  .product-news-card:nth-child(3n+1) {
    clear: none;
  }

  .product-news-card:nth-child(2n+1) {
    clear: left;
  }

  .product-highlight-card {
    width: calc(50% - 16px);
  }

  .product-highlight-grid--4 .product-highlight-card:nth-child(4n+1) {
    clear: none;
  }

  .product-highlight-grid--4 .product-highlight-card:nth-child(2n+1) {
    clear: left;
  }

  .product-highlight-grid--3 .product-highlight-card {
    width: calc(50% - 16px);
  }

  .product-highlight-grid--3 .product-highlight-card:nth-child(3n+1) {
    clear: none;
  }

  .product-highlight-grid--3 .product-highlight-card:nth-child(2n+1) {
    clear: left;
  }

  .product-highlight-grid--5 .product-highlight-card {
    width: calc(50% - 16px);
  }

  .product-highlight-grid--5 .product-highlight-card:nth-child(5n+1) {
    clear: none;
  }

  .product-highlight-grid--5 .product-highlight-card:nth-child(2n+1) {
    clear: left;
  }

  .product-scene-panel__body,
  .product-scene-panel__media {
    float: none;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  .product-scene-panel__inner--lr .product-scene-panel__body {
    float: left;
    width: 52%;
    padding-right: 12px;
  }

  .product-scene-panel__inner--lr .product-scene-panel__media {
    float: right;
    width: 48%;
    padding-left: 12px;
    margin-top: 0;
  }

  .product-scene-panel__media {
    margin-top: 16px;
  }
}

@media (max-width: 767px) {
  .product-overview-split__body,
  .product-overview-split__media {
    float: none;
    width: 100%;
    margin: 0;
  }

  .product-overview-split__media {
    margin-top: 18px;
  }

  .product-overview-split__media img {
    min-height: 200px;
  }

  .product-intro-grid__item,
  .product-arch-grid__item,
  .product-arch-layer .product-dot-list li,
  .product-workflow__step,
  .product-workflow__steps--pair .product-workflow__step,
  .product-news-card,
  .product-highlight-card,
  .product-pain-list__item,
  .product-adv-list__item {
    width: calc(100% - 16px);
    clear: left;
  }

  .product-pain-roles__item {
    flex-direction: column;
  }

  .product-pain-roles__aside,
  .product-pain-roles__body {
    flex: none;
    width: auto;
  }

  .product-pain-roles__aside {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 14px 16px;
  }

  .product-pain-roles__num {
    margin: 0;
    flex-shrink: 0;
  }

  .product-pain-roles__role {
    text-align: left;
  }

  .product-arch-layer .product-dot-list li:nth-child(2n+1),
  .product-arch-layer .product-dot-list li:only-child {
    clear: left;
  }

  .product-adv-list--media .product-adv-list__media {
    float: none;
    width: 100%;
    min-height: 0;
  }

  .product-adv-list--media .product-adv-list__media img {
    min-height: 180px;
    border-radius: 14px 14px 0 0;
  }

  .product-adv-list--media .product-adv-list__body {
    padding: 16px 18px 18px;
  }

  .product-adv-list--cards .product-adv-list__item {
    width: calc(100% - 16px);
    clear: left;
  }

  .product-adv-list--cards .product-adv-list__item:nth-child(2n+1),
  .product-adv-list--cards .product-adv-list__item:nth-child(3n+1) {
    clear: left;
  }

  .product-adv-list--cards .product-adv-list__media img {
    border-radius: 8px 8px 0 0;
  }

  .product-scene-tabs button {
    width: calc(50% - 10px);
  }

  .product-scene-tabs button:nth-child(4n+1),
  .product-scene-tabs button:nth-child(2n+1) {
    clear: none;
  }

  .product-scene-tabs button:nth-child(2n+1) {
    clear: left;
  }

  .product-scene-panel__inner {
    padding: 18px;
  }

  .product-scene-panel__inner--lr .product-scene-panel__body,
  .product-scene-panel__inner--lr .product-scene-panel__media {
    float: none;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  .product-scene-panel__inner--lr .product-scene-panel__media {
    margin-top: 16px;
  }

  .product-scene-panel__body .case-solution-figures--2col .case-solution-figure,
  .product-scene-panel__body .case-solution-figures--2col .case-solution-figure:nth-child(4),
  .product-scene-panel__body .case-solution-figures--2col .case-solution-figure:nth-child(5) {
    float: none;
    width: 100%;
    margin: 0 0 16px;
    clear: none;
  }

  .product-arch-layout {
    padding: 18px;
  }

  .product-scene-panel__media img {
    min-height: 180px;
  }
}

/* =============================================================================
   招贤纳士页（careers.html / .recruit-page）   ============================================================================= */
body.recruit-page {
  background: #fff;
}
.recruit-hero {
  position: relative;
  height: 300px;
  background: #07183a url("../images/recruit-banner-blue.png") center center no-repeat;
  background-size: cover;
  overflow: hidden;
}
.recruit-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(7, 18, 46, .18) 0%, rgba(7, 18, 46, .08) 40%, rgba(7, 18, 46, .06) 100%);
}
.recruit-hero .container {
  position: relative;
  z-index: 1;
}
.recruit-shell {
  padding: 0;
  background: #fff;
}
.recruit-content {
  max-width: 1200px;
}
.recruit-visual-band {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 14% 12%, rgba(53, 135, 255, .11) 0, rgba(53, 135, 255, 0) 25%),
    radial-gradient(circle at 88% 20%, rgba(53, 135, 255, .10) 0, rgba(53, 135, 255, 0) 28%),
    linear-gradient(180deg, #f8fbff 0%, #eef5ff 42%, #ffffff 72%);
}
.recruit-flow-section {
  position: relative;
  z-index: 1;
  padding: 76px 0 100px;
  background: linear-gradient(180deg, rgba(255,255,255,.72) 0%, #fff 100%);
}
.recruit-flow-section::before {
  display: none;
}
.recruit-flow-section .container {
  position: relative;
  z-index: 1;
}
.recruit-flow-panel {
  position: relative;
  z-index: 1;
  margin: 50px -26px 0;
}
.recruit-flow-panel::after {
  content: "";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}
.recruit-flow-step {
  position: relative;
  float: left;
  width: 20%;
  padding: 0 20px;
  box-sizing: border-box;
}
.recruit-flow-step:not(:last-child)::after {
  content: "→";
  position: absolute;
  top: 50%;
  right: -15px;
  z-index: 2;
  color: #0e66df;
  font-size: 28px;
  font-weight: 500;
  line-height: 1;
  transform: translateY(-50%);
}
.recruit-flow-step__card {
  position: relative;
  min-height: 248px;
  padding: 26px 18px 24px;
  border: 1px solid rgba(35, 119, 226, .20);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(28, 91, 174, .08);
  text-align: center;
}
.recruit-flow-step__num,
.recruit-flow-step__icon,
.recruit-flow-step__title,
.recruit-flow-step__desc {
  position: relative;
  z-index: 1;
}
.recruit-flow-step__num {
  margin-bottom: 12px;
  color: #0050be;
  font-size: 24px;
}
.recruit-flow-step__icon {
  display: inline-block;
  width: 58px;
  height: 58px;
  margin: 0 auto 22px;
  border-radius: 50%;
  background: #e8f3ff;
  text-align: center;
  font-size: 0;
  line-height: 58px;
}
.recruit-flow-step__icon img {
  display: inline-block;
  width: 34px;
  height: 34px;
  object-fit: contain;
  vertical-align: middle;
}
.recruit-flow-step__title {
  margin: 0 0 14px;
  color: #071f5f;
  font-size: 24px;
  line-height: 1.3;
}
.recruit-flow-step__desc {
  margin: 0;
  color: #4c5874;
  font-size: 15px;
  line-height: 1.75;
}
.recruit-roles-section {
  position: relative;
  z-index: 1;
  padding: 65px 0 82px;
  background-image: url(../images/frame_bg.png);
  background-size: cover;
  background-position: bottom center;
  background-repeat: no-repeat;
  background-attachment: fixed;
}
.recruit-roles-grid {
  position: relative;
  z-index: 1;
  margin-top: 50px;
}
.recruit-roles-grid::after {
  content: "";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}
.recruit-role-card {
  position: relative;
  float: left;
  width: calc((100% - 66px) / 3);
  min-height: 194px;
  overflow: hidden;
  padding: 28px 176px 24px 28px;
  box-sizing: border-box;
  margin: 0 11px 22px;
  border: 1px solid rgba(35, 119, 226, .18);
  border-radius: 10px;
  background-color: rgba(255,255,255,.92);
  background-image: var(--role-bg);
  background-repeat: no-repeat;
  background-position: right center;
  background-size: auto 106%;
  box-shadow: 0 6px 20px rgba(22, 85, 165, .06);
  cursor: pointer;
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.recruit-role-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(255,255,255,.99) 0%, rgba(255,255,255,.94) 42%, rgba(255,255,255,.58) 72%, rgba(255,255,255,.08) 100%);
  pointer-events: none;
}
.recruit-role-card:hover {
  transform: translateY(-3px);
  border-color: rgba(35, 119, 226, .32);
  box-shadow: 0 12px 30px rgba(22, 85, 165, .11);
}
.recruit-role-card__title {
  margin: 0;
  overflow: hidden;
  color: #071f5f;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.35;
}
.recruit-role-card__desc {
  margin: 0 0 20px;
  color: #31405e;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.7;
}
.recruit-role-card__more {
  color: #126be0;
  font-size: 15px;
  font-weight: 400;
  text-decoration: none;
}
.recruit-role-card__arrow {
  display: inline-block;
  transition: transform .22s ease;
}
.recruit-role-card:hover .recruit-role-card__arrow {
  transform: translateX(4px);
}
.recruit-role-card__head,
.recruit-role-card__desc,
.recruit-role-card__more {
  position: relative;
  z-index: 1;
}
.recruit-role-card__head {
  margin-bottom: 18px;
}
.recruit-job-modal[hidden] {
  display: none;
}
.recruit-job-modal {
  position: fixed;
  inset: 0;
  z-index: 3000;
  overflow: auto;
  padding: 72px 24px 32px;
}
.recruit-job-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(238, 246, 255, .76);
  backdrop-filter: blur(7px);
}
.recruit-job-modal__dialog {
  position: relative;
  z-index: 1;
  width: min(920px, 100%);
  max-height: calc(100vh - 104px);
  margin: 0 auto;
  overflow: auto;
  border: 1px solid rgba(35, 119, 226, .20);
  border-radius: 14px;
  background: rgba(255,255,255,.98);
  box-shadow: 0 24px 70px rgba(7, 31, 95, .22);
}
.recruit-job-modal__close {
  position: absolute;
  top: 20px;
  right: 22px;
  z-index: 3;
  width: 34px;
  height: 34px;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: #5d6b84;
  font-size: 30px;
  line-height: 30px;
  cursor: pointer;
}
.recruit-job-modal__close:hover,
.recruit-job-modal__close:focus {
  background: rgba(18, 107, 224, .08);
  color: #071f5f;
  outline: none;
}
.recruit-job-modal__head {
  position: relative;
  padding: 44px 48px 28px;
  overflow: hidden;
}
.recruit-job-modal__head::after {
  display: none;
}
.recruit-job-modal__titleline {
  position: relative;
  z-index: 1;
  margin-bottom: 0;
}
.recruit-job-modal__title {
  margin: 0;
  color: #071f5f;
  font-size: 32px;
  line-height: 1.2;
}
.recruit-job-modal__body {
  display: block;
  border-top: 1px solid rgba(35, 119, 226, .14);
  border-bottom: 1px solid rgba(35, 119, 226, .14);
  margin: 0 42px;
  border-radius: 10px;
  overflow: hidden;
  background: linear-gradient(180deg, #fff 0%, #f9fcff 100%);
}
.recruit-job-modal__main {
  padding: 28px 30px 26px;
}
.recruit-job-modal__main.is-loading {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 320px;
  box-sizing: border-box;
}
.recruit-job-modal__loading {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 14px;
  padding: 24px 20px;
}
.recruit-job-modal__spinner {
  width: 36px;
  height: 36px;
  border: 3px solid rgba(18, 107, 224, .16);
  border-top-color: #126be0;
  border-radius: 50%;
  animation: recruit-job-modal-spin .75s linear infinite;
}
.recruit-job-modal__loading-text {
  color: #5d6b84;
  font-size: 15px;
  line-height: 1.5;
}
.recruit-job-modal__error {
  margin: 0;
  padding: 48px 20px;
  min-height: 224px;
  box-sizing: border-box;
  color: #5d6b84;
  font-size: 15px;
  line-height: 1.7;
  text-align: center;
}
@keyframes recruit-job-modal-spin {
  to {
    transform: rotate(360deg);
  }
}
.recruit-job-modal__main h3 {
  position: relative;
  margin: 0 0 15px;
  padding-left: 24px;
  color: #071f5f;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
}
.recruit-job-modal__main h3::before {
  content: "";
  position: absolute;
  left: 0;
  top: .45em;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #126be0;
  box-shadow: 0 0 0 5px rgba(18, 107, 224, .08);
}
.recruit-job-modal__main h3 + ul {
  margin-bottom: 0;
}
.recruit-job-modal__main h3:not(:first-child) {
  margin-top: 28px;
}
.recruit-job-modal__main ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.recruit-job-modal__main li {
  position: relative;
  padding-left: 24px;
  color: #31405e;
  font-size: 16px;
  font-weight: 400;
  line-height: 28px;
}
.recruit-job-modal__main li + li {
  margin-top: 7px;
}
.recruit-job-modal__main li::before {
  content: "";
  position: absolute;
  left: 5px;
  top: 12px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #0050be;
}
.recruit-job-modal__main p {
  margin: 0 0 12px;
  color: #31405e;
  font-size: 16px;
  line-height: 28px;
}
.recruit-job-modal__foot {
  overflow: hidden;
  padding: 24px 42px 34px;
}
.recruit-job-modal__foot::after {
  content: "";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}
.recruit-job-modal__apply {
  float: left;
  display: inline-block;
  min-width: 142px;
  height: 44px;
  margin-right: 22px;
  border: 0;
  border-radius: 7px;
  background: #126be0;
  color: #fff;
  font-size: 16px;
  font-weight: 400;
  line-height: 44px;
  text-align: center;
  cursor: pointer;
  box-shadow: 0 10px 22px rgba(18, 107, 224, .24);
  transition: background .22s ease, box-shadow .22s ease, transform .22s ease;
}
.recruit-job-modal__apply:hover,
.recruit-job-modal__apply:focus {
  background: #0050be;
  box-shadow: 0 16px 34px rgba(0, 80, 190, .36);
  transform: translateY(-2px);
  outline: none;
}
.recruit-job-modal__apply:active {
  transform: translateY(0);
  box-shadow: 0 8px 18px rgba(0, 80, 190, .28);
}
.recruit-job-modal__back {
  float: left;
  height: 44px;
  margin-right: 22px;
  padding: 0 18px;
  border: 1px solid rgba(18, 107, 224, .28);
  border-radius: 7px;
  background: #edf5ff;
  color: #126be0;
  font-size: 16px;
  font-weight: 400;
  line-height: 42px;
  cursor: pointer;
  transition: background .22s ease, border-color .22s ease, color .22s ease, box-shadow .22s ease, transform .22s ease;
}
.recruit-job-modal__back:hover,
.recruit-job-modal__back:focus {
  border-color: #126be0;
  background: #126be0;
  color: #fff;
  box-shadow: 0 10px 24px rgba(18, 107, 224, .22);
  transform: translateY(-2px);
  outline: none;
}
.recruit-job-modal__back:active {
  transform: translateY(0);
  box-shadow: 0 6px 16px rgba(18, 107, 224, .18);
}
.recruit-job-modal__note {
  float: right;
  margin-top: 10px;
  color: #5d6b84;
  font-size: 14px;
  line-height: 1.6;
}
body.recruit-modal-open {
  overflow: hidden;
}

@media (max-width: 1199px) {
  .recruit-content {
    max-width: 1000px;
  }
  .recruit-flow-panel {
    margin: 0 -17px;
  }
  .recruit-flow-step {
    padding: 0 17px;
  }
  .recruit-flow-step:not(:last-child)::after {
    right: -10px;
  }
  .recruit-role-card {
    padding-right: 201px;
  }
}

@media (max-width: 991px) {
  .recruit-flow-step {
    width: 50%;
  }
  .recruit-flow-step:not(:last-child)::after {
    display: none;
  }
  .recruit-flow-step:last-child {
    float: none;
    width: 50%;
    max-width: 50%;
    margin: 0 auto;
    clear: both;
  }
  .recruit-role-card {
    width: calc((100% - 44px) / 2);
    padding-right: 190px;
  }
}

@media (max-width: 767px) {
  .recruit-job-modal {
    padding: 72px 12px 18px;
  }
  .recruit-job-modal__dialog {
    max-height: calc(100vh - 90px);
    border-radius: 12px;
  }
  .recruit-job-modal__head {
    padding: 30px 24px 22px;
  }
  .recruit-job-modal__title {
    font-size: 26px;
  }
  .recruit-job-modal__body {
    margin: 0 18px;
  }
  .recruit-job-modal__main {
    padding: 22px 20px;
  }
  .recruit-job-modal__main.is-loading {
    min-height: 240px;
  }
  .recruit-job-modal__foot {
    padding: 20px 18px 26px;
  }
  .recruit-job-modal__apply,
  .recruit-job-modal__back {
    float: none;
    display: inline-block;
    margin: 0 14px 0 0;
  }
  .recruit-job-modal__note {
    float: none;
    display: block;
    margin-top: 14px;
  }
  .recruit-hero {
    height: 180px;
  }
  .recruit-visual-band {
    background: linear-gradient(180deg, #f7fbff 0%, #eef5ff 45%, #fff 100%);
  }
  .recruit-flow-section {
    padding: 72px 0 72px;
  }
  .recruit-roles-section {
    padding: 36px 0 54px;
  }
  .recruit-flow-panel {
    margin: 0;
  }
  .recruit-flow-step {
    float: none;
    width: 100%;
    padding: 0;
    margin-bottom: 16px;
  }
  .recruit-flow-step:last-child {
    float: none;
    width: 100%;
    max-width: none;
    margin: 0 0 16px;
  }
  .recruit-role-card {
    float: none;
    width: 100%;
    min-height: 176px;
    margin: 0 0 22px;
    padding: 24px 150px 22px 22px;
    background-size: auto 106%;
  }
}

@media (max-width: 420px) {
  .recruit-role-card {
    padding-right: 123px;
  }
  .recruit-flow-step__card {
    min-height: 0;
  }
  .recruit-flow-step__num {
    margin-bottom: 16px;
  }
}

/* ========== 法律声明页 · legal-page ========== */
/* 顶栏：去掉 Banner 后默认会走 90px 白底另一套样式；用零高度 trigger 切回内页顶栏，并强制实底态 */
.legal-banner-trigger {
  height: 0 !important;
  min-height: 0 !important;
  margin: 0;
  padding: 0;
  overflow: hidden;
  border: 0;
  visibility: hidden;
  pointer-events: none;
}
body:has(.legal-banner-trigger) {
  padding-top: 62px; /* fixed 顶栏占位，避免内容被挡住 */
}
body:has(.legal-banner-trigger) .site-header {
  background: rgba(255, 255, 255, .98);
  border-bottom-color: rgba(7, 43, 83, .08);
  box-shadow: 0 10px 28px rgba(5, 33, 71, .08);
}
body:has(.legal-banner-trigger) .site-header .logo-image--light {
  display: none;
}
body:has(.legal-banner-trigger) .site-header .logo-image--dark {
  display: block;
}
body:has(.legal-banner-trigger) .site-header .main-nav > ul > li > a {
  color: #17283E;
}
/* 未滚动时搜索是白边白字，白底顶栏上看不见；强制成滚动后的深色搜索 */
body:has(.legal-banner-trigger) .site-header .header-search-pill {
  border-color: #d7e2ee;
  background: transparent;
}
body:has(.legal-banner-trigger) .site-header .header-search-icon {
  background-image: url(../images/icon-seach-black.png);
}
body:has(.legal-banner-trigger) .site-header .header-search-input {
  color: #203349;
}
body:has(.legal-banner-trigger) .site-header .header-search-input::placeholder {
  color: #6e7f95;
}

.legal-page {
  padding: 48px 0 80px;
  background: #fff;
}
/* 有 Banner 的内页会把 .container 左右 padding 清零，这里补回 */
.legal-page > .container {
  padding-left: 15px;
  padding-right: 15px;
}
/* 城市指数区块大标题：左右装饰圆点 */
.legal-page .value-present-intro {
  margin-bottom: 32px;
  text-align: center;
}
.legal-page .value-present-title {
  position: relative;
  display: inline-block;
  margin: 0;
  padding: 0 40px;
  font-size: 36px;
  color: #1a2b4a;
  line-height: 1.35;
}
.legal-page .value-present-title::before,
.legal-page .value-present-title::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 24px;
  height: 12px;
  margin-top: -6px;
  background-repeat: no-repeat;
  pointer-events: none;
}
.legal-page .value-present-title::before {
  left: 0;
  background-image:
    radial-gradient(circle closest-side, #1a89fe 100%, transparent 100%),
    radial-gradient(circle closest-side, #1a89fe 100%, transparent 100%);
  background-size: 10px 10px, 5px 5px;
  background-position: right center, right 14px center;
}
.legal-page .value-present-title::after {
  right: 0;
  background-image:
    radial-gradient(circle closest-side, #1a89fe 100%, transparent 100%),
    radial-gradient(circle closest-side, #1a89fe 100%, transparent 100%);
  background-size: 10px 10px, 5px 5px;
  background-position: left center, left 14px center;
}
.legal-content h3 {
  position: relative;
  margin: 20px 0 16px;
  padding-left: 14px;
  font-size: 20px;
  font-weight: 700;
  color: #061530;
  line-height: 1.4;
}
.legal-content h3::before {
  content: "";
  position: absolute;
  left: 0;
  top: 4px;
  width: 3px;
  height: 20px;
  background: #0050be;
}
.legal-content p {
  margin: 0 0 16px;
  font-size: 16px;
  line-height: 32px;
  color: #333;
  text-align: justify;
  text-justify: inter-ideograph;
}
.legal-content p:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px) {
  body:has(.legal-banner-trigger) {
    padding-top: 56px;
  }
  .legal-page {
    padding: 28px 0 56px;
  }
  .legal-page .value-present-title {
    font-size: 26px;
    padding: 0 32px;
  }
  .legal-content h3 {
    font-size: 17px;
    margin: 22px 0 12px;
  }
}

/* =============================================================================
   手机端补全：顶栏汉堡 / 抽屉菜单 / Hero / 通栏留白 / 首页列表
   不改模板，只覆盖已有结构
   ============================================================================= */
@media (max-width: 991px) {
  html {
    overflow-x: hidden;
  }

  body:has(#hero) .container,
  body:has(.page-news-banner) .container {
    padding-left: 16px;
    padding-right: 16px;
  }

  body:has(#hero) .site-header,
  body:has(.page-news-banner) .site-header {
    overflow: visible;
  }

  body:has(#hero) .header-nav-wrap,
  body:has(.page-news-banner) .header-nav-wrap {
    display: block;
    float: right;
    width: auto;
    max-width: none;
    height: 58px;
    margin: 0;
    overflow: visible;
  }

  body:has(#hero) .main-nav,
  body:has(.page-news-banner) .main-nav,
  body:has(#hero) .header-right,
  body:has(.page-news-banner) .header-right {
    display: none;
  }

  body:has(#hero) .mc_phone_nav,
  body:has(.page-news-banner) .mc_phone_nav {
    display: block;
    position: relative;
    float: right;
    top: auto;
    right: auto;
    width: 24px;
    height: 58px;
  }

  body:has(#hero) .mc_phone_nav .point,
  body:has(#hero) .mc_phone_nav .point::before,
  body:has(#hero) .mc_phone_nav .point::after,
  body:has(.page-news-banner) .mc_phone_nav .point,
  body:has(.page-news-banner) .mc_phone_nav .point::before,
  body:has(.page-news-banner) .mc_phone_nav .point::after {
    background: #fff;
  }

  body:has(#hero) .mc_phone_nav .point.active,
  body:has(.page-news-banner) .mc_phone_nav .point.active {
    background: transparent;
  }

  body:has(#hero) .site-header.is-scrolled .mc_phone_nav .point,
  body:has(#hero) .site-header.is-scrolled .mc_phone_nav .point::before,
  body:has(#hero) .site-header.is-scrolled .mc_phone_nav .point::after,
  body:has(.page-news-banner) .site-header.is-scrolled .mc_phone_nav .point,
  body:has(.page-news-banner) .site-header.is-scrolled .mc_phone_nav .point::before,
  body:has(.page-news-banner) .site-header.is-scrolled .mc_phone_nav .point::after {
    background: #0050be;
  }

  body:has(#hero) .site-header.is-scrolled .mc_phone_nav .point.active,
  body:has(.page-news-banner) .site-header.is-scrolled .mc_phone_nav .point.active {
    background: transparent;
  }

  .mobile {
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    z-index: 2001;
    max-height: calc(100vh - 58px);
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    background: #fff;
    box-shadow: 0 16px 36px rgba(5, 33, 71, 0.16);
  }

  .mobilebox {
    padding: 4px 0 12px;
  }

  .mobilebox .ul1 > li h4 {
    position: relative;
    margin: 0;
    padding: 14px 44px 14px 20px;
    font-size: 16px;
    font-weight: 600;
    line-height: 24px;
    border-bottom: 1px solid #eef2f6;
  }

  .mobilebox .ul1 > li:not(.mc_phnav_hasnosub) h4::after {
    content: "";
    position: absolute;
    right: 20px;
    top: 50%;
    width: 8px;
    height: 8px;
    margin-top: -6px;
    border-right: 2px solid #8a97ab;
    border-bottom: 2px solid #8a97ab;
    transform: rotate(45deg);
  }

  .mobilebox .ul1 > li h4.active::after {
    margin-top: -2px;
    transform: rotate(-135deg);
  }

  .mobilebox .ul1 > li h4 a {
    display: block;
    color: #17283e;
  }

  .mobilebox .ul2 {
    background: #f6f8fc;
  }

  .mobilebox .ul2 li a {
    display: block;
    padding: 12px 20px 12px 32px;
    font-size: 14px;
    line-height: 22px;
    color: #4a5a73;
  }

  .page-article__body table {
    display: block;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .page-article__body iframe,
  .page-article__body video,
  .page-article__figure img,
  .page-article__body img {
    max-width: 100%;
    height: auto;
  }

  .site-footer--full .footer-nav a {
    padding: 6px 12px 6px 0;
    white-space: normal;
  }

  .site-footer--full .footer-nav a:not(:first-child)::before {
    display: none;
  }
}

@media (max-width: 767px) {
  body:has(#hero) .hero-swiper .swiper-slide {
    overflow: hidden;
  }

  body:has(#hero) .hero-swiper.swiper-container-initialized .swiper-slide:not(.swiper-slide-active) .hero-text {
    visibility: hidden;
  }

  body:has(#hero) .hero-text {
    top: auto;
    padding-top: 24px;
    transform: none;
    -webkit-transform: none;
  }

  body:has(#hero) .hero-text h1 {
    font-size: 26px;
    line-height: 1.35;
  }

  body:has(#hero) .hero-accent-line {
    margin: 12px 0 20px;
  }

  body:has(#hero) .hero-tagline {
    font-size: 15px;
    line-height: 1.55;
  }

  body:has(#hero) .hero-desc {
    width: 100%;
    font-size: 14px;
    line-height: 1.7;
  }

  body:has(#hero) .hero-feature-list li {
    font-size: 14px;
    line-height: 1.65;
    margin-bottom: 8px;
  }

  body:has(#hero) .hero-more-link {
    margin-top: 16px;
  }

  body:has(#hero) .hero-actions {
    margin-top: 16px;
  }

  body:has(#hero) .btn-hero-primary,
  body:has(#hero) .btn-hero-outline {
    display: block;
    width: 100%;
    min-width: 0;
    margin: 0 0 10px;
    text-align: center;
  }

  body:has(#hero) .section-hero .hero-inner {
    padding-bottom: 88px;
  }

  body:has(#hero) .news-item-label,
  body:has(#hero) .news-item-title,
  body:has(#hero) .news-item-date,
  body:has(#hero) .release-news-media,
  body:has(#hero) .release-news-title,
  body:has(#hero) .release-news-date {
    float: none;
    display: block;
    width: auto;
    max-width: 100%;
    white-space: normal;
  }

  body:has(#hero) .news-item-title,
  body:has(#hero) .release-news-title,
  body:has(#hero) .release-news-list a.has-media .release-news-title {
    width: auto;
    margin: 4px 0;
  }

  body:has(#hero) .news-item-date,
  body:has(#hero) .release-news-date {
    font-size: 13px;
  }

  body:has(#hero) .case-btn {
    width: calc(50% - 6px);
    margin: 0 3px;
  }

  .page-search-inline-form {
    display: block;
  }

  .page-search-inline-input,
  .page-search-inline-submit {
    display: block;
    width: 100%;
    margin: 0 0 10px;
  }
}

/* =============================================================================
   手机端补全：顶栏汉堡 / 抽屉菜单 / Hero / 通栏留白 / 首页列表
   不改模板，只覆盖已有结构
   ============================================================================= */
@media (max-width: 991px) {
  html {
    overflow-x: hidden;
  }

  body:has(#hero) .container,
  body:has(.page-news-banner) .container {
    padding-left: 16px;
    padding-right: 16px;
  }

  body:has(#hero) .site-header,
  body:has(.page-news-banner) .site-header {
    overflow: visible;
  }

  body:has(#hero) .header-nav-wrap,
  body:has(.page-news-banner) .header-nav-wrap {
    display: block;
    float: right;
    width: auto;
    max-width: none;
    height: 58px;
    margin: 0;
    overflow: visible;
  }

  body:has(#hero) .main-nav,
  body:has(.page-news-banner) .main-nav,
  body:has(#hero) .header-right,
  body:has(.page-news-banner) .header-right {
    display: none;
  }

  body:has(#hero) .mc_phone_nav,
  body:has(.page-news-banner) .mc_phone_nav {
    display: block;
    position: relative;
    float: right;
    top: auto;
    right: auto;
    width: 24px;
    height: 58px;
  }

  body:has(#hero) .mc_phone_nav .point,
  body:has(#hero) .mc_phone_nav .point::before,
  body:has(#hero) .mc_phone_nav .point::after,
  body:has(.page-news-banner) .mc_phone_nav .point,
  body:has(.page-news-banner) .mc_phone_nav .point::before,
  body:has(.page-news-banner) .mc_phone_nav .point::after {
    background: #fff;
  }

  body:has(#hero) .mc_phone_nav .point.active,
  body:has(.page-news-banner) .mc_phone_nav .point.active {
    background: transparent;
  }

  body:has(#hero) .site-header.is-scrolled .mc_phone_nav .point,
  body:has(#hero) .site-header.is-scrolled .mc_phone_nav .point::before,
  body:has(#hero) .site-header.is-scrolled .mc_phone_nav .point::after,
  body:has(.page-news-banner) .site-header.is-scrolled .mc_phone_nav .point,
  body:has(.page-news-banner) .site-header.is-scrolled .mc_phone_nav .point::before,
  body:has(.page-news-banner) .site-header.is-scrolled .mc_phone_nav .point::after {
    background: #0050be;
  }

  body:has(#hero) .site-header.is-scrolled .mc_phone_nav .point.active,
  body:has(.page-news-banner) .site-header.is-scrolled .mc_phone_nav .point.active {
    background: transparent;
  }

  .mobile {
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    z-index: 2001;
    max-height: calc(100vh - 58px);
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    background: #fff;
    box-shadow: 0 16px 36px rgba(5, 33, 71, 0.16);
  }

  .mobilebox {
    padding: 4px 0 12px;
  }

  .mobilebox .ul1 > li h4 {
    position: relative;
    margin: 0;
    padding: 14px 44px 14px 20px;
    font-size: 16px;
    font-weight: 600;
    line-height: 24px;
    border-bottom: 1px solid #eef2f6;
  }

  .mobilebox .ul1 > li:not(.mc_phnav_hasnosub) h4::after {
    content: "";
    position: absolute;
    right: 20px;
    top: 50%;
    width: 8px;
    height: 8px;
    margin-top: -6px;
    border-right: 2px solid #8a97ab;
    border-bottom: 2px solid #8a97ab;
    transform: rotate(45deg);
  }

  .mobilebox .ul1 > li h4.active::after {
    margin-top: -2px;
    transform: rotate(-135deg);
  }

  .mobilebox .ul1 > li h4 a {
    display: block;
    color: #17283e;
  }

  .mobilebox .ul2 {
    background: #f6f8fc;
  }

  .mobilebox .ul2 li a {
    display: block;
    padding: 12px 20px 12px 32px;
    font-size: 14px;
    line-height: 22px;
    color: #4a5a73;
  }

  .page-article__body table {
    display: block;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .page-article__body iframe,
  .page-article__body video,
  .page-article__figure img,
  .page-article__body img {
    max-width: 100%;
    height: auto;
  }

  .site-footer--full .footer-nav a {
    padding: 6px 12px 6px 0;
    white-space: normal;
  }

  .site-footer--full .footer-nav a:not(:first-child)::before {
    display: none;
  }
}

@media (max-width: 767px) {
  body:has(#hero) .hero-swiper .swiper-slide {
    overflow: hidden;
  }

  body:has(#hero) .hero-swiper.swiper-container-initialized .swiper-slide:not(.swiper-slide-active) .hero-text {
    visibility: hidden;
  }

  body:has(#hero) .hero-text {
    top: auto;
    padding-top: 24px;
    transform: none;
    -webkit-transform: none;
  }

  body:has(#hero) .hero-text h1 {
    font-size: 26px;
    line-height: 1.35;
  }

  body:has(#hero) .hero-accent-line {
    margin: 12px 0 20px;
  }

  body:has(#hero) .hero-tagline {
    font-size: 15px;
    line-height: 1.55;
  }

  body:has(#hero) .hero-desc {
    width: 100%;
    font-size: 14px;
    line-height: 1.7;
  }

  body:has(#hero) .hero-feature-list li {
    font-size: 14px;
    line-height: 1.65;
    margin-bottom: 8px;
  }

  body:has(#hero) .hero-more-link {
    margin-top: 16px;
  }

  body:has(#hero) .hero-actions {
    margin-top: 16px;
  }

  body:has(#hero) .btn-hero-primary,
  body:has(#hero) .btn-hero-outline {
    display: block;
    width: 100%;
    min-width: 0;
    margin: 0 0 10px;
    text-align: center;
  }

  body:has(#hero) .section-hero .hero-inner {
    padding-bottom: 88px;
  }

  body:has(#hero) .news-item-label,
  body:has(#hero) .news-item-title,
  body:has(#hero) .news-item-date,
  body:has(#hero) .release-news-media,
  body:has(#hero) .release-news-title,
  body:has(#hero) .release-news-date {
    float: none;
    display: block;
    width: auto;
    max-width: 100%;
    white-space: normal;
  }

  body:has(#hero) .news-item-title,
  body:has(#hero) .release-news-title,
  body:has(#hero) .release-news-list a.has-media .release-news-title {
    width: auto;
    margin: 4px 0;
  }

  body:has(#hero) .news-item-date,
  body:has(#hero) .release-news-date {
    font-size: 13px;
  }

  body:has(#hero) .case-btn {
    width: calc(50% - 6px);
    margin: 0 3px;
  }

  .page-search-inline-form {
    display: block;
  }

  .page-search-inline-input,
  .page-search-inline-submit {
    display: block;
    width: 100%;
    margin: 0 0 10px;
  }
}

@media (max-width: 767px) {
  body:has(#hero) .section-cases .section-header p {
    padding: 0 8px;
  }

  body:has(#hero) .case-swiper-wrap {
    margin: 0 -4px;
  }

  body:has(#hero) .case-swiper-wrap .swiper-slide {
    padding: 4px 4px 8px;
  }

  body:has(#hero) .case-card-media {
    height: 168px;
  }

  body:has(#hero) .case-card-body {
    padding: 16px 16px 18px;
  }

  body:has(#hero) .case-card h3 {
    height: auto;
    max-height: 48px;
    font-size: 16px;
    line-height: 24px;
    white-space: normal;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }

  body:has(#hero) .case-card p {
    margin-bottom: 14px;
    font-size: 13px;
    line-height: 22px;
    height: 44px;
  }

  body:has(#hero) .case-actions {
    margin: 0;
  }

  body:has(#hero) .case-btn {
    height: 40px;
    line-height: 38px;
    font-size: 13px;
    border-radius: 8px;
  }

  body:has(#hero) .case-swiper-wrap .swiper-button-prev,
  body:has(#hero) .case-swiper-wrap .swiper-button-next {
    display: none;
  }
}

/* =============================================================================
   手机端统一补丁（≤767px）— 字号 / 列表 / CTA / 页脚 / 标签同行
   ============================================================================= */
@media (max-width: 767px) {
  body:has(#hero) .release-news-list a,
  body:has(#hero) .news-latest-list a {
    display: block;
    overflow: hidden;
  }

  body:has(#hero) .release-news-media,
  body:has(#hero) .news-item-label {
    float: left;
    display: inline-block;
    margin: 0 8px 0 0;
  }

  body:has(#hero) .release-news-title,
  body:has(#hero) .news-item-title {
    display: block;
    overflow: hidden;
    float: none;
    width: auto !important;
    max-width: 100%;
    margin: 0 0 6px;
    white-space: normal;
    font-size: 16px;
  }

  body:has(#hero) .release-news-title {
    line-height: 24px;
  }

  body:has(#hero) .news-item-title {
    line-height: 28px;
  }

  body:has(#hero) .release-news-list a.has-media .release-news-title {
    width: auto !important;
  }

  body:has(#hero) .release-news-date,
  body:has(#hero) .news-item-date {
    clear: both;
    float: none;
    display: block;
    text-align: left;
    font-size: 14px;
    line-height: 24px;
  }

  body:has(#hero) .release-card-title {
    font-size: 16px;
    line-height: 28px;
  }

  .section-cta {
    height: auto;
    min-height: 0;
    padding: 36px 16px 40px;
    overflow: visible;
  }

  .section-cta h2 {
    font-size: 22px;
    line-height: 1.35;
    margin-bottom: 14px;
  }

  .section-cta p {
    font-size: 18px;
    line-height: 1.4;
    margin-bottom: 18px;
  }

  .section-cta .cta-btn,
  .cta-btn {
    font-size: 15px;
  }

  .site-footer--full .footer-bottom,
  .site-footer--full .footer-bottom span,
  .site-footer--full .footer-bottom em,
  .site-footer--full .footer-bottom a {
    font-size: 14px;
    line-height: 24px;
  }

  .site-footer--full .footer-section-title {
    font-size: 16px;
  }

  .site-footer--full .footer-bottom em {
    margin: 0 10px;
  }

  .site-footer--full .footer-bottom a.icon-ga {
    padding-left: 18px;
    background-size: 14px auto;
    background-position: left center;
  }

  .site-footer--full .footer-bottom a {
    display: inline-block;
    margin-top: 4px;
  }

  .section-header h2,
  body:has(#hero) .section-header h2 {
    font-size: 22px;
    margin-bottom: 12px;
  }

  .section-header p,
  body:has(#hero) .section-header p {
    font-size: 14px;
    line-height: 24px;
  }

  .page-news-banner__sub {
    line-height: 24px;
  }

  .page-news-wrap .news-list .news-list-item__title {
    font-size: 16px;
    line-height: 24px;
    white-space: normal;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }

  .page-news-wrap .news-list .news-list-item__summary {
    font-size: 14px;
    line-height: 24px;
  }

  .solution-list-card__title,
  .solution-list-card__name,
  .solution-list-card h3,
  .xceco-info-list a,
  .xceco-thinktank-feed a {
    font-size: 16px;
    line-height: 24px;
  }

  .solution-list-card__desc,
  .solution-list-card p,
  .xceco-info-list p,
  .xceco-thinktank-feed p {
    font-size: 14px;
    line-height: 24px;
  }

  .value-present-intro,
  .value-present-intro.value-present-intro--solo {
    margin-bottom: 24px;
  }

  .value-present-page,
  .xcabout-section,
  .xceco-section,
  .section {
    padding-top: 40px;
    padding-bottom: 40px;
  }

  .xcabout-section-head {
    margin-bottom: 40px;
  }

  .xcabout-section--culture {
    padding-top: 40px;
    padding-bottom: 40px;
  }

  .xcabout-develop-list {
    white-space: normal;
    margin-top: 0;
  }

  .xcabout-develop-list li,
  .xcabout-develop-list.act li,
  .xcabout-develop-list li.on {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 0 14px;
    border-radius: 12px;
    overflow: hidden;
  }

  .xcabout-develop-list li .develop-bg {
    height: 132px;
  }

  .xcabout-develop-list li .develop-textbox {
    position: static;
    height: auto;
    min-height: 0;
  }

  .xcabout-develop-list li .develop-brief {
    background: rgba(0, 80, 190, 0.9);
  }

  .xcabout-develop-list li .develop-textbox > .develop-tit {
    display: none;
  }

  .xcabout-develop-list li .develop-brief {
    position: static;
    transform: none;
    opacity: 1;
    pointer-events: auto;
    width: 100%;
    height: auto;
    padding: 14px 16px 16px;
    overflow: visible;
    box-sizing: border-box;
  }

  .xcabout-develop-list li .develop-brief .develop-tit {
    position: static;
    transform: none;
    top: auto;
    left: auto;
    margin: 0 0 8px;
    text-align: left;
  }

  .xcabout-develop-list li .develop-brief h2 {
    font-size: 18px;
    line-height: 26px;
    color: #fff;
  }

  .xcabout-develop-list li .develop-info p,
  .xcabout-develop-list li .develop-info p strong {
    color: rgba(255, 255, 255, 0.95);
    font-size: 14px;
    line-height: 24px;
  }

  .xcabout-activity-swiper-wrap {
    padding: 0 32px;
  }

  .xcabout-activity-prev.swiper-button-prev {
    left: 0;
    z-index: 3;
  }

  .xcabout-activity-next.swiper-button-next {
    right: 0;
    z-index: 3;
  }

  .xcabout-activity-card__body h3 {
    font-size: 16px;
    line-height: 24px;
    white-space: normal;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }

  .xcabout-certify {
    padding-left: 36px;
    padding-right: 36px;
  }

  .xcabout-certify .swiper-slide {
    width: 100%;
    transform: none !important;
    opacity: 1 !important;
  }

  .xcabout-certify .swiper-slide .imgbox {
    height: auto;
    max-height: 220px;
  }

  .xcabout-certify .swiper-slide img {
    height: auto;
    max-height: 220px;
    object-fit: contain;
  }

  .xcabout-certify .swiper-button-prev,
  .xcabout-certify .swiper-button-next {
    width: 32px;
    height: 32px;
    margin-top: -16px;
    background-size: 10px auto;
  }

  .solution-filter-row {
    overflow: visible;
    line-height: normal;
    font-size: 14px;
  }

  .solution-cat-tabs,
  .solution-rail {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
    max-height: none;
  }

  .solution-cat-tabs::-webkit-scrollbar,
  .solution-rail::-webkit-scrollbar {
    display: none;
  }

  .solution-cat-tab,
  .solution-rail-tag {
    float: none;
    display: inline-block;
    vertical-align: top;
  }
}
