@media (max-width: 760px) {
  body.contact-page,
  body.contact-page:not(.home-page) {
    --contact-text-white: #f8fbff;
    --contact-text-main: #eaf3ff;
    --contact-text-secondary: #b7c6dd;
    --contact-text-muted: #7f91ac;
    --contact-cyan: #22d7ff;
    --contact-cyan-soft: #5ad9ff;
    --contact-primary-blue: #1677ff;
    min-height: 100vh !important;
    padding-bottom: 0 !important;
    overflow-x: hidden !important;
    color: var(--contact-text-main) !important;
    font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", "Noto Sans SC", Arial, sans-serif !important;
    background:
      radial-gradient(circle at 78% 16%, rgba(0, 116, 255, 0.32), transparent 28%),
      radial-gradient(circle at 18% 6%, rgba(23, 207, 255, 0.12), transparent 24%),
      linear-gradient(180deg, #000817 0%, #001631 42%, #000b1d 100%) !important;
  }

  body.contact-page::before {
    position: fixed !important;
    inset: 0 !important;
    z-index: -1 !important;
    pointer-events: none !important;
    content: "" !important;
    background:
      linear-gradient(90deg, rgba(34, 144, 255, 0.055) 1px, transparent 1px),
      linear-gradient(180deg, rgba(34, 144, 255, 0.045) 1px, transparent 1px) !important;
    background-size: 42px 42px !important;
    opacity: 0.4 !important;
  }

  body.contact-page main > section.contact-mobile-redesign,
  body.contact-page:not(.home-page) main > section.contact-mobile-redesign {
    display: block !important;
    visibility: visible !important;
  }

  body.contact-page main > section.page-hero.contact-hero,
  body.contact-page main > section.section,
  body.contact-page > footer.site-footer,
  body.contact-page:not(.home-page) main > section.page-hero.contact-hero,
  body.contact-page:not(.home-page) main > section.section,
  body.contact-page:not(.home-page) > footer.site-footer,
  body.contact-page nav.mobile-tabbar.site-mobile-tabbar,
  body.contact-page .mobile-tabbar.site-mobile-tabbar,
  body.contact-page .site-mobile-tabbar,
  body.contact-page .mobile-tabbar,
  body.contact-page .contact-mobile-topbar {
    display: none !important;
    visibility: hidden !important;
  }

  body.contact-page .site-header,
  body.contact-page:not(.home-page) .site-header {
    position: relative !important;
    display: block !important;
    visibility: visible !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    z-index: 30 !important;
    width: min(100vw, 430px) !important;
    max-width: 430px !important;
    margin: 0 auto !important;
    padding: 24px 12px 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
  }

  body.contact-page .site-header .nav,
  body.contact-page:not(.home-page) .site-header .nav {
    display: grid !important;
    visibility: visible !important;
    grid-template-columns: minmax(0, 1fr) 44px !important;
    align-items: center !important;
    justify-content: initial !important;
    width: 100% !important;
    max-width: none !important;
    height: 56px !important;
    min-height: 56px !important;
    margin: 0 !important;
    padding: 0 16px !important;
    gap: 10px !important;
    border: 1px solid rgba(72, 143, 255, 0.36) !important;
    border-radius: 999px !important;
    background: rgba(2, 18, 46, 0.72) !important;
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.06),
      0 16px 42px rgba(0, 0, 0, 0.28) !important;
    backdrop-filter: blur(18px) !important;
    -webkit-backdrop-filter: blur(18px) !important;
  }

  body.contact-page .site-header .nav-links,
  body.contact-page:not(.home-page) .site-header .nav-links {
    display: none !important;
  }

  body.contact-page .site-header .brand,
  body.contact-page:not(.home-page) .site-header .brand {
    position: static !important;
    display: inline-flex !important;
    visibility: visible !important;
    align-items: center !important;
    justify-content: flex-start !important;
    grid-column: 1 !important;
    flex: 0 1 auto !important;
    min-width: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 10px !important;
    color: var(--contact-text-white) !important;
    text-decoration: none !important;
    transform: none !important;
  }

  body.contact-page .site-header .brand-mark,
  body.contact-page:not(.home-page) .site-header .brand-mark {
    display: block !important;
    visibility: visible !important;
    width: 32px !important;
    height: 32px !important;
    flex: 0 0 32px !important;
    filter: brightness(0) invert(1) drop-shadow(0 0 10px rgba(73, 231, 255, 0.18)) !important;
  }

  body.contact-page .site-header .brand span,
  body.contact-page:not(.home-page) .site-header .brand span {
    visibility: visible !important;
    max-width: calc(100vw - 126px) !important;
    overflow: hidden !important;
    color: var(--contact-text-white) !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    letter-spacing: 0.2px !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  body.contact-page .site-header .mobile-menu,
  body.contact-page:not(.home-page) .site-header .mobile-menu {
    position: static !important;
    display: block !important;
    visibility: visible !important;
    flex: 0 0 44px !important;
    width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    grid-column: 2 !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
  }

  body.contact-page .site-header .mobile-menu summary,
  body.contact-page:not(.home-page) .site-header .mobile-menu summary {
    position: relative !important;
    visibility: visible !important;
    width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    flex: 0 0 44px !important;
    margin: 0 !important;
    padding: 0 !important;
    inset: auto !important;
    transform: none !important;
  }

  body.contact-page .site-header .mobile-menu summary,
  body.contact-page .site-header .mobile-menu summary:hover,
  body.contact-page .site-header .mobile-menu summary:focus-visible,
  body.contact-page .site-header .mobile-menu summary:active,
  body.contact-page .site-header .mobile-menu[open] summary,
  body.contact-page:not(.home-page) .site-header .mobile-menu summary,
  body.contact-page:not(.home-page) .site-header .mobile-menu summary:hover,
  body.contact-page:not(.home-page) .site-header .mobile-menu summary:focus-visible,
  body.contact-page:not(.home-page) .site-header .mobile-menu summary:active,
  body.contact-page:not(.home-page) .site-header .mobile-menu[open] summary {
    position: relative !important;
    display: grid !important;
    place-items: center !important;
    border: 1px solid rgba(64, 134, 255, 0.45) !important;
    border-radius: 50% !important;
    background:
      radial-gradient(circle at 35% 25%, rgba(255, 255, 255, 0.08), transparent 40%),
      linear-gradient(180deg, rgba(9, 33, 79, 0.92), rgba(4, 18, 47, 0.95)) !important;
    box-shadow: inset 0 0 18px rgba(63, 132, 255, 0.14) !important;
    transform: none !important;
  }

  body.contact-page .site-header .mobile-menu summary span,
  body.contact-page:not(.home-page) .site-header .mobile-menu summary span {
    position: static !important;
    width: 22px !important;
    height: 2.5px !important;
    border-radius: 999px !important;
    background: var(--contact-text-white) !important;
    box-shadow: 0 7px 0 var(--contact-text-white), 0 -7px 0 var(--contact-text-white) !important;
    transform: none !important;
  }

  body.contact-page .site-header .mobile-menu summary::before,
  body.contact-page .site-header .mobile-menu summary::after,
  body.contact-page .site-header .mobile-menu summary span::before,
  body.contact-page .site-header .mobile-menu summary span::after,
  body.contact-page:not(.home-page) .site-header .mobile-menu summary::before,
  body.contact-page:not(.home-page) .site-header .mobile-menu summary::after,
  body.contact-page:not(.home-page) .site-header .mobile-menu summary span::before,
  body.contact-page:not(.home-page) .site-header .mobile-menu summary span::after {
    display: none !important;
    content: none !important;
  }

  body.contact-page .site-header .mobile-menu-panel,
  body.contact-page:not(.home-page) .site-header .mobile-menu-panel {
    right: 0 !important;
    left: auto !important;
    width: min(310px, calc(100vw - 36px)) !important;
    margin-top: 12px !important;
    border: 1px solid rgba(40, 132, 238, 0.52) !important;
    border-radius: 18px !important;
    background: rgba(3, 18, 44, 0.96) !important;
    box-shadow: 0 24px 54px rgba(0, 0, 0, 0.42) !important;
  }

  body.contact-page main,
  body.contact-page:not(.home-page) main {
    width: min(100vw, 430px) !important;
    max-width: 430px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  body.contact-page .contact-mobile-redesign {
    position: relative !important;
    display: block !important;
    padding: 0 !important;
  }

  body.contact-page .contact-mobile-hero {
    position: relative !important;
    min-height: 390px !important;
    margin: 0 !important;
    padding: 68px 22px 30px !important;
    overflow: hidden !important;
    background:
      radial-gradient(circle at 86% 34%, rgba(0, 117, 255, 0.2), transparent 28%),
      linear-gradient(90deg, rgba(0, 8, 23, 0.98) 0%, rgba(0, 12, 32, 0.84) 48%, rgba(0, 15, 42, 0.44) 100%) !important;
  }

  body.contact-page .contact-mobile-hero::before {
    position: absolute !important;
    top: 58px !important;
    right: -18px !important;
    bottom: auto !important;
    left: auto !important;
    z-index: 0 !important;
    width: 260px !important;
    height: 330px !important;
    content: "" !important;
    background: url("generated/contact-security-hero.jpg") center / cover no-repeat !important;
    filter: drop-shadow(0 0 28px rgba(0, 124, 255, 0.65)) !important;
    opacity: 0.92 !important;
    -webkit-mask-image: radial-gradient(ellipse at 70% 55%, #000 0 54%, rgba(0, 0, 0, 0.72) 66%, transparent 84%) !important;
    mask-image: radial-gradient(ellipse at 70% 55%, #000 0 54%, rgba(0, 0, 0, 0.72) 66%, transparent 84%) !important;
  }

  body.contact-page .contact-mobile-hero::after {
    position: absolute !important;
    inset: auto 0 0 !important;
    z-index: 1 !important;
    height: 130px !important;
    content: "" !important;
    background:
      linear-gradient(180deg, transparent 0%, rgba(0, 12, 31, 0.66) 58%, #00102a 100%),
      linear-gradient(90deg, rgba(0, 8, 23, 0.72), transparent 58%) !important;
  }

  body.contact-page .contact-mobile-hero-copy,
  body.contact-page .contact-mobile-trust {
    position: relative !important;
    z-index: 2 !important;
  }

  body.contact-page .contact-mobile-kicker {
    display: none !important;
    margin: 0 !important;
    color: var(--contact-cyan-soft) !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
  }

  body.contact-page .contact-mobile-hero h1 {
    margin: 0 !important;
    color: var(--contact-text-white) !important;
    font-size: 37px !important;
    font-weight: 900 !important;
    line-height: 1.12 !important;
    letter-spacing: 0.05em !important;
    text-shadow: 0 8px 24px rgba(0, 0, 0, 0.34) !important;
  }

  body.contact-page .contact-mobile-hero h1 span {
    color: transparent !important;
    background: linear-gradient(90deg, #27e5ff 0%, #1685ff 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
  }

  body.contact-page .contact-mobile-hero-copy > p:last-child {
    max-width: 252px !important;
    margin: 18px 0 0 !important;
    color: var(--contact-text-main) !important;
    font-size: 18px !important;
    line-height: 1.6 !important;
  }

  body.contact-page .contact-mobile-hero-copy > p:last-child::after {
    display: block !important;
    width: 34px !important;
    height: 3px !important;
    margin-top: 16px !important;
    border-radius: 999px !important;
    content: "" !important;
    background: linear-gradient(90deg, var(--contact-cyan), var(--contact-primary-blue)) !important;
    box-shadow: 0 0 14px rgba(34, 215, 255, 0.65) !important;
  }

  body.contact-page .contact-mobile-trust {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin-top: 46px !important;
  }

  body.contact-page .contact-mobile-trust-item {
    display: grid !important;
    grid-template-columns: 34px minmax(0, 1fr) !important;
    column-gap: 8px !important;
    align-items: center !important;
    min-width: 0 !important;
  }

  body.contact-page .contact-mobile-trust-item .contact-mobile-icon {
    grid-row: span 2 !important;
    width: 34px !important;
    height: 34px !important;
    flex-basis: 34px !important;
  }

  body.contact-page .contact-mobile-trust-item .contact-mobile-icon::before {
    width: 18px !important;
    height: 18px !important;
  }

  body.contact-page .contact-mobile-trust-item strong,
  body.contact-page .contact-mobile-trust-item em {
    display: block !important;
    font-style: normal !important;
    line-height: 1.25 !important;
    white-space: nowrap !important;
  }

  body.contact-page .contact-mobile-trust-item strong {
    color: #f4faff !important;
    font-size: 13px !important;
    font-weight: 700 !important;
  }

  body.contact-page .contact-mobile-trust-item em {
    margin-top: 3px !important;
    color: #9fb0c8 !important;
    font-size: 12px !important;
  }

  body.contact-page .contact-mobile-main-panel {
    margin: 20px 12px 0 !important;
    padding: 22px 16px !important;
    border: 1px solid rgba(69, 145, 255, 0.28) !important;
    border-radius: 24px !important;
    background: linear-gradient(180deg, rgba(4, 27, 64, 0.86), rgba(1, 13, 36, 0.94)) !important;
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.05),
      0 24px 80px rgba(0, 0, 0, 0.28) !important;
  }

  body.contact-page .contact-mobile-panel,
  body.contact-page .contact-mobile-faq {
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body.contact-page .contact-method-panel {
    box-sizing: border-box !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
  }

  body.contact-page .contact-mobile-section-title h2 {
    margin: 0 !important;
    color: var(--contact-text-white) !important;
    font-size: 26px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
  }

  body.contact-page .contact-mobile-section-title h2::after {
    display: block !important;
    width: 34px !important;
    height: 3px !important;
    margin-top: 10px !important;
    border-radius: 999px !important;
    content: "" !important;
    background: linear-gradient(90deg, var(--contact-cyan), var(--contact-primary-blue)) !important;
  }

  body.contact-page .contact-method-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    margin-top: 18px !important;
    overflow: hidden !important;
    border: 1px solid rgba(69, 145, 255, 0.24) !important;
    border-radius: 18px !important;
    background: rgba(3, 22, 54, 0.68) !important;
  }

  body.contact-page .contact-method-grid article {
    display: grid !important;
    grid-template-columns: 44px minmax(0, 1fr) !important;
    gap: 12px !important;
    min-height: 118px !important;
    padding: 22px 16px !important;
    border-right: 1px solid rgba(87, 151, 225, 0.22) !important;
    border-bottom: 1px solid rgba(87, 151, 225, 0.22) !important;
  }

  body.contact-page .contact-method-grid article:nth-child(2n) {
    border-right: 0 !important;
  }

  body.contact-page .contact-method-grid article:nth-last-child(-n + 2) {
    border-bottom: 0 !important;
  }

  body.contact-page .contact-method-grid h3 {
    margin: 0 0 8px !important;
    color: var(--contact-text-white) !important;
    font-size: 17px !important;
    font-weight: 800 !important;
    line-height: 1.3 !important;
  }

  body.contact-page .contact-method-grid p {
    margin: 3px 0 0 !important;
    color: var(--contact-text-secondary) !important;
    font-size: 14px !important;
    line-height: 1.65 !important;
  }

  body.contact-page .contact-mobile-icon {
    display: inline-grid !important;
    place-items: center !important;
    width: 44px !important;
    height: 44px !important;
    flex: 0 0 44px !important;
    border: 1px solid rgba(90, 170, 255, 0.36) !important;
    border-radius: 50% !important;
    background:
      radial-gradient(circle at 35% 25%, rgba(90, 220, 255, 0.35), transparent 42%),
      linear-gradient(145deg, #0b58d8, #072b74) !important;
    box-shadow:
      0 0 22px rgba(22, 119, 255, 0.45),
      inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
  }

  body.contact-page .contact-mobile-icon::before {
    width: 22px !important;
    height: 22px !important;
    content: "" !important;
    background: linear-gradient(135deg, #d5fbff, #74b8ff) !important;
    -webkit-mask: var(--contact-icon-mask) center / contain no-repeat !important;
    mask: var(--contact-icon-mask) center / contain no-repeat !important;
  }

  body.contact-page .contact-wechat-panel {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 150px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 18px !important;
    margin-top: 18px !important;
    padding: 24px 16px !important;
    border: 1px solid rgba(69, 145, 255, 0.28) !important;
    border-radius: 22px !important;
    background:
      radial-gradient(circle at 50% 42%, rgba(0, 117, 255, 0.25), transparent 36%),
      linear-gradient(180deg, rgba(5, 29, 69, 0.82), rgba(2, 17, 43, 0.94)) !important;
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.05),
      0 0 42px rgba(0, 85, 255, 0.16) !important;
  }

  body.contact-page .contact-wechat-copy h2 {
    margin: 0 !important;
    color: var(--contact-text-white) !important;
    font-size: 30px !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
  }

  body.contact-page .contact-wechat-copy h2 span {
    color: transparent !important;
    background: linear-gradient(90deg, var(--contact-cyan), var(--contact-primary-blue)) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
  }

  body.contact-page .contact-wechat-copy h2::after {
    display: none !important;
  }

  body.contact-page .contact-wechat-copy p {
    margin: 14px 0 0 !important;
    color: var(--contact-text-secondary) !important;
    font-size: 13px !important;
    line-height: 1.8 !important;
  }

  body.contact-page .contact-wechat-qr {
    display: grid !important;
    justify-items: center !important;
    margin: 0 !important;
  }

  body.contact-page .contact-wechat-qr img {
    display: block !important;
    width: 150px !important;
    height: 150px !important;
    padding: 8px !important;
    object-fit: contain !important;
    border-radius: 14px !important;
    background: #ffffff !important;
    box-shadow:
      0 0 0 1px rgba(255, 255, 255, 0.85),
      0 0 28px rgba(34, 156, 255, 0.78),
      0 0 58px rgba(0, 110, 255, 0.38) !important;
  }

  body.contact-page .contact-wechat-qr p {
    margin: 14px 0 0 !important;
    color: var(--contact-text-secondary) !important;
    font-size: 13px !important;
    text-align: center !important;
  }

  body.contact-page .contact-phone-link {
    color: #7cecff !important;
    font-weight: 800 !important;
    text-decoration: none !important;
  }

  body.contact-page .contact-phone-link:hover,
  body.contact-page .contact-phone-link:focus-visible {
    color: #ffffff !important;
    text-decoration: underline !important;
  }

  body.contact-page .contact-wechat-services {
    display: grid !important;
    gap: 18px !important;
    margin: 0 !important;
  }

  body.contact-page .contact-wechat-services div {
    display: grid !important;
    grid-template-columns: 42px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 12px !important;
    text-align: left !important;
  }

  body.contact-page .contact-wechat-services .contact-mobile-icon {
    width: 42px !important;
    height: 42px !important;
    flex-basis: 42px !important;
  }

  body.contact-page .contact-wechat-services strong {
    color: var(--contact-text-white) !important;
    font-size: 15px !important;
    font-weight: 800 !important;
  }

  body.contact-page .contact-wechat-services p {
    margin: 4px 0 0 !important;
    color: #9fb0c8 !important;
    font-size: 13px !important;
  }

  body.contact-page .contact-mobile-faq {
    display: grid !important;
    grid-template-columns: 46px minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 14px !important;
    margin-top: 18px !important;
    padding: 18px 16px !important;
    border: 1px solid rgba(69, 145, 255, 0.24) !important;
    border-radius: 18px !important;
    background: rgba(3, 22, 54, 0.68) !important;
  }

  body.contact-page .contact-mobile-faq .contact-mobile-icon {
    width: 46px !important;
    height: 46px !important;
    flex-basis: 46px !important;
  }

  body.contact-page .contact-mobile-faq h2 {
    margin: 0 !important;
    color: var(--contact-text-white) !important;
    font-size: 17px !important;
    font-weight: 800 !important;
  }

  body.contact-page .contact-mobile-faq p {
    margin: 4px 0 0 !important;
    color: var(--contact-text-secondary) !important;
    font-size: 13px !important;
  }

  body.contact-page .contact-mobile-faq a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 104px !important;
    height: 42px !important;
    padding: 0 16px !important;
    border: 1px solid rgba(65, 145, 255, 0.42) !important;
    border-radius: 999px !important;
    color: var(--contact-text-white) !important;
    background: rgba(7, 38, 92, 0.72) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
  }

  body.contact-page .contact-mobile-footer {
    width: min(100vw, 430px) !important;
    margin: 24px auto 0 !important;
    padding: 24px 24px 34px !important;
    border-top: 1px solid rgba(69, 145, 255, 0.14) !important;
    color: var(--contact-text-muted) !important;
    text-align: center !important;
  }

  body.contact-page .contact-mobile-footer p {
    margin: 0 0 8px !important;
    color: inherit !important;
    font-size: 13px !important;
    line-height: 1.8 !important;
  }

  body.contact-page .contact-mobile-footer a {
    color: inherit !important;
    text-decoration: none !important;
  }
}

@media (max-width: 390px) {
  body.contact-page .site-header .brand span,
  body.contact-page:not(.home-page) .site-header .brand span {
    font-size: 17px !important;
  }

  body.contact-page .contact-mobile-hero {
    padding-top: 62px !important;
  }

  body.contact-page .contact-mobile-hero::before {
    top: 72px !important;
    right: -48px !important;
    width: 250px !important;
    height: 318px !important;
    background: url("generated/contact-security-hero.jpg") center / cover no-repeat !important;
  }

  body.contact-page .contact-mobile-hero h1 {
    font-size: 34px !important;
  }

  body.contact-page .contact-mobile-section-title h2 {
    font-size: 24px !important;
  }

  body.contact-page .contact-mobile-main-panel {
    padding-inline: 14px !important;
  }

  body.contact-page .contact-method-grid article {
    grid-template-columns: 40px minmax(0, 1fr) !important;
    gap: 10px !important;
    padding: 20px 12px !important;
  }

  body.contact-page .contact-method-grid h3 {
    font-size: 16px !important;
  }

  body.contact-page .contact-method-grid p {
    font-size: 13px !important;
  }

  body.contact-page .contact-method-grid .contact-mobile-icon {
    width: 40px !important;
    height: 40px !important;
    flex-basis: 40px !important;
  }

  body.contact-page .contact-wechat-panel {
    grid-template-columns: 1fr !important;
    justify-items: center !important;
    text-align: center !important;
  }

  body.contact-page .contact-wechat-copy p {
    margin-inline: auto !important;
  }

  body.contact-page .contact-wechat-qr {
    margin-top: 18px !important;
  }

  body.contact-page .contact-wechat-qr img {
    width: 178px !important;
    height: 178px !important;
  }

  body.contact-page .contact-wechat-services {
    width: 100% !important;
    margin-top: 18px !important;
  }

  body.contact-page .contact-mobile-faq {
    grid-template-columns: 46px minmax(0, 1fr) !important;
  }

  body.contact-page .contact-mobile-faq a {
    grid-column: 2 !important;
    width: max-content !important;
    margin-top: 6px !important;
  }
}

/* Contact page participates in the shared mobile homepage shell. */
@media (max-width: 760px) {
  body.contact-page,
  body.contact-page:not(.home-page) {
    --mobile-shell-font: "PingFang SC", "HarmonyOS Sans SC", "Microsoft YaHei", Arial, sans-serif;
    font-family: var(--mobile-shell-font) !important;
  }

  body.contact-page .site-header,
  body.contact-page:not(.home-page) .site-header,
  body.contact-page.nav-surface-light .site-header,
  body.contact-page.nav-surface-dark .site-header {
    position: fixed !important;
    top: calc(18px + env(safe-area-inset-top)) !important;
    left: 50% !important;
    right: auto !important;
    z-index: 1400 !important;
    width: min(100%, 426px) !important;
    max-width: 426px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: translateX(-50%) !important;
  }

  body.contact-page .site-header .nav,
  body.contact-page:not(.home-page) .site-header .nav,
  body.contact-page.nav-surface-light .site-header .nav,
  body.contact-page.nav-surface-dark .site-header .nav {
    box-sizing: border-box !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 41px !important;
    align-items: center !important;
    justify-content: initial !important;
    gap: 10px !important;
    width: calc(100% - 36px) !important;
    max-width: none !important;
    height: 56px !important;
    min-height: 56px !important;
    margin: 0 18px !important;
    padding: 0 14px !important;
    border: 1px solid rgba(67, 154, 255, 0.28) !important;
    border-radius: 28px !important;
    background: rgba(0, 10, 33, 0.72) !important;
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.08),
      0 18px 42px rgba(0, 0, 0, 0.28) !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
  }

  body.contact-page .site-header .nav-links,
  body.contact-page:not(.home-page) .site-header .nav-links {
    display: none !important;
  }

  body.contact-page .site-header .brand,
  body.contact-page:not(.home-page) .site-header .brand {
    display: inline-flex !important;
    align-items: center !important;
    width: auto !important;
    max-width: calc(100% - 50px) !important;
    min-width: 0 !important;
    height: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 8px !important;
    color: #ffffff !important;
    background: none !important;
    font-family: var(--mobile-shell-font) !important;
    text-decoration: none !important;
  }

  body.contact-page .site-header .brand-mark,
  body.contact-page:not(.home-page) .site-header .brand-mark {
    display: block !important;
    width: 28px !important;
    height: 28px !important;
    flex: 0 0 28px !important;
    opacity: 1 !important;
    filter: brightness(0) invert(1) drop-shadow(0 0 10px rgba(73, 231, 255, 0.18)) !important;
  }

  body.contact-page .site-header .brand span,
  body.contact-page:not(.home-page) .site-header .brand span {
    max-width: calc(100vw - 142px) !important;
    overflow: hidden !important;
    color: #ffffff !important;
    font-family: var(--mobile-shell-font) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  body.contact-page .site-header .mobile-menu,
  body.contact-page:not(.home-page) .site-header .mobile-menu {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    display: block !important;
    width: 41px !important;
    height: 41px !important;
    min-height: 41px !important;
    margin: 0 !important;
    padding: 0 !important;
    justify-self: end !important;
    flex: 0 0 41px !important;
    transform: none !important;
  }

  body.contact-page .site-header .mobile-menu summary,
  body.contact-page .site-header .mobile-menu summary:hover,
  body.contact-page .site-header .mobile-menu summary:focus-visible,
  body.contact-page .site-header .mobile-menu summary:active,
  body.contact-page .site-header .mobile-menu[open] summary,
  body.contact-page:not(.home-page) .site-header .mobile-menu summary,
  body.contact-page:not(.home-page) .site-header .mobile-menu summary:hover,
  body.contact-page:not(.home-page) .site-header .mobile-menu summary:focus-visible,
  body.contact-page:not(.home-page) .site-header .mobile-menu summary:active,
  body.contact-page:not(.home-page) .site-header .mobile-menu[open] summary {
    position: relative !important;
    display: block !important;
    width: 41px !important;
    height: 41px !important;
    min-height: 41px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid rgba(80, 157, 255, 0.34) !important;
    border-radius: 50% !important;
    background: rgba(19, 35, 67, 0.78) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
    transform: none !important;
  }

  body.contact-page .site-header .mobile-menu summary span,
  body.contact-page .site-header .mobile-menu summary::before,
  body.contact-page .site-header .mobile-menu summary::after,
  body.contact-page:not(.home-page) .site-header .mobile-menu summary span,
  body.contact-page:not(.home-page) .site-header .mobile-menu summary::before,
  body.contact-page:not(.home-page) .site-header .mobile-menu summary::after {
    position: absolute !important;
    left: 50% !important;
    display: block !important;
    width: 19px !important;
    height: 2px !important;
    margin: 0 !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    box-shadow: none !important;
    content: "" !important;
    transform: translateX(-50%) !important;
  }

  body.contact-page .site-header .mobile-menu summary span::before,
  body.contact-page .site-header .mobile-menu summary span::after,
  body.contact-page:not(.home-page) .site-header .mobile-menu summary span::before,
  body.contact-page:not(.home-page) .site-header .mobile-menu summary span::after {
    display: none !important;
    content: none !important;
  }

  body.contact-page .site-header .mobile-menu summary::before,
  body.contact-page:not(.home-page) .site-header .mobile-menu summary::before {
    top: 14px !important;
  }

  body.contact-page .site-header .mobile-menu summary span,
  body.contact-page:not(.home-page) .site-header .mobile-menu summary span {
    top: 20px !important;
  }

  body.contact-page .site-header .mobile-menu summary::after,
  body.contact-page:not(.home-page) .site-header .mobile-menu summary::after {
    top: 26px !important;
  }

  body.contact-page main,
  body.contact-page:not(.home-page) main {
    padding-top: calc(92px + env(safe-area-inset-top)) !important;
    padding-bottom: calc(104px + env(safe-area-inset-bottom)) !important;
  }

  body.contact-page .contact-mobile-footer {
    font-family: var(--mobile-shell-font) !important;
    font-size: 11.5px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
  }
}

/* Contact Sketch-style icon pass: standalone homepage-style glyphs without an outer circle. */
@media (max-width: 760px) {
  body.contact-page .contact-mobile-icon,
  body.contact-page .contact-mobile-trust-item .contact-mobile-icon,
  body.contact-page .contact-method-grid .contact-mobile-icon,
  body.contact-page .contact-wechat-services .contact-mobile-icon,
  body.contact-page .contact-mobile-faq .contact-mobile-icon {
    display: inline-grid !important;
    place-items: center !important;
    width: var(--contact-sketch-icon-size, 36px) !important;
    height: var(--contact-sketch-icon-size, 36px) !important;
    min-width: var(--contact-sketch-icon-size, 36px) !important;
    flex: 0 0 var(--contact-sketch-icon-size, 36px) !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  body.contact-page .contact-mobile-trust-item .contact-mobile-icon {
    --contact-sketch-icon-size: 31px;
  }

  body.contact-page .contact-method-grid .contact-mobile-icon {
    --contact-sketch-icon-size: 36px;
  }

  body.contact-page .contact-wechat-services .contact-mobile-icon {
    --contact-sketch-icon-size: 34px;
  }

  body.contact-page .contact-mobile-faq .contact-mobile-icon {
    --contact-sketch-icon-size: 36px;
  }

  body.contact-page .contact-mobile-icon::before {
    width: 100% !important;
    height: 100% !important;
    content: "" !important;
    background: linear-gradient(135deg, #7af4ff 0%, #20a8ff 52%, #6fb8ff 100%) !important;
    -webkit-mask: var(--contact-icon-mask) center / contain no-repeat !important;
    mask: var(--contact-icon-mask) center / contain no-repeat !important;
    filter:
      drop-shadow(0 0 8px rgba(44, 205, 255, 0.58))
      drop-shadow(0 8px 12px rgba(18, 104, 255, 0.22)) !important;
  }

  body.contact-page .contact-mobile-icon-team::before,
  body.contact-page .contact-mobile-icon-plan::before,
  body.contact-page .contact-mobile-icon-secure::before,
  body.contact-page .contact-mobile-icon-lock::before,
  body.contact-page .contact-mobile-icon-service::before,
  body.contact-page .contact-mobile-icon-support::before,
  body.contact-page .contact-mobile-icon-doc::before {
    background: linear-gradient(180deg, #7af4ff 0%, #168bff 62%, #115dff 100%) !important;
  }
}

@media (max-width: 390px) {
  body.contact-page .contact-method-grid .contact-mobile-icon {
    --contact-sketch-icon-size: 34px;
  }
}

/* Contact typography sync: match the mobile homepage type scale. */
@media (max-width: 760px) {
  body.contact-page,
  body.contact-page:not(.home-page),
  body.contact-page .contact-mobile-redesign,
  body.contact-page .contact-mobile-redesign * {
    font-family: var(--mobile-shell-font, "PingFang SC", "HarmonyOS Sans SC", "Microsoft YaHei", Arial, sans-serif) !important;
    letter-spacing: 0 !important;
  }

  body.contact-page .site-header .brand span,
  body.contact-page:not(.home-page) .site-header .brand span {
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
  }

  body.contact-page .site-header .mobile-menu-panel a,
  body.contact-page .contact-mobile-menu-panel a {
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
  }

  body.contact-page .contact-mobile-kicker {
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
  }

  body.contact-page .contact-mobile-hero h1 {
    font-size: 28px !important;
    font-weight: 800 !important;
    line-height: 1.28 !important;
  }

  body.contact-page .contact-mobile-hero-copy > p:last-child {
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.7 !important;
  }

  body.contact-page .contact-mobile-trust-item strong {
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.22 !important;
  }

  body.contact-page .contact-mobile-trust-item em {
    font-size: 10px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
  }

  body.contact-page .contact-mobile-section-title h2,
  body.contact-page .contact-wechat-copy h2,
  body.contact-page .contact-mobile-faq h2 {
    font-size: 17px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
  }

  body.contact-page .contact-method-grid h3,
  body.contact-page .contact-wechat-services strong {
    font-size: 13.5px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
  }

  body.contact-page .contact-method-grid p,
  body.contact-page .contact-wechat-copy p,
  body.contact-page .contact-wechat-services p,
  body.contact-page .contact-mobile-faq p {
    font-size: 11px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
  }

  body.contact-page .contact-mobile-faq a {
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.1 !important;
  }

  body.contact-page .mobile-tabbar a,
  body.contact-page .site-mobile-tabbar a {
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.1 !important;
  }

  body.contact-page .contact-mobile-footer,
  body.contact-page .contact-mobile-footer p,
  body.contact-page .contact-mobile-footer a {
    font-size: 11.5px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
  }
}

@media (max-width: 390px) {
  body.contact-page .contact-mobile-hero h1 {
    font-size: 26px !important;
  }
}

/* Contact hero img2 background: image only, live HTML text stays on top. */
@media (max-width: 760px) {
  body.contact-page .contact-mobile-hero {
    background:
      linear-gradient(90deg, rgba(0, 8, 23, 0.92) 0%, rgba(0, 10, 28, 0.58) 45%, rgba(0, 12, 34, 0.04) 100%),
      linear-gradient(180deg, rgba(0, 8, 23, 0.06) 0%, rgba(0, 12, 31, 0.03) 60%, rgba(0, 16, 42, 0.72) 100%),
      url("generated/contact-hero-img2-vertical-tall-v3.jpg") center -96px / cover no-repeat !important;
  }

  body.contact-page .contact-mobile-hero::before {
    display: none !important;
    content: "" !important;
    background: none !important;
  }

  body.contact-page .contact-mobile-hero::after {
    display: none !important;
    content: none !important;
    background: none !important;
  }

  body.contact-page .contact-mobile-redesign {
    margin-top: calc(-92px - env(safe-area-inset-top)) !important;
    padding-top: calc(92px + env(safe-area-inset-top)) !important;
    overflow: hidden !important;
    background: #00102a !important;
  }

  body.contact-page .contact-mobile-redesign::before {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    left: 0 !important;
    z-index: 0 !important;
    height: calc(760px + env(safe-area-inset-top)) !important;
    content: "" !important;
    pointer-events: none !important;
    background: url("generated/contact-hero-img2-vertical-tall-v3.jpg") center -132px / cover no-repeat !important;
    background-position: center -132px !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
  }

  body.contact-page .contact-mobile-hero {
    min-height: 286px !important;
    background: transparent !important;
    padding-top: 30px !important;
    padding-bottom: 18px !important;
  }

  body.contact-page .contact-mobile-main-panel {
    margin-top: 10px !important;
    padding-top: 16px !important;
  }

  body.contact-page .contact-method-grid {
    margin-top: 14px !important;
  }

  body.contact-page .contact-method-grid article {
    grid-template-columns: 34px minmax(0, 1fr) !important;
    gap: 8px !important;
    min-height: 108px !important;
    align-items: start !important;
    padding: 18px 10px !important;
  }

  body.contact-page .contact-method-grid .contact-mobile-icon {
    --contact-sketch-icon-size: 34px !important;
    margin-top: 2px !important;
  }

  body.contact-page .contact-method-grid h3 {
    white-space: nowrap !important;
  }

  body.contact-page .contact-method-grid article:first-child p:first-of-type {
    font-size: 11px !important;
    white-space: nowrap !important;
  }

  body.contact-page .contact-method-grid article:nth-child(4) p:first-of-type {
    font-size: 10.5px !important;
    line-height: 1.35 !important;
    word-break: break-all !important;
  }

  body.contact-page .contact-mobile-trust {
    display: grid !important;
    grid-template-columns: repeat(3, max-content) !important;
    justify-content: start !important;
    align-items: center !important;
    width: min(354px, calc(100% - 28px)) !important;
    margin-top: 28px !important;
    margin-left: 0 !important;
    gap: 18px !important;
  }

  body.contact-page .contact-mobile-trust-item {
    grid-template-columns: 22px max-content !important;
    column-gap: 6px !important;
    align-items: center !important;
  }

  body.contact-page .contact-mobile-trust-item .contact-mobile-icon {
    --contact-sketch-icon-size: 18px !important;
    grid-row: span 2 !important;
  }

  body.contact-page .contact-mobile-trust-item strong {
    font-size: 11.5px !important;
    line-height: 1.15 !important;
  }

  body.contact-page .contact-mobile-trust-item em {
    margin-top: 2px !important;
    font-size: 9.5px !important;
    line-height: 1.2 !important;
  }

  body.contact-page .contact-mobile-hero {
    min-height: 252px !important;
    padding-bottom: 10px !important;
  }

  body.contact-page .contact-mobile-hero-copy > p:last-child {
    margin-top: 12px !important;
    line-height: 1.55 !important;
  }

  body.contact-page .contact-mobile-hero-copy > p:last-child::after {
    width: 30px !important;
    height: 1px !important;
    margin-top: 10px !important;
    transform: none !important;
    box-shadow: 0 0 7px rgba(34, 215, 255, 0.36) !important;
  }

  body.contact-page .contact-mobile-main-panel {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body.contact-page .contact-method-panel {
    box-sizing: border-box !important;
    width: calc(100% - 28px) !important;
    margin: 0 auto !important;
    padding: 18px 16px 16px !important;
    border: 1px solid rgba(62, 142, 255, 0.32) !important;
    border-radius: 16px !important;
    background:
      radial-gradient(circle at 78% 20%, rgba(19, 111, 255, 0.15), transparent 38%),
      linear-gradient(180deg, rgba(4, 25, 61, 0.9), rgba(2, 15, 42, 0.94)) !important;
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.05),
      0 18px 50px rgba(0, 0, 0, 0.18) !important;
  }

  body.contact-page .contact-method-grid {
    margin-top: 14px !important;
    border-radius: 13px !important;
    background: rgba(2, 18, 48, 0.54) !important;
  }

  body.contact-page .contact-mobile-section-title h2::after {
    width: 30px !important;
    height: 1px !important;
    margin-top: 7px !important;
    transform: none !important;
    box-shadow: 0 0 7px rgba(34, 215, 255, 0.36) !important;
  }

  body.contact-page .contact-method-grid article {
    grid-template-columns: 34px minmax(0, 1fr) !important;
    gap: 10px !important;
    min-height: 96px !important;
    align-items: center !important;
    padding: 14px 8px !important;
  }

  body.contact-page .contact-method-grid article > div {
    min-width: 0 !important;
  }

  body.contact-page .contact-method-grid .contact-mobile-icon {
    display: inline-grid !important;
    place-items: center !important;
    justify-self: center !important;
    width: 29px !important;
    height: 29px !important;
    min-width: 29px !important;
    margin-top: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body.contact-page .contact-method-grid .contact-mobile-icon::before {
    width: 29px !important;
    height: 29px !important;
    background: linear-gradient(135deg, #75efff 0%, #22a8ff 56%, #1677ff 100%) !important;
    filter:
      drop-shadow(0 0 10px rgba(44, 205, 255, 0.5))
      drop-shadow(0 7px 12px rgba(18, 104, 255, 0.24)) !important;
  }

  body.contact-page .contact-method-grid .contact-mobile-icon-chat {
    --contact-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8.5'/%3E%3Cpath d='M12 7.5V12l3 2'/%3E%3C/svg%3E") !important;
  }

  body.contact-page .contact-method-grid .contact-mobile-icon-lock {
    --contact-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='10' width='14' height='10' rx='2'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3'/%3E%3Cpath d='M12 14v2'/%3E%3C/svg%3E") !important;
  }

  body.contact-page .contact-method-grid .contact-mobile-icon-pin {
    --contact-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s7-5.8 7-12a7 7 0 0 0-14 0c0 6.2 7 12 7 12Z'/%3E%3Ccircle cx='12' cy='9' r='2.4'/%3E%3C/svg%3E") !important;
  }

  body.contact-page .contact-method-grid .contact-mobile-icon-web {
    --contact-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18'/%3E%3Cpath d='M12 3a14 14 0 0 1 0 18'/%3E%3Cpath d='M12 3a14 14 0 0 0 0 18'/%3E%3C/svg%3E") !important;
  }

  body.contact-page .contact-method-grid h3 {
    margin-bottom: 5px !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
  }

  body.contact-page .contact-method-grid p {
    font-size: 10.5px !important;
    line-height: 1.48 !important;
    overflow-wrap: anywhere !important;
  }

  body.contact-page .contact-wechat-panel {
    margin-top: 18px !important;
  }

  body.contact-page .contact-method-grid article:first-child p:first-of-type,
  body.contact-page .contact-method-grid article:nth-child(4) p:first-of-type {
    font-size: 9.5px !important;
    line-height: 1.35 !important;
  }

  body.contact-page .contact-method-grid article:nth-child(3) p {
    font-size: 9.5px !important;
    line-height: 1.45 !important;
  }
}

/* Contact hero title bump only. */
@media (max-width: 760px) {
  body.contact-page .contact-mobile-hero h1 {
    font-size: clamp(34px, 8.6vw, 38px) !important;
    font-weight: 900 !important;
    line-height: 1.12 !important;
    letter-spacing: 0.055em !important;
  }
}

/* Contact WeChat panel alignment. */
@media (max-width: 760px) {
  body.contact-page .contact-wechat-panel {
    box-sizing: border-box !important;
    grid-template-columns: clamp(104px, 27vw, 118px) clamp(120px, 32vw, 140px) minmax(78px, 1fr) !important;
    width: calc(100% - 28px) !important;
    margin: 18px auto 0 !important;
    padding: 22px clamp(12px, 3.7vw, 16px) !important;
    gap: clamp(6px, 1.6vw, 8px) !important;
  }

  body.contact-page .contact-wechat-copy,
  body.contact-page .contact-wechat-services {
    min-width: 0 !important;
  }

  body.contact-page .contact-wechat-copy h2 {
    font-size: 22px !important;
    line-height: 1.28 !important;
  }

  body.contact-page .contact-wechat-copy p {
    font-size: 11px !important;
    line-height: 1.65 !important;
    white-space: nowrap !important;
  }

  body.contact-page .contact-wechat-qr {
    width: clamp(120px, 32vw, 140px) !important;
  }

  body.contact-page .contact-wechat-qr img {
    width: clamp(120px, 32vw, 140px) !important;
    height: clamp(120px, 32vw, 140px) !important;
  }

  body.contact-page .contact-wechat-qr p {
    font-size: 11.5px !important;
    line-height: 1.35 !important;
    white-space: nowrap !important;
  }

  body.contact-page .contact-wechat-services {
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-auto-flow: row !important;
    align-content: center !important;
    justify-items: stretch !important;
    gap: 15px !important;
  }

  body.contact-page .contact-wechat-services div {
    display: grid !important;
    grid-template-columns: clamp(30px, 7.8vw, 34px) minmax(0, 1fr) !important;
    grid-template-areas:
      "icon title"
      "icon desc" !important;
    grid-template-rows: auto auto !important;
    gap: clamp(7px, 2vw, 8px) !important;
    row-gap: 2px !important;
    align-items: center !important;
    min-width: 0 !important;
    text-align: left !important;
  }

  body.contact-page .contact-wechat-services .contact-mobile-icon {
    grid-area: icon !important;
    align-self: center !important;
    display: inline-grid !important;
    place-items: center !important;
    width: clamp(28px, 7.2vw, 32px) !important;
    height: clamp(28px, 7.2vw, 32px) !important;
    min-width: clamp(28px, 7.2vw, 32px) !important;
    flex: 0 0 clamp(28px, 7.2vw, 32px) !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  body.contact-page .contact-wechat-services .contact-mobile-icon::before {
    width: 100% !important;
    height: 100% !important;
    background: linear-gradient(135deg, #75efff 0%, #22a8ff 56%, #1677ff 100%) !important;
    filter:
      drop-shadow(0 0 10px rgba(44, 205, 255, 0.5))
      drop-shadow(0 7px 12px rgba(18, 104, 255, 0.24)) !important;
  }

  body.contact-page .contact-wechat-services strong {
    grid-area: title !important;
    display: block !important;
    font-size: 12.5px !important;
    line-height: 1.22 !important;
    white-space: nowrap !important;
  }

  body.contact-page .contact-wechat-services p {
    grid-area: desc !important;
    margin: 0 !important;
    font-size: 10px !important;
    line-height: 1.35 !important;
    white-space: nowrap !important;
  }
}

/* Contact linear icon refinement. */
@media (max-width: 760px) {
  body.contact-page .contact-mobile-icon-plan {
    --contact-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9' cy='7' r='4'/%3E%3Cpath d='M22 21v-2a4 4 0 0 0-3-3.87'/%3E%3Cpath d='M16 3.13a4 4 0 0 1 0 7.75'/%3E%3C/svg%3E") !important;
  }

  body.contact-page .contact-mobile-icon-doc {
    --contact-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8Z'/%3E%3Cpath d='M14 2v6h6'/%3E%3Cpath d='M8 13h8'/%3E%3Cpath d='M8 17h5'/%3E%3C/svg%3E") !important;
  }

  body.contact-page .contact-mobile-icon-support {
    --contact-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 13a9 9 0 0 1 18 0'/%3E%3Cpath d='M5 13h3v7H5a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2Z'/%3E%3Cpath d='M16 13h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2h-3v-7Z'/%3E%3Cpath d='M16 20h-4'/%3E%3C/svg%3E") !important;
  }

  body.contact-page .contact-mobile-icon-question {
    --contact-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9.1 9a3 3 0 1 1 5.2 2c-1.4 1.2-2.3 1.9-2.3 3.6'/%3E%3Cpath d='M12 19h.01'/%3E%3C/svg%3E") !important;
  }

  body.contact-page .contact-wechat-services div {
    grid-template-columns: clamp(21px, 5.4vw, 23px) minmax(0, 1fr) !important;
    column-gap: 10px !important;
  }

  body.contact-page .contact-wechat-services .contact-mobile-icon {
    width: clamp(21px, 5.4vw, 23px) !important;
    height: clamp(21px, 5.4vw, 23px) !important;
    min-width: clamp(21px, 5.4vw, 23px) !important;
    flex-basis: clamp(21px, 5.4vw, 23px) !important;
  }

  body.contact-page .contact-wechat-services .contact-mobile-icon::before,
  body.contact-page .contact-mobile-faq .contact-mobile-icon::before {
    background: linear-gradient(135deg, #75efff 0%, #25b7ff 58%, #168bff 100%) !important;
    filter:
      drop-shadow(0 0 6px rgba(44, 205, 255, 0.42))
      drop-shadow(0 4px 7px rgba(18, 104, 255, 0.18)) !important;
  }

  body.contact-page .contact-mobile-faq {
    grid-template-columns: 32px minmax(0, 1fr) auto !important;
    gap: 12px !important;
  }

  body.contact-page .contact-mobile-faq .contact-mobile-icon {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    flex-basis: 28px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  body.contact-page .contact-mobile-faq .contact-mobile-icon::before {
    width: 100% !important;
    height: 100% !important;
  }
}

/* Contact brand lock follows the shared mobile tab shell. */
@media (max-width: 760px) {
  body.contact-page .site-header .brand,
  body.contact-page:not(.home-page) .site-header .brand {
    display: inline-flex !important;
    align-items: center !important;
    flex: 0 1 auto !important;
    width: auto !important;
    max-width: calc(100% - 50px) !important;
    min-width: 0 !important;
    height: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 8px !important;
    font-family: var(--mobile-shell-font, "PingFang SC", "HarmonyOS Sans SC", "Microsoft YaHei", Arial, sans-serif) !important;
  }

  body.contact-page .site-header .brand-mark,
  body.contact-page:not(.home-page) .site-header .brand-mark {
    display: block !important;
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    flex: 0 0 28px !important;
    object-fit: contain !important;
  }

  body.contact-page .site-header .brand span,
  body.contact-page:not(.home-page) .site-header .brand span {
    display: block !important;
    max-width: calc(100vw - 142px) !important;
    overflow: hidden !important;
    font-family: var(--mobile-shell-font, "PingFang SC", "HarmonyOS Sans SC", "Microsoft YaHei", Arial, sans-serif) !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }
}

/* Contact WeChat columns: equal height and center divider. */
@media (max-width: 760px) {
  body.contact-page .contact-wechat-panel {
    --contact-wechat-column-height: clamp(168px, 42vw, 184px);
    align-items: stretch !important;
  }

  body.contact-page .contact-wechat-copy,
  body.contact-page .contact-wechat-qr,
  body.contact-page .contact-wechat-services {
    align-self: stretch !important;
    min-height: var(--contact-wechat-column-height) !important;
    height: var(--contact-wechat-column-height) !important;
  }

  body.contact-page .contact-wechat-copy {
    position: relative !important;
    display: grid !important;
    align-content: center !important;
    padding-right: 8px !important;
  }

  body.contact-page .contact-wechat-copy::after {
    position: absolute !important;
    top: 0 !important;
    right: -4px !important;
    bottom: 0 !important;
    width: 1px !important;
    content: "" !important;
    background: linear-gradient(
      180deg,
      transparent 0%,
      rgba(68, 157, 255, 0.34) 18%,
      rgba(68, 157, 255, 0.34) 82%,
      transparent 100%
    ) !important;
  }

  body.contact-page .contact-wechat-qr {
    display: grid !important;
    align-content: center !important;
    justify-items: center !important;
  }

  body.contact-page .contact-wechat-services {
    align-content: space-between !important;
    gap: 0 !important;
  }
}

/* Contact WeChat visible column alignment. */
@media (max-width: 760px) {
  body.contact-page .contact-wechat-panel {
    --contact-wechat-visible-height: clamp(190px, 46vw, 208px);
    align-items: stretch !important;
  }

  body.contact-page .contact-wechat-copy,
  body.contact-page .contact-wechat-qr,
  body.contact-page .contact-wechat-services {
    align-self: stretch !important;
    box-sizing: border-box !important;
    min-height: var(--contact-wechat-visible-height) !important;
    height: var(--contact-wechat-visible-height) !important;
  }

  body.contact-page .contact-wechat-copy {
    position: relative !important;
    display: grid !important;
    align-content: center !important;
    padding-right: 12px !important;
    border-right: 1px solid rgba(68, 157, 255, 0.32) !important;
  }

  body.contact-page .contact-wechat-copy::after {
    display: none !important;
    content: none !important;
  }

  body.contact-page .contact-wechat-qr {
    display: grid !important;
    align-content: center !important;
    justify-items: center !important;
  }

  body.contact-page .contact-wechat-services {
    display: grid !important;
    align-content: center !important;
    gap: 0 !important;
    padding-block: 2px !important;
  }
}

/* Contact WeChat title rule is horizontal, not a vertical divider. */
@media (max-width: 760px) {
  body.contact-page .contact-wechat-copy {
    border-right: 0 !important;
    padding-right: 0 !important;
  }

  body.contact-page .contact-wechat-copy::after {
    display: none !important;
    content: none !important;
  }

  body.contact-page .contact-wechat-copy h2::after {
    display: block !important;
    width: 34px !important;
    height: 2px !important;
    margin-top: 18px !important;
    border-radius: 999px !important;
    content: "" !important;
    background: linear-gradient(90deg, #22d7ff, #1677ff) !important;
    box-shadow: 0 0 8px rgba(34, 215, 255, 0.46) !important;
  }
}

@media (max-width: 760px) {
  body.contact-page .contact-wechat-copy p {
    margin-top: 16px !important;
  }
}

/* Contact WeChat service spacing. */
@media (max-width: 760px) {
  body.contact-page .contact-wechat-services {
    align-content: center !important;
    gap: 18px !important;
    padding-block: 0 !important;
  }
}

/* Contact WeChat side columns align to the QR content bounds. */
@media (max-width: 760px) {
  body.contact-page .contact-wechat-panel {
    --contact-wechat-content-height: clamp(154px, 39vw, 168px);
    align-items: center !important;
  }

  body.contact-page .contact-wechat-copy,
  body.contact-page .contact-wechat-qr,
  body.contact-page .contact-wechat-services {
    align-self: center !important;
    min-height: var(--contact-wechat-content-height) !important;
    height: var(--contact-wechat-content-height) !important;
  }

  body.contact-page .contact-wechat-copy {
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    align-content: normal !important;
    padding-right: 0 !important;
  }

  body.contact-page .contact-wechat-copy h2 {
    margin: 0 !important;
  }

  body.contact-page .contact-wechat-copy p {
    margin: 0 !important;
  }

  body.contact-page .contact-wechat-qr {
    display: grid !important;
    align-content: space-between !important;
    justify-items: center !important;
  }

  body.contact-page .contact-wechat-qr p {
    margin: 0 !important;
  }

  body.contact-page .contact-wechat-services {
    display: grid !important;
    align-content: space-between !important;
    gap: 0 !important;
    padding-block: 0 !important;
  }
}

/* Contact WeChat side columns should match the QR image height. */
@media (max-width: 760px) {
  body.contact-page .contact-wechat-panel {
    --contact-wechat-side-height: clamp(120px, 32vw, 140px);
  }

  body.contact-page .contact-wechat-copy,
  body.contact-page .contact-wechat-services {
    align-self: center !important;
    min-height: var(--contact-wechat-side-height) !important;
    height: var(--contact-wechat-side-height) !important;
  }

  body.contact-page .contact-wechat-qr {
    min-height: auto !important;
    height: auto !important;
    align-self: center !important;
    align-content: center !important;
  }

  body.contact-page .contact-wechat-services {
    gap: clamp(10px, 2.8vw, 14px) !important;
    align-content: center !important;
  }
}

/* Contact WeChat title typography refinement. */
@media (max-width: 760px) {
  body.contact-page .contact-wechat-copy h2 {
    font-family: var(--mobile-shell-font, "PingFang SC", "HarmonyOS Sans SC", "Microsoft YaHei", Arial, sans-serif) !important;
    font-size: clamp(20px, 5vw, 22px) !important;
    font-weight: 700 !important;
    line-height: 1.36 !important;
    letter-spacing: 0 !important;
    text-shadow: 0 3px 10px rgba(0, 0, 0, 0.24) !important;
  }

  body.contact-page .contact-wechat-copy h2 span {
    font-weight: 700 !important;
  }
}

/* Contact WeChat QR caption spacing. */
@media (max-width: 760px) {
  body.contact-page .contact-wechat-qr {
    row-gap: 12px !important;
  }

  body.contact-page .contact-wechat-qr p {
    margin: 0 !important;
    color: rgba(183, 198, 221, 0.86) !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
    text-align: center !important;
    white-space: nowrap !important;
  }
}

/* Contact WeChat QR optical centering. */
@media (max-width: 760px) {
  body.contact-page .contact-wechat-qr {
    justify-self: center !important;
    justify-items: center !important;
    text-align: center !important;
    transform: none !important;
  }
}

/* Contact title accent lines: thinner mobile rule. */
@media (max-width: 760px) {
  body.contact-page .contact-mobile-hero-copy > p:last-child::after,
  body.contact-page .contact-mobile-section-title h2::after,
  body.contact-page .contact-wechat-copy h2::after {
    width: 34px !important;
    height: 1px !important;
    border-radius: 999px !important;
    background: linear-gradient(90deg, #22d7ff, #1677ff) !important;
    transform: scaleY(0.78) !important;
    transform-origin: left center !important;
    box-shadow: 0 0 4px rgba(34, 215, 255, 0.22) !important;
  }
}

/* Contact WeChat balanced QR gutters. */
@media (max-width: 760px) {
  body.contact-page .contact-wechat-panel {
    grid-template-columns: minmax(96px, 1fr) clamp(120px, 32vw, 140px) minmax(96px, 1fr) !important;
    column-gap: clamp(8px, 2vw, 12px) !important;
  }

  body.contact-page .contact-wechat-copy,
  body.contact-page .contact-wechat-services {
    justify-self: stretch !important;
  }

  body.contact-page .contact-wechat-qr {
    justify-self: center !important;
    transform: none !important;
  }
}

/* Contact mobile module order. */
@media (max-width: 760px) {
  body.contact-page .contact-mobile-main-panel {
    display: flex !important;
    flex-direction: column !important;
  }

  body.contact-page .contact-wechat-panel {
    order: 1 !important;
    margin-top: 0 !important;
  }

  body.contact-page .contact-method-panel {
    order: 2 !important;
    margin: 18px auto 0 !important;
  }

  body.contact-page .contact-mobile-faq {
    order: 3 !important;
  }
}

/* Contact FAQ compact strip: match the lighter mobile reference block. */
@media (max-width: 760px) {
  body.contact-page .contact-mobile-faq {
    box-sizing: border-box !important;
    display: grid !important;
    grid-template-columns: 34px minmax(0, 1fr) auto !important;
    align-items: center !important;
    width: calc(100% - 28px) !important;
    margin: 16px auto 0 !important;
    padding: 14px 16px !important;
    gap: 12px !important;
    border: 1px solid rgba(50, 135, 255, 0.28) !important;
    border-radius: 12px !important;
    background:
      radial-gradient(circle at 10% 50%, rgba(19, 107, 255, 0.2), transparent 42%),
      rgba(2, 20, 50, 0.62) !important;
  }

  body.contact-page .contact-mobile-faq .contact-mobile-icon {
    display: inline-grid !important;
    place-items: center !important;
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    flex-basis: 30px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  body.contact-page .contact-mobile-faq .contact-mobile-icon::before {
    width: 100% !important;
    height: 100% !important;
    background: linear-gradient(135deg, #75efff 0%, #25b7ff 58%, #168bff 100%) !important;
    filter:
      drop-shadow(0 0 6px rgba(44, 205, 255, 0.42))
      drop-shadow(0 4px 7px rgba(18, 104, 255, 0.18)) !important;
  }

  body.contact-page .contact-mobile-faq h2 {
    margin: 0 !important;
    color: #f8fbff !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
  }

  body.contact-page .contact-mobile-faq p {
    margin: 4px 0 0 !important;
    color: rgba(183, 198, 221, 0.78) !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
    white-space: nowrap !important;
  }

  body.contact-page .contact-mobile-faq a {
    position: relative !important;
    isolation: isolate !important;
    min-width: 112px !important;
    height: 22px !important;
    min-height: 22px !important;
    max-height: 22px !important;
    padding: 0 18px !important;
    column-gap: 12px !important;
    border: 0 !important;
    border-radius: 999px !important;
    color: #ffffff !important;
    background: transparent !important;
    box-shadow: none !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
  }

  body.contact-page .contact-mobile-faq a::before {
    position: absolute !important;
    inset: 50% 0 auto !important;
    z-index: -1 !important;
    height: 22px !important;
    border: 1px solid rgba(48, 130, 255, 0.24) !important;
    border-radius: 999px !important;
    content: "" !important;
    background: rgba(5, 39, 94, 0.48) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
    transform: translateY(-50%) !important;
  }

  body.contact-page .contact-mobile-faq a,
  body.contact-page .contact-mobile-faq a:hover,
  body.contact-page .contact-mobile-faq a:visited,
  body.contact-page .contact-mobile-faq a:focus-visible,
  body.contact-page .contact-mobile-faq a span {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
  }
}

/* Contact hero visual bleed: soften the image boundary without moving the focal art. */
@media (max-width: 760px) {
  body.contact-page main,
  body.contact-page:not(.home-page) main,
  body.contact-page .contact-mobile-redesign {
    overflow: visible !important;
  }

  body.contact-page .contact-mobile-redesign {
    background: transparent !important;
  }

  body.contact-page,
  body.contact-page:not(.home-page) {
    overflow-x: hidden !important;
  }

  body.contact-page .contact-mobile-redesign::before {
    left: 50% !important;
    right: auto !important;
    width: 100vw !important;
    top: calc(-72px - env(safe-area-inset-top)) !important;
    height: calc(832px + env(safe-area-inset-top)) !important;
    transform: translateX(-50%) !important;
    background-position: center -60px !important;
    background-size: min(100vw, 430px) auto !important;
    -webkit-mask-image: radial-gradient(ellipse 118% 92% at 62% 34%, #000 0%, #000 56%, rgba(0, 0, 0, 0.82) 70%, rgba(0, 0, 0, 0.32) 84%, transparent 100%) !important;
    mask-image: radial-gradient(ellipse 118% 92% at 62% 34%, #000 0%, #000 56%, rgba(0, 0, 0, 0.82) 70%, rgba(0, 0, 0, 0.32) 84%, transparent 100%) !important;
  }

  body.contact-page .contact-mobile-redesign::after {
    position: absolute !important;
    top: calc(-72px - env(safe-area-inset-top)) !important;
    right: auto !important;
    left: 50% !important;
    width: 100vw !important;
    z-index: 1 !important;
    height: calc(832px + env(safe-area-inset-top)) !important;
    transform: translateX(-50%) !important;
    content: "" !important;
    pointer-events: none !important;
    background:
      linear-gradient(180deg, #00102a 0%, rgba(0, 16, 42, 0.78) 78px, rgba(0, 16, 42, 0) 172px, rgba(0, 16, 42, 0) 74%, #00102a 100%),
      linear-gradient(90deg, #00102a 0%, rgba(0, 16, 42, 0.92) 12%, rgba(0, 16, 42, 0) 32%, rgba(0, 16, 42, 0) 72%, rgba(0, 16, 42, 0.88) 88%, #00102a 100%) !important;
  }

  body.contact-page .contact-mobile-hero,
  body.contact-page .contact-mobile-main-panel,
  body.contact-page .contact-mobile-footer {
    position: relative !important;
    z-index: 2 !important;
  }
}

/* Contact mobile visual standards lock: final shared type and control scale. */
@media (max-width: 760px) {
  body.contact-page,
  body.contact-page .contact-mobile-redesign,
  body.contact-page .contact-mobile-redesign * {
    font-family: var(--mobile-shell-font, "PingFang SC", "HarmonyOS Sans SC", "Microsoft YaHei", Arial, sans-serif) !important;
    letter-spacing: 0 !important;
  }

  body.contact-page .contact-mobile-panel,
  body.contact-page .contact-wechat-panel,
  body.contact-page .contact-mobile-faq {
    box-sizing: border-box !important;
    width: calc(100% - 36px) !important;
    max-width: 390px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.contact-page .contact-mobile-kicker {
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
  }

  body.contact-page .contact-mobile-hero h1 {
    font-size: clamp(34px, 8.6vw, 38px) !important;
    font-weight: 900 !important;
    line-height: 1.12 !important;
    letter-spacing: 0.055em !important;
  }

  body.contact-page .contact-mobile-hero-copy > p:last-child {
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.7 !important;
    letter-spacing: 0 !important;
  }

  body.contact-page .contact-mobile-trust-item strong {
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.22 !important;
  }

  body.contact-page .contact-mobile-trust-item em {
    font-size: 10.5px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
  }

  body.contact-page .contact-mobile-section-title h2 {
    font-size: 18px !important;
    font-weight: 800 !important;
    line-height: 1.35 !important;
  }

  body.contact-page .contact-mobile-section-title h2::after,
  body.contact-page .contact-mobile-hero-copy > p:last-child::after,
  body.contact-page .contact-wechat-copy h2::after {
    width: 34px !important;
    height: 1px !important;
    border-radius: 999px !important;
    background: linear-gradient(90deg, #22d7ff, #1677ff) !important;
    box-shadow: 0 0 4px rgba(34, 215, 255, 0.22) !important;
  }

  body.contact-page .contact-wechat-copy h2 {
    font-size: clamp(20px, 5vw, 22px) !important;
    font-weight: 700 !important;
    line-height: 1.36 !important;
    letter-spacing: 0 !important;
  }

  body.contact-page .contact-method-grid h3,
  body.contact-page .contact-wechat-services strong {
    font-size: 13.5px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
  }

  body.contact-page .contact-method-grid p,
  body.contact-page .contact-wechat-copy p,
  body.contact-page .contact-wechat-services p {
    font-size: 10.5px !important;
    font-weight: 400 !important;
    line-height: 1.48 !important;
  }

  body.contact-page .contact-method-grid article:first-child p:first-of-type,
  body.contact-page .contact-method-grid article:nth-child(3) p,
  body.contact-page .contact-method-grid article:nth-child(4) p:first-of-type {
    font-size: 9.5px !important;
  }

  body.contact-page .contact-wechat-qr p,
  body.contact-page .contact-mobile-faq p {
    font-size: 11px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
  }

  body.contact-page .contact-method-grid .contact-mobile-icon {
    --contact-sketch-icon-size: 34px;
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    flex-basis: 34px !important;
  }

  body.contact-page .contact-mobile-faq {
    grid-template-columns: 34px minmax(0, 1fr) auto !important;
    gap: 12px !important;
    padding: 14px 16px !important;
  }

  body.contact-page .contact-mobile-faq .contact-mobile-icon {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    flex-basis: 30px !important;
  }

  body.contact-page .contact-mobile-faq h2 {
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
  }

  body.contact-page .contact-mobile-faq a {
    min-width: 112px !important;
    height: 22px !important;
    min-height: 22px !important;
    max-height: 22px !important;
    padding: 0 18px !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
  }

  body.contact-page .contact-mobile-faq a::before {
    height: 22px !important;
  }

  body.contact-page .contact-mobile-footer,
  body.contact-page .contact-mobile-footer p,
  body.contact-page .contact-mobile-footer a {
    font-size: 11.5px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
  }

  body.contact-page .mobile-tabbar a,
  body.contact-page .site-mobile-tabbar a {
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.1 !important;
  }
}

/* Contact footer compact lock: reduce the reserved space above the mobile tabbar. */
@media (max-width: 760px) {
  body.contact-page main > section.contact-mobile-redesign,
  body.contact-page:not(.home-page) main > section.contact-mobile-redesign {
    padding-bottom: 0 !important;
  }

  body.contact-page .contact-mobile-footer {
    box-sizing: border-box !important;
    width: calc(100% - 36px) !important;
    max-width: 390px !important;
    min-height: 0 !important;
    margin: 14px auto 0 !important;
    padding: 12px 0 4px !important;
    display: grid !important;
    justify-items: center !important;
    gap: 5px !important;
    border-top: 1px solid rgba(67, 154, 255, 0.16) !important;
    background: transparent !important;
    text-align: center !important;
  }

  body.contact-page .contact-mobile-footer p {
    margin: 0 !important;
    color: rgba(180, 196, 219, 0.76) !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
  }

  body.contact-page .contact-mobile-footer a {
    color: #22d7ff !important;
    -webkit-text-fill-color: #22d7ff !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    text-decoration: none !important;
  }

  body.contact-page .contact-mobile-footer span {
    margin: 0 9px !important;
    color: rgba(180, 196, 219, 0.42) !important;
  }
}

/* Contact mobile footer compact pass: match the site-wide mobile legal footer height. */
@media (max-width: 760px) {
  body.contact-page .contact-mobile-footer {
    margin: 10px auto calc(108px + env(safe-area-inset-bottom)) !important;
    padding: 9px 0 2px !important;
    gap: 4px !important;
  }

  body.contact-page .contact-mobile-footer p {
    line-height: 1.28 !important;
  }

  body.contact-page .contact-mobile-footer p + p {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 4px 8px !important;
  }

  body.contact-page .contact-mobile-footer .mobile-police-beian {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
  }
}

/* Contact tabbar tap stability: keep the bottom nav visually steady on touch. */
@media (max-width: 760px) {
  body.contact-page nav.mobile-tabbar.site-mobile-tabbar,
  body.contact-page .mobile-tabbar.site-mobile-tabbar,
  body.contact-page .site-mobile-tabbar,
  body.contact-page .mobile-tabbar {
    opacity: 1 !important;
    transform: translate3d(-50%, 0, 0) !important;
    animation: none !important;
    will-change: auto !important;
  }

  body.contact-page nav.mobile-tabbar.site-mobile-tabbar a,
  body.contact-page .mobile-tabbar.site-mobile-tabbar a,
  body.contact-page .site-mobile-tabbar a,
  body.contact-page .mobile-tabbar a {
    -webkit-tap-highlight-color: transparent !important;
    user-select: none !important;
    touch-action: manipulation !important;
    transform: none !important;
    transition:
      color 160ms ease,
      background-color 160ms ease,
      box-shadow 160ms ease,
      filter 160ms ease !important;
  }

  body.contact-page nav.mobile-tabbar.site-mobile-tabbar a.pd-pressing,
  body.contact-page .mobile-tabbar.site-mobile-tabbar a.pd-pressing,
  body.contact-page .site-mobile-tabbar a.pd-pressing,
  body.contact-page .mobile-tabbar a.pd-pressing {
    transform: none !important;
  }

  body.contact-page nav.mobile-tabbar.site-mobile-tabbar a.is-active .mobile-tab-icon,
  body.contact-page nav.mobile-tabbar.site-mobile-tabbar a[aria-current="page"] .mobile-tab-icon,
  body.contact-page .mobile-tabbar.site-mobile-tabbar a.is-active .mobile-tab-icon,
  body.contact-page .mobile-tabbar.site-mobile-tabbar a[aria-current="page"] .mobile-tab-icon,
  body.contact-page .site-mobile-tabbar a.is-active .mobile-tab-icon,
  body.contact-page .site-mobile-tabbar a[aria-current="page"] .mobile-tab-icon,
  body.contact-page .mobile-tabbar a.is-active .mobile-tab-icon,
  body.contact-page .mobile-tabbar a[aria-current="page"] .mobile-tab-icon {
    transform: none !important;
    animation: none !important;
  }
}

/* Contact hero image cleanup: reduce the right-side dark haze on mobile. */
@media (max-width: 760px) {
  body.contact-page .contact-mobile-redesign::before {
    -webkit-mask-image:
      linear-gradient(180deg, #000 0%, #000 76%, rgba(0, 0, 0, 0.46) 90%, transparent 100%) !important;
    mask-image:
      linear-gradient(180deg, #000 0%, #000 76%, rgba(0, 0, 0, 0.46) 90%, transparent 100%) !important;
  }

  body.contact-page .contact-mobile-redesign::after {
    background:
      linear-gradient(
        180deg,
        rgba(0, 16, 42, 0.9) 0%,
        rgba(0, 16, 42, 0.48) 78px,
        rgba(0, 16, 42, 0) 172px,
        rgba(0, 16, 42, 0) 74%,
        #00102a 100%
      ),
      linear-gradient(
        90deg,
        rgba(0, 16, 42, 0.86) 0%,
        rgba(0, 16, 42, 0.56) 11%,
        rgba(0, 16, 42, 0) 31%,
        rgba(0, 16, 42, 0) 82%,
        rgba(0, 16, 42, 0.1) 94%,
        rgba(0, 16, 42, 0.22) 100%
      ) !important;
  }

  body.contact-page .contact-mobile-hero::after {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: auto !important;
    z-index: 1 !important;
    display: block !important;
    width: 14% !important;
    height: auto !important;
    content: "" !important;
    pointer-events: none !important;
    background:
      linear-gradient(
        90deg,
        rgba(0, 16, 42, 0) 0%,
        rgba(0, 16, 42, 0.55) 32%,
        rgba(0, 16, 42, 0.92) 70%,
        #00102a 100%
      ) !important;
  }
}

/* Contact hero right edge cleanup: keep the hero art position, hide only the source-image edge. */
@media (max-width: 760px) {
  body.contact-page .contact-mobile-redesign::before {
    background-position: center -60px !important;
    background-size: min(100vw, 430px) auto !important;
    -webkit-mask-image:
      linear-gradient(90deg, #000 0%, #000 92%, rgba(0, 0, 0, 0.42) 97%, transparent 100%),
      linear-gradient(180deg, #000 0%, #000 76%, rgba(0, 0, 0, 0.46) 90%, transparent 100%) !important;
    mask-image:
      linear-gradient(90deg, #000 0%, #000 92%, rgba(0, 0, 0, 0.42) 97%, transparent 100%),
      linear-gradient(180deg, #000 0%, #000 76%, rgba(0, 0, 0, 0.46) 90%, transparent 100%) !important;
    -webkit-mask-composite: source-in !important;
    mask-composite: intersect !important;
  }

  body.contact-page .contact-mobile-redesign::after {
    background:
      linear-gradient(
        180deg,
        rgba(0, 16, 42, 0.9) 0%,
        rgba(0, 16, 42, 0.48) 78px,
        rgba(0, 16, 42, 0) 172px,
        rgba(0, 16, 42, 0) 74%,
        #00102a 100%
      ),
      linear-gradient(
        90deg,
        rgba(0, 16, 42, 0.86) 0%,
        rgba(0, 16, 42, 0.56) 11%,
        rgba(0, 16, 42, 0) 31%,
        rgba(0, 16, 42, 0) 86%,
        rgba(0, 16, 42, 0.46) 96%,
        #00102a 100%
      ) !important;
  }
}

/* Contact mobile bottom tabbar final style. */
.contact-mobile-call-fab {
  display: none;
}

@media (max-width: 760px) {
  body.contact-page .contact-mobile-call-fab {
    position: fixed !important;
    right: max(16px, env(safe-area-inset-right)) !important;
    bottom: calc(92px + env(safe-area-inset-bottom)) !important;
    z-index: 1310 !important;
    box-sizing: border-box !important;
    display: inline-flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 2px !important;
    width: 58px !important;
    min-width: 58px !important;
    height: 58px !important;
    min-height: 58px !important;
    padding: 5px !important;
    color: #ffffff !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    border: 1px solid rgba(126, 232, 255, 0.62) !important;
    border-radius: 50% !important;
    background: linear-gradient(135deg, #168cff 0%, #0751c9 100%) !important;
    box-shadow:
      0 10px 24px rgba(0, 48, 132, 0.38),
      inset 0 1px 0 rgba(255, 255, 255, 0.28) !important;
    transform: translateZ(0) !important;
    transition: transform 160ms ease, filter 160ms ease !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  body.contact-page .contact-mobile-call-fab svg {
    width: 22px !important;
    height: 22px !important;
    flex: 0 0 22px !important;
    fill: currentColor !important;
  }

  body.contact-page .contact-mobile-call-fab:active {
    transform: translateY(1px) !important;
    filter: brightness(0.95) !important;
  }

  body.contact-page .contact-mobile-call-fab:focus-visible {
    outline: 3px solid rgba(124, 236, 255, 0.9) !important;
    outline-offset: 3px !important;
  }

  html body.contact-page nav.mobile-tabbar.site-mobile-tabbar,
  html body.contact-page:not(.home-page) nav.mobile-tabbar.site-mobile-tabbar,
  html body.contact-page .mobile-tabbar.site-mobile-tabbar,
  html body.contact-page .site-mobile-tabbar.mobile-tabbar {
    position: fixed !important;
    top: auto !important;
    left: 50% !important;
    right: auto !important;
    bottom: 0 !important;
    z-index: 1300 !important;
    box-sizing: border-box !important;
    display: grid !important;
    visibility: visible !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    align-items: center !important;
    gap: 0 !important;
    width: min(calc(100vw - 24px), 426px) !important;
    max-width: 426px !important;
    min-height: 78px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 10px 12px max(10px, env(safe-area-inset-bottom)) !important;
    border: 1px solid rgba(71, 155, 255, 0.34) !important;
    border-bottom: 0 !important;
    border-radius: 24px 24px 0 0 !important;
    background: linear-gradient(180deg, rgba(8, 23, 52, 0.96), rgba(2, 10, 27, 0.98)) !important;
    box-shadow:
      0 -18px 44px rgba(0, 0, 0, 0.38),
      inset 0 1px 0 rgba(255, 255, 255, 0.07) !important;
    transform: translate3d(-50%, 0, 0) !important;
    opacity: 1 !important;
    overflow: hidden !important;
    animation: none !important;
    backdrop-filter: blur(18px) !important;
    -webkit-backdrop-filter: blur(18px) !important;
  }

  html body.contact-page nav.mobile-tabbar.site-mobile-tabbar > a,
  html body.contact-page .mobile-tabbar.site-mobile-tabbar > a {
    min-height: 58px !important;
    height: auto !important;
    padding: 4px 0 2px !important;
    gap: 5px !important;
    color: var(--mobile-tabbar-label) !important;
    -webkit-text-fill-color: var(--mobile-tabbar-label) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  html body.contact-page nav.mobile-tabbar.site-mobile-tabbar > a.is-active,
  html body.contact-page nav.mobile-tabbar.site-mobile-tabbar > a[aria-current="page"],
  html body.contact-page .mobile-tabbar.site-mobile-tabbar > a.is-active,
  html body.contact-page .mobile-tabbar.site-mobile-tabbar > a[aria-current="page"] {
    color: var(--mobile-tabbar-active) !important;
    -webkit-text-fill-color: var(--mobile-tabbar-active) !important;
  }
}

@media (max-width: 760px) and (prefers-reduced-motion: reduce) {
  body.contact-page .contact-mobile-call-fab {
    transition: none !important;
  }
}
