html { zoom: .80; scroll-behavior: smooth; }
main { margin-block: 0 .85rem; padding: 0; }

.editorial { --article-anchor-offset: 100px; --reading-paper: #faf7f0; --art-bleed: 0px; position: relative; isolation: isolate; max-width: 900px; margin: 0 auto; padding: .85rem 0 0; background: var(--reading-paper); }

.memo-head { display: block; border: 0; padding: 0; margin: 0; }

.memo-label { position: relative; z-index: 3; display: block; margin: 0 0 -8px; font: 400 11px/1 var(--serif); color: #999; letter-spacing: 2.5px; text-transform: uppercase; }

.memo-label::before, .memo-label::after { display: none; }

.title-mark { display: none; color: #5a3545; }

.ascii-logo-small { display: block; width: 100%; height: auto; overflow: visible; }
.ascii-logo-small text { fill: currentColor; font: 400 10px "Courier New", monospace; }

.title-copy { min-width: 0; display: grid; gap: 3px; }
.memo-head h2 {
  margin: 0;
  font-size: 1.6rem;
  font-weight: normal;
  line-height: 1.25;
  color: #333;
}

.memo-sub { margin: 0; font: 400 11px/1.3 var(--serif); color: #999; letter-spacing: 1px; text-transform: uppercase; }

.draft-marker { display: block; margin: 0 0 8px; color: #777; font: 400 12.5px/1.4 var(--serif); }

.article-masthead { position: relative; isolation: isolate; width: calc(100% + var(--art-bleed) + var(--art-bleed)); margin: 0 calc(-1 * var(--art-bleed)); overflow: hidden; container-type: inline-size; }

.masthead-copy { position: relative; z-index: 2; padding: 16px 0; background: var(--reading-paper); }

.masthead-copy::before { display: none; }

.ascii-hero { position: relative; isolation: isolate; height: 260px; margin: 0; overflow: hidden; background: #f3eee6; }

.ascii-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 3;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgb(90 53 69 / 3%), transparent 18%, transparent 82%, rgb(90 53 69 / 3%)),
    repeating-linear-gradient(0deg, rgb(90 53 69 / 2%) 0 1px, transparent 1px 3px);
}

.ascii-scene {
  position: absolute;
  inset: 0 auto auto 0;
  display: block;
  visibility: hidden;
  width: max-content;
  margin: 0;
  white-space: pre;
  letter-spacing: 0;
  font-variant-ligatures: none;
  font-family: "Courier New", monospace;
  font-size: 10px;
  font-weight: 400;
  line-height: 10px;
  transform: scale(var(--ascii-scale-x, .625), var(--ascii-scale-y, .44117647));
  transform-origin: top left;
}

.ascii-hero.is-fitted .ascii-scene { visibility: visible; }

.ascii-base {
  z-index: 0;
  color: #8c6f79;
  opacity: .09;
}

.ascii-focus {
  z-index: 1;
  color: #4b2738;
  font-weight: 700;
  opacity: 1;
  -webkit-mask-image: linear-gradient(to bottom, rgb(0 0 0 / 90%) 0%, #000 12%, #000 22%, #000 100%);
  mask-image: linear-gradient(to bottom, rgb(0 0 0 / 90%) 0%, #000 12%, #000 22%, #000 100%);
}


.editorial p { margin: 8px 0; font: 400 14.5px/1.55 var(--serif); color: #2a2a2a; text-wrap: pretty; }

 .quote-line { position: relative; z-index: 3; overflow: hidden; margin: 0; border-top: 1px solid rgb(75 39 56 / 18%); background: #faf7f0; }
.quote-line::before,
.quote-line::after { display: none; }
.quote-line p {
  position: relative;
  display: block;
  min-height: 0;
  margin: 0;
  padding: 8px 18px 9px;
  color: #5f3a49;
  text-align: center;
  font-family: var(--serif, "Palatino Linotype", "Book Antiqua", Palatino, serif);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.35;
  letter-spacing: .005em;
}
.quote-line p span {
  position: static;
  opacity: 1;
}
.quote-line p span + span::before { display: none; }
.quote-line p span + span { margin-left: .28em; }
.quote-line p span:last-child { color: #4b2738; font-weight: 600; }
@media (prefers-reduced-motion: reduce) {
  .quote-line::after { display: none; }
}
.chart-pair { display: grid; width: calc(100% + var(--art-bleed) + var(--art-bleed)); max-width: none; margin: 28px calc(-1 * var(--art-bleed)) 0; grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); overflow: hidden; background: #f5f0e8; border-bottom: 1px solid rgb(90 53 69 / 22%); }
.metric-panel {
  position: relative;
  min-width: 0;
  margin: 0;
  padding: 0;
  overflow: hidden;
}
.metric-panel + .metric-panel { border-left: 1px solid rgb(90 53 69 / 28%); }
.metric-panel figcaption {
  position: relative;
  margin: 0;
  padding: 12px 18px 0;
  color: #4b2738;
  font: 400 11px/1.2 "Courier New", monospace;
  letter-spacing: 1.4px;
  text-transform: uppercase;
}
.metric-panel svg {
  display: block;
  width: 100%;
  height: 216px;
  cursor: default;
  shape-rendering: geometricPrecision;
}
.metric-dot {
  fill: #9b7883;
  opacity: .13;
  vector-effect: non-scaling-stroke;
}
.metric-dot.major { fill: #7b4b5c; opacity: .25; }
.metric-grid {
  stroke: #9b7883;
  stroke-width: .45px;
  stroke-dasharray: .75 3.25;
  opacity: .11;
  vector-effect: non-scaling-stroke;
}
.metric-grid.major { opacity: .14; }
.metric-baseline,
.goal-rule {
  stroke: #7f5966;
  stroke-width: .7px;
  opacity: .48;
  vector-effect: non-scaling-stroke;
}
.goal-rule { stroke-dasharray: 1 3; }
.loss-wash { fill: #e8dce0; opacity: .26; }
.goal-area { fill: #e5d7dc; opacity: .32; }
.metric-line {
  fill: none;
  stroke-width: 1.15px;
  stroke-linecap: square;
  stroke-linejoin: miter;
  vector-effect: non-scaling-stroke;
}
.metric-line.primary-line { stroke-width: 1.7px; }
.metric-sample {
  fill: #f5f0e8;
  stroke-width: .7px;
  opacity: .72;
  vector-effect: non-scaling-stroke;
}
.metric-sample.primary {
  fill: #4b2738;
  stroke: #f5f0e8;
  opacity: .94;
}
.failure-tail {
  fill: none;
  stroke-width: .7px;
  stroke-dasharray: 1 3;
  opacity: .28;
  vector-effect: non-scaling-stroke;
}
.series-end {
  fill: #f5f0e8;
  stroke-width: 1.25px;
  vector-effect: non-scaling-stroke;
}
.series-end.primary { fill: #4b2738; stroke: #f5f0e8; }
.metric-axis-tick {
  stroke: #7f5966;
  stroke-width: .65px;
  opacity: .58;
  vector-effect: non-scaling-stroke;
}
.metric-axis-label {
  fill: #7f5966;
  stroke: #f5f0e8;
  stroke-width: 2.5px;
  paint-order: stroke fill;
  font: 400 10px/1 "Courier New", monospace;
  letter-spacing: .45px;
}
.ascii-study-row { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); align-items: center; margin: 12px 0 0; }
.ascii-study-copy { padding: 0 0 0 32px; color: #50484a; }
.ascii-study-copy p { margin: 8px 0; }
#one-more-run-page .ascii-study-copy a,
#one-more-run-page .ascii-study-copy a:visited {
  color: #5a3545;
  text-decoration-color: currentColor;
  text-underline-offset: 0.14em;
}
#one-more-run-page .ascii-study-copy a:hover {
  color: #5a3545;
  text-decoration-color: currentColor;
  opacity: 0.65;
}
.ascii-study {
  position: relative;
  width: 100%;
  aspect-ratio: 1;
  margin: 0;
  overflow: hidden;
  background: #f5f0e8;
  border-top: 0;
  border-bottom: 1px solid rgb(75 39 56 / 24%);
}
.ascii-study::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgb(255 255 255 / 16%), transparent 30%, rgb(75 39 56 / 3%)),
    repeating-linear-gradient(0deg, rgb(75 39 56 / 2.5%) 0 1px, transparent 1px 4px);
}
.ascii-study canvas {
  display: block;
  width: 100%;
  height: 100%;
}
.article-copy { margin-top: 24px; padding: 0; }
.editorial .article-copy p { margin: 8px 0; font-size: 14.5px; line-height: 1.55; color: #2a2a2a; }
.editorial .article-copy p + p { margin-top: 8px; }
#one-more-run-page .editorial .article-copy a,
#one-more-run-page .editorial .article-copy a:visited {
  color: #5a3545;
  text-decoration-color: currentColor;
}
#one-more-run-page .editorial .article-copy a:hover {
  color: #5a3545;
  text-decoration-color: currentColor;
  opacity: 0.65;
}
.social-idea-row { display: grid; grid-template-columns: minmax(0, 3fr) minmax(16rem, 2fr); align-items: center; column-gap: 32px; row-gap: 8px; margin: 0; padding: 0; }
.social-idea-row > p { grid-column: 1; margin: 0; color: #2a2a2a; font-size: 14.5px; line-height: 1.55; }
.social-idea-row > p:first-of-type { grid-row: 1; }
.social-idea-row > p:last-of-type { grid-row: 2; }
.ascii-social-study {
  grid-column: 2;
  grid-row: 1 / span 2;
  width: min(100%, 16rem);
  place-self: center;
  border-top: 0;
  border-bottom: 0;
}

.research-thread-gallery {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  align-items: center;
  gap: 18px;
  width: min(88%, 1100px);
  margin: 26px auto 0;
}
.research-thread-gallery figure { margin: 0; }
.research-thread-primary {
  width: 96%;
  justify-self: start;
}
.research-thread-secondary {
  display: grid;
  gap: 14px;
}
.research-thread-gallery img {
  display: block;
  width: 100%;
  height: auto;
}
.internal-proof-gallery {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: center;
  gap: 10px;
  width: 100%;
  margin: 24px auto 0;
}
.internal-proof-gallery figure { margin: 0; }
.internal-proof-gallery img {
  display: block;
  width: 100%;
  height: auto;
}
.internal-proof-lead {
  width: 100%;
  justify-self: stretch;
}
.internal-proof-pair { display: contents; }
.back-section { display: flex; justify-content: center; align-items: center; margin: 32px 0 0; padding: 32px 0; border-top: 1px solid var(--rule); background: inherit; }

.back-section .collection-btn { color: var(--ink); font: 400 13px/1.4 var(--serif); letter-spacing: .15px; text-transform: none; }

/* Title and contents follow the exemplar reading column. */
.editorial h3 { margin: 0 0 8px; font: 700 1.3rem/1.3 var(--serif); letter-spacing: -.15px; color: var(--body); text-wrap: balance; }
.run-section { margin: 40px 0 0; }
.run-section .article-copy { margin-top: 0; }
.editorial :where(#overview, #funding, #following, #teams) { scroll-margin-top: 24px; }
.editorial a { text-underline-offset: 3px; }
.editorial .back-section .collection-btn:hover { color: var(--ink); opacity: .65; }
.page-toc { position: absolute; left: calc(100% + 24px); top: 0; bottom: 0; width: 184px; border-left: 1px solid var(--rule); padding-left: 24px; }
.toc-inner { position: sticky; top: calc(16px - .85rem); padding-top: calc(16px + .85rem); font: 400 14.5px/1.4 var(--serif); }
.editorial .toc-heading { margin: 0 0 8px; font-size: 14.5px; line-height: 1.4; font-weight: 700; color: var(--body); }
.toc-inner a { display: block; padding: 6px 0; color: #666; text-decoration: none; transition: color 160ms; }
.toc-inner a:hover { color: var(--ink); text-decoration: none; }
.toc-inner a[aria-current='location'] { color: var(--ink); text-decoration: underline; text-decoration-thickness: .5px; text-underline-offset: 4px; }
.editorial :is(a, button):focus-visible { outline: 2px solid #555; outline-offset: 4px; }
@media (min-height: 480px) {
  .masthead-copy { position: sticky; top: 0; }
  .editorial :where(#overview, #funding, #following, #teams) { scroll-margin-top: var(--article-anchor-offset); }
}
@media (min-width: 1153px) and (min-height: 640px) {
  .editorial { --art-bleed: 23px; }
  .editorial::before { content: ''; position: absolute; z-index: -1; inset: 0 -24px; background: var(--reading-paper); border-left: 1px solid var(--rule); pointer-events: none; }
  .masthead-copy::before { content: ''; display: block; position: absolute; z-index: -1; inset: 0 -23px; background: var(--reading-paper); pointer-events: none; }
  .title-mark { display: block; position: fixed; top: 50%; left: calc((100% - 900px) / 4 - 12px); width: 148px; height: auto; transform: translate(-50%, -50%); }
}
@media (max-width: 1152px) { .page-toc { display: none; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } .toc-inner a { transition: none; } }

@media (max-width: 768px) {
  .editorial { --art-bleed: .75rem; padding: .85rem .75rem 0; }
  .memo-label { margin-bottom: -4px; font-size: 10px; letter-spacing: 1.6px; }
  .masthead-copy { padding-block: 12px; }
  .memo-sub { font-size: 10px; letter-spacing: .8px; }
  .editorial p, .editorial .article-copy p, .social-idea-row > p { font-size: 15px; }
  .run-section { margin-top: 32px; }
  .article-masthead { height: auto; }
  .ascii-hero { height: 200px; }
  .memo-head h2 { font-size: 1.3rem; }
  .quote-line p { padding-inline: 8px; font-size: 12px; }
  .chart-pair { grid-template-columns: 1fr; }
  .metric-panel + .metric-panel {
    border-top: 1px solid rgb(90 53 69 / 20%);
    border-left: 0;
  }
  .metric-panel svg { height: 184px; }
  .ascii-study-row {
    grid-template-columns: minmax(0, 1fr);
    margin-top: 0;
  }
  .ascii-study { max-width: 320px; margin-inline: auto; }
  .ascii-study-copy { padding: 0; }
  .ascii-study-row .ascii-study { order: 2; margin-top: 24px; }
  .social-idea-row {
    display: block;
    margin-top: 12px;
  }
  .social-idea-row > p + p { margin-top: 0; }
  .ascii-social-study {
    width: min(46vw, 10.5rem);
    margin: 12px auto;
  }
  .research-thread-gallery {
    grid-template-columns: 1fr;
    width: calc(100% - 24px);
    gap: 14px;
  }
  .research-thread-primary {
    width: 84%;
    justify-self: center;
  }
  .research-thread-secondary { gap: 12px; }
  .internal-proof-gallery {
    grid-template-columns: 1fr;
    width: calc(100% - 24px);
    gap: 12px;
    margin-inline: auto;
    left: auto;
    transform: none;
  }
  .internal-proof-lead { width: 100%; }
  .internal-proof-pair {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .back-section {
    margin-top: 24px;
    padding: 24px 0;
  }
}
