  :root {
    /* 鐗堝績锛氭鏂囨部鐢ㄦ敼鐗堝墠鐨 1200 / 22px锛屾暣骞呭彧鐢ㄥ湪涓€绾у鑸笂锛?-nav-gutter锛夈€
       璇曡繃姝ｆ枃涔熸暣骞咃紝鍙嶉鏄?澶浜嗭紝鐪肩潧鐪嬬潃濂界疮"锛屽凡缁忛€€鍥炴潵 */
    --wrap: 1200px;
    --gutter: 22px;
    --nav-gutter: clamp(20px, 2.4vw, 44px);
    --bg: #fafbfd;
    --bg-tint: #edf3fa;
    --card: #ffffff;
    --ink: #101d33;
    --ink-2: #4e5f79;
    --ink-3: #8594ab;
    --brand: #0a58ca;
    --accent: #0a84ff;
    --cyan: #23b8e4;
    --copper: #d9560b;
    --copper-bg: #fdeee1;
    --navy: #0a1c36;
    --navy-card: #12294b;
    --ink-on-navy: #eaf1fa;
    --ink2-on-navy: #93a9c6;
    --cyan-on-navy: #4fc3ec;
    --hairline: rgba(16, 29, 51, .1);
    --hairline-navy: rgba(255, 255, 255, .14);
    --nav-bg: rgba(250, 251, 253, .8);
    --shadow: 0 10px 34px rgba(16, 29, 51, .08);
    --grad-a: #0a84ff;
    --grad-b: #23b8e4;
    --grad-c: #64d8f5;
  }
  @media (prefers-color-scheme: dark) {
    :root {
      --bg: #070c16;
      --bg-tint: #0d1524;
      --card: #131e33;
      --ink: #e8eef8;
      --ink-2: #9fb0c8;
      --ink-3: #6c7d96;
      --brand: #4b9fff;
      --accent: #3d9bff;
      --copper: #ff8a3d;
      --copper-bg: rgba(255, 138, 61, .14);
      --navy: #060e1c;
      --navy-card: #101f3a;
      --hairline: rgba(232, 238, 248, .12);
      --nav-bg: rgba(7, 12, 22, .75);
      --shadow: 0 10px 34px rgba(0, 0, 0, .5);
    }
  }
  :root[data-theme="dark"] {
    --bg: #070c16;
    --bg-tint: #0d1524;
    --card: #131e33;
    --ink: #e8eef8;
    --ink-2: #9fb0c8;
    --ink-3: #6c7d96;
    --brand: #4b9fff;
    --accent: #3d9bff;
    --copper: #ff8a3d;
    --copper-bg: rgba(255, 138, 61, .14);
    --navy: #060e1c;
    --navy-card: #101f3a;
    --hairline: rgba(232, 238, 248, .12);
    --nav-bg: rgba(7, 12, 22, .75);
    --shadow: 0 10px 34px rgba(0, 0, 0, .5);
  }
  :root[data-theme="light"] {
    --bg: #fafbfd;
    --bg-tint: #edf3fa;
    --card: #ffffff;
    --ink: #101d33;
    --ink-2: #4e5f79;
    --ink-3: #8594ab;
    --brand: #0a58ca;
    --accent: #0a84ff;
    --copper: #d9560b;
    --copper-bg: #fdeee1;
    --navy: #0a1c36;
    --navy-card: #12294b;
    --hairline: rgba(16, 29, 51, .1);
    --nav-bg: rgba(250, 251, 253, .8);
    --shadow: 0 10px 34px rgba(16, 29, 51, .08);
  }

  * { margin: 0; padding: 0; box-sizing: border-box; }
  /* v12.4锛氬钩婊戞粴鍔ㄧ瓑 load 涔嬪悗鍐嶅紑锛坰16 鏈熬鍔 html.smooth-scroll锛夈€傚叏灞€涓€鐩村紑鐫€鏃讹紝鍒锋柊鎭㈠婊氬姩浣嶇疆鐨勮繃绋
     涔熶細琚仛鎴愬姩鐢伙細椤甸潰娌″姞杞藉叏鍏堝仠鍦ㄥ綋鍓嶆渶搴曢儴锛屽啀涓€璺粦鍥炲師浣 */
  html.smooth-scroll { scroll-behavior: smooth; }
  body {
    font-family: -apple-system, BlinkMacSystemFont, "SF Pro SC", "PingFang SC", "Noto Sans SC", "Microsoft YaHei", "Segoe UI", sans-serif;
    background: var(--bg); color: var(--ink);
    -webkit-font-smoothing: antialiased;
    font-size: 17px; line-height: 1.6;
  }
  a { color: inherit; text-decoration: none; }
  img { max-width: 100%; display: block; }
  /* v12.0锛氬浘鐗囨嫋涓嶅嚭鍘汇€乮OS 闀挎寜涓嶅脊銆屽瓨鍌ㄥ浘鍍忋€嶏紙鍙抽敭鍙﹀瓨鍦 s16 鏈熬鐨勮剼鏈噷鎷︼級銆
     浜岀淮鐮侀櫎澶栵細寰俊閲岄暱鎸夎瘑鍒簩缁寸爜瑕佺敤鍒伴暱鎸夎彍鍗 */
  img:not([alt*="浜岀淮鐮?]):not([alt*="QR code"]):not(.qr-img) { -webkit-user-drag: none; -webkit-touch-callout: none; }
  button { font: inherit; cursor: pointer; }
  a:focus-visible, button:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; border-radius: 6px; }

  /* ---------- Nav ---------- */
  .nav {
    position: sticky; top: 0; z-index: 100;
    background: var(--nav-bg);
    -webkit-backdrop-filter: saturate(180%) blur(20px);
    backdrop-filter: saturate(180%) blur(20px);
    border-bottom: 1px solid var(--hairline);
  }
  .nav-inner {
    max-width: 2000px; margin: 0 auto; padding: 0 var(--nav-gutter);
    height: 76px; display: flex; align-items: center; gap: 8px;
  }
  /* 宸︿晶鏁村潡鏍囪瘑锛氬巶鏍 + 鍏徃涓嫳鏂囧悕 + 鑲＄エ浠ｇ爜 920634 路 鍖椾氦鎵€閿岀矇绗竴鑲 */
  .nav-logo { margin-right: auto; display: flex; align-items: center; }
  /* max-width:none 鏄繀椤荤殑锛氬叏灞€ img 瑙勫垯浼氬湪绐勫睆鎶婂畠鎸夊鍣ㄥ搴︽埅鏂紝
     鑰岄珮搴﹀張琚啓姝伙紝缁撴灉鍘傛爣琚í鍚戝帇鎵 */
  .nav-logo img { height: 46px; width: auto; max-width: none; flex: none; }
  .nav-logo .lk-dark { display: none; }
  :root[data-theme="dark"] .nav-logo .lk-light { display: none; }
  :root[data-theme="dark"] .nav-logo .lk-dark { display: block; }
  @media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) .nav-logo .lk-light { display: none; }
    :root:not([data-theme="light"]) .nav-logo .lk-dark { display: block; }
  }
  @media (max-width: 1240px) { .nav-logo img { height: 38px; } }
    @media (max-width: 880px) { .nav-inner { height: 64px; } .nav-logo img { height: 42px; } }
  @media (max-width: 600px) { .nav-logo img { height: 34px; } }
  @media (max-width: 420px) { .nav-logo img { height: 27px; } }

  /* 涓€绾у鑸細鏁存牸楂樼殑鏂瑰潡锛屾偓鍋?閫変腑鏃跺簳鑹茶嚜涓嬭€屼笂鍗囨弧锛堝弬鐓ц璁″叕鍙哥锛 */
  .nav-links { display: flex; align-self: stretch; font-size: 15px; color: var(--ink-2); }
  .nav-links a {
    position: relative; z-index: 0;   /* 寤虹珛灞傚彔涓婁笅鏂囷紝::before 鎵嶈兘鍨湪鏂囧瓧涓嬮潰鍙堢洊浣忓鑸簳鑹 */
    display: flex; align-items: center; padding: 0 17px; white-space: nowrap; border-radius: 0;
    overflow: hidden; transition: color .28s ease;
  }
  /* 搴曡壊鍧楃敤 transform 缂╂斁锛屼笉鐢 background-size锛
     鐖剁骇 .nav 鏈 backdrop-filter锛屽姩鐢 background 瀹规槗鐣欎笅娌￠噸缁樺共鍑€鐨勫崐鎴壊鍧 */
  .nav-links a::before {
    content: ""; position: absolute; inset: 0; z-index: -1; background: var(--accent);   /* 涓庝簩绾у鑸悓鑹 */
    transform: scaleY(0); transform-origin: bottom; transition: transform .28s ease;
  }
  .nav-links a:hover::before { transform: scaleY(1); }
  .nav-links a:hover { color: #fff; }
  /* 閫変腑鎬佹槸"褰撳墠鍦ㄥ摢涓€椤?鐨勭姸鎬侊紝鐩存帴钀戒綅锛屼笉鍋氳繃娓 */
  .nav-links a.on { color: #fff; font-weight: 600; transition: none; }
  .nav-links a.on::before { transform: scaleY(1); transition: none; }
  /* 880鈥?150 涔嬮棿鏀惧ぇ鍚庣殑鍘傛爣鍜屽叚涓爮鐩細鎸ゅ埌婧㈠嚭锛屾妸鏍忕洰闂磋窛涓庡瓧鍙锋敹涓€鏀剁粰鍘傛爣璁╀綅銆
     杩欐潯蹇呴』鍐欏湪涓婇潰 .nav-links a 涔嬪悗锛屽惁鍒欏悓浼樺厛绾ц瑕嗙洊锛岀瓑浜庢病鍐 */
  @media (max-width: 1200px) { .nav-links { font-size: 14px; } .nav-links a { padding: 0 11px; } }
  @media (max-width: 1100px) { .nav-links { display: none; } }
  /* 璇鍒囨崲 */
  .lang-switch {
    display: flex; align-self: center; margin-left: 14px; flex: none;
    border: 1px solid var(--hairline); border-radius: 7px; overflow: hidden;
    background: transparent; padding: 0; font-size: 12.5px; line-height: 1;
  }
  .lang-switch span { padding: 7px 10px; color: var(--ink-2); transition: background .22s ease, color .22s ease; }
  .lang-switch span.on { background: var(--accent); color: #fff; font-weight: 600; }
  .lang-switch:hover span:not(.on) { color: var(--ink); }
  @media (max-width: 420px) { .lang-switch { margin-left: 8px; font-size: 11.5px; } .lang-switch span { padding: 6px 8px; } }
  @media (prefers-reduced-motion: reduce) { .nav-links a { transition: none; } }

  /* ---------- Hero ---------- */
  .hero {
    position: relative; overflow: hidden; text-align: center;
    padding: clamp(84px, 13vh, 150px) 22px clamp(64px, 9vh, 110px);
    background:
      radial-gradient(1100px 460px at 50% -140px, color-mix(in srgb, var(--accent) 12%, transparent), transparent 70%),
      var(--bg);
  }
  .hero canvas { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }
  .hero > div { position: relative; }
  .eyebrow {
    display: inline-flex; align-items: center; gap: 12px;
    font-size: 18px; font-weight: 600; letter-spacing: .01em; line-height: 1;
    color: var(--ink);
    border: 1px solid color-mix(in srgb, var(--accent) 32%, transparent); border-radius: 980px;
    padding: 12px 12px 12px 20px; margin-bottom: 30px;
    background: color-mix(in srgb, var(--accent) 9%, var(--card));
    box-shadow: 0 6px 22px color-mix(in srgb, var(--accent) 17%, transparent);
  }
  /* 鍓嶉潰鐐逛竴棰楃伅锛屾妸"涓婂競鍏徃"浠庝竴琛屽皬瀛楀彉鎴愪竴涓爣璇 */
  .eyebrow::before {
    content: ""; width: 9px; height: 9px; border-radius: 50%; flex: none;
    background: var(--accent); box-shadow: 0 0 0 4px color-mix(in srgb, var(--accent) 20%, transparent);
  }
  .eyebrow b {
    color: #fff; background: var(--accent); font-weight: 700; font-size: 17px;
    letter-spacing: .07em; font-variant-numeric: tabular-nums;
    padding: 8px 13px; border-radius: 980px;
  }
  @media (max-width: 480px) {
    .eyebrow { font-size: 15.5px; gap: 9px; padding: 10px 10px 10px 16px; }
    .eyebrow b { font-size: 15px; padding: 7px 11px; }
  }
  .hero h1 {
    font-size: clamp(46px, 8.5vw, 100px);
    font-weight: 700; line-height: 1.07; letter-spacing: -0.025em; text-wrap: balance;
    background: linear-gradient(98deg, var(--grad-a) 8%, var(--grad-b) 55%, var(--grad-c) 92%);
    -webkit-background-clip: text; background-clip: text;
    -webkit-text-fill-color: transparent; color: transparent;
    /* v13.0锛氭笎鍙樺彧鐢诲湪鐩掑瓙閲岋紝琛岄珮 1.07 璁 p/g/y 鐨勪笅浼搁儴鍒嗚惤鍒扮洅澶栬鎴紱搴曢儴琛 0.2em 鍐嶇瓑閲忔敹鍥烇紝鐗堥潰涓嶅姩 */
    padding-bottom: .2em; margin-bottom: -.2em;
  }
  .hero p.sub {
    font-size: clamp(19px, 2.4vw, 26px); font-weight: 500;
    color: var(--ink-2); margin-top: 20px; letter-spacing: -0.01em; text-wrap: balance;
  }
  /* v9.9锛氶椤典笁涓叆鍙ｆ槸鎴戜滑鏈€甯屾湜璁垮鐐圭殑鍦版柟锛屽師鏉ュお杞 鈥斺€ 鍔犵矖銆佸瓧鍙峰ぇ涓€妗ｃ€佺珫绾垮垎闅 */
  .hero-links { margin-top: 32px; display: flex; gap: 0 28px; justify-content: center; font-size: 19px; flex-wrap: wrap; }
  .hero-links a { color: var(--accent); font-weight: 600; position: relative; }
  .hero-links a + a::before {
    content: ""; position: absolute; left: -14px; top: .2em; bottom: .2em;
    width: 1px; background: color-mix(in srgb, var(--ink-3) 55%, transparent);
  }
  @media (max-width: 560px) {
    .hero-links { flex-direction: column; align-items: center; gap: 14px; }
    .hero-links a + a::before { display: none; }
  }
  .hero-links a:hover { text-decoration: underline; }
  .hero-links a::after { content: " 鈥?; }

  /* ---------- Stats ---------- */
  .stats {
    max-width: var(--wrap); margin: 0 auto; padding: 16px var(--gutter) 88px;
    display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px;
  }
  @media (max-width: 1000px) { .stats { grid-template-columns: repeat(3, 1fr); } }
  .stat { text-align: center; padding: 26px 8px; }
  .stat .num {
    font-size: clamp(30px, 4vw, 44px); font-weight: 700; letter-spacing: -0.02em;
    font-variant-numeric: tabular-nums; line-height: 1.1; color: var(--brand);
  }
  .stat .num em { font-style: normal; font-size: .5em; font-weight: 600; color: var(--ink-2); margin-left: 2px; }
  .stat .label { font-size: 14px; color: var(--ink-2); margin-top: 8px; }
  @media (max-width: 760px) { .stats { grid-template-columns: repeat(2, 1fr); padding-bottom: 56px; } }

  /* ---------- Section head ---------- */
  .section-head { text-align: center; max-width: 1000px; margin: 0 auto 52px; padding: 0 22px; }
  .section-head .kicker { font-size: 13px; letter-spacing: .2em; color: var(--copper); font-weight: 700; margin-bottom: 14px; }
  .section-head .kicker.blue { color: var(--accent); }
  .section-head h2 {
    font-size: clamp(30px, 4.8vw, 54px); font-weight: 700;
    letter-spacing: -0.02em; line-height: 1.12; text-wrap: balance;
  }
  .section-head p { color: var(--ink-2); margin-top: 16px; font-size: 18px; }

  /* ---------- Applications ---------- */
  .apps { padding: 96px 0 104px; background: var(--bg-tint); }
  .app-grid {
    max-width: var(--wrap); margin: 0 auto; padding: 0 var(--gutter);
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px;
  }
  .app-card {
    background: var(--card); border-radius: 20px; overflow: hidden;
    box-shadow: var(--shadow); display: flex; flex-direction: column;
    transition: transform .3s ease;
  }
  .app-card:hover { transform: translateY(-4px); }
  .app-media { aspect-ratio: 3 / 2; overflow: hidden; }
  .app-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
  .app-card:hover .app-media img { transform: scale(1.05); }
  .app-body { padding: 17px 20px 20px; display: flex; flex-direction: column; gap: 7px; flex: 1; }
  /* v9.9锛氭憳瑕佹湁鐨勪竴琛屾湁鐨勪袱琛岋紝鎶娿€屾煡鐪嬪簲鐢ㄨ鎯呫€嶅帇鍒板崱鐗囧簳閮紝涓€鎺掍笁寮犵殑閾炬帴鎵嶉綈骞 */
  .app-body .app-more { margin-top: auto; padding-top: 3px; }
  .app-tag {
    align-self: flex-start; font-size: 10.5px; font-weight: 700; letter-spacing: .1em;
    color: var(--copper); background: var(--copper-bg); border-radius: 980px; padding: 4px 12px;
  }
  .app-body h4 { font-size: 17px; font-weight: 600; letter-spacing: -0.008em; line-height: 1.4; }
  /* v12.3锛氶攲閾秱灞傦紙杈惧厠缃楋級/鏃犻摤閿岄摑娑傚眰涓撶敤鐗囩姸閿岀矇 鈥斺€ 17px 涓€琛屾斁涓嶄笅锛屽彧鍦ㄣ€?銆嶅悗鐨勯浂瀹界┖鏍煎鏂垚涓よ */
  .app-card[data-app="7"] .app-body h4 { word-break: keep-all; text-wrap: wrap; }
  /* v12.3锛氳嫳鏂囨爣绛炬敹瀛楄窛锛堜腑鏂囦粛 .1em锛夛紝1200 浠ヤ笂瀹藉睆浜旈」鐨勬爣绛句篃鎺掍竴琛岋紝鑳跺泭涓嶆姌鎴愪袱琛 */
  html[lang="en"] .app-tag { letter-spacing: .03em; }
  .app-body p { font-size: 13px; color: var(--ink-2); line-height: 1.6; }
  @media (max-width: 860px) { .app-grid { grid-template-columns: repeat(2, 1fr); } }
  @media (max-width: 560px) { .app-grid { grid-template-columns: 1fr; } }


  /* 搴旂敤鍗＄墖锛氭暣寮犲彲鐐癸紝鍙充笅瑙掍竴鏉?鏌ョ湅搴旂敤璇︽儏" */
  .app-card { cursor: pointer; }
  .app-body { position: relative; }
  .app-more {
    margin-top: 2px; font-size: 12px; font-weight: 600; color: var(--accent);
    display: inline-flex; align-items: center; gap: 4px;
  }
  .app-more::after { content: "鈥?; font-size: 15px; line-height: 1; transition: transform .25s ease; }
  .app-card:hover .app-more::after { transform: translateX(3px); }
  .app-card:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }

  /* 搴旂敤璇︽儏寮圭獥 */
  .amodal[hidden] { display: none; }
  .amodal { position: fixed; inset: 0; z-index: 215; display: flex; align-items: center; justify-content: center; padding: 24px 18px; }
  .amodal-mask { position: absolute; inset: 0; background: rgba(4,10,20,.72); -webkit-backdrop-filter: blur(5px); backdrop-filter: blur(5px); }
  .amodal-card {
    position: relative; width: min(900px, 100%); max-height: 88vh; display: flex; flex-direction: column;
    background: var(--card); border-radius: 24px; overflow: hidden;
    box-shadow: 0 30px 80px rgba(4,10,20,.45); animation: amPop .3s cubic-bezier(.2,.8,.3,1);
  }
  @keyframes amPop { from { opacity: 0; transform: translateY(14px) scale(.985); } }
  @media (prefers-reduced-motion: reduce) { .amodal-card { animation: none; } }
  .amodal-hero { position: relative; flex: none; aspect-ratio: 1120 / 250; background: var(--navy); }
  .amodal-hero img { width: 100%; height: 100%; object-fit: cover; }
  .amodal-heroscrim { position: absolute; inset: 0; background: linear-gradient(to top, rgba(6,16,32,.92) 4%, rgba(6,16,32,.42) 52%, rgba(6,16,32,.1) 100%); }
  .amodal-herotxt { position: absolute; left: 0; right: 0; bottom: 0; padding: 18px 26px 16px; color: #fff; }
  .amodal-herotxt .app-tag { background: rgba(255,255,255,.16); color: #ffd9bd; margin-bottom: 8px; display: inline-block; }
  .amodal-herotxt h3 { font-size: clamp(19px, 2.6vw, 25px); font-weight: 700; letter-spacing: -0.015em; }
  .amodal-x {
    position: absolute; top: 14px; right: 14px; width: 32px; height: 32px; padding: 0; border: 0;
    border-radius: 50%; background: rgba(10,20,36,.42); color: #fff; font-size: 17px; line-height: 1;
    -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
  }
  .amodal-x:hover { background: rgba(10,20,36,.68); }
  .amodal-body { overflow-y: auto; padding: 24px 30px 4px; }
  .amodal-body h4 {
    font-size: 12px; font-weight: 700; letter-spacing: .16em; color: var(--copper);
    margin-bottom: 10px;
  }
  .amodal-body h4 + p { font-size: 14.5px; line-height: 1.95; color: var(--ink-2); }
  .amodal-body .gap { margin-top: 24px; }
  .amodal-body ul { list-style: none; display: flex; flex-direction: column; gap: 11px; }
  .amodal-body li {
    position: relative; padding-left: 26px; font-size: 14px; line-height: 1.85; color: var(--ink-2);
  }
  .amodal-body li::before {
    content: ""; position: absolute; left: 2px; top: 9px; width: 9px; height: 9px; border-radius: 3px;
    background: var(--accent); opacity: .85;
  }
  .amodal-foot {
    flex: none; display: flex; gap: 10px; justify-content: flex-end;
    padding: 18px 30px 22px; border-top: 1px solid var(--hairline); margin-top: 22px;
  }
  @media (max-width: 620px) {
    .amodal { padding: 0; }
    .amodal-card { max-height: 100vh; height: 100%; border-radius: 0; }
    .amodal-body { padding: 20px 20px 4px; }
    .amodal-foot { padding: 14px 20px 18px; }
    /* v12.8锛?120:250 鍦ㄦ墜鏈轰笂鍙湁 88px 楂橈紝涓よ鏍囬鎶婇鍩熷皬鑳跺泭椤跺嚭鐢婚潰銆佲湑 鍘嬩綇鏍囬 */
    .amodal-hero { aspect-ratio: auto; height: clamp(210px, 58vw, 260px); }
    .amodal-herotxt { padding: 18px 20px 16px; }
    /* 杈惧厠缃楅偅鏉℃爣棰樺彧鍦ㄣ€屾秱灞傘€嶅悗鐨勯浂瀹界┖鏍煎鏂紝涓嶅嚭銆屼笓鐢ㄧ墖 / 鐘堕攲绮夈€ */
    html:not([lang="en"]) #appmTitle { word-break: keep-all; }
  }


  /* 浜у搧淇℃伅寮圭獥锛氬鐢ㄥ簲鐢ㄨ鎯呯殑澹筹紝澶撮儴鎹㈡垚绾枃瀛 */
  .amodal-head { flex: none; position: relative; padding: 26px 30px 18px; border-bottom: 1px solid var(--hairline); }
  .amodal-head .kick { font-size: 11px; font-weight: 700; letter-spacing: .16em; color: var(--copper); }
  .amodal-head h3 { font-size: clamp(19px, 2.6vw, 24px); font-weight: 700; letter-spacing: -0.015em; margin-top: 9px; }
  .amodal-head .amodal-x { background: var(--bg-tint); color: var(--ink-2); }
  .amodal-head .amodal-x:hover { background: var(--hairline); color: var(--ink); }
  .amodal-body li b { color: var(--ink); font-weight: 600; }
  .amodal-body li b::after { content: "锛?; font-weight: 400; color: var(--ink-3); }
  :root[lang="en"] .amodal-body li b::after { content: " 鈥 "; }

  /* ---------- Configurator / 閫夎喘 ---------- */
  .buy { padding: 96px 0; }
  .buy .section-head { margin-bottom: 26px; }
  .buy .section-head p { margin-top: 12px; font-size: 16.5px; }
  .buy-wrap {
    max-width: var(--wrap); margin: 0 auto; padding: 0 var(--gutter);
    display: grid; grid-template-columns: 5fr 7fr; gap: 22px; align-items: stretch;
  }
  .buy-summary {
    position: sticky; top: 86px;
    background: linear-gradient(160deg, var(--navy), var(--navy-card));
    color: var(--ink-on-navy); border-radius: 24px; padding: 28px 26px;
    display: flex; flex-direction: column; gap: 12px;
  }
  .buy-summary .glyph { height: 88px; }
  /* v9.9锛氬乏鍗′笌鍙充晶鍥涘紶鍗＄瓑楂橈紝鎸夐挳鍘嬪埌搴曢儴锛屼腑闂寸暀鐧界敱鍥炬爣涓庢爣棰樺垎鎷 */
  .buy-summary .buy-ctas { margin-top: auto; }
  .buy-summary .cfg-label { font-size: 11px; letter-spacing: .18em; color: var(--cyan-on-navy); font-weight: 700; }
  .buy-summary h3 { font-size: 26px; font-weight: 700; letter-spacing: -0.01em; line-height: 1.25;
    font-feature-settings: "halt"; }
  .buy-summary .cfg-line { font-size: 15px; color: var(--ink2-on-navy); font-variant-numeric: tabular-nums; }
  .buy-summary .divider { border: 0; border-top: 1px solid var(--hairline-navy); margin: 4px 0; }
  .spec-rows { display: flex; flex-direction: column; }
  .spec-row { display: flex; justify-content: space-between; gap: 14px; padding: 9px 0; border-bottom: 1px solid var(--hairline-navy); font-size: 13.5px; }
  .spec-row:last-child { border-bottom: 0; }
  .spec-row .k { color: var(--ink2-on-navy); flex: none; }
  .spec-row .v { text-align: right; font-variant-numeric: tabular-nums; }
  .buy-ctas { display: flex; gap: 12px; margin-top: 6px; flex-wrap: wrap; }
  .btn-primary {
    background: var(--accent); color: #fff; border: 0; border-radius: 980px;
    padding: 11px 26px; font-size: 15px; font-weight: 600; transition: filter .2s;
  }
  .btn-primary:hover { filter: brightness(1.12); }
  .btn-ghost {
    background: transparent; color: var(--cyan-on-navy); border: 1px solid var(--hairline-navy);
    border-radius: 980px; padding: 11px 22px; font-size: 15px;
  }
  .btn-ghost:hover { border-color: var(--cyan-on-navy); }
  /* 涓変釜绯诲垪鐨勫畬鏁翠骇鍝佷粙缁嶉兘鍦ㄨ繖涓脊绐楅噷锛屼笉鑳藉拰銆屼笅杞芥妧鏈祫鏂欍€嶄竴鏍峰急锛
     浣嗕篃涓嶆姠銆岃浠疯瘯鏍枫€嶈繖涓富琛屽姩鐐癸紝鎵€浠ョ敤鎻忚竟+娴呭簳鐨勬绾ф牱寮 */
  #pinfoBtn {
    border-color: var(--cyan-on-navy); font-weight: 600;
    background: color-mix(in srgb, var(--cyan-on-navy) 15%, transparent);
  }
  #pinfoBtn::before { content: "\24D8"; margin-right: 6px; font-size: 15px; line-height: 1; }
  #pinfoBtn:hover { background: color-mix(in srgb, var(--cyan-on-navy) 26%, transparent); }

  .buy-steps { display: flex; flex-direction: column; gap: 10px; }
  .step { background: var(--card); border: 1px solid var(--hairline); border-radius: 20px; padding: 12px 20px 14px; }
  .step .step-title { display: flex; align-items: baseline; gap: 10px; margin-bottom: 8px; }
  .step .step-title b { font-size: 17px; font-weight: 700; letter-spacing: -0.005em; }
  .step .step-title span { font-size: 12.5px; color: var(--ink-3); }
  .opt-row { display: flex; flex-wrap: wrap; gap: 10px; }
  .opt {
    border: 1.5px solid var(--hairline); background: transparent; color: var(--ink);
    border-radius: 13px; padding: 7px 14px; font-size: 14.5px;
    transition: border-color .15s, background .15s; text-align: left;
    /* button 鐨勫唴瀹归粯璁ゅ瀭鐩村眳涓細鍚屼竴琛岄噷灏忓瓧鎹㈡垚涓よ鐨勬寜閽細琚拺楂橈紝
       鍏朵綑鎸夐挳璺熺潃 stretch 鍒板悓楂樺悗鎶婁骇鍝佸悕灞呬腑锛岀涓€琛屽氨鍙傚樊涓嶉綈浜嗭紝鏀规垚椤跺榻 */
    display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start;
  }
  .opt[hidden] { display: none; }
  .opt:hover { border-color: var(--ink-3); }
  .opt.sel { border-color: var(--accent); background: color-mix(in srgb, var(--accent) 8%, transparent); font-weight: 600; }
  .opt small { display: block; font-size: 11.5px; color: var(--ink-3); font-weight: 400; margin-top: 2px; }
  .opt-wide { flex: 1 1 150px; }
  /* v9.9锛氬洓涓寘瑁呮寜閽帓涓€琛岋紙銆屽叾浠栧寘瑁吢锋敮鎸佸畾鍒躲€嶅師鏉ユ姌鎴愪袱琛岋級锛屾枃瀛楀眳涓笉鍐嶉《宸 */
  .opt-row[data-group="pack"] .opt-wide { flex: 1 1 auto; align-items: center; text-align: center; white-space: nowrap; }
  .step-note { font-size: 12.5px; color: var(--ink-3); margin-top: 11px; }
  .std-line { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; margin-top: 9px; }
  .std-line .step-note, .std-line .std-chips { margin-top: 0; }
  .std-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 4px; }
  .std-chip {
    font-size: 12px; color: var(--ink-2); border: 1px solid var(--hairline);
    border-radius: 980px; padding: 4px 12px; font-variant-numeric: tabular-nums;
  }
  /* v10.1锛氳鏍间笅鏂圭殑鏍囧噯璇存槑锛屼笁涓郴鍒楀悇涓€鍙ワ紝鎸 html[data-series] 鏄鹃殣锛堝悓 .ms-*锛 */
  .std-note { font-size: 12.5px; color: var(--ink-3); line-height: 1.6; margin-top: 10px; }
  .std-note + .std-note { margin-top: 2px; }
  .std-note .kp { display: inline-block; font-feature-settings: "halt"; }
  .std-note .kp + .kp:not(:last-child) { margin-left: 2px; }
  .std-flk, .std-atm { display: none; }
  html[data-series="flake"] .std-ball, html[data-series="atom"] .std-ball { display: none; }
  html[data-series="flake"] .std-flk, html[data-series="atom"] .std-atm { display: block; }
  @media (max-width: 900px) {
    .buy-wrap { grid-template-columns: 1fr; }
    .buy-summary { position: static; }
  }

  /* ---------- 閫夊瀷鍗￠噷鐨勬娴嬪渾绐楋紙v10.0锛屽師涓洪€夎喘鍖轰笅鏂圭殑銆屽疄鐗╀笌妫€娴嬨€嶉暱鍗★級 ---------- */
  /* 涓婁笅鍚勭暀 auto锛氬浘鏍?鏍囬鍦ㄤ笂銆佹寜閽湪涓嬶紝涓や釜鍦嗙獥钀藉湪涓棿閭ｇ墖绌虹櫧閲 */
  .buy-qc { margin-top: auto; padding-top: 4px; }
  .qc-figs { position: relative; display: flex; justify-content: center; gap: clamp(22px, 3vw, 44px);
    --qcs: clamp(124px, 10.4vw, 150px); }
  /* 鍥炬敞鍜屽渾绐楀悓瀹斤細鑻辨枃鍥炬敞锛圖istilled spherical zinc dust, SEM锛夋瘮鍦嗙獥瀹斤紝浼氭妸鏁翠釜 figure 鎾戝銆佸渾绐楀亸鍒板乏杈 */
  .buy-qc .qc-fig { width: var(--qcs); }
  /* v10.5 鍦嗙獥涓嬬殑绯诲垪璇存槑锛氱郴鍒楀悕浜櫧鍔犵矖锛屽叾浣欐祬鐏帮紱涓枃涓ゆ鍚勪笉鏂紑锛屾斁涓嶄笅鍦ㄣ€屄枫€嶅悗鎹㈣ */
  .buy-qc .qc-series { margin-top: 14px; text-align: center; font-size: 12.5px; line-height: 1.6;
    color: rgba(255,255,255,.76); letter-spacing: .02em; }
  .buy-qc .qc-series b { color: #fff; font-weight: 600; }
  html:not([lang="en"]) .buy-qc .qc-series b { margin-right: .3em; }
  html:not([lang="en"]) .buy-qc .qc-series > span { white-space: nowrap; }
  .buy-qc .qc-series .qs-tip { white-space: nowrap; }
  /* 涓枃鍥炬敞鐢佃剳绔竴琛屾帓瀹岋細銆岃捀棣忔硶鐞冪姸閿岀矇 SEM 褰㈣矊銆嶆瘮鍦嗙獥鐣ュ锛屽厑璁稿乏鍙虫帰鍑恒€佷互鍦嗙獥涓轰腑蹇冿紱
     鎵嬫満涓婃斁涓嶄笅鎵嶆崲琛岋紝keep-all + 涓嶆柇琛岀┖鏍间繚璇佸彧鏂湪绯诲垪鍚嶅悗闈紙绗簩琛屾槸銆孲EM 褰㈣矊銆嶏級銆
     鑻辨枃鍥炬敞闀垮緱澶氾紙Distilled spherical zinc dust, SEM锛夛紝鐓у父鍦ㄥ渾绐楀搴﹀唴鎶樿 */
  html:not([lang="en"]) .buy-qc .qc-fig figcaption {
    white-space: nowrap; width: max-content; position: relative; left: 50%; transform: translateX(-50%);
  }
  @media (max-width: 560px) {
    html:not([lang="en"]) .buy-qc .qc-fig figcaption {
      white-space: normal; word-break: keep-all; width: auto; left: 0; transform: none;
    }
  }
  .qc-fig { text-align: center; margin: 0; }
  /* 鍦嗙獥鏈韩鏄釜鎸夐挳锛氭偓鍋滄斁澶 + 鍑虹幇鏀惧ぇ闀滆鏍囷紝鐐瑰紑杩涚伅绠辩湅澶у浘 */
  .qc-lens {
    position: relative; display: block; width: var(--qcs); height: var(--qcs);
    padding: 0; border: 0; background: transparent; border-radius: 50%; cursor: zoom-in;
    transition: transform .28s cubic-bezier(.2,.7,.3,1);
  }
  .qc-lens img {
    position: absolute; inset: 0; width: 100%; height: 100%; border-radius: 50%;
    object-fit: cover; display: block; opacity: 0; transition: opacity .45s ease;
    border: 3px solid rgba(255,255,255,.5); box-shadow: 0 12px 32px rgba(0,0,0,.4); background: #0d1524;
  }
  /* 绮掑害鎶ュ憡鏄櫧搴曞鍥撅紝鍦嗙獥閲屾寜鏁村箙缂╂斁鑰屼笉鏄鍒囷紝鏇茬嚎鎵嶇湅寰楀叏 */
  .qc-lens img.fit { object-fit: contain; background: #fff; }
  #qcCard[data-series="ball"]  .qc-lens img.k-ball  { opacity: 1; }
  #qcCard[data-series="atom"]  .qc-lens img.k-atom  { opacity: 1; }
  #qcCard[data-series="flake"] .qc-lens img.k-flake { opacity: 1; }
  .qc-lens::after {
    content: ""; position: absolute; inset: 0; border-radius: 50%; pointer-events: none;
    box-shadow: inset 0 0 0 0 rgba(255,255,255,0); transition: box-shadow .28s ease;
  }
  .qc-lens:hover { transform: scale(1.07); }
  .qc-lens:hover::after { box-shadow: inset 0 0 0 3px rgba(255,255,255,.9); }
  .qc-lens:focus-visible { outline: 2px solid #fff; outline-offset: 5px; }
  .qc-zoom {
    position: absolute; right: 4px; bottom: 4px; width: 30px; height: 30px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center; font-size: 13px; line-height: 1;
    color: #0b1626; background: rgba(255,255,255,.92); box-shadow: 0 4px 14px rgba(0,0,0,.35);
    opacity: 0; transform: scale(.72); transition: opacity .22s ease, transform .22s ease;
  }
  .qc-lens:hover .qc-zoom, .qc-lens:focus-visible .qc-zoom { opacity: 1; transform: scale(1); }
  .qc-fig figcaption { font-size: 12px; color: rgba(255,255,255,.86); margin-top: 12px; letter-spacing: .04em; }
  /* 鈮?00 閫夎喘鍣ㄥ彉鍗曟爮锛屽乏鍗℃拺婊℃暣琛岋紝鍦嗙獥鎸夊睆瀹界畻 */
  @media (max-width: 900px) { .qc-figs { --qcs: clamp(116px, 30vw, 164px); } }
  @media (prefers-reduced-motion: reduce) { .qc-lens img, .qc-lens, .qc-zoom { transition: none; } .qc-lens:hover { transform: none; } }

  /* 鍖呰鏂瑰紡锛氭爣棰樺彸渚х殑銆岀湅瀹炴櫙銆嶉摼鎺 + 瀹炴櫙寮圭獥 */
  /* 鍘熸潵鏄竴琛屽皬瀛楋紝瀹㈡埛瀹规槗鍒掕繃鍘伙紱鏀规垚甯﹀簳鑹茬殑鎻忚竟鑳跺泭 */
  .step-link {
    cursor: pointer; font-family: inherit; white-space: nowrap;
    display: inline-flex; align-items: center; font-size: 12.5px; font-weight: 600;
    color: var(--accent); border-radius: 980px; padding: 5px 13px;
    background: color-mix(in srgb, var(--accent) 11%, transparent);
    border: 1px solid color-mix(in srgb, var(--accent) 36%, transparent);
    transition: background .18s ease, border-color .18s ease;
  }
  .step-link::before { content: "\25F1"; margin-right: 6px; font-size: 12px; line-height: 1; opacity: .85; }
  .step-link:hover { background: color-mix(in srgb, var(--accent) 20%, transparent); border-color: var(--accent); }
  .step-link:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
  .step-link .arw { margin-left: 3px; display: inline-block; transition: transform .2s ease; }
  /* v9.8锛氫笁涓郴鍒楀悇涓€濂椾骇鍝佽鏍奸€夐」锛屾寜 html[data-series]锛坰yncFields 鍐欙級鏄鹃殣 */
  .ms-flk, .ms-atm { display: none; }
  html[data-series="flake"] .ms-ball, html[data-series="atom"] .ms-ball { display: none; }
  html[data-series="flake"] .ms-flk, html[data-series="atom"] .ms-atm { display: flex; }
  /* v12.7锛氬共娉曠墖鐘 PCF6004/6010/6015 鍏堝彧鍦ㄤ腑鏂囬〉鏄剧ず锛堣嫳鏂囧浼犲唽鏈洿鏂帮級 */
  html[lang="en"][data-series="flake"] .opt-row[data-group="mesh"] .ms-cn { display: none; }
  /* 鍨嬪彿鑳跺泭涓庣洰鏁版瘮璧锋潵瀛楁洿瀹斤紝鏀朵竴鐐瑰唴杈硅窛锛岄€夎喘鍣ㄨ繖涓€鍒楋紙612px锛夐噷鍏釜鎺掍竴琛 */
  html[data-series="flake"] .opt-row[data-group="mesh"] { gap: 8px; }
  .opt-row[data-group="mesh"] .ms-flk { padding-left: 11px; padding-right: 11px; }
  /* v10.1锛氱悆鐘 6 妗ｇ洰鏁 + 瀹氬埗锛岃兌鍥婃敹绐勬墠鎺掑緱杩涗竴琛岋紙涓枃椤 612px 涓€鍒楋紱鑻辨枃 mesh 瀛楅暱锛岀収甯告姌琛岋級 */
  html:not([lang="en"]) .opt-row[data-group="mesh"] .ms-ball { padding-left: 10px; padding-right: 10px; }   /* v12.6锛歐L 鐗屽彿鐣ュ锛?1鈫?0 */
  /* v10.2锛氶浘鍖 8 妗ｇ洰鏁拌兌鍥婄瓑瀹姐€佹枃瀛楀眳涓紱瀹氬埗椤规斁涓嶄笅鑷劧钀藉埌绗簩琛 */
  html:not([lang="en"]) .opt-row[data-group="mesh"] .ms-atm:not(:last-child) { min-width: 66px; padding-left: 10px; padding-right: 10px; align-items: center; }
  html:not([lang="en"]):not([data-series="flake"]):not([data-series="atom"]) .opt-row[data-group="mesh"] { gap: 8px; }
  /* 瑙勬牸鍙傛暟琛ㄥ脊绐楋細鍥涘紶鍥撅紙鐞?鐗 脳 涓?鑻憋級閮藉湪 DOM 閲岋紝鎸夌郴鍒椾笌璇鏄句竴寮 */
  .spec-fig { margin: 0; }
  .spec-fig .sp-shot { display: none; width: 100%; padding: 0; border: 1px solid var(--hairline); border-radius: 14px; overflow: hidden; background: #fff; cursor: zoom-in; }
  html:not([lang="en"]):not([data-series="flake"]) .spec-fig .sp-ball.sp-cn,
  html[lang="en"]:not([data-series="flake"]) .spec-fig .sp-ball.sp-en,
  html:not([lang="en"])[data-series="flake"] .spec-fig .sp-flk.sp-cn,
  html[lang="en"][data-series="flake"] .spec-fig .sp-flk.sp-en { display: block; }
  .spec-fig .sp-shot img { display: block; width: 100%; height: auto; }
  .spec-fig figcaption { margin-top: 8px; font-size: 12.5px; color: var(--ink-3); text-align: center; }
  .step-link:hover .arw { transform: translateX(2px); }
  .pack-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
  .pack-shot { margin: 0; }
  .pack-shot button {
    display: block; width: 100%; padding: 0; border: 0; background: var(--bg-tint);
    border-radius: 14px; overflow: hidden; cursor: zoom-in; aspect-ratio: 4 / 3;
  }
  .pack-shot img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .5s ease; }
  .pack-shot button:hover img { transform: scale(1.05); }
  .pack-shot figcaption { font-size: 12.5px; color: var(--ink-2); margin-top: 9px; line-height: 1.6; text-align: center; }
  .pack-shot figcaption b { display: block; color: var(--ink); font-weight: 600; font-size: 13.5px; margin-bottom: 2px; }
  .pack-note { font-size: 13px; color: var(--ink-2); line-height: 1.85; margin-top: 20px; }
  @media (max-width: 640px) { .pack-grid { grid-template-columns: 1fr; } }
  @media (prefers-reduced-motion: reduce) { .pack-shot button:hover img { transform: none; } }

  /* ---------- Bases ---------- */
  .bases { padding: 104px 0; background: var(--bg-tint); }
  .base-cards { max-width: var(--wrap); margin: 0 auto; padding: 0 var(--gutter); display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
  .base-card { background: var(--card); border-radius: 24px; overflow: hidden; box-shadow: var(--shadow); display: flex; flex-direction: column; }
  .base-visual { aspect-ratio: 3 / 2; overflow: hidden; position: relative; }
  .base-visual img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s ease; }
  .base-card:hover .base-visual img { transform: scale(1.04); }
  .base-visual .pill-row {
    position: absolute; top: 14px; left: 14px; right: 14px;
    display: flex; align-items: flex-start; justify-content: space-between; gap: 8px; flex-wrap: wrap;
  }
  .base-visual .loc-pill {
    position: static;
    background: rgba(8, 18, 36, .6); color: #fff; font-size: 12px; letter-spacing: .1em;
    border-radius: 980px; padding: 6px 14px;
    -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
  }
  .base-body { padding: 24px 26px 30px; display: flex; flex-direction: column; gap: 9px; flex: 1; }
  .base-body h3 { font-size: 14.5px; font-weight: 600; letter-spacing: -0.005em; color: var(--ink); }
  /* 涓夎缁撴瀯锛氫骇鑳芥暟瀛 鈫 鍏徃鍏ㄧО 鈫 灞ュ巻銆傚饱鍘嗘瘮鍘熷厛鐨勪竴鍙ヨ瘽闀垮緱澶氾紝琛岄珮鏀炬澗涓€鐐 */
  .base-body .cap { line-height: 1.05; margin-bottom: 2px; }
  .base-body p { line-height: 1.75; }
  .base-body p { flex: 1; }
  .base-visual .status-pill {
    position: static;
    background: rgba(217, 86, 11, .88); color: #fff; font-size: 12px; letter-spacing: .1em;
    border-radius: 980px; padding: 6px 14px;
    -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
  }
  .base-body .cap { font-size: clamp(32px, 3.6vw, 42px); font-weight: 700; letter-spacing: -0.02em; color: var(--brand); font-variant-numeric: tabular-nums; }
  .base-body .cap em { font-style: normal; font-size: .42em; font-weight: 500; color: var(--ink-2); margin-left: 4px; }
  .base-body p { color: var(--ink-2); font-size: 14.5px; }
  .base-facts { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 6px; }
  .fact-chip { font-size: 12px; color: var(--ink-2); background: var(--bg-tint); border-radius: 980px; padding: 5px 13px; }
  :root[data-theme="dark"] .fact-chip { background: rgba(255,255,255,.07); }
  @media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .fact-chip { background: rgba(255,255,255,.07); } }
  /* 鑻辨枃瑙掓爣姣斾腑鏂囬暱寰楀锛屽幓鎺夌粰涓枃鎺掔殑瀛楄窛銆佸瓧鍙风暐鏀讹紝涓ゆ灇鎵嶆帓寰楀紑 */
  :root[lang="en"] .base-visual .loc-pill,
  :root[lang="en"] .base-visual .status-pill { font-size: 11.5px; letter-spacing: .02em; padding: 6px 12px; }
  @media (max-width: 900px) { .base-cards { grid-template-columns: 1fr; } }

  /* ---------- Standards & honors ---------- */
  .cred { padding: 104px 0 96px; }
  .cred-grid { max-width: var(--wrap); margin: 0 auto; padding: 0 var(--gutter); display: grid; grid-template-columns: 1.2fr 1fr; gap: 18px; }
  .cred-main { background: var(--card); border: 1px solid var(--hairline); border-radius: 24px; padding: 40px 38px; display: flex; flex-direction: column; gap: 16px; }
  .cred-main h3 { font-size: 25px; font-weight: 700; letter-spacing: -0.01em; text-wrap: balance; }
  .cred-main p { color: var(--ink-2); font-size: 15px; max-width: 42em; }
  .std-list { display: flex; flex-direction: column; margin-top: 4px; }
  .std-item { display: flex; gap: 16px; padding: 15px 0; border-top: 1px solid var(--hairline); align-items: baseline; }
  .std-item .code { font-size: 13px; font-weight: 700; color: var(--brand); white-space: nowrap; font-variant-numeric: tabular-nums; }
  .std-item .name { font-size: 15px; }
  .honor-stack { display: flex; flex-direction: column; gap: 16px; }
  .honor {
    background: var(--card); border: 1px solid var(--hairline); border-radius: 18px;
    padding: 22px 26px; flex: 1; display: flex; flex-direction: column; justify-content: center; gap: 4px;
  }
  .honor b { font-size: 16px; font-weight: 600; }
  /* 蹇呴』鏄洿鎺ュ瓙閫夋嫨鍣細<b> 閲岀殑 .kp 涔熸槸 span锛屽啓鎴 .honor span 浼氳鍘嬫垚 13px 鐏板瓧 */
  .honor > span { font-size: 13px; color: var(--ink-2); }
  @media (max-width: 860px) { .cred-grid { grid-template-columns: 1fr; } }
  .cert-strip {
    max-width: var(--wrap); margin: 26px auto 0; padding: 4px var(--gutter) 12px;
    display: grid; grid-auto-flow: column; grid-auto-columns: 250px; gap: 14px;
    overflow-x: auto; scroll-snap-type: x proximity;
  }
  .cert {
    margin: 0; scroll-snap-align: start;
    background: var(--card); border: 1px solid var(--hairline); border-radius: 16px;
    overflow: hidden; display: flex; flex-direction: column;
  }
  .cert .cert-img {
    aspect-ratio: 4 / 3; background: #eceef2; display: flex;
    align-items: center; justify-content: center; padding: 10px;
  }
  :root[data-theme="dark"] .cert .cert-img { background: #0d1524; }
  @media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .cert .cert-img { background: #0d1524; } }
  .cert img { max-width: 100%; max-height: 100%; object-fit: contain; border-radius: 4px; }
  .cert figcaption { font-size: 12.5px; color: var(--ink-2); padding: 11px 14px 14px; line-height: 1.5; flex: 1; }
  /* 鍙戞槑涓撳埄澧欙細鍥哄畾鎵囧舰鎺掑竷锛屽埢鎰忎笉鍋氫氦浜掍篃涓嶆斁澶р€斺€
     瑕佺殑鏄?鐪嬪緱鍑烘湁寰堝"锛屼笉鏄浜洪€愰」缁嗚 */
  /* .rd-patent-head 鐨勪笅澶栬竟璺濇槸 -8px锛堝師鏉ョ揣璐磋瘉涔︽潯锛夛紝涓棿鎻掕繘杩欐鏂囧瓧瑕佹妸闂磋窛琛ュ洖鏉 */
  /* 涓枃鎸夊瓧鏂锛屾崲琛岀偣甯歌惤鍦ㄨ瘝涓棿銆傛妸姣忎釜鐭瑁规垚 .kp锛坘eep phrase锛変笉鍙柇锛
     鎹㈣灏卞彧浼氬彂鐢熷湪鏍囩偣澶勶紱绐勫睆鏀惧紑锛屽厤寰楃煭璇瘮涓€琛岃繕闀挎拺鐮寸増闈 */
  .kp { white-space: nowrap; }
  @media (max-width: 560px) { .kp { white-space: normal; } }
  .pat-note { font-size: 15px; line-height: 1.95; color: var(--ink-2); max-width: 62em; margin-top: 24px; }
  /* 涓撳埄澧欙細妯帓锛屼腑闂翠竴寮犳渶澶э紙鑳界湅娓咃級锛屽線涓や晶閫愮骇缂╁皬锛堣嚜鐒剁湅涓嶆竻鍏蜂綋鏉℃锛夈€
     涓嶅姞妯＄硦銆佷笉鍙偣鍑汇€佷笉鍙斁澶р€斺€旈瀵艰鐨勬槸"鐪嬪緱鍑哄緢澶?鑰屼笉鏄浜洪€愰」缁嗚銆
     鏁存帓鍙敱 --u锛堜腑闂撮偅寮犵殑瀹藉害锛変竴涓彉閲忛┍鍔細姣忓紶鐨勫搴︿笌浣嶇Щ閮芥槸瀹冪殑鍊嶆暟锛
     --u 璺熺潃瀹瑰櫒瀹藉害绾挎€х缉鏀撅紝鎵€浠ヤ笉闇€瑕佹柇鐐癸紝浠讳綍瀹藉害涓嬫瘮渚嬮兘涓€鏍 */
  .pat-row {
    /* 0.197 鏄弽鎺ㄥ嚭鏉ョ殑锛氬崐骞 2.4044u 瑕佸杩涖€屽鍣ㄥ/2 - 30px锛堢暀缁欐姇褰憋級銆嶏紝
       涓や晶璇佷功涓€寮犻兘涓嶈琚锛涢噸鍙犲浐瀹氬彇杈冨皬閭ｅ紶瀹藉害鐨 8%锛屾槸涓嶈鍒囧墠鎻愪笅鏈€灏忕殑閲 */
    --u: calc(min(1156px, 100vw - 2 * var(--gutter)) * 0.197);
    position: relative; height: calc(var(--u) * 1.414); margin-top: 18px;
    overflow: hidden;                      /* 鏈€澶栦晶涓ゅ紶鏈夋剰琚鎺変竴瑙掞紝鏆楃ず"杩樻湁鏇村" */
    pointer-events: none; user-select: none; -webkit-user-select: none;
  }
  .pat-row img {
    position: absolute; top: 50%;
    width: calc(var(--u) * var(--s)); height: auto;
    left: calc(50% + var(--u) * var(--dx) - var(--u) * var(--s) / 2);
    transform: translateY(-50%);
    border-radius: 4px; background: #fff;
    box-shadow: 0 10px 26px rgba(16, 29, 51, .20);
    -webkit-user-drag: none;
  }
  :root[data-theme="dark"] .pat-row img { box-shadow: 0 10px 26px rgba(0, 0, 0, .55); }
  @media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .pat-row img { box-shadow: 0 10px 26px rgba(0, 0, 0, .55); } }
  /* 绐勫睆涓嶈兘闈犺鍒囨潵鑵惧湴鏂癸紙涓や晶蹇呴』瀹屾暣锛夛紝鏀规垚灏戞憜鍑犲紶銆佹妸鍓╀笅鐨勬斁澶э細
     鈮?20 鏀舵垚浜斿紶锛屸墹560 鏀舵垚涓夊紶锛屼腑闂撮偅寮犲缁堝敖鍙兘澶 */
  @media (max-width: 820px) {
    .pat-row { --u: calc(min(1156px, 100vw - 2 * var(--gutter)) * 0.233); }
    .pat-row img:nth-child(1), .pat-row img:nth-child(7) { display: none; }
  }
  @media (max-width: 560px) {
    .pat-row { --u: calc(min(1156px, 100vw - 2 * var(--gutter)) * 0.321); }
    .pat-row img:nth-child(2), .pat-row img:nth-child(6) { display: none; }
  }
  .cert-hint { max-width: var(--wrap); margin: 8px auto 0; padding: 0 var(--gutter); font-size: 12.5px; color: var(--ink-3); text-align: right; }
  /* 棣栭〉鐨勮瘉涔﹀鍙礋璐ｄ氦浠ｃ€屾湁寰堝銆嶏紝鐪嬫竻鍏蜂綋鍐呭鏄簩绾ч〉銆岃崳瑾夎祫璐ㄣ€嶇殑浜嬨€
     鍘绘帀鍗″３涓庤鏄庢枃瀛椼€佸彧鐣欑缉鐣ュ浘锛岄珮搴︿粠 268px 鏀跺埌绾 130px锛
     璺熶笂闈㈢殑涓撳埄澧欐媺寮€涓绘锛屼篃涓嶅啀鍜屽畠鎾炴垚涓ゆ帓鍚岀被鐢婚潰銆
     鍙兘鏀 CSS锛氫簩绾ч〉閭ｆ帓鏄粠杩欎唤 markup 鍏嬮殕杩囧幓鐨勶紝鍔 markup 浼氭妸浜岀骇椤典竴璧锋敼浜 */
  .cert-mini {
    grid-auto-columns: 190px; gap: 12px; margin-top: 22px;
    /* 鍐呰竟璺濅笉鑳界暀鍦ㄦ粴鍔ㄥ鍣ㄤ笂锛氬崱鐗囧甫 scroll-snap-align:start锛屾祻瑙堝櫒浼氭妸 scrollLeft
       鍚稿埌 22 濂借绗竴寮犺创浣忔粴鍔ㄨ鍙ｈ捣濮嬭竟锛宲adding 绛変簬琚粴璧帮紝瑙嗚涓婃暣鏉℃瘮涓婇潰鐨
       鑽ｈ獕鍗″乏鍙冲悇瀹藉嚭涓€涓 gutter銆傛敼鎴愮洅瀛愯嚜宸辨敹绐勶紝宸﹀彸杈圭晫灏卞拰 .cred-wrap 鐨勫唴瀹瑰尯閲嶅悎銆
       width 閭ｆ潯鏄粰绐勫睆鐨勶細閭ｆ椂 max-width 涓嶈捣浣滅敤锛屽彧闈 100%-2*gutter 椤朵綇 */
    max-width: calc(var(--wrap) - 2 * var(--gutter));
    width: calc(100% - 2 * var(--gutter));
    padding-left: 0; padding-right: 0;
  }
  .cert-mini .cert { background: none; border: 0; border-radius: 0; }
  .cert-mini .cert figcaption { display: none; }
  .cert-mini .cert .cert-img { border-radius: 10px; padding: 6px; }
  @media (max-width: 560px) { .cert-mini { grid-auto-columns: 150px; } }

  @media (max-width: 700px) { .cert-hint { text-align: left; } }

  /* ---------- Partners ---------- */
  .partners { padding: 0 0 104px; }
  .partner-grid {
    max-width: var(--wrap); margin: 0 auto; padding: 0 var(--gutter);
    display: grid; grid-template-columns: repeat(8, 1fr); gap: 10px;
  }
  .partner {
    background: #ffffff; border: 1px solid var(--hairline); border-radius: 14px;
    aspect-ratio: 2 / 1; display: flex; align-items: center; justify-content: center; padding: 4px 6px;
  }
  .partner img {
    width: 100%; height: 100%; object-fit: contain;
  }
  /* LOGO 澧欐憜 40 瀹讹紙v11.8锛夛紝涓嬮潰杩欐帓鐐瑰憡璇夎瀹€岃繕鏈夊緢澶氥€嶁€斺€
     涓変釜鐐硅嚜宸卞懠鍚革紝姣斾竴鍙ュ皬瀛楁洿鍍忋€屾湭瀹屽緟缁€ */
  .partner-more {
    max-width: var(--wrap); margin: 22px auto 0; padding: 0 var(--gutter);
    /* v7.9锛氬眳涓細琚綋鎴愩€屽彲浠ュ乏鍙崇炕椤点€嶇殑鎸囩ず锛屾敼涓哄乏瀵归綈 */
    /* v8.5锛氱偣涓庤鏄庡悓涓€琛岋紝绐勫睆鏀句笉涓嬪啀鎹㈣ */
    display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px;
  }
  .partner-more .pm-dots { display: flex; align-items: center; gap: 7px; }
  .partner-more .pm-dots i {
    width: 7px; height: 7px; border-radius: 50%; background: var(--brand); opacity: .3;
    animation: pmBreathe 2.4s ease-in-out infinite;
  }
  .partner-more .pm-dots i:nth-child(2) { animation-delay: .28s; }
  .partner-more .pm-dots i:nth-child(3) { animation-delay: .56s; }
  .partner-more .pm-dots i:nth-child(4) { animation-delay: .84s; }
  .partner-more .pm-dots i:nth-child(5) { animation-delay: 1.12s; }
  .partner-more .pm-dots i:nth-child(6) { animation-delay: 1.4s; }
  @keyframes pmBreathe { 0%, 100% { opacity: .26; transform: scale(1); } 50% { opacity: .85; transform: scale(1.28); } }
  @media (prefers-reduced-motion: reduce) {
    .partner-more .pm-dots i { animation: none; opacity: .5; }
  }
  .partner-more .pm-cap {
    font-size: 12.5px; letter-spacing: .16em; color: var(--ink-3);
  }
    /* v10.2锛氶鑹插瓧鍙蜂笌澶ф爣棰樹笅鏂硅鏄庯紙.section-head p锛夊悓绾э紝姣斿ぇ鏍囬寮变竴绾э紱鍙鏁板瓧璺冲嚭鏉 */
  .partner-note {
    text-align: center; color: var(--ink-2); font-size: clamp(16px, 1.4vw, 18px);
    line-height: 1.7; margin-top: 30px; padding: 0 22px;
  }
  .partner-note .pn-num {
    font-size: 2.1em; font-weight: 800; color: var(--accent); letter-spacing: -0.02em;
    font-variant-numeric: tabular-nums; line-height: 1; margin: 0 .1em; vertical-align: -0.1em;
  }
  @media (max-width: 1100px) { .partner-grid { grid-template-columns: repeat(5, 1fr); } }
  @media (max-width: 600px) { .partner-grid { grid-template-columns: repeat(4, 1fr); gap: 8px; } .partner { border-radius: 10px; padding: 3px 4px; } }
  /* v12.8锛歩OS锛圵ebKit锛夐噷 img 鐨 height:100% 涓嶈 aspect-ratio 绠楀嚭鐨勯珮锛屾牸瀛愯 logo 鍘熷浘鎾戦珮鎾戝锛
     绗洓鍒楀嚭灞忋€佷笅闈㈢殑璇存槑鍘嬪埌 logo 涓娿€傛墜鏈轰笂 img 缁濆瀹氫綅閾烘弧鏍煎瓙锛屾牸瀛愬昂瀵稿彧鐢卞垪瀹藉喅瀹 */
  @media (max-width: 600px) {
    .partner-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .partner { position: relative; min-width: 0; overflow: hidden; }
    .partner img { position: absolute; top: 3px; left: 4px; width: calc(100% - 8px); height: calc(100% - 6px); }
    .partner-note { margin-top: 36px; }
  }

  /* ---------- News ---------- */
  .news { padding: 0 0 104px; }
  .news-grid { max-width: var(--wrap); margin: 0 auto; padding: 0 var(--gutter); display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
  .news-card {
    background: var(--card); border: 1px solid var(--hairline); border-radius: 18px;
    padding: 26px 26px; display: flex; flex-direction: column; gap: 12px; transition: transform .25s ease;
  }
  .news-card:hover { transform: translateY(-3px); }
  .news-card .cat { font-size: 11px; letter-spacing: .16em; color: var(--accent); font-weight: 700; }
  .news-card h4 { font-size: 17.5px; font-weight: 600; line-height: 1.45; flex: 1; }
  .news-card time { font-size: 13px; color: var(--ink-3); font-variant-numeric: tabular-nums; }
  @media (max-width: 760px) { .news-grid { grid-template-columns: 1fr; } }

  /* ---------- Investor ---------- */
  .investor { background: linear-gradient(170deg, var(--navy), var(--navy-card)); color: var(--ink-on-navy); text-align: center; padding: 96px 22px; }
  .investor .kicker { font-size: 13px; letter-spacing: .2em; color: var(--cyan-on-navy); font-weight: 700; margin-bottom: 16px; }
  .investor h2 { font-size: clamp(30px, 4.5vw, 46px); font-weight: 700; letter-spacing: -0.02em; text-wrap: balance; }
  .investor .ticker {
    display: inline-flex; align-items: baseline; gap: 14px; margin-top: 26px;
    border: 1px solid var(--hairline-navy); border-radius: 16px; padding: 16px 32px;
    font-variant-numeric: tabular-nums; background: rgba(255, 255, 255, .04);
  }
  .investor .ticker b { font-size: 32px; font-weight: 700; letter-spacing: .04em; }
  .investor .ticker span { font-size: 14px; color: var(--ink2-on-navy); }
  .investor p.note { color: var(--ink2-on-navy); margin-top: 20px; font-size: 15px; }
  .investor a.link { color: var(--cyan-on-navy); font-size: 17px; display: inline-block; margin-top: 10px; }
  .investor a.link::after { content: " 鈥?; }
  .investor a.link:hover { text-decoration: underline; }

  /* ---------- 璇环璇曟牱寮圭獥 ---------- */
  .modal[hidden] { display: none; }
  .modal { position: fixed; inset: 0; z-index: 200; display: flex; align-items: center; justify-content: center; padding: 20px; }
  .modal-mask { position: absolute; inset: 0; background: rgba(6, 14, 28, .55); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
  .modal-card {
    position: relative; width: min(520px, 100%); max-height: 88vh; overflow-y: auto;
    background: var(--card); border: 1px solid var(--hairline); border-radius: 22px;
    padding: 32px clamp(22px, 4vw, 34px) 28px; box-shadow: 0 30px 70px rgba(6, 14, 28, .3);
    animation: modalIn .28s cubic-bezier(.2, .8, .3, 1);
  }
  @keyframes modalIn { from { opacity: 0; transform: translateY(14px) scale(.98); } to { opacity: 1; transform: none; } }
  .modal-x { position: absolute; top: 13px; right: 15px; width: 30px; height: 30px; border-radius: 50%; border: 0; background: transparent; color: var(--ink-3); font-size: 20px; line-height: 1; }
  .modal-x:hover { background: var(--bg-tint); color: var(--ink); }
  .modal-card h3 { font-size: 21px; font-weight: 700; letter-spacing: -0.012em; }
  .modal-sub { font-size: 13.5px; color: var(--ink-2); margin-top: 8px; line-height: 1.7; }
  .inq-cfg { margin-top: 16px; padding: 13px 16px; border-radius: 13px; background: var(--bg-tint); font-size: 13px; color: var(--ink-2); line-height: 1.75; }
  .inq-cfg b { color: var(--ink); font-weight: 600; }
  :root[data-theme="dark"] .inq-cfg { background: rgba(255,255,255,.05); }
  @media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .inq-cfg { background: rgba(255,255,255,.05); } }
  .inq-field { display: block; margin-top: 15px; }
  /* 浣滆€呮牱寮忕殑 display 浼氱洊鎺夋祻瑙堝櫒榛樿鐨 [hidden]{display:none}锛屽繀椤绘樉寮忓啓涓€鏉 */
  .inq-field[hidden] { display: none; }
  .inq-field > span { display: block; font-size: 12.5px; color: var(--ink-2); margin-bottom: 6px; }
  .inq-field .req { color: var(--copper); margin-left: 2px; }
  .inq-field input, .inq-field textarea {
    width: 100%; font: inherit; font-size: 14.5px; color: var(--ink); background: transparent;
    border: 1.5px solid var(--hairline); border-radius: 12px; padding: 10px 13px; transition: border-color .18s ease;
  }
  .inq-field textarea { resize: vertical; line-height: 1.6; }
  .inq-field input:focus, .inq-field textarea:focus { outline: none; border-color: var(--accent); }
  .inq-field.err input, .inq-field.err textarea { border-color: #e5484d; }
  .inq-field > .inq-err { font-size: 12px; color: #e5484d; margin-top: 5px; display: none; }
  .inq-field.err > .inq-err { display: block; }
  /* 铚滅綈锛氱Щ鍑鸿鍙ｏ紝鐪熶汉涓庤灞忚蒋浠堕兘纰颁笉鍒帮紝鏈哄櫒浜鸿В鏋 DOM 浼氬～ 鈥斺€ 鍒敼鎴 display:none */
  .inq-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
  .inq-send-err { font-size: 13px; color: #e5484d; line-height: 1.6; margin-top: 12px; }
  .inq-note { font-size: 12px; color: var(--ink-3); line-height: 1.75; margin-top: 16px; }
  .inq-actions { display: flex; gap: 10px; justify-content: flex-end; margin-top: 18px; }
  .btn-ghost2 { background: transparent; color: var(--ink-2); border: 1px solid var(--hairline); border-radius: 980px; padding: 11px 22px; font-size: 14.5px; }
  .btn-ghost2:hover { border-color: var(--ink-3); color: var(--ink); }
  .inq-done { text-align: center; padding: 12px 0 4px; }
  .inq-done .tick { width: 52px; height: 52px; border-radius: 50%; margin: 0 auto 16px; background: color-mix(in srgb, #16a34a 16%, transparent); color: #16a34a; display: flex; align-items: center; justify-content: center; font-size: 25px; }
  .inq-done h4 { font-size: 18px; font-weight: 700; }
  .inq-done p { font-size: 13.5px; color: var(--ink-2); margin-top: 9px; line-height: 1.75; }

  /* 閫夊瀷鎽樿鐨勪骇鍝佸舰鎬佸浘闅忕郴鍒楀垏鎹 */
  .glyph-wrap { position: relative; height: 96px; }
  .glyph-wrap .glyph { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; transition: opacity .45s ease; }
  .buy-summary[data-series="ball"] .glyph-ball { opacity: 1; }
  .buy-summary[data-series="atom"] .glyph-atom { opacity: 1; }
  .buy-summary[data-series="flake"] .glyph-flake { opacity: 1; }
  body.subpage .side-nav { display: none; }
  @media (prefers-reduced-motion: reduce) { .modal-card { animation: none; } .glyph-wrap .glyph { transition: none; } }


  /* ============ 鑱旂郴鎴戜滑 ============ */
  /* 宸﹀浘鍙冲崱銆傚湴鍧€鍗℃槸缃戞牸涓嶆槸鍗曞垪 鈥斺€ 浠ュ悗鏂板鍩哄湴鍙槸澶氬崰涓€鏍硷紝
     涓嶄細鍍忓崟鍒楅偅鏍锋妸鍙虫爮瓒婃媺瓒婇暱銆佹妸鍦板浘涓嬫柟绌哄嚭涓€澶х墖 */
  .geo { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 20px; align-items: start; }
  .geo-map {
    background: var(--card); border: 1px solid var(--hairline); border-radius: 26px;
    padding: 10px 12px 6px; box-shadow: var(--shadow);
  }
  .geo-list {
    display: grid; grid-template-columns: repeat(auto-fill, minmax(198px, 1fr));
    gap: 10px; align-content: start;
  }
  .geo-card {
    background: var(--card); border: 1px solid var(--hairline); border-radius: 18px;
    padding: 15px 17px 14px; cursor: pointer; display: flex; flex-direction: column;
    transition: border-color .2s ease, box-shadow .2s ease;
  }
  .geo-card:hover { border-color: color-mix(in srgb, var(--brand) 45%, transparent); }
  .geo-card.on { border-color: var(--brand); box-shadow: var(--shadow); }
  .geo-card:focus-visible { outline: 2px solid var(--brand); outline-offset: 2px; }
  .gc-label { font-size: 11.5px; font-weight: 600; letter-spacing: .12em; color: var(--brand); }
  .geo-card h3 { font-size: 14px; font-weight: 600; color: var(--ink); margin-top: 5px; }
  .gc-addr { font-size: 12.5px; line-height: 1.65; color: var(--ink-2); margin-top: 6px; flex: 1; }
  /* 鐢佃瘽涓庡湴鍥鹃摼鎺ュ悇鍗犱竴琛 鈥斺€ 閮界敤 inline-block 浼氭尋鎴愪竴涓 */
  .gc-tel {
    display: block; margin-top: 8px; font-size: 14.5px; font-weight: 700;
    color: var(--ink); letter-spacing: .02em; font-variant-numeric: tabular-nums;
  }
  .gc-go { display: block; margin-top: 8px; font-size: 12px; font-weight: 600; color: var(--brand); }
  .gc-go:hover { text-decoration: underline; }
  /* 鍚屼竴鎺掑崱鐗囩殑銆屾爣绛 / 鍗曚綅鍚 / 鍦板潃 / 鍦板浘閾炬帴銆嶅洓琛屽叡鐢ㄨ杞細鍏徃鍚嶄竴寮犱袱琛屻€佷竴寮犱竴琛屾椂锛
     鍦板潃涓婃部浠嶉綈骞筹紙subgrid锛涗笉鏀寔鐨勬祻瑙堝櫒閫€鍥炲師鏉ョ殑 flex 绔栨帓锛 */
  @supports (grid-template-rows: subgrid) {
    .geo-card { display: grid; grid-row: span 4; grid-template-rows: subgrid; row-gap: 0; align-content: start; }
    .geo-card > * { align-self: start; }
    .geo-card .gc-go { align-self: end; }
  }

  /* 閮ㄩ棬鐩撮€ + 鍏紬鍙峰苟鎴愪竴琛岋紝鍘熸潵鍏紬鍙疯嚜宸卞崰涓€鏁存锛屼俊鎭笉澶氬嵈鎷夊緱寰堥暱 */
  .reach-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
  .dept-card {
    background: var(--card); border-radius: 22px; box-shadow: var(--shadow);
    padding: 22px 22px 20px; display: flex; flex-direction: column;
  }
  .dept-card h3 { font-size: 14.5px; font-weight: 600; color: var(--ink); letter-spacing: .04em; }
  .dept-tel {
    display: block; margin-top: 9px; font-size: clamp(19px, 2.1vw, 23px); font-weight: 700;
    letter-spacing: -0.01em; color: var(--brand); font-variant-numeric: tabular-nums;
  }
  .dept-tel:hover { text-decoration: underline; }
  .dept-card p { font-size: 13px; line-height: 1.7; color: var(--ink-2); margin-top: 9px; flex: 1; }
  .dept-time {
    margin-top: 12px; padding-top: 11px; border-top: 1px solid var(--hairline);
    font-size: 11.5px; color: var(--ink-3); letter-spacing: .04em;
  }
  .qr-card .qr-img {
    width: 100%; max-width: 132px; aspect-ratio: 1/1; object-fit: contain;
    background: #fff; border: 1px solid var(--hairline); border-radius: 12px;
    padding: 6px; margin-top: 10px;
  }
  .qr-card p { margin-top: 9px; flex: 0; }
  .qr-card .qr-img { margin-inline: auto; }   /* v9.0锛氫簩缁寸爜鍦ㄥ崱鐗囬噷灞呬腑 */

  @media (max-width: 1080px) {
    .reach-grid { grid-template-columns: repeat(2, 1fr); }
  }
  @media (max-width: 900px) {
    .geo { grid-template-columns: 1fr; }
  }
  @media (max-width: 620px) {
    .reach-grid { grid-template-columns: 1fr; }
    .qr-card .qr-img { margin-inline: auto; }
  }

  .cn-map { width: 100%; height: auto; display: block;
    --cn-land-a: #dbe7f5; --cn-land-b: #b9cfe8;
    --cn-edge: #8fb0d4; --cn-shadow: rgba(16,40,80,.22); }
  .cn-map .extrude path { fill: #9db8d8; transform: translateY(5px); }
  .cn-map .land path { fill: url(#cnLand); stroke: var(--cn-edge); stroke-width: .9;
    stroke-linejoin: round; }
  .cn-map .link { fill: none; stroke: #d9560b; stroke-width: 1.7;
    stroke-dasharray: 4 4; opacity: .62; stroke-linecap: round; }
  .cn-map .pin-lead { stroke: #24405f; stroke-width: 1; opacity: .5; }
  .cn-map .pin-true { fill: #24405f; opacity: .55; }
  .cn-map .pin-shadow { fill: rgba(8,20,40,.28); }
  .cn-map .pin-body { fill: url(#cnPin); }
  .cn-map .hq .pin-body { fill: url(#cnPinHq); }
  .cn-map .pin-eye { fill: #fff; }
  .cn-map .pin-tx { fill: #24405f; font-size: 11.5px; font-weight: 600; letter-spacing: .04em; }
  .cn-map .hq .pin-tx { fill: #0a2f52; font-weight: 700; }
  .cn-map { --cn-pin-a: #4aa3e0; --cn-pin-b: #1d6486;
            --cn-hq-a: #ff9c4a; --cn-hq-b: #d9560b; }
  /* 鍗楁捣璇稿矝闄勫浘锛氬悎瑙勫繀闇€锛屽埢鎰忓帇浣庤瑙夐噸閲 鈥斺€ 绾跨粏銆佺偣灏忋€佸弬鐓ф捣宀哥嚎鍗婇€忔槑 */
  .cn-map .nh-box { fill: rgba(143,176,212,.07); stroke: var(--cn-edge); stroke-width: .7; opacity: .75; }
  .cn-map .nh-ref { fill: none; stroke: var(--cn-edge); stroke-width: .7; opacity: .45;
    stroke-linejoin: round; stroke-linecap: round; }
  .cn-map .nh-line { stroke: #5b7fa6; stroke-width: 1.1; stroke-linecap: round; opacity: .85; }
  .cn-map .nh-isl { fill: #5b7fa6; opacity: .8; }
  /* 鍥炬敞鍙冲榻愬埌闄勫浘妗嗙殑鍙宠竟缂橈細鑻辨枃銆孲outh China Sea Islands銆嶆湁 108 涓崟浣嶅锛
     灞呬腑鐨勮瘽浼氶《鍑 viewBox 鍙宠竟鐣岃鍒囨帀锛堜腑鏂囧彧鏈 35 瀹斤紝鐪嬩笉鍑烘潵锛?/
  .cn-map .nh-cap { fill: #24405f; font-size: 8px; letter-spacing: .1em; opacity: .7;
    text-anchor: end; }
  /* ---------- 浜烘墠鎷涘嫙 ---------- */
  /* 鎷涜仒淇℃伅锛氬矖浣嶅崱鐗囷紝鐐瑰紑鏄畬鏁村矖浣嶈鏄 */
  .job-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
  .job-card {
    display: flex; align-items: center; justify-content: space-between; gap: 16px; text-align: left;
    background: var(--card); border: 1px solid var(--hairline); border-radius: 18px;
    padding: 24px 26px; font-family: inherit; cursor: pointer;
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
  }
  .job-card:hover { transform: translateY(-3px); box-shadow: var(--shadow); border-color: transparent; }
  .job-main b { display: block; font-size: 17.5px; font-weight: 700; letter-spacing: -0.01em; color: var(--ink); }
  .job-main i { display: block; font-style: normal; font-size: 13px; color: var(--ink-3); margin-top: 7px; }
  .job-more { flex: none; font-size: 13px; font-weight: 600; color: var(--accent); white-space: nowrap; }
  .job-more .arw { margin-left: 3px; display: inline-block; transition: transform .2s ease; }
  .job-card:hover .job-more .arw { transform: translateX(2px); }
  #jobModal0 .amodal-body ul, #jobModal1 .amodal-body ul { counter-reset: jr; }
  @media (max-width: 760px) { .job-list { grid-template-columns: 1fr; } }
  .join-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
  .join-card { background: var(--card); border: 1px solid var(--hairline); border-radius: 18px; padding: 26px 26px 28px; }
  .join-card h4 { font-size: 17px; font-weight: 700; letter-spacing: -0.01em; }
  .join-card p { font-size: 13.5px; color: var(--ink-2); line-height: 1.75; margin-top: 10px; }
  @media (max-width: 860px) { .join-grid { grid-template-columns: repeat(2, 1fr); } }
  @media (max-width: 560px) { .join-grid { grid-template-columns: 1fr; } }

  /* 鍥㈤槦鐢熸椿 路 鍥剧墖澧 */
  /* 瀹藉害璺熺潃鍥剧墖澧欒蛋锛氬ぇ鍥惧崰 3 鍒楅噷鐨 2 鍒楋紙gap 12px锛夛紝瀵艰鍙宠竟鐣屼笌瀹冮綈骞 */
  .life-lead { font-size: clamp(16.5px, 1.7vw, 19px); color: var(--ink-2); line-height: 1.85; max-width: calc((200% - 12px) / 3); margin: -4px 0 26px; text-wrap: pretty; }
  /* 鐗堝潡瀵艰锛氬彧鏈変竴鍙ヨ瘽锛?4em 浼氭妸瀹冩尋鎴愪袱琛岋紝鏀惧紑鍒扮増蹇冨 */
  .sec-lead { font-size: clamp(15.5px, 1.5vw, 17.5px); color: var(--ink-2); line-height: 1.8; margin: -4px 0 26px; text-wrap: pretty; }
  /* v8.9锛氫紒涓氶璨屽璇彸缂樺榻愮浜屽紶鐩稿唽銆岃溅闂寸鐞嗐€嶏紙3 鍒椼€乬ap 16px锛夛紱鐩稿唽鍙樹袱鍒楁椂涓嶉檺瀹 */
  #ab-culture .sec-lead { max-width: calc((200% - 16px) / 3); }
  @media (max-width: 860px) { #ab-culture .sec-lead { max-width: none; } }
  .life-wall { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
  .life-shot {
    position: relative; overflow: hidden; border-radius: 18px; margin: 0;
    background: var(--bg-tint); aspect-ratio: 4 / 3;
  }
  .life-shot.wide { grid-column: span 2; grid-row: span 2; aspect-ratio: auto; }
  .life-shot img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .6s ease; }
  .life-shot:hover img { transform: scale(1.045); }
  .life-shot figcaption {
    position: absolute; left: 0; right: 0; bottom: 0; padding: 30px 15px 12px;
    font-size: 12.5px; font-weight: 600; line-height: 1.5; color: #fff;
    background: linear-gradient(to top, rgba(0,0,0,.66), rgba(0,0,0,.28) 45%, rgba(0,0,0,0));
  }
  .life-shot.wide figcaption { font-size: 15px; padding: 46px 24px 20px; }
  @media (max-width: 860px) {
    /* 涓ゅ垪涓 6 寮犱細鍓╀竴寮犺惤鍗曪紝璁╅灏句袱寮犲悇鍗犳弧涓€琛 */
    .life-wall { grid-template-columns: repeat(2, 1fr); }
    .life-shot.wide, .life-wall .life-shot:last-child { grid-column: span 2; grid-row: span 1; aspect-ratio: 16 / 10; }
  }
  @media (max-width: 560px) {
    .life-wall { grid-template-columns: 1fr; }
    .life-shot.wide, .life-wall .life-shot:last-child { grid-column: span 1; aspect-ratio: 4 / 3; }
    .life-shot.wide figcaption { font-size: 13px; padding: 30px 15px 12px; }
  }
  @media (prefers-reduced-motion: reduce) { .life-shot:hover img { transform: none; } }

  /* ---------- Footer ---------- */
  footer { background: var(--bg-tint); font-size: 12.5px; color: var(--ink-2); }
  .foot-inner { max-width: var(--wrap); margin: 0 auto; padding: 46px var(--gutter) 38px; }
  .foot-cols { display: grid; grid-template-columns: repeat(5, auto); justify-content: space-between; gap: 24px; padding-bottom: 26px; border-bottom: 1px solid var(--hairline); }
  .foot-cols h5 { font-size: 12.5px; color: var(--ink); margin-bottom: 12px; font-weight: 700; }
  .foot-cols ul { list-style: none; display: flex; flex-direction: column; gap: 9px; }
  .foot-cols a:hover { text-decoration: underline; }
  .foot-legal { padding-top: 20px; display: flex; flex-wrap: wrap; gap: 6px 22px; color: var(--ink-3); }
  /* 澶囨鍙锋寜瑙勫畾瑕侀摼鍒 beian.miit.gov.cn锛屼絾鏍峰紡瑕佸拰鏃佽竟鐨勭伆瀛椾竴鑷达紝鍒烦鍑烘潵 */
  .foot-legal a { color: inherit; text-decoration: none; }
  .foot-legal a:hover { color: var(--accent); text-decoration: underline; }
  @media (max-width: 820px) { .foot-cols { grid-template-columns: repeat(3, 1fr); justify-content: stretch; } }
  @media (max-width: 700px) { .foot-cols { grid-template-columns: repeat(2, 1fr); } }

  /* ---------- 渚ц竟鎮诞鑿滃崟 ---------- */
  .side-nav {
    position: fixed; left: 16px; top: 50%; transform: translateY(-50%);
    z-index: 90; display: flex; flex-direction: column; gap: 4px;
  }
  .side-nav a {
    display: flex; align-items: center; justify-content: flex-end; flex-direction: row-reverse;
    gap: 10px; padding: 5px 0;
  }
  .side-nav .lbl {
    font-size: 12px; color: var(--ink-2); white-space: nowrap;
    background: var(--card); border: 1px solid var(--hairline); border-radius: 980px;
    padding: 4px 12px; box-shadow: var(--shadow);
    opacity: 0; transform: translateX(-8px); pointer-events: none;
    transition: opacity .25s ease, transform .25s ease;
  }
  .side-nav .dot {
    width: 8px; height: 8px; border-radius: 50%; flex: none;
    background: var(--ink-3); opacity: .45;
    transition: transform .25s ease, background .25s ease, opacity .25s ease;
  }
  .side-nav a:hover .lbl { opacity: 1; transform: none; }
  .side-nav a:hover .dot { opacity: .9; }
  .side-nav a.active .dot { background: var(--accent); opacity: 1; transform: scale(1.4); }
  .side-nav a.active .lbl { color: var(--accent); font-weight: 600; }
  @media (max-width: 1180px) { .side-nav { display: none; } }
  @media (prefers-reduced-motion: reduce) { .side-nav .lbl, .side-nav .dot { transition: none; } }
  /* ---------- 渚ц竟鏈嶅姟鏍 ---------- */
  .dock {
    /* 鍨傜洿灞呬腑锛屼絾涓績绾夸笉寰楅珮浜 400px锛氭渶楂樼殑銆屼骇鍝佸挩璇€嶆诞灞備互鍥炬爣涓轰腑蹇冨悜涓婁几 309.5px锛
       鍐嶅姞涓€绾у鑸 77px + 12px 闂磋窛 = 398.5銆傜獥鍙ｉ珮搴 鈮?00px 鏃 50% 鏈潵灏辨洿澶э紝浣嶇疆涓嶅彉锛
       鐭獥鍙ｏ紙鐢ㄦ埛瀹炴祴绾 620px锛夋墠鏁翠綋涓嬬Щ锛屽厤寰楁诞灞備笂娌块捇鍒板鑸紙z-index 100锛夊簳涓嬭鍒囨帀銆
       鈮?180px 鐨勫獟浣撴煡璇㈤噷 .dock 鏄 top:auto / bottom:18px锛屾墜鏈虹涓嶅彈杩欐潯褰卞搷銆 */
    position: fixed; right: 18px; top: max(400px, 50%); transform: translateY(-50%);
    z-index: 95; display: flex; flex-direction: column;
    background: var(--nav-bg);
    -webkit-backdrop-filter: saturate(180%) blur(20px);
    backdrop-filter: saturate(180%) blur(20px);
    border: 1px solid var(--hairline); border-radius: 20px;
    box-shadow: var(--shadow);
  }
  .dock-item {
    position: relative; width: 68px; padding: 12px 5px 10px;
    color: var(--ink-2); cursor: pointer;
    display: flex; flex-direction: column; align-items: center; gap: 5px;
    border-bottom: 1px solid var(--hairline);
    transition: color .2s ease, background .2s ease;
  }
  .dock-item:first-child { border-radius: 19px 19px 0 0; }
  .dock-item:last-child { border-bottom: 0; border-radius: 0 0 19px 19px; }
  .dock-item:hover { color: var(--accent); background: color-mix(in srgb, var(--accent) 9%, transparent); }
  .dock-item svg {
    width: 22px; height: 22px; display: block;
    stroke: currentColor; fill: none; stroke-width: 1.6;
    stroke-linecap: round; stroke-linejoin: round;
  }
  /* v10.1锛氬浘鏍囦笅鐨勬枃瀛楀父鏄撅紙鍘熸潵瑕佹偓鍋滄暣鏉℃墠灞曞紑锛屽彧鏈夊浘鏍囨椂璁垮鐪嬩笉鎳傛槸鍋氫粈涔堢殑锛夛紱娴眰浠嶆槸鎮仠鍗曢」鎵嶅嚭 */
  .dock-item .cap {
    font-size: 10.5px; line-height: 1.25; letter-spacing: .01em; text-align: center; white-space: nowrap;
  }

  .dock-pop {
    position: absolute; right: calc(100% + 12px); top: 50%;
    transform: translate(8px, -50%); width: 238px; text-align: left;
    background: var(--card); border: 1px solid var(--hairline); border-radius: 16px;
    box-shadow: var(--shadow); padding: 18px 20px;
    opacity: 0; pointer-events: none; visibility: hidden;
    transition: opacity .22s ease, transform .22s ease, visibility .22s;
  }
  .dock-item:hover .dock-pop, .dock-item:focus-visible .dock-pop {
    opacity: 1; transform: translate(0, -50%); visibility: visible; pointer-events: auto;
  }
  .dock-pop::after { content: ""; position: absolute; left: 100%; top: 0; width: 14px; height: 100%; }
  .dock-pop h6 { font-size: 11px; font-weight: 700; letter-spacing: .16em; color: var(--copper); margin-bottom: 9px; }
  .dock-pop .tel {
    font-size: 19px; font-weight: 700; color: var(--ink); letter-spacing: -0.01em;
    font-variant-numeric: tabular-nums; line-height: 1.3;
  }
  .dock-pop p { font-size: 12.5px; color: var(--ink-2); line-height: 1.6; margin-top: 7px; }
  /* v7.9锛氭暣鍙ヨ瘽鐢 .tel 浼氬お澶э紝鍗曠嫭鏀朵竴妗 */
  .dock-pop .tel.tel-sm { font-size: 14px; font-weight: 600; line-height: 1.5; }
  /* v8.8锛氫腑鏂囨暣鍙 13px 姝ｅソ涓€琛岋紙198px 鍐呭瀹斤級锛涖€岀偣鍑绘澶勩€嶅彟璧蜂竴琛屻€傝嫳鏂囧彞瀛愰暱锛岀収甯告姌琛 */
  .dock-pop .tel.tel-sm, .dock-pop .tel.tel-sm + .hint { display: block; }
  :root:not([lang="en"]) .dock-pop .tel.tel-sm { font-size: 13px; white-space: nowrap; }
  .dock-pop .hint { font-size: 12.5px; color: var(--accent); margin-top: 11px; font-weight: 600; }
  .dock-pop .qr {
    width: 118px; height: 118px; border-radius: 10px; margin: 2px auto 0;
    border: 1px solid var(--hairline); background: #fff; padding: 5px;
  }
  .dock-pop .qr img { width: 100%; height: 100%; object-fit: contain; }
  /* v7.9锛氫簩缁寸爜璇存槑绉诲埌鍥句笅鏂逛竴琛 */
  .dock-pop .qr-cap { display: block; text-align: center; font-size: 12.5px;
    color: var(--ink-2); margin-top: 6px; }
  .dock-pop .center { text-align: center; }

  @media (max-width: 1180px) {
    .dock { right: 12px; top: auto; bottom: 18px; transform: none; }
    .dock-item { width: 50px; padding: 11px 4px; }
    .dock-item .cap, .dock-pop { display: none; }
    /* 绐勫睆娌℃湁 hover 杩欏洖浜嬶紝涓婇潰閭ｆ潯鎶婃诞灞傛暣涓叧鎺変簡銆傘€屽叕鍙哥ぞ濯掋€嶈繖涓€椤圭殑鍏ㄩ儴鍐呭
       灏辨槸閭ｅ紶浜岀淮鐮侊紝鍏虫帀绛変簬鎸夐挳鐐逛簡娌″弽搴 鈥斺€ 鍗曠嫭缁欏畠寮€銆岀偣鎸夊垏鎹€嶏紙v5.6锛夈€
       鍏朵綑鍥涢」鐐逛笅鍘绘湰鏉ュ氨鏈夊姩浣滐紝涓嶅姩銆
       娴眰鍦ㄦ闈㈡槸鍨傜洿灞呬腑鎸傚湪宸︿晶鐨勶紱杩欓噷鏀规垚**搴曡竟涓庢寜閽榻?*锛
       鍚﹀垯浜岀淮鐮侀偅涓€鍧 200px 楂樹粠灞忓箷涓嬫部婧㈠嚭鍘 */
    .dock-item.dock-tap { cursor: pointer; }
    .dock-item.dock-tap.pop-open {
      color: var(--accent); background: color-mix(in srgb, var(--accent) 9%, transparent);
    }
    .dock-item.dock-tap.pop-open .dock-pop {
      display: block; opacity: 1; visibility: visible; pointer-events: auto;
      right: calc(100% + 10px); left: auto; top: auto; bottom: 0; transform: none;
      width: min(238px, calc(100vw - 86px));
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .dock-item, .dock-pop { transition: none; }
  }
  /* ---------- 閿氱偣钀戒綅鐣欑櫧 ---------- */
  /* 瀵艰埅鏄 sticky锛屾粴鍔ㄨ惤鐐圭殑涓婃部浼氳瀹冪洊浣忋€傛瘡绫昏烦杞洰鏍囬厤涓€涓 scroll-margin-top锛
     钀戒綅鍚庢爣棰樻墠涓嶄細璐寸潃瀵艰埅鏉°€傚疄娴嬫湭鍔犱箣鍓嶏細涓€绾у鑸垏椤靛彧鍓 19px锛
     浜у搧涓績鐨勩€屽簲鐢ㄩ鍩熴€嶆槸 -2px 鈥斺€ 鏍囬鏁翠釜鍘嬪湪瀵艰埅鏉′笅闈 */
  /* 钀戒綅鍚庣殑鍛煎惛绌洪棿 = scroll-margin-top + 鐩爣鑷韩鐨勪笂鍐呰竟璺 鈭 绮橀《鎬婚珮銆
     涓€绾у鑸 77px锛堢獎灞 64锛夛紝浜岀骇椤靛啀鍙犱竴鏉 47px 鐨勪簩绾у鑸€
     棣栭〉涓嶈锛氬畠鐨勭増鍧楅珮搴︽槸鎸夋弧灞忔帓鐨勶紝涓€鏃﹀線涓嬫尓灏变細鎶婁笅涓€鍧楃殑搴曡壊闇插嚭鏉ヤ竴鏉★紝
     鐢婚潰鏄惧緱鍓茶鈥斺€攙3.6 鍔犺繃 24px锛屽凡鎾ゅ洖 */
  #top { scroll-margin-top: 77px; }              /* 钀界偣鍥炲埌 scrollY=0锛屼笌鍒濇杞藉叆涓€鑷 */
  .page-head { scroll-margin-top: 30px; }        /* 96 鈭 47 鈮 49px 鍛煎惛 */
  .apps, .buy { scroll-margin-top: 64px; }       /* 120 鈭 60 = 60px 鍛煎惛 */
  /* 棣栭〉閲岃繖涓変釜渚嬪锛?partners / .news 鐨勪笂鍐呰竟璺濇槸 0銆侀〉鑴氫篃鏄紝
     鏍囬绱ц创鐗堝潡椤惰竟锛岃惤浣嶅悗琚鑸潯鏁翠釜鐩栦綇锛堝疄娴 鈭?7px锛寁3.5 鍙婃洿鏃╅兘鏈夛級銆
     鍙粰杩欎笁涓ˉ鍋忕Щ锛岀敓浜у熀鍦般€佹妧鏈笌璧勮川浠嶆寜鍘熸牱涓嶅姩 */
  #partners, #news { scroll-margin-top: 127px; }
  #contact { scroll-margin-top: 81px; }          /* 椤佃剼鑷繁鏈 46px 涓婂唴杈硅窛 */
  @media (max-width: 880px) {
    #top { scroll-margin-top: 64px; }
    .page-head { scroll-margin-top: 18px; }
    .apps, .buy { scroll-margin-top: 51px; }
    #partners, #news { scroll-margin-top: 114px; }
    #contact { scroll-margin-top: 68px; }
  }

  /* ---------- 澶氶〉闈笌浜岀骇椤 ---------- */
  .page[hidden] { display: none; }
  body.subpage .side-nav { display: none; }

  .page-head {
    text-align: center; padding: clamp(66px, 9vh, 96px) 22px clamp(30px, 4vh, 44px);
    background:
      radial-gradient(900px 380px at 50% -120px, color-mix(in srgb, var(--accent) 11%, transparent), transparent 70%),
      var(--bg);
  }
  /* 鑻辨枃鐗堬細.eng 鏄粰涓枃鐗堥厤鐨勮嫳鏂囩偣缂€锛岀炕璇戝悗浼氬拰鏍囬鎾炴垚涓ら亶
     锛圥roducts/Products銆丳rofile/Profile銆丄bout Welllink/About Us鈥︼級锛屾暣浣撻殣钘 */
  html[lang="en"] .eng,
  html[lang="en"] .rd-patent-head span { display: none; }
  /* 鑻辨枃鐗堬細Request a quote / Product info / Datasheet 涓変釜鎸夐挳鍘熸潵 518px 鎺掍笉涓 405px 鐨勬爮瀹斤紝
     鎶樻垚涓よ銆傛敹绱у乏鍙冲唴杈硅窛涓庨棿璺濆悗 376px锛屼竴琛屾斁寰椾笅锛圖atasheet 宸茬敱璇嶈〃绮剧畝锛 */
  html[lang="en"] .buy-ctas { flex-wrap: nowrap; gap: 8px; }
  html[lang="en"] .buy-ctas > * { padding-left: 14px; padding-right: 14px; white-space: nowrap; }
  /* 涓婇潰閭ｆ潯 376px 鏄寜妗岄潰 405px 鏍忓绠楃殑銆傗墹900px 閫夎喘鍣ㄥ彉鍗曟爮锛屽崱鐗囧唴鍙敤瀹 = 瑙嗗彛 鈭 112锛
     浣庝簬 516px 涓変釜鎸夐挳锛堝疄娴 404px锛夊繀鐒舵孩鍑猴紝鎶婃暣椤垫拺瀹姐€傜獎灞忔斁寮€鎹㈣锛屽唴杈硅窛浠嶆敹鐫€ */
  @media (max-width: 560px) { html[lang="en"] .buy-ctas { flex-wrap: wrap; } }


  .page-head .eng { font-size: 12px; letter-spacing: .28em; color: var(--ink-3); font-weight: 600; text-transform: uppercase; }
  .page-head h1 {
    font-size: clamp(34px, 5.4vw, 60px); font-weight: 700; letter-spacing: -0.025em;
    line-height: 1.12; margin-top: 12px; text-wrap: balance;
  }
  .page-head p { color: var(--ink-2); font-size: 17px; margin-top: 14px; max-width: 620px; margin-inline: auto; text-wrap: balance; }

  .subnav {
    position: sticky; top: 76px; z-index: 80;
    background: var(--nav-bg);
    -webkit-backdrop-filter: saturate(180%) blur(20px); backdrop-filter: saturate(180%) blur(20px);
    border-bottom: 1px solid var(--hairline);
  }
  @media (max-width: 880px) { .subnav { top: 64px; } }
  .subnav-inner {
    max-width: var(--wrap); margin: 0 auto; padding: 0 var(--gutter); height: 46px;
    display: flex; align-items: stretch; overflow-x: auto; scrollbar-width: none;
  }
  .subnav-inner::-webkit-scrollbar { display: none; }
  /* 涓庝竴绾у鑸悓涓€濂楀舰鐘惰瑷€锛氭暣鏍奸珮鐨勭煩褰紝搴曡壊鑷笅鑰屼笂鍗囨弧 */
  .subnav a {
    position: relative; z-index: 0; display: flex; align-items: center;
    font-size: 13.5px; color: var(--ink-2); padding: 0 16px; border-radius: 0;
    white-space: nowrap; transition: color .28s ease;
  }
  .subnav a::before {
    content: ""; position: absolute; inset: 0; z-index: -1; background: var(--accent);
    transform: scaleY(0); transform-origin: bottom; transition: transform .28s ease;
  }
  .subnav a:hover::before { transform: scaleY(1); }
  .subnav a:hover { color: #fff; }
  .subnav a.on { color: #fff; font-weight: 600; transition: none; }
  .subnav a.on::before { transform: scaleY(1); transition: none; }
  @media (prefers-reduced-motion: reduce) { .subnav a, .subnav a::before { transition: none; } }
  /* 绐勫睆鎺掍笉涓嬫椂杩欎竴鏉℃槸妯悜婊氬姩鐨勶紙璧拌繘鏂板▉鍑 8 椤广€佹姇璧勮€呭叧绯讳笌浜烘墠鎷涘嫙鍚 4 椤癸級銆
     鍏夎兘婊氫笉澶燂紝鐢ㄦ埛涓嶇煡閬撳彸杈硅繕鏈変笢瑗匡紝涔熶笉鐭ラ亾鑷繁璇诲埌鍝竴鑺備簡銆備袱浠朵簨閰嶅悎锛
     鈶 涓ょ娓愰殣閬僵鈥斺€旇鍒囨帀鐨勫崐涓爮鐩湰韬氨鏄€岃繖杈硅繕鏈夈€嶇殑鎻愮ず锛屽埌澶村氨鎾ゆ帀锛
     鈶 楂樹寒椤硅窡鐫€闃呰浣嶇疆鑷姩婊氳繘瑙嗛噹锛堣鑴氭湰閲岀殑 keepVisible锛夈€
     浜у搧涓績鍙湁 2 椤癸紝澶╃劧鎺掑緱涓嬶紝sn-l/sn-r 閮戒笉浼氬姞涓婏紝閬僵鑷繁涓嶅嚭鐜帮紝涓嶅繀鎸夐〉闈㈠垎鏀 */
  .subnav-inner.sn-l.sn-r {
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 26px, #000 calc(100% - 26px), transparent 100%);
            mask-image: linear-gradient(90deg, transparent 0, #000 26px, #000 calc(100% - 26px), transparent 100%);
  }
  .subnav-inner.sn-l:not(.sn-r) {
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 26px);
            mask-image: linear-gradient(90deg, transparent 0, #000 26px);
  }
  .subnav-inner.sn-r:not(.sn-l) {
    -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 26px), transparent 100%);
            mask-image: linear-gradient(90deg, #000 calc(100% - 26px), transparent 100%);
  }

  /* ---------- 绐勫睆涓€绾у鑸細姹夊牎闈㈡澘锛坴5.5 鏂板锛 ----------
     880px 浠ヤ笅 .nav-links 鏁存潯闅愯棌锛屽湪姝や箣鍓嶆病鏈変换浣曟浛浠ｅ叆鍙ｏ細鍏釜涓€绾ф爮鐩噷
     鍙湁 about/products/ir/join 鑳戒粠椤佃剼璧板埌锛屻€屾柊闂讳腑蹇冦€嶅湪鎵嬫満涓婂畬鍏ㄦ病鏈夊叆鍙ｃ€
     娉ㄦ剰 .nav 甯 backdrop-filter 鈥斺€ 瀹冨凡缁忔槸缁濆/鍥哄畾瀹氫綅鍚庝唬鐨勫寘鍚潡锛
     闈㈡澘鍜岃挋鐗堜竴寰嬬敤 absolute 鎸傚湪 .nav 涓婏紝鍒啓 position:fixed锛堝弬鐓х郴涓嶆槸瑙嗗彛锛岃涓轰笉鐩磋锛 */
  .nav-burger, .nav-menu, .nav-scrim { display: none; }
  /* v6.9锛氭柇鐐 880 鈫 1100銆?81鈥?180 瀹芥椂鍘傛爣 + 7 涓爮鐩 + 涓?EN 鏀句笉涓嬶紝涓?EN 琚尋鍑哄睆骞曘€
     杩欓噷涓 .nav-links 鐨勯殣钘忔柇鐐广€佽剼鏈噷涓ゅ innerWidth 鍒ゆ柇蹇呴』涓€鑷 */
  @media (max-width: 1100px) {
    .nav-burger {
      display: flex; flex-direction: column; justify-content: center; gap: 5px;
      flex: none; margin-left: 10px; width: 38px; height: 38px; padding: 0 7px;
      background: transparent; border: 0; border-radius: 10px;
    }
    .nav-burger span {
      display: block; height: 1.8px; border-radius: 2px; background: var(--ink);
      transition: transform .26s cubic-bezier(.4,0,.2,1), opacity .18s ease;
    }
    .nav-burger[aria-expanded="true"] span:nth-child(1) { transform: translateY(6.8px) rotate(45deg); }
    .nav-burger[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
    .nav-burger[aria-expanded="true"] span:nth-child(3) { transform: translateY(-6.8px) rotate(-45deg); }

    .nav-scrim {
      display: block; position: absolute; top: 100%; left: 0; right: 0; height: 100vh;
      background: rgba(3, 10, 20, .34);
      opacity: 0; pointer-events: none; transition: opacity .26s ease;
    }
    .nav-menu {
      display: block; position: absolute; top: 100%; left: 0; right: 0;
      background: var(--nav-bg);
      -webkit-backdrop-filter: saturate(180%) blur(20px); backdrop-filter: saturate(180%) blur(20px);
      border-bottom: 1px solid var(--hairline);
      padding: 2px var(--nav-gutter) 10px;
      /* 鏀惰捣鏃剁敤 visibility 鑰屼笉鏄彧璋 opacity锛氳灞忎笌 Tab 閿兘涓嶈璧拌繘涓€鏉＄湅涓嶈鐨勫鑸€
         visibility 涓嶈鍙備笌鎻掑€硷紙绂绘暎灞炴€э紝闈犳椂鏈虹炕杞笉鍙潬锛夛紝鏀规垚 0s 寤舵椂锛
         灞曞紑鏃剁珛鍒诲彲瑙侊紝鏀惰捣鏃剁瓑娣″嚭璧板畬鍐嶉殣钘 */
      visibility: hidden; opacity: 0; transform: translateY(-8px);
      transition: opacity .24s ease, transform .24s cubic-bezier(.4,0,.2,1), visibility 0s .24s;
    }
    .nav.menu-open .nav-scrim { opacity: 1; pointer-events: auto; }
    .nav.menu-open .nav-menu {
      visibility: visible; opacity: 1; transform: none;
      transition: opacity .24s ease, transform .24s cubic-bezier(.4,0,.2,1), visibility 0s;
    }
    /* :not(.lang-switch) 鏄繀椤荤殑锛氬椤电増閲屼腑/EN 涔熸槸 <a>锛岃鎸繘闈㈡澘鍚庝細鍚冨埌杩欐潯 */
    .nav-menu a:not(.lang-switch) {
      display: block; padding: 13px 2px; font-size: 16px; color: var(--ink);
      border-bottom: 1px solid var(--hairline);
    }
    .nav-menu a:not(.lang-switch).on { color: var(--accent); font-weight: 600; }
    /* 371px 鐨勫鑸潯鏀句笉涓嬨€屽巶鏍 259 + 涓?EN 72 + 姹夊牎 38 + 宸﹀彸鐣欑櫧 40銆嶏紳 409px锛
       纭尋灏变細鎶婃暣鏉″鑸拺鍑哄睆骞曗€斺€旀鏄繖涓€鐗堣淇殑閭ｇ被妯悜婧㈠嚭銆傜獎灞忔妸涓?EN 鏀惰繘闈㈡澘锛
       鑵惧嚭 80px 灏辨濂藉銆傛尓鍔ㄧ敱鑴氭湰瀹屾垚锛堟尓鐨勬槸鍚屼竴涓妭鐐癸紝涓嶆槸鍓湰锛 */
    .nav-inner > .lang-switch { display: none; }
    .nav-menu > .lang-switch { display: inline-flex; margin: 16px 0 2px; }
  }
  @media (prefers-reduced-motion: reduce) {
    .nav-burger span, .nav-menu, .nav-scrim { transition: none; }
  }

  .sec { max-width: var(--wrap); margin: 0 auto; padding: 72px var(--gutter) 0; scroll-margin-top: 77px; }
  @media (max-width: 880px) { .sec { scroll-margin-top: 89px; } }   /* 绮橀《鎬婚珮 64 + 47 */
  .sec-title { display: flex; align-items: baseline; gap: 14px; margin-bottom: 26px; }
  .sec-title h2 { font-size: clamp(24px, 3.2vw, 34px); font-weight: 700; letter-spacing: -0.02em; }
  .sec-title .eng { font-size: 12px; letter-spacing: .2em; color: var(--ink-3); font-weight: 600; text-transform: uppercase; }

  /* 浼佷笟绠€浠 */
  .profile-grid { display: grid; grid-template-columns: 1.3fr 1fr; gap: 22px; align-items: stretch; }
  .profile-text {
    background: var(--card); border: 1px solid var(--hairline); border-radius: 22px; padding: 34px 36px;
  }
  .profile-text p { font-size: 15px; line-height: 1.9; color: var(--ink-2); max-width: 43em; }
  .profile-text p + p { margin-top: 16px; }
  .profile-text strong { color: var(--ink); font-weight: 600; }

  /* 瀹ｄ紶鐗囨寜 16:9 鍗犱綇鍙冲垪涓婂崐锛屽洓椤规暟瀛椾袱涓や竴鎺掑灚鍦ㄤ笅闈㈡妸鍙冲垪濉弧 */
  .profile-stats { display: grid; grid-template-columns: repeat(2, 1fr); grid-auto-rows: 1fr; gap: 12px; flex: 1; }
  .pstat {
    background: var(--card); border: 1px solid var(--hairline); border-radius: 18px; padding: 18px 20px;
    display: flex; flex-direction: column; justify-content: center;
  }
  .pstat b { display: block; font-size: 24px; font-weight: 700; color: var(--brand); letter-spacing: -0.02em; font-variant-numeric: tabular-nums; }
  .pstat b em { font-style: normal; font-size: .5em; font-weight: 600; color: var(--ink-2); margin-left: 3px; }
  .pstat span { display: block; font-size: 12.5px; color: var(--ink-2); margin-top: 5px; }
  @media (max-width: 860px) { .profile-grid { grid-template-columns: 1fr; } }
  @media (max-width: 520px) { .profile-stats { grid-template-columns: 1fr; } }

  /* 浼佷笟瀹ｄ紶鐗 */
  .profile-side { display: flex; flex-direction: column; gap: 12px; }
  .promo {
    position: relative; flex: none; margin: 0; width: 100%; aspect-ratio: 16 / 9; cursor: pointer;
    border-radius: 22px; overflow: hidden; background: var(--navy);
    display: flex; align-items: flex-end;
  }
  .promo-cover { position: absolute; inset: 0; background-size: cover; background-position: center; }
  .promo-scrim {
    position: absolute; inset: 0;
    background: linear-gradient(to top, rgba(6,16,32,.88) 0%, rgba(6,16,32,.3) 46%, rgba(6,16,32,0) 78%);
  }
  /* 灏侀潰鏄墖澶存爣棰樺崱锛屾涓槸 LOGO锛屾挱鏀鹃敭寰楄寮€鈥斺€旀尓鍒板乏涓嬭涓庣墖鍚嶆帓鎴愪竴鏉 */
  .promo-play {
    position: absolute; left: 24px; bottom: 20px;
    width: 52px; height: 52px; border-radius: 50%; border: 0; padding: 0;
    background: rgba(255,255,255,.93); color: var(--brand);
    display: flex; align-items: center; justify-content: center;
    box-shadow: 0 8px 24px rgba(6,16,32,.42);
    transition: transform .25s ease, background .25s ease;
  }
  .promo-play svg { width: 19px; height: 19px; fill: currentColor; margin-left: 3px; }
  .promo:hover .promo-play { transform: scale(1.09); background: #fff; }
  .promo figcaption { position: relative; padding: 22px 24px 24px 90px; color: #fff; }
  .promo figcaption b { display: block; font-size: 16px; font-weight: 700; letter-spacing: -0.005em; }
  .promo figcaption span { display: block; font-size: 12.5px; color: rgba(255,255,255,.72); margin-top: 5px; }
  @media (max-width: 520px) {
    .promo-play { left: 16px; bottom: 16px; width: 44px; height: 44px; }
    .promo figcaption { padding: 18px 18px 20px 72px; }
  }
  @media (prefers-reduced-motion: reduce) { .promo-play { transition: none; } }

  /* 瀹ｄ紶鐗囩伅绠憋細灏侀潰鍗℃槸绔栭暱鐨勶紝16:9 鐨勭墖瀛愬氨鍦版挱浼氫笂涓嬪帇榛戣竟锛屾墍浠ュ彟寮€涓€灞傛斁 */
  .vbox[hidden] { display: none; }
  .vbox { position: fixed; inset: 0; z-index: 210; display: flex; align-items: center; justify-content: center; padding: 24px; }
  .vbox-mask { position: absolute; inset: 0; background: rgba(4,10,20,.86); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
  .vbox-inner {
    position: relative; width: min(1180px, 100%, calc((100vh - 120px) * 960 / 544)); aspect-ratio: 960 / 544;
    background: #000; border-radius: 16px; box-shadow: 0 30px 80px rgba(0,0,0,.6);
  }
  .vbox-inner video { width: 100%; height: 100%; display: block; border-radius: 16px; }
  .vbox-x {
    position: absolute; top: -42px; right: 0; width: 34px; height: 34px; padding: 0;
    border: 0; border-radius: 50%; background: rgba(255,255,255,.16); color: #fff; font-size: 19px; line-height: 1;
  }
  .vbox-x:hover { background: rgba(255,255,255,.3); }
  @media (max-width: 560px) { .vbox-x { top: auto; bottom: -42px; } }

  /* 钁ｄ簨闀垮瘎璇 */
  .letter {
    background: linear-gradient(165deg, var(--navy), var(--navy-card)); color: var(--ink-on-navy);
    border-radius: 26px; padding: 46px clamp(26px, 5vw, 58px) 40px; position: relative; overflow: hidden;
  }
  .letter::before {
    content: "\201C"; position: absolute; top: -34px; left: 24px;
    font-size: 190px; line-height: 1; color: var(--cyan-on-navy); opacity: .16; font-family: Georgia, serif;
  }
  /* 钁ｄ簨闀垮瘎璇細宸︿俊浠跺彸鍚嶇墖銆
     浜虹墿鏈濆乏锛屽悕鐗囨斁鍙虫爮浠栨墠鏄€岀湅鍥炰俊浠躲€嶈繖涓€渚 鈥斺€ 闀滃儚鐪熶汉瀹樻柟鑲栧儚灞炰簬绡℃敼锛屼笉鍋氥€
     澶栧眰 .sec 宸茬粡缁欎簡鐗堝績鍜屽乏鍙崇暀鐧斤紝杩欓噷鍙鍒嗘爮 */
  .chair-grid {
    display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 22px; align-items: start;
  }
  .chair-card {
    position: sticky; top: 140px;   /* v8.9锛氫竴绾 77 + 浜岀骇 47 瀵艰埅涔嬩笅鍐嶇暀 16px锛堝師 96px 涓婃部琚簩绾у鑸洊浣忥級 */
    background: var(--card); border-radius: 26px; box-shadow: var(--shadow);
    padding: 24px 22px 26px;
  }
  /* 鐓х墖鏀惧洖 v6.0 鐨勫ぇ灏哄銆傜礌鏉 PNG 鏈韩灏辨槸鍦嗗舰瑁佸垏銆佸洓瑙掗€忔槑锛
     鎵€浠ユ寜姝ｅ渾澶勭悊锛屾弿杈逛笌鎶曞奖璐寸潃鍦嗚蛋锛屼笉浼氬儚濂楁柟妗嗛偅鏍峰洓瑙掑彂绌 */
  .chair-photo {
    display: block; width: 100%; max-width: 258px; aspect-ratio: 1 / 1;
    margin: 2px auto 0; border-radius: 50%; background: var(--bg-tint);
    box-shadow: 0 0 0 5px var(--bg-tint), 0 10px 26px rgba(16, 29, 51, .16);
  }
  /* v8.9锛氱煯绐楀彛鐓х墖璺熺潃瑙嗗彛楂樺害缂╋紝璁╂暣寮犲悕鐗囨斁寰椾笅锛堜腑鏂囧悕鐗囬櫎鐓х墖澶栫害 519px锛岃嫳鏂囩害 660px锛夛紱
     缂╁埌 170px 杩樻斁涓嶄笅灏辩敱鑴氭湰鍔 .no-stick 闅忛〉闈㈡粴鍔紝鍏嶅緱涓婃部鎴栦笅娌胯鍒囨帀涓€鎴 */
  .chair-photo { max-width: clamp(170px, calc(100vh - 676px), 258px); }
  :root[lang="en"] .chair-photo { max-width: clamp(170px, calc(100vh - 816px), 258px); }
  .chair-card.no-stick { position: static; }
  /* v9.9锛氬悕鐗囨瘮绐楀彛楂樻椂锛堣嫳鏂 844px + top 140 > 900锛夛紝鏀规寜涓嬫部鍚搁檮锛
     寰€涓嬭鏃跺悕鐗囧缁堣创鐫€绐楀彛搴曡竟锛屼笉鍐嶆暣鍧楅殢椤甸潰婊氳蛋 */
  .chair-card.stick-bottom { top: auto; bottom: 16px; }
  .chair-name { margin-top: 20px; text-align: center; }
  .chair-name b { font-size: 25px; font-weight: 700; letter-spacing: .12em; color: var(--ink); }
  /* 涓夐」韬唤锛氱珫绾垮垎闅旓紝姣旇兌鍥婂畨闈欏緱澶氾紝涔熷ぉ鐒舵帓寰椾笅涓€琛屻€
     360px 鍗＄墖鍑 44px 鍐呰竟璺 = 316px锛?8 涓眽瀛 @12px + 鍒嗛殧鐣欑櫧绾 264px */
  .chair-roles {
    display: flex; flex-wrap: nowrap; justify-content: center;
    margin-top: 11px;
  }
  .chair-roles span {
    font-size: 12px; font-weight: 500; color: var(--ink-2);
    white-space: nowrap; padding: 0 8px; line-height: 1.4;
  }
  .chair-roles span + span { border-left: 1px solid var(--hairline); }
  .chair-hd {
    margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--hairline);
    font-size: 13px; font-weight: 600; color: var(--ink); letter-spacing: .06em;
    display: flex; align-items: baseline; justify-content: space-between; gap: 10px;
  }
  .chair-hd i { font-style: normal; font-size: 11px; font-weight: 400; color: var(--ink-3); letter-spacing: .04em; }
  /* 鑽ｈ獕鎸夎幏鎺堟椂闂寸敱杩滃強杩戯紝绔栫嚎鐢辨祬鍒版繁锛岃涓嬫潵灏辨槸涓€鏉℃垚闀胯矾寰 */
  .chair-honors { list-style: none; margin: 12px 0 0; padding: 0 0 0 18px; position: relative; }
  .chair-honors::before {
    content: ""; position: absolute; left: 3px; top: 6px; bottom: 6px; width: 2px; border-radius: 2px;
    background: linear-gradient(to bottom, var(--hairline), var(--brand));
  }
  .chair-honors li {
    position: relative; font-size: 12.5px; line-height: 1.6; color: var(--ink-2);
    padding: 0 0 10px; text-wrap: pretty;
  }
  .chair-honors .kp { white-space: nowrap; }   /* 绐勫睆 .kp 浼氭斁寮€锛岃繖閲屻€岄」鐩€绘寚鎸ラ暱銆嶅缁堜笉鎷 */
  .chair-honors li:last-child { padding-bottom: 0; color: var(--ink); font-weight: 500; }
  .chair-honors li::before {
    content: ""; position: absolute; left: -18px; top: 6px; box-sizing: border-box;
    width: 8px; height: 8px; border-radius: 50%;
    background: var(--card); border: 2px solid var(--brand); opacity: .45;
  }
  .chair-grid .letter { border-radius: 26px; }
  @media (max-width: 900px) {
    .chair-grid { grid-template-columns: 1fr; }
    .chair-card { position: static; order: -1; }   /* 绐勫睆鍚嶇墖鍥炲埌淇′欢涓婃柟 */
  }

  /* v9.7锛氬彇娑堝弻鏍 鈥斺€ 璇诲畬宸︽爮瑕佸線鍥炴粴鎵嶈兘鎺ュ彸鏍忥紝鍜岄槄璇讳範鎯浉鍙嶃€
     琛岄暱鐢变笅闈㈢殑 max-width: 38em 鍏滅潃锛屽崟鏍忓悗涓€琛岀殑瀛楁暟涓嶅彉 */
  .letter-body { position: relative; }
  /* 鍏佽娈佃惤璺ㄦ爮缁帓锛氬彧鏈 8 涓钀戒笖闀跨煭鎮畩锛屾暣娈典笉鍙柇浼氳鍙虫爮姣斿乏鏍忕煯涓€澶ф埅 */
  /* v9.9锛氫笉鍐嶉檺琛岄暱 鈥斺€ 鍘熸潵姝ｆ枃鍗″湪 38em(551px)锛屽崱鐗囧唴瀹瑰尯绾 614px锛屽彸杈圭┖鍑轰竴鎴紝
     宸﹀彸涓嶅绉般€傛斁瀹藉埌鍗＄墖瀹藉害鍚庡乏鍙宠竟璺濈浉绛夛紝鏁村皝淇′篃鐭竴鎴 */
  .letter-body p { font-size: 14.5px; line-height: 2; color: var(--ink2-on-navy); orphans: 2; widows: 2; }
  .letter-body p + p { margin-top: 13px; }
  .letter-body p.lead { color: var(--ink-on-navy); font-size: 16px; font-weight: 500; }
  /* 钀芥鎺掑湪姝ｆ枃娴佹湯灏惧苟妯法涓ゆ爮锛岀揣璐存枃绔犵粨鏉熺殑浣嶇疆锛屼笉鍐嶉潬棰勭暀绌虹櫧鎶婂畠鎺ㄥ埌寰堣繙 */
  .letter-sign {
    column-span: all; break-inside: avoid;
    margin-top: 28px; padding-top: 20px; border-top: 1px solid var(--hairline-navy);
    display: flex; align-items: center; justify-content: flex-end; gap: 46px; text-align: right;
  }
  .letter-portrait {
    width: 192px; height: 192px; border-radius: 50%; object-fit: cover; flex: none;
    margin-top: -94px;   /* 涓婃帰鍒版鏂囧彸涓嬭鐨勭┖妗ｉ噷锛岄《閮ㄩ珮杩囨渶鍚庝竴琛岀害 20px */
    background: rgba(255,255,255,.06); border: 3px solid rgba(255,255,255,.2);
    box-shadow: 0 16px 38px rgba(0, 0, 0, .34);
  }
  @media (max-width: 760px) { .letter-portrait { width: 116px; height: 116px; margin-top: -44px; } .letter-sign { margin-top: 24px; gap: 20px; } }
  /* 澶村儚涓婃帰寰楁瘮姝ｆ枃鏈€鍚庝竴琛岃繕楂橈紝钀芥涓嶈兘璺熺潃鎶紝鍚﹀垯浼氭挒鍒?鍙嬭皧闀垮瓨"閭ｈ锛涜瀹冭€佸疄寰呭湪鍒嗗壊绾夸笅鏂 */
  .letter-sign > div { margin-bottom: 0; }
  .letter-sign b { font-size: 21px; font-weight: 700; letter-spacing: .06em; }
  .letter-sign span { display: block; font-size: 12.5px; color: var(--ink2-on-navy); margin-top: 5px; letter-spacing: .1em; }

  /* 鐮斿彂鍒涙柊 */
  .rd-lead { font-size: clamp(16.5px, 1.7vw, 19px); line-height: 1.85; color: var(--ink-2); max-width: calc((100% - 18px) * 1.15 / 2.15); margin-bottom: 24px; text-wrap: pretty; }
  /* v8.9锛氬彸缂樺榻愪笅鏂广€屽疄楠屽钩鍙般€嶅ぇ鍥撅紙rd-grid 宸︽爮 1.15fr銆乬ap 18px锛夛紱鐭涓嶅啀鏁村潡涓嶆媶锛屽惁鍒欒繖涓搴﹂噷鍙宠竟鍙傚樊寰堝ぇ */
  .rd-lead .kp { white-space: normal; }
  @media (max-width: 900px) { .rd-lead { max-width: none; } }
  .rd-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
  .rd-stat { background: var(--card); border: 1px solid var(--hairline); border-radius: 18px; padding: 20px 22px; }
  .rd-stat b { display: block; font-size: 27px; font-weight: 700; color: var(--brand); letter-spacing: -0.02em; font-variant-numeric: tabular-nums; }
  .rd-stat b em { font-style: normal; font-size: .48em; font-weight: 600; color: var(--ink-2); margin-left: 3px; }
  .rd-stat span { display: block; font-size: 12.5px; color: var(--ink-2); margin-top: 6px; }
  @media (max-width: 760px) { .rd-stats { grid-template-columns: repeat(2, 1fr); } }

  .rd-grid { display: grid; grid-template-columns: 1.15fr 1fr; gap: 18px; margin-top: 16px; align-items: stretch; }
  .rd-visual { display: grid; grid-template-rows: 1.62fr 1fr; gap: 12px; }
  .rd-shot { position: relative; margin: 0; border-radius: 20px; overflow: hidden; background: var(--bg-tint); }
  .rd-shot img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .6s ease; }
  .rd-shot:hover img { transform: scale(1.04); }
  .rd-shot figcaption {
    position: absolute; left: 0; right: 0; bottom: 0; padding: 26px 16px 12px; color: #fff;
    font-size: 12.5px; font-weight: 600;
    background: linear-gradient(to top, rgba(6,16,32,.72), rgba(6,16,32,0));
  }
  .rd-sub { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
  .rd-card { background: var(--card); border: 1px solid var(--hairline); border-radius: 20px; padding: 26px 26px 28px; display: flex; flex-direction: column; gap: 10px; }
  .rd-grid > div:last-child { display: flex; flex-direction: column; gap: 16px; }
  .rd-grid > div:last-child .rd-card { flex: 1; }
  .rd-card .eng { font-size: 10.5px; letter-spacing: .2em; text-transform: uppercase; color: var(--copper); font-weight: 700; }
  .rd-card h4 { font-size: 17px; font-weight: 700; letter-spacing: -0.01em; }
  .rd-card p { font-size: 14px; color: var(--ink-2); line-height: 1.9; }
  @media (max-width: 900px) { .rd-grid { grid-template-columns: 1fr; } .rd-visual { grid-template-rows: auto auto; } .rd-shot { aspect-ratio: 3 / 2; } }
  @media (max-width: 560px) { .rd-sub { grid-template-columns: 1fr; } }
  .rd-patent-head { display: flex; align-items: baseline; gap: 12px; margin: 30px 0 -8px; }
  .rd-patent-head b { font-size: 16px; font-weight: 700; }
  .rd-patent-head span { font-size: 10.5px; letter-spacing: .2em; text-transform: uppercase; color: var(--ink-3); font-weight: 600; }
  /* v4.5 棣栭〉銆屾妧鏈笌璧勮川銆嶏細涓撳埄 / 鏍囧噯 / 鑽ｈ獕 涓夋閫掕繘銆
     杩欎笁涓皬鏍囬涓€搴﹀鐢 .rd-patent-head锛岃瀹冪殑 margin-bottom:-8px 椤跺緱鍘嬪湪涓嬮潰鐨
     妯嚎涓庡崱鐗囦笂锛岄噷闈㈢殑 <span class="kp"> 鍙堣 .rd-patent-head span 鐨 10.5px
     灏忓瀷澶у啓瀛楄鍒欏姭璧帮紝鍚屼竴鍙ヨ瘽瀛楀彿涓€澶т竴灏忋€傜幇鍦ㄦ槸鐙珛绫伙紝鑻辨枃鐐圭紑璧扮珯鍐呴€氱敤鐨 .eng銆
     鏁村潡蹇呴』鐣欏湪 .rd-patent-head 瀹氫箟涔嬪悗锛氬悓鏉冮噸闈犲厛鍚庡喅鑳滆礋 */
  .cred-wrap { max-width: var(--wrap); margin: 0 auto; padding: 0 var(--gutter); }
  .cred-head { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; margin: 54px 0 20px; }
  .section-head + .cred-wrap .cred-head { margin-top: 0; }   /* :first-of-type 涓嶈锛屽悓绾х涓€涓 div 鏄 .section-head */
  .cred-head > b { font-size: 21px; font-weight: 700; letter-spacing: -0.01em; }
  .cred-head > .eng { font-size: 10.5px; letter-spacing: .2em; text-transform: uppercase; color: var(--ink-3); font-weight: 600; }
  .cred-head > i { font-style: normal; font-size: 14.5px; color: var(--ink-2); margin-left: auto; text-align: right; }
  /* 涓€鍙ヨ瘽涓€鏋氾細鎷嗘垚濂藉嚑鍧楀皬鏁版嵁浼氱湅鑵伙紝鏁村彞鏀捐繘鑳跺泭閲岋紝鍙妸鏁板瓧鎸戝嚭鏉ュ姞閲 */
  .cred-fact {
    margin-left: auto; max-width: 50em;
    font-size: 14px; line-height: 1.6; color: var(--ink-2);
    background: var(--card); border: 1px solid var(--hairline); border-radius: 999px;
    padding: 8px 20px;
  }
  .cred-fact b { font-size: 17px; font-weight: 700; color: var(--brand); letter-spacing: -0.01em; font-variant-numeric: tabular-nums; }
  .cred-fact strong { color: var(--ink); font-weight: 600; }
  /* 鍥涙爮鎺掔殑鑽ｈ獕鍗″唴杈硅窛鏀朵竴鐐癸紝銆屾箹鍗楃渷鍒堕€犱笟鍗曢」鍐犲啗浜у搧銆嶆闈㈢鎵嶆帓寰椾笅涓€琛 */
  .honor-row .honor { padding: 20px 20px; }
  @media (max-width: 820px) {
    /* 绐勫睆鑳跺泭鎹㈣鎽嗗埌鏍囬涓嬮潰锛屾暣鍙ュ彲鑳藉崰涓よ锛屽渾瑙掓敹涓€鐐瑰厤寰楀儚琚媺闀跨殑鑽父 */
    .cred-head > i, .cred-fact { margin-left: 0; flex-basis: 100%; max-width: none; }
    .cred-fact { border-radius: 16px; }
  }
  /* 棣栭〉杩欓潰涓撳埄澧欐瘮浜岀骇椤靛皬涓€鍙凤細--u 涓婇檺浠 1156 鏀跺埌 1000锛屼笉瑁佸垏鐨勫墠鎻愪笉鍙 */
  .pat-home { --u: calc(min(1000px, 100vw - 2 * var(--gutter)) * 0.197); margin-top: 4px; }
  /* 璇存槑鎬ф枃瀛椾竴寰嬮潬鍙筹細宸﹁竟鐣欑粰姝ｇ粡鍐呭锛屾敞瑙ｄ笉璺熷畠鎶㈣绾胯捣鐐 */
  .cred-capline { display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: baseline; gap: 6px 14px; margin-top: 16px; }
  .cred-cap { font-size: 13px; color: var(--ink-3); line-height: 1.7; text-align: right; }
  .cred-more { font-size: 13.5px; font-weight: 600; color: var(--accent); white-space: nowrap; }
  .cred-more:hover { text-decoration: underline; }
  @media (max-width: 700px) { .cred-capline { justify-content: flex-start; } .cred-cap { text-align: left; } }
  .std-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 36px; }
  @media (max-width: 760px) { .std-grid { grid-template-columns: 1fr; } }
  .honor-row { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
  @media (max-width: 980px) { .honor-row { grid-template-columns: repeat(2, 1fr); } }
  @media (max-width: 560px) { .honor-row { grid-template-columns: 1fr; } }


  /* 鍙戝睍鍘嗙▼ */
  .timeline { position: relative; padding-left: 26px; }
  .timeline::before { content: ""; position: absolute; left: 5px; top: 8px; bottom: 8px; width: 2px; background: var(--hairline); }
  .tl-item { position: relative; padding: 0 0 26px 0; display: grid; grid-template-columns: 116px 1fr; gap: 18px; align-items: baseline; }
  .tl-item::before {
    content: ""; position: absolute; left: -26px; top: 7px; width: 12px; height: 12px; border-radius: 50%;
    background: var(--bg); border: 2.5px solid var(--ink-3);
  }
  .tl-item.key::before { border-color: var(--accent); background: var(--accent); box-shadow: 0 0 0 4px color-mix(in srgb, var(--accent) 18%, transparent); }
  .tl-year { font-size: 14px; font-weight: 700; color: var(--brand); font-variant-numeric: tabular-nums; letter-spacing: .01em; }
  .tl-item.key .tl-year { color: var(--accent); }
  .tl-text { font-size: 14.5px; color: var(--ink-2); line-height: 1.7; }
  .tl-item.key .tl-text { color: var(--ink); font-weight: 500; }
  @media (max-width: 640px) { .tl-item { grid-template-columns: 1fr; gap: 4px; } }

  /* 浼佷笟椋庤矊 */
  .culture-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
  .cul-card { background: var(--card); border-radius: 20px; overflow: hidden; box-shadow: var(--shadow); }
  .cul-card .ph { aspect-ratio: 16 / 9; overflow: hidden; }
  .cul-card img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s ease; }
  .cul-card:hover img { transform: scale(1.04); }
  .cul-card figcaption { padding: 15px 20px 18px; font-size: 13.5px; color: var(--ink-2); }
  @media (max-width: 700px) { .culture-grid { grid-template-columns: 1fr; } }

  /* 浼佷笟鏂囧寲锛氫簲娈靛苟鍒楄兌鍥 鈥斺€ 骞虫椂鍙湶绫荤洰锛屾寚涓婂幓鎵嶅睍寮€鍐呭 */
  .cvals {
    position: relative; border-radius: 26px; overflow: hidden; isolation: isolate;
    background-color: #060d1c; background-size: cover; background-position: center 46%;
    box-shadow: 0 26px 60px rgba(6, 18, 38, .28);
  }
  .cvals::after {                 /* 鍘嬩竴灞傛笎鍙橈紝浠讳綍閰嶅浘涓婃枃瀛楅兘璇诲緱娓 */
    content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none;
    background: linear-gradient(180deg, rgba(4,10,22,.60), rgba(4,10,22,.26) 44%, rgba(4,10,22,.72));
  }
  .cvals-row {
    position: relative; z-index: 1; height: clamp(360px, 33vw, 412px);
    display: grid; grid-template-columns: repeat(5, 1fr);
  }
  .cvals-item {
    position: relative; overflow: hidden; text-align: center; color: #fff;
    display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 15px;
    padding: 30px 18px; transition: background .32s ease;
  }
  .cvals-item + .cvals-item::before {             /* 浜旀涔嬮棿鍙暀涓€閬撴瀬娣＄殑鍒嗛殧 */
    content: ""; position: absolute; left: 0; top: 15%; bottom: 15%; width: 1px;
    background: linear-gradient(180deg, transparent, rgba(255,255,255,.20), transparent);
  }
  .cvals-item:hover, .cvals-item:focus-visible, .cvals-item:focus-within { background: rgba(255,255,255,.075); outline: none; }
  .cvals-ico { color: var(--cyan-on-navy); transition: transform .32s ease, color .32s ease; }
  .cvals-ico svg { display: block; width: 34px; height: 34px; }
  .cvals-item:hover .cvals-ico, .cvals-item:focus-within .cvals-ico { color: #fff; transform: translateY(-2px) scale(1.06); }
  .cvals-name { font-size: 16.5px; font-weight: 700; letter-spacing: .04em; }
  .cvals-name::after {
    content: ""; display: block; height: 2px; width: 20px; border-radius: 2px; margin: 13px auto 0;
    background: var(--cyan-on-navy); opacity: .55; transition: width .34s ease, opacity .34s ease;
  }
  .cvals-item:hover .cvals-name::after, .cvals-item:focus-within .cvals-name::after { width: 46px; opacity: 1; }
  .cvals-body {
    max-width: 21em; max-height: 0; overflow: hidden; opacity: 0; transform: translateY(10px);
    transition: opacity .34s ease, transform .34s ease, max-height .42s ease;
  }
  .cvals-item:hover .cvals-body, .cvals-item:focus-within .cvals-body { max-height: 24em; opacity: 1; transform: none; }
  .cvals-body p { font-size: 13.5px; line-height: 1.95; color: rgba(255,255,255,.86); }
  .cvals-lead { font-size: 15px; font-weight: 700; letter-spacing: .05em; color: var(--cyan-on-navy); margin-bottom: 9px; }
  .cvals-stmt { font-size: 14px; line-height: 1.9; color: rgba(255,255,255,.92); text-wrap: balance; }
  .cvals-item .vals-words { display: grid; grid-template-columns: repeat(2, 1fr); gap: 15px 10px; }
  .cvals-item .vals-words i { font-style: normal; display: flex; flex-direction: column; align-items: center; gap: 8px; }
  .cvals-item .vals-words i b {
    font-size: 14px; font-weight: 600; letter-spacing: .08em; white-space: nowrap;
    padding-right: .08em;                       /* 鎵ｆ帀鏈瓧瀛楄窛锛岃瑙夊眳涓 */
  }
  .cvals-item .vals-words i::after { content: ""; width: 16px; height: 2px; border-radius: 2px; background: var(--cyan-on-navy); opacity: .45; }
  :root[lang="en"] .cvals-item .vals-words { grid-template-columns: 1fr; gap: 9px; }
  :root[lang="en"] .cvals-item .vals-words i b { font-size: 12.5px; letter-spacing: .01em; white-space: normal; }
  :root[lang="en"] .cvals-item .vals-words i::after { display: none; }
  /* 鑻辨枃鍏釜绮剧璇嶅湪 195px 绐勬爮閲屼細鍑戝嚭銆孶nity + Pragmatism銆嶈繖绉嶄袱涓や竴琛岀殑鍙傚樊锛屼竴寰嬪崟鍒 */
  :root[lang="en"] .cvals-item .val-chips { flex-direction: column; align-items: center; gap: 7px; }
  .cvals-item .val-chips { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
  .cvals-item .val-chips span {
    font-size: 13.5px; font-weight: 600; letter-spacing: .1em; color: #fff;
    background: rgba(255,255,255,.13); border-radius: 10px;
    padding: 7px calc(13px - .1em) 7px 13px;
  }
  /* 瑙﹀睆娌℃湁 hover锛岀洿鎺ユ妸鍐呭鎽婂紑 */
  @media (hover: none) { .cvals-body { max-height: 24em; opacity: 1; transform: none; } }
  @media (max-width: 1000px) {
    .cvals-row { height: auto; grid-template-columns: 1fr; }
    .cvals-item { padding: 26px 24px; gap: 12px; }
    .cvals-body { max-height: 24em; opacity: 1; transform: none; }
    .cvals-item + .cvals-item::before {
      left: 8%; right: 8%; top: 0; bottom: auto; width: auto; height: 1px;
      background: linear-gradient(90deg, transparent, rgba(255,255,255,.18), transparent);
    }
    .cvals-item .vals-words { grid-template-columns: repeat(4, 1fr); }
  }
  @media (max-width: 560px) { .cvals-item .vals-words { grid-template-columns: repeat(2, 1fr); } }
  /* v8.8 宸ヤ綔鍑嗗垯锛氬洓鍙ュ悇鍗犱竴琛岋紙涓嫳鍚屼竴濂楋級锛屼笉瑕佺煭妯楗 */
  .cvals-item .vals-words.vals-rows { grid-template-columns: 1fr; gap: 10px; }
  .cvals-item .vals-words.vals-rows i::after { display: none; }

  /* 浼佷笟椋庤矊锛氫富棰樼浉鍐 */
  .alb-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
  .alb-card {
    /* 鎸夐挳浼氭妸鍐呭鍨傜洿灞呬腑锛屽崱鐗囪缃戞牸鎷夐珮鍚庡浘鐗囦笂鏂逛細闇插嚭涓€鏉＄櫧搴曪紝鏀规垚绾靛悜 flex 璁╁唴瀹归《杈瑰榻 */
    display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start;
    text-align: left; padding: 0; border: 1px solid var(--hairline);
    background: var(--card); border-radius: 20px; overflow: hidden; cursor: pointer;
    transition: transform .25s ease, box-shadow .25s ease;
  }
  .alb-card:hover { transform: translateY(-3px); box-shadow: var(--shadow); }
  .alb-ph { display: block; aspect-ratio: 3 / 2; overflow: hidden; position: relative; }
  .alb-ph img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .6s ease; }
  .alb-card:hover .alb-ph img { transform: scale(1.05); }
  .alb-ph::after {
    content: ""; position: absolute; inset: 0;
    background: linear-gradient(to top, rgba(6,16,32,.42), rgba(6,16,32,0) 55%);
  }
  .alb-body { display: block; padding: 18px 20px 20px; }
  .alb-body b { display: block; font-size: 17px; font-weight: 700; letter-spacing: -0.01em; color: var(--ink); }
  .alb-body i { display: block; font-style: normal; font-size: 13px; color: var(--ink-2); margin-top: 6px; line-height: 1.6; }
  .alb-body em {
    display: inline-block; font-style: normal; font-size: 11.5px; font-weight: 600; margin-top: 10px;
    color: var(--accent); background: color-mix(in srgb, var(--accent) 10%, transparent);
    border-radius: 980px; padding: 4px 11px;
  }
  @media (max-width: 860px) { .alb-grid { grid-template-columns: 1fr 1fr; } }
  @media (max-width: 560px) { .alb-grid { grid-template-columns: 1fr; } }
  @media (prefers-reduced-motion: reduce) { .alb-card, .alb-ph img { transition: none; } }

  /* 鐩稿唽鐏 */
  .lbx[hidden] { display: none; }
  .lbx { position: fixed; inset: 0; z-index: 220; display: flex; align-items: center; justify-content: center; padding: 24px; }
  .lbx-mask { position: absolute; inset: 0; background: rgba(4,10,20,.88); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
  .lbx-inner { position: relative; width: min(1000px, 100%); }
  .lbx-frame { position: relative; aspect-ratio: 3 / 2; background: #000; border-radius: 16px; overflow: hidden; box-shadow: 0 30px 80px rgba(0,0,0,.6); }
  .lbx-frame img { width: 100%; height: 100%; object-fit: contain; display: block; }
  .lbx-bar { display: flex; align-items: center; gap: 14px; margin-top: 14px; color: #fff; }
  .lbx-bar .cap { flex: 1; font-size: 14px; color: rgba(255,255,255,.86); }
  .lbx-bar .idx { font-size: 12.5px; color: rgba(255,255,255,.6); font-variant-numeric: tabular-nums; }
  /* 缈婚〉閿斁鍦ㄤ袱渚ч伄缃╁尯锛屼笉鍘嬪湪鍥句笂锛涙祬鑹茬収鐗囨椂涔熶笉浼氱硦鎴愪竴鐗 */
  .lbx-nav {
    position: absolute; top: 50%; transform: translateY(-50%); z-index: 2;
    width: 52px; height: 52px; padding: 0; border-radius: 50%;
    border: 1px solid rgba(255,255,255,.3); background: rgba(255,255,255,.14); color: #fff;
    font-size: 26px; line-height: 1; display: flex; align-items: center; justify-content: center;
    -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
    transition: background .2s ease, transform .2s ease;
  }
  .lbx-nav:hover { background: rgba(255,255,255,.3); }
  /* 绱ц创鍥剧墖澶栫紭锛涚獎灞忔斁涓嶄笅鏃堕€€鍥炵敾闈㈠唴 */
  .lbx-prev { left: max(12px, calc(50% - 566px)); }
  .lbx-next { right: max(12px, calc(50% - 566px)); }
  .lbx-prev:hover { transform: translateY(-50%) translateX(-2px); }
  .lbx-next:hover { transform: translateY(-50%) translateX(2px); }
  @media (prefers-reduced-motion: reduce) { .lbx-nav, .lbx-prev:hover, .lbx-next:hover { transition: none; transform: translateY(-50%); } }
  .lbx-x { position: absolute; top: -42px; right: 0; width: 34px; height: 34px; padding: 0; border: 0; border-radius: 50%;
    background: rgba(255,255,255,.16); color: #fff; font-size: 19px; line-height: 1; }
  .lbx-x:hover { background: rgba(255,255,255,.3); }
  .lbx-nav[hidden] { display: none; }
  .lbx-frame.light { background: #fff; }
  .lbx-title { position: absolute; top: -38px; left: 0; color: #fff; font-size: 14px; font-weight: 600; }
  @media (max-width: 560px) { .lbx-x { top: auto; bottom: -44px; } .lbx-title { top: -32px; font-size: 13px; } }

  /* 鏂伴椈鍒楄〃 */
  .nw-list { display: flex; flex-direction: column; border-top: 1px solid var(--hairline); }
  .nw-row {
    display: grid; grid-template-columns: 104px 1fr auto; gap: 20px; align-items: center;
    padding: 22px 8px; border-bottom: 1px solid var(--hairline);
    transition: background .2s ease, padding .2s ease;
  }
  .nw-row:hover { background: color-mix(in srgb, var(--accent) 5%, transparent); padding-left: 16px; }
  .nw-date { font-size: 13px; color: var(--ink-3); font-variant-numeric: tabular-nums; letter-spacing: .02em; }
  .nw-row h3 { font-size: 16.5px; font-weight: 600; line-height: 1.55; letter-spacing: -0.005em; }
  .nw-row:hover h3 { color: var(--accent); }
  .nw-cat { font-size: 11px; color: var(--copper); background: var(--copper-bg); border-radius: 980px; padding: 4px 11px; white-space: nowrap; font-weight: 600; }
  @media (max-width: 700px) {
    .nw-row { grid-template-columns: 1fr; gap: 8px; }
    .nw-cat { justify-self: start; }
  }
  .pager { display: flex; justify-content: center; align-items: center; gap: 8px; padding: 34px 0 0; }
  .pager button {
    min-width: 36px; height: 36px; padding: 0 11px; border-radius: 10px;
    border: 1px solid var(--hairline); background: var(--card); color: var(--ink-2);
    font-size: 13.5px; font-variant-numeric: tabular-nums; transition: all .18s ease;
  }
  .pager button:hover:not(:disabled) { border-color: var(--accent); color: var(--accent); }
  .pager button.on { background: var(--accent); border-color: var(--accent); color: #fff; font-weight: 600; }
  .pager button:disabled { opacity: .38; cursor: default; }

  /* 鎶曡祫鑰呭叧绯 */
  .ir-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
  .ir-stat { background: var(--card); border: 1px solid var(--hairline); border-radius: 18px; padding: 20px 22px; }
  .ir-stat span { font-size: 12px; color: var(--ink-2); letter-spacing: .04em; }
  .ir-stat b { display: block; font-size: 26px; font-weight: 700; letter-spacing: -0.02em; margin-top: 7px; font-variant-numeric: tabular-nums; }
  /* v9.1锛氫笂涓€鏉 .ir-stat span 鏄粰灏忔爣棰樼殑锛屽埆璁╁畠鏌撳埌鏁板€奸噷鐨 span锛堝湴鍧€鍗°€岄簱璋烽簱榫欒矾 199 鍙枫€嶇殑 .kp锛 */
  .ir-stat b span { font-size: inherit; color: inherit; letter-spacing: inherit; }
  .ir-stat b em { font-style: normal; font-size: .48em; font-weight: 600; color: var(--ink-2); margin-left: 3px; }
  .ir-stat.up b { color: #16a34a; }
  @media (max-width: 760px) { .ir-stats { grid-template-columns: repeat(2, 1fr); } }

  .chart-card { background: var(--card); border: 1px solid var(--hairline); border-radius: 22px; padding: 26px 26px 18px; margin-top: 14px; }
  .chart-head { display: flex; justify-content: space-between; align-items: baseline; flex-wrap: wrap; gap: 10px; margin-bottom: 6px; }
  .chart-head h3 { font-size: 17px; font-weight: 600; }
  .chart-head .src { font-size: 11.5px; color: var(--ink-3); }

  /* 鍒嗘椂鍥撅細鏄ㄦ敹鍩哄噯绾夸笂鏂圭孩銆佷笅鏂圭豢锛涗笅鍗婂箙涓哄垎鏃舵垚浜ら噺 */
  .quote-strip {
    display: flex; flex-wrap: wrap; gap: 6px 20px; margin: 10px 0 4px;
    font-size: 12.5px; color: var(--ink-2); font-variant-numeric: tabular-nums;
  }
  .quote-strip b { font-weight: 600; color: var(--ink); margin-left: 5px; }
  .ir-stat b.up { color: #e5342a; }
  .ir-stat b.down { color: #0f9b5a; }
  .ir-live {
    display: inline-flex; align-items: center; gap: 5px;
  }
  .ir-live i {
    width: 6px; height: 6px; border-radius: 50%; background: #0f9b5a; display: block;
    animation: irPulse 1.8s ease-in-out infinite;
  }
  .ir-live.off i { background: var(--ink-3); animation: none; }
  @keyframes irPulse { 0%, 100% { opacity: 1; } 50% { opacity: .25; } }
  @media (prefers-reduced-motion: reduce) { .ir-live i { animation: none; } }

  .chart-wrap { overflow-x: auto; }
  .chart-wrap svg { display: block; width: 100%; min-width: 520px; height: auto; }

  /* 鑲℃潈鏋舵瀯 */
  .org { overflow-x: auto; padding-bottom: 8px; }
  .org-inner { min-width: 780px; }
  .org-row { display: grid; gap: 12px; }
  .org-row.top { grid-template-columns: repeat(3, 1fr); max-width: 660px; margin: 0 auto; }
  .org-row.subs { grid-template-columns: repeat(6, 1fr); }
  .org-box {
    background: var(--navy-card); color: var(--ink-on-navy); border-radius: 12px;
    padding: 15px 13px; text-align: center; font-size: 13px; line-height: 1.5; font-weight: 500;
  }
  .org-box.sub { background: var(--card); color: var(--ink); border: 1px solid var(--hairline); font-size: 12.5px; }
  .org-main {
    background: linear-gradient(120deg, var(--navy), var(--navy-card)); color: var(--ink-on-navy);
    border-radius: 14px; padding: 20px 18px; text-align: center;
  }
  .org-main b { font-size: 17px; font-weight: 700; letter-spacing: -0.01em; }
  .org-main span { display: block; font-size: 12.5px; color: var(--cyan-on-navy); margin-top: 6px; font-variant-numeric: tabular-nums; }
  .org-link { height: 26px; position: relative; }
  .org-link::before { content: ""; position: absolute; left: 50%; top: 0; bottom: 0; width: 1.5px; background: var(--hairline); transform: translateX(-50%); }
  /* 绗竴灞 鈫 绗簩灞傦細涓変綅鑲′笢鍚勮嚜涓嬪紩锛屾眹鍏ユí姊侊紝鍐嶇敱涓偣鍗曠嚎鎺ュ叆鍏徃 */
  .org-rail { position: relative; display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; max-width: 660px; margin: 0 auto; height: 30px; }
  .org-rail i { position: relative; }
  .org-rail i::before { content: ""; position: absolute; left: 50%; top: 0; height: 50%; width: 1.5px; background: var(--hairline); transform: translateX(-50%); }
  .org-rail::before { content: ""; position: absolute; top: 50%; height: 1.5px; background: var(--hairline); left: calc((100% - 24px) / 6); right: calc((100% - 24px) / 6); }
  .org-rail::after { content: ""; position: absolute; left: 50%; top: 50%; height: 50%; width: 1.5px; background: var(--hairline); transform: translateX(-50%); }
  /* 绗簩灞 鈫 绗笁灞傦細鍏徃鍗曠嚎涓嬪紩锛屾í姊佸垎鍑哄叚璺垎鍒寚鍚戝悇瀛愬叕鍙 */
  .org-rail2 { position: relative; display: grid; grid-template-columns: repeat(6, 1fr); gap: 12px; height: 34px; }
  .org-rail2 i { position: relative; }
  .org-rail2::before { content: ""; position: absolute; left: 50%; top: 0; height: 50%; width: 1.5px; background: var(--hairline); transform: translateX(-50%); }
  .org-rail2::after { content: ""; position: absolute; top: 50%; height: 1.5px; background: var(--hairline); left: calc((100% - 60px) / 12); right: calc((100% - 60px) / 12); }
  .org-rail2 i::before { content: ""; position: absolute; left: 50%; top: 50%; height: 50%; width: 1.5px; background: var(--hairline); transform: translateX(-50%); }
  .org-pct { text-align: center; font-size: 11.5px; color: var(--brand); font-weight: 700; padding: 6px 0 4px; font-variant-numeric: tabular-nums; }

  /* 鍏憡鍒楄〃 */
  .ann-list { display: flex; flex-direction: column; border-top: 1px solid var(--hairline); }
  .ann-row {
    display: grid; grid-template-columns: 96px 1fr; gap: 18px; align-items: baseline;
    padding: 15px 8px; border-bottom: 1px solid var(--hairline); transition: background .18s ease;
  }
  .ann-row:hover { background: color-mix(in srgb, var(--accent) 5%, transparent); }
  .ann-row time { font-size: 12.5px; color: var(--ink-3); font-variant-numeric: tabular-nums; }
  .ann-row p { font-size: 14px; line-height: 1.6; color: var(--ink); }
  .ann-row:hover p { color: var(--accent); }
  @media (max-width: 640px) { .ann-row { grid-template-columns: 1fr; gap: 4px; } }
  .more-btn {
    display: inline-flex; align-items: center; gap: 7px; margin: 26px auto 0;
    background: var(--accent); color: #fff; border-radius: 980px; padding: 11px 26px;
    font-size: 14.5px; font-weight: 600; transition: filter .2s;
  }
  .more-btn:hover { filter: brightness(1.12); }
  .btn-row { display: flex; justify-content: center; }
  .sec-note { font-size: 12px; color: var(--ink-3); margin-top: 14px; line-height: 1.7; max-width: 62em; }
  #irNote { text-wrap: balance; }

  .honor-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
  /* v10.6锛?脳5 鍏 15 寮犮€?6px 楂樼敤鎴峰珜澶尋锛屾斁鍥炵害 58px锛?440脳900 浠嶄笌璇佷功鏉″悓灞忥紝1280脳800 鏀句笉涓嬶紙鐢ㄦ埛鍙栬垝灞曪級 */
  .honor-grid .honor { padding: 16px 22px; border-radius: 14px; }
  #ab-honor .cert-strip { margin-top: 20px; grid-auto-columns: 270px; }
  html:not([lang="en"]) #ab-honor .cert figcaption { white-space: nowrap; }
  @media (min-width: 761px) { html:not([lang="en"]) #join-top p, html:not([lang="en"]) #about-top p { max-width: none; white-space: nowrap; } }
  .honor-grid .honor b { font-size: 15.5px; }
  @media (max-width: 860px) { .honor-grid { grid-template-columns: repeat(2, 1fr); } }
  @media (max-width: 560px) { .honor-grid { grid-template-columns: 1fr; } }
  /* 瀛愰〉闈㈤€氭爮搴曡壊锛氭秷闄?瀛ら浂闆朵竴鏍瑰唴瀹规煴"鐨勮鎰 */
  .band { background: var(--bg-tint); }

  /* ---------- 绀句細璐ｄ换 ---------- */
  /* 搴曡‖鐢ㄥ叕鍙歌嚜宸辩殑鍥涘窛鍩哄湴楦熺灠锛堝巶鍖鸿鍐滅敯鐜姳锛夛紝鍘嬫殫鍚庣櫧瀛楀彲璇 */
  .csr-card { position: relative; border-radius: 24px; overflow: hidden; box-shadow: var(--shadow); }
  .csr-strip { position: absolute; inset: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 2px; }
  .csr-strip i { display: block; background-size: cover; background-position: center 42%; }
  .csr-scrim {
    position: absolute; inset: 0;
    /* v5.1锛氬師鏉 .9/.78/.56锛屽乏涓袱寮犲簳鍥惧嚑涔庡叏榛戯紝涓棿閭ｅ紶锛堟崱鎷惧瀮鍦撅級鏍规湰璁や笉鍑恒€
       鏁翠綋鎻愪寒涓€妗ｏ紝閰嶅悎涓嬮潰姝ｆ枃鐨勬姇褰憋紝鐧藉瓧浠嶇劧绔嬪緱浣 */
    background: linear-gradient(105deg, rgba(6,18,32,.85) 0%, rgba(6,18,32,.7) 52%, rgba(6,18,32,.48) 100%);
  }
  .csr-body { position: relative; padding: clamp(30px, 4vw, 46px) clamp(24px, 4vw, 50px); }
  .csr-body p {
    color: rgba(255,255,255,.9); font-size: clamp(14.5px, 1.6vw, 16.5px); line-height: 2;
    max-width: none; text-wrap: pretty;   /* v8.8锛氭闈㈡瘡娈典竴琛 */
    text-shadow: 0 1px 12px rgba(3,10,20,.75);   /* 钂欑増鎻愪寒鍚庨潬瀹冧繚浣忓彲璇绘€ */
  }
  .band > .sec { padding-bottom: 56px; }
  .band + .band { margin-top: 0; }
  .page-tail { height: 96px; }

  /* ---------- 搴旂敤棰嗗煙鐙珛椤碉紙v5.7锛 ----------
     涔濅釜搴旂敤鍚勬湁涓€椤点€傜増寮忔部鐢ㄤ簩绾ч〉閭ｅ锛坧age-head + sec锛夛紝
     鍙涓€鏉￠潰鍖呭睉鍜屼竴涓€屽ぇ鍥 + 姝ｆ枃銆嶇殑涓ゆ爮銆傜獎灞忓苟鎴愪竴鏍忋€ */
  .crumb {
    display: flex; flex-wrap: wrap; align-items: center; gap: 8px;
    justify-content: center; font-size: 13px; color: var(--ink-3); margin-bottom: 18px;
  }
  .crumb a { color: var(--ink-2); }
  .crumb a:hover { color: var(--accent); }
  .crumb .sep { color: var(--ink-3); opacity: .6; }
  .crumb b { color: var(--ink); font-weight: 600; }

  .appx { display: grid; grid-template-columns: 1fr 1.25fr; gap: 30px; align-items: start; }
  @media (max-width: 900px) { .appx { grid-template-columns: 1fr; gap: 22px; } }
  .appx-fig { margin: 0; border-radius: 22px; overflow: hidden; box-shadow: var(--shadow); }
  .appx-fig img { width: 100%; display: block; aspect-ratio: 3 / 2; object-fit: cover; }
  .appx-tag {
    display: inline-block; font-size: 10.5px; font-weight: 700; letter-spacing: .1em;
    color: var(--copper); background: var(--copper-bg); padding: 4px 10px; border-radius: 980px;
  }
  .appx-body h2 { font-size: 20px; font-weight: 700; letter-spacing: -0.01em; margin: 20px 0 10px; }
  .appx-body h2:first-child { margin-top: 12px; }
  .appx-body p { font-size: 15px; line-height: 1.9; color: var(--ink-2); }
  .appx-body ul { margin: 10px 0 0; padding-left: 20px; }
  .appx-body li { font-size: 14.5px; line-height: 1.85; color: var(--ink-2); margin: 9px 0; }
  .appx-cta { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
  /* 鍚岄〉鍏朵粬搴旂敤鐨勫叆鍙ｏ細鏃㈡槸缁欒瀹㈢殑瀵艰埅锛屼篃鏄妸涔濅釜椤甸潰涓茶捣鏉ョ殑鍐呴摼 */
  .appx-more { max-width: var(--wrap); margin: 46px auto 0; padding: 0 var(--gutter); }
  .appx-more h3 { font-size: 15px; font-weight: 600; margin: 0 0 14px; color: var(--ink-2); }
  .appx-links { display: flex; flex-wrap: wrap; gap: 9px; }
  .appx-links a {
    font-size: 13.5px; color: var(--ink-2); border: 1px solid var(--hairline);
    border-radius: 980px; padding: 6px 14px; transition: color .2s ease, border-color .2s ease;
  }
  .appx-links a:hover { color: var(--accent); border-color: var(--accent); }
  /* 琛屽熬鍏ㄨ鏍囩偣鎮寕锛氫笉璁″叆琛屽锛屼娇涓枃閮ㄥ垎鐪熸灞呬腑 */
  .hang { margin-right: -1em; }
  /* 鑻辨枃瀛ゅ瓧鍏堥潬娴忚鍣ㄨ嚜宸辨敹涓€閬擄紱涓枃鏂鍒板閮借兘鏂紝pretty 鍩烘湰涓嶈捣浣滅敤锛
     鎵€浠ュ彟鏈夈€屾湯琛屽畧鍗€嶈剼鏈厹搴曘€傚凡缁忓啓浜 text-wrap:balance 鐨勬爣棰樹笉鍦ㄦ鍒 */
  .profile-text p, .letter p, .rd-lead, .app-body p, .app-body h4, .base-body p, .base-body h3,
  .cert figcaption, .join-card p, .join-card h4, .news-card h4, .honor b, .honor > span,
  .life-shot figcaption, .qc-text p, .qc-fig figcaption, .step-note, .sec-note,
  .amodal-body p, .amodal-body li, .cred-main p, .std-item .name, .foot-cols li {
    text-wrap: pretty;
  }
  .reveal { opacity: 0; transform: translateY(24px); transition: opacity .7s ease, transform .7s ease; }
  .reveal.in { opacity: 1; transform: none; }
  @media (prefers-reduced-motion: reduce) {
    html.smooth-scroll { scroll-behavior: auto; }
    .reveal { opacity: 1; transform: none; transition: none; }
    .app-card:hover, .news-card:hover { transform: none; }
    .app-card:hover .app-media img, .base-card:hover .base-visual img { transform: none; }
  }

  /* ---------- 绐勫睆鏂瀹堝崼锛坴5.4锛 ----------
     v5.3 鍙婁互鍓嶆病鏈 viewport 澹版槑锛屾墜鏈轰竴鐩存寜 980px 甯冨眬鍐嶇缉鏀撅紝涓枃鍦ㄧ湡瀹炵獎灞忎笅鐨
     鏂闂琚帺鐩栫潃銆傝ˉ涓 viewport 涔嬪悗锛岃繖浜涘畾瀹藉皬鍧楀父鎶婃湯琛屽墿鎴愪竴涓や釜瀛椼€
     text-wrap:balance 鐢辨祻瑙堝櫒鎶婂悇琛岄暱搴﹀寑寮€锛屼笉鏀圭洅瀛愬搴︼紝姝ｉ€傚悎杩欑被鐭潡锛
     闀挎鏂囦笉瑕佺敤瀹冿紙娌℃剰涔夛紝娴忚鍣ㄨ繕浼氶檺鍒跺弬涓庡钩琛＄殑琛屾暟锛夈€ */
  .org-box, .cred-fact, .cred-cap, .honor > b, .honor > span,
  .fact-chip, .ann-row p, .nw-row h3, .base-body h3, .join-card h4, .tl-text {
    text-wrap: balance;
  }
  @media (max-width: 640px) {
    /* 绐勫睆鎶婃鏂囦篃浜ょ粰娴忚鍣ㄥ寑琛岄暱銆傛闈㈢殑琛岄暱鏄€愰〉璋冭繃鐨勶紝涓嶅姩銆
       鎮寕鏍囩偣妯″潡绠＄殑閭ｄ簺鏍囬宸茬粡鎶婃柇鐐瑰浐鍖栨垚 <br>锛宐alance 瀵瑰畠浠棤鏁堬紝涓嶄細鎵撴灦锛
       瓒呰繃鍏鐨勯暱娈佃惤娴忚鍣ㄦ湰鏉ュ氨涓嶅弬涓庡钩琛★紝涔熶笉浼氭湁鍓綔鐢 */
    p, li, .rd-lead, .rd-note, .sec-note { text-wrap: balance; }
    /* 鏁板瓧鍜屽畠鐨勫崟浣嶄笉鑳芥媶寮€锛氥€?.2 涓囧惃銆嶆柇鍦ㄤ竾/鍚ㄤ箣闂存渶闅剧湅銆
       **鍙兘缁欎腑鏂囩敤**锛氳嫳鏂囪瘝琛ㄩ噷鍚屼竴涓 <strong> 鍖呯殑鏄暣鍙ヨ€屼笉鏄竴涓暟閲忚瘝锛
       nowrap 浼氭妸瀹冨彉鎴 400~530px 鐨勪笉鍙柇鐩掑瓙锛屾妸 .profile-grid 杩炲悓鏁撮〉涓€璧锋拺瀹斤紝
       鎵嬫満涓婅〃鐜颁负銆屼紒涓氱畝浠嬫病閫傞厤灞忓銆嶏紜銆屽鑸潯搴曡壊婊氬嚭鍘诲氨娌′簡銆嶏紙v5.5 淇級 */
    html:not([lang="en"]) .profile-text strong,
    html:not([lang="en"]) .tl-text strong { white-space: nowrap; }
    /* 鎶曡祫鑰呬笓绾块偅鍥涘潡瑁呯殑鏄枃瀛椾笉鏄暟瀛楋紙鐢佃瘽銆佺畝绉般€佹寕鐗屽勾浠姐€佸姙鍏湴鍧€锛夛紝
       绐勫睆涓ゆ爮鍙湁 114px锛屻€?022 鍖椾氦鎵€涓婂競銆嶆濂芥尋鍑轰竴涓€屽競銆嶅瓧鍗曠嫭涓€琛屻€
       瀛楀彿鍐欏湪鍏冪礌 inline style 涓娿€佸張鏄腑鑻辫瘝琛ㄩ敭鐨勪竴閮ㄥ垎锛屽姩涓嶅緱锛屾敼鎴愭暣琛岄摵寮€ */
    #ir-contact .ir-stats { grid-template-columns: 1fr; }
  }
  /* ---------- v6.3 ---------- */
  /* 渚ц竟鏍忔诞灞傞噷鐨勬潯鐩細宸﹁竟绫荤洰銆佸彸杈瑰姩浣 */
  .dock-pop .dp-row {
    display: flex; align-items: baseline; justify-content: space-between; gap: 12px;
    padding: 9px 0; border-top: 1px solid var(--hairline);
  }
  .dock-pop h6 + .dp-row { border-top: 0; padding-top: 0; }
  .dock-pop .dp-k { font-size: 12.5px; color: var(--ink-2); white-space: nowrap; }
  .dock-pop .dp-v { font-size: 13.5px; font-weight: 600; color: var(--ink); white-space: nowrap; }
  .dock-pop .dp-tel { font-size: 16px; font-weight: 700; font-variant-numeric: tabular-nums; letter-spacing: -0.01em; }
  .dock-pop .dp-act {
    font: inherit; font-size: 13.5px; font-weight: 600; color: var(--accent);
    background: none; border: 0; padding: 0; cursor: pointer; white-space: nowrap;
  }
  .dock-pop .dp-act:hover, .dock-pop .dp-tel:hover { text-decoration: underline; }
  .dock-pop .dp-row + .qr { margin-top: 0; }
  /* 鍙充晶鏂囧瓧杈冮暱鏃跺厑璁告姌琛屻€侀潬鍙筹紝涓嶆妸娴眰鎾戝 */
  .dock-pop .dp-wrap { white-space: normal; text-align: right; line-height: 1.45; }
  /* 棣栭〉鎶€鏈紭鍔垮ぇ鏍囬锛氫袱鍗婂悇鎴愪竴鍧楋紝瑕佹柇鍙柇鍦ㄣ€屽啓鍦ㄣ€嶅墠锛堟墜鏈轰笂 .kp 浼氭斁寮€锛岄潬 inline-block 鍏滀綇锛 */
  #cred .section-head h2 .kp { display: inline-block; }
  /* 鐢熶骇鍩哄湴澶ф爣棰橈紙鑻辨枃鍊煎甫 .kp锛夛細瑕佷箞涓€琛岋紝瑕佷箞閫楀彿鍚庢暣鍙ユ崲琛 鈥斺€ balance 浼氭柇鎴 supply / you can count on. */
  #bases .section-head h2 .kp { display: inline-block; }
  /* 鎵嬫満涓婂悗鍗婂彞 30px 瑕 351px锛?90 瀹藉睆鐨勬爣棰樺彧鏈 331px 鈥斺€ 瀛楀彿璺熷睆瀹借蛋锛屼繚璇佸悗鍗婂彞涓€琛屾斁寰椾笅 */
  @media (max-width: 430px) { html[lang="en"] #bases .section-head h2 { font-size: min(30px, calc((100vw - 60px) / 12)); } }
  /* 妗惰閲嶉噺闅忕郴鍒楋細鐗囩姸閿岀矇鏉捐瀵嗗害灏忥紝25kg/妗讹紱鐞冪姸涓庨浘鍖 50kg/妗 */
  /* v6.9锛氭敼鐢 <html data-pack> 椹卞姩锛坰yncFields 鍚屾鍐欏叆锛夆€斺€ 鍖呰瀹炴櫙寮圭獥涓嶅湪 .buy 閲岋紝鍏勫紵閫夋嫨鍣ㄥ涓嶇潃 */
  html[data-pack="flake"] .pk-std, html:not([data-pack="flake"]) .pk-flake { display: none; }
  /* 鑻辨枃鐗堣懀浜嬮暱鍚嶇墖涓夐」韬唤锛氳嫳鏂囨瘮涓枃闀垮緱澶氾紝nowrap 涓€琛屼細鎶婂悕鐗囨拺鍑哄睆骞 鈥斺€ 鑻辨枃鍏佽鎶樿 */
  html[lang="en"] .chair-roles { flex-wrap: wrap; row-gap: 4px; }
  /* 渚ц竟鏍忔诞灞備簩缁寸爜妗嗭細.qr 鏄 <span>锛屽師瑙勫垯鐨 118px 瀹介珮瀵硅鍐呭厓绱犱笉鐢熸晥锛
     鍥剧墖鎸夋诞灞傚唴瀹瑰鎾戝埌绾 198px锛岃竟妗嗙鎴愪袱鎴湶鍦ㄥ乏杈癸紙娴嬭瘯绔欐墜鏈烘埅鍥惧彂鐜帮級銆傝ˉ display:block */
  .dock-pop .qr { display: block; }
  .dock-pop .dp-row + .qr { margin-top: 4px; }
  /* 鑱旂郴鎴戜滑鍗曚綅鍗＄墖锛氥€屾湁闄愬叕鍙搞€嶆暣浣撴崲琛岋紝涓嶅嚭鐜板崟瀛楁垚琛岋紙鈮?60px .kp 浼氭斁寮€锛岄潬 inline-block 鍏滀綇锛 */
  .geo-card h3 .kp { display: inline-block; }
  .gc-addr .kp { display: inline-block; }   /* 鍦板潃鏈鏁存鎶樿锛屼笉鐣欍€屽彿銆嶃€屼笢銆嶅崟瀛楄 */
  html[lang="en"] .gc-addr { text-wrap: balance; }   /* 鑻辨枃鍦板潃杩炲啓鍚庡悇琛屽潎琛★紝涓嶅嚭銆孼one,銆嶈繖绉嶅崐鎴 */
  /* 鎮寕鏍囩偣锛?hang 璐 1em 澶栬竟璺濓級鍦 inline-block 鍧楁湯浼氭妸鍧楀鍚冩帀涓€涓瓧锛屽悗鍗婂彞鍘嬪埌閫楀彿涓 鈥斺€ 杩欏彞涓嶆偓鎸 */
  #cred .section-head h2 .kp .hang { margin-right: 0; }
  /* 閫楀彿鎭㈠鍗犲鍚庢暣鍙ョ害 1005px锛?4px 瀛楀彿锛夛紝榛樿鏍囬鍖哄唴瀹瑰 956px 浼氬湪銆屽啓鍦ㄣ€嶅墠鎶樿銆
     鐢ㄦ埛棣栭€変竴琛岋細杩欎竴娈垫爣棰樺尯鏀惧埌 1080px锛堝唴瀹 1036px锛夈€傚瓧鍙烽殢 4.8vw 缂╋紝614px 浠ヤ笂閮芥帓寰椾笅涓€琛 */
  #cred .section-head { max-width: 1080px; }
  /* 钁ｄ簨闀垮瘎璇姮澶 */
  .letter-body p.salute { color: var(--ink-on-navy); font-size: 16px; font-weight: 600; }
  /* 鍙戞槑涓撳埄涓庢爣鍑嗭細涓よ锛岃摑鑹插皬瀛楃被鐩 + 绔栫嚎 */
  .pat-note + .pat-note { margin-top: 6px; }
  .pat-note .pn-k { color: var(--brand); font-size: 13px; font-weight: 700; letter-spacing: .06em; white-space: nowrap; }
  .pat-note .pn-k::after {
    content: ""; display: inline-block; width: 1px; height: .95em; background: currentColor;
    opacity: .5; margin: 0 11px; vertical-align: -.1em;
  }
  /* 鍥㈤槦椋庨噰涓ゆ */
  .life-lead + .life-lead { margin-top: -12px; }
  /* 鈮?60px 鍥剧墖澧欏彉涓ゅ垪銆佸ぇ鍥惧崰婊℃暣琛岋紝瀵艰璺熺潃鏀炬弧 */
  @media (max-width: 860px) { .life-lead { max-width: 100%; } }
  /* 鎶曡祫鑰呮湇鍔′簲寮犲崱锛氬灞忎竴鎺掍簲寮狅紱涓睆 3 + 2锛屽湴鍧€閭ｅ紶鍗犱袱鏍 */
  @media (min-width: 1200px) {
    /* v9.2锛氫簲寮犵瓑瀹斤紙绗笁寮犲眳椤甸潰姝ｄ腑锛夛紱銆岄暱娌欓珮鏂板紑鍙戝尯楹撹胺楹撻緳璺 199 鍙枫€嶄竴琛岃 200.7px锛
       鍗″ 221.6px锛屽彧鎶婂湴鍧€鍗″乏鍙冲唴杈硅窛鏀跺埌 8px锛堝唴瀹 205.6px锛夈€傝嫳鏂囧湴鍧€鏈潵灏卞洓琛岋紝涓嶆敹 */
    #ir-contact .ir-stats { grid-template-columns: repeat(5, 1fr); }
    :root:not([lang="en"]) #ir-contact .ir-stat:last-child { padding-left: 8px; padding-right: 8px; }
  }
  /* 1101鈥?199 鐗堝績杩樻病鍒 1156锛屼簲鍒楀お鎸わ紙鍦板潃涓夎銆佺數璇濇棩鏈熶篃鎶樿锛夆啋 娌跨敤 3 + 2 */
  @media (min-width: 761px) and (max-width: 1199px) {
    #ir-contact .ir-stats { grid-template-columns: repeat(3, 1fr); }
    #ir-contact .ir-stat:last-child { grid-column: span 2; }
  }
  /* v9.4锛氳嫳鏂囩數璇濄€?86 731 8890 0355銆嶄竴琛岃 181px锛屸墺1200 鏃跺崱鐗囧唴瀹瑰尯鍙湁 173鈥?76 鈫 浜斿紶鑻辨枃鍗
     鍐呰竟璺濅竴璧锋敹鍒 16px锛堜粛绛夊锛夈€備腑鏂囧湴鍧€鍗 8px 閭ｆ潯瑙勫垯鍙涓枃锛屼簰涓嶅奖鍝 */
  @media (min-width: 1200px) {
    :root[lang="en"] #ir-contact .ir-stat { padding-left: 16px; padding-right: 16px; }
  }
  /* v9.4锛氬姞鍏ユ垜浠仈绯诲崱鍥涘垪鍦 761鈥?099 鏃跺唴瀹瑰尯 121鈥?06px銆佲墹560 涓ゅ垪鏃 114鈥?99px锛
     鐢佃瘽锛堜腑 155 / 鑻 181px锛変細鎶樻垚涓よ 鈫 杩欎袱妗ｆ敼涓ゅ垪 / 鍗曞垪 */
  @media (min-width: 761px) and (max-width: 1099px) { #jn-contact .ir-stats { grid-template-columns: repeat(2, 1fr); } }
  @media (max-width: 560px) { #jn-contact .ir-stats { grid-template-columns: 1fr; } }

  /* v12.8/v12.9锛氭墜鏈轰笂鐨勪腑鏂囨柇琛岋紙鍙 鈮?00px銆佸彧涓枃椤碉級銆
     v12.8 鎸 em 瀹氬鍦 iPhone 涓婂け鏁堬細PingFang 鐨勩€岋紝銆嶅湪 WebKit 閲屼笉瓒 1em锛岄噺娴嬫椂閫楀彿鍚庣殑瀛楄繕鎸ゅ緱杩涚涓€琛岋紝
     s08 鎶婃柇鐐瑰浐鍖栧湪瀹冨悗闈紝鐪熷疄鎺掔増鍙堟斁涓嶄笅 鈫 銆屼繚銆嶃€岀瓚銆嶅崟瀛楁垚琛屻€倂12.9 璧蜂竴寰嬬敤娈靛唴 br.mbr 鍐欐鏂偣锛
     杩欏嚑澶勫啀浠 balance 鏀瑰洖椤烘帓 wrap锛屽厤寰 WebKit 鍦ㄦ槑纭柇鐐逛箣澶栧啀鍖€涓€鍒€ */
  .mbr { display: none; }
  @media (max-width: 600px) {
    .mbr { display: inline; }
    html:not([lang="en"]) #bases .section-head h2,
    html:not([lang="en"]) #partners .section-head h2,
    html:not([lang="en"]) #prod-top p,
    html:not([lang="en"]) #about-top p,
    html:not([lang="en"]) #apps .section-head p { text-wrap: wrap; }
    /* 銆屾垜浠殑涓嶆噲鍔姏锛? 鍐欏湪鈥︺€嶏細涓や釜 .kp 鍚勫崰涓€琛岋紝閫楀彿鎭㈠鎮寕锛屾枃瀛楅儴鍒嗗眳涓紙妗岄潰鍚屼竴琛屾椂鎮寕瑕佸叧锛岃 v6.5锛 */
    html:not([lang="en"]) #cred .section-head h2 .kp { display: block; }
    html:not([lang="en"]) #cred .section-head h2 .kp .hang { margin-right: -1em; }
    /* 鍒嗘椂鍥捐鏄庯細balance 浼氭妸鏁存鍘嬫垚涓€鏉＄獎鏍忥紝鎵嬫満涓婃敼鍥為『鎺掗摵婊 */
    #irNote { text-wrap: wrap; }
  }
  /* 澶氶〉鐗堬細涓嫳鍒囨崲閿粠 <button> 鍙樻垚 <a>锛屽幓鎺夐摼鎺ラ粯璁ゆ牱寮 */
  a.lang-switch { text-decoration: none; cursor: pointer; }
