:root {
  --ink: #002741;
  --ink-2: #0a3a51;
  --paper: #fcfcfb;
  --paper-2: #f0f6f7;
  --white: #fcfcfb;
  --line: rgba(0, 39, 65, 0.15);
  --line-dark: rgba(197, 232, 239, 0.22);
  --muted: #526b79;
  --muted-dark: #a7c0cc;
  --steel: #00627d;
  --steel-bright: #00b8da;
  --signal: #00b8da;
  --signal-soft: #8be4ef;
  --success: #5f8e76;
  --danger: #a85b4b;
  --radius-sm: 8px;
  --radius-md: 16px;
  --radius-lg: 28px;
  --shadow: 0 28px 70px rgba(16, 32, 41, 0.12);
  --shell: min(1220px, calc(100vw - 48px));
  --font-sans: "Global Sans SC", "Global Sans Fallback", Arial, "Microsoft YaHei", sans-serif;
  --font-serif: "Global Serif SC", "Global Serif Fallback", Georgia, "Songti SC", serif;
  --type-caption: 13px;
  --type-label: 13px;
  --type-meta: 14px;
  --type-body: 16px;
  --type-body-long: 18px;
  --type-body-long-mobile: 17px;
  --type-lead: clamp(18px, 1.7vw, 24px);
  --type-h3: clamp(24px, 2.3vw, 34px);
  --type-h2: clamp(38px, 4.1vw, 62px);
  --type-h1: clamp(50px, 5.4vw, 82px);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  background: var(--paper);
  font-family: var(--font-sans);
  font-size: 16px;
  line-height: 1.65;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}
body.nav-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
img, svg { display: block; max-width: 100%; }
button, input, textarea, select { font: inherit; }
button, summary, a { -webkit-tap-highlight-color: transparent; }
:focus-visible { outline: 3px solid var(--signal); outline-offset: 4px; }
.shell { width: var(--shell); margin-inline: auto; }
.skip-link {
  position: fixed;
  top: 12px;
  left: 12px;
  z-index: 1000;
  padding: 10px 16px;
  color: var(--white);
  background: var(--ink);
  transform: translateY(-180%);
}
.skip-link:focus { transform: translateY(0); }

.site-header {
  position: sticky;
  top: 0;
  z-index: 100;
  color: var(--ink);
  background: color-mix(in srgb, var(--paper) 92%, transparent);
  border-bottom: 1px solid var(--line);
  backdrop-filter: blur(18px);
}
.header-shell {
  min-height: 78px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 28px;
}
.brand-lockup { display: inline-flex; align-items: center; gap: 10px; min-width: max-content; }
.brand-symbol {
  width: 40px;
  height: 40px;
  display: block;
  color: var(--ink);
}
.brand-symbol svg { width: 100%; height: 100%; overflow: visible; }
.brand-ring-signal { fill: var(--signal); }
.brand-ring-base { fill: currentColor; }
.brand-words { display: grid; line-height: 1; gap: 5px; }
.brand-words strong { font-size: 16px; letter-spacing: -.035em; }
.brand-words strong em { color: var(--signal); font-style: normal; }
.brand-words small { color: var(--muted); font-size: 13px; letter-spacing: 0.16em; }
.primary-nav { display: flex; align-items: center; justify-content: center; gap: 26px; }
.primary-nav > a,
.nav-products > summary {
  padding: 9px 0;
  color: var(--ink-2);
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  list-style: none;
}
.nav-products > summary span { margin-left: 5px; color: var(--muted); }
.primary-nav > a:hover,
.primary-nav > a[aria-current="page"],
.nav-products[open] > summary { color: var(--steel); }
.nav-products { position: relative; }
.nav-product-panel {
  position: absolute;
  top: calc(100% + 16px);
  left: 50%;
  width: 260px;
  padding: 9px;
  display: grid;
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow);
  transform: translateX(-50%);
}
.nav-product-panel a { padding: 12px 14px; border-radius: 10px; font-weight: 700; }
.nav-product-panel a:hover { background: var(--paper-2); color: var(--steel); }
.header-actions { display: flex; align-items: center; gap: 12px; }
.language-link { font-size: 13px; font-weight: 700; letter-spacing: 0.08em; }
.nav-toggle { display: none; padding: 10px; color: var(--ink); background: none; border: 0; }
.nav-toggle span { width: 24px; height: 2px; display: block; margin: 5px 0; background: currentColor; transform-origin: center; transition: transform 160ms ease; }
body.nav-open .nav-toggle span:first-child { transform: translateY(3.5px) rotate(45deg); }
body.nav-open .nav-toggle span:last-child { transform: translateY(-3.5px) rotate(-45deg); }
.section-dark { color: var(--white); background: var(--ink); }
.section-soft { background: var(--paper-2); }
.eyebrow {
  margin: 0 0 18px;
  color: var(--steel-bright);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.17em;
  text-transform: uppercase;
}
.section-dark .eyebrow { color: var(--signal-soft); }

.site-footer { padding: 75px 0 30px; color: var(--white); background: #0a161c; }
.footer-grid { display: grid; grid-template-columns: 1.5fr repeat(3, 1fr); gap: 50px; }
.footer-brand { color: var(--white); }
.footer-positioning > p { max-width: 390px; margin: 24px 0 0; font-family: var(--font-serif); font-size: 20px; }
.footer-positioning .footer-boundary { color: var(--muted-dark); font-family: var(--font-sans); font-size: 13px; }
.footer-column { display: grid; align-content: start; gap: 10px; }
.footer-column h2 { margin: 0 0 18px; color: var(--signal-soft); font-size: 13px; letter-spacing: .14em; text-transform: uppercase; }
.footer-column a, .footer-column span { color: var(--muted-dark); font-size: 13px; }
.footer-column a:hover { color: var(--white); }
.footer-bottom { margin-top: 70px; padding-top: 25px; display: flex; justify-content: space-between; gap: 30px; color: #829097; border-top: 1px solid var(--line-dark); font-size: 13px; }

@media (max-width: 1080px) {
  :root { --shell: min(100% - 36px, 960px); }
  .site-header {
    background: var(--paper);
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }
  .header-shell { grid-template-columns: auto auto 1fr; }
  .nav-toggle { display: block; justify-self: end; }
  .primary-nav {
    position: fixed;
    inset: 78px 0 auto auto;
    width: min(430px, 100vw);
    height: calc(100dvh - 78px);
    max-height: calc(100dvh - 78px);
    padding: 32px;
    display: none;
    align-content: start;
    align-items: stretch;
    justify-content: start;
    background: var(--paper);
    border-left: 1px solid var(--line);
    overflow-y: auto;
    overscroll-behavior: contain;
    box-shadow: -24px 32px 60px rgb(24 36 42 / 16%);
  }
  body.nav-open .primary-nav { display: grid; }
  .primary-nav > a, .nav-products > summary { padding: 15px 0; border-bottom: 1px solid var(--line); font-size: 18px; }
  .nav-product-panel { position: static; width: auto; margin-top: 5px; box-shadow: none; transform: none; }
  .header-actions { justify-self: end; }
  .footer-grid { grid-template-columns: 1.4fr 1fr 1fr; }
  .footer-column:last-child { grid-column: 2 / 4; }}

@media (min-width: 1081px) {
  html:lang(zh-CN) .home-hero-copy h1 {
    font-size: clamp(54px, 3.8vw, 58px);
    line-height: 1.02;
    letter-spacing: -.035em;
  }
  html:lang(zh-CN) .home-hero-copy h1 em { white-space: nowrap; }}

@media (max-width: 720px) {
  :root { --shell: calc(100% - 28px); }
  .header-shell { min-height: 68px; gap: 8px; }
  .brand-symbol { width: 38px; height: 38px; }
  .brand-words small { display: none; }
  .brand-words strong { font-size: 13px; }
  .primary-nav {
    inset: 68px 0 auto;
    width: 100%;
    height: calc(100dvh - 68px);
    max-height: calc(100dvh - 68px);
    padding: 24px 28px 36px;
    border-left: 0;
    box-shadow: none;
  }
  html:lang(zh-CN) .home-hero-copy h1 {
    font-size: clamp(40px, 11.5vw, 48px);
    line-height: 1.02;
    letter-spacing: -.04em;
  }
  html:lang(en) .home-hero-copy h1 {
    max-width: none;
    font-size: clamp(38px, 10.5vw, 48px);
    line-height: 1.01;
    letter-spacing: -.04em;
  }
  .fit-boundary, .final-cta-panel, .footer-bottom, .legacy-notice .shell { display: grid; grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 40px 22px; }
  .footer-positioning, .footer-column:last-child { grid-column: 1 / -1; }}

/* V2 brand and opportunity-field experience */
:is(body.page-home, body.page-home-en) .site-header {
  position: fixed;
  width: 100%;
  color: var(--white);
  background: linear-gradient(180deg, rgba(0, 25, 44, .88), rgba(0, 25, 44, 0));
  border-bottom-color: transparent;
  backdrop-filter: none;
  transition: background-color 220ms ease, border-color 220ms ease, backdrop-filter 220ms ease;
}
:is(body.page-home, body.page-home-en) .site-header.is-scrolled {
  background: rgba(0, 39, 65, .96);
  border-bottom-color: rgba(139, 228, 239, .2);
  backdrop-filter: blur(18px);
}
:is(body.page-home, body.page-home-en) .brand-symbol { color: var(--white); }
:is(body.page-home, body.page-home-en) .brand-words small,
:is(body.page-home, body.page-home-en) .primary-nav > a,
:is(body.page-home, body.page-home-en) .nav-products > summary,
:is(body.page-home, body.page-home-en) .language-link { color: rgba(252, 252, 251, .82); }
:is(body.page-home, body.page-home-en) .nav-toggle { color: var(--paper); }
:is(body.page-home, body.page-home-en) .primary-nav > a:hover,
:is(body.page-home, body.page-home-en) .primary-nav > a[aria-current="page"],
:is(body.page-home, body.page-home-en) .nav-products[open] > summary { color: var(--signal-soft); }
:is(body.page-home, body.page-home-en) .nav-product-panel { color: var(--white); background: #073550; border-color: rgba(139, 228, 239, .2); }
:is(body.page-home, body.page-home-en) .nav-product-panel a:hover { color: var(--signal-soft); background: rgba(0, 184, 218, .1); }

@media (min-width: 721px) and (max-width: 1080px) {
  :is(body.page-home, body.page-home-en).nav-open .primary-nav {
    color: var(--ink);
    background: var(--paper);
  }

  :is(body.page-home, body.page-home-en).nav-open .primary-nav > a,
  :is(body.page-home, body.page-home-en).nav-open .nav-products > summary {
    color: var(--ink-2);
    border-bottom-color: color-mix(in srgb, var(--ink) 25%, transparent);
  }

  :is(body.page-home, body.page-home-en).nav-open .nav-products > summary span {
    color: var(--steel);
  }

  :is(body.page-home, body.page-home-en).nav-open .primary-nav > a:hover,
  :is(body.page-home, body.page-home-en).nav-open .primary-nav > a:focus-visible,
  :is(body.page-home, body.page-home-en).nav-open .primary-nav > a[aria-current="page"],
  :is(body.page-home, body.page-home-en).nav-open .nav-products[open] > summary {
    color: var(--steel);
  }

  :is(body.page-home, body.page-home-en).nav-open .nav-product-panel {
    color: var(--ink-2);
    background: var(--white);
    border-color: color-mix(in srgb, var(--ink) 25%, transparent);
  }

  :is(body.page-home, body.page-home-en).nav-open .nav-product-panel a {
    color: var(--ink-2);
  }

  :is(body.page-home, body.page-home-en).nav-open .nav-product-panel a:hover,
  :is(body.page-home, body.page-home-en).nav-open .nav-product-panel a:focus-visible {
    color: var(--steel);
    background: var(--paper-2);
  }

  :is(body.page-home, body.page-home-en).nav-open .primary-nav > a:focus-visible,
  :is(body.page-home, body.page-home-en).nav-open .nav-products > summary:focus-visible,
  :is(body.page-home, body.page-home-en).nav-open .nav-product-panel a:focus-visible {
    color: var(--white);
    background: var(--ink);
  }

  :is(body.page-home, body.page-home-en).nav-open .nav-products > summary:focus-visible span {
    color: var(--signal-soft);
  }}
html:lang(zh-CN) .object-method-hero h1 { white-space: nowrap; }

@media (max-width: 720px) {
  :is(body.page-home, body.page-home-en) .site-header { min-height: 68px; background: rgba(0,39,65,.96); }
  :is(body.page-home, body.page-home-en).nav-open .site-header { color: var(--ink); background: var(--paper); }
  :is(body.page-home, body.page-home-en).nav-open .brand-symbol { color: var(--ink); }
  :is(body.page-home, body.page-home-en).nav-open .brand-words strong,
  :is(body.page-home, body.page-home-en).nav-open .language-link,
  :is(body.page-home, body.page-home-en).nav-open .nav-toggle { color: var(--ink); }
  :is(body.page-home, body.page-home-en).nav-open .primary-nav { color: var(--ink); background: var(--paper); }
  :is(body.page-home, body.page-home-en).nav-open .primary-nav > a,
  :is(body.page-home, body.page-home-en).nav-open .nav-products > summary { color: var(--ink); }
  :is(body.page-home, body.page-home-en).nav-open .nav-product-panel { color: var(--ink); background: var(--white); }
  html:lang(en) .home-hero-copy-v2 h1 { font-size: clamp(42px, 11.2vw, 48px); }
  html:lang(en) .product-hero-copy-v2 h1 { font-size: clamp(47px, 14vw, 62px); }
  html:lang(zh-CN) .workflow-hero-v2 h1 { font-size: clamp(42px, 11vw, 48px); }
  html:lang(zh-CN) .scan-hero-v2 h1 { font-size: clamp(42px, 11vw, 50px); }
  html:lang(en) .core-hero-v2 h1, html:lang(en) .scan-hero-v2 h1 { font-size: clamp(43px, 12vw, 56px); }}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }}

@media print {
  .site-header, .site-footer, .legacy-notice { display: none !important; }
  body { color: #000; background: #fff; }
  .section-dark { color: #000; background: #fff; }}

/* V4 public narrative system: cinematic scenes, editorial rhythm, no dashboard metaphors */
.header-utility-link { display: inline-flex; align-items: center; gap: 7px; padding: 7px 0; color: var(--ink); border-bottom: 1px solid rgba(0,39,65,.38); font-size: 13px; font-weight: 700; }
.header-utility-link span { color: var(--signal); font-size: 13px; }
.header-utility-link:hover { color: var(--steel); border-color: var(--signal); }

.narrative-hero-v4 { position: relative; min-height: calc(100svh - 78px); overflow: hidden; color: var(--white); background: #001b2d; isolation: isolate; }
.narrative-hero-v4-media, .narrative-hero-v4-shade { position: absolute; inset: 0; }
.narrative-hero-v4-media img { width: 100%; height: 100%; object-fit: cover; object-position: center; filter: saturate(.93) contrast(1.04); }
.narrative-hero-v4-shade { z-index: 1; background: linear-gradient(90deg, rgba(0,22,38,.98) 0%, rgba(0,28,47,.89) 35%, rgba(0,31,50,.38) 66%, rgba(0,24,40,.18) 100%), linear-gradient(0deg, rgba(0,24,40,.92) 0%, transparent 44%); }
.narrative-hero-v4-grid { position: relative; z-index: 2; min-height: calc(100svh - 78px); padding: clamp(78px,10vh,124px) 0 106px; display: grid; grid-template-columns: minmax(0,1.36fr) minmax(250px,.64fr); align-items: end; gap: clamp(48px,7vw,110px); }
.narrative-hero-v4-copy { min-width: 0; max-width: 890px; }
.narrative-hero-v4 .eyebrow { margin: 0 0 25px; color: var(--signal-soft); letter-spacing: .16em; }
.narrative-hero-v4 h1 { margin: 0; max-width: 900px; color: var(--white); font-family: var(--font-sans); font-size: clamp(54px,5.1vw,80px); font-weight: 700; letter-spacing: -.065em; line-height: 1.03; text-wrap: balance; }
.narrative-hero-v4 h1 span { display: block; }
.hero-thesis-v4 { max-width: 800px; margin: 31px 0 0; color: #f1f8fa; font-family: var(--font-serif); font-size: clamp(22px,2vw,30px); line-height: 1.42; text-wrap: balance; }
.hero-audience-v4 { max-width: 760px; margin: 23px 0 0; color: #b7ccd5; font-size: 14px; line-height: 1.75; }
.hero-narrative-axis-v4-1 { position: relative; align-self: end; margin: 0 0 3px; padding: 0 0 0 24px; display: grid; gap: 18px; list-style: none; text-shadow: 0 2px 20px rgba(0,19,32,.78); }
.hero-narrative-axis-v4-1::before { content: ''; position: absolute; top: 8px; bottom: 8px; left: 4px; width: 1px; background: linear-gradient(180deg,rgba(0,184,218,.22),rgba(0,184,218,.8),rgba(0,184,218,.24)); }
.hero-narrative-axis-v4-1 li { position: relative; min-width: 0; display: grid; grid-template-columns: 34px minmax(0,1fr); align-items: baseline; gap: 2px 8px; }
.hero-narrative-axis-v4-1 li::before { content: ''; position: absolute; top: 8px; left: -24px; width: 9px; height: 9px; border: 2px solid rgba(0,184,218,.88); border-radius: 50%; background: #002741; box-shadow: 0 0 18px rgba(0,184,218,.42); }
.hero-narrative-axis-v4-1 span { color: #8bd9e7; font-size: 13px; font-weight: 700; letter-spacing: .09em; }
.hero-narrative-axis-v4-1 strong { color: #f5fafb; font-size: 14px; font-weight: 700; letter-spacing: .08em; line-height: 1.35; }
.hero-narrative-axis-v4-1 small { grid-column: 2; color: #b7cfd7; font-size: 13px; line-height: 1.45; }
.hero-category-note-v4 { position: absolute; right: max(24px,calc((100vw - 1220px)/2)); bottom: 27px; left: max(24px,calc((100vw - 1220px)/2)); z-index: 2; margin: 0; color: #bfd3db; font-size: 13px; line-height: 1.5; letter-spacing: .035em; }

.home-reframe-v4, .home-object-v4, .home-products-v4, .home-loop-section-v4, .home-collaboration-v4 { padding: clamp(92px,10vw,150px) 0; }
.home-reframe-v4-grid { display: grid; grid-template-columns: .55fr 1.55fr .8fr; align-items: start; gap: clamp(36px,5vw,80px); }
.home-reframe-v4 h2 { margin: 0; max-width: 790px; font-family: var(--font-serif); font-size: clamp(38px,4.1vw,62px); font-weight: 500; letter-spacing: -.045em; line-height: 1.1; text-wrap: balance; }
.home-reframe-v4-grid > p:last-child { margin: 5px 0 0; color: var(--muted); font-size: 16px; line-height: 1.85; }
.home-object-v4-grid { display: grid; grid-template-columns: .82fr 1.18fr; gap: clamp(60px,9vw,145px); }
.home-object-v4 h2, .section-heading-v4 h2, .home-collaboration-v4 h2 { margin: 17px 0 0; font-family: var(--font-serif); font-size: clamp(38px,4vw,60px); font-weight: 500; letter-spacing: -.045em; line-height: 1.12; text-wrap: balance; }
.home-object-layers-v4 { border-top: 1px solid var(--line); }
.home-object-layers-v4 article { min-height: 150px; padding: 28px 0; display: grid; grid-template-columns: 48px .62fr 1.38fr; align-items: start; gap: 24px; border-bottom: 1px solid var(--line); }
.home-object-layers-v4 span, .home-product-editorial-v4 > a > span, .home-loop-v4 article > span, .workflow-chapters-v4 article > span, .method-layer-story-v4 article > span, .agent-layer-story-v4 article > span, .product-story-public-v4-rows article > span { color: var(--signal); font-size: 13px; font-weight: 700; letter-spacing: .08em; }
.home-object-layers-v4 h3 { margin: 0; font-size: 18px; line-height: 1.4; }
.home-object-layers-v4 p { margin: 0; color: var(--muted); line-height: 1.75; }
.section-heading-v4 { max-width: 940px; margin-bottom: 70px; }
.section-heading-v4 > p:last-child { max-width: 730px; margin: 24px 0 0; color: var(--muted); font-size: 17px; }
.home-product-editorial-v4 { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid var(--line); }
.home-product-editorial-v4 > a { position: relative; min-width: 0; min-height: 390px; padding: 28px 38px 35px 0; border-bottom: 1px solid var(--line); border-right: 1px solid var(--line); }
.home-product-editorial-v4 > a + a { padding-left: 38px; }
.home-product-editorial-v4 > a:last-child { padding-right: 0; border-right: 0; }
.home-product-editorial-v4 small { display: block; margin-top: 55px; color: var(--steel); font-size: 13px; letter-spacing: .13em; }
.home-product-editorial-v4 h3 { margin: 12px 0 20px; font-family: var(--font-serif); font-size: 36px; font-weight: 600; }
.home-product-editorial-v4 p { margin: 0; color: var(--muted); line-height: 1.8; }
.home-product-editorial-v4 i { position: absolute; right: 22px; bottom: 28px; color: var(--signal); font-size: 18px; font-style: normal; }
.home-loop-section-v4 { color: var(--white); background: var(--ink); }
.home-loop-v4 { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); border-top: 1px solid rgba(139,228,239,.3); }
.home-loop-v4 article { min-width: 0; min-height: 330px; padding: 27px 30px 28px 0; border-right: 1px solid rgba(139,228,239,.2); border-bottom: 1px solid rgba(139,228,239,.2); }
.home-loop-v4 article + article { padding-left: 30px; }
.home-loop-v4 article:last-child { padding-right: 0; border-right: 0; }
.home-loop-v4 small { display: block; margin-top: 54px; color: var(--signal-soft); font-size: 13px; letter-spacing: .13em; }
.home-loop-v4 h3 { margin: 15px 0 28px; font-family: var(--font-serif); font-size: 25px; font-weight: 500; line-height: 1.35; }
.home-loop-v4 a { color: #b8ced7; font-size: 13px; }
.home-loop-v4 a i { margin-left: 8px; color: var(--signal); font-style: normal; }
.home-collaboration-v4-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: clamp(70px,9vw,150px); align-items: end; }
.home-collaboration-v4-grid > p { margin: 0 0 6px; color: var(--muted); font-size: 17px; line-height: 1.9; }

.quiet-end-v4 { padding: 55px 0; border-top: 1px solid var(--line); }
.quiet-end-v4-inner { display: flex; align-items: center; justify-content: space-between; gap: 35px; }
.quiet-end-v4 p { max-width: 720px; margin: 0; color: var(--muted); font-size: 13px; }
.quiet-end-v4 nav { display: flex; gap: 28px; font-size: 13px; font-weight: 700; }
.quiet-end-v4 a:hover { color: var(--steel); }
html:lang(zh-CN) .object-hero-v4 h1 { font-size: clamp(48px,4vw,56px); }
html:lang(zh-CN) .object-h1-tail { white-space: nowrap; }
html:lang(zh-CN) .object-h1-tail .no-break { display: inline; }

@media (max-width: 1080px) {
  .narrative-hero-v4-grid { grid-template-columns: minmax(0,1fr) 230px; gap: 45px; }
  .home-reframe-v4-grid { grid-template-columns: 1fr 2fr; }.home-reframe-v4-grid > p:last-child { grid-column: 2; }
  .home-object-v4-grid, .home-collaboration-v4-grid, .workflow-products-v4-grid, .method-meaning-v4-grid, .agent-boundary-v4-grid, .product-scope-public-v4-grid, .product-boundary-public-v4-grid { gap: 55px; }}

@media (max-width: 780px) {
  .header-utility-link { display: none; }
  .narrative-hero-v4 { min-height: calc(100svh - 68px); }
  .narrative-hero-v4-media img { object-position: center 35%; }
  .narrative-hero-v4-shade { background: linear-gradient(180deg,rgba(0,26,44,.76) 0%,rgba(0,26,44,.6) 32%,rgba(0,25,42,.97) 73%,rgba(0,24,40,1) 100%); }
  .narrative-hero-v4-grid { min-height: calc(100svh - 68px); padding: 58px 0 78px; display: flex; flex-direction: column; justify-content: flex-end; align-items: stretch; gap: 36px; }
  .narrative-hero-v4 .eyebrow { margin-bottom: 18px; font-size: 13px; }
  .narrative-hero-v4 h1 { max-width: 620px; font-size: clamp(43px,11.3vw,58px); letter-spacing: -.06em; line-height: 1.04; }
  .hero-thesis-v4 { margin-top: 23px; font-size: clamp(21px,5.8vw,27px); line-height: 1.38; }
  .hero-audience-v4 { margin-top: 18px; font-size: 13px; line-height: 1.65; }
  .hero-narrative-axis-v4-1 { width: 100%; padding: 0; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px 20px; text-shadow: 0 2px 16px rgba(0,19,32,.84); }
  .hero-narrative-axis-v4-1::before, .hero-narrative-axis-v4-1 li::before { display: none; }
  .hero-narrative-axis-v4-1 li { display: grid; grid-template-columns: 27px minmax(0,1fr); align-items: baseline; gap: 1px 2px; }
  .hero-narrative-axis-v4-1 span { grid-row: 1 / 3; display: block; margin: 0; color: #8be4ef; font-size: 13px; line-height: 1.45; }
  .hero-narrative-axis-v4-1 strong { display: block; color: #fff; font-size: 13px; letter-spacing: .035em; line-height: 1.4; }
  .hero-narrative-axis-v4-1 small { grid-column: 2; display: block; margin: 0; color: #d3e1e6; font-size: 13px; line-height: 1.45; }
  .hero-category-note-v4 { right: 18px; bottom: 18px; left: 18px; color: #d4e2e7; font-size: 13px; line-height: 1.55; letter-spacing: .01em; }
  .home-reframe-v4, .home-object-v4, .home-products-v4, .home-loop-section-v4, .home-collaboration-v4 { padding: 82px 0; }
  .home-reframe-v4-grid, .home-object-v4-grid, .home-collaboration-v4-grid, .workflow-products-v4-grid, .method-meaning-v4-grid, .agent-boundary-v4-grid, .product-scope-public-v4-grid, .product-boundary-public-v4-grid { grid-template-columns: 1fr; gap: 38px; }
  .home-reframe-v4-grid > p:last-child { grid-column: 1; }.home-reframe-v4 h2, .home-object-v4 h2, .section-heading-v4 h2, .home-collaboration-v4 h2 { font-size: clamp(37px,9.8vw,50px); }
  .home-object-layers-v4 article { min-height: 0; padding: 24px 0; grid-template-columns: 35px 1fr; gap: 10px 14px; }.home-object-layers-v4 p { grid-column: 2; }
  .home-product-editorial-v4, .home-loop-v4 { grid-template-columns: 1fr; }
  .home-product-editorial-v4 > a, .home-product-editorial-v4 > a + a, .home-product-editorial-v4 > a:last-child { min-height: 270px; padding: 24px 0 30px; border-right: 0; }
  .home-product-editorial-v4 small { margin-top: 34px; }.home-product-editorial-v4 i { right: 2px; }
  .home-loop-v4 article, .home-loop-v4 article + article, .home-loop-v4 article:last-child { min-height: 235px; padding: 24px 0 28px; border-right: 0; }.home-loop-v4 small { margin-top: 34px; }
  .quiet-end-v4-inner { align-items: flex-start; flex-direction: column; }.quiet-end-v4 nav { flex-wrap: wrap; }
  html:lang(zh-CN) .method-layers-intro-v4 h2 { font-size: clamp(34px,9.2vw,40px); }
  html:lang(zh-CN) .object-hero-v4 h1 { font-size: clamp(34px,9.2vw,40px); letter-spacing: -.055em; }
  html:lang(zh-CN) .object-h1-tail { white-space: nowrap; }
  html:lang(zh-CN) .semantic-line-v4 { white-space: nowrap; }}

@media (max-width: 390px) {
  .narrative-hero-v4-grid { padding-top: 42px; gap: 28px; }
  .narrative-hero-v4 h1 { font-size: clamp(40px,10.7vw,44px); }
  html:lang(en) .narrative-hero-v4 h1 { font-size: clamp(34px,9.3vw,39px); line-height: 1.06; }
  .hero-thesis-v4 { font-size: 20px; }
  .hero-audience-v4 { font-size: 13px; }
  .hero-narrative-axis-v4-1 { gap: 12px 15px; }
  .hero-narrative-axis-v4-1 strong { font-size: 13px; }}

@media (max-width: 390px) {
  html:lang(en) .product-intelligence-hero-copy-v41 h1, html:lang(en) .product-breakthrough-hero-copy-v41 h1, html:lang(en) .product-judgment-hero-v41 h1 { font-size: 45px; }
  html:lang(en) .scenarios-hero-v41 h1, html:lang(en) .about-hero-v41 h1, html:lang(en) .insights-hero-v41 h1, html:lang(en) .entry-hero-v41 h1 { font-size: 38px; }}

@media (max-width: 390px) {
  html:lang(en) .scenarios-hero-copy-v42 h1, html:lang(en) .about-hero-copy-v42 h1, html:lang(en) .insights-hero-copy-v42 h1 { font-size: 37px; }
  html:lang(en) .insight-article-hero-copy-v42 h1 { font-size: 37px; }}

/* V4.3 cross-platform publishing typography and layout contract */
.eyebrow,
figcaption,
.hero-category-note-v4,
.quiet-end-v4,
.site-footer,
.legacy-notice,
.insight-article-toc-v42,
.insight-article-footer-v42 {
  font-size: var(--type-caption);
}

.hero-audience-v4,
.workflow-hero-note-v4,
.hero-category-note-v4,
.quiet-end-v4 p,
.insight-article-footer-v42 > p {
  font-size: var(--type-meta);
}

.home-object-layers-v4 p,
.home-product-editorial-v4 p,
.home-loop-v4 p,
.workflow-chapters-v4 p,
.method-layer-story-v4 p,
.agent-layer-story-v4 p,
.product-story-public-v4-rows p,
.intelligence-movements-v41 p,
.judgment-layers-v41 p,
.breakthrough-role-lines-v41 p,
.scenario-fit-lines-v41 p,
.scenario-type-list-v41 p,
.about-belief-lines-v41 p,
.entry-start-lines-v41 p,
.insight-index-list-v41 p,
.scenario-complexity-grid-v42 header > p:last-child,
.complexity-sentence-v42 p,
.scenario-context-layers-v42 p,
.scenario-context-note-v42,
.scenario-opportunity-stream-v42 p,
.about-role-continuum-v42 p,
.insight-reading-stack-v42 p,
.article-semantic-v42 p,
.product-scope-grid-v41 li {
  font-size: var(--type-body);
}

html:lang(en) .article-section-v42 h2 {
  font-size: 36px;
}

html:lang(en) .insight-article-shell-v42 {
  grid-template-columns: 210px minmax(0, 72ch);
}

html:lang(en) main h1,
html:lang(en) main h2 {
  word-break: normal;
  overflow-wrap: normal;
  hyphens: none;
  text-wrap: balance;
}

html:lang(en) .home-reframe-v4 h2,
html:lang(en) .home-object-v4 h2,
html:lang(en) .section-heading-v4 h2,
html:lang(en) .home-collaboration-v4 h2,
html:lang(en) .workflow-story-intro-v4 h2,
html:lang(en) .method-layers-intro-v4 h2,
html:lang(en) .product-story-public-v4-intro h2,
html:lang(en) .product-editorial-intro-v41 h2,
html:lang(en) .scenario-complexity-grid-v42 h2,
html:lang(en) .scenario-context-intro-v42 h2,
html:lang(en) .scenario-types-spread-v42 h2,
html:lang(en) .about-principles-intro-v42 h2,
html:lang(en) .about-responsibility-v42 h2,
html:lang(en) .insight-manifesto-v42 h2,
html:lang(en) .insight-reading-room-v42 h2,
html:lang(en) .insight-method-bridge-v42 blockquote {
  font-size: clamp(38px, 3.8vw, 56px);
  line-height: 1.12;
  letter-spacing: -.035em;
}

@media (min-width: 781px) and (max-width: 1080px) {

  html:lang(en) .scenarios-hero-copy-v42 h1 {
    font-size: clamp(50px, 5.2vw, 56px);
  }

  html:lang(en) .insight-article-shell-v42 {
    grid-template-columns: 190px minmax(0, 70ch);
  }}

@media (min-width: 1081px) {
  main h1 {
    font-size: clamp(60px, 5.2vw, 76px) !important;
    line-height: 1.04 !important;
    letter-spacing: -.045em !important;
    text-wrap: balance;
  }

  main h2 {
    font-size: clamp(38px, 3.4vw, 48px) !important;
    line-height: 1.13 !important;
    letter-spacing: -.028em !important;
    text-wrap: balance;
  }

  html:lang(en) main h1 {
    font-size: clamp(54px, 4.3vw, 64px) !important;
    line-height: 1.07 !important;
  }

  html:lang(en) main h2 {
    font-size: clamp(34px, 2.9vw, 42px) !important;
    line-height: 1.16 !important;
  }}

@media (min-width: 1081px) {

  html:lang(en) .scenario-types-spread-v42 h2 {
    font-size: clamp(34px, 2.7vw, 38px) !important;
  }

  html:lang(en) .method-hero-v4 h1 {
    font-size: clamp(50px, 3.8vw, 56px) !important;
  }}

@media (max-width: 780px) {
  html:lang(en) .narrative-hero-v4 h1 {
    font-family: "Global Sans SC", "Global Sans Fallback Mobile", Arial, "Microsoft YaHei", sans-serif;
  }

  /* The mobile home hero is one document-flow composition. Copy, narrative
     axis, and category note grow naturally without competing bottom anchors. */
  html :is(body.page-home, body.page-home-en) .narrative-hero-v4 {
    display: flex;
    min-height: calc(100svh - 68px);
    flex-direction: column;
  }

  html :is(body.page-home, body.page-home-en) .narrative-hero-v4-grid {
    position: relative;
    display: flex;
    min-height: 0;
    padding: 58px 0 0;
    flex: 1 0 auto;
    flex-direction: column;
    justify-content: flex-end;
    align-items: stretch;
    gap: 24px;
  }

  html:lang(en) body.page-home-en .narrative-hero-v4-copy,
  html:lang(en) body.page-home-en .hero-narrative-axis-v4-1 {
    position: static;
    inset: auto;
  }

  html :is(body.page-home, body.page-home-en) .hero-category-note-v4 {
    position: relative;
    inset: auto;
    width: var(--shell);
    margin: 20px auto 18px;
  }

  html:lang(en) body.page-home-en .hero-narrative-axis-v4-1 li {
    align-content: start;
  }

  html:lang(en) .hero-narrative-axis-v4-1 small {
    align-self: start;
  }

  .insight-article-shell-v42,
  html:lang(en) .insight-article-shell-v42 {
    grid-template-columns: minmax(0, 1fr);
  }

  html:lang(en) main h1 {
    font-size: clamp(36px, 10vw, 44px);
    line-height: 1.07;
    letter-spacing: -.04em;
  }

  html:lang(en) main h2,
  html:lang(en) .home-reframe-v4 h2,
  html:lang(en) .home-object-v4 h2,
  html:lang(en) .section-heading-v4 h2,
  html:lang(en) .home-collaboration-v4 h2,
  html:lang(en) .workflow-story-intro-v4 h2,
  html:lang(en) .method-layers-intro-v4 h2,
  html:lang(en) .product-story-public-v4-intro h2,
  html:lang(en) .product-editorial-intro-v41 h2,
  html:lang(en) .scenario-complexity-grid-v42 h2,
  html:lang(en) .scenario-context-intro-v42 h2,
  html:lang(en) .scenario-types-spread-v42 h2,
  html:lang(en) .about-principles-intro-v42 h2,
  html:lang(en) .about-responsibility-v42 h2,
  html:lang(en) .insight-manifesto-v42 h2,
  html:lang(en) .insight-reading-room-v42 h2,
  html:lang(en) .insight-method-bridge-v42 blockquote {
    font-size: clamp(30px, 8.4vw, 36px);
    line-height: 1.15;
    letter-spacing: -.028em;
  }

  main h1 {
    font-size: clamp(34px, 9.5vw, 38px) !important;
    line-height: 1.08 !important;
    letter-spacing: -.04em !important;
    text-wrap: balance;
  }

  main h2 {
    font-size: clamp(30px, 8.4vw, 34px) !important;
    line-height: 1.16 !important;
    letter-spacing: -.025em !important;
    text-wrap: balance;
  }

  html:lang(en) main h1 {
    font-size: clamp(29px, 8.2vw, 33px) !important;
    line-height: 1.1 !important;
  }

  /* Keep the About title naturally wrappable at narrow viewport widths.
     This avoids both non-breaking phrase hacks and clipped customer copy. */
  html:lang(en) .about-hero-copy-v42 h1 {
    font-size: clamp(26.5px, 7.2vw, 31px) !important;
    text-wrap: wrap;
  }

  html:lang(en) main h2 {
    font-size: clamp(26px, 7.2vw, 30px) !important;
    line-height: 1.18 !important;
  }

  html:lang(zh-CN) .agent-hero-v4 h1 .no-break:last-child {
    white-space: normal;
  }}

@media (max-width: 390px) {
  html :is(body.page-home, body.page-home-en) .narrative-hero-v4-grid {
    padding-top: 42px;
  }}

@media (min-width: 781px) and (max-width: 1080px) {
  html:lang(en) .narrative-hero-v4 h1 {
    font-family: "Global Sans SC", "Global Sans Fallback Tablet", Arial, "Microsoft YaHei", sans-serif;
  }

  main h1 {
    font-size: clamp(48px, 5.8vw, 56px) !important;
    line-height: 1.06 !important;
    letter-spacing: -.04em !important;
    text-wrap: balance;
  }

  main h2 {
    font-size: clamp(34px, 4.2vw, 40px) !important;
    line-height: 1.14 !important;
    letter-spacing: -.025em !important;
    text-wrap: balance;
  }

  html:lang(en) main h1 {
    font-size: clamp(42px, 5.3vw, 50px) !important;
    line-height: 1.08 !important;
  }

  html:lang(en) main h2 {
    font-size: clamp(32px, 3.9vw, 38px) !important;
    line-height: 1.17 !important;
  }

  html:lang(en) .home-object-v4-grid {
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  }

  html:lang(en) .home-object-v4 h2 {
    font-size: clamp(30px, 3.5vw, 36px) !important;
  }

  html:lang(en) .home-product-editorial-v4 h3 {
    font-size: clamp(27px, 3.35vw, 32px);
    letter-spacing: -.025em;
  }}

@media (min-width: 781px) {
  html:lang(en) .home-object-v4 h2 {
    width: calc(100% + 64px);
    text-wrap: wrap;
  }

  html:lang(en) .insight-article-opportunity-decision-agent-v42 + .insight-article-shell-v42 #section-4 h2 {
    width: calc(100% + 84px);
    margin-left: -42px;
    text-wrap: wrap;
  }}

@media (min-width: 781px) and (max-width: 820px) {
  html:lang(en) .home-collaboration-v4 h2 {
    font-size: 30px !important;
    text-wrap: wrap;
  }}

@media (min-width: 1281px) {
  html:lang(en) body.page-breakthrough-ai-en .breakthrough-path-v41 .breakthrough-path-grid-v41 > div:first-child > h2 {
    font-size: 38px !important;
    text-wrap: wrap;
  }}

@media (max-width: 430px) {
  html:lang(en) .scenarios-hero-copy-v42 h1 {
    text-wrap: pretty;
  }

  html:lang(en) .insight-article-opportunity-decision-agent-v42 + .insight-article-shell-v42 #section-3 h2 {
    font-size: 24px !important;
    text-wrap: pretty;
  }

  html:lang(en) .insight-article-opportunity-decision-agent-v42 + .insight-article-shell-v42 #section-4 h2 {
    width: calc(100% + 50px);
    margin-left: -25px;
    font-size: 22px !important;
    letter-spacing: -.04em !important;
    text-wrap: pretty;
  }

  html:lang(en) .insight-article-opportunity-decision-agent-v42 + .insight-article-shell-v42 #section-7 h2 {
    font-size: 24px !important;
  }}

@media (max-width: 1080px) {
  body.nav-open #primary-navigation :focus-visible {
    outline-color: var(--ink) !important;
  }}

@media (max-width: 720px) {
  body.nav-open [data-nav-toggle]:focus-visible {
    outline-color: var(--ink) !important;
  }}