@charset "UTF-8";
@import url("/fonts/AlibabaPuhui/AlibabaPuhui.css");
@import url("/css/quil/quill.bubble.prod.css");
@import url("/css/quil/quill.core.prod.css");
@import url("/css/quil/quill.snow.prod.css");
@import url("/css/quil/quill-font.css");
* {
  margin: 0;
  padding: 0;
}

html {
  font-size: 19.2px;
}

body {
  font-size: var(--base-text-size);
  max-width: 1920px !important;
  min-width: 960px !important;
  min-height: 100vh;
  margin: 0 auto;
}

@media screen and (max-width: 960px) {
  html {
    font-size: 9.6px !important;
  }
}
@media screen and (min-width: 960px) and (max-width: 1100px) {
  html {
    font-size: 9.6px !important;
  }
}
@media screen and (min-width: 1101px) and (max-width: 1280px) {
  html {
    font-size: 12.8px !important;
  }
}
@media screen and (min-width: 1281px) and (max-width: 1366px) {
  html {
    font-size: 13.36px !important;
  }
}
@media screen and (min-width: 1367px) and (max-width: 1536px) {
  html {
    font-size: 15.36px !important;
  }
}
@media screen and (min-width: 1536px) and (max-width: 1745px) {
  html {
    font-size: 17.45px !important;
  }
}
@media screen and (min-width: 1746px) and (max-width: 1920px) {
  html {
    font-size: 19.2px !important;
  }
}
@media screen and (min-width: 1921px) and (max-width: 3000px) {
  html {
    font-size: 19.21px;
  }
}
:root {
  --base-color-primary: #0074CA;
  /*基础字颜色*/
  --base-text-color: #333;
  --base-text-color-dark: #2D3643;
  --base-text-color-black: #000;
  --base-text-color-secondary: #666;
  --base-text-color-gray: #8897AE;
  --base-text-color-white: white;
  --base-text-color-light: #D9E9FF;
  --gap: 1.0416666667rem;
  --gap-small: 0.78125rem;
  --gap-medium: 1.3020833333rem;
  --gap-mini: 0.78125rem;
  --gap-large: 2.6041666667rem;
  --base-text-size: 0.8333333333rem;
  --base-text-mini-size: 0.7291666667rem;
  --base-gap: 4.1666666667rem;
}

* {
  margin: 0;
  padding: 0;
  word-break: break-word;
  overflow-wrap: break-word;
  font-family: AlibabaPuhuiTi, sans-serif !important;
}

a:hover {
  color: var(--base-color-primary);
}

#icon_module {
  right: 0 !important;
  left: initial !important;
}

li {
  list-style: none;
}

p {
  margin-bottom: 0;
}

img {
  vertical-align: top;
  border: none;
}

.swiper {
  width: 100%;
  height: 100%;
}
.swiper-slide {
  text-align: center;
  font-size: 0.9375rem;
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}
.swiper-slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.base-page {
  width: 100%;
}
.base-page .breadcrumb {
  height: 2.0833333333rem;
  padding: 0 calc((100% - 83.3333333333rem) / 2);
  display: flex;
  align-items: center;
  background: #F7FAFF;
  margin-bottom: 0;
}
.base-page .breadcrumb-item {
  display: flex;
  align-items: center;
  font-size: 0.7291666667rem;
}
.base-page .breadcrumb-item > a {
  color: #3D4966;
  font-weight: 400;
}
.base-page .breadcrumb .breadcrumb-item + .breadcrumb-item::before {
  padding-right: 0.8333333333rem;
  color: #8897AE;
  content: "|";
}
.base-page .breadcrumb .breadcrumb-item + .breadcrumb-item {
  padding-left: 0.8333333333rem;
}
.base-page .breadcrumb .active > span {
  color: var(--base-color-primary);
}

.required::before {
  content: "*";
  color: red;
  margin-right: 0.4166666667rem;
}

/* 隐藏原生复选框 */
.custom-checkbox input[type=checkbox] {
  display: none;
}

/* 创建一个自定义的复选框样式 */
.custom-checkbox span {
  display: inline-block;
  width: 1.25rem;
  height: 1.25rem;
  margin-right: 0.4166666667rem;
  border: 0.1041666667rem solid #AFBACA; /* 边框颜色 */
  vertical-align: middle;
  position: relative;
  background-color: #F2F7FF;
  border-radius: 0.2083333333rem;
}

/* 当复选框被选中时，显示一个内部的选中标记 */
.custom-checkbox input[type=checkbox]:checked + span {
  color: #fff; /* 选中标记的颜色 */
  background-color: var(--base-color-primary); /* 选中的背景颜色 */
  border: none;
}

.custom-checkbox span::after {
  content: "";
  position: absolute;
  display: none;
  left: 0.46875rem;
  top: 0.2083333333rem;
  width: 0.3645833333rem;
  height: 0.6770833333rem;
  border: solid #fff; /* 选中标记的线条颜色 */
  border-width: 0 0.15625rem 0.15625rem 0;
  transform: rotate(45deg); /* 将线条旋转成选中状态 */
}

.custom-checkbox input[type=checkbox]:checked + span::after {
  display: block;
}

.base-btn {
  padding: 1.0416666667rem 3.0208333333rem;
  height: 3.125rem;
  background: var(--base-color-primary);
  border-radius: 0.3125rem;
  color: #FFFFFF;
  cursor: pointer;
  font-size: var(--base-text-size);
  font-weight: 500;
  display: flex;
  justify-content: center;
  align-items: center;
}

.ellipsis {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.message-box {
  position: fixed;
  top: 2.6041666667rem;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  height: 2.34375rem;
  padding: 0.5208333333rem 1.0416666667rem;
  border-radius: 0.2604166667rem;
  z-index: 9999;
  justify-content: flex-start;
  align-items: center;
  background-color: rgb(237, 242, 252);
  border: 1px solid rgb(235, 238, 245);
}
.message-box .message {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0.5208333333rem;
  color: #909399;
}

.text-error {
  color: red !important;
}

.text-ellipsis {
  white-space: nowrap; /* 强制文本在一行显示 */
  overflow: hidden; /* 隐藏超出容器的文本 */
  text-overflow: ellipsis; /* 使用省略号表示被截断的文本 */
}

.message-error {
  background-color: #fef0f0;
  border: 1px solid #fde2e2;
}
.message-error .message {
  color: rgb(245, 108, 108);
}

.message-success {
  background-color: #f0f9eb;
  border: 1px solid #e1f3d8;
}
.message-success .message {
  color: #67c23a;
}

.breadcrumb .breadcrumb-item a {
  text-decoration: none;
}

#header {
  width: 100%;
  height: 4.1666666667rem;
  position: sticky;
  top: 0;
  left: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  font-size: 0;
  background-color: #ffffff;
}
#header .header {
  width: 83.3333333333rem;
  height: 4.1666666667rem;
  margin: 0 auto;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 5rem;
}
#header .header-logo {
  width: 9.5rem;
  height: 1.25rem;
}
#header .header-logo > img {
  width: 100%;
  height: 100%;
}
#header .header .navbar {
  flex: 1;
  height: 4.1666666667rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0;
  /*选中与输入移入时的字体颜色*/
  /**
   * @desc: 一级导航
   * @v: 1.0.0
   * @author: TengHui Song
   * @date: 2025/2/13 11:00
   **/
}
#header .header .navbar a {
  text-decoration: none;
  color: #455468;
}
#header .header .navbar .navbar-item:hover .navbar-item-text,
#header .header .navbar .navbar-active .navbar-item-text {
  color: var(--base-color-primary) !important;
}
#header .header .navbar .navbar-item {
  padding: 1.3541666667rem 0;
  height: 4.1666666667rem;
  line-height: 1.4583333333rem;
  font-size: 0.8333333333rem;
  color: #455468;
  text-align: left;
  font-style: normal;
  text-transform: none;
  cursor: pointer;
  position: relative;
  box-sizing: border-box;
  /**
  * @desc: 仪器设备
  * @v: 1.0.0
  * @author: TengHui Song
  * @date: 2025/2/13 11:00
  **/
}
#header .header .navbar .navbar-item .instrument-device-sub {
  width: 100%;
  height: 0;
  position: fixed;
  top: 4.1666666667rem;
  left: 0;
  right: 0;
  z-index: 9998;
  cursor: initial;
  overflow: hidden;
  transition: height 0.3s;
}
#header .header .navbar .navbar-item .instrument-device-sub-content {
  width: 100%;
  padding: 0 calc((100% - 83.3333333333rem) / 2);
  height: 100%;
  background-color: #ffffff;
  overflow: hidden;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 3.125rem;
}
#header .header .navbar .navbar-item .instrument-device-sub-title {
  height: 2.7083333333rem;
  padding: 1.5625rem 0 0.5208333333rem 0;
  font-size: 0.8333333333rem;
  line-height: 1.1458333333rem;
  font-weight: bold;
  letter-spacing: 0em;
  font-variation-settings: "opsz" auto;
  font-feature-settings: "kern" on;
  /* 正文色/正文色 */
  color: var(--base-text-color);
  margin-bottom: 0.625rem;
}
#header .header .navbar .navbar-item .instrument-device-sub-type, #header .header .navbar .navbar-item .instrument-device-sub-product {
  width: 23.0208333333rem;
  height: 27.3958333333rem;
  overflow: hidden;
}
#header .header .navbar .navbar-item .instrument-device-sub-type:hover, #header .header .navbar .navbar-item .instrument-device-sub-product:hover {
  overflow: auto;
}
#header .header .navbar .navbar-item .instrument-device-sub-line {
  width: 1px;
  height: 27.3958333333rem;
  background-color: #d8d8d8;
}
#header .header .navbar .navbar-item .instrument-device-sub-item {
  height: 2.1875rem;
  padding: 0.5208333333rem 0px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 1.0416666667rem;
  cursor: pointer;
}
#header .header .navbar .navbar-item .instrument-device-sub-item-name {
  flex: 1;
  height: 1.1458333333rem;
  font-size: 0.8333333333rem;
  line-height: 1.1458333333rem;
  letter-spacing: 0em;
  font-weight: normal;
  font-variation-settings: "opsz" auto;
  font-feature-settings: "kern" on;
  /* 正文色/正文色 */
  color: var(--base-text-color);
  cursor: pointer;
}
#header .header .navbar .navbar-item .instrument-device-sub-item-icon {
  width: 0.9375rem;
  height: 0.9375rem;
  background-size: 100%;
  background-repeat: no-repeat;
  background-image: url("/images/arrow-right-fill.webp");
}
#header .header .navbar .navbar-item .instrument-device-sub-item:hover .instrument-device-sub-item-name,
#header .header .navbar .navbar-item .instrument-device-sub .instrument-device-sub-item-active .instrument-device-sub-item-name {
  color: var(--base-color-primary);
}
#header .header .navbar .navbar-item .instrument-device-sub-item:hover .instrument-device-sub-item-icon,
#header .header .navbar .navbar-item .instrument-device-sub .instrument-device-sub-item-active .instrument-device-sub-item-icon {
  background-image: url("/images/arrow-right-s-fill-active.webp");
}
#header .header .navbar .navbar-item .instrument-device-sub .instrument-device-sub-item-active .instrument-device-sub-item-name {
  color: #084cc0;
}
#header .header .navbar .navbar-item .instrument-device-sub-detail {
  width: 24.7916666667rem;
}
#header .header .navbar .navbar-item .instrument-device-sub-detail-top {
  width: 100%;
  height: 15.625rem;
  padding: 1.5625rem 0;
  border-bottom: 1px solid #d8d8d8;
  display: flex;
  justify-content: center;
  align-items: center;
}
#header .header .navbar .navbar-item .instrument-device-sub-detail-top img {
  width: 20.0520833333rem;
  height: 11.4583333333rem;
}
#header .header .navbar .navbar-item .instrument-device-sub-detail-bottom {
  width: 100%;
  height: 13.125rem;
  padding: 1.5625rem 0;
}
#header .header .navbar .navbar-item .instrument-device-sub-detail-name {
  height: 1.1458333333rem;
  font-size: 16px;
  font-weight: bold;
  line-height: normal;
  display: flex;
  align-items: flex-end;
  letter-spacing: 0;
  font-variation-settings: "opsz" auto;
  font-feature-settings: "kern" on;
  /* 正文色/正文色 */
  color: var(--base-text-color);
  margin-bottom: 1.0416666667rem;
}
#header .header .navbar .navbar-item .instrument-device-sub-detail-content {
  /* 自动布局 */
  display: flex;
  flex-direction: column;
  gap: 1.0416666667rem;
  flex-grow: 1;
  align-self: stretch;
}
#header .header .navbar .navbar-item .instrument-device-sub-detail-item {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#header .header .navbar .navbar-item .instrument-device-sub-detail-item-label {
  width: 5.2083333333rem;
  height: 0.9895833333rem;
  font-size: 0.7291666667rem;
  font-weight: normal;
  line-height: normal;
  letter-spacing: 0em;
  font-variation-settings: "opsz" auto;
  font-feature-settings: "kern" on;
  /* 正文色/正文色 */
  color: var(--base-text-color);
}
#header .header .navbar .navbar-item .instrument-device-sub-detail-item-value {
  flex: 1;
  height: 0.9895833333rem;
  opacity: 1;
  font-size: 0.7291666667rem;
  font-weight: normal;
  line-height: normal;
  text-align: right;
  letter-spacing: 0em;
  font-variation-settings: "opsz" auto;
  font-feature-settings: "kern" on;
  /* 正文色/正文辅助色 */
  color: var(--base-text-color-gray);
}
#header .header .navbar .navbar-item .solution-sub {
  width: 13.5416666667rem;
  height: 0;
  /* 自动布局 */
  display: flex;
  flex-direction: row;
  gap: 3.125rem;
  background: #ffffff;
  overflow: hidden;
  position: absolute;
  left: -2.0833333333rem;
  top: 4.21875rem;
  transition: height 0.3s;
}
#header .header .navbar .navbar-item .solution-sub-content {
  width: 100%;
  height: 100%;
  padding: 1.5625rem 2.0833333333rem;
}
#header .header .navbar .navbar-item .solution-sub-content .solution-item {
  width: 9.375rem;
  height: 2.6041666667rem;
  border-radius: 0;
  /* 自动布局 */
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 0.5208333333rem 0;
  gap: 0.5208333333rem;
  cursor: pointer;
}
#header .header .navbar .navbar-item .solution-sub-content .solution-item-text {
  flex: 1;
  font-size: 0.8333333333rem;
  font-weight: normal;
  line-height: normal;
  letter-spacing: 0;
  font-variation-settings: "opsz" auto;
  font-feature-settings: "kern" on;
  /* 正文色/正文色 */
  color: var(--base-text-color);
}
#header .header .navbar .navbar-item .solution-sub-content .solution-item:hover .solution-item-text {
  color: var(--base-color-primary);
}
#header .header .navbar .navbar-item .solution-sub-content .solution-item:hover .solution-item-icon {
  width: 0.9375rem;
  height: 0.9375rem;
  background-image: url("/images/arrow-right-s-fill-active.webp");
}
#header .header .navbar .th20-btn {
  padding: 0 !important;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  height: 2.5rem !important;
}
#header .header .navbar .th20-btn img {
  height: 2.5rem;
}
#header .header-right {
  width: fit-content;
  height: 2.03125rem;
  /* 自动布局 */
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 0px;
  gap: 1.5625rem;
}
#header .header-right-search {
  width: 0.9375rem;
  height: 0.9375rem;
}
#header .header-right-search img {
  width: 100%;
  height: 100%;
}
#header .header-right-mobile {
  width: fit-content;
  min-width: 8.2291666667rem;
  height: 1.9791666667rem;
  /* 自动布局 */
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 0.5208333333rem 1.0416666667rem;
  gap: 0.5208333333rem;
  background: var(--base-color-primary);
  box-sizing: border-box !important;
}
#header .header-right-mobile-icon {
  width: 0.9375rem;
  height: 0.9375rem;
}
#header .header-right-mobile-text {
  height: 0.9375rem;
  line-height: 1;
  font-size: 0.7291666667rem;
  font-weight: normal;
  letter-spacing: 0em;
  /* 纯白 */
  color: #ffffff;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

#model-bg {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.2);
  z-index: 9997;
}

body {
  overflow: hidden;
}

/* ---------- 全屏滚动骨架 ---------- */
.fp-wrapper {
  position: fixed;
  inset: 0;
  overflow: hidden;
  z-index: 1;
}

/* 整个容器高度 = section 数量 × 100vh，通过 translateY 切换 */
.fp-container {
  width: 100%;
  /* 根据实际 section 数量调整，这里是 7 屏 */
  height: 700vh;
  transform: translateY(0);
  transition: transform 0.9s cubic-bezier(0.77, 0, 0.175, 1);
  will-change: transform;
}

.fp-section {
  width: 100%;
  height: 100vh;
  position: relative;
  overflow: hidden;
}

/* ---------- 右侧导航圆点 ---------- */
.fp-nav {
  position: fixed;
  right: 1.5625rem;
  top: 50%;
  transform: translateY(-50%);
  z-index: 9998;
  display: none;
  flex-direction: column;
  gap: 0.5208rem;
}

.fp-dot {
  width: 0.4688rem;
  height: 0.4688rem;
  border-radius: 50%;
  border: 1.5px solid rgba(255, 255, 255, 0.7);
  background: transparent;
  cursor: pointer;
  padding: 0;
  transition: all 0.3s ease;
}
.fp-dot.is-active {
  background: #fff;
  border-color: #fff;
  transform: scale(1.5);
  box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.2);
}

/* 浅色区域使用深色圆点（给需要的 section 加 .nav--dark 到 .fp-nav） */
.fp-nav.nav--dark .fp-dot {
  border-color: rgba(0, 80, 160, 0.45);
}
.fp-nav.nav--dark .fp-dot.is-active {
  background: #0074ca;
  border-color: #0074ca;
  box-shadow: 0 0 0 3px rgba(0, 116, 202, 0.2);
}

/* ============================================================
   入场动画 - .ani-item
   给需要入场动画的元素加 .ani-item 和 data-delay="毫秒数"
   当其所在 .fp-section 获得 .is-active 时元素淡入
   ============================================================ */
.ani-item {
  opacity: 0;
  transform: translateY(1.5625rem);
  transition: opacity 0.65s ease, transform 0.65s ease;
}

/* 各延迟档位 */
.ani-item[data-delay="0"] {
  transition-delay: 0ms;
}

.ani-item[data-delay="80"] {
  transition-delay: 80ms;
}

.ani-item[data-delay="100"] {
  transition-delay: 100ms;
}

.ani-item[data-delay="120"] {
  transition-delay: 120ms;
}

.ani-item[data-delay="150"] {
  transition-delay: 150ms;
}

.ani-item[data-delay="180"] {
  transition-delay: 180ms;
}

.ani-item[data-delay="200"] {
  transition-delay: 200ms;
}

.ani-item[data-delay="220"] {
  transition-delay: 220ms;
}

.ani-item[data-delay="240"] {
  transition-delay: 240ms;
}

.ani-item[data-delay="260"] {
  transition-delay: 260ms;
}

.ani-item[data-delay="300"] {
  transition-delay: 300ms;
}

.ani-item[data-delay="320"] {
  transition-delay: 320ms;
}

.ani-item[data-delay="340"] {
  transition-delay: 340ms;
}

.ani-item[data-delay="380"] {
  transition-delay: 380ms;
}

.ani-item[data-delay="400"] {
  transition-delay: 400ms;
}

.ani-item[data-delay="460"] {
  transition-delay: 460ms;
}

.ani-item[data-delay="500"] {
  transition-delay: 500ms;
}

/* 激活时显示 */
.fp-section.is-active .ani-item {
  opacity: 1;
  transform: translateY(0);
}

/* 离开时立即复位（不带延迟，避免切换闪烁） */
.fp-section:not(.is-active) .ani-item {
  transition-delay: 0ms !important;
  transition-duration: 0.2s;
}

/* ============================================================
   其他样式
   根据需要添加
   ============================================================ */
.celebration-top img {
  width: 100vw;
  height: 100vh;
}

.documentary,
.big-event, .classic-product, .activity, .contact-us, .client-message {
  background-repeat: no-repeat, no-repeat;
  background-size: 43.4375rem 3.8020833333rem, 100vw 100vh;
  background-position: center 5.2083333333rem, 0 0;
}
.documentary-mouse,
.big-event-mouse, .classic-product-mouse, .activity-mouse, .contact-us-mouse, .client-message-mouse {
  position: absolute;
  width: 1.875%;
  aspect-ratio: 36/82;
  margin: 0 auto;
  left: 0;
  right: 0;
  bottom: 7.4%;
  background-repeat: no-repeat;
  background-size: cover;
}

.big-event {
  width: 100%;
  background-image: url("/images/celebration/big-event-title.png"), url("/images/celebration/celebration-bg-1.jpg");
}
.big-event-mouse {
  background-image: url("/images/celebration/mouse-1.png");
}
.big-event .swiper {
  width: 78.125%;
  aspect-ratio: 1500/1080;
  margin: 0 auto;
}
.big-event .swiper-wrapper {
  width: 100%;
  background: transparent;
}
.big-event .big-event-slide {
  width: 100% !important;
  background: transparent;
}
.big-event .big-event-slide-content-box {
  width: 100%;
  height: fit-content;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 4.16%;
  margin-bottom: 4%;
}
.big-event .big-event-slide-left {
  width: 55%;
  aspect-ratio: 78/47;
}
.big-event .big-event-slide-left img {
  aspect-ratio: 78/47;
}
.big-event .big-event-slide-right {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 1.25rem;
}
.big-event .big-event-slide-right .big-event-slide-year {
  width: 100%;
  height: 4.6875rem;
  color: #FFFFFF;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  font-weight: bold;
  padding: 1.3541666667rem 1.4583333333rem 0;
  position: relative;
  background-image: url("/images/celebration/big-event-right-bg.png");
  background-repeat: no-repeat;
  background-size: contain;
  font-size: 1.875rem;
}
.big-event .big-event-slide-right .big-event-slide-year span {
  line-height: 1;
  display: flex;
  height: calc(100% - 1.3541666667rem);
  justify-content: flex-start;
  align-items: center;
}
.big-event .big-event-slide-right .big-event-slide-content {
  width: 100%;
  padding: 0 0.5208333333rem;
  font-size: 1.25rem;
  line-height: 1.6666666667rem;
  text-align: left;
}
.big-event .swiper-pagination {
  background-image: url("/images/celebration/big-event-bg-x.png");
  background-repeat: no-repeat;
  background-size: calc(100% + 12.6041666667rem) 100%;
  background-position: -6.3020833333rem 0;
  bottom: 18.5%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10%;
}
.big-event .swiper-pagination-seleced {
  content: "";
  width: 0.9375rem;
  height: 1.875rem;
  display: block;
  position: absolute;
  background-image: url("/images/celebration/big-event-seleced.png");
  background-repeat: no-repeat;
  background-size: cover;
  bottom: 0;
  left: 0.5208333333rem;
  transition: left 0.3s;
}
.big-event .swiper-pagination-bullet {
  width: fit-content;
  height: 1.25rem;
  border: none;
  background: transparent;
  border-radius: 0;
  opacity: 0.3;
  color: #121528;
  margin: 0 !important;
  position: relative;
  top: -1.875rem;
}
.big-event .swiper-pagination-bullet-active {
  color: #007aff;
  opacity: 1;
  background: transparent;
}

.documentary {
  background-image: url("/images/celebration/documentary-title.png"), url("/images/celebration/celebration-bg-2.jpg");
  position: relative;
}
.documentary-mouse {
  background-image: url("/images/celebration/mouse.png");
}
.documentary-content {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  width: 88.5416666667rem;
  margin: 17.5520833333rem auto 0;
  gap: 0.625rem;
  position: relative;
  z-index: 2;
}
.documentary-item {
  flex: 0 0 21.6666666667rem;
  width: 21.6666666667rem;
}
.documentary-item-content {
  position: relative;
  height: 16.1458333333rem;
  border-radius: 0rem;
  overflow: hidden;
  box-shadow: 0 0.625rem 2.0833333333rem rgba(39, 98, 225, 0.18);
  isolation: isolate;
}
.documentary-item-content:hover .documentary-item-content-mask {
  animation: fadeOutTopToBottom 0.5s forwards;
}
.documentary-item-content-media, .documentary-item-content-title {
  position: absolute;
}
.documentary-item-content-media {
  inset: 0;
  background: #000;
  position: relative;
  width: 100%;
  height: 100%;
}
.documentary-item-content-media video {
  height: 100%;
  width: 100%;
}
.documentary-item-content-media-controls {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  z-index: 10;
  display: flex;
}
.documentary-item-content-media-controls-play {
  display: block;
  width: 45px;
  height: 45px;
  background-image: url("/images/celebration/play.png");
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  cursor: pointer;
}
.documentary-item-content-media-controls:hover .play {
  display: block;
}
.documentary-item-content-media img {
  width: 100%;
  height: 100%;
}
.documentary-item-content-title {
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  font-family: "STKaiti", "KaiTi", "Microsoft YaHei", sans-serif;
  font-size: 3.3333333333rem;
  line-height: 1;
  color: #fff;
  font-weight: 700;
  letter-spacing: 0.2083333333rem;
  text-shadow: 0 0.3125rem 0.9375rem rgba(7, 43, 131, 0.22);
  z-index: 4;
}
.documentary-item-name {
  margin-top: 1.1458333333rem;
  font-size: 1.25rem;
  color: #090E1A;
  line-height: 1.7708333333rem;
  font-weight: bold;
  text-align: center;
}

.classic-product {
  background-image: url("/images/celebration/classic-product-title.png"), url("/images/celebration/celebration-bg-3.jpg");
  display: flex;
  align-items: center;
}
.classic-product-content {
  width: 78.6083333333rem;
  height: 38.125rem;
  background-image: url("/images/celebration/classic-product-content.png");
  background-repeat: no-repeat;
  background-size: contain;
  margin: 7.2916666667rem auto;
  position: relative;
  z-index: 1;
}
.classic-product-content-item {
  width: 13.28125rem;
  aspect-ratio: 263/304;
  position: absolute;
  z-index: 9;
}
.classic-product-content-item:hover::after {
  display: none;
}
.classic-product-content-item::after {
  content: "";
  position: absolute;
  display: block;
  width: calc(100% + 8px);
  height: calc(100% + 8px);
  background-image: url("/images/celebration/classic-product-content-shadow.png");
  background-repeat: no-repeat;
  background-size: 100%;
  top: -4px;
  left: -4px;
}
.classic-product-content-item img {
  width: 100%;
  height: 100%;
  User-select: none;
  cursor: pointer;
  -webkit-user-drag: none; /* 禁止拖拽（适用于WebKit浏览器） */
}
.classic-product-content-item-name {
  position: absolute;
  display: flex;
  width: 7.34375rem;
  height: 1.25rem;
  align-items: center;
  color: #0053D9;
  font-size: 1.25rem;
  font-weight: bold;
}
.classic-product-content-item:nth-child(1) {
  left: 2.3958333333rem;
  top: 8.8541666667rem;
}
.classic-product-content-item:nth-child(1) .classic-product-content-item-name {
  right: 0;
  top: 0;
  transform: translate(145%, 25%);
}
.classic-product-content-item:nth-child(1)::before {
  content: "";
  display: block;
  position: absolute;
  top: -1.0416666667rem;
  left: 0;
  width: 4.4791666667rem;
  height: 4.4791666667rem;
  background-image: url("/images/celebration/classic-product-bg-2.png");
  background-repeat: no-repeat;
  background-size: contain;
  opacity: 0.8;
}
.classic-product-content-item:nth-child(2) {
  left: 22.5rem;
  top: 20.5729166667rem;
}
.classic-product-content-item:nth-child(2) .classic-product-content-item-name {
  left: 0;
  bottom: 0;
  transform: translate(-95%, 50%);
}
.classic-product-content-item:nth-child(2)::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 2.0833333333rem;
  right: -5.2083333333rem;
  width: 5.9895833333rem;
  height: 5.9895833333rem;
  background-image: url("/images/celebration/classic-product-bg-2.png");
  background-repeat: no-repeat;
  background-size: contain;
  opacity: 0.8;
}
.classic-product-content-item:nth-child(3) {
  right: 22.7083333333rem;
  top: 8.8541666667rem;
}
.classic-product-content-item:nth-child(3) .classic-product-content-item-name {
  right: 0;
  top: 0;
  transform: translate(142%, 25%);
}
.classic-product-content-item:nth-child(3)::before {
  content: "";
  display: block;
  position: absolute;
  top: -0.2604166667rem;
  left: 0;
  width: 3.90625rem;
  height: 3.90625rem;
  background-image: url("/images/celebration/classic-product-bg-1.png");
  background-repeat: no-repeat;
  background-size: contain;
  opacity: 0.8;
}
.classic-product-content-item:nth-child(4) {
  right: 2.6041666667rem;
  top: 20.5729166667rem;
}
.classic-product-content-item:nth-child(4) .classic-product-content-item-name {
  left: 0;
  bottom: 0;
  transform: translate(-85%, -90%);
}

.activity {
  background-image: url("/images/celebration/activity-title.png"), url("/images/celebration/celebration-bg-4.jpg");
}
.activity-subtitle {
  width: fit-content;
  margin: 11.09375rem auto 1.6666666667rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.activity-subtitle p {
  margin: 0;
  color: #FFFFFF;
  font-size: 1.25rem;
  font-weight: normal;
}
.activity-subtitle .activity-subtitle-top {
  width: 100%;
  font-size: 1.875rem;
  font-weight: 700;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.activity-subtitle .activity-subtitle-top .activity-subtitle-name {
  position: relative;
  display: inline-block;
  padding: 0 0.5208333333rem;
}
.activity-subtitle .activity-subtitle-top .activity-subtitle-name::before {
  display: block;
  content: "";
  width: 0.6770833333rem;
  height: 1.3541666667rem;
  border-radius: 0.15625rem 0 0 0;
  color: #FFFFFF;
  border: 1px solid #FFFFFF;
  border-right: transparent;
  border-bottom: transparent;
  position: absolute;
  left: 0rem;
  top: 0.1041666667rem;
}
.activity-subtitle .activity-subtitle-top .activity-subtitle-name::after {
  display: block;
  content: "";
  width: 0.6770833333rem;
  height: 1.3541666667rem;
  border-radius: 0 0 0.15625rem 0;
  color: #FFFFFF;
  border: 1px solid #FFFFFF;
  border-left: transparent;
  border-top: transparent;
  position: absolute;
  right: 0rem;
  bottom: 0.1041666667rem;
}
.activity-body {
  width: 52.0833333333rem;
  margin: 0 auto;
  position: relative;
}
.activity-body img {
  width: 100%;
  pointer-events: none;
}
.activity-body-content {
  position: absolute;
  inset: 0;
  width: 100%;
  padding-left: 12.34375rem;
  padding-top: 3.125rem;
  padding-right: 4.1666666667rem;
}
.activity-body-content .activity-item {
  width: fit-content;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
}
.activity-body-content .activity-item-label {
  color: #090E1A;
  font-size: 1.25rem;
  line-height: 32px;
  opacity: 0.5;
  margin-bottom: 0;
  margin-right: 0.5208333333rem;
}
.activity-body-content .activity-item-content {
  flex: 1;
  font-size: 1.25rem;
  color: #090E1A;
  line-height: 32px;
}
.activity-body-content .activity-item-content li {
  list-style: initial;
}
.activity-body-content .activity-item ul.activity-item-content {
  padding-left: 1.3020833333rem;
}
.activity-mouse {
  background-image: url("/images/celebration/mouse.png");
}

.client-message {
  background-image: url("/images/celebration/client-message-title.png"), url("/images/celebration/celebration-bg-5.jpg");
}
.client-message-content {
  margin: 14.375rem auto 0.9375rem;
  width: 62.5rem;
  height: 11.9791666667rem;
  background-image: url("/images/celebration/client-message-bg.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: right center;
  padding: 1.25rem 12.5rem 1.25rem 1.25rem;
}
.client-message-content .client-message-swiper {
  background: transparent;
}
.client-message-content .client-message-swiper .swiper-wrapper {
  height: 100%;
  align-items: center;
  background: transparent;
}
.client-message-content .client-message-swiper .swiper-slide {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  background: transparent;
}
.client-message-content .client-message-swiper .swiper-slide p {
  margin: 0;
  width: 100%;
  height: fit-content;
  font-size: 0.9375rem;
  line-height: 1.5;
  text-align: left;
}
.client-message-content .client-message-swiper .swiper-slide .client-message-content-text {
  text-indent: 2em;
}
.client-message-content .client-message-swiper .swiper-slide .client-message-content-title {
  text-align: right;
}
.client-message-company {
  width: 62.5rem;
  height: 12.7604166667rem;
  margin: 0 auto;
}
.client-message-company-body {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 0.5208333333rem;
  background-color: transparent;
  overflow: hidden;
}
.client-message-company-body > div {
  width: 100%;
  height: 3.90625rem;
  background-color: transparent;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0.5208333333rem;
  left: 0;
}
.client-message-company-body > div .str_move {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0.5208333333rem;
}
.client-message-company-body > div .str_move_clone {
  margin-left: 0.5208333333rem;
}
.client-message-company-body .client-message-company-body2 .str_move {
  left: 4.1666666667rem;
}
.client-message-company-item {
  width: 7.8125rem;
  height: 3.90625rem;
  object-fit: contain;
  background-color: #FFFFFF;
}
.client-message-mouse {
  background-image: url("/images/celebration/mouse-1.png");
}

.contact-us {
  background-image: url("/images/celebration/contact-us-title.png"), url("/images/celebration/celebration-bg-6.jpg");
}
.contact-us-body {
  width: 72.2916666667rem;
  height: 65.75vh;
  display: flex;
  margin: 12.96875rem auto;
}
.contact-us-map, .contact-us-info {
  width: 50%;
  height: 100%;
}
.contact-us-map {
  flex: 1;
}
.contact-us-info {
  background-image: url("images/celebration/contact-us-info-bg.png");
  background-size: 100%;
  background-repeat: no-repeat;
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 0 3.125rem;
}
.contact-us-item {
  width: 100%;
  flex: 1;
  border-bottom: 1px solid #384157;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 1.25rem;
}
.contact-us-item:last-child {
  border-bottom: none;
}
.contact-us-item-icon {
  width: 3.5416666667rem;
  height: 3.5416666667rem;
  display: block;
  background-repeat: no-repeat;
  background-size: 100%;
}
.contact-us-item .address {
  background-image: url("/images/celebration/contact-us1.png");
}
.contact-us-item .phone-number {
  background-image: url("/images/celebration/contact-us2.png");
}
.contact-us-item .email {
  background-image: url("/images/celebration/contact-us4.png");
}
.contact-us-item .time {
  background-image: url("/images/celebration/contact-us3.png");
}
.contact-us-item-content {
  height: fit-content;
}
.contact-us-item-content label, .contact-us-item-content p {
  color: #FFFFFF;
  font-size: 1.25rem;
  height: 1.6666666667rem;
  line-height: 1.6666666667rem;
}
.contact-us-item-content label {
  opacity: 0.5;
}
.contact-us .custom-content-marker {
  position: relative;
  width: 2.6041666667rem;
  height: 3.6458333333rem;
}
.contact-us .custom-content-marker img {
  width: 100%;
  height: 100%;
}

/*# sourceMappingURL=celebration.css.map */
