/* V89 · AI-native enterprise editorial system */

body[data-page="home"] .v75-home-flow > #ai-native-system { order: 6 !important; }
body[data-page="home"] .v75-home-flow > #proof-system { order: 7 !important; }
body[data-page="home"] .v75-home-flow > #global-growth { order: 8 !important; }
body[data-page="home"] .v75-home-flow > #trust-network { order: 9 !important; }
body[data-page="home"] .v75-home-flow > .cta-section { order: 10 !important; }

.v89-ai-native {
  position: relative;
  overflow: clip;
  padding: clamp(72px, 8vw, 118px) 0;
  color: #10203e;
  background:
    radial-gradient(circle at 88% 8%, rgba(31, 184, 214, .11), transparent 28%),
    radial-gradient(circle at 8% 58%, rgba(109, 74, 255, .09), transparent 30%),
    #f8f9fd;
}

.v89-ai-native::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image: linear-gradient(rgba(42, 58, 98, .045) 1px, transparent 1px), linear-gradient(90deg, rgba(42, 58, 98, .045) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(to bottom, transparent, #000 14%, #000 86%, transparent);
}

.v89-ai-shell { position: relative; z-index: 1; width: min(1180px, calc(100% - 40px)); margin: 0 auto; }
.v89-ai-head { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(300px, .65fr); gap: clamp(28px, 6vw, 88px); align-items: end; margin-bottom: 38px; }
.v89-ai-head .eyebrow { display: block; margin-bottom: 15px; color: #5b49d9; font-weight: 850; letter-spacing: .1em; }
.v89-ai-head h2 { max-width: 760px; margin: 0; color: #10203e; font-size: clamp(34px, 4.2vw, 58px); line-height: 1.08; letter-spacing: -.04em; }
.v89-ai-head p { margin: 0; color: #4f5f7d; font-size: clamp(17px, 1.6vw, 21px); line-height: 1.8; }

.v89-system-compare { margin: 0; padding: 32px 0 28px; border-block: 1px solid #d6ddeb; }
.v89-compare-labels { display: grid; grid-template-columns: minmax(250px, .55fr) 62px minmax(0, 1.25fr); align-items: center; margin-bottom: 18px; }
.v89-compare-labels span { color: #75819a; font-size: 15px; font-weight: 900; letter-spacing: .08em; }
.v89-compare-labels span:last-child { color: #4f3ed2; }
.v89-compare-labels i { justify-self: center; color: #7c88a1; font-size: 15px; font-style: normal; font-weight: 900; }
.v89-compare-canvas { display: grid; grid-template-columns: minmax(250px, .55fr) 62px minmax(0, 1.25fr); align-items: stretch; min-height: 370px; }
.v89-compare-divider { display: grid; place-items: center; color: #65728d; }
.v89-compare-divider::before { content: "→"; display: grid; place-items: center; width: 36px; height: 36px; border: 1px solid #c8d1e3; border-radius: 50%; background: #fff; font-weight: 900; }

.v89-serial-flow { position: relative; display: grid; align-content: center; gap: 0; padding: 20px 20px 20px 0; }
.v89-serial-flow::before { content: ""; position: absolute; left: 11px; top: 47px; bottom: 47px; width: 1px; background: linear-gradient(#aeb8ca, #d4dbe7); }
.v89-serial-step { position: relative; display: grid; grid-template-columns: 24px 1fr; gap: 13px; align-items: center; min-height: 62px; color: #69758d; }
.v89-serial-step::before { content: ""; position: relative; z-index: 1; width: 9px; height: 9px; margin-left: 7px; border: 3px solid #f8f9fd; border-radius: 50%; background: #a7b2c5; box-shadow: 0 0 0 1px #a7b2c5; }
.v89-serial-step b { display: block; color: #3f4d68; font-size: 17px; }
.v89-serial-step small { display: block; margin-top: 3px; color: #7a869d; font-size: 15px; line-height: 1.5; }

.v89-network-map { position: relative; display: grid; grid-template-columns: minmax(150px, .62fr) minmax(0, 1.38fr); grid-template-rows: auto auto auto auto; gap: 16px 22px; padding: 24px; border: 1px solid rgba(86, 76, 211, .18); background: linear-gradient(145deg, rgba(255,255,255,.94), rgba(240,246,255,.88)); box-shadow: 0 28px 80px -58px rgba(34, 43, 91, .55); }
.v89-network-input { grid-column: 1 / -1; display: flex; align-items: center; gap: 12px; color: #1d2a48; font-size: 16px; font-weight: 820; }
.v89-network-input::before { content: "INPUT"; padding: 5px 9px; color: #5b49d9; border: 1px solid rgba(91,73,217,.24); border-radius: 999px; font-size: 15px; letter-spacing: .08em; }
.v89-network-engine { position: relative; display: grid; place-items: center; min-height: 150px; padding: 18px; color: #fff; text-align: center; background: radial-gradient(circle at 28% 20%, #8172ff, #4f42c8 52%, #193465); clip-path: polygon(12% 0, 88% 0, 100% 18%, 100% 82%, 88% 100%, 12% 100%, 0 82%, 0 18%); }
.v89-network-engine small { color: #bfeef4; font-size: 15px; font-weight: 900; letter-spacing: .08em; }
.v89-network-engine b { display: block; margin: 7px 0 4px; font-size: clamp(20px, 2vw, 28px); line-height: 1.05; }
.v89-network-engine span { max-width: 180px; color: #e8ecff; font-size: 15px; line-height: 1.5; }
.v89-network-roles { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; align-content: center; }
.v89-network-roles span { display: grid; place-items: center; min-height: 58px; padding: 8px 4px; border-bottom: 2px solid rgba(31,184,214,.34); color: #223252; background: rgba(255,255,255,.76); font-size: 15px; font-weight: 820; text-align: center; }
.v89-network-roles::before { content: "DYNAMIC ROLES · 并行"; grid-column: 1 / -1; color: #168ca4; font-size: 15px; font-weight: 900; letter-spacing: .07em; }
.v89-network-gate { grid-column: 1 / -1; display: grid; grid-template-columns: 150px 1fr; gap: 16px; align-items: center; padding: 12px 16px; color: #302878; border-left: 4px solid #6d4aff; background: rgba(109,74,255,.08); }
.v89-network-gate b { font-size: 16px; }
.v89-network-gate span { font-size: 15px; line-height: 1.6; }
.v89-network-loop { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr auto 1fr auto 1fr; align-items: center; gap: 9px; }
.v89-network-loop span { min-height: 48px; display: grid; place-items: center; padding: 8px; color: #233452; border-block: 1px solid #cbd8e9; font-size: 15px; font-weight: 800; text-align: center; }
.v89-network-loop i { color: #3f4bd5; font-style: normal; font-weight: 900; }
.v89-system-compare figcaption { margin-top: 18px; color: #66748e; font-size: 15px; line-height: 1.7; }

.v89-mechanism-band { margin-top: 44px; }
.v89-band-label { display: flex; justify-content: space-between; gap: 20px; align-items: baseline; margin-bottom: 15px; color: #53617b; font-size: 15px; }
.v89-band-label b { color: #142443; font-size: 17px; }
.v89-mechanism-track { position: relative; display: grid; grid-template-columns: repeat(5, 1fr); margin: 0; padding: 0; list-style: none; border-block: 1px solid #cfd8e8; }
.v89-mechanism-track li { position: relative; min-height: 132px; padding: 22px 20px 18px; }
.v89-mechanism-track li + li { border-left: 1px solid #dce3ee; }
.v89-mechanism-track li:not(:last-child)::after { content: "→"; position: absolute; z-index: 2; right: -10px; top: 26px; width: 20px; color: #5b49d9; background: #f8f9fd; text-align: center; font-weight: 900; }
.v89-mechanism-track i { display: block; color: #5b49d9; font-size: 15px; font-style: normal; font-weight: 900; letter-spacing: .06em; }
.v89-mechanism-track b { display: block; margin-top: 9px; color: #152542; font-size: 17px; }
.v89-mechanism-track small { display: block; margin-top: 7px; color: #6c7890; font-size: 15px; line-height: 1.55; }

.v89-boundary-compact { display: grid; grid-template-columns: minmax(230px, .62fr) minmax(0, 1.38fr); gap: 18px 48px; align-items: center; margin-top: 42px; padding-block: 28px; border-block: 1px solid #d6ddea; }
.v89-boundary-copy > span { color: #168ca4; font-size: 15px; font-weight: 900; letter-spacing: .08em; }
.v89-boundary-copy h3 { margin: 8px 0; color: #11213f; font-size: clamp(23px, 2.3vw, 32px); line-height: 1.2; }
.v89-boundary-copy p { margin: 0; color: #5f6d86; font-size: 17px; line-height: 1.7; }
.v89-boundary-lanes { display: grid; grid-template-columns: 1fr 1fr; border-block: 1px solid #dce3ee; }
.v89-boundary-lanes span { padding: 18px 20px; color: #5c6a83; font-size: 15px; line-height: 1.65; }
.v89-boundary-lanes span + span { border-left: 1px solid #dce3ee; }
.v89-boundary-lanes b { display: block; margin-bottom: 5px; color: #4738bd; font-size: 17px; }
.v89-boundary-lanes span:last-child b { color: #16677a; }
.v89-deep-links { grid-column: 2; display: flex; flex-wrap: wrap; gap: 12px 24px; }
.v89-deep-links a { color: #5946d8; font-size: 15px; font-weight: 850; text-decoration: none; }

.v89-company-contract { margin-top: 34px; padding-top: 30px; border-top: 1px solid rgba(91,73,217,.18); }
.v89-company-contract > span { color: #5c49da; font-size: 15px; font-weight: 900; letter-spacing: .08em; }
.v89-company-contract > h3 { max-width: 760px; margin: 10px 0 12px; color: #12213d; font-size: clamp(24px, 2.6vw, 36px); line-height: 1.18; }
.v89-company-contract > p { max-width: 880px; margin: 0; color: #5d6b84; font-size: 17px; line-height: 1.75; }
.v89-company-lanes { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 26px; border-block: 1px solid #dce2ed; }
.v89-company-lanes article { padding: 22px 24px 22px 0; }
.v89-company-lanes article + article { padding-left: 24px; border-left: 1px solid #dce2ed; }
.v89-company-lanes i { color: #5b49d9; font-size: 15px; font-style: normal; font-weight: 900; letter-spacing: .06em; }
.v89-company-lanes b { display: block; margin: 8px 0; color: #162642; font-size: 17px; }
.v89-company-lanes p { margin: 0; color: #66738b; font-size: 17px; line-height: 1.65; }
.v89-company-dynamic { display: flex; gap: 10px; align-items: baseline; margin-top: 18px; color: #5d6b84; font-size: 17px; line-height: 1.7; }
.v89-company-dynamic b { flex: 0 0 auto; color: #168ca4; }
.v89-company-responsibility { margin-top: 28px; }
.v89-company-responsibility h4 { margin: 0 0 12px; color: #142443; font-size: 20px; }
.v89-company-responsibility table { width: 100%; border-collapse: collapse; table-layout: fixed; background: rgba(255,255,255,.62); }
.v89-company-responsibility th, .v89-company-responsibility td { padding: 14px 15px; border-bottom: 1px solid #dce3ee; vertical-align: top; text-align: left; }
.v89-company-responsibility th { color: #52607a; font-size: 15px; letter-spacing: .04em; }
.v89-company-responsibility th:first-child, .v89-company-responsibility td:first-child { width: 22%; }
.v89-company-responsibility td { color: #55637d; font-size: 15px; line-height: 1.65; }
.v89-company-responsibility td:first-child { color: #182844; font-weight: 850; }
.v89-company-responsibility td:nth-child(2) { color: #4738bd; }
.v89-company-responsibility td:nth-child(3) { color: #16677a; }

.v89-ai-signals { scroll-margin-top: 92px; }
.v89-ai-signals .v89-signals-intro { display: grid; grid-template-columns: minmax(0, .9fr) minmax(280px, .55fr); gap: 42px; align-items: end; margin-bottom: 28px; }
.v89-ai-signals .v89-signals-intro h2 { margin-bottom: 0; }
.v89-ai-signals .v89-signals-intro p { margin: 0; color: #6d6b74; font-size: 17px; line-height: 1.75; }
.v89-signal-ledger { display: grid; grid-template-columns: 1fr 1fr; margin: 0; border-top: 1px solid #d9d6e2; }
.v89-signal-ledger > div { display: grid; grid-template-columns: 52px minmax(130px, .48fr) minmax(0, 1fr); gap: 14px; padding: 21px 18px 21px 0; border-bottom: 1px solid #dfdce6; }
.v89-signal-ledger > div:nth-child(even) { padding-left: 22px; border-left: 1px solid #dfdce6; }
.v89-signal-ledger dt { display: contents; }
.v89-signal-ledger dt i { color: #6d4aff; font-style: normal; font-size: 15px; font-weight: 900; }
.v89-signal-ledger dt b { color: #211d35; font-size: 17px; }
.v89-signal-ledger dd { margin: 0; color: #6d6878; font-size: 17px; line-height: 1.68; }
.v89-signals-foot { display: flex; justify-content: space-between; gap: 24px; align-items: center; margin-top: 24px; padding-top: 20px; border-top: 1px solid #dedbe6; }
.v89-signals-foot p { margin: 0; color: #625f6c; font-size: 17px; line-height: 1.7; }
.v89-signals-foot a { flex: 0 0 auto; color: #5b37f0; font-weight: 850; }

@media (max-width: 900px) {
  .v89-ai-head { grid-template-columns: 1fr; align-items: start; }
  .v89-compare-labels, .v89-compare-canvas { grid-template-columns: 1fr; }
  .v89-compare-labels { display: none; }
  .v89-compare-divider { min-height: 62px; }
  .v89-compare-divider::before { content: "↓"; }
  .v89-serial-flow { padding-right: 0; }
  .v89-mechanism-track { grid-template-columns: 1fr 1fr; }
  .v89-mechanism-track li:nth-child(3), .v89-mechanism-track li:nth-child(5) { border-left: 0; }
  .v89-mechanism-track li { border-bottom: 1px solid #dce3ee; }
  .v89-mechanism-track li::after { display: none; }
  .v89-boundary-compact { grid-template-columns: 1fr; }
  .v89-deep-links { grid-column: 1; }
  .v89-company-lanes { grid-template-columns: 1fr; }
  .v89-company-lanes article, .v89-company-lanes article + article { padding: 18px 0; border-left: 0; border-bottom: 1px solid #dce2ed; }
  .v89-company-lanes article:last-child { border-bottom: 0; }
  .v89-ai-signals .v89-signals-intro { grid-template-columns: 1fr; gap: 14px; align-items: start; }
  .v89-signal-ledger { grid-template-columns: 1fr; }
  .v89-signal-ledger > div:nth-child(even) { padding-left: 0; border-left: 0; }
}

@media (max-width: 620px) {
  .v89-ai-native { padding: 64px 0; }
  .v89-ai-shell { width: min(100% - 32px, 1180px); }
  .v89-ai-head { gap: 20px; margin-bottom: 26px; }
  .v89-ai-head h2 { font-size: clamp(34px, 10.5vw, 46px); }
  .v89-system-compare { padding-top: 20px; }
  .v89-network-map { grid-template-columns: 1fr; padding: 18px; }
  .v89-network-input, .v89-network-gate, .v89-network-loop { grid-column: 1; }
  .v89-network-gate { grid-template-columns: 1fr; gap: 4px; }
  .v89-network-roles { grid-template-columns: repeat(2, 1fr); }
  .v89-network-loop { grid-template-columns: 1fr; }
  .v89-network-loop i { transform: rotate(90deg); justify-self: center; }
  .v89-band-label { display: block; }
  .v89-band-label span { display: block; margin-top: 5px; }
  .v89-mechanism-track { grid-template-columns: 1fr; }
  .v89-mechanism-track li, .v89-mechanism-track li:nth-child(n) { min-height: 0; padding: 18px 0; border-left: 0; }
  .v89-system-compare figcaption, .v89-serial-step small, .v89-network-input, .v89-network-input::before, .v89-network-engine small, .v89-network-engine span, .v89-network-roles::before, .v89-network-roles span, .v89-network-gate b, .v89-network-gate span, .v89-network-loop span, .v89-band-label, .v89-mechanism-track i, .v89-mechanism-track small { font-size: 14px; }
  .v89-boundary-lanes { grid-template-columns: 1fr; }
  .v89-boundary-lanes span { padding-inline: 0; font-size: 14px; }
  .v89-boundary-lanes span + span { border-left: 0; border-top: 1px solid #dce3ee; }
  .v89-boundary-copy > span, .v89-deep-links a { font-size: 14px; }
  .v89-boundary-copy p { font-size: 16px; }
  .v89-company-contract > span, .v89-company-lanes i, .v89-signal-ledger dt i { font-size: 14px; }
  .v89-company-contract > p, .v89-company-lanes p, .v89-company-dynamic, .v89-ai-signals .v89-signals-intro p, .v89-signal-ledger dd, .v89-signals-foot p { font-size: 16px; }
  .v89-company-responsibility table, .v89-company-responsibility tbody, .v89-company-responsibility tr, .v89-company-responsibility td { display: block; width: 100%; }
  .v89-company-responsibility thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .v89-company-responsibility tr { padding: 12px 0; border-bottom: 1px solid #dce3ee; }
  .v89-company-responsibility td, .v89-company-responsibility td:first-child { width: 100%; padding: 5px 0; border: 0; font-size: 14px; }
  .v89-company-responsibility td::before { content: attr(data-label); display: inline-block; min-width: 82px; margin-right: 8px; color: #8a93a7; font-size: 14px; font-weight: 900; letter-spacing: .04em; }
  .v89-company-dynamic { display: block; }
  .v89-company-dynamic b { display: block; margin-bottom: 5px; }
  .v89-signal-ledger > div { grid-template-columns: 42px 1fr; gap: 8px 12px; padding: 18px 0; }
  .v89-signal-ledger dd { grid-column: 2; }
  .v89-signals-foot { display: block; }
  .v89-signals-foot a { display: inline-block; margin-top: 14px; }
}

@media (prefers-reduced-motion: reduce) {
  .v89-ai-native *, .v89-ai-native *::before, .v89-ai-native *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
}
