/* ==========================================
   蔚蓝 关于我们组件样式
   ========================================== */

.weilan-about-us {
  position: relative;
  width: 100%;
  padding: var(--spacing-5xl, 3rem) 0; /* 120px */
  font-family: var(--font-family);
  position: relative;
  /* background: linear-gradient(
    180deg,
    var(--color-primary) 0%,
    rgba(0, 204, 184, 0.4) 70%,
    rgba(255, 255, 255, 0)
  ); */
}

.weilan-about-us-bg {
  position: absolute;
  top: -12rem;
  left: 0px;
  width: 100% !important;
  z-index: 0;
  /* height: 100% !important; */
  /* background: linear-gradient(
    180deg,
    rgba(0, 204, 184, 0) 6.29%,
    rgba(0, 96, 185, 0.4) 43.29%,
    rgba(0, 96, 185, 0.6) 59.98%,
    rgba(6, 102, 211, 0) 90.62%
  );
  background-size: 100%; */
}

/* .weilan-about-us::before {
  content: 'about us';
  text-transform: capitalize;
  display: inline-block;
  position: absolute;
  top: 25%;
  left: 0px;
  color: var(--text-color-light);
  opacity: 0.06;
  font-size: 12.5rem;
  font-weight: 800;
} */

.weilan-about-us > .container {
  position: relative;
}

/* ==========================================
   内容区域布局
   ========================================== */

.weilan-about-us-content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--spacing-4xl, 2.25rem); /* 36px */
  position: relative;
}

/* 文本和统计数据在一行的包装器 */
.weilan-about-us-top {
  display: flex;
  align-items: flex-start;
  gap: var(--spacing-4xl, 2.25rem); /* 36px */
  width: 100%;
}

/* ==========================================
   文本内容区域
   ========================================== */

.weilan-about-us-text {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.weilan-about-us-title {
  font-weight: var(--font-weight-xl);
  line-height: 130%;
  color: var(--text-color);
  margin-bottom: 1.1875rem;
}

.about-us-subtitle {
  color: var(--color-second);
  margin-bottom: 0.5625rem;
}

.about-us-subtitle::before {
  display: none;
}

.weilan-about-us-description {
  font-family: var(--font-family);
  font-size: var(--font-size-md);
  font-weight: var(--font-weight-base);
  line-height: 1.625;
  color: var(--text-color-second);
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-bottom: 2.6875rem;
}

/* ==========================================
   查看更多按钮
   ========================================== */

.weilan-about-us-view_more {
}

.view_more-btn {
  width: max-content;
}

/* ==========================================
   图片区域
   ========================================== */

.weilan-about-us-image {
  width: 100%;
  position: relative;
  overflow: hidden;
  border-radius: var(--spacing-md, 0.75rem); /* 12px */
}

.weilan-about-us-image img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
  opacity: 0;
  transition: opacity 0.5s ease;
}

.weilan-about-us-image img.loaded {
  opacity: 1;
}

/* ==========================================
   播放按钮
   ========================================== */

.weilan-about-us-play-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 10;
  transition: all 0.3s ease;
  background: transparent;
  border: none;
  padding: 0;
}

.weilan-about-us-play-btn:hover {
  transform: translate(-50%, -50%) scale(1.1);
}

.weilan-about-us-play-btn .play-icon {
  width: auto;
  height: auto;
  max-width: 5.4rem;
  max-height: 5.4rem;
  display: block;
  object-fit: contain;
}

/* ==========================================
   统计数据区域
   ========================================== */

.weilan-about-us-stats {
  flex: 1;
  max-width: 50%;
  position: relative;
}

.weilan-stats-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 4.875rem;
  padding: var(--spacing-2xl, 2.25rem) 0px; /* 36px */
}

.weilan-stat-item {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  padding: var(--spacing-xl, 1.25rem); /* 20px */
}

.weilan-stat-item:hover .weilan-stat-number * {
  transition: all 0.3s;
  color: var(--color-second);
}

.weilan-stat-number {
  display: flex;
  align-items: baseline;
}

.weilan-stat-value {
  font-family: var(--title-font-family);
  font-size: var(--font-size-h2);
  font-weight: var(--font-weight-xl);
  line-height: 1.3;
  color: var(--text-color);
}

.weilan-stat-unit {
  font-family: var(--title-font-family);
  font-size: var(--font-size-md);
  font-weight: var(--font-weight-lg);
  line-height: 1;
  color: var(--text-color);
}

.weilan-stat-description {
  font-family: var(--font-family);
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-base);
  line-height: 1.66;
  color: var(--text-color-second);
  word-break: break-word;
}

@media screen and (max-width: 1200px) {
  .weilan-about-us-bg {
    top: 0px;
    height: 120% !important;
  }
}

@media screen and (max-width: 1024px) {
  .weilan-about-us::before {
    font-size: 8.5rem;
    font-weight: 800;
  }
}

@media screen and (max-width: 768px) {
  .weilan-about-us::before {
    font-size: 6.5rem;
    top: 35%;
    font-weight: 800;
  }
}

@media screen and (max-width: 767px) {
  .weilan-about-us-top {
    flex-direction: column;
  }

  .weilan-about-us-stats {
    max-width: 100%;
    width: 100%;
  }

  .weilan-stats-grid {
    column-gap: 1rem;
    /* grid-template-columns: 1fr; */
  }
}
