/* slimmed 2026-09-09 · dead rules removed by live-DOM usage census */
:root { --zh-blue: #1A3D7C; --zh-blue-mid: #2B5FA8; --zh-blue-soft: #4A90D9; --zh-blue-pale: #E8F0FB; --zh-gold: #C9A84C; --zh-gold-soft: rgba(201,168,76,.10); --zh-ink: #0D1F42; --zh-text: #2A3D5E; --zh-muted: #6B7B96; --zh-faint: #9AA8C0; --zh-white: #FFFFFF; --zh-bg: #FAFBFD; --zh-bg-alt: #F4F7FB; --zh-line: rgba(26,61,124,.10); --zh-line-soft: rgba(26,61,124,.06); --zh-line-gold: rgba(201,168,76,.22); --zh-shadow: 0 20px 56px rgba(13,31,66,.06); --zh-shadow-soft: 0 8px 28px rgba(13,31,66,.035); --zh-shadow-hover: 0 28px 72px rgba(13,31,66,.09); --zh-deep-shadow: 0 34px 96px rgba(13,31,66,.105); --zh-font: -apple-system,BlinkMacSystemFont,"SF Pro Text","PingFang SC","Hiragino Sans GB","Helvetica Neue","Microsoft YaHei",Arial,sans-serif; --zh-radius: 10px; --zh-radius-sm: 6px; --fs-h1: clamp(2.5rem,6vw,4rem); --fs-h2: clamp(2.05rem,3.6vw,2.75rem); --fs-sub: clamp(1.0625rem,1.6vw,1.25rem); --fs-body: clamp(.9375rem,.98vw,1rem); --fs-label: .75rem; --fs-note: .6875rem; --zh-ease-out: cubic-bezier(.22,1,.36,1); --blue: var(--zh-blue); --blue-mid: var(--zh-blue-mid); --blue-light: var(--zh-blue-soft); --blue-pale: var(--zh-blue-pale); --gold: var(--zh-gold); --t1: var(--zh-ink); --t2: var(--zh-text); --t3: var(--zh-muted); --t4: var(--zh-faint); --serif: var(--zh-font); --serif-display: var(--zh-font); --sans: var(--zh-font); --font-body: var(--zh-font); --font-display: var(--zh-font); --font-number: var(--zh-font); }
:root { --zh-v5-page: #F5F6F7; --zh-v5-surface: #FFFFFF; --zh-v5-surface-soft: #F9FAFA; --zh-v5-ink: #152A45; --zh-v5-text: #4A5D72; --zh-v5-muted: #708096; --zh-v5-blue: #214F84; --zh-v5-gold: #8C6929; --zh-v5-gold-soft: rgba(140,105,41,.12); --zh-v5-line: rgba(21,42,69,.12); --zh-v5-line-soft: rgba(21,42,69,.07); --zh-v5-radius: 14px; --zh-v5-shadow: 0 8px 24px rgba(21,42,69,.055); --zh-v5-shadow-hover: 0 12px 30px rgba(21,42,69,.09); --zh-v5-space-1: 4px; --zh-v5-space-2: 8px; --zh-v5-space-3: 16px; --zh-v5-space-4: 24px; --zh-v5-space-5: 32px; --zh-v5-space-6: 40px; --zh-v5-space-7: 64px; --zh-v5-section-y: 64px; --zh-v5-gutter: 20px; --zh-v5-card-pad: 20px; --zh-v5-card-gap: 16px; --zh-v5-section-title: 2.1rem; --zh-v5-card-title: 1.0625rem; --zh-v5-label: .6875rem; }
* { -webkit-font-smoothing: antialiased; text-rendering: optimizelegibility; }
html { scroll-behavior: smooth; scroll-padding-top: 72px; }
body { font-family: var(--zh-font); color: var(--zh-ink); background: var(--zh-white); margin: 0px; }
#root, #mainContent { background: var(--zh-white); }
#mainContent { background: radial-gradient(circle at 8% 4%, rgba(74, 144, 217, 0.106), transparent 24%), radial-gradient(circle at 92% 36%, rgba(201, 168, 76, 0.075), transparent 25%), linear-gradient(rgb(255, 255, 255) 0%, rgb(248, 251, 255) 30%, rgb(245, 248, 253) 62%, rgb(255, 255, 255) 100%); }
#about, #strategy, #team, #timeline, #honors, #contact { position: relative; overflow: hidden; isolation: isolate; padding: clamp(88px, 12vh, 138px) clamp(20px, 5vw, 64px); border-top: 0px; }
#about { background: linear-gradient(rgba(255, 255, 255, 0.98), rgba(250, 253, 255, 0.95)), rgb(255, 255, 255); }
#strategy, #timeline, #contact { background: radial-gradient(circle at 14% 16%, rgba(255, 255, 255, 0.92), transparent 32%), linear-gradient(rgb(246, 249, 253), rgb(241, 246, 252)); }
#team { background: radial-gradient(circle at 18% 8%, rgba(74, 144, 217, 0.12), transparent 30%), linear-gradient(rgb(247, 250, 254), rgb(238, 245, 252)); }
#about::before, #strategy::before, #team::before, #timeline::before, #honors::before, #contact::before { content: ""; position: absolute; inset: 0px; z-index: 0; pointer-events: none; background: linear-gradient(90deg, rgba(26, 61, 124, 0.035) 1px, transparent 1px) 0px 0px / 64px 64px, linear-gradient(rgba(26, 61, 124, 0.027) 1px, transparent 1px) 0px 0px / 64px 64px; opacity: 0.38; mask-image: linear-gradient(transparent 0%, rgb(0, 0, 0) 14%, rgb(0, 0, 0) 86%, transparent 100%); }
#about::after, #strategy::after, #team::after, #timeline::after, #honors::after, #contact::after { content: ""; position: absolute; inset: auto -12% -18% auto; width: min(52vw, 620px); aspect-ratio: 1 / 1; z-index: 0; pointer-events: none; border-radius: 999px; background: radial-gradient(circle, rgba(74, 144, 217, 0.11), rgba(74, 144, 217, 0.04) 42%, transparent 70%); filter: blur(18px); opacity: 0.62; }
#about > div, #strategy > div, #team > div, #timeline > div, #honors > div, #contact > div { position: relative; z-index: 1; }
nav, nav a, nav button { font-family: var(--zh-font); font-size: var(--fs-label); font-weight: 600; }
#hero h1, #hero [style*="fs-h1"], #hero [class*="text-[var(--fs-h1)]"] { font-family: var(--zh-font); font-size: var(--fs-h1); font-weight: 700; line-height: 1.2; letter-spacing: 0.06em; }
#hero p, #hero [style*="color:var(--blue-soft)"], #hero [style*="color: var(--blue-soft)"] { font-family: var(--zh-font); font-size: var(--fs-sub); font-weight: 400; line-height: 1.7; }
#hero > div[class*="text-center"], #hero > div:has(h1) { text-align: center; display: flex; flex-direction: column; align-items: center; }
#timeline .codex-timepoint.is-active, #timeline .codex-timepoint:hover { background: radial-gradient(circle at 84% 16%, rgba(201, 168, 76, 0.106), transparent 36%), linear-gradient(rgba(255, 255, 255, 0.7), rgba(248, 251, 255, 0.48)); }
#timeline .codex-timepoint.is-active .codex-year { color: rgba(201, 168, 76, 0.18); }
#honors .codex-honor-dot.is-active { width: 22px; background: var(--zh-blue); }
@keyframes codex-honors-flow { 
  0% { transform: translateX(0px); }
  100% { transform: translateX(-50%); }
}
.reveal.show { transform: translateY(0px) !important; }
#mainContent section.section::after, #mainContent section.section::before { content: none !important; display: none !important; }
@media (max-width: 760px) {#about, #strategy, #team, #timeline, #honors, #contact { min-height: 100svh !important; box-sizing: border-box !important; display: flex !important; align-items: center !important; padding-top: clamp(54px, 8vh, 74px) !important; padding-bottom: clamp(38px, 6vh, 58px) !important; }
:root { --fs-h2: clamp(1.82rem,8vw,2.25rem); }
#honors { min-height: auto !important; display: block !important; }
}
@media (prefers-reduced-motion: reduce) {*, ::before, ::after { animation: auto ease 0s 1 normal none running none !important; transition: none !important; }
}
#about, #strategy, #team, #timeline, #honors, #contact { padding-top: clamp(100px, 13vh, 152px) !important; padding-bottom: clamp(100px, 13vh, 152px) !important; }
#honors .codex-honor-dot.is-active { width: 26px !important; background: linear-gradient(90deg,var(--zh-blue),var(--zh-blue-mid)) !important; }
#about, #strategy, #team, #timeline, #honors, #contact { min-height: 0px !important; display: block !important; padding: var(--zh-v5-section-y) var(--zh-v5-gutter) !important; background: var(--zh-v5-page) !important; }
#about::before, #strategy::before, #team::before, #timeline::before, #honors::before, #contact::before, #about::after, #strategy::after, #team::after, #timeline::after, #honors::after, #contact::after { display: none !important; }
#timeline .codex-timepoint.is-active, #timeline .codex-timepoint:hover { background: var(--zh-v5-surface-soft) !important; }
#honors .codex-honor-dot.is-active { width: 22px !important; background: var(--zh-v5-gold) !important; }
@media (min-width: 761px) {:root { --zh-v5-radius: 16px; --zh-v5-section-y: 96px; --zh-v5-gutter: 32px; --zh-v5-card-pad: 28px; --zh-v5-card-gap: 24px; --zh-v5-section-title: 2.55rem; --zh-v5-card-title: 1.1875rem; --zh-v5-label: .75rem; }
}
#mainContent #team { background: var(--zh-v5-page) !important; }
#mainContent #team::before, #mainContent #team::after { content: none !important; display: none !important; }
#mainContent #strategy::before, #mainContent #timeline::before, #mainContent #honors::before { content: "" !important; display: block !important; position: absolute !important; inset: 0px !important; z-index: 0 !important; width: auto !important; height: auto !important; border: 0px !important; border-radius: 0px !important; opacity: 1 !important; filter: none !important; pointer-events: none !important; }
#mainContent #strategy::before { background: radial-gradient(at 92% 5%, rgba(76, 137, 203, 0.11) 0%, rgba(76, 137, 203, 0.035) 28%, transparent 62%), linear-gradient(122deg, transparent 30%, rgba(255, 255, 255, 0.62) 49%, transparent 70%) !important; }
#mainContent #timeline::before { background: radial-gradient(at 8% 88%, rgba(76, 137, 203, 0.09) 0%, rgba(76, 137, 203, 0.027) 30%, transparent 64%), linear-gradient(122deg, transparent 24%, rgba(255, 255, 255, 0.52) 48%, transparent 72%) !important; }
#mainContent #honors::before { background: radial-gradient(at 88% 12%, rgba(76, 137, 203, 0.08) 0%, rgba(76, 137, 203, 0.024) 28%, transparent 60%), linear-gradient(122deg, transparent 34%, rgba(255, 255, 255, 0.55) 50%, transparent 68%) !important; }
#mainContent #team { background: linear-gradient(rgb(255, 255, 255) 0%, rgb(251, 253, 255) 100%) !important; }
@media (min-width: 1024px) {:root { --zh-v5-section-y: 112px; --zh-v5-gutter: 48px; --zh-v5-card-pad: 32px; --zh-v5-card-gap: 24px; }
}
@media (max-width: 760px) {html { scroll-snap-type: y; }
#mainContent #about, #mainContent #strategy, #mainContent #team, #mainContent #timeline, #mainContent #honors, #mainContent #contact { box-sizing: border-box; min-height: 100svh; scroll-snap-align: start; scroll-snap-stop: normal; }
}
#mainContent #about { scroll-margin-top: -20px; }
#mainContent, #mainContent #about, #mainContent #strategy, #mainContent #team, #mainContent #timeline, #mainContent #honors, #mainContent #contact { background: rgb(255, 255, 255) !important; }
#mainContent #about::before, #mainContent #strategy::before, #mainContent #team::before, #mainContent #timeline::before, #mainContent #honors::before, #mainContent #contact::before, #mainContent #about::after, #mainContent #strategy::after, #mainContent #team::after, #mainContent #timeline::after, #mainContent #honors::after, #mainContent #contact::after { display: none !important; content: none !important; }
#mainContent #timeline .codex-timeline-reference .codex-timepoint:hover, #mainContent #timeline .codex-timeline-reference .codex-timepoint.is-active { background: transparent !important; }
:root { --zh-v5-blue: #1E4F82; --zh-v5-gold: #9A855D; --zh-v5-gold-soft: rgba(154,133,93,.075); }
footer.codex-boss-footer { margin: 0px !important; padding: var(--zh-v5-space-7) var(--zh-v5-gutter) var(--zh-v5-space-5) !important; background: rgb(18, 60, 107) !important; color: rgba(255, 255, 255, 0.74) !important; }
footer.codex-boss-footer::before, footer.codex-boss-footer::after { display: none !important; content: none !important; }
footer.codex-boss-footer .codex-boss-footer-inner { width: min(100%, 1120px) !important; margin: 0px auto !important; }
footer.codex-boss-footer .codex-boss-footer-grid { display: grid !important; grid-template-columns: 1fr !important; gap: var(--zh-v5-space-5) !important; }
footer.codex-boss-footer img { width: auto !important; height: 36px !important; border-radius: 4px !important; filter: brightness(0) invert(1) !important; }
footer.codex-boss-footer .codex-boss-footer-brand p { max-width: 380px !important; margin: var(--zh-v5-space-3) 0 0 !important; color: rgba(255, 255, 255, 0.68) !important; font-size: 0.875rem !important; line-height: 1.8 !important; }
footer.codex-boss-footer h4 { margin: 0 0 var(--zh-v5-space-3) !important; color: rgb(255, 255, 255) !important; font-size: 0.9375rem !important; font-weight: 700 !important; }
footer.codex-boss-footer a, footer.codex-boss-footer .codex-boss-footer-compliance p { display: block !important; margin: 0 0 var(--zh-v5-space-2) !important; color: rgba(255, 255, 255, 0.68) !important; font-size: 0.8125rem !important; line-height: 1.65 !important; text-decoration: none !important; }
footer.codex-boss-footer a:hover { color: rgb(255, 255, 255) !important; }
footer.codex-boss-footer .codex-boss-footer-risk { margin-top: var(--zh-v5-space-6) !important; padding-top: var(--zh-v5-space-4) !important; border-top: 1px solid rgba(255, 255, 255, 0.15) !important; color: rgba(255, 255, 255, 0.52) !important; font-size: 0.75rem !important; line-height: 1.75 !important; }
footer.codex-boss-footer .codex-boss-footer-copy { margin-top: var(--zh-v5-space-4) !important; color: rgba(255, 255, 255, 0.45) !important; font-size: 0.75rem !important; }
@media (min-width: 761px) {footer.codex-boss-footer .codex-boss-footer-grid { grid-template-columns: 1.3fr 0.8fr 1fr !important; gap: var(--zh-v5-space-7) !important; }
}
footer.codex-boss-footer .zh-footer-qr img { background: rgb(255, 255, 255); width: 86px !important; height: 86px !important; border-radius: 8px !important; filter: none !important; }
footer.codex-boss-footer .zh-footer-qr figcaption { color: rgba(200, 220, 255, 0.55) !important; font-size: 0.68rem !important; letter-spacing: 0.08em !important; }
