:root {
  color-scheme: dark;
  --bg: #0a0b0d;
  --surface: #0f1115;
  --surface-2: #15181d;
  --line: #252a31;
  --line-strong: #353b45;
  --text: #f2f1eb;
  --muted: #a5abb4;
  --quiet: #737a84;
  --accent: #a9ffcf;
  --accent-2: #c8d7ff;
  --max: 1240px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background:
    linear-gradient(rgba(255,255,255,0.018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.018) 1px, transparent 1px),
    var(--bg);
  background-size: 48px 48px;
  color: var(--text);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.55;
}

a { color: inherit; text-decoration: none; }
a:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }
code { font-family: "SFMono-Regular", Consolas, "Liberation Mono", monospace; }

.site-header {
  width: min(calc(100% - 40px), var(--max));
  margin: 0 auto;
  min-height: 92px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  border-bottom: 1px solid var(--line);
}

.brand {
  display: inline-flex;
  flex-direction: column;
  flex: 0 0 auto;
  gap: 2px;
}

.brand-name {
  font-size: 22px;
  font-weight: 760;
  letter-spacing: 0.19em;
}

.brand-motto {
  color: var(--muted);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 10px;
  letter-spacing: 0.13em;
}

.nav {
  margin-left: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 4px 22px;
}

.nav a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  color: var(--muted);
  font-size: 13px;
  white-space: nowrap;
}

.nav a:hover {
  color: var(--text);
}

main, .site-footer { width: min(calc(100% - 40px), var(--max)); margin: 0 auto; }

.hero {
  min-height: 680px;
  padding: 104px 0 74px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-bottom: 1px solid var(--line);
}
.eyebrow, .section-kicker {
  color: var(--accent);
  font: 600 11px/1.3 "SFMono-Regular", Consolas, monospace;
  letter-spacing: 0.14em;
}
.hero h1 {
  max-width: 980px;
  margin: 24px 0 18px;
  font-size: clamp(48px, 8vw, 104px);
  line-height: 0.96;
  letter-spacing: -0.055em;
  font-weight: 640;
}
.hero-lede {
  margin: 0 0 22px;
  font-family: "SFMono-Regular", Consolas, monospace;
  font-size: clamp(24px, 3vw, 38px);
  font-weight: 400;
  color: var(--accent);
}
.hero-copy {
  max-width: 830px;
  margin: 0;
  color: var(--muted);
  font-size: 17px;
}
.hero-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 38px; }
.button {
  border: 1px solid var(--line-strong);
  border-radius: 8px;
  padding: 12px 16px;
  font: 600 13px/1 "SFMono-Regular", Consolas, monospace;
  background: rgba(255,255,255,0.018);
}
.button:hover { border-color: var(--muted); }
.button.primary { background: var(--text); color: #0b0c0e; border-color: var(--text); }
.button.quiet { color: var(--muted); }
.machine-strip {
  margin-top: 60px;
  padding-top: 18px;
  border-top: 1px solid var(--line);
  display: flex;
  flex-wrap: wrap;
  gap: 10px 24px;
  color: var(--quiet);
  font: 12px/1.5 "SFMono-Regular", Consolas, monospace;
}

.section { padding: 92px 0; border-bottom: 1px solid var(--line); }
.section h2 {
  margin: 14px 0 20px;
  max-width: 920px;
  font-size: clamp(34px, 5vw, 62px);
  line-height: 1.02;
  letter-spacing: -0.045em;
  font-weight: 590;
}
.section-intro { max-width: 720px; color: var(--muted); font-size: 17px; }

.sequence {
  margin-top: 54px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid var(--line);
  border-left: 1px solid var(--line);
}
.sequence-step {
  min-height: 310px;
  padding: 24px;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  background: rgba(15,17,21,0.55);
}
.step-number { color: var(--quiet); font: 12px/1 "SFMono-Regular", Consolas, monospace; }
.sequence-step h3 { margin: 48px 0 14px; font-size: 22px; font-weight: 590; }
.sequence-step code, .primitive-card code {
  display: block;
  color: var(--accent);
  font-size: 12px;
  overflow-wrap: anywhere;
}
.sequence-step p, .primitive-card p, .visibility p, .protocol-note, .thesis p { color: var(--muted); font-size: 14px; }

.grid-section { display: grid; grid-template-columns: 0.75fr 1.25fr; gap: 80px; align-items: start; }
.primitive-grid { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.primitive-card { min-height: 255px; padding: 24px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--surface); }
.primitive-label { color: var(--quiet); font: 10px/1 "SFMono-Regular", Consolas, monospace; letter-spacing: 0.12em; }
.primitive-card h3 { margin: 38px 0 12px; font-size: 25px; font-weight: 590; }

.friction-grid { margin-top: 50px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--line); border: 1px solid var(--line); }
.friction-grid div { min-height: 160px; padding: 26px; background: var(--surface); display: flex; flex-direction: column; justify-content: space-between; }
.friction-grid strong {
  font-size: 25px;
  font-weight: 590;
  line-height: normal;
  color: var(--text);
}
.friction-grid span { color: var(--muted); max-width: 220px; font-size: 14px; }

.machine { display: grid; grid-template-columns: 0.85fr 1.15fr; gap: 70px; align-items: start; }
.endpoint-panel { border-top: 1px solid var(--line); }
.endpoint-panel a, .endpoint-panel > div {
  min-height: 72px;
  padding: 15px 0;
  border-bottom: 1px solid var(--line);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}
.endpoint-panel a:hover span { color: var(--accent); }
.endpoint-panel span { color: var(--muted); font-size: 13px; }
.endpoint-panel code { text-align: right; color: var(--text); font-size: 13px; overflow-wrap: anywhere; }
.protocol-note { grid-column: 2; margin: -34px 0 0; }

.visibility-grid { margin-top: 48px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.visibility-grid article { padding: 28px; background: var(--surface); border: 1px solid var(--line); border-radius: 10px; }
.visibility-grid h3 { margin: 0 0 40px; color: var(--accent); font: 600 13px/1 "SFMono-Regular", Consolas, monospace; }

.thesis p { max-width: 800px; font-size: 16px; }
.flow { margin-top: 48px; padding: 28px; border: 1px solid var(--line); background: var(--surface); display: flex; flex-wrap: wrap; gap: 12px 18px; align-items: center; font: 600 12px/1.4 "SFMono-Regular", Consolas, monospace; color: var(--muted); }
.flow b { color: var(--accent); font-weight: 400; }

.site-footer {
  min-height: 260px;
  padding: 60px 0;
  display: grid;
  grid-template-columns: minmax(220px, 0.65fr) minmax(0, 1.35fr);
  gap: 72px;
  align-items: start;
  border-top: 1px solid var(--line);
}

.footer-brand {
  font-size: 24px;
  font-weight: 760;
  letter-spacing: 0.19em;
}

.footer-motto {
  margin-top: 4px;
  font-family: Georgia, "Times New Roman", serif;
  color: var(--muted);
  font-size: 13px;
}

.footer-links {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 36px;
  text-align: left;
}

.footer-group {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
}

.footer-group-label {
  margin-bottom: 8px;
  color: var(--accent);
  font: 600 10px/1.3 "SFMono-Regular", Consolas, monospace;
  letter-spacing: 0.14em;
}

.footer-group a {
  color: var(--quiet);
  font-size: 12px;
  line-height: 1.5;
}

.footer-group a:hover {
  color: var(--text);
}

@media (max-width: 950px) {
  .site-header {
    min-height: 0;
    padding: 20px 0 18px;
    flex-direction: column;
    align-items: stretch;
    gap: 18px;
  }

  .brand {
    align-self: flex-start;
  }

  .nav {
    width: 100%;
    margin-left: 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    border: 1px solid var(--line);
    background: var(--line);
  }

  .nav a {
    min-width: 0;
    min-height: 46px;
    padding: 10px 12px;
    background: var(--surface);
    white-space: normal;
    line-height: 1.3;
  }

  .sequence {
    grid-template-columns: repeat(2, 1fr);
  }

  .grid-section,
  .machine {
    grid-template-columns: 1fr;
    gap: 44px;
  }

  .protocol-note {
    grid-column: auto;
    margin: 0;
  }

  .friction-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .site-footer {
    grid-template-columns: 1fr;
    gap: 44px;
  }

.footer-links {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 28px;
}
}

@media (max-width: 620px) {
  .site-header,
  main,
  .site-footer {
    width: min(calc(100% - 24px), var(--max));
  }

  .site-header {
    min-height: 0;
    padding: 18px 0 16px;
    gap: 16px;
  }

  .nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .nav a {
    min-height: 48px;
    padding: 11px 12px;
    font-size: 12px;
  }

  .hero {
    min-height: 0;
    padding: 74px 0 56px;
  }

  .hero h1 {
    font-size: 52px;
  }

  .section {
    padding: 68px 0;
  }

  .sequence,
  .primitive-grid,
  .friction-grid,
  .visibility-grid {
    grid-template-columns: 1fr;
  }

  .sequence-step {
    min-height: 250px;
  }

  .site-footer {
    grid-template-columns: 1fr;
    align-items: start;
    gap: 38px;
    padding: 48px 0;
  }

  .footer-links {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .footer-group {
    padding-top: 18px;
    border-top: 1px solid var(--line);
  }

  .endpoint-panel a,
  .endpoint-panel > div {
    align-items: flex-start;
    flex-direction: column;
    gap: 7px;
  }

  .endpoint-panel code {
    text-align: left;
  }
}

/* Project views */
.project-index-head h1,.project-detail-head h1{max-width:980px;margin:18px 0 22px;font-size:clamp(44px,7vw,84px);line-height:.98;letter-spacing:-.05em;font-weight:620}.project-list{border-top:1px solid var(--line)}.project-row{display:grid;grid-template-columns:1fr auto;gap:40px;padding:30px 0;border-bottom:1px solid var(--line)}.project-row:hover h2{color:var(--accent)}.project-row h2{margin:10px 0 8px;font-size:28px;letter-spacing:-.03em}.project-row p{margin:0;max-width:720px;color:var(--muted)}.project-row-meta{display:flex;min-width:260px;flex-direction:column;align-items:flex-end;gap:7px;color:var(--quiet);font-size:12px}.project-row-meta code{color:var(--accent)}.project-visibility{display:inline-block;color:var(--accent);font:600 11px/1.3 "SFMono-Regular",Consolas,monospace;letter-spacing:.11em}.project-empty{padding:50px 0;display:flex;flex-direction:column;gap:8px;color:var(--muted)}.project-empty strong{color:var(--text);font-size:24px}.project-detail-head{padding-bottom:60px}.project-status-line{display:flex;gap:18px;color:var(--muted);font:12px/1.4 "SFMono-Regular",Consolas,monospace}.project-description{max-width:850px;color:var(--muted);font-size:18px}.project-machine-id{margin-top:36px;display:flex;gap:16px;align-items:center;color:var(--quiet);font:12px/1.4 "SFMono-Regular",Consolas,monospace}.project-machine-id code{color:var(--accent);overflow-wrap:anywhere}.project-facts{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line)}.project-facts>div{min-height:130px;padding:24px;border-right:1px solid var(--line)}.project-facts>div:last-child{border-right:0}.project-facts span{display:block;color:var(--quiet);font:10px/1 "SFMono-Regular",Consolas,monospace;letter-spacing:.1em}.project-facts strong{display:block;margin-top:28px;font-size:14px;overflow-wrap:anywhere}.project-files-section{border-bottom:0}@media(max-width:800px){.project-row{grid-template-columns:1fr}.project-row-meta{align-items:flex-start;min-width:0}.project-facts{grid-template-columns:1fr 1fr}.project-facts>div:nth-child(2){border-right:0}.project-facts>div{border-bottom:1px solid var(--line)}}@media(max-width:500px){.project-facts{grid-template-columns:1fr}.project-facts>div{border-right:0}.project-index-head h1,.project-detail-head h1{font-size:48px}}
/* Search */
.search-form{display:flex;gap:10px;margin-top:34px;max-width:850px}.search-form input{flex:1;min-width:0;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);color:var(--text);padding:13px 14px;font:14px/1.4 "SFMono-Regular",Consolas,monospace}.search-results{border-top:1px solid var(--line)}@media(max-width:620px){.search-form{flex-direction:column}}

/* Public launch */
.data-grid,.status-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:36px 0}.data-card,.status-card{border:1px solid var(--line);background:var(--surface);padding:24px;border-radius:10px;min-height:130px}.data-card>span,.status-card>span{display:block;color:var(--quiet);font:10px/1.3 "SFMono-Regular",Consolas,monospace;letter-spacing:.1em;text-transform:uppercase}.status-card strong{display:block;margin-top:28px;font-size:25px;text-transform:uppercase}.status-card small{display:block;margin-top:10px;color:var(--muted)}.tag-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.tag-list code{border:1px solid var(--line);padding:7px 9px;border-radius:6px;color:var(--accent)}.tag-list em{color:var(--muted);font-style:normal}.stack-form{max-width:760px;display:grid;gap:22px}.stack-form label{display:grid;gap:9px;color:var(--muted);font-size:13px}.stack-form input,.stack-form select,.stack-form textarea{width:100%;box-sizing:border-box;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);color:var(--text);padding:13px 14px;font:14px/1.5 "SFMono-Regular",Consolas,monospace}.stack-form textarea{resize:vertical}.notice{max-width:760px;display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;margin-bottom:28px;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.notice.success strong{color:var(--accent)}.notice.error strong{color:#ff9c9c}.notice code{color:var(--muted)}.legal-copy{max-width:900px}.legal-copy h2{font-size:30px;margin-top:48px}.legal-copy p{color:var(--muted);font-size:16px}.project-panel{margin-top:34px;border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:26px}.project-panel h3{margin:0 0 16px;font-size:24px}.project-panel p{color:var(--muted)}.metric-list{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:28px}.metric-list>div{background:var(--surface);padding:20px;min-height:100px}.metric-list span{display:block;color:var(--quiet);font:10px/1.3 "SFMono-Regular",Consolas,monospace;text-transform:uppercase}.metric-list strong{display:block;margin-top:18px;font-size:20px}.simple-list{border-top:1px solid var(--line);margin-top:24px}.simple-list>div,.simple-list>a{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid var(--line)}.simple-list span{color:var(--muted)}
@media(max-width:720px){.data-grid,.status-grid,.metric-list{grid-template-columns:1fr}.project-facts{grid-template-columns:1fr}}

.code-block {
  margin: 36px 0;
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--surface);
  color: var(--text);
  overflow-x: auto;
  white-space: pre;
  font: 12px/1.7 "SFMono-Regular", Consolas, "Liberation Mono", monospace;
}

.code-block code {
  color: inherit;
  font: inherit;
}

@media (max-width: 620px) {
  .code-block {
    padding: 18px;
    font-size: 11px;
  }
}


/* Cross-agent compounding: exactly three equal columns */
#cross-agent-compounding .sequence {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

/* Keep the A → B → C sequence readable on smaller screens */
@media (max-width: 950px) {
  #cross-agent-compounding .sequence {
    grid-template-columns: 1fr;
  }
}