  :root {
    --color: #021A64;
    --swiper-theme-color: #021A64;
    --swiper-navigation-color: #021A64;
  }

  *,
  :after,
  :before {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0;
    font-weight: 400;
    vertical-align: baseline;
    text-wrap: pretty;
    font-family: Montserrat;
  }

  @font-face {
    font-family: Montserrat;
    src: url(/assets/fonts/Montserrat-Regular.otf);
    font-weight: 400;
  }

  @font-face {
    font-family: Montserrat;
    src: url(/assets/fonts/Montserrat-Bold.otf);
    font-weight: 700;
  }

  /* 通用样式 - 通用样式 - 通用样式 - 通用样式 - 通用样式 - 通用样式 - 通用样式 - 通用样式 - 通用样式 - 通用样式 - 通用样式 - 通用样式*/
  /* ----- 主题宽度 ----- 主题宽度 ----- 主题宽度 ----- 主题宽度 ----- 主题宽度 ----- 主题宽度 -----*/
  .container {
    width: 1600px;
    max-width: 1600px;
    margin: 0 auto;
    padding: 0;
  }

  @media screen and (max-width: 1660px) {
    .container {
      width: 100%;
      max-width: 100%;
      padding-left: 5vw;
      padding-right: 5vw;
    }
  }


  @media screen and (max-width: 900px) {
    .container {
      padding-left: 3vw;
      padding-right: 3vw;
    }
  }

  :root {
    --container: calc((100vw - 1600px - 6px) / 2);
  }


  @media screen and (max-width: 1660px) {
    :root {
      --container: 5vw;
    }
  }

  @media screen and (max-width: 900px) {
    :root {
      --container: 3vw;
    }
  }

  /* ----- 框架 ----- 框架 ----- 框架 ----- 框架 ----- 框架 ----- 框架 -----*/
  section {
    position: relative;
    z-index: 1;
    overflow: hidden;
    width: 100%;
    padding: 120px var(--container);
  }

  @media (max-width: 1200px) {
    section {
      padding: 90px var(--container);
    }
  }

  @media (max-width: 900px) {
    section {
      padding: 60px var(--container);
    }
  }

  /* ----- 标题 ----- 标题 ----- 标题 ----- 标题 ----- 标题 ----- 标题 -----*/
  .BaseTitle {
    display: flex;
    flex-direction: column;
    grid-gap: 45px;
    margin-bottom: 90px;
  }

  .BaseTitle h1 {
    color: var(--color);
    font-size: 50px;
    font-weight: 600;
    line-height: 1;
    text-align: center;
  }

  .BaseTitle h2 {
    color: #021A64;
    text-align: center;
    font-size: 16px;
  }

  @media (max-width: 1200px) {
    .BaseTitle {
      grid-gap: 30px;
      margin-bottom: 60px;
    }

    .BaseTitle h1 {
      font-size: 42px;
    }
  }

  @media (max-width: 900px) {
    .BaseTitle {
      grid-gap: 15px;
      margin-bottom: 30px;
    }

    .BaseTitle h1 {
      font-size: 36px;
    }
  }

  @media (max-width: 600px) {
    .BaseTitle h1 {
      font-size: 28px;
    }

    .BaseTitle h2 {
      font-size: 14px;
    }
  }

  /* ----- 查看更多 ----- 查看更多 ----- 查看更多 ----- 查看更多 ----- 查看更多 -----*/

  .indexMore {
    display: flex;
    align-items: center;
    grid-gap: 60px;
    padding-bottom: 10px;
    border-bottom: 1px solid #021A64;
  }

  @media (max-width: 900px) {
    .indexMore {
      grid-gap: 30px;
      padding-bottom: 5px;
    }
  }

  /* ----- IndexRight ----- IndexRight ----- IndexRight ----- IndexRight ----- IndexRight -----*/
  .IndexRight {
    position: fixed;
    z-index: 99999;
    right: 10px;
    top: 34vh;
    width: 110px;
    display: flex;
    flex-direction: column;
    grid-gap: 15px;
    border-radius: 10px;
    background: linear-gradient(180deg, #021A64 25%, #021A64 100%);
    padding: 5px;
  }

  .IndexRightTop {
    display: flex;
    flex-direction: column;
    align-items: center;
    grid-gap: 10px;
    color: #FFFFFF;
    text-align: center;
    font-size: 14px;
  }

  .IndexRight span {
    border-radius: 10px;
    background: #FFFFFF;
    padding: 15px;
    display: flex;
    flex-direction: column;
    grid-gap: 15px;
  }

  .IndexRight span a {
    display: flex;
    flex-direction: column;
    align-items: center;
    grid-gap: 5px;
    color: #021A64;
    text-align: center;
    font-size: 14px;
  }

  @media (max-width: 750px) {
    .IndexRight {
      transform: translateY(-50%);
      width: 80px;
      grid-gap: 5px;
    }

    .IndexRight span {
      padding: 5px;
    }

    .IndexRight span a,
    .IndexRightTop {
      font-size: 12px;
    }

    .IndexRight span img {
      width: 30px;
    }
  }

  /* ----- phoneFooter ----- phoneFooter ----- phoneFooter ----- phoneFooter ----- phoneFooter -----*/
  .phoneFooter {
    display: none;
    width: 100%;
    height: 60px;
    background: #FFFFFF;
    position: fixed;
    z-index: 99;
    left: 0;
    bottom: 0;
    box-shadow: 0px 0px 10px 5px rgba(2,26,100,0.1);
  }

  .phoneFooter a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    grid-gap: 3px;
  }

  .phoneFooter a img {
    width: 20px;
    filter: grayscale(1);
  }

  .phoneFooter a.active img {
    filter: grayscale(0);
  }

  .phoneFooter a p {
    color: #021A64;
    text-align: center;
    font-size: 14px;
  }

  .phoneFooter a.active p {
    color: var(--color);
  }


  @media (max-width: 750px) {
    .phoneFooter {
      display: flex;
      justify-content: space-evenly;
    }

    footer {
      padding: 0;
      height: 60px;
      background: #FFFFFF;
    }

    footer * {
      display: none !important;
    }

  }

  @media (max-width: 400px) {
    .phoneFooter a p {
      font-size: 12px;
    }
  }


  /* ----- 鼠标移入图片变大 ----- 鼠标移入图片变大 ----- 鼠标移入图片变大 ----- 鼠标移入图片变大 -----*/
  .imgHover {
    overflow: hidden;
    width: 100%;
  }

  .imgHover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.5s;
  }

  .imgHover:hover img {
    transform: scale(1.08);
  }

  .imgHoverBox:hover img {
    transform: scale(1.08);
  }

  /* 相册组件 */

  .bigimg {
    width: auto !important;
    height: auto !important;
    max-width: 70vw !important;
    max-height: 70vh !important;
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    display: none;
    z-index: 9999;
    border: 0px solid #FFFFFF;
    object-fit: contain;
  }

  .mask {
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(2,26,100,0.8);
    z-index: 9998;
    transition: all 1s;
    display: none
  }

  .mask img {
    width: 50px;
    height: 50px;
    background: #FFFFFF;
    padding: 15px;
    border-radius: 50%;
    position: fixed;
    bottom: 5vh;
    left: calc(50% - 25px);
  }

  @media (max-width: 640px) {
    .mask img {
      bottom: 10vh;
    }
  }
/* 2026-10-21 手机端隐藏右侧浮动客服栏(YOMBO)，PC 不受影响 */
@media (max-width: 750px) {
  .IndexRight { display: none !important; }
}

/* 2026-10-21 两色调：全局正文蓝字 + 白底；链接继承父色 */
body { color: #021A64; background-color: #FFFFFF; }
a { color: inherit; }

/* 两色调：分页控件 + raw-html-embed 表格边框（覆盖内容内联灰边） */
.pagination .page-link, a.page-link {
  color: #021A64 !important;
  border-color: rgba(2,26,100,0.2) !important;
  background-color: #FFFFFF !important;
}
.pagination .page-item.active .page-link,
.pagination .page-link.active {
  color: #FFFFFF !important;
  background-color: #021A64 !important;
  border-color: #021A64 !important;
}
.raw-html-embed table th,
.raw-html-embed table td {
  border-color: rgba(2,26,100,0.15) !important;
}

.raw-html-embed table td {
  background-color: #FFFFFF !important;
  color: #021A64 !important;
}

/* ===== 2026-10-21 两色调收口 第2轮：内页 z01/z02/z03 + 表格 + 表单 ===== */
/* 1) 内页三种文章模板（内联 style 写死的散色） */
.Z01Post, .Z02Post, .Z03Post { color: #021A64; }
.Z01Post .zt, .Z02Post .zt, .Z03Post .zt,
.Z01Post .backlink a, .Z03Post .backlink a,
.Z01Post .ztags h3, .Z02Post .zlist h3,
.Z01Post .zintro, .Z02Post .meta h2, .Z02Post .meta b, .Z02Post .zlist h4,
.Z01Post .zdetail, .Z02Post .zdetail, .Z03Post .zdetail {
  color: #021A64 !important;
}
.Z01Post .ztags li {
  background: #FFFFFF !important;
  border-color: rgba(2,26,100,0.2) !important;
  color: #021A64 !important;
}

/* 2) Bootstrap / CKEditor 表格容器默认 #212529 → 站色（单元格自有色仍优先） */
.table, figure.table, .raw-html-embed table {
  color: #021A64;
  --bs-table-color: #021A64;
  --bs-body-color: #021A64;
}

/* 3) 表单控件（全站输入框均在白底） */
input, textarea, select, .form-control, .form-select, .searchInput {
  color: #021A64 !important;
}
input::placeholder, textarea::placeholder {
  color: rgba(2,26,100,0.5) !important;
}
