* { margin: 0; padding: 0; box-sizing: border-box; }

html {
  scrollbar-gutter: stable;
  background: #05070B;
}

:root {
  --accent-gradient-line: linear-gradient(90deg, rgba(225, 6, 0, 0) 0%, #E10600 18.27%, #E10600 77.88%, rgba(225, 6, 0, 0) 100%);
  --pc-header-height: 80px;
  --pc-footer-height: 66px;
  --pc-shell-offset: calc(var(--pc-header-height) + var(--pc-footer-height));
}

body {
  font-family: "Microsoft YaHei", sans-serif;
  color: #C8CED6;
  background: #05070B;
}

a { text-decoration: none; color: inherit; }
ul { list-style: none; }
img { display: block; }

.btn {
  display: inline-block;
  text-align: center;
  color: #fff;
  background: linear-gradient(180deg, #F25458 12.02%, #C10014 69.23%);
  opacity: 0.9;
}

/* 顶部导航 */
.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: var(--pc-header-height);
  background: linear-gradient(180deg, #05070B 0%, #08111F 100%);
  z-index: 100;
}

.header-inner {
  max-width: 1920px;
  height: var(--pc-header-height);
  margin: 0 auto;
  padding: 0 80px;
  display: flex;
  align-items: center;
}

.header-logo img {
  height: 53px;
}

.nav {
  flex: 1;
  margin-left: 60px;
}

.nav-list {
  display: flex;
  justify-content: center;
  gap: 39px;
}

.nav-item a {
  display: block;
  padding: 0 10px;
  line-height: var(--pc-header-height);
  font-size: 16px;
  color: #fff;
  border-bottom: 2px solid transparent;
}

.nav-item:hover a,
.nav-item.active a {
  color: #E10600;
  border-bottom: 2px solid #E10600;
}

.btn-contact {
  width: 80px;
  height: 30px;
  line-height: 30px;
  border-radius: 50px;
  font-size: 12px;
}

/* 手机端菜单按钮，默认隐藏 */
.nav-btn {
  display: none;
  width: 28px;
  height: 22px;
  cursor: pointer;
}

.nav-btn span {
  display: block;
  height: 2px;
  margin-bottom: 6px;
  background: #fff;
}

.nav-btn span:last-child {
  margin-bottom: 0;
}

/* 手机端联系图标、底部 Tab：默认隐藏 */
.header-contact,
.tabbar {
  display: none;
}

/* PC 顶栏：Logo / 导航 / 联系按钮三栏，导航相对整栏居中 */
@media (min-width: 993px) {
  .header-inner {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
  }

  .header-logo {
    justify-self: start;
  }

  .nav {
    flex: none;
    margin-left: 0;
    justify-self: center;
  }

  .btn-contact {
    justify-self: end;
  }
}

/* 临界宽度 PC：压缩导航，避免仍使用大屏间距导致菜单挤压。 */
@media (min-width: 993px) and (max-width: 1200px) {
  .header-inner {
    padding-right: calc(23.19vw - 198px);
    padding-left: calc(23.19vw - 198px);
  }

  .header-logo img {
    height: calc(3.38vw + 12.43px);
  }

  .nav-list {
    gap: calc(11.11vw - 94.3px);
  }

  .nav-item a {
    padding-right: calc(1.93vw - 13.17px);
    padding-left: calc(1.93vw - 13.17px);
    font-size: calc(0.97vw + 4.37px);
  }

  .btn-contact {
    width: calc(4.83vw + 22.04px);
  }
}

/* PC 主视觉背景固定在视口，内容滚动不带动背景。 */
@media (min-width: 993px) {
  .hero,
  .about-main,
  .sub-main,
  .fwtx-main,
  .sthz-main,
  .wlzw-main,
  .qywh-main,
  .jjf-bg-item,
  .cj-detail-hero {
    background-attachment: fixed;
  }
}
