@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Newsreader:opsz,wght@6..72,500;6..72,600;6..72,700&display=swap');

:root {
  --public-blue: #2f63ff;
  --public-blue-deep: #173fa6;
  --public-sky: #9fc6ff;
  --public-ink: #071426;
  --public-navy: #071326;
  --public-paper: #f4f0e8;
  --public-white: #fffdf8;
  --public-muted: #657389;
  --public-line: rgba(7, 20, 38, .18);
  --public-serif: 'Newsreader', Georgia, serif;
  --public-sans: 'DM Sans', 'Segoe UI', sans-serif;
}

.public-slide,
.public-slide * { box-sizing: border-box; }

.public-slide {
  --pointer-x: 0;
  --pointer-y: 0;
  position: relative;
  overflow: hidden;
  width: 1280px;
  height: 720px;
  background: var(--public-paper);
  color: var(--public-ink);
  font-family: var(--public-sans);
  isolation: isolate;
}

.public-frame {
  transition: transform .45s cubic-bezier(.2, .8, .2, 1);
  transform: translate(calc(var(--pointer-x) * -5px), calc(var(--pointer-y) * -4px));
}

.story-spine {
  position: absolute;
  z-index: 8;
  top: 32px;
  right: 34px;
  display: grid;
  grid-template-columns: auto auto;
  gap: 5px 9px;
  align-items: center;
  color: #6d7a8d;
  font-family: var(--public-sans);
  transform: translate(calc(var(--pointer-x) * 8px), calc(var(--pointer-y) * 6px));
  transition: transform .45s cubic-bezier(.2, .8, .2, 1);
}
.story-spine strong { color: var(--public-blue); font: 700 9px/1 var(--public-sans); letter-spacing: .15em; }
.story-spine span { font: 700 9px/1 var(--public-sans); letter-spacing: .12em; }
.story-spine i { grid-column: 1 / 3; width: 116px; height: 2px; background: linear-gradient(90deg, var(--public-blue) calc(var(--phase) * 25%), rgba(101, 115, 137, .25) 0); }
.dark .story-spine, .blue .story-spine { color: #a8b9d3; }
.dark .story-spine strong, .blue .story-spine strong { color: var(--public-sky); }
.dark .story-spine i, .blue .story-spine i { background: linear-gradient(90deg, var(--public-sky) calc(var(--phase) * 25%), rgba(255, 255, 255, .2) 0); }

.public-slide em,
.public-slide i,
.public-slide cite,
.public-slide var { font-style: normal !important; }

.public-slide::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(7, 20, 38, .035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(7, 20, 38, .035) 1px, transparent 1px);
  background-size: 40px 40px;
  mask-image: linear-gradient(to bottom, #000, transparent 88%);
}

.public-slide.dark {
  color: var(--public-white);
  background: radial-gradient(circle at 82% 22%, #193568 0, #0b1a35 34%, #050c18 78%);
}

.public-slide.blue {
  color: var(--public-white);
  background: linear-gradient(125deg, #143891, #244fd1 56%, #173b9c);
}

.public-slide.dark::before,
.public-slide.blue::before {
  background-image:
    linear-gradient(rgba(255, 255, 255, .055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, .055) 1px, transparent 1px);
}

.public-frame {
  position: absolute;
  z-index: 2;
  inset: 56px 78px 58px;
}

.public-kicker {
  margin: 0 0 24px;
  color: var(--public-blue);
  font: 700 14px/1 var(--public-sans);
  letter-spacing: .17em;
  text-transform: uppercase;
}

.dark .public-kicker,
.blue .public-kicker { color: var(--public-sky); }

.public-slide h1,
.public-slide h2,
.public-slide h3 {
  margin: 0;
  font-family: var(--public-serif);
  font-style: normal;
  font-weight: 600;
  letter-spacing: -.04em;
  line-height: .96;
  text-wrap: balance;
}

.public-slide h1 { max-width: 960px; font-size: 82px; }
.public-slide h2 { max-width: 1040px; font-size: 61px; }
.public-slide h3 { font-size: 31px; }
.public-slide h1 em,
.public-slide h2 em,
.public-slide h3 em { color: var(--public-blue); }
.dark h1 em,
.dark h2 em,
.dark h3 em,
.blue h1 em,
.blue h2 em,
.blue h3 em { color: var(--public-sky); }

.public-lede {
  max-width: 720px;
  margin: 27px 0 0;
  color: #c9d7ee;
  font: 500 23px/1.42 var(--public-sans);
}

.public-copy {
  max-width: 650px;
  margin: 28px 0 0;
  color: #415069;
  font: 500 20px/1.48 var(--public-sans);
}

.dark .public-copy,
.blue .public-copy { color: #cfdaee; }

.public-folio {
  position: absolute;
  z-index: 5;
  left: 78px;
  right: 78px;
  bottom: 22px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 9px;
  border-top: 1px solid var(--public-line);
  color: #637188;
  font: 700 10px/1 var(--public-sans);
  letter-spacing: .15em;
  text-transform: uppercase;
}

.dark .public-folio,
.blue .public-folio { border-color: rgba(255, 255, 255, .18); color: #9cb0d2; }
.public-folio b { color: inherit; }

.technical-map {
  position: absolute;
  z-index: 9;
  top: 31px;
  left: 78px;
  padding: 7px 10px 6px;
  border: 1px solid rgba(47, 99, 255, .28);
  color: var(--public-blue-deep);
  background: rgba(255, 253, 248, .72);
  font: 700 8px/1 var(--public-sans);
  letter-spacing: .13em;
  text-transform: uppercase;
}
.dark .technical-map,
.blue .technical-map { color: var(--public-sky); border-color: rgba(159, 198, 255, .3); background: rgba(5, 12, 24, .35); }
.appendix-badge { position: absolute; z-index: 9; top: 70px; right: 78px; width: 250px; padding: 12px 14px; border: 1px solid rgba(47, 99, 255, .35); background: rgba(255, 253, 248, .9); box-shadow: 8px 8px 0 rgba(47, 99, 255, .1); }
.appendix-badge span, .appendix-badge strong { display: block; }
.appendix-badge span { color: var(--public-blue); font: 700 9px/1 var(--public-sans); letter-spacing: .16em; }
.appendix-badge strong { margin-top: 7px; color: var(--public-ink); font: 650 12px/1.3 var(--public-sans); }
.dark .appendix-badge, .blue .appendix-badge { background: rgba(5, 12, 24, .82); border-color: rgba(159, 198, 255, .35); box-shadow: 8px 8px 0 rgba(159, 198, 255, .1); }
.dark .appendix-badge strong, .blue .appendix-badge strong { color: var(--public-white); }

.signal-dot {
  display: inline-block;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: var(--public-blue);
  box-shadow: 0 0 0 9px rgba(47, 99, 255, .16), 0 0 38px rgba(47, 99, 255, .68);
}

.signal-field {
  position: absolute;
  z-index: 0;
  inset: 0 0 0 45%;
  overflow: hidden;
  opacity: .7;
}

.signal-field i {
  position: absolute;
  left: var(--x);
  top: var(--y);
  width: var(--s);
  height: var(--s);
  border-radius: 50%;
  background: #78a6ff;
  opacity: var(--o);
  box-shadow: 0 0 9px #78a6ff;
}
.signal-field i:not(.is-evidence) { animation: signal-breathe 4.4s ease-in-out infinite alternate; animation-delay: var(--d); }
.signal-field i.is-evidence { width: 13px; height: 13px; opacity: 1; background: #fff; box-shadow: 0 0 0 10px rgba(120, 166, 255, .14), 0 0 55px #78a6ff; }
@keyframes signal-breathe { to { opacity: .22; transform: scale(.62); } }

/* 01 · opening */
.hero-frame { display: flex; flex-direction: column; justify-content: center; }
.hero-frame h1 { font-size: 89px; }
.hero-sequence {
  display: grid;
  grid-template-columns: 25px auto 75px auto 75px auto;
  align-items: center;
  gap: 13px;
  width: 650px;
  margin-top: 48px;
  color: #d7e3f7;
  font: 700 12px/1 var(--public-sans);
  letter-spacing: .15em;
}
.hero-sequence i { height: 1px; background: #6581b1; }
.future-window { position: absolute; right: 0; bottom: 55px; width: 330px; padding: 21px 24px; border: 1px solid rgba(159, 198, 255, .38); background: rgba(6, 18, 42, .72); backdrop-filter: blur(10px); box-shadow: 12px 12px 0 rgba(47, 99, 255, .22); }
.future-window span, .future-window strong { display: block; }
.future-window span { color: var(--public-sky); font: 700 9px/1 var(--public-sans); letter-spacing: .16em; }
.future-window strong { margin-top: 12px; font: 600 19px/1.25 var(--public-serif); }
.public-hero.is-current .future-window { animation: window-rise .7s .25s both cubic-bezier(.16, 1, .3, 1); }
.public-hero.is-current .signal-field .is-evidence { animation: evidence-cross 3.4s .3s both cubic-bezier(.2, .7, .2, 1); }
@keyframes window-rise { from { opacity: 0; transform: translateY(25px); } }
@keyframes evidence-cross { from { left: -12%; top: 78%; } 55% { left: 34%; top: 48%; } to { left: 74%; top: 24%; } }

/* 02 · source */
.public-source h2 { max-width: 730px; font-size: 70px; }
.source-flow {
  position: absolute;
  left: 0;
  right: 0;
  top: 270px;
  display: grid;
  grid-template-columns: 1fr 35px 1fr 35px 1fr 35px 1fr;
  align-items: center;
  gap: 13px;
}
.source-flow > div {
  min-height: 145px;
  padding: 20px 18px;
  border-top: 3px solid #b9c2ce;
  background: rgba(255, 255, 255, .46);
}
.source-flow > div.is-accent { border-color: var(--public-blue); box-shadow: inset 0 -4px 0 rgba(47, 99, 255, .12); }
.source-flow > i { color: #718097; text-align: center; font: 500 25px/1 var(--public-serif); }
.source-flow span,
.source-flow strong,
.source-flow small { display: block; }
.source-flow span { color: var(--public-blue); font: 700 11px/1 var(--public-sans); letter-spacing: .14em; }
.source-flow strong { margin-top: 18px; font: 600 26px/1 var(--public-serif); }
.source-flow small { margin-top: 9px; color: #5c6a80; font: 500 14px/1.35 var(--public-sans); }
.source-signature {
  position: absolute;
  left: 0;
  bottom: 18px;
  display: flex;
  align-items: baseline;
  gap: 17px;
}
.source-signature strong { font: 600 22px/1 var(--public-serif); }
.source-signature span { color: #5e6c80; font: 600 13px/1 var(--public-sans); letter-spacing: .04em; }
.source-trace { position: absolute; left: 20px; right: 20px; top: 251px; height: 18px; overflow: hidden; }
.source-trace span { position: absolute; left: 0; right: 0; top: 8px; height: 1px; background: linear-gradient(90deg, transparent, var(--public-blue) 12%, var(--public-blue) 88%, transparent); }
.source-trace i { position: absolute; top: 2px; width: 13px; height: 13px; border-radius: 50%; background: var(--public-blue); box-shadow: 0 0 0 7px rgba(47, 99, 255, .13), 0 0 26px rgba(47, 99, 255, .6); }
.public-source.is-current .source-trace i { animation: source-scan 3.2s .3s both cubic-bezier(.2, .7, .2, 1); }
@keyframes source-scan { from { left: 0; } to { left: calc(100% - 13px); } }
.public-source.is-current .source-flow > div { animation: instrument-resolve .45s both; }
.public-source.is-current .source-flow > div:nth-of-type(2) { animation-delay: .18s; }.public-source.is-current .source-flow > div:nth-of-type(3) { animation-delay: .36s; }.public-source.is-current .source-flow > div:nth-of-type(4) { animation-delay: .54s; }
@keyframes instrument-resolve { from { opacity: .25; transform: translateY(16px); filter: blur(4px); } }

/* 03 · gap */
.public-gap h2 { max-width: 970px; font-size: 65px; }
.gap-compare {
  position: absolute;
  left: 0;
  right: 0;
  top: 285px;
  display: grid;
  grid-template-columns: 1fr 85px 1fr;
  align-items: center;
}
.gap-side { min-height: 190px; padding: 30px 34px; border-top: 2px solid rgba(255, 255, 255, .35); background: rgba(3, 14, 40, .18); }
.gap-side.ready { border-color: var(--public-sky); background: rgba(255, 255, 255, .08); }
.gap-side span,
.gap-side strong,
.gap-side small { display: block; }
.gap-side span { color: var(--public-sky); font: 700 11px/1 var(--public-sans); letter-spacing: .16em; }
.gap-side strong { margin-top: 31px; font: 600 34px/1 var(--public-serif); }
.gap-side small { margin-top: 19px; color: #c8d5e9; font: 500 16px/1.4 var(--public-sans); }
.gap-side.muted { opacity: .72; }
.gap-arrow { color: var(--public-sky); text-align: center; font: 500 40px/1 var(--public-serif); }
.context-orbit { display: grid; grid-template-columns: repeat(2, max-content); gap: 6px; margin-top: 18px; }
.context-orbit b { padding: 6px 8px; border: 1px solid rgba(159, 198, 255, .42); color: #fff; font: 700 8px/1 var(--public-sans); letter-spacing: .11em; }
.reuse-gate { position: absolute; right: 0; bottom: 24px; display: grid; grid-template-columns: auto 72px auto; align-items: center; gap: 10px; color: #fff; }
.reuse-gate span { font: 700 9px/1 var(--public-sans); letter-spacing: .14em; }
.reuse-gate i { height: 1px; background: var(--public-sky); }
.reuse-gate b { grid-column: 1 / 4; color: #b9cae7; text-align: center; font: 600 10px/1 var(--public-sans); }
.public-gap.is-current .gap-side.ready .context-orbit b { animation: context-lock .38s both; }
.public-gap.is-current .context-orbit b:nth-child(2) { animation-delay: .12s; }.public-gap.is-current .context-orbit b:nth-child(3) { animation-delay: .24s; }.public-gap.is-current .context-orbit b:nth-child(4) { animation-delay: .36s; }
@keyframes context-lock { from { opacity: 0; transform: translate(12px, -8px) scale(.85); } }

/* 04 · score */
.score-layout { display: grid; grid-template-columns: 1.25fr .75fr; align-items: center; gap: 75px; }
.public-score h2 { max-width: 760px; font-size: 60px; }
.score-receipt {
  position: relative;
  padding: 29px 31px 26px;
  border: 1px solid rgba(255, 255, 255, .3);
  background: rgba(255, 255, 255, .075);
  box-shadow: 16px 16px 0 rgba(47, 99, 255, .35);
}
.receipt-matrix { display: grid; grid-template-columns: repeat(5, 1fr); gap: 5px; margin: 0 0 22px; }
.receipt-matrix i { height: 9px; border: 1px solid rgba(255, 255, 255, .25); background: rgba(255, 255, 255, .05); }
.receipt-matrix i.is-lit { border-color: var(--public-sky); background: var(--public-sky); box-shadow: 0 0 13px rgba(159, 198, 255, .6); }
.public-score.is-current .receipt-matrix i.is-lit { animation: aperture-on .3s both; animation-delay: calc(var(--n) * 22ms); }
@keyframes aperture-on { from { opacity: .15; transform: scale(.45); } }
.score-total { display: flex; align-items: baseline; gap: 8px; }
.score-total strong { color: var(--public-sky); font: 600 105px/.8 var(--public-serif); letter-spacing: -.07em; }
.score-total span { color: #b8c8e2; font: 600 28px/1 var(--public-serif); }
.score-rule { margin: 24px 0 18px; padding: 14px 0; border-block: 1px solid rgba(255, 255, 255, .19); color: #d4def0; font: 600 15px/1 var(--public-sans); }
.score-rule b { color: #fff; font-size: 19px; }
.score-rule i { padding: 0 7px; color: var(--public-sky); }
.score-receipt ul { margin: 0; padding: 0; list-style: none; }
.score-receipt li { padding: 7px 0; color: #d4def0; font: 500 14px/1.2 var(--public-sans); }
.score-receipt li::before { content: '✓'; margin-right: 9px; color: var(--public-sky); font-weight: 700; }
.score-receipt > small { display: block; margin-top: 16px; color: #9db0d0; font: 600 11px/1 var(--public-sans); letter-spacing: .08em; text-transform: uppercase; }

/* 05 · signs */
.public-care .public-kicker { margin-bottom: 12px; }
.public-care h2 { font-size: 57px; }
.care-grid { position: absolute; left: 0; right: 0; top: 151px; display: grid; grid-template-columns: repeat(5, 1fr); gap: 11px; }
.care-column { position: relative; display: grid; grid-template-rows: 61px repeat(5, 43px); gap: 5px; padding: 8px; border: 1px solid #c8ced6; background: rgba(255, 255, 255, .52); box-shadow: 7px 7px 0 rgba(47, 99, 255, .08); }
.care-column::before { content: ''; position: absolute; left: -1px; right: -1px; top: -1px; height: 3px; background: var(--public-blue); }
.care-head { display: grid; grid-template-columns: 45px 1fr; align-items: center; border-bottom: 1px solid #ccd2db; }
.care-head b { color: var(--public-blue); font: 600 39px/.85 var(--public-serif); }
.care-head span,
.care-head small { display: block; }
.care-head span { color: var(--public-ink); font: 700 13px/1 var(--public-sans); }
.care-head small { margin-top: 5px; color: #718096; font: 600 8px/1.15 var(--public-sans); letter-spacing: .05em; text-transform: uppercase; }
.care-cell { position: relative; display: grid; grid-template-columns: 27px 1fr; align-items: center; min-width: 0; padding: 0 8px; border: 1px solid #dce0e6; background: #fff; transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
.care-cell span { color: var(--public-blue); font: 700 8px/1 var(--public-sans); letter-spacing: .08em; }
.care-cell strong { overflow-wrap: anywhere; color: #26364d; font: 650 10px/1.1 var(--public-sans); }
.care-cell:hover, .care-cell:focus-visible { z-index: 5; outline: none; border-color: var(--public-blue); transform: translateY(-3px) scale(1.025); box-shadow: 0 8px 22px rgba(47, 99, 255, .18); }
.care-cell::after { content: attr(data-technical); position: absolute; left: 6px; right: 6px; bottom: calc(100% + 5px); display: none; padding: 7px; background: var(--public-ink); color: #fff; font: 600 8px/1.2 var(--public-sans); text-align: center; }
.care-cell:hover::after, .care-cell:focus-visible::after { display: block; }
.public-care.is-current .care-cell { animation: care-check-in .34s both; animation-delay: calc(var(--n) * 18ms); }
@keyframes care-check-in { from { opacity: 0; transform: translateY(7px); } to { opacity: 1; transform: none; } }
.care-plain { position: absolute; left: 0; right: 0; bottom: 6px; display: grid; grid-template-columns: 1fr auto; align-items: baseline; gap: 24px; padding-top: 13px; border-top: 2px solid var(--public-ink); }
.care-plain > strong { color: var(--public-blue); font: 700 11px/1 var(--public-sans); letter-spacing: .08em; text-transform: uppercase; }
.care-plain > span { color: #46566d; font: 600 14px/1.25 var(--public-sans); }
.care-plain p { margin: 0; color: #627086; font: 600 13px/1 var(--public-sans); white-space: nowrap; }
.care-plain p b { color: var(--public-blue); font: 600 21px/1 var(--public-serif); }
.care-plain p i { padding: 0 5px; }
.care-score-scan { position: absolute; left: 0; right: 0; bottom: 46px; display: grid; grid-template-columns: auto 1fr auto 1fr auto auto; align-items: center; gap: 11px; color: #536178; font: 700 8px/1 var(--public-sans); letter-spacing: .09em; }
.care-score-scan i { height: 1px; background: linear-gradient(90deg, rgba(47,99,255,.18), var(--public-blue)); }
.care-score-scan strong { margin-left: 8px; padding: 8px 13px; border: 1px solid var(--public-blue); color: var(--public-blue); background: #fff; font: 700 14px/1 var(--public-sans); }
.public-care.is-current .care-score-scan i { animation: metric-beam .8s .35s both; transform-origin: left; }

/* 06 · metric family */
.public-metrics h2 { font-size: 66px; }
.metric-flow {
  position: absolute;
  left: 0;
  right: 0;
  top: 260px;
  display: grid;
  grid-template-columns: 1fr 42px 1fr 42px 1fr;
  align-items: center;
}
.metric-flow > div { position: relative; min-height: 190px; padding: 23px 95px 0 0; border-top: 2px solid rgba(255, 255, 255, .35); }
.metric-flow > div:last-of-type { border-color: var(--public-sky); }
.metric-flow > i { color: #8da4ca; text-align: center; font: 500 30px/1 var(--public-serif); }
.metric-flow span,
.metric-flow strong,
.metric-flow small { display: block; }
.metric-flow span { color: var(--public-sky); font: 700 11px/1 var(--public-sans); letter-spacing: .15em; }
.metric-flow strong { margin-top: 17px; font: 600 34px/1 var(--public-serif); }
.metric-flow small { max-width: 245px; margin-top: 12px; color: #bccae1; font: 500 14px/1.35 var(--public-sans); }
.metric-flow b { position: absolute; top: 48px; right: 9px; color: var(--public-sky); font: 600 55px/.8 var(--public-serif); }
.metric-flow::before { content: ''; position: absolute; left: 4%; right: 4%; top: -18px; height: 1px; background: linear-gradient(90deg, transparent, var(--public-sky), transparent); box-shadow: 0 0 18px rgba(159, 198, 255, .55); }
.metric-flow .metric-key { border: 1px solid rgba(159, 198, 255, .35); border-top: 2px solid var(--public-sky); padding-left: 22px; background: radial-gradient(circle at 86% 30%, rgba(47, 99, 255, .25), transparent 45%); box-shadow: 0 0 45px rgba(47, 99, 255, .12); }
.metric-flow .metric-key::after { content: ''; position: absolute; right: 27px; bottom: 24px; width: 48px; height: 18px; border: 4px solid var(--public-sky); border-radius: 18px; box-shadow: 31px 0 0 -6px var(--public-sky), 43px 0 0 -6px var(--public-sky); transform: rotate(-18deg); opacity: .7; }
.public-metrics.is-current .metric-flow::before { animation: metric-beam .9s both; transform-origin: left; }
.public-metrics.is-current .metric-key { animation: key-glow 1.6s .6s both; }
@keyframes metric-beam { from { transform: scaleX(0); } }
@keyframes key-glow { 50% { box-shadow: 0 0 75px rgba(47, 99, 255, .38); } }

/* 07 · S-Index */
.public-sindex h2 { font-size: 63px; }
.sindex-example { position: absolute; left: 0; right: 0; top: 230px; height: 315px; }
.sindex-bars { position: absolute; left: 0; bottom: 40px; display: flex; align-items: flex-end; gap: 18px; width: 720px; height: 230px; border-bottom: 2px solid #34445d; }
.sindex-bars > div { position: relative; width: 72px; height: calc(var(--h) * 2.2px); min-height: 18px; background: linear-gradient(180deg, var(--public-blue), #6e95ff); }
.sindex-bars > div.fails { background: #aab1bb; }
.sindex-bars b { position: absolute; left: 0; right: 0; top: -24px; color: var(--public-blue); text-align: center; font: 700 13px/1 var(--public-sans); }
.sindex-bars .fails b { color: #707b8b; }
.sindex-bars span { position: absolute; left: 0; right: 0; bottom: -29px; color: #69778b; text-align: center; font: 600 12px/1 var(--public-sans); }
.sindex-threshold { position: absolute; right: 0; top: 248px; width: 310px; transform: none; }
.sindex-threshold span { display: none; }
.sindex-threshold b { display: block; margin: 0; padding: 8px 10px; border: 1px solid rgba(47,99,255,.35); color: var(--public-blue); background: rgba(255,255,255,.72); font: 700 10px/1 var(--public-sans); letter-spacing: .08em; text-align: center; text-transform: uppercase; }
.sindex-result { position: absolute; right: 0; top: 20px; width: 310px; padding: 28px 30px; border-left: 3px solid var(--public-blue); background: #fff; box-shadow: 13px 13px 0 rgba(47, 99, 255, .18); }
.sindex-result small { color: var(--public-blue); font: 700 11px/1 var(--public-sans); letter-spacing: .14em; }
.sindex-result strong { display: block; margin-top: 16px; color: var(--public-blue); font: 600 105px/.75 var(--public-serif); }
.sindex-result p { margin: 22px 0 0; color: #5e6b7e; font: 600 13px/1.4 var(--public-sans); }
.sindex-keyline { position: absolute; right: 0; bottom: 23px; display: grid; grid-template-columns: auto 20px auto 20px auto; gap: 6px; align-items: center; color: var(--public-blue); }
.sindex-keyline span { font: 700 9px/1 var(--public-sans); letter-spacing: .08em; }.sindex-keyline i { text-align: center; font: 700 13px/1 var(--public-sans); }
.public-sindex.is-current .sindex-bars > div { animation: sindex-rise .65s both cubic-bezier(.16, 1, .3, 1); animation-delay: calc(var(--h) * 3ms); transform-origin: bottom; }
.public-sindex.is-current .sindex-threshold { animation: threshold-scan .55s .35s both cubic-bezier(.2, .8, .2, 1); }
@keyframes sindex-rise { from { transform: scaleY(.05); opacity: .2; } }
@keyframes threshold-scan { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }

/* 08 · S-Impact */
.public-simpact h2 { max-width: 980px; font-size: 61px; }
.impact-core { position: absolute; left: 0; right: 0; top: 285px; display: grid; grid-template-columns: repeat(6, 1fr 24px) 1.45fr; align-items: center; gap: 4px; }
.impact-core > div { min-width: 80px; padding: 19px 12px; border: 1px solid rgba(255, 255, 255, .25); text-align: center; background: rgba(4, 17, 47, .17); }
.impact-core > i { color: #acc1e4; text-align: center; font: 500 20px/1 var(--public-serif); }
.impact-core span,
.impact-core strong { display: block; }
.impact-core span { color: var(--public-sky); font: 700 10px/1 var(--public-sans); letter-spacing: .12em; }
.impact-core strong { margin-top: 11px; font: 600 34px/1 var(--public-serif); }
.impact-core .impact-total { padding: 27px 14px; border: 2px solid var(--public-sky); background: rgba(255, 255, 255, .1); }
.impact-core .impact-total strong { color: var(--public-sky); font-size: 58px; }
.impact-label { position: absolute; left: 0; bottom: 30px; margin: 0; color: #b7c8e3; font: 500 14px/1.4 var(--public-sans); }
.impact-wave { position: absolute; right: 50px; bottom: 80px; width: 160px; height: 70px; }
.impact-wave i { position: absolute; inset: 0; border: 1px solid rgba(255, 255, 255, .32); border-radius: 50%; }
.public-simpact.is-current .impact-wave i { animation: impact-ripple 2.4s infinite ease-out; }.public-simpact.is-current .impact-wave i:nth-child(2) { animation-delay: .5s; }.public-simpact.is-current .impact-wave i:nth-child(3) { animation-delay: 1s; }
@keyframes impact-ripple { from { opacity: .7; transform: scale(.2); } to { opacity: 0; transform: scale(1.2); } }
.public-simpact.is-current .impact-core > div { animation: node-arrive .45s both; }.public-simpact.is-current .impact-core > div:nth-of-type(2) { animation-delay: .1s; }.public-simpact.is-current .impact-core > div:nth-of-type(3) { animation-delay: .2s; }.public-simpact.is-current .impact-core > div:nth-of-type(4) { animation-delay: .3s; }.public-simpact.is-current .impact-core > div:nth-of-type(5) { animation-delay: .4s; }.public-simpact.is-current .impact-core > div:nth-of-type(6) { animation-delay: .5s; }.public-simpact.is-current .impact-total { animation-delay: .75s !important; }
@keyframes node-arrive { from { opacity: 0; transform: translateY(20px) scale(.8); } }

/* 09 · evidence interpretation */
.public-validation h2 { max-width: 980px; font-size: 70px; }
.validation-flow { position: absolute; left: 0; right: 0; top: 260px; display: grid; grid-template-columns: 1fr 48px 1fr 48px 1fr; align-items: center; }
.validation-flow > div { min-height: 125px; padding: 23px 20px; border-top: 2px solid rgba(255, 255, 255, .33); background: rgba(255, 255, 255, .035); }
.validation-flow > i { color: var(--public-sky); text-align: center; font: 500 29px/1 var(--public-serif); }
.validation-flow span,
.validation-flow strong { display: block; }
.validation-flow span { color: var(--public-sky); font: 700 11px/1 var(--public-sans); letter-spacing: .14em; }
.validation-flow strong { margin-top: 23px; font: 600 25px/1 var(--public-serif); }
.validation-meaning { max-width: 980px; margin: 200px 0 0; color: #fff; font: 600 25px/1.35 var(--public-serif); }.validation-meaning b { color: var(--public-sky); }
.validation-flow::after { content: ''; position: absolute; left: 6%; right: 6%; bottom: -23px; height: 3px; background: linear-gradient(90deg, rgba(159,198,255,.15), var(--public-sky)); box-shadow: 0 0 22px rgba(159,198,255,.55); transform-origin: left; }
.public-validation.is-current .validation-flow::after { animation: evidence-converge 1.1s .25s both; }
@keyframes evidence-converge { from { transform: scaleX(0); opacity: 0; } }
.public-citation { position: absolute; left: 0; bottom: 20px; margin: 0; color: #99accb; font: 500 12px/1.35 var(--public-sans); }

/* 10 · trust */
.trust-layout { display: grid; grid-template-columns: 1fr .9fr; align-items: center; gap: 72px; }
.public-trust h2 { font-size: 64px; }
.trust-receipt { padding: 0 28px 18px; border: 2px solid var(--public-ink); background: #fff; box-shadow: 14px 14px 0 var(--public-blue); }
.receipt-top { display: flex; align-items: center; justify-content: space-between; margin: 0 -28px 4px; padding: 16px 21px; background: var(--public-ink); color: #fff; }
.receipt-top span { font: 700 10px/1 var(--public-sans); letter-spacing: .14em; }
.receipt-top b { color: var(--public-sky); font: 600 21px/1 var(--public-serif); }
.trust-receipt > div:not(.receipt-top) { display: grid; grid-template-columns: 40px 1fr; padding: 13px 0; border-bottom: 1px solid #d3d8df; }
.trust-receipt > div:not(.receipt-top) > span { grid-row: 1/3; padding-top: 3px; color: var(--public-blue); font: 700 10px/1 var(--public-sans); }
.trust-receipt strong { font: 600 19px/1 var(--public-serif); }
.trust-receipt small { margin-top: 4px; color: #647185; font: 500 12px/1.3 var(--public-sans); }
.machine-rail { position: absolute; left: 0; right: 0; bottom: 5px; display: grid; grid-template-columns: auto 1fr auto 1fr auto 1fr auto; align-items: center; gap: 10px; }
.machine-rail span { color: var(--public-blue); font: 700 9px/1 var(--public-sans); letter-spacing: .12em; }.machine-rail i { height: 1px; background: #aab6c5; }
.public-trust.is-current .trust-receipt { animation: receipt-float 3s ease-in-out infinite alternate; }
.public-trust.is-current .machine-rail i { animation: rail-read .65s both; transform-origin: left; }.public-trust.is-current .machine-rail i:nth-of-type(2) { animation-delay: .25s; }.public-trust.is-current .machine-rail i:nth-of-type(3) { animation-delay: .5s; }
@keyframes receipt-float { to { transform: translateY(-7px) rotate(.25deg); box-shadow: 18px 21px 0 var(--public-blue); } }
@keyframes rail-read { from { transform: scaleX(0); } }

/* 11 · researcher value */
.public-credit h2 { max-width: 1040px; font-size: 64px; }
.credit-loop { position: absolute; left: 0; right: 0; top: 275px; display: grid; grid-template-columns: 1fr 45px 1fr 45px 1fr; align-items: center; }
.credit-loop > div { min-height: 155px; padding: 22px 20px; border-top: 2px solid rgba(255, 255, 255, .34); }
.credit-loop > div:last-of-type { border-color: var(--public-sky); }
.credit-loop > i { color: #90a7cc; text-align: center; font: 500 28px/1 var(--public-serif); }
.credit-loop span,
.credit-loop strong,
.credit-loop small { display: block; }
.credit-loop span { color: var(--public-sky); font: 700 11px/1 var(--public-sans); letter-spacing: .14em; }
.credit-loop strong { margin-top: 18px; font: 600 28px/1 var(--public-serif); }
.credit-loop small { margin-top: 12px; color: #bdcce4; font: 500 14px/1.35 var(--public-sans); }
.credit-loop > b { position: absolute; right: -4px; top: -44px; color: var(--public-sky); font: 500 46px/1 var(--public-serif); }
.agent-constellation { position: absolute; right: 0; bottom: 8px; width: 310px; height: 110px; opacity: .75; }
.agent-constellation span { position: absolute; width: 13px; height: 13px; border: 2px solid var(--public-sky); border-radius: 50%; background: var(--public-navy); box-shadow: 0 0 18px rgba(159, 198, 255, .55); }.agent-constellation span:nth-child(1) { left: 0; top: 55px; }.agent-constellation span:nth-child(2) { left: 95px; top: 8px; }.agent-constellation span:nth-child(3) { left: 190px; top: 76px; }.agent-constellation span:nth-child(4) { right: 0; top: 18px; }
.agent-constellation i { position: absolute; left: 8px; height: 1px; width: 100px; background: var(--public-sky); transform-origin: left; }.agent-constellation i:nth-of-type(1) { top: 60px; transform: rotate(-26deg); }.agent-constellation i:nth-of-type(2) { left: 105px; top: 15px; width: 110px; transform: rotate(33deg); }.agent-constellation i:nth-of-type(3) { left: 201px; top: 82px; width: 105px; transform: rotate(-34deg); }
.public-agents.is-current .agent-constellation i { animation: agent-connect .7s both; }.public-agents.is-current .agent-constellation i:nth-of-type(2) { animation-delay: .25s; }.public-agents.is-current .agent-constellation i:nth-of-type(3) { animation-delay: .5s; }
@keyframes agent-connect { from { transform: rotate(var(--r, 0deg)) scaleX(0); } }

/* 12 · public value */
.public-value h2 { max-width: 1000px; font-size: 67px; }
.value-journey { position: absolute; left: 0; right: 0; top: 290px; display: grid; grid-template-columns: 1fr 35px 1fr 35px 1fr 35px 1fr; align-items: center; }
.value-journey > div { position: relative; min-height: 140px; padding: 48px 14px 0 0; border-top: 1px solid rgba(255, 255, 255, .36); }
.value-journey > i { color: var(--public-sky); text-align: center; font: 500 25px/1 var(--public-serif); }
.value-journey .signal-dot { position: absolute; left: 0; top: -8px; width: 16px; height: 16px; background: #fff; box-shadow: 0 0 0 8px rgba(255, 255, 255, .12); }
.value-journey strong,
.value-journey small { display: block; }
.value-journey strong { font: 600 25px/1 var(--public-serif); }
.value-journey small { margin-top: 10px; color: #c9d5e9; font: 500 14px/1.35 var(--public-sans); }
.society-rings { position: absolute; left: 0; right: 0; bottom: 18px; display: flex; gap: 12px; }
.society-rings span { padding: 8px 13px; border: 1px solid rgba(255,255,255,.32); border-radius: 30px; color: #fff; font: 700 9px/1 var(--public-sans); letter-spacing: .1em; }
.public-value.is-current .value-journey .signal-dot { animation: value-pulse 1.8s infinite alternate; }.public-value.is-current .value-journey > div:nth-of-type(2) .signal-dot { animation-delay: .3s; }.public-value.is-current .value-journey > div:nth-of-type(3) .signal-dot { animation-delay: .6s; }.public-value.is-current .value-journey > div:nth-of-type(4) .signal-dot { animation-delay: .9s; }
@keyframes value-pulse { to { box-shadow: 0 0 0 15px rgba(255,255,255,.04), 0 0 30px rgba(255,255,255,.45); transform: scale(1.15); } }

/* 13 · scale */
.scale-field { inset: 0 0 0 38%; opacity: .5; }
.public-scale h2 { max-width: 950px; font-size: 70px; }
.scale-metrics { position: absolute; left: 0; right: 0; top: 270px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; }
.scale-metrics > div { min-height: 170px; padding: 21px 0; border-top: 2px solid rgba(255, 255, 255, .32); }
.scale-metrics strong,
.scale-metrics span { display: block; }
.scale-metrics strong { color: var(--public-sky); font: 600 88px/.8 var(--public-serif); letter-spacing: -.06em; }
.scale-metrics span { margin-top: 21px; color: #d1dcef; font: 600 15px/1 var(--public-sans); letter-spacing: .05em; }
.scale-caption { position: absolute; left: 0; bottom: 30px; margin: 0; color: #b2c2dd; font: 500 17px/1.4 var(--public-sans); }
.public-scale::after { content: ''; position: absolute; z-index: 1; right: 152px; top: 88px; width: 420px; height: 420px; border: 1px solid rgba(159,198,255,.18); border-radius: 50%; box-shadow: 0 0 0 80px rgba(159,198,255,.035), 0 0 0 160px rgba(159,198,255,.018); }
.public-scale.is-current::after { animation: scale-pullback 2.2s both cubic-bezier(.16,1,.3,1); }
@keyframes scale-pullback { from { transform: scale(.05); opacity: .9; } }

/* 14 · connected demo */
.demo-divider-field { inset: 0 0 0 52%; opacity: .46; }
.demo-divider-frame h2 { max-width: 870px; font-size: 76px; }
.demo-divider-frame .public-lede { max-width: 820px; font-size: 19px; }
.demo-marquee { position: absolute; left: 0; right: 0; top: 322px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 13px; perspective: 1100px; }
.demo-marquee > div { position: relative; height: 205px; overflow: hidden; border: 1px solid rgba(159, 198, 255, .35); background: #fff; box-shadow: 0 18px 45px rgba(0, 0, 0, .26); transform: rotateY(-4deg) translateY(calc(var(--demo-lift, 0) * 1px)); }
.demo-marquee > div:nth-child(2) { --demo-lift: -12; }.demo-marquee > div:nth-child(3) { --demo-lift: 8; }.demo-marquee > div:nth-child(4) { --demo-lift: -5; }
.demo-marquee img { width: 100%; height: 100%; object-fit: cover; object-position: top; filter: saturate(.72) contrast(1.08); }
.demo-marquee span { position: absolute; left: 0; right: 0; bottom: 0; padding: 11px 13px; background: rgba(5, 15, 32, .9); color: var(--public-sky); font: 700 9px/1 var(--public-sans); letter-spacing: .13em; }
.public-demo-divider.is-current .demo-marquee > div { animation: demo-card-deal .62s both cubic-bezier(.16, 1, .3, 1); }.public-demo-divider.is-current .demo-marquee > div:nth-child(2) { animation-delay: .1s; }.public-demo-divider.is-current .demo-marquee > div:nth-child(3) { animation-delay: .2s; }.public-demo-divider.is-current .demo-marquee > div:nth-child(4) { animation-delay: .3s; }
@keyframes demo-card-deal { from { opacity: 0; transform: rotateY(-16deg) translateX(34px) translateY(calc(var(--demo-lift, 0) * 1px)); } }

.public-live-surface .public-frame { top: 43px; }
.public-live-surface .public-kicker { margin-bottom: 12px; }
.public-live-surface h2 { max-width: 615px; font-size: 51px; }
.live-surface-shell { position: absolute; z-index: 1; left: 360px; right: 0; top: 133px; height: 406px; overflow: hidden; border: 2px solid var(--public-ink); background: #fff; box-shadow: 15px 15px 0 var(--public-blue), 0 28px 75px rgba(7, 20, 38, .18); transform: perspective(1200px) rotateY(calc(var(--pointer-x) * -1.2deg)) rotateX(calc(var(--pointer-y) * .8deg)); transform-origin: center; transition: transform .35s ease; }
.live-surface-browser { height: 39px; display: flex; align-items: center; gap: 7px; padding: 0 15px; background: var(--public-ink); color: #fff; }
.live-surface-browser i { width: 8px; height: 8px; border-radius: 50%; background: #718097; }
.live-surface-browser b { margin-left: 9px; font: 700 10px/1 var(--public-sans); letter-spacing: .04em; }
.live-surface-browser span { margin-left: auto; padding: 5px 8px; border: 1px solid rgba(159, 198, 255, .55); color: var(--public-sky); font: 700 8px/1 var(--public-sans); letter-spacing: .13em; }
.live-surface-shell > img { display: block; width: 100%; height: calc(100% - 39px); object-fit: cover; object-position: top; }
.live-surface-caption { position: absolute; left: 0; top: 273px; width: 285px; padding: 20px 20px 22px; border-top: 2px solid var(--public-blue); background: rgba(255, 255, 255, .68); }
.live-surface-caption span, .live-surface-caption strong, .live-surface-caption small { display: block; }
.live-surface-caption span { color: var(--public-blue); font: 700 9px/1 var(--public-sans); letter-spacing: .14em; }
.live-surface-caption strong { margin-top: 16px; font: 600 30px/1 var(--public-serif); }
.live-surface-caption small { margin-top: 10px; color: #647185; font: 600 12px/1.4 var(--public-sans); }
.public-live-surface.is-current .live-surface-shell { animation: live-surface-land .68s both cubic-bezier(.16, 1, .3, 1); }
.public-live-surface.is-current .live-surface-caption { animation: live-caption-in .5s .24s both cubic-bezier(.16, 1, .3, 1); }
@keyframes live-surface-land { from { opacity: 0; transform: perspective(1200px) rotateY(7deg) translateX(45px); } }
@keyframes live-caption-in { from { opacity: 0; transform: translateY(18px); } }

body.present .public-slide .demo-frame { z-index: 20; }
body.present .public-slide.demo-live .public-folio,
body.present .public-slide.demo-live .story-spine { display: none; }

.public-demo .public-frame { top: 46px; }
.public-demo .public-kicker { margin-bottom: 15px; }
.public-demo h2 { max-width: 1080px; font-size: 52px; }
.demo-shell { position: absolute; left: 0; right: 0; top: 128px; height: 350px; overflow: hidden; border: 2px solid var(--public-ink); background: #fff; box-shadow: 13px 13px 0 var(--public-blue); }
.demo-shell::after { content: ''; position: absolute; z-index: 5; left: 28px; bottom: 0; width: 3px; height: calc(100% - 38px); background: linear-gradient(var(--public-blue), rgba(47,99,255,.08)); box-shadow: 0 0 16px rgba(47,99,255,.45); pointer-events: none; }
.public-demo.is-current .demo-shell { animation: browser-land .65s both cubic-bezier(.16,1,.3,1); }
@keyframes browser-land { from { opacity: 0; transform: perspective(900px) rotateX(6deg) translateY(22px); } }
.demo-browser { height: 38px; display: flex; align-items: center; gap: 7px; padding: 0 16px; background: var(--public-ink); color: #fff; }
.demo-browser > span { width: 8px; height: 8px; border-radius: 50%; background: #6e7c91; }
.demo-browser b { margin-left: 12px; font: 700 11px/1 var(--public-sans); letter-spacing: .04em; }
.demo-pane { position: absolute; inset: 38px 0 0; display: none; padding: 25px 30px; animation: public-pane-in .32s ease both; }
.public-demo[data-demo-step='0'] [data-demo-pane='0'],
.public-demo[data-demo-step='1'] [data-demo-pane='1'],
.public-demo[data-demo-step='2'] [data-demo-pane='2'],
.public-demo[data-demo-step='3'] [data-demo-pane='3'] { display: block; }
@keyframes public-pane-in { from { opacity: 0; transform: translateX(13px); } to { opacity: 1; transform: none; } }
.demo-record-head { display: flex; justify-content: space-between; align-items: center; color: var(--public-blue); font: 700 10px/1 var(--public-sans); letter-spacing: .14em; }
.demo-record-head b { padding: 7px 11px; background: #eaf0ff; color: var(--public-blue); }
.demo-pane h3 { max-width: 780px; margin-top: 25px; font-size: 35px; }
.demo-muted { margin: 9px 0 0; color: #647185; font: 500 13px/1.35 var(--public-sans); }
.demo-evidence { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; margin-top: 28px; border-block: 1px solid #d3d8e0; }
.demo-evidence > div { padding: 16px 18px 14px 0; border-right: 1px solid #d3d8e0; }
.demo-evidence > div + div { padding-left: 18px; }
.demo-evidence > div:last-child { border-right: 0; }
.demo-evidence strong,
.demo-evidence span { display: block; }
.demo-evidence strong { color: var(--public-blue); font: 600 27px/1 var(--public-serif); }
.demo-evidence span { margin-top: 7px; color: #69768a; font: 600 11px/1 var(--public-sans); text-transform: uppercase; letter-spacing: .08em; }
.demo-boundary { margin: 14px 0 0; color: #5f6e82; font: 600 12px/1.35 var(--public-sans); }
.demo-pane[data-demo-pane='2'] { display: none; grid-template-columns: 1.15fr .85fr; gap: 40px; }
.public-demo[data-demo-step='2'] [data-demo-pane='2'] { display: grid; }
.demo-map-copy > span { color: var(--public-blue); font: 700 10px/1 var(--public-sans); letter-spacing: .14em; }
.demo-map-copy h3 { margin-top: 19px; }
.demo-map { position: relative; overflow: hidden; border-left: 1px solid #d2d8e1; background: radial-gradient(circle at 48% 47%, #dfe9ff, #f8faff 60%); }
.map-grid { position: absolute; inset: 0; background-image: linear-gradient(rgba(47, 99, 255, .1) 1px, transparent 1px), linear-gradient(90deg, rgba(47, 99, 255, .1) 1px, transparent 1px); background-size: 28px 28px; }
.map-pin { position: absolute; left: 48%; top: 42%; z-index: 2; display: grid; place-items: center; width: 54px; height: 54px; border: 3px solid #fff; border-radius: 50%; background: var(--public-blue); color: #fff; box-shadow: 0 0 0 10px rgba(47, 99, 255, .18); font: 700 11px/1 var(--public-sans); }
.demo-map > i { position: absolute; width: 9px; height: 9px; border-radius: 50%; background: #7ca2ff; }
.demo-map > i:nth-of-type(1) { left: 24%; top: 28%; }.demo-map > i:nth-of-type(2) { left: 67%; top: 22%; }.demo-map > i:nth-of-type(3) { left: 73%; top: 65%; }.demo-map > i:nth-of-type(4) { left: 31%; top: 70%; }.demo-map > i:nth-of-type(5) { left: 58%; top: 77%; }
.improve-list { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 28px; border-block: 1px solid #d3d8e0; }
.improve-list > div { display: grid; grid-template-columns: 34px 1fr; padding: 17px 16px 15px 0; border-right: 1px solid #d3d8e0; }
.improve-list > div + div { padding-left: 16px; }
.improve-list > div:last-child { border-right: 0; }
.improve-list span { grid-row: 1/3; color: var(--public-blue); font: 700 10px/1 var(--public-sans); }
.improve-list strong { font: 600 18px/1 var(--public-serif); }
.improve-list small { margin-top: 6px; color: #657286; font: 500 11px/1.3 var(--public-sans); }
.demo-steps { position: absolute; left: 0; right: 0; top: 505px; display: grid; grid-template-columns: repeat(4, 1fr) 210px; gap: 13px; align-items: stretch; }
.demo-steps > button { appearance: none; min-width: 0; border: 0; border-top: 2px solid #b8c2cf; background: transparent; padding: 10px 0 0; color: #637085; text-align: left; cursor: pointer; }
.demo-steps > button[data-public-demo-step].is-active { border-color: var(--public-blue); color: var(--public-blue); }
.demo-steps button span,
.demo-steps button b,
.demo-steps button small { display: block; }
.demo-steps button span { font: 700 10px/1 var(--public-sans); }
.demo-steps button b { margin-top: 4px; color: var(--public-ink); font: 600 17px/1 var(--public-serif); }
.demo-steps button small { margin-top: 4px; font: 500 10px/1.2 var(--public-sans); }
.demo-steps .demo-advance { display: grid; place-items: center; border-top: 0; background: var(--public-ink); color: #fff; padding: 0 14px; text-align: center; box-shadow: 6px 6px 0 var(--public-blue); }
.demo-steps .demo-advance span { font: 700 12px/1.25 var(--public-sans); }
.demo-steps .demo-advance:disabled { opacity: .62; cursor: default; }

/* 15 · pilot */
.public-pilot h2 { max-width: 1000px; font-size: 67px; }
.pilot-flow { position: absolute; left: 0; right: 0; top: 275px; display: grid; grid-template-columns: 1fr 35px 1fr 35px 1fr 35px 1fr; align-items: center; }
.pilot-flow > div { min-height: 150px; padding: 21px 17px; border-top: 2px solid rgba(255, 255, 255, .38); background: rgba(255, 255, 255, .035); }
.pilot-flow > i { color: var(--public-sky); text-align: center; font: 500 25px/1 var(--public-serif); }
.pilot-flow span,
.pilot-flow strong,
.pilot-flow small { display: block; }
.pilot-flow span { color: var(--public-sky); font: 700 10px/1 var(--public-sans); letter-spacing: .14em; }
.pilot-flow strong { margin-top: 18px; font: 600 28px/1 var(--public-serif); }
.pilot-flow small { margin-top: 10px; color: #c7d3e8; font: 500 13px/1.35 var(--public-sans); }
.pilot-caption { position: absolute; left: 0; bottom: 28px; margin: 0; color: #c5d2e8; font: 700 12px/1 var(--public-sans); letter-spacing: .12em; text-transform: uppercase; }
.pilot-flow::before { content: ''; position: absolute; inset: -18px -22px -22px; border: 1px solid rgba(255,255,255,.2); background: linear-gradient(90deg, rgba(255,255,255,.03), transparent, rgba(255,255,255,.03)); pointer-events: none; }
.public-pilot.is-current .pilot-flow > div { animation: pilot-measure .5s both; }.public-pilot.is-current .pilot-flow > div:nth-of-type(2) { animation-delay: .15s; }.public-pilot.is-current .pilot-flow > div:nth-of-type(3) { animation-delay: .3s; }.public-pilot.is-current .pilot-flow > div:nth-of-type(4) { animation-delay: .45s; }
@keyframes pilot-measure { from { opacity: 0; transform: translateY(14px); } }

/* 02 · about */
.public-about h2 { max-width: 980px; font-size: 64px; }
.about-composition { position: absolute; left: 0; right: 0; top: 230px; bottom: 35px; display: grid; grid-template-columns: 1.1fr .9fr; gap: 58px; }
.about-organizations { display: grid; grid-template-rows: 1fr 1fr; border-block: 1px solid #bac4d1; }
.about-organizations > div { display: grid; grid-template-columns: 108px 1fr; grid-template-rows: auto auto; align-content: center; padding: 12px 18px 12px 0; border-bottom: 1px solid #bac4d1; }
.about-organizations > div:last-child { border-bottom: 0; }
.about-organizations span { grid-row: 1/3; color: var(--public-blue); font: 700 10px/1 var(--public-sans); letter-spacing: .16em; }
.about-organizations strong { color: var(--public-ink); font: 600 28px/1 var(--public-serif); }
.about-organizations small { margin-top: 10px; max-width: 460px; color: #5d6b7f; font: 500 14px/1.35 var(--public-sans); }
.about-profile { position: relative; display: flex; flex-direction: column; justify-content: center; padding: 35px 36px; border: 1px solid var(--public-blue); background: linear-gradient(145deg, #fff, #edf3ff); box-shadow: 14px 14px 0 rgba(47,99,255,.13); }
.about-profile::before { content: ''; position: absolute; right: 30px; top: 28px; width: 74px; height: 74px; border: 1px solid rgba(47,99,255,.28); border-radius: 50%; box-shadow: 0 0 0 18px rgba(47,99,255,.05), 0 0 0 36px rgba(47,99,255,.025); }
.about-profile > span { color: var(--public-blue); font: 700 10px/1 var(--public-sans); letter-spacing: .16em; }
.about-profile > strong { margin-top: 18px; color: var(--public-ink); font: 600 28px/1.18 var(--public-serif); }
.about-profile > div { display: grid; grid-template-columns: auto 18px auto 18px auto; align-items: center; gap: 5px; margin-top: 35px; color: var(--public-blue); }
.about-profile b { font: 700 8px/1 var(--public-sans); letter-spacing: .1em; }.about-profile i { text-align: center; }
.public-about.is-current .about-profile { animation: receipt-enter .7s .2s both cubic-bezier(.16,1,.3,1); }

/* 07 · combined worked example */
.public-worked h2 { font-size: 62px; }
.worked-system { position: absolute; left: 0; right: 0; top: 240px; display: grid; grid-template-columns: 1.08fr .72fr 1fr; gap: 24px; align-items: stretch; }
.worked-system > div { min-height: 246px; padding: 22px 23px; border-top: 3px solid var(--public-blue); background: rgba(255,255,255,.7); box-shadow: 8px 8px 0 rgba(47,99,255,.08); }
.worked-system span { display: block; color: var(--public-blue); font: 700 9px/1 var(--public-sans); letter-spacing: .13em; }
.worked-system small { display: block; margin-top: 18px; color: #5d6a7e; font: 550 12px/1.35 var(--public-sans); }
.worked-datasets > div { display: flex; align-items: flex-end; gap: 8px; height: 115px; margin-top: 24px; padding-bottom: 12px; border-bottom: 1px solid #7c8796; }
.worked-datasets b { display: grid; place-items: end center; width: 35px; height: calc(18px + var(--worked-height, 0px)); min-height: 20px; padding-bottom: 6px; background: var(--public-blue); color: #fff; font: 700 9px/1 var(--public-sans); }
.worked-datasets b:nth-child(1) { --worked-height: 82px; }.worked-datasets b:nth-child(2) { --worked-height: 66px; }.worked-datasets b:nth-child(3) { --worked-height: 51px; }.worked-datasets b:nth-child(4) { --worked-height: 38px; }.worked-datasets b:nth-child(5) { --worked-height: 20px; }.worked-datasets b:nth-child(6) { --worked-height: 12px; }.worked-datasets b.out { --worked-height: 6px; background: #9da7b4; }
.worked-index { display: flex; flex-direction: column; justify-content: center; border: 2px solid var(--public-blue) !important; background: #fff !important; }
.worked-index strong, .worked-impact > strong { display: block; margin-top: 22px; color: var(--public-blue); font: 600 42px/.95 var(--public-serif); }
.worked-impact > div { display: grid; grid-template-columns: repeat(11, auto); align-items: center; justify-content: space-between; margin-top: 29px; color: var(--public-blue); }
.worked-impact b { display: grid; place-items: center; width: 31px; height: 31px; border: 1px solid var(--public-blue); border-radius: 50%; font: 700 10px/1 var(--public-sans); }.worked-impact i { color: #728097; font: 600 13px/1 var(--public-serif); }
.worked-rule { position: absolute; left: 0; right: 0; bottom: 12px; margin: 0; padding-top: 15px; border-top: 2px solid var(--public-ink); color: #56657a; font: 600 13px/1 var(--public-sans); text-align: center; }.worked-rule b { color: var(--public-blue); }.worked-rule i { padding: 0 9px; }
.public-worked.is-current .worked-system > div { animation: node-arrive .55s both; }.public-worked.is-current .worked-system > div:nth-child(2) { animation-delay: .2s; }.public-worked.is-current .worked-system > div:nth-child(3) { animation-delay: .4s; }

/* 08–10 · proof */
.proof-divider-frame { display: flex; flex-direction: column; justify-content: center; }
.public-proof-divider h2 { max-width: 1040px; font-size: 72px; }
.proof-field { inset: 0 0 0 58%; opacity: .4; }
.proof-questions { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; margin-top: 50px; }
.proof-questions > div { position: relative; padding: 18px 20px 20px; border-top: 2px solid rgba(159,198,255,.55); background: rgba(255,255,255,.035); }
.proof-questions span, .proof-questions strong, .proof-questions small { display: block; }.proof-questions span { color: var(--public-sky); font: 700 9px/1 var(--public-sans); letter-spacing: .15em; }.proof-questions strong { margin-top: 13px; font: 700 12px/1 var(--public-sans); letter-spacing: .11em; }.proof-questions small { margin-top: 9px; color: #c2cee2; font: 500 13px/1.35 var(--public-sans); }
.public-proof-divider.is-current .proof-questions > div { animation: node-arrive .55s both; }.public-proof-divider.is-current .proof-questions > div:nth-child(2) { animation-delay: .18s; }.public-proof-divider.is-current .proof-questions > div:nth-child(3) { animation-delay: .36s; }
.public-results h2 { font-size: 62px; }
.result-timeline { position: absolute; left: 0; right: 0; top: 235px; display: grid; gap: 12px; }
.result-timeline > div { display: grid; grid-template-columns: 110px 175px 34px 1fr; align-items: center; min-height: 83px; padding: 12px 19px; border: 1px solid #cbd3dd; background: rgba(255,255,255,.65); box-shadow: 6px 6px 0 rgba(47,99,255,.055); }
.result-timeline span { color: var(--public-blue); font: 700 12px/1 var(--public-sans); letter-spacing: .12em; }.result-timeline b { color: #6a778b; font: 700 9px/1.25 var(--public-sans); letter-spacing: .1em; }.result-timeline i { color: var(--public-blue); font: 600 23px/1 var(--public-serif); }.result-timeline strong { color: var(--public-ink); font: 600 20px/1.22 var(--public-serif); }
.proof-strip { position: absolute; left: 0; right: 0; bottom: 15px; display: grid; grid-template-columns: auto auto auto 1fr; align-items: center; gap: 20px; padding-top: 14px; border-top: 2px solid var(--public-ink); }
.proof-strip span { color: var(--public-blue); font: 700 9px/1 var(--public-sans); letter-spacing: .1em; }.proof-strip b { justify-self: end; color: #657286; font: 650 11px/1 var(--public-sans); }
.public-results.is-current .result-timeline > div { animation: result-sweep .62s both cubic-bezier(.16,1,.3,1); }.public-results.is-current .result-timeline > div:nth-child(2) { animation-delay: .22s; }.public-results.is-current .result-timeline > div:nth-child(3) { animation-delay: .44s; }
@keyframes result-sweep { from { opacity: 0; transform: translateX(-45px); } }
.public-correction h2 { font-size: 66px; }
.correction-path { position: absolute; left: 0; right: 0; top: 275px; display: grid; grid-template-columns: 1fr 28px 1fr 28px 1fr 28px 1fr; align-items: stretch; }
.correction-path > div { min-height: 150px; padding: 21px 18px; border-top: 2px solid rgba(255,255,255,.55); background: rgba(4,17,47,.12); }.correction-path > i { display: grid; place-items: center; color: var(--public-sky); font: 600 22px/1 var(--public-serif); }
.correction-path span, .correction-path strong { display: block; }.correction-path span { color: var(--public-sky); font: 700 9px/1 var(--public-sans); letter-spacing: .14em; }.correction-path strong { margin-top: 20px; font: 600 19px/1.25 var(--public-serif); }.correction-path .correction-alert { border: 1px solid rgba(255,255,255,.5); border-top: 2px solid #fff; background: rgba(255,255,255,.12); }
.correction-caption { position: absolute; left: 0; bottom: 25px; margin: 0; color: #d5def0; font: 700 11px/1 var(--public-sans); letter-spacing: .11em; text-transform: uppercase; }.correction-caption i { padding: 0 9px; color: var(--public-sky); }
.public-correction.is-current .correction-path > div { animation: pilot-measure .5s both; }.public-correction.is-current .correction-path > div:nth-of-type(2) { animation-delay: .18s; }.public-correction.is-current .correction-path > div:nth-of-type(3) { animation-delay: .36s; }.public-correction.is-current .correction-path > div:nth-of-type(4) { animation-delay: .54s; }

/* 16–19 · adoption and future */
.public-operating h2 { font-size: 64px; }
.operating-flow { top: 230px; }
.operating-flow > div { min-height: 118px; padding-top: 16px; }.operating-flow strong { margin-top: 13px; }.operating-flow small { margin-top: 7px; }
.operating-foundation { position: absolute; left: 0; right: 0; bottom: 18px; display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; }
.operating-foundation > div { padding: 15px 17px; border: 1px solid rgba(255,255,255,.28); background: rgba(4,17,47,.1); }.operating-foundation span, .operating-foundation strong, .operating-foundation small { display: block; }.operating-foundation span { color: var(--public-sky); font: 700 8px/1 var(--public-sans); letter-spacing: .14em; }.operating-foundation strong { margin-top: 8px; font: 600 19px/1 var(--public-serif); }.operating-foundation small { margin-top: 5px; color: #c7d3e8; font: 500 11px/1.25 var(--public-sans); }
.public-hindex h2 { max-width: 1120px; font-size: 60px; }
.index-parallel { position: absolute; left: 0; right: 0; top: 245px; display: grid; grid-template-columns: 1fr 1fr; gap: 27px; }
.index-parallel > div { display: grid; grid-template-columns: 1fr 26px 1fr 26px 1fr; align-items: center; min-height: 185px; padding: 24px 25px; border-top: 3px solid #8e99a8; background: rgba(255,255,255,.65); }
.index-parallel > div.data-path { border: 2px solid var(--public-blue); border-top-width: 3px; box-shadow: 11px 11px 0 rgba(47,99,255,.13); }
.index-parallel span { grid-column: 1/-1; color: #6c788b; font: 700 9px/1 var(--public-sans); letter-spacing: .14em; }.index-parallel strong { font: 600 19px/1.08 var(--public-serif); text-align: center; }.index-parallel i { color: var(--public-blue); text-align: center; }.index-parallel b { color: var(--public-blue); font: 600 31px/1 var(--public-serif); text-align: center; }.index-parallel small { grid-column: 1/-1; margin-top: 13px; color: #617086; font: 500 12px/1.3 var(--public-sans); text-align: center; }
.index-conclusion { position: absolute; left: 0; right: 0; bottom: 20px; margin: 0; padding-top: 16px; border-top: 2px solid var(--public-ink); color: #5b687c; font: 600 15px/1.3 var(--public-sans); }.index-conclusion b { color: var(--public-blue); }
.public-hindex.is-current .data-path { animation: key-glow 1.8s .35s both; }
.public-future h2 { font-size: 69px; }
.future-field { inset: 0; opacity: .3; }
.future-ecosystem { position: absolute; left: 0; right: 0; top: 265px; display: grid; grid-template-columns: .82fr 34px 1.25fr 34px 1.1fr; align-items: center; }
.future-ecosystem > div { min-height: 172px; padding: 24px 22px; border: 1px solid rgba(159,198,255,.32); background: rgba(5,12,24,.55); backdrop-filter: blur(5px); }.future-ecosystem > i { color: var(--public-sky); text-align: center; font: 600 24px/1 var(--public-serif); }
.future-ecosystem span, .future-ecosystem strong, .future-ecosystem small { display: block; }.future-ecosystem span { color: var(--public-sky); font: 700 8px/1 var(--public-sans); letter-spacing: .13em; }.future-ecosystem strong { margin-top: 17px; font: 600 23px/1.15 var(--public-serif); }.future-ecosystem small { margin-top: 10px; color: #b9c8df; font: 500 12px/1.3 var(--public-sans); }
.future-agents { display: grid; grid-template-rows: 1fr 1fr; gap: 8px; }.future-agents > div { padding: 6px 0; border-bottom: 1px solid rgba(159,198,255,.25); }.future-agents > div:last-child { border-bottom: 0; }.future-agents > div strong { margin-top: 7px; font-size: 17px; }
.future-returns { position: absolute; left: 0; right: 0; bottom: 20px; display: grid; grid-template-columns: auto auto auto 1fr; gap: 21px; align-items: center; padding-top: 14px; border-top: 1px solid rgba(159,198,255,.4); }.future-returns span { color: #c4d2e7; font: 700 8px/1 var(--public-sans); letter-spacing: .11em; }.future-returns strong { justify-self: end; color: var(--public-sky); font: 700 10px/1 var(--public-sans); letter-spacing: .11em; }
.future-divider-frame { display: flex; flex-direction: column; justify-content: center; }
.public-future-divider h2 { max-width: 1080px; font-size: 82px; }
.future-title-horizon { display: grid; grid-template-columns: auto 44px auto 44px 1fr; gap: 18px; align-items: center; margin-top: 62px; padding-top: 20px; border-top: 2px solid var(--public-ink); color: #637188; }
.future-title-horizon span { font: 700 14px/1 var(--public-sans); letter-spacing: .12em; }
.future-title-horizon i { color: var(--public-blue); text-align: center; font: 600 24px/1 var(--public-serif); }
.future-title-horizon strong { justify-self: end; color: var(--public-blue); font: 700 17px/1 var(--public-sans); letter-spacing: .12em; }
.public-future.is-current .future-ecosystem > div { animation: node-arrive .55s both; }.public-future.is-current .future-record { animation-delay: .22s !important; }.public-future.is-current .future-agents { animation-delay: .44s !important; }

/* 16 · close */
.close-field { inset: 0 0 0 44%; }
.close-frame { display: flex; flex-direction: column; justify-content: center; }
.public-close h2 { max-width: 900px; font-size: 79px; }
.public-close .public-lede { max-width: 760px; }
.close-lockup { display: grid; grid-template-columns: 28px auto; align-items: center; margin-top: 45px; }
.close-lockup .signal-dot { grid-row: 1/3; }
.close-lockup strong { font: 600 23px/1 var(--public-serif); }
.close-lockup small { margin-top: 5px; color: #9eb0cf; font: 500 12px/1.35 var(--public-sans); }
.close-futures { position: absolute; right: 0; bottom: 80px; display: grid; grid-template-columns: auto 110px auto; align-items: center; gap: 12px; color: var(--public-sky); }
.close-futures span { font: 700 10px/1 var(--public-sans); letter-spacing: .13em; }.close-futures i { height: 1px; background: var(--public-sky); box-shadow: 0 0 13px rgba(159,198,255,.5); }
.public-close.is-current .close-futures::after { content: ''; position: absolute; left: 50%; top: -42px; width: 13px; height: 13px; border-radius: 50%; background: #fff; box-shadow: -72px 40px 0 var(--public-sky), 72px 40px 0 var(--public-sky), 0 0 35px #78a6ff; animation: future-split 1.4s .35s both cubic-bezier(.16,1,.3,1); }
@keyframes future-split { from { opacity: 0; transform: translateY(40px) scale(.2); } }

/* v0.8 · one continuous light editorial stage
   Dark and cobalt chapters still carry blue energy through rules, type, motion,
   and contained objects, but the audience never drops into a dark full-slide mode. */
.public-slide.dark,
.public-slide.blue {
  color: var(--public-ink);
  background:
    radial-gradient(circle at 86% 14%, rgba(47, 99, 255, .13), transparent 31%),
    linear-gradient(145deg, #fffdf8 0%, var(--public-paper) 66%, #edf2ff 100%);
}
.public-slide.dark::before,
.public-slide.blue::before {
  background-image:
    linear-gradient(rgba(7, 20, 38, .035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(7, 20, 38, .035) 1px, transparent 1px);
}
.dark .story-spine,
.blue .story-spine { color: #6d7a8d; }
.dark .story-spine strong,
.blue .story-spine strong,
.dark .public-kicker,
.blue .public-kicker,
.dark h1 em,
.dark h2 em,
.dark h3 em,
.blue h1 em,
.blue h2 em,
.blue h3 em { color: var(--public-blue); }
.dark .story-spine i,
.blue .story-spine i { background: linear-gradient(90deg, var(--public-blue) calc(var(--phase) * 25%), rgba(101, 115, 137, .25) 0); }
.dark .public-folio,
.blue .public-folio { border-color: var(--public-line); color: #637188; }
.dark .technical-map,
.blue .technical-map { color: var(--public-blue-deep); border-color: rgba(47,99,255,.28); background: rgba(255,253,248,.8); }
.dark .appendix-badge,
.blue .appendix-badge { background: rgba(255,253,248,.92); border-color: rgba(47,99,255,.35); box-shadow: 8px 8px 0 rgba(47,99,255,.1); }
.dark .appendix-badge strong,
.blue .appendix-badge strong { color: var(--public-ink); }
.dark .public-lede,
.blue .public-lede { color: #46566e; }
.dark .public-copy,
.blue .public-copy { color: #415069; }
.dark .signal-field,
.blue .signal-field { opacity: .38; }
.dark .signal-field i.is-evidence,
.blue .signal-field i.is-evidence { background: var(--public-blue); }

.hero-sequence { color: #34455e; }
.hero-sequence i { background: #91a0b4; }
.future-window { border-color: rgba(47,99,255,.34); background: rgba(255,255,255,.78); box-shadow: 12px 12px 0 rgba(47,99,255,.14); }
.future-window span { color: var(--public-blue); }
.future-window strong { color: var(--public-ink); }

.gap-side,
.gap-side.ready,
.metric-flow > div,
.validation-flow > div,
.credit-loop > div,
.value-journey > div,
.scale-metrics > div,
.pilot-flow > div,
.proof-questions > div,
.correction-path > div,
.operating-foundation > div {
  border-color: rgba(47,99,255,.34);
  background: rgba(255,255,255,.62);
}
.gap-side span,
.metric-flow span,
.metric-flow b,
.validation-flow span,
.credit-loop span,
.proof-questions span,
.correction-path span,
.operating-foundation span,
.pilot-flow span,
.scale-metrics strong { color: var(--public-blue); }
.gap-side small,
.metric-flow small,
.validation-meaning,
.credit-loop small,
.value-journey small,
.scale-metrics span,
.scale-caption,
.pilot-flow small,
.pilot-caption,
.proof-questions small,
.correction-caption,
.operating-foundation small { color: #56677f; }
.gap-arrow,
.metric-flow > i,
.validation-flow > i,
.credit-loop > i,
.value-journey > i,
.pilot-flow > i,
.correction-path > i,
.future-ecosystem > i { color: var(--public-blue); }
.metric-flow::before,
.validation-flow::after { background: linear-gradient(90deg, transparent, var(--public-blue), transparent); box-shadow: 0 0 18px rgba(47,99,255,.3); }
.metric-flow .metric-key { border-color: rgba(47,99,255,.45); border-top-color: var(--public-blue); background: linear-gradient(145deg, rgba(255,255,255,.92), rgba(229,237,255,.78)); }
.metric-flow .metric-key::after { border-color: var(--public-blue); box-shadow: 31px 0 0 -6px var(--public-blue), 43px 0 0 -6px var(--public-blue); }

.score-receipt { border-color: rgba(47,99,255,.35); background: rgba(255,255,255,.72); }
.score-total strong,
.score-rule i,
.score-receipt li::before { color: var(--public-blue); }
.score-total span,
.score-rule,
.score-receipt li,
.score-receipt > small { color: #56677f; }
.score-rule { border-color: rgba(7,20,38,.16); }
.score-rule b { color: var(--public-ink); }

.impact-core > div,
.impact-core .impact-total { border-color: rgba(47,99,255,.35); background: rgba(255,255,255,.7); }
.impact-core span,
.impact-core .impact-total strong { color: var(--public-blue); }
.impact-core > i,
.impact-label { color: #586a82; }
.impact-wave i { border-color: rgba(47,99,255,.28); }

.validation-meaning b,
.credit-loop > b { color: var(--public-blue); }
.agent-constellation span { border-color: var(--public-blue); background: var(--public-white); }
.agent-constellation i { background: var(--public-blue); }
.value-journey .signal-dot { background: var(--public-blue); box-shadow: 0 0 0 8px rgba(47,99,255,.12); }
.scale-metrics > div { border-top-width: 2px; }
.public-scale::after { border-color: rgba(47,99,255,.18); box-shadow: 0 0 0 80px rgba(47,99,255,.035), 0 0 0 160px rgba(47,99,255,.018); }
.pilot-flow::before { border-color: rgba(47,99,255,.2); background: linear-gradient(90deg, rgba(47,99,255,.03), transparent, rgba(47,99,255,.03)); }
.proof-questions strong,
.correction-path strong,
.operating-foundation strong { color: var(--public-ink); }
.correction-path .correction-alert { border-color: var(--public-blue); border-top-color: var(--public-blue); background: rgba(47,99,255,.08); }

.future-ecosystem > div { border-color: rgba(47,99,255,.3); background: rgba(255,255,255,.72); }
.future-ecosystem span,
.future-returns strong { color: var(--public-blue); }
.future-ecosystem strong { color: var(--public-ink); }
.future-ecosystem small,
.future-returns span { color: #586a82; }
.future-returns { border-color: rgba(47,99,255,.28); }
.future-agents > div { border-color: rgba(47,99,255,.2); }
.close-lockup small { color: #617188; }
.close-futures { color: var(--public-blue); }
.close-futures i { background: var(--public-blue); }
.public-close.is-current .close-futures::after { background: var(--public-blue); box-shadow: -72px 40px 0 #7fa4ff, 72px 40px 0 #7fa4ff, 0 0 35px rgba(47,99,255,.55); }
.context-orbit b { color: var(--public-blue); border-color: rgba(47,99,255,.32); background: rgba(255,255,255,.55); }
.reuse-gate { color: #53647c; }
.reuse-gate i { background: var(--public-blue); }
.reuse-gate b { color: #738198; }
.society-rings span { color: var(--public-blue); border-color: rgba(47,99,255,.3); background: rgba(255,255,255,.55); }
.public-validation .validation-meaning { position: absolute; left: 0; right: 0; top: 430px; margin: 0; color: #53647c; font-size: 22px; }
.public-live-surface .public-frame { top: 68px; }
.public-slide[data-appendix] .appendix-badge { width: 205px; }
.public-slide.public-demo[data-appendix] .appendix-badge { display: none; }

/* v0.8.2 — projector-readable supporting type. Headlines keep their established
   scale; the information around them moves up one clear optical step. */
.story-spine strong,
.story-spine span { font-size: 11px; }
.public-kicker { font-size: 16px; }
.public-lede { font-size: 25px; }
.public-copy { font-size: 22px; }
.public-folio { font-size: 12px; }
.technical-map { font-size: 10px; }
.appendix-badge span { font-size: 11px; }
.appendix-badge strong { font-size: 14px; }

.hero-sequence { font-size: 14px; }
.future-window span { font-size: 11px; }
.future-window strong { font-size: 21px; }
.source-flow span { font-size: 13px; }
.source-flow small { font-size: 16px; }
.source-signature span { font-size: 15px; }
.gap-side span { font-size: 13px; }
.gap-side small { font-size: 18px; }
.context-orbit b { font-size: 10px; }
.reuse-gate span { font-size: 11px; }
.reuse-gate b { font-size: 12px; }

.score-rule { font-size: 17px; }
.score-receipt li { font-size: 16px; }
.score-receipt > small { font-size: 13px; }
.care-head span { font-size: 14px; }
.care-head small { font-size: 10px; }
.care-cell span { font-size: 9px; }
.care-cell strong { font-size: 11px; line-height: 1.15; }
.care-plain > strong { font-size: 13px; }
.care-plain > span { font-size: 16px; }
.care-plain p { font-size: 15px; }
.care-score-scan { font-size: 10px; }

.metric-flow span { font-size: 13px; }
.metric-flow small { font-size: 16px; }
.metric-flow .metric-key::after { display: none; }
.sindex-bars b { font-size: 15px; }
.sindex-bars span { font-size: 14px; }
.sindex-threshold b { font-size: 12px; }
.sindex-result small { font-size: 13px; }
.sindex-result p { font-size: 15px; }
.sindex-keyline span { font-size: 11px; }
.impact-core span { font-size: 12px; }
.impact-label { font-size: 16px; }

.validation-flow span { font-size: 13px; }
.public-citation { font-size: 14px; }
.receipt-top span { font-size: 12px; }
.trust-receipt > div:not(.receipt-top) > span { font-size: 12px; }
.trust-receipt small { font-size: 14px; }
.machine-rail span { font-size: 11px; }
.credit-loop span { font-size: 13px; }
.credit-loop small { font-size: 16px; }
.value-journey small { font-size: 16px; }
.society-rings span { font-size: 11px; }
.scale-metrics span { font-size: 17px; }
.scale-caption { font-size: 19px; }

.demo-divider-frame .public-lede { font-size: 23px; }
.demo-marquee span { font-size: 11px; }
.live-surface-browser b { font-size: 12px; }
.live-surface-browser span { font-size: 10px; }
.live-surface-caption span { font-size: 11px; }
.live-surface-caption small { font-size: 15px; }
.demo-browser b { font-size: 13px; }
.demo-record-head { font-size: 12px; }
.demo-muted { font-size: 15px; }
.demo-evidence span { font-size: 13px; }
.demo-boundary { font-size: 14px; }
.demo-map-copy > span { font-size: 12px; }
.improve-list span { font-size: 12px; }
.improve-list small { font-size: 13px; }
.demo-steps button span { font-size: 12px; }
.demo-steps button small { font-size: 12px; }
.demo-steps .demo-advance span { font-size: 14px; }

.pilot-flow span { font-size: 12px; }
.pilot-flow small { font-size: 15px; }
.pilot-caption { font-size: 14px; }
.about-organizations span,
.about-profile > span { font-size: 12px; }
.about-organizations small { font-size: 16px; }
.about-profile b { font-size: 10px; }
.worked-system span { font-size: 11px; }
.worked-system small { font-size: 14px; }
.worked-datasets b { font-size: 11px; }
.worked-impact b { font-size: 12px; }
.worked-rule { font-size: 15px; }
.proof-questions span { font-size: 11px; }
.proof-questions strong { font-size: 14px; }
.proof-questions small { font-size: 15px; }
.result-timeline b { font-size: 11px; }
.proof-strip span { font-size: 11px; }
.proof-strip b { font-size: 13px; }
.correction-path span { font-size: 11px; }
.correction-path strong { font-size: 21px; }
.correction-caption { font-size: 13px; }
.operating-foundation span { font-size: 10px; }
.operating-foundation strong { font-size: 21px; }
.operating-foundation small { font-size: 13px; }
.index-parallel span { font-size: 11px; }
.index-parallel small { font-size: 14px; }
.index-conclusion { font-size: 17px; }
.future-ecosystem span { font-size: 10px; }
.future-ecosystem small { font-size: 14px; }
.future-returns span { font-size: 10px; }
.future-returns strong { font-size: 12px; }
.close-lockup small { font-size: 14px; }
.close-futures span { font-size: 12px; }

@media (prefers-reduced-motion: reduce) {
  .public-slide *, .public-slide::after { animation: none !important; transition: none !important; }
  .public-frame, .story-spine { transform: none !important; }
}

@media print {
  .public-slide *, .public-slide::after { animation: none !important; transition: none !important; }
  .public-frame, .story-spine { transform: none !important; }
}
