:root {
  --ink: #090909;
  --paper: #f7f4ec;
  --signal: #ef3426;
  --muted-on-dark: #c9c4b9;
  --muted-on-light: #625e57;
  --line-dark: #35332f;
  --line-light: #b9b3a8;
  --measure: 68ch;
  --page: 1240px;
  --pad: clamp(24px, 5vw, 72px);
  --section-y: clamp(72px, 9vw, 136px);
  --body: clamp(18px, 1.35vw, 20px);
  --small: clamp(14px, 1.05vw, 16px);
  --h1: clamp(48px, 6.4vw, 92px);
  --h2: clamp(42px, 5.3vw, 76px);
  --h3: clamp(28px, 3.2vw, 44px);
}

* { box-sizing: border-box; }

main,
section,
article,
figure,
div { min-width: 0; }

html {
  scroll-behavior: smooth;
  background: var(--ink);
  font-size: 100%;
}

body {
  margin: 0;
  color: var(--ink);
  background: var(--paper);
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: var(--body);
  line-height: 1.55;
  text-rendering: optimizeLegibility;
}

img { display: block; max-width: 100%; }

a { color: inherit; }

p, li { max-width: var(--measure); }

h1, h2, h3, h4, p, figure { margin-top: 0; }

h1, h2, h3, h4 {
  margin-bottom: 0.55em;
  font-weight: 800;
  line-height: 0.98;
  letter-spacing: -0.045em;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}

h1 { font-size: var(--h1); }
h2 { font-size: var(--h2); }
h3 { font-size: var(--h3); }
h4 { font-size: clamp(22px, 2vw, 30px); }

:focus-visible {
  outline: 4px solid var(--signal);
  outline-offset: 5px;
}

.title-link,
.image-link {
  display: block;
  color: inherit;
  text-decoration: none;
}

.flow-token,
.keep-arrow { white-space: nowrap; }

.inline-link {
  color: inherit;
  text-decoration: none;
}

.inline-link:hover { text-decoration: underline; }

.failure-report-link {
  color: var(--signal);
  font-weight: 800;
}

.skip-link {
  position: absolute;
  z-index: 100;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(100%);
  white-space: nowrap;
  color: var(--ink);
  background: var(--paper);
  font-size: 16px;
  font-weight: 800;
}

.skip-link:focus {
  position: fixed;
  top: 10px;
  left: 10px;
  width: auto;
  height: auto;
  margin: 0;
  padding: 12px 18px;
  overflow: visible;
  clip-path: none;
}

.site-header {
  position: relative;
  z-index: 10;
  display: grid;
  grid-template-columns: minmax(210px, 1fr) auto minmax(110px, 1fr);
  align-items: center;
  gap: 24px;
  min-height: 80px;
  padding: 16px max(var(--pad), calc((100vw - var(--page)) / 2));
  border-bottom: 1px solid var(--line-dark);
  color: var(--paper);
  background: var(--ink);
}

.masthead {
  width: fit-content;
  font-size: 19px;
  font-weight: 800;
  letter-spacing: -0.02em;
  text-decoration: none;
}

.site-header nav {
  display: flex;
  justify-content: center;
  gap: clamp(18px, 2.5vw, 34px);
}

.site-header nav a,
.review-state {
  font-size: var(--small);
  font-weight: 750;
  letter-spacing: 0.04em;
  text-decoration: none;
}

.site-header nav a:hover { color: var(--signal); }

.site-header nav .nav-resume {
  color: var(--signal);
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 5px;
}

.review-state {
  justify-self: end;
  color: var(--signal);
  text-transform: uppercase;
}

.section-dark,
.section-light,
.section-red {
  padding: var(--section-y) var(--pad);
}

.section-dark { color: var(--paper); background: var(--ink); }
.section-light { color: var(--ink); background: var(--paper); }
.section-red { color: var(--ink); background: var(--signal); }

.section-dark > *,
.section-light > *,
.section-red > * {
  width: min(100%, var(--page));
  margin-right: auto;
  margin-left: auto;
}

.hero > *,
.contact > *,
.authority-strip > * {
  width: auto;
  max-width: 100%;
  margin: 0;
}

.section-dark > *,
.section-light > *,
.section-red > *,
.media-frame,
.ui-study,
.product-proof,
.product-proof-detail { max-width: 100%; }

.eyebrow,
.section-kicker,
.tag,
.status-line,
.feed-status,
.licensing-note,
.availability,
.source-note {
  font-size: var(--small);
  font-weight: 800;
  line-height: 1.35;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.eyebrow,
.section-kicker-red { color: var(--signal); }

.section-kicker { margin-bottom: 24px; }

.hero {
  display: grid;
  grid-template-columns: minmax(0, 0.52fr) minmax(420px, 0.48fr);
  gap: clamp(32px, 4vw, 64px);
  align-items: center;
  min-height: calc(100svh - 80px);
  width: 100%;
  margin: 0;
  padding-block: clamp(24px, 3vh, 32px);
  padding-inline: max(var(--pad), calc((100vw - var(--page)) / 2));
}

.hero > * { margin: 0; }

.hero-copy {
  display: grid;
  gap: clamp(12px, 1.7vh, 20px);
  max-width: none;
}

.hero-copy > * { margin: 0; }

.hero h1 {
  max-width: 14ch;
  font-size: clamp(48px, 4vw, 60px);
  line-height: 0.92;
}

.hero .lede {
  font-size: clamp(18px, 1.45vw, 21px);
  line-height: 1.4;
}

.hero-copy > p:last-child { line-height: 1.45; }

.lede,
.section-lede,
.section-statement {
  font-size: clamp(20px, 1.7vw, 24px);
  line-height: 1.5;
}

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 38px;
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 12px 20px;
  border: 2px solid var(--signal);
  font-size: 16px;
  font-weight: 800;
  line-height: 1.2;
  text-align: center;
  white-space: normal;
  text-decoration: none;
}

.button-red { color: var(--ink); background: var(--signal); }
.button-ghost { color: var(--paper); background: transparent; }
.button-outline { color: inherit; border-color: currentColor; background: transparent; }
.button:hover { transform: translateY(-2px); }

.case-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 42px;
}

.architecture-quote {
  max-width: 980px;
  margin: clamp(56px, 8vw, 96px) 0 0;
  padding: 0 0 0 clamp(24px, 4vw, 48px);
  border-left: 8px solid var(--signal);
  font-size: clamp(30px, 4vw, 54px);
  font-weight: 800;
  line-height: 1.06;
  letter-spacing: -0.04em;
}

.architecture-quote p { margin: 0; }

.governed-ai {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: clamp(72px, 9vw, 128px);
  border-top: 2px solid var(--ink);
  border-left: 2px solid var(--ink);
}

.governed-ai > div {
  min-width: 0;
  padding: clamp(28px, 4vw, 48px);
  border-right: 2px solid var(--ink);
  border-bottom: 2px solid var(--ink);
}

.governed-ai h3 { margin: 26px 0 20px; }

#flagship-case h2 {
  font-size: clamp(46px, 6vw, 88px);
  letter-spacing: -0.06em;
}

#flagship-case .hiring-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-color: var(--line-dark);
}

#flagship-case .hiring-grid > article { border-color: var(--line-dark); }

.research-architecture-grid { border-color: var(--line-dark); }
.research-architecture-grid .system-card { border-color: var(--line-dark); }
.research-architecture-grid .system-card-red { color: var(--ink); }
.research-architecture-grid .system-card-red .title-link { color: var(--ink); }

.publication-grid { margin-top: clamp(56px, 8vw, 96px); }

.media-frame {
  margin: 0;
  border: 2px solid var(--ink);
  background: var(--paper);
}

.media-frame-dark {
  border-color: var(--line-dark);
  color: var(--paper);
  background: #11110f;
}

.media-frame > div,
.hero-art > img {
  border-bottom: 2px solid currentColor;
}

.media-frame figcaption,
.hero-art figcaption {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 8px 24px;
  padding: 16px 18px;
  font-size: var(--small);
  line-height: 1.4;
}

.media-frame figcaption strong,
.hero-art figcaption { text-transform: uppercase; letter-spacing: 0.05em; }

.hero-art {
  align-self: center;
  justify-self: stretch;
  width: 100%;
  max-width: none;
}

.hero-art img {
  width: 100%;
  height: auto;
  max-height: min(54svh, 560px);
  aspect-ratio: 16 / 10;
  object-fit: cover;
  object-position: center;
}

.section-intro { margin-bottom: clamp(48px, 6vw, 84px); }

.section-intro > h2 { max-width: 16ch; }

.split-intro {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(360px, 1.05fr);
  gap: clamp(40px, 7vw, 104px);
  align-items: start;
}

.split-intro > * { min-width: 0; }

.flagship { border-top: 14px solid var(--signal); }

.flagship h2 {
  margin: 0;
  max-width: 100%;
  font-size: clamp(68px, 10vw, 144px);
  line-height: 0.78;
  letter-spacing: -0.085em;
  overflow-wrap: anywhere;
  white-space: normal;
}

#prism h2 {
  max-width: 11ch;
  font-size: clamp(56px, 6vw, 86px);
  line-height: 0.88;
  letter-spacing: -0.065em;
}

#method h2 {
  font-size: clamp(48px, 4.7vw, 68px);
  line-height: 0.94;
  letter-spacing: -0.055em;
}

.section-intro h2,
.section-intro .title-link { overflow-wrap: anywhere; }

.flagship h2 em { color: var(--signal); font-size: 0.48em; font-style: normal; letter-spacing: -0.04em; }

.flagship-is {
  margin-top: 38px;
  font-size: clamp(24px, 2.4vw, 34px);
  font-weight: 800;
}

.section-statement {
  margin-bottom: 18px;
  font-size: clamp(25px, 2.4vw, 34px);
  font-weight: 800;
  line-height: 1.25;
}

.status-line { margin-top: 28px; color: var(--signal); }
.status-line { font-size: 18px; line-height: 1.5; letter-spacing: 0.02em; text-transform: none; }

.product-proof {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 28px;
  align-items: stretch;
}

.product-proof-detail {
  display: grid;
  grid-template-columns: minmax(0, 1.7fr) minmax(280px, 0.65fr);
  gap: 28px;
}

.proof-dashboard,
.proof-phone { min-width: 0; }

.proof-image {
  display: grid;
  place-items: center;
  min-height: 520px;
  padding: clamp(20px, 3vw, 46px);
  background: #ebe7dd;
}

.proof-image:not(.proof-image-wide) img { width: 100%; height: 100%; object-fit: contain; }

.proof-image-wide {
  min-height: 0;
  padding: 0;
  overflow: visible;
  background: #fefefe;
}

.proof-image-wide img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  max-height: none;
  object-fit: contain;
  object-position: center;
}

.proof-image-phone { min-height: 520px; background: #fefefe; }
.proof-image-phone img { max-height: 670px; }

.linemap-study { min-width: 0; }

.linemap-composition {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2px;
  min-width: 0;
  background: var(--ink);
}

.linemap-device,
.linemap-logic {
  display: grid;
  min-width: 0;
  padding: clamp(24px, 3vw, 42px);
  place-items: center;
}

.linemap-device { color: inherit; background: #fcfcfc; text-decoration: none; }
.linemap-logic { background: #000000; }

.linemap-device img,
.linemap-logic img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  max-height: 640px;
  object-fit: contain;
}

.linemap-caption > span {
  display: grid;
  flex: 1 1 280px;
  gap: 6px;
}

.logic-panel {
  width: min(100%, 900px);
  margin: 52px auto 0;
}

.logic-image { background: var(--ink); }
.logic-image img { width: 100%; height: auto; }

.signal-architecture {
  display: grid;
  grid-template-columns: minmax(280px, 0.75fr) minmax(0, 1.5fr);
  gap: clamp(36px, 6vw, 84px);
  margin-top: clamp(72px, 9vw, 132px);
  padding: clamp(34px, 5vw, 70px);
  color: var(--paper);
  background: var(--ink);
}

.architecture-copy h3 { max-width: 14ch; }

.signal-steps {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  margin: 0;
  padding: 0;
  border-top: 1px solid var(--line-dark);
  border-left: 1px solid var(--line-dark);
  list-style: none;
}

.signal-steps li {
  min-width: 0;
  padding: 24px;
  border-right: 1px solid var(--line-dark);
  border-bottom: 1px solid var(--line-dark);
}

.signal-steps li > span { display: block; margin-bottom: 34px; color: var(--signal); font-size: var(--small); font-weight: 800; }
.signal-steps strong { display: block; font-size: 24px; }
.signal-steps p { margin: 8px 0 0; color: var(--muted-on-dark); }

.research-band {
  margin-top: clamp(72px, 9vw, 132px);
  padding-top: clamp(46px, 6vw, 82px);
  border-top: 2px solid var(--ink);
}

.research-band header {
  display: grid;
  grid-template-columns: 0.6fr 1.4fr;
  gap: 36px;
  align-items: baseline;
}

.research-label {
  display: flex;
  align-items: center;
  gap: 18px;
}

.research-label img {
  width: 58px;
  height: 58px;
  flex: 0 0 auto;
  object-fit: contain;
  filter: grayscale(1) brightness(0);
  mix-blend-mode: multiply;
}

.research-label .section-kicker { margin: 0; }

.research-flow {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 40px;
  border-top: 2px solid var(--ink);
  border-left: 2px solid var(--ink);
}

.research-flow article {
  position: relative;
  min-width: 0;
  padding: 28px 24px 32px;
  border-right: 2px solid var(--ink);
  border-bottom: 2px solid var(--ink);
}

.research-flow article:not(:last-child)::after {
  content: "→";
  position: absolute;
  z-index: 2;
  top: 50%;
  right: -18px;
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  color: var(--paper);
  background: var(--signal);
  font-size: 22px;
  font-weight: 800;
  transform: translateY(-50%);
}

.research-flow span { color: var(--signal); font-size: var(--small); font-weight: 800; }
.research-flow h4 { margin: 28px 0 14px; }
.research-flow p { margin: 0; }
.source-note { max-width: 92ch; margin: 28px 0 0; color: var(--muted-on-light); }

.authority-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  padding-top: 0;
  padding-bottom: 0;
  border-top: 2px solid var(--ink);
  border-bottom: 2px solid var(--ink);
}

.authority-strip article {
  min-width: 0;
  min-height: 190px;
  padding: 28px;
  border-right: 2px solid var(--ink);
}

.authority-strip article:last-child { border-right: 0; }
.authority-strip span { display: block; margin-bottom: 30px; color: var(--signal); font-size: var(--small); font-weight: 800; }
.authority-strip strong { display: block; font-size: clamp(21px, 1.8vw, 27px); line-height: 1.2; }

.hiring { border-bottom: 2px solid var(--ink); }

.text-cta {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  margin-top: 10px;
  color: var(--ink);
  font-size: 20px;
  font-weight: 800;
  text-decoration-thickness: 2px;
  text-underline-offset: 6px;
}

.hiring-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: clamp(56px, 8vw, 104px);
  border-top: 2px solid var(--ink);
  border-left: 2px solid var(--ink);
}

.hiring-grid > article {
  min-width: 0;
  padding: clamp(28px, 4vw, 48px);
  border-right: 2px solid var(--ink);
  border-bottom: 2px solid var(--ink);
}

.hiring-grid h3 { margin-bottom: 28px; }

.hiring-grid ul {
  display: grid;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.hiring-grid li { position: relative; padding-left: 24px; }
.hiring-grid li::before { content: "→"; position: absolute; left: 0; color: var(--signal); font-weight: 800; }

.hiring-proof {
  grid-column: 1 / -1;
  color: var(--paper);
  background: var(--ink);
}

.hiring-proof dl {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  margin: 38px 0 0;
  background: var(--line-dark);
}

.hiring-proof dl div { padding: 26px; background: var(--ink); }
.hiring-proof dt { color: var(--signal); font-size: clamp(34px, 4vw, 56px); font-weight: 800; line-height: 1; letter-spacing: -0.04em; }
.hiring-proof dd { margin: 14px 0 0; color: var(--muted-on-dark); font-size: var(--small); line-height: 1.45; }

.proof-pillars {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: clamp(72px, 9vw, 128px);
  border-top: 2px solid var(--ink);
  border-left: 2px solid var(--ink);
}

.proof-pillars article { min-width: 0; padding: clamp(28px, 4vw, 48px); border-right: 2px solid var(--ink); border-bottom: 2px solid var(--ink); }
.proof-pillars span { color: var(--signal); font-size: var(--small); font-weight: 800; }
.proof-pillars h3 { margin-top: 48px; }

.component-band { margin-top: clamp(72px, 9vw, 128px); padding: clamp(34px, 5vw, 68px); color: var(--paper); background: var(--ink); }

.hiring-proof,
.signal-architecture,
.component-band {
  position: relative;
  z-index: 0;
  box-shadow: 0 0 0 100vmax var(--ink);
  clip-path: inset(0 -100vmax);
}

.component-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 44px 0; border-top: 1px solid var(--line-dark); border-left: 1px solid var(--line-dark); }
.component-grid article { min-width: 0; padding: 28px; border-right: 1px solid var(--line-dark); border-bottom: 1px solid var(--line-dark); }
.component-grid h4 { margin-bottom: 20px; }
.partnership-line { margin: 0 0 32px; font-weight: 800; }

.venture-stack { display: grid; gap: clamp(72px, 9vw, 128px); }

.venture {
  display: grid;
  grid-template-columns: minmax(280px, 0.72fr) minmax(0, 1.5fr);
  gap: clamp(36px, 6vw, 80px);
  align-items: start;
}

.venture-reverse .venture-copy { order: 2; }
.venture-reverse .ui-study { order: 1; }
.venture-reverse { grid-template-columns: minmax(0, 1.5fr) minmax(280px, 0.72fr); }

.venture-copy h3 { margin-bottom: 22px; }
.tag { margin-bottom: 18px; color: var(--signal); }

.feature-list {
  display: grid;
  gap: 10px;
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
}

.feature-list li { padding-left: 24px; position: relative; }
.feature-list li::before { content: "→"; position: absolute; left: 0; color: var(--signal); }

.ui-study {
  min-width: 0;
  border: 2px solid var(--paper);
  color: var(--ink);
  background: var(--paper);
}

.ui-chrome {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 10px 24px;
  padding: 15px 18px;
  border-bottom: 2px solid var(--ink);
  font-size: var(--small);
}

.leave-content {
  display: grid;
  min-height: 480px;
  place-content: center;
  justify-items: start;
  padding: clamp(32px, 7vw, 90px);
}

.leave-content i {
  display: block;
  width: 44px;
  height: 44px;
  margin-bottom: 34px;
  border: 4px solid var(--signal);
  border-radius: 50%;
  background: radial-gradient(circle, var(--signal) 0 20%, transparent 22% 100%);
}

.leave-content h4 { max-width: 16ch; font-size: clamp(34px, 4vw, 60px); }
.ui-button { display: inline-flex; min-height: 48px; align-items: center; margin-top: 18px; padding: 10px 16px; color: var(--paper); background: var(--ink); font-size: 16px; font-weight: 800; }

.case-content { display: grid; grid-template-columns: minmax(160px, 0.35fr) minmax(0, 1fr); min-height: 520px; }
.case-nav { display: flex; flex-direction: column; gap: 12px; padding: 28px 22px; border-right: 2px solid var(--ink); font-size: var(--small); }
.case-nav strong { margin-bottom: 18px; color: var(--signal); text-transform: uppercase; }
.case-work { padding: clamp(32px, 5vw, 70px); }
.case-work h4 { max-width: 16ch; }
.evidence-row { display: grid; grid-template-columns: 42px minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 18px 0; border-top: 1px solid var(--line-light); font-size: var(--small); }
.evidence-row em { padding: 5px 8px; color: var(--paper); background: var(--ink); font-style: normal; font-weight: 800; text-transform: uppercase; }

.venture-product { grid-template-columns: 1fr; }
.venture-product .venture-copy { max-width: 760px; }
.product-sequence { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.product-sequence .media-frame > div { aspect-ratio: 1 / 1; background: #e9e5dc; }
.product-sequence img { width: 100%; height: 100%; object-fit: contain; }

.mend-venture { align-items: center; }
.mend-venture figure > div {
  aspect-ratio: 833 / 462;
  overflow: hidden;
  border-bottom: 0;
  background: #1d281a;
}

.mend-venture img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}

.systems-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 2px solid var(--ink);
  border-left: 2px solid var(--ink);
}

.system-card {
  display: flex;
  min-width: 0;
  min-height: 390px;
  flex-direction: column;
  padding: clamp(28px, 3vw, 42px);
  border-right: 2px solid var(--ink);
  border-bottom: 2px solid var(--ink);
}

.system-card h3 { margin-top: 18px; }
.system-card h3 { font-size: clamp(27px, 2.4vw, 34px); line-height: 1.05; }
.system-card > span, .book-system > div > span { margin-top: auto; padding-top: 30px; font-size: var(--small); font-weight: 800; text-transform: uppercase; }
.system-card-red { background: var(--signal); }
.system-card-red .tag { color: var(--ink); }
.system-card-dark { color: var(--paper); background: var(--ink); }
.book-system { display: grid; grid-template-columns: 1fr minmax(100px, 0.42fr); gap: 24px; }
.book-system > div { display: flex; flex-direction: column; }
.book-system img { width: 100%; max-height: 320px; object-fit: contain; align-self: end; }

.mend-system {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 26px;
  padding: 0;
}

.mend-system > div { display: flex; min-height: 330px; flex-direction: column; padding: clamp(28px, 3vw, 42px); }
.mend-system > div > span { margin-top: auto; padding-top: 30px; font-size: var(--small); font-weight: 800; text-transform: uppercase; }
.mend-system img { width: 100%; aspect-ratio: 16 / 9; border-top: 2px solid var(--ink); object-fit: cover; }

.instrument-proof,
.research-details {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
  margin-top: clamp(72px, 9vw, 118px);
}

.instrument-proof figure > div,
.research-details figure > div { padding: 20px; background: #e9e5dc; }
.instrument-proof img,
.research-details img { width: 100%; height: auto; object-fit: contain; }

.authored-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: clamp(72px, 9vw, 118px) auto 48px;
  border-top: 1px solid var(--line-dark);
  border-left: 1px solid var(--line-dark);
}

.authored-grid article { min-width: 0; padding: clamp(28px, 4vw, 48px); border-right: 1px solid var(--line-dark); border-bottom: 1px solid var(--line-dark); }
.research > .button { display: flex; width: fit-content; margin-right: auto; margin-left: auto; }
.book-proof { display: grid; grid-template-columns: minmax(0, 1fr) minmax(120px, 0.4fr); gap: 24px; }
.book-proof img { width: 100%; max-height: 380px; object-fit: contain; }

.record-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0 auto;
  padding: 0;
  border-top: 2px solid var(--ink);
  border-left: 2px solid var(--ink);
  list-style: none;
}

.record-list li { max-width: none; padding: clamp(28px, 4vw, 48px); border-right: 2px solid var(--ink); border-bottom: 2px solid var(--ink); font-size: clamp(20px, 1.8vw, 26px); font-weight: 750; }

.method .section-intro { max-width: 1060px; }
.method-grid { display: grid; grid-template-columns: 0.75fr 1.5fr; gap: clamp(36px, 6vw, 84px); }
.method-thesis { display: grid; align-content: start; gap: 20px; font-size: clamp(28px, 3.2vw, 44px); line-height: 1.08; }
.method-lenses { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 2px solid var(--ink); border-left: 2px solid var(--ink); }
.method-lenses article { min-width: 0; padding: 26px; border-right: 2px solid var(--ink); border-bottom: 2px solid var(--ink); }
.method-lenses span { font-size: var(--small); font-weight: 800; }
.method-lenses h3 { margin: 24px 0 12px; font-size: 28px; }
.method-lenses p { margin: 0; }

.feed-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 2px solid var(--ink); border-left: 2px solid var(--ink); }
.feed-grid article { min-width: 0; border-right: 2px solid var(--ink); border-bottom: 2px solid var(--ink); }
.feed-grid a { display: flex; min-height: 480px; height: 100%; flex-direction: column; padding: clamp(28px, 3vw, 42px); text-decoration: none; }
.feed-grid a:hover { color: var(--paper); background: var(--signal); }
.feed-grid span, .feed-grid strong { font-size: var(--small); text-transform: uppercase; }
.feed-grid h3 { margin: 56px 0 24px; font-size: clamp(26px, 2.5vw, 36px); line-height: 1.05; }
.feed-grid strong { margin-top: auto; padding-top: 30px; }
.feed-status { color: var(--signal); }

/* Signal red is 3.68:1 on ivory. These bold labels use the WCAG large-text
   threshold while preserving the locked V7 palette and signal treatment. */
.authority-strip span,
.status-line,
.proof-pillars span,
.case-nav strong,
.case-work .tag,
.system-card:not(.system-card-red):not(.system-card-dark) .tag,
.feed-status { font-size: 19px; }

.creative .section-intro { margin-bottom: 68px; }
.licensing-note { margin-top: 26px; color: var(--signal); }
.photo-grid { display: grid; grid-template-columns: 1.18fr 0.82fr; gap: 22px; }
.photo-grid figure { min-width: 0; }
.photo-grid figure > div { aspect-ratio: 4 / 3; }
.photo-grid img { width: 100%; height: 100%; object-fit: cover; }
.photo-feature { grid-row: span 2; }
.photo-feature > div { height: calc(100% - 77px); aspect-ratio: auto !important; }
.photo-wide { grid-column: 1 / -1; }
.photo-wide > div { aspect-ratio: 16 / 7 !important; }
.photo-feature img { object-position: center; }

.pattern-showcase { display: grid; grid-template-columns: 0.55fr 1.45fr; gap: clamp(34px, 6vw, 80px); align-items: start; margin-top: clamp(72px, 9vw, 120px); }
.pattern-showcase h3 { max-width: 11ch; }
.pattern-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.pattern-grid figure { margin: 0; border: 1px solid var(--line-dark); }
.pattern-grid img { width: 100%; aspect-ratio: 1; object-fit: cover; }
.pattern-grid figcaption { padding: 12px; border-top: 1px solid var(--line-dark); font-size: var(--small); font-weight: 800; }

.contact { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(42px, 7vw, 104px); }
.contact > * { margin: 0; }
.contact-link { display: inline-block; margin: 36px 0 18px; color: var(--signal); font-size: clamp(24px, 3vw, 42px); font-weight: 800; line-height: 1.15; overflow-wrap: anywhere; text-decoration-thickness: 2px; text-underline-offset: 8px; }
.email-link { display: block; width: fit-content; margin-bottom: 18px; color: var(--paper); font-size: 20px; font-weight: 800; overflow-wrap: anywhere; }
.resource-links { display: flex; flex-wrap: wrap; gap: 8px 24px; margin-bottom: 36px; }
.resource-links a { display: inline-flex; min-height: 44px; align-items: center; color: var(--paper); font-size: 20px; font-weight: 800; overflow-wrap: anywhere; }
.availability { max-width: 50ch; }

.contact-form {
  display: grid;
  gap: 22px;
  align-self: start;
  padding: clamp(24px, 3vw, 38px);
  border: 2px solid var(--line-dark);
}

.contact-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}

.contact-form-grid label {
  display: grid;
  gap: 8px;
  color: var(--paper);
  font-size: var(--small);
  font-weight: 800;
}

.contact-form-grid label:last-child { grid-column: 1 / -1; }

.contact-form input,
.contact-form textarea {
  width: 100%;
  border: 2px solid var(--line-dark);
  border-radius: 0;
  color: var(--paper);
  background: #11110f;
  font: inherit;
}

.contact-form input {
  min-height: 52px;
  padding: 10px 12px;
}

.contact-form textarea {
  min-height: 150px;
  padding: 12px;
  resize: vertical;
}

.contact-form input::placeholder,
.contact-form textarea::placeholder { color: var(--muted-on-dark); opacity: 1; }

.contact-form button {
  width: fit-content;
  min-height: 50px;
  padding: 12px 20px;
  border: 2px solid var(--signal);
  border-radius: 0;
  color: var(--ink);
  background: var(--signal);
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}

.contact-form button:hover { transform: translateY(-2px); }
.contact-form button:disabled { cursor: not-allowed; opacity: 0.65; transform: none; }

.form-status {
  min-height: 1.55em;
  margin: 0;
  color: var(--muted-on-dark);
  font-size: var(--small);
}

.form-status a { color: inherit; font-weight: 800; }
.contact-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }

footer {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 12px 28px;
  padding: 26px var(--pad);
  border-top: 1px solid var(--line-dark);
  color: var(--paper);
  background: var(--ink);
  font-size: var(--small);
  font-weight: 750;
}

@media (min-width: 841px) and (max-height: 760px) {
  .hero {
    padding-block: 18px;
  }

  .hero-copy {
    gap: 10px;
  }

  .hero h1 {
    font-size: clamp(48px, 4.1vw, 64px);
  }

  .hero .lede,
  .hero-copy > p:last-child {
    font-size: 18px;
    line-height: 1.35;
  }

  .hero-art img {
    max-height: min(56svh, 460px);
  }
}

@media (max-width: 1100px) {
  .site-header { grid-template-columns: minmax(190px, 1fr) auto minmax(0, 1fr); gap: 20px; }
  .site-header nav { grid-column: auto; grid-row: auto; justify-content: center; flex-wrap: nowrap; gap: clamp(14px, 2vw, 24px); }
  .review-state { grid-column: auto; grid-row: auto; }
  .hero { grid-template-columns: minmax(0, 0.4fr) minmax(360px, 0.6fr); min-height: calc(100svh - 80px); }
  .hero h1 { max-width: 11.5ch; }
  .hero-art { width: 100%; }
  .hero-art img {
    max-height: 320px;
    aspect-ratio: 16 / 7;
  }
  .proof-phone .proof-image { min-height: 760px; }
  .proof-phone img { max-height: 720px; }
  .research-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .research-flow article:nth-child(2)::after { display: none; }
  .systems-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .method-grid { grid-template-columns: 1fr; }
  .feed-grid { grid-template-columns: 1fr; }
  .feed-grid a { min-height: 0; }
  .authority-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .hiring-proof dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .authority-strip article:nth-child(2) { border-right: 0; }
  .authority-strip article:nth-child(-n+2) { border-bottom: 2px solid var(--ink); }
}

@media (max-width: 840px) {
  .hero {
    grid-template-columns: 1fr;
    gap: 32px;
    min-height: 0;
    padding-block: 56px;
  }
  .hero-copy { max-width: 680px; }
  .hero h1 { max-width: 12ch; }
  .hero-art { max-width: 720px; }
  .split-intro,
  .venture,
  .method-grid,
  .contact,
  .governed-ai { grid-template-columns: 1fr; }
  .split-intro { gap: 28px; }
  .product-proof-detail,
  .linemap-composition { grid-template-columns: 1fr; }
  #flagship-case .hiring-grid { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
  :root { --pad: 20px; --section-y: 72px; --body: 18px; --small: 14px; }
  h1 { font-size: 42px; }
  h2 { font-size: 30px; }
  h3, .system-card h3, .method-lenses h3, .proof-pillars h3 { font-size: 24px; }
  h4 { font-size: 22px; }
  h1, h2, h3, h4 { line-height: 1.08; letter-spacing: -0.025em; }
  h1, h2, h3, h4, p, li, a, span, strong, em { max-width: 100%; }
  .button, .contact-link, .email-link { overflow-wrap: anywhere; }
  .site-header { grid-template-columns: 1fr; gap: 14px; min-height: 0; padding-top: 18px; padding-bottom: 18px; }
  .site-header nav { grid-column: 1; grid-row: 2; justify-content: flex-start; flex-wrap: wrap; gap: 10px 18px; padding-top: 12px; border-top: 1px solid var(--line-dark); }
  .masthead { font-size: 18px; }
  .review-state { font-size: 14px; }
  .hero { gap: 32px; }
  .hero h1 { font-size: clamp(38px, 11vw, 44px); max-width: 14ch; }
  .hero-actions { align-items: stretch; flex-direction: column; margin-top: 6px; }
  .button { width: 100%; }
  .hero-art img {
    max-height: 210px;
    aspect-ratio: 16 / 7;
    object-position: 52% center;
  }
  .split-intro,
  .signal-architecture,
  .research-band header,
  .venture,
  .method-grid,
  .pattern-showcase,
  .contact,
  .governed-ai { grid-template-columns: 1fr; }
  .contact-form-grid { grid-template-columns: 1fr; }
  .contact-form-grid label:last-child { grid-column: auto; }
  .split-intro { gap: 28px; }
  .flagship h2 { font-size: clamp(54px, 17vw, 76px); letter-spacing: -0.07em; }
  #prism h2 { max-width: 12ch; font-size: 52px; line-height: 0.9; }
  #method h2 { font-size: 42px; line-height: 1; }
  .proof-image,
  .proof-image-phone { min-height: 0; }
  .proof-phone .proof-image { min-height: 0; }
  .proof-image-dashboard { padding: 18px 10px; }
  .proof-image-phone { padding: 22px 34px; }
  .product-proof-detail { grid-template-columns: 1fr; }
  .linemap-composition { grid-template-columns: 1fr; }
  .linemap-device img { width: min(100%, 340px); }
  .signal-architecture { padding: 28px 20px; }
  .signal-steps { grid-template-columns: 1fr; }
  .research-flow { grid-template-columns: 1fr; }
  .research-flow article::after { display: none; }
  .venture-reverse .venture-copy,
  .venture-reverse .ui-study { order: initial; }
  .venture { gap: 30px; }
  .ui-study { width: 100%; }
  .leave-content { min-height: 440px; padding: 44px 24px; }
  .case-content { grid-template-columns: 1fr; min-height: 0; }
  .case-nav { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-right: 0; border-bottom: 2px solid var(--ink); }
  .case-nav strong { grid-column: 1 / -1; }
  .case-work { padding: 34px 22px; }
  .evidence-row { grid-template-columns: 34px minmax(0, 1fr); }
  .evidence-row em { grid-column: 2; width: fit-content; }
  .product-sequence,
  .systems-grid,
  .method-lenses,
  .photo-grid,
  .proof-pillars,
  .component-grid,
  .instrument-proof,
  .research-details,
  .authored-grid,
  .record-list { grid-template-columns: 1fr; }
  .product-sequence { gap: 30px; }
  .system-card { min-height: 0; }
  .book-system { grid-template-columns: 1fr; }
  .book-proof { grid-template-columns: 1fr; }
  .book-system img { max-height: 460px; justify-self: start; }
  .photo-feature,
  .photo-wide { grid-row: auto; grid-column: auto; }
  .photo-feature > div,
  .photo-wide > div,
  .photo-grid figure > div { height: auto; aspect-ratio: 4 / 3 !important; }
  .pattern-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .authority-strip { grid-template-columns: 1fr; }
  .authority-strip article { min-height: 0; border-right: 0; border-bottom: 2px solid var(--ink); }
  .authority-strip article:last-child { border-bottom: 0; }
  .hiring-grid { grid-template-columns: 1fr; }
  #flagship-case .hiring-grid { grid-template-columns: 1fr; }
  .hiring-proof { grid-column: auto; }
  .hiring-proof dl { grid-template-columns: 1fr; }
  .case-actions { align-items: stretch; flex-direction: column; }
}

@media (max-width: 360px) {
  :root { --pad: 16px; }
  .site-header { grid-template-columns: 1fr; }
  .review-state { grid-column: 1; grid-row: 2; justify-self: start; }
  .site-header nav { grid-row: 2; }
  .flagship h2 { font-size: 52px; }
  .signal-steps li,
  .research-flow article,
  .system-card,
  .method-lenses article,
  .feed-grid a { padding: 22px 18px; }
  .pattern-grid { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; }
}

@media (forced-colors: active) {
  .button,
  .ui-study,
  .media-frame,
  .signal-architecture,
  .system-card { border: 2px solid CanvasText; }
}
