@font-face { font-family: Archivo; src: url("/assets/fonts/archivo.5c76c24ae550.woff2") format("woff2"); font-style: normal; font-weight: 100 900; font-stretch: 62% 125%; font-display: swap; }
@font-face { font-family: Newsreader; src: url("/assets/fonts/newsreader.f738346e62f0.woff2") format("woff2"); font-style: normal; font-weight: 200 800; font-display: swap; }
:root { --paper: #f4f1e7; --ink: #26372b; --muted: #606954; --rust: #b3472e; --rule: #c8cbbd; --green-paper: #e3e5d6; --dark: #25372b; --inverse: #f3f1e4; --inverse-muted: #c2ccb5; --gutter: 64px; }
* { box-sizing: border-box; }
html { scroll-behavior: auto; }
body { margin: 0; background: var(--paper); color: var(--ink); font: 16px/1.65 Archivo, Arial, sans-serif; }
h1, h2, h3, p, figure, dl, dd { margin: 0; }
h1, h2, h3 { font-weight: 450; }
h2, h3 { text-wrap: balance; }
p { text-wrap: pretty; }
a { color: inherit; text-underline-offset: 5px; text-decoration-thickness: 1px; }
a, summary { -webkit-tap-highlight-color: transparent; }
a:focus-visible, summary:focus-visible, [tabindex="-1"]:focus-visible { outline: 3px solid var(--rust); outline-offset: 5px; }
::selection { color: var(--inverse); background: var(--rust); }
.wrap { max-width: 1440px; padding-inline: var(--gutter); margin-inline: auto; }
.arrow { width: 20px; height: 20px; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-width: 1.35; }
.skip-link { position: fixed; top: -100px; left: 16px; z-index: 30; padding: 12px 18px; background: var(--ink); color: var(--inverse); }
.skip-link:focus { top: 12px; }
.site-header { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 32px; min-height: 96px; }
.brand { display: inline-flex; align-items: center; font-size: 31px; font-weight: 690; line-height: 1; letter-spacing: -.035em; min-height: 44px; text-decoration: none; }
.brand span, .brand svg { color: var(--rust); }
.brand svg { width: 21px; height: 21px; margin-left: 12px; }
.header-note { color: var(--muted); font-size: 11px; line-height: 1.4; }
.site-nav { display: flex; align-items: center; gap: 34px; font-size: 13px; }
.site-nav a { display: inline-flex; min-height: 44px; align-items: center; gap: 7px; text-decoration: none; }
.site-nav a:hover { text-decoration: underline; }
.site-nav .nav-source { border-left: 1px solid var(--rule); padding-left: 28px; }
.mobile-menu { display: none; position: relative; font-size: 14px; }
.mobile-menu summary { display: flex; align-items: center; gap: 12px; min-height: 44px; list-style: none; cursor: pointer; }
.mobile-menu summary::-webkit-details-marker { display: none; }
.menu-lines { width: 20px; height: 8px; border-block: 1.5px solid currentColor; }
.mobile-menu nav { position: absolute; right: 0; top: 52px; z-index: 20; width: 258px; padding: 12px 20px; background: var(--paper); border: 1px solid var(--ink); }
.mobile-menu nav a { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 48px; text-decoration: none; }
.mobile-menu nav a:hover { text-decoration: underline; }
.mobile-menu nav a span { font-size: 11px; color: var(--muted); }
.eyebrow { display: flex; align-items: center; gap: 10px; font-size: 11px; line-height: 1.5; letter-spacing: .03em; color: var(--muted); }
.small-mark { width: 7px; height: 7px; background: var(--rust); flex: 0 0 auto; }
.hero { display: grid; grid-template-columns: 1fr 1fr; gap: 58px; align-items: center; padding-top: 24px; padding-bottom: 45px; }
.hero-copy { padding-block: 36px 27px; }
.hero h1 { font: 430 clamp(63px, 6.9vw, 100px)/.99 Newsreader, Georgia, serif; letter-spacing: -.04em; margin-top: 32px; white-space: nowrap; }
.hero h1 span { color: var(--rust); }
.hero-description { max-width: 38ch; margin-top: 27px; font-size: 18px; line-height: 1.65; }
.hero-actions { display: flex; align-items: center; flex-wrap: wrap; column-gap: 27px; row-gap: 12px; margin-top: 28px; }
.button { display: inline-flex; align-items: center; justify-content: space-between; gap: 28px; min-height: 50px; padding: 11px 18px 11px 21px; font-size: 13px; background: var(--ink); color: var(--inverse); text-decoration: none; }
.button:hover { background: var(--rust); }
.text-link { display: inline-flex; align-items: center; gap: 9px; min-height: 44px; font-size: 13px; text-decoration: none; }
.text-link:hover { text-decoration: underline; }
.hero-footnote { display: flex; gap: 20px; align-items: start; margin-top: 52px; font-size: 11px; line-height: 1.6; color: var(--muted); }
.footnote-index { color: var(--rust); letter-spacing: .08em; padding-top: 1px; }
.hero-footnote strong { color: var(--ink); font-weight: 500; }
.hero-study { background: var(--green-paper); width: 100%; }
.figure-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 23px 8px; font-size: 11px; line-height: 1.4; }
.plate-number { font: 400 33px/.95 Newsreader, Georgia, serif; }
.hero-study img, .signal-study img, .vision-study img { display: block; width: 100%; height: auto; }
.hero-study img { margin-top: 0; }
.hero-study figcaption { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin: -19px 23px 0; padding-block: 10px 14px; border-top: 1px solid #b8c0a9; font-size: 10px; position: relative; background: var(--green-paper); }
.hero-study figcaption a { display: inline-flex; align-items: center; gap: 7px; min-height: 40px; text-decoration: none; font-size: 11px; }
.hero-study figcaption a:hover { text-decoration: underline; }
.research-index { display: grid; grid-template-columns: repeat(4, 1fr); padding-block: 0; }
.research-index a { border-top: 1px solid var(--ink); border-bottom: 1px solid var(--rule); display: flex; gap: 17px; align-items: start; padding: 24px 23px 23px 0; text-decoration: none; }
.research-index a + a { padding-left: 23px; position: relative; }
.research-index a + a::before { content: ""; position: absolute; top: 25px; bottom: 25px; width: 1px; background: var(--rule); left: 0; }
.research-index a:hover strong { color: var(--rust); }
.index-number { font-size: 10px; color: var(--rust); padding-top: 6px; }
.research-index strong { display: block; font: 420 28px/1.1 Newsreader, Georgia, serif; }
.research-index small { display: block; font-size: 10px; color: var(--muted); margin-top: 10px; }
.research-index .arrow { margin-left: auto; margin-top: 5px; width: 17px; height: 17px; }
.thread { display: grid; grid-template-columns: 1fr 1fr; gap: 58px; padding-top: 73px; padding-bottom: 72px; }
.thread h2 { font: 420 57px/1.05 Newsreader, Georgia, serif; letter-spacing: -.025em; margin-top: 18px; }
.thread-copy { padding-top: 7px; max-width: 50ch; }
.thread-copy p:first-child { font-size: 21px; line-height: 1.5; letter-spacing: -.015em; max-width: 39ch; }
.thread-copy p + p { font-size: 14px; color: var(--muted); margin-top: 19px; line-height: 1.75; }
.section-label { display: flex; align-items: baseline; justify-content: space-between; gap: 20px; padding-bottom: 24px; }
.section-label h2 { font-size: 13px; font-weight: 520; }
.section-label > span { font-size: 11px; color: var(--muted); }
.aegis-feature { display: grid; grid-template-columns: 1fr 1fr; gap: 74px; align-items: start; padding-top: 20px; padding-bottom: 65px; }
.aegis-feature .case-copy > h2 { font-size: 43px; }
.runtime-status { color: var(--muted); font-size: 12px; line-height: 1.6; margin-top: 20px; }
.runtime-study { background: #e9e7da; padding: 23px; }
.architecture-study .figure-heading { padding: 0 0 16px; color: var(--muted); }
.architecture-layers { display: grid; gap: 7px; list-style: none; padding: 0; margin: 0; }
.architecture-layers li { display: flex; gap: 21px; align-items: center; border: 1px solid #b0b6a0; padding: 12px 18px; background: var(--paper); }
.layer-number { font-size: 10px; min-width: 16px; }
.architecture-layers strong { display: block; font-size: 24px; line-height: 1.2; font-weight: 500; letter-spacing: -.015em; }
.architecture-layers div > span { display: block; font-size: 11px; margin-top: 3px; }
.architecture-layers .authority-layer { background: var(--rust); color: var(--inverse); border-color: var(--rust); }
.architecture-study figcaption { font-size: 11px; color: var(--muted); line-height: 1.6; margin-top: 15px; }
.api-example { border-top: 1px solid #b0b6a0; margin-top: 21px; }
.api-example summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 47px; font-size: 11px; cursor: pointer; list-style: none; }
.api-example summary::-webkit-details-marker { display: none; }
.api-example summary > span { font-size: 20px; font-weight: 300; }
.api-example[open] summary > span { transform: rotate(45deg); }
.api-example pre { font: 12px/1.85 ui-monospace, "Cascadia Code", Consolas, monospace; white-space: pre-wrap; overflow-wrap: anywhere; margin: 11px 0 20px; }
.api-example code { font: inherit; }
.api-example p { font-size: 12px; line-height: 1.6; }
.api-example p > span { font-size: 10px; color: var(--muted); }
.smartcane { background: var(--dark); color: var(--inverse); }
.smartcane a:focus-visible, .smartcane summary:focus-visible, .smartcane:focus-visible { outline-color: #e3ac86; }
.case-inner { display: grid; grid-template-columns: 1fr 1fr; gap: 74px; padding-top: 62px; padding-bottom: 60px; }
.case-meta { display: flex; flex-wrap: wrap; align-items: baseline; column-gap: 20px; row-gap: 8px; }
.status { display: inline-flex; align-items: center; gap: 7px; font-size: 10px; line-height: 1.5; color: var(--muted); }
.status > span { width: 5px; height: 5px; border-radius: 50%; background: currentColor; }
.smartcane .eyebrow, .smartcane .status { color: var(--inverse-muted); }
.case-copy > h2 { font-size: 48px; font-weight: 530; line-height: 1.1; letter-spacing: -.04em; margin-top: 24px; }
.case-copy > h3 { font: 400 39px/1.08 Newsreader, Georgia, serif; letter-spacing: -.025em; margin-top: 19px; }
.case-description { font-size: 17px; line-height: 1.7; margin-top: 24px; max-width: 46ch; }
.case-secondary { font-size: 14px; line-height: 1.75; margin-top: 17px; color: var(--muted); max-width: 49ch; }
.smartcane .case-secondary { color: var(--inverse-muted); }
.project-details { margin-top: 17px; border-block: 1px solid #65715e; font-size: 13px; }
.project-details summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 49px; cursor: pointer; list-style: none; }
.project-details summary::-webkit-details-marker { display: none; }
.project-details summary span { font-size: 20px; font-weight: 300; }
.project-details[open] summary span { transform: rotate(45deg); }
.project-details > div { color: var(--inverse-muted); padding: 4px 0 20px; font-size: 13px; line-height: 1.7; }
.project-details div p + p { margin-top: 12px; }
.research-question { border-left: 2px solid var(--rust); padding-left: 19px; margin-top: 28px; max-width: 48ch; }
.research-question > p:last-child { margin-top: 9px; font-size: 15px; line-height: 1.65; }
.smartcane .research-question { border-color: #d99771; }
.smartcane .research-question .eyebrow { color: #e3ac86; }
.signal-study { align-self: center; }
.signal-study .figure-heading { padding: 0 0 12px; border-bottom: 1px solid #65715e; color: var(--inverse-muted); }
.study-corner { width: 19px; height: 19px; stroke: currentColor; fill: none; stroke-width: 1; }
.signal-study figcaption { font: 400 28px/1.3 Newsreader, Georgia, serif; border-top: 1px solid #65715e; padding-top: 21px; }
.signal-study figcaption > span { display: block; font: 11px/1.65 Archivo, Arial, sans-serif; color: var(--inverse-muted); margin-top: 7px; }
.prototype-facts { display: grid; grid-template-columns: 1fr 1fr 1.2fr; gap: 16px; margin-top: 30px; }
.prototype-facts dt { font-size: 10px; color: var(--inverse-muted); }
.prototype-facts dd { font-size: 12px; margin-top: 7px; }
.vision { display: grid; grid-template-columns: 1fr 1fr; gap: 74px; padding-top: 78px; padding-bottom: 78px; align-items: center; }
.vision-study { background: #e9e7dc; }
.vision-study .figure-heading { color: var(--muted); }
.vision-study img { margin-top: 0; }
.vision-study figcaption { display: flex; justify-content: space-between; gap: 17px; background: #e9e7dc; font-size: 10px; line-height: 1.6; border-top: 1px solid var(--rule); margin: -23px 23px 0; padding-top: 17px; padding-bottom: 19px; position: relative; color: var(--muted); }
.case-links { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 20px; margin-top: 20px; }
.credit { font-size: 10px; color: var(--muted); }
.systems-band { background: #ece8da; }
.systems { display: grid; grid-template-columns: 1fr 1fr; gap: 74px; padding-top: 49px; padding-bottom: 50px; }
.system-case { min-width: 0; }
.practice-copy { border-left: 1px solid #c5c7b5; padding-left: 52px; padding-top: 33px; }
.practice-copy h2 { font: 400 58px/1.07 Newsreader, Georgia, serif; letter-spacing: -.025em; margin-top: 25px; }
.practice-copy > p:nth-of-type(2) { font-size: 21px; line-height: 1.5; margin-top: 31px; max-width: 34ch; }
.practice-copy > p:nth-of-type(3) { font-size: 14px; line-height: 1.75; margin-top: 20px; color: var(--muted); max-width: 44ch; }
.practice-copy .text-link { margin-top: 21px; }
.system-case h2 { font-size: 27px; font-weight: 520; line-height: 1.13; letter-spacing: -.025em; }
.system-case h3 { font: 400 37px/1.08 Newsreader, Georgia, serif; letter-spacing: -.025em; margin-top: 17px; }
.system-case > p { max-width: 49ch; font-size: 14px; line-height: 1.75; margin-top: 23px; }
.system-case .system-question { font-size: 13px; line-height: 1.7; color: var(--muted); margin-top: 19px; }
.system-question strong { color: var(--ink); font-weight: 520; display: block; margin-bottom: 5px; font-size: 11px; }
.system-case .text-link { margin-top: 21px; }
.system-graphic { position: relative; height: 129px; margin: 20px 0 26px; max-width: 360px; }
.evidence-sheet { position: absolute; width: 112px; height: 108px; border: 1px solid #859076; top: 15px; }
.sheet-back { left: 112px; background: #dadfc9; transform: rotate(12deg); }
.sheet-front { left: 77px; background: #f1efdf; padding: 18px; }
.evidence-sheet i { display: block; width: 77px; height: 1px; background: #a1aa91; margin: 9px 0; }
.evidence-sheet i:last-child { width: 51px; }
.evidence-point { position: absolute; left: 218px; top: 65px; background: var(--rust); width: 13px; height: 13px; }
.direction { display: grid; grid-template-columns: 1fr 1fr; gap: 74px; padding-top: 83px; padding-bottom: 82px; }
.direction h2 { font: 400 61px/1.04 Newsreader, Georgia, serif; letter-spacing: -.025em; margin-top: 21px; }
.direction-heading > p:last-child { font-size: 16px; line-height: 1.6; color: var(--muted); margin-top: 26px; }
.research-agenda { padding-top: 6px; }
.agenda-label { font-size: 11px; color: var(--rust); padding-bottom: 17px; }
.agenda-row { display: flex; gap: 23px; padding: 23px 0 25px; border-top: 1px solid var(--rule); }
.agenda-row > span { font-size: 10px; color: var(--rust); margin-top: 5px; }
.agenda-row h3 { font-size: 18px; font-weight: 500; line-height: 1.45; }
.agenda-row p { font-size: 13px; line-height: 1.75; color: var(--muted); margin-top: 9px; max-width: 43ch; }
.closing { background: var(--rust); color: var(--inverse); }
.closing-inner { position: relative; padding-top: 55px; padding-bottom: 48px; padding-right: calc(var(--gutter) + 180px); }
.closing .eyebrow { color: var(--inverse); }
.closing h2 { font: 400 64px/1.04 Newsreader, Georgia, serif; letter-spacing: -.025em; margin-top: 25px; }
.closing .text-link { margin-top: 23px; }
.closing a:focus-visible { outline-color: var(--inverse); }
.closing-symbol { position: absolute; right: var(--gutter); bottom: 57px; width: 140px; height: 140px; }
.site-footer { display: grid; grid-template-columns: 1fr 1fr; gap: 25px; padding-top: 34px; padding-bottom: 25px; }
.footer-brand { font-size: 27px; font-weight: 630; letter-spacing: -.03em; min-height: 44px; display: inline-flex; align-items: center; text-decoration: none; }
.site-footer p { font-size: 11px; color: var(--muted); }
.site-footer nav { display: grid; grid-template-columns: 1fr 1fr; column-gap: 25px; font-size: 11px; align-self: start; }
.site-footer nav a { min-height: 39px; display: inline-flex; align-items: center; text-decoration: none; }
.site-footer nav a:hover, .back-to-top:hover { text-decoration: underline; }
.site-footer .footer-note { font-size: 10px; padding-top: 4px; }
.back-to-top { font-size: 10px; min-height: 40px; justify-self: end; text-decoration: none; display: inline-flex; align-items: center; }
@media (min-width: 1441px) { .hero h1 { font-size: 100px; } }
@media (max-width: 1199px) {
  :root { --gutter: 40px; }
  .hero { gap: 38px; }
  .hero h1 { font-size: 6.8vw; }
  .hero-description { font-size: 16px; }
  .hero-actions { column-gap: 20px; }
  .hero-footnote { margin-top: 33px; }
  .hero-study figcaption { flex-wrap: wrap; gap: 0 12px; }
  .research-index a { gap: 11px; padding-right: 16px; }
  .research-index a + a { padding-left: 16px; }
  .research-index strong { font-size: 25px; }
  .research-index small { font-size: 10px; }
  .thread, .aegis-feature, .case-inner, .vision, .systems, .direction { gap: 48px; }
  .case-copy > h2 { font-size: 41px; }
  .case-copy > h3 { font-size: 35px; }
  .case-description { font-size: 16px; }
  .practice-copy { padding-left: 36px; }
  .practice-copy h2 { font-size: 51px; }
  .aegis-feature .case-copy > h2 { font-size: 37px; }
  .system-case h3 { font-size: 33px; }
  .direction h2 { font-size: 52px; }
  .closing h2 { font-size: 56px; }
}
@media (max-width: 900px) {
  .header-note { display: none; }
  .site-header { grid-template-columns: 1fr auto; }
  .hero { gap: 28px; align-items: start; }
  .hero-copy { padding-top: 20px; }
  .hero h1 { margin-top: 25px; font-size: 6.7vw; }
  .hero-description { font-size: 15px; margin-top: 22px; }
  .hero-actions { margin-top: 21px; row-gap: 4px; }
  .hero-footnote { margin-top: 24px; }
  .figure-heading { padding: 16px 18px 8px; font-size: 10px; }
  .plate-number { font-size: 27px; }
  .hero-study figcaption { margin-inline: 18px; font-size: 10px; }
  .hero-study figcaption a { font-size: 10px; }
  .research-index { grid-template-columns: 1fr 1fr; }
  .research-index a { padding-block: 19px; }
  .research-index a:nth-child(3) { padding-left: 0; border-top: 0; }
  .research-index a:nth-child(3)::before { display: none; }
  .research-index a:nth-child(4) { border-top: 0; }
  .research-index strong { font-size: 27px; }
  .research-index small { font-size: 10px; }
  .thread { gap: 35px; padding-block: 52px; }
  .thread h2 { font-size: 46px; }
  .thread-copy p:first-child { font-size: 19px; }
  .aegis-feature, .case-inner, .vision, .direction { gap: 33px; }
  .case-copy > h2 { font-size: 34px; }
  .case-copy > h3 { font-size: 31px; }
  .case-meta { column-gap: 15px; }
  .case-description { font-size: 15px; }
  .case-secondary { font-size: 13px; }
  .research-question > p:last-child { font-size: 14px; }
  .prototype-facts { grid-template-columns: 1fr 1fr; row-gap: 15px; }
  .prototype-facts > div:last-child { grid-column: 1 / -1; }
  .vision { padding-block: 58px; }
  .vision-study figcaption { flex-direction: column; gap: 4px; margin-inline: 18px; }
  .systems { gap: 32px; }
  .practice-copy { padding-left: 26px; }
  .practice-copy h2 { font-size: 45px; }
  .practice-copy > p:nth-of-type(2) { font-size: 19px; }
  .aegis-feature .case-copy > h2 { font-size: 32px; }
  .runtime-study { padding: 20px; }
  .system-case h2 { font-size: 25px; }
  .system-case h3 { font-size: 30px; }
  .system-graphic { transform-origin: left center; transform: scale(.8); margin-top: 13px; margin-bottom: 19px; }
  .direction { padding-block: 60px; }
  .direction h2 { font-size: 45px; }
  .agenda-row { gap: 17px; }
  .agenda-row h3 { font-size: 17px; }
  .closing-inner { padding-right: calc(var(--gutter) + 110px); }
  .closing h2 { font-size: 45px; }
  .closing-symbol { width: 88px; height: 88px; }
}
@media (max-width: 700px) {
  :root { --gutter: 24px; }
  .site-header { min-height: 78px; }
  .brand { font-size: 27px; }
  .brand svg { width: 18px; height: 18px; margin-left: 10px; }
  .site-nav { display: none; }
  .mobile-menu { display: block; }
  .hero { grid-template-columns: 1fr; gap: 32px; padding-top: 13px; padding-bottom: 33px; }
  .hero-copy { padding-block: 13px 0; }
  .hero .eyebrow { font-size: 10px; }
  .hero h1 { font-size: clamp(47px, 13.8vw, 85px); line-height: 1; margin-top: 23px; }
  .hero-description { font-size: 16px; line-height: 1.65; margin-top: 23px; max-width: 39ch; }
  .hero-actions { margin-top: 23px; gap: 10px 23px; }
  .hero-footnote { display: none; }
  .hero-study { max-width: 540px; justify-self: center; }
  .figure-heading { padding: 15px 20px 8px; font-size: 10px; }
  .plate-number { font-size: 30px; }
  .hero-study figcaption { margin-inline: 20px; padding-block: 7px 11px; font-size: 10px; }
  .hero-study figcaption a { font-size: 10px; }
  .research-index a { padding: 19px 14px 20px 0; gap: 10px; }
  .research-index a + a { padding-left: 15px; }
  .research-index a:nth-child(3) { padding-left: 0; }
  .research-index strong { font-size: 25px; }
  .research-index small { font-size: 10px; margin-top: 8px; }
  .research-index .arrow { display: none; }
  .research-index a + a::before { top: 22px; bottom: 22px; }
  .thread { grid-template-columns: 1fr; gap: 25px; padding-block: 43px 46px; }
  .thread h2 { font-size: 44px; margin-top: 16px; }
  .thread-copy { padding-top: 0; }
  .thread-copy p:first-child { font-size: 21px; max-width: 34ch; }
  .thread-copy p + p { font-size: 14px; margin-top: 17px; }
  .section-label { padding-bottom: 20px; gap: 12px; }
  .section-label > span { font-size: 10px; }
  .case-inner { grid-template-columns: 1fr; gap: 35px; padding-block: 35px 38px; }
  .aegis-feature { grid-template-columns: 1fr; gap: 28px; padding-top: 9px; padding-bottom: 36px; }
  .aegis-feature .case-copy > h2 { font-size: 36px; }
  .case-meta { gap: 8px 19px; }
  .case-copy > h2 { font-size: 38px; margin-top: 22px; }
  .case-copy > h3 { font-size: 36px; margin-top: 16px; }
  .case-description { font-size: 16px; margin-top: 21px; }
  .case-secondary { font-size: 14px; margin-top: 15px; }
  .research-question { margin-top: 23px; padding-left: 16px; }
  .research-question > p:last-child { font-size: 14px; }
  .signal-study .figure-heading { padding-inline: 0; font-size: 10px; }
  .signal-study figcaption { font-size: 27px; padding-top: 17px; }
  .signal-study figcaption > span { font-size: 10px; }
  .prototype-facts { grid-template-columns: 1fr 1fr 1.2fr; gap: 13px; margin-top: 24px; }
  .prototype-facts > div:last-child { grid-column: auto; }
  .prototype-facts dd { font-size: 11px; }
  .vision { grid-template-columns: 1fr; gap: 31px; padding-block: 39px 42px; }
  .vision > .case-copy { grid-row: 1; }
  .vision-study { max-width: 540px; justify-self: center; width: 100%; }
  .vision-study figcaption { margin-inline: 20px; gap: 4px; padding-block: 14px 17px; }
  .case-links { gap: 0 20px; margin-top: 18px; }
  .credit { font-size: 10px; }
  .systems { grid-template-columns: 1fr; gap: 33px; padding-block: 35px 37px; }
  .practice-copy { border-left: 0; border-top: 1px solid #c5c7b5; padding-left: 0; padding-top: 33px; }
  .practice-copy h2 { font-size: 46px; margin-top: 19px; }
  .practice-copy > p:nth-of-type(2) { margin-top: 24px; font-size: 21px; }
  .system-case h2 { font-size: 28px; }
  .system-case h3 { font-size: 35px; margin-top: 16px; }
  .system-case > p { font-size: 14px; margin-top: 20px; }
  .system-case .system-question { margin-top: 16px; font-size: 13px; }
  .system-case .text-link { margin-top: 17px; }
  .system-graphic { transform: scale(.85); height: 114px; margin-block: 17px 16px; }
  .direction { grid-template-columns: 1fr; gap: 32px; padding-block: 42px 46px; }
  .direction h2 { font-size: 46px; margin-top: 18px; }
  .direction-heading > p:last-child { font-size: 15px; margin-top: 22px; }
  .research-agenda { padding-top: 0; }
  .agenda-label { padding-bottom: 15px; }
  .agenda-row { padding-block: 20px 21px; gap: 17px; }
  .agenda-row h3 { font-size: 18px; }
  .agenda-row p { font-size: 13px; }
  .closing-inner { padding-top: 34px; padding-bottom: 34px; padding-right: var(--gutter); }
  .closing h2 { font-size: 42px; margin-top: 22px; }
  .closing-symbol { position: static; width: 44px; height: 44px; display: block; margin-top: 26px; }
  .closing .text-link { margin-top: 19px; }
  .site-footer { grid-template-columns: 1fr; gap: 23px; padding-block: 25px 21px; }
  .site-footer nav { column-gap: 15px; font-size: 10px; }
  .site-footer .footer-note { padding-top: 0; max-width: 43ch; }
  .back-to-top { justify-self: start; margin-top: -12px; }
}
@media (max-width: 359px) {
  :root { --gutter: 20px; }
  .hero h1 { font-size: 13.5vw; }
  .hero-description { font-size: 15px; }
  .hero-actions { gap: 3px; }
  .research-index strong { font-size: 22px; }
  .research-index a { gap: 8px; }
  .research-index a + a { padding-left: 13px; }
  .research-index a:nth-child(3) { padding-left: 0; }
  .research-index small { font-size: 10px; }
  .thread h2 { font-size: 40px; }
  .section-label > span { max-width: 16ch; text-align: right; }
  .case-copy > h2 { font-size: 34px; }
  .aegis-feature .case-copy > h2 { font-size: 33px; }
  .case-copy > h3 { font-size: 33px; }
  .system-case h3 { font-size: 32px; }
  .system-graphic { transform: scale(.72); }
  .direction h2 { font-size: 41px; }
  .closing h2 { font-size: 37px; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }

.site-nav { gap: 27px; font-size: 14px; }
.site-nav a[aria-current="page"], .mobile-menu a[aria-current="page"] { text-decoration: underline; text-decoration-color: var(--rust); text-underline-offset: 8px; }
.site-footer nav { font-size: 12px; }
.page-intro { padding-top: 53px; padding-bottom: 57px; border-bottom: 1px solid var(--rule); }
.page-intro h1 { max-width: 18ch; font: 430 clamp(52px, 6.3vw, 90px)/1.03 Newsreader, Georgia, serif; letter-spacing: -.035em; margin-top: 25px; }
.page-intro h1 em { font-style: normal; color: var(--rust); }
.page-intro .lead { max-width: 51ch; font-size: 21px; line-height: 1.6; margin-top: 28px; }
.page-intro .intro-note { max-width: 65ch; font-size: 14px; line-height: 1.75; color: var(--muted); margin-top: 19px; }
.page-intro .hero-actions { margin-top: 28px; }
.page-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 74px; padding-block: 64px; }
.page-grid > * { min-width: 0; }
.page-grid h2, .article-heading h2 { font: 400 49px/1.08 Newsreader, Georgia, serif; letter-spacing: -.025em; margin-top: 18px; }
.page-grid .prose { max-width: 52ch; }
.prose > p { font-size: 16px; line-height: 1.8; }
.prose > p + p { margin-top: 20px; }
.prose > .text-link { margin-top: 23px; }
.page-grid .runtime-study { align-self: start; }
.page-grid .api-example code { font-size: 12px; }
.article-heading { padding-block: 56px 26px; }
.article-heading > p:last-child { max-width: 60ch; font-size: 16px; margin-top: 22px; color: var(--muted); }
.status-matrix { padding-bottom: 62px; }
.status-matrix > div { display: grid; grid-template-columns: 1fr 1fr 1.5fr; gap: 28px; border-top: 1px solid var(--rule); padding-block: 22px; }
.status-matrix dt { font-size: 16px; font-weight: 530; }
.status-matrix dd { font-size: 14px; line-height: 1.7; }
.status-matrix dd:last-child { color: var(--muted); }
.document-band { background: var(--green-paper); }
.principle-index { list-style: none; padding: 0; margin: 0; }
.principle-index li { display: grid; grid-template-columns: 40px 1fr; gap: 14px; border-top: 1px solid var(--rule); padding-block: 23px; }
.principle-index li > span { color: var(--rust); font-size: 12px; padding-top: 5px; }
.principle-index h3 { font-size: 21px; line-height: 1.4; }
.principle-index p { font-size: 14px; color: var(--muted); margin-top: 10px; }
.connections { background: var(--dark); color: var(--inverse); }
.connections .eyebrow, .connections p { color: var(--inverse-muted); }
.connections h2 { margin-bottom: 23px; }
.connections .text-link { color: var(--inverse); }
.connections a:focus-visible { outline-color: var(--inverse); }
.connections .principle-index li { border-color: #65715e; }
.connections .principle-index li > span { color: #e3ac86; }
.contact-options { list-style: none; padding: 0; margin: 0; }
.contact-options > li { border-top: 1px solid var(--rule); padding-block: 25px; }
.contact-options h2 { font: 500 23px/1.3 Archivo, Arial, sans-serif; margin-top: 0; }
.contact-options p { font-size: 14px; line-height: 1.8; max-width: 48ch; color: var(--muted); margin-top: 12px; }
.contact-options .text-link { margin-top: 14px; }
.contact-note { border: 1px solid var(--rule); padding: 29px; align-self: start; }
.contact-note h2 { font-size: 36px; }
.contact-note p { font-size: 14px; margin-top: 20px; color: var(--muted); }
.error-number { font-size: 14px; color: var(--rust); letter-spacing: .16em; }
.error-intro { padding-bottom: 85px; }
@media (max-width: 1199px) { .page-grid { gap: 48px; } .page-grid h2, .article-heading h2 { font-size: 43px; } }
@media (max-width: 900px) { .site-nav { gap: 24px; } .page-grid { gap: 33px; } .page-intro h1 { font-size: 64px; } .page-intro .lead { font-size: 19px; } }
@media (max-width: 700px) {
  .page-intro { padding-top: 30px; padding-bottom: 37px; }
  .page-intro h1 { font-size: clamp(43px, 12vw, 65px); margin-top: 21px; }
  .page-intro .lead { font-size: 18px; margin-top: 24px; }
  .page-intro .intro-note { font-size: 13px; }
  .page-grid { grid-template-columns: 1fr; gap: 31px; padding-block: 39px; }
  .page-grid h2, .article-heading h2 { font-size: 40px; }
  .prose > p { font-size: 15px; }
  .article-heading { padding-top: 38px; }
  .status-matrix { padding-bottom: 35px; }
  .status-matrix > div { grid-template-columns: 1fr; gap: 9px; padding-block: 21px; }
  .status-matrix dt { font-size: 18px; }
  .contact-note { padding: 24px; }
  .contact-options > li { padding-block: 24px; }
  .contact-options h2 { font-size: 23px; }
  .site-footer nav { font-size: 11px; }
  .error-intro { padding-bottom: 50px; }
}
@media (forced-colors: active) {
  a:focus-visible, summary:focus-visible, [tabindex="-1"]:focus-visible { outline-color: Highlight; }
  .button, .status, .mobile-menu nav, .contact-note { border: 1px solid CanvasText; }
  .small-mark, .menu-lines, .evidence-point { background: CanvasText; }
  .mobile-menu nav { background: Canvas; }
}
