:root {
  --color-theme: #ff564a;
  --color-primary: #409eff;
  --color-danger: #ff564a;
  --color-success: #67c23a;
  --color-wraning: #e6a23c;
  --color-info: #999;

  --text-black: #0f0c22;
  --text-black1: #454c5d;
  --text-black2: #6f5b42;
  --text-black3: #999999;
  --text-gray: #aaa;
  --text-gray1: #bbb;
  --text-gray2: #ccc;
  --text-gray3: #ddd;
  --text-gray4: #eee;
  --text-white: #fff;
  --text-secondary1: #a2845e;

  --bg-theme: #ff564a;
  --bg-primary: #409eff;
  --bg-danger: #ff564a;
  --bg-success: #67c23a;
  --bg-warning: #e6a23c;
  --bg-info: #999;
  --bg-black: #0f0c22;
  --bg-white: #fff;
  --bg-dark: #333;
  --bg-light: #f8f8f8;

  --border-color: #ebeef5;
  --borderdark-color: #454c5d;

  /* 轮播配置 */
  --swiper-pagination-bullet-size: 16px;
  --swiper-pagination-color: #ff564a;
}

@media screen and (max-width: 768px) {
  :root {
    /* 轮播配置 */
    --swiper-pagination-bullet-size: 8px;
  }
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

*:before,
*:after {
  box-sizing: border-box;
}

a {
  color: var(--text-black2);
  text-decoration: none;
}

a:hover {
  color: var(--color-theme) !important;
  text-decoration: none;
}

img {
  border: none;
  vertical-align: middle;
}

ol,
ul,
li {
  list-style: none;
}

iframe {
  border: none;
}

::selection {
  color: var(--text-white);
  background: var(--bg-primary);
}

/* 平滑滚动 */
html {
  scroll-behavior: smooth;
}
body {
  font-family: 'Arial', 'Microsoft YaHei', '黑体', '宋体', sans-serif;
  margin: 0;
  font-size: 14px;
  background-color: var(--bg-white);
  color: var(--text-black1);
  line-height: 1.5;
  overflow-x: hidden;
}

/* 文字颜色 */
.theme {
  color: var(--color-theme);
}
.primary {
  color: var(--color-primary);
}
.danger {
  color: var(--color-danger);
}
.success {
  color: var(--color-success);
}
.wraning {
  color: var(--color-wraning);
}
.info {
  color: var(--color-info);
}
.text-black {
  color: var(--text-black);
}
.text-black1 {
  color: var(--text-black1);
}
.text-black2 {
  color: var(--text-black2);
}
.text-black3 {
  color: var(--text-black3);
}
.text-gray {
  color: var(--text-gray);
}
.text-gray1 {
  color: var(--text-gray1);
}
.text-gray2 {
  color: var(--text-gray2);
}
.text-gray3 {
  color: var(--text-gray3);
}
.text-gray4 {
  color: var(--text-gray4);
}
.text-white {
  color: var(--text-white);
}
.text-secondary1 {
  color: var(--text-secondary1);
}

/* 背景色 */
.bg-theme {
  color: var(--bg-theme);
}
.bg-primary {
  color: var(--bg-primary);
}
.bg-danger {
  color: var(--bg-danger);
}
.bg-success {
  color: var(--bg-success);
}
.bg-warning {
  color: var(--bg-warning);
}
.bg-info {
  color: var(--bg-info);
}
.bg-black {
  color: var(--bg-black);
}
.bg-white {
  color: var(--bg-white);
}
.bg-dark {
  color: var(--bg-dark);
}
.bg-light {
  color: var(--bg-light);
}

/* 字号 */
.fs-s {
  font-size: 10px !important;
}

.fs-n {
  font-size: 12px !important;
}

.fs-m {
  font-size: 14px !important;
}

.fs-b {
  font-size: 16px !important;
}

.fs-l {
  font-size: 18px !important;
}

.fs-sl {
  font-size: 20px !important;
}

.fs-xl {
  font-size: 22px !important;
}
.fs-xxl {
  font-size: 24px !important;
}
.fs-xxxl {
  font-size: 40px !important;
}
.fs-xxxxl {
  font-size: 60px !important;
}

.strong {
  font-weight: 900;
}

/* 行高 */
.lh1 {
  line-height: 1;
}
.lh2 {
  line-height: 1.5;
}
.lh3 {
  line-height: 2;
}
.lh4 {
  line-height: 2.5;
}

/* 边框 */
.bd {
  border: 1px solid var(--border-color);
}

.bd-t {
  border-top: 1px solid var(--border-color);
}

.bd-r {
  border-right: 1px solid var(--border-color);
}

.bd-b {
  border-bottom: 1px solid var(--border-color);
}

.bd-l {
  border-left: 1px solid var(--border-color);
}
.bddark {
  border: 1px solid var(--borderdark-color);
}
.bddark-t {
  border-top: 1px solid var(--borderdark-color);
}

.bddark-r {
  border-right: 1px solid var(--borderdark-color);
}

.bddark-b {
  border-bottom: 1px solid var(--borderdark-color);
}

.bddark-l {
  border-left: 1px solid var(--borderdark-color);
}

/* 圆角 */
.round {
  border-radius: 50%;
}
.r1 {
  border-radius: 5px;
}

.r2 {
  border-radius: 10px;
}

.r3 {
  border-radius: 15px;
}

.r4 {
  border-radius: 20px;
}

.r5 {
  border-radius: 30px;
}

/* flex布局 */
.flex-1 {
  flex: 1;
}
.flex-auto {
  flex: 0 0 auto;
}
.flex-pf {
  flex: 1 0 0;
}
.flex-center {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}
.ff-rw {
  display: flex;
  flex-flow: row wrap;
}

.ff-rn {
  display: flex;
  flex-flow: row nowrap;
}

.ff-rrw {
  display: flex;
  flex-flow: row-reverse wrap;
}

.ff-rrn {
  display: flex;
  flex-flow: row-reverse nowrap;
}

.ff-cw {
  display: flex;
  flex-flow: column wrap;
}

.ff-cn {
  display: flex;
  flex-flow: column nowrap;
}

.ff-crw {
  display: flex;
  flex-flow: column-reverse wrap;
}

.ff-crn {
  display: flex;
  flex-flow: column-reverse nowrap;
}

.jc-start {
  display: flex;
  justify-content: flex-start;
}

.jc-end {
  display: flex;
  justify-content: flex-end;
}

.jc-center {
  display: flex;
  justify-content: center;
}

.jc-between {
  display: flex;
  justify-content: space-between;
}

.jc-around {
  display: flex;
  justify-content: space-around;
}

.ai-start {
  display: flex;
  align-items: flex-start;
}

.ai-end {
  display: flex;
  align-items: flex-end;
}

.ai-center {
  display: flex;
  align-items: center;
}

.ai-stretch {
  display: flex;
  align-items: stretch;
}
/* 边距 */
.mg0 {
  margin: 0px;
}

.mgx0 {
  margin: 0 0px;
}

.mgy0 {
  margin: 0px 0;
}

.mg1 {
  margin: 5px;
}

.mgx1 {
  margin: 0 5px;
}

.mgy1 {
  margin: 5px 0;
}

.mg2 {
  margin: 10px;
}

.mgx2 {
  margin: 0 10px;
}

.mgy2 {
  margin: 10px 0;
}

.mg3 {
  margin: 15px;
}

.mgx3 {
  margin: 0 15px;
}

.mgy3 {
  margin: 15px 0;
}

.mg4 {
  margin: 20px;
}

.mgx4 {
  margin: 0 20px;
}

.mgy4 {
  margin: 20px 0;
}

.mg5 {
  margin: 25px;
}

.mgx5 {
  margin: 0 25px;
}

.mgy5 {
  margin: 25px 0;
}

.mg6 {
  margin: 30px;
}

.mgx6 {
  margin: 0 30px;
}

.mgy6 {
  margin: 30px 0;
}

.mg7 {
  margin: 35px;
}

.mgx7 {
  margin: 0 35px;
}

.mgy7 {
  margin: 35px 0;
}

.mg8 {
  margin: 40px;
}

.mgx8 {
  margin: 0 40px;
}

.mgy8 {
  margin: 40px 0;
}

.mg9 {
  margin: 45px;
}

.mgx9 {
  margin: 0 45px;
}

.mgy9 {
  margin: 45px 0;
}

.mg10 {
  margin: 50px;
}

.mgx10 {
  margin: 0 50px;
}

.mgy10 {
  margin: 50px 0;
}

.pd0 {
  padding: 0px;
}

.pdx0 {
  padding: 0 0px;
}

.pdy0 {
  padding: 0px 0;
}

.pd1 {
  padding: 5px;
}

.pdx1 {
  padding: 0 5px;
}

.pdy1 {
  padding: 5px 0;
}

.pd2 {
  padding: 10px;
}

.pdx2 {
  padding: 0 10px;
}

.pdy2 {
  padding: 10px 0;
}

.pd3 {
  padding: 15px;
}

.pdx3 {
  padding: 0 15px;
}

.pdy3 {
  padding: 15px 0;
}

.pd4 {
  padding: 20px;
}

.pdx4 {
  padding: 0 20px;
}

.pdy4 {
  padding: 20px 0;
}

.pd5 {
  padding: 25px;
}

.pdx5 {
  padding: 0 25px;
}

.pdy5 {
  padding: 25px 0;
}

.pd6 {
  padding: 30px;
}

.pdx6 {
  padding: 0 30px;
}

.pdy6 {
  padding: 30px 0;
}

.pd7 {
  padding: 35px;
}

.pdx7 {
  padding: 0 35px;
}

.pdy7 {
  padding: 35px 0;
}

.pd8 {
  padding: 40px;
}

.pdx8 {
  padding: 0 40px;
}

.pdy8 {
  padding: 40px 0;
}

.pd9 {
  padding: 45px;
}

.pdx9 {
  padding: 0 45px;
}

.pdy9 {
  padding: 45px 0;
}

.pd10 {
  padding: 50px;
}

.pdx10 {
  padding: 0 50px;
}

.pdy10 {
  padding: 50px 0;
}

.mgt0 {
  margin-top: 0px !important;
}

.mgt1 {
  margin-top: 5px !important;
}

.mgt2 {
  margin-top: 10px !important;
}

.mgt3 {
  margin-top: 15px !important;
}

.mgt4 {
  margin-top: 20px !important;
}

.mgt5 {
  margin-top: 25px !important;
}

.mgt6 {
  margin-top: 30px !important;
}

.mgt7 {
  margin-top: 35px !important;
}

.mgt8 {
  margin-top: 40px !important;
}

.mgt9 {
  margin-top: 45px !important;
}

.mgt10 {
  margin-top: 50px !important;
}

.mgr0 {
  margin-right: 0px !important;
}

.mgr1 {
  margin-right: 5px !important;
}

.mgr2 {
  margin-right: 10px !important;
}

.mgr3 {
  margin-right: 15px !important;
}

.mgr4 {
  margin-right: 20px !important;
}

.mgr5 {
  margin-right: 25px !important;
}

.mgr6 {
  margin-right: 30px !important;
}

.mgr7 {
  margin-right: 35px !important;
}

.mgr8 {
  margin-right: 40px !important;
}

.mgr9 {
  margin-right: 45px !important;
}

.mgr10 {
  margin-right: 50px !important;
}

.mgb0 {
  margin-bottom: 0px !important;
}

.mgb1 {
  margin-bottom: 5px !important;
}

.mgb2 {
  margin-bottom: 10px !important;
}

.mgb3 {
  margin-bottom: 15px !important;
}

.mgb4 {
  margin-bottom: 20px !important;
}

.mgb5 {
  margin-bottom: 25px !important;
}

.mgb6 {
  margin-bottom: 30px !important;
}

.mgb7 {
  margin-bottom: 35px !important;
}

.mgb8 {
  margin-bottom: 40px !important;
}

.mgb9 {
  margin-bottom: 45px !important;
}

.mgb10 {
  margin-bottom: 50px !important;
}

.mgl0 {
  margin-left: 0px !important;
}

.mgl1 {
  margin-left: 5px !important;
}

.mgl2 {
  margin-left: 10px !important;
}

.mgl3 {
  margin-left: 15px !important;
}

.mgl4 {
  margin-left: 20px !important;
}

.mgl5 {
  margin-left: 25px !important;
}

.mgl6 {
  margin-left: 30px !important;
}

.mgl7 {
  margin-left: 35px !important;
}

.mgl8 {
  margin-left: 40px !important;
}

.mgl9 {
  margin-left: 45px !important;
}

.mgl10 {
  margin-left: 50px !important;
}

.pdt0 {
  padding-top: 0px !important;
}

.pdt1 {
  padding-top: 5px !important;
}

.pdt2 {
  padding-top: 10px !important;
}

.pdt3 {
  padding-top: 15px !important;
}

.pdt4 {
  padding-top: 20px !important;
}

.pdt5 {
  padding-top: 25px !important;
}

.pdt6 {
  padding-top: 30px !important;
}

.pdt7 {
  padding-top: 35px !important;
}

.pdt8 {
  padding-top: 40px !important;
}

.pdt9 {
  padding-top: 45px !important;
}

.pdt10 {
  padding-top: 50px !important;
}

.pdr0 {
  padding-right: 0px !important;
}

.pdr1 {
  padding-right: 5px !important;
}

.pdr2 {
  padding-right: 10px !important;
}

.pdr3 {
  padding-right: 15px !important;
}

.pdr4 {
  padding-right: 20px !important;
}

.pdr5 {
  padding-right: 25px !important;
}

.pdr6 {
  padding-right: 30px !important;
}

.pdr7 {
  padding-right: 35px !important;
}

.pdr8 {
  padding-right: 40px !important;
}

.pdr9 {
  padding-right: 45px !important;
}

.pdr10 {
  padding-right: 50px !important;
}

.pdb0 {
  padding-bottom: 0px !important;
}

.pdb1 {
  padding-bottom: 5px !important;
}

.pdb2 {
  padding-bottom: 10px !important;
}

.pdb3 {
  padding-bottom: 15px !important;
}

.pdb4 {
  padding-bottom: 20px !important;
}

.pdb5 {
  padding-bottom: 25px !important;
}

.pdb6 {
  padding-bottom: 30px !important;
}

.pdb7 {
  padding-bottom: 35px !important;
}

.pdb8 {
  padding-bottom: 40px !important;
}

.pdb9 {
  padding-bottom: 45px !important;
}

.pdb10 {
  padding-bottom: 50px !important;
}

.pdl0 {
  padding-left: 0px !important;
}

.pdl1 {
  padding-left: 5px !important;
}

.pdl2 {
  padding-left: 10px !important;
}

.pdl3 {
  padding-left: 15px !important;
}

.pdl4 {
  padding-left: 20px !important;
}

.pdl5 {
  padding-left: 25px !important;
}

.pdl6 {
  padding-left: 30px !important;
}

.pdl7 {
  padding-left: 35px !important;
}

.pdl8 {
  padding-left: 40px !important;
}

.pdl9 {
  padding-left: 45px !important;
}

.pdl10 {
  padding-left: 50px !important;
}

/* 图片模式 */
.fit-contain {
  object-fit: contain;
}

.fit-cover {
  object-fit: cover;
}

.fit-fill {
  object-fit: fill;
}

.fit-scale-down {
  object-fit: scale-down;
}

/* 文本省略号 */
.omit {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  word-break: break-all;
}
.omit-1,
.omit-2,
.omit-3,
.omit-4,
.omit-5 {
  overflow: hidden;
  display: -webkit-box;
  word-break: break-all;
  -webkit-box-orient: vertical;
}

.omit-1 {
  line-clamp: 1;
  -webkit-line-clamp: 1;
}

.omit-2 {
  line-clamp: 2;
  -webkit-line-clamp: 2;
}

.omit-3 {
  line-clamp: 3;
  -webkit-line-clamp: 3;
}

.omit-4 {
  line-clamp: 4;
  -webkit-line-clamp: 4;
}

.omit-5 {
  line-clamp: 5;
  -webkit-line-clamp: 5;
}

/* 鼠标事件 */
.pointer-none {
  pointer-events: none;
}
.pointer-auto {
  pointer-events: auto;
}
.select-none {
  -webkit-user-select: none;
  user-select: none;
}

/* 定位 */
.pr {
  position: relative;
}
.pa {
  position: absolute;
}
.pf {
  position: fixed;
}
.pac {
  z-index: 1;
  position: absolute !important;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

/* 滚动 */
.scroll-y {
  display: flex;
  flex-direction: column;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.scroll-x {
  display: flex;
  flex-direction: row;
  overflow-y: hidden;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.w100p {
  width: 100% !important;
}
.h100p {
  height: 100% !important;
}
.wmax {
  width: max-content;
}

.pre {
  white-space: pre-wrap;
}

.line-through {
  text-decoration: line-through;
}

.tac {
  text-align: center;
}
.tar {
  text-align: right;
}

.box-shadow {
  box-shadow: 0px 0 30px 0px rgba(255, 105, 106, 0.3);
}

.owh {
  overflow: hidden;
}

.hand {
  cursor: pointer;
}

/* 官网布局全局的 */
.pd-common {
  padding-left: calc((100% - 1140px) / 2);
  padding-right: calc((100% - 1140px) / 2);
}
.sitelayout-l {
  width: 100%;
  max-width: 1370px;
  padding-left: 15px;
  padding-right: 15px;
  margin-left: auto;
  margin-right: auto;
}
/* 官网布局全局的 */

.subtitle {
  text-align: center;
  font-size: 16px;
  margin-top: 10px;
  padding: 0 26%;
}
/* 顶部展位元素 */
.header-place {
  width: 100%;
  height: 80px;
}
@media screen and (max-width: 768px) {
  .pd-common {
    padding-left: 15px;
    padding-right: 15px;
  }
  .sitelayout-l {
    width: 100%;
    max-width: 1370px;
    padding-left: 15px;
    padding-right: 15px;
    margin-left: 0;
    margin-right: 0;
  }
  .subtitle {
    text-align: center;
    font-size: 14px;
    margin-top: 10px;
    padding: 0 15px;
  }
  /* 顶部展位元素 */
  .header-place {
    height: 50px;
  }
}

/* 按钮扫光效果 */
@keyframes sheenlight {
  0% {
    left: -100%;
    top: -100%;
  }
  100% {
    left: 200%;
    top: 200%;
  }
}
.sheen-effect {
  position: relative;
  overflow: hidden;
}
.sheen-effect::after {
  content: '';
  position: absolute;
  width: 100%;
  height: 30px; /**白光的宽度，可根据实际调整**/
  background-image: linear-gradient(to bottom, transparent, var(--sheen-color), transparent);
  transform: rotate(-45deg);
  opacity: 0;
  animation-play-state: paused;
}
/* 解决每次移入都能触发 */
.sheen-effect:hover::after {
  opacity: 1;
  animation: sheenlight var(--sheen-time) forwards;
  animation-play-state: running;
}
/* 按钮扩散光 */
@keyframes glowlight {
  0% {
    box-shadow: 0 0 0 0 var(--glow-color);
  }
  70%,
  100% {
    box-shadow: 0 0 0 12px transparent;
  }
}
.glow-btn {
  position: relative;
}
.glow-btn::after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: var(--glow-radius);
  z-index: -1;
  animation: glowlight var(--glow-time) infinite;
}
#__nuxt {
  overflow-x: hidden;
}
