/* ==========================================================================
   四川云创年华网络科技有限公司提供技术支持www.88321.cn
   ========================================================================== */

/* ---------- 1. 首页首屏轮播 ---------- */
.hero {
  position: relative;
  /* 顶部导航为 fixed，需为其预留高度，避免首屏被遮住 */
  margin-top: var(--header-h);
  min-height: 660px;
  margin-bottom: 0;
  background: var(--bg-dark);
  color: var(--text-on-dark);
  overflow: hidden;
}

.hero .slide {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity .65s var(--ease), visibility .65s;
}

.hero .slide.is-active {
  opacity: 1;
  visibility: visible;
}

.hero .slide > img,
.hero .slide > video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hero .slide::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(120deg, rgba(10, 20, 30, .8), rgba(10, 20, 30, .35));
}

.hero .caption {
  position: relative;
  z-index: 1;
}

.hero h1 {
  font-size: 54px;
  letter-spacing: 6px;
  margin-bottom: 18px;
}

.hero p {
  max-width: 600px;
  font-size: 19px;
  color: var(--text-on-dark-sub);
  /* 宽度超过 700px 的内容折行显示，最多两行，再多则截断 */
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 36px;
}

/* 圆点指示器 */
.hero-dots {
  position: absolute;
  left: 50%;
  bottom: 26px;
  z-index: 3;
  display: flex;
  gap: 10px;
  transform: translateX(-50%);
}

.hero-dots button {
  width: 30px;
  height: 4px;
  border-radius: 2px;
  background: rgba(255, 255, 255, .38);
  transition: background var(--ease), width var(--ease);
}

.hero-dots button:hover {
  background: rgba(255, 255, 255, .7);
}

.hero-dots button.is-active {
  width: 44px;
  background: var(--cyan);
}

/* 左右箭头 */
.hero-arrow {
  position: absolute;
  top: 50%;
  z-index: 3;
  /* flex 居中，保证图标在圆内几何居中 */
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translateY(-50%);
  width: 56px;
  height: 56px;
  padding: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, .12);
  color: #fff;
  line-height: 0;
  opacity: 0;
  transition: background var(--ease), opacity var(--ease);
}

.hero-arrow svg {
  display: block;
  width: 30px;
  height: 30px;
}

.hero:hover .hero-arrow {
  opacity: 1;
}

.hero-arrow:hover {
  background: var(--brand);
}

.hero-arrow--prev { left: 26px; }
.hero-arrow--next { right: 26px; }

/* 声音开关：仅在视频帧显示 */
.hero-sound {
  position: absolute;
  right: 24px;
  bottom: 28px;
  z-index: 3;
  display: none;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(255, 255, 255, .5);
  border-radius: 50%;
  color: #fff;
  line-height: 1;
}

.hero.on-video .hero-sound {
  display: flex;
}

.hero-sound:hover {
  background: rgba(255, 255, 255, .18);
}

/* 首屏下方快捷入口 */
.hero-links {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 40px;
  margin-top: 46px;
  padding-top: 26px;
  border-top: 1px solid rgba(255, 255, 255, .2);
  font-size: 15px;
}

.hero-links a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--text-on-dark-sub);
}

.hero-links a::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--cyan);
}

.hero-links a:hover {
  color: #fff;
}

/* ---------- 2. 定制能力标签区 ---------- */
.custom-panel {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 56px;
  align-items: center;
}

.custom-panel img {
  width: 100%;
  max-height: 480px;
  aspect-ratio: 1 / 1;
  object-fit: contain;

  border-radius: var(--radius-lg);
}

.custom-panel h3 {
  font-size: 28px;
  margin-bottom: 6px;
}

.custom-panel .dash {
  margin-bottom: 18px;
  font-size: 22px;
  letter-spacing: 8px;
  color: var(--cyan);
}

.custom-panel .lead {
  margin-bottom: 16px;
  font-size: 17px;
  font-weight: 600;
}

/* ---------- 3. 产品标签页 ---------- */
.product-tabs .tabs {
  margin-bottom: 36px;
}

/* 品质测试：3 列，带标题与说明 */
.icons-3 {
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
}

.icons-3 .icon-item {
  padding: 30px 26px;
  text-align: left;
  align-items: flex-start;
  border: 1px solid var(--line);
}

.icons-3 .icon-item:hover {
  border-color: transparent;
}

/* ---------- 4. 关于我们 ---------- */
.about-media {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin-top: 40px;
}

.about-media img {
  width: 100%;
  border-radius: var(--radius);
}

.us-contact {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 56px;
  align-items: start;
}

.us-contact-left {
  display: flex;
  flex-direction: column;
}

.map {
  position: relative;
  margin-top: 28px;
  flex: 1;
  min-height: 420px;
  border-radius: var(--radius-lg);
  background: var(--bg-soft) center/cover no-repeat;
  overflow: hidden;
}

.map::after {
 
  position: absolute;
  inset: auto 0 0 0;
  padding: 14px 18px;
  background: rgba(0, 0, 0, .6);
  color: #fff;
  font-size: 14px;
}

/* ---------- 5. 询价引导条 ---------- */
.cta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 44px 48px;
  border-radius: var(--radius-lg);
  background: linear-gradient(100deg, var(--brand), var(--cyan-dark));
  color: #fff;
}

.cta h2 {
  font-size: 26px;
  margin-bottom: 6px;
}

.cta p {
  opacity: .88;
  font-size: 15px;
}

.cta .btn {
  background: #fff;
  color: var(--brand-dark);
}

.cta .btn:hover {
  background: #f0f7ff;
}

/* ---------- 6. 返回顶部 ---------- */
.to-top {
  flex: 0 0 auto;
  border: 0;
  padding: 0;
}
