.index .hero {
  position: relative;
  min-height: 90vh;
  display: flex;
  align-items: center;
  overflow: hidden;
  background-color: #1a1a1a;
  padding: 1.28rem 0 .80rem
}

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

.index .hero .hero-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center
}

.index .hero .hero-overlay {
  position: absolute;
  inset: 0;
  background: rgba(26, 26, 26, .10)
}

.index .hero .hero-gradient {
  position: absolute;
  inset: 0;
  width: 66.666%;
  background: linear-gradient(to right, rgba(26, 26, 26, .95) 0%, rgba(26, 26, 26, .80) 50%, transparent 100%)
}

.index .hero .hero-gradient-bottom {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(26, 26, 26, .60) 0%, transparent 50%, transparent 100%);
  opacity: .5
}

.index .hero .hero-container {
  max-width: 16rem;
  margin: 0 auto;
  padding: 0 .16rem;
  position: relative;
  z-index: 10;
  width: 100%
}

.index .hero .hero-container .hero-content {
  max-width: 7.68rem
}

.index .hero .hero-container .hero-content .hero-badge {
  display: inline-flex;
  align-items: center;
  gap: .12rem;
  margin-bottom: .24rem;
  padding: .03rem .12rem;
  background: rgba(255, 255, 255, .10);
  border: 1px solid rgba(255, 255, 255, .10);
  border-radius: 2px;
  backdrop-filter: blur(4px);
  color: #e31b23;
  text-transform: uppercase;
  letter-spacing: .03rem;
  font-weight: 800;
  line-height: 1
}

.index .hero .hero-container .hero-content .hero-title {
  color: #fff;
  text-transform: uppercase;
  letter-spacing: -.04em;
  margin-bottom: .24rem;
  line-height: .9;
  font-weight: 900
}

.index .hero .hero-container .hero-content .hero-title .hero-title-highlight {
  color: #e31b23;
  line-height: 1.25;
}

.index .hero .hero-container .hero-content .hero-desc {
  color: #d1d5db;
  margin-bottom: .32rem;
  max-width: 6.72rem;
  line-height: 1.625;
  font-weight: 300
}

.index .hero .hero-container .hero-content .hero-search {
  display: flex;
  width: 100%;
  max-width: 5.76rem;
  margin-bottom: .40rem
}

.index .hero .hero-container .hero-content .hero-search .hero-search-input {
  position: relative;
  flex: 1;
  min-width: 0
}

.index .hero .hero-container .hero-content .hero-search .hero-search-input .hero-search-icon {
  position: absolute;
  left: .16rem;
  top: 50%;
  transform: translateY(-50%);
  width: .20rem;
  height: .20rem;
  color: #9ca3af;
  pointer-events: none;
  z-index: 1;
}

.index .hero .hero-container .hero-content .hero-search .hero-search-input input {
  display: block;
  width: 100%;
  padding: .16rem .16rem .16rem .48rem;
  background: rgba(255, 255, 255, .10);
  border: 1px solid rgba(255, 255, 255, .20);
  color: #fff;
  font-family: inherit;
  outline: none;
  transition: all .2s;
  box-shadow: inset 0 2px 4px rgba(0, 0, 0, .10);
  backdrop-filter: blur(4px)
}

.index .hero .hero-container .hero-content .hero-search .hero-search-input input::placeholder {
  color: #9ca3af
}

.index .hero .hero-container .hero-content .hero-search .hero-search-input input:focus {
  background: rgba(255, 255, 255, .20);
  border-color: #e31b23;
  box-shadow: 0 0 0 2px rgba(227, 27, 35, .30), inset 0 2px 4px rgba(0, 0, 0, .10)
}

.index .hero .hero-container .hero-content .hero-search .hero-search-btn {
  flex-shrink: 0;
  padding: .16rem .24rem;
  background: #e31b23;
  color: #fff;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .01rem;
  border: none;
  cursor: pointer;
  transition: background .2s;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, .10), 0 2px 4px -2px rgba(0, 0, 0, .10)
}

.index .hero .hero-container .hero-content .hero-search .hero-search-btn:hover {
  background: #c4161d
}

.index .hero .hero-container .hero-content .hero-btns {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: .16rem
}

.index .hero .hero-container .hero-content .hero-btns .hero-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .16rem .32rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .01rem;
  text-decoration: none;
  transition: all .2s;
  white-space: nowrap
}

.index .hero .hero-container .hero-content .hero-btns .hero-btn.hero-btn-primary {
  background: #e31b23;
  color: #fff;
  box-shadow: 0 20px 25px -5px rgba(227, 27, 35, .20), 0 8px 10px -6px rgba(227, 27, 35, .20)
}

.index .hero .hero-container .hero-content .hero-btns .hero-btn.hero-btn-primary:hover {
  background: #c4161d
}

.index .hero .hero-container .hero-content .hero-btns .hero-btn.hero-btn-primary svg {
  width: .20rem;
  height: .20rem;
  margin-left: .08rem;
  transition: transform .2s
}

.index .hero .hero-container .hero-content .hero-btns .hero-btn.hero-btn-primary:hover svg {
  transform: translateX(2px)
}

.index .hero .hero-container .hero-content .hero-btns .hero-btn.hero-btn-secondary {
  background: rgba(255, 255, 255, .05);
  border: 1px solid rgba(255, 255, 255, .20);
  color: #fff;
  backdrop-filter: blur(4px)
}

.index .hero .hero-container .hero-content .hero-btns .hero-btn.hero-btn-secondary:hover {
  background: rgba(255, 255, 255, .10)
}

.index .hero .hero-container .hero-content .hero-btns .hero-btn.hero-btn-video {
  background: transparent;
  color: #fff;
  display: inline-flex;
  align-items: center;
  gap: .12rem;
  padding: .16rem .24rem
}

.index .hero .hero-container .hero-content .hero-btns .hero-btn.hero-btn-video:hover {
  color: #e31b23
}

.index .hero .hero-container .hero-content .hero-btns .hero-btn.hero-btn-video .hero-btn-play {
  width: .40rem;
  height: .40rem;
  border-radius: 50%;
  border: 2px solid rgba(255, 255, 255, .30);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: border-color .2s;
  flex-shrink: 0
}

.index .hero .hero-container .hero-content .hero-btns .hero-btn.hero-btn-video:hover .hero-btn-play {
  border-color: #e31b23
}

.index .hero .hero-container .hero-content .hero-btns .hero-btn.hero-btn-video .hero-btn-play svg {
  width: .16rem;
  height: .16rem;
  margin-left: 2px
}

.index .hero .hero-sidebar {
  display: flex;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: .80rem;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-left: 1px solid rgba(255, 255, 255, .20);
  z-index: 10;
  background: rgba(0, 0, 0, .50);
  backdrop-filter: blur(4px);
  padding-top: 1.20rem
}

.index .hero .hero-sidebar span {
  color: #fff;
  text-transform: uppercase;
  letter-spacing: .03rem;
  font-weight: 900;
  /*transform: rotate(90deg);*/
  writing-mode: vertical-lr;
  text-orientation: upright;
  white-space: nowrap;
  text-shadow: 0 2px 4px rgba(0, 0, 0, .30)
}

.index .about {
  padding: .96rem 0;
  background: #fff
}

.index .about .about-container {
  max-width: 12.80rem;
  margin: 0 auto;
  padding: 0 .32rem;
  width: 100%
}

.index .about .about-container .about-grid {
  display: flex;
  flex-direction: row;
  gap: .64rem;
  align-items: center
}

.index .about .about-container .about-grid .about-content,
.index .about .about-container .about-grid .about-features {
  width: 50%
}

.index .about .about-container .about-grid .about-content .about-badge {
  color: #e31b23;
  font-weight: 900;
  letter-spacing: .02rem;
  text-transform: uppercase;
  margin-bottom: .12rem
}

.index .about .about-container .about-grid .about-content .about-title {
  color: #0f172a;
  font-weight: 900;
  letter-spacing: -.025em;
  margin-bottom: .24rem;
  line-height: 1.25;
}

.index .about .about-container .about-grid .about-content .about-desc {
  color: #4b5563;
  line-height: 1.625;
  margin-bottom: .24rem
}

.index .about .about-container .about-grid .about-content .about-desc.about-desc-last {
  margin-bottom: .32rem
}

.index .about .about-container .about-grid .about-content .about-btns {
  display: flex;
  flex-direction: row;
  gap: .16rem;
  flex-wrap: wrap
}

.index .about .about-container .about-grid .about-content .about-btns .about-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .12rem .24rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .01rem;
  text-decoration: none;
  transition: all .2s;
  white-space: nowrap
}

.index .about .about-container .about-grid .about-content .about-btns .about-btn svg {
  width: .16rem;
  height: .16rem;
  fill: currentColor;
  margin-right: .08rem
}

.index .about .about-container .about-grid .about-content .about-btns .about-btn.about-btn-dark {
  background: #1a1a1a;
  color: #fff
}

.index .about .about-container .about-grid .about-content .about-btns .about-btn.about-btn-dark:hover {
  background: #000
}

.index .about .about-container .about-grid .about-content .about-btns .about-btn.about-btn-outline {
  background: transparent;
  border: 2px solid #1a1a1a;
  color: #1a1a1a
}

.index .about .about-container .about-grid .about-content .about-btns .about-btn.about-btn-outline:hover {
  background: #1a1a1a;
  color: #fff
}

.index .about .about-container .about-grid .about-content .about-btns .about-btn.about-btn-red {
  background: #e31b23;
  color: #fff;
  gap: .08rem
}

.index .about .about-container .about-grid .about-content .about-btns .about-btn.about-btn-red:hover {
  background: #c4161d
}

.index .about .about-container .about-grid .about-features .about-feature {
  display: flex;
  gap: .24rem
}

.index .about .about-container .about-grid .about-features .about-feature+.about-feature {
  margin-top: .32rem
}

.index .about .about-container .about-grid .about-features .about-feature .about-feature-icon {
  flex-shrink: 0;
  width: .48rem;
  height: .48rem;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  border: 1px solid #e5e7eb;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .05)
}

.index .about .about-container .about-grid .about-features .about-feature .about-feature-icon svg {
  width: .24rem;
  height: .24rem;
  color: #e31b23
}

.index .about .about-container .about-grid .about-features .about-feature .about-feature-title {
  font-weight: 700;
  color: #0f172a;
  margin-bottom: .08rem
}

.index .about .about-container .about-grid .about-features .about-feature .about-feature-desc {
  color: #4b5563;
  line-height: 1.625
}

.index .leadership {
  position: relative;
  padding: .96rem 0 1.92rem;
  background: #1a1a1a;
  overflow: hidden
}

.index .leadership .leadership-glow-top {
  position: absolute;
  top: 0;
  right: 0;
  width: 3.84rem;
  height: 3.84rem;
  border-radius: 50%;
  background: rgba(255, 255, 255, .05);
  filter: blur(64px);
  pointer-events: none;
  transform: translate(12%, -12%)
}

.index .leadership .leadership-glow-bottom {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 3.20rem;
  height: 3.20rem;
  border-radius: 50%;
  background: rgba(227, 27, 35, .10);
  filter: blur(64px);
  pointer-events: none;
  transform: translate(-12%, 12%)
}

.index .leadership .leadership-container {
  max-width: 14rem;
  margin: 0 auto;
  padding: 0 .32rem;
  position: relative;
  z-index: 10;
  width: 100%
}

.index .leadership .leadership-container .leadership-grid {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: .96rem
}

.index .leadership .leadership-container .leadership-grid .leadership-portrait {
  width: 33.333%;
  max-width: 3.84rem;
  position: relative
}

.index .leadership .leadership-container .leadership-grid .leadership-portrait .leadership-frame {
  position: relative;
  z-index: 10;
  border: 1px solid rgba(255, 255, 255, .20);
  padding: .08rem;
  background: rgba(255, 255, 255, .05);
  aspect-ratio: 3/4;
  
}

.index .leadership .leadership-container .leadership-grid .leadership-portrait .leadership-frame .leadership-frame-inner {
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, .05);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.index .leadership .leadership-container .leadership-grid .leadership-portrait .leadership-frame .leadership-frame-inner img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: -1;
    transform: translate(-50%,-50%);
    
}

.index .leadership .leadership-container .leadership-grid .leadership-portrait .leadership-frame .leadership-frame-inner .leadership-placeholder {
  color: rgba(255, 255, 255, .40);
  text-transform: uppercase;
  letter-spacing: .1em
}

.index .leadership .leadership-container .leadership-grid .leadership-portrait .leadership-frame .leadership-frame-overlay {
  position: absolute;
  inset: 0;
  background: rgba(26, 26, 26, .20);
  mix-blend-mode: multiply
}

.index .leadership .leadership-container .leadership-grid .leadership-portrait .leadership-frame-border {
  position: absolute;
  bottom: -.24rem;
  right: -.24rem;
  width: 100%;
  height: 100%;
  border: 2px solid rgba(227, 27, 35, .50);
  z-index: 0
}

.index .leadership .leadership-container .leadership-grid .leadership-content {
  width: 66.666%
}

.index .leadership .leadership-container .leadership-grid .leadership-content .leadership-header {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  justify-content: space-between;
  border-bottom: 1px solid rgba(255, 255, 255, .10);
  padding-bottom: .32rem;
  margin-bottom: .32rem;
  gap: .24rem
}

.index .leadership .leadership-container .leadership-grid .leadership-content .leadership-header .leadership-badge-wrap {
  display: flex;
  align-items: center;
  gap: .12rem;
  margin-bottom: .16rem
}

.index .leadership .leadership-container .leadership-grid .leadership-content .leadership-header .leadership-badge-wrap .leadership-quote-icon {
  width: .32rem;
  height: .32rem;
  color: rgba(227, 27, 35, .60)
}

.index .leadership .leadership-container .leadership-grid .leadership-content .leadership-header .leadership-badge-wrap .leadership-badge {
  color: #e31b23;
  font-weight: 900;
  letter-spacing: .02rem;
  text-transform: uppercase
}

.index .leadership .leadership-container .leadership-grid .leadership-content .leadership-header .leadership-name {
  color: #fff;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .03rem;
  margin-bottom: .08rem
}

.index .leadership .leadership-container .leadership-grid .leadership-content .leadership-header .leadership-role {
  color: #e31b23;
  font-weight: 700;
  letter-spacing: .03rem;
  text-transform: uppercase
}

.index .leadership .leadership-container .leadership-grid .leadership-content .leadership-heading {
  color: #fff;
  font-weight: 300;
  letter-spacing: -.025em;
  margin-bottom: .32rem;
  line-height: 1.25
}

.index .leadership .leadership-container .leadership-grid .leadership-content .leadership-text {
  color: #d1d5db;
  line-height: 1.625;
  font-weight: 300;
  margin-bottom: .24rem
}

.index .leadership .leadership-container .leadership-grid .leadership-content .leadership-text p+p {
  margin-top: .24rem
}

.index .leadership .leadership-container .leadership-grid .leadership-content .leadership-text strong {
  color: #fff;
  font-weight: 500
}

.index .pillars {
  position: relative;
  z-index: 20;
  width: 100%;
  max-width: 16rem;
  margin: -.96rem auto .96rem;
  padding: 0 .48rem
}

.index .pillars .pillars-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  background: #fff;
  box-shadow: 0 25px 25px rgba(0, 0, 0, .15);
  overflow: hidden;
  border: 1px solid #f3f4f6
}

.index .pillars .pillars-grid .pillar-card {
  padding: .56rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  border-bottom: 0;
  border-right: 1px solid #e5e7eb
}

.index .pillars .pillars-grid .pillar-card.pillar-card-last {
  border-right: 0
}

.index .pillars .pillars-grid .pillar-card .pillar-number {
  font-weight: 900;
  color: #e31b23;
  margin-bottom: .16rem
}

.index .pillars .pillars-grid .pillar-card .pillar-title {
  font-weight: 900;
  text-transform: uppercase;
  color: #1a1a1a;
  margin-bottom: .08rem;
  padding-right: .16rem;
  line-height: 1.25
}

.index .pillars .pillars-grid .pillar-card .pillar-subtitle {
  font-weight: 600;
  color: rgba(227, 27, 35, .90);
  text-transform: uppercase;
  letter-spacing: .1em;
  margin-bottom: .24rem
}

.index .pillars .pillars-grid .pillar-card .pillar-list {
  list-style: none;
  margin: 0;
  padding: 0
}

.index .pillars .pillars-grid .pillar-card .pillar-list li {
  position: relative;
  padding-left: .20rem;
  color: #4b5563;
  line-height: 1.625
}

.index .pillars .pillars-grid .pillar-card .pillar-list li+li {
  margin-top: .20rem
}

.index .pillars .pillars-grid .pillar-card .pillar-list li .pillar-bullet {
  position: absolute;
  left: 0;
  top: 0;
  color: #e31b23;
  line-height: 1
}

.index .pillars .pillars-grid .pillar-card .pillar-list li strong {
  color: #1a1a1a;
  font-weight: 600
}

.index .timeline {
  padding: .96rem 0;
  background: #fff;
  position: relative;
  overflow: hidden
}

.index .timeline .timeline-container {
  max-width: 14rem;
  margin: 0 auto;
  padding: 0 .32rem;
  position: relative;
  z-index: 10;
  width: 100%
}

.index .timeline .timeline-container .timeline-header {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: .64rem;
  gap: .32rem;
  text-align: left
}

.index .timeline .timeline-container .timeline-header>div {
  max-width: 7.68rem
}

.index .timeline .timeline-container .timeline-header .timeline-badge {
  color: #e31b23;
  font-weight: 900;
  letter-spacing: .02rem;
  text-transform: uppercase;
  margin-bottom: .12rem
}

.index .timeline .timeline-container .timeline-header .timeline-title {
  color: #0f172a;
  font-weight: 900;
  letter-spacing: -.025em;
  margin-bottom: .16rem
}

.index .timeline .timeline-container .timeline-header .timeline-desc {
  color: #4b5563;
  line-height: 1.625
}

.index .timeline .timeline-container .timeline-header .timeline-nav {
  display: flex;
  gap: .16rem;
  margin: 0
}

.index .timeline .timeline-container .timeline-header .timeline-nav .timeline-btn {
  width: .48rem;
  height: .48rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #e5e7eb;
  border-radius: 50%;
  color: #475569;
  background: none;
  cursor: pointer;
  transition: border-color .2s, color .2s
}

.index .timeline .timeline-container .timeline-header .timeline-nav .timeline-btn:hover {
  border-color: #e31b23;
  color: #e31b23
}

.index .timeline .timeline-container .timeline-header .timeline-nav .timeline-btn svg,
.index .timeline .timeline-container .timeline-header .timeline-nav .timeline-btn img {
  width: .24rem;
  height: .24rem
}

.index .timeline .timeline-container .timeline-track {
  position: relative;
  overflow: hidden;
  margin-top: .40rem
}

.index .timeline .timeline-container .timeline-track .timeline-track-line {
  position: absolute;
  top: 1.8rem;
  left: 0;
  height: .03rem;
  background: #e5e7eb;
  z-index: 0;
  transform: translateY(-50%)
}

.index .timeline .timeline-container .timeline-track .timeline-swiper {
  position: relative;
  overflow: hidden;
  padding: 0 9% 0 0;
}

.index .timeline .timeline-container .timeline-track .timeline-swiper .swiper-wrapper {
  position: relative
}

.index .timeline .timeline-container .timeline-track .timeline-swiper .swiper-wrapper .milestone-slide {
  width: 2.4rem;
  height: 3.6rem;
  flex-shrink: 0
}

.index .timeline .timeline-container .timeline-track .timeline-swiper .swiper-wrapper .milestone-slide .milestone-card {
  position: relative;
  width: 2.4rem;
  height: 3.6rem
}

.index .timeline .timeline-container .timeline-track .timeline-swiper .swiper-wrapper .milestone-slide .milestone-card .milestone-line {
  position: absolute;
  top: 1.8rem;
  left: 1.2rem;
  width: 2.4rem;
  height: .03rem;
  z-index: 2;
  transform: translateY(-50%)
}

.index .timeline .timeline-container .timeline-track .timeline-swiper .swiper-wrapper .milestone-slide .milestone-card .milestone-line-gradient {
  position: absolute;
  top: 1.8rem;
  right: 1.2rem;
  width: 50vw;
  height: .03rem;
  z-index: 2;
  transform: translateY(-50%);
  pointer-events: none;
  opacity: .4
}

.index .timeline .timeline-container .timeline-track .timeline-swiper .swiper-wrapper .milestone-slide .milestone-card .milestone-dot {
  position: absolute;
  top: 1.8rem;
  left: 1.2rem;
  width: .2rem;
  height: .2rem;
  border-radius: 50%;
  background: #fff;
  border: .03rem solid;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translate(-50%, -50%)
}

.index .timeline .timeline-container .timeline-track .timeline-swiper .swiper-wrapper .milestone-slide .milestone-card .milestone-dot .milestone-dot-inner {
  width: .12rem;
  height: .12rem;
  border-radius: 50%
}

.index .timeline .timeline-container .timeline-track .timeline-swiper .swiper-wrapper .milestone-slide .milestone-card .milestone-vline {
  position: absolute;
  left: 1.2rem;
  width: .02rem;
  height: 1.14rem;
  z-index: 0;
  opacity: .4;
  transform: translateX(-50%)
}

.index .timeline .timeline-container .timeline-track .timeline-swiper .swiper-wrapper .milestone-slide .milestone-card .milestone-vline.vline-up {
  top: .66rem
}

.index .timeline .timeline-container .timeline-track .timeline-swiper .swiper-wrapper .milestone-slide .milestone-card .milestone-vline.vline-down {
  top: 1.8rem
}

.index .timeline .timeline-container .timeline-track .timeline-swiper .swiper-wrapper .milestone-slide .milestone-card .milestone-icon {
  position: absolute;
  left: 1.2rem;
  width: .56rem;
  height: .56rem;
  border-radius: 50%;
  border: .02rem solid;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  z-index: 20;
  transform: translateX(-50%);
  transition: transform .3s
}

.index .timeline .timeline-container .timeline-track .timeline-swiper .swiper-wrapper .milestone-slide .milestone-card .milestone-icon:hover {
  transform: translateX(-50%) scale(1.1)
}

.index .timeline .timeline-container .timeline-track .timeline-swiper .swiper-wrapper .milestone-slide .milestone-card .milestone-icon svg {
  width: .24rem;
  height: .24rem;
  position: relative;
  z-index: 10
}

.index .timeline .timeline-container .timeline-track .timeline-swiper .swiper-wrapper .milestone-slide .milestone-card .milestone-icon .milestone-icon-bg {
  position: absolute;
  inset: .03rem;
  border-radius: 50%;
  opacity: .10
}

.index .timeline .timeline-container .timeline-track .timeline-swiper .swiper-wrapper .milestone-slide .milestone-card .milestone-icon.icon-top {
  top: .10rem
}

.index .timeline .timeline-container .timeline-track .timeline-swiper .swiper-wrapper .milestone-slide .milestone-card .milestone-icon.icon-bottom {
  top: 2.94rem
}

.index .timeline .timeline-container .timeline-track .timeline-swiper .swiper-wrapper .milestone-slide .milestone-card .milestone-year {
  position: absolute;
  width: 1.1rem;
  height: 1.14rem;
  font-weight: 900;
  letter-spacing: -.05em;
  color: #334155;
  opacity: .9
}

.index .timeline .timeline-container .timeline-track .timeline-swiper .swiper-wrapper .milestone-slide .milestone-card .milestone-year.year-top {
  top: .66rem;
  left: 0;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  padding-bottom: .12rem
}

.index .timeline .timeline-container .timeline-track .timeline-swiper .swiper-wrapper .milestone-slide .milestone-card .milestone-year.year-bottom {
  top: 1.8rem;
  left: 0;
  writing-mode: vertical-rl;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  padding-top: .12rem
}

.index .timeline .timeline-container .timeline-track .timeline-swiper .swiper-wrapper .milestone-slide .milestone-card .milestone-info {
  position: absolute;
  left: 1.6rem;
  width: 2rem;
  height: 1.14rem;
  overflow: visible
}

.index .timeline .timeline-container .timeline-track .timeline-swiper .swiper-wrapper .milestone-slide .milestone-card .milestone-info.info-top {
  top: .6rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding-bottom: .02rem
}

.index .timeline .timeline-container .timeline-track .timeline-swiper .swiper-wrapper .milestone-slide .milestone-card .milestone-info.info-bottom {
  top: 1.86rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  padding-top: .02rem
}

.index .timeline .timeline-container .timeline-track .timeline-swiper .swiper-wrapper .milestone-slide .milestone-card .milestone-info h4 {
  font-weight: 700;
  line-height: 1.25;
  margin-bottom: .08rem
}

.index .timeline .timeline-container .timeline-track .timeline-swiper .swiper-wrapper .milestone-slide .milestone-card .milestone-info p {
  color: #64748b;
  line-height: 1.375;
  word-break: break-word
}

.index .products {
  padding: .96rem 0;
  background: #f8fafc
}

.index .products .products-container {
  max-width: 14rem;
  margin: 0 auto;
  padding: 0 .32rem;
  width: 100%
}

.index .products .products-container .products-header {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: .64rem;
  gap: .24rem
}

.index .products .products-container .products-header>div {
  max-width: 6.72rem
}

.index .products .products-container .products-header .products-badge {
  color: #e31b23;
  font-weight: 800;
  letter-spacing: .03rem;
  text-transform: uppercase;
  margin-bottom: .12rem;
  display: flex;
  align-items: center;
  gap: .08rem
}

.index .products .products-container .products-header .products-title {
  font-weight: 900;
  text-transform: uppercase;
  color: #1a1a1a;
  letter-spacing: -.01rem
}

.index .products .products-container .products-header .products-btn {
  display: flex;
  align-items: center;
  padding: .12rem .24rem;
  border: 2px solid #1a1a1a;
  color: #1a1a1a;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .01rem;
  text-decoration: none;
  transition: background .2s, color .2s
}

.index .products .products-container .products-header .products-btn:hover {
  background: #1a1a1a;
  color: #fff
}

.index .products .products-container .products-header .products-btn svg {
  width: .16rem;
  height: .16rem;
  margin-left: .08rem;
  transition: transform .2s
}

.index .products .products-container .products-header .products-btn:hover svg {
  transform: translateX(2px)
}

.index .products .products-container .products-swiper {
  overflow: hidden
}

.index .products .products-container .products-swiper .swiper-slide {
  height: auto;
  display: flex
}

.index .products .products-container .products-swiper .product-card {
  background: #fff;
  border: 1px solid #e5e7eb;
  display: flex;
  flex-direction: column;
  transition: border-color .2s;
  width: 100%
}

.index .products .products-container .products-swiper .product-card:hover {
  border-color: #e31b23
}

.index .products .products-container .products-swiper .product-card .product-card-img {
  height: 1.92rem;
  overflow: hidden;
  position: relative;
  border-bottom: 1px solid #e5e7eb
}

.index .products .products-container .products-swiper .product-card .product-card-img .product-card-overlay {
  position: absolute;
  inset: 0;
  background: rgba(26, 26, 26, .10);
  z-index: 10;
  transition: background .3s
}

.index .products .products-container .products-swiper .product-card:hover .product-card-img .product-card-overlay {
  background: transparent
}

.index .products .products-container .products-swiper .product-card .product-card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(100%);
  mix-blend-mode: multiply;
  opacity: .80;
  transition: transform .7s, filter .7s, opacity .7s
}

.index .products .products-container .products-swiper .product-card:hover .product-card-img img {
  transform: scale(1.05);
  filter: grayscale(0);
  opacity: 1
}

.index .products .products-container .products-swiper .product-card .product-card-body {
  padding: .32rem;
  flex: 1;
  display: flex;
  flex-direction: column
}

.index .products .products-container .products-swiper .product-card .product-card-body .product-card-num {
  font-weight: 900;
  color: #e31b23;
  margin-bottom: .16rem
}

.index .products .products-container .products-swiper .product-card .product-card-body .product-card-title {
  font-weight: 900;
  text-transform: uppercase;
  color: #1a1a1a;
  margin-bottom: .12rem;
  line-height: 1.25
}

.index .products .products-container .products-swiper .product-card .product-card-body .product-card-desc {
  color: #4b5563;
  margin-bottom: .32rem;
  line-height: 1.625;
  flex: 1
}

.index .products .products-container .products-swiper .product-card .product-card-body .product-card-footer {
  margin-top: auto
}

.index .products .products-container .products-swiper .product-card .product-card-body .product-card-footer .product-card-link {
  display: inline-flex;
  align-items: center;
  font-weight: 800;
  color: #1a1a1a;
  text-transform: uppercase;
  letter-spacing: .01rem;
  text-decoration: none;
  transition: color .2s
}

.index .products .products-container .products-swiper .product-card .product-card-body .product-card-footer .product-card-link:hover {
  color: #e31b23
}

.index .products .products-container .products-swiper .product-card .product-card-body .product-card-footer .product-card-link svg {
  width: .16rem;
  height: .16rem;
  margin-left: .08rem;
  transition: transform .2s
}

.index .products .products-container .products-swiper .product-card .product-card-body .product-card-footer .product-card-link:hover svg {
  transform: translateX(2px)
}

.index .products .products-container .products-footer {
  margin-top: .32rem;
  text-align: center;
  display: none
}

.index .products .products-container .products-footer .products-footer-link {
  display: inline-flex;
  align-items: center;
  color: #e31b23;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: .05em;
  text-decoration: none;
  transition: color .2s
}

.index .products .products-container .products-footer .products-footer-link:hover {
  color: #c4161d
}

.index .products .products-container .products-footer .products-footer-link svg {
  width: .16rem;
  height: .16rem;
  margin-left: .08rem
}

.index .industries {
  padding: .96rem 0;
  background: #fff;
  position: relative;
  overflow: hidden
}

.index .industries .industries-container {
  max-width: 14rem;
  margin: 0 auto;
  padding: 0 .32rem;
  width: 100%
}

.index .industries .industries-container .industries-header {
  text-align: center;
  margin-bottom: .64rem;
  max-width: 7.68rem;
  margin-left: auto;
  margin-right: auto
}

.index .industries .industries-container .industries-header .industries-badge {
  color: #e31b23;
  font-weight: 800;
  letter-spacing: .03rem;
  text-transform: uppercase;
  margin-bottom: .16rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .08rem
}

.index .industries .industries-container .industries-header .industries-title {
  font-weight: 900;
  text-transform: uppercase;
  color: #1a1a1a;
  letter-spacing: -.01rem;
  margin-bottom: .24rem
}

.index .industries .industries-container .industries-header .industries-desc {
  color: #4b5563;
  line-height: 1.625
}

.index .industries .industries-container .industries-swiper {
  overflow: hidden;
  border: 1px solid #e5e7eb
}

.index .industries .industries-container .industries-swiper .swiper-slide {
  height: auto;
  display: flex
}

.index .industries .industries-container .industries-swiper .industries-card {
  position: relative;
  height: 3.84rem;
  overflow: hidden;
  cursor: pointer;
  display: block;
  text-decoration: none;
  width: 100%
}

.index .industries .industries-container .industries-swiper .industries-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(100%);
  opacity: .50;
  transition: all .7s
}

.index .industries .industries-container .industries-swiper .industries-card:hover img {
  opacity: 1;
  filter: grayscale(0)
}

.index .industries .industries-container .industries-swiper .industries-card .industries-card-overlay {
  position: absolute;
  inset: 0;
  background: rgba(26, 26, 26, .20);
  transition: background .5s
}

.index .industries .industries-container .industries-swiper .industries-card:hover .industries-card-overlay {
  background: transparent
}

.index .industries .industries-container .industries-swiper .industries-card .industries-card-content {
  position: absolute;
  inset: 0;
  padding: .32rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  background: linear-gradient(to top, rgba(26, 26, 26, .80) 0%, transparent 50%, transparent 100%)
}

.index .industries .industries-container .industries-swiper .industries-card .industries-card-content .industries-card-inner {
  transform: translateY(.16rem);
  transition: transform .3s
}

.index .industries .industries-container .industries-swiper .industries-card:hover .industries-card-content .industries-card-inner {
  transform: translateY(0)
}

.index .industries .industries-container .industries-swiper .industries-card .industries-card-content .industries-card-inner .industries-card-num {
  font-weight: 900;
  color: #e31b23;
  margin-bottom: .08rem
}

.index .industries .industries-container .industries-swiper .industries-card .industries-card-content .industries-card-inner .industries-card-title {
  color: #fff;
  font-weight: 900;
  text-transform: uppercase;
  margin-bottom: .08rem;
  line-height: 1.25
}

.index .industries .industries-container .industries-swiper .industries-card .industries-card-content .industries-card-inner .industries-card-bar {
  height: .04rem;
  width: .32rem;
  background: #e31b23;
  transition: width .3s
}

.index .industries .industries-container .industries-swiper .industries-card:hover .industries-card-content .industries-card-inner .industries-card-bar {
  width: .48rem
}

.index .success-cases {
  padding: .96rem 0;
  background: #f8fafc;
  position: relative;
  overflow: hidden
}

.index .success-cases .success-cases-container {
  max-width: 14rem;
  margin: 0 auto;
  padding: 0 .32rem;
  position: relative;
  z-index: 10;
  width: 100%
}

.index .success-cases .success-cases-container .success-cases-header {
  display: flex;
  flex-direction: column;
  margin-bottom: .96rem
}

.index .success-cases .success-cases-container .success-cases-header>div {
  max-width: 6.72rem
}

.index .success-cases .success-cases-container .success-cases-header .success-cases-badge {
  color: #e31b23;
  font-weight: 900;
  letter-spacing: .02rem;
  text-transform: uppercase;
  margin-bottom: .12rem;
  display: block
}

.index .success-cases .success-cases-container .success-cases-header .success-cases-title {
  font-weight: 900;
  color: #0f172a;
  text-transform: uppercase;
  letter-spacing: -.02em;
  line-height: 1.25;
  margin-bottom: .24rem
}

.index .success-cases .success-cases-container .success-cases-header .success-cases-desc {
  color: #4b5563;
  line-height: 1.625
}

.index .success-cases .success-cases-container .success-cases-header .success-cases-btn-wrap {
  margin-top: .32rem
}

.index .success-cases .success-cases-container .success-cases-header .success-cases-btn-wrap .success-cases-btn {
  display: inline-flex;
  align-items: center;
  padding: .12rem .24rem;
  border: 2px solid #1a1a1a;
  color: #1a1a1a;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .01rem;
  text-decoration: none;
  transition: background .2s, color .2s
}

.index .success-cases .success-cases-container .success-cases-header .success-cases-btn-wrap .success-cases-btn:hover {
  background: #1a1a1a;
  color: #fff
}

.index .success-cases .success-cases-container .success-cases-header .success-cases-btn-wrap .success-cases-btn svg {
  width: .16rem;
  height: .16rem;
  margin-left: .08rem;
  transition: transform .2s
}

.index .success-cases .success-cases-container .success-cases-header .success-cases-btn-wrap .success-cases-btn:hover svg {
  transform: translateX(2px)
}

.index .success-cases .success-cases-container .success-cases-swiper {
  overflow: hidden
}

.index .success-cases .success-cases-container .success-cases-swiper .swiper-slide {
  height: auto;
  display: flex
}

.index .success-cases .success-cases-container .success-cases-swiper .success-cases-card {
  background: #fff;
  border-radius: .08rem;
  overflow: hidden;
  border: 1px solid #e5e7eb;
  display: flex;
  flex-direction: column;
  transition: border-color .2s, box-shadow .2s;
  width: 100%
}

.index .success-cases .success-cases-container .success-cases-swiper .success-cases-card:hover {
  border-color: rgba(227, 27, 35, .30);
  box-shadow: 0 25px 25px rgba(227, 27, 35, .05)
}

.index .success-cases .success-cases-container .success-cases-swiper .success-cases-card .success-cases-card-img {
  display: block;
  height: 1.92rem;
  position: relative;
  overflow: hidden
}

.index .success-cases .success-cases-container .success-cases-swiper .success-cases-card .success-cases-card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .7s
}

.index .success-cases .success-cases-container .success-cases-swiper .success-cases-card:hover .success-cases-card-img img {
  transform: scale(1.05)
}

.index .success-cases .success-cases-container .success-cases-swiper .success-cases-card .success-cases-card-img .success-cases-card-img-overlay {
  position: absolute;
  inset: 0;
  background: rgba(26, 26, 26, .20);
  transition: background .3s
}

.index .success-cases .success-cases-container .success-cases-swiper .success-cases-card:hover .success-cases-card-img .success-cases-card-img-overlay {
  background: transparent
}

.index .success-cases .success-cases-container .success-cases-swiper .success-cases-card .success-cases-card-body {
  padding: .32rem;
  flex: 1;
  display: flex;
  flex-direction: column
}

.index .success-cases .success-cases-container .success-cases-swiper .success-cases-card .success-cases-card-body .success-cases-card-tag {
  color: #e31b23;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .05em;
  margin-bottom: .08rem
}

.index .success-cases .success-cases-container .success-cases-swiper .success-cases-card .success-cases-card-body .success-cases-card-title {
  font-weight: 700;
  color: #0f172a;
  margin-bottom: .16rem;
  transition: color .2s;
  text-decoration: none
}

.index .success-cases .success-cases-container .success-cases-swiper .success-cases-card .success-cases-card-body a:hover .success-cases-card-title {
  color: #e31b23
}

.index .success-cases .success-cases-container .success-cases-swiper .success-cases-card .success-cases-card-body .success-cases-card-details {
  flex: 1;
  margin-bottom: .24rem
}

.index .success-cases .success-cases-container .success-cases-swiper .success-cases-card .success-cases-card-body .success-cases-card-details>div+div {
  margin-top: .16rem
}

.index .success-cases .success-cases-container .success-cases-swiper .success-cases-card .success-cases-card-body .success-cases-card-details .success-cases-card-label {
  font-weight: 700;
  color: #9ca3af;
  text-transform: uppercase;
  letter-spacing: .1em;
  margin-bottom: .04rem
}

.index .success-cases .success-cases-container .success-cases-swiper .success-cases-card .success-cases-card-body .success-cases-card-details .success-cases-card-text {
  color: #4b5563;
  line-height: 1.428;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical
}

.index .success-cases .success-cases-container .success-cases-swiper .success-cases-card .success-cases-card-body .success-cases-card-details .success-cases-card-result {
  color: #1a1a1a;
  font-weight: 500
}

.index .success-cases .success-cases-container .success-cases-swiper .success-cases-card .success-cases-card-body .success-cases-card-link {
  display: inline-flex;
  align-items: center;
  font-weight: 700;
  color: #e31b23;
  text-transform: uppercase;
  letter-spacing: .05em;
  text-decoration: none;
  transition: color .2s;
  margin-top: auto
}

.index .success-cases .success-cases-container .success-cases-swiper .success-cases-card .success-cases-card-body .success-cases-card-link:hover {
  color: #c4161d
}

.index .success-cases .success-cases-container .success-cases-swiper .success-cases-card .success-cases-card-body .success-cases-card-link svg {
  width: .16rem;
  height: .16rem;
  margin-left: .08rem;
  transition: transform .2s
}

.index .success-cases .success-cases-container .success-cases-swiper .success-cases-card .success-cases-card-body .success-cases-card-link:hover svg {
  transform: translateX(2px)
}

.index .certifications {
  padding: .96rem 0;
  background: #fff;
  position: relative;
  overflow: hidden
}

.index .certifications .certifications-container {
  max-width: 14rem;
  margin: 0 auto;
  padding: 0 .32rem;
  position: relative;
  z-index: 10;
  width: 100%
}

.index .certifications .certifications-container .certifications-header {
  text-align: center;
  margin-bottom: .80rem
}

.index .certifications .certifications-container .certifications-header .certifications-badge {
  color: #e31b23;
  font-weight: 900;
  letter-spacing: .02rem;
  text-transform: uppercase;
  margin-bottom: .12rem
}

.index .certifications .certifications-container .certifications-header .certifications-title {
  font-weight: 900;
  color: #0f172a;
  letter-spacing: -.025em;
  margin-bottom: .24rem
}

.index .certifications .certifications-container .certifications-header .certifications-desc {
  color: #4b5563;
  line-height: 1.625;
  max-width: 7.68rem;
  margin: 0 auto
}

.index .certifications .certifications-container .certifications-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: .32rem
}

.index .certifications .certifications-container .certifications-grid .certifications-card {
  padding: .32rem;
  border: 1px solid #e2e8f0;
  border-radius: .08rem;
  background: #f8fafc;
  transition: border-color .2s, box-shadow .2s
}

.index .certifications .certifications-container .certifications-grid .certifications-card:hover {
  border-color: rgba(227, 27, 35, .50);
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, .10), 0 4px 6px -4px rgba(0, 0, 0, .10)
}

.index .certifications .certifications-container .certifications-grid .certifications-card .certifications-card-icon {
  width: .56rem;
  height: .56rem;
  background: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .05);
  margin-bottom: .24rem;
  transition: transform .3s
}

.index .certifications .certifications-container .certifications-grid .certifications-card:hover .certifications-card-icon {
  transform: scale(1.1)
}

.index .certifications .certifications-container .certifications-grid .certifications-card .certifications-card-icon svg {
  width: .24rem;
  height: .24rem;
  color: #e31b23
}

.index .certifications .certifications-container .certifications-grid .certifications-card .certifications-card-title {
  font-weight: 700;
  color: #0f172a;
  margin-bottom: .12rem
}

.index .certifications .certifications-container .certifications-grid .certifications-card .certifications-card-desc {
  color: #4b5563;
  line-height: 1.625
}

.index .certifications .certifications-container .certifications-footer {
  margin-top: .64rem;
  text-align: center;
  border-top: 1px solid #e2e8f0;
  padding-top: .48rem;
  display: flex;
  flex-direction: column;
  align-items: center
}

.index .certifications .certifications-container .certifications-footer .certifications-footer-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .16rem .32rem;
  background: #e31b23;
  color: #fff;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .01rem;
  text-decoration: none;
  transition: background .2s;
  margin-bottom: .24rem
}

.index .certifications .certifications-container .certifications-footer .certifications-footer-btn:hover {
  background: #c4161d
}

.index .certifications .certifications-container .certifications-footer .certifications-footer-btn svg {
  width: .16rem;
  height: .16rem;
  margin-left: .08rem;
  transition: transform .2s
}

.index .certifications .certifications-container .certifications-footer .certifications-footer-btn:hover svg {
  transform: translateX(2px)
}

.index .certifications .certifications-container .certifications-footer .certifications-footer-note {
  color: #6b7280;
  font-weight: 500;
  max-width: 6.72rem
}

.index .sales-locator {
  padding: .96rem 0;
  background: #f8fafc;
  position: relative;
  overflow: hidden;
  border-top: 1px solid #e2e8f0
}

.index .sales-locator .sales-locator-container {
  max-width: 14rem;
  margin: 0 auto;
  padding: 0 .32rem;
  position: relative;
  z-index: 10;
  width: 100%
}

.index .sales-locator .sales-locator-container .sales-locator-header {
  text-align: center;
  margin-bottom: .96rem
}

.index .sales-locator .sales-locator-container .sales-locator-header .sales-locator-badge {
  color: #e31b23;
  font-weight: 900;
  letter-spacing: .02rem;
  text-transform: uppercase;
  margin-bottom: .12rem
}

.index .sales-locator .sales-locator-container .sales-locator-header .sales-locator-title {
  font-weight: 900;
  color: #0f172a;
  letter-spacing: -.025em;
  margin-bottom: .24rem;
  text-transform: uppercase
}

.index .sales-locator .sales-locator-container .sales-locator-header .sales-locator-desc {
  color: #4b5563;
  line-height: 1.625;
  max-width: 7.68rem;
  margin: 0 auto
}

.index .sales-locator .sales-locator-container .sales-locator-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: .64rem
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-subtitle {
  display: flex;
  align-items: center;
  gap: .12rem;
  margin-bottom: .32rem
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-subtitle .sales-locator-subtitle-icon {
  width: .40rem;
  height: .40rem;
  background: #fff;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .05);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: .04rem
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-subtitle .sales-locator-subtitle-icon svg {
  width: .20rem;
  height: .20rem;
  color: #e31b23
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-subtitle h4 {
  font-weight: 700;
  color: #0f172a;
  letter-spacing: -.025em
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-regions {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: .24rem
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-regions .sales-locator-region {
  background: #fff;
  padding: .24rem;
  border-radius: .08rem;
  border: 1px solid #e2e8f0
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-regions .sales-locator-region h5 {
  font-weight: 700;
  color: #0f172a;
  margin-bottom: .15rem
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-regions .sales-locator-region ul {
  list-style: none;
  margin: 0;
  padding: 0
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-regions .sales-locator-region ul li {
  display: flex;
  align-items: center
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-regions .sales-locator-region ul li+li {
  margin-top: .12rem
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-regions .sales-locator-region ul li::before {
  content: '';
  width: .06rem;
  height: .06rem;
  background: #e31b23;
  border-radius: 50%;
  margin-right: .08rem;
  flex-shrink: 0
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-cta {
  margin-top: .32rem;
  background: #1a1a1a;
  padding: .32rem;
  border-radius: .08rem;
  color: #fff
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-cta h5 {
  font-weight: 700;
  margin-bottom: .08rem
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-cta p {
  color: #9ca3af;
  margin-bottom: .24rem;
  line-height: 1.428
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-cta .sales-locator-cta-btn {
  display: inline-flex;
  align-items: center;
  font-weight: 700;
  background: #e31b23;
  color: #fff;
  padding: .10rem .20rem;
  text-transform: uppercase;
  letter-spacing: .05em;
  text-decoration: none;
  transition: background .2s
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-cta .sales-locator-cta-btn:hover {
  background: #c4161d
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-cta .sales-locator-cta-btn svg {
  width: .16rem;
  height: .16rem;
  margin-left: .04rem
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-partner {
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: center
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-partner .sales-locator-partner-card {
  background: #fff;
  padding: .40rem;
  border-radius: .08rem;
  border: 1px solid #e2e8f0;
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, .10), 0 8px 10px -6px rgba(0, 0, 0, .10);
  position: relative;
  overflow: hidden;
  flex: 1
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-partner .sales-locator-partner-card .sales-locator-partner-glow-top {
  position: absolute;
  top: 0;
  right: 0;
  width: 1.28rem;
  height: 1.28rem;
  border-radius: 50%;
  background: rgba(227, 27, 35, .05);
  transform: translate(25%, -50%);
  filter: blur(32px);
  pointer-events: none
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-partner .sales-locator-partner-card .sales-locator-partner-glow-bottom {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 1.6rem;
  height: 1.6rem;
  border-radius: 50%;
  background: rgba(26, 26, 26, .05);
  transform: translate(-25%, 50%);
  filter: blur(32px);
  pointer-events: none
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-partner .sales-locator-partner-card .sales-locator-partner-content {
  position: relative;
  z-index: 10
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-partner .sales-locator-partner-card .sales-locator-partner-content>p {
  color: #4b5563;
  margin-bottom: .32rem;
  line-height: 1.25;
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-partner .sales-locator-partner-card .sales-locator-partner-content ul {
  list-style: none;
  margin: 0 0 .40rem 0;
  padding: 0
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-partner .sales-locator-partner-card .sales-locator-partner-content ul li {
  display: flex;
  align-items: flex-start
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-partner .sales-locator-partner-card .sales-locator-partner-content ul li+li {
  margin-top: .24rem
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-partner .sales-locator-partner-card .sales-locator-partner-content ul li .sales-locator-bullet {
  width: .24rem;
  height: .24rem;
  border-radius: 50%;
  background: #f1f5f9;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: .16rem;
  flex-shrink: 0;
  margin-top: .02rem
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-partner .sales-locator-partner-card .sales-locator-partner-content ul li .sales-locator-bullet .sales-locator-bullet-dot {
  width: .08rem;
  height: .08rem;
  border-radius: 50%;
  background: #e31b23
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-partner .sales-locator-partner-card .sales-locator-partner-content ul li div h5 {
  font-weight: 700;
  color: #0f172a
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-partner .sales-locator-partner-card .sales-locator-partner-content ul li div p {
  color: #6b7280;
  margin-top: .1rem
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-partner .sales-locator-partner-card .sales-locator-partner-content .sales-locator-partner-btn {
  width: 100%;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-weight: 700;
  border: 2px solid #e31b23;
  color: #e31b23;
  padding: .12rem .20rem;
  text-transform: uppercase;
  letter-spacing: .05em;
  text-decoration: none;
  transition: background .2s, color .2s
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-partner .sales-locator-partner-card .sales-locator-partner-content .sales-locator-partner-btn:hover {
  background: #e31b23;
  color: #fff
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-partner .sales-locator-partner-card .sales-locator-partner-content .sales-locator-partner-btn svg {
  width: .20rem;
  height: .20rem;
  margin-right: .12rem;
  transition: transform .2s
}

.index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-partner .sales-locator-partner-card .sales-locator-partner-content .sales-locator-partner-btn:hover svg {
  transform: scale(1.1)
}

.index .services {
  padding: .96rem 0;
  background: #fff;
  position: relative
}

.index .services .services-container {
  max-width: 14rem;
  margin: 0 auto;
  padding: 0 .32rem;
  width: 100%
}

.index .services .services-container .services-header {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: .64rem;
  gap: .32rem
}

.index .services .services-container .services-header>div {
  max-width: 7.68rem
}

.index .services .services-container .services-header .services-badge {
  color: #e31b23;
  font-weight: 900;
  letter-spacing: .02rem;
  text-transform: uppercase;
  margin-bottom: .12rem
}

.index .services .services-container .services-header .services-title {
  font-weight: 900;
  color: #0f172a;
  letter-spacing: -.025em;
  margin-bottom: .24rem
}

.index .services .services-container .services-header .services-desc {
  color: #4b5563;
  line-height: 1.625
}

.index .services .services-container .services-header .services-btn-wrap {
  flex-shrink: 0
}

.index .services .services-container .services-header .services-btn-wrap .services-btn {
  display: inline-flex;
  align-items: center;
  padding: .12rem .24rem;
  border: 2px solid #1a1a1a;
  color: #1a1a1a;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .01rem;
  text-decoration: none;
  transition: background .2s, color .2s
}

.index .services .services-container .services-header .services-btn-wrap .services-btn:hover {
  background: #1a1a1a;
  color: #fff
}

.index .services .services-container .services-header .services-btn-wrap .services-btn svg {
  width: .16rem;
  height: .16rem;
  margin-left: .08rem;
  transition: transform .2s
}

.index .services .services-container .services-header .services-btn-wrap .services-btn:hover svg {
  transform: translateX(2px)
}

.index .services .services-container .services-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: .32rem
}

.index .services .services-container .services-grid .services-card {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  padding: .32rem;
  display: flex;
  flex-direction: column;
  transition: border-color .2s
}

.index .services .services-container .services-grid .services-card:hover {
  border-color: #e31b23
}

.index .services .services-container .services-grid .services-card .services-card-icon {
  width: .56rem;
  height: .56rem;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: .24rem;
  transition: border-color .2s
}

.index .services .services-container .services-grid .services-card:hover .services-card-icon {
  border-color: #e31b23
}

.index .services .services-container .services-grid .services-card .services-card-icon svg {
  width: .24rem;
  height: .24rem;
  color: #e31b23
}

.index .services .services-container .services-grid .services-card .services-card-title {
  font-weight: 700;
  color: #0f172a;
  margin-bottom: .12rem;
  line-height: 1.25;
  transition: color .2s
}

.index .services .services-container .services-grid .services-card:hover .services-card-title {
  color: #e31b23
}

.index .services .services-container .services-grid .services-card .services-card-desc {
  color: #475569;
  line-height: 1.625;
  margin-bottom: .24rem;
  flex: 1
}

.index .services .services-container .services-grid .services-card .services-card-link {
  display: inline-flex;
  align-items: center;
  font-weight: 700;
  color: #e31b23;
  text-transform: uppercase;
  letter-spacing: .05em;
  text-decoration: none;
  transition: color .2s;
  margin-top: auto
}

.index .services .services-container .services-grid .services-card .services-card-link:hover {
  color: #c4161d
}

.index .services .services-container .services-grid .services-card .services-card-link svg {
  width: .16rem;
  height: .16rem;
  margin-left: .08rem;
  transition: transform .2s
}

.index .services .services-container .services-grid .services-card:hover .services-card-link svg {
  transform: translateX(2px)
}

.index .registration {
  padding: .96rem 0;
  background: #fff;
  border-bottom: 1px solid #e5e7eb
}

.index .registration .registration-container {
  max-width: 14rem;
  margin: 0 auto;
  padding: 0 .32rem;
  width: 100%
}

.index .registration .registration-container .registration-inner {
  background: #e31b23;
  color: #fff;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}

.index .registration .registration-container .registration-inner .registration-left {
  padding: .64rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-bottom: 1px solid rgba(255, 255, 255, .20)
}

.index .registration .registration-container .registration-inner .registration-left .registration-badge {
  font-weight: 800;
  letter-spacing: .03rem;
  text-transform: uppercase;
  margin-bottom: .16rem
}

.index .registration .registration-container .registration-inner .registration-left .registration-title {
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: -.01rem;
  margin-bottom: .24rem;
  line-height: 1.25
}

.index .registration .registration-container .registration-inner .registration-left .registration-desc {
  color: rgba(255, 255, 255, .90);
  line-height: 1.625;
  margin-bottom: .32rem;
  max-width: 6.72rem
}

.index .registration .registration-container .registration-inner .registration-left .registration-btns {
  display: flex;
  flex-direction: row;
  gap: .16rem
}

.index .registration .registration-container .registration-inner .registration-left .registration-btns .registration-btn-primary {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  background: #fff;
  color: #1a1a1a;
  padding: .16rem .32rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .01rem;
  text-decoration: none;
  transition: background .2s
}

.index .registration .registration-container .registration-inner .registration-left .registration-btns .registration-btn-primary:hover {
  background: #f3f4f6
}

.index .registration .registration-container .registration-inner .registration-left .registration-btns .registration-btn-primary svg {
  width: .16rem;
  height: .16rem;
  margin-left: .08rem;
  transition: transform .2s
}

.index .registration .registration-container .registration-inner .registration-left .registration-btns .registration-btn-primary:hover svg {
  transform: translateX(2px)
}

.index .registration .registration-container .registration-inner .registration-left .registration-btns .registration-btn-outline {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  background: transparent;
  border: 1px solid #fff;
  color: #fff;
  padding: .16rem .32rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .01rem;
  text-decoration: none;
  transition: background .2s, color .2s
}

.index .registration .registration-container .registration-inner .registration-left .registration-btns .registration-btn-outline:hover {
  background: #fff;
  color: #e31b23
}

.index .registration .registration-container .registration-inner .registration-left .registration-btns .registration-btn-outline svg {
  width: .16rem;
  height: .16rem;
  margin-left: .08rem;
  transition: transform .2s
}

.index .registration .registration-container .registration-inner .registration-left .registration-btns .registration-btn-outline:hover svg {
  transform: translateX(2px)
}

.index .registration .registration-container .registration-inner .registration-right {
  background: #1a1a1a;
  padding: .64rem;
  display: flex;
  flex-direction: column;
  justify-content: center
}

.index .registration .registration-container .registration-inner .registration-right .registration-feature {
  display: flex;
  align-items: flex-start;
  gap: .24rem
}

.index .registration .registration-container .registration-inner .registration-right .registration-feature+.registration-feature {
  margin-top: .32rem
}

.index .registration .registration-container .registration-inner .registration-right .registration-feature .registration-feature-icon {
  width: .48rem;
  height: .48rem;
  background: #e31b23;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0
}

.index .registration .registration-container .registration-inner .registration-right .registration-feature .registration-feature-icon svg {
  width: .24rem;
  height: .24rem;
  color: #fff
}

.index .registration .registration-container .registration-inner .registration-right .registration-feature .registration-feature-title {
  font-weight: 900;
  text-transform: uppercase;
  color: #fff;
  margin-bottom: .08rem
}

.index .registration .registration-container .registration-inner .registration-right .registration-feature .registration-feature-desc {
  color: #9ca3af;
  line-height: 1.625
}

.index .contact {
  padding: .96rem 0;
  background: #fff;
  position: relative;
  overflow: hidden
}

.index .contact .contact-container {
  max-width: 14rem;
  margin: 0 auto;
  padding: 0 .32rem;
  position: relative;
  z-index: 10
}

.index .contact .contact-container .contact-header {
  margin-bottom: .64rem;
  max-width: 7.68rem
}

.index .contact .contact-container .contact-header .contact-badge {
  color: #e31b23;
  font-weight: 900;
  letter-spacing: .02rem;
  text-transform: uppercase;
  margin-bottom: .12rem
}

.index .contact .contact-container .contact-header .contact-title {
  font-weight: 900;
  color: #0f172a;
  letter-spacing: -.025em;
  margin-bottom: .24rem
}

.index .contact .contact-container .contact-header .contact-desc {
  color: #4b5563;
  line-height: 1.625
}

.index .contact .contact-container .contact-form-wrap {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: .08rem;
  padding: .48rem
}

.index .contact .contact-container .contact-form-wrap form .contact-form-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: .24rem
}

.index .contact .contact-container .contact-form-wrap form .contact-form-grid .contact-full {
  grid-column: 1/-1
}

.index .contact .contact-container .contact-form-wrap form .contact-form-grid .contact-label {
  display: block;
  font-weight: 700;
  color: #334155;
  margin-bottom: .08rem
}

.index .contact .contact-container .contact-form-wrap form .contact-form-grid .contact-input-wrap {
  position: relative
}

.index .contact .contact-container .contact-form-wrap form .contact-form-grid .contact-input-wrap .contact-input-icon {
  position: absolute;
  left: .12rem;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  pointer-events: none;
  z-index: 1;
}

.index .contact .contact-container .contact-form-wrap form .contact-form-grid .contact-input-wrap .contact-input-icon svg {
  width: .20rem;
  height: .20rem;
  color: #94a3b8
}

.index .contact .contact-container .contact-form-wrap form .contact-form-grid .contact-input-wrap .contact-input-icon.contact-input-icon-top {
  top: .12rem;
  transform: none
}

.index .contact .contact-container .contact-form-wrap form .contact-form-grid .contact-input-wrap .contact-input {
  display: block;
  width: 100%;
  padding: .12rem .12rem .12rem .40rem;
  border: 1px solid #cbd5e1;
  border-radius: .06rem;
  background: #fff;
  outline: none;
  transition: border-color .2s, box-shadow .2s
}

.index .contact .contact-container .contact-form-wrap form .contact-form-grid .contact-input-wrap .contact-input:focus {
  border-color: #e31b23;
  box-shadow: 0 0 0 2px rgba(227, 27, 35, .20)
}

.index .contact .contact-container .contact-form-wrap form .contact-form-grid .contact-input-wrap .contact-textarea {
  padding-top: .12rem;
  resize: vertical;
  font-family: inherit
}

.index .contact .contact-container .contact-form-wrap form .contact-upload {
  margin-top: .32rem
}

.index .contact .contact-container .contact-form-wrap form .contact-upload .contact-label {
  display: block;
  font-weight: 700;
  color: #334155;
  margin-bottom: .08rem
}

.index .contact .contact-container .contact-form-wrap form .contact-upload .contact-upload-area {
  border: 2px dashed #cbd5e1;
  border-radius: .06rem;
  padding: .24rem;
  text-align: center;
  cursor: pointer;
  transition: background .2s
}

.index .contact .contact-container .contact-form-wrap form .contact-upload .contact-upload-area:hover {
  background: #f1f5f9
}

.index .contact .contact-container .contact-form-wrap form .contact-upload .contact-upload-area svg {
  width: .48rem;
  height: .48rem;
  color: #94a3b8;
  margin: 0 auto .12rem;
  display: block
}

.index .contact .contact-container .contact-form-wrap form .contact-upload .contact-upload-area .contact-upload-text {
  font-weight: 500;
  color: #334155
}

.index .contact .contact-container .contact-form-wrap form .contact-upload .contact-upload-area .contact-upload-hint {
  color: #64748b;
  margin-top: .04rem
}

.index .contact .contact-container .contact-form-wrap form .contact-upload .contact-upload-area .contact-upload-input {
  display: none
}

.index .contact .contact-container .contact-form-wrap form .contact-submit-wrap {
  padding-top: .16rem
}

.index .contact .contact-container .contact-form-wrap form .contact-submit-wrap .contact-submit {
  background: #e31b23;
  color: #fff;
  font-weight: 700;
  padding: .12rem .32rem;
  border: none;
  border-radius: .02rem;
  text-transform: uppercase;
  letter-spacing: .05em;
  cursor: pointer;
  transition: background .2s
}

/* ========== 案例中心 ========== */
.case {
  flex-shrink: 0;
  padding: .16rem .24rem;
  background: #e31b23;
  color: #fff;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .01rem;
  border: none;
  cursor: pointer;
  transition: background .2s;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, .10), 0 2px 4px -2px rgba(0, 0, 0, .10)
}

.case {
  padding: 0 1.3rem 1.8rem 1.3rem;
  padding-top: 1rem;
  background: #fff;
  min-height: 100vh;
}

.case .breadcrumb {
  padding: .32rem 0;
}

.case .case-container {
  max-width: 16rem;
  margin: 0 auto;
  width: 100%;
}

.case .case-title-wrap {
  padding-top: 0.6rem;
  padding-bottom: 0.57rem;
}

.case .case-title-wrap .case-title {
  font-weight: 500;
  color: #1F1A17;
  margin: 0;
}

.case .case-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.5rem 0.2rem;
}

.case .case-card {
  background: #fff;
  border: 1px solid #CACACA;
  border-radius: 0.2rem;
  overflow: hidden;
  transition: box-shadow 0.3s ease, transform 0.3s ease;
}

.case .case-card:hover {
  box-shadow: 0 0.08rem 0.24rem rgba(0, 0, 0, 0.1);
  transform: translateY(-0.02rem);
}

.case .case-card .case-card-img {
  width: 100%;
  height: 3.6rem;
  overflow: hidden;
}

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

.case .case-card .case-card-body {
  padding: 0.36rem;
}

.case .case-card .case-card-body .case-card-title {
  font-weight: 500;
  color: #333;
  line-height: 0.4rem;
  margin: 0 0 0.12rem 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.case .case-card .case-card-body .case-card-desc {
  color: #666;
  line-height: 0.3rem;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.case .page-pagination {
  padding: .6rem 0 0;
}

/* ===== 新闻列表 ===== */
.news {
  padding-top: .8rem;
  background: #fff;
  min-height: 100vh;
}

.news .breadcrumb {
  padding: .32rem 0 .43rem 0;
}

.news .news-container {
  max-width: 100%;
  margin: 0 auto;
  padding: 0 1.3rem;
  width: 100%;
}

.news .news-filters {
  display: flex;
  align-items: center;
  gap: 0.07rem;
}

.news .news-filters .news-filter-btn {
  padding: 0.1rem 0.27rem;
  border-radius: 0.5rem;
  border: none;
  cursor: pointer;
  transition: all 0.2s;
  text-decoration: none;
  display: inline-block;
}

.news .news-filters .news-filter-btn.active {
  background: #DA251C;
  color: #fff;
}

.news .news-filters .news-filter-btn:not(.active) {
  background: transparent;
  color: #777;
}

.news .news-filters .news-filter-btn:not(.active):hover {
  color: #DA251C;
}

.news .news-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.48rem 0.2rem;
  padding-top: 0.43rem;
  padding-bottom: 0.7rem;
}

.news .news-card {
  background: #fff;
  border: 1px solid #CACACA;
  border-radius: 0.2rem;
  overflow: hidden;
  transition: border-color 0.3s;
  text-decoration: none;
  display: block;
}

.news .news-card:hover {
  border-color: #DA251C;
}

.news .news-card .news-card-img {
  position: relative;
  width: 100%;
  height: 3.6rem;
  overflow: hidden;
}

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

.news .news-card:hover .news-card-img img {
  transform: scale(1.05);
}

.news .news-card .news-card-img .news-card-badge {
  position: absolute;
  top: 0;
  left: 0;
  padding: 0.1rem 0.27rem;
  background: #DA251C;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.2rem 0 0.2rem 0;
  white-space: nowrap;
}

.news .news-card .news-card-body {
  padding: 0.36rem;
}

.news .news-card .news-card-body .news-card-date {
  display: flex;
  align-items: center;
  gap: 0.08rem;
  margin-bottom: 0.13rem;
}

.news .news-card .news-card-body .news-card-date img {
  width: 0.18rem;
  height: 0.18rem;
  display: block;
}

.news .news-card .news-card-body .news-card-title {
  color: #333;
  line-height: 0.4rem;
  margin: 0 0 0.12rem 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  transition: color 0.3s;
}

.news .news-card:hover .news-card-body .news-card-title {
  color: #DA251C;
}

.news .news-card .news-card-body .news-card-desc {
  color: #666;
  line-height: 0.3rem;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.news .page-pagination {
  padding: 0 0 1.05rem 0;
}


/* ===== 案例详情 ===== */
/* ===== 案例详情页 ===== */
.case-detail {
  padding-top: .8rem;
  background: #fff;
  min-height: 100vh;
}

.case-detail .cd-container {
  max-width: 100%;
  margin: 0 auto;
  padding: 0 1.3rem;
  width: 100%;
}

.case-detail .breadcrumb {
  padding: .32rem 0;
}

.case-detail .cd-breadcrumb .cd-breadcrumb-inner {
  display: flex;
  align-items: center;
  gap: 0.1rem;
}

.case-detail .cd-breadcrumb .cd-breadcrumb-inner img {
  display: block;
}

.case-detail .cd-breadcrumb .cd-breadcrumb-inner .cd-breadcrumb-home {
  width: 0.24rem;
  height: 0.24rem;
  opacity: 0.4;
}

.case-detail .cd-breadcrumb .cd-breadcrumb-inner .cd-breadcrumb-chevron {
  width: 0.14rem;
  height: 0.14rem;
}

.case-detail .cd-breadcrumb .cd-breadcrumb-inner .cd-breadcrumb-text {
  color: #999;
}

.case-detail .cd-breadcrumb .cd-breadcrumb-inner .cd-breadcrumb-text.current {
  color: #333;
}

.case-detail .cd-main {
  display: flex;
  gap: 0.93rem;
  padding-top: 0.4rem;
  padding-bottom: 60px;
}

.case-detail .cd-content {
  flex: 0 0 11.02rem;
  max-width: 11.02rem;
}

.case-detail .cd-content .cd-title {
  color: #333;
  line-height: 1.4em;
  margin: 0;
  max-width: 5.04rem;
}

.case-detail .cd-content .cd-meta {
  display: flex;
  align-items: center;
  gap: 0.38rem;
  margin-top: 0.24rem;
  position: relative;
  z-index: 2;
}

.case-detail .cd-content .cd-meta .cd-date {
  color: #86868B;
  line-height: 0.32rem;
}

.case-detail .cd-content .cd-meta .cd-share {
  display: flex;
  align-items: center;
  gap: 0.08rem;
}

.case-detail .cd-content .cd-meta .cd-share .cd-share-label {
  color: #86868B;
}

.case-detail .cd-content .cd-meta .cd-share .cd-share-btn {
  position: relative;
  display: inline-block;
  width: 0.28rem;
  height: 0.28rem;
  cursor: pointer;
}

.case-detail .cd-content .cd-meta .cd-share .cd-share-btn .cd-share-icon {
  position: absolute;
  top: 0;
  left: 0;
  width: 0.28rem;
  height: 0.28rem;
  display: block;
  transition: opacity 0.2s;
}

.case-detail .cd-content .cd-meta .cd-share .cd-share-btn .cd-share-icon-hover {
  opacity: 0;
}

.case-detail .cd-content .cd-meta .cd-share .cd-share-btn:hover .cd-share-icon {
  opacity: 0;
}

.case-detail .cd-content .cd-meta .cd-share .cd-share-btn:hover .cd-share-icon-hover {
  opacity: 1;
}

.case-detail .cd-content .cd-meta .cd-share .cd-share-btn .social-share-icon::before,
.case-detail .cd-content .cd-meta .cd-share .cd-share-btn .social-share-icon::after {
  content: none !important;
}

.case-detail .cd-content .cd-meta .cd-share .cd-share-btn a.social-share-icon {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: none !important;
  background: transparent !important;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  border-radius: 50%;
}

.case-detail .cd-content .cd-meta .cd-share .icon-wechat .wechat-qrcode {
  top: 30px;
  left: -90px;
}

.case-detail .cd-content .cd-meta .cd-share .icon-wechat .wechat-qrcode:after {
  top: -13px;
  border-color: transparent transparent #fff transparent;
  z-index: -1;
}

.case-detail .cd-content .cd-body {
  margin-top: 0.9rem;
}

.case-detail .cd-content .cd-body p {
  color: #666;
  line-height: 2;
  margin: 0;
}

.case-detail .cd-content .cd-body p+p {
  margin-top: 0.24rem;
}

.case-detail .cd-content .cd-body img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 0.2rem;
  margin: 0.24rem 0;
}

.case-detail .cd-prev-next {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 0.7rem;
  padding-bottom: 0.7rem;
}

.case-detail .cd-prev-next .cd-prev {
  display: flex;
  align-items: center;
  gap: 0.2rem;
  cursor: pointer;
}

.case-detail .cd-prev-next .cd-prev .cd-prev-arrow {
  position: relative;
  display: inline-block;
  width: 0.07rem;
  height: 0.12rem;
  flex-shrink: 0;
}

.case-detail .cd-prev-next .cd-prev .cd-prev-arrow .cd-prev-arrow-icon {
  position: absolute;
  top: 0;
  left: 0;
  width: 0.07rem;
  height: 0.12rem;
  display: block;
  transition: opacity 0.2s;
}

.case-detail .cd-prev-next .cd-prev .cd-prev-arrow .cd-prev-arrow-hover {
  opacity: 0;
}

.case-detail .cd-prev-next .cd-prev:hover .cd-prev-arrow .cd-prev-arrow-icon {
  opacity: 0;
}

.case-detail .cd-prev-next .cd-prev:hover .cd-prev-arrow .cd-prev-arrow-hover {
  opacity: 1;
}

.case-detail .cd-prev-next .cd-prev .cd-prev-text {
  color: #333;
  max-width: 6.38rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  transition: color 0.2s;
}

.case-detail .cd-prev-next .cd-prev:hover .cd-prev-text {
  color: #DA251C;
}

.case-detail .cd-prev-next .cd-next {
  display: flex;
  align-items: center;
  gap: 0.2rem;
  cursor: pointer;
}

.case-detail .cd-prev-next .cd-next .cd-next-text {
  color: #333;
  transition: color 0.2s;
}

.case-detail .cd-prev-next .cd-next:hover .cd-next-text {
  color: #DA251C;
}

.case-detail .cd-prev-next .cd-next .cd-next-arrow {
  position: relative;
  display: inline-block;
  width: 0.07rem;
  height: 0.12rem;
  flex-shrink: 0;
}

.case-detail .cd-prev-next .cd-next .cd-next-arrow .cd-next-arrow-icon {
  position: absolute;
  top: 0;
  left: 0;
  width: 0.07rem;
  height: 0.12rem;
  display: block;
  transition: opacity 0.2s;
}

.case-detail .cd-prev-next .cd-next .cd-next-arrow .cd-next-arrow-hover {
  opacity: 0;
}

.case-detail .cd-prev-next .cd-next:hover .cd-next-arrow .cd-next-arrow-icon {
  opacity: 0;
}

.case-detail .cd-prev-next .cd-next:hover .cd-next-arrow .cd-next-arrow-hover {
  opacity: 1;
}

.case-detail .cd-divider {
  width: 0;
  height: 10.28rem;
  border-left: 1px solid rgba(0, 0, 0, 0.1);
  align-self: flex-start;
  margin-top: 0.4rem;
  position: relative;
}

.case-detail .cd-sidebar .box {
    position: sticky;
    top: 1.2rem;
}

.case-detail .cd-sidebar {
  flex: 0 0 3.72rem;
  max-width: 3.72rem;
  padding-top: 0.4rem;
}

.case-detail .cd-sidebar .cd-sidebar-title {
  color: #333;
  line-height: 1.4em;
  margin: 0 0 0.33rem 0;
}

.case-detail .cd-sidebar .cd-related-list {
  display: flex;
  flex-direction: column;
  gap: 0.28rem;
}

.case-detail .cd-sidebar .cd-related-list .cd-related-item {
  cursor: pointer;
}

.case-detail .cd-sidebar .cd-related-list .cd-related-item .cd-related-text {
  color: #333;
  line-height: 1.3em;
  display: block;
  text-decoration: none;
  transition: color 0.2s;
}

.case-detail .cd-sidebar .cd-related-list .cd-related-item:hover .cd-related-text {
  color: #DA251C;
}

.case-detail .cd-sidebar .cd-back-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.1rem;
  padding: 0.15rem 0.35rem;
  background: #DA251C;
  color: #fff;
  border-radius: 0.4rem;
  cursor: pointer;
  border: none;
  margin-top: 0.24rem;
  text-decoration: none;
  transition: background 0.2s;
}

.case-detail .cd-sidebar .cd-back-btn:hover {
  background: #c4161d;
}

.case-detail .cd-sidebar .cd-back-btn img {
  width: 0.1238rem;
  height: 0.11rem;
  display: block;
}


.case-detail .cd-sidebar .box2 {
    background: #f8fafc;
    padding: .32rem;
    border: 1px solid #ebe6e7;
    position: sticky;
    top: 1.3rem;
}

.case-detail .cd-sidebar .box2 .tit {
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    padding-bottom: .24rem;
    margin-bottom: .26rem;
    border-bottom: 1px solid #e31b23;
    text-transform: uppercase;
    color: #1a1a1a;
}

.case-detail .cd-sidebar .box2 .txt {
    color: #4a5565;
    margin-bottom: .32rem;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    line-height: 1.5;
}

.case-detail .cd-sidebar .box2 .btn1 {
    background: #e31b23;
    color: #fff;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    padding: .16rem .24rem;
    text-align: center;
    margin-bottom: .16rem;
    letter-spacing: 0.8px;
    width: 100%;
    font-weight: 700;
}
.case-detail .cd-sidebar .box2 .btn2 {
    color: #1a1a1a;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    padding: .16rem .24rem;
    border-width: 2px;
    border-color: #1a1a1a;
    text-align: center;
    width: 100%;
    letter-spacing: 0.8px;
    font-weight: 700;
    border-style: solid;
}

/* ===== 新闻详情 ===== */
/* ===== 案例详情页 ===== */
.newsdetail {
  padding-top: 1rem;
  background: #fff;
  min-height: 100vh;
}

.newsdetail .cd-container {
  max-width: 100%;
  margin: 0 auto;
  padding: 0 1.3rem;
  width: 100%;
}

.newsdetail .cd-container .breadcrumb {
  padding: .32rem 0;
}

.newsdetail .cd-breadcrumb {
  padding-top: 0.4rem;
}

.newsdetail .cd-breadcrumb .cd-breadcrumb-inner {
  display: flex;
  align-items: center;
  gap: 0.1rem;
}

.newsdetail .cd-breadcrumb .cd-breadcrumb-inner img {
  display: block;
}

.newsdetail .cd-breadcrumb .cd-breadcrumb-inner .cd-breadcrumb-home {
  width: 0.24rem;
  height: 0.24rem;
  opacity: 0.4;
}

.newsdetail .cd-breadcrumb .cd-breadcrumb-inner .cd-breadcrumb-chevron {
  width: 0.14rem;
  height: 0.14rem;
}

.newsdetail .cd-breadcrumb .cd-breadcrumb-inner .cd-breadcrumb-text {
  color: #999;
}

.newsdetail .cd-breadcrumb .cd-breadcrumb-inner .cd-breadcrumb-text.current {
  color: #333;
}

.newsdetail .cd-main {
  display: flex;
  gap: 0.93rem;
  padding-top: 0.4rem;
}

.newsdetail .cd-content {
  flex: 0 0 11.02rem;
  max-width: 11.02rem;
}

.newsdetail .cd-content .cd-title {
  color: #333;
  line-height: 1.4em;
  margin: 0;
  max-width: 5.04rem;
}

.newsdetail .cd-content .cd-meta {
  display: flex;
  align-items: center;
  gap: 0.38rem;
  margin-top: 0.24rem;
  position: relative;
  z-index: 2;
}

.newsdetail .cd-content .cd-meta .cd-date {
  color: #86868B;
  line-height: 0.32rem;
}

.newsdetail .cd-content .cd-meta .cd-share {
  display: flex;
  align-items: center;
  gap: 0.08rem;
}

.newsdetail .cd-content .cd-meta .cd-share .cd-share-label {
  color: #86868B;
}

.newsdetail .cd-content .cd-meta .cd-share .cd-share-btn {
  position: relative;
  display: inline-block;
  width: 0.28rem;
  height: 0.28rem;
  cursor: pointer;
}

.newsdetail .cd-content .cd-meta .cd-share .cd-share-btn .cd-share-icon {
  position: absolute;
  top: 0;
  left: 0;
  width: 0.28rem;
  height: 0.28rem;
  display: block;
  transition: opacity 0.2s;
}

.newsdetail .cd-content .cd-meta .cd-share .cd-share-btn .cd-share-icon-hover {
  opacity: 0;
}

.newsdetail .cd-content .cd-meta .cd-share .cd-share-btn:hover .cd-share-icon {
  opacity: 0;
}

.newsdetail .cd-content .cd-meta .cd-share .cd-share-btn:hover .cd-share-icon-hover {
  opacity: 1;
}

.newsdetail .cd-content .cd-meta .cd-share .cd-share-btn .social-share-icon::before,
.newsdetail .cd-content .cd-meta .cd-share .cd-share-btn .social-share-icon::after {
  content: none !important;
}

.newsdetail .cd-content .cd-meta .cd-share .cd-share-btn a.social-share-icon {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: none !important;
  background: transparent !important;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  border-radius: 50%;
}

.newsdetail .cd-content .cd-meta .cd-share .social-share .icon-wechat .wechat-qrcode {
  top: 30px;
  left: -90px;
}

.newsdetail .cd-content .cd-meta .cd-share .social-share .icon-wechat .wechat-qrcode:after {
  top: -13px;
  border-color: transparent transparent #fff transparent;
  z-index: -1;
}

.newsdetail .cd-content .cd-body {
  margin-top: 0.9rem;
}

.newsdetail .cd-content .cd-body p {
  color: #666;
  line-height: 2;
  margin: 0;
}

.newsdetail .cd-content .cd-body p+p {
  margin-top: 0.24rem;
}

.newsdetail .cd-content .cd-body img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 0.2rem;
  margin: 0.24rem 0;
}

.newsdetail .cd-prev-next {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 0.7rem;
  padding-bottom: 0.7rem;
}

.newsdetail .cd-prev-next .cd-prev {
  display: flex;
  align-items: center;
  gap: 0.2rem;
  cursor: pointer;
}

.newsdetail .cd-prev-next .cd-prev .cd-prev-arrow {
  position: relative;
  display: inline-block;
  width: 0.07rem;
  height: 0.12rem;
  flex-shrink: 0;
}

.newsdetail .cd-prev-next .cd-prev .cd-prev-arrow .cd-prev-arrow-icon {
  position: absolute;
  top: 0;
  left: 0;
  width: 0.07rem;
  height: 0.12rem;
  display: block;
  transition: opacity 0.2s;
}

.newsdetail .cd-prev-next .cd-prev .cd-prev-arrow .cd-prev-arrow-hover {
  opacity: 0;
}

.newsdetail .cd-prev-next .cd-prev:hover .cd-prev-arrow .cd-prev-arrow-icon {
  opacity: 0;
}

.newsdetail .cd-prev-next .cd-prev:hover .cd-prev-arrow .cd-prev-arrow-hover {
  opacity: 1;
}

.newsdetail .cd-prev-next .cd-prev .cd-prev-text {
  color: #333;
  max-width: 6.38rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  transition: color 0.2s;
}

.newsdetail .cd-prev-next .cd-prev:hover .cd-prev-text {
  color: #DA251C;
}

.newsdetail .cd-prev-next .cd-next {
  display: flex;
  align-items: center;
  gap: 0.2rem;
  cursor: pointer;
}

.newsdetail .cd-prev-next .cd-next .cd-next-text {
  color: #333;
  transition: color 0.2s;
}

.newsdetail .cd-prev-next .cd-next:hover .cd-next-text {
  color: #DA251C;
}

.newsdetail .cd-prev-next .cd-next .cd-next-arrow {
  position: relative;
  display: inline-block;
  width: 0.07rem;
  height: 0.12rem;
  flex-shrink: 0;
}

.newsdetail .cd-prev-next .cd-next .cd-next-arrow .cd-next-arrow-icon {
  position: absolute;
  top: 0;
  left: 0;
  width: 0.07rem;
  height: 0.12rem;
  display: block;
  transition: opacity 0.2s;
}

.newsdetail .cd-prev-next .cd-next .cd-next-arrow .cd-next-arrow-hover {
  opacity: 0;
}

.newsdetail .cd-prev-next .cd-next:hover .cd-next-arrow .cd-next-arrow-icon {
  opacity: 0;
}

.newsdetail .cd-prev-next .cd-next:hover .cd-next-arrow .cd-next-arrow-hover {
  opacity: 1;
}

.newsdetail .cd-divider {
  width: 0;
  height: 10.28rem;
  border-left: 1px solid rgba(0, 0, 0, 0.1);
  align-self: flex-start;
  margin-top: 0.4rem;
}

.newsdetail .cd-sidebar {
  flex: 0 0 3.72rem;
  max-width: 3.72rem;
  padding-top: 0.4rem;
}

.newsdetail .cd-sidebar .cd-sidebar-title {
  color: #333;
  line-height: 1.4em;
  margin: 0 0 0.33rem 0;
}

.newsdetail .cd-sidebar .cd-related-list {
  display: flex;
  flex-direction: column;
  gap: 0.28rem;
}

.newsdetail .cd-sidebar .cd-related-list .cd-related-item {
  cursor: pointer;
}

.newsdetail .cd-sidebar .cd-related-list .cd-related-item .cd-related-text {
  color: #333;
  line-height: 1.3em;
  display: block;
  text-decoration: none;
  transition: color 0.2s;
}

.newsdetail .cd-sidebar .cd-related-list .cd-related-item:hover .cd-related-text {
  color: #DA251C;
}

.newsdetail .cd-sidebar .cd-back-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.1rem;
  padding: 0.15rem 0.35rem;
  background: #DA251C;
  color: #fff;
  border-radius: 0.4rem;
  cursor: pointer;
  border: none;
  margin-top: 0.24rem;
  text-decoration: none;
  transition: background 0.2s;
}

.newsdetail .cd-sidebar .cd-back-btn:hover {
  background: #c4161d;
}

.newsdetail .cd-sidebar .cd-back-btn img {
  width: 0.1238rem;
  height: 0.11rem;
  display: block;
}


.advantage {
  position: relative;
  padding-top: .8rem;
}

.advantage .sec_1 {
  position: relative;
  padding: .4rem 1.3rem 1.4rem 1.3rem;
  display: flex;
  gap: 1.3rem;
  margin-top: .66rem;
}

.advantage .sec_1 .info {
  width: 7.6rem;
  position: relative;
}

.advantage .sec_1 .info .top .title {
  color: rgba(31, 26, 23, 1);
  line-height: 1.25;
}

.advantage .sec_1 .info .top .desc {
  margin-top: .2rem;
  color: rgba(102, 102, 102, 1);
  line-height: 1.25;
}

.advantage .sec_1 .info .top .txt {
  color: rgba(51, 51, 51, 1);
  margin-top: .4rem;
  line-height: 2;
}

.advantage .sec_1 .info .boxs {
  margin-top: .72rem;
  display: flex;
  flex-direction: column;
  gap: .16rem;
}

.advantage .sec_1 .info .boxs .box {
  background: rgba(247, 247, 247, 1);
  padding: .3rem .32rem .2rem .32rem;
}

.advantage .sec_1 .info .boxs .box .box_top {
  display: flex;
  justify-content: space-between;
  gap: .2rem;
  align-items: center;
}

.advantage .sec_1 .info .boxs .box .box_top .label {
  display: flex;
  align-items: center;
  gap: .08rem;

  color: rgba(29, 29, 31, 1);
  line-height: 1.25;
}

.advantage .sec_1 .info .boxs .box .box_top .label img {
  width: .28rem;
  height: .28rem;
  flex-shrink: 0;
}

.advantage .sec_1 .info .boxs .box .box_top .arrow {
  width: .28rem;
  height: .28rem;
  flex-shrink: 0;
  border-radius: 50%;
  position: relative;
  background: #fff;
  transition: all .3s ease-in-out;
}

.advantage .sec_1 .info .boxs .box.on .box_top .arrow {
  background: rgba(218, 37, 28, 1);
}

.advantage .sec_1 .info .boxs .box .box_top .arrow span {
  position: absolute;
  width: .15rem;
  height: 2px;
  background: rgba(51, 51, 51, 1);
  border-radius: .99rem;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
  display: block;
  transition: all .3s ease-in-out;
}

.advantage .sec_1 .info .boxs .box.on .box_top .arrow span {
  background: #fff;
}

.advantage .sec_1 .info .boxs .box .box_top .arrow span:last-child {
  transform: translate(-50%, -50%) rotate(90deg);
  transition: all .3s ease-in-out;
}

.advantage .sec_1 .info .boxs .box.on .box_top .arrow span:last-child {
  transform: translate(-50%, -50%);
}

.advantage .sec_1 .info .boxs .box .box_desc {
  max-height: 0;
  overflow: hidden;
  transition: all .3s ease-in-out;
  padding-top: .1rem;
}

.advantage .sec_1 .info .boxs .box.on .box_desc {
  max-height: 1.3rem;
}

.advantage .sec_1 .info .boxs .box .box_desc .txt {
  color: rgba(29, 29, 31, .6);
  line-height: 2.14;
  height: 1.2rem;
  overflow-y: auto;
}

.advantage .sec_1 .img_box {
  flex-shrink: 0;
  height: 7.7rem;
  width: 7.7rem;
  border-radius: .2rem;
  overflow: hidden;
}

.advantage .sec_1 .img_box img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.advantage .sec_2 {
  position: relative;
  padding: 1.4rem 1.3rem;
}

.advantage .sec_2 .bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

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

.advantage .sec_2 .bg::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgba(217, 217, 217, 0.70) 100%, rgba(166, 166, 166, 0.30) 58.21%, rgba(115, 115, 115, 0.30) 100%);
}

.advantage .sec_2 .top {
  display: flex;
  justify-content: space-between;
  gap: .2rem;
  position: relative;
  z-index: 1;

}

.advantage .sec_2 .top .label .title {
  color: rgba(31, 26, 23, 1);
  line-height: 1.25;
}

.advantage .sec_2 .top .label .txt {
  color: rgba(102, 102, 102, 1);
  line-height: 1.25;
  margin-top: .2rem;
}

.advantage .sec_2 .top .desc {
  color: rgba(102, 102, 102, 1);
  line-height: 1.77;
  width: 8.6rem;
}

.advantage .sec_2 .content {
  display: flex;
  gap: .8rem;
  margin-top: 1rem;
  align-items: end;
}

.advantage .sec_2 .content .item {
  flex: 1;
  height: 5.66rem;
  border-radius: .16rem;
  overflow: hidden;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.advantage .sec_2 .content .item:nth-child(2n) {
  margin-bottom: .64rem;
}

.advantage .sec_2 .content .item .img_box {
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  pointer-events: none;
  transition: all .3s ease-in-out;
}

.advantage .sec_2 .content .item .img_box img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.advantage .sec_2 .content .item .info {
  position: relative;
  width: 100%;

  padding: .5rem .36rem;
  transition: all .3s ease-in-out;

  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 100%;
}

.advantage .sec_2 .content .item:hover .info {
  background: linear-gradient(180deg, rgba(31, 26, 23, 0.00) 0%, rgba(31, 26, 23, 0.80) 100%);
  backdrop-filter: blur(.3425rem);

}

.advantage .sec_2 .content .item .info .name {
  color: #fff;
  line-height: 1.25;
  display: flex;
  align-items: center;
  gap: .16rem;
}

.advantage .sec_2 .content .item .info .name img {
  width: .36rem;
  height: .36rem;
}

.advantage .sec_2 .content .item .info .desc {
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.75;


  max-height: 0;
  overflow: hidden;
  transition: all .3s ease-in-out;
}

.advantage .sec_2 .content .item:hover .info .desc {
  max-height: 2.51rem;
  overflow-y: auto;
  margin-top: .24rem;
}

.advantage .sec_2 .content2 {
  display: flex;
  gap: 1rem;
  margin-top: 1.6rem;
  position: relative;
  z-index: 1;
}

.advantage .sec_2 .content2 .left {
  flex: 1;
  width: 10rem;
}

.advantage .sec_2 .content2 .left .sec2_swiper_1 {
  width: 100%;
  height: 4.8rem;
  position: relative;
}

.advantage .sec_2 .content2 .left .sec2_swiper_1::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /* background: linear-gradient(to right, rgba(216, 220, 227, 1) 0%, transparent 50%); */
  /* background: url('../images/ad_sec2_mask.png') no-repeat center center; */

  z-index: 1;
  pointer-events: none;
}

.advantage .sec_2 .content2 .left .item {
  width: 100%;
  height: 100%;
  transition: all .3s ease-in-out;
  transform: scale(.8);
  cursor: pointer;
}

.advantage .sec_2 .content2 .left .item.on {
  transform: scale(1);
}

.advantage .sec_2 .content2 .left .item img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.advantage .sec_2 .content2 .right {
  width: 5.5rem;
}

.advantage .sec_2 .content2 .right .box {
  height: 5.2rem;
  width: 5.5rem;
  padding: .36rem;
  background: #fff;
  border-radius: .2rem;
}

.advantage .sec_2 .content2 .right .box .sec2_swiper_2 {
  width: 100%;
  height: 100%;
  position: relative;
}

.advantage .sec_2 .content2 .right .box .item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
}

.advantage .sec_2 .content2 .right .box .item .img {
  width: .55rem;
  height: .55rem;
  flex-shrink: 0;
}

.advantage .sec_2 .content2 .right .box .item .name {
  color: rgba(51, 51, 51, 1);
  line-height: 1.25;
  transition: all .3s ease-in-out;
}

.advantage .sec_2 .content2 .right .box .item.on .name {
  color: rgba(218, 37, 28, 1);
}

.advantage .sec_3 {
  position: relative;
  padding: 1.2rem 1.3rem 1.8rem 1.3rem;
}

.advantage .sec_3 .label .title {
  color: rgba(31, 26, 23, 1);
  line-height: 1.25;
}

.advantage .sec_3 .label .txt {
  color: rgba(102, 102, 102, 1);
  line-height: 1.25;
  margin-top: .2rem;
}

.advantage .sec_3 .list {
  display: flex;
  gap: .2rem;
  flex-wrap: wrap;
  margin-top: .56rem;
}

.advantage .sec_3 .list .li {
  width: calc((100% - .4rem) / 3);
  position: relative;
  background: rgba(249, 249, 249, 1);
  border-radius: .12rem;
  overflow: hidden;
}

.advantage .sec_3 .list .li .imgx_box {
  width: 100%;
  height: 3.45rem;
  overflow: hidden;
}

.advantage .sec_3 .list .li .imgx_box img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  transition: all .3s ease-in-out;
}

.advantage .sec_3 .list .li:hover .imgx_box img {
  transform: scale(1.05);
}

.advantage .sec_3 .list .li .info {
  padding: .45rem .4rem .4rem;
}

.advantage .sec_3 .list .li .info .name {
  color: rgba(71, 67, 66, 1);
  line-height: 1.3;
  transition: all .3s ease-in-out;

  -webkit-line-clamp: 1;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.advantage .sec_3 .list .li:hover .info .name {
  color: rgba(218, 37, 28, 1);
}

.advantage .sec_3 .list .li .info .desc {
  color: rgba(102, 102, 102, 1);
  line-height: 1.5;
  margin-top: .12rem;

  -webkit-line-clamp: 2;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.advantage .sec_3 .page-pagination {
  padding: .66rem 0 0 0;
}


/* =============================================
   contact.css — 联系我们页面样式
   ============================================= */

/* ===== 顶部间距（避开固定导航栏） ===== */
.contact {
  padding-top: .8rem;
}

.contact .breadcrumb {
  max-width: 16.6rem;
  margin: 0 auto;
  padding: .32rem 0;
}


.contact .contact-title-wrap {
  padding: .44rem 0 .2rem;
}

.contact .contact-title-wrap .title-inner {
  max-width: 16.6rem;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  gap: .5rem;
  /* padding: 0 .16rem; */
}

.contact .contact-title-wrap .title-inner .contact-btn {
    /*height: fit-content;*/
    /*margin: auto 0 0;*/
    margin-top: .46rem;
  display: flex;
  align-items: center;
  padding: .12rem .24rem;
  border: 2px solid#1a1a1a;
  color: #fff;
  background: #1a1a1a;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .01rem;
  text-decoration: none;
  transition: background .2s, color .2s
}

.contact .contact-title-wrap .title-inner .contact-btn:hover {
  /*background: #c4161d;*/
  color: #fff
}

.contact .contact-title-wrap .title-inner .contact-btn svg {
  width: .16rem;
  height: .16rem;
  margin-left: .08rem;
  transition: transform .2s
}

.contact .contact-title-wrap .title-inner .contact-btn:hover svg {
  transform: translateX(2px)
}


.contact .contact-title-wrap .page-title {
  color: #1f1a17;
  line-height: 1.2;
  margin-bottom: .2rem;
}

.contact .contact-title-wrap .page-desc {
  color: #666;
  line-height: 1;
}

/* ===== 主体内容（卡片+地图，flex 行） ===== */
.contact .contact-content {
  max-width: 16.6rem;
  margin: 0 auto;
  padding-top: .4rem;
  padding-bottom: .8rem;
}

.contact .contact-content .content-inner {
  display: flex;
  gap: .3rem;
  align-items: flex-start;
}

/* ===== 左侧卡片列表 ===== */
.contact .contact-content .contact-cards {
  width: 4.5rem;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: .3rem;
}

/* ===== 卡片（Figma 450px 宽，#FAFAFA，radius 16px） ===== */
.contact .contact-content .contact-card {
  background: #fafafa;
  border-radius: .16rem;
  position: relative;
}

/* ---- 卡片1：联系电话（Figma #744:6651, 450x202） ---- */
.contact .contact-content .contact-card.card-phone {
  height: 2.02rem;
  padding: .4rem .3rem .53rem .4rem;
}

/* ---- 卡片2：联系方式（Figma #744:6659, 450x234） ---- */
.contact .contact-content .contact-card.card-info {
  height: 2.34rem;
  padding: .4rem .3rem .48rem .4rem;
}

/* ---- 卡片3：关注我们（Figma #744:6670, 450x234） ---- */
.contact .contact-content .contact-card.card-qr {
  height: 2.34rem;
  padding: .4rem .3rem .28rem .4rem;
}

/* ===== 卡片右上角图标（Figma：x=364, y=30, 56x56） ===== */
.contact .contact-content .contact-card .card-icon {
  position: absolute;
  right: .3rem;
  top: .3rem;
  width: .56rem;
  height: .56rem;
}

/* ===== 卡片标题（Figma：x=40, y=40, f_22 hmm, #333） ===== */
.contact .contact-content .contact-card .card-title {
  color: #333;
  line-height: 1.2;
  margin-bottom: .32rem;
}

/* ===== 卡片正文（Figma：x=40, font 18, Regular, #666） ===== */
.contact .contact-content .contact-card .card-text {
  color: #666;
  line-height: 1.2;
  margin-bottom: .19rem;
}

.contact .contact-content .contact-card .card-text:last-child {
  margin-bottom: 0;
}

/* ===== 关注我们卡片 - QR 码（Figma：QR 120x120 在左，文字在右） ===== */
.contact .contact-content .contact-card .card-qr-wrap {
  display: flex;
  align-items: center;
  gap: .16rem;
}

.contact .contact-content .contact-card .card-qr-wrap .qr-image {
  width: 1.2rem;
  height: 1.2rem;
  object-fit: contain;
  flex-shrink: 0;
}

.contact .contact-content .contact-card .card-qr-wrap .qr-label {
  color: #999;
  line-height: 1;
}

/* ===== 右侧地图（Figma #744:6566, 1180x730, radius 20px） ===== */
.contact .contact-content .contact-map {
  width: 11.8rem;
  height: 7.3rem;
  border-radius: .2rem;
  overflow: hidden;
  position: relative;
  background: #d9d9d9;
}

.contact .contact-content .contact-map .map-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  inset: 0;
}

.contact .contact-content .contact-map .map-icon {
  position: absolute;
  left: 5.64rem;
  top: 2.53rem;
  width: .48rem;
  height: .48rem;
  z-index: 2;
}

.contact .contact-content .contact-map .map-company {
  position: absolute;
  left: 4.98rem;
  top: 3.09rem;
  width: 1.8rem;
  color: #333;
  text-align: center;
  z-index: 2;
  line-height: 1.2;
}

.contact .contact-content .contact-map .map-badge {
  position: absolute;
  left: 7.56rem;
  top: 4.09rem;
  width: 1.365rem;
  height: .48rem;
  z-index: 2;
}

.development {
  position: relative;
  padding: .8rem 0 0;
}

.development .breadcrumb {
  padding: .41rem 1.3rem 0;
  margin-bottom: .98rem;

}

.development .bg {
  position: absolute;
  height: 10.8rem;
  width: 100%;
  top: 0;
  left: 0;
  z-index: -1;
}

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

.development .title {
  color: rgba(31, 26, 23, 1);
  text-align: center;
  line-height: 1.3;
  padding: 0 1.3rem;
}

.development .list {
  display: flex;
  flex-direction: column;
  gap: 1.4rem;
  margin-top: .55rem;
  margin-bottom: 1.2rem;
  padding: 0 1.3rem;
}

.development .list .li {
  display: flex;
  align-items: end;
  gap: 1.4rem;
}

.development .list .li:nth-child(2n) {
  flex-direction: row-reverse;
}

.development .list .li .img_box {
  width: 8.3rem;
  height: 5.24rem;
  border-radius: .2rem;
  overflow: hidden;
}

.development .list .li .img_box img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.development .list .li .text_box {
  flex: 1;
}

.development .list .li .text_box .name {
  color: rgba(31, 26, 23, 1);
  line-height: 1.75;
  display: flex;
  align-items: center;
}

.development .list .li .text_box .name span {
  margin-left: .2rem;
  color: #DA251C;
  display: block;
  line-height: 1;
  font-style: italic;
}

.development .list .li .text_box .txt {
  margin-top: .45rem;
  line-height: 1.9;
  color: rgba(51, 51, 51, 1);
}

.development .tabs {
  display: flex;
  padding: .5rem 1.2rem 0;
  justify-content: center;
  gap: .36rem;
}

.development .tabs .tab {
  padding: .16rem .32rem;
  border-radius: .99rem;
  border: 1px solid #E9E9E9;
  cursor: pointer;
  color: rgba(102, 102, 102, 1);
  transition: all .3s;
}

.development .tabs .tab.on,
.development .tabs .tab:hover {
  background: #DA251C;
  color: #fff;
}

/* ===== 社会责任卡片 ===== */
.development .social-swiper {
  overflow: hidden;
  padding: .6rem 1.3rem 1.2rem;
}

.development .social-swiper .swiper-slide {
  width: calc(25% - .15rem);
  height: auto;
}

.development .social-swiper .social-card {
  height: 100%;
}

.development .social-swiper .social-card {
  background: #f9f9f9;
  border-radius: .2rem;
  overflow: hidden;
  transition: all .3s;
  position: relative;
}

.development .social-swiper .social-card::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.03rem;
  background: #DA251C;
  transform: scaleX(0);
  transition: transform 0.3s ease;
  pointer-events: none;
}

.development .social-swiper .social-card:hover::after {
  transform: scaleX(1);
}

.development .social-swiper .social-card:hover {
  background: #fff;
  box-shadow: 0 .14rem .401rem 0 rgba(76, 102, 117, 0.15);
}

.development .social-swiper .social-card .social-card-img {
  width: 100%;
  height: 3.4rem;
  overflow: hidden;
}

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

.development .social-swiper .social-card .social-card-body {
  padding: .28rem .24rem .82rem;
  height: calc(100% - 3.4rem);
  position: relative;
}

.development .social-swiper .social-card .social-card-title {
  color: #1f1a17;
  line-height: 1.4;
  margin-bottom: .12rem;
}

.development .social-swiper .social-card .social-card-text {
  color: #666;
  line-height: 1.6;
  margin-bottom: .16rem;

  -webkit-line-clamp: 2;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.development .social-swiper .social-card .social-card-link {
  color: #333;
  line-height: 1;
  cursor: pointer;
  padding: .12rem .28rem;
  border-radius: .99rem;
  border: 1px solid #666;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: .06rem;
  position: absolute;
  bottom: .24rem;
  left: .24rem;
}

.development .social-swiper .social-card:hover .social-card-link {
  border-color: #DA251C;
  color: #DA251C;
}

/* ===== 未来规划 ===== */
.development .future-section .future-grid {
  display: flex;
  gap: .2rem;
  margin-top: .5rem;
  padding: 0 1.3rem;
  margin-bottom: 2rem;
}

.development .future-section .future-grid .future-card {
  flex: 1;
  background: #f9f9f9;
  border-radius: .2rem;
  padding: .68rem .41rem;
}

.development .future-section .future-grid .future-card .icon {
  width: .55rem;
  height: .55rem;

}

.development .future-section .future-grid .future-card .icon img {
  width: 100%;
  height: 100%;
}

.development .future-section .future-grid .future-card .name {
  color: rgba(31, 26, 23, 1);
  margin-top: .3rem;
}

.development .future-section .future-grid .future-card .box {
  display: flex;
  flex-direction: column;
  gap: .32rem;
  margin-top: .55rem;
}

.development .future-section .future-grid .future-card .box .item {
  position: relative;
  margin-left: .15rem;
}

.development .future-section .future-grid .future-card .box .item::before {
  content: '';
  position: absolute;
  top: .1rem;
  left: -.15rem;
  width: .08rem;
  height: .08rem;
  border-radius: 50%;
  background: #DA251C;
}

.development .future-section .future-grid .future-card .box .item .label {
  color: rgba(70, 70, 70, 1);
  line-height: 1.3;
}

.development .future-section .future-grid .future-card .box .item .txt {
  color: rgba(70, 70, 70, 1);
  line-height: 1.77;
  margin-top: .1rem;
}

/* ===== 解决方案详情页 ===== */
.development-detail {
  padding-top: .8rem;
  background: #F9F9F9;
  min-height: 100vh;
}

.development-detail .breadcrumb {
  padding: .32rem 0 0 0;
}

.development-detail .sd-container {
  max-width: 100%;
  margin: 0 auto;
  padding: 0 1.3rem .8rem;
  width: 100%;
  box-sizing: border-box;
}


/* ===== 白色内容卡片 ===== */
.development-detail .sd-card {
  background: #fff;
  border-radius: 0.2rem;
  margin-top: 0.3rem;
  padding: 0.78rem 0.75rem 1.5rem;
}

.development-detail .sd-card .sd-title {
  color: #1F1A17;
  margin: 0 0 0.2rem 0;
  line-height: 1.2;
}

/* ===== 标签 ===== */
.development-detail .sd-card .sd-tags {
  display: flex;
  gap: 0.2rem;
  margin-bottom: 0.5rem;
}

.development-detail .sd-card .sd-tags .sd-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.08rem 0.2rem;
  border: 1px solid #E9E9E9;
  border-radius: 0.5rem;
  color: #333;
  line-height: 1;
  white-space: nowrap;
}

/* ===== 内容体（子标签选择器） ===== */
.development-detail .sd-card .sd-body {
  margin-top: 0.35rem;
}

.development-detail .sd-card .sd-body p {
  color: #666;
  line-height: 2;
  margin: 0;
}

.development-detail .sd-card .sd-body p+p {
  margin-top: 0.3rem;
}

.development-detail .sd-card .sd-body img {
  width: 100%;
  /* height: 7.62rem; */
  object-fit: cover;
  display: block;
  border-radius: 0.2rem;
  background: #D9D9D9;
}

/* ===== 更多应用 ===== */
.development-detail .sd-more {
  padding-top: 1.5rem;
  padding-bottom: 1rem;
  background: #fff;
}

.development-detail .sd-more .sd-container {
  padding-bottom: 0;
}

.development-detail .sd-more .sd-more-title {
  color: #1F1A17;
  margin: 0;
  line-height: 1.2;
}

.development-detail .sd-more .sd-more-swiper {
  overflow: hidden;
  padding: 0.4rem 1.3rem;
}

.development-detail .sd-more .sd-more-swiper .swiper-wrapper {
  display: flex;
}

/* ===== 导航按钮 ===== */
.development-detail .sd-more .sd-more-nav {
  display: flex;
  gap: 0.12rem;
  justify-content: flex-end;
  padding-right: 1.3rem;
  margin-top: 0.3rem;
}

.development-detail .sd-more .sd-more-nav .sd-more-nav-btn {
  width: 0.38rem;
  height: 0.38rem;
  border-radius: 50%;
  border: none;
  cursor: pointer;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #EAEAEA;
  transition: background 0.2s;
  position: relative;
}

.development-detail .sd-more .sd-more-nav .sd-more-nav-btn:hover {
  background: #DA251C;
}

/* Chevron arrow */
.development-detail .sd-more .sd-more-nav .sd-more-nav-btn::after {
  content: '';
  width: 0.08rem;
  height: 0.08rem;
  border-style: solid;
  border-color: #333;
  border-width: 0 0.02rem 0.02rem 0;
}

.development-detail .sd-more .sd-more-nav .sd-more-nav-btn:hover::after {
  border-color: #fff;
}

.development-detail .sd-more .sd-more-nav .sd-more-nav-prev::after {
  transform: rotate(135deg);
  margin-left: 0.03rem;
}

.development-detail .sd-more .sd-more-nav .sd-more-nav-next::after {
  transform: rotate(-45deg);
  margin-right: 0.03rem;
}

/* ===== 更多卡片 ===== */
.development-detail .sd-more .sd-more-swiper .swiper-slide {
  width: 4.39rem;
  border-radius: 0.2rem;
  overflow: hidden;
  background: #fff;
  position: relative;
  transition: box-shadow 0.3s ease;
}

.development-detail .sd-more-swiper .swiper-slide .sd-more-card-img {
  width: 100%;
  height: 2.93rem;
  overflow: hidden;
}

.development-detail .sd-more-swiper .swiper-slide .sd-more-card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}

.development-detail .sd-more-swiper .swiper-slide .sd-more-card-body {
  padding: 0.4rem;
  display: flex;
  flex-direction: column;
  gap: 0.04rem;
  background: #F7F7F7;
  border-radius: 0 0 0.2rem 0.2rem;
  transition: background 0.3s ease;
}

.development-detail .sd-more-swiper .swiper-slide .sd-more-card-body .sd-more-card-title {
  color: #1F1A17;
  margin: 0;
  line-height: 1.2;
  transition: color 0.3s ease;
}

.development-detail .sd-more-swiper .swiper-slide .sd-more-card-body .sd-more-card-tags {
  color: #666;
  margin: 0;
  line-height: 1.5;
}

/* hover */
.development-detail .sd-more-swiper .swiper-slide:hover {
  box-shadow: 0px 0.14rem 0.4rem 0px rgba(76, 102, 117, 0.15);
}

.development-detail .sd-more-swiper .swiper-slide:hover .sd-more-card-img img {
  transform: scale(1.05);
}

.development-detail .sd-more-swiper .swiper-slide:hover .sd-more-card-body {
  background: #fff;
}

.development-detail .sd-more-swiper .swiper-slide:hover .sd-more-card-body .sd-more-card-title {
  color: #DA251C;
}

/* ===== featured card ===== */
.development-detail .sd-more-swiper .swiper-slide.featured {
  box-shadow: 0px 0.14rem 0.4rem 0px rgba(76, 102, 117, 0.15);
}

.development-detail .sd-more-swiper .swiper-slide.featured .sd-more-card-body {
  background: #fff;
}

.development-detail .sd-more-swiper .swiper-slide.featured .sd-more-card-body .sd-more-card-title {
  color: #DA251C;
}

/* 底部装饰线：hover 时从中间展开 */
.development-detail .sd-more-swiper .swiper-slide::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.03rem;
  background: #DA251C;
  transform: scaleX(0);
  transition: transform 0.3s ease;
  pointer-events: none;
}

.development-detail .sd-more-swiper .swiper-slide:hover::after {
  transform: scaleX(1);
}


/* =============================================
   download.css — 下载中心页面样式
   ============================================= */

/* ===== 主体底部间距 ===== */
.download {
  padding-top: .8rem;
  padding-bottom: 1.84rem;
  min-height: 70vh;
}

/* ===== 顶部区域 ===== */
.download .breadcrumb {
  padding: .41rem 0 0;
  max-width: 16.6rem;
  margin: 0 auto;
}



/* ===== 标题区 ===== */
.download .download-title-wrap {
  padding: .62rem 0 .32rem;
}

.download .download-title-wrap .title-inner {
  max-width: 14rem;
  margin: 0 auto;
  padding: 0 .16rem;
  text-align: center;
}

.download .download-title-wrap .page-title {
  color: #1f1a17;
  line-height: 1.2;
  margin-bottom: .2rem;
}

.download .download-title-wrap .page-desc {
  color: #666;
  line-height: 1;
}

/* ===== 行业筛选 ===== */
.download .download-filter-wrap {
  padding: .24rem 0 .8rem;
}

.download .download-filter-wrap .filter-inner {
  max-width: 14rem;
  margin: 0 auto;
  padding: 0 .16rem;
  display: flex;
  gap: .16rem;
  flex-wrap: wrap;
  justify-content: center;
}

.download .download-filter-wrap .filter-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: .52rem;
  padding: 0 .28rem;
  border-radius: .5rem;
  border: 1px solid #e9e9e9;
  background: transparent;
  color: #666;
  cursor: pointer;
  transition: all .3s ease;
  line-height: 1;
  white-space: nowrap;
}

.download .download-filter-wrap .filter-btn.active {
  background: #da251c;
  color: #fff;
  border-color: #da251c;
}

.download .download-filter-wrap .filter-btn:hover:not(.active) {
  border-color: #da251c;
  color: #da251c;
}

/* ===== 文件板块 ===== */
.download .file-section .section-inner {
  max-width: 14rem;
  margin: 0 auto;
  padding: 0 .16rem;
}

.download .file-section+.file-section {
  margin-top: .8rem;
}

/* ===== 板块标题 ===== */
.download .file-section .section-title {
  color: #1f1a17;
  line-height: 1.2;
  margin-bottom: .3rem;
}

/* ===== 栏头 "文件名" ===== */
.download .file-section .list-header {
  margin-bottom: .3rem;
}

.download .file-section .list-header .list-header-label {
  color: #1f1a17;
  line-height: 1;
}

/* ===== 文件列表 ===== */
.download .file-section .file-list {
  display: flex;
  flex-direction: column;
  gap: .2rem;
}

/* ===== 文件行 ===== */
.download .file-section .file-row {
  display: flex;
  align-items: center;
  background: #f8f8f8;
  border-radius: 10px;
  min-height: .86rem;
  padding: .3rem;
  transition: all .3s ease;
}

.download .file-section .file-row:hover {
  background: #fff;
  box-shadow: 0 0 .66rem rgba(0, 0, 0, .1);
}

.download .file-section .file-row:hover .file-name {
  color: #da251c;
}

.download .file-section .file-row .file-name {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  padding-right: .2rem;
  color: #666;
  line-height: 1.2;
  transition: color .3s ease;
}

.download .file-section .file-row .row-actions {
  display: flex;
  align-items: center;
  gap: .08rem;
  flex-shrink: 0;
}

.download .file-section .file-row .row-btn {
  display: inline-flex;
  align-items: center;
  gap: .06rem;
  padding: .06rem .16rem;
  border-radius: .04rem;
  cursor: pointer;
  transition: all .3s ease;
  line-height: 1;
  white-space: nowrap;
  border: none;
  background: none;
  color: #666;
}

.download .file-section .file-row:hover .row-actions .row-btn:first-child {
  color: #da251c;
}

.download .file-section .file-row .row-btn .btn-icon {
  width: .19rem;
  height: .19rem;
  flex-shrink: 0;
}

/* 留言按钮 双图叠层 */
.download .file-section .file-row .row-btn .btn-icon-stack {
  position: relative;
  display: inline-block;
  width: .19rem;
  height: .19rem;
  flex-shrink: 0;
}

.download .file-section .file-row .row-btn .btn-icon-stack .btn-stack-icon {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  transition: opacity .3s ease;
}

.download .file-section .file-row .row-btn .btn-icon-stack .btn-stack-hover {
  opacity: 0;
}

.download .file-section .file-row:hover .row-btn .btn-icon-stack .btn-stack-icon {
  opacity: 0;
}

.download .file-section .file-row:hover .row-btn .btn-icon-stack .btn-stack-hover {
  opacity: 1;
}

.download .file-section .file-row .row-btn.is-red:hover {
  background: rgba(218, 37, 28, .08);
}



/* =============================================
   login.css — 登录页面样式
   ============================================= */

/* ===== 全屏背景 ===== */
.login-main {
  position: relative;
  width: 100%;
  min-height: 100vh;
  overflow: hidden;
}

.login-bg {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.login-bg-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.login-overlay {
  position: absolute;
  inset: 0;
  /* background: rgba(51, 51, 51, .5); */
}

/* ===== 登录卡片（Figma：x=1294, y=248, 496x640, radius=20px） ===== */
.login-card {
  position: absolute;
  right: 1.3rem;
  /*top: 2.48rem;*/
  top: 20%;
  width: 5.96rem;
  background: #fff;
  border-radius: .2rem;
  box-shadow: 0 .04rem .2rem rgba(0, 0, 0, .1);
}

.login-card-inner {
  padding: .4rem .48rem;
}

/* Logo inside card */
.login-logo-sm {
  height: .55rem;
  width: auto;
  margin-bottom: .38rem;
}

.login-title {
  color: #1f1a17;
  line-height: 1.08;
  margin-bottom: .32rem;
}

/* ===== Tabs（Figma：x=1342, y=436） ===== */
.login-tabs {
  position: relative;
  display: flex;
  gap: .4rem;
  margin-bottom: .3rem;
}

.login-tab {
  border: none;
  background: none;
  cursor: pointer;
  padding: 0 0 .08rem;
  line-height: 1;
  color: #666;
  transition: color .3s;
  position: relative;
}

.login-tab.active {
  color: #da251c;
}

/* .login-tab:nth-child(1) {
  width: .56rem;
} */

/* 密码登录 56px */
/* .login-tab:nth-child(2) {
  width: .7rem;
} */

/* 验证码登录 70px */

/* Tab underline bar（Figma：y=466, 400px, #EEE 1px） */
.login-tabs::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: #eee;
  z-index: 0;
}

/* Active tab underline（Figma：#DA251C 2px） */
.login-tab.active {
  position: relative;
  z-index: 1;
}

.login-tab.active::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: #da251c;
  z-index: 2;
}

/* ===== 表单 ===== */
.login-form {
  display: block;
}

.login-form.hidden {
  display: none;
}

.login-label {
  display: block;
  color: #333;
  line-height: 1;
  margin-bottom: .08rem;
}

.login-input-wrap {
  position: relative;
  /* width: 4rem; */
  flex: 1;
  /* height: .42rem; */
  margin-bottom: .16rem;
}

.login-input {
  width: 100%;
  height: 100%;
  border: 1px solid #d8d8d8;
  border-radius: 4px;
  padding: .1rem .12rem;
  font-size: .14rem;
  line-height: 1;
  outline: none;
  background: rgba(251, 251, 252, .04);
  box-sizing: border-box;
}

.login-input::placeholder {
  color: #c3c3c3;
}

.login-input[type="password"]::-ms-reveal {
  display: none !important;
}

.login-eye {
  position: absolute;
  right: .12rem;
  top: 50%;
  transform: translateY(-50%);
  width: .18rem;
  height: .16rem;
  cursor: pointer;
}

/* ===== 验证码行 ===== */
.login-code-row {
  display: flex;
  gap: .12rem;
  align-items: center;
  margin-bottom: .16rem;
}

.login-code-row .login-input-wrap {
  margin-bottom: 0;
}

.login-code-btn {
  /* width: 1.2rem; */
  /* height: .42rem; */
  padding: .14rem .15rem;
  background: #da251c;
  color: #fff;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  line-height: 1;
}

/* ===== 协议 + 忘记密码 ===== */
.login-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: .2rem;
}

.login-agreement {
  display: flex;
  align-items: center;
  gap: .08rem;
}

/* 隐藏原生 checkbox */
.checkbox-custom input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  pointer-events: none;
}

/* 自定义方框 */
.checkbox-custom .checkmark {
  display: inline-block;
  width: .16rem;
  height: .16rem;
  border: 1px solid #ccc;
  border-radius: 2px;
  background: #fff;
  cursor: pointer;
  transition: 0.2s;
  flex-shrink: 0;
}

/* 选中状态：显示勾选标记（用背景图或伪元素） */
.checkbox-custom input:checked + .checkmark {
  background: #0051FF url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="white"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41L9 16.17z"/></svg>') center/80% no-repeat;
  border-color: #0051FF;
}

.login-checkbox {
  width: .16rem;
  height: .16rem;
  cursor: pointer;
}

.login-agreement span {
  color: #666;
  line-height: 1;
}

.login-forgot {
  color: #0051ff;
  line-height: 1;
  cursor: pointer;
  text-decoration: none;
}

/* ===== 登录按钮 ===== */
.login-btn {
  /*width: 4rem;*/
  width: 100%;
  height: .48rem;
  border: none;
  border-radius: .5rem;
  background: #da251c;
  color: #fff;
  cursor: pointer;
  line-height: .48rem;
  text-align: center;
}

.login-btn.disabled {
  background: #f5f5f5;
  color: #999;
  cursor: default;
}

/* ===== 注册链接 ===== */
.login-register {
  text-align: center;
  color: #333;
  line-height: 1;
  margin-top: .24rem;
}

.login-register a {
  cursor: pointer;
  text-decoration: none;
}

/* ===== 产品列表页 ===== */
.product {
  background: #fff;
  min-height: 100vh;
  padding-top: .8rem;
}

.product .breadcrumb {
  padding: .41rem 1.3rem 0;
}

.product .product-title {
  color: #1F1A17;
}

.product .product-subtitle {
  color: #666;
  margin-top: .2rem;
  line-height: 1.3;
}

/* ===== Container ===== */
.product .product-container {
  padding: 0 1.3rem 1.8rem;
  width: 100%;
}

.product .product-content {
  display: flex;
  gap: 2.38rem;
  margin-top: .8rem;
}

/* ===== Sidebar Filters ===== */
.product .product-sidebar {
  width: 3.24rem;
  flex-shrink: 0;
  padding-top: 0;
}

.product .product-sidebar-menu {
  margin-top: 0.8rem;
  position: sticky;
  top: 1.2rem;
}

.product .solution-sidebar {
  width: 2.58rem;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: 0.24rem;
  position: sticky;
  top: 4.5rem;
  margin-top: .8rem;
  padding-left: .29rem;
}

.product .solution-sidebar .label {
    color: #1F1A17;
    line-height: 1.25;
}

.product .solution-sidebar .solution-sidebar-item {
  display: flex;
  align-items: center;
  gap: 0.12rem;
  padding: 0 0.28rem;
  height: 0.48rem;
  border-radius: 0.3rem;
  cursor: pointer;
  transition: all 0.2s;
  white-space: nowrap;
  text-decoration: none;
}

.product .solution-sidebar .solution-sidebar-item img {
  width: 0.24rem;
  height: 0.24rem;
  flex-shrink: 0;
}

.product .solution-sidebar .solution-sidebar-item .img1,
.product .solution-sidebar .solution-sidebar-item.active .img2{
    display: block;
}
.product .solution-sidebar .solution-sidebar-item.active .img1,
.product .solution-sidebar .solution-sidebar-item .img2{
    display: none;
}

.product .solution-sidebar .solution-sidebar-item .img1,
.product .solution-sidebar .solution-sidebar-item:hover .img2{
    display: block;
}
.product .solution-sidebar .solution-sidebar-item:hover .img1,
.product .solution-sidebar .solution-sidebar-item .img2{
    display: none;
}

.product .solution-sidebar .solution-sidebar-item .solution-sidebar-text {
  line-height: 1;
  color: #666;
}

.product .solution-sidebar .solution-sidebar-item.active {
  background: #FEEFEE;
}

.product .solution-sidebar .solution-sidebar-item.active .solution-sidebar-text {
  color: #DA251C;
}

.product .solution-sidebar .solution-sidebar-item:hover {
  background: #FEEFEE;
}


.product .product-filter {
  display: flex;
  align-items: center;
  width: 2.88rem;
  height: 0.6rem;
  border-radius: 0.375rem;
  cursor: pointer;
  transition: all 0.2s;
  margin-bottom: 0.1rem;
}

.product .product-filter .product-filter-text {
  color: #666;
  padding-left: 0.29rem;
  line-height: 0.2rem;
}

.product .product-filter:hover {
  background: #DA251C;
}

.product .product-filter:hover .product-filter-text {
  color: #fff;
}

.product .product-filter-active {
  background: #DA251C;
}

.product .product-filter-active .product-filter-text {
  color: #fff;
}

/* ===== Sub Filters ===== */
.product .product-sub-filter {
  display: none;
  align-items: center;
  width: 3.24rem;
  cursor: pointer;
  transition: all 0.2s;
  padding: 0.06rem 0 0.06rem 0.58rem;
}

.product .product-sub-filter .product-sub-filter-text {
  color: #888;
  line-height: 0.3rem;
  transition: color 0.2s;
}

.product .product-sub-filter:hover .product-sub-filter-text,
.product .product-sub-filter-active .product-sub-filter-text {
  color: #DA251C;
}

/* ===== Product Main ===== */
.product .product-main {
  flex: 1;
  min-width: 0;
}

.product .product-main-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 0 0.3rem;
}

.product .product-cat-title {
  color: #1F1A17;
  line-height: 1;
}

.product .product-sort {
  display: flex;
  align-items: center;
  gap: 0.08rem;
  /* width: 2.2rem; */
  height: 0.52rem;
  border: 1px solid #D9D9D9;
  border-radius: 0.26rem;
  background: #fff;
  padding: 0 0.16rem;
  cursor: pointer;
  transition: all 0.2s;
}

.product .product-sort .product-sort-text {
  color: #666;
  line-height: 0.2rem;
  white-space: nowrap;
}

.product .product-sort .product-sort-arrow {
  flex-shrink: 0;
}

.product .product-sort:hover {
  border-color: #DA251C;
}

.product .product-sort-open .product-sort-arrow {
  transform: rotate(180deg);
}

/* Sort Dropdown */
.product .product-sort-dropdown {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  margin-top: 0.04rem;
  background: #fff;
  border: 1px solid #D9D9D9;
  border-radius: 0.12rem;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  display: none;
  z-index: 10;
  overflow: hidden;
}

.product .product-sort-open .product-sort-dropdown {
  display: block;
}

.product .product-sort-option {
  padding: 0.1rem 0.16rem;
  color: #666;
  line-height: 0.24rem;
  cursor: pointer;
  transition: all 0.15s;
}

.product .product-sort-option:hover {
  background: #f5f5f5;
  color: #DA251C;
}

.product .product-sort-option-active {
  color: #DA251C;
}

.product .product-sort {
  position: relative;
}

/* ===== Product Grid ===== */
.product .product-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.29rem;
}

/* ===== Product Card ===== */
.product .product-card {
  background: #fff;
  border: 1px solid #E8E8E8;
  border-radius: 0.2rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  transition: all 0.3s;
  position: relative;
  padding-bottom: 0.4rem;
}

.product .product-card:hover {
  border-color: #DA251C;
}

.product .product-card:hover .product-card-title {
  color: #DA251C;
}

.product .product-card-img {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 3.2rem;
  padding: 0.8rem 0.6rem 0.4rem;
  overflow: hidden;
}

.product .product-card-img img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  transition: transform 0.3s;
}

.product .product-card:hover .product-card-img img {
  transform: scale(1.05);
}

.product .product-card-title {
  color: #1F1A17;
  line-height: 1.3;
  padding: 0 0.3rem;
  /*min-height: 0.8rem;*/
  display: flex;
  align-items: center;
  justify-content: center;
  
  -webkit-line-clamp: 2;
display: -webkit-box;
-webkit-box-orient: vertical;
overflow: hidden;

}

.product .product-card-desc {
  color: #888;
  line-height: 1.5;
  margin: 0.08rem 0.5rem 0.24rem;
  
  -webkit-line-clamp: 2;
display: -webkit-box;
-webkit-box-orient: vertical;
overflow: hidden;

}

.product .product-card-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.48rem;
  height: 0.44rem;
  border-radius: 0.22rem;
  border: 1px solid #C9C9C9;
  color: #333;
  text-decoration: none;
  opacity: 0;
  transition: all 0.3s;
}

.product .product-card:hover .product-card-btn {
  opacity: 1;
  border-color: #DA251C;
  background: #DA251C;
  color: #fff;
}

/* ===== Pagination ===== */
.product .page-pagination {
  padding: 0.6rem 0 1.8rem;
}

.productdetail {
  position: relative;
  padding: .8rem 0 0 0;
}

.productdetail .breadcrumb {
  padding: .32rem 0;
}

.productdetail .sec_1 {
  position: relative;
  z-index: 1;
  background: #f8f8f8;
  padding: 0 1.3rem .66rem 1.3rem;
}

.productdetail .sec_1 .box {
  height: 6rem;
  width: 100%;
  position: relative;
}

.productdetail .sec_1 .box .img_box {
  width: 8.51rem;
  height: 3.93rem;
  position: absolute;
  top: .1rem;
  left: 50%;
  transform: translateX(-50%);

}

.productdetail .sec_1 .box .img_box .txt {
  font-size: 1.8rem;
  color: #f6edec;
  font-weight: bold;
  position: absolute;
  top: 50%;
  left: 50%;
  white-space: nowrap;
  transform: translate(-50%, -50%);
}

.productdetail .sec_1 .box .img_box img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  opacity: 0;
  transition: all .3s ease-in-out;
}

.productdetail .sec_1 .box .img_box img.on {
  opacity: 1;
}

.productdetail .sec_1 .box .tabs {
  display: flex;
  gap: .24rem;
  align-items: center;
  position: absolute;
  bottom: 1.8rem;
  right: 0;
}

.productdetail .sec_1 .box .tabs .tab {
  width: .46rem;
  height: .75rem;
  position: relative;
  cursor: pointer;
}

.productdetail .sec_1 .box .tabs .tab::after {
  content: '';
  position: absolute;
  bottom: -.2rem;
  left: 0;
  width: 0;
  height: 2px;
  background: rgba(218, 37, 28, 1);
}

.productdetail .sec_1 .box .tabs .tab.on::after {
  width: 100%;
}

.productdetail .sec_1 .box .tabs .tab img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.productdetail .sec_1 .content {
  display: flex;
  gap: 2.18rem;
  justify-content: space-between;
}

.productdetail .sec_1 .content .left {
  flex: 1;
}

.productdetail .sec_1 .content .left .type {
  color: rgba(218, 37, 28, 1);
  letter-spacing: 0.6px;
}

.productdetail .sec_1 .content .left .name {
  font-weight: 600;
  color: rgba(31, 26, 23, 1);
  margin-top: .12rem;
  line-height: 1.25;
}

.productdetail .sec_1 .content .left .tags {
  display: flex;
  flex-wrap: wrap;
  gap: .24rem;
  margin-top: .47rem;
}

.productdetail .sec_1 .content .left .tags span {
  display: block;
  padding: .105rem .2rem;
  border-radius: .99rem;
  color: rgba(102, 102, 102, 1);
  border: 1px solid rgba(0, 0, 0, 0.20);
}

.productdetail .sec_1 .content .right {
  width: 7.3rem;
}

.productdetail .sec_1 .content .right .btns {
    display: flex;
    gap: .2rem;
}

.productdetail .sec_1 .content .right .btns .contact-btn {
    /*height: fit-content;*/
    /*margin: auto 0 0;*/
    margin-top: .46rem;
  display: flex;
  align-items: center;
  padding: .12rem .24rem;
  border: 2px solid #e31b23;
  color: #fff;
  background: #e31b23;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .01rem;
  text-decoration: none;
  transition: background .2s, color .2s
}

.productdetail .sec_1 .content .right .btns .contact-btn:hover {
  background: #c4161d;
  color: #fff
}

.productdetail .sec_1 .content .right .btns .contact-btn svg {
  width: .16rem;
  height: .16rem;
  margin-left: .08rem;
  transition: transform .2s
}

.productdetail .sec_1 .content .right .btns .contact-btn:hover svg {
  transform: translateX(2px)
}


.productdetail .sec_1 .content .right .desc {
  color: rgba(102, 102, 102, 1);
  line-height: 2.12;
}

.productdetail .sec_1 .content .right .file_box {
  display: flex;
  flex-direction: column;
  gap: .2rem;
  margin-top: .46rem;
}

.productdetail .sec_1 .content .right .file_box .file {
  display: flex;
  align-items: center;
  padding: .21rem .28rem;
  background: #fff;
  justify-content: space-between;
  gap: .2rem;
}

.productdetail .sec_1 .content .right .file_box .file .name {
  color: rgba(51, 51, 51, 1);
  line-height: 1.22;
}

.productdetail .sec_1 .content .right .file_box .file .download-btn {
  display: flex;
  align-items: center;
  gap: .12rem;

  color: rgba(102, 102, 102, 1);
  line-height: 1.11;
}

.productdetail .sec_1 .content .right .file_box .file .download-btn img {
  width: .17rem;
  height: .17rem;
}

.productdetail .sec_2 {
  position: relative;
  padding: 1.2rem 1.3rem .53rem 1.3rem;
}

.productdetail .sec_2 .title {
  text-align: center;
  color: rgba(31, 26, 23, 1);
  line-height: 1.25;
}

.productdetail .sec_2 .txt {
  margin-top: .2rem;
  text-align: center;
  line-height: 1.25;
  color: rgba(102, 102, 102, 1);
}

.productdetail .sec_2 .content {
  margin-top: .6rem;
}

.productdetail .sec_2 .content .sec2_swiper_1 {
  width: 100%;
  overflow: hidden;
}

.productdetail .sec_2 .content .table p {
    color: #666;
    line-height: 2;
}

.productdetail .sec_2 .content .table {
    width: 100%;
    overflow-x: auto;
    padding-bottom: .2rem;
    cursor: auto;
}
.productdetail .sec_2 .content .table:hover {
    cursor: url('../images/cursor-point.svg') 10 10, auto;
}
.productdetail .sec_2 .content table {
  width: 100% !important;
  border-collapse: collapse;
  background: #fff;
  border-radius: 0.12rem;
  table-layout: fixed;
  overflow: hidden;
}

.productdetail .sec_2 .content tr:first-child td {
  background: #1F1A17;
  color: #fff;
  padding: 0.2rem 0.12rem;
  text-align: center;
  font-size: 0.2rem;
  font-weight: 500;
  white-space: nowrap;
  border: none;
}

/* 数据行 td 有右和下虚线，首行除外 */
.productdetail .sec_2 .content tr:not(:first-child) td {
  padding: 0.2rem 0.12rem;
  text-align: center;
  color: #666;
  line-height: 1.44;
  border-bottom: 1px dashed #E8E8E8;
  border-right: 1px dashed #E8E8E8;
}

.productdetail .sec_2 .content tr:not(:first-child) td:first-child {
  border-left: 1px dashed #E8E8E8;
}

.productdetail .sec_2 .content tr:not(:first-child) td:last-child {
  border-right: 1px dashed #E8E8E8;
}

.productdetail .sec_2 .content tr:nth-child(odd):not(:first-child) td {
  background: #FBFBFB;
}

.productdetail .sec_2 .content tr:last-child td {
  border-bottom: 1px dashed #E8E8E8;
}

/* Column widths matching Figma */
/* .productdetail .sec_2 .content colgroup col:nth-child(1) { width: 2.25rem; }
.productdetail .sec_2 .content colgroup col:nth-child(2) { width: 2.61rem; }
.productdetail .sec_2 .content colgroup col:nth-child(3) { width: 2.23rem; }
.productdetail .sec_2 .content colgroup col:nth-child(4) { width: 1.72rem; }
.productdetail .sec_2 .content colgroup col:nth-child(5) { width: 3.69rem; }
.productdetail .sec_2 .content colgroup col:nth-child(6) { width: 4.1rem; } */

.productdetail .sec_2 .content .btns {
  display: flex;
  justify-content: end;
  margin-top: .27rem;
  gap: .2rem;
}

.productdetail .sec_2 .content .btns .btn {
  width: .6rem;
  height: .6rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #1F1A17;
  cursor: pointer;
}

.productdetail .sec_2 .content .btns .btn img {
  width: .12rem;
}

.productdetail .sec_2 .content .btns .btn:hover {
  background: #1F1A17;
}

.productdetail .sec_2 .content .btns .btn .normal,
.productdetail .sec_2 .content .btns .btn:hover .active {
  display: block;
}

.productdetail .sec_2 .content .btns .btn:hover .normal,
.productdetail .sec_2 .content .btns .btn .active {
  display: none;
}

.productdetail .sec_3 {
  position: relative;
  padding: 1.16rem 1.3rem 1.64rem 1.3rem;
  background: rgba(248, 248, 248, 1);
}

.productdetail .sec_3 .title {
  text-align: center;
  color: rgba(31, 26, 23, 1);
  line-height: 1.25;
}

.productdetail .sec_3 .txt {
  margin-top: .2rem;
  text-align: center;
  line-height: 1.25;
  color: rgba(102, 102, 102, 1);
}

.productdetail .sec_3 .content {
  margin-top: .6rem;
  display: flex;
  gap: .5rem;
}

.productdetail .sec_3 .content .img_box {
  width: 7.6rem;
  height: 5.78rem;
  flex-shrink: 0;
  border-radius: .2rem;
  overflow: hidden;
}

.productdetail .sec_3 .content .img_box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.productdetail .sec_3 .content .info {
  /*height: 5.78rem;*/
  height: 6.1rem;
  overflow-y: auto;
  flex: 1;

  color: rgba(68, 68, 68, 1);
  line-height: 1.8;


}

.productdetail .sec_3 .content .info ul,
.productdetail .sec_3 .content .info ul li {
  list-style-type: none;
  position: relative;
  padding-left: .3rem;
  padding-right: .4rem;
}
.productdetail .sec_3 .content .info ul li {
  margin-bottom: .2rem;
}

.productdetail .sec_3 .content .info ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .1rem;
  width: .1rem;
  height: .1rem;
  border-radius: 50%;
  background: #DA251C;
}

.productdetail .sec_4 {
  position: relative;
  padding: 1.2rem 0 2rem 0;
}

.productdetail .sec_4 .title {
  text-align: center;
  color: rgba(31, 26, 23, 1);
  line-height: 1.25;
  padding: 0 1.3rem;
}

.productdetail .sec_4 .txt {
  margin-top: .2rem;
  text-align: center;
  line-height: 1.25;
  color: rgba(102, 102, 102, 1);
  padding: 0 1.3rem;
}

.productdetail .sec_4 .content {
  margin-top: .5rem;

}

.productdetail .sec_4 .content .sec4_swiper {
  width: 100%;
  overflow: hidden;
}

.productdetail .sec_4 .content .item {
  position: relative;
  width: 100%;
  height: 4.5rem;
  transition: all .3s ease-in-out;
  border-radius: .2rem;
}

.productdetail .sec_4 .content .item .img_box {
  width: 100%;
  height: 100%;
  border-radius: .2rem;
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
}

.productdetail .sec_4 .content .item .img_box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.productdetail .sec_4 .content .item .info {
  display: flex;
  position: relative;
  z-index: 1;
  flex-direction: column;
  height: 100%;
  justify-content: flex-end;
  padding: .5rem .6rem;
}

.productdetail .sec_4 .content .item .info::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: .2rem;
  background: linear-gradient(180deg, rgba(34, 34, 34, 0.00) 0%, rgba(34, 34, 34, 0.90) 100%);
  z-index: -1;
}

.productdetail .sec_4 .content .item .info .name {
  color: rgba(255, 255, 255, 1);
  line-height: 1.23;
}

.productdetail .sec_4 .content .item .info .desc {
  color: rgba(255, 255, 255, 1);
  line-height: 1.75;

  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.35s ease-in-out,
              opacity 0.35s ease,
              margin 0.35s ease;
  opacity: 0;
  margin-top: 0;
}

/* 内层需要套一个包裹容器，防止内容溢出 */
.productdetail .sec_4 .content .item .info .desc > * {
  overflow: hidden;
}

.productdetail .sec_4 .content .item:hover .info .desc {
  grid-template-rows: 1fr;
  margin-top: .24rem;
  opacity: 1;
}
.productdetail .sec_4 .content .btns {
  display: flex;
  justify-content: end;
  margin-top: .3rem;
  gap: .2rem;
  padding: 0 1.3rem;
}


.productdetail .sec_4 .content .btns .btn {
  width: .6rem;
  height: .6rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #1F1A17;
  cursor: pointer;
}

.productdetail .sec_4 .content .btns .btn img {
  width: .12rem;
}

.productdetail .sec_4 .content .btns .btn:hover {
  background: #1F1A17;
}

.productdetail .sec_4 .content .btns .btn .normal,
.productdetail .sec_4 .content .btns .btn:hover .active {
  display: block;
}

.productdetail .sec_4 .content .btns .btn:hover .normal,
.productdetail .sec_4 .content .btns .btn .active {
  display: none;
}

/* =============================================
   register.css — 注册/重置密码页面样式
   共用 login.css 的背景、卡片、按钮等
   ============================================= */

/* ===== 注册表单行（Figma：标签在左，输入框在右） ===== */
.register-form {
  display: flex;
  flex-direction: column;
}

.register-row {
  display: flex;
  align-items: center;
  gap: .12rem;
  margin-bottom: .16rem;
}

.register-label {
  width: .71rem;
  /* width: 1.3rem; */
  flex-shrink: 0;
  color: #333;
  line-height: 1;
  text-align: left;
}

@media screen and (min-width: 768px) and (max-width: 1480px) {
  .register-label {
    width: 1rem;
  }

  .login-card {
    width: 6.96rem;
  }
}

@media screen and (min-width: 768px) and (max-width: 1080px) {
  .register-label {
    width: 1.4rem;
  }


}

.register-input-wrap {
  position: relative;
  flex: 1;
  /* height: .42rem; */
}

.register-input {
  width: 100%;
  height: 100%;
  border: 1px solid #d8d8d8;
  border-radius: 4px;
  padding: .1rem .12rem;
  font-size: .14rem;
  line-height: 1;
  outline: none;
  background: rgba(251, 251, 252, .04);
  box-sizing: border-box;
}

.register-input::placeholder {
  color: #c3c3c3;
}

.register-input[type="password"]::-ms-reveal {
  display: none !important;
}

.register-eye {
  position: absolute;
  right: .12rem;
  top: 50%;
  transform: translateY(-50%);
  width: .18rem;
  height: .16rem;
  cursor: pointer;
}

/* ===== 验证码行 ===== */
.register-code-group {
  display: flex;
  gap: .12rem;
  align-items: center;
  flex: 1;
}

.register-code-btn {
  /* width: 1.2rem;
  height: .42rem; */
  padding: .14rem .15rem;
  background: #da251c;
  color: #fff;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  line-height: 1;
  flex-shrink: 0;
}

/* ===== 协议行（协议在左，已有账号登录在右） ===== */
.register-agreement-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: .12rem;
  margin-bottom: .2rem;
}

.register-agreement {
  display: flex;
  align-items: center;
  gap: .08rem;
}

.register-checkbox {
  width: .16rem;
  height: .16rem;
  cursor: pointer;
}

.register-agreement span {
  color: #666;
  line-height: 1;
}

/* ===== 已有账号登录链接 ===== */
.register-login {
  color: #0051ff;
  line-height: 1;
  cursor: pointer;
  text-decoration: none;
}

/* ===== 忘记密码页：想起密码？去登录 ===== */
.forget-login {
  text-align: center;
  color: #333;
  line-height: 1;
  margin-top: .24rem;
}

.forget-login a {
  cursor: pointer;
  text-decoration: none;
}

/* ===== 售后服务页 ===== */
.service {
  padding-top: .8rem;
  background: #fff;
  min-height: 100vh;
}

.service .breadcrumb {
  padding: .41rem 0 .2rem;
}

.service .service-container {
  max-width: 100%;
  margin: 0 auto;
  padding: 0 1.3rem;
  width: 100%;
  box-sizing: border-box;
}


/* ===== Top: 两列布局 ===== */
.service .service-top {
  display: flex;
  gap: 0.68rem;
  padding-top: 0.4rem;
}

/* Left: Image */
.service .service-top .service-image {
  width: 8.1rem;
  flex-shrink: 0;
  height: 7.6rem;
  border-radius: 0.2rem;
  overflow: hidden;
  background: #C4C4C4;
}

.service .service-top .service-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Right: Content */
.service .service-top .service-content {
  flex: 1;
  height: 7.6rem;
  /* display: flex; */
}

.service .service-top .service-content .service-title {
  color: #1F1A17;
  margin: 0 0 0.12rem 0;
  line-height: 1.2;
}

.service .service-top .service-content .service-subtitle {
  color: #666;
  margin: 0 0 0.8rem 0;
  line-height: 1.5;
}

/* ===== Accordion Items ===== */
.service .service-accordion .service-accordion-item {
  border-bottom: 0.5px solid #AAAAAA;
  padding: 0.32rem 0;
}

.service .service-accordion .service-accordion-item .service-accordion-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
}

.service .service-accordion .service-accordion-item .service-accordion-header .service-accordion-left {
  display: flex;
  align-items: center;
  gap: 0.12rem;
}

.service .service-accordion .service-accordion-item .service-accordion-header .service-accordion-left .service-accordion-icon {
  width: 0.28rem;
  height: 0.28rem;
  flex-shrink: 0;
}

.service .service-accordion .service-accordion-item .service-accordion-header .service-accordion-left .service-accordion-icon svg {
  width: 100%;
  height: 100%;
  display: block;
}

.service .service-accordion .service-accordion-item .service-accordion-header .service-accordion-left .service-accordion-label {
  color: #1D1D1F;
  margin: 0;
  line-height: 1.2;
}

.service .service-accordion .service-accordion-item .service-accordion-header .service-accordion-arrow {
  width: 0.28rem;
  height: 0.28rem;
  flex-shrink: 0;
  transition: transform 0.3s ease;
  cursor: pointer;
}

.service .service-accordion .service-accordion-item .service-accordion-header .service-accordion-arrow svg {
  width: 100%;
  height: 100%;
  display: block;
}

.service .service-accordion .service-accordion-item .service-accordion-body {
  margin-top: 0.2rem;
  overflow: hidden;
  max-height: 0;
  transition: max-height 0s ease-in-out;
}

.service .service-accordion .service-accordion-item .service-accordion-body {
  color: #666;
  line-height: 1.9em;
  margin: 0;

}

.service .service-accordion .service-accordion-item.active .service-accordion-arrow {
  transform: rotate(180deg);
}

.service .service-accordion .service-accordion-item.active .service-accordion-body {
  max-height: 2rem;
  overflow-y: auto;
  padding-top: .2rem;
  transition: max-height 0.5s ease-in-out;
}

/* ===== 服务网点表格 ===== */
.service .service-table-wrap {
  background: #fff;
  padding: 0.8rem 0 1.8rem;
}

.service .service-table-wrap .service-section-title {
  text-align: center;
  margin-bottom: 0.4rem;
}

.service .service-table-wrap .service-section-title h2 {
  margin: 0 0 0.12rem;
}

.service .service-table-wrap .service-section-title p {
  margin: 0;
  color: #666;
}

.service .service-table-wrap table {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
  border-radius: 0.12rem;
  table-layout: fixed;
}

.service .service-table-wrap tr:first-child td {
  background: #1F1A17;
  color: #fff;
  padding: 0.2rem 0.12rem;
  text-align: center;
  font-size: 0.2rem;
  font-weight: 500;
  white-space: nowrap;
  border: none;
}

/* 数据行 td 有右和下虚线，首行除外 */
.service .service-table-wrap tr:not(:first-child) td {
  padding: 0.2rem 0.12rem;
  text-align: center;
  color: #666;
  border-bottom: 1px dashed #E8E8E8;
  border-right: 1px dashed #E8E8E8;
  line-height: 1.2;
}

.service .service-table-wrap tr:not(:first-child) td:first-child {
  border-left: 1px dashed #E8E8E8;
}

.service .service-table-wrap tr:not(:first-child) td:last-child {
  border-right: 1px dashed #E8E8E8;
}

.service .service-table-wrap tr:nth-child(odd):not(:first-child) td {
  background: #FBFBFB;
}

.service .service-table-wrap tr:last-child td {
  border-bottom: 1px dashed #E8E8E8;
}

/* Column widths matching Figma */
.service .service-table-wrap colgroup col:nth-child(1) {
  width: 2.25rem;
}

.service .service-table-wrap colgroup col:nth-child(2) {
  width: 2.61rem;
}

.service .service-table-wrap colgroup col:nth-child(3) {
  width: 2.23rem;
}

.service .service-table-wrap colgroup col:nth-child(4) {
  width: 1.72rem;
}

.service .service-table-wrap colgroup col:nth-child(5) {
  width: 3.69rem;
}

.service .service-table-wrap colgroup col:nth-child(6) {
  width: 4.1rem;
}

/* ===== 在线报修表单 ===== */
.service .service-form-wrap {
  background: rgba(249, 249, 249, 0.98);
  padding: 1.2rem 0 1.8rem;
}

.service .service-form-wrap .service-form-title {
  text-align: center;
  margin-bottom: 0.4rem;
}

.service .service-form-wrap .service-form-title h2 {
  color: #1F1A17;
  margin: 0 0 0.12rem 0;
  line-height: 1.2;
}

.service .service-form-wrap .service-form-title p {
  color: #666;
  margin: 0;
  line-height: 1.5;
}

.service .service-form-wrap .service-form-layout {
  display: flex;
  gap: 1.1rem;
  align-items: flex-start;
}

.service .service-form-wrap .service-form-layout form {
  width: 8rem;
  flex-shrink: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}

.service .service-form-wrap .service-form-layout .form_item {
  width: 100%;
}

.service .service-form-wrap .service-form-layout .form_item.half {
  width: calc((100% - .4rem) / 2);
}

.service .service-form-wrap .service-form-layout .form_item .label {
  display: flex;
  gap: .05rem;
  align-items: center;
  color: #666;
}

.service .service-form-wrap .service-form-layout .form_item .label .required {
  color: #DA251C;
}

.service .service-form-wrap .service-form-layout .form_item input {
  width: 100%;
  padding: 0 0.2rem;
  border: 1px solid #D9D9D9;
  border-radius: 0.1rem;
  background: #fff;
  color: #333;
  outline: none;
  box-sizing: border-box;
  transition: border-color 0.2s;
  height: .52rem;
  margin-top: .1rem;
}

.service .service-form-wrap .service-form-layout .form_item input::placeholder,
.service .service-form-wrap .service-form-layout .form_item textarea::placeholder {
  color: rgba(153, 153, 153, 1);
}

.service .service-form-wrap .service-form-layout .form_item textarea {
  width: 100%;
  padding: 0.2rem;
  border: 1px solid #D9D9D9;
  border-radius: 0.1rem;
  background: #fff;
  color: #333;
  outline: none;
  box-sizing: border-box;
  transition: border-color 0.2s;
  margin-top: .1rem;
}



.service .service-form-wrap .service-form-layout .form-submit {
  width: 100%;
  padding: 0.12rem 0.2rem;
  background: #DA251C;
  color: #fff;
  border: none;
  border-radius: 0.5rem;
  cursor: pointer;
  transition: background 0.2s;
  text-align: center;
  line-height: 1.2;
}

.service .service-form-wrap .service-form-layout .form-submit:hover {
  background: #b81e16;
}

.service .service-form-wrap .service-form-layout .form-image {
  width: 7.5rem;
  flex-shrink: 0;
  height: 5.2rem;
  border-radius: 0.2rem;
  overflow: hidden;
  background: #C4C4C4;
  margin-top: 0.36rem;
}

.service .service-form-wrap .service-form-layout .form-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}


/* ===== 解决方案主内容 ===== */
.solution {
  padding-top: 1rem;
  background: #fff;
  min-height: 100vh;
}

.solution .solution-container {
  max-width: 100%;
  margin: 0 auto;
  padding: 0 1.3rem;
  width: 100%;
  box-sizing: border-box;
}

/* ===== 主体布局（侧边栏 + 分隔线 + 内容） ===== */
.solution .solution-layout {
  display: flex;
  align-items: flex-start;
  /* padding-top: 0.4rem; */
}

/* ===== 侧边栏 ===== */
.solution .solution-sidebar {
  /*width: 1.58rem;*/
  width: fit-content;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: 0.24rem;
  position: sticky;
  top: 1.5rem;
}

.solution .solution-sidebar .solution-sidebar-item {
  display: flex;
  align-items: center;
  gap: 0.12rem;
  padding: 0 0.28rem;
  height: 0.48rem;
  border-radius: 0.3rem;
  cursor: pointer;
  transition: all 0.2s;
  white-space: nowrap;
  text-decoration: none;
}

.solution .solution-sidebar .solution-sidebar-item img {
  width: 0.24rem;
  height: 0.24rem;
  flex-shrink: 0;
}

.solution .solution-sidebar .solution-sidebar-item .img1,
.solution .solution-sidebar .solution-sidebar-item.active .img2{
    display: block;
}
.solution .solution-sidebar .solution-sidebar-item.active .img1,
.solution .solution-sidebar .solution-sidebar-item .img2{
    display: none;
}

.solution .solution-sidebar .solution-sidebar-item .img1,
.solution .solution-sidebar .solution-sidebar-item:hover .img2{
    display: block;
}
.solution .solution-sidebar .solution-sidebar-item:hover .img1,
.solution .solution-sidebar .solution-sidebar-item .img2{
    display: none;
}

.solution .solution-sidebar .solution-sidebar-item .solution-sidebar-text {
  line-height: 1;
  color: #666;
}

.solution .solution-sidebar .solution-sidebar-item.active {
  background: #FEEFEE;
}

.solution .solution-sidebar .solution-sidebar-item.active .solution-sidebar-text {
  color: #DA251C;
}

.solution .solution-sidebar .solution-sidebar-item:hover {
  background: #FEEFEE;
}

/* ===== 分隔线 ===== */
.solution .solution-divider {
  width: 0;
  align-self: stretch;
  border-left: 1px dashed #D2D2D2;
  flex-shrink: 0;
  margin: 0 0.54rem;
}

/* ===== 内容区 ===== */
.solution .solution-content-area {
  flex: 1;
  min-width: 0;
  padding-bottom: 1.8rem;
}

/* 底部装饰线：hover 时从中间展开 */
.solution .solution-cards .solution-card::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.03rem;
  background: #DA251C;
  transform: scaleX(0);
  transition: transform 0.3s ease;
  pointer-events: none;
}

.solution .solution-cards .solution-card:hover::after {
  transform: scaleX(1);
}

/* ===== Top: 大图 + 文本并排 ===== */
.solution .solution-content-top {
  display: flex;
  gap: 0.4rem;
  margin-bottom: 1rem;
}

.solution .solution-content-top .solution-top-image {
  width: 5.98rem;
  height: 4.05rem;
  flex-shrink: 0;
  border-radius: 0.2rem;
  overflow: hidden;
}

.solution .solution-content-top .solution-top-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.solution .solution-content-top .solution-top-text {
  flex: 1;
  min-width: 0;
}

.solution .solution-content-top .solution-title {
  color: #1F1A17;
  line-height: 1.2;
  margin-bottom: 0.2rem;
}

.solution .solution-content-top .solution-subtitle {
  color: #666;
  line-height: 1;
  margin-bottom: 0.68rem;
}

.solution .solution-content-top .solution-desc {
  color: #666;
  line-height: 1.75;
  margin-bottom: 0.16rem;
}

/* ===== 卡片列表 ===== */
.solution .solution-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.24rem;
}

.solution .solution-cards .solution-card {
  display: block;
  border-radius: 0.2rem;
  overflow: hidden;
  background: #F9F9F9;
  text-decoration: none;
  transition: all 0.3s;
  position: relative;
}

.solution .solution-cards .solution-card:hover {
  box-shadow: 0px 0.14rem 0.4rem 0px rgba(76, 102, 117, 0.15);
}

.solution .solution-cards .solution-card:hover .solution-card-img img {
  transform: scale(1.05);
}

.solution .solution-cards .solution-card:hover .solution-card-body {
  background: #fff;
}

.solution .solution-cards .solution-card:hover .solution-card-title {
  color: #DA251C;
}

.solution .solution-cards .solution-card .solution-card-img img {
  width: 100%;
  height: 2.4rem;
  object-fit: cover;
  display: block;
  transition: transform 0.3s ease;
}

.solution .solution-cards .solution-card .solution-card-body {
  transition: background 0.3s ease;
}

.solution .solution-cards .solution-card .solution-card-title {
  transition: color 0.3s ease;
}

.solution .solution-cards .solution-card .solution-card-body {
  padding: .4rem;
}

.solution .solution-cards .solution-card .solution-card-title {
  color: #1F1A17;
  line-height: 1.2;
  margin-bottom: 0.08rem;
}

.solution .solution-cards .solution-card .solution-card-tags {
  color: #666;
  line-height: 1.32;
}


/* ===== 解决方案详情页 ===== */
.solution-detail {
  padding-top: .8rem;
  background: #F9F9F9;
  min-height: 100vh;
}

.solution-detail .breadcrumb {
  padding: .32rem 0 0 0;
}

.solution-detail .sd-container {
  max-width: 100%;
  margin: 0 auto;
  padding: 0 1.3rem .8rem;
  width: 100%;
  box-sizing: border-box;
}


/* ===== 白色内容卡片 ===== */
.solution-detail .sd-card {
  background: #fff;
  border-radius: 0.2rem;
  margin-top: 0.3rem;
  padding: 0.78rem 0.75rem 1.5rem;
}

.solution-detail .sd-card .sd-title {
  color: #1F1A17;
  margin: 0 0 0.2rem 0;
  line-height: 1.2;
}

/* ===== 标签 ===== */
.solution-detail .sd-card .sd-tags {
  display: flex;
  gap: 0.2rem;
  margin-bottom: 0.5rem;
}

.solution-detail .sd-card .sd-tags .sd-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.04rem 0.2rem;
  border: 1px solid #E9E9E9;
  border-radius: 0.5rem;
  color: #333;
  line-height: 1;
  white-space: nowrap;
}

/* ===== 内容体（子标签选择器） ===== */
.solution-detail .sd-card .sd-body {
  margin-top: 0.35rem;
}

.solution-detail .sd-card .sd-body p {
  color: #666;
  line-height: 2;
  margin: 0;
}

.solution-detail .sd-card .sd-body p+p {
  margin-top: 0.3rem;
}

.solution-detail .sd-card .sd-body img {
  width: 100%;
  object-fit: cover;
  display: block;
  border-radius: 0.2rem;
  background: #D9D9D9;
}

/* ===== 更多应用 ===== */
.solution-detail .sd-more {
  padding-top: 1.5rem;
  padding-bottom: 1rem;
  background: #fff;
}

.solution-detail .sd-more .sd-container {
  padding-bottom: 0;
}

.solution-detail .sd-more .sd-more-title {
  color: #1F1A17;
  margin: 0;
  line-height: 1.2;
}

.solution-detail .sd-more .sd-more-swiper {
  overflow: hidden;
  padding: 0.4rem 1.3rem;
}

.solution-detail .sd-more .sd-more-swiper .swiper-wrapper {
  display: flex;
}

/* ===== 导航按钮 ===== */
.solution-detail .sd-more .sd-more-nav {
  display: flex;
  gap: 0.12rem;
  justify-content: flex-end;
  padding-right: 1.3rem;
  margin-top: 0.3rem;
}

.solution-detail .sd-more .sd-more-nav .sd-more-nav-btn {
  width: 0.38rem;
  height: 0.38rem;
  border-radius: 50%;
  border: none;
  cursor: pointer;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #EAEAEA;
  transition: background 0.2s;
  position: relative;
}

.solution-detail .sd-more .sd-more-nav .sd-more-nav-btn:hover {
  background: #DA251C;
}

/* Chevron arrow */
.solution-detail .sd-more .sd-more-nav .sd-more-nav-btn::after {
  content: '';
  width: 0.08rem;
  height: 0.08rem;
  border-style: solid;
  border-color: #333;
  border-width: 0 0.02rem 0.02rem 0;
}

.solution-detail .sd-more .sd-more-nav .sd-more-nav-btn:hover::after {
  border-color: #fff;
}

.solution-detail .sd-more .sd-more-nav .sd-more-nav-prev::after {
  transform: rotate(135deg);
  margin-left: 0.03rem;
}

.solution-detail .sd-more .sd-more-nav .sd-more-nav-next::after {
  transform: rotate(-45deg);
  margin-right: 0.03rem;
}

/* ===== 更多卡片 ===== */
.solution-detail .sd-more .sd-more-swiper .swiper-slide {
  width: 4.39rem;
  border-radius: 0.2rem;
  overflow: hidden;
  background: #fff;
  position: relative;
  transition: box-shadow 0.3s ease;
}

.solution-detail .sd-more-swiper .swiper-slide .sd-more-card-img {
  width: 100%;
  height: 2.93rem;
  overflow: hidden;
}

.solution-detail .sd-more-swiper .swiper-slide .sd-more-card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}

.solution-detail .sd-more-swiper .swiper-slide .sd-more-card-body {
  padding: 0.4rem;
  display: flex;
  flex-direction: column;
  gap: 0.04rem;
  background: #F7F7F7;
  border-radius: 0 0 0.2rem 0.2rem;
  transition: background 0.3s ease;
}

.solution-detail .sd-more-swiper .swiper-slide .sd-more-card-body .sd-more-card-title {
  color: #1F1A17;
  margin: 0;
  line-height: 1.2;
  transition: color 0.3s ease;
}

.solution-detail .sd-more-swiper .swiper-slide .sd-more-card-body .sd-more-card-tags {
  color: #666;
  margin: 0;
  line-height: 1.5;
}

/* hover */
.solution-detail .sd-more-swiper .swiper-slide:hover {
  box-shadow: 0px 0.14rem 0.4rem 0px rgba(76, 102, 117, 0.15);
}

.solution-detail .sd-more-swiper .swiper-slide:hover .sd-more-card-img img {
  transform: scale(1.05);
}

.solution-detail .sd-more-swiper .swiper-slide:hover .sd-more-card-body {
  background: #fff;
}

.solution-detail .sd-more-swiper .swiper-slide:hover .sd-more-card-body .sd-more-card-title {
  color: #DA251C;
}

/* ===== featured card ===== */
.solution-detail .sd-more-swiper .swiper-slide.featured {
  box-shadow: 0px 0.14rem 0.4rem 0px rgba(76, 102, 117, 0.15);
}

.solution-detail .sd-more-swiper .swiper-slide.featured .sd-more-card-body {
  background: #fff;
}

.solution-detail .sd-more-swiper .swiper-slide.featured .sd-more-card-body .sd-more-card-title {
  color: #DA251C;
}

/* 底部装饰线：hover 时从中间展开 */
.solution-detail .sd-more-swiper .swiper-slide::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.03rem;
  background: #DA251C;
  transform: scaleX(0);
  transition: transform 0.3s ease;
  pointer-events: none;
}

.solution-detail .sd-more-swiper .swiper-slide:hover::after {
  transform: scaleX(1);
}

/* =============================================
   usercenter.css — 个人中心页面样式
   ============================================= */

.uc {
  background: #f9f9f9;
}

/* 覆写公共面包屑（窄列不需要左右 1.3rem 和 flex 布局） */
.uc .breadcrumb {
  padding: 0;
}

.uc .uc-inner {
  max-width: 16.6rem;
  margin: 0 auto;
  padding: 1.2rem 0 0;
}


/* ===== 主体 flex ===== */
.uc .uc-body {
  display: flex;
  gap: .4rem;
  align-items: flex-start;
  justify-content: space-between;
  padding-bottom: 1.2rem;
}

.uc .uc-content {
  flex: 1;
  min-width: 0;
  background: #fff;
  border-radius: .2rem;
  padding: .4rem .36rem;
  margin-top: .75rem;
}

/* ===== 左侧粘性容器 ===== */
.uc .uc-left {
  position: sticky;
  top: 1.2rem;
  width: 3.5rem;
  flex-shrink: 0;
  align-self: flex-start;
}

/* ===== 左侧栏 ===== */
.uc .uc-sidebar {
  background: #fff;
  border-radius: .2rem;
  padding: .32rem 0;
  margin-top: .52rem;
}

.uc .uc-menu-item {
  display: flex;
  align-items: center;
  gap: .14rem;
  height: .6rem;
  padding: 0 .3rem;
  text-decoration: none;
  cursor: pointer;
  transition: all .3s;
}

.uc .uc-menu-item.active {
  color: #da251c;
}

.uc .uc-menu-item.active .uc-menu-text {
  color: #da251c;
}

.uc .uc-menu-text {
  color: #666;
  line-height: 1;
}

.uc .icon {
    width: .18rem;
  height: .2rem;
  flex-shrink: 0;
  position: relative;
}

.uc .uc-menu-icon {
  width: 100%;
  height: 100%;
  object-fit: contain;
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
}

.uc .uc-menu-item .uc-menu-icon,
.uc .uc-menu-item.active .uc-menu-icon1{
    opacity: 1;
}
.uc .uc-menu-item.active .uc-menu-icon,
.uc .uc-menu-item .uc-menu-icon1{
    opacity: 0;
}

.uc .uc-menu-icon2 {
    width: .18rem;
  height: .2rem;
  flex-shrink: 0;
}

.uc .uc-menu-divider {
  height: 1px;
  background: #eee;
  margin: .08rem .3rem;
}

/* ===== 右侧内容区 ===== */
.uc .uc-content {
  flex: 1;
  background: #fff;
  border-radius: .2rem;
  padding: .4rem .36rem;
}

.uc .uc-content-title {
  color: #1f1a17;
  line-height: 1.2;
  margin-bottom: .3rem;
}

/* ===== 文件列表 ===== */
.uc .uc-file-list {
  display: flex;
  flex-direction: column;
  gap: .2rem;
}

/* ===== 文件行 ===== */
.uc .uc-file-row {
  display: flex;
  align-items: center;
  background: #f8f8f8;
  border-radius: 10px;
  min-height: .86rem;
  padding: .28rem .3rem;
  transition: all .3s ease;
}

.uc .uc-file-row:hover {
  background: #fff;
  box-shadow: 0 0 .66rem rgba(0, 0, 0, .1);
}

.uc .uc-file-row:hover .uc-file-name {
  color: #da251c;
}

.uc .uc-file-row .uc-file-name {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  padding-right: .2rem;
  color: #666;
  line-height: 1.2;
}

.uc .uc-file-row .uc-file-actions {
  display: flex;
  align-items: center;
  gap: .08rem;
  flex-shrink: 0;
}

.uc .uc-file-row .uc-file-btn {
  display: inline-flex;
  align-items: center;
  gap: .06rem;
  padding: .06rem .16rem;
  border-radius: .04rem;
  cursor: pointer;
  border: none;
  background: none;
  color: #666;
  line-height: 1;
  white-space: nowrap;
  transition: all .3s;
}

.uc .uc-file-row .uc-file-btn .uc-file-icon {
  width: .19rem;
  height: .19rem;
  flex-shrink: 0;
}

/* 留言图标双图叠层 */
.uc .uc-file-row .uc-file-btn .uc-icon-stack {
  position: relative;
  display: inline-block;
  width: .19rem;
  height: .19rem;
  flex-shrink: 0;
}

.uc .uc-file-row .uc-file-btn .uc-icon-stack .uc-stack-icon {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  transition: opacity .3s ease;
}

.uc .uc-file-row .uc-file-btn .uc-icon-stack .uc-stack-hover {
  opacity: 0;
}

.uc .uc-file-row:hover .uc-file-btn .uc-icon-stack .uc-stack-icon {
  opacity: 0;
}

.uc .uc-file-row:hover .uc-file-btn .uc-icon-stack .uc-stack-hover {
  opacity: 1;
}

.uc .uc-file-row .uc-file-btn:hover {
  background: rgba(0, 0, 0, .04);
}

.uc .uc-file-row:hover .uc-file-actions .uc-file-btn:first-child {
  color: #da251c;
}

/* =============================================
   joinus.css — 加入我们页面样式
   ============================================= */

/* ===== Section 1: 合作商引入 (gray bg) ===== */

.joinus {
  position: relative;
  padding: .8rem 0 0 0;
}

.joinus .joinus-intro {
  background: #f9f9f9;
  padding-bottom: .8rem;
}

.joinus .joinus-intro .intro-inner {
  max-width: 16.6rem;
  margin: 0 auto;
}

.joinus .joinus-intro .breadcrumb {
  padding: .32rem 0;
}

/* Breadcrumb */
.joinus .joinus-breadcrumb {
  padding: .32rem 0;
  display: flex;
  align-items: center;
  gap: .08rem;
}

.joinus .joinus-breadcrumb .breadcrumb-home {
  width: .2rem;
  height: .2rem;
  object-fit: contain;
}

.joinus .joinus-breadcrumb .breadcrumb-chevron {
  width: .12rem;
  height: .12rem;
  object-fit: contain;
}

.joinus .joinus-breadcrumb .breadcrumb-text {
  color: #666;
  line-height: 1;
}

.joinus .joinus-breadcrumb .breadcrumb-current {
  color: #1f1a17;
  line-height: 1;
}

/* Intro title */
.joinus .intro-title-wrap {
  padding: .48rem 0 .4rem;
  text-align: center;
}

.joinus .intro-title {
  color: #1f1a17;
  line-height: 1.2;
  margin-bottom: .2rem;
}

.joinus .intro-desc {
  color: #666;
  line-height: 1.5;
  max-width: 5.6rem;
  margin: 0 auto;
}

/* ===== 合作商引入内容区（左右两列） ===== */
.joinus .intro-content {
  display: flex;
  gap: .4rem;
  align-items: flex-start;
}

.joinus .intro-col-left,
.joinus .intro-col-right {
  flex: 1;
  min-width: 0;
}

.joinus .intro-col-title {
  color: #1f1a17;
  line-height: 1;
  margin-bottom: .3rem;
  display: flex;
  align-items: center;
  gap: .14rem;
}

.joinus .col-title-icon {
  width: .2rem;
  height: .27rem;
}

/* ===== 左侧：4 个地区卡片 2x2 ===== */
.joinus .network-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .2rem;
}

.joinus .network-card {
  background: #fff;
  border: 1px solid #e3e3e3;
  border-radius: .2rem;
  padding: .3rem .3rem .4rem;
}



.joinus .network-card-title {
  color: #1f1a17;
  line-height: 1;
}

.joinus .network-card .desc {
  line-height: 2;
  color: rgba(102, 102, 102, 1);
  margin-top: .26rem;
}

.joinus .network-card .desc ul li {
  padding-left: .2rem;
  position: relative;
}

.joinus .network-card .desc ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .7vw;
  width: .08rem;
  height: .08rem;
  min-width: 4px;
  min-height: 4px;
  border-radius: 50%;
  background: #DA251C;
}

/* ===== 左侧：全球合作伙伴 CTA（深色底） ===== */
.joinus .network-cta {
  background: #1a1a1a;
  border-radius: .2rem;
  padding: .53rem .38rem .4rem .38rem;
  margin-top: .2rem;
  box-sizing: border-box;
}

.joinus .network-cta-title {
  color: #fff;
  line-height: 1.2;
  margin-bottom: .2rem;
}

.joinus .network-cta .network-cta-desc {
  color: #999;
  line-height: 1.8;
  color: rgba(255, 255, 255, .7);
}

.joinus .network-cta-btn {
  margin-top: .53rem;
  color: #fff;
  display: inline-flex;
}

/* ===== 右侧：合作伙伴表单卡片 ===== */
.joinus .partner-card {
  background: #fff;
  border: 1px solid #e3e3e3;
  border-radius: .2rem;
  padding: .95rem .5rem 1rem .5rem;
  box-sizing: border-box;
}

.joinus .partner-card .txt1 {
  color: rgba(102, 102, 102, 1);
  line-height: 1.6;
}

.joinus .partner-card .desc {
  margin-top: .67rem;
}

.joinus .partner-card .desc ul li {
  padding-left: .2rem;
  position: relative;
  margin-bottom: .5rem;
}

.joinus .partner-card .desc ul li span {
  color: rgba(31, 26, 23, 1);
  font-size: .24rem;
  font-weight: 500;
  font-family: 'HarmonyOS_Sans_SC_Medium';
  font-weight: 500;
}

.joinus .partner-card .desc ul li p {
  color: rgba(102, 102, 102, 1);
  margin-top: .14rem;
  font-size: .18rem;
}

.joinus .partner-card .desc ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .1rem;
  width: .08rem;
  height: .08rem;
  border-radius: 50%;
  background: #DA251C;
  z-index: 2;
}

.joinus .partner-card .desc ul li::after {
  content: "";
  position: absolute;
  left: -.02rem;
  top: .08rem;
  width: .12rem;
  height: .12rem;
  border-radius: 50%;
  background: rgba(218, 37, 28, .5);
  z-index: 1;
}

.joinus .partner-card .p_btn {
  border: 1px solid rgba(200, 200, 200, 1);
  color: rgba(31, 26, 23, 1);
}

.joinus .partner-card .p_btn:hover {
  color: #fff;
  border: 1px solid #da251c;
}

.joinus .partner-card-title {
  color: #da251c;
  line-height: 1.2;
  margin-bottom: .2rem;
}

.joinus .partner-card-text {
  color: #666;
  line-height: 1.6;
  margin-bottom: .3rem;
}

.joinus .partner-form-row {
  display: flex;
  gap: .2rem;
  margin-bottom: .16rem;
}

.joinus .partner-input {
  flex: 1;
  height: .4rem;
  border: 1px solid #ddd;
  border-radius: .04rem;
  padding: 0 .12rem;
  font-size: .14rem;
  line-height: 1;
  outline: none;
}

.joinus .partner-form-full {
  margin-bottom: .16rem;
}

.joinus .partner-textarea {
  width: 100%;
  height: 1rem;
  border: 1px solid #ddd;
  border-radius: .04rem;
  padding: .12rem;
  font-size: .14rem;
  line-height: 1.4;
  outline: none;
  resize: vertical;
  box-sizing: border-box;
}

.joinus .partner-submit {
  width: 100%;
  height: .44rem;
  background: #da251c;
  color: #fff;
  border: none;
  border-radius: .04rem;
  cursor: pointer;
  line-height: .44rem;
  text-align: center;
}

/* ===== Section 2: 加入我们 (title white bg) ===== */
.joinus .joinus-recruit {
  padding: .48rem 0 .4rem;
}

.joinus .joinus-recruit .recruit-inner {
  max-width: 16rem;
  margin: 0 auto;
  padding: 0 .16rem;
  text-align: center;
}

.joinus .recruit-title {
  color: #1f1a17;
  line-height: 1.2;
  margin-bottom: .2rem;
}

.joinus .recruit-desc {
  color: #666;
  line-height: 1;
}

/* ===== Banner ===== */
.joinus .joinus-banner {
  position: relative;
  max-width: 16.6rem;
  margin: 0 auto;
  height: 7.6rem;
  /* padding: 0 .16rem; */
}

.joinus .joinus-banner .banner-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: .2rem;
  display: block;
}

.joinus .joinus-banner .banner-card {
  position: absolute;
  right: .6rem;
  bottom: .6rem;
  width: 8rem;
  background: #fff;
  border-radius: .2rem;
  padding: .5rem;
}

.joinus .joinus-banner .banner-card-info {
  width: 100%;
  height: 4.3rem;
  overflow-y: auto;
}

.joinus .joinus-banner .banner-card-title {
  color: #da251c;
  line-height: 1.2;
  margin-bottom: .3rem;
}

.joinus .joinus-banner .banner-card-text {
  color: #666;
  line-height: 2;
}

/* ===== Section 3: 职位列表 (gray bg) ===== */
.joinus .joinus-jobs {
  background: #f9f9f9;
  padding-top: .8rem;
  margin-top: 1.2rem;
  padding-bottom: 2rem;
}

.joinus .joinus-jobs .jobs-inner {
  max-width: 16.6rem;
  margin: 0 auto;
}

/* Jobs body: sidebar + list */
.joinus .jobs-body {
  display: flex;
  gap: .3rem;
  align-items: flex-start;
}

/* ===== Left sidebar (25%) ===== */
.joinus .jobs-sidebar {
  width: 25%;
  flex-shrink: 0;
  min-width: 0;
  border-right: 1px solid #e0e0e0;
  height: 12.25rem;
  box-sizing: border-box;
}

.joinus .sidebar-inner {
  padding-right: 1.1rem;
  position: sticky;
  top: 1.2rem;
}

.joinus .jobs-sidebar-title {
  color: #1f1a17;
  line-height: 1.2;
  margin-bottom: .4rem;
}

.joinus .sidebar-filter-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: .3rem;
}

.joinus .sidebar-filter-label {
  color: #1f1a17;
  line-height: 1.2;
}

.joinus .sidebar-reset {
  color: #E53935;
  line-height: 1;
  cursor: pointer;
}

/* Sidebar groups */
.joinus .sidebar-group {
  border-bottom: 1px solid #eee;
}

.joinus .sidebar-group-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: .2rem 0;
  cursor: pointer;
}

.joinus .sidebar-group-title {
  color: #333;
  line-height: 1.2;
}

.joinus .sidebar-toggle {
  color: #999;
  font-size: .2rem;
  line-height: 1;
  user-select: none;
}

/* Sidebar collapse/expand body */
.joinus .sidebar-group-body {
  max-height: 0;
  overflow: hidden;
  transition: max-height .3s ease;
}

.joinus .sidebar-group.active .sidebar-group-body {
  max-height: 3rem;
}

/* Checkboxes */
.joinus .sidebar-checkboxes {
  padding: 0 0 .2rem 0;
}

.joinus .sidebar-checkbox {
  display: flex;
  align-items: center;
  gap: .1rem;
  margin-bottom: .14rem;
  cursor: pointer;
}

.joinus .sidebar-checkbox:last-child {
  margin-bottom: 0;
}

.joinus .checkbox-input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  pointer-events: none;
}

.joinus .checkbox-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: .16rem;
  height: .16rem;
  flex-shrink: 0;
}

/* Checked → 实心红方块 + 白色 ✓ */
.joinus .checkbox-input:checked+.checkbox-icon {
  background: #E53935;
  border-radius: 2px;
  width: .16rem;
  height: .16rem;
  border: none;
  position: relative;
}

.joinus .checkbox-input:checked+.checkbox-icon::after {
  content: "✓";
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: .12rem;
  line-height: 1;
}

/* Unchecked → 空心灰方框（尺寸与选中一致） */
.joinus .checkbox-input:not(:checked)+.checkbox-icon {
  width: .16rem;
  height: .16rem;
  border: 1px solid #ccc;
  border-radius: 2px;
  background: transparent;
  box-sizing: border-box;
}

.joinus .checkbox-label {
  color: #666;
  line-height: 1;
}

/* ===== Right job list (75%) ===== */
.joinus .jobs-list {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: .2rem;
  min-width: 0;
  padding-left: 1.1rem;
}

/* Search bar at top of right column */
.joinus .jobs-search {
  display: flex;
  align-items: center;
  width: 3.4rem;
  height: .44rem;
  background: #f5f5f5;
  border-radius: .365rem;
  padding-left: .24rem;
  margin-bottom: .1rem;
  margin-left: auto;
  box-sizing: border-box;
}

.joinus .jobs-search-input {
  color: #999;
  line-height: 1;
  flex: 1;
  border: none;
  outline: none;
  background: transparent;
  min-width: 0;
}

.joinus .jobs-search-btn {
  width: .32rem;
  height: .32rem;
  background: #E53935;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: .06rem;
  cursor: pointer;
  border: none;
  padding: 0;
  font: inherit;
  color: inherit;
  flex-shrink: 0;
}

.joinus .jobs-search-icon {
  width: .12rem;
  height: .12rem;
}

/* Job cards */
.joinus .job-card {
  background: #fff;
  border-radius: .08rem;
  padding: .32rem .4rem;
}

.joinus .job-card-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: .08rem;
}

.joinus .job-card-title {
  color: #333;
  line-height: 1.2;
}

.joinus .job-card-salary {
  color: #E53935;
  line-height: 1.2;
  flex-shrink: 0;
}

.joinus .job-card-meta-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.joinus .job-card-meta {
  color: #999;
  line-height: 1.2;
  margin-top: .28rem;
  margin-bottom: .4rem;
}

.joinus .job-card-detail-toggle {
  display: inline-flex;
  align-items: center;
  gap: .06rem;
  color: #999;
  line-height: 1;
  cursor: pointer;
  text-decoration: none;
}

.joinus .job-card-detail-toggle img {
  width: .14rem;
  height: .14rem;
}

/* Collapsed: hide body + actions with transition */
.joinus .job-card .job-card-body,
.joinus .job-card .job-card-actions {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: max-height .3s ease, opacity .3s ease, margin-top .3s ease;
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 0;
}

/* Expanded: show body + actions */
.joinus .job-card.expanded {
  box-shadow: 0 .1rem .4rem 0 rgba(0, 0, 0, 0.05);
}

.joinus .job-card.expanded .job-card-body {
  max-height: 10rem;
  opacity: 1;
  display: flex;
  gap: .3rem;
  margin-top: .2rem;
}

.joinus .job-card.expanded .job-card-actions {
  max-height: 2rem;
  opacity: 1;
  display: block;
  margin-top: .4rem;
}

.joinus .job-card-section {
  flex: 1;
}

.joinus .job-card-section-title {
  color: #E53935;
  line-height: 1.2;
  margin-bottom: .12rem;
}

.joinus .job-card-section-text {
  color: #666;
  line-height: 2.2;
}

/* Actions */
.joinus .job-card-actions {
  margin-top: .4rem;
}

.joinus .job-card-actions .p_btn {
  display: inline-flex;
  border: 1px solid rgba(200, 200, 200, 1);
  color: rgba(31, 26, 23, 1);
}

.joinus .job-card-actions .p_btn:hover {
  border-color: #DA251C;
}

.search {
  position: relative;
}

.search .search-banner {
  position: relative;
  height: 5.62rem;
}

.search .search-banner .bg {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  pointer-events: none;
}

.search .search-banner .bg::after {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(40, 37, 37, 0.80);
  mix-blend-mode: multiply;
  backdrop-filter: blur(0.3rem);
}

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

.search .search-banner .title {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
}

.search .search-banner .search-form {
  position: absolute;
  width: 12.92rem;
  height: .96rem;
  bottom: -.57rem;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  border-radius: .1rem;
  background: #FFF;
  box-shadow: 0 0 .5rem 0 rgba(0, 0, 0, 0.10);
  overflow: hidden;
  z-index: 1;
}

.search .search-banner .search-form input {
  flex: 1;
  padding-left: .24rem;
}

.search .search-banner .search-form button {
  padding: .35rem .6rem;
  white-space: nowrap;
  background: rgba(218, 37, 28, 1);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  border: none;
  flex-shrink: 0;
  color: #fff;
  gap: .15rem;
}

.search .search-banner .search-form button img {
  width: .18rem;
}

.search .search-result {
  min-height: 6.2rem;
  padding: 1.6rem 1.3rem 1rem 1.3rem;
  position: relative;
}

.search .search-result .results-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .2rem;
}

.search .search-result .results-top .results-num {
  color: rgba(31, 26, 23, 1);
  line-height: 1.2;
}

.search .search-result .results-top .results-num span {
  color: rgba(218, 37, 28, 1);
}

.search .search-result .results-top .tabs {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .42rem;
}

.search .search-result .results-top .tabs .tab {
  padding: .1rem .24rem;
  border: 1px solid #E3E3E3;
  border-radius: .99rem;
  cursor: pointer;
  transition: all .3s ease;
  color: rgba(102, 102, 102, 1);
}

.search .search-result .results-top .tabs .tab.active,
.search .search-result .results-top .tabs .tab:hover {
  background: rgba(218, 37, 28, 1);
  color: #fff;
  border-color: rgba(218, 37, 28, 1);
}

.search .search-result .no-results {
  position: absolute;
  top: 4rem;
  left: 50%;
  transform: translateX(-50%);
  color: rgba(102, 102, 102, 1);
  line-height: 1.2;
}

.search .search-result .no-results .bg {
  font-size: 2rem;
  letter-spacing: 40px;
  text-transform: uppercase;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 0;
  color: rgba(218, 37, 28, 0.02);
}

.search .search-result .no-results .label {
  position: relative;
  z-index: 1;
  color: #1F1A17;
}

.search .search-result .no-results .label span {
  color: rgba(218, 37, 28, 1);
}


.search .search-result .list_1 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.24rem;
  margin-top: .95rem;
}

.search .search-result .list_1 .solution-card {
  display: block;
  border-radius: 0.2rem;
  overflow: hidden;
  background: #F9F9F9;
  text-decoration: none;
  transition: all 0.3s;
  position: relative;
}

.search .search-result .list_1 .solution-card:hover {
  box-shadow: 0px 0.14rem 0.4rem 0px rgba(76, 102, 117, 0.15);
}

.search .search-result .list_1 .solution-card:hover .solution-card-img img {
  transform: scale(1.05);
}

.search .search-result .list_1 .solution-card:hover .solution-card-body {
  background: #fff;
}

.search .search-result .list_1 .solution-card:hover .solution-card-title {
  color: #DA251C;
}

.search .search-result .list_1 .solution-card .solution-card-img img {
  width: 100%;
  height: 2.4rem;
  object-fit: cover;
  display: block;
  transition: transform 0.3s ease;
}

.search .search-result .list_1 .solution-card .solution-card-body {
  transition: background 0.3s ease;
}

.search .search-result .list_1 .solution-card .solution-card-title {
  transition: color 0.3s ease;
}

.search .search-result .list_1 .solution-card .solution-card-body {
  padding: 0.2rem 0.24rem 0.28rem;
}

.search .search-result .list_1 .solution-card-title {
  color: #1F1A17;
  line-height: 1.2;
  margin-bottom: 0.08rem;
}

.search .search-result .list_1 .solution-card-tags {
  color: #666;
  line-height: 1;
}

.search .search-result .list_2 {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 0.29rem;
  margin-top: .95rem;
}

.search .search-result .list_2 .product-card {
  background: #fff;
  border: 1px solid #E8E8E8;
  border-radius: 0.2rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  transition: all 0.3s;
  position: relative;
  padding-bottom: 0.4rem;
}

.search .search-result .list_2 .product-card:hover {
  border-color: #DA251C;
}

.search .search-result .list_2 .product-card:hover .product-card-title {
  color: #DA251C;
}

.search .search-result .list_2 .product-card-img {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 3.2rem;
  padding: 0.8rem 0.6rem 0.4rem;
  overflow: hidden;
}

.search .search-result .list_2 .product-card-img img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  transition: transform 0.3s;
}

.search .search-result .list_2 .product-card:hover .product-card-img img {
  transform: scale(1.05);
}

.search .search-result .list_2 .product-card-title {
  color: #1F1A17;
  line-height: 1.3;
  padding: 0 0.3rem;
  min-height: 0.8rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.search .search-result .list_2 .product-card-desc {
  color: #888;
  line-height: 1.5;
  padding: 0.08rem 0.5rem 0.24rem;
}


.search .search-result .list_3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.48rem 0.2rem;
  margin-top: .95rem;
}

.search .search-result .list_3 .news-card {
  background: #fff;
  border: 1px solid #CACACA;
  border-radius: 0.2rem;
  overflow: hidden;
  transition: border-color 0.3s;
  text-decoration: none;
  display: block;
}

.search .search-result .list_3 .news-card:hover {
  border-color: #DA251C;
}

.search .search-result .list_3 .news-card .news-card-img {
  position: relative;
  width: 100%;
  height: 3.6rem;
  overflow: hidden;
}

.search .search-result .list_3 .news-card .news-card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}

.search .search-result .list_3 .news-card:hover .news-card-img img {
  transform: scale(1.05);
}

.search .search-result .list_3 .news-card .news-card-img .news-card-badge {
  position: absolute;
  top: 0;
  left: 0;
  padding: 0.1rem 0.27rem;
  background: #DA251C;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.2rem 0 0.2rem 0;
  white-space: nowrap;
}

.search .search-result .list_3 .news-card .news-card-body {
  padding: 0.36rem;
}

.search .search-result .list_3 .news-card .news-card-body .news-card-date {
  display: flex;
  align-items: center;
  gap: 0.08rem;
  margin-bottom: 0.13rem;
}

.search .search-result .list_3 .news-card .news-card-body .news-card-date img {
  width: 0.18rem;
  height: 0.18rem;
  display: block;
}

.search .search-result .list_3 .news-card .news-card-body .news-card-title {
  color: #333;
  line-height: 0.4rem;
  margin: 0 0 0.12rem 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  transition: color 0.3s;
}

.search .search-result .list_3 .news-card:hover .news-card-body .news-card-title {
  color: #DA251C;
}

.search .search-result .list_3 .news-card .news-card-body .news-card-desc {
  color: #666;
  line-height: 0.3rem;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.search .search-result .list_4 {
  display: flex;
  flex-direction: column;
  gap: .2rem;
  margin-top: .95rem;
}

.search .search-result .list_4 .file-row {
  display: flex;
  align-items: center;
  background: #f8f8f8;
  border-radius: 10px;
  min-height: .86rem;
  padding: .3rem;
  transition: all .3s ease;
}

.search .search-result .list_4 .file-row:hover {
  background: #fff;
  box-shadow: 0 0 .66rem rgba(0, 0, 0, .1);
}

.search .search-result .list_4 .file-row:hover .file-name {
  color: #da251c;
}

.search .search-result .list_4 .file-row .file-name {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  padding-right: .2rem;
  color: #666;
  line-height: 1.2;
  transition: color .3s ease;
}

.search .search-result .list_4 .file-row .row-actions {
  display: flex;
  align-items: center;
  gap: .08rem;
  flex-shrink: 0;
}

.search .search-result .list_4 .file-row .row-btn {
  display: inline-flex;
  align-items: center;
  gap: .06rem;
  padding: .06rem .16rem;
  border-radius: .04rem;
  cursor: pointer;
  transition: all .3s ease;
  line-height: 1;
  white-space: nowrap;
  border: none;
  background: none;
  color: #666;
}

.search .search-result .list_4 .file-row:hover .row-actions .row-btn:first-child {
  color: #da251c;
}

.search .search-result .list_4 .file-row .row-btn .btn-icon {
  width: .19rem;
  height: .19rem;
  flex-shrink: 0;
}

/* 留言按钮 双图叠层 */
.search .search-result .list_4 .file-row .row-btn .btn-icon-stack {
  position: relative;
  display: inline-block;
  width: .19rem;
  height: .19rem;
  flex-shrink: 0;
}

.search .search-result .list_4 .file-row .row-btn .btn-icon-stack .btn-stack-icon {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  transition: opacity .3s ease;
}

.search .search-result .list_4 .file-row .row-btn .btn-icon-stack .btn-stack-hover {
  opacity: 0;
}

.search .search-result .list_4 .file-row:hover .row-btn .btn-icon-stack .btn-stack-icon {
  opacity: 0;
}

.search .search-result .list_4 .file-row:hover .row-btn .btn-icon-stack .btn-stack-hover {
  opacity: 1;
}

.search .search-result .list_4 .file-row .row-btn.is-red:hover {
  background: rgba(218, 37, 28, .08);
}

.search .search-result .list_4 .file-row .row-btn:hover {
  background: rgba(0, 0, 0, .04);
}

.apply {
  padding-top: .82rem;
  min-height: 100vh;
  background: #f9fafb;
}

.apply .apply-hero {
  position: relative;
  overflow: hidden;
  background: #1a1a1a;
  color: #fff;
  padding: .80rem 0;
}

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

.apply .apply-hero .apply-hero-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: .20;
  mix-blend-mode: overlay;
}

.apply .apply-hero .apply-hero-container {
  max-width: 16.6rem;
  margin: 0 auto;
  padding: 0 .16rem;
  position: relative;
  z-index: 10;
}

.apply .apply-hero .apply-hero-container .apply-hero-title {
  color: #fff;
  text-transform: uppercase;
  letter-spacing: -0.025em;
  margin-bottom: .24rem;
  font-weight: 800;
  line-height: 1.1;
}

.apply .apply-hero .apply-hero-container .apply-hero-title span {
  color: #e31b23;
}

.apply .apply-hero .apply-hero-container .apply-hero-desc {
  color: #d1d5db;
  max-width: 6.72rem;
  line-height: 1.625;
}

.apply .apply-main {
  max-width: 16.6rem;
  margin: 0 auto;
  padding: .64rem .16rem;
}

.apply .apply-main .apply-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: .48rem;
}

@media (min-width: 1024px) {
  .apply .apply-main .apply-grid {
    grid-template-columns: 2fr 1fr;
  }
}

.apply .apply-main .apply-grid .apply-form-card {
  background: #fff;
  padding: .48rem;
  border: 1px solid #f3f4f6;
  border-radius: .12rem;
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, .10), 0 4px 6px -4px rgba(0, 0, 0, .10);
}

.apply .apply-main .apply-grid .apply-form-card .apply-form-title {
  color: #0f172a;
  font-weight: 700;
  border-bottom: 1px solid #e5e7eb;
  padding-bottom: .16rem;
  margin-bottom: .32rem;
}

.apply .apply-main .apply-grid .apply-form-card form > * + * {
  margin-top: .24rem;
}

.apply .apply-main .apply-grid .apply-form-card form .apply-form-section + .apply-form-section {
  padding-top: .16rem;
}

.apply .apply-main .apply-grid .apply-form-card form .apply-form-section .apply-form-section-title {
  display: flex;
  align-items: center;
  color: #1a1a1a;
  font-weight: 600;
}

.apply .apply-main .apply-grid .apply-form-card form .apply-form-section .apply-form-section-title .apply-icon {
  width: .20rem;
  height: .20rem;
  margin-right: .08rem;
}

.apply .apply-main .apply-grid .apply-form-card form .apply-form-section .apply-form-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: .16rem;
  margin-top: .16rem;
}

@media (min-width: 768px) {
  .apply .apply-main .apply-grid .apply-form-card form .apply-form-section .apply-form-grid {
    grid-template-columns: 1fr 1fr;
  }
}

.apply .apply-main .apply-grid .apply-form-card form .apply-form-section .apply-form-grid .apply-form-field .apply-form-label {
  display: block;
  font-weight: 500;
  color: #374151;
  margin-bottom: .04rem;
}

.apply .apply-main .apply-grid .apply-form-card form .apply-form-section .apply-form-grid .apply-form-field .apply-input {
  display: block;
  width: 100%;
  padding: .08rem .16rem;
  border: 1px solid #d1d5db;
  border-radius: .06rem;
  background: #fff;
  font-size: .16rem;
  font-family: inherit;
  outline: none;
  transition: border-color .2s, box-shadow .2s;
}

.apply .apply-main .apply-grid .apply-form-card form .apply-form-section .apply-form-grid .apply-form-field .apply-input:focus {
  border-color: #e31b23;
  box-shadow: 0 0 0 3px rgba(227, 27, 35, .15);
}

.apply .apply-main .apply-grid .apply-form-card form .apply-form-section .apply-form-grid .apply-form-field .apply-checkbox-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .08rem;
  margin-top: .08rem;
}

.apply .apply-main .apply-grid .apply-form-card form .apply-form-section .apply-form-grid .apply-form-field .apply-checkbox-list label {
  display: flex;
  align-items: center;
  gap: .08rem;
  cursor: pointer;
}

.apply .apply-main .apply-grid .apply-form-card form .apply-form-section .apply-form-grid .apply-form-field .apply-checkbox-list input[type="checkbox"] {
  width: .16rem;
  height: .16rem;
  margin: 0;
  accent-color: #e31b23;
  border-radius: .04rem;
}

.apply .apply-main .apply-grid .apply-form-card form .apply-form-section .apply-form-grid .apply-form-field .apply-textarea {
  display: block;
  width: 100%;
  padding: .08rem .16rem;
  border: 1px solid #d1d5db;
  border-radius: .06rem;
  background: #fff;
  font-size: .16rem;
  font-family: inherit;
  resize: vertical;
  outline: none;
  transition: border-color .2s, box-shadow .2s;
}

.apply .apply-main .apply-grid .apply-form-card form .apply-form-section .apply-form-grid .apply-form-field .apply-textarea:focus {
  border-color: #e31b23;
  box-shadow: 0 0 0 3px rgba(227, 27, 35, .15);
}

.apply .apply-main .apply-grid .apply-form-card form .apply-submit-wrap {
  padding-top: .24rem;
}

.apply .apply-main .apply-grid .apply-form-card form .apply-submit-wrap .apply-submit {
  display: block;
  width: 100%;
  background: #e31b23;
  color: #fff;
  font-weight: 700;
  padding: .16rem .32rem;
  border: none;
  border-radius: .06rem;
  cursor: pointer;
  text-transform: uppercase;
  letter-spacing: .05em;
  box-shadow: 0 10px 15px -3px rgba(227, 27, 35, .20), 0 4px 6px -4px rgba(227, 27, 35, .20);
  transition: background-color .2s;
}

.apply .apply-main .apply-grid .apply-form-card form .apply-submit-wrap .apply-submit:hover {
  background: #b91c1c;
}

.apply .apply-main .apply-grid .apply-form-card form .apply-submit-wrap .apply-form-note {
  text-align: center;
  color: #6b7280;
  margin-top: .16rem;
  line-height: 1.5;
}

.apply .apply-main .apply-grid .apply-sidebar {
  display: flex;
  flex-direction: column;
  gap: .32rem;
}

.apply .apply-main .apply-grid .apply-sidebar .apply-why {
  background: #1a1a1a;
  color: #fff;
  padding: .32rem;
  border-radius: .12rem;
}

.apply .apply-main .apply-grid .apply-sidebar .apply-why .apply-why-title {
  font-weight: 700;
  margin-bottom: .16rem;
}

.apply .apply-main .apply-grid .apply-sidebar .apply-why .apply-why-list {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: .16rem;
}

.apply .apply-main .apply-grid .apply-sidebar .apply-why .apply-why-list .apply-why-item {
  display: flex;
  align-items: flex-start;
}

.apply .apply-main .apply-grid .apply-sidebar .apply-why .apply-why-list .apply-why-item .apply-icon {
  width: .20rem;
  height: .20rem;
  flex-shrink: 0;
  margin-right: .12rem;
  margin-top: .02rem;
}

.apply .apply-main .apply-grid .apply-sidebar .apply-why .apply-why-list .apply-why-item span {
  color: #d1d5db;
  line-height: 1.625;
}

.apply .apply-main .apply-grid .apply-sidebar .apply-process {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: .12rem;
  padding: .32rem;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .05);
}

.apply .apply-main .apply-grid .apply-sidebar .apply-process .apply-process-title {
  font-weight: 700;
  color: #0f172a;
  margin-bottom: .16rem;
}

.apply .apply-main .apply-grid .apply-sidebar .apply-process .apply-process-list {
  list-style: none;
  position: relative;
  /*border-left: 1px solid #e5e7eb;*/
  /*margin-left: .12rem;*/
  display: flex;
  flex-direction: column;
  gap: .24rem;
}

.apply .apply-main .apply-grid .apply-sidebar .apply-process .apply-process-list .apply-process-item {
  position: relative;
  /*padding-left: .24rem;*/
}

.apply .apply-main .apply-grid .apply-sidebar .apply-process .apply-process-list .apply-process-item .apply-process-num {
  position: absolute;
  left: -.12rem;
  top: 0;
  width: .24rem;
  height: .24rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #e31b23;
  color: #fff;
  border-radius: 50%;
  box-shadow: 0 0 0 4px #fff;
  font-weight: 700;
}

.apply .apply-main .apply-grid .apply-sidebar .apply-process .apply-process-list .apply-process-item:nth-child(n + 2) .apply-process-num {
  background: #e5e7eb;
  color: #4b5563;
}

.apply .apply-main .apply-grid .apply-sidebar .apply-process .apply-process-list .apply-process-item h4 {
  font-weight: 600;
  color: #0f172a;
}

.apply .apply-main .apply-grid .apply-sidebar .apply-process .apply-process-list .apply-process-item p {
  color: #6b7280;
  margin-top: .04rem;
  line-height: 1.4;
}




/* ================================================================
   Certifications（认证列表 / 详情）
   新增于复刻 /certifications 与 /certifications/iso-14001
   作用域：.certifications / .cert-detail
   ================================================================ */
.certifications {
  background: #f8fafc;
}

.certifications .cert-hero {
  position: relative;
  overflow: hidden;
  padding: 1.70rem 0 1.10rem;
  background: #1a1a1a;
}

.certifications .cert-hero-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.certifications .cert-hero-bg img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  opacity: .2;
}

.certifications .cert-hero-mask {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, #1a1a1a 0%, rgba(26, 26, 26, .92) 48%, rgba(26, 26, 26, 0) 100%);
}

.certifications .cert-hero-inner {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 12.8rem;
  margin: 0 auto;
  padding: 0 .32rem;
}

.certifications .cert-hero-content {
  max-width: 7.68rem;
}

.certifications .cert-hero-badge {
  display: inline-flex;
  align-items: center;
  gap: .08rem;
  padding: .06rem .16rem;
  margin-bottom: .24rem;
  border: 1px solid rgba(227, 27, 35, .3);
  border-radius: .99rem;
  background: rgba(227, 27, 35, .2);
  color: #e31b23;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .1em;
  line-height: 1.4;
}

.certifications .cert-hero-badge svg {
  width: .16rem;
  height: .16rem;
}

.certifications .cert-hero-title {
  margin: 0 0 .24rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -.01em;
}

.certifications .cert-hero-desc {
  margin: 0;
  color: #d1d5db;
  line-height: 1.7;
}

.certifications .cert-body {
  max-width: 12.8rem;
  margin: 0 auto;
  padding: 1rem .32rem;
}

/* ---- Quality policy ---- */
.certifications .cert-intro {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: .72rem;
  margin-bottom: .96rem;
}

.certifications .cert-section-title {
  margin: 0 0 .24rem;
  color: #1a1a1a;
  font-weight: 700;
  line-height: 1.25;
}

.certifications .cert-intro-p {
  margin: 0 0 .24rem;
  color: #4b5563;
  line-height: 1.75;
}

.certifications .cert-features {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .24rem;
  margin-top: .40rem;
}

.certifications .cert-feature {
  display: flex;
  align-items: flex-start;
  gap: .16rem;
}

.certifications .cert-feature-icon {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: .48rem;
  height: .48rem;
  border-radius: .08rem;
  background: rgba(227, 27, 35, .1);
  color: #e31b23;
}

.certifications .cert-feature-icon svg {
  width: .24rem;
  height: .24rem;
}

.certifications .cert-feature h4 {
  margin: 0 0 .06rem;
  color: #1a1a1a;
  font-weight: 700;
}

.certifications .cert-feature p {
  margin: 0;
  color: #4b5563;
  line-height: 1.6;
}

.certifications .cert-intro-visual {
  position: relative;
}

.certifications .cert-intro-img {
  overflow: hidden;
  border-radius: .16rem;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, .25);
}

.certifications .cert-intro-img img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  transition: transform .7s ease;
}

.certifications .cert-intro-img:hover img {
  transform: scale(1.05);
}

.certifications .cert-float-card {
  position: absolute;
  left: -.24rem;
  bottom: -.24rem;
  max-width: 3.2rem;
  padding: .24rem;
  border-radius: .12rem;
  background: #fff;
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 8px 10px -6px rgba(0, 0, 0, .1);
}

.certifications .cert-float-top {
  display: flex;
  align-items: center;
  gap: .16rem;
  margin-bottom: .08rem;
}

.certifications .cert-float-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: .48rem;
  height: .48rem;
  border-radius: 50%;
  background: #dcfce7;
  color: #16a34a;
}

.certifications .cert-float-icon svg {
  width: .24rem;
  height: .24rem;
}

.certifications .cert-float-num {
  color: #1a1a1a;
  font-weight: 700;
  line-height: 1;
}

.certifications .cert-float-card p {
  margin: 0;
  color: #4b5563;
  line-height: 1.5;
}

/* ---- Core certifications ---- */
.certifications .cert-core {
  margin-bottom: .64rem;
}

.certifications .cert-core-head {
  max-width: 7.68rem;
  margin: 0 auto .48rem;
  text-align: center;
}

.certifications .cert-core-desc {
  margin: 0;
  color: #4b5563;
  line-height: 1.7;
}

/* ---- 认证分类 tab ---- */
.certifications .cert-tabs {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: .12rem;
  margin: 0 0 .48rem;
}

.certifications .cert-tab {
  padding: .12rem .32rem;
  border: 1px solid #e5e7eb;
  border-radius: .99rem;
  background: #fff;
  color: #4b5563;
  font-family: inherit;
  font-size: .15rem;
  font-weight: 600;
  line-height: 1.4;
  cursor: pointer;
  transition: background .25s ease, border-color .25s ease, color .25s ease;
}

.certifications .cert-tab:hover {
  border-color: #e31b23;
  color: #e31b23;
}

.certifications .cert-tab.active {
  border-color: #e31b23;
  background: #e31b23;
  color: #fff;
}

.certifications .cert-list {
  display: none;
}

.certifications .cert-list.active {
  display: block;
}

.certifications .cert-list.fade-in {
  animation: certListFade .40s ease;
}

@keyframes certListFade {
  from {
    opacity: 0;
    transform: translateY(.10rem);
  }

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

/* 初始化分类时跳过按钮过渡，避免闪烁 */
.cert-no-transition .certifications .cert-tab {
  transition: none !important;
}

.certifications .cert-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: .32rem;
}

.certifications .cert-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: .32rem;
  border: 1px solid #f3f4f6;
  border-radius: .12rem;
  background: #fff;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .05);
  transition: box-shadow .3s ease, transform .3s ease;
}

.certifications .cert-card:hover {
  transform: translateY(-.04rem);
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 8px 10px -6px rgba(0, 0, 0, .1);
}

.certifications .cert-card-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: .56rem;
  height: .56rem;
  margin-bottom: .24rem;
  border-radius: .12rem;
  background: #f8fafc;
  color: #1a1a1a;
  transition: background .3s ease, color .3s ease;
}

.certifications .cert-card:hover .cert-card-icon {
  background: rgba(227, 27, 35, .05);
  color: #e31b23;
}

.certifications .cert-card-icon svg {
  width: .28rem;
  height: .28rem;
}

.certifications .cert-card-category {
  margin-bottom: .08rem;
  color: #e31b23;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .1em;
}

.certifications .cert-card-title {
  margin: 0 0 .12rem;
  font-weight: 700;
  line-height: 1.3;
}

.certifications .cert-card-title a {
  color: #1a1a1a;
  text-decoration: none;
  transition: color .3s ease;
}

.certifications .cert-card-title a:hover {
  color: #e31b23;
}

.certifications .cert-card-desc {
  flex: 1;
  margin: 0 0 .24rem;
  color: #4b5563;
  line-height: 1.7;
}

.certifications .cert-card-link {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  gap: .08rem;
  color: #1a1a1a;
  font-weight: 600;
  text-decoration: none;
  transition: color .3s ease;
}

.certifications .cert-card-link:hover {
  color: #e31b23;
}

.certifications .cert-card-link svg {
  width: .16rem;
  height: .16rem;
}

/* ---- CTA ---- */
.certifications .cert-cta {
  position: relative;
  overflow: hidden;
  padding: .64rem;
  border-radius: .16rem;
  background: #1a1a1a;
  text-align: center;
}

.certifications .cert-cta-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.certifications .cert-cta-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: .1;
}

.certifications .cert-cta-inner {
  position: relative;
  z-index: 1;
  max-width: 7.68rem;
  margin: 0 auto;
}

.certifications .cert-cta h2 {
  margin: 0 0 .16rem;
  color: #fff;
  font-weight: 700;
}

.certifications .cert-cta-desc {
  margin: 0 0 .32rem;
  color: #d1d5db;
  line-height: 1.7;
}

.certifications .cert-cta-btn {
  display: inline-block;
  padding: .16rem .32rem;
  border-radius: .08rem;
  background: #e31b23;
  color: #fff;
  font-weight: 700;
  text-decoration: none;
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, .1);
  transition: background .3s ease;
}

.certifications .cert-cta-btn:hover {
  background: #c4161d;
}
/* ================= 认证详情 ================= */
.cert-detail {
  background: #f8fafc;
}

.cert-detail .cd-container {
  max-width: 11rem;
  margin: 0 auto;
  padding: 1rem .32rem .80rem;
}

.cert-detail .cd-breadcrumb {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: .08rem;
  margin-bottom: .32rem;
  color: #6b7280;
  line-height: 1.5;
}

.cert-detail .cd-breadcrumb a {
  color: #6b7280;
  text-decoration: none;
  transition: color .2s ease;
}

.cert-detail .cd-breadcrumb a:hover {
  color: #e31b23;
}

.cert-detail .cd-breadcrumb span {
  color: #1a1a1a;
  font-weight: 700;
}

.cert-detail .cd-breadcrumb svg {
  flex: 0 0 auto;
  width: .16rem;
  height: .16rem;
}

.cert-detail .cd-card {
  margin-bottom: .40rem;
  overflow: hidden;
  border: 1px solid #f3f4f6;
  border-radius: .16rem;
  background: #fff;
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 8px 10px -6px rgba(0, 0, 0, .1);
}

.cert-detail .cd-head {
  position: relative;
  padding: .48rem;
  background: #1a1a1a;
  color: #fff;
}

.cert-detail .cd-head-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}

.cert-detail .cd-head-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: .1;
}

.cert-detail .cd-head-inner {
  position: relative;
  z-index: 1;
}

.cert-detail .cd-title-row {
  display: flex;
  align-items: center;
  gap: .16rem;
  margin-bottom: .24rem;
}

.cert-detail .cd-head-icon {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: .56rem;
  height: .56rem;
  border-radius: .12rem;
  background: rgba(227, 27, 35, .2);
  color: #e31b23;
}

.cert-detail .cd-head-icon svg {
  width: .28rem;
  height: .28rem;
}

.cert-detail .cd-category {
  margin-bottom: .04rem;
  color: #e31b23;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .1em;
}

.cert-detail .cd-title {
  margin: 0;
  color: #fff;
  font-weight: 700;
  line-height: 1.2;
}

.cert-detail .cd-summary {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .32rem;
  padding: .24rem;
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: .12rem;
  background: rgba(255, 255, 255, .05);
}

.cert-detail .cd-summary-title {
  display: flex;
  align-items: center;
  gap: .08rem;
  margin: 0 0 .12rem;
  color: #fff;
  font-weight: 600;
}

.cert-detail .cd-summary-title svg {
  flex: 0 0 auto;
  width: .20rem;
  height: .20rem;
  color: #e31b23;
}

.cert-detail .cd-summary-text {
  margin: 0;
  color: #d1d5db;
  line-height: 1.7;
}

.cert-detail .cd-cert-area {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: .48rem;
  background: #f1f5f9;
}

.cert-detail .cd-paper {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 7.5rem;
  padding: .48rem;
  border: 1px solid #d1d5db;
  border-radius: .02rem;
  background: #fff;
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);
  aspect-ratio: 1.4 / 1;
  text-align: center;
}

.cert-detail .cd-paper-frame {
  position: absolute;
  top: .12rem;
  right: .12rem;
  bottom: .12rem;
  left: .12rem;
  border: 4px double #e2e8f0;
  border-radius: .02rem;
  pointer-events: none;
}

.cert-detail .cd-paper-frame-inner {
  position: absolute;
  top: .24rem;
  right: .24rem;
  bottom: .24rem;
  left: .24rem;
  border: 1px solid #e5e7eb;
  border-radius: .02rem;
  pointer-events: none;
}

.cert-detail .cd-paper-content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.cert-detail .cd-paper-seal {
  margin-bottom: .24rem;
  color: #e31b23;
}

.cert-detail .cd-paper-title {
  margin: 0 0 .16rem;
  color: #1a1a1a;
  font-family: Georgia, "Times New Roman", serif;
  font-size: .40rem;
  font-weight: 700;
  line-height: 1.2;
}

.cert-detail .cd-paper-rule {
  width: .96rem;
  height: .04rem;
  margin-bottom: .32rem;
  background: #e31b23;
}

.cert-detail .cd-paper-text {
  margin: 0 0 .08rem;
  color: #4b5563;
  font-family: Georgia, "Times New Roman", serif;
  font-size: .18rem;
  line-height: 1.6;
}

.cert-detail .cd-paper-brand {
  margin: 0 0 .08rem;
  color: #111827;
  font-family: Georgia, "Times New Roman", serif;
  font-size: .32rem;
  font-weight: 700;
  letter-spacing: .1em;
}

.cert-detail .cd-paper-standard {
  margin: 0 0 .48rem;
  color: #e31b23;
  font-family: Georgia, "Times New Roman", serif;
  font-size: .30rem;
  font-weight: 700;
}

.cert-detail .cd-paper-signs {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  width: 100%;
  max-width: 5rem;
  margin-top: auto;
  padding: 0 .16rem;
}

.cert-detail .cd-paper-sign {
  text-align: center;
}

.cert-detail .cd-paper-line {
  width: 1.20rem;
  height: 1px;
  margin-bottom: .08rem;
  background: #9ca3af;
}

.cert-detail .cd-paper-sign p {
  margin: 0;
  color: #6b7280;
  font-size: .13rem;
  text-transform: uppercase;
  letter-spacing: .1em;
}

.cert-detail .cd-paper-watermark {
  position: absolute;
  inset: 0;
  z-index: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: .05;
  pointer-events: none;
}

.cert-detail .cd-paper-watermark svg {
  width: 3.2rem;
  height: 3.2rem;
}

.cert-detail .cd-actions {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: .16rem;
}

.cert-detail .cd-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .08rem;
  padding: .14rem .32rem;
  border-radius: .06rem;
  font-weight: 700;
  line-height: 1.2;
  text-decoration: none;
  transition: background .25s ease, color .25s ease, border-color .25s ease;
}

.cert-detail .cd-btn svg {
  width: .20rem;
  height: .20rem;
}

.cert-detail .cd-btn-outline {
  border: 1px solid #d1d5db;
  background: #fff;
  color: #374151;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .05);
}

.cert-detail .cd-btn-outline:hover {
  background: #f9fafb;
}

.cert-detail .cd-btn-primary {
  border: 1px solid #e31b23;
  background: #e31b23;
  color: #fff;
  box-shadow: 0 1px 2px rgba(0, 0, 0, .05);
}

.cert-detail .cd-btn-primary:hover {
  border-color: #c4161d;
  background: #c4161d;
}







/* ===== 响应式 ===== */
/* ========== Mobile ========== */

@media screen and (orientation: portrait) and (max-width: 767px) {
  .index .hero {
    padding: 68px 0 40px;
    min-height: auto
  }

  .index .hero .hero-container {
    padding: 0 20px;
  }

  .index .hero .hero-container .hero-content {
    max-width: 100%
  }

  .index .hero .hero-container .hero-content .hero-badge {
    font-size: 11px;
    padding: 3px 8px
  }

  .index .hero .hero-container .hero-content .hero-search {
    max-width: 100%;
    flex-direction: column;
    gap: .2rem;
  }

  .index .hero .hero-container .hero-content .hero-search .hero-search-btn {
    width: 100%
  }

  .index .hero .hero-container .hero-content .hero-btns {
    flex-direction: column
  }

  .index .hero .hero-container .hero-content .hero-btns .hero-btn {
    width: 100%;
    white-space: normal
  }

  .index .hero .hero-sidebar {
    display: none
  }

  .index .hero .hero-gradient {
    width: 100%
  }

  .index .about {
    padding: 40px 0
  }

  .index .about .about-container .about-grid {
    flex-direction: column;
    gap: 24px
  }

  .index .about .about-container .about-grid .about-content,
  .index .about .about-container .about-grid .about-features {
    width: 100%
  }

  .index .about .about-container .about-grid .about-content .about-btns {
    flex-direction: column
  }

  .index .about .about-container .about-grid .about-content .about-btns .about-btn {
    width: 100%
  }

  .index .leadership {
    padding: 40px 0
  }

  .index .leadership .leadership-container .leadership-grid {
    flex-direction: column;
    gap: 24px
  }

  .index .leadership .leadership-container .leadership-grid .leadership-portrait,
  .index .leadership .leadership-container .leadership-grid .leadership-content {
    width: 100%;
    max-width: 100%
  }

  .index .pillars {
    padding: 0 16px;
    margin: -24px auto 24px
  }

  .index .pillars .pillars-grid {
    grid-template-columns: 1fr
  }

  .index .timeline {
    padding: 40px 0
  }

  .index .timeline .timeline-container .timeline-header {
    flex-direction: column;
    text-align: center;
    margin-bottom: 24px
  }

  .index .timeline .timeline-container .timeline-header .timeline-nav {
    margin: 0 auto
  }

  .index .products {
    padding: 40px 0
  }

  .index .products .products-container .products-header {
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 24px
  }

  .index .products .products-container .products-header .products-btn {
    display: none
  }

  .index .products .products-container .products-footer {
    display: block
  }

  .index .products .products-container .products-swiper {
    overflow: hidden
  }

  .index .industries {
    padding: 40px 0
  }

  .index .industries .industries-container .industries-swiper {
    overflow: hidden
  }

  .index .industries .industries-container .industries-swiper .industries-card {
    height: 240px
  }

  .index .success-cases {
    padding: 40px 0
  }

  .index .success-cases .success-cases-container .success-cases-header {
    flex-direction: column;
    margin-bottom: 32px
  }

  .index .success-cases .success-cases-container .success-cases-swiper {
    overflow: visible
  }
  .index .success-cases .success-cases-container .success-cases-swiper .success-cases-card .success-cases-card-body .success-cases-card-tag {
      margin-bottom: .15rem;
  }
  
  .index .success-cases .success-cases-container .success-cases-swiper .success-cases-card .success-cases-card-body .success-cases-card-details .success-cases-card-label {
      margin-bottom: .1rem;
  }

  .index .certifications {
    padding: 40px 0
  }

  .index .certifications .certifications-container .certifications-header {
    margin-bottom: 24px
  }

  .index .certifications .certifications-container .certifications-grid {
    grid-template-columns: repeat(1, 1fr);
  }

  .index .sales-locator {
    padding: 40px 0
  }

  .index .sales-locator .sales-locator-container .sales-locator-header {
    margin-bottom: 32px
  }

  .index .sales-locator .sales-locator-container .sales-locator-grid {
    grid-template-columns: 1fr;
    gap: 24px
  }

  .index .sales-locator .sales-locator-container .sales-locator-grid .sales-locator-regions {
    grid-template-columns: 1fr
  }

  .index .services {
    padding: 40px 0
  }

  .index .services .services-container .services-header {
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 24px
  }

  .index .services .services-container .services-grid {
    grid-template-columns: 1fr
  }

  .index .registration {
    padding: 40px 0
  }

  .index .registration .registration-container .registration-inner {
    grid-template-columns: 1fr
  }

  .index .registration .registration-container .registration-inner .registration-left {

    border-bottom: 1px solid rgba(255, 255, 255, .20);
    border-right: 0
  }

  .index .registration .registration-container .registration-inner .registration-left .registration-btns {
    flex-direction: column
  }

  .index .registration .registration-container .registration-inner .registration-right {
    padding: 24px
  }

  .index .contact {
    padding: 40px 0
  }

  .index .contact .contact-container .contact-form-wrap {
    padding: 16px
  }

  .index .contact .contact-container .contact-form-wrap form .contact-form-grid {
    grid-template-columns: 1fr
  }

  .index .contact .contact-container .contact-form-wrap form .contact-submit-wrap .contact-submit {
    width: 100%
  }

  .case {
    padding: .86rem 20px;

  }

  .case .case-container {
    padding: 0 0.2rem;
  }

  .case .case-title-wrap {
    padding-top: 0.3rem;
    padding-bottom: 30px;
    text-align: center;
  }

  .case .case-grid {
    grid-template-columns: 1fr;
    gap: 0.24rem;
  }

  .case .case-card .case-card-img {
    height: 58vw;
  }

  .case .case-card .case-card-body {
    padding: 20px;
  }

  .case .case-card .case-card-body .case-card-title {
    margin-bottom: 20px;
  }

  .case .case-card .case-card-body .case-card-desc {
    line-height: 1.5;
  }



  .news {
    padding-top: .86rem;
  }

  .news .news-container {
    padding: 0 20px;
  }

  .news .news-filters {
    flex-wrap: wrap;
    gap: 0.1rem;
    padding-top: 0.3rem;
  }

  .news .news-filters .news-filter-btn {
    padding: 0.06rem 0.16rem;
  }

  .news .news-grid {
    grid-template-columns: 1fr;
    gap: 0.24rem;
    padding-top: 0.4rem;
  }

  .news .news-card .news-card-img {
    height: 2.4rem;
  }

  .news .news-card .news-card-body {
    padding: 0.2rem;
  }

  .news .news-card .news-card-body .news-card-date {
    margin-bottom: 15px;
  }

  .news .news-card .news-card-body .news-card-date img {
    width: 12px;
    height: 12px;
  }

  .news .news-card .news-card-body .news-card-title {
    margin-bottom: 10px;
  }

  .news .news-card .news-card-body .news-card-desc {
    line-height: 1.5;
  }

  .news .news-card .news-card-img {
    height: 58vw;
  }







  .case-detail {
    padding-top: .86rem;
  }

  .case-detail .breadcrumb {
    padding: 20px 0;
  }

  .case-detail .cd-container {
    padding: 0 20px;
  }

  .case-detail .cd-breadcrumb {
    padding-top: 0.2rem;
  }

  .case-detail .cd-content .cd-meta {
    position: relative;
    z-index: 2;
  }

  .case-detail .cd-content .cd-meta .cd-share .cd-share-btn {
    width: 20px;
    height: 20px;
  }

  .case-detail .cd-content .cd-meta .cd-share .cd-share-btn .cd-share-icon {
    width: 20px;
    height: 20px;
  }



  .case-detail .cd-sidebar .cd-back-btn img {
    width: 12px;
    height: auto;
  }

  .case-detail .cd-main {
    flex-direction: column;
    gap: 0;
    padding-top: 0.2rem;
  }

  .case-detail .cd-content {
    flex: none;
    max-width: 100%;
  }

  .case-detail .cd-content .cd-title {
    max-width: 100%;
  }

  .case-detail .cd-content .cd-meta {
    flex-wrap: wrap;
    gap: 0.16rem;
    margin-top: 0.16rem;
  }

  .case-detail .cd-content .cd-body {
    margin-top: 0.4rem;
  }

  .case-detail .cd-content .cd-body img {
    height: auto;
  }

  .case-detail .cd-prev-next {
    justify-content: space-between;
    gap: 0.16rem;
    margin-top: 0.4rem;
    padding-bottom: 0.4rem;
  }

  .case-detail .cd-prev-next .cd-prev {
    max-width: 50%;
  }

  .case-detail .cd-divider {
    display: none;
  }

  .case-detail .cd-sidebar {
    flex: none;
    max-width: 100%;
    padding-top: 0.3rem;
  }

  .case-detail .cd-sidebar .cd-sidebar-title {
    margin-bottom: 0.2rem;
  }

  .case-detail .cd-sidebar .cd-related-list {
    gap: 0.2rem;
  }

  .newsdetail {
    padding-top: .86rem;
  }

  .newsdetail .cd-container {
    padding: 0 20px 60px;
  }

  .newsdetail .cd-content .cd-meta {
    position: relative;
    z-index: 2;
  }

  .newsdetail .cd-content .cd-meta .cd-share .cd-share-btn {
    width: 18px;
    height: 18px;
  }

  .newsdetail .cd-content .cd-meta .cd-share .cd-share-btn .cd-share-icon {
    width: 18px;
    height: 18px;
  }




  .newsdetail .cd-breadcrumb {
    padding-top: 0.2rem;
  }

  .newsdetail .cd-main {
    flex-direction: column;
    gap: 0;
    padding-top: 0.2rem;
  }

  .newsdetail .cd-content {
    flex: none;
    max-width: 100%;
  }



  .newsdetail .cd-content .cd-meta {
    flex-wrap: wrap;
    gap: 0.16rem;
    margin-top: 0.16rem;
  }

  .newsdetail .cd-content .cd-body {
    margin-top: 0.4rem;
  }

  .newsdetail .cd-content .cd-body img {
    height: auto;
  }

  .newsdetail .cd-content .cd-body p {
    line-height: 1.5;
  }

  .newsdetail .cd-prev-next .cd-prev {
    width: 60%;
  }

  .newsdetail .cd-prev-next {
    flex-direction: row;
    align-items: flex-start;
    gap: 0.16rem;
    margin-top: 0.4rem;
    padding-bottom: 0.4rem;
  }



  .newsdetail .cd-divider {
    display: none;
  }

  .newsdetail .cd-sidebar {
    flex: none;
    max-width: 100%;
    padding-top: 0.3rem;
  }

  .newsdetail .cd-sidebar .cd-sidebar-title {
    margin-bottom: 0.2rem;
  }

  .newsdetail .cd-sidebar .cd-related-list {
    gap: 0.2rem;
  }

  .newsdetail .cd-sidebar .cd-related-list .cd-related-item .cd-related-text {
    line-height: 1.5;
  }

  .contact {
    padding-top: .86rem;
  }

  .contact .breadcrumb {
    padding: .32rem 20px;
  }

  .contact .contact-title-wrap {
    padding: .48rem 20px;
  }

  .contact .contact-content {
    padding: 0 20px 60px 20px;
  }

  .contact .contact-content .content-inner {
    flex-direction: column;
  }

  .contact .contact-content .contact-cards {
    width: 100%;
  }

  .contact .contact-content .contact-card {
    height: auto !important;
  }

  .contact .contact-content .contact-map {
    width: 100%;
    height: 56vw;
  }

  .contact .contact-content .contact-map .map-icon {
    left: 3.2rem;
    top: 1.33rem;
  }

  .contact .contact-content .contact-map .map-company {
    left: 1.98rem;
    top: 2.09rem;
    width: 2.8rem;
  }

  .development {
    padding-top: .86rem;
  }

  .development .breadcrumb {
    padding: .2rem 20px;
    margin-bottom: .6rem;
  }

  .development .title {
    padding: 0 20px;
  }

  .development .list {
    padding: 0 20px;
    gap: 50px;
  }

  .development .list .li {
    flex-direction: column;
    gap: 20px;
  }

  .development .list .li:nth-child(2n) {
    flex-direction: column;
  }

  .development .list .li .img_box {
    width: 100%;
    height: 58vw;
  }

  .development .list .li .text_box .txt {
    margin-top: 20px;
  }

  .development .tabs {
    padding: 60px 0 10px;
    margin: 0 20px;
    overflow-x: auto;
    justify-content: start;
  }

  .development .tabs .tab {
    white-space: nowrap;
  }

  .development .social-swiper {
    padding: 20px 20px 60px;
  }

  .development .future-section .future-grid {
    padding: 0 20px;
    flex-direction: column;
    gap: 20px;
  }

  .development-detail {
    padding-top: .86rem;
  }

  .development-detail .sd-container {
    padding: 0 20px 20px;
  }

  .development-detail .sd-card {
    margin-top: 20px;
    padding: 20px;
  }

  .development-detail .sd-card .sd-tags .sd-tag {
    padding: 5px 15px;
  }

  .development-detail .sd-more {
    padding: 40px 0;
  }

  .development-detail .sd-more .sd-more-swiper {
    padding: 20px;
  }

  .development-detail .sd-more-swiper .swiper-slide .sd-more-card-img {
    height: 52vw;
  }

  .development-detail .sd-more .sd-more-nav .sd-more-nav-btn {
    width: 30px;
    height: 30px;
  }

  .development-detail .sd-more .sd-more-nav .sd-more-nav-btn::after {
    width: 7px;
    height: 7px;
  }

  .advantage .sec_1 {
    flex-direction: column;
    padding: 0 20px 60px 20px;
    margin: 0;
  }

  .advantage .sec_1 .info {
    width: 100%;
  }

  .advantage .sec_1 .img_box {
    width: 100%;
    height: 90vw;
  }

  .advantage .sec_1 .info .boxs .box.on .box_desc {
    max-height: 3.3rem;
  }

  .advantage .sec_1 .info .boxs .box .box_desc .txt {
    height: 3.2rem;
  }

  .advantage .sec_2 {
    padding: 60px 20px;
  }

  .advantage .sec_2 .top {
    flex-direction: column;
  }

  .advantage .sec_2 .top .desc {
    width: 100%;
  }

  .advantage .sec_2 .content {
    flex-direction: column;
  }

  .advantage .sec_2 .content .item:nth-child(2n) {
    margin: 0;
  }

  .advantage .sec_2 .content .item .info {
    height: 5.66rem;
  }

  .advantage .sec_2 .content2 {
    flex-direction: column;
  }

  .advantage .sec_2 .content2 .left {
    width: 100%;
  }

  .advantage .sec_2 .content2 .left .sec2_swiper_1 {
    height: 3rem;
  }

  .advantage .sec_2 .content2 .right {
    width: 100%;
  }

  .advantage .sec_2 .content2 .right .box {
    width: 100%;
  }

  .advantage .sec_3 {
    padding: 60px 20px;
  }

  .advantage .sec_3 .list .li {
    width: 100%;
  }


  .download {
    padding-top: .86rem;
  }

  .download .breadcrumb {
    padding: .41rem 20px 0;
  }

  .download .download-title-wrap .title-inner {
    max-width: 100%;
    padding: 0 20px;
  }

  .download .download-filter-wrap .filter-inner {
    max-width: 100%;
    padding: 0 20px;
  }

  .download .file-section .section-inner {
    max-width: 100%;
    padding: 0 20px;
  }

  .download .file-section .file-list {
    gap: 20px;
  }

  .login-card {
    width: auto;
    left: 20px;
    right: 20px;
  }

  .register-row {
    flex-direction: column;
    align-items: start;
    gap: 10px;
  }

  .register-label {
    width: 100%;
  }

  .register-input-wrap {
    width: 100% !important;
    flex: unset;
    height: 35px;
  }

  .register-form {
    gap: 15px;
  }

  .register-code-group {
    flex: unset;
    width: 100%;
  }

  .register-code-btn {
    padding: 10px 15px;
    white-space: nowrap;
    width: auto;
    height: auto;
  }

  .register-input {
    font-size: 12px;
  }

  .login-btn {
    width: 100%;
    height: 40px;
  }

  .login-logo-sm {
    height: 40px;
  }

  .login-tabs::after {
    width: 100%;
  }

  .login-tab {
    padding: 0 0 10px;
  }

  .login-tab:nth-child(1) {
    width: auto;
  }

  .login-tab:nth-child(2) {
    width: auto;
  }

  .login-label {
    margin-bottom: 10px;
  }

  .login-input-wrap {
    height: 35px;
    width: 100% !important;
    margin-bottom: 15px;
  }

  .login-input {
    font-size: 12px;
  }

  .login-checkbox,
  .register-checkbox {
    width: 12px;
    height: 12px;
  }

  .login-row {
    margin-bottom: 30px;
  }

  .login-code-btn {
    width: auto;
    padding: 10px 15px;
    height: auto;
    white-space: nowrap;
  }

  .joinus {
    padding: .86rem 0 0 0;
  }

  .joinus .joinus-intro .breadcrumb {
    padding: 20px;
  }

  .joinus .intro-title {
    padding: 0 20px;
  }

  .joinus .intro-desc {
    max-width: 100%;
    padding: 0 20px;
  }

  .joinus .intro-content {
    flex-direction: column;
    padding: 0 20px;
    gap: 50px;
  }

  .joinus .partner-card {
    padding: 30px 20px;
  }

  .joinus .partner-card .desc ul li span {
    font-size: 16px;
  }

  .joinus .partner-card .desc ul li p {
    font-size: 14px;
  }

  .joinus .partner-card .desc ul li::after {
    font-size: 12px;
  }

  .joinus .partner-card .desc ul li::before {

    left: .0rem;
  }

  .joinus .joinus-recruit .recruit-inner {
    max-width: 100%;
    padding: 0 20px;
  }

  .joinus .joinus-banner {
    max-width: 100%;
    margin: 0 20px;
  }

  .joinus .joinus-banner .banner-card {
    width: auto;
    right: 20px;
    left: 20px;
    bottom: 20px;
    padding: 20px 10px 20px 20px;

  }

  .joinus .joinus-banner .banner-card-info {
    padding-right: 10px;
  }

  .joinus .jobs-body {
    flex-direction: column;
    gap: 60px;
  }

  .joinus .jobs-sidebar {
    border-style: none;
    width: 100%;
    height: auto;
  }

  .joinus .joinus-jobs .jobs-inner {
    max-width: 100%;
    margin: 0 20px;
  }

  .joinus .sidebar-inner {
    padding: 0;
  }

  .joinus .sidebar-toggle {
    font-size: 22px;
  }

  .joinus .checkbox-input:not(:checked)+.checkbox-icon {
    width: 12px;
    height: 12px;
  }

  .joinus .checkbox-input:checked+.checkbox-icon {
    width: 12px;
    height: 12px;
  }

  .joinus .checkbox-input:checked+.checkbox-icon::after {
    font-size: 12px;
  }

  .joinus .jobs-list {
    padding: 0;
  }

  .joinus .jobs-search {
    width: 100%;
    height: 35px;
    margin-bottom: 20px;
  }

  .joinus .jobs-search-btn {
    width: 22px;
    height: 22px;
    margin-right: 7px;
  }

  .joinus .network-card .desc ul li::before {
    top: .15rem;
  }

  .joinus .jobs-search-icon {
    height: auto;
    width: 10px;
  }

  .joinus .job-card.expanded .job-card-body {
    flex-direction: column;
    max-height: 300vh;
  }

  .joinus .job-card-section-text {
    line-height: 1.8;
  }

  .product {
    padding-top: .86rem;
  }

  .product .breadcrumb {
    padding: .41rem 20px 0;
  }

  .product .product-container {
    padding: 0 20px 60px;
  }

  .product .product-content {
    flex-direction: column;
    gap: 40px;
  }

  .product .product-sidebar {
    width: 100%;
  }

  .product .product-filter {
    width: 100%;
  }

  .product .product-sub-filter {
    width: 100%;
  }

  .product .product-sidebar-menu {
    margin-top: 20px;
  }

  .product .product-sort {
    width: auto;
  }

  .product .product-grid {
    grid-template-columns: 1fr;
  }

  .product .product-card-desc {
    padding: 10px 20px;
  }

  .productdetail {
    padding: .86rem 0 0 0;
  }

  .productdetail .sec_1 {
    padding: 0 20px 40px;
  }

  .productdetail .sec_1 .content {
    flex-direction: column;
    gap: 40px;
  }

  .productdetail .sec_1 .box .img_box {
    width: 100%;
  }

  .productdetail .sec_1 .content .right {
    width: 100%;
  }
  
  .productdetail .sec_1 .content .right .btns {
      flex-direction: column;
      
  }
  .productdetail .sec_1 .content .right .btns .contact-btn {
      width: fit-content;
  }
  .productdetail .sec_1 .content .right .file_box {
      margin: 0;
  }

  .productdetail .sec_2 {
    padding: 40px 20px;
  }

  .productdetail .sec_2 .content .table {
    overflow-x: auto;
    width: 100%;
  }

  .productdetail .sec_2 .content table {
    width: 16rem;
  }

  .productdetail .sec_3 {
    padding: 60px 20px;
  }

  .productdetail .sec_3 .content {
    flex-direction: column;
    gap: 40px;
  }

  .productdetail .sec_3 .content .img_box {
    width: 100%;
    height: 66vw;
  }

  .productdetail .sec_3 .content .info ul {
    padding: 0;
  }

  .productdetail .sec_3 .content .info ul li {
    line-height: 1.8;
    margin-bottom: 10px;
  }

  .service {
    padding-top: .86rem;
  }

  .service .service-top {
    flex-direction: column;
  }

  .service .service-container {
    padding: 0 20px;
  }

  .service .service-top .service-image {
    width: 100%;
  }

  .service .service-table-wrap .service-container {
    overflow-x: auto;
    margin: 0 20px;
    width: auto;
    padding: 0;
  }

  .service .service-top .service-content .service-subtitle {
    margin-bottom: 10px;
  }

  .service .service-accordion .service-accordion-item .service-accordion-header .service-accordion-left .service-accordion-icon {
    width: 18px;
    height: 18px;
  }

  .service .service-form-wrap {
    padding: 40px 0;
  }

  .service .service-form-wrap .service-container {
    padding: 0 20px;
  }

  .service .service-form-wrap .service-form-layout {
    flex-direction: column;
    gap: 20px;
  }

  .service .service-form-wrap .service-form-layout form {
    width: 100%;
  }

  .service .service-form-wrap .service-form-layout .form-image {
    width: 100%;
    height: 50vw;
  }

  .service .service-accordion .service-accordion-item .service-accordion-body {
    overflow: hidden;
  }

  .solution {
    padding-top: .86rem;
  }

  .solution .solution-container {
    padding: 0 20px;
  }

  .solution .solution-layout {
    flex-direction: column;
    gap: 40px;
  }

  .solution .solution-sidebar {
    width: 100%;
    background: #fff;
    z-index: 1;
    top: .86rem;
    padding: 20px 0;
  }

  .solution .solution-divider {
    display: none;
  }

  .solution .solution-content-top {
    flex-direction: column;
  }

  .solution .solution-content-top .solution-top-image {
    width: 100%;
  }

  .solution .solution-cards {
    grid-template-columns: 1fr;
  }

  .solution .solution-cards .solution-card .solution-card-img img {
    height: 66vw;
  }

  .solution .solution-cards .solution-card .solution-card-body {
    padding: 20px;
  }

  .solution .solution-cards .solution-card .solution-card-title {
    margin-bottom: 15px;
  }

  .solution-detail {
    padding-top: .86rem;
  }

  .solution-detail .sd-container {
    padding: 0 20px 40px;
  }

  .solution-detail .sd-card {
    padding: 30px 20px;
  }

  .solution-detail .sd-card .sd-tags .sd-tag {
    padding: 5px 15px;
  }

  .solution-detail .sd-more {
    padding: 40px 0;
  }

  .solution-detail .sd-more .sd-more-swiper {
    padding: 20px;
  }

  .solution-detail .sd-more .sd-more-nav .sd-more-nav-btn {
    width: 30px;
    height: 30px;
  }

  .solution-detail .sd-more .sd-more-nav .sd-more-nav-btn::after {
    width: 7px;
    height: 7px;
  }

  .uc .uc-inner {
    padding: .86rem 20px 20px;
  }

  .uc .uc-body {
    flex-direction: column;
  }

  .uc .uc-content {
    flex: unset;
    width: 100%;
    margin-top: 25px;
  }

  .uc .uc-left {
    width: 100%;
    background: #f9f9f9;
    z-index: 1;
    /* top: .86rem; */
    position: relative;
    top: unset;
    margin-top: 20px;
  }

  .uc .uc-file-row .uc-file-btn .uc-icon-stack {
    width: 12px;
    height: 12px;
  }

  .uc .uc-file-row .uc-file-btn .uc-file-icon {
    width: 12px;
    height: 12px;
  }

  .search .search-banner {}

  .search .search-banner .search-form {
    width: 90%;

  }

  .search .search-result {
    padding: 60px 20px;
  }

  .search .search-result .results-top {
    flex-direction: column-reverse;
    gap: 30px;
  }

  .search .search-result .results-top .tabs {
    justify-content: start;
    /* padding: 0 20px; */
    overflow-x: auto;
    width: 100%;
    padding-bottom: 10px;
  }

  .search .search-result .results-top .tabs .tab {
    white-space: nowrap;
  }

  .search .search-result .list_1 {
    grid-template-columns: repeat(1, 1fr);
  }

  .search .search-result .list_1 .solution-card .solution-card-img img {
    height: 68vw;
  }

  .search .search-result .list_1 .solution-card .solution-card-body {
    padding: 20px;
  }

  .search .search-result .list_1 .solution-card .solution-card-title {
    margin-bottom: 10px;
  }

  .search .search-result .list_2 {
    grid-template-columns: 1fr;
  }

  .search .search-result .no-results .bg {
    display: none;
  }

  .search .search-result .list_3 {
    grid-template-columns: repeat(1, 1fr);
  }

  .search .search-result .list_4 .file-row .row-btn .btn-icon-stack {
    width: 12px;
    height: 12px;
  }

  .search .search-result .list_4 .file-row .row-btn .btn-icon {
    width: 12px;
    height: 12px;
  }
  
  
  .apply {
    padding-top: 96px;
  }

  .apply .apply-hero {
    padding: 40px 0;
  }

  .apply .apply-hero .apply-hero-container {
    padding: 0 20px;
  }

  .apply .apply-hero .apply-hero-container .apply-hero-title {
    font-size: 36px !important;
    margin-bottom: 24px;
  }

  .apply .apply-hero .apply-hero-container .apply-hero-desc {
    font-size: 20px !important;
  }

  .apply .apply-main {
    padding: 64px 20px;
  }

  .apply .apply-main .apply-grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .apply .apply-main .apply-grid .apply-form-card {
    padding: 32px;
  }

  .apply .apply-main .apply-grid .apply-form-card .apply-form-title {
    font-size: 24px !important;
    padding-bottom: 16px;
    margin-bottom: 32px;
  }

  .apply .apply-main .apply-grid .apply-form-card form .apply-form-section .apply-form-section-title {
    font-size: 18px !important;
  }

  .apply .apply-main .apply-grid .apply-form-card form .apply-form-section .apply-form-section-title .apply-icon {
    width: 20px;
    height: 20px;
    margin-right: 8px;
  }

  .apply .apply-main .apply-grid .apply-form-card form .apply-form-section .apply-form-grid {
    grid-template-columns: 1fr;
  }

  .apply .apply-main .apply-grid .apply-form-card form .apply-form-section .apply-form-grid .apply-form-field .apply-form-label {
    font-size: 14px !important;
    margin-bottom: 4px;
  }

  .apply .apply-main .apply-grid .apply-form-card form .apply-form-section .apply-form-grid .apply-form-field .apply-input,
  .apply .apply-main .apply-grid .apply-form-card form .apply-form-section .apply-form-grid .apply-form-field .apply-textarea {
    padding: 8px 16px;
    font-size: 16px;
  }

  .apply .apply-main .apply-grid .apply-form-card form .apply-form-section .apply-form-grid .apply-form-field .apply-checkbox-list {
    gap: 8px;
    margin-top: 8px;
  }

  .apply .apply-main .apply-grid .apply-form-card form .apply-form-section .apply-form-grid .apply-form-field .apply-checkbox-list input[type="checkbox"] {
    width: 16px;
    height: 16px;
  }

  .apply .apply-main .apply-grid .apply-form-card form .apply-form-section .apply-form-grid .apply-form-field .apply-checkbox-list label {
    font-size: 14px !important;
  }

  .apply .apply-main .apply-grid .apply-form-card form .apply-submit-wrap .apply-submit {
    padding: 16px 32px;
    font-size: 14px !important;
  }

  .apply .apply-main .apply-grid .apply-form-card form .apply-submit-wrap .apply-form-note {
    font-size: 12px !important;
    margin-top: 16px;
  }

  .apply .apply-main .apply-grid .apply-sidebar .apply-why {
    padding: 24px;
  }

  .apply .apply-main .apply-grid .apply-sidebar .apply-why .apply-why-title {
    font-size: 20px !important;
  }

  .apply .apply-main .apply-grid .apply-sidebar .apply-why .apply-why-list .apply-why-item .apply-icon {
    width: 20px;
    height: 20px;
    margin-right: 12px;
  }

  .apply .apply-main .apply-grid .apply-sidebar .apply-why .apply-why-list .apply-why-item span {
    font-size: 14px !important;
  }

  .apply .apply-main .apply-grid .apply-sidebar .apply-process {
    padding: 24px;
  }

  .apply .apply-main .apply-grid .apply-sidebar .apply-process .apply-process-title {
    font-size: 18px !important;
  }

  .apply .apply-main .apply-grid .apply-sidebar .apply-process .apply-process-list .apply-process-item .apply-process-num {
    width: 24px;
    height: 24px;
    left: -12px;
    font-size: 12px !important;
  }

  .apply .apply-main .apply-grid .apply-sidebar .apply-process .apply-process-list .apply-process-item h4 {
    font-size: 14px !important;
  }

  .apply .apply-main .apply-grid .apply-sidebar .apply-process .apply-process-list .apply-process-item p {
    font-size: 12px !important;
  }
  
  
  
  .certifications .cert-hero {
    padding: 1.30rem 0 .56rem;
  }

  .certifications .cert-hero-inner {
    padding: 0 .32rem;
  }

  .certifications .cert-hero-content {
    max-width: 100%;
  }

  .certifications .cert-hero-badge {
    font-size: 11px;
    margin-bottom: 14px;
  }

  .certifications .cert-hero-title {
    margin-bottom: 14px;
    font-size: 26px;
  }

  .certifications .cert-hero-desc {
    font-size: 14px;
  }

  .certifications .cert-body {
    padding: .48rem .32rem;
  }

  .certifications .cert-intro {
    grid-template-columns: 1fr;
    gap: .32rem;
    margin-bottom: .48rem;
  }

  .certifications .cert-section-title {
    margin-bottom: 14px;
    font-size: 20px;
  }

  .certifications .cert-intro-p {
    font-size: 14px;
  }

  .certifications .cert-features {
    grid-template-columns: 1fr;
    gap: 14px;
    margin-top: 18px;
  }

  .certifications .cert-feature h4 {
    font-size: 14px;
  }

  .certifications .cert-feature p {
    font-size: 12px;
  }

  .certifications .cert-float-card {
    left: .10rem;
    bottom: -.10rem;
    max-width: 2.40rem;
    padding: .14rem;
  }

  .certifications .cert-float-num {
    font-size: 18px;
  }

  .certifications .cert-core-head {
    margin-bottom: 22px;
  }

  .certifications .cert-core-desc {
    font-size: 14px;
  }

  .certifications .cert-tabs {
    gap: 8px;
    margin-bottom: 22px;
  }

  .certifications .cert-tab {
    padding: 8px 16px;
    font-size: 12px;
  }

  .certifications .cert-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .certifications .cert-card {
    padding: 20px;
  }

  .certifications .cert-card-title {
    font-size: 16px;
  }

  .certifications .cert-card-desc {
    font-size: 13px;
  }

  .certifications .cert-cta {
    padding: 28px 20px;
  }

  .certifications .cert-cta h2 {
    font-size: 20px;
  }

  .certifications .cert-cta-desc {
    font-size: 14px;
  }

  .certifications .cert-cta-btn {
    padding: 12px 20px;
    font-size: 13px;
  }

  .cert-detail .cd-container {
    padding: 1.15rem .32rem .48rem;
  }

  .cert-detail .cd-breadcrumb {
    font-size: 12px;
    margin-bottom: 16px;
  }

  .cert-detail .cd-head {
    padding: 22px;
  }

  .cert-detail .cd-title-row {
    gap: 12px;
    margin-bottom: 18px;
  }

  .cert-detail .cd-title {
    font-size: 24px;
  }

  .cert-detail .cd-category {
    font-size: 11px;
  }

  .cert-detail .cd-summary {
    grid-template-columns: 1fr;
    gap: 16px;
    padding: 16px;
  }

  .cert-detail .cd-summary-title {
    font-size: 15px;
  }

  .cert-detail .cd-summary-text {
    font-size: 12px;
  }

  .cert-detail .cd-cert-area {
    padding: 16px;
  }

  .cert-detail .cd-paper {
    max-width: 100%;
    padding: 32px 18px 24px;
    aspect-ratio: auto;
  }

  .cert-detail .cd-paper-seal {
    width: 48px;
    height: 48px;
    margin-bottom: 14px;
  }

  .cert-detail .cd-paper-title {
    font-size: 20px;
  }

  .cert-detail .cd-paper-rule {
    margin-bottom: 18px;
  }

  .cert-detail .cd-paper-text {
    font-size: 12px;
  }

  .cert-detail .cd-paper-brand {
    font-size: 20px;
  }

  .cert-detail .cd-paper-standard {
    margin-bottom: 28px;
    font-size: 17px;
  }

  .cert-detail .cd-paper-signs {
    max-width: 100%;
    padding: 0;
  }

  .cert-detail .cd-paper-line {
    width: 80px;
  }

  .cert-detail .cd-paper-sign p {
    font-size: 9px;
  }

  .cert-detail .cd-paper-watermark svg {
    width: 140px;
    height: 140px;
  }

  .cert-detail .cd-actions {
    flex-direction: column;
  }

  .cert-detail .cd-btn {
    width: 100%;
    padding: 12px 16px;
    font-size: 13px;
  }




}