:root {
  color-scheme: dark;
  --bg: #0E2436;
  --bg-deep: #081b2a;
  --surface: #123247;
  --surface-2: #144052;
  --surface-3: #155060;
  --text: #d4e5e5;
  --text-strong: #F4F1EA;
  --muted: #a1b9bb;
  --dim: #718d91;
  --line: rgba(196, 227, 227, .16);
  --line-strong: rgba(196, 227, 227, .32);
  --hub-teal: #0E7B82;
  --amber: #E8913A;
  --paper: #F4F1EA;
  --cyan: #36C5D4;
  --cyan-soft: rgba(54, 197, 212, .13);
  --cyan-bright: #a8edf0;
  --danger: #ff847c;
  --max: 1240px;
  --gutter: clamp(22px, 5vw, 72px);
  --section: clamp(88px, 11vw, 168px);
  --ease: cubic-bezier(.2, .75, .25, 1);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--bg); }
body { margin: 0; min-width: 320px; overflow-x: hidden; color: var(--text); background: var(--bg); font-family: "Noto Sans SC", "Microsoft YaHei UI", "Microsoft YaHei", sans-serif; line-height: 1.7; }
body::selection { color: var(--bg-deep); background: var(--cyan); }
body.is-locked { overflow: hidden; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button { color: inherit; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { color: var(--text-strong); line-height: 1.12; letter-spacing: -.035em; }
h2 { margin-bottom: 22px; font-size: clamp(2rem, 4vw, 4.7rem); font-weight: 620; }
h3 { margin-bottom: 14px; font-size: clamp(1.15rem, 1.8vw, 1.7rem); }
p { color: var(--muted); }
:focus-visible { outline: 2px solid var(--cyan); outline-offset: 4px; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; z-index: 100; top: 12px; left: 12px; padding: 10px 14px; color: var(--bg); background: var(--cyan); transform: translateY(-160%); transition: transform .2s; }
.skip-link:focus { transform: translateY(0); }
.page-grid { position: fixed; z-index: -1; inset: 0; pointer-events: none; opacity: .22; background-image: linear-gradient(to right, transparent calc(100% - 1px), rgba(125,171,199,.09) 1px); background-size: calc((100vw - 2 * var(--gutter))/6) 100%; background-position: var(--gutter) 0; }

.site-header { position: fixed; z-index: 40; top: 0; left: 0; display: grid; grid-template-columns: auto 1fr auto; align-items: center; width: 100%; height: 70px; padding: 0 var(--gutter); border-bottom: 1px solid transparent; transition: background .25s, border-color .25s; }
.site-header.is-scrolled, .site-header.is-open { border-color: var(--line); background: rgba(14, 36, 54, .93); backdrop-filter: blur(18px); }
.brand { display: inline-flex; align-items: center; color: var(--text-strong); }
.brand-lockup { display: inline-flex; align-items: center; gap: 10px; }
.brand-symbol { position: relative; display: inline-block; width: 34px; height: 34px; overflow: hidden; flex: 0 0 34px; clip-path: polygon(25% 6.7%, 75% 6.7%, 100% 50%, 75% 93.3%, 25% 93.3%, 0 50%); background: var(--paper); }
.brand-symbol img { position: absolute; top: -44px; left: -14px; width: 240px; max-width: none; height: auto; }
.brand-symbol--micro { width: 20px; height: 20px; flex-basis: 20px; vertical-align: -5px; margin-right: 8px; }
.brand-symbol--micro img { top: -26px; left: -8px; width: 141px; }
.brand-wordmark { color: var(--paper); font: 600 1rem/1 "Noto Serif SC", "Songti SC", serif; letter-spacing: .08em; white-space: nowrap; }
.brand-wordmark b { display: inline-block; margin-left: 3px; color: var(--cyan); font: 650 .68rem/1 "IBM Plex Mono", Consolas, monospace; letter-spacing: .19em; vertical-align: .08em; }
.site-nav { justify-self: center; display: flex; gap: clamp(18px, 2.5vw, 40px); }
.site-nav a { position: relative; color: var(--muted); font-size: .84rem; }
.site-nav a::after { position: absolute; right: 0; bottom: -10px; left: 0; height: 1px; content: ""; background: var(--cyan); transform: scaleX(0); transform-origin: left; transition: transform .25s var(--ease); }
.site-nav a:hover { color: var(--text-strong); }
.site-nav a:hover::after { transform: scaleX(1); }
.nav-cta, .button { min-height: 44px; border: 1px solid var(--line-strong); border-radius: 0; cursor: pointer; transition: color .2s, background .2s, border-color .2s, transform .2s; }
.nav-cta { padding: 0 18px; color: var(--cyan-bright); background: rgba(7,18,29,.64); font-size: .82rem; }
.nav-cta:hover { border-color: var(--cyan); background: var(--cyan-soft); }
.nav-toggle { display: none; width: 44px; height: 44px; border: 0; background: transparent; }
.nav-toggle > span:not(.sr-only) { display: block; width: 22px; height: 1px; margin: 6px auto; background: var(--text); transition: transform .2s; }

.hero { position: relative; min-height: 100dvh; overflow: hidden; background: var(--bg-deep); }
.hero-media, .hero-media::after { position: absolute; inset: 0; }
.hero-media img { width: 100%; height: 100%; object-fit: cover; object-position: 61% 50%; filter: saturate(.72) contrast(1.05) brightness(.74); animation: hero-enter 1.6s var(--ease) both; }
.hero-media::after { content: ""; background: linear-gradient(90deg, rgba(8,27,42,.98) 0%, rgba(8,27,42,.87) 34%, rgba(8,27,42,.3) 67%, rgba(8,27,42,.55) 100%), linear-gradient(0deg, var(--bg-deep) 0%, transparent 28%); }
.hero-content { position: relative; z-index: 2; display: flex; flex-direction: column; justify-content: center; width: min(720px, 62vw); min-height: 100dvh; margin-left: var(--gutter); padding: 130px 0 150px; }
.eyebrow, .section-label, .step-index, .zone-type, .solution-level { color: var(--cyan); font: 500 .72rem/1.4 "IBM Plex Mono", Consolas, monospace; letter-spacing: .16em; text-transform: uppercase; }
.eyebrow, .section-label--brand { display: flex; align-items: center; }
.hero h1 { max-width: 720px; margin: 0 0 26px; font-size: clamp(3.4rem, 7.5vw, 7.8rem); font-weight: 580; letter-spacing: -.065em; }
.hero-lead { margin-bottom: 36px; color: #b9cad6; font-size: clamp(1.05rem, 1.7vw, 1.45rem); }
.hero-actions { display: flex; align-items: center; gap: 28px; }
.button { padding: 12px 22px; }
.button-primary { border-color: var(--hub-teal); color: var(--paper); background: var(--hub-teal); font-weight: 650; }
.button-primary:hover { border-color: var(--cyan); color: var(--bg-deep); background: var(--cyan); transform: translateY(-2px); }
.button-quiet { background: transparent; }
.text-link { position: relative; color: var(--text); font-size: .92rem; }
.text-link::after { content: " →"; color: var(--cyan); }
.hero-rail { position: absolute; z-index: 3; right: var(--gutter); bottom: 38px; left: var(--gutter); display: grid; grid-template-columns: repeat(5, 1fr); border-top: 1px solid var(--line-strong); }
.hero-rail span { padding-top: 13px; color: #8fa4b4; font: .67rem/1.4 "IBM Plex Mono", Consolas, monospace; letter-spacing: .08em; }
.hero-rail span::before { display: block; width: 5px; height: 5px; margin-top: -16px; margin-bottom: 12px; content: ""; background: var(--cyan); }
.hero-rail span:nth-child(3)::before { background: var(--amber); }

.audience-bar { display: grid; grid-template-columns: 1.1fr .75fr 1.45fr; gap: 46px; align-items: start; padding: 54px var(--gutter); border-bottom: 1px solid var(--line); background: var(--surface); }
.audience-bar h2 { margin: 0; font-size: clamp(1.35rem, 2vw, 2rem); }
.audience-switch { display: flex; flex-direction: column; border-left: 1px solid var(--line); }
.audience-switch button { padding: 9px 16px; border: 0; border-left: 2px solid transparent; color: var(--muted); background: transparent; text-align: left; cursor: pointer; }
.audience-switch button.is-active { border-left-color: var(--cyan); color: var(--cyan-bright); }
.audience-copy strong { display: block; margin-bottom: 8px; color: var(--text-strong); font-size: 1.04rem; }
.audience-copy p { margin: 0; font-size: .92rem; }

.section { position: relative; padding: var(--section) var(--gutter); }
.section-heading { max-width: 840px; margin-bottom: clamp(54px, 7vw, 92px); }
.section-heading > p:last-child { max-width: 680px; margin-bottom: 0; font-size: 1.02rem; }
.section-label { margin-bottom: 20px; }
.section-problem { background: linear-gradient(180deg, var(--bg), #081621); }
.broken-chain { display: grid; grid-template-columns: repeat(3, 1fr); max-width: var(--max); margin: 0 auto; border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line); }
.broken-chain article { min-height: 160px; padding: 26px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.broken-chain strong { display: block; margin-bottom: 35px; color: var(--text-strong); font-size: 1rem; }
.broken-chain span { color: var(--muted); font-size: .88rem; }
.problem-conclusion { max-width: 900px; margin: 62px 0 0 auto; color: var(--text-strong); font-size: clamp(1.25rem, 2.5vw, 2.25rem); line-height: 1.45; }
.about-nexedu-section { background: #0a1b2a; }.about-nexedu-grid { display: grid; grid-template-columns: repeat(4, 1fr); max-width: var(--max); margin: auto; border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line); }.about-nexedu-grid article { min-height: 235px; padding: 25px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: rgba(4,11,18,.3); }.about-nexedu-grid span,.policy-card > span { color: var(--cyan); font: .7rem/1 "IBM Plex Mono", Consolas, monospace; letter-spacing: .1em; }.about-nexedu-grid h3 { margin-top: 54px; font-size: 1.2rem; }.about-nexedu-grid p { margin-bottom: 0; font-size: .8rem; }.policy-grid { display: grid; grid-template-columns: repeat(2, 1fr); max-width: var(--max); margin: 34px auto 0; border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line); }.policy-card { min-height: 225px; padding: 25px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: rgba(7,18,29,.42); }.policy-card h3 { margin-top: 50px; font-size: 1.18rem; }.policy-card p { margin-bottom: 0; font-size: .8rem; }.policy-boundary { max-width: 820px; margin: 24px 0 0 auto; padding-left: 16px; border-left: 2px solid var(--cyan); font-size: .78rem; }
.professional-directions { display: grid; grid-template-columns: repeat(4, 1fr); max-width: var(--max); margin: 34px auto 0; border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line); }
.professional-directions article { min-height: 205px; padding: 24px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: rgba(7,18,29,.42); }.professional-directions span { color: var(--cyan); font: .7rem/1 "IBM Plex Mono", Consolas, monospace; letter-spacing: .1em; }.professional-directions h3 { margin-top: 44px; font-size: 1.18rem; }.professional-directions p { margin-bottom: 0; font-size: .8rem; }

.method-section { background: var(--surface); }
.method-flow { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(280px, 1.35fr) auto minmax(0, 1fr); gap: 20px; align-items: center; max-width: var(--max); margin: auto; }
.method-node { min-height: 260px; padding: 30px; border: 1px solid var(--line-strong); background: var(--bg-deep); }
.method-node > span { color: var(--cyan); font: .68rem/1 "IBM Plex Mono", Consolas, monospace; letter-spacing: .13em; }
.method-node h3 { margin-top: 58px; }.method-node p { margin-bottom: 0; font-size: .86rem; }
.flow-arrow { color: var(--cyan); font: 300 2rem/1 "IBM Plex Mono", Consolas, monospace; }
.graph-stack { display: grid; gap: 1px; border: 1px solid var(--line-strong); background: var(--line); }
.graph-card { display: grid; grid-template-columns: 48px 1fr; gap: 16px; padding: 20px; background: var(--surface-2); }
.graph-card > strong { color: var(--cyan); font: 600 1.45rem/1 "IBM Plex Mono", Consolas, monospace; }.graph-card h3 { margin: 0 0 6px; font-size: 1.05rem; }.graph-card p { margin: 0; font-size: .78rem; }
.method-answer { display: grid; grid-template-columns: repeat(3, 1fr); max-width: var(--max); margin: 24px auto 0; border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line); }.method-answer p { margin: 0; padding: 18px 22px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); font-size: .88rem; }.method-answer strong { color: var(--text-strong); }
.curriculum-layers { display: grid; grid-template-columns: repeat(3, 1fr); max-width: var(--max); margin: 48px auto 0; border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line); }.curriculum-layers article { min-height: 220px; padding: 26px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: rgba(7,18,29,.42); }.curriculum-layers span { color: var(--cyan); font: .7rem/1 "IBM Plex Mono", Consolas, monospace; letter-spacing: .1em; }.curriculum-layers h3 { margin-top: 48px; font-size: 1.24rem; }.curriculum-layers p { margin-bottom: 0; font-size: .82rem; }

.services-section { background: #081722; }
.service-groups { display: grid; gap: 58px; max-width: var(--max); margin: auto; }
.service-group > header { display: grid; grid-template-columns: 54px auto 1fr; gap: 18px; align-items: baseline; padding-bottom: 16px; border-bottom: 1px solid var(--line-strong); }.service-group > header > span { color: var(--cyan); font: .76rem/1 "IBM Plex Mono", Consolas, monospace; }.service-group > header h3 { margin: 0; font-size: clamp(1.35rem, 2vw, 2rem); }.service-group > header p { justify-self: end; max-width: 470px; margin: 0; font-size: .8rem; }
.service-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-left: 1px solid var(--line); }.service-card { padding: 28px 28px 24px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }.service-card:first-child, .service-card:nth-child(2) { border-top: 0; }.service-index { color: var(--cyan); font: .7rem/1 "IBM Plex Mono", Consolas, monospace; letter-spacing: .1em; }.service-card h3 { margin-top: 36px; font-size: clamp(1.2rem, 1.8vw, 1.55rem); }.service-card p { margin-bottom: 12px; font-size: .82rem; line-height: 1.75; }.service-card strong { color: var(--text); }.service-grid-last { grid-template-columns: repeat(2, minmax(0, 1fr)); }.service-grid-last .service-card { min-height: 310px; }

.platform-section { display: grid; grid-template-columns: minmax(0, .9fr) minmax(500px, 1.1fr); gap: clamp(60px, 8vw, 130px); align-items: center; background: var(--bg-deep); }
.platform-copy h2 { font-size: clamp(2.2rem, 4.4vw, 4.9rem); }
.platform-orbit { position: relative; aspect-ratio: 1; max-width: 520px; margin: 0 auto; border: 1px solid var(--line); border-radius: 50%; background: radial-gradient(circle, rgba(67,215,255,.08), transparent 57%); }
.platform-orbit::before, .platform-orbit::after { position: absolute; inset: 15%; border: 1px solid var(--line); border-radius: 50%; content: ""; }
.platform-orbit::after { inset: 33%; border-color: rgba(67,215,255,.25); }
.orbit-core { position: absolute; z-index: 2; top: 50%; left: 50%; width: 180px; text-align: center; transform: translate(-50%,-50%); }
.orbit-core span { display: block; color: var(--cyan-bright); font: 600 1.1rem/1 "IBM Plex Mono", Consolas, monospace; letter-spacing: .12em; }
.orbit-core small { display: block; margin-top: 14px; color: var(--muted); }
.orbit-item { position: absolute; z-index: 2; padding: 8px 12px; border-left: 2px solid var(--cyan); color: var(--text-strong); background: var(--surface); font-size: .82rem; }
.item-a { top: 8%; left: 47%; }.item-b { top: 49%; right: -4%; }.item-c { bottom: 7%; left: 38%; }.item-d { top: 48%; left: -4%; }
.fine-print { grid-column: 1 / -1; margin: 0; color: var(--dim); font-size: .74rem; }

.loop-section { background: #081722; }
.loop-track { position: relative; max-width: 1040px; margin-left: auto; }
.loop-line { position: absolute; top: 0; bottom: 0; left: 15px; width: 1px; background: var(--line); }
.loop-line span { position: absolute; inset: 0; background: var(--cyan); transform: scaleY(0); transform-origin: top; transition: transform .7s var(--ease); }
.loop-step { position: relative; display: grid; grid-template-columns: 150px minmax(250px, .85fr) 1.15fr; gap: 28px; min-height: 190px; margin-left: 15px; padding: 38px 0 38px 64px; border-top: 1px solid var(--line); }
.loop-step::before { position: absolute; top: 43px; left: -4px; width: 9px; height: 9px; border: 1px solid var(--cyan); content: ""; background: var(--bg); transform: rotate(45deg); }
.loop-step h3 { margin: 0; font-size: clamp(1.35rem, 2.2vw, 2.2rem); }
.loop-step p { margin: 0; }

.training-intro { display: grid; grid-template-columns: 1.08fr .92fr; min-height: 80vh; background: var(--bg-deep); }
.training-image { min-height: 680px; overflow: hidden; }
.training-image img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.72) brightness(.78); }
.training-copy { display: flex; flex-direction: column; justify-content: center; padding: var(--section) var(--gutter); }
.training-copy h2 { font-size: clamp(2.3rem, 4vw, 4.6rem); }
.training-principles { display: grid; grid-template-columns: repeat(2, 1fr); margin-top: 36px; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.training-principles span { padding: 15px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); color: var(--text-strong); font-size: .82rem; }

.zones-section { background: var(--surface); }
.zone-layout { display: grid; grid-template-columns: minmax(250px, .65fr) minmax(0, 1.35fr); max-width: var(--max); margin: auto; border-top: 1px solid var(--line-strong); }
.zone-nav { border-left: 1px solid var(--line); }
.zone-nav button { display: block; position: relative; width: 100%; min-height: 92px; padding: 18px 24px; border: 0; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); color: var(--muted); background: transparent; text-align: left; cursor: pointer; }
.zone-nav button::before { position: absolute; top: 0; bottom: 0; left: 0; width: 2px; content: ""; background: var(--cyan); transform: scaleY(0); transition: transform .25s; }
.zone-nav button.is-active { color: var(--text-strong); background: var(--cyan-soft); }
.zone-nav button.is-active::before { transform: scaleY(1); }
.zone-nav span, .zone-nav small { display: block; }.zone-nav span { margin-bottom: 7px; }.zone-nav small { color: var(--dim); }
.zone-stage { position: relative; min-height: 500px; padding: clamp(40px, 6vw, 88px); border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); overflow: hidden; }
.zone-stage > *:not(.zone-blueprint) { position: relative; z-index: 2; }
.zone-blueprint { position: absolute; right: -10%; bottom: -20%; width: 72%; aspect-ratio: 1; border: 1px solid var(--line); transform: rotate(45deg); opacity: .7; }
.zone-blueprint span { position: absolute; border: 1px solid var(--line); }
.zone-blueprint span:nth-child(1) { inset: 12%; }.zone-blueprint span:nth-child(2) { inset: 26%; }.zone-blueprint span:nth-child(3) { top: 0; bottom: 0; left: 50%; }.zone-blueprint span:nth-child(4) { top: 50%; right: 0; left: 0; }
.zone-stage h3 { max-width: 640px; margin-top: 24px; font-size: clamp(2rem, 4vw, 4.1rem); }
.zone-stage > p:not(.zone-type) { max-width: 660px; }
.zone-meta { display: grid; gap: 4px; max-width: 720px; margin-top: 22px; padding-left: 16px; border-left: 2px solid var(--cyan); }.zone-meta p { margin: 0; color: var(--cyan-bright); font-size: .8rem; }
.zone-output { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; margin-top: 64px; background: var(--line); }
.zone-output div { padding: 18px; background: rgba(7,18,29,.9); }
.zone-output span, .zone-output strong { display: block; }.zone-output span { margin-bottom: 10px; color: var(--dim); font-size: .7rem; }.zone-output strong { color: var(--text); font-size: .82rem; font-weight: 500; }

.data-section { display: grid; grid-template-columns: .82fr 1.18fr; background: var(--bg-deep); }
.data-media { position: sticky; top: 0; height: 100vh; }
.data-media::after { position: absolute; inset: 0; content: ""; background: linear-gradient(90deg, transparent 65%, var(--bg-deep)), linear-gradient(0deg, var(--bg-deep), transparent 30%); }
.data-media img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.64) brightness(.7); }
.data-content { padding: var(--section) var(--gutter); }
.data-stack { border-top: 1px solid var(--line-strong); }
.data-stack article { display: grid; grid-template-columns: 200px 1fr; gap: 28px; padding: 28px 0; border-bottom: 1px solid var(--line); }
.data-stack span { color: var(--cyan-bright); font-size: .82rem; }.data-stack p { margin: 0; font-size: .9rem; }
.data-boundary { margin: 38px 0 0; padding-left: 18px; border-left: 2px solid var(--cyan); color: #adbeca; font-size: .82rem; }

.curriculum-section { background: #081722; }
.curriculum-path { display: grid; grid-template-columns: repeat(5, 1fr); border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line); }
.curriculum-path article { min-height: 250px; padding: 25px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.curriculum-path span { color: var(--cyan); font: .7rem/1 "IBM Plex Mono", Consolas, monospace; letter-spacing: .12em; }.curriculum-path h3 { margin-top: 65px; font-size: 1.2rem; }.curriculum-path p { font-size: .82rem; }
.expert-band { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; align-items: end; margin-top: 1px; padding: 28px; border: 1px solid var(--line); background: var(--surface); }.expert-band strong { color: var(--text-strong); }.expert-band p { margin: 7px 0 0; font-size: .82rem; }
.scenarios-data-section { background: #071521; }.scenario-context-grid { display: grid; grid-template-columns: repeat(2, 1fr); max-width: var(--max); margin: auto; border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line); }.scenario-context-card { min-height: 245px; padding: 28px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: rgba(4,11,18,.3); }.scenario-context-card span,.data-capability-step span { color: var(--cyan); font: .7rem/1 "IBM Plex Mono", Consolas, monospace; letter-spacing: .1em; }.scenario-context-card h3 { margin-top: 62px; font-size: 1.35rem; }.scenario-context-card p { margin-bottom: 0; font-size: .82rem; }.data-capability-chain { display: grid; grid-template-columns: repeat(5, 1fr); max-width: var(--max); margin: 1px auto 0; border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line); }.data-capability-step { min-height: 235px; padding: 24px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }.data-capability-step h3 { margin-top: 58px; font-size: 1.05rem; }.data-capability-step p { margin-bottom: 0; font-size: .75rem; }.ecosystem-data-list { display: grid; grid-template-columns: repeat(5, 1fr); max-width: var(--max); margin: 1px auto 0; background: var(--line); gap: 1px; }.ecosystem-data-list p { min-height: 145px; margin: 0; padding: 20px; background: var(--surface); font-size: .75rem; }.ecosystem-data-list strong { display: block; margin-bottom: 10px; color: var(--cyan-bright); font-size: .85rem; }.data-capability-boundary { max-width: 900px; margin: 28px 0 0 auto; padding-left: 16px; border-left: 2px solid var(--cyan); font-size: .8rem; }

.ecosystem-section { background: var(--bg-deep); }.outcome-grid { display: grid; grid-template-columns: repeat(5, 1fr); border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line); }.outcome-grid article { min-height: 260px; padding: 24px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }.outcome-grid span { color: var(--cyan); font: .7rem/1 "IBM Plex Mono", Consolas, monospace; letter-spacing: .12em; }.outcome-grid h3 { margin-top: 54px; font-size: 1.2rem; }.outcome-grid p { font-size: .8rem; }.ecosystem-result { max-width: 850px; margin: 36px 0 0 auto; color: var(--text-strong); font-size: 1.1rem; }
.resource-section { background: #091925; }.teaching-operation { display: grid; grid-template-columns: repeat(3, 1fr); max-width: var(--max); margin: auto; border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line); }.teaching-operation article { min-height: 230px; padding: 25px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }.teaching-operation span,.resource-package > span,.organization-grid span { color: var(--cyan); font: .7rem/1 "IBM Plex Mono", Consolas, monospace; letter-spacing: .1em; }.teaching-operation h3 { margin-top: 52px; font-size: 1.25rem; }.teaching-operation p { margin-bottom: 0; font-size: .82rem; }
.teacher-development { display: grid; grid-template-columns: 1.1fr 1fr 1fr; gap: 1px; max-width: var(--max); margin: 1px auto 0; background: var(--line); }.teacher-development > div { padding: 28px; background: var(--surface); }.teacher-development h3 { margin-bottom: 10px; font-size: 1.45rem; }.teacher-development p { margin-bottom: 0; font-size: .82rem; }.teacher-skills,.teacher-modes { display: flex; flex-wrap: wrap; align-content: flex-start; gap: 8px; }.teacher-skills span,.teacher-modes span { padding: 7px 9px; border: 1px solid var(--line-strong); color: var(--text); font-size: .78rem; }.teacher-modes span { color: var(--cyan-bright); }
.resource-heading { margin-top: var(--section); }.resource-pool { display: grid; grid-template-columns: repeat(3, 1fr); max-width: var(--max); margin: auto; border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line); }.resource-pool article { display: flex; flex-direction: column; min-height: 290px; padding: 22px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: rgba(4,11,18,.36); }.resource-pool h3 { margin-top: 38px; font-size: 1.05rem; }.resource-pool p { margin-bottom: 18px; font-size: .78rem; }.resource-partners { display: flex; flex-wrap: wrap; gap: 6px; margin-top: auto; padding-top: 14px; }.resource-partners > span { flex: 0 0 100%; color: var(--muted); font-size: .65rem; }.resource-partners em { padding: 4px 6px; border: 1px solid var(--line-strong); color: var(--text); font-size: .66rem; font-style: normal; }.resource-pool small { margin-top: 14px; color: var(--cyan-bright); font-size: .72rem; line-height: 1.65; }.resource-boundary { max-width: 930px; margin: 30px 0 0 auto; padding-left: 16px; border-left: 2px solid var(--cyan); font-size: .8rem; }
.partners-section { background: #071521; }.partner-grid { display: grid; grid-template-columns: repeat(4, 1fr); max-width: var(--max); margin: auto; border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line); }.partner-card { display: flex; flex-direction: column; min-height: 205px; padding: 24px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: rgba(4,11,18,.32); }.partner-logo { display: flex; align-items: center; justify-content: center; height: 86px; padding: 12px; border: 1px solid rgba(104,218,255,.12); background: rgba(217,244,255,.04); }.partner-logo img { width: 100%; height: 100%; object-fit: contain; }.partner-logo-text { flex-direction: column; gap: 5px; color: var(--text-strong); letter-spacing: .08em; }.partner-logo-text strong { font: 600 1.15rem/1 "IBM Plex Mono", Consolas, monospace; }.partner-logo-text span { color: var(--cyan-bright); font-size: .68rem; letter-spacing: .2em; }.partner-card > p { margin: auto 0 0; padding-top: 20px; color: var(--text); font-size: .8rem; }.partner-boundary { max-width: 820px; margin: 28px 0 0 auto; padding-left: 16px; border-left: 2px solid var(--cyan); font-size: .8rem; }
.experts-section { background: #0a1b2a; }.expert-process { display: grid; grid-template-columns: repeat(4, 1fr); max-width: var(--max); margin: auto; border: 1px solid var(--line); background: rgba(4,11,18,.28); }.expert-process span { padding: 20px; border-right: 1px solid var(--line); color: var(--cyan-bright); font: .72rem/1 "IBM Plex Mono", Consolas, monospace; letter-spacing: .1em; }.expert-process span:last-child { border-right: 0; }.expert-groups { display: grid; gap: 1px; max-width: var(--max); margin: 1px auto 0; background: var(--line); }.expert-group { display: grid; grid-template-columns: 270px 1fr; background: var(--surface); }.expert-group header { padding: 28px; border-right: 1px solid var(--line); }.expert-group header p:last-child { margin: 12px 0 0; font-size: .78rem; }.expert-card-grid { display: grid; grid-template-columns: repeat(4, 1fr); }.expert-card { display: flex; flex-direction: column; min-height: 195px; padding: 24px; border-right: 1px solid var(--line); }.expert-card h3 { margin: 0; color: var(--text-strong); font-size: 1.12rem; }.expert-card p { margin: 24px 0 6px; color: var(--text); font-size: .82rem; }.expert-card small { color: var(--muted); font-size: .7rem; line-height: 1.6; }.expert-card span { margin-top: auto; padding-top: 20px; color: var(--cyan-bright); font-size: .72rem; line-height: 1.55; }
.organization-section { background: var(--surface); }.organization-grid { display: grid; grid-template-columns: repeat(2, 1fr); max-width: var(--max); margin: auto; border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line); }.organization-grid article { min-height: 260px; padding: 28px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }.organization-grid h3 { margin-top: 65px; font-size: 1.45rem; }.organization-grid p { margin-bottom: 0; font-size: .85rem; }.result-chain { display: grid; grid-template-columns: auto 1fr auto 1fr auto 1fr auto 1fr auto 1fr; gap: 12px; align-items: center; max-width: var(--max); margin-top: 1px; padding: 24px; border: 1px solid var(--line); background: var(--surface); }.result-chain span { color: var(--cyan); font: 600 1.1rem/1 "IBM Plex Mono", Consolas, monospace; }.result-chain p { margin: 0; font-size: .74rem; }

.solutions-section { background: var(--surface); }
.solution-selector { display: flex; max-width: var(--max); margin: auto; border-bottom: 1px solid var(--line-strong); }
.solution-selector button { flex: 1; padding: 18px; border: 0; border-right: 1px solid var(--line); color: var(--muted); background: transparent; cursor: pointer; }
.solution-selector button:first-child { border-left: 1px solid var(--line); }.solution-selector button[aria-selected="true"] { color: var(--cyan-bright); background: var(--cyan-soft); }
.solution-panel { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(48px, 8vw, 120px); max-width: var(--max); min-height: 430px; margin: auto; padding: clamp(48px, 7vw, 94px); border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); border-left: 1px solid var(--line); }
.solution-panel h3 { margin-top: 20px; font-size: clamp(2rem, 3.4vw, 3.8rem); }.solution-panel dl { margin: 0; }.solution-panel dl div { padding: 22px 0; border-top: 1px solid var(--line); }.solution-panel dt { margin-bottom: 7px; color: var(--dim); font-size: .7rem; }.solution-panel dd { margin: 0; color: var(--text); font-size: .9rem; }

.delivery-section { padding: var(--section) var(--gutter); background: var(--bg-deep); }
.delivery-track { display: grid; grid-template-columns: repeat(6, 1fr); border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line); }
.delivery-track article { min-height: 155px; padding: 20px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }.delivery-track span { color: var(--cyan-bright); font: .72rem/1 "IBM Plex Mono", Consolas, monospace; }.delivery-track p { margin-top: 48px; font-size: .82rem; }
.risk-grid { display: grid; grid-template-columns: 1.1fr repeat(4, 1fr); margin-top: 64px; border-top: 1px solid var(--line-strong); }.risk-grid > * { padding: 22px 20px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }.risk-grid h3 { margin: 0; }.risk-grid span { color: var(--text-strong); font-size: .88rem; }.risk-grid p { margin: 8px 0 0; font-size: .74rem; }

.pilot-section { padding: var(--section) var(--gutter); background: #0a1a26; }.pilot-copy { max-width: 820px; }.pilot-formula { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr auto 1fr; gap: 15px; align-items: center; margin-top: 60px; }.pilot-formula span { min-height: 88px; padding: 28px 14px; border: 1px solid var(--line-strong); color: var(--text-strong); text-align: center; }.pilot-formula b { color: var(--cyan); font-weight: 400; }
.final-cta { display: flex; justify-content: space-between; align-items: end; gap: 50px; padding: clamp(72px, 9vw, 130px) var(--gutter); border-top: 1px solid var(--cyan); background: linear-gradient(110deg, rgba(67,215,255,.11), transparent 55%), var(--bg-deep); }.final-cta > div { max-width: 850px; }.final-cta h2 { margin-bottom: 16px; }.final-cta p { margin: 0; }
.site-footer { display: grid; grid-template-columns: 1fr 1fr 1.6fr; gap: 30px; align-items: center; padding: 35px var(--gutter); border-top: 1px solid var(--line); background: var(--bg-deep); }.site-footer p { margin: 0; color: var(--dim); font-size: .72rem; }.site-footer p:last-child { text-align: right; }

.diagnosis-dialog { width: min(820px, calc(100vw - 30px)); max-height: calc(100dvh - 30px); padding: 0; border: 1px solid var(--line-strong); color: var(--text); background: var(--surface); box-shadow: 0 30px 100px rgba(0,0,0,.55); }.diagnosis-dialog::backdrop { background: rgba(1,7,12,.78); backdrop-filter: blur(8px); }.dialog-shell { position: relative; padding: clamp(30px, 6vw, 66px); }.dialog-shell h2 { max-width: 620px; font-size: clamp(2rem, 4.4vw, 3.7rem); }.dialog-close { position: absolute; top: 20px; right: 20px; border: 0; color: var(--muted); background: transparent; cursor: pointer; }.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin: 30px 0 18px; }.dialog-shell label { display: block; color: var(--text); font-size: .78rem; }.dialog-shell input, .dialog-shell select, .dialog-shell textarea { width: 100%; margin-top: 8px; padding: 12px; border: 1px solid var(--line-strong); border-radius: 0; color: var(--text); background: var(--bg); outline: none; }.dialog-shell textarea { resize: vertical; }.dialog-shell input:focus, .dialog-shell select:focus, .dialog-shell textarea:focus { border-color: var(--cyan); }.field-error { display: none; margin-top: 5px; color: var(--danger); font-size: .7rem; }.is-invalid .field-error { display: block; }.is-invalid input, .is-invalid select { border-color: var(--danger); }.dialog-actions { display: flex; gap: 12px; margin-top: 24px; }.form-success { margin-top: 26px; padding: 18px; border-left: 2px solid var(--cyan); background: var(--cyan-soft); }.form-success strong { color: var(--cyan-bright); }.form-success p { margin: 6px 0 0; font-size: .8rem; }

.reveal { opacity: 0; transform: translateY(28px); transition: opacity .75s var(--ease), transform .75s var(--ease); }
.reveal.is-visible { opacity: 1; transform: none; }
@keyframes hero-enter { from { opacity: 0; transform: scale(1.035); } to { opacity: 1; transform: scale(1); } }

@media (max-width: 980px) {
  .site-header { grid-template-columns: 1fr auto; }.nav-cta { display: none; }.nav-toggle { display: block; justify-self: end; }.site-nav { position: absolute; top: 69px; right: 0; left: 0; display: none; padding: 24px var(--gutter) 35px; border-bottom: 1px solid var(--line); background: rgba(4,11,18,.97); }.site-header.is-open .site-nav { display: grid; gap: 0; }.site-nav a { padding: 15px 0; border-bottom: 1px solid var(--line); font-size: 1rem; }.site-header.is-open .nav-toggle span:nth-last-child(2) { transform: translateY(3.5px) rotate(45deg); }.site-header.is-open .nav-toggle span:last-child { transform: translateY(-3.5px) rotate(-45deg); }
  .audience-bar { grid-template-columns: 1fr 1fr; }.audience-copy { grid-column: 1/-1; }.platform-section { grid-template-columns: 1fr; }.platform-orbit { width: min(600px, 86vw); }.about-nexedu-grid { grid-template-columns: repeat(2, 1fr); }.professional-directions { grid-template-columns: repeat(2, 1fr); }.curriculum-layers { grid-template-columns: repeat(3, 1fr); }.method-flow { grid-template-columns: 1fr auto 1.25fr; }.method-flow .method-node:last-child { grid-column: 1/-1; }.method-flow .flow-arrow:last-of-type { display: none; }.training-intro { grid-template-columns: 1fr; }.training-image { min-height: 55vh; }.data-section { grid-template-columns: 1fr; }.data-media { position: relative; height: 65vh; }.data-media::after { background: linear-gradient(0deg, var(--bg-deep), transparent 55%); }.curriculum-path { grid-template-columns: repeat(2, 1fr); }.resource-pool,.partner-grid { grid-template-columns: repeat(2, 1fr); }.teacher-development { grid-template-columns: 1fr 1fr; }.teacher-development > div:first-child { grid-column: 1/-1; }.expert-group { grid-template-columns: 1fr; }.expert-group header { border-right: 0; border-bottom: 1px solid var(--line); }.expert-card-grid { grid-template-columns: repeat(2, 1fr); }.organization-grid { grid-template-columns: repeat(2, 1fr); }.result-chain { grid-template-columns: auto 1fr auto 1fr auto 1fr; }.outcome-grid { grid-template-columns: repeat(3, 1fr); }.delivery-track { grid-template-columns: repeat(3, 1fr); }.risk-grid { grid-template-columns: repeat(2, 1fr); }.risk-grid h3 { grid-column: 1/-1; }.pilot-formula { grid-template-columns: 1fr 1fr; }.pilot-formula b { display: none; }.pilot-formula span:last-child { grid-column: 1/-1; }.site-footer { grid-template-columns: 1fr 1fr; }.site-footer p:last-child { grid-column: 1/-1; text-align: left; }
}

@media (max-width: 680px) {
  :root { --gutter: 20px; --section: 82px; }.page-grid { background-size: calc((100vw - 40px)/3) 100%; }
  .brand-lockup { gap: 8px; }.brand-symbol { width: 28px; height: 28px; flex-basis: 28px; }.brand-symbol img { top: -36px; left: -11px; width: 198px; }.brand-wordmark { font-size: .88rem; }.brand-wordmark b { font-size: .58rem; letter-spacing: .14em; }.brand-symbol--micro { width: 20px; height: 20px; flex-basis: 20px; }.brand-symbol--micro img { top: -26px; left: -8px; width: 141px; }
  .hero-content { width: auto; margin: 0 var(--gutter); padding-bottom: 160px; }.hero-media img { object-position: 70% 50%; }.hero-media::after { background: linear-gradient(90deg, rgba(4,11,18,.97), rgba(4,11,18,.52)), linear-gradient(0deg, var(--bg-deep), transparent 40%); }.hero h1 { font-size: clamp(3.1rem, 15vw, 5.2rem); }.hero-lead { max-width: 270px; }.hero-actions { align-items: flex-start; flex-direction: column; gap: 18px; }.hero-rail { grid-template-columns: repeat(5, max-content); gap: 22px; overflow: hidden; }.hero-rail span { font-size: .58rem; }
  .audience-bar { grid-template-columns: 1fr; gap: 28px; }.audience-copy { grid-column: auto; }.broken-chain { grid-template-columns: 1fr; }.broken-chain article { min-height: 135px; padding: 18px; }.broken-chain strong { margin-bottom: 25px; }.about-nexedu-grid,.professional-directions,.curriculum-layers,.teaching-operation,.organization-grid,.policy-grid { grid-template-columns: 1fr; }.about-nexedu-grid article,.professional-directions article,.curriculum-layers article,.teaching-operation article,.organization-grid article { min-height: 180px; }.professional-directions h3,.curriculum-layers h3,.teaching-operation h3,.organization-grid h3 { margin-top: 34px; }.teacher-development { grid-template-columns: 1fr; }.teacher-development > div:first-child { grid-column: auto; }.resource-pool,.partner-grid { grid-template-columns: 1fr; }.resource-pool article { min-height: 220px; }.expert-process { grid-template-columns: 1fr 1fr; }.expert-process span { border-bottom: 1px solid var(--line); }.expert-process span:nth-child(even) { border-right: 0; }.expert-process span:nth-last-child(-n+2) { border-bottom: 0; }.expert-card-grid { grid-template-columns: 1fr; }.expert-card { min-height: 165px; border-bottom: 1px solid var(--line); }.result-chain { grid-template-columns: auto 1fr; }.platform-section { overflow: hidden; }.platform-orbit { width: min(88vw, 420px); margin: 0 auto; }.method-flow { grid-template-columns: 1fr; }.method-flow .method-node:last-child { grid-column: auto; }.method-flow .flow-arrow:last-of-type { display: block; }.flow-arrow { justify-self: center; transform: rotate(90deg); }.method-answer { grid-template-columns: 1fr; }.service-group > header { grid-template-columns: 40px 1fr; }.service-group > header p { grid-column: 2; justify-self: start; }.service-grid,.service-grid-last { grid-template-columns: 1fr; }.service-card { padding: 24px 20px; }.loop-step { grid-template-columns: 1fr; gap: 12px; padding: 30px 0 45px 42px; }.loop-step::before { top: 34px; }.training-image { min-height: 48vh; }.training-principles { grid-template-columns: 1fr 1fr; }.zone-layout { grid-template-columns: 1fr; }.zone-nav { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; }.zone-nav button { flex: 0 0 72%; scroll-snap-align: start; border-top: 1px solid var(--line); }.zone-stage { min-height: 620px; padding: 38px 22px; }.zone-output { grid-template-columns: 1fr; margin-top: 45px; }.data-media { height: 52vh; }.data-content { padding-right: var(--gutter); padding-left: var(--gutter); }.data-stack article { grid-template-columns: 1fr; gap: 8px; }.curriculum-path { grid-template-columns: 1fr; }.curriculum-path article { min-height: 190px; }.curriculum-path h3 { margin-top: 35px; }.expert-band { grid-template-columns: 1fr; gap: 18px; }.outcome-grid { grid-template-columns: 1fr; }.outcome-grid article { min-height: 190px; }.outcome-grid h3 { margin-top: 36px; }.solution-panel { grid-template-columns: 1fr; gap: 45px; padding: 40px 22px; }.solution-selector button { padding: 15px 8px; }.delivery-track { grid-template-columns: 1fr 1fr; }.risk-grid { grid-template-columns: 1fr; }.risk-grid h3 { grid-column: auto; }.pilot-formula { grid-template-columns: 1fr; }.pilot-formula span:last-child { grid-column: auto; }.final-cta { align-items: flex-start; flex-direction: column; }.site-footer { grid-template-columns: 1fr; }.site-footer p:last-child { grid-column: auto; }.form-grid { grid-template-columns: 1fr; }.dialog-actions { align-items: stretch; flex-direction: column; }
}

@media (max-width: 980px) {
  .scenario-context-grid { grid-template-columns: 1fr; }.data-capability-chain { grid-template-columns: repeat(3, 1fr); }.ecosystem-data-list { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 680px) {
  .data-capability-chain,.ecosystem-data-list { grid-template-columns: 1fr; }.data-capability-step { min-height: 165px; }.data-capability-step h3 { margin-top: 28px; }.ecosystem-data-list p { min-height: auto; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .reveal { opacity: 1; transform: none; }
}

/* V4 · monochrome technology layer. V2 content classes are intentionally retained. */
:root { --bg:#fff; --bg-deep:#101114; --surface:#f4f4f6; --surface-2:#fff; --surface-3:#ececef; --text:#101114; --text-strong:#101114; --muted:#64656b; --dim:#85868c; --line:rgba(16,17,20,.13); --line-strong:rgba(16,17,20,.28); --cyan:#0e7b82; --cyan-soft:rgba(14,123,130,.09); --cyan-bright:#0e7b82; --hub-teal:#0e7b82; --amber:#e8913a; --paper:#fff; }
html,body { background:#fff; color:var(--text); }
body { font-family:Inter,"Helvetica Neue","Noto Sans SC","Microsoft YaHei",sans-serif; line-height:1.68; }
h1,h2,h3 { font-weight:500; letter-spacing:-.055em; } p { color:var(--muted); }
.page-grid { opacity:.42; background-image:linear-gradient(to right, transparent calc(100% - 1px), rgba(16,17,20,.055) 1px); }
.v4-header { position:fixed; top:22px; left:50%; display:grid; grid-template-columns:auto 1fr auto; width:min(1040px,calc(100% - 38px)); height:58px; padding:7px 10px 7px 15px; border:1px solid rgba(16,17,20,.1); border-radius:999px; color:#101114; background:rgba(255,255,255,.86); box-shadow:0 10px 32px rgba(16,17,20,.08); backdrop-filter:blur(18px); transform:translateX(-50%); }
.v4-header.is-scrolled,.v4-header.is-open { border-color:rgba(16,17,20,.13); background:rgba(255,255,255,.96); }
.v4-header .brand-symbol,.v4-header .brand-symbol--micro,.site-footer .brand-symbol { display:inline-grid; width:30px; height:30px; overflow:visible; flex:0 0 30px; clip-path:none; background:none; }
.v4-header .brand-symbol img,.v4-header .brand-symbol--micro img,.site-footer .brand-symbol img { position:static; width:30px; max-width:none; height:30px; margin:0; }
.v4-header .brand-wordmark,.site-footer .brand-wordmark { color:#101114; font-family:Inter,"Noto Sans SC",sans-serif; font-size:.86rem; font-weight:600; letter-spacing:.08em; }.v4-header .brand-wordmark b,.site-footer .brand-wordmark b { color:#101114; font-size:.64rem; }
.v4-header .site-nav { gap:clamp(12px,2vw,28px); }.v4-header .site-nav a { padding:7px 10px; border-radius:999px; color:#62636a; font-size:.72rem; }.v4-header .site-nav a:hover { color:#101114; background:#f4f4f6; }.v4-header .site-nav a::after { display:none; }
.v4-header .nav-toggle { color:#fff; border-radius:50%; background:#101114; }.v4-header .nav-toggle>span:not(.sr-only) { background:#fff; }
.v4-pill { display:flex; align-items:center; gap:9px; min-height:40px; padding:0 13px 0 6px; border:0; border-radius:999px; color:#fff; background:#101114; font-size:.68rem; }.v4-pill:hover { color:#fff; background:#0e2436; }.v4-grid-icon { display:grid; grid-template-columns:repeat(2,4px); gap:2px; place-content:center; width:28px; height:28px; border-radius:50%; background:#fff; }.v4-grid-icon i { width:4px; height:4px; border-radius:50%; background:#101114; }
.v4-hero { min-height:100svh; color:#101114; background:#fff; }.v4-hero .hero-media img { filter:grayscale(1) contrast(.94) brightness(1.04); animation:v4-image-enter 1.8s var(--ease) both; }.v4-hero .hero-media::after { background:linear-gradient(0deg,#fff 0%,rgba(255,255,255,.96) 18%,rgba(255,255,255,.62) 36%,rgba(255,255,255,.08) 64%,rgba(255,255,255,.1) 100%); }
.v4-hero-bottom { justify-content:flex-end; width:min(1020px,calc(100% - 2 * var(--gutter))); min-height:100svh; margin:0 var(--gutter); padding:250px 0 118px; }.v4-hero-note { display:flex; align-items:center; gap:8px; margin:0 0 18px; color:rgba(16,17,20,.62); font-size:.77rem; animation:v4-up .8s .5s var(--ease) both; }.v4-hero-note i { width:8px; height:8px; border-radius:50%; background:#101114; }.v4-hero .eyebrow { color:#101114; animation:v4-up .8s .65s var(--ease) both; }.v4-hero .brand-symbol,.v4-hero .brand-symbol--micro { display:inline-grid; width:21px; height:21px; overflow:visible; flex-basis:21px; clip-path:none; background:none; }.v4-hero .brand-symbol img,.v4-hero .brand-symbol--micro img { position:static; width:21px; height:21px; max-width:none; margin:0; }.v4-hero h1 { max-width:980px; color:#101114; font-size:clamp(3.1rem,7vw,7.1rem); font-weight:300; letter-spacing:-.07em; animation:v4-up .9s .8s var(--ease) both; }.v4-hero-lead { max-width:600px; color:rgba(16,17,20,.65); animation:v4-up .8s 1s var(--ease) both; }.v4-hero .hero-actions { animation:v4-up .8s 1.12s var(--ease) both; }.v4-hero .text-link { padding:12px 18px; border:1px solid rgba(16,17,20,.35); border-radius:999px; color:#101114; }.v4-hero .text-link::after { color:#101114; }.v4-hero .hero-rail { bottom:28px; border-color:rgba(16,17,20,.2); }.v4-hero .hero-rail span { color:rgba(16,17,20,.58); }.v4-hero .hero-rail span::before { background:#101114; }.v4-hero .hero-rail span:nth-child(3)::before { background:var(--amber); }
.section,.delivery-section { padding-top:clamp(90px,11vw,160px); padding-bottom:clamp(90px,11vw,160px); background:#fff; }.about-nexedu-section,.section-problem,.method-section,.services-section,.resource-section,.partners-section,.experts-section,.organization-section,.solutions-section,.pilot-section { background:#fff; }.section-problem { background:linear-gradient(180deg,#fff,#f4f4f6); }.section-heading { max-width:900px; }.section-heading h2,.platform-copy h2,.training-copy h2 { font-weight:300; }.section-label,.eyebrow,.step-index,.zone-type,.solution-level { color:var(--teal); }
.about-nexedu-grid article,.broken-chain article,.professional-directions article,.curriculum-layers article,.policy-card,.method-node,.service-card,.resource-pool article,.partner-card,.expert-card,.organization-grid article,.outcome-grid article,.delivery-track article,.risk-grid>* { border-color:var(--line); background:#fff; }.about-nexedu-grid,.broken-chain,.professional-directions,.curriculum-layers,.policy-grid,.resource-pool,.partner-grid,.organization-grid,.outcome-grid,.delivery-track { border-color:var(--line); }.about-nexedu-grid article,.professional-directions article,.curriculum-layers article,.service-card,.resource-pool article,.partner-card,.expert-card,.organization-grid article,.outcome-grid article { transition:transform .25s var(--ease),box-shadow .25s var(--ease); }.about-nexedu-grid article:hover,.professional-directions article:hover,.curriculum-layers article:hover,.service-card:hover,.resource-pool article:hover,.partner-card:hover,.expert-card:hover,.organization-grid article:hover,.outcome-grid article:hover { position:relative; z-index:2; transform:translateY(-5px); box-shadow:0 18px 42px rgba(16,17,20,.09); }
.platform-section,.loop-section,.scenarios-data-section,.ecosystem-section,.implementation-section { color:#fff; background:#101114; }.platform-section p,.loop-section p,.scenarios-data-section p,.ecosystem-section p,.implementation-section p { color:rgba(255,255,255,.65); }.platform-section h2,.loop-section h2,.scenarios-data-section h2,.ecosystem-section h2,.implementation-section h2 { color:#fff; }.platform-orbit { width:min(460px,40vw); max-width:460px; border-color:rgba(255,255,255,.18); background:radial-gradient(circle,rgba(14,123,130,.22),transparent 57%); }.platform-orbit::before { border-color:rgba(255,255,255,.13); }.platform-orbit::after { border-color:rgba(54,197,212,.42); }.orbit-item { border-left-color:var(--cyan); background:rgba(255,255,255,.1); }.orbit-core span { color:#fff; }.loop-section { background:#0e2436; }.loop-step { border-color:rgba(255,255,255,.17); }.loop-step::before { border-color:#fff; background:#0e2436; }.loop-line { background:rgba(255,255,255,.2); }.loop-line span { background:var(--cyan); }
.training-intro { background:#f4f4f6; }.training-image img { filter:grayscale(1) contrast(.96); }.training-copy { background:#fff; }.zones-section { background:#fff; }.zone-stage,.zone-nav button { background:#fff; border-color:var(--line); }.zone-nav button.is-active { color:#101114; background:#f4f4f6; }.zone-nav button::before { background:#101114; }.data-section { background:#101114; }.data-content h2 { color:#fff; }.data-content p,.data-stack p { color:rgba(255,255,255,.65); }.data-stack article { border-color:rgba(255,255,255,.17); }.data-stack strong { color:#fff; }.scenarios-data-section { background:#101114; }.scenario-context-card,.data-capability-step,.ecosystem-data-list p { border-color:rgba(255,255,255,.17); background:rgba(255,255,255,.04); }.scenario-context-card h3,.data-capability-step h3,.ecosystem-data-list strong { color:#fff; }
.partner-logo { border-color:var(--line); background:#f4f4f6; }.partner-card>p { color:#52545b; }.partner-logo-text { color:#101114; }.partner-logo-text span { color:var(--teal); }.experts-section { background:#f4f4f6; }.expert-groups,.teacher-development { background:var(--line); }.expert-group,.teacher-development>div { background:#fff; }.expert-card h3,.expert-card p { color:#101114; }.expert-card small { color:#64656b; }.expert-card span { color:var(--teal); }.expert-process { border-color:var(--line); background:#fff; }.expert-process span { color:#101114; }
.solutions-section { background:#fff; }.solution-selector { border-color:var(--line); }.solution-selector button { border-color:var(--line); color:#64656b; }.solution-selector button[aria-selected="true"] { color:#101114; background:#f4f4f6; }.solution-panel { border-color:var(--line); background:#fff; }.solution-panel dd { color:#101114; }.delivery-section { background:#101114; }.delivery-section .section-heading h2,.delivery-section .section-heading p { color:#fff; }.delivery-track { border-color:rgba(255,255,255,.19); }.delivery-track article { border-color:rgba(255,255,255,.19); background:transparent; }.delivery-track span { color:#fff; }.delivery-track p { color:rgba(255,255,255,.6); }.risk-grid { border-color:rgba(255,255,255,.19); }.risk-grid>* { border-color:rgba(255,255,255,.19); background:transparent; }.risk-grid h3,.risk-grid span { color:#fff; }.risk-grid p { color:rgba(255,255,255,.6); }.pilot-section { background:#f4f4f6; }.pilot-formula span { border-radius:999px; border-color:var(--line); background:#fff; }.pilot-formula b { color:var(--teal); }.final-cta { border-color:#101114; background:#101114; }.final-cta h2 { color:#fff; }.final-cta p { color:rgba(255,255,255,.62); }.button-primary { border-color:#101114; color:#fff; background:#101114; border-radius:999px; }.button-primary:hover { border-color:#0e2436; color:#fff; background:#0e2436; }.site-footer { background:#fff; border-color:var(--line); }.site-footer p { color:#64656b; }.site-footer .brand-wordmark { color:#101114; }
.diagnosis-dialog { border-radius:20px; color:#101114; background:#fff; }.diagnosis-dialog::backdrop { background:rgba(16,17,20,.58); }.dialog-shell input,.dialog-shell select,.dialog-shell textarea { color:#101114; background:#f4f4f6; }.dialog-shell label { color:#101114; }.form-success { border-left-color:var(--teal); background:rgba(14,123,130,.08); }.form-success strong { color:var(--teal); }
@keyframes v4-image-enter { from { opacity:0; transform:scale(1.05); } to { opacity:1; transform:scale(1); } } @keyframes v4-up { from { opacity:0; transform:translateY(20px); } to { opacity:1; transform:none; } }
@media (max-width:980px) { .v4-header { grid-template-columns:1fr auto; width:calc(100% - 28px); }.v4-header .site-nav { top:68px; border:1px solid rgba(16,17,20,.1); border-radius:18px; background:#fff; }.v4-header .site-nav a { border-color:var(--line); }.v4-header .nav-cta { display:none; }.v4-hero-bottom { width:calc(100% - 2 * var(--gutter)); }.platform-orbit { width:min(520px,82vw); } }
@media (max-width:680px) { .v4-header { top:14px; height:52px; padding-left:12px; }.v4-header .brand-symbol,.site-footer .brand-symbol { width:26px; height:26px; flex-basis:26px; }.v4-header .brand-symbol img,.site-footer .brand-symbol img { width:26px; height:26px; }.v4-header .brand-wordmark { font-size:.75rem; }.v4-hero .hero-media { inset:74px 10% auto; height:54vh; border-radius:18px; overflow:hidden; }.v4-hero .hero-media::after { background:linear-gradient(0deg,rgba(255,255,255,.15),transparent); }.v4-hero-bottom { margin:0 22px; padding:52vh 0 120px; }.v4-hero h1 { font-size:clamp(3rem,14vw,4.8rem); }.v4-hero .hero-rail { right:22px; left:22px; }.section,.delivery-section { padding-right:22px; padding-left:22px; }.platform-section,.loop-section,.scenarios-data-section,.ecosystem-section,.implementation-section { margin-right:0; margin-left:0; }.policy-grid,.about-nexedu-grid,.professional-directions,.curriculum-layers { grid-template-columns:1fr; }.site-footer { padding-right:22px; padding-left:22px; } }
@media (prefers-reduced-motion:reduce) { .v4-hero .hero-media img,.v4-hero-note,.v4-hero .eyebrow,.v4-hero h1,.v4-hero-lead,.v4-hero .hero-actions { animation:none; } }

/* V4 hero foreground and local technology typography. */
:root { --font-display:"Bahnschrift","Aptos Display","Segoe UI Variable Display","Microsoft YaHei UI",sans-serif; --font-body:"Aptos","Segoe UI Variable","Microsoft YaHei UI","Noto Sans SC",sans-serif; --font-mono:"Cascadia Mono","Bahnschrift",Consolas,monospace; }
body { font-family:var(--font-body); }.v4-hero h1,.section-heading h2,.platform-copy h2,.training-copy h2,.solution-panel h3,.final-cta h2 { font-family:var(--font-display); }.eyebrow,.section-label,.step-index,.zone-type,.solution-level,.service-index,.hero-rail span,.delivery-track span,.v4-hero-note,.v4-header .site-nav a,.v4-pill { font-family:var(--font-mono); }
.v4-robot-hero { --robot-x:0px; --robot-y:0px; position:absolute; z-index:2; right:clamp(2%,6vw,10%); bottom:-8%; width:min(46vw,620px); pointer-events:none; filter:drop-shadow(0 28px 42px rgba(6,12,18,.22)); transform:translate3d(var(--robot-x),var(--robot-y),0); transition:transform .5s cubic-bezier(.2,.78,.2,1); }
.v4-robot-hero::before { position:absolute; z-index:-1; top:19%; right:16%; width:54%; aspect-ratio:1; border:1px solid rgba(14,123,130,.35); border-radius:50%; content:""; box-shadow:0 0 0 26px rgba(14,123,130,.06),0 0 70px rgba(54,197,212,.24); animation:v4-robot-light 4.8s ease-in-out infinite; }.v4-robot-hero img { width:100%; height:auto; animation:v4-robot-float 14s ease-in-out infinite; transform-origin:50% 80%; }.v4-hero-bottom { position:relative; z-index:4; }.v4-hero .hero-rail { z-index:5; }
@keyframes v4-robot-float { 0%,100% { transform:translate3d(0,0,0) rotate(0deg); } 45% { transform:translate3d(-4px,-10px,0) rotate(-.45deg); } 70% { transform:translate3d(2px,-4px,0) rotate(.2deg); } } @keyframes v4-robot-light { 0%,100% { opacity:.45; transform:scale(.93); } 50% { opacity:1; transform:scale(1.06); } }
@media (max-width:980px) { .v4-robot-hero { right:-6%; bottom:3%; width:min(56vw,490px); opacity:.92; }.v4-hero-bottom { width:calc(100% - 2 * var(--gutter)); } }
@media (max-width:680px) { .v4-robot-hero { right:-21%; bottom:12%; width:75vw; opacity:.42; }.v4-robot-hero::before { display:none; }.v4-hero h1 { max-width:85%; }.v4-hero-lead { max-width:80%; } }
@media (prefers-reduced-motion:reduce) { .v4-robot-hero,.v4-robot-hero img { transition:none; animation:none; transform:none; }.v4-robot-hero::before { animation:none; } }

/* V4 visual integration refinements. */
.v4-hero { isolation:isolate; background:#fff; }.v4-hero::before { position:absolute; z-index:0; inset:0; content:""; opacity:.72; background-image:linear-gradient(rgba(16,17,20,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(16,17,20,.055) 1px,transparent 1px); background-size:54px 54px; mask-image:linear-gradient(90deg,transparent,black 44%,black 72%,transparent); }.v4-hero .hero-media { display:none; }
.v4-robot-hero { z-index:3; right:clamp(0%,4vw,7%); bottom:-13%; width:min(48vw,640px); }.v4-robot-hero::before { top:20%; right:17%; }.v4-robot-hero::after { position:absolute; top:50%; left:35%; width:104px; height:104px; border:1px solid rgba(14,123,130,.45); border-radius:50%; content:""; box-shadow:0 0 0 13px rgba(14,123,130,.07),0 0 30px rgba(54,197,212,.18); animation:v4-dexterous-pinch 3.8s ease-in-out infinite; }.v4-robot-hero img { animation:v4-robot-float 12s ease-in-out infinite; }.v4-hero-bottom { max-width:min(870px,calc(100% - 2 * var(--gutter))); }.v4-hero h1 { max-width:810px; }.v4-hero-lead { max-width:620px; color:rgba(16,17,20,.72); }.v4-hero .hero-actions { position:relative; z-index:5; }.v4-hero .hero-rail { z-index:6; }
.platform-section .orbit-item { color:#fff; background:rgba(255,255,255,.13); text-shadow:0 1px 6px rgba(0,0,0,.36); }.platform-section .orbit-core small { color:rgba(255,255,255,.72); }
.partners-section .partner-logo { border-color:rgba(255,255,255,.16); background:#101114; }.partners-section .partner-logo-text { color:#fff; }.partners-section .partner-logo-text span { color:#76e4e7; }.partners-section .partner-card>p { color:#52545b; }
.ecosystem-section .result-chain { border-color:rgba(255,255,255,.17); background:#0e2436; }.ecosystem-section .result-chain span { color:#76e4e7; }.ecosystem-section .result-chain p { color:rgba(255,255,255,.82); }
.heading-en { margin:-12px 0 24px; color:var(--teal); font:600 .62rem/1.45 var(--font-mono); letter-spacing:.17em; text-transform:uppercase; }.platform-section .heading-en,.loop-section .heading-en,.scenarios-data-section .heading-en,.ecosystem-section .heading-en,.delivery-section .heading-en,.final-cta .heading-en { color:#76e4e7; }.v4-hero .heading-en { margin:15px 0 18px; color:#0e7b82; }.diagnosis-dialog .heading-en { margin:12px 0 18px; }
@keyframes v4-dexterous-pinch { 0%,100% { opacity:.22; transform:scale(.82); } 42% { opacity:.92; transform:scale(1.08); } 58% { opacity:.62; transform:scale(.96); } }
@media (max-width:980px) { .v4-robot-hero { right:-3%; width:min(58vw,520px); }.v4-robot-hero::after { top:49%; left:35%; width:82px; height:82px; }.v4-hero-bottom { max-width:calc(100% - 2 * var(--gutter)); } }
@media (max-width:680px) { .v4-hero::before { background-size:38px 38px; }.v4-robot-hero { right:-28%; bottom:5%; width:83vw; opacity:.48; }.v4-robot-hero::before,.v4-robot-hero::after { display:none; }.v4-hero-bottom { padding-top:260px; padding-bottom:126px; }.v4-hero h1 { max-width:100%; }.heading-en { margin:-7px 0 18px; font-size:.56rem; letter-spacing:.12em; } }
@media (prefers-reduced-motion:reduce) { .v4-robot-hero::after { animation:none; } }

/* NEXEDU industry support and ecosystem relationship map. */
.company-ecosystem-map { position:relative; display:grid; grid-template-columns:1fr minmax(280px,.95fr) 1fr; gap:14px; max-width:var(--max); margin:74px auto 0; }.company-ecosystem-map::before { position:absolute; z-index:0; top:106px; right:19%; left:19%; height:1px; content:""; background:linear-gradient(90deg,rgba(14,123,130,.2),#0e7b82,rgba(14,123,130,.2)); }.company-ecosystem-map>article,.company-ecosystem { position:relative; z-index:1; border:1px solid var(--line); border-radius:18px; background:#fff; }.company-support,.company-strategic { min-height:264px; padding:26px; }.company-support>span,.company-strategic>span,.company-ecosystem header>span { color:#0e7b82; font:700 .66rem/1.4 var(--font-mono); letter-spacing:.13em; }.company-support h3,.company-strategic h3 { margin:48px 0 12px; font:500 1.65rem/1.1 var(--font-display); }.company-support h3 small { padding:3px 6px; border-radius:999px; color:#0e7b82; background:rgba(14,123,130,.1); font:600 .54rem/1 var(--font-mono); vertical-align:middle; }.company-support p,.company-strategic p { margin:0; color:#64656b; font-size:.8rem; line-height:1.7; }.company-core { display:flex; flex-direction:column; align-items:center; justify-content:center; min-height:264px; padding:28px; color:#fff; text-align:center; background:#0e2436 !important; box-shadow:0 18px 44px rgba(14,36,54,.2); }.company-core img { width:48px; height:48px; margin-bottom:17px; object-fit:contain; }.company-core strong { font:600 1.45rem/1 var(--font-mono); letter-spacing:.16em; }.company-core>span { display:block; margin:12px 0; color:#76e4e7; font-size:.68rem; }.company-core p { margin:0; color:rgba(255,255,255,.69); font-size:.7rem; line-height:1.65; }.company-ecosystem { grid-column:1/-1; padding:31px; }.company-ecosystem header { display:flex; align-items:end; justify-content:space-between; gap:30px; padding-bottom:23px; border-bottom:1px solid var(--line); }.company-ecosystem header h3 { max-width:530px; margin:0; color:#101114; font:400 clamp(1.25rem,2vw,2rem)/1.15 var(--font-display); letter-spacing:-.04em; }.company-fields { display:grid; grid-template-columns:repeat(4,1fr); margin-top:24px; border-top:1px solid var(--line); border-left:1px solid var(--line); }.company-fields article { min-height:145px; padding:19px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }.company-fields b { display:block; color:#101114; font-size:.78rem; }.company-fields p { margin:25px 0 0; color:#64656b; font-size:.74rem; line-height:1.65; }.company-boundary { margin:22px 0 0; padding-left:12px; border-left:2px solid #0e7b82; color:#64656b; font-size:.72rem; }
@media (max-width:980px) { .company-ecosystem-map { grid-template-columns:1fr 1fr; }.company-ecosystem-map::before { display:none; }.company-core { grid-column:1/-1; grid-row:1; }.company-support { grid-row:2; }.company-strategic { grid-row:2; }.company-fields { grid-template-columns:1fr 1fr; } }
@media (max-width:680px) { .company-ecosystem-map { grid-template-columns:1fr; margin-top:48px; }.company-core,.company-support,.company-strategic { grid-column:auto; grid-row:auto; min-height:220px; }.company-ecosystem { grid-column:auto; padding:22px; }.company-ecosystem header { display:grid; gap:15px; }.company-fields { grid-template-columns:1fr; }.company-fields article { min-height:auto; }.company-fields p { margin-top:14px; } }

/* Final relationship-map refinement: preserve content while improving hierarchy. */
.company-strategic h3 small { padding:3px 6px; border-radius:999px; color:#0e7b82; background:rgba(14,123,130,.1); font:600 .54rem/1 var(--font-mono); vertical-align:middle; white-space:nowrap; }
.strategic-oems { margin-top:18px; padding-top:15px; border-top:1px solid var(--line); }
.strategic-oems b { display:block; color:#101114; font:700 .65rem/1.4 var(--font-mono); letter-spacing:.08em; }
.strategic-oems p { margin-top:7px; font-size:.73rem; line-height:1.6; }
.company-core img { width:82px; height:82px; margin-bottom:19px; filter:drop-shadow(0 8px 14px rgba(0,0,0,.14)); }

@media (max-width:760px) {
  .company-ecosystem-map { grid-template-columns:1fr; margin-top:48px; }
  .company-core,.company-support,.company-strategic { grid-column:auto; grid-row:auto; min-height:220px; }
  .company-support,.company-strategic { padding:24px; }
  .company-strategic h3,.company-support h3 { margin-top:34px; }
  .company-core img { width:70px; height:70px; }
  .company-ecosystem { grid-column:auto; padding:22px; }
  .company-ecosystem header { display:grid; gap:15px; }
  .company-fields { grid-template-columns:1fr; }
  .company-fields article { min-height:auto; }
  .company-fields p { margin-top:14px; }
}
