:root {
  --blue: #0080ff;
  --blue-hover: #0043c5;
  --text: #111111;
  --bg: #f7f7f7;
  --bar-bg: rgba(250, 250, 252, 0.8);
  --line: rgba(198, 198, 198, 0.25);
  --container: 1260px;
  --gold: #d9b380;
}

html, body {
  padding: 0;
  margin: 0;
  font-family: "MiSans", "PingFang SC", "Microsoft YaHei", "Noto Sans SC", sans-serif;
}
html::-webkit-scrollbar, body::-webkit-scrollbar { display: none; }
h1, h2, h3, h4, h5, h6 { margin: 0; padding: 0; }
a { text-decoration: none; color: var(--text); }
ul { margin: 0; padding: 0; }
li { list-style: none; }

body {
  padding-top: 48px;
  background-color: var(--bg);
  color: var(--text);
}

.pcshow { display: block; }
.mobileshow { display: none; }

/* ===== 顶部导航 ===== */
.header { width: 100%; position: relative; z-index: 999; height: 48px; }
.header-bar {
  height: 48px;
  backdrop-filter: saturate(180%) blur(20px);
  -webkit-backdrop-filter: saturate(180%) blur(20px);
  background: var(--bar-bg);
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
}
.header-bar-cont {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100%;
  width: var(--container);
  margin: 0 auto;
}
.logo-link { display: flex; align-items: center; height: 100%; }
.logo-text {
  font-size: 20px;
  font-weight: 600;
  letter-spacing: -0.5px;
  line-height: 1.2;
  color: var(--text);
}
.bar-nav { display: flex; flex: 1; margin-left: 153px; height: 100%; }
.bar-nav-li { position: relative; height: 100%; }
.bar-nav > .bar-nav-li { padding: 0 36px; line-height: 48px; font-size: 16px; }
.bar-nav-item {
  width: 100%; height: 100%;
  cursor: pointer;
  display: flex; align-items: center;
}
.bar-nav > .bar-nav-li > .bar-nav-item { justify-content: center; }
.bar-nav-item a { color: var(--text); }
.bar-nav-item a:hover { color: var(--blue); }

.bar-nav-dropdown {
  position: fixed;
  left: 0; top: 0;
  width: 100vw;
  background: #fafafc;
  z-index: -1;
  height: 0;
  overflow: hidden;
  transition: height 0.3s cubic-bezier(0.4, 0, 0.6, 1);
}
.dropdown-inner {
  width: var(--container);
  margin: 88px auto 40px;
  box-sizing: border-box;
  padding-left: 280px;
  display: flex;
}
.bar-nav-menu { min-width: 120px; margin-right: 60px; font-size: 14px; line-height: 18px; font-weight: bold; }
.bar-nav-menu span {
  font-weight: normal; color: #9a9a9a;
  display: inline-block; margin-bottom: 12px; line-height: 1.3;
}
.bar-nav-menu a, .bar-nav-menu h4 { margin-bottom: 12px; color: var(--text); }
.bar-nav-menu a:hover { color: var(--blue); }
.bar-nav-menu h4 a { display: inline-block; }
.bar-nav-dropdown .bar-nav-menu:nth-child(1) h4 { font-size: 24px; line-height: 32px; font-weight: bold; }
.bar-nav-dropdown .bar-nav-menu:nth-child(1) span { margin-bottom: 10px; }

.bar-nav-right { width: 78px; height: 48px; display: flex; justify-content: flex-end; }
.bar-nav-right.pcshow { display: flex; }
.bar-nav-right.mobileshow { display: none; }
.bar-nav-right .bar-nav-item { justify-content: flex-end; }
.header-menu { width: 18px; height: 13px; }
.bar-nav-card { display: flex; }
.bar-nav-card-item { text-align: center; font-weight: normal; margin-right: 24px; font-size: 14px; }
.qr-placeholder {
  width: 100px; height: 100px;
  margin-bottom: 8px;
  border-radius: 8px;
  background: repeating-conic-gradient(#e8e8e8 0% 25%, #fff 0% 50%) 0 0 / 16px 16px;
  border: 1px solid var(--line);
}

/* ===== 移动端菜单 ===== */
.bar-nav-mobile {
  position: fixed;
  width: 100vw;
  background: #fff;
  z-index: 998;
  height: calc(100vh - 1.775rem);
  overflow-y: auto;
  left: 0;
  top: 1.775rem;
  display: none;
  box-sizing: border-box;
  padding: 0.5rem 0;
}
.bar-nav-mobile.open { display: block; }
@media screen and (min-width: 1024px) {
  .bar-nav-mobile { display: none !important; }
}

/* ===== Banner ===== */
.block-tl {
  display: flex;
  text-align: center;
  height: 690px;
  flex-direction: column;
  align-items: center;
  background-repeat: no-repeat;
  background-size: 2560px 690px;
  background-position: center;
  margin-bottom: 24px;
  background-color: #444;
}
.block-tl .title {
  font-size: 42px; line-height: 1.3; font-weight: 700;
  margin-top: 72px; margin-bottom: 24px;
  overflow: hidden; width: 900px; max-height: 112px;
  color: #fff;
}
.block-tl .sub-title {
  font-size: 18px; margin-bottom: 24px; line-height: 1.3;
  overflow: hidden; width: 900px; max-height: 48px;
  color: #fff;
}
.block-tl-flex {
  flex: 1; position: relative;
  display: flex; align-items: center; justify-content: center;
  overflow: hidden; width: 100%;
}
.hero-word {
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(60px, 11vw, 150px);
  letter-spacing: 0.06em;
  color: var(--gold);
  text-shadow: 0 0 40px rgba(217, 179, 128, 0.25);
  user-select: none;
}
.last-banner { margin-bottom: 100px; }

/* ===== 箭头按钮 ===== */
.cmm-button {
  width: 40px; height: 28px;
  border-radius: 10px;
  background-size: 16px 16px;
  background-repeat: no-repeat;
  background-position: center;
  display: inline-block;
  transition: background-color 0.2s;
}
.cmm-button.blue {
  background-color: var(--blue);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='M2 8h11M9 3.5 13.5 8 9 12.5' stroke='%23ffffff' stroke-width='1.8' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.cmm-button.blue:hover { background-color: var(--blue-hover); }
.cmm-button.white {
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='M2 8h11M9 3.5 13.5 8 9 12.5' stroke='%230080ff' stroke-width='1.8' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.cmm-button.white:hover { background-color: #d1e0ff; }

/* ===== 卡片区块 ===== */
.block-bl {
  width: var(--container);
  margin: 0 auto 25px;
  text-align: center;
  display: flex;
}
.block-item {
  height: 456px;
  margin-left: 24px;
  border-radius: 32px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  background-color: #fff;
  display: flex;
  align-items: center;
  flex-direction: column;
  transition: transform 0.3s, box-shadow 0.3s;
  overflow: hidden;
}
.block-item.hover:hover { transform: scale(1.01); box-shadow: 2px 4px 16px #00000029; }
.block-bl .block-item:nth-child(1) { margin-left: 0; }
.block-item-2 { width: calc((100% - 24px) / 2); }
.block-item-3 { width: calc((100% - 48px) / 3); }
.block-bl .title {
  font-size: 42px; line-height: 1.3; font-weight: 700;
  margin-top: 32px; margin-bottom: 20px;
  max-height: 112px; overflow: hidden;
}
.block-bl .sub-title {
  font-size: 18px; margin-bottom: 20px; line-height: 1.3;
  max-height: 48px; overflow: hidden;
}
.block-item-2 .title, .block-item-2 .sub-title { width: 500px; }
.block-item-3 .title, .block-item-3 .sub-title { width: 300px; }

/* ===== 页脚 ===== */
.footer-bottom {
  border-top: 1px solid var(--line);
  width: var(--container);
  margin: 120px auto 80px;
  padding-top: 19px;
  box-sizing: border-box;
}
.footer-links { display: flex; justify-content: space-between; }
.footer-link { flex: 1; font-size: 16px; line-height: 21px; }
.footer-link li { margin-top: 20px; }
.footer-link .footer-link-title { margin-top: 61px; font-weight: bold; }
.footer-link .footer-link-title:first-child { margin-top: 0; }
.footer-link a:hover { color: var(--blue); }
.footer-links-mobile { display: none; }
.footer-copyright { margin-top: 120px; font-size: 16px; }
.footer-copyright > div {
  margin-bottom: 20px; padding-bottom: 20px;
  border-bottom: 1px solid var(--line);
}
.footer-copyright > div > span { margin-right: 40px; }
.footer-contact-language { display: flex; justify-content: space-between; }
.footer-contact-language .cmm-link { margin-left: 20px; }
.footer-contact-language .cmm-link::before {
  content: ""; display: inline-block;
  width: 1px; height: 12px;
  background: var(--line);
  margin-right: 20px;
}
.footer-contact-language .cmm-link:nth-child(1)::before { content: none; }
.cmm-link:hover { cursor: pointer; color: var(--blue); }
.icpbei { margin-left: 5px; }
.icpbei::before {
  content: ""; height: 14px; width: 1.5px;
  background: var(--text);
  display: inline-block; margin-right: 7px;
}

/* ===== 中屏 1024–1279 ===== */
@media screen and (max-width: 1279px) and (min-width: 1024px) {
  :root { --container: 1002px; }
  .bar-nav { margin-left: 52px; }
  .bar-nav-right { width: 58px; }
  .dropdown-inner { padding-left: 180px; }
  .block-tl { height: 552px; margin-bottom: 20px; background-size: 2048px 552px; }
  .block-tl .title { margin-top: 60px; margin-bottom: 20px; }
  .block-tl .sub-title { margin-bottom: 20px; }
  .last-banner { margin-bottom: 80px; }
  .block-bl { margin-bottom: 20px; }
  .block-item { height: 353px; margin-left: 20px; border-radius: 24px; }
  .block-item-2 { width: calc((100% - 20px) / 2); }
  .block-item-3 { width: calc((100% - 40px) / 3); }
  .block-item-2 .title, .block-item-2 .sub-title { width: 420px; }
  .block-item-3 .title, .block-item-3 .sub-title { width: 260px; }
  .qr-placeholder { width: 80px; height: 80px; }
}

/* ===== 移动端 <1024 ===== */
@media screen and (max-width: 1023px) {
  html { font-size: 64px; }
  body { padding-top: 1.775rem; }
  .pcshow { display: none; }
  .mobileshow { display: block; }
  .header { height: 1.775rem; }
  .header-bar { height: 1.775rem; box-sizing: border-box; padding: 0 0.75rem; }
  .header-bar-cont { width: 100%; }
  .logo-text { font-size: 0.6rem; line-height: 0.675rem; }
  .bar-nav-right { height: 100%; width: auto; }
  .bar-nav-right.pcshow { display: none; }
  .bar-nav-right.mobileshow { display: flex; }
  .bar-nav-item-mobile { display: flex; align-items: center; justify-content: center; height: 100%; cursor: pointer; }
  .header-menu { width: 0.675rem; height: 0.45rem; }

  .block-tl {
    height: 90.6vw;
    margin-bottom: 3.1vw;
    background-size: 100vw 90.6vw;
  }
  .block-tl .title {
    font-size: 1rem; line-height: 1.325rem; max-height: 2.65rem;
    margin-top: 9.4vw; margin-bottom: 1.9vw; width: 56.25vw;
  }
  .block-tl .sub-title {
    font-size: 0.6rem; line-height: 0.8rem; max-height: 1.6rem;
    margin-bottom: 3.1vw; width: 56.25vw;
  }
  .last-banner { margin-bottom: 3.1vw; }
  .hero-word { font-size: 13vw; }
  .cmm-button { width: 1.5rem; height: 0.95rem; border-radius: 0.37rem; }

  .block-bl {
    width: 90.6vw;
    margin: 0 4.7vw 3.1vw;
    display: block;
  }
  .block-item {
    height: 90.6vw;
    border-radius: 1.125rem;
    margin-left: 0;
    margin-top: 3.1vw;
  }
  .block-item-2, .block-item-3 { width: 100%; }
  .block-bl .title, .block-item-2 .title, .block-item-3 .title {
    font-size: 1rem; line-height: 1.325rem; max-height: 2.65rem;
    margin-top: 9.4vw; margin-bottom: 1.9vw; width: 56.25vw;
  }
  .block-bl .sub-title, .block-item-2 .sub-title, .block-item-3 .sub-title {
    font-size: 0.6rem; line-height: 0.8rem; max-height: 1.6rem;
    margin-bottom: 1.9vw; width: 56.25vw;
  }
  .bar-nav-mobile ul.footer-link,
  .footer-links-mobile ul.footer-link {
    overflow: hidden;
    height: 2.3rem;
    margin: 0 10vw;
    border-bottom: 1px solid var(--line);
    transition: height 0.3s ease;
  }
  .bar-nav-mobile ul.footer-link.open,
  .footer-links-mobile ul.footer-link.open { height: auto; }
  .bar-nav-mobile .footer-link li,
  .footer-links-mobile .footer-link li {
    margin-top: 0.75rem; padding-bottom: 0.75rem;
    font-size: 0.6rem; font-weight: bold;
    height: 0.8rem; line-height: 0.8rem;
    display: flex; align-items: center; justify-content: space-between;
    cursor: pointer;
  }
  .bar-nav-mobile .footer-link a li,
  .footer-links-mobile .footer-link a li { font-weight: normal; }
  .footer-arrow { transition: transform 0.3s ease; flex-shrink: 0; }
  ul.footer-link.open .footer-arrow { transform: rotate(180deg); }

  .footer-bottom {
    width: 100vw;
    margin: 6.25vw 0 9.375vw;
    overflow: hidden;
  }
  .footer-links { display: none; }
  .footer-links-mobile { display: block; width: 100vw; }
  .footer-copyright {
    width: 80vw;
    margin: 9vw auto 0;
    font-size: 0.5rem;
    overflow: hidden;
  }
  .footer-copyright p { font-size: 0.3rem; }
  .footer-contact-language { flex-direction: column-reverse; }
  .footer-contact-language .footer-contact-language-item {
    border-bottom: 1px solid var(--line);
    margin-bottom: 20px; padding-bottom: 20px;
  }
  .footer-contact-language .cmm-link { margin-left: 0; margin-right: 20px; }
  .footer-copyright > div { display: flex; justify-content: space-between; }
  .footer-copyright > div > span { margin-right: 0; }
}

@media screen and (max-width: 1023px) and (min-width: 960px) { html { font-size: 64px; } }
@media screen and (max-width: 959px) and (min-width: 850px) { html { font-size: 56px; } }
@media screen and (max-width: 849px) and (min-width: 768px) { html { font-size: 50px; } }
@media screen and (max-width: 767px) and (min-width: 640px) { html { font-size: 44px; } }
@media screen and (max-width: 640px) and (min-width: 560px) { html { font-size: 38px; } }
@media screen and (max-width: 559px) and (min-width: 480px) { html { font-size: 32px; } }
@media screen and (max-width: 479px) and (min-width: 446px) { html { font-size: 29px; } }
@media screen and (max-width: 445px) and (min-width: 413px) { html { font-size: 27px; } }
@media screen and (max-width: 413px) and (min-width: 380px) { html { font-size: 25px; } }
@media screen and (max-width: 379px) { html { font-size: 23px; } }