/* /styles.css */
@font-face {
  font-family: Pretendard;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('https://susemies-media-2026.pages.dev/assets/fonts/PretendardVariable.woff2') format('woff2');
}

:root {
  color-scheme: dark;
  font-family: Pretendard, "Noto Sans KR", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", sans-serif;
  color: #f5f2ea;
  background: #090b0b;
  font-synthesis: none;
  -webkit-font-smoothing: antialiased;
  --gutter: clamp(24px, 5vw, 90px);
  --charcoal: #090b0b;
  --paper: #f5f2ea;
  --ink: #252b29;
  --gold: #edd174;
}
* { box-sizing: border-box; }
html { scroll-behavior: auto; scrollbar-width: none; }
html::-webkit-scrollbar { display: none; }
body { margin: 0; }
a { color: inherit; text-decoration: none; }
button { font: inherit; touch-action: manipulation; }
button, a, summary { -webkit-tap-highlight-color: transparent; }
button:focus-visible, a:focus-visible, summary:focus-visible { outline: 2px solid #e9c653; outline-offset: 5px; }
button[hidden], [hidden] { display: none !important; }
.skip { position: fixed; top: -80px; left: 24px; z-index: 20; background: var(--paper); color: var(--charcoal); padding: 14px; }
.skip:focus { top: 16px; }

.header { position: fixed; z-index: 10; inset: 0 0 auto; display: flex; align-items: center; gap: 24px; padding: 24px var(--gutter); pointer-events: none; }
.header > * { pointer-events: auto; }
.brand { display: flex; gap: 8px; align-items: center; flex-shrink: 0; min-height: 44px; padding: 6px 10px; margin: -6px -10px; background: rgb(5 7 7 / .54); border-radius: 4px; }
.brand img { display: block; height: auto; }
.brand img:first-child { width: 29px; }
.brand img:last-child { width: 145px; }
.header-actions { margin-left: auto; display: flex; align-items: center; gap: 30px; }
.desktop-navigation { display: flex; align-items: center; gap: 28px; padding: 4px 16px; margin: -4px -16px; background: rgb(5 7 7 / .56); border-radius: 32px; }
.desktop-navigation a { position: relative; display: inline-flex; align-items: center; min-height: 44px; white-space: nowrap; color: #f5f2eae6; font-size: 14px; font-weight: 650; letter-spacing: -.01em; transition: color 160ms ease; }
.desktop-navigation a::after { content: ""; position: absolute; left: 0; right: 0; bottom: 4px; height: 1px; background: var(--gold); opacity: 0; transform: scaleX(.4); transform-origin: left; transition: opacity 160ms ease, transform 160ms ease; }
.desktop-navigation a:hover, .desktop-navigation a:focus-visible { color: var(--paper); }
.desktop-navigation a:hover::after, .desktop-navigation a:focus-visible::after { opacity: .8; transform: scaleX(1); }
.desktop-navigation span { font-family: monospace; font-size: 9px; color: #d7b44a; letter-spacing: .02em; margin-right: 7px; }
.languages { display: flex; align-items: center; gap: 8px; font-size: 11px; font-weight: 650; letter-spacing: .04em; padding: 0 10px; margin: 0 -10px; background: rgb(5 7 7 / .48); border-radius: 24px; }
.languages > * { display: inline-flex; align-items: center; min-height: 44px; }
.languages a { color: #f5f2ea80; transition: color 160ms ease; }
.languages a:hover { color: var(--paper); }
.languages > span:nth-child(2) { opacity: .35; }
.languages [aria-current] { text-decoration: underline; text-underline-offset: 6px; text-decoration-thickness: 1px; }
.mobile-navigation { display: none; }
.mobile-navigation summary { display: flex; align-items: center; justify-content: center; gap: 8px; min-width: 48px; min-height: 44px; list-style: none; color: var(--paper); font-size: 13px; font-weight: 650; cursor: pointer; }
.mobile-navigation summary::-webkit-details-marker { display: none; }
.mobile-navigation[open] summary { color: var(--gold); text-decoration: underline; text-underline-offset: 6px; }
.mobile-menu-panel { position: absolute; top: calc(100% + 8px); right: var(--gutter); width: min(280px, calc(100vw - var(--gutter) * 2)); max-height: calc(100dvh - 112px); overflow-y: auto; overscroll-behavior: contain; background: #090b0bf5; border: 1px solid #f5f2ea26; border-radius: 4px; padding: 12px 20px; backdrop-filter: blur(16px); }
.mobile-menu-links { display: flex; flex-direction: column; }
.mobile-menu-links a { display: flex; align-items: center; min-height: 44px; gap: 12px; font-size: 15px; font-weight: 600; color: var(--paper); border-bottom: 1px solid #f5f2ea14; }
.mobile-menu-links a:last-child { border-bottom: 0; }
.mobile-menu-links span { font: 8px/1 monospace; color: #d7b44a; letter-spacing: .04em; }

.scroll-story { min-height: 800dvh; position: relative; }
#stage { position: fixed; inset: 0; overflow: clip; isolation: isolate; background: var(--charcoal); --progress: 0; --copy-one: 1; --copy-two: 0; --transition-opacity: 0; --loop-one-opacity: 1; --loop-two-opacity: 0; }
.media { position: absolute; inset: 0; z-index: -3; }
.media > video, .media > canvas, .media > img {
  position: absolute;
  inset: 0;
  left: calc((1 - var(--film-span-x, 1)) * 50%);
  right: auto;
  top: calc((1 - var(--film-span-y, 1)) * 50%);
  bottom: auto;
  width: calc(var(--film-span-x, 1) * 100%);
  height: calc(var(--film-span-y, 1) * 100%);
  object-fit: cover;
  object-position: 50% 50%;
  display: block;
  transform: translate(calc(var(--film-relative-x, 0) * 100%), calc(var(--film-relative-y, 0) * 100%)) scale(var(--film-scale, .85));
  transform-origin: center;
  -webkit-mask-image: url('https://susemies-media-2026.pages.dev/assets/graphics/film-contour-mask.svg');
  mask-image: url('https://susemies-media-2026.pages.dev/assets/graphics/film-contour-mask.svg');
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}
.media > video { filter: none; }
#loop-one { opacity: var(--loop-one-opacity); }
#loop-two { opacity: var(--loop-two-opacity); }
#transition-canvas { opacity: var(--transition-opacity); z-index: 2; }
#static-retained-poster { opacity: 0; z-index: 1; pointer-events: none; }
#shade { position: absolute; inset: 0; z-index: -1; pointer-events: none; background: none; }
.scene-grade { position: absolute; inset: 0; opacity: var(--scene-opacity, 0); }


/* Foreground geometry and text stay separate from the physical video mask. */
.scene-graphic { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; object-fit: fill; opacity: var(--graphic-opacity, 1); }
.copy-content { z-index: 1; }
.copy--opening .scene-graphic { clip-path: inset(0 calc((1 - var(--copy-one)) * 100%) 0 0); }
.copy--meeting .scene-graphic { clip-path: inset(0 calc((1 - var(--copy-two)) * 100%) 0 0); }
.copy--opening .hero-opening::before, .copy--opening .hero-statement::before { transform: scaleX(var(--copy-one)); }
.copy--meeting .hero-line--together::before, .copy--meeting .hero-line--daily::before { transform: scaleX(var(--copy-two)); }

.meta { position: absolute; left: var(--gutter); right: var(--gutter); bottom: 32px; display: grid; grid-template-columns: 1fr 1fr 1fr; align-items: end; font: 9px/1.5 monospace; letter-spacing: .1em; color: #f5f2ea80; pointer-events: none; }
.meta-category { grid-column: 1; justify-self: start; text-wrap: balance; }
.meta-location { grid-column: 2; justify-self: center; }
.copy {
  position: absolute;
  inset: 0;
  pointer-events: none;
  --copy-width: min(760px, calc(100vw - var(--gutter) * 2 - 62px));
  --copy-center: 48%;
  --statement-size: clamp(82px, 7.777778vw, 140px);
  --opening-size: calc(var(--statement-size) * .5);
  --hero-leading: 1.04;
  --hero-scale: .88;
  --copy-gap: 32px;
}
.copy-content {
  position: absolute;
  left: var(--gutter);
  top: var(--copy-center);
  width: var(--copy-width);
  transform: translateY(-50%);
}
.copy--opening {
  --copy-width: min(600px, calc(100vw - var(--gutter) * 2 - 62px));
  --copy-center: 49%;
  --opening-phrase-size: clamp(112px, min(12vw, 19.2vh), 200px);
  --copy-gap: 36px;
}
.copy--opening .copy-content { left: var(--gutter); text-align: left; transform: translateY(-50%); }
.copy--opening .hero h1 { font-size: calc(var(--opening-phrase-size) * var(--hero-scale)); font-weight: 800; line-height: .98; letter-spacing: -.065em; }
.copy--opening .hero-opening, .copy--opening .hero-statement { display: block; font-size: inherit; font-weight: inherit; }
.copy--opening .hero-opening { position: relative; isolation: isolate; width: fit-content; font-size: .86em; padding: .04em .09em .055em .07em; margin-left: -.07em; margin-bottom: .04em; }
.copy--opening .hero-opening::before { content: ""; position: absolute; z-index: -1; inset: 0; background: #090b0be6; transform-origin: left; }
.copy--opening .hero-statement { position: relative; isolation: isolate; width: fit-content; padding: .02em .11em .055em .065em; margin-left: .2em; color: var(--charcoal); }
.copy--opening .hero-statement::before { content: ""; position: absolute; z-index: -1; inset: 0; background: #d7b44a; transform-origin: left; }
.copy--opening .reading-panel { width: fit-content; max-width: min(340px, calc(100% - var(--opening-phrase-size) * .2)); margin-left: calc(var(--opening-phrase-size) * var(--hero-scale) * .2); margin-right: 0; padding: 8px 18px; border-left: 2px solid #d7b44a; background: rgb(9 11 11 / .58); }
.copy--meeting .copy-content { inset: 0; width: 100%; transform: none; }
.copy--meeting .hero { position: absolute; left: var(--gutter); top: 49%; width: var(--copy-width); transform: translateY(-50%); }
.copy--meeting .hero-opening { position: relative; isolation: isolate; width: fit-content; max-width: 100%; margin-bottom: .45em; letter-spacing: -.035em; }
.copy--meeting .hero-opening::before { content: ""; position: absolute; z-index: -1; inset: -.025em -.09em -.035em; background: rgb(9 11 11 / .64); }
.copy--meeting .hero-statement { font-weight: 800; }
.hero-line { display: block; width: fit-content; position: relative; isolation: isolate; }
.copy--meeting .hero-line--together { padding: .03em .11em .07em .065em; margin-left: -.065em; }
.copy--meeting .hero-line--together::before { content: ""; position: absolute; inset: 0; z-index: -1; background: #090b0bd9; transform-origin: left; }
.hero-line--daily { margin-left: .48em; }
.copy--meeting .hero-line--daily { padding: .02em .11em .055em .08em; color: var(--charcoal); }
.copy--meeting .hero-line--daily::before { content: ""; position: absolute; inset: 0; z-index: -1; background: #d7b44a; transform-origin: left; }
.copy--meeting .hero-line--daily .hero-accent { color: inherit; }
.copy--meeting .reading-panel { position: absolute; left: var(--gutter); right: auto; top: 70%; width: min(370px, calc(100vw - var(--gutter) * 2)); margin-top: 0; transform: none; padding: 16px 20px; border-left: 2px solid #d7b44a; background: rgb(9 11 11 / .52); }
.hero { width: 100%; }
.copy h1, .copy h2 { margin: 0; color: var(--paper); font-weight: 800; letter-spacing: -.055em; line-height: var(--hero-leading); word-break: keep-all; }
.hero-opening, .hero-statement { display: block; white-space: nowrap; }
.hero-opening { font-size: calc(var(--opening-size) * var(--hero-scale)); font-weight: 650; }
.hero-statement { font-size: calc(var(--statement-size) * var(--hero-scale)); font-weight: 800; letter-spacing: -.055em; }
.hero-accent { color: #d7b44a; font-style: normal; }
/* Almost-horizontal marker edges stay close to the display type. */
.copy--opening .hero-statement::before, .copy--meeting .hero-line--daily::before {
  -webkit-mask-image: url('https://susemies-media-2026.pages.dev/assets/graphics/marker-highlight.svg');
  mask-image: url('https://susemies-media-2026.pages.dev/assets/graphics/marker-highlight.svg');
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}
.copy--opening .hero-opening::before, .copy--meeting .hero-line--together::before { border-radius: .025em; }

.eyebrow { display: none; }
.reading-panel {
  margin-top: var(--copy-gap);
  width: min(460px, 100%);
  padding: 0;
  color: var(--paper);
  background: none;
  border: 0;
  border-radius: 0;
}
.lead, .body-copy { margin: 0; color: #f5f2eae6; font-size: 16px; font-weight: 400; line-height: 1.8; letter-spacing: -.015em; word-break: keep-all; overflow-wrap: break-word; }
.desktop-break { display: initial; }
#copy-one { opacity: var(--copy-one); }
#copy-two { opacity: var(--copy-two); }

.stage-bottom { position: absolute; left: var(--gutter); right: var(--gutter); bottom: 32px; height: 13.5px; pointer-events: none; }
.scene-navigation { position: absolute; z-index: 3; right: calc(var(--gutter) - 25px); top: 50%; transform: translateY(-50%); display: flex; flex-direction: column; align-items: center; gap: 10px; }
.scene-navigation button { display: grid; place-items: center; width: 50px; height: 50px; flex: 0 0 50px; background: #090b0bf2; border: 1px solid #d7b44ab3; border-radius: 50%; color: var(--gold); padding: 11px; cursor: pointer; line-height: 0; transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease; }
.scene-navigation button:disabled { color: #f5f2ea4d; border-color: #f5f2ea26; background: #090b0bbf; cursor: default; }
.scene-navigation button:not(:disabled):hover { background: #d7b44a; border-color: #d7b44a; color: var(--charcoal); }
.scene-navigation svg { width: 26px; height: 26px; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.page-count { position: absolute; right: 0; bottom: 0; display: inline-flex; align-items: baseline; gap: 8px; font: 9px/1.5 monospace; letter-spacing: .1em; color: var(--gold); }
.page-total { color: #f5f2ea66; }
#playback-status { position: absolute; left: var(--gutter); bottom: 92px; max-width: 380px; font-size: 13px; line-height: 1.6; background: #090b0bd9; padding: 15px 20px; border: 1px solid #f5f2ea30; border-radius: 6px; }

@media (max-width: 1050px) {
  .header { gap: 20px; }
  .header-actions { gap: 22px; }
  .desktop-navigation { gap: 18px; }
  .desktop-navigation span { display: none; }
  .languages { gap: 7px; }
  .copy { --statement-size: clamp(68px, 8.2vw, 86px); }
  .copy--opening { --opening-phrase-size: clamp(100px, min(12.4vw, 19vh), 132px); }
  .copy--meeting .reading-panel { width: 330px; }
}
@media (max-width: 760px) {
  .header { padding: 18px 24px; gap: 12px; }
  .brand { gap: 7px; }
  .brand img:first-child { width: 24px; }
  .brand img:last-child { width: 119px; }
  .header-actions { gap: 12px; }
  .desktop-navigation { display: none; }
  .languages { gap: 5px; font-size: 10px; letter-spacing: .02em; }
  .mobile-navigation { display: block; }
  .meta { bottom: 28px; grid-template-columns: calc(50% - 44px) 1fr; font-size: 8px; letter-spacing: .06em; }
  .meta-category { max-width: 100%; }
  .meta-location { display: none; }
  .copy { --copy-width: calc(100vw - 48px); --copy-center: 48%; --copy-gap: 30px; --statement-size: clamp(54px, 15.5vw, 104px); }
  .copy-content { left: 24px; }
  .copy--opening, .copy--meeting { --film-focus-x: .52; }
  .copy--opening { --copy-width: calc(100vw - 48px); --copy-center: min(68%, calc(100% - 208px)); --copy-gap: 24px; --opening-phrase-size: clamp(78px, min(24vw, 12.5vh), 150px); }
  .copy--opening .copy-content { left: 24px; text-align: left; transform: translateY(-50%); }
  .copy--opening .hero-opening { padding: .045em .1em .075em .08em; margin-left: -.08em; margin-bottom: 0; }
  .copy--meeting { --copy-center: min(67%, calc(100% - 292px)); }
  .copy--meeting .copy-content { inset: auto; left: 24px; top: var(--copy-center); width: var(--copy-width); transform: translateY(-50%); }
  .copy--meeting .hero { position: static; width: 100%; transform: none; }
  .copy--meeting .reading-panel { position: relative; inset: auto; isolation: isolate; width: min(460px, 100%); margin-top: var(--copy-gap); transform: none; padding: 14px 16px; border-left: 2px solid #d7b44a; }
  .copy--meeting .reading-panel::before { content: none; }
  .hero-line--daily { margin-left: .36em; }
  .scene-graphic { --graphic-opacity: .55; }
  .scene-graphic--meeting { object-fit: fill; transform: translateY(-32px); }
  .lead, .body-copy { font-size: 14px; }
  .desktop-break { display: none; }


  .stage-bottom { bottom: 28px; }
  .scene-navigation button { width: 44px; height: 44px; flex-basis: 44px; padding: 8px; }
  .scene-navigation svg { width: 24px; height: 24px; }
  .scene-navigation { left: 50%; right: auto; top: auto; bottom: max(20px, env(safe-area-inset-bottom)); transform: translateX(-50%); gap: 4px; }
  /* The portrait crop bleeds both sides; only top/bottom meet page background. */
  .media > video, .media > canvas, .media > img {
    left: -20%; right: auto; width: 140%;
    object-position: 52% center;
    -webkit-mask-image: url('https://susemies-media-2026.pages.dev/assets/graphics/film-mobile-vertical-mask.svg');
    mask-image: url('https://susemies-media-2026.pages.dev/assets/graphics/film-mobile-vertical-mask.svg');
  }
}
@media (max-height: 650px) and (min-width: 761px) {
  .header { padding-top: 15px; padding-bottom: 15px; }
  .meta, .stage-bottom { bottom: 24px; }
  .copy { --statement-size: clamp(64px, min(7.777778vw, 15.2vh), 96px); --copy-gap: 26px; }
  .copy--opening { --opening-phrase-size: clamp(92px, min(12vw, 23vh), 150px); --copy-gap: 28px; }
  .lead, .body-copy { font-size: 14px; line-height: 1.75; }
}
@media (max-width: 760px) and (max-height: 650px) {
  .header { padding-top: 15px; padding-bottom: 15px; }
  .meta, .stage-bottom { bottom: 24px; }
  .copy { --copy-center: 46%; --statement-size: clamp(48px, min(15.5vw, 9.5vh), 60px); --copy-gap: 24px; }
  .copy--opening { --copy-center: min(67%, calc(100% - 228px)); --opening-phrase-size: clamp(72px, min(24vw, 13.4vh), 90px); --copy-gap: 22px; }
  .copy--meeting { --copy-center: min(62%, calc(100% - 276px)); }
  .lead, .body-copy { font-size: 13px; }

}
@media (min-width: 761px) and (max-height: 480px) {
  .copy { --copy-center: 55%; --statement-size: clamp(42px, min(6vw, 13vh), 60px); --copy-gap: 20px; }
  .copy--opening { --copy-center: 54%; --opening-phrase-size: clamp(72px, min(10vw, 23vh), 102px); --copy-gap: 22px; }
  .copy--meeting .copy-content { inset: auto; left: var(--gutter); top: var(--copy-center); width: var(--copy-width); transform: translateY(-50%); }
  .copy--meeting .hero { position: static; width: 100%; transform: none; }
  .copy--meeting .reading-panel { position: static; width: min(460px, 100%); margin-top: var(--copy-gap); transform: none; }
  .lead, .body-copy { font-size: 13px; line-height: 1.75; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  #stage .scene-graphic, #stage .hero-statement::before, #stage .hero-line--together::before { animation: none !important; }
}

/* Narrow landscape: protect navigation only over the two bright paper scenes. */
@media (min-width:761px) and (max-height:480px) {
  body:has(#founder[aria-hidden="false"]) .desktop-navigation,
  body:has(#identity[aria-hidden="false"]) .desktop-navigation {
    background: rgb(5 7 7 / .68);
    padding: 8px 12px;
    margin: -8px -12px;
    border-radius: 4px;
  }
}

/* /foreground-surfaces.css */
/* REV018/021 — one quiet Products reading plane and compact shared CTAs.
   Products keeps its existing right edge and vertical centre. The rail,
   vector, type and spacing use 90% of the previous desktop proportions. */
:root {
  --surface-bg: rgb(18 20 18 / .68);
  --surface-border: rgb(245 242 234 / .14);
  --surface-blur: 16px;
  --surface-bg-hover: rgb(27 29 24 / .82);
  --surface-gold-border: rgb(215 180 74 / .65);
}

#stage .new-scene-detail,
#stage[data-sitewide-revision="true"] .scene-navigation button {
  background: var(--surface-bg);
  border-color: var(--surface-gold-border);
  color: var(--gold, #d7b44a);
  -webkit-backdrop-filter: blur(var(--surface-blur));
  backdrop-filter: blur(var(--surface-blur));
  box-shadow: inset 0 1px 0 rgb(245 242 234 / .045);
}
#stage .new-scene-detail:hover,
#stage[data-sitewide-revision="true"] .scene-navigation button:not(:disabled):hover {
  background: var(--surface-bg-hover);
  border-color: rgb(237 209 116 / .95);
  color: #edd174;
}
#stage .new-scene-detail:focus-visible,
#stage[data-sitewide-revision="true"] .scene-navigation button:focus-visible {
  outline: 2px solid #edd174;
  outline-offset: 4px;
}
#stage[data-sitewide-revision="true"] .scene-navigation button:disabled {
  background: rgb(18 20 18 / .42);
  border-color: rgb(245 242 234 / .12);
  color: rgb(245 242 234 / .32);
  box-shadow: none;
}
/* A compact visual pill retains a full 44px interactive height. */
#stage .new-scene-detail,
#stage[data-sitewide-revision="true"] :is(#products.copy, #research.copy, #business.copy) .new-scene-detail {
  min-width: 86.4px;
  min-height: 44px;
  padding: 8.1px 13.5px;
  gap: 0;
  font-size: 10.8px;
  line-height: 1.3;
}

#stage[data-sitewide-revision="true"] #products.copy > [data-editorial-content] {
  box-sizing: border-box;
  gap: 0;
  padding: 11.7px 16.2px;
  border: 0;
  border-radius: 0;
  background: rgb(9 12 10 / .56);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  box-shadow: none;
}
#stage[data-sitewide-revision="true"] #products.copy .product-track,
#stage[data-sitewide-revision="true"] #products.copy .product-track + .product-track {
  box-sizing: border-box;
  min-width: 0;
  margin: 0;
  padding: 14.4px 0;
  grid-template-columns: 57.6px minmax(0, 1fr) auto;
  column-gap: 16.2px;
  row-gap: 3.6px;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
}
#stage[data-sitewide-revision="true"] #products.copy .product-track + .product-track {
  border-top: 1px solid rgb(215 180 74 / .22);
}
#stage[data-sitewide-revision="true"] #products.copy .product-track > .product-emblem {
  width: 57.6px;
  height: 57.6px;
}
#stage[data-sitewide-revision="true"] #products.copy [data-editorial-content] .product-track > .track-eyebrow {
  font-size: 8.1px;
  color: #c8b67f;
  text-shadow: none;
}
#stage[data-sitewide-revision="true"] #products.copy [data-editorial-content] .product-track > h3 {
  font-size: 25.2px;
  text-shadow: 0 1px 2px rgb(0 0 0 / .4);
}
#stage[data-sitewide-revision="true"] #products.copy [data-editorial-content] .product-track > p:not(.track-eyebrow) {
  margin-top: 4.5px;
  font-size: 14.4px;
  -webkit-text-stroke: 0;
  text-shadow: 0 1px 2px rgb(0 0 0 / .45);
}
#stage[data-sitewide-revision="true"] #products.copy .product-track > .new-scene-detail {
  gap: 0;
}
@media (min-width: 761px) {
  #stage[data-sitewide-revision="true"] #products.copy > [data-editorial-content] {
    width: min(630px, 45.9vw);
  }
}

/* Mobile keeps its established reading edge and available width. Compact
   internal proportions never reduce a CTA's touch height below 44px. */
@media (max-width: 760px) {
  #stage .new-scene-detail,
  #stage[data-sitewide-revision="true"] :is(#products.copy, #research.copy, #business.copy) .new-scene-detail {
    font-size: 11px;
    padding: 8.1px 10.8px;
  }
  #stage[data-sitewide-revision="true"] #products.copy > [data-editorial-content] {
    padding: 7.2px 10.8px;
  }
  #stage[data-sitewide-revision="true"] #products.copy .product-track,
  #stage[data-sitewide-revision="true"] #products.copy .product-track + .product-track {
    padding: 10.8px 0;
    grid-template-columns: 36px minmax(0, 1fr) auto;
    column-gap: 7.2px;
    row-gap: 1.8px;
  }
  #stage[data-sitewide-revision="true"] #products.copy .product-track > .product-emblem {
    width: 36px;
    height: 36px;
  }
  #stage[data-sitewide-revision="true"] #products.copy [data-editorial-content] .product-track > .track-eyebrow {
    font-size: 7.2px;
  }
  #stage[data-sitewide-revision="true"] #products.copy [data-editorial-content] .product-track > h3 {
    font-size: 20.7px;
  }
  #stage[data-sitewide-revision="true"] #products.copy [data-editorial-content] .product-track > p:not(.track-eyebrow) {
    margin-top: 5.4px;
    font-size: 12px;
  }
}
@media (max-width: 760px) and (max-height: 740px) and (orientation: portrait) {
  #stage[data-sitewide-revision="true"] #products.copy [data-editorial-content] .product-track > h3 { font-size: 18.9px; }
  #stage[data-sitewide-revision="true"] #products.copy [data-editorial-content] .product-track > p:not(.track-eyebrow) { font-size: 11.5px; }
}
@media (max-width: 760px) and (max-height: 560px) and (orientation: landscape) {
  #stage[data-sitewide-revision="true"] #products.copy > [data-editorial-content] {
    gap: 10.8px;
    padding: 9px 10.8px;
  }
  #stage[data-sitewide-revision="true"] #products.copy .product-track,
  #stage[data-sitewide-revision="true"] #products.copy .product-track + .product-track {
    padding: 0;
    grid-template-columns: 32.4px minmax(0, 1fr);
    column-gap: 8.1px;
    row-gap: 2.7px;
    align-content: start;
    border: 0;
  }
  #stage[data-sitewide-revision="true"] #products.copy .product-track + .product-track {
    padding-left: 10.8px;
    border-left: 1px solid rgb(215 180 74 / .22);
  }
  #stage[data-sitewide-revision="true"] #products.copy .product-track > .product-emblem { width: 32.4px; height: 32.4px; }
  #stage[data-sitewide-revision="true"] #products.copy [data-editorial-content] .product-track > h3 { font-size: 17.1px; }
  #stage[data-sitewide-revision="true"] #products.copy [data-editorial-content] .product-track > p:not(.track-eyebrow) { margin-top: 3.6px; font-size: 11px; }
  #stage[data-sitewide-revision="true"] #products.copy .product-track > .new-scene-detail { margin-top: 6.3px; }
}

/* /header-navigation.css */
/* REV016 navigation; REV022 refines mobile controls without altering the panel. */
.header { align-items: center; gap: 24px; }
.header .brand {
  min-height: 52px;
  gap: 8px;
  padding: 0;
  margin: 0;
  background: transparent;
  border-radius: 0;
}
.header .brand img { filter: drop-shadow(0 2px 5px rgb(0 0 0 / .28)); }
.header .brand img:first-child { width: 32px; }
.header .brand img:last-child { width: 158px; }
.header .header-actions { align-items: center; gap: 10px; }
.header .desktop-navigation,
.header .languages,
.header .mobile-navigation > summary,
.header .nav-dropdown,
.header .mobile-menu-panel {
  background: var(--surface-bg);
  border: 1px solid var(--surface-border);
  -webkit-backdrop-filter: blur(var(--surface-blur));
  backdrop-filter: blur(var(--surface-blur));
  box-shadow: inset 0 1px 0 rgb(245 242 234 / .045);
}
.header .desktop-navigation {
  display: flex;
  gap: clamp(10px, 1.4vw, 24px);
  min-height: 52px;
  padding: 3px 20px;
  margin: 0;
  border-radius: 28px;
}
.header .nav-group { position: relative; }
.header .nav-row { display: flex; align-items: center; }
.header .nav-parent {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 44px;
  font-size: 14px;
  font-weight: 650;
  letter-spacing: -.01em;
  color: rgb(245 242 234 / .88);
  white-space: nowrap;
}
.header .desktop-navigation a::after { content: none; }
.header .nav-index {
  display: inline;
  margin: 0;
  font: 9px/1 monospace;
  letter-spacing: .02em;
  color: var(--gold);
}
.header .nav-disclosure {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  min-height: 44px;
  margin: 0 -5px 0 1px;
  padding: 0;
  border: 0;
  border-radius: 14px;
  color: rgb(245 242 234 / .5);
  background: transparent;
  cursor: pointer;
}
.header .nav-disclosure span { display: inline; margin: 0; font: 16px/1 Pretendard, sans-serif; color: inherit; }
.header .nav-parent:hover,
.header .nav-parent[aria-current],
.header .nav-group[data-nav-open] > .nav-row .nav-parent,
.header .nav-disclosure:hover,
.header .nav-disclosure[aria-expanded="true"] { color: var(--gold); }
.header .nav-dropdown {
  position: absolute;
  top: calc(100% + 8px);
  left: -18px;
  display: grid;
  width: 246px;
  padding: 8px;
  border-radius: 16px;
  max-height: calc(100dvh - 116px);
  overflow-y: auto;
  overscroll-behavior: contain;
  background: rgb(18 20 18 / .92);
}
.header [data-nav-group="business"] > .nav-dropdown { width: 286px; }
.header .nav-group[data-nav-open]::after {
  content: "";
  position: absolute;
  top: 100%;
  left: -18px;
  width: 100%;
  height: 9px;
}
.header .nav-dropdown > a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  min-height: 44px;
  padding: 10px 12px;
  border: 0;
  border-radius: 9px;
  color: rgb(245 242 234 / .88);
  font-size: 14px;
  font-weight: 550;
  line-height: 1.4;
  white-space: normal;
  word-break: keep-all;
  transition: background 160ms ease, color 160ms ease;
}
.header .nav-dropdown > .nav-category { color: var(--gold); font-weight: 650; }
.header .nav-dropdown > .nav-category:not(:first-child) { margin-top: 8px; border-top: 1px solid var(--surface-border); border-radius: 0 0 9px 9px; }
.header .nav-dropdown > .nav-detail { padding-left: 24px; font-size: 13px; }
.header .nav-dropdown > a:hover,
.header .nav-dropdown > a:focus-visible,
.header .nav-dropdown > a[aria-current] { color: var(--gold); background: rgb(237 209 116 / .085); }
.header .nav-arrow { display: inline; margin: 0; font: 13px/1 Pretendard, sans-serif; color: var(--gold); opacity: .6; }
.header .languages {
  display: flex;
  gap: 4px;
  min-height: 52px;
  padding: 3px;
  margin: 0;
  border-radius: 28px;
}
.header .languages > a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  min-height: 44px;
  border-radius: 23px;
  color: rgb(245 242 234 / .6);
  font-size: 11px;
  font-weight: 650;
  letter-spacing: .025em;
  text-decoration: none;
  transition: color 160ms ease, background 160ms ease;
}
.header .languages > a:hover { color: var(--paper); background: rgb(245 242 234 / .06); }
.header .languages > a[aria-current] { color: var(--gold); background: rgb(237 209 116 / .13); }
.header :is(a, button, summary):focus-visible { outline: 2px solid var(--gold); outline-offset: 3px; }
.header .mobile-navigation { display: none; }

@media (min-width: 901px) and (max-width: 1099px) {
  .header .desktop-navigation { gap: 10px; padding-inline: 14px; }
  .header .nav-parent { font-size: 13px; gap: 5px; }
  .header .nav-disclosure { width: 24px; }
  .header .nav-index { display: none; }
}
@media (max-width: 900px) {
  .header { gap: 6px; padding: 18px; }
  .header .brand { gap: 7px; min-height: 50px; }
  .header .brand img:first-child { width: 26px; }
  .header .brand img:last-child { width: 128px; }
  .header .header-actions { gap: 6px; flex-shrink: 0; }
  .header .desktop-navigation { display: none; }
  .header .mobile-navigation { display: block; }
  .header .mobile-navigation > summary {
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 80px;
    min-width: 80px;
    min-height: 50px;
    gap: 8px;
    padding: 0 12px;
    border-radius: 25px;
    text-decoration: none;
    color: var(--paper);
  }
  .header .mobile-navigation[open] > summary { color: var(--gold); background: var(--surface-bg-hover); }
  .header .mobile-menu-label { font-size: 12px; font-weight: 650; line-height: 1; letter-spacing: .015em; }
  .header .mobile-menu-glyph { width: 12px; flex: 0 0 12px; font-size: 16px; font-weight: 400; line-height: 1; text-align: center; }
  .header .languages {
    box-sizing: border-box;
    width: 94px;
    min-height: 50px;
    gap: 0;
    padding: 2px;
    border-radius: 25px;
  }
  .header .languages > a {
    box-sizing: border-box;
    width: 44px;
    min-height: 44px;
    flex: 0 0 44px;
    font-size: 11px;
    line-height: 1;
    letter-spacing: .04em;
    text-decoration: none;
  }
  .header .languages > a:first-child { border-radius: 22px 8px 8px 22px; }
  .header .languages > a:last-child { border-radius: 8px 22px 22px 8px; }
  .header .languages > a[aria-current] {
    background: rgb(215 180 74 / .17);
    color: #edd174;
    box-shadow: inset 0 0 0 1px rgb(215 180 74 / .12);
  }
  .header .mobile-menu-panel {
    top: calc(100% + 8px);
    right: 18px;
    width: min(340px, calc(100vw - 36px));
    max-height: calc(100dvh - 112px);
    padding: 10px;
    border-radius: 18px;
    scrollbar-width: thin;
    background: rgb(18 20 18 / .92);
  }
  .header .mobile-menu-links { gap: 2px; }
  .header .mobile-menu-links .nav-row { justify-content: space-between; }
  .header .mobile-menu-links .nav-parent { flex: 1; padding: 8px 12px; border: 0; min-height: 48px; }
  .header .mobile-menu-links .nav-disclosure { width: 44px; min-height: 44px; margin: 0; }
  .header .mobile-menu-links .nav-index { display: inline; font-size: 9px; }
  .header .mobile-menu-links .nav-dropdown {
    position: static;
    width: 100%;
    max-height: none;
    overflow: visible;
    padding: 2px 4px 8px 18px;
    margin: 0 0 6px;
    background: rgb(0 0 0 / .12);
    border: 0;
    border-radius: 12px;
    backdrop-filter: none;
    box-shadow: none;
  }
  .header .mobile-menu-links .nav-group::after { content: none; }
}
@media (max-width: 384px) {
  .header .brand { gap: 6px; }
  .header .brand img:first-child { width: 22px; }
  .header .brand img:last-child { width: 110px; }
}
@media (max-width: 350px) {
  .header { padding-inline: 12px; }
  .header .mobile-navigation > summary { width: 44px; min-width: 44px; padding: 0; }
  .header .mobile-menu-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
  .header .mobile-menu-panel { right: 12px; width: calc(100vw - 24px); }
}
@media (max-width: 900px) and (max-height: 480px) {
  .header { padding-block: 12px; }
  .header .mobile-menu-panel { max-height: calc(100dvh - 94px); }
}
@media (prefers-reduced-motion: reduce) {
  .header :is(a, button) { transition: none; }
}

/* /mobile-controls.css */
/* REV022 — one compact navigation row leaves the portrait film its height. */
.scene-navigation-count { display: none; }

@media (max-width: 760px) {
  #stage:is([data-opening-revision="true"], [data-sitewide-revision="true"]) .scene-navigation {
    box-sizing: border-box;
    left: auto;
    right: 20px;
    top: auto;
    bottom: max(16px, calc(env(safe-area-inset-bottom) + 12px));
    transform: none;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 2px;
    width: 152px;
    padding: 2px;
    border: 1px solid var(--surface-border);
    border-radius: 26px;
    background: var(--surface-bg);
    -webkit-backdrop-filter: blur(var(--surface-blur));
    backdrop-filter: blur(var(--surface-blur));
    box-shadow: inset 0 1px 0 rgb(245 242 234 / .045);
  }
  #stage:is([data-opening-revision="true"], [data-sitewide-revision="true"]) .scene-navigation button {
    box-sizing: border-box;
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    padding: 11px;
    border: 0;
    border-radius: 23px;
    background: transparent;
    box-shadow: none;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    touch-action: manipulation;
  }
  #stage:is([data-opening-revision="true"], [data-sitewide-revision="true"]) .scene-navigation button:disabled {
    background: transparent;
    border: 0;
    color: rgb(245 242 234 / .28);
  }
  #stage:is([data-opening-revision="true"], [data-sitewide-revision="true"]) .scene-navigation button:not(:disabled):hover {
    background: rgb(215 180 74 / .12);
    color: #edd174;
  }
  #stage:is([data-opening-revision="true"], [data-sitewide-revision="true"]) .scene-navigation svg {
    width: 21px;
    height: 21px;
  }
  #stage .scene-navigation-count {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 6px;
    flex: 1 1 auto;
    min-width: 0;
    color: var(--gold);
    font: 10px/1.4 monospace;
    font-variant-numeric: tabular-nums;
    letter-spacing: .03em;
    white-space: nowrap;
    pointer-events: none;
  }
  #stage .scene-navigation-total { color: rgb(245 242 234 / .42); }
  #stage .stage-bottom .page-count { display: none; }
  #stage .meta {
    right: 188px;
    bottom: max(35px, calc(env(safe-area-inset-bottom) + 31px));
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 760px) and (max-height: 560px) and (orientation: landscape) {
  #stage:is([data-opening-revision="true"], [data-sitewide-revision="true"]) .scene-navigation {
    right: 20px;
    bottom: max(6px, calc(env(safe-area-inset-bottom) + 6px));
    width: 148px;
    padding: 0;
  }
  #stage .meta { bottom: max(23px, calc(env(safe-area-inset-bottom) + 23px)); }
}

/* /office-locations.css */
/* REV037 — quiet footer disclosures share the existing lower register. */
#stage .office-locations {
  position: absolute;
  z-index: 16;
  left: 50%;
  bottom: 17px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  width: max-content;
  max-width: calc(100% - 420px);
  min-height: 44px;
  transform: translateX(-50%);
  color: #f5f2ea80;
  font: 400 9px/1.5 monospace;
  letter-spacing: .1em;
  pointer-events: auto;
}
#stage .office-location { position: relative; min-width: 0; }
#stage .office-location-trigger {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 2px;
  border: 0;
  border-radius: 3px;
  background: transparent;
  color: inherit;
  font: inherit;
  letter-spacing: inherit;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  touch-action: manipulation;
}
#stage .office-location-trigger:hover,
#stage .office-location-trigger[aria-expanded="true"] { color: var(--gold, #d7b44a); }
#stage .office-location-trigger:focus-visible {
  outline: 2px solid var(--gold, #d7b44a);
  outline-offset: 3px;
}
#stage .office-locations > * + * {
  border-left: 0;
  padding-left: 16px;
  background-image: linear-gradient(rgb(245 242 234 / .2), rgb(245 242 234 / .2));
  background-position: left center;
  background-size: 1px .9em;
  background-repeat: no-repeat;
}
#stage .office-location-card {
  position: absolute;
  bottom: calc(100% + 8px);
  left: 50%;
  width: 258px;
  max-width: calc(100vw - 32px);
  padding: 16px 18px;
  border: 1px solid rgb(215 180 74 / .42);
  border-radius: 6px;
  background: rgb(9 11 11 / .94);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  box-shadow: 0 8px 28px rgb(0 0 0 / .25);
  transform: translateX(-50%);
  color: var(--editorial-paper, #e1ddcf);
  font-family: Pretendard, "Noto Sans KR", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", sans-serif;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.7;
  letter-spacing: -.01em;
  text-align: left;
  white-space: normal;
}
#stage .office-location-card[hidden] { display: none; }
#stage .office-location-card::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -5px;
  width: 8px;
  height: 8px;
  border-right: 1px solid rgb(215 180 74 / .42);
  border-bottom: 1px solid rgb(215 180 74 / .42);
  background: #090b0b;
  transform: translateX(-50%) rotate(45deg);
}
#stage .office-location-card > p {
  margin: 0 0 7px;
  color: var(--gold, #d7b44a);
  font-size: 11px;
  font-weight: 550;
}
#stage .office-location-card address { margin: 0; font-style: normal; overflow-wrap: break-word; }
#stage .office-location-card address span {
  display: block;
  margin-top: 4px;
  color: rgb(245 242 234 / .55);
  font-size: 11px;
  font-variant-numeric: tabular-nums;
}
#stage .meta-location { display: none; }

@media (min-width: 761px) and (max-width: 1100px) {
  #stage .office-locations { gap: 10px; }
  #stage .office-locations > * + * { padding-left: 10px; }
}
@media (min-width: 761px) and (max-width: 850px) {
  #stage .office-locations { left: calc(50% + 20px); max-width: calc(100% - 360px); gap: 7px; }
  #stage .office-locations > * + *,
  #stage .office-locations > .office-location-link { padding-left: 7px; }
}
@media (min-width: 761px) and (max-height: 850px) {
  #stage .office-locations { bottom: 9px; }
}

@media (max-width: 760px) {
  #stage .office-locations {
    bottom: max(72px, calc(env(safe-area-inset-bottom) + 68px));
    gap: 6px;
    width: max-content;
    max-width: calc(100% - 32px);
    font-size: 8px;
    letter-spacing: .06em;
  }
  #stage .office-locations > * + * { padding-left: 6px; }
  #stage .office-location-trigger { padding-right: 0; padding-left: 0; }
  #stage .office-locations > .office-location-link { padding-left: 6px; }
  #stage .office-location { position: static; }
  #stage .office-location-card {
    position: absolute;
    left: 50%;
    right: auto;
    bottom: calc(100% + 8px);
    width: min(300px, calc(100vw - 32px));
    max-width: none;
    margin: 0;
    transform: translateX(-50%);
    font-size: 12.5px;
  }
  #stage .office-location-card::after { display: none; }
}

/* Legacy prose rails reserve eight pixels above the new footer hit row. */
@media (max-width: 760px) and (orientation: portrait) {
  #stage[data-sitewide-revision="true"] :is(#vision, #identity).copy { padding-bottom: 124px; }
}

@media (min-width: 641px) and (max-width: 760px) and (max-height: 560px) and (orientation: landscape) {
  #stage .office-locations {
    left: 196px;
    right: 180px;
    bottom: max(6px, calc(env(safe-area-inset-bottom) + 6px));
    width: auto;
    max-width: none;
    transform: none;
  }
  #stage .office-location-card {
    bottom: calc(100% + 8px);
  }
}

/* One quiet footer capsule with three segments; disclosures remain outside its bounds. */
#stage[data-sitewide-revision="true"] nav.office-locations {
  box-sizing: border-box;
  gap: 0;
  width: max-content;
  max-width: calc(100% - 48px);
  height: 32px;
  min-height: 32px;
  padding: 0 8px;
  border: 1px solid rgb(164 178 151 / .28);
  border-radius: 999px;
  background: rgb(12 15 13 / .9);
  box-shadow: 0 2px 8px rgb(0 0 0 / .12);
  overflow: visible;
  flex-wrap: nowrap;
  color: rgb(245 242 234 / .72);
  font-size: 9px;
  line-height: 1.5;
  letter-spacing: .04em;
}
#stage[data-sitewide-revision="true"] nav.office-locations > * {
  min-width: 0;
  flex: 0 0 auto;
}
#stage[data-sitewide-revision="true"] nav.office-locations > * + *,
#stage[data-sitewide-revision="true"] nav.office-locations > .office-location-link {
  padding-left: 0;
  border-left: 0;
}
#stage[data-sitewide-revision="true"] nav.office-locations .office-location-trigger {
  box-sizing: border-box;
  height: 30px;
  min-height: 30px;
  min-width: 0;
  padding: 0 12px;
  border: 0;
  border-radius: 0;
  background-color: transparent;
  background-image: none;
  box-shadow: none;
  transition: color .2s ease, background-color .2s ease;
}
#stage[data-sitewide-revision="true"] nav.office-locations > * + *,
#stage[data-sitewide-revision="true"] nav.office-locations > .office-location-link {
  background-image: linear-gradient(rgb(194 204 181 / .24), rgb(194 204 181 / .24));
  background-position: left center;
  background-size: 1px 12px;
  background-repeat: no-repeat;
}
#stage[data-sitewide-revision="true"] nav.office-locations .office-location-trigger:hover,
#stage[data-sitewide-revision="true"] nav.office-locations .office-location-trigger[aria-expanded="true"] {
  border: 0;
  background-color: rgb(165 181 143 / .045);
  color: rgb(218 223 194);
}
#stage[data-sitewide-revision="true"] nav.office-locations .office-location-trigger:focus-visible {
  outline: 1px solid rgb(210 218 184 / .8);
  outline-offset: -3px;
}
@media (max-width: 760px) {
  #stage[data-sitewide-revision="true"] nav.office-locations {
    gap: 0;
    max-width: calc(100% - 24px);
    height: 28px;
    min-height: 28px;
    padding: 0 5px;
    font-size: 8px;
    line-height: 1.4;
    letter-spacing: .01em;
  }
  #stage[data-sitewide-revision="true"] nav.office-locations .office-location-trigger {
    height: 26px;
    min-height: 26px;
    min-width: 0;
    padding: 0 8px;
  }
}
@media (prefers-reduced-motion: reduce) {
  #stage[data-sitewide-revision="true"] nav.office-locations .office-location-trigger { transition: none; }
}
/* Copyright is a fourth, noninteractive segment inside the same capsule. */
#stage[data-sitewide-revision="true"] nav.office-locations > .office-copyright {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  height: 30px;
  padding: 0 8px;
  white-space: nowrap;
  font-size: 8px;
  line-height: 1.4;
  letter-spacing: .01em;
  color: rgb(222 228 213 / .5);
}
#stage[data-sitewide-revision="true"] nav.office-locations .office-copyright-short { display: none; }
#stage[data-sitewide-revision="true"] nav.office-locations .office-copyright-long { display: inline; }
@media (max-width: 760px) {
  #stage[data-sitewide-revision="true"] nav.office-locations > .office-copyright {
    height: 26px;
    padding: 0 6px;
    font-size: 7px;
  }
  #stage[data-sitewide-revision="true"] nav.office-locations .office-copyright-long { display: none; }
  #stage[data-sitewide-revision="true"] nav.office-locations .office-copyright-short { display: inline; }
}

/* Mobile disclosures are temporarily portalled above the navigation controls.
   The footer capsule itself keeps its original position and dimensions. */
.office-location-card[hidden]{display:none!important}
[data-office-mobile-popup="true"]{
 position:fixed;z-index:2400;left:50%;bottom:auto;right:auto;
 box-sizing:border-box;width:min(300px,calc(100vw - 32px));max-width:calc(100vw - 32px);
 margin:0;padding:16px 18px;transform:translateX(-50%);
 border:1px solid rgb(255 255 255 / .12);border-radius:6px;
 background:rgb(9 11 11 / .94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
 box-shadow:0 8px 28px rgb(0 0 0 / .3);color:#e1ddcf;
 font:400 12.5px/1.7 Pretendard,"Noto Sans KR",-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo",sans-serif;
 letter-spacing:-.01em;text-align:left;white-space:normal;overflow:auto;overscroll-behavior:contain;pointer-events:auto;
}
[data-office-mobile-popup="true"]::after{display:none}
[data-office-mobile-popup="true"]>p{margin:0 0 9px;color:var(--gold,#d7b44a);font-size:11px;font-weight:550}
[data-office-mobile-popup="true"] address{margin:0;font-style:normal;overflow-wrap:break-word}
[data-office-mobile-popup="true"] address span{display:block;margin-top:4px;color:rgb(245 242 234 / .55);font-size:11px;font-variant-numeric:tabular-nums}
.office-app-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.office-app-choices>button{display:flex;min-width:0;min-height:58px;box-sizing:border-box;flex-direction:column;align-items:center;justify-content:center;gap:3px;margin:0;padding:10px 8px;border:1px solid rgb(255 255 255 / .12);border-radius:3px;background:rgb(18 20 18 / .68);color:#f5f2ea;text-decoration:none;font:inherit;text-align:center;appearance:none;cursor:pointer}
.office-app-choices>button>span{font-size:13px;font-weight:500}
.office-app-choices small{font-size:10px;color:#bfc6b6}
.office-app-choices>button:focus-visible{outline:2px solid #d7b44a;outline-offset:3px}
.office-intranet-slot{display:inline-flex;align-items:center;align-self:stretch}

/* /bilingual-mobile.css */
/* REV050 — one quiet language control and one mobile footer hierarchy.
   Film geometry, depth layers and the approved Korean desktop copy stay put. */
.header .brand { position: relative; }
.header .brand-context { display: none; }
/* The new descriptor follows the two images, so :last-child no longer names
   the wordmark. Keep its existing aspect and responsive width explicitly. */
.header .brand img:nth-of-type(2) { width: 158px; }
.header .languages {
  position: relative;
  isolation: isolate;
  box-sizing: border-box;
  display: grid;
  grid-template-columns: repeat(2, 44px);
  gap: 0;
  width: 94px;
  min-height: 50px;
  height: 50px;
  padding: 2px;
  border: 1px solid rgb(245 242 234 / .19);
  border-radius: 999px;
  background: rgb(18 20 18 / .75);
  box-shadow: inset 0 1px 0 rgb(245 242 234 / .045);
}
.header .languages::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 2px;
  left: 2px;
  width: 44px;
  height: 44px;
  border-radius: 999px;
  background: #d7b44a;
  box-shadow: inset 0 1px 0 rgb(255 255 255 / .15);
  transform: translateX(0);
  transition: transform 220ms cubic-bezier(.2,.75,.25,1);
  pointer-events: none;
}
.header .languages[data-active-language="ko"]::before { transform: translateX(100%); }
.header .languages > a,
.header .languages > a:first-child,
.header .languages > a:last-child {
  position: relative;
  z-index: 1;
  box-sizing: border-box;
  display: grid;
  place-items: center;
  width: 44px;
  min-width: 44px;
  min-height: 44px;
  height: 44px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: transparent;
  box-shadow: none;
  color: rgb(245 242 234 / .68);
  font-size: 11px;
  font-weight: 650;
  line-height: 1;
  letter-spacing: .035em;
  text-decoration: none;
  touch-action: manipulation;
  transition: color 160ms ease;
}
.header .languages > a:hover { background: transparent; color: #f5f2ea; }
.header .languages > a[aria-current] { background: transparent; box-shadow: none; color: #11140f; }
.header .languages > a:focus-visible { outline: 2px solid #f5f2ea; outline-offset: 2px; }

.office-label-short { display: none; }
#stage[data-sitewide-revision="true"] :is(#difference, #vision-learning, #vision-execution) .future-eyebrow {
  display: flex;
  align-items: center;
  min-height: 44px;
  margin: 0 0 12px;
}
#stage[data-sitewide-revision="true"] .scene--future .future-copy > .future-progress {
  position: absolute;
  inset: 0 0 auto auto;
  display: flex;
  align-items: center;
  gap: 6px;
  width: max-content;
  margin: 0;
  font: 9px/1 monospace;
  letter-spacing: .08em;
}
#stage[data-sitewide-revision="true"] .future-progress > a {
  position: relative;
  box-sizing: border-box;
  display: grid;
  place-items: center;
  min-width: 44px;
  min-height: 44px;
  padding: 0 10px;
  color: rgb(245 242 234 / .53);
  text-decoration: none;
  touch-action: manipulation;
}
#stage[data-sitewide-revision="true"] .future-progress > a::after {
  content: "";
  position: absolute;
  inset: auto 12px 5px;
  height: 1px;
  background: #d7b44a;
  transform: scaleX(0);
  transition: transform 160ms ease;
}
#stage[data-sitewide-revision="true"] .future-progress > a:is(:hover, [aria-current="step"]) { color: #d7b44a; }
#stage[data-sitewide-revision="true"] .future-progress > a[aria-current="step"]::after { transform: scaleX(1); }
#stage[data-sitewide-revision="true"] .future-progress > a:focus-visible { outline: 2px solid #d7b44a; outline-offset: -3px; border-radius: 4px; }

/* English keeps the same semantic hierarchy while allowing Latin words to
   wrap at real spaces. No body is clipped, replaced or independently scrolled. */
html[lang="en"] #stage .copy :is(h1, h2, h3, .scene-subtitle, .story-unit, .future-body, .future-title, .person-bio) {
  word-break: normal;
  overflow-wrap: break-word;
}
html[lang="en"] #stage .copy :is(.chapter-hero h3, .future-hero h2) { letter-spacing: -.04em; }
html[lang="en"] #stage[data-opening-revision="true"] #copy-one .hero h1 { font-size: clamp(62px, min(6.25vw, 10dvh), 90px); }
html[lang="en"] #stage[data-opening-revision="true"] #copy-one .hero-opening { font-size: .64em; letter-spacing: -.04em; }
html[lang="en"] #stage[data-opening-revision="true"] #copy-one .hero-statement { font-size: 1em; letter-spacing: -.055em; }
html[lang="en"] #stage[data-opening-revision="true"] #copy-one .scene-subtitle {
  font-size: min(clamp(19px, 1.7vw, 27px), calc(var(--opening-statement-width) / 16.5));
  letter-spacing: -.025em;
}
html[lang="en"] #stage[data-opening-revision="true"] #copy-two { --reel-size: clamp(38px, min(4.4vw, 6.8dvh), 64px); }
html[lang="en"] #stage[data-opening-revision="true"] #final-vision { --reel-size: clamp(34px, min(3.8vw, 6.3dvh), 56px); }
html[lang="en"] #stage[data-sitewide-revision="true"] .copy:is(#vision, #company-overview, #founder, #identity) {
  --reel-size: clamp(34px, min(3.6vw, 6.5dvh), 54px);
}
html[lang="en"] #stage[data-sitewide-revision="true"] .scene--future .future-hero h2 {
  font-size: clamp(34px, min(3.75vw, 6.7dvh), 56px);
}
html[lang="en"] #stage[data-sitewide-revision="true"] .scene--future-people .future-hero h2 { font-size: clamp(32px, min(3vw, 6dvh), 46px); }
html[lang="en"] #stage[data-sitewide-revision="true"] #company-overview.copy .narrative-label { font-size: 22px; }

@media (max-width: 900px) {
  .header .brand img:nth-of-type(2) { width: 128px; }
}
@media (max-width: 760px) {
  .header { gap: 8px; padding-inline: clamp(12px, calc(10vw - 20px), 16px); }
  .header .header-actions { gap: 6px; }
  .header .brand { min-height: 50px; }
  .header .brand-context {
    position: absolute;
    left: 33px;
    top: 39px;
    display: block;
    width: max-content;
    margin: 0;
    color: rgb(245 242 234 / .5);
    font: 6.5px/1.2 monospace;
    letter-spacing: .11em;
    white-space: nowrap;
  }
  .header .mobile-navigation > summary {
    width: clamp(44px, calc(70vw - 180px), 72px);
    min-width: 44px;
    min-height: 50px;
    padding-inline: 9px;
    gap: 6px;
  }
  #stage .meta { display: none; }
  #stage .office-locations {
    left: 50%;
    right: auto;
    bottom: max(8px, calc(env(safe-area-inset-bottom) + 8px));
    box-sizing: border-box;
    width: max-content;
    max-width: calc(100% - 24px);
    height: 44px;
    min-height: 44px;
    gap: 10px;
    transform: translateX(-50%);
    font-size: 8.5px;
    line-height: 1.4;
    letter-spacing: .025em;
  }
  #stage .office-locations .office-label-long { display: none; }
  #stage .office-locations .office-label-short { display: inline; }
  #stage .office-locations > * + *,
  #stage .office-locations > .office-location-link { padding-left: 10px; background-size: 1px .8em; }
  #stage .office-location-trigger { min-width: 44px; min-height: 44px; height: 44px; }
  #stage .office-location-card { bottom: calc(100% + 12px); }
  #stage:is([data-opening-revision="true"], [data-sitewide-revision="true"]) .scene-navigation {
    left: 50%;
    right: auto;
    top: auto;
    bottom: max(60px, calc(env(safe-area-inset-bottom) + 60px));
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    align-items: center;
    width: 156px;
    height: 48px;
    padding: 1px;
    gap: 2px;
    transform: translateX(-50%);
  }
  #stage:is([data-opening-revision="true"], [data-sitewide-revision="true"]) .scene-navigation button {
    width: 44px;
    height: 44px;
    min-height: 44px;
    flex: 0 0 44px;
    padding: 11px;
  }
  #stage .scene-navigation-count { font-size: 10px; gap: 5px; }
  #stage[data-sitewide-revision="true"] .copy:is(#vision, #company-overview, #founder, #identity, #business, #products, #research) { padding-bottom: 128px; }
  #stage[data-sitewide-revision="true"] :is(#difference, #vision-learning, #vision-execution) .future-eyebrow { margin-bottom: 10px; font-size: 7px; letter-spacing: .1em; }
  #stage[data-sitewide-revision="true"] .scene--future .future-copy > .future-progress { gap: 2px; font-size: 8px; }
  html[lang="en"] #stage[data-opening-revision="true"] #copy-one .hero h1 { font-size: clamp(58px, 17vw, 76px); }
  html[lang="en"] #stage[data-opening-revision="true"] #copy-one .scene-subtitle {
    font-size: min(clamp(18px, 4.8vw, 23px), calc(var(--opening-statement-width) / 16.5));
    line-height: 1.5;
  }
  html[lang="en"] #stage[data-opening-revision="true"] #copy-two { --reel-size: clamp(30px, min(8.7vw, 5.5dvh), 38px); }
  html[lang="en"] #stage[data-opening-revision="true"] #final-vision { --reel-size: clamp(29px, 8vw, 36px); }
  html[lang="en"] #stage[data-sitewide-revision="true"] .copy:is(#vision, #company-overview, #founder, #identity) { --reel-size: clamp(28px, 8vw, 36px); }
  html[lang="en"] #stage[data-sitewide-revision="true"] .scene--future .future-hero h2 { font-size: clamp(29px, 8.4vw, 36px); line-height: 1.2; }
  html[lang="en"] #stage[data-sitewide-revision="true"] .scene--future .future-title { font-size: 19px; line-height: 1.4; }
  html[lang="en"] #stage[data-sitewide-revision="true"] .scene--future .future-body { font-size: 14px; line-height: 1.7; }
  html[lang="en"] #stage[data-sitewide-revision="true"] .scene--future-people .person-bio { font-size: 14px; line-height: 1.45; }
  html[lang="en"] #stage[data-sitewide-revision="true"] #research.copy .business-area-title { font-size: 19px; }
}

@media (max-width: 384px) {
  .header .brand img:nth-of-type(2) { width: 110px; }
  .header .brand-context { left: 28px; font-size: 6px; letter-spacing: .09em; }
}

/* Native390×844 evidence: the full English introduction and three biographies
   exceeded the reading region. Release spacing and portrait height while
   retaining every biography at14px and every action at44px. */
@media (max-width: 760px) and (orientation: portrait) and (min-height: 781px) {
  html[lang="en"] #stage[data-sitewide-revision="true"] .scene--future-people .future-layout { gap: 10px; }
  html[lang="en"] #stage[data-sitewide-revision="true"] .scene--future-people .future-eyebrow { margin-bottom: 6px; }
  html[lang="en"] #stage[data-sitewide-revision="true"] .scene--future-people .future-hero h2 { font-size: 28px; line-height: 1.15; }
  html[lang="en"] #stage[data-sitewide-revision="true"] .scene--future-people .future-body { margin-top: 10px; line-height: 1.55; }
  html[lang="en"] #stage[data-sitewide-revision="true"] .scene--future-people .person-card { grid-template-columns: 40px minmax(0, 1fr); gap: 4px 10px; padding: 6px; }
  html[lang="en"] #stage[data-sitewide-revision="true"] .scene--future-people .person-photo { height: 40px; min-height: 0; }
}

/* Native360×740 English evidence: release unused card/heading space instead
   of reducing copy or44px actions. The compact team keeps13px biographies. */
@media (max-width: 760px) and (orientation: portrait) and (max-height: 780px) {
  html[lang="en"] #stage[data-sitewide-revision="true"] #products.copy .business-area-title { margin-top: 6px; font-size: 18px; }
  html[lang="en"] #stage[data-sitewide-revision="true"] #products.copy .chapter-layout .scene-subtitle { margin-top: 6px; line-height: 1.5; }
  html[lang="en"] #stage[data-sitewide-revision="true"] #products.copy > [data-editorial-content] { gap: 6px; }
  html[lang="en"] #stage[data-sitewide-revision="true"] #products.copy [data-editorial-content] > .product-track,
  html[lang="en"] #stage[data-sitewide-revision="true"] #products.copy [data-editorial-content] > .product-track + .product-track { padding: 6px; gap: 3px; }
  html[lang="en"] #stage[data-sitewide-revision="true"] #products.copy .product-track > .product-emblem { width: 20px; height: 20px; }
  html[lang="en"] #stage[data-sitewide-revision="true"] #products.copy [data-editorial-content] .product-track > h3 { font-size: 15px; line-height: 1.25; }
  html[lang="en"] #stage[data-sitewide-revision="true"] #products.copy [data-editorial-content] .product-track > p:not(.track-eyebrow) { line-height: 1.4; }
  html[lang="en"] #stage[data-sitewide-revision="true"] #research.copy { gap: 10px; }
  html[lang="en"] #stage[data-sitewide-revision="true"] #research.copy .business-area-heading { font-size: 30px; }
  html[lang="en"] #stage[data-sitewide-revision="true"] #research.copy .business-area-title { margin-top: 8px; font-size: 18px; line-height: 1.3; }
  html[lang="en"] #stage[data-sitewide-revision="true"] #research.copy [data-editorial-content] .research-feature { gap: 6px; }
  html[lang="en"] #stage[data-sitewide-revision="true"] #research.copy [data-editorial-content] .research-feature > h3 { font-size: 16.5px; }
  html[lang="en"] #stage[data-sitewide-revision="true"] #research.copy [data-editorial-content] .research-feature > p { line-height: 1.5; }
  html[lang="en"] #stage[data-sitewide-revision="true"] #identity.copy .story-unit--brand { grid-template-rows: 40px auto; gap: 8px; }
  html[lang="en"] #stage[data-sitewide-revision="true"] #identity.copy .story-unit--brand img { height: 40px; }
  html[lang="en"] #stage[data-sitewide-revision="true"] #identity.copy .story-unit--brand p { line-height: 1.65; }
  html[lang="en"] #stage[data-sitewide-revision="true"] .scene--future-people .future-layout { inset: 92px 20px 128px; gap: 6px; }
  html[lang="en"] #stage[data-sitewide-revision="true"] .scene--future-people .future-copy { display: block; width: 100%; }
  html[lang="en"] #stage[data-sitewide-revision="true"] .scene--future-people .future-eyebrow { margin-bottom: 4px; }
  html[lang="en"] #stage[data-sitewide-revision="true"] .scene--future-people .future-hero h2 { font-size: 22px; line-height: 1.15; }
  html[lang="en"] #stage[data-sitewide-revision="true"] .scene--future-people .future-body { margin-top: 8px; font-size: 12.5px; line-height: 1.4; }
  html[lang="en"] #stage[data-sitewide-revision="true"] .scene--future-people .people-grid { gap: 4px; }
  html[lang="en"] #stage[data-sitewide-revision="true"] .scene--future-people .person-card { grid-template-columns: 36px minmax(0, 1fr); gap: 3px 9px; padding: 3px; }
  html[lang="en"] #stage[data-sitewide-revision="true"] .scene--future-people .person-photo { height: 36px; min-height: 0; }
  html[lang="en"] #stage[data-sitewide-revision="true"] .scene--future-people .person-bio { font-size: 13px; line-height: 1.4; }
}

@media (max-width: 760px) and (orientation: landscape) {
  .header { padding-block: 10px; }
  .header .brand-context { top: 38px; }
  /* Native740×390: keep the sea declaration on the lens axis while its two
     lines clear the common navigation row. No film/source position changes. */
  #stage[data-opening-revision="true"] #copy-one .scene-subtitle {
    top: min(var(--opening-sea-y), calc(100dvh - 118px - 1.4em));
    font-size: min(18px, calc(var(--opening-statement-width) / 10.5));
    line-height: 1.4;
  }
  #stage[data-sitewide-revision="true"] #company-overview.copy { padding-top: 70px; }
  #stage[data-sitewide-revision="true"] #company-overview.copy > [data-editorial-content] { gap: 6px; font-size: 11.5px; line-height: 1.5; }
  #stage[data-sitewide-revision="true"] #company-overview.copy > [data-editorial-content] > .narrative-graphic { width: min(300px, 100%); }
  #stage[data-sitewide-revision="true"] #company-overview.copy > [data-editorial-content] > .narrative-graphic + .story-unit--copy { margin-top: 0; }
  #stage[data-sitewide-revision="true"] .scene--future .future-layout { inset: 70px 24px 128px; gap: 16px; }
  #stage[data-sitewide-revision="true"] :is(#difference, #vision-learning, #vision-execution) .future-copy { width: 76%; }
  #stage[data-sitewide-revision="true"] :is(#difference, #vision-learning, #vision-execution) .future-graphic { width: 20%; }
  #stage[data-sitewide-revision="true"] .scene--future .future-eyebrow { font-size: 7px; }
  #stage[data-sitewide-revision="true"] .scene--future .future-hero h2 { font-size: 24px; }
  #stage[data-sitewide-revision="true"] .scene--future .future-title { margin: 10px 0 7px; font-size: 16px; }
  #stage[data-sitewide-revision="true"] .scene--future .future-body { font-size: 11px; line-height: 1.5; }
  #stage[data-sitewide-revision="true"] .scene--future-people .future-layout { gap: 6px; }
  #stage[data-sitewide-revision="true"] .scene--future-people .future-hero h2 { font-size: 18px; line-height: 1.18; }
  #stage[data-sitewide-revision="true"] .scene--future-people .future-body { font-size: 11px; line-height: 1.4; }
  #stage[data-sitewide-revision="true"] .scene--future-people .person-card { grid-template-columns: 36px minmax(0, 1fr); padding: 6px; gap: 4px 8px; }
  #stage[data-sitewide-revision="true"] .scene--future-people .person-photo { width: 36px; height: 36px; min-height: 0; }
  #stage[data-sitewide-revision="true"] .scene--future-people .person-meta { min-height: 36px; }
  #stage[data-sitewide-revision="true"] .scene--future-people .person-meta h3 { display: inline; margin: 0 5px 0 0; font-size: 16px; }
  #stage[data-sitewide-revision="true"] .scene--future-people .person-name { display: inline; font-size: 7px; }
  #stage[data-sitewide-revision="true"] .scene--future-people .person-role { float: right; margin-top: 2px; }
  #stage[data-sitewide-revision="true"] .scene--future-people .person-former { margin-top: 3px; line-height: 1.4; }
  #stage[data-sitewide-revision="true"] .scene--future-people .person-bio { margin-top: 4px; font-size: 11px; line-height: 1.4; }
  #stage[data-sitewide-revision="true"] #products.copy { padding-top: 68px; gap: 2px; }
  #stage[data-sitewide-revision="true"] #products.copy .business-area-heading { font-size: 23px; }
  #stage[data-sitewide-revision="true"] #products.copy [data-editorial-content] > .product-track,
  #stage[data-sitewide-revision="true"] #products.copy [data-editorial-content] > .product-track + .product-track { padding: 3px; gap: 2px; }
  #stage[data-sitewide-revision="true"] #products.copy .product-track > .product-emblem { width: 18px; height: 18px; }
  #stage[data-sitewide-revision="true"] #products.copy [data-editorial-content] .product-track > h3 { font-size: 14px; line-height: 1.3; }
  #stage[data-sitewide-revision="true"] #products.copy [data-editorial-content] .product-track > p:not(.track-eyebrow) { margin: 0 0 2px; font-size: 11px; line-height: 1.35; }
  #stage[data-sitewide-revision="true"] #identity.copy > [data-editorial-content] { inset: 70px calc(var(--gutter) + 32px) auto auto; }
  #stage[data-sitewide-revision="true"] #founder.copy { --founder-width: min(580px, calc(100vw - 112px)); justify-content: flex-start; padding-top: 70px; }
  #stage[data-sitewide-revision="true"] #founder.copy :is(.chapter-kicker, .chapter-line) { display: inline; width: auto; }
  #stage[data-sitewide-revision="true"] #business.copy { padding-top: 68px; gap: 6px; }
  #stage[data-sitewide-revision="true"] #business.copy .business-branch { grid-template-rows: 58px 33px; gap: 4px; }
  #stage[data-sitewide-revision="true"] #business.copy .business-portal { padding-block: 5px; gap: 2px; }
  #stage[data-sitewide-revision="true"] #business.copy .business-portal > [data-business-icon] { width: 20px; height: 20px; }
  #stage[data-sitewide-revision="true"] #business.copy .chapter-hero > h3 { font-size: 20px; line-height: 1.2; }
  #stage[data-sitewide-revision="true"] #research.copy { padding-top: 70px; }
  #stage[data-sitewide-revision="true"] #research.copy .chapter-layout { position: absolute; inset: 70px auto auto 24px; width: min(260px, 36vw); }
  #stage[data-sitewide-revision="true"] #research.copy .business-area-heading { font-size: 21px; }
  #stage[data-sitewide-revision="true"] #research.copy > [data-editorial-content] > .narrative-graphic { inset: auto auto 128px 24px; width: 180px; padding: 8px; }
  #stage[data-sitewide-revision="true"] #research.copy [data-editorial-content] .research-feature { position: absolute; inset: 70px 24px auto auto; margin: 0; padding: 8px; gap: 6px; }
  html[lang="en"] #stage[data-opening-revision="true"] #copy-one .hero h1 { font-size: 58px; }
  html[lang="en"] #stage[data-opening-revision="true"] #copy-one .scene-subtitle { font-size: min(18px, calc(var(--opening-statement-width) / 16.5)); }
  html[lang="en"] #stage[data-opening-revision="true"] :is(#copy-two, #final-vision) { --reel-size: 26px; }
  html[lang="en"] #stage[data-opening-revision="true"] :is(#copy-two, #final-vision) > [data-opening-content] { font-size: 11px; line-height: 1.5; }
  html[lang="en"] #stage[data-sitewide-revision="true"] .copy:is(#vision, #company-overview, #founder, #identity) { --reel-size: 24px; }
  html[lang="en"] #stage[data-sitewide-revision="true"] .scene--future .future-hero h2 { font-size: 24px; }
  html[lang="en"] #stage[data-sitewide-revision="true"] .scene--future .future-title { font-size: 16px; }
  html[lang="en"] #stage[data-sitewide-revision="true"] .scene--future .future-body { font-size: 11px; line-height: 1.5; }
  html[lang="en"] #stage[data-sitewide-revision="true"] .scene--future-people .future-hero h2 { font-size: 18px; }
  html[lang="en"] #stage[data-sitewide-revision="true"] .scene--future-people .person-bio { font-size: 11px; line-height: 1.4; }
  html[lang="en"] #stage[data-sitewide-revision="true"] #research.copy .narrative-label { font-size: 30px; }
}

@media (prefers-reduced-motion: reduce) {
  .header .languages::before,
  .header .languages > a,
  #stage[data-sitewide-revision="true"] .future-progress > a::after { transition: none; }
}

/* /detail-footer.css */
/* REV053 — same shared Office controls, portalled above the scrolling story.
   Derived from office-locations.css and its final bilingual-mobile overrides. */
.product-detail #detail-footer .office-locations {
  position: absolute;
  z-index: 16;
  left: 50%;
  bottom: 17px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  width: max-content;
  max-width: calc(100% - 420px);
  min-height: 44px;
  transform: translateX(-50%);
  color: #f5f2ea80;
  font: 400 9px/1.5 monospace;
  letter-spacing: .1em;
  pointer-events: auto;
}
.product-detail #detail-footer .office-location { position: relative; min-width: 0; }
.product-detail #detail-footer .office-location-trigger {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 2px;
  border: 0;
  border-radius: 3px;
  background: transparent;
  color: inherit;
  font: inherit;
  letter-spacing: inherit;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  touch-action: manipulation;
}
.product-detail #detail-footer .office-location-trigger:hover,
.product-detail #detail-footer .office-location-trigger[aria-expanded="true"] { color: var(--gold, #d7b44a); }
.product-detail #detail-footer .office-location-trigger:focus-visible {
  outline: 2px solid var(--gold, #d7b44a);
  outline-offset: 3px;
}
.product-detail #detail-footer .office-locations > * + * {
  border-left: 0;
  padding-left: 16px;
  background-image: linear-gradient(rgb(245 242 234 / .2), rgb(245 242 234 / .2));
  background-position: left center;
  background-size: 1px .9em;
  background-repeat: no-repeat;
}
.product-detail #detail-footer .office-location-card {
  position: absolute;
  bottom: calc(100% + 8px);
  left: 50%;
  width: 258px;
  max-width: calc(100vw - 32px);
  padding: 16px 18px;
  border: 1px solid rgb(215 180 74 / .42);
  border-radius: 6px;
  background: rgb(9 11 11 / .94);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  box-shadow: 0 8px 28px rgb(0 0 0 / .25);
  transform: translateX(-50%);
  color: var(--editorial-paper, #e1ddcf);
  font-family: Pretendard, "Noto Sans KR", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", sans-serif;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.7;
  letter-spacing: -.01em;
  text-align: left;
  white-space: normal;
}
.product-detail #detail-footer .office-location-card[hidden] { display: none; }
.product-detail #detail-footer .office-location-card::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -5px;
  width: 8px;
  height: 8px;
  border-right: 1px solid rgb(215 180 74 / .42);
  border-bottom: 1px solid rgb(215 180 74 / .42);
  background: #090b0b;
  transform: translateX(-50%) rotate(45deg);
}
.product-detail #detail-footer .office-location-card > p {
  margin: 0 0 7px;
  color: var(--gold, #d7b44a);
  font-size: 11px;
  font-weight: 550;
}
.product-detail #detail-footer .office-location-card address { margin: 0; font-style: normal; overflow-wrap: break-word; }
.product-detail #detail-footer .office-location-card address span {
  display: block;
  margin-top: 4px;
  color: rgb(245 242 234 / .55);
  font-size: 11px;
  font-variant-numeric: tabular-nums;
}

@media (min-width: 761px) and (max-width: 1100px) {
  .product-detail #detail-footer .office-locations { gap: 10px; }
  .product-detail #detail-footer .office-locations > * + * { padding-left: 10px; }
}
@media (min-width: 761px) and (max-width: 850px) {
  .product-detail #detail-footer .office-locations { left: calc(50% + 20px); max-width: calc(100% - 360px); gap: 7px; }
  .product-detail #detail-footer .office-locations > * + *,
.product-detail #detail-footer .office-locations > .office-location-link { padding-left: 7px; }
}
@media (min-width: 761px) and (max-height: 850px) {
  .product-detail #detail-footer .office-locations { bottom: 9px; }
}

@media (max-width: 760px) {
  .product-detail #detail-footer .office-locations {
    bottom: max(72px, calc(env(safe-area-inset-bottom) + 68px));
    gap: 6px;
    width: max-content;
    max-width: calc(100% - 32px);
    font-size: 8px;
    letter-spacing: .06em;
  }
  .product-detail #detail-footer .office-locations > * + * { padding-left: 6px; }
  .product-detail #detail-footer .office-location-trigger { padding-right: 0; padding-left: 0; }
  .product-detail #detail-footer .office-locations > .office-location-link { padding-left: 6px; }
  .product-detail #detail-footer .office-location { position: static; }
  .product-detail #detail-footer .office-location-card {
    position: absolute;
    left: 50%;
    right: auto;
    bottom: calc(100% + 8px);
    width: min(300px, calc(100vw - 32px));
    max-width: none;
    margin: 0;
    transform: translateX(-50%);
    font-size: 12.5px;
  }
  .product-detail #detail-footer .office-location-card::after { display: none; }
}

@media (min-width: 641px) and (max-width: 760px) and (max-height: 560px) and (orientation: landscape) {
  .product-detail #detail-footer .office-locations {
    left: 196px;
    right: 180px;
    bottom: max(6px, calc(env(safe-area-inset-bottom) + 6px));
    width: auto;
    max-width: none;
    transform: none;
  }
  .product-detail #detail-footer .office-location-card {
    bottom: calc(100% + 8px);
  }
}

.product-detail #detail-footer .office-label-short { display: none; }
@media (max-width: 760px) {
  .product-detail #detail-footer .office-locations {
    left: 50%;
    right: auto;
    bottom: max(8px, calc(env(safe-area-inset-bottom) + 8px));
    box-sizing: border-box;
    width: max-content;
    max-width: calc(100% - 24px);
    height: 44px;
    min-height: 44px;
    gap: 10px;
    transform: translateX(-50%);
    font-size: 8.5px;
    line-height: 1.4;
    letter-spacing: .025em;
  }
  .product-detail #detail-footer .office-locations .office-label-long { display: none; }
  .product-detail #detail-footer .office-locations .office-label-short { display: inline; }
  .product-detail #detail-footer .office-locations > * + *,
.product-detail #detail-footer .office-locations > .office-location-link { padding-left: 10px; background-size: 1px .8em; }
  .product-detail #detail-footer .office-location-trigger { min-width: 44px; min-height: 44px; height: 44px; }
  .product-detail #detail-footer .office-location-card { bottom: calc(100% + 12px); }
}


.product-detail #detail-footer { position:fixed; inset:0; z-index:16; pointer-events:none; }
.product-detail #detail-footer::before { content:""; position:absolute; left:0; right:0; bottom:0; height:80px; background:linear-gradient(to top,rgb(9 11 11 / .97),transparent); pointer-events:none; }
.product-detail #detail-footer .office-locations { pointer-events:auto; }

/* One thin shared capsule; address disclosures retain their independent layers. */
body.product-detail #detail-footer nav.office-locations {
  box-sizing: border-box;
  width: max-content;
  max-width: calc(100% - 48px);
  height: 32px;
  min-height: 32px;
  padding: 0 8px;
  gap: 0;
  flex-wrap: nowrap;
  overflow: visible;
  border: 1px solid rgb(178 189 177 / .23);
  border-radius: 999px;
  background: rgb(12 15 13 / .9);
  box-shadow: 0 2px 8px rgb(0 0 0 / .12);
  color: rgb(245 242 234 / .76);
  font-size: 9px;
  line-height: 1.4;
  letter-spacing: .04em;
}
body.product-detail #detail-footer nav.office-locations > * + * {
  padding-left: 0;
  border-left: 0;
  background-image: linear-gradient(rgb(188 197 184 / .24), rgb(188 197 184 / .24));
  background-position: left center;
  background-size: 1px 12px;
  background-repeat: no-repeat;
}
body.product-detail #detail-footer nav.office-locations .office-location-trigger {
  box-sizing: border-box;
  min-width: 0;
  height: 30px;
  min-height: 30px;
  padding: 0 12px;
  border: 0;
  border-radius: 0;
  background-color: transparent;
  box-shadow: none;
  transition: color .2s ease, background-color .2s ease;
}
body.product-detail #detail-footer nav.office-locations .office-location-trigger:hover,
body.product-detail #detail-footer nav.office-locations .office-location-trigger[aria-expanded="true"] {
  background-color: rgb(157 167 141 / .06);
  color: var(--gold, #d7b44a);
}
body.product-detail #detail-footer nav.office-locations .office-location-trigger:focus-visible {
  outline: 1px solid rgb(215 180 74 / .8);
  outline-offset: -3px;
}
@media (max-width: 760px) {
  body.product-detail #detail-footer nav.office-locations {
    max-width: calc(100% - 24px);
    height: 28px;
    min-height: 28px;
    padding: 0 5px;
    gap: 0;
    font-size: 8px;
    letter-spacing: .01em;
  }
  body.product-detail #detail-footer nav.office-locations .office-location-trigger {
    min-width: 0;
    height: 26px;
    min-height: 26px;
    padding: 0 8px;
  }
}
@media (prefers-reduced-motion: reduce) {
  body.product-detail #detail-footer nav.office-locations .office-location-trigger { transition: none; }
}
body.product-detail #detail-footer nav.office-locations .office-copyright {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  height: 30px;
  padding: 0 8px;
  color: rgb(245 242 234 / .46);
  font-size: 8px;
  letter-spacing: 0;
  white-space: nowrap;
}
body.product-detail #detail-footer nav.office-locations .office-copyright-short { display: none; }
@media (max-width: 760px) {
  body.product-detail #detail-footer nav.office-locations .office-copyright {
    height: 26px;
    padding: 0 6px;
    font-size: 7px;
  }
  body.product-detail #detail-footer nav.office-locations .office-copyright-long { display: none; }
  body.product-detail #detail-footer nav.office-locations .office-copyright-short { display: inline; }
}

/* /research.css */
/* An independent visual language for the lab; shared brand controls remain intact. */
html:has(.research-page){background:#030405;scroll-behavior:smooth;scroll-padding-top:130px}
body.research-page{--rd-paper:#eeeee8;--rd-muted:#a0a7a7;--rd-gold:#c7b98a;--rd-line:#cbd8df20;background:#030405;color:var(--rd-paper);overflow-x:clip}
.research-page .header{z-index:100;background:linear-gradient(#030405e8,transparent)}
.research-page .brand{background:transparent}
.research-page .rd-atmosphere{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;background:#030405}
#rd-cosmos{width:100%;height:100%;display:block;opacity:.9}
.rd-light-plane{position:absolute;inset:0;background:linear-gradient(105deg,#030405cc 0%,transparent 66%,#03040544),linear-gradient(0deg,#030405 0%,transparent 35%);pointer-events:none}
#rd-main,.rd-footer{position:relative;z-index:1}
#rd-main{width:100%;margin:0 auto}
#rd-main :is(h1,h2,h3,p,figure){margin:0}
#rd-main button{font:inherit;cursor:pointer}
#rd-main a,#rd-main button{-webkit-tap-highlight-color:transparent}
.rd-loading{padding:35vh var(--gutter);color:var(--rd-muted)}
.rd-hero{min-height:100svh;position:relative;padding:clamp(150px,18vh,220px) var(--gutter) 65px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;isolation:isolate}
.rd-hero::after{content:"";position:absolute;bottom:0;left:var(--gutter);right:var(--gutter);height:1px;background:linear-gradient(90deg,#bdc9cc55,transparent)}
.rd-eyebrow{font:500 10px/1.7 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.15em;text-transform:uppercase;color:var(--rd-gold)}
.rd-hero .rd-eyebrow{margin-bottom:38px!important}
.rd-hero-title{font-size:clamp(64px,7.9vw,142px);line-height:.96;letter-spacing:-.065em;font-weight:500;max-width:1100px;position:relative;z-index:2;text-wrap:balance}
.rd-hero-line{display:block}
.rd-hero-accent{color:#aeb8ba;font-weight:350}
.rd-hero .rd-lead{margin-top:34px!important;max-width:580px;color:#bdc3c2;font-size:clamp(15px,1.4vw,20px);line-height:1.75;word-break:keep-all;text-wrap:pretty}
.rd-hero-meta{display:flex;align-items:center;gap:28px;margin-top:38px!important;color:#aab6b5;font:10px/1.7 ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase}
.rd-hero-meta span+span{border-left:1px solid #aaa3;padding-left:28px}
.rd-hero-actions{display:flex;gap:24px;align-items:center;margin-top:40px}
.rd-hero-actions a{display:inline-flex;align-items:center;gap:30px;min-height:48px;border-bottom:1px solid #d7d4be70;font-size:13px;color:#dfdfd1}
.rd-hero-actions a::after{content:'↓';font-size:20px;font-weight:300}
.rd-section{position:relative;max-width:1440px;margin:0 auto;padding:115px var(--gutter);scroll-margin-top:80px;border-bottom:1px solid var(--rd-line)}
.rd-section-head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:16px 70px;align-items:start;margin-bottom:58px}
.rd-section-head>.rd-eyebrow{grid-column:1/-1;margin-bottom:10px!important}
.rd-section-head h2{font-size:clamp(32px,3.5vw,54px);font-weight:450;line-height:1.2;letter-spacing:-.045em;word-break:keep-all;text-wrap:balance}
.rd-section-head>.rd-lead,.rd-section-head>p:not(.rd-eyebrow){font-size:16px;color:var(--rd-muted);line-height:1.9;word-break:keep-all;text-wrap:pretty;padding-top:4px}
.rd-section-head em,.rd-section-head mark{background:none;color:var(--rd-gold);font-style:normal}
.rd-section:nth-of-type(even){background:transparent}
.rd-grid,.rd-architecture-grid,.rd-autonomy-grid,.rd-capability-grid,.rd-reliability-grid,.rd-assessment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.rd-autonomy-grid,.rd-assessment-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.rd-grid>*,.rd-autonomy-grid>*,.rd-capability-grid>*,.rd-reliability-grid>*,.rd-assessment-grid>*{min-width:0;padding:28px 0;border-top:1px solid #bfc8cc44}
#rd-main h3{font-size:19px;font-weight:500;letter-spacing:-.025em;line-height:1.4}
.rd-grid p,.rd-autonomy-grid p,.rd-capability-grid p,.rd-reliability-grid p,.rd-assessment-grid p{color:var(--rd-muted);font-size:14px;line-height:1.85;margin-top:15px!important;word-break:keep-all}
.rd-grid small,.rd-autonomy-grid small,.rd-capability-grid small,.rd-reliability-grid small,.rd-assessment-grid small{display:block;color:var(--rd-gold);font:10px/1.7 ui-monospace,monospace;letter-spacing:.1em;margin-bottom:16px}
.rd-flow{position:relative;display:flex;align-items:stretch;gap:0;margin:38px 0;isolation:isolate}
.rd-node{position:relative;min-width:0;flex:1;padding:28px 24px;border-top:1px solid #b9c8cc50;border-bottom:1px solid #b9c8cc22;background:linear-gradient(135deg,#d3d9da08,transparent)}
.rd-node+.rd-node{border-left:1px solid #b9c8cc26}
.rd-node h3,.rd-node strong{font-size:16px;font-weight:500;display:block}
.rd-node p,.rd-node span{font-size:12px;line-height:1.8;color:var(--rd-muted);display:block;margin-top:8px!important}
.rd-node small{font:10px ui-monospace,monospace;color:var(--rd-gold);display:block;margin-bottom:18px}
.rd-flow svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.rd-architecture-grid{gap:40px}
.rd-architecture-grid>article{min-width:0;border-top:1px solid var(--rd-line);padding-top:24px}
.rd-architecture-grid p{font-size:13px;line-height:1.8;color:var(--rd-muted);margin-top:14px!important}
.rd-architecture-grid .rd-flow{display:flex;flex-direction:column;margin:24px 0 0}
.rd-architecture-grid .rd-node{padding:16px 18px;border-left:1px solid #b9c8cc26;border-bottom:1px solid #b9c8cc26}
.rd-architecture-grid .rd-node+.rd-node::before{content:'↓';position:absolute;right:20px;top:-13px;color:var(--rd-gold);font-size:16px}
.rd-explorer{margin-top:65px;border:1px solid #d5d9d82e;background:#050709c9;position:relative;overflow:hidden}
.rd-explorer::before{content:"";position:absolute;top:0;left:12%;width:40%;height:1px;background:linear-gradient(90deg,transparent,#e1e7d8,transparent);box-shadow:0 0 20px #c7d3d28c}
.rd-tabs{display:flex;border-bottom:1px solid #d5d9d826}
.rd-tabs>[role="tab"]{flex:1;min-height:68px;border:0;border-right:1px solid #d5d9d826;background:transparent;color:#858f93;font-size:17px!important;letter-spacing:.02em}
.rd-tabs>[role="tab"][aria-selected="true"]{color:var(--rd-paper);background:linear-gradient(0deg,#b7bec212,transparent);box-shadow:inset 0 -2px var(--rd-gold)}
.rd-tabs>[role="tab"]:hover{color:#eee}
.rd-explorer-panel{padding:36px 40px;display:grid;grid-template-columns:1fr 1fr;gap:36px;min-height:280px}
.rd-explorer-panel p{color:var(--rd-muted);line-height:1.85;font-size:15px;margin-top:14px!important;word-break:keep-all}
.rd-explorer-panel ul{padding:0 0 0 18px;color:#c5cccb;line-height:2;font-size:13px}
.rd-explorer-panel .rd-flow{grid-column:1/-1;margin:4px 0 0}
.rd-engine{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:60px;align-items:center;min-height:700px}
.rd-engine .rd-section-head{display:block;margin-bottom:26px}
.rd-engine .rd-section-head h2{font-size:clamp(54px,6vw,90px);letter-spacing:-.055em;margin:20px 0!important}
.rd-engine .rd-lead{font-size:17px;line-height:1.85;color:var(--rd-muted)}
.rd-engine-visual{position:relative;min-width:0;aspect-ratio:1.15;isolation:isolate;overflow:hidden;background:#030405;box-shadow:0 25px 100px #000a;border:1px solid #d7e1e01a}
.rd-engine-visual::after{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(90deg,#03040588,transparent 20%,transparent 80%,#03040577),linear-gradient(0deg,#030405c7,transparent 25%,transparent 85%,#03040555);box-shadow:inset 0 0 65px #0007}
.rd-engine-visual img{width:100%;height:100%;object-fit:cover;filter:brightness(.85) saturate(.4);display:block}
.rd-engine-visual iframe{position:absolute;inset:0;width:100%;height:100%;border:0;z-index:2;background:#030405}
.rd-engine-visual [data-film-play],.rd-engine-visual button{position:absolute;z-index:4;bottom:24px;left:24px;border:1px solid #ced6d740;border-radius:30px;padding:10px 16px;background:#090b0bed;color:#dce1df;font-size:11px!important;min-height:44px}
.rd-feature-list{list-style:none;padding:0;margin:30px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:0 24px}
.rd-feature-list li{padding:16px 0;border-top:1px solid var(--rd-line);font-size:13px;color:#d2d8d6;line-height:1.7}
.rd-feature-list li span,.rd-feature-list li small{display:block;font-size:11px;color:#899599;margin-top:4px}
.rd-engine-caption{font:10px/1.7 ui-monospace,monospace;color:#829091;margin-top:12px!important;letter-spacing:.03em}
.rd-workflow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid #aebfc344}
.rd-workflow>article{padding:28px 30px 36px 0;min-width:0;border-bottom:1px solid #aebfc326}
.rd-workflow small{font:10px/1.5 ui-monospace,monospace;color:var(--rd-gold);display:block;margin-bottom:20px}
.rd-workflow p{font-size:13px;line-height:1.85;color:var(--rd-muted);margin-top:14px!important}
.rd-roadmap{list-style:none;padding:0;margin:0;counter-reset:phase}
.rd-roadmap>li,.rd-roadmap>article{position:relative;display:grid;grid-template-columns:100px 1fr 1fr;gap:36px;align-items:start;padding:36px 0;border-top:1px solid #b3c1c42b}
.rd-roadmap small,.rd-roadmap .rd-phase{font:11px ui-monospace,monospace;color:var(--rd-gold)}
.rd-roadmap h3{max-width:300px}
.rd-roadmap p{color:var(--rd-muted);font-size:14px;line-height:1.85}
.rd-evolution{padding:40px 0;margin-top:35px;border-top:1px solid var(--rd-line)}
.rd-evolution p{color:var(--rd-muted);font-size:14px;line-height:1.8;margin-top:16px!important}
.rd-closing{padding:100px 0 20px;text-align:center}
.rd-closing h2{font-size:clamp(38px,5vw,76px);font-weight:400;letter-spacing:-.05em;line-height:1.15}
.rd-closing p{color:var(--rd-muted);font-size:16px;line-height:1.8;max-width:650px;margin:25px auto!important}
.rd-closing a{display:inline-flex;align-items:center;min-height:48px;border-bottom:1px solid #adad8f;margin-top:25px;font-size:14px;gap:40px}
.rd-closing a::after{content:'↗'}
.rd-footer{max-width:1440px;margin:auto;padding:70px var(--gutter) 125px;border-top:1px solid #d1d7d52b;display:flex;justify-content:space-between;gap:30px;background:#030405}
.rd-footer-wordmark{font-size:22px;letter-spacing:-.04em;line-height:1.1}
.rd-footer-wordmark span{font:9px/2 ui-monospace,monospace;letter-spacing:.18em;color:#859190}
.rd-footer>p{font-size:12px;line-height:1.8;color:#8b9594;margin:0}
body.research-page #detail-footer{position:absolute;left:0;right:0;bottom:18px;height:44px}
body.research-page #detail-footer nav.office-locations{bottom:0;max-width:calc(100% - 48px);left:50%}
.rd-back-top{display:grid;place-items:center;min-width:44px;height:44px;border:1px solid #c3cec43b;border-radius:50%;color:#c3c7b0;font-size:22px}
.rd-reveal{opacity:0;transform:translateY(24px);transition:opacity .9s,transform 1s cubic-bezier(.2,.6,.3,1)}
.rd-reveal.rd-entered{opacity:1;transform:none}
@media(min-width:1101px){.rd-engine:nth-of-type(odd) .rd-engine-visual{order:-1}.rd-engine-visual{margin-left:-25px;margin-right:-25px;width:calc(100% + 50px)}}
@media(max-width:1100px){.rd-section{padding:85px var(--gutter)}.rd-hero-title{font-size:clamp(64px,8.3vw,100px)}.rd-engine{gap:32px;min-height:580px}.rd-section-head{gap:28px}.rd-autonomy-grid,.rd-assessment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rd-feature-list{grid-template-columns:1fr}.rd-architecture-grid{gap:22px}}
@media(max-width:760px){
 html:has(.research-page){scroll-padding-top:105px}
 .rd-hero{min-height:calc(100svh - 20px);padding:140px 24px 55px;justify-content:center}
 .rd-hero-title{font-size:clamp(48px,10.6vw,76px);line-height:1.02;letter-spacing:-.065em}
 .rd-hero .rd-eyebrow{font-size:8px;margin-bottom:28px!important}
 .rd-hero .rd-lead{font-size:14px;line-height:1.8;margin-top:28px!important;max-width:34ch}
 .rd-hero-meta{gap:15px;font-size:8px;letter-spacing:.05em;flex-wrap:wrap;margin-top:25px!important}
 .rd-hero-meta span+span{padding-left:15px}
 .rd-hero-actions{margin-top:30px;gap:16px}.rd-hero-actions a{font-size:11px;gap:18px}
 .rd-section{padding:65px 24px;scroll-margin-top:95px}
 .rd-section-head{display:block;margin-bottom:34px}
 .rd-section-head>.rd-eyebrow{font-size:9px;margin-bottom:22px!important}
 .rd-section-head h2{font-size:34px;line-height:1.25;max-width:16ch}
 .rd-section-head>.rd-lead,.rd-section-head>p:not(.rd-eyebrow){font-size:14px;line-height:1.85;margin-top:24px!important}
 .rd-grid,.rd-architecture-grid,.rd-capability-grid,.rd-reliability-grid{grid-template-columns:1fr;gap:20px}
 .rd-autonomy-grid,.rd-assessment-grid{grid-template-columns:1fr 1fr;gap:20px}
 #rd-main h3{font-size:17px}.rd-grid p,.rd-autonomy-grid p,.rd-capability-grid p,.rd-reliability-grid p,.rd-assessment-grid p{font-size:12px;line-height:1.85}
 .rd-grid>*,.rd-autonomy-grid>*,.rd-capability-grid>*,.rd-reliability-grid>*,.rd-assessment-grid>*{padding:23px 0}
 .rd-flow{flex-direction:column;margin:25px 0}.rd-node{padding:20px}.rd-node+.rd-node{border-left:0;border-top:0}.rd-node+.rd-node::before{content:'↓';position:absolute;right:22px;top:-10px;color:var(--rd-gold)}
 .rd-explorer{margin-top:38px}.rd-tabs>[role="tab"]{font-size:14px!important;min-height:60px}.rd-explorer-panel{padding:25px 22px;display:block;min-height:360px}.rd-explorer-panel p{font-size:13px}.rd-explorer-panel ul{font-size:12px}
 .rd-engine{display:flex;flex-direction:column;gap:30px;align-items:stretch;min-height:0}.rd-engine .rd-section-head h2{font-size:60px}.rd-engine .rd-lead{font-size:14px}.rd-engine-visual{aspect-ratio:1.1;width:100%;order:2}.rd-engine-copy{order:1}.rd-feature-list{grid-template-columns:1fr 1fr;gap:0 18px;margin-top:22px}.rd-feature-list li{font-size:11px;padding:12px 0}.rd-feature-list li span{font-size:10px}.rd-engine-caption{order:3;font-size:9px}
 .rd-workflow{grid-template-columns:1fr 1fr}.rd-workflow>article{padding:22px 18px 28px 0}.rd-workflow p{font-size:12px}.rd-workflow small{margin-bottom:16px}
 .rd-roadmap>li,.rd-roadmap>article{grid-template-columns:52px minmax(0,1fr);gap:14px;padding:26px 0}.rd-roadmap p{grid-column:2;font-size:13px}.rd-roadmap h3{font-size:18px!important}.rd-roadmap small{font-size:9px;line-height:1.7}
 .rd-closing{padding-top:55px}.rd-closing h2{font-size:39px}.rd-closing p{font-size:14px}.rd-closing a{font-size:13px}
 .rd-footer{padding:42px 24px 120px;gap:20px}.rd-footer-wordmark{font-size:18px}.rd-footer>p{font-size:10px}.rd-back-top{width:44px;flex-shrink:0}
 body.research-page #detail-footer nav.office-locations{max-width:calc(100% - 24px)}
}
@media(max-width:380px){.rd-hero-title{font-size:46px}.rd-hero{padding-top:125px}.rd-section-head h2{font-size:31px}.rd-autonomy-grid,.rd-assessment-grid{gap:16px}.rd-footer>p{display:none}}
@media(prefers-reduced-motion:reduce){html:has(.research-page){scroll-behavior:auto}.rd-reveal{opacity:1;transform:none;transition:none}#rd-main *{animation:none!important;transition:none!important}}
/* Research story components. */
.rd-hero .rd-hero-meta{margin:0 0 34px!important;font-size:9px;line-height:1.7}
.rd-hero-title{font-size:clamp(64px,6.9vw,118px)}
.rd-hero-statement{margin-top:30px!important;color:#bec6c5;font-size:17px;line-height:1.8;word-break:keep-all}
.rd-hero-coordinate{font:9px ui-monospace,monospace;letter-spacing:.16em;color:#7e898c}
.rd-hero-actions a::after{content:none}
.rd-orbit{position:absolute;width:56vw;height:56vw;max-width:800px;max-height:800px;right:-10vw;top:10%;z-index:-1;opacity:.5;border:1px solid #b7c8cb26;border-radius:50%;transform:rotate(-30deg) scaleY(.6)}
.rd-orbit i{position:absolute;inset:12%;border:1px solid #c9d2d336;border-radius:50%}.rd-orbit i:nth-child(2){inset:25%}.rd-orbit i:nth-child(3){inset:38%}.rd-orbit span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(30deg);font:9px/1.8 ui-monospace,monospace;color:#a9b4b9;letter-spacing:.2em}
.rd-part-label{position:relative;max-width:1440px;margin:0 auto;padding:40px var(--gutter) 0;font:9px/1.8 ui-monospace,monospace;letter-spacing:.16em;color:#748388}
.rd-research-fields{display:flex;flex-wrap:wrap;gap:12px 35px;border-top:1px solid var(--rd-line);padding-top:28px}
.rd-research-fields span{font-size:12px;color:#adb8b9;line-height:2}
.rd-icon{width:24px;height:24px;flex-shrink:0;color:var(--rd-gold);vertical-align:middle}
.rd-card-index,.rd-step-index{display:block;font:10px/1.6 ui-monospace,monospace;letter-spacing:.1em;color:var(--rd-gold);margin-bottom:20px}
.rd-system-triad{padding:18px 0}.rd-system-triad .rd-node{border:1px solid var(--rd-line);margin:6px 0;padding:14px 18px}
.rd-explorer-title{padding:26px 40px;border-bottom:1px solid var(--rd-line);display:flex;align-items:center;justify-content:space-between;gap:25px}
.rd-explorer-panel-head{display:flex;gap:24px;align-items:center}.rd-explorer-panel-head>.rd-icon{width:44px;height:44px}.rd-explorer-panel-head h3{font-size:24px!important;margin-top:10px!important}
.rd-explorer-io{grid-column:1/-1;display:flex;align-items:center;gap:24px}.rd-explorer-io .rd-node{min-height:115px}.rd-explorer-io>.rd-icon{width:35px}
.rd-explorer-flow{grid-column:1/-1;border-top:1px solid var(--rd-line);padding-top:20px;font-size:12px!important;color:var(--rd-gold)!important}
.rd-explorer-example{grid-column:1/-1;display:grid;grid-template-columns:150px 1fr;gap:24px;align-items:baseline}.rd-explorer-example p{font-size:13px!important;margin:0!important}
.rd-engine-copy>h3{font-size:23px!important;line-height:1.45!important;margin-bottom:20px!important;max-width:20ch;text-wrap:balance}
.rd-feature-list li{display:flex;gap:13px;align-items:center}.rd-feature-list li span{margin:0;color:#b8c3c2;font-size:12px;line-height:1.7}
.rd-feature-list .rd-icon{width:22px;height:22px}
.rd-engine-flow{font:10px/1.9 ui-monospace,monospace;color:#9a9f8b;margin-top:25px!important;padding-top:18px;border-top:1px solid var(--rd-line);text-wrap:pretty}
.rd-visual-caption{position:absolute;z-index:4;left:20px;top:20px;font:8px/1.5 ui-monospace,monospace;color:#aab4b5;letter-spacing:.06em;pointer-events:none}
.rd-small-note{font-size:11px!important;line-height:1.9!important;color:#7f8f92!important;margin-top:28px!important;max-width:90ch}
.rd-workflow{list-style:none;padding:0;margin:0}.rd-workflow>li{padding:28px 30px 36px 0;min-width:0;border-bottom:1px solid #aebfc326}.rd-workflow li p{font-size:13px;line-height:1.85;color:var(--rd-muted);margin-top:14px!important}
.rd-durability-line{display:flex;gap:35px;flex-wrap:wrap;padding-top:30px;border-top:1px solid var(--rd-line);margin-top:20px;color:#bac3bf;font:11px/1.8 ui-monospace,monospace}
.rd-assessment-grid article>.rd-eyebrow{font-size:8px;color:var(--rd-gold);margin:0 0 22px!important;min-height:30px}
.rd-closing>p{font-size:clamp(34px,4.7vw,70px)!important;font-weight:400;letter-spacing:-.045em;color:#e0e5e0;max-width:none;line-height:1.2!important}.rd-closing em{font-style:normal;color:#93a3a6}.rd-closing a::after{content:none}
@media(max-width:760px){
 .rd-hero-title{font-size:clamp(46px,11vw,72px)}.rd-hero .rd-hero-meta{font-size:7px;gap:12px;letter-spacing:.07em}.rd-hero-meta span+span{padding-left:12px}.rd-hero-statement{font-size:13px;margin-top:26px!important}.rd-hero-coordinate{font-size:7px;letter-spacing:.04em}.rd-orbit{width:95vw;height:95vw;right:-45vw;top:20%;opacity:.4}
 .rd-part-label{padding:30px 24px 0;font-size:8px}.rd-research-fields{gap:8px 20px}.rd-research-fields span{font-size:10px}
 .rd-explorer-title{padding:22px;display:block}.rd-explorer-title h3{margin-top:10px!important}.rd-explorer-panel-head h3{font-size:20px!important}.rd-explorer-panel-head{gap:15px}.rd-explorer-panel>p{margin:20px 0!important}.rd-explorer-io{display:grid;grid-template-columns:1fr;gap:12px}.rd-explorer-io>.rd-icon{transform:rotate(90deg);justify-self:center;width:24px;height:24px}.rd-explorer-io .rd-node{min-height:0}.rd-explorer-example{display:block}.rd-explorer-example p{margin-top:10px!important}
 .rd-engine-copy>h3{font-size:21px!important;max-width:none}.rd-feature-list li span{font-size:11px}.rd-feature-list li{gap:10px}.rd-engine-flow{font-size:9px}.rd-visual-caption{font-size:7px;left:14px;top:14px}.rd-workflow>li{padding:23px 17px 28px 0}.rd-workflow li p{font-size:12px}.rd-durability-line{gap:12px 24px;font-size:10px}.rd-small-note{font-size:10px!important}.rd-closing>p{font-size:34px!important}
}
/* The UI studies are environmental cinema, not embedded video cards. */
.rd-engine{display:block;min-height:780px;isolation:isolate;overflow:hidden;padding-top:145px;padding-bottom:145px}
.rd-engine .rd-engine-copy{position:relative;z-index:5;width:46%;max-width:570px}
.rd-engine .rd-engine-visual{position:absolute;inset:0 -2% 0 auto;width:76%;height:100%;margin:0;aspect-ratio:auto;border:0;box-shadow:none;z-index:-1;background:#030405;opacity:.9;mask-image:linear-gradient(90deg,transparent 0%,#000 32%,#000 85%,transparent 100%),linear-gradient(0deg,transparent 0%,#000 18%,#000 82%,transparent 100%);mask-composite:intersect;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 32%,#000 85%,transparent 100%),linear-gradient(0deg,transparent 0%,#000 18%,#000 82%,transparent 100%);-webkit-mask-composite:source-in}
.rd-engine .rd-engine-visual img{object-fit:cover;filter:brightness(.65) saturate(.2) blur(2px)}
.rd-engine-visual iframe{filter:brightness(.85) saturate(.3) contrast(1.18)}
.rd-engine-visual::before{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);mask-image:linear-gradient(105deg,#000 0%,#000 22%,transparent 46%,transparent 64%,#000 92%);-webkit-mask-image:linear-gradient(105deg,#000 0%,#000 22%,transparent 46%,transparent 64%,#000 92%)}
.rd-engine-visual::after{background:linear-gradient(110deg,#030405ee 0%,#030405a6 25%,transparent 49%,#edecdc12 55%,transparent 61%,#03040588 85%),linear-gradient(0deg,#030405,transparent 22%,transparent 78%,#030405);box-shadow:inset 0 0 100px #0007}
.rd-engine .rd-visual-caption{top:auto;left:auto;right:15%;bottom:80px;font-size:8px;z-index:5}
.rd-engine .rd-film-control{left:auto!important;right:16%!important;bottom:30px!important;z-index:6!important;pointer-events:auto}
.rd-engine-note{font-size:12px!important;line-height:1.85!important;color:#8e9ca0!important;margin-top:24px!important;word-break:keep-all}
#rd-autonomy{padding-top:540px;overflow:hidden;isolation:isolate}
#rd-autonomy>.rd-engine-visual{position:absolute;inset:0 0 auto;width:100%;height:580px;border:0;box-shadow:none;aspect-ratio:auto;z-index:-1;mask-image:linear-gradient(0deg,transparent,#000 28%,#000 80%,transparent);-webkit-mask-image:linear-gradient(0deg,transparent,#000 28%,#000 80%,transparent)}
#rd-autonomy>.rd-engine-visual .rd-visual-caption{top:auto;bottom:130px;left:var(--gutter)}
#rd-autonomy>.rd-engine-visual .rd-film-control{bottom:120px!important;left:auto!important;right:var(--gutter)!important}
.rd-vision-flow .rd-node::after{content:"";position:absolute;bottom:-1px;left:0;width:30%;height:1px;background:#e2dfbe;box-shadow:0 0 12px #d5dacd99;animation:rd-signal 6s linear infinite;opacity:0}
.rd-vision-flow .rd-node:nth-child(2)::after{animation-delay:1s}.rd-vision-flow .rd-node:nth-child(3)::after{animation-delay:2s}.rd-vision-flow .rd-node:nth-child(4)::after{animation-delay:3s}.rd-vision-flow .rd-node:nth-child(5)::after{animation-delay:4s}.rd-vision-flow .rd-node:nth-child(6)::after{animation-delay:5s}
@keyframes rd-signal{0%,65%,100%{opacity:0;transform:translateX(0)}10%{opacity:.8}40%{opacity:0;transform:translateX(230%)}}
@media(max-width:1100px){.rd-engine{min-height:700px;padding-top:110px;padding-bottom:110px}.rd-engine .rd-engine-copy{width:50%}.rd-engine .rd-engine-visual{width:80%;right:-6%}}
@media(max-width:760px){
 .rd-engine{padding-top:70px;padding-bottom:400px;min-height:0}
 .rd-engine .rd-engine-copy{width:100%;max-width:none}
 .rd-engine .rd-engine-visual{inset:auto -18% -25px;width:136%;height:490px;opacity:.95;mask-image:linear-gradient(0deg,transparent,#000 22%,#000 65%,transparent);-webkit-mask-image:linear-gradient(0deg,transparent,#000 22%,#000 65%,transparent)}
 .rd-engine .rd-visual-caption{bottom:90px;right:22%;font-size:7px}
 .rd-engine .rd-film-control{bottom:35px!important;right:23%!important}
 .rd-engine-visual::before{backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
 .rd-engine-visual::after{background:linear-gradient(110deg,#030405b0 0%,transparent 45%,#f2f1d612 55%,transparent 65%,#030405a0),linear-gradient(0deg,#030405,transparent 25%,transparent 72%,#030405)}
 #rd-autonomy{padding-top:400px}
 #rd-autonomy>.rd-engine-visual{height:430px;width:136%;left:-18%;right:-18%}
 #rd-autonomy>.rd-engine-visual .rd-visual-caption{left:20%;bottom:80px;font-size:7px}
 #rd-autonomy>.rd-engine-visual .rd-film-control{bottom:70px!important;right:20%!important}
 .rd-engine-note{font-size:11px!important}
}
.rd-index{position:fixed;z-index:60;left:var(--gutter);bottom:25px;font-size:11px}
.rd-index>summary{display:flex;gap:24px;align-items:center;cursor:pointer;list-style:none;border:1px solid #c6cfca35;background:#0b0e0ff2;color:#c9cebc;border-radius:30px;min-height:44px;padding:0 20px;box-shadow:0 5px 25px #0006;font:10px/1.4 ui-monospace,monospace}
.rd-index>summary::-webkit-details-marker{display:none}.rd-index>summary::after{content:'+';font-size:16px}.rd-index[open]>summary::after{content:'−'}
.rd-index nav{position:absolute;bottom:58px;left:0;width:330px;max-width:calc(100vw - 48px);max-height:65svh;overflow:auto;background:#090c0ef7;border:1px solid #d1dad733;border-radius:12px;padding:14px 20px;box-shadow:0 12px 45px #000b;backdrop-filter:blur(18px)}
.rd-index nav a{display:flex;gap:16px;align-items:center;min-height:44px;border-bottom:1px solid #c2d0cd18;color:#c3cbc9;font-size:11px;line-height:1.5}
.rd-index nav a:last-child{border:0}.rd-index nav a:hover{color:#e5dbb8}.rd-index nav a>span:first-child{font:9px ui-monospace,monospace;color:#a99c72;min-width:18px}
.rd-index nav ol,.rd-index nav ul{list-style:none;padding:0;margin:0}
@media(max-width:760px){.rd-index{left:24px;bottom:16px}.rd-index>summary{font-size:9px;padding:0 16px;gap:18px}.rd-index nav{max-height:60svh;width:312px}}
/* Anchors land immediately beneath the shared header, without competing scrolls. */
html:has(.research-page){scroll-behavior:auto;scroll-padding-top:0;overflow-x:clip}
.rd-hero{overflow:hidden;scroll-margin-top:0}
#rd-main{scroll-margin-top:0}
@media(max-width:760px){.rd-hero{scroll-margin-top:0}}
@media(max-width:760px){body.research-page #detail-footer{bottom:84px}.rd-footer{padding-bottom:182px}}
/* Technical headings are legible immediately; motion belongs to the research reel. */
.rd-reveal,.rd-reveal.rd-entered{opacity:1;transform:none;transition:none}
.rd-section-head>.rd-lead,.rd-section-head>p:not(.rd-eyebrow),.rd-engine .rd-lead{color:#adb8b9}
#rd-autonomy{padding-top:125px;min-height:780px}
#rd-autonomy>.rd-engine-visual{inset:0 -2% auto auto;width:80%;height:620px;mask-image:linear-gradient(90deg,transparent,#000 30%,#000 85%,transparent),linear-gradient(0deg,transparent,#000 25%,#000 80%,transparent);mask-composite:intersect;-webkit-mask-image:linear-gradient(90deg,transparent,#000 30%,#000 85%,transparent),linear-gradient(0deg,transparent,#000 25%,#000 80%,transparent);-webkit-mask-composite:source-in}
#rd-autonomy>.rd-section-head{display:block;width:46%;min-height:300px;margin-bottom:50px;position:relative;z-index:4}
#rd-autonomy>.rd-section-head h2{margin:22px 0!important}
#rd-autonomy>.rd-section-head .rd-lead{margin-top:24px!important;font-size:15px}
#rd-autonomy>.rd-autonomy-grid{position:relative;z-index:4;margin-top:50px;background:linear-gradient(#03040599,#030405e8)}
#rd-autonomy>.rd-engine-visual .rd-visual-caption{bottom:100px;left:auto;right:10%}
#rd-autonomy>.rd-engine-visual .rd-film-control{bottom:40px!important;right:10%!important}
@media(max-width:760px){
 #rd-autonomy{padding-top:65px}
 #rd-autonomy>.rd-section-head{width:100%;min-height:0;margin-bottom:0}
 #rd-autonomy>.rd-section-head .rd-lead{font-size:14px}
 #rd-autonomy>.rd-engine-visual{inset:260px -18% auto;width:136%;height:430px}
 #rd-autonomy>.rd-autonomy-grid{margin-top:380px}
 #rd-autonomy>.rd-engine-visual .rd-visual-caption{right:auto;left:20%;bottom:100px}
 #rd-autonomy>.rd-engine-visual .rd-film-control{bottom:45px!important;right:20%!important}
}
@media(max-height:560px) and (min-width:600px){
 .rd-hero{display:grid;grid-template-columns:1.05fr 1fr;grid-template-rows:auto auto auto;align-content:center;column-gap:50px;min-height:100svh;padding:100px 32px 35px}
 .rd-hero .rd-hero-meta{grid-column:1/-1;margin:0 0 20px!important;font-size:7px}
 .rd-hero-title{grid-column:1;grid-row:2/4;font-size:46px;line-height:.98}
 .rd-hero-statement{grid-column:2;grid-row:2;margin:8px 0 0!important;font-size:12px;line-height:1.7}
 .rd-hero-actions{grid-column:2;grid-row:3;margin-top:18px;align-self:start;gap:12px}.rd-hero-actions a{font-size:10px;min-height:40px}.rd-hero-coordinate{font-size:7px}
 .rd-hero .rd-orbit{right:-18vw;top:-15%}
}
body.research-page #detail-footer{top:auto;bottom:18px}
@media(max-width:760px){.rd-footer{padding-bottom:112px}}
/* Fade only the imagery; playback controls and demo attribution stay readable. */
.research-page [data-engine-film]{mask-image:none!important;-webkit-mask-image:none!important;background:transparent!important}
.research-page [data-engine-film]>:is(iframe,img){mask-image:linear-gradient(90deg,transparent,#000 25%,#000 85%,transparent),linear-gradient(0deg,transparent,#000 20%,#000 80%,transparent);mask-composite:intersect;-webkit-mask-image:linear-gradient(90deg,transparent,#000 25%,#000 85%,transparent),linear-gradient(0deg,transparent,#000 20%,#000 80%,transparent);-webkit-mask-composite:source-in}
.research-page .rd-visual-caption{color:#a9b5b4}
[data-engine-film][data-reel-focus="false"]>.rd-film-control,[data-engine-film][data-reel-focus="false"]>.rd-visual-caption{opacity:0;pointer-events:none}
.research-page [data-engine-film]::after{mask-image:linear-gradient(90deg,transparent,#000 25%,#000 85%,transparent),linear-gradient(0deg,transparent,#000 20%,#000 80%,transparent);mask-composite:intersect;-webkit-mask-image:linear-gradient(90deg,transparent,#000 25%,#000 85%,transparent),linear-gradient(0deg,transparent,#000 20%,#000 80%,transparent);-webkit-mask-composite:source-in}
.research-page [data-engine-film]>iframe{filter:brightness(1.15) saturate(.3) contrast(1.16)}
/* Research compositor budget: static chrome above one live cinema surface. */
body.research-page .header{z-index:1000;isolation:isolate;background:transparent;filter:none;backdrop-filter:none;-webkit-backdrop-filter:none}
/* Extend the header shade beyond its box so the shared atmosphere stays continuous. */
body.research-page .header::before{content:"";position:absolute;inset:0 0 -12px;z-index:-1;pointer-events:none;background:linear-gradient(180deg,#030405 0%,#030405f5 32%,#030405ad 55%,#03040538 72%,#03040500 88%,#03040500 100%)}
body.research-page .header :is(.desktop-navigation,.languages,.mobile-navigation>summary,.nav-dropdown,.mobile-menu-panel){background:#111411f5;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;filter:none;box-shadow:inset 0 1px #f5f2ea0b}
body.research-page .header .brand img{filter:none}
body.research-page .header .languages::before{display:none}
body.research-page .header .languages>a{transition:none}
body.research-page .header .languages>a[aria-current]{background:#d7b44a!important;border-radius:999px;color:#11140f!important;box-shadow:none}
body.research-page .rd-index nav,body.research-page .office-location-card{backdrop-filter:none;-webkit-backdrop-filter:none;background:#0b0e0ff7}
.research-page [data-engine-film]::before{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;mask-image:none;-webkit-mask-image:none;background:linear-gradient(108deg,#030405b3 0%,transparent 39%,#e0d7b210 55%,transparent 71%,#03040580)}
.research-page [data-engine-film]>iframe{filter:none!important;will-change:auto}
.research-page [data-engine-film]>img{filter:blur(4px) brightness(.65) saturate(.3);transform:scale(1.015)}
.research-page [data-engine-film]::after{box-shadow:none}
.rd-engine{min-height:0;padding-top:110px;padding-bottom:70px}
.rd-engine .rd-engine-copy{min-height:500px}
.rd-engine .rd-engine-visual{height:720px;max-height:720px}
.rd-engine>.rd-blueprint{margin-top:50px}
@media(max-width:760px){
 .rd-engine{padding-top:70px;padding-bottom:55px}
 .rd-engine .rd-engine-copy{min-height:0}
 .rd-engine .rd-engine-visual{top:440px;bottom:auto;height:430px;max-height:430px}
 .rd-engine>.rd-blueprint{margin-top:420px}
 .rd-engine .rd-engine-note+.rd-engine-flow{margin-bottom:0}
 #rd-magi>.rd-engine-visual{top:565px}
 #rd-magi>.rd-blueprint{margin-top:420px}
}
/* Diagram spacing must override the shared figure reset. */
.research-page #rd-main .rd-blueprint{margin:56px 0 0;left:auto;right:auto}
.research-page #rd-main .rd-engine>.rd-blueprint{margin:50px 0 0;width:100%;max-width:none}
@media(max-width:760px){
 .research-page #rd-main .rd-blueprint{margin-top:36px}
 .research-page #rd-main .rd-engine>.rd-blueprint{margin-top:420px}
}
/* Clip environmental reels without creating nested scroll containers. */
.rd-engine,#rd-autonomy{overflow:clip}
body.research-page .header :is(.nav-dropdown,.mobile-menu-panel){background:#101310}
/* Public engineering views: responsibilities, interfaces and review criteria. */
.rd-component-matrix{width:100%;border-collapse:collapse;margin:32px 0 0;font-size:13px;line-height:1.75;text-align:left}
.rd-component-matrix caption{text-align:left;font:10px/1.6 ui-monospace,monospace;letter-spacing:.1em;color:#8c999a;padding:0 0 18px}
.rd-component-matrix th,.rd-component-matrix td{padding:20px 20px 20px 0;vertical-align:top;border-bottom:1px solid #b8c3c323}
.rd-component-matrix thead th{font-size:10px;font-weight:400;letter-spacing:.07em;color:#899695;border-bottom-color:#b8c3c342}
.rd-component-matrix tbody th{font-size:16px;font-weight:400;color:#dde1d9;min-width:120px}
.rd-component-matrix td{color:#a8b3b0;width:29%}
.rd-architecture-boundary,.rd-architecture-feedback{max-width:100%;font-size:12px;line-height:1.9;color:#98a8a5;padding:20px 0;border-bottom:1px solid #bcc4ba22}
.rd-engine-io{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:25px 0 0;border-top:1px solid #c6cdb825;padding-top:18px}
.rd-engine-io>div{min-width:0}.rd-engine-io dt{font:9px/1.6 ui-monospace,monospace;letter-spacing:.1em;color:#a5a486;margin-bottom:8px}
.rd-engine-io dd{margin:0;font-size:11px;line-height:1.85;color:#a4afac}
.rd-flow .rd-node{background:transparent;padding:22px 18px;border-color:#b9c8cc24}
.rd-flow .rd-node strong{font-size:13px;font-weight:400;line-height:1.65}
.rd-flow .rd-node span{font-size:11px;color:#869693}
.rd-card-index,.rd-step-index{color:#9f9e83}
.rd-reliability-grid>*,.rd-capability-grid>*,.rd-assessment-grid>*,.rd-autonomy-grid>*{border-top-color:#b9c5bc28}
@media(max-width:760px){
 .rd-component-matrix,.rd-component-matrix tbody,.rd-component-matrix tr,.rd-component-matrix th,.rd-component-matrix td{display:block;width:100%}
 .rd-component-matrix thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .rd-component-matrix tbody tr{padding:18px 0;border-top:1px solid #bac7ba32}
 .rd-component-matrix tbody th{padding:0 0 14px;border:0;font-size:18px}
 .rd-component-matrix td{padding:7px 0;border:0;display:grid;grid-template-columns:70px 1fr;gap:14px;font-size:12px}
 .rd-component-matrix td::before{content:attr(data-label);color:#7f9290;font-size:10px}
 .rd-engine-io{gap:18px}.rd-engine-io dd{font-size:11px}
 .rd-engine{display:flex;flex-direction:column;align-items:stretch;gap:0}
 .rd-engine .rd-engine-copy{order:0}
 .rd-engine .rd-engine-visual{order:1;position:relative;inset:auto!important;width:calc(100% + 48px);height:330px;max-height:330px;margin:25px -24px 0;flex:none}
 .research-page #rd-main .rd-engine>.rd-blueprint{order:2;margin-top:32px}
 #rd-autonomy{display:flex;flex-direction:column}
 #rd-autonomy>.rd-section-head{order:0}
 #rd-autonomy>.rd-engine-visual{order:1;position:relative;inset:auto;width:calc(100% + 48px);height:330px;flex:none;margin:22px -24px 0}
 #rd-autonomy>.rd-autonomy-grid{order:2;margin-top:22px}
 #rd-autonomy>.rd-blueprint{order:3}
}
.rd-evaluation-table{width:100%;border-collapse:collapse;text-align:left;font-size:12px;line-height:1.85;margin-top:35px}
.rd-evaluation-table caption{text-align:left;color:#b9c1b3;font-size:13px;padding:0 0 18px}
.rd-evaluation-table th,.rd-evaluation-table td{padding:19px 22px 19px 0;border-bottom:1px solid #bfccbd26;vertical-align:top}
.rd-evaluation-table thead th{font-size:10px;color:#8b9b97;font-weight:400;letter-spacing:.06em}
.rd-evaluation-table tbody th{font-weight:400;color:#c8d0c5;width:20%}
.rd-evaluation-table td{color:#9caca6;width:40%}
@media(max-width:760px){
 .rd-evaluation-table,.rd-evaluation-table tbody,.rd-evaluation-table tr,.rd-evaluation-table th,.rd-evaluation-table td{display:block;width:100%}
 .rd-evaluation-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .rd-evaluation-table tbody tr{padding:20px 0;border-top:1px solid #bccbbd28}
 .rd-evaluation-table tbody th{padding:0 0 12px;border:0;font-size:14px}
 .rd-evaluation-table td{border:0;padding:7px 0;display:grid;grid-template-columns:68px 1fr;gap:15px}
 .rd-evaluation-table td::before{content:attr(data-label);font-size:10px;color:#7f9590}
}
@media(max-width:760px){
 .rd-component-matrix caption,.rd-evaluation-table caption{display:block;width:100%;box-sizing:border-box;text-align:left;word-break:keep-all;line-height:1.8}
}
@media(max-width:760px){.rd-evaluation-table tbody th{width:100%}}
.rd-architecture-boundary>.rd-eyebrow,.rd-architecture-feedback>.rd-eyebrow{display:block;margin-bottom:10px!important}
/* Research chapter rail: a stable overview, with a compact top menu on small screens. */
@media(min-width:1101px){
 #rd-main{width:calc(100% - 260px);max-width:1440px;margin-left:260px;margin-right:auto;--gutter:clamp(28px,3vw,48px)}
 .rd-index{left:24px;top:132px;bottom:auto;width:212px;border:1px solid #aebeb322;border-radius:14px;background:#0b0e0ff5;padding:17px 13px;box-sizing:border-box;box-shadow:0 12px 45px #0003}
 .rd-index>summary{border:0;background:none;box-shadow:none;border-radius:0;min-height:28px;padding:0 7px 14px;justify-content:space-between;gap:10px;font-size:9px;pointer-events:none}
 .rd-index>summary::after{display:none}
 .rd-index nav{position:static;bottom:auto;width:100%;max-width:none;max-height:calc(100svh - 228px);padding:0;border:0;border-radius:0;box-shadow:none;background:none!important;overflow:auto;scrollbar-width:thin}
 .rd-index nav a{font-size:10.5px;line-height:1.5;min-height:35px;padding:7px 8px;gap:11px;border:0;border-radius:7px;color:#82918e}
 .rd-index nav a>span:first-child{font-size:8px;min-width:15px;color:#6f8179}
 .rd-index nav a[aria-current]{background:#c3c9a40c;color:#e0e5da;box-shadow:inset 2px 0 #b3b78e}
 .rd-index nav a[aria-current]>span:first-child{color:#c2c69e}
 .rd-engine .rd-engine-copy{width:50%}
}
@media(max-width:1100px){
 .rd-index{position:fixed;left:24px;right:24px;top:105px;bottom:auto;width:auto}
 .rd-index>summary{justify-content:space-between;min-height:44px;background:#0b0e0ff7}
 .rd-index nav{top:54px;bottom:auto;max-height:calc(100svh - 185px);width:100%;max-width:none;box-sizing:border-box}
 .rd-index nav a[aria-current]{color:#e1e4cd;background:#bbc49a0c}
 .rd-hero{padding-top:190px}
}
.rd-source-scope{font-size:11px;line-height:1.9;color:#8e9e98;margin:0 0 28px!important;max-width:90ch;padding-left:16px;border-left:1px solid #b9c5ae40}
@media(max-width:1100px){.rd-index nav{background:#0b0e0f!important}}
.rd-magi-delta{position:relative;z-index:5;margin-top:55px;padding:30px 0;border-top:1px solid #b6c2b332;background:linear-gradient(90deg,#050908e6,#05090890)}
.rd-magi-delta>h3{margin-top:15px!important;font-size:23px!important;font-weight:400!important}
.rd-magi-delta>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:28px}
.rd-magi-delta h4{margin:0 0 10px;font-size:13px;font-weight:400;color:#c6d1c6}
.rd-magi-delta article p{font-size:12px;line-height:1.9;color:#8e9f96}
@media(max-width:760px){.rd-magi-delta{order:2;margin-top:25px}.rd-magi-delta>div{grid-template-columns:1fr;gap:22px}.rd-engine>.rd-blueprint{order:3!important}}
@media(min-width:1101px){.rd-footer{width:calc(100% - 260px);max-width:1440px;margin-left:260px;margin-right:auto;--gutter:clamp(28px,3vw,48px);z-index:0}}
/* Corporate research center identity, distinct from its parent business page. */
.rd-hero{min-height:100svh;padding-top:150px;padding-bottom:64px;justify-content:center;gap:0}
.rd-breadcrumb{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-bottom:32px;font-size:11px;line-height:1.7;color:#758780;position:relative;z-index:3}
.rd-breadcrumb a{display:inline-flex;align-items:center;gap:12px;min-height:38px;color:#c4cdc4;border-bottom:1px solid #a6b89d45}
.rd-breadcrumb a:hover{color:#f0f3e9;border-bottom-color:#cad4b6}
.rd-breadcrumb a:focus-visible{outline:1px solid #c6d3b1;outline-offset:5px}
.rd-breadcrumb>span{font-size:10px;color:#80918a}
.rd-hero .rd-hero-meta{margin:0 0 23px!important;font-size:9px;letter-spacing:.14em;color:#92a294}
.rd-hero-title{font-size:clamp(54px,5.45vw,88px);line-height:1.14;letter-spacing:-.055em;font-weight:450;max-width:100%;text-wrap:normal}
.rd-hero-title:lang(en){font-size:clamp(46px,5.05vw,80px);letter-spacing:-.05em;line-height:1.07}
.rd-hero-accent{color:#c2ccc5;font-weight:400}
#rd-main .rd-hero-mission{margin-top:28px;font-size:clamp(23px,2.2vw,34px);line-height:1.45;letter-spacing:-.025em;font-weight:400;color:#e2e7dc;max-width:900px;word-break:keep-all}
.rd-hero-statement{margin-top:23px!important;font-size:15px;line-height:1.9;max-width:650px;color:#99aaa0}
.rd-hero-actions{margin-top:29px}
/* Current position uses type and a discrete terminal dot, not a left-edge marker. */
.rd-index nav a{position:relative}
.rd-index nav a[aria-current]{box-shadow:none!important;background:transparent!important;border-radius:0;color:#e7ecdf!important;font-weight:500;text-decoration:none!important}
.rd-index nav a[aria-current]>span:first-child{color:#d3dcc5}
.rd-index nav a[aria-current]::after{content:'';display:block;flex:none;width:3px;height:3px;margin-left:auto;border-radius:50%;background:#d1d8bd}
.rd-index nav a:focus-visible{outline:1px solid #afbc9e;outline-offset:-2px;box-shadow:none;text-decoration:none}
@media(max-width:1100px){.rd-hero{padding-top:188px}.rd-hero-title{font-size:clamp(50px,6.8vw,74px)}}
@media(max-width:760px){
 .rd-hero{min-height:100svh;padding:181px 24px 52px;justify-content:center}
 .rd-breadcrumb{gap:12px;margin-bottom:24px;font-size:10px}.rd-breadcrumb>span{font-size:9px}
 .rd-hero .rd-hero-meta{font-size:7px;line-height:1.8;margin-bottom:20px!important;letter-spacing:.09em}
 .rd-hero-title{font-size:clamp(38px,10vw,55px);line-height:1.2;letter-spacing:-.055em}
 .rd-hero-title:lang(en){font-size:clamp(33px,9vw,48px);line-height:1.13}
 #rd-main .rd-hero-mission{margin-top:24px;font-size:23px;line-height:1.5}
 .rd-hero-mission:lang(en){font-size:21px!important}
 .rd-hero-statement{font-size:13px;line-height:1.9;margin-top:20px!important}
 .rd-hero-statement br{display:none}.rd-hero-actions{gap:18px;flex-wrap:wrap;margin-top:26px}
}
@media(max-height:560px) and (min-width:600px){
 .rd-hero{display:flex;padding:178px 32px 50px;min-height:100svh;align-items:flex-start}
 .rd-hero-title,.rd-hero-title:lang(en){font-size:48px;line-height:1.13}
 .rd-breadcrumb{margin-bottom:22px}.rd-hero .rd-hero-meta{margin-bottom:20px!important}
 #rd-main .rd-hero-mission{font-size:24px;margin-top:24px}.rd-hero-statement{font-size:13px}
}
.rd-breadcrumb a{border-bottom:0;font-size:12px;min-height:44px}
.rd-breadcrumb a>span{display:grid;place-items:center;width:28px;height:28px;border:1px solid #a9b99c55;border-radius:50%;font-size:14px}
.rd-breadcrumb a:hover>span{border-color:#cad4b6;background:#aabb9309}
@media(max-width:760px){.rd-breadcrumb a{font-size:10px}.rd-breadcrumb a>span{width:26px;height:26px}}

/* Research index: right-hand floating rail, vertically centered. */
@media(min-width:1101px){
 #rd-main,.rd-footer{margin-left:0;margin-right:260px}
 .rd-index{left:auto;right:24px;top:50%;bottom:auto;transform:translateY(-50%);max-height:calc(100svh - 240px)}
 .rd-index nav{max-height:calc(100svh - 320px)}
}

/* Simultaneous engine briefs: three vertical cards within one comparison surface. */
.rd-engine-briefs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:24px}
.rd-engine-brief{display:flex;flex-direction:column;min-width:0;padding:24px 22px;border:1px solid #b2c0b523;background:#0a0e0c9c}
.rd-engine-brief-head{display:flex;align-items:center;gap:14px}
.rd-engine-brief-head .rd-icon{width:32px;height:32px;flex:none;color:#b7bd99}
.rd-engine-brief h4{margin:0;font-size:22px;font-weight:450;letter-spacing:-.03em}
.rd-engine-brief h5{margin:20px 0 0;font-size:16px;line-height:1.6;font-weight:450;color:#dce2dc;word-break:keep-all}
.rd-engine-brief-copy{margin:14px 0 24px;font-size:13px;line-height:1.85;color:var(--rd-muted);word-break:keep-all}
.rd-engine-brief dl{margin:auto 0 0}
.rd-engine-brief dl>div{border-top:1px solid var(--rd-line);padding:16px 0 0;margin-top:16px}
.rd-engine-brief dt{font:10px/1.5 ui-monospace,monospace;color:#b7bd99;letter-spacing:.06em}
.rd-engine-brief dd{margin:8px 0 0;font-size:12px;line-height:1.8;color:#abb6b0;word-break:keep-all}
@media(max-width:900px){.rd-engine-briefs{grid-template-columns:1fr;padding:18px;gap:14px}.rd-engine-brief{padding:22px}.rd-engine-brief-copy{margin-bottom:12px}.rd-engine-brief h5{margin-top:16px}}
@media(min-width:901px){.rd-engine-brief dl>div{min-height:90px;box-sizing:border-box}}

/* Independent reliability properties, not a numbered sequence. */
#rd-durability .rd-reliability-grid{gap:16px;align-items:stretch}
#rd-durability .rd-reliability-grid>.rd-card{padding:28px 24px;border:1px solid #b2c0b52e;background:#0a0e0cc7;min-width:0}
#rd-durability .rd-reliability-grid>.rd-card h3{margin:0;font-weight:450}
#rd-durability .rd-reliability-grid>.rd-card p{margin-bottom:0}
@media(max-width:760px){#rd-durability .rd-reliability-grid>.rd-card{padding:24px 22px}}

/* Remove the bespoke research footer band; retain shared location controls. */
body.research-page .rd-footer{border:0;background:none;padding:0;display:block;height:88px}

/* /research-diagrams.css */
/* Public functional models; private implementation detail and performance claims excluded. */
.rd-functional-figure{position:relative;margin:56px 0 0;padding:28px 0 20px;color:#c3cdc5;border-top:1px solid #8ca18e25;isolation:isolate;max-width:100%;box-sizing:border-box}
.rd-blueprint-heading{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 20px}.rd-bp-kicker{width:100%;font:9px/1.5 ui-monospace,SFMono-Regular,monospace;letter-spacing:.13em;color:#91a292}.rd-blueprint-heading h3{margin:0;font-size:19px;font-weight:450;line-height:1.5;letter-spacing:-.015em}.rd-fn-status{margin:0 0 0 auto;font:10px/1.6 ui-monospace,SFMono-Regular,monospace;color:#899b8d;max-width:330px;text-align:right}.rd-blueprint-drawing{margin:34px 0 0;max-width:900px}.rd-fn-svg{display:block;width:100%;height:auto;overflow:visible}.rd-fn-node>path,.rd-fn-node>rect{stroke:#9eb6a5;stroke-width:.85;fill:#050a07;fill-opacity:.94}.rd-fn-node--boundary>path,.rd-fn-node--boundary>rect{stroke:#b3b6a0;stroke-dasharray:4 5}.rd-fn-node--condition>path{stroke:#b8b69b}.rd-fn-node--actor>path,.rd-fn-node--actor>rect{stroke:#c2cbbd}.rd-fn-node text{fill:#c7d1c8;stroke:none;font-family:inherit;font-size:18px;font-weight:400;letter-spacing:0}.rd-fn-edge>path{stroke:#8fa897;stroke-width:.9;fill:none}.rd-fn-edge--control>path{stroke:#beb99c;stroke-dasharray:5 4}.rd-fn-edge--research>path{stroke:#8c9b8b;stroke-dasharray:1 7}.rd-fn-edge text{fill:#a3b5a8;stroke:#040806;stroke-width:5;paint-order:stroke;stroke-linejoin:round;font-family:inherit;font-size:14px;letter-spacing:0}.rd-fn-svg marker path{stroke:#a8b5a5;stroke-width:1.2}.rd-fn-edge--research>path{animation:rd-fn-flow 22s linear infinite;animation-play-state:paused}.rd-functional-figure.is-active .rd-fn-edge--research>path{animation-play-state:running}.rd-fn-mobile{display:none}.rd-fn-legend{display:flex;flex-wrap:wrap;gap:10px 24px;margin:18px 0 12px;font:10px/1.6 ui-monospace,SFMono-Regular,monospace;color:#8c9d90}.rd-fn-legend>span{display:flex;align-items:center;gap:9px}.rd-fn-legend i{display:inline-block;width:24px;height:0;border-top:1px solid #9cb09f}.rd-fn-legend-control i{border-top-style:dashed;border-color:#b8b39a}.rd-fn-legend-research i{border-top-style:dotted}.rd-fn-legend-store i{height:11px;width:13px;border:1px solid #9cb09f;border-radius:50% / 20%}.rd-functional-figure figcaption{font-size:12px;line-height:1.85;max-width:850px;color:#8f9f93;margin:0}.rd-fn-type-note,.rd-fn-lane-note{font-size:12px;line-height:1.85;color:#afbaa9;border-left:1px solid #adb79555;padding-left:14px;margin:22px 0}.rd-engine>.rd-functional-figure{position:relative;z-index:2;background:linear-gradient(90deg,#030806e8,#030806cf 70%,#03080666);padding:26px 22px 20px;width:min(100%,950px)}
.rd-fn-classification{border-top:1px solid #a1b4a635}.rd-fn-class-row{display:grid;grid-template-columns:105px minmax(0,1fr) 140px;gap:20px;align-items:center;padding:22px 10px;border-bottom:1px solid #a1b4a625;font-size:14px;line-height:1.7}.rd-fn-class-row strong{font-weight:500;color:#d0d7cc}.rd-fn-class-row em{font-style:normal;font-size:11px;color:#8e9f91}.rd-fn-planned{border-bottom-style:dashed;color:#98a393}.rd-fn-planned em{color:#c0b68e}.rd-fn-anchor{margin-top:38px;padding-top:20px;border-top:1px dashed #a4b19a3b}.rd-fn-mini-title{font:10px/1.6 ui-monospace,SFMono-Regular,monospace;letter-spacing:.1em;color:#a0b19e}.rd-fn-anchor-route{display:flex;align-items:center;gap:18px;margin:20px 0;font-size:14px;line-height:1.6}.rd-fn-anchor-route span{flex:1}.rd-fn-anchor-route b{font-size:18px;font-weight:400;color:#8da48d}.rd-fn-anchor>p:last-child{font-size:12px;color:#8d9f90;line-height:1.8}.rd-fn-lanes{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:30px}.rd-fn-lane{border-top:1px solid #96ad9c6b}.rd-fn-lane h4{font:11px/1.6 ui-monospace,SFMono-Regular,monospace;letter-spacing:.12em;margin:17px 0 25px;color:#b3c4b2}.rd-fn-lane ol{list-style:none;margin:0;padding:0}.rd-fn-lane li{position:relative;min-height:65px;line-height:1.7;font-size:13px;padding-left:20px;border-left:1px solid #8da29155}.rd-fn-lane li:before{content:"";position:absolute;left:-3px;top:8px;width:5px;height:5px;border-radius:50%;background:#9eb69e}.rd-fn-lane li:last-child{border-left-color:transparent}
@keyframes rd-fn-flow{to{stroke-dashoffset:-160}}
@media(max-width:760px){.rd-functional-figure{margin-top:34px;padding:22px 0 14px}.rd-blueprint-heading h3{font-size:18px}.rd-fn-status{margin:0;width:100%;text-align:left;font-size:10px}.rd-blueprint-drawing{margin-top:24px}.rd-fn-svg{display:none}.rd-fn-mobile{display:block}.rd-fn-components{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.rd-fn-component{border-left:1px solid #91ab966b;padding:10px 12px;color:#c0cdbf;font-size:13px;line-height:1.65}.rd-fn-component--condition{border-left-style:dashed;border-color:#bab18b}.rd-fn-component--store{border-bottom:1px solid #91ab963b}.rd-fn-relations{margin:28px 0 0}.rd-fn-relation{margin:0 0 16px;padding-bottom:14px;border-bottom:1px solid #8da29422}.rd-fn-relation dt{display:flex;flex-wrap:wrap;gap:7px 12px;font-size:13px;line-height:1.75;color:#bdcabc}.rd-fn-relation dt>span{color:#8fa990}.rd-fn-relation dd{margin:6px 0 0;font-size:11px;line-height:1.8;color:#94a88f}.rd-fn-relation dd>span{color:#829381}.rd-fn-relation dd i{display:inline-block;width:18px;vertical-align:middle;margin-right:8px;border-top:1px solid #95a98f}.rd-fn-relation--control dd i{border-top-style:dashed}.rd-fn-relation--research dd i{border-top-style:dotted}.rd-fn-legend{font-size:9px;gap:8px 14px}.rd-functional-figure figcaption{font-size:11px;line-height:1.9}.rd-engine>.rd-functional-figure{padding:22px 12px 16px;background:linear-gradient(90deg,#030806c9,transparent);width:100%}.rd-fn-class-row{grid-template-columns:72px minmax(0,1fr);gap:8px 12px;padding:17px 0;font-size:13px}.rd-fn-class-row em{grid-column:2;font-size:10px}.rd-fn-anchor-route{display:grid;grid-template-columns:1fr 20px;gap:12px;font-size:13px}.rd-fn-anchor-route span:last-child{grid-column:1}.rd-fn-anchor-route b{transform:rotate(90deg)}.rd-fn-anchor-route span:nth-of-type(2){grid-column:1}.rd-fn-lanes{grid-template-columns:1fr;gap:30px}.rd-fn-lane li{font-size:13px;min-height:57px}.rd-fn-type-note,.rd-fn-lane-note{font-size:11px}}
@media(prefers-reduced-motion:reduce){.rd-functional-figure *{animation:none!important}}
.rd-fn-shape-legend{display:flex;flex-wrap:wrap;gap:10px 22px;margin:0 0 16px;color:#899d8d;font:10px/1.6 ui-monospace,SFMono-Regular,monospace}.rd-fn-shape-legend span{display:flex;align-items:center;gap:9px}.rd-fn-shape-legend i{display:inline-block;width:16px;height:10px;border:1px solid #9aad9d;box-sizing:border-box}.rd-fn-symbol-decision{width:11px!important;height:11px!important;transform:rotate(45deg)}.rd-fn-symbol-input{transform:skew(-20deg)}.rd-fn-symbol-store{border-radius:50% / 22%}
@media(max-width:760px){.rd-fn-shape-legend{font-size:9px;gap:8px 15px}}
/* Narrow screens use an explicitly labelled relation table, not miniature glyphs. */
.rd-fn-mobile-heading{font:10px/1.7 ui-monospace,SFMono-Regular,monospace;letter-spacing:.06em;color:#9caf9e;margin:28px 0 12px;font-weight:400}.rd-fn-mobile-heading:first-child{margin-top:0}
@media(max-width:760px){.rd-fn-component{border:1px solid #91ab963d;padding:12px;min-height:48px;box-sizing:border-box}.rd-fn-component--condition{border-style:solid;border-color:#aaa78b4a}.rd-fn-component--store{border:1px solid #91ab963d}.rd-fn-relations{margin-top:0}}
/* Centered publication figures; uniform viewBox scaling preserves object geometry. */
.rd-functional-figure{margin-left:auto;margin-right:auto}
.rd-blueprint-heading{display:flex;flex-direction:column;align-items:center;gap:7px;text-align:center}
.rd-bp-kicker{width:auto}.rd-blueprint-heading h3{text-align:center}.rd-fn-status{margin:0;max-width:none;text-align:center}
.rd-blueprint-drawing{max-width:1000px;margin:26px auto 0}
.rd-fn-svg{width:min(100%,var(--rd-fn-natural-width,900px));max-width:100%;height:auto;max-height:440px;display:block;margin:auto}
.rd-fn-legend,.rd-fn-shape-legend{justify-content:center}
.rd-functional-figure figcaption{margin:0 auto;text-align:center;max-width:860px}
.rd-fn-type-note,.rd-fn-lane-note{border-left:0;padding-left:0;text-align:center;max-width:850px;margin:18px auto}
.rd-engine>.rd-functional-figure{margin-left:auto;margin-right:auto}
.rd-fn-classification{max-width:850px;margin:auto}
.rd-fn-class-head,.rd-fn-class-row{display:grid;grid-template-columns:110px minmax(0,1fr) 145px;gap:18px;text-align:left}
.rd-fn-class-head{padding:12px 10px;border-bottom:1px solid #a1b4a635;font:9px/1.6 ui-monospace,SFMono-Regular,monospace;letter-spacing:.1em;text-transform:uppercase;color:#7e9484}
.rd-fn-class-row{padding:16px 10px;font-size:13px;line-height:1.65}
.rd-fn-class-row strong{font-size:13px}.rd-fn-class-row em{font-size:10px}
.rd-fn-anchor{max-width:850px;margin:25px auto 0;padding-top:13px;text-align:center}
.rd-fn-anchor-route{gap:15px;margin:16px 0;font-size:13px;text-align:center}
.rd-fn-anchor>p:last-child{margin-bottom:0;font-size:11px}
.rd-fn-lanes{max-width:950px;margin:auto;gap:24px;grid-template-columns:repeat(3,minmax(0,1fr));text-align:left}
.rd-fn-lane{border:1px solid #91aa942f;border-top-color:#a5b59a66;padding:0 16px 10px}
.rd-fn-lane h4{font-size:10px;letter-spacing:.11em;margin:13px 0 15px;padding-bottom:12px;border-bottom:1px solid #91aa9428}
.rd-fn-lane ol{counter-reset:relation-step}
.rd-fn-lane li{counter-increment:relation-step;display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px;min-height:0;padding:11px 0;border-left:0;border-bottom:1px solid #91aa9420;font-size:12px;line-height:1.7}
.rd-fn-lane li:before{content:counter(relation-step,decimal-leading-zero);position:static;width:auto;height:auto;border-radius:0;background:none;color:#7e9983;font:9px/1.8 ui-monospace,SFMono-Regular,monospace}
.rd-fn-lane li:last-child{border-bottom:0}
@media(max-width:760px){
 .rd-blueprint-drawing{margin-top:22px}.rd-fn-svg{display:none}.rd-fn-status{width:auto;text-align:center}
 .rd-functional-figure figcaption{text-align:center}.rd-fn-mobile{text-align:left}
 .rd-fn-class-head,.rd-fn-class-row{grid-template-columns:69px minmax(0,1fr);gap:8px 12px}
 .rd-fn-class-head{padding:10px 0;font-size:8px}.rd-fn-class-head>span:last-child{display:none}
 .rd-fn-class-row{padding:14px 0;font-size:12px}.rd-fn-class-row em{grid-column:2}
 .rd-fn-anchor-route{grid-template-columns:minmax(0,1fr) 20px;gap:9px;text-align:left}
 .rd-fn-anchor-route span{min-width:0}.rd-fn-anchor>p:last-child{text-align:center}
 .rd-fn-lanes{grid-template-columns:1fr;gap:17px}.rd-fn-lane{padding:0 13px 8px}.rd-fn-lane li{font-size:12px;padding:10px 0}
}

/* Preserve the complete diagram on touch screens at a readable drawing scale. */
.rd-fn-viewport{max-width:100%;min-width:0;box-sizing:border-box}
.rd-fn-viewport:focus-visible{outline:1px solid #d6b642;outline-offset:4px}
.rd-fn-pan-hint{display:none}
@media(max-width:760px){
 .rd-blueprint-drawing{width:100%;min-width:0;max-width:100%;box-sizing:border-box}
 .rd-fn-viewport{width:100%;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#91ab966b transparent;padding:8px 0 14px}
 .rd-fn-viewport .rd-fn-svg{display:block;width:900px;min-width:900px;max-width:none;height:auto;max-height:none;margin:0;overflow:hidden}
 .rd-fn-mobile{display:none}
 .rd-fn-pan-hint{display:block;margin:8px 0 0;text-align:center;color:#a9bcab;font:10px/1.7 ui-monospace,SFMono-Regular,monospace;letter-spacing:.02em}
}

/* Compact mobile relation diagrams retain typed nodes and every directed edge
   at a readable scale, while the authored desktop graph remains unchanged. */
.rd-fn-svg-mobile{display:none}
@media(max-width:760px){
 .rd-fn-svg-mobile{display:block;width:100%;max-width:100%;height:auto;overflow:visible}
 .rd-fn-svg-mobile marker path{stroke:#a8b5a5;stroke-width:1.2}
 .rd-fn-pan-hint{display:none}
}
@media(max-width:760px){
 .rd-fn-svg-mobile .rd-fn-node>:is(path,rect),.rd-fn-svg-mobile .rd-fn-edge>path{stroke-width:1.6}
 .rd-fn-svg-mobile marker path{stroke-width:1.6}
}

/* /research-evidence-views.css */
/* Evidence-facing tables and open research sequences; no scorecards or implied results. */
.rd-evidence-view{margin:38px auto 0;max-width:1100px;min-width:0;color:#bcc8c0;padding:22px 0 0;border-top:1px solid #94a69a32}
.rd-evidence-heading{text-align:center;margin:0 0 25px}.rd-evidence-heading>p{margin:0 0 8px;font:9px/1.7 ui-monospace,SFMono-Regular,monospace;letter-spacing:.13em;color:#94a699}.rd-evidence-heading h3{font-size:20px;font-weight:450;line-height:1.5;letter-spacing:-.02em;margin:0 0 10px;color:#d3dbd2}.rd-evidence-status{display:block;font:10px/1.7 ui-monospace,SFMono-Regular,monospace;color:#8d9e91}
.rd-evidence-table{width:100%;border-collapse:collapse;border-spacing:0;table-layout:fixed;font-size:12px;line-height:1.85;color:#aab9ae;text-align:left}.rd-evidence-table caption{caption-side:top;text-align:left;font-size:11px;line-height:1.7;color:#8ca08f;margin:0;padding:0 0 14px}.rd-evidence-table th,.rd-evidence-table td{padding:16px 16px 16px 0;vertical-align:top;border-bottom:1px solid #9aada02b;word-break:keep-all;overflow-wrap:anywhere}.rd-evidence-table thead th{border-top:1px solid #a5b7a45e;border-bottom:1px solid #a5b7a45e;color:#b9c8b8;font:10px/1.6 ui-monospace,SFMono-Regular,monospace;font-weight:400;padding:12px 16px 12px 0}.rd-evidence-table th[scope=row]{font-weight:450;color:#cbd4c7;width:18%}.rd-evidence-table tbody tr:hover{background:#94aa9907}.rd-evidence-view figcaption{margin:17px auto 0;max-width:850px;text-align:center;font-size:11px;line-height:1.9;color:#839786}.rd-evidence-protocol{margin:38px auto 0;max-width:1100px}
.rd-evidence-cycle{list-style:none;margin:32px 0 26px;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px}.rd-evidence-cycle li{position:relative;padding-top:20px;border-top:1px solid #a1b59d55;min-width:0}.rd-evidence-cycle li:before{content:"";position:absolute;left:0;top:-3px;width:5px;height:5px;border:1px solid #adbaa3;border-radius:50%;background:#070c09}.rd-evidence-index{display:block;font:10px/1.5 ui-monospace,SFMono-Regular,monospace;color:#869d87;margin-bottom:13px}.rd-evidence-cycle strong{font-size:14px;font-weight:450;line-height:1.65;color:#c8d3c3}.rd-evidence-cycle p,.rd-evidence-bridge li p{font-size:11px;line-height:1.8;margin:8px 0 0;color:#8ea28e}.rd-evidence-cycle li:before{animation:rd-evidence-signal 9s ease-in-out infinite;animation-play-state:paused}.rd-evidence-cycle li:nth-child(2):before{animation-delay:1s}.rd-evidence-cycle li:nth-child(3):before{animation-delay:2s}.rd-evidence-cycle li:nth-child(4):before{animation-delay:3s}.rd-evidence-cycle li:nth-child(5):before{animation-delay:4s}.rd-evidence-cycle li:nth-child(6):before{animation-delay:5s}.rd-evidence-view.is-active .rd-evidence-cycle li:before{animation-play-state:running}
.rd-evidence-bridge{border-top:1px solid #a1b59d25;padding-top:22px;margin-top:30px}.rd-evidence-subtitle{font:10px/1.7 ui-monospace,SFMono-Regular,monospace;letter-spacing:.04em;color:#9aac97;margin:0 0 16px}.rd-evidence-bridge ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;list-style:none;padding:0;margin:0}.rd-evidence-bridge li{position:relative;padding-left:14px;border-left:1px dashed #9cae8d55}.rd-evidence-bridge strong{font-weight:450;font-size:13px;line-height:1.6;color:#c5cdb8}
@keyframes rd-evidence-signal{0%,70%,100%{opacity:.45}20%,35%{opacity:1}}
@media(max-width:760px){.rd-evidence-view{margin-top:26px;padding-top:20px}.rd-evidence-heading{text-align:left;margin-bottom:22px}.rd-evidence-heading h3{font-size:18px}.rd-evidence-heading>p{font-size:9px}.rd-evidence-status{font-size:10px}.rd-evidence-cycle{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 20px;margin:24px 0}.rd-evidence-cycle strong{font-size:13px}.rd-evidence-cycle p{font-size:11px}.rd-evidence-bridge ol{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px}.rd-evidence-bridge strong{font-size:12px}.rd-evidence-view figcaption{text-align:left;font-size:11px;margin-top:20px}.rd-evidence-table,.rd-evidence-table tbody,.rd-evidence-table tr{display:block;width:100%}.rd-evidence-table thead{display:none}.rd-evidence-table caption{display:block;width:auto;padding-bottom:15px;font-size:11px}.rd-evidence-table tr{border-top:1px solid #94aa9245;padding:17px 0}.rd-evidence-table th[scope=row]{display:block;border:0;padding:0 0 13px;width:auto;font-size:14px}.rd-evidence-table td{display:block;border:0;padding:8px 0;font-size:12px;line-height:1.85}.rd-evidence-table td:before{content:attr(data-label);display:block;font:9px/1.7 ui-monospace,SFMono-Regular,monospace;color:#8fa086;margin-bottom:4px}.rd-evidence-table tr:last-child{border-bottom:1px solid #94aa9235}.rd-evidence-protocol{margin-top:28px}}
@media(prefers-reduced-motion:reduce){.rd-evidence-view *{animation:none!important}}
/* Research tables: centered headings, cell copy and captions. */
#rd-main table :is(th,td,caption){text-align:center}
#rd-main table :is(th,td){vertical-align:middle}
@media(min-width:761px){#rd-main table :is(th,td){padding-inline:12px}}

/* /research-vision-orbit.css */
/* Research direction: six-stage conceptual cycle and intended outputs. */
.rd-research-orbit{position:relative;width:100%;max-width:720px;aspect-ratio:720/620;margin:30px auto 34px;isolation:isolate}
.rd-research-orbit-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;fill:none;pointer-events:none}
.rd-orbit-track{stroke:#91a895;stroke-width:.9;opacity:.48}.rd-orbit-guide{stroke:#93a88e;stroke-width:.6;stroke-dasharray:1 12;opacity:.22}
.rd-orbit-signal{stroke:#d0cda6;stroke-width:1.5;stroke-dasharray:7 70;stroke-linecap:round;opacity:.7;animation:rd-vision-orbit-signal 28s linear infinite;animation-play-state:paused}
.rd-evidence-view.is-active .rd-orbit-signal{animation-play-state:running}
.rd-research-orbit-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:31%;text-align:center}
.rd-research-orbit-core>span{display:block;font:8px/1.8 ui-monospace,SFMono-Regular,monospace;letter-spacing:.12em;color:#879e88;margin-bottom:12px}
.rd-research-orbit-core>strong{display:block;font-weight:450;font-size:23px;line-height:1.55;letter-spacing:-.02em;color:#cbd7c7}
.rd-orbit-nodes{list-style:none;padding:0;margin:0}
.rd-orbit-nodes>li{position:absolute;left:var(--rd-orbit-x);top:var(--rd-orbit-y);transform:translate(-50%,-50%);width:25%;text-align:center;min-width:0}
.rd-orbit-nodes>li:nth-child(1){--rd-orbit-x:50%;--rd-orbit-y:10%}.rd-orbit-nodes>li:nth-child(2){--rd-orbit-x:79%;--rd-orbit-y:30%}.rd-orbit-nodes>li:nth-child(3){--rd-orbit-x:79%;--rd-orbit-y:70%}.rd-orbit-nodes>li:nth-child(4){--rd-orbit-x:50%;--rd-orbit-y:90%}.rd-orbit-nodes>li:nth-child(5){--rd-orbit-x:21%;--rd-orbit-y:70%}.rd-orbit-nodes>li:nth-child(6){--rd-orbit-x:21%;--rd-orbit-y:30%}
.rd-orbit-number{display:flex;align-items:center;justify-content:center;width:31px;height:31px;border:1px solid #acb39b88;border-radius:50%;background:#080e0a;margin:0 auto 9px;font:10px/1 ui-monospace,SFMono-Regular,monospace;letter-spacing:.06em;color:#c1c5a2}
.rd-orbit-nodes strong{display:block;font-size:15px;line-height:1.5;font-weight:450;color:#d0d8ca;letter-spacing:-.01em}
.rd-orbit-nodes p{margin:5px 0 0!important;font-size:11px;line-height:1.65;color:#8fa58e;text-wrap:balance}
.rd-orbit-detail-list{display:none}
.rd-vision-outcomes{border:1px solid #aab59555;background:linear-gradient(120deg,#a8b98f08,transparent 75%);padding:28px;margin:34px 0 0;text-align:center}
.rd-vision-outcomes>.rd-evidence-subtitle{font-size:9px;letter-spacing:.09em;margin:0 0 10px!important;color:#a7b496}
.rd-vision-outcomes>h4{font-size:23px;line-height:1.5;font-weight:450;letter-spacing:-.02em;color:#d1dac6;margin:0}
.rd-vision-outcomes>.rd-outcomes-status{font-size:11px;line-height:1.8;color:#98aa90;margin:9px 0 23px!important}
.rd-vision-outcomes>ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}
.rd-vision-outcomes>ol>li{border:1px solid #a4b79245;background:#080f0a99;padding:20px 15px 18px;min-width:0;text-align:left}
.rd-outcome-label{display:block;font:8px/1.7 ui-monospace,SFMono-Regular,monospace;letter-spacing:.06em;color:#9caa84;margin-bottom:12px}
.rd-vision-outcomes li>strong{display:block;font-weight:500;font-size:15px;line-height:1.55;color:#d1dac0}
.rd-vision-outcomes li>p{font-size:11px;line-height:1.85;color:#96a88e;margin:9px 0 0!important}
@keyframes rd-vision-orbit-signal{to{stroke-dashoffset:-462}}
@media(max-width:760px){
 .rd-research-orbit{aspect-ratio:720/620;margin:30px auto 35px;max-width:430px}
 .rd-orbit-nodes>li{width:31%}
 .rd-orbit-number{width:24px;height:24px;font-size:8px;margin-bottom:6px}
 .rd-orbit-nodes strong{font-size:12px;line-height:1.45;text-wrap:balance}
 .rd-orbit-nodes p{font-size:10px;line-height:1.5;margin-top:4px!important}
 .rd-research-orbit-core{width:33%}.rd-research-orbit-core>span{font-size:6px;letter-spacing:.07em;margin-bottom:7px}.rd-research-orbit-core>strong{font-size:14px;line-height:1.6}
 /* With an explicit detail list present, the circle carries only stage identifiers. */
 .rd-evidence-view:has(.rd-orbit-detail-list) .rd-orbit-nodes p{display:none}
 .rd-orbit-detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px;list-style:none;margin:0 0 32px;padding:0;text-align:left}
 .rd-orbit-detail-list>li{min-width:0;border-top:1px solid #9db4923f;padding-top:11px}
 .rd-orbit-detail-list .rd-orbit-number{width:auto;height:auto;display:block;border:0;background:none;margin:0 0 7px;font-size:9px;color:#a1b591}
 .rd-orbit-detail-list strong{font-weight:450;font-size:12px;line-height:1.6;color:#c4d2bc}
 .rd-orbit-detail-list p{font-size:11px;line-height:1.8;color:#90a68b;margin:5px 0 0!important}
 .rd-vision-outcomes{padding:20px 15px;margin-top:26px}.rd-vision-outcomes>h4{font-size:20px}.rd-vision-outcomes>.rd-outcomes-status{font-size:10px;margin-bottom:18px!important}
 .rd-vision-outcomes>ol{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.rd-vision-outcomes>ol>li{padding:15px 12px}
 .rd-outcome-label{font-size:7px;margin-bottom:9px}.rd-vision-outcomes li>strong{font-size:13px}.rd-vision-outcomes li>p{font-size:11px;line-height:1.75}
}
@media(max-width:380px){.rd-vision-outcomes>ol{grid-template-columns:1fr}.rd-orbit-nodes strong{font-size:11px}.rd-research-orbit-core>strong{font-size:13px}}
@media(prefers-reduced-motion:reduce){.rd-research-orbit *{animation:none!important}}
/* Let the orbital line recede behind stage labels without introducing cards. */
.rd-orbit-nodes>li{isolation:isolate}
.rd-orbit-nodes>li:before{content:"";position:absolute;z-index:-1;inset:-10px -12px;background:radial-gradient(ellipse at center,#030806 0%,#030806f5 42%,#030806b8 66%,transparent 88%);pointer-events:none}
.rd-orbit-nodes :is(strong,p){position:relative;text-shadow:0 0 3px #030806,0 0 6px #030806}
@media(max-width:760px){.rd-orbit-nodes>li:before{inset:-7px -7px;background:radial-gradient(ellipse at center,#030806 0%,#030806ed 42%,#0308068c 65%,transparent 88%)}}

/* /research-snap-navigation.css */
/* Chapters use ordinary scrolling; manual links retain their authored offsets. */
html:has(body.research-page){scroll-padding-top:0;scroll-padding-bottom:0}
.research-page #rd-main :is(.rd-hero,[data-chapter]){box-sizing:border-box;min-height:100svh;height:auto;max-height:none;scroll-margin-top:0!important;scroll-margin-bottom:0;padding-top:132px}
.research-page #rd-main [data-chapter]{overflow:visible}
.research-page .rd-breadcrumb{margin-top:0;margin-bottom:38px;gap:12px;align-self:flex-start}
.research-page .rd-breadcrumb>a{display:inline-flex;align-items:center;gap:9px;min-height:38px;box-sizing:border-box;padding:7px 14px;border:1px solid #a4b69845;border-radius:999px;background:#080e0ac9;color:#becdbb;font-size:11px;line-height:1.5;text-decoration:none;transition:background .2s,border-color .2s}
.research-page .rd-breadcrumb>a:hover{background:#152015d9;border-color:#bdc9a57a;color:#e2e9d8}
.research-page .rd-breadcrumb>a:focus-visible{outline:1px solid #c0cba6;outline-offset:4px}
.research-page .rd-breadcrumb>a>span{width:16px;height:auto;min-height:0;border:0;border-radius:0;background:none;font-size:14px;line-height:1;display:inline-flex;justify-content:center}
/* A compact title row for the chapter disclosure. */
.research-page .rd-index>summary{gap:8px;pointer-events:auto;cursor:pointer}
.research-page .rd-index>summary::after{display:block}
.research-page .rd-index:not([open]) nav{display:none}
.research-page .rd-index-title{white-space:nowrap;letter-spacing:0;font-size:10px}
@media(min-width:1101px){.research-page .rd-index>summary{padding-inline:0}}
@media(min-width:1101px){
 .research-page .rd-index{max-height:calc(100svh - 220px)}
 .research-page .rd-index nav{max-height:calc(100svh - 290px);overscroll-behavior:contain}
}
@media(max-width:1100px){
 .research-page #rd-main :is(.rd-hero,[data-chapter]){padding-top:190px}
 .research-page .rd-index:not([open]) nav{display:none}
 .research-page .rd-index nav{max-height:calc(100svh - 185px);overflow-y:auto;overscroll-behavior:contain}
}
@media(max-width:760px){
 .research-page .rd-breadcrumb{margin-bottom:32px}
 .research-page .rd-breadcrumb>a{font-size:10px;min-height:36px;padding:7px 12px}
 .research-page .rd-breadcrumb>a>span{font-size:13px;width:14px}
}
@media(prefers-reduced-motion:reduce){.research-page .rd-breadcrumb>a{transition:none}}

/* The official white wordmark leads the corporate-center title. */
.rd-hero-title .rd-hero-logotype{margin:0 0 26px;line-height:0}
.rd-hero-logotype img{display:block;width:clamp(220px,28vw,380px);height:auto;max-width:100%}
@media(max-width:760px){.rd-hero-title .rd-hero-logotype{margin-bottom:20px}.rd-hero-logotype img{width:min(72vw,270px)}}

/* /research-workflow-icon-orbit.css */
/* Six functional stages: stationary vector badges on an exact circular orbit. */
#rd-main .rd-workflow-icon-orbit{width:100%;max-width:900px;margin:36px auto 0;color:#becbbb;min-width:0}
.rd-wio-orbit{position:relative;width:100%;aspect-ratio:1;isolation:isolate}
.rd-wio-svg{position:absolute;inset:0;display:block;width:100%;height:100%;fill:none;pointer-events:none}
.rd-wio-track{stroke:#94ad98;stroke-width:1;opacity:.43}.rd-wio-signal{stroke:#c4c6a2;stroke-width:2;stroke-dasharray:9 115;stroke-linecap:round;opacity:.7;animation:rd-wio-circulate 38s linear infinite;animation-play-state:paused}
.rd-workflow-icon-orbit.is-active .rd-wio-signal{animation-play-state:running}
.rd-wio-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:25%;text-align:center;color:#becdb7}
.rd-wio-core>span{display:block;font:9px/1.8 ui-monospace,SFMono-Regular,monospace;letter-spacing:.12em;color:#879f87;margin-bottom:11px}
.rd-wio-core>strong{display:block;font-size:22px;font-weight:450;line-height:1.6;letter-spacing:-.02em}
.rd-wio-items{position:absolute;inset:0;margin:0;padding:0;list-style:none}
.rd-wio-items>li{position:absolute;left:var(--rd-wio-x);top:var(--rd-wio-y);width:24%;transform:translate(-50%,-27px);text-align:center;min-width:0;isolation:isolate}
.rd-wio-items>li:nth-child(1){--rd-wio-x:50%;--rd-wio-y:16%}.rd-wio-items>li:nth-child(2){--rd-wio-x:79.4449%;--rd-wio-y:33%}.rd-wio-items>li:nth-child(3){--rd-wio-x:79.4449%;--rd-wio-y:67%}.rd-wio-items>li:nth-child(4){--rd-wio-x:50%;--rd-wio-y:84%}.rd-wio-items>li:nth-child(5){--rd-wio-x:20.5551%;--rd-wio-y:67%}.rd-wio-items>li:nth-child(6){--rd-wio-x:20.5551%;--rd-wio-y:33%}
.rd-wio-badge{display:grid;place-items:center;width:54px;height:54px;box-sizing:border-box;margin:0 auto;border:1px solid #abb5957a;border-radius:50%;background:#0b140df5;color:#bdc8a8}
.rd-wio-badge>svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
.rd-wio-copy{position:relative;margin-top:13px;padding:0 4px}
.rd-wio-copy:before{content:"";position:absolute;inset:-9px -15px;z-index:-1;background:radial-gradient(ellipse,#030806f7 0%,#030806df 48%,#0308068c 72%,transparent 94%);pointer-events:none}
.rd-wio-index{display:block;font:9px/1.6 ui-monospace,SFMono-Regular,monospace;color:#a2b08b;letter-spacing:.08em;margin-bottom:7px}
#rd-main .rd-wio-copy h3{font-size:17px;font-weight:450;line-height:1.55;letter-spacing:-.015em;margin:0;color:#d0d9c5;text-wrap:balance}
#rd-main .rd-wio-copy p{font-size:12px;line-height:1.85;color:#92a78d;margin:9px 0 0!important;text-wrap:pretty}
.rd-wio-details{display:none}
@keyframes rd-wio-circulate{to{stroke-dashoffset:-1116}}
@media(max-width:1100px){
 #rd-main .rd-workflow-icon-orbit{margin-top:28px;max-width:720px}
 .rd-wio-orbit{max-width:540px;margin:0 auto 34px}
 .rd-wio-items>li{width:29%;transform:translate(-50%,-20px)}
 .rd-wio-badge{width:40px;height:40px}.rd-wio-badge>svg{width:21px;height:21px}
 .rd-wio-copy{margin-top:9px;padding:0 3px}.rd-wio-index{font-size:8px;margin-bottom:4px}
 #rd-main .rd-wio-items .rd-wio-copy h3{font-size:13px;line-height:1.5}
 #rd-main .rd-wio-items .rd-wio-copy p{display:none}
 .rd-wio-core{width:28%}.rd-wio-core>span{font-size:7px;letter-spacing:.07em;margin-bottom:7px}.rd-wio-core>strong{font-size:17px;line-height:1.65}
 .rd-wio-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 25px;margin:0;padding:0;list-style:none;text-align:left}
 .rd-wio-details>li{display:grid;grid-template-columns:40px minmax(0,1fr);gap:13px;min-width:0;padding:18px 0 0;border-top:1px solid #9aaf8e42}
 .rd-wio-details .rd-wio-badge{width:40px;height:40px;margin:0}.rd-wio-details .rd-wio-copy{margin:0;padding:0}.rd-wio-details .rd-wio-copy:before{display:none}
 #rd-main .rd-wio-details .rd-wio-copy h3{font-size:14px}#rd-main .rd-wio-details .rd-wio-copy p{font-size:12px;line-height:1.85;margin-top:7px!important}
}
@media(max-width:760px){
 .rd-wio-orbit{margin-bottom:54px}
 .rd-wio-items>li{transform:translate(-50%,-18px)}
 .rd-wio-badge{width:36px;height:36px}.rd-wio-badge>svg{width:19px;height:19px}
 #rd-main .rd-wio-items .rd-wio-copy h3{font-size:11px;line-height:1.5}.rd-wio-copy{margin-top:8px}.rd-wio-index{font-size:7px;margin-bottom:3px}
 .rd-wio-core{width:27%}.rd-wio-core>span{font-size:5.5px;letter-spacing:.05em;margin-bottom:5px}.rd-wio-core>strong{font-size:12px;line-height:1.65}
 .rd-wio-details{grid-template-columns:1fr;gap:19px}
 .rd-wio-details>li{grid-template-columns:40px minmax(0,1fr);gap:14px;padding-top:16px}
 #rd-main .rd-wio-details .rd-wio-copy h3{font-size:14px}#rd-main .rd-wio-details .rd-wio-copy p{font-size:12px;line-height:1.9}
}
@media(prefers-reduced-motion:reduce){.rd-workflow-icon-orbit *{animation:none!important}}
/* The lower stage reads inward, keeping its full copy inside the square. */
@media(min-width:1101px){.rd-wio-items>li:nth-child(4) .rd-wio-copy{position:absolute;left:0;right:0;bottom:calc(100% + 13px);margin:0}}
/* A restrained 01–06 emphasis cycle conveys circulation without moving labels. */
.rd-wio-items .rd-wio-badge{animation:rd-wio-stage 18s ease-in-out infinite;animation-delay:calc(var(--i,0)*3s);animation-play-state:paused}
.rd-workflow-icon-orbit.is-active .rd-wio-items .rd-wio-badge{animation-play-state:running}
@keyframes rd-wio-stage{0%,12%{border-color:#c9c6a1;color:#d0d2ae;background:#182216}17%,100%{border-color:#abb5957a;color:#bdc8a8;background:#0b140df5}}
@media(prefers-reduced-motion:reduce){.rd-wio-items .rd-wio-badge{animation:none!important}}

#rd-main .rd-wio-core>p{font-size:10px;line-height:1.8;color:#879d83;margin:12px 0 0!important}
@media(max-width:760px){#rd-main .rd-wio-core>p{font-size:8px;line-height:1.8;margin:8px 0 0!important}}
/* A concise mobile center leaves all six stage labels unobstructed. */
#rd-main .rd-wio-core>.rd-wio-core-short{display:none}
@media(max-width:760px){
 #rd-main .rd-wio-core>span,#rd-main .rd-wio-core>p,#rd-main .rd-wio-core>.rd-wio-core-title{display:none}
 #rd-main .rd-wio-core>.rd-wio-core-short{display:block;width:100%;font-size:12px;line-height:1.6;font-weight:450}
}

/* /research-figure-alignment.css */
/* Document figures: stable centered compositions and readable evidence hierarchy. */
#rd-main .rd-evidence-view{width:100%;max-width:1100px;box-sizing:border-box;margin:42px auto 0}
.research-page #rd-main .rd-functional-figure{width:100%;max-width:1000px;box-sizing:border-box;margin:52px auto 0;left:auto;right:auto}
.research-page #rd-main .rd-engine>.rd-functional-figure{width:100%;max-width:1000px;margin:50px auto 0}
#rd-main :is(.rd-blueprint-drawing,.rd-fn-classification,.rd-fn-lanes,.rd-fn-anchor){margin-left:auto;margin-right:auto}
#rd-main :is(.rd-blueprint-heading,.rd-evidence-heading){text-align:center;align-items:center}
#rd-main :is(.rd-blueprint-heading,.rd-evidence-heading) h3{font-size:22px;line-height:1.55;font-weight:450;letter-spacing:-.018em}
#rd-main :is(.rd-fn-status,.rd-evidence-status){font-size:11px;line-height:1.8;text-align:center}
#rd-main :is(.rd-functional-figure,.rd-evidence-view)>figcaption{max-width:850px;margin:20px auto 0;font-size:12px;line-height:1.9;text-align:center;color:#99ac9b}
#rd-main :is(.rd-fn-type-note,.rd-fn-lane-note){max-width:850px;margin:20px auto;font-size:13px;line-height:1.85;text-align:center}
#rd-main :is(.rd-fn-legend,.rd-fn-shape-legend){justify-content:center;font-size:11px;line-height:1.7;gap:10px 22px}
#rd-main :is(.rd-component-matrix,.rd-evaluation-table,.rd-evidence-table){width:100%;max-width:1100px;margin-left:auto;margin-right:auto;font-size:14px;line-height:1.85;text-align:center}
#rd-main :is(.rd-component-matrix,.rd-evaluation-table,.rd-evidence-table) caption{font-family:inherit;font-size:12px;line-height:1.85;letter-spacing:.015em;text-align:center;padding-bottom:20px;color:#a9baaa}
#rd-main :is(.rd-component-matrix,.rd-evaluation-table,.rd-evidence-table) :is(th,td){text-align:center;vertical-align:middle;padding:22px 16px;overflow-wrap:normal;word-break:keep-all}
#rd-main :is(.rd-component-matrix,.rd-evaluation-table,.rd-evidence-table) thead th{font-size:11px;line-height:1.75;font-weight:450;letter-spacing:.035em;color:#bccbb9}
#rd-main :is(.rd-component-matrix,.rd-evaluation-table,.rd-evidence-table) th[scope=row]{font-size:14px;font-weight:450;color:#d0d9cb}
/* Classification and independent lanes are information tables, not decorative timelines. */
#rd-main :is(.rd-fn-class-head,.rd-fn-class-row){text-align:center}
#rd-main .rd-fn-class-head{font-size:11px;line-height:1.75;padding-block:14px}
#rd-main .rd-fn-class-row{font-size:14px;line-height:1.8;padding-block:20px}
#rd-main .rd-fn-class-row strong{font-size:14px;font-weight:450}
#rd-main .rd-fn-class-row em{font-size:12px;line-height:1.75}
#rd-main .rd-fn-anchor-route{font-size:14px;line-height:1.75;text-align:center}
#rd-main .rd-fn-anchor>p:last-child{font-size:12px;line-height:1.9;text-align:center}
#rd-main .rd-fn-lanes{max-width:950px;justify-content:center}
#rd-main .rd-fn-lane{text-align:center;padding:0 18px 10px}
#rd-main .rd-fn-lane h4{font-size:12px;line-height:1.8;text-align:center}
#rd-main .rd-fn-lane li{display:block;min-height:86px;box-sizing:border-box;padding:13px 0;font-size:14px;line-height:1.75;text-align:center}
#rd-main .rd-fn-lane li:before{display:block;margin-bottom:5px;font-size:10px;line-height:1.5}
/* Card surfaces share the document's figure typography. */
#rd-main :is(.rd-grid,.rd-autonomy-grid,.rd-capability-grid,.rd-reliability-grid,.rd-assessment-grid){width:100%;max-width:1100px;margin-left:auto;margin-right:auto}
#rd-main :is(.rd-card,.rd-assessment-grid>article){text-align:center}
#rd-main :is(.rd-card,.rd-assessment-grid>article) h3{font-size:20px;line-height:1.55;font-weight:450}
#rd-main :is(.rd-card,.rd-assessment-grid>article) p{font-size:14px;line-height:1.9;text-align:center;color:#a8b9a9}
#rd-main .rd-engine-briefs{max-width:1100px;margin:0 auto;box-sizing:border-box}
#rd-main .rd-engine-brief{text-align:center}
#rd-main .rd-engine-brief-head{justify-content:center}
#rd-main .rd-engine-brief h4{font-size:24px;line-height:1.5}
#rd-main .rd-engine-brief h5{font-size:17px;line-height:1.7}
#rd-main .rd-engine-brief-copy{font-size:14px;line-height:1.9;text-align:center}
#rd-main .rd-engine-brief dt{font-size:11px;line-height:1.7;text-align:center}
#rd-main .rd-engine-brief dd{font-size:14px;line-height:1.9;text-align:center}
#rd-main .rd-vision-outcomes>h4{font-size:25px;line-height:1.5}
#rd-main .rd-vision-outcomes>.rd-outcomes-status{font-size:12px;line-height:1.85}
#rd-main .rd-vision-outcomes li>strong{font-size:17px;line-height:1.6}
#rd-main .rd-vision-outcomes li>p{font-size:14px;line-height:1.85}
#rd-main .rd-outcome-label{font-size:9px;line-height:1.7}
@media(max-width:760px){
 #rd-main .rd-evidence-view{margin-top:30px}
 .research-page #rd-main .rd-functional-figure{margin:38px auto 0}
 .research-page #rd-main .rd-engine>.rd-functional-figure{margin:36px auto 0}
 #rd-main :is(.rd-blueprint-heading,.rd-evidence-heading) h3{font-size:20px;line-height:1.6}
 #rd-main :is(.rd-fn-status,.rd-evidence-status){font-size:11px}
 #rd-main :is(.rd-functional-figure,.rd-evidence-view)>figcaption{font-size:11px;line-height:1.9;text-align:center}
 #rd-main :is(.rd-fn-type-note,.rd-fn-lane-note){font-size:12px;line-height:1.9}
 #rd-main :is(.rd-fn-legend,.rd-fn-shape-legend){font-size:10px;gap:9px 15px}
 #rd-main :is(.rd-component-matrix,.rd-evaluation-table,.rd-evidence-table){font-size:13px}
 #rd-main :is(.rd-component-matrix,.rd-evaluation-table,.rd-evidence-table) caption{font-size:12px;line-height:1.85;padding-bottom:16px}
 #rd-main :is(.rd-component-matrix,.rd-evaluation-table,.rd-evidence-table) :is(th,td){font-size:13px;line-height:1.9;padding:10px 4px;text-align:center}
 #rd-main :is(.rd-component-matrix,.rd-evaluation-table,.rd-evidence-table) th[scope=row]{font-size:15px;line-height:1.7;padding-bottom:12px}
 #rd-main :is(.rd-component-matrix,.rd-evaluation-table,.rd-evidence-table) td{display:block}
 #rd-main :is(.rd-component-matrix,.rd-evaluation-table,.rd-evidence-table) td:before{display:block;grid-column:auto;margin:0 auto 5px;font-size:11px;line-height:1.75;text-align:center}
 #rd-main .rd-fn-class-head{font-size:10px;padding-block:12px}
 #rd-main .rd-fn-class-row{font-size:13px;padding-block:16px}
 #rd-main .rd-fn-class-row strong{font-size:13px}.rd-fn-class-row em{font-size:11px}
 #rd-main .rd-fn-anchor-route{font-size:13px;text-align:center}
 #rd-main .rd-fn-anchor>p:last-child{font-size:11px}
 #rd-main .rd-fn-lane h4{font-size:12px}
 #rd-main .rd-fn-lane li{min-height:0;font-size:13px;padding:14px 0}
 #rd-main :is(.rd-card,.rd-assessment-grid>article) h3{font-size:19px}
 #rd-main :is(.rd-card,.rd-assessment-grid>article) p{font-size:13px;line-height:1.9}
 #rd-main .rd-engine-brief h4{font-size:24px}#rd-main .rd-engine-brief h5{font-size:17px}
 #rd-main .rd-engine-brief-copy,#rd-main .rd-engine-brief dd{font-size:13px;line-height:1.9}
 #rd-main .rd-vision-outcomes>h4{font-size:22px}#rd-main .rd-vision-outcomes>.rd-outcomes-status{font-size:11px}
 #rd-main .rd-vision-outcomes li>strong{font-size:16px}#rd-main .rd-vision-outcomes li>p{font-size:13px;line-height:1.9}
 #rd-main .rd-orbit-detail-list strong{font-size:14px}#rd-main .rd-orbit-detail-list p{font-size:13px;line-height:1.85}
 #rd-main .rd-wio-details .rd-wio-copy p{font-size:13px;line-height:1.9}
}
@media(max-width:760px){#rd-main .rd-autonomy-grid{grid-template-columns:minmax(0,1fr);gap:16px}}

/* Preserve Korean word units; circle copy stays within the existing safe slots. */
@media(min-width:1101px){#rd-main .rd-wio-items .rd-wio-copy p{font-size:13px;line-height:1.85}}
#rd-main .rd-magi-delta{text-align:center}
#rd-main .rd-magi-delta>h3{font-size:22px!important;line-height:1.55;text-align:center}
#rd-main .rd-magi-delta>div>article{text-align:center}
#rd-main .rd-magi-delta h4{font-size:16px;line-height:1.7;text-align:center}
#rd-main .rd-magi-delta article p{font-size:14px;line-height:1.9;text-align:center;word-break:keep-all;overflow-wrap:normal}
#rd-main .rd-magi-delta>.rd-small-note{max-width:850px;margin:24px auto 0!important;font-size:12px!important;line-height:1.9!important;text-align:center;word-break:keep-all;overflow-wrap:normal}
@media(max-width:760px){#rd-main .rd-magi-delta article p{font-size:13px}#rd-main .rd-magi-delta>h3{font-size:21px!important}}
/* Component figure headings and intended-output cards share the centered hierarchy. */
#rd-main .rd-explorer-title{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center}
#rd-main .rd-explorer-title>.rd-eyebrow{margin:0!important;text-align:center}
#rd-main .rd-explorer-title>h3{margin:0!important;text-align:center;font-size:22px;line-height:1.6;font-weight:450}
#rd-main .rd-vision-outcomes>ol>li,#rd-main .rd-vision-outcomes :is(.rd-outcome-label,strong,p){text-align:center}
#rd-main .rd-durability-line{justify-content:center;text-align:center}
#rd-main :is(.rd-functional-figure,.rd-evidence-view)>figcaption,
#rd-main .rd-vision-outcomes li>p,
#rd-main :is(.rd-engine-brief-copy,.rd-engine-brief dd,.rd-fn-class-row){word-break:keep-all;overflow-wrap:normal}
@media(max-width:760px){#rd-main .rd-explorer-title>h3{font-size:20px}}
#rd-main .rd-wio-copy p{word-break:keep-all;overflow-wrap:normal}

/* /research-document-layout.css */
/* One reading axis per chapter: label, title, then its explanation. */
#rd-main .rd-section-head{display:flex;flex-direction:column;align-items:flex-start;gap:0;width:100%;max-width:100%;margin:0 0 42px}
#rd-main .rd-section-head>.rd-eyebrow{margin:0 0 23px!important;font-size:11px;line-height:1.7;color:#b9bea2;letter-spacing:.12em}
#rd-main .rd-section-head h2{width:100%;max-width:1000px;font-size:clamp(38px,4vw,58px);line-height:1.24;font-weight:450;letter-spacing:-.045em;text-wrap:balance;margin:0}
#rd-main .rd-section-head>.rd-lead,#rd-main .rd-section-head>p:not(.rd-eyebrow){width:100%;max-width:900px;padding:0;margin:26px 0 0!important;font-size:17px;line-height:1.95;color:#b4beb7;text-align:left;word-break:keep-all;text-wrap:pretty}
#rd-main .rd-engine-copy .rd-section-head{margin-bottom:26px}
#rd-main .rd-engine-copy .rd-section-head h2{font-size:clamp(60px,6vw,84px);line-height:1.08;letter-spacing:-.055em}
#rd-main .rd-engine-copy>h3{font-size:23px;line-height:1.55;font-weight:450;margin:0 0 22px}
#rd-main .rd-engine-copy>.rd-lead{font-size:16px;line-height:1.95;color:#b4beb7;max-width:650px;margin:0}
#rd-main .rd-engine-copy .rd-feature-list{margin-top:30px}
#rd-main .rd-engine-copy .rd-feature-list li{font-size:13px;line-height:1.8;align-items:flex-start}
#rd-main .rd-engine-copy .rd-engine-io dt{font-size:11px;line-height:1.6;color:#a8b49f}
#rd-main .rd-engine-copy .rd-engine-io dd{font-size:13px;line-height:1.9;color:#acb9ad;margin-top:8px}
#rd-main .rd-engine-copy .rd-engine-note,#rd-main .rd-engine-copy .rd-engine-flow{font-size:12px;line-height:1.9}
#rd-main :is(.rd-source-scope,.rd-architecture-boundary,.rd-architecture-feedback,.rd-small-note){font-size:13px;line-height:1.9;color:#97a99b}
#rd-main #rd-architecture>.rd-engine-note{font-size:13px;line-height:1.9;max-width:900px;margin:0 0 24px}
#rd-main .rd-architecture-boundary{padding:18px 0 24px}
#rd-main .rd-architecture-boundary>.rd-eyebrow,#rd-main .rd-architecture-feedback>.rd-eyebrow{font-size:11px;line-height:1.7;margin-bottom:12px;color:#b3bea3}
#rd-main .rd-research-fields{gap:12px 20px;justify-content:center;align-items:center;flex-wrap:wrap}
#rd-main .rd-research-fields>span{font-size:12px;line-height:1.8;color:#b0bcb1}
@media(max-width:1100px){#rd-main .rd-section-head h2{font-size:clamp(34px,4.7vw,52px)}}
@media(max-width:760px){
 #rd-main .rd-section-head{margin-bottom:30px}
 #rd-main .rd-section-head>.rd-eyebrow{font-size:10px;margin-bottom:18px!important;letter-spacing:.09em}
 #rd-main .rd-section-head h2{font-size:clamp(31px,8.6vw,40px);line-height:1.32;letter-spacing:-.045em}
 #rd-main .rd-section-head>.rd-lead,#rd-main .rd-section-head>p:not(.rd-eyebrow){font-size:15px;line-height:1.95;margin-top:23px!important}
 #rd-main .rd-engine-copy .rd-section-head h2{font-size:58px}
 #rd-main .rd-engine-copy>h3{font-size:20px;line-height:1.6;margin-bottom:20px}
 #rd-main .rd-engine-copy>.rd-lead{font-size:15px;line-height:1.95}
 #rd-main .rd-engine-copy .rd-feature-list li{font-size:13px;line-height:1.8}
 #rd-main :is(.rd-source-scope,.rd-architecture-boundary,.rd-architecture-feedback,.rd-small-note),#rd-main #rd-architecture>.rd-engine-note{font-size:12px;line-height:1.9}
 #rd-main .rd-research-fields{gap:10px 16px;justify-content:flex-start}
 #rd-main .rd-research-fields>span{font-size:11px}
}
@media(prefers-reduced-motion:reduce){html:has(.research-page){scroll-behavior:auto}}
#rd-main .rd-engine-copy :is(.rd-lead,.rd-feature-list li,.rd-engine-io dd,.rd-engine-note,.rd-engine-flow){word-break:keep-all;overflow-wrap:normal}
/* Keep the shared location controls in the ordinary document flow. */
body.research-page .rd-footer{scroll-margin:0}

/* /research-evolution.css */
/* A conceptual research/model loop; stationary copy and low-cost light tracing. */
#rd-main .rd-evolution-monument{width:100%;max-width:1000px;box-sizing:border-box;margin:70px auto 0;padding:28px 0 24px;border-top:1px solid #a5b49d46;border-bottom:1px solid #a5b49d2d;text-align:center;position:relative;isolation:isolate}
#rd-main .rd-evolution-monument .rd-evo-heading{max-width:760px;margin:0 auto;text-align:center}
#rd-main .rd-evolution-monument .rd-evo-heading>.rd-eyebrow{font-size:10px;letter-spacing:.13em;color:#a7b590;margin:0 0 10px!important}
#rd-main .rd-evolution-monument .rd-evo-heading>h3{font-size:clamp(26px,2.5vw,36px);line-height:1.4;letter-spacing:-.025em;font-weight:450;color:#d4decd;margin:0}
#rd-main .rd-evolution-monument .rd-evo-intro{font-size:14px;line-height:1.9;color:#9cb096;margin:14px auto 0!important;max-width:680px;word-break:keep-all;overflow-wrap:normal}
.rd-evolution-monument .rd-evo-stage{position:relative;width:100%;height:420px;margin:22px auto 20px;isolation:isolate}
.rd-evolution-monument .rd-evo-orbit{position:absolute;inset:0;width:100%;height:100%;fill:none;pointer-events:none;overflow:visible}
.rd-evolution-monument .rd-evo-orbit ellipse{stroke:#8fa88f;stroke-width:.8;opacity:.4}
.rd-evolution-monument .rd-evo-orbit ellipse:nth-of-type(2){stroke-dasharray:1 10;opacity:.24}
.rd-evolution-monument .rd-evo-tracer{stroke:#d2cda6;stroke-width:1.8;stroke-linecap:round;stroke-dasharray:8 80;opacity:.7;fill:none;animation:rd-evo-trace 32s linear infinite;animation-play-state:paused}
.rd-evolution-monument.is-evolving .rd-evo-tracer{animation-play-state:running}
.rd-evolution-monument .rd-evo-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:32%;text-align:center;color:#ccd8c2}
.rd-evolution-monument .rd-evo-core:before{content:"";position:absolute;inset:-22px -18px;z-index:-1;background:radial-gradient(ellipse,#030806f7 15%,#030806de 55%,transparent 86%);pointer-events:none}
.rd-evolution-monument .rd-evo-core>span{display:block;font:9px/1.8 ui-monospace,SFMono-Regular,monospace;letter-spacing:.12em;color:#8fa888;margin-bottom:13px}
.rd-evolution-monument .rd-evo-core>strong{display:block;font-size:27px;line-height:1.55;letter-spacing:-.025em;font-weight:450;color:#d0dcc7;text-wrap:balance}
.rd-evolution-monument .rd-evo-nodes{position:absolute;inset:0;list-style:none;margin:0;padding:0}
.rd-evolution-monument .rd-evo-node{position:absolute;width:29%;box-sizing:border-box;display:grid;grid-template-columns:36px minmax(0,1fr);column-gap:12px;row-gap:5px;align-items:start;padding:18px;border:1px solid #9caf8f4d;background:linear-gradient(130deg,#10190ff5,#080e09f7);text-align:left;min-width:0}
.rd-evolution-monument .rd-evo-node-1{left:2%;top:16px}.rd-evolution-monument .rd-evo-node-2{right:2%;top:16px}.rd-evolution-monument .rd-evo-node-3{right:2%;bottom:16px}.rd-evolution-monument .rd-evo-node-4{left:2%;bottom:16px}
.rd-evolution-monument .rd-evo-icon{grid-column:1;grid-row:1/3;display:grid;place-items:center;width:36px;height:36px;color:#b8c4a1;border:1px solid #9eae8652;border-radius:50%;background:#121c10;animation:rd-evo-emphasis 24s ease-in-out infinite;animation-play-state:paused}
.rd-evolution-monument .rd-evo-icon>svg{display:block;width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
.rd-evolution-monument .rd-evo-node-2 .rd-evo-icon{animation-delay:6s}.rd-evolution-monument .rd-evo-node-3 .rd-evo-icon{animation-delay:12s}.rd-evolution-monument .rd-evo-node-4 .rd-evo-icon{animation-delay:18s}
.rd-evolution-monument.is-evolving .rd-evo-icon{animation-play-state:running}
.rd-evolution-monument .rd-evo-index{grid-column:2;grid-row:1;font:9px/1.5 ui-monospace,SFMono-Regular,monospace;letter-spacing:.08em;color:#8fa67c}
#rd-main .rd-evolution-monument .rd-evo-node h4{grid-column:2;grid-row:2;margin:0;font-size:17px;line-height:1.6;font-weight:450;letter-spacing:-.015em;color:#d2dcc7;word-break:keep-all;overflow-wrap:normal}
#rd-main .rd-evolution-monument .rd-evo-node p{grid-column:1/3;grid-row:3;font-size:13px;line-height:1.85;word-break:keep-all;overflow-wrap:normal;color:#9fb295;margin:11px 0 0!important}
#rd-main .rd-evolution-monument .rd-evo-caption{max-width:750px;margin:0 auto 15px!important;font-size:14px;line-height:1.95;color:#b3c3a8;word-break:keep-all;overflow-wrap:normal;text-align:center}
.rd-evolution-monument .rd-evo-status{display:inline-block;border:1px solid #96a77c4a;border-radius:999px;padding:7px 15px;font:10px/1.7 ui-monospace,SFMono-Regular,monospace;letter-spacing:.03em;color:#a2b38e;background:#0e160b80}
@keyframes rd-evo-trace{to{stroke-dashoffset:-880}}
@keyframes rd-evo-emphasis{0%,17%{color:#d1d5b0;border-color:#c3c6a0;background:#1d2818}25%,100%{color:#b8c4a1;border-color:#9eae8652;background:#121c10}}
@media(max-width:1000px) and (min-width:761px){
 .rd-evolution-monument .rd-evo-stage{height:470px}
 .rd-evolution-monument .rd-evo-node{width:29%;padding:15px;column-gap:9px;grid-template-columns:32px minmax(0,1fr)}
 .rd-evolution-monument .rd-evo-node-1,.rd-evolution-monument .rd-evo-node-4{left:0}.rd-evolution-monument .rd-evo-node-2,.rd-evolution-monument .rd-evo-node-3{right:0}
 .rd-evolution-monument .rd-evo-core{width:30%}.rd-evolution-monument .rd-evo-core>strong{font-size:23px}
 #rd-main .rd-evolution-monument .rd-evo-node h4{font-size:16px}
}
@media(max-width:760px){
 #rd-main .rd-evolution-monument{margin:42px auto 0;padding:27px 0 24px}
 #rd-main .rd-evolution-monument .rd-evo-heading>h3{font-size:25px;line-height:1.5}
 #rd-main .rd-evolution-monument .rd-evo-intro{font-size:13px;margin-top:15px!important;line-height:1.9}
 .rd-evolution-monument .rd-evo-stage{height:auto;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:230px auto;margin:10px auto 25px}
 .rd-evolution-monument .rd-evo-orbit{grid-area:1/1;position:relative;inset:auto;width:100%;height:230px}
 .rd-evolution-monument .rd-evo-core{grid-area:1/1;position:relative;left:auto;top:auto;transform:none;align-self:center;justify-self:center;width:62%}
 .rd-evolution-monument .rd-evo-core>span{font-size:8px;margin-bottom:9px}.rd-evolution-monument .rd-evo-core>strong{font-size:23px;line-height:1.55}
 .rd-evolution-monument .rd-evo-nodes{grid-area:2/1;position:static;inset:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:5px 0 0}
 .rd-evolution-monument .rd-evo-node{position:static;inset:auto;width:auto;grid-template-columns:32px minmax(0,1fr);padding:16px 13px;column-gap:9px}
 .rd-evolution-monument .rd-evo-icon{width:32px;height:32px}.rd-evolution-monument .rd-evo-icon>svg{width:19px;height:19px}
 #rd-main .rd-evolution-monument .rd-evo-node h4{font-size:16px;line-height:1.65}
 #rd-main .rd-evolution-monument .rd-evo-node p{font-size:13px;line-height:1.85;margin-top:9px!important}
 #rd-main .rd-evolution-monument .rd-evo-caption{font-size:13px;line-height:1.95;margin-bottom:14px!important}
 .rd-evolution-monument .rd-evo-status{font-size:9px;padding:7px 12px;line-height:1.8}
}
@media(max-width:480px){.rd-evolution-monument .rd-evo-nodes{grid-template-columns:minmax(0,1fr)}.rd-evolution-monument .rd-evo-node{padding:19px 17px;grid-template-columns:36px minmax(0,1fr)}#rd-main .rd-evolution-monument .rd-evo-node h4{font-size:17px}.rd-evolution-monument .rd-evo-core>strong{font-size:21px}}
@media(prefers-reduced-motion:reduce){.rd-evolution-monument *{animation:none!important}}
/* Center each card's objects while keeping its icon/index header compact. */
.rd-evolution-monument .rd-evo-node{grid-template-columns:minmax(0,1fr) 36px 24px minmax(0,1fr);column-gap:8px;justify-items:center;text-align:center}
.rd-evolution-monument .rd-evo-icon{grid-column:2;grid-row:1}
.rd-evolution-monument .rd-evo-index{grid-column:3;grid-row:1;align-self:center;text-align:center}
#rd-main .rd-evolution-monument .rd-evo-node h4{grid-column:1/-1;grid-row:2;text-align:center}
#rd-main .rd-evolution-monument .rd-evo-node p{grid-column:1/-1;grid-row:3;text-align:center}
@media(max-width:760px){.rd-evolution-monument .rd-evo-node{grid-template-columns:minmax(0,1fr) 32px 24px minmax(0,1fr)}}

/* /editorial-type.css */
/* Editorial roles are authored in the catalogs: no automatic title casing.
   Keep phrase-level hero spans, and prevent fragments in ordinary prose. */
html[lang="en"] #stage .future-diagram-label { text-transform:none; }
html[lang="en"] :is(.detail-section-title,.detail-chapter h3,.content-work h3,.rd-section-head h2,.rd-evidence-heading h3,.rd-evo-heading h3) { hyphens:none; word-break:normal; overflow-wrap:normal; text-wrap:balance; }
html[lang="ko"] :is(.detail-summary,.detail-description,.detail-chapter p,.detail-model>p,.content-work p,.rd-lead,.rd-evo-caption) { word-break:keep-all; overflow-wrap:normal; text-wrap:pretty; }
html[lang="en"] :is(.detail-summary,.detail-description,.detail-chapter p,.detail-model>p,.content-work p,.rd-lead,.rd-evo-caption) { hyphens:none; word-break:normal; overflow-wrap:normal; text-wrap:pretty; }
/* This divider is a phrase break on desktop; mobile chooses its own measure. */
@media(max-width:760px){
 #rd-main .rd-hero-statement br { display:none; }
 html[lang="en"] #rd-main .rd-hero-mission br { display:none; }
 html[lang="en"] #rd-main .rd-engine-brief h5 { text-wrap:balance; }
}

/* Official light and original Semita Core symbols share one image row. */
#stage #identity .identity-symbol-variants{display:flex;align-items:center;justify-content:flex-start;gap:22px;height:100%;min-width:0}
#stage #identity .identity-symbol-variants img{flex:0 0 auto}
@media(max-width:760px){#stage #identity .identity-symbol-variants{gap:16px}}

/* /header-compact.css */
/* Compact shared controls; language order follows the actual header DOM. */
body .header .header-actions{gap:10px;align-items:center}
body .header .languages,
body.research-page .header .languages{
 --compact-language-size:28px;
 box-sizing:border-box;
 position:relative;
 display:grid;
 grid-template-columns:repeat(2,var(--compact-language-size));
 align-content:center;
 justify-content:center;
 gap:0;
 width:60px;
 min-width:60px;
 height:32px;
 min-height:32px;
 padding:0;
 border:1px solid rgb(245 242 234 / .19);
 border-radius:999px;
 flex:0 0 auto;
}
body .header .languages::before,
body.research-page .header .languages::before{
 content:"";
 display:block;
 position:absolute;
 top:50%;
 left:calc(50% - var(--compact-language-size));
 width:var(--compact-language-size);
 height:var(--compact-language-size);
 border-radius:50%;
 background:#d7b44a;
 transform:translate(0,-50%);
 transition:transform 220ms cubic-bezier(.2,.75,.25,1);
 pointer-events:none;
}
body .header .languages[data-active-language="ko"]::before,
body.research-page .header .languages[data-active-language="ko"]::before{transform:translate(100%,-50%)}
body .header .languages>a,
body .header .languages>a:first-child,
body .header .languages>a:last-child,
body.research-page .header .languages>a{
 box-sizing:border-box;
 display:grid;
 place-items:center;
 width:var(--compact-language-size);
 min-width:var(--compact-language-size);
 height:var(--compact-language-size);
 min-height:var(--compact-language-size);
 flex:none;
 padding:0;
 border:0;
 border-radius:50%;
 background:transparent;
 box-shadow:none;
 font-size:9px;
 line-height:1;
 letter-spacing:.02em;
}
body.research-page .header .languages>a[aria-current]{background:transparent!important;box-shadow:none;color:#11140f!important}
body .header .languages>a:focus-visible{outline:1px solid #f5f2ea;outline-offset:2px}
@media(max-width:900px){
 body .header .header-actions{gap:7px}
 body .header .languages,
 body.research-page .header .languages{--compact-language-size:24px;width:52px;min-width:52px;height:28px;min-height:28px}
 body .header .languages>a,
 body .header .languages>a:first-child,
 body .header .languages>a:last-child,
 body.research-page .header .languages>a{font-size:8px}
 body .header .mobile-navigation>summary{width:auto;min-width:0;height:34px;min-height:34px;box-sizing:border-box;padding:0 11px;gap:5px;border-radius:999px}
 body .header .mobile-menu-label{position:static;display:inline;width:auto;height:auto;overflow:visible;clip-path:none;white-space:nowrap;font-size:10px;line-height:1;font-weight:600;letter-spacing:.01em}
 body .header .mobile-menu-glyph{width:12px;flex:0 0 12px;font-size:13px;line-height:1}
}
@media(prefers-reduced-motion:reduce){body .header .languages::before,body.research-page .header .languages::before{transition:none}}
/* Mobile branding uses the symbol and wordmark alone. */
@media(max-width:900px){body .header .brand-context{display:none}}

/* /ip-status.css */
/* Factual application status, visually distinct from interactive controls. */
#stage .ip-status,#rd-main .ip-status{
 display:inline-flex;
 align-items:center;
 justify-content:flex-start;
 flex-wrap:wrap;
 gap:3px 9px;
 box-sizing:border-box;
 width:max-content;
 max-width:100%;
 min-height:24px;
 padding:4px 9px;
 border:1px solid #d5bc76;
 border-radius:4px;
 background:#e2d2a0;
 color:#342c18;
 box-shadow:none;
 font-family:inherit;
 font-size:10px;
 font-weight:500;
 line-height:1.4;
 letter-spacing:0;
 text-align:left;
 cursor:default;
}
#stage .ip-status-label,#rd-main .ip-status-label{display:block;min-width:0;flex:0 1 auto;word-break:keep-all;overflow-wrap:normal}
#stage .ip-status-date,#rd-main .ip-status-date{display:block;flex:0 0 auto;white-space:nowrap;color:#625738;font-size:inherit;font-weight:400;font-variant-numeric:tabular-nums}
#stage #identity .identity-sample figcaption>.ip-status{margin:8px 0 12px}
#rd-main .rd-engine-copy>.ip-status{margin:-10px 0 20px}
#rd-main #rd-autonomy>.ip-status{position:relative;z-index:5;margin:-10px 0 24px;align-self:flex-start}
@media(max-width:760px){
 #stage .ip-status,#rd-main .ip-status{font-size:9px;min-height:23px;padding:4px 8px;gap:3px 7px}
 #stage #identity .identity-sample figcaption>.ip-status{margin:7px 0 10px}
 #rd-main .rd-engine-copy>.ip-status{margin:-8px 0 18px}
 #rd-main #rd-autonomy>.ip-status{margin:-8px 0 20px}
}
#stage .ip-status,#stage .ip-status *,#rd-main .ip-status,#rd-main .ip-status *{text-shadow:none}

/* /research-overview.css */
/* Three complementary scopes; no numbered sequence or measured-result graphics. */
#rd-main #rd-overview .rd-overview-map{
 display:grid;
 grid-template-columns:repeat(3,minmax(0,1fr));
 gap:20px;
 width:100%;
 max-width:1100px;
 margin:clamp(26px,3vh,38px) auto 0;
 align-items:stretch;
}
#rd-main #rd-overview .rd-overview-pillar{
 display:flex;
 flex-direction:column;
 min-width:0;
 min-height:clamp(250px,26vh,300px);
 box-sizing:border-box;
 padding:24px;
 border:1px solid #9eaf9739;
 border-top-color:#bac3a56b;
 background:linear-gradient(145deg,#0c150d88,#060c0855);
 text-align:center;
}
#rd-main #rd-overview .rd-overview-kicker{
 font:9px/1.7 ui-monospace,SFMono-Regular,monospace;
 letter-spacing:.1em;
 color:#9dad8c;
 margin:0 0 12px;
}
#rd-main #rd-overview .rd-overview-pillar h3{
 font-size:20px;
 line-height:1.5;
 font-weight:450;
 letter-spacing:-.02em;
 color:#d0d9c7;
 margin:0;
 word-break:keep-all;
 overflow-wrap:normal;
}
#rd-main #rd-overview .rd-overview-copy{
 font-size:14px;
 line-height:1.85;
 color:#a7b8a3;
 margin:15px 0 22px;
 word-break:keep-all;
 overflow-wrap:normal;
}
#rd-main #rd-overview .rd-overview-topics{
 display:flex;
 flex-wrap:wrap;
 align-items:flex-start;
 justify-content:center;
 gap:6px 14px;
 list-style:none;
 padding:16px 0 0;
 margin:auto 0 0;
 border-top:1px solid #95aa8d29;
}
#rd-main #rd-overview .rd-overview-topics li{
 font-size:11px;
 line-height:1.7;
 letter-spacing:0;
 color:#8fa78a;
 min-width:0;
 padding:0;
 margin:0;
 overflow-wrap:normal;
}
#rd-main #rd-overview .rd-overview-linkage{
 display:flex;
 align-items:center;
 justify-content:center;
 gap:20px;
 width:100%;
 max-width:1100px;
 margin:23px auto 0;
 padding:18px 20px;
 box-sizing:border-box;
 border-top:1px solid #a9ba9650;
 border-bottom:1px solid #a9ba9626;
 background:linear-gradient(90deg,transparent,#9cac7906,transparent);
 text-align:center;
}
#rd-main #rd-overview .rd-overview-linkage-label{
 flex:0 0 auto;
 font:10px/1.7 ui-monospace,SFMono-Regular,monospace;
 letter-spacing:.06em;
 color:#a9b894;
}
#rd-main #rd-overview .rd-overview-linkage p{
 font-size:15px;
 line-height:1.8;
 color:#c0ceb6;
 margin:0;
 max-width:760px;
 word-break:keep-all;
 overflow-wrap:normal;
}
#rd-main #rd-overview>.rd-source-scope{
 max-width:1000px;
 margin:21px auto 0!important;
 padding:0;
 border:0;
 font-size:12px;
 line-height:1.9;
 color:#8fa28d;
 text-align:center;
 word-break:keep-all;
 overflow-wrap:normal;
}
@media(min-width:761px) and (max-width:899px){
 #rd-main #rd-overview .rd-overview-map{grid-template-columns:1fr;gap:16px}
 #rd-main #rd-overview .rd-overview-pillar{min-height:0;padding:23px}
 #rd-main #rd-overview .rd-overview-topics{margin-top:0}
}
@media(max-width:760px){
 #rd-main #rd-overview .rd-overview-map{grid-template-columns:minmax(0,1fr);gap:16px;margin-top:26px}
 #rd-main #rd-overview .rd-overview-pillar{min-height:0;padding:23px 21px}
 #rd-main #rd-overview .rd-overview-kicker{font-size:9px;margin-bottom:10px}
 #rd-main #rd-overview .rd-overview-pillar h3{font-size:20px;line-height:1.55}
 #rd-main #rd-overview .rd-overview-copy{font-size:14px;line-height:1.9;margin:13px 0 18px}
 #rd-main #rd-overview .rd-overview-topics{margin-top:0;padding-top:14px;gap:7px 14px}
 #rd-main #rd-overview .rd-overview-topics li{font-size:11px;line-height:1.8}
 #rd-main #rd-overview .rd-overview-linkage{flex-direction:column;gap:9px;margin-top:20px;padding:19px 12px}
 #rd-main #rd-overview .rd-overview-linkage p{font-size:14px;line-height:1.9}
 #rd-main #rd-overview>.rd-source-scope{font-size:12px;line-height:1.95;margin-top:18px!important}
}
/* Balance the complete content group in taller snapped viewports, without fixed heights. */
#rd-main #rd-overview{display:flex;flex-direction:column;align-items:stretch;justify-content:center}
#rd-main #rd-overview .rd-overview-map{margin-top:0;flex:0 0 auto}

/* /research-reading-axis.css */
/* Center the research document on the browser; keep its internal reading axes. */
body.research-page #rd-main,
body.research-page .rd-footer{
 box-sizing:border-box;
 width:100%;
 max-width:1440px;
 margin-left:auto;
 margin-right:auto;
}
/* The permanent right-hand rail is reserved for screens with room beside 1440px. */
@media(max-width:1919px){
 body.research-page .rd-index{
  position:fixed;
  left:auto;
  right:24px;
  top:105px;
  bottom:auto;
  width:max-content;
  max-width:calc(100vw - 48px);
  max-height:none;
  padding:0;
  border:0;
  border-radius:0;
  background:none;
  box-shadow:none;
  transform:none;
 }
 body.research-page .rd-index>summary{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  box-sizing:border-box;
  min-height:44px;
  padding:0 16px;
  gap:10px;
  border:1px solid #aebeb335;
  border-radius:999px;
  background:#0b0e0ff7;
  box-shadow:0 5px 20px #0003;
  pointer-events:auto;
  cursor:pointer;
  font-size:10px;
 }
 body.research-page .rd-index>summary::after{content:'+';display:block;font-size:16px;line-height:1;flex:0 0 auto}
 body.research-page .rd-index[open]>summary::after{content:'−'}
 body.research-page .rd-index nav{
  position:absolute;
  left:auto;
  right:0;
  top:54px;
  bottom:auto;
  box-sizing:border-box;
  width:260px;
  max-width:calc(100vw - 48px);
  max-height:calc(100svh - 251px);
  padding:14px 18px;
  border:1px solid #aebeb333;
  border-radius:12px;
  background:#0b0e0f!important;
  box-shadow:0 12px 35px #0007;
  overflow:auto;
  overscroll-behavior:contain;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
 }
 body.research-page .rd-index:not([open]) nav{display:none}
 body.research-page #rd-main :is(.rd-hero,[data-chapter]){padding-top:190px}
}

/* Separate, explicit return-to-top control, independent of the chapter index. */
body.research-page .rd-floating-top{
 position:fixed;
 right:24px;
 bottom:28px;
 z-index:60;
 display:flex;
 flex-direction:column;
 align-items:center;
 justify-content:center;
 gap:3px;
 box-sizing:border-box;
 width:52px;
 height:52px;
 padding:0;
 border:1px solid #d7b44a;
 border-radius:50%;
 background:#d7b44a;
 color:#302c1b;
 box-shadow:0 3px 12px #0002;
 text-decoration:none;
 font:9px/1 ui-monospace,SFMono-Regular,monospace;
 letter-spacing:.02em;
 transition:background-color .18s ease,transform .18s ease;
}
body.research-page .rd-floating-top>svg{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
body.research-page .rd-floating-top>span{font:inherit;color:inherit}
body.research-page .rd-floating-top:hover{background:#e4c55e;color:#221f12;transform:translateY(-2px)}
body.research-page .rd-floating-top:focus-visible{outline:2px solid #d7b44a;outline-offset:4px}
@media(max-width:760px){body.research-page .rd-floating-top{right:20px;bottom:84px;width:48px;height:48px}}
@media(prefers-reduced-motion:reduce){body.research-page .rd-floating-top{transition:none}body.research-page .rd-floating-top:hover{transform:none}}

/* Share the index header's vertical center, including the centered wide-screen rail. */
body.research-page .rd-breadcrumb{position:fixed;left:var(--rd-toolbar-left,24px);top:var(--rd-toolbar-center,127px);transform:translateY(-50%);z-index:60;margin:0;}
body.research-page .rd-breadcrumb>a{min-height:44px;}
@media(max-width:760px){body.research-page .rd-breadcrumb>a{font-size:9px;padding-inline:10px;gap:6px;}}

@media(max-width:760px){body.research-page .rd-index nav{max-height:calc(100svh - 303px);}}

/* Shared navigation actions use the same Semita Gold as the site's controls. */
body.research-page .rd-index>summary,
body.research-page .rd-breadcrumb>a{background:#d7b44a;color:#11140f;border:1px solid #d7b44a;box-shadow:none;}
body.research-page .rd-index>summary{border-radius:999px;min-height:44px;box-sizing:border-box;padding:0 16px;}
body.research-page .rd-index>summary::after{color:inherit;}
body.research-page .rd-breadcrumb>a:hover{background:#e4c55e;color:#11140f;border-color:#e4c55e;}

/* Align only the title pill with the main navigation; keep the expanded panel anchored. */
body.research-page .rd-index>summary{transform:translateX(var(--rd-toc-shift,0px));}

@media(max-width:1919px){body.research-page .rd-index nav{width:var(--rd-toc-panel-width,220px);}body.research-page .rd-index nav a{min-width:0;overflow-wrap:normal;word-break:normal;}body.research-page .rd-index nav a>span:first-child{flex-shrink:0;}}

/* Keep the longest chapter title on one line before honoring the narrower alignment. */
@media(max-width:1919px){
 body.research-page .rd-index nav{width:max(260px,var(--rd-toc-panel-width,260px));max-width:calc(100vw - 48px);}
 body.research-page .rd-index nav a{white-space:nowrap;}
}

/* /mobile-research-layout.css */
/* Mobile research reading edition. Desktop, shared chrome and controls stay owned
   by their existing stylesheets. Append after research-document-layout.css. */
@media (max-width: 760px) {
  body.research-page #rd-main {
    --rd-mobile-inset: clamp(20px, 5.6vw, 32px);
    --rd-mobile-anchor-offset: 64px;
    --rd-mobile-copy: 14px;
    width: 100%;
    max-width: 100%;
  }
  body.research-page #rd-main :is(.rd-hero, .rd-section) {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    padding-inline: var(--rd-mobile-inset);
  }
  body.research-page #rd-main .rd-hero {
    min-height: 100svh;
    padding-top: 188px;
    padding-bottom: 64px;
    justify-content: center;
  }
  body.research-page #rd-main .rd-hero-title {
    font-size: 32px;
    font-weight: 600;
    line-height: 1.17;
    letter-spacing: -.055em;
    overflow-wrap: normal;
    word-break: keep-all;
  }
  body.research-page #rd-main .rd-hero-accent { font-weight: 600; }
  body.research-page #rd-main .rd-hero-title:lang(en) {
    font-size: 30px;
    line-height: 1.1;
  }
  body.research-page #rd-main .rd-hero-mission {
    margin-top: 26px;
    font-size: 19px;
    line-height: 1.5;
    letter-spacing: -.035em;
  }
  body.research-page #rd-main .rd-hero-mission:lang(en) { font-size: 19px !important; }
  body.research-page #rd-main .rd-hero-statement {
    font-size: 14px;
    line-height: 1.85;
    max-width: 38em;
    margin-top: 23px !important;
  }
  body.research-page #rd-main .rd-hero-meta { gap: 12px; flex-wrap: wrap; font-size: 8px; }
  body.research-page #rd-main .rd-hero-meta span + span { padding-left: 12px; }
  body.research-page #rd-main .rd-section {
    min-height: 0;
    /* Share the fixed-toolbar clearance with mobile chapter navigation.
       112px of natural padding +64px anchor offset preserves heading position. */
    padding-top: 112px;
    padding-bottom: 48px;
    scroll-margin-top: var(--rd-mobile-anchor-offset) !important;
  }
  body.research-page #rd-main #rd-overview { justify-content: flex-start; }
  body.research-page #rd-main .rd-section-head { margin-bottom: 30px; }
  body.research-page #rd-main .rd-section-head > .rd-eyebrow {
    margin-bottom: 15px !important;
    font-size: 9px;
    letter-spacing: .11em;
    line-height: 1.8;
  }
  body.research-page #rd-main .rd-section-head h2 {
    font-size: clamp(26px, 7vw, 28px);
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: -.045em;
    word-break: keep-all;
    overflow-wrap: normal;
    text-wrap: balance;
  }
  body.research-page #rd-main .rd-section-head > :is(.rd-lead, p:not(.rd-eyebrow)) {
    margin-top: 22px !important;
    font-size: var(--rd-mobile-copy);
    line-height: 1.9;
    color: #b9c4bc;
    text-wrap: pretty;
    overflow-wrap: anywhere;
    word-break: keep-all;
  }
  body.research-page #rd-main .rd-section-head h2:lang(en) { word-break: normal; }
  body.research-page #rd-main :is(.rd-overview-map, .rd-grid, .rd-capability-grid, .rd-reliability-grid, .rd-assessment-grid, .rd-autonomy-grid) {
    grid-template-columns: minmax(0, 1fr);
    gap: 14px;
  }
  body.research-page #rd-main #rd-overview .rd-overview-pillar {
    min-height: 0;
    padding: 22px 0;
    text-align: left;
    border: 0;
    border-top: 1px solid #a5b49d46;
    border-radius: 0;
    background: transparent;
  }
  body.research-page #rd-main #rd-overview .rd-overview-pillar h3 { font-size: 17px; line-height: 1.5; }
  body.research-page #rd-main #rd-overview .rd-overview-copy { font-size: 14px; line-height: 1.85; margin: 12px 0 18px; }
  body.research-page #rd-main #rd-overview .rd-overview-topics { justify-content: flex-start; gap: 5px 14px; }
  body.research-page #rd-main #rd-overview .rd-overview-linkage { align-items: flex-start; text-align: left; padding: 20px 0; gap: 10px; }
  body.research-page #rd-main #rd-overview .rd-overview-linkage p { font-size: 15px; line-height: 1.8; }

  /* Engine chapters: the role and complete copy lead; the live UI has its own
     bounded surface in normal flow rather than an absolute decorative offset. */
  body.research-page #rd-main .rd-engine { gap: 0; overflow: clip; }
  body.research-page #rd-main .rd-engine .rd-engine-copy { min-width: 0; width: 100%; min-height: 0; }
  body.research-page #rd-main .rd-engine-copy .rd-section-head { margin-bottom: 18px; }
  body.research-page #rd-main .rd-engine-copy .rd-section-head h2 { font-size: clamp(28px, 8vw, 32px); line-height: 1.05; }
  body.research-page #rd-main .rd-engine-copy > h3 { font-size: 17px !important; line-height: 1.55; letter-spacing: -.03em; margin-bottom: 19px; }
  body.research-page #rd-main .rd-engine-copy > .rd-lead { font-size: 14px; line-height: 1.9; }
  body.research-page #rd-main .rd-feature-list { grid-template-columns: minmax(0, 1fr); gap: 0; margin-top: 25px; }
  body.research-page #rd-main .rd-feature-list li { padding: 14px 0; gap: 12px; align-items: flex-start; }
  body.research-page #rd-main .rd-feature-list li span { font-size: 13px; line-height: 1.8; }
  body.research-page #rd-main .rd-feature-list .rd-icon { width: 20px; height: 20px; flex: 0 0 auto; margin-top: 2px; }
  body.research-page #rd-main .rd-engine-io { grid-template-columns: minmax(0, 1fr); gap: 18px; padding-top: 20px; margin-top: 18px; }
  body.research-page #rd-main .rd-engine-io dt { font-size: 10px; line-height: 1.6; }
  body.research-page #rd-main .rd-engine-io dd { font-size: 13px; line-height: 1.85; }
  body.research-page #rd-main .rd-engine-copy :is(.rd-engine-note, .rd-engine-flow) { font-size: 13px; line-height: 1.85; }
  body.research-page #rd-main :is(.rd-engine, #rd-autonomy) > .rd-engine-visual {
    position: relative;
    inset: auto !important;
    width: calc(100% + 2 * var(--rd-mobile-inset));
    height: clamp(270px, 80vw, 370px);
    max-height: 370px;
    margin: 30px calc(-1 * var(--rd-mobile-inset)) 0;
    flex: none;
  }
  body.research-page #rd-main .rd-magi-delta { margin-top: 28px; padding: 24px 0 0; text-align: left; }
  body.research-page #rd-main .rd-magi-delta > h3 { font-size: 17px !important; text-align: left; }
  body.research-page #rd-main .rd-magi-delta > div { gap: 23px; margin-top: 24px; }
  body.research-page #rd-main .rd-magi-delta :is(article, h4, article p) { text-align: left; }
  body.research-page #rd-main .rd-magi-delta h4 { font-size: 16px; }
  body.research-page #rd-main .rd-magi-delta article p { font-size: 13px; line-height: 1.85; }

  /* Three engine briefs become a concise comparison stack. */
  body.research-page #rd-main .rd-explorer { margin-top: 32px; border: 0; border-top: 1px solid #d5d9d82e; border-radius: 0; background: transparent; }
  body.research-page #rd-main .rd-explorer-title { padding: 24px 0; gap: 10px; }
  body.research-page #rd-main .rd-explorer-title > h3 { font-size: 17px; line-height: 1.5; }
  body.research-page #rd-main .rd-engine-briefs { padding: 0; gap: 12px; }
  body.research-page #rd-main .rd-engine-brief { padding: 23px 0; border: 0; border-top: 1px solid #b2c0b52e; border-radius: 0; background: transparent; text-align: left; }
  body.research-page #rd-main .rd-engine-brief-head { justify-content: flex-start; gap: 11px; }
  body.research-page #rd-main .rd-engine-brief h4 { font-size: 20px; }
  body.research-page #rd-main .rd-engine-brief h5 { font-size: 16px; line-height: 1.6; margin-top: 16px; }
  body.research-page #rd-main :is(.rd-engine-brief-copy, .rd-engine-brief dd) { font-size: 13px; line-height: 1.85; text-align: left; }
  body.research-page #rd-main .rd-engine-brief dt { text-align: left; font-size: 10px; }
  body.research-page #rd-main .rd-engine-brief dl > div { padding-top: 13px; margin-top: 14px; }
  body.research-page #rd-main :is(.rd-card, .rd-assessment-grid > article) { padding: 23px 0; text-align: left; border: 0; border-top: 1px solid #b2c0b52e; border-radius: 0; background: transparent; }
  body.research-page #rd-main :is(.rd-card, .rd-assessment-grid > article) h3 { font-size: 17px; line-height: 1.5; }
  body.research-page #rd-main :is(.rd-card, .rd-assessment-grid > article) p { font-size: 14px; line-height: 1.85; text-align: left; }
  body.research-page #rd-main #rd-autonomy > .rd-autonomy-grid { margin-top: 24px; }

  /* Mobile tables read as labelled records. Left alignment makes longer KR/EN
     entries easier to follow without expanding the viewport. */
  body.research-page #rd-main :is(.rd-component-matrix, .rd-evaluation-table, .rd-evidence-table) { margin-top: 28px; }
  body.research-page #rd-main :is(.rd-component-matrix, .rd-evaluation-table, .rd-evidence-table) :is(caption, th, td) { text-align: left; word-break: keep-all; overflow-wrap: anywhere; }
  body.research-page #rd-main :is(.rd-component-matrix, .rd-evaluation-table, .rd-evidence-table) tbody tr { padding: 20px 0; }
  body.research-page #rd-main :is(.rd-component-matrix, .rd-evaluation-table, .rd-evidence-table) th[scope=row] { font-size: 17px; line-height: 1.6; padding: 0 0 11px; }
  body.research-page #rd-main :is(.rd-component-matrix, .rd-evaluation-table, .rd-evidence-table) td { font-size: 13px; line-height: 1.85; padding: 9px 0; }
  body.research-page #rd-main :is(.rd-component-matrix, .rd-evaluation-table, .rd-evidence-table) td::before { text-align: left; margin: 0 0 4px; font-size: 10px; color: #a7b99e; }
  body.research-page #rd-main :is(.rd-architecture-boundary, .rd-architecture-feedback) { text-align: left; font-size: 13px; line-height: 1.85; }

  /* Complete technical diagrams keep a legible 680px canvas. A compact, visible
     pan surface avoids shrinking labels to illegible miniature text. */
  body.research-page #rd-main :is(.rd-functional-figure, .rd-evidence-view) { margin: 36px auto 0; padding-top: 24px; }
  body.research-page #rd-main .rd-engine > .rd-functional-figure { margin-top: 30px; padding-inline: 0; background: none; }
  body.research-page #rd-main :is(.rd-blueprint-heading, .rd-evidence-heading) { text-align: left; align-items: flex-start; gap: 8px; }
  body.research-page #rd-main :is(.rd-blueprint-heading, .rd-evidence-heading) h3 { text-align: left; font-size: 17px; line-height: 1.5; }
  body.research-page #rd-main :is(.rd-fn-status, .rd-evidence-status) { text-align: left; font-size: 10px; line-height: 1.8; }
  body.research-page #rd-main .rd-fn-viewport { border: 0; border-block: 1px solid #91ab963d; border-radius: 0; background: transparent; padding: 20px 0 18px; }
  body.research-page #rd-main .rd-fn-viewport .rd-fn-svg { display: block; width: 680px; min-width: 680px; max-width: none; height: auto; max-height: none; margin: 0; }
  body.research-page #rd-main .rd-fn-svg .rd-fn-edge text { font-size: 16px; }
  body.research-page #rd-main .rd-fn-pan-hint { font-size: 10px; padding: 6px 0; color: #b5c3b5; }
  body.research-page #rd-main :is(.rd-fn-legend, .rd-fn-shape-legend) { justify-content: flex-start; font-size: 10px; gap: 9px 16px; }
  body.research-page #rd-main :is(.rd-functional-figure, .rd-evidence-view) > figcaption { text-align: left; font-size: 13px; line-height: 1.85; margin-top: 18px; }
  body.research-page #rd-main :is(.rd-fn-type-note, .rd-fn-lane-note) { text-align: left; font-size: 13px; line-height: 1.85; }
  body.research-page #rd-main :is(.rd-fn-class-head, .rd-fn-class-row) { text-align: left; }
  body.research-page #rd-main .rd-fn-class-row { grid-template-columns: 66px minmax(0, 1fr); font-size: 13px; gap: 7px 14px; padding: 19px 0; }
  body.research-page #rd-main .rd-fn-class-row strong { font-size: 13px; }
  body.research-page #rd-main .rd-fn-class-row em { font-size: 11px; }
  body.research-page #rd-main .rd-fn-lane { text-align: left; padding: 0 0 8px; border: 0; border-top: 1px solid #a5b59a66; border-radius: 0; background: transparent; }
  body.research-page #rd-main .rd-fn-lane h4 { text-align: left; font-size: 12px; }
  body.research-page #rd-main .rd-fn-lane li { display: grid; grid-template-columns: 20px minmax(0, 1fr); gap: 10px; text-align: left; font-size: 13px; line-height: 1.8; }
  body.research-page #rd-main .rd-fn-lane li::before { margin-bottom: 0; padding-top: 3px; }

  /* Vision, workflow and roadmap carry all explanatory text in full-width
     reading rows, with the orbit retained as the structural overview. */
  body.research-page #rd-main .rd-orbit-detail-list { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  body.research-page #rd-main .rd-orbit-detail-list > li { display: grid; grid-template-columns: 24px minmax(0, 1fr); gap: 4px 12px; padding-top: 17px; }
  body.research-page #rd-main .rd-orbit-detail-list .rd-orbit-number { grid-column: 1; grid-row: 1 / 3; padding-top: 3px; margin: 0; }
  body.research-page #rd-main .rd-orbit-detail-list strong { grid-column: 2; font-size: 15px; }
  body.research-page #rd-main .rd-orbit-detail-list p { grid-column: 2; font-size: 13px; line-height: 1.85; }
  body.research-page #rd-main .rd-vision-outcomes { padding: 23px 0; border: 0; border-top: 1px solid #aab59555; border-radius: 0; background: transparent; text-align: left; }
  body.research-page #rd-main .rd-vision-outcomes > h4 { font-size: 17px; }
  body.research-page #rd-main .rd-vision-outcomes > ol { grid-template-columns: minmax(0, 1fr); gap: 11px; }
  body.research-page #rd-main .rd-vision-outcomes > ol > li { padding: 20px 0; border: 0; border-top: 1px solid #a4b79245; border-radius: 0; background: transparent; text-align: left; }
  body.research-page #rd-main .rd-vision-outcomes :is(.rd-outcome-label, strong, p) { text-align: left; }
  body.research-page #rd-main .rd-vision-outcomes li > strong { font-size: 16px; }
  body.research-page #rd-main .rd-vision-outcomes li > p { font-size: 13px; line-height: 1.85; }
  body.research-page #rd-main .rd-wio-orbit { margin-bottom: 30px; }
  body.research-page #rd-main .rd-wio-details { gap: 0; }
  body.research-page #rd-main .rd-wio-details > li { padding: 21px 0; }
  body.research-page #rd-main .rd-wio-details .rd-wio-copy h3 { font-size: 16px; }
  body.research-page #rd-main .rd-wio-details .rd-wio-copy p { font-size: 13px; line-height: 1.85; }
  body.research-page #rd-main .rd-roadmap > :is(li, article) { grid-template-columns: 1fr; gap: 11px; padding: 26px 0; }
  body.research-page #rd-main .rd-roadmap :is(h3, p) { grid-column: 1; max-width: none; }
  body.research-page #rd-main .rd-roadmap h3 { font-size: 17px !important; line-height: 1.5; }
  body.research-page #rd-main .rd-roadmap p { font-size: 14px; line-height: 1.85; }
  body.research-page #rd-main .rd-evidence-cycle { grid-template-columns: minmax(0, 1fr); gap: 23px; }
  body.research-page #rd-main .rd-evidence-cycle strong { font-size: 16px; }
  body.research-page #rd-main .rd-evidence-cycle p { font-size: 13px; line-height: 1.85; }
  body.research-page #rd-main .rd-evidence-bridge ol { grid-template-columns: minmax(0, 1fr); gap: 22px; }
  body.research-page #rd-main .rd-evidence-bridge strong { font-size: 15px; }
  body.research-page #rd-main .rd-evidence-bridge li p { font-size: 13px; line-height: 1.85; }
  body.research-page #rd-main .rd-evolution-monument { margin-top: 40px; }
  body.research-page #rd-main .rd-evolution-monument .rd-evo-node { padding: 22px 0; border: 0; border-top: 1px solid #9caf8f4d; border-radius: 0; background: transparent; }
  body.research-page #rd-main .rd-evolution-monument .rd-evo-node h4 { font-size: 18px; }
  body.research-page #rd-main .rd-evolution-monument .rd-evo-node p { font-size: 13px; line-height: 1.85; }
  body.research-page #rd-main .rd-closing > p { font-size: clamp(26px, 7vw, 28px) !important; line-height: 1.5; }
}
@media (max-width: 360px) {
  body.research-page #rd-main { --rd-mobile-inset: 20px; }
  body.research-page #rd-main .rd-hero-title { font-size: 30px; }
  body.research-page #rd-main .rd-hero-title:lang(en) { font-size: 30px; }
  body.research-page #rd-main .rd-hero-mission { font-size: 18px; }
  body.research-page #rd-main .rd-section-head h2 { font-size: 28px; }
}

/* Revision6: editorial spacing below the locked hero and shared controls.
   Explanatory copy, figures and labels share one reading axis; no new shells. */
@media (max-width: 760px) {
  body.research-page #rd-main .rd-section-head { margin-bottom: 34px; }
  body.research-page #rd-main .rd-section-head > .rd-lead { max-width: 38em; }
  body.research-page #rd-main .rd-section > .rd-engine-note { margin-bottom: 22px; }
  body.research-page #rd-main #rd-overview .rd-overview-map { gap: 0; }
  body.research-page #rd-main #rd-overview .rd-overview-pillar { padding-block: 25px; }
  body.research-page #rd-main #rd-overview .rd-overview-kicker { margin-bottom: 9px; }
  body.research-page #rd-main #rd-overview .rd-overview-copy { margin: 13px 0 18px; }
  body.research-page #rd-main #rd-overview .rd-overview-linkage { margin-top: 12px; padding-block: 24px; }
  body.research-page #rd-main #rd-overview .rd-source-scope { text-align: left; }
  body.research-page #rd-main .rd-engine-copy > .rd-lead { max-width: 38em; }
  body.research-page #rd-main .rd-feature-list { margin-top: 28px; }
  body.research-page #rd-main .rd-feature-list li { padding-block: 15px; }
  body.research-page #rd-main .rd-engine-io { gap: 21px; margin-top: 22px; padding-top: 22px; }
  body.research-page #rd-main .rd-engine-io dt { margin-bottom: 6px; }
  body.research-page #rd-main .rd-engine-io dd { margin-top: 0; }
  body.research-page #rd-main .rd-engine-copy > .rd-engine-flow { margin-top: 21px; }
  body.research-page #rd-main .rd-magi-delta > div { gap: 25px; }
  body.research-page #rd-main .rd-magi-delta h4 { margin-bottom: 8px; }
  body.research-page #rd-main :is(.rd-autonomy-grid, .rd-capability-grid, .rd-reliability-grid, .rd-assessment-grid) { gap: 0; }
  body.research-page #rd-main :is(.rd-card, .rd-assessment-grid > article) { padding-block: 26px; }
  body.research-page #rd-main :is(.rd-card, .rd-assessment-grid > article) p { margin-top: 12px !important; }
  body.research-page #rd-main .rd-card-index { display: block; margin-bottom: 10px; }
  body.research-page #rd-main .rd-engine-briefs { gap: 0; }
  body.research-page #rd-main .rd-engine-brief { padding-block: 27px; }
  body.research-page #rd-main .rd-engine-brief-copy { margin-top: 12px; margin-bottom: 20px; }
  body.research-page #rd-main .rd-engine-brief dl { margin-top: 0; }
  body.research-page #rd-main .rd-engine-brief dl > div { padding-top: 15px; margin-top: 15px; }
  body.research-page #rd-main .rd-engine-brief dd { margin-top: 7px; }
  body.research-page #rd-main :is(.rd-component-matrix, .rd-evaluation-table, .rd-evidence-table) caption { padding-bottom: 18px; }
  body.research-page #rd-main :is(.rd-component-matrix, .rd-evaluation-table, .rd-evidence-table) tbody tr { padding-block: 23px; }
  body.research-page #rd-main :is(.rd-component-matrix, .rd-evaluation-table, .rd-evidence-table) td { padding-block: 10px; }
  body.research-page #rd-main :is(.rd-blueprint-heading, .rd-evidence-heading) { gap: 9px; }
  body.research-page #rd-main .rd-blueprint-drawing { margin-top: 23px; }
  body.research-page #rd-main .rd-fn-viewport {
    /* Touch exploration uses the whole screen; captions retain the text inset. */
    width: calc(100% + 2 * var(--rd-mobile-inset));
    max-width: none;
    margin-inline: calc(-1 * var(--rd-mobile-inset));
    padding-block: 22px;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    scroll-padding-inline: var(--rd-mobile-inset);
  }
  body.research-page #rd-main .rd-fn-pan-hint { text-align: left; padding: 8px 0 0; margin-top: 7px; }
  body.research-page #rd-main :is(.rd-fn-legend, .rd-fn-shape-legend) { gap: 10px 18px; margin-block: 18px 12px; }
  body.research-page #rd-main :is(.rd-functional-figure, .rd-evidence-view) > figcaption { max-width: 38em; margin-left: 0; margin-top: 20px; }
  body.research-page #rd-main .rd-fn-lanes { gap: 24px; }
  body.research-page #rd-main .rd-fn-lane li { padding-block: 13px; }
  body.research-page #rd-main .rd-wio-details > li { gap: 14px; padding-block: 23px; }
  body.research-page #rd-main .rd-wio-details .rd-wio-copy { padding-top: 1px; }
  body.research-page #rd-main .rd-roadmap > :is(li, article) { padding-block: 29px; gap: 12px; }
  body.research-page #rd-main .rd-roadmap .rd-phase { line-height: 1.6; }
  body.research-page #rd-main .rd-evidence-bridge { margin-top: 32px; padding-top: 24px; }
  body.research-page #rd-main .rd-research-fields { gap: 9px 17px; padding-top: 23px; }
  body.research-page #rd-main .rd-durability-line { justify-content: flex-start; gap: 10px 20px; text-align: left; }
  body.research-page #rd-main .rd-closing { padding-top: 54px; text-align: left; }
  body.research-page #rd-main .rd-closing > p { text-align: left; margin-left: 0 !important; }
  body.research-page #rd-main .rd-closing .rd-button {
    min-height: 44px;
    padding-block: 8px;
    margin-top: 18px;
    gap: 18px;
    font-size: 13px;
    font-weight: 450;
    line-height: 1.5;
    box-sizing: border-box;
  }
}

/* A normal-flow engine demonstration is content, rather than an atmospheric
   background. Remove the inherited desktop lens/wash around its actual UI. */
@media (max-width: 760px) {
  body.research-page #rd-main [data-engine-film].rd-engine-visual {
    z-index: 0;
    opacity: 1;
    box-shadow: none;
    border: 0;
    mask-image: none !important;
    -webkit-mask-image: none !important;
  }
  body.research-page #rd-main [data-engine-film].rd-engine-visual > :is(iframe, img) {
    opacity: 1;
    filter: none !important;
    transform: none;
    mask-image: linear-gradient(0deg, transparent, #000 3%, #000 97%, transparent);
    -webkit-mask-image: linear-gradient(0deg, transparent, #000 3%, #000 97%, transparent);
    mask-composite: add;
    -webkit-mask-composite: source-over;
  }
  body.research-page #rd-main [data-engine-film].rd-engine-visual::before,
  body.research-page #rd-main [data-engine-film].rd-engine-visual::after {
    background: none;
    box-shadow: none;
    filter: none;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    mask-image: none;
    -webkit-mask-image: none;
  }
}

/* Revision7: prose reads quietly; technical groups and complete figures carry
   their own alignment. Hero typography and shared brand controls are locked. */
@media (max-width: 760px) {
  body.research-page #rd-main { --rd-mobile-copy: 13.5px; }
  body.research-page #rd-main .rd-section-head > :is(.rd-lead, p:not(.rd-eyebrow)),
  body.research-page #rd-main .rd-engine-copy > .rd-lead,
  body.research-page #rd-main #rd-overview .rd-overview-copy,
  body.research-page #rd-main :is(.rd-card, .rd-assessment-grid > article) p,
  body.research-page #rd-main .rd-roadmap p {
    font-size: 13.5px;
    line-height: 1.85;
    word-break: keep-all;
    overflow-wrap: break-word;
    text-wrap: pretty;
  }
  body.research-page #rd-main .rd-section :is(.rd-engine-brief-copy, .rd-engine-brief dd, .rd-engine-io dd) {
    font-size: 13px;
    line-height: 1.85;
    overflow-wrap: break-word;
    word-break: keep-all;
  }
  body.research-page #rd-main .rd-engine-io {
    padding: 17px 16px;
    margin-top: 23px;
    border: 1px solid #a4b59d35;
    background: #a6bba008;
    gap: 15px;
  }
  body.research-page #rd-main .rd-engine-io > div + div {
    border-top: 1px solid #a4b59d25;
    padding-top: 15px;
  }
  body.research-page #rd-main .rd-engine-briefs { gap: 13px; }
  body.research-page #rd-main .rd-engine-brief {
    padding: 20px 17px;
    border: 1px solid #a4b59d30;
    background: #a6bba006;
  }
  body.research-page #rd-main #rd-overview .rd-overview-linkage {
    align-items: center;
    text-align: center;
    gap: 11px;
  }
  body.research-page #rd-main #rd-overview .rd-overview-linkage p { font-size: 13.5px; max-width: 31em; }
  body.research-page #rd-main .rd-functional-figure > .rd-blueprint-heading {
    align-items: center;
    text-align: center;
  }
  body.research-page #rd-main .rd-functional-figure > .rd-blueprint-heading :is(h3, .rd-fn-status) { text-align: center; }
  body.research-page #rd-main .rd-functional-figure > figcaption {
    margin-inline: auto;
    max-width: 33em;
    text-align: center;
    font-size: 13px;
  }
  body.research-page #rd-main .rd-functional-figure :is(.rd-fn-type-note, .rd-fn-lane-note, .rd-fn-pan-hint) { text-align: center; }
  body.research-page #rd-main .rd-functional-figure :is(.rd-fn-legend, .rd-fn-shape-legend) { justify-content: center; }
  body.research-page #rd-main :is(.rd-component-matrix, .rd-evaluation-table, .rd-evidence-table) :is(td, th, caption) {
    text-align: left;
    overflow-wrap: break-word;
    word-break: keep-all;
  }
  body.research-page #rd-main .rd-fn-class-row { grid-template-columns: 76px minmax(0, 1fr); gap: 8px 12px; }
  body.research-page #rd-main .rd-fn-class-row em { white-space: normal; }
  body.research-page #rd-main .rd-closing { text-align: center; }
  body.research-page #rd-main .rd-closing > p { text-align: center; margin-inline: auto !important; }
  body.research-page #rd-main .rd-closing .rd-button { justify-content: center; font-size: 13px; }
}

/* Balance short English technical labels and the closing phrase independently;
   this keeps final words such as “state”, “paths” and “own” with their context. */
@media (max-width: 760px) {
  html[lang='en'] body.research-page #rd-main .rd-functional-figure .rd-blueprint-heading :is(h3, .rd-fn-status),
  html[lang='en'] body.research-page #rd-main .rd-magi-delta article p {
    text-wrap: balance;
    word-break: normal;
    overflow-wrap: normal;
  }
  html[lang='en'] body.research-page #rd-main .rd-closing > p > em {
    display: inline-block;
    width: 100%;
    max-width: 100%;
    vertical-align: top;
    text-wrap: balance;
  }
}

/* Preserve Korean word units in technical notes outside the primary leads. */
@media (max-width: 760px) {
  html[lang='ko'] body.research-page #rd-main :is(.rd-architecture-feedback, .rd-architecture-boundary, .rd-fn-type-note, .rd-fn-lane-note, .rd-engine-note, .rd-engine-flow, .rd-small-note, .rd-functional-figure > figcaption, .rd-evidence-view > figcaption) {
    word-break: keep-all;
    overflow-wrap: break-word;
    text-wrap: pretty;
  }
}

/* Revision11: full-fit relation geometry replaces sideways exploration. */
@media(max-width:760px){
 body.research-page #rd-main .rd-fn-viewport{
  width:100%;max-width:100%;margin-inline:0;padding-block:10px 0;
  overflow:visible;scroll-padding:0;border:0;
 }
 body.research-page #rd-main .rd-fn-viewport>.rd-fn-svg{display:none}
 body.research-page #rd-main .rd-fn-viewport>.rd-fn-svg-mobile{display:block;width:100%;max-width:100%;height:auto}
 body.research-page #rd-main .rd-fn-pan-hint{display:none}
 /* Only the outer six percent blends into the shared atmosphere; the live UI
    stays clear through the middle and has no rectangular lit perimeter. */
 body.research-page #rd-main [data-engine-film].rd-engine-visual>:is(iframe,img){
  mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent),linear-gradient(0deg,transparent,#000 7%,#000 93%,transparent);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent),linear-gradient(0deg,transparent,#000 7%,#000 93%,transparent);
  mask-composite:intersect;-webkit-mask-composite:source-in;
 }
}
/* Revision11 coherent full-fit networks use the complete phone width. */
@media(max-width:760px){
 body.research-page #rd-main .rd-fn-viewport{width:calc(100% + 2 * var(--rd-mobile-inset));max-width:none;margin-inline:calc(-1 * var(--rd-mobile-inset));overflow:visible}
 body.research-page #rd-main [data-engine-film].rd-engine-visual>:is(iframe,img){
  mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent),linear-gradient(0deg,transparent,#000 20%,#000 80%,transparent);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent),linear-gradient(0deg,transparent,#000 20%,#000 80%,transparent);
 }
}

/* Revision12: prose follows phrases and punctuation; concise labels balance
   independently. Keep the authored hierarchy and every word unchanged. */
@media(max-width:760px){
 body.research-page #rd-main .rd-section :is(p,dd,td,th,figcaption){
  min-width:0;
  overflow-wrap:break-word;
  text-wrap:pretty;
 }
 html[lang='ko'] body.research-page #rd-main .rd-section :is(p,dd,td,th,figcaption){
  word-break:keep-all;
  line-break:strict;
 }
 html[lang='en'] body.research-page #rd-main .rd-section :is(p,dd,td,th,figcaption){
  word-break:normal;
  hyphens:manual;
 }
 body.research-page #rd-main .rd-section :is(h2,h3,h4,.rd-fn-status,.rd-evidence-status,.rd-outcomes-status){
  word-break:keep-all;
  overflow-wrap:break-word;
  text-wrap:balance;
 }
 html[lang='en'] body.research-page #rd-main .rd-section :is(h2,h3,h4,.rd-fn-status,.rd-evidence-status,.rd-outcomes-status){word-break:normal}
 body.research-page #rd-main .rd-section :is(.rd-overview-copy,.rd-engine-brief-copy,.rd-magi-delta article p,.rd-vision-outcomes li>p,.rd-evo-node p,.rd-orbit-detail-list p,.rd-fn-anchor>p:last-child){
  text-wrap:balance;
 }
 body.research-page #rd-main .rd-section :is(.rd-functional-figure,.rd-evidence-view)>figcaption{
  text-wrap:pretty;
  overflow-wrap:break-word;
 }
 body.research-page #rd-main .rd-closing>p>em{
  display:inline-block;width:100%;max-width:100%;vertical-align:top;text-wrap:balance;
 }
}

/* /mobile-background-treatment.css */
/* Mobile composition: preserve the opening aperture and encoded film.
   Reading glass follows the landed page on loops, posters and retained final
   frames. Active movies still disable it; decoder handoff never restyles copy. */
@media (max-width:760px), (max-width:1024px) and (hover:none) and (pointer:coarse) {
  #stage[data-mobile-reading="true"] #film-depth > div { display:none !important; }
  #stage[data-mobile-reading="true"] #shade .scene-grade:not([data-grade="0"]) {
    background:none !important;
  }
  #stage[data-mobile-reading="true"] #shade .scene-grade:not([data-grade="0"])::before,
  #stage[data-mobile-reading="true"] #shade .scene-grade:not([data-grade="0"])::after {
    content:none !important;
    background:none !important;
    -webkit-mask-image:none !important;mask-image:none !important;
    -webkit-backdrop-filter:none !important;backdrop-filter:none !important;
  }
  #stage[data-mobile-reading="true"] .copy[data-page],#stage[data-mobile-reading="true"] .copy[data-page] * {-webkit-backdrop-filter:none !important;backdrop-filter:none !important;}
  #stage[data-mobile-reading="true"][data-run-active="false"][data-run-kind="idle"]:not([data-departure-active="true"]):not([data-departure-bridge-held="true"]) .copy:not([aria-hidden="true"]) :is(.hero,.chapter-hero,.future-hero,.chapter-manifesto,.future-body,.contact-offices) {-webkit-backdrop-filter:blur(1.25px) !important;backdrop-filter:blur(1.25px) !important;}

}

/* Bright engine/ship footage needs glass only behind these two prose blocks. */
@media (max-width:760px), (max-width:1024px) and (hover:none) and (pointer:coarse) {
 #stage[data-mobile-reading="true"] :is(#vision-execution,#contact).copy .future-body::before,
 #stage[data-mobile-reading="true"] #vision.copy > [data-editorial-content]::before {-webkit-backdrop-filter:none;backdrop-filter:none;}
 #stage[data-mobile-reading="true"][data-run-active="false"][data-run-kind="idle"]:not([data-departure-active="true"]):not([data-departure-bridge-held="true"]) .copy:not([aria-hidden="true"]):is(#vision-execution,#contact) .future-body::before {-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);}
 #stage[data-mobile-reading="true"][data-run-active="false"][data-run-kind="idle"]:not([data-departure-active="true"]):not([data-departure-bridge-held="true"]) #vision.copy:not([aria-hidden="true"]) > [data-editorial-content]::before {-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);}
 #stage[data-mobile-reading="true"][data-run-active="false"][data-run-kind="idle"]:not([data-departure-active="true"]):not([data-departure-bridge-held="true"]) #vision-execution.copy:not([aria-hidden="true"]) .future-title {-webkit-backdrop-filter:blur(16px) !important;backdrop-filter:blur(16px) !important;}
}
@media (max-width:760px) {
  body.product-detail #stage #shade .scene-grade { background:none !important; }
  body.product-detail #stage #shade .scene-grade::before,
  body.product-detail #stage #shade .scene-grade::after {
    content:none !important;background:none !important;
    -webkit-mask-image:none !important;mask-image:none !important;
    -webkit-backdrop-filter:none !important;backdrop-filter:none !important;
  }
}

/* Revision10 — black glass uses the existing Business surface. The fixed
   edge fades frame chrome; the individual linear film grades are idle only. */
@media (max-width:760px), (max-width:1024px) and (hover:none) and (pointer:coarse) {
 body .header::before {content:none;}
 #stage::before,body.research-page::before {content:"";position:fixed;inset:0 0 auto;height:132px;z-index:-2;pointer-events:none;background:linear-gradient(180deg,#000 0%,rgb(0 0 0 / .88) 24%,rgb(0 0 0 / .34) 61%,transparent 100%);}
 body.research-page::before {z-index:0;}
 #stage::after {content:"";position:absolute;inset:auto 0 0;height:150px;z-index:-2;pointer-events:none;background:linear-gradient(0deg,#000 0%,rgb(0 0 0 / .8) 25%,rgb(0 0 0 / .26) 65%,transparent 100%);}
 body:is(.product-detail,.research-page) #detail-footer::before {display:none;}
 body.research-page::after {content:"";position:fixed;inset:auto 0 0;height:120px;z-index:0;pointer-events:none;background:linear-gradient(0deg,#000 0%,rgb(0 0 0 / .76) 30%,transparent 100%);}
 #stage[data-mobile-reading="true"] .scene-grade[data-grade="1"] {--mobile-grade:none;--mobile-dof:linear-gradient(90deg,#000 0%,rgb(0 0 0 / .45) 2%,transparent 15%);}
 #stage[data-mobile-reading="true"] .scene-grade[data-grade="2"] {--mobile-grade:linear-gradient(140deg,#000 0%,rgb(0 0 0 / .55) 8%,transparent 44%);--mobile-dof:linear-gradient(140deg,#000 0%,rgb(0 0 0 / .45) 10%,transparent 41%);}
 #stage[data-mobile-reading="true"] .scene-grade[data-grade="3"] {--mobile-grade:linear-gradient(100deg,#000 0%,rgb(0 0 0 / .55) 9%,transparent 48%);--mobile-dof:linear-gradient(100deg,#000 0%,rgb(0 0 0 / .45) 11%,transparent 45%);}
 #stage[data-mobile-reading="true"] .scene-grade[data-grade="4"] {--mobile-grade:linear-gradient(145deg,#000 0%,rgb(0 0 0 / .55) 10%,transparent 46%);--mobile-dof:linear-gradient(145deg,#000 0%,rgb(0 0 0 / .45) 12%,transparent 43%);}
 #stage[data-mobile-reading="true"] .scene-grade[data-grade="5"] {--mobile-grade:linear-gradient(135deg,#000 0%,rgb(0 0 0 / .55) 11%,transparent 49%);--mobile-dof:linear-gradient(135deg,#000 0%,rgb(0 0 0 / .45) 13%,transparent 46%);}
 #stage[data-mobile-reading="true"] .scene-grade[data-grade="6"] {--mobile-grade:linear-gradient(180deg,#000 0%,rgb(0 0 0 / .55) 9%,transparent 31%);--mobile-dof:linear-gradient(180deg,#000 0%,rgb(0 0 0 / .45) 11%,transparent 28%);}
 #stage[data-mobile-reading="true"] .scene-grade[data-grade="7"] {--mobile-grade:linear-gradient(140deg,#000 0%,rgb(0 0 0 / .55) 12%,transparent 49%);--mobile-dof:linear-gradient(140deg,#000 0%,rgb(0 0 0 / .45) 14%,transparent 46%);}
 #stage[data-mobile-reading="true"] .scene-grade[data-grade="8"] {--mobile-grade:linear-gradient(220deg,#000 0%,rgb(0 0 0 / .55) 7%,transparent 39%);--mobile-dof:linear-gradient(220deg,#000 0%,rgb(0 0 0 / .45) 9%,transparent 36%);}
 #stage[data-mobile-reading="true"] .scene-grade[data-grade="9"] {--mobile-grade:linear-gradient(140deg,#000 0%,rgb(0 0 0 / .55) 9%,transparent 43%);--mobile-dof:linear-gradient(140deg,#000 0%,rgb(0 0 0 / .45) 11%,transparent 40%);}
 #stage[data-mobile-reading="true"] .scene-grade[data-grade="10"] {--mobile-grade:linear-gradient(180deg,#000 0%,rgb(0 0 0 / .55) 10%,transparent 42%);--mobile-dof:linear-gradient(180deg,#000 0%,rgb(0 0 0 / .45) 12%,transparent 39%);}
 #stage[data-mobile-reading="true"] .scene-grade[data-grade="11"] {--mobile-grade:linear-gradient(170deg,#000 0%,rgb(0 0 0 / .55) 10%,transparent 42%);--mobile-dof:linear-gradient(170deg,#000 0%,rgb(0 0 0 / .45) 12%,transparent 39%);}
 #stage[data-mobile-reading="true"] .scene-grade[data-grade="12"] {--mobile-grade:linear-gradient(115deg,#000 0%,rgb(0 0 0 / .78) 5%,rgb(0 0 0 / .42) 14%,rgb(0 0 0 / .14) 26%,transparent 43%);--mobile-dof:linear-gradient(115deg,#000 0%,rgb(0 0 0 / .7) 8%,rgb(0 0 0 / .25) 22%,transparent 42%);}
 #stage[data-mobile-reading="true"] .scene-grade[data-grade="13"] {--mobile-grade:linear-gradient(145deg,#000 0%,rgb(0 0 0 / .55) 11%,transparent 44%);--mobile-dof:linear-gradient(145deg,#000 0%,rgb(0 0 0 / .45) 13%,transparent 41%);}
 #stage[data-mobile-reading="true"] .scene-grade[data-grade="14"] {--mobile-grade:linear-gradient(105deg,#000 0%,rgb(0 0 0 / .55) 10%,transparent 49%);--mobile-dof:linear-gradient(105deg,#000 0%,rgb(0 0 0 / .45) 12%,transparent 46%);}

 #stage[data-mobile-reading="true"][data-run-active="false"][data-run-kind="idle"]:not([data-departure-active="true"]):not([data-departure-bridge-held="true"]) #shade :is([data-page-index="1"] .scene-grade[data-grade="1"],[data-page-index="2"] .scene-grade[data-grade="2"],[data-page-index="3"] .scene-grade[data-grade="3"],[data-page-index="4"] .scene-grade[data-grade="4"],[data-page-index="5"] .scene-grade[data-grade="5"],[data-page-index="6"] .scene-grade[data-grade="6"],[data-page-index="7"] .scene-grade[data-grade="7"],[data-page-index="8"] .scene-grade[data-grade="8"],[data-page-index="9"] .scene-grade[data-grade="9"],[data-page-index="10"] .scene-grade[data-grade="10"],[data-page-index="11"] .scene-grade[data-grade="11"],[data-page-index="12"] .scene-grade[data-grade="12"],[data-page-index="13"] .scene-grade[data-grade="13"],[data-page-index="14"] .scene-grade[data-grade="14"]) {background:var(--mobile-grade,none) !important;}
 #stage[data-mobile-reading="true"][data-run-active="false"][data-run-kind="idle"]:not([data-departure-active="true"]):not([data-departure-bridge-held="true"]) #shade :is([data-page-index="1"] .scene-grade[data-grade="1"],[data-page-index="2"] .scene-grade[data-grade="2"],[data-page-index="3"] .scene-grade[data-grade="3"],[data-page-index="4"] .scene-grade[data-grade="4"],[data-page-index="5"] .scene-grade[data-grade="5"],[data-page-index="6"] .scene-grade[data-grade="6"],[data-page-index="7"] .scene-grade[data-grade="7"],[data-page-index="8"] .scene-grade[data-grade="8"],[data-page-index="9"] .scene-grade[data-grade="9"],[data-page-index="10"] .scene-grade[data-grade="10"],[data-page-index="11"] .scene-grade[data-grade="11"],[data-page-index="12"] .scene-grade[data-grade="12"],[data-page-index="13"] .scene-grade[data-grade="13"],[data-page-index="14"] .scene-grade[data-grade="14"])::after {content:"" !important;position:absolute;inset:0;pointer-events:none;background:none !important;-webkit-mask-image:var(--mobile-dof) !important;mask-image:var(--mobile-dof) !important;-webkit-backdrop-filter:blur(2px) !important;backdrop-filter:blur(2px) !important;}
 #stage[data-mobile-reading="true"] .copy[data-page] * {-webkit-backdrop-filter:none !important;backdrop-filter:none !important;}
 #stage[data-mobile-reading="true"][data-run-active="false"][data-run-kind="idle"]:not([data-departure-active="true"]):not([data-departure-bridge-held="true"]) :is(:is(#copy-two,#final-vision,#company-overview,#founder).copy > [data-editorial-content],#identity.copy .identity-name,#identity.copy > .chapter-prose[data-editorial-content],#business.copy [data-editorial-content] .business-introduction,#products.copy [data-editorial-content] > .product-track,#products.copy .chapter-layout :is(.business-area-title,.scene-subtitle),#research.copy [data-editorial-content] .research-feature,#research.copy .chapter-layout .scene-subtitle,#people.copy .future-body,#people.copy .person-card,#research.copy [data-editorial-content] > [data-narrative-figure]):not([aria-hidden="true"]):not(.copy[aria-hidden="true"] *) {-webkit-backdrop-filter:blur(12px) !important;backdrop-filter:blur(12px) !important;}
 #stage[data-mobile-reading="true"][data-run-active="false"][data-run-kind="idle"]:not([data-departure-active="true"]):not([data-departure-bridge-held="true"]) .copy:not([aria-hidden="true"]) :is(#copy-one .scene-subtitle,#company-overview .chapter-layout .scene-subtitle,#founder .chapter-layout .scene-subtitle,#identity .chapter-layout .scene-subtitle,#difference .future-title,#vision-learning .future-title,.business-portal,.new-scene-detail) {-webkit-backdrop-filter:blur(16px) !important;backdrop-filter:blur(16px) !important;}
}

/* Center the native1920px aperture, rather than cropping20px past it. */
@media (max-width:760px), (max-width:1024px) and (hover:none) and (pointer:coarse) {
 #stage[data-mobile-reading="true"] :is(.copy--opening,.copy--meeting) {--film-focus-x:.5;}
}

/* Compact vision prose now crosses bright paper in the filmed table. Keep the
   approved black glass local to these paragraphs, with unchanged line wraps. */
@media (max-width:760px), (max-width:1024px) and (hover:none) and (pointer:coarse) {
 #stage[data-mobile-reading="true"] :is(#difference,#vision-learning).copy .future-body {position:relative;isolation:isolate;}
 #stage[data-mobile-reading="true"] :is(#difference,#vision-learning).copy .future-body::before {content:"";position:absolute;inset:-12px -14px;z-index:-1;pointer-events:none;background:rgb(18 20 18 / .62);border:1px solid rgb(245 242 234 / .06);border-radius:2px;box-shadow:0 5px 18px rgb(0 0 0 / .16);-webkit-backdrop-filter:none;backdrop-filter:none;}
 #stage[data-mobile-reading="true"][data-run-active="false"][data-run-kind="idle"]:not([data-departure-active="true"]):not([data-departure-bridge-held="true"]) .copy:not([aria-hidden="true"]):is(#difference,#vision-learning) .future-body::before {-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);}
}
/* The two small branch captions stay legible as the workshop footage moves. */
@media (max-width:760px), (max-width:1024px) and (hover:none) and (pointer:coarse) {
 #stage[data-mobile-reading="true"] #business.copy .business-branch > p {text-shadow:0 1px 3px #000,0 0 6px rgb(0 0 0 / .8);}
}

/* /research-publication.css */
/* Approved visitor draft 11. Research-page scoped publication additions. */
/* Keep each line's bounds on its own text when periods wrap on narrow charts. */
#rd-main .rd-public-chart-period-line{inline-size:max-content;max-inline-size:100%;}
#rd-main .rd-public-chart-label--end>.rd-public-chart-period-line{margin-inline-start:auto;}
#rd-main .rd-public-chart-label--middle>.rd-public-chart-period-line{margin-inline:auto;}

/* Extend the original research document; use its palette and reading axes. */
body.research-page #rd-main [data-chapter]{min-height:0;height:auto;padding-bottom:72px;}
#rd-main .rd-public-concept{box-sizing:border-box;width:100%;max-width:1100px;min-width:0;margin:34px auto 0;}
#rd-main .rd-engine-explanation>.rd-public-concept{margin-top:28px;}
#rd-main .rd-engine-explanation+.rd-public-concept{margin-top:28px;}
#rd-main .rd-engine-explanation .rd-functional-figure{border-top:0;padding-top:0;}
#rd-main .rd-engine-explanation .rd-blueprint-heading{display:none;}
#rd-main .rd-engine-explanation .rd-functional-figure>figcaption{margin-bottom:0;}
#rd-main .rd-public-diagram{box-sizing:border-box;width:100%;max-width:1100px;min-width:0;margin:36px auto 0;}
#rd-main .rd-public-diagram .rd-blueprint-drawing{margin-top:26px;}
#rd-main .rd-engine-explanation .rd-public-diagram{margin-top:22px;}
#rd-main .rd-engine-explanation .rd-blueprint-drawing{margin-top:0;}
#rd-main .rd-public-autonomy+.rd-fn-anchor{border-top:0;padding-top:0;}

#rd-main .rd-public-purposes h5{font-size:18px;font-weight:450;line-height:1.6;margin:0;color:var(--rd-paper);}
#rd-main .rd-public-purposes p{font-size:14px;line-height:1.9;margin:14px 0 0;color:var(--rd-muted);word-break:keep-all;}
#rd-main .rd-public-purposes .rd-fn-lane{border:0;border-top:1px solid var(--rd-line);padding:0 0 22px;}
#rd-main .rd-public-purposes .rd-fn-lane h4{border:0;margin:18px 0 12px;padding:0;color:var(--rd-gold);}
#rd-main .rd-public-vision{margin-bottom:0;}

#rd-main .rd-public-impact{box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;align-items:start;gap:18px;width:100%;max-width:1100px;min-width:0;margin:42px auto;padding:30px 24px;border:0;text-align:center;}
#rd-main .rd-public-impact-value{color:var(--rd-gold);font-family:inherit;font-size:clamp(56px,6vw,84px);font-weight:450;letter-spacing:-.055em;line-height:1.1;font-variant-numeric:tabular-nums;white-space:nowrap;text-align:center;}
#rd-main .rd-public-impact-value span{font-size:.4em;letter-spacing:-.02em;margin-left:5px;}
#rd-main .rd-public-impact-copy{width:100%;max-width:760px;min-width:0;margin-inline:auto;text-align:center;}
#rd-main .rd-public-impact-copy strong{display:block;color:var(--rd-paper);font-size:20px;font-weight:450;line-height:1.6;word-break:keep-all;text-wrap:balance;}
#rd-main .rd-public-impact-copy small{display:block;color:var(--rd-muted);font-size:12px;font-weight:400;line-height:1.85;margin-top:10px;word-break:keep-all;}
#rd-main .rd-public-impact-copy time{display:block;color:var(--rd-muted);font-size:11px;line-height:1.8;margin-top:8px;}
#rd-main .rd-public-principle{margin:28px auto 0;padding-top:22px;border-top:1px solid var(--rd-line);font-size:14px;line-height:1.9;color:var(--rd-muted);width:100%;max-width:1100px;}
#rd-main .rd-method-pillars{box-sizing:border-box;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;width:100%;max-width:1100px;min-width:0;margin:42px auto;}
#rd-main .rd-method-pillars article{border-top:1px solid var(--rd-line);padding-top:24px;min-width:0;text-align:center;}
#rd-main .rd-method-pillars h3{font-size:20px;font-weight:450;line-height:1.55;color:var(--rd-paper);}
#rd-main .rd-method-pillars p{font-size:14px;line-height:1.9;color:var(--rd-muted);margin-top:15px;word-break:keep-all;text-align:center;}
#rd-main .rd-public-study{box-sizing:border-box;width:100%;max-width:1100px;min-width:0;margin:56px auto 0;padding-top:32px;border-top:1px solid var(--rd-line);}
#rd-main .rd-roadmap :is(h3,p){word-break:keep-all;overflow-wrap:break-word;text-wrap:pretty;}
#rd-main .rd-roadmap h3{font-weight:600;}
body.research-page #rd-main .rd-assessment-grid>article>.rd-eyebrow{font-size:10px;line-height:1.7;letter-spacing:.1em;margin:0 0 18px!important;color:var(--rd-muted);}
#rd-main .rd-assessment-framework>.rd-assessment-grid{margin-top:32px;}
#rd-main .rd-assessment-framework>.rd-evaluation-table{margin-top:36px;}
#rd-main .rd-public-study>.rd-eyebrow{margin:0 0 18px;text-align:center;color:var(--rd-gold);}
#rd-main .rd-public-study>h3{font-size:clamp(24px,2.5vw,30px);font-weight:450;line-height:1.55;letter-spacing:-.03em;color:var(--rd-paper);text-align:center;}
#rd-main .rd-public-study>p:not(.rd-eyebrow){font-size:15px;line-height:1.9;color:var(--rd-muted);margin:24px auto 0;max-width:900px;text-align:left;word-break:keep-all;}
#rd-main .rd-public-reading{width:100%;max-width:1100px;margin:24px auto 0;font-size:15px;line-height:1.9;color:var(--rd-muted);text-align:left;word-break:keep-all;}
#rd-main .rd-public-caption{width:100%;max-width:1100px;margin:24px auto 0;font-size:12px;line-height:1.85;color:var(--rd-muted);text-align:left;}
#rd-main .rd-public-trend{scroll-margin-top:190px;}
#rd-main :is(.rd-engine-copy>h3,.rd-engine-explanation-item h4,.rd-method-pillars h3){word-break:keep-all;text-wrap:balance;}
#rd-main .rd-engine-intro{position:relative;isolation:isolate;box-sizing:border-box;width:100%;min-width:0;}
#rd-main .rd-engine-intro>.rd-engine-visual{inset:0 -2% 0 auto;height:100%;}
#rd-main .rd-engine>.rd-public-impact{position:relative;z-index:1;}
#rd-main .rd-engine-explanation{position:relative;box-sizing:border-box;width:100%;max-width:1100px;min-width:0;margin:48px auto 0;padding:28px 0 0;border-top:1px solid var(--rd-line);color:var(--rd-paper);}
#rd-main .rd-engine-explanation-heading{text-align:center;}
#rd-main .rd-engine-explanation-heading>.rd-eyebrow{margin:0 0 14px;color:var(--rd-gold);}
#rd-main .rd-engine-explanation-heading>h3{font-size:22px;font-weight:450;line-height:1.55;letter-spacing:-.018em;color:var(--rd-paper);text-align:center;}
#rd-main .rd-engine-explanation-lead{max-width:850px;margin:22px auto 0;color:var(--rd-muted);font-size:14px;line-height:1.9;text-align:center;word-break:keep-all;}
#rd-main .rd-engine-explanation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:30px 0 0;}
#rd-main .rd-engine-explanation-item{min-width:0;padding:22px 0 0;border-top:1px solid var(--rd-line);text-align:center;}
#rd-main .rd-engine-explanation-item h4{margin:0;font-size:18px;font-weight:450;line-height:1.6;color:var(--rd-paper);text-wrap:balance;}
#rd-main .rd-engine-explanation-item p{margin:14px 0 0;color:var(--rd-muted);font-size:14px;line-height:1.9;text-align:center;word-break:keep-all;}
#rd-main :is(.rd-component-matrix,.rd-evaluation-table){box-sizing:border-box;min-width:0;width:100%;max-width:1100px;margin-inline:auto;}
.rd-public-footer{box-sizing:border-box;width:100%;max-width:1440px;margin:auto;padding:28px var(--gutter) 55px;border-top:1px solid var(--rd-line);font-size:12px;color:var(--rd-muted);line-height:1.85;}
.rd-public-footer a{color:var(--rd-gold);text-underline-offset:4px;}
#rd-main .rd-fn-edge--vision>path{stroke:var(--rd-gold);fill:none;}
#rd-main .rd-fn-edge--vision text{fill:var(--rd-gold);stroke:none;}
#rd-main marker[id$="-vision"] path{stroke:var(--rd-gold);stroke-width:1.2;}
/* A single hierarchy for concepts, evidence, and supporting copy. */
#rd-main .rd-content-icon{display:block;width:32px;height:32px;flex:none;margin:0 auto 18px;color:var(--rd-gold);}
#rd-main :is(.rd-method-pillars h3,.rd-engine-explanation-item h4,.rd-card h3,.rd-assessment-grid>article h3,.rd-overview-pillar h3,.rd-public-purposes h5){font-weight:600;}
#rd-main :is(.rd-engine-explanation-heading h3,.rd-blueprint-heading h3,.rd-evidence-heading h3){font-weight:600;}
#rd-main .rd-public-impact-copy strong{font-weight:550;}
#rd-main #rd-overview .rd-overview-pillar h3{font-weight:600;}
#rd-main .rd-engine-copy>h3{font-weight:550;}
#rd-main :is(.rd-component-matrix,.rd-evaluation-table) caption{font-size:17px;font-weight:600;line-height:1.6;color:var(--rd-paper);}
#rd-main :is(.rd-component-matrix,.rd-evaluation-table) th[scope=row]{font-size:16px;font-weight:600;color:var(--rd-paper);}
#rd-main :is(.rd-component-matrix,.rd-evaluation-table) thead th{font-size:12px;font-weight:550;color:var(--rd-muted);}
#rd-main .rd-fn-class-row strong{font-size:16px;font-weight:600;line-height:1.65;color:var(--rd-paper);}
#rd-main .rd-fn-class-row em{font-size:12px;font-weight:400;color:var(--rd-muted);}
#rd-main .rd-engine-io dt{font-size:12px;font-weight:600;color:var(--rd-paper);}
#rd-main .rd-section-head>.ip-status{position:static;align-self:flex-start;margin:18px 0 0;order:0;}
#rd-main .rd-engine-copy .rd-section-head>h2,#rd-main #rd-autonomy .rd-section-head>h2{margin-bottom:0!important;}
#rd-main #rd-durability .rd-reliability-grid h3{font-weight:600;}
#rd-main .rd-public-purposes .rd-content-icon{margin-bottom:14px;}
@media(max-width:760px){
 #rd-main .rd-content-icon{width:28px;height:28px;margin:0 0 16px;}
 #rd-main #rd-overview .rd-content-icon{align-self:flex-start;}
 #rd-main .rd-public-purposes .rd-content-icon{margin:0 auto 14px;}
 #rd-main :is(.rd-component-matrix,.rd-evaluation-table) caption{font-size:16px;}
 #rd-main :is(.rd-component-matrix,.rd-evaluation-table) th[scope=row]{font-size:15px;}
 #rd-main .rd-fn-class-row strong{font-size:14px;}
 #rd-main .rd-section-head>.ip-status{margin-top:16px;}
}
body.research-page .header .copy-back{font-size:12px;color:var(--rd-muted);white-space:nowrap;}
@media(max-width:1100px){#rd-main .rd-method-pillars{grid-template-columns:minmax(0,1fr);gap:24px;}}
@media(max-width:760px){
 body.research-page #rd-main [data-chapter]{padding-bottom:48px;}
 #rd-main .rd-public-impact{gap:16px;margin:30px auto;padding:26px 14px;}
 #rd-main .rd-public-impact-value{font-size:58px;}
 #rd-main .rd-public-impact-copy strong{font-size:17px;line-height:1.6;}
 #rd-main .rd-public-impact-copy small{font-size:12px;line-height:1.8;}
 #rd-main #rd-autonomy>.rd-public-trend{order:4;}
 #rd-main .rd-method-pillars{margin:30px auto;gap:22px;}
 #rd-main .rd-method-pillars article,#rd-main .rd-method-pillars p{text-align:left;}
 #rd-main .rd-method-pillars h3{font-size:17px;line-height:1.5;}
 #rd-main .rd-method-pillars p{margin-top:12px;font-size:13.5px;line-height:1.85;}
 #rd-main .rd-public-study{margin:38px auto 0;padding-top:26px;}
 #rd-main .rd-public-study>h3{font-size:22px;line-height:1.55;}
 #rd-main .rd-public-study>p:not(.rd-eyebrow),#rd-main .rd-public-reading{font-size:13.5px;line-height:1.85;}
 #rd-main .rd-public-principle{font-size:13px;line-height:1.85;}
 body.research-page #rd-main .rd-engine{display:flex;flex-direction:column;gap:0;}
 #rd-main .rd-engine-intro{display:flex;flex-direction:column;min-height:0;order:0;}
 body.research-page #rd-main .rd-engine-intro>.rd-engine-copy{order:0;width:100%;min-height:0;max-width:none;}
 body.research-page #rd-main .rd-engine-intro>.rd-engine-visual{position:relative;inset:auto!important;order:1;width:calc(100% + 2 * var(--rd-mobile-inset));height:clamp(270px,80vw,370px);max-height:370px;margin:30px calc(-1 * var(--rd-mobile-inset)) 0;flex:none;}
 #rd-main .rd-engine>.rd-public-impact{order:1;}
 #rd-main .rd-engine>.rd-engine-explanation{order:2;}
 #rd-main .rd-engine-explanation{margin:30px auto 0;padding-top:24px;}
 #rd-main .rd-engine-explanation-heading>h3{font-size:20px;line-height:1.6;}
 #rd-main .rd-engine-explanation-lead{margin-top:18px;font-size:13px;line-height:1.85;}
 #rd-main .rd-engine-explanation-grid{grid-template-columns:minmax(0,1fr);gap:22px;margin-top:24px;}
 #rd-main .rd-engine-explanation-item{padding-top:20px;text-align:left;}
 #rd-main .rd-engine-explanation-item h4{font-size:17px;text-align:left;}
 #rd-main .rd-engine-explanation-item p{margin-top:12px;font-size:13.5px;line-height:1.85;text-align:left;}
 .rd-public-footer{padding:25px 24px 45px;}
}

#rd-main .rd-public-trend{container-type:inline-size;container-name:rd-public-trend;width:100%;max-width:900px;min-width:0;margin:36px auto 42px;color:var(--rd-paper);font-family:inherit;}
#rd-main .rd-public-trend h4{margin:0 0 12px;font:inherit;font-size:18px;font-weight:600;line-height:1.5;color:var(--rd-paper);letter-spacing:-.03em;text-align:center;}
#rd-main .rd-public-chart-plot{position:relative;width:100%;height:260px;margin:0 auto;font-family:inherit;}
#rd-main .rd-public-chart-area{position:absolute;inset:30px 14px 54px 54px;}
#rd-main .rd-public-chart-svg{display:block;position:absolute;inset:0;width:100%;height:100%;max-width:none;overflow:visible;font-family:inherit;}
#rd-main .rd-public-chart-grid-line{stroke:var(--rd-line);stroke-width:1;fill:none;}
#rd-main .rd-public-chart-line{fill:none;stroke:var(--rd-gold);stroke-width:2;stroke-linejoin:round;stroke-linecap:round;}
#rd-main .rd-public-chart-labels{position:absolute;inset:0;pointer-events:none;font-family:inherit;font-weight:450;font-variant-numeric:tabular-nums;}
#rd-main .rd-public-chart-axis-label{position:absolute;right:calc(100% + 12px);transform:translateY(50%);font-size:14px;line-height:1.2;color:var(--rd-muted);white-space:nowrap;}
#rd-main .rd-public-chart-point{position:absolute;width:8px;height:8px;border:1px solid var(--rd-paper);border-radius:50%;background:var(--rd-gold);transform:translate(-50%,50%);}
#rd-main .rd-public-chart-value{position:absolute;font-size:16px;font-weight:450;line-height:1.2;color:var(--rd-gold);white-space:nowrap;}
#rd-main .rd-public-chart-period{position:absolute;top:calc(100% + 17px);font-size:14px;font-weight:450;line-height:1.35;color:var(--rd-muted);white-space:nowrap;}
#rd-main .rd-public-chart-label--start{transform:none;text-align:left;}
#rd-main .rd-public-chart-label--middle{transform:translateX(-50%);text-align:center;}
#rd-main .rd-public-chart-label--end{transform:translateX(-100%);text-align:right;}
#rd-main .rd-public-chart-period-line{display:inline;}
#rd-main .rd-public-trend figcaption{max-width:none;margin:0 auto;font-size:12px;font-weight:450;line-height:1.8;color:var(--rd-muted);text-align:center;overflow-wrap:anywhere;}
@container rd-public-trend (max-width:599px){
 #rd-main .rd-public-chart-plot{height:252px;}
 #rd-main .rd-public-chart-area{inset:30px 14px 64px 54px;}
 #rd-main .rd-public-chart-period-line{display:block;}
}
@supports not (container-type:inline-size){
 @media(max-width:760px){#rd-main .rd-public-chart-plot{height:252px;}#rd-main .rd-public-chart-area{inset:30px 14px 64px 54px;}#rd-main .rd-public-chart-period-line{display:block;}}
}
@media(max-width:760px){#rd-main .rd-public-trend{margin:28px auto 34px;}#rd-main .rd-public-trend figcaption{font-size:13px;line-height:1.85;}}
@media print{#rd-main .rd-public-trend{break-inside:avoid;}#rd-main .rd-public-chart-line,#rd-main .rd-public-chart-point{print-color-adjust:exact;-webkit-print-color-adjust:exact;}}

/* Composite each poster/live renderer once, then feather the complete surface.
   Two chapter IDs in specificity intentionally defeat native mask:none!important. */
body.research-page #rd-main :is(#rd-magi,#rd-surdian,#rd-dmz,#rd-autonomy) .rd-engine-visual[data-engine-film]{
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
  -webkit-mask-image:
    linear-gradient(90deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.15) 3%,rgba(0,0,0,.55) 7%,rgba(0,0,0,1) 14%,rgba(0,0,0,1) 86%,rgba(0,0,0,.55) 93%,rgba(0,0,0,.15) 97%,rgba(0,0,0,0) 100%),
    linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.12) 4%,rgba(0,0,0,.55) 9%,rgba(0,0,0,1) 18%,rgba(0,0,0,1) 82%,rgba(0,0,0,.55) 91%,rgba(0,0,0,.12) 96%,rgba(0,0,0,0) 100%)!important;
  mask-image:
    linear-gradient(90deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.15) 3%,rgba(0,0,0,.55) 7%,rgba(0,0,0,1) 14%,rgba(0,0,0,1) 86%,rgba(0,0,0,.55) 93%,rgba(0,0,0,.15) 97%,rgba(0,0,0,0) 100%),
    linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.12) 4%,rgba(0,0,0,.55) 9%,rgba(0,0,0,1) 18%,rgba(0,0,0,1) 82%,rgba(0,0,0,.55) 91%,rgba(0,0,0,.12) 96%,rgba(0,0,0,0) 100%)!important;
  -webkit-mask-repeat:no-repeat!important;
  mask-repeat:no-repeat!important;
  -webkit-mask-size:100% 100%!important;
  mask-size:100% 100%!important;
  -webkit-mask-position:center!important;
  mask-position:center!important;
  -webkit-mask-composite:source-in!important;
  mask-composite:intersect!important;
  mask-mode:alpha!important;
}
body.research-page #rd-main :is(#rd-magi,#rd-surdian,#rd-dmz,#rd-autonomy) .rd-engine-visual[data-engine-film]>:is(img,iframe){
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
  -webkit-mask-image:none!important;
  mask-image:none!important;
}
body.research-page #rd-main :is(#rd-magi,#rd-surdian,#rd-dmz,#rd-autonomy) .rd-engine-visual[data-engine-film]::before,
body.research-page #rd-main :is(#rd-magi,#rd-surdian,#rd-dmz,#rd-autonomy) .rd-engine-visual[data-engine-film]::after{
  content:none!important;
  display:none!important;
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
  filter:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
@media(max-width:760px){
  /* Keep the full-fit mobile demonstration clear through its central UI. */
  body.research-page #rd-main :is(#rd-magi,#rd-surdian,#rd-dmz,#rd-autonomy) .rd-engine-visual[data-engine-film]{
    -webkit-mask-image:
      linear-gradient(90deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.18) 2.5%,rgba(0,0,0,.6) 6%,rgba(0,0,0,1) 12%,rgba(0,0,0,1) 88%,rgba(0,0,0,.6) 94%,rgba(0,0,0,.18) 97.5%,rgba(0,0,0,0) 100%),
      linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.16) 3%,rgba(0,0,0,.6) 7%,rgba(0,0,0,1) 14%,rgba(0,0,0,1) 86%,rgba(0,0,0,.6) 93%,rgba(0,0,0,.16) 97%,rgba(0,0,0,0) 100%)!important;
    mask-image:
      linear-gradient(90deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.18) 2.5%,rgba(0,0,0,.6) 6%,rgba(0,0,0,1) 12%,rgba(0,0,0,1) 88%,rgba(0,0,0,.6) 94%,rgba(0,0,0,.18) 97.5%,rgba(0,0,0,0) 100%),
      linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.16) 3%,rgba(0,0,0,.6) 7%,rgba(0,0,0,1) 14%,rgba(0,0,0,1) 86%,rgba(0,0,0,.6) 93%,rgba(0,0,0,.16) 97%,rgba(0,0,0,0) 100%)!important;
  }
}

/* Live UI carries more detail than a poster. Preserve the desktop reading lane. */
@media(min-width:761px){
 body.research-page #rd-main :is(#rd-magi,#rd-surdian,#rd-dmz) .rd-engine-visual[data-engine-film]{
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,transparent 16%,rgba(0,0,0,.12) 30%,rgba(0,0,0,.65) 42%,#000 50%,#000 86%,rgba(0,0,0,.55) 93%,rgba(0,0,0,.15) 97%,transparent 100%),linear-gradient(180deg,transparent 0%,rgba(0,0,0,.12) 4%,rgba(0,0,0,.55) 9%,#000 18%,#000 82%,rgba(0,0,0,.55) 91%,rgba(0,0,0,.12) 96%,transparent 100%)!important;
  mask-image:linear-gradient(90deg,transparent 0%,transparent 16%,rgba(0,0,0,.12) 30%,rgba(0,0,0,.65) 42%,#000 50%,#000 86%,rgba(0,0,0,.55) 93%,rgba(0,0,0,.15) 97%,transparent 100%),linear-gradient(180deg,transparent 0%,rgba(0,0,0,.12) 4%,rgba(0,0,0,.55) 9%,#000 18%,#000 82%,rgba(0,0,0,.55) 91%,rgba(0,0,0,.12) 96%,transparent 100%)!important;
 }
}
