/* Reading companions to the practice's editorial identity.
   Existing HTML, document anchors and print editions remain the source. */
@media screen {
  body:has(> .notes-header),
  body:has(> .chrome),
  body.agents-page,
  body:has(> .not-found) {
    --reading-font: "Bradford Editorial", "Bradford Text", "Bradford", Georgia, "Times New Roman", serif;
    --reading-gutter: clamp(min(1.375rem, 6.875vw), 4.5vw, 5rem);
    --reading-wide: 82.5rem;
    --reading-measure: 37rem;
    --paper: #f4f2ec;
    --ink: #252a26;
    --signal: #653545;
    --muted: #62655d;
    --hair: #cdcfc5;
    --ink-soft: var(--muted);
    --ink-faint: var(--muted);
    --accent: var(--signal);
    --font-serif: var(--reading-font);
    --font-mono: var(--reading-font);
    --serif: var(--reading-font);
    --mono: var(--reading-font);
    --text: var(--reading-font);
    --display: var(--reading-font);
    --stroke: 1px solid var(--hair);
    --stroke-strong: 1px solid var(--hair);
    --spine: 0 solid transparent;
    background: var(--paper);
    color: var(--ink);
    font-family: var(--reading-font);
    font-size: clamp(1.125rem, 1.03rem + .3vw, 1.25rem);
    line-height: 1.55;
    font-weight: 400;
    font-synthesis: none;
    letter-spacing: 0;
    -webkit-font-smoothing: antialiased;
  }

  body:has(> .notes-header),
  body:has(> .chrome) {
    display: block;
    margin: 0;
    padding: 0 var(--reading-gutter);
    min-inline-size: 0;
  }
  body:has(> .notes-header) { container-type: inline-size; }
  body.agents-page, body:has(> .not-found) { container: reading-shell / inline-size; }

  body:has(> .notes-header) #paper-bg,
  body:has(> .chrome) #paper-bg { display: none; }

  body:has(> .notes-header) :is(h1, h2, h3, strong, b),
  body:has(> .chrome) :is(h1, h2, h3, strong, b),
  .agents-page :is(h1, h2, h3, strong, b) { font-weight: 400; }

  body:has(> .notes-header) :is(em, i),
  body:has(> .chrome) :is(em, i) {
    font-style: normal;
    text-decoration: underline;
    text-decoration-thickness: .05em;
    text-underline-offset: .15em;
  }

  body:has(> .notes-header) ::selection,
  body:has(> .chrome) ::selection,
  .agents-page ::selection {
    background: var(--signal);
    color: var(--paper);
  }

  body:has(> .notes-header) :focus-visible,
  body:has(> .chrome) :focus-visible {
    outline: 2px solid var(--signal);
    outline-offset: 5px;
  }

  .notes-header,
  body:has(> .chrome) .chrome {
    width: 100%;
    max-width: var(--reading-wide);
    margin: 0 auto;
    padding: 1.8rem 0 1.4rem;
    border: 0;
    border-bottom: 1px solid var(--hair);
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: .5rem 1rem;
  }

  .notes-header .back-link,
  .notes-header .lang-btn,
  body:has(> .chrome) .chrome a {
    font-family: var(--reading-font);
    font-size: 1rem;
    line-height: 1.4;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: none;
    text-decoration: none;
    color: var(--ink);
    margin: 0;
    min-height: 2.75rem;
  }

  .notes-header .back-link,
  body:has(> .chrome) .chrome > a { font-size: 1.25rem; }

  .notes-header .lang-btn.active,
  .notes-header a:hover,
  body:has(> .chrome) .chrome a:hover {
    color: var(--signal);
    text-decoration: underline;
    text-decoration-thickness: .06em;
    text-underline-offset: .3em;
  }

  .notes-header .language-switcher {
    margin-inline-start: auto;
    gap: .25rem;
    max-width: 100%;
    flex-wrap: wrap;
  }

  .notes-header .lang-btn { min-width: 44px; }
  :is(.notes-header, .chrome, .agents-page .site-header, body:has(> .not-found) .site-header) .command-launch { display: inline-flex; align-items: center; min-height: 44px; color: var(--muted); font-family: var(--reading-font); font-size: .9375rem; line-height: 1.4; white-space: nowrap; text-decoration: none; }
  :is(.notes-header, .chrome, .agents-page .site-header, body:has(> .not-found) .site-header) .command-launch:hover { color: var(--signal); text-decoration: underline; text-underline-offset: .25em; }
  .agents-page .site-header__inner > .command-launch,
  body:has(> .not-found) .site-header__inner > .command-launch { grid-column: 1 / -1; justify-self: end; }
  .interface-page .interface-doc { padding-block: clamp(3rem,6vw,6rem) 5rem; }
  .interface-page .interface-doc > header { margin-bottom: 3.5rem; max-width: 45rem; }
  .interface-page .interface-kicker { margin-bottom: 1rem; color: var(--muted); font-size: 1rem; }
  .interface-page .interface-doc h1 { font-size: clamp(3rem,6.5vw,6rem); line-height: 1; letter-spacing: -.04em; margin-bottom: 1.5rem; }
  .interface-page .interface-lede { font-size: clamp(1.35rem,2vw,1.75rem); line-height: 1.4; }
  .interface-page .interface-doc > section { margin-top: 4rem; }
  .interface-page .interface-doc h2 { margin-bottom: 1rem; font-size: clamp(1.8rem,3vw,2.8rem); line-height: 1.15; letter-spacing: -.025em; }
  .interface-page .interface-doc h3 { font-size: 1.3rem; margin: 2rem 0 .7rem; }
  .interface-page .interface-doc p { max-width: 43rem; margin-bottom: 1rem; }
  .interface-page .interface-doc table { width: 100%; table-layout: fixed; border-collapse: collapse; margin-top: 1.5rem; font-size: 1.0625rem; }
  .interface-page .interface-doc tr > :first-child { width: 38%; }
  .interface-page .interface-doc :is(th,td) { padding: 1rem 1.5rem 1rem 0; border-top: 1px solid var(--hair); text-align: left; vertical-align: top; font-weight: 400; overflow-wrap: anywhere; }
  .interface-page .interface-doc th { color: var(--signal); }
  .interface-page .interface-doc td:last-child { padding-right: 0; }
  .interface-page .interface-doc :is(code,kbd) { font: .9em/1.5 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; overflow-wrap: anywhere; }
  .interface-page .interface-doc pre { max-width: 100%; margin-block: 1rem 2rem; padding: 1.2rem; background: color-mix(in srgb,var(--ink) 5%,var(--paper)); border: 1px solid var(--hair); white-space: pre-wrap; overflow-wrap: anywhere; }
  .interface-page .interface-doc ul { padding-left: 1.2rem; max-width: 43rem; }
  .interface-page .interface-doc li { margin-block: .7rem; }
  .interface-page .interface-doc a { color: var(--signal); text-underline-offset: .2em; }

  /* A command and its explanation form one reading unit on a narrow page.
     Keep the native table and column headers available to assistive tools. */
  @container (max-width: 34rem) {
    .interface-page .interface-doc table { display: block; }
    .interface-page .interface-doc thead {
      position: absolute;
      width: 1px;
      height: 1px;
      overflow: hidden;
      clip-path: inset(50%);
      white-space: nowrap;
    }
    .interface-page .interface-doc tbody { display: block; }
    .interface-page .interface-doc tbody tr {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      gap: .5rem;
      padding-block: 1.25rem;
      border-top: 1px solid var(--hair);
    }
    .interface-page .interface-doc tbody :is(th, td) {
      display: block;
      width: auto;
      padding: 0;
      border: 0;
    }
    .interface-page .interface-doc tbody tr > :first-child { width: auto; }
  }

  body:has(> .notes-header) > main {
    width: 100%;
    max-width: var(--reading-wide);
    margin: 0 auto;
    padding: 0;
  }

  .note-breadcrumb { margin-top: 1.25rem; font-size: 1rem; }
  .note-breadcrumb a { display: inline-flex; align-items: center; gap: .6rem; min-height: 44px; color: var(--signal); text-decoration: none; }
  .note-breadcrumb a:hover { text-decoration: underline; text-underline-offset: .25em; }

  .notes-masthead {
    max-width: none;
    margin: 0 0 clamp(3.5rem, 7vw, 6rem);
    padding-top: clamp(3.5rem, 7vw, 7rem);
  }

  .notes-masthead h1 {
    font-size: clamp(4rem, 11vw, 10rem);
    line-height: .95;
    letter-spacing: -.04em;
    margin: 0 0 1.8rem;
  }

  .notes-masthead .standfirst {
    max-width: 34rem;
    font-size: clamp(1.4rem, 1.13rem + 1vw, 2rem);
    line-height: 1.35;
    color: var(--ink);
  }

  .notes-masthead--journal { display: grid; grid-template-columns: minmax(0,1.3fr) minmax(0,1fr); grid-template-rows: max-content max-content 1fr; column-gap: 2rem; align-items: start; position: relative; }
  .journal-kicker { grid-column: 1; margin-bottom: 2rem; color: var(--muted); font-size: 1rem; }
  .notes-masthead--journal h1 { grid-column: 1; font-size: clamp(4rem,7.7vw,8rem); color: var(--signal); }
  .notes-masthead--journal .standfirst { grid-column: 1; font-size: clamp(1.4rem,1.1rem + .6vw,1.75rem); line-height: 1.4; }
  .notes-masthead__art { grid-column: 2; grid-row: 1 / 4; width: 110%; height: auto; max-width: none; justify-self: end; align-self: center; }
  .notes-masthead__art img { display: block; width: 100%; height: auto; }
  .archive-toolbar { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: .5rem 2rem; padding-block: 0 1rem; font-size: 1rem; }
  .archive-toolbar p { margin: 0; color: var(--muted); }
  .archive-toolbar a { display: inline-flex; align-items: center; min-height: 2.75rem; gap: 1.25rem; color: var(--signal); }
  @container (max-width: 47.999rem) {
    .notes-masthead--journal { grid-template-columns: minmax(0,1fr); padding-top: 2rem; margin-bottom: 2rem; }
    .notes-masthead--journal h1 { font-size: clamp(3.5rem,12cqw,6rem); }
    .journal-kicker { margin-bottom: 1.5rem; }
    .notes-masthead__art { grid-column: 1; grid-row: 4; width: min(100%,30rem); justify-self: center; margin-top: 1.5rem; }
  }

  .notes-list {
    max-width: none;
    margin: 0;
    padding: 0;
    border-bottom: 1px solid var(--hair);
    container: notes-index / inline-size;
  }

  .notes-list > li,
  .notes-list > li + li {
    margin: 0;
    padding: 0;
    border-top: 1px solid var(--hair);
  }

  .notes-list .note-entry {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 1rem;
    padding-block: 2rem 2.2rem;
  }

  .note-entry .date,
  .note-entry .go,
  .note-title .date,
  .note-title .kicker {
    font-family: var(--reading-font);
    font-size: 1rem;
    line-height: 1.5;
    letter-spacing: 0;
    text-transform: none;
    margin: 0;
    color: var(--muted);
  }

  .note-entry .t {
    font-size: clamp(1.8rem, 1.45rem + 1.5vw, 2.9rem);
    line-height: 1.1;
    letter-spacing: -.025em;
    margin: 0;
    max-width: 25ch;
    text-wrap: pretty;
  }

  .note-entry .d {
    max-width: 36rem;
    margin: 0;
    font-size: 1.125rem;
    line-height: 1.5;
    color: var(--muted);
  }

  .note-entry .go { color: var(--signal); }

  body:has(> .notes-header) article.note {
    max-width: none;
    margin: 0;
    padding-top: clamp(3.5rem, 7vw, 7rem);
  }

  body:has(> .notes-header) .note-title {
    max-width: 64rem;
    margin: 0 0 clamp(3rem, 6vw, 5rem);
  }

  .note-title .date { margin-bottom: 1.4rem; }
  .note-title .kicker { margin-bottom: .35rem; }

  body:has(> .notes-header) .note-title h1 {
    max-width: 17ch;
    font-size: clamp(2.7rem, 1.7rem + 4.5vw, 6rem);
    line-height: 1.04;
    letter-spacing: -.035em;
    text-wrap: pretty;
    overflow-wrap: break-word;
  }

  body:has(> .notes-header) .note-title .standfirst {
    margin-top: 2rem;
    max-width: 37rem;
    color: var(--ink);
    font-size: clamp(1.375rem, 1.15rem + .8vw, 1.75rem);
    line-height: 1.4;
  }

  body:has(> .notes-header) .prose {
    max-width: var(--reading-measure);
    margin-inline: auto;
  }

  body:has(> .notes-header) .prose > * + * { margin-top: 1.3em; }

  body:has(> .notes-header) .prose h2 {
    margin-top: 2.4em;
    font-size: clamp(1.75rem, 1.5rem + .7vw, 2.25rem);
    line-height: 1.2;
    letter-spacing: -.02em;
    text-wrap: pretty;
  }

  body:has(> .notes-header) .prose h3 {
    font-size: 1.5rem;
    line-height: 1.3;
    margin-top: 2em;
  }

  body:has(> .notes-header) .prose :is(h2, h3) + * { margin-top: .75em; }

  body:has(> .notes-header) .prose a,
  body:has(> .chrome) .sec-body a,
  .notes-footer a {
    color: var(--signal);
    text-decoration: underline;
    text-decoration-thickness: .05em;
    text-decoration-color: currentColor;
    text-underline-offset: .2em;
  }

  .notes-footer {
    max-width: var(--reading-wide);
    margin: clamp(5rem, 9vw, 9rem) auto 0;
    padding: 2rem 0 3.5rem;
    border-top: 1px solid var(--hair);
    font-size: 1rem;
    line-height: 1.6;
    color: var(--muted);
    gap: 1.5rem 3rem;
  }

  .notes-footer address,
  .notes-footer a,
  body:has(> .chrome) .colophon a {
    max-width: 100%;
    overflow-wrap: anywhere;
  }

  .notes-footer .footer-nav {
    flex-direction: row;
    flex-wrap: wrap;
    align-content: start;
    align-items: baseline;
    justify-content: flex-end;
    gap: .25rem 1.5rem;
    max-width: 29rem;
  }

  .notes-footer .footer-nav a { text-decoration: none; }
  .notes-footer .footer-nav a:hover { text-decoration: underline; }

  /* The working note keeps its useful margin headings and printable edition. */
  body:has(> .chrome) > main {
    max-width: 64rem;
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }

  body:has(> .chrome) .doc {
    max-width: none;
    margin: 0;
    container: reading-note / inline-size;
  }

  body:has(> .chrome) .masthead {
    padding-top: clamp(3.5rem, 7vw, 7rem);
  }

  body:has(> .chrome) .micro,
  body:has(> .chrome) .colophon__nav,
  body:has(> .chrome) .masthead .byline {
    font-family: var(--reading-font);
    font-size: 1rem;
    line-height: 1.5;
    font-variant-caps: normal;
    letter-spacing: 0;
    text-transform: none;
    margin-right: 0;
    color: var(--muted);
  }

  body:has(> .chrome) .masthead h1 {
    max-width: 15ch;
    font-size: clamp(2.8rem, 1.8rem + 4.5vw, 6rem);
    line-height: 1.04;
    letter-spacing: -.035em;
  }

  body:has(> .chrome) .masthead .standfirst {
    max-width: var(--reading-measure);
    font-size: clamp(1.375rem, 1.15rem + .8vw, 1.75rem);
    line-height: 1.4;
    text-wrap: pretty;
    color: var(--ink);
  }

  body:has(> .chrome) .row {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 1rem;
    align-items: baseline;
  }

  body:has(> .chrome) .masthead .row > [aria-hidden="true"] { display: none; }

  body:has(> .chrome) .rule {
    margin: 3.5rem 0;
    background: var(--hair);
    transform: none;
    transition: none;
  }

  body:has(> .chrome) .sec-head {
    font-size: 1.35rem;
    line-height: 1.3;
    font-variant-caps: normal;
    letter-spacing: -.01em;
    margin: 0;
  }

  body:has(> .chrome) .sec-body { max-width: var(--reading-measure); }
  body:has(> .chrome) .sec + .sec { margin-top: 3.5rem; }
  body:has(> .chrome) .sec + .sec-author { margin-top: 6rem; }

  body:has(> .chrome) .principle__name {
    font-variant-caps: normal;
    letter-spacing: 0;
    color: var(--ink);
  }

  body:has(> .chrome) .colophon {
    margin-top: 5rem;
    padding-block: 2rem 3.5rem;
  }

  body:has(> .chrome) .colophon .addr { font-size: 1rem; }
  body:has(> .chrome) .colophon__nav a { min-height: 2.75rem; display: inline-flex; align-items: center; }

  /* A framework reads as a document, with a clear title and a working index. */
  .agents-page .site-header,
  body:has(> .not-found) .site-header {
    width: 100%;
    max-width: calc(var(--reading-wide) + 2 * var(--reading-gutter));
    margin: 0 auto;
    padding: 0 var(--reading-gutter);
    border: 0;
    background: var(--paper);
    color: var(--ink);
  }

  .agents-page main::before,
  .agents-page .site-header__inner::before,
  body:has(> .not-found) main::before,
  body:has(> .not-found) .site-header__inner::before { content: none; }

  .agents-page .site-header__inner,
  body:has(> .not-found) .site-header__inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    grid-template-areas: "identity site-nav languages";
    align-items: center;
    gap: .75rem 2rem;
    padding: 1.4rem 0;
    min-height: 7.5rem;
    border: 0;
    border-bottom: 1px solid var(--hair);
  }

  body:has(> .not-found) .site-header__inner {
    grid-template-columns: minmax(0, 1fr) auto auto;
    grid-template-areas: "identity formats languages" "edition edition edition";
  }

  .agents-page .identity,
  body:has(> .not-found) .identity {
    display: flex;
    flex-direction: column;
    align-items: start;
    gap: .15rem;
    padding: 0;
    border: 0;
    color: var(--ink);
    text-decoration: none;
  }

  .agents-page .identity__name,
  body:has(> .not-found) .identity__name {
    font-size: 1.5rem;
    font-weight: 400;
    letter-spacing: -.025em;
    text-decoration: none;
  }

  .agents-page .identity__role,
  body:has(> .not-found) .identity__role {
    color: var(--muted);
    font-size: .9375rem;
    line-height: 1.5;
    letter-spacing: 0;
    text-transform: none;
  }

  .agents-page .site-nav,
  .agents-page .language-nav,
  body:has(> .not-found) .language-nav,
  body:has(> .not-found) .format-nav {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    border: 0;
    padding: 0;
    gap: .2rem;
  }

  .agents-page .site-nav { gap: 1.5rem; }

  .agents-page .site-nav a,
  .agents-page .language-nav a,
  body:has(> .not-found) .language-nav a,
  body:has(> .not-found) .format-nav a {
    padding: .4rem .25rem;
    border: 0;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.4;
    color: var(--ink);
    background: none;
    text-decoration: none;
    min-height: 2.75rem;
    letter-spacing: 0;
  }

  .agents-page .site-nav a:hover,
  .agents-page .language-nav a[aria-current],
  body:has(> .not-found) .language-nav a[aria-current],
  body:has(> .not-found) .format-nav a[aria-current] {
    color: var(--signal);
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: .35em;
  }

  body:has(> .not-found) .edition {
    padding: 0;
    border: 0;
    min-height: 0;
    font-size: .9375rem;
    color: var(--muted);
  }

  .agents-page > main {
    max-width: calc(var(--reading-wide) + 2 * var(--reading-gutter));
    margin-inline: auto;
    padding: 0 var(--reading-gutter);
    container: reading-framework / inline-size;
  }

  .agents-page .hero {
    display: block;
    min-height: 0;
    margin: 0;
    padding: clamp(3.5rem, 7vw, 7rem) 0 3rem;
    border: 0;
    background: none;
  }

  .agents-page .hero__title {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    min-height: 0;
    padding: 0;
    border: 0;
  }

  .agents-page .hero__premise,
  .agents-page .hero__verdict,
  .agents-page .hero__bottom {
    margin: 0;
    padding: 0;
    min-height: 0;
    border: 0;
    background: none;
  }

  .agents-page .hero__premise {
    display: block;
    font-size: 1.25rem;
    line-height: 1.4;
    letter-spacing: 0;
    color: var(--muted);
  }

  .agents-page .hero__qualifier {
    margin: 0 0 1rem;
    font-size: 1rem;
    letter-spacing: 0;
    text-transform: none;
    color: var(--signal);
  }

  .agents-page .hero__verdict {
    font-size: clamp(2.7rem, 1.55rem + 4.75vw, 6.5rem);
    line-height: 1.03;
    letter-spacing: -.035em;
  }

  .agents-page .hero__verdict strong { max-width: 18ch; overflow-wrap: anywhere; }
  .agents-page .agents-hero-break { display: none; }

  .agents-page .hero__bottom {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: 2rem;
    margin-top: 3rem;
  }

  .agents-page .hero__lede {
    align-self: start;
    max-width: 25ch;
    font-size: clamp(1.5rem, 1.25rem + 1vw, 2.1rem);
    line-height: 1.3;
    letter-spacing: -.015em;
  }

  .agents-page .hero__context { max-width: var(--reading-measure); line-height: 1.55; }

  .agents-page .document-index {
    display: flex;
    flex-wrap: wrap;
    gap: .3rem 1.75rem;
    margin: 0;
    padding: 1.25rem 0;
    border-block: 1px solid var(--hair);
  }

  .agents-page .document-index::before { content: none; }

  .agents-page .document-index a {
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    gap: .55rem;
    min-height: 2.75rem;
    padding: 0;
    border: 0;
    font-size: 1rem;
    line-height: 1.4;
  }

  .agents-page .document-index__number { font-size: .9rem; color: var(--muted); }
  .agents-page .document-index__label { font-size: 1rem; }

  .agents-page .section-shell {
    padding: clamp(3.5rem, 7vw, 6rem) 0;
    margin: 0;
    border: 0;
    border-bottom: 1px solid var(--hair);
  }

  .agents-page .section-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 1rem;
    padding: 0;
    margin-bottom: 2.5rem;
    border: 0;
  }

  .agents-page .section-head .section-code,
  .agents-page .section-head h2 {
    grid-column: auto;
    padding: 0;
    border: 0;
    margin: 0;
  }

  .agents-page .section-head .section-code {
    font-size: 1rem;
    line-height: 1.5;
    letter-spacing: 0;
    text-transform: none;
    color: var(--muted);
  }

  .agents-page .section-head h2 {
    max-width: 23ch;
    font-size: clamp(2.1rem, 1.6rem + 1.9vw, 3.75rem);
    line-height: 1.1;
    letter-spacing: -.025em;
    text-wrap: pretty;
  }

  .agents-page .agents-statement,
  .agents-page .agents-note {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 1.5rem;
    border: 0;
  }

  .agents-page .agents-statement__lead,
  .agents-page .agents-statement__body,
  .agents-page .agents-note h3,
  .agents-page .agents-note p {
    grid-column: auto;
    padding: 0;
    border: 0;
    margin: 0;
  }

  .agents-page .agents-statement__lead,
  .agents-page .agents-statement--compact .agents-statement__lead,
  .agents-page .agents-note h3,
  .agents-page .agents-board-intro {
    font-size: clamp(1.4rem, 1.2rem + .8vw, 1.9rem);
    line-height: 1.35;
    letter-spacing: -.012em;
    text-wrap: pretty;
    max-width: 30ch;
  }

  .agents-page .agents-statement__body p,
  .agents-page .agents-note p { max-width: var(--reading-measure); }

  .agents-page .agents-note {
    margin-top: 3rem;
    padding-top: 2rem;
    border-top: 1px solid var(--hair);
  }

  .agents-page .agents-note--sequence h3 {
    font-size: 1.1rem;
    line-height: 1.45;
    text-transform: none;
    letter-spacing: 0;
    color: var(--muted);
  }

  .agents-page .decision-path {
    margin: 3rem 0 0;
    border: 0;
    border-block: 1px solid var(--hair);
  }

  .agents-page .decision-path figcaption {
    display: flex;
    flex-direction: column;
    align-items: start;
    gap: .6rem;
    padding: 1.5rem 0;
    border: 0;
  }

  .agents-page .decision-path figcaption span,
  .agents-page .agents-control__index { font-size: 1rem; letter-spacing: 0; }

  .agents-page .decision-path figcaption strong { font-size: 1.6rem; line-height: 1.25; }

  .agents-page .decision-path ol { display: block; }

  .agents-page .decision-path li,
  .agents-page .decision-path li:nth-child(4n),
  .agents-page .decision-path li:nth-last-child(-n + 3) {
    display: grid;
    grid-template-columns: 2rem minmax(0, 1fr);
    align-items: baseline;
    gap: .5rem 1rem;
    min-height: 0;
    padding: 1.15rem 0;
    border: 0;
    border-top: 1px solid var(--hair);
  }

  .agents-page .decision-path li strong { font-size: 1.35rem; line-height: 1.3; }
  .agents-page .decision-path li p { grid-column: 2; font-size: 1.05rem; line-height: 1.5; }
  .agents-page .decision-path__note { max-width: var(--reading-measure); padding: 1.5rem 0; font-size: 1rem; }

  .agents-page .agents-control {
    display: block;
    margin-top: 3rem;
    border: 0;
  }

  .agents-page .agents-control::before { content: none; }

  .agents-page .agents-control article,
  .agents-page .agents-control article:nth-of-type(2) {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: .75rem;
    padding: 2rem 0;
    border: 0;
    border-top: 1px solid var(--hair);
  }

  .agents-page .agents-control h3 {
    max-width: 22ch;
    margin: 0 0 .5rem;
    font-size: 1.8rem;
    line-height: 1.2;
    text-wrap: pretty;
  }

  .agents-page .agents-control article > p:last-child { max-width: var(--reading-measure); }

  .agents-page .agents-board-intro,
  .agents-page .agents-end__copy {
    padding: 0;
    margin: 0 0 2rem;
    border: 0;
  }

  .agents-page .agents-questions {
    margin: 0;
    border: 0;
    display: block;
  }

  .agents-page .agents-questions li,
  .agents-page .agents-questions li:nth-child(odd) {
    padding: 1.4rem 0;
    border: 0;
    border-top: 1px solid var(--hair);
    font-size: 1.3rem;
    line-height: 1.4;
  }

  .agents-page .site-footer {
    max-width: calc(var(--reading-wide) + 2 * var(--reading-gutter));
    margin: 0 auto;
    padding: 3.5rem var(--reading-gutter) 2rem;
    border: 0;
    background: var(--paper);
    color: var(--ink);
  }

  .agents-page .footer__top {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 2rem;
    padding: 0 0 2.5rem;
    border: 0;
  }

  .agents-page .footer__top > *,
  .agents-page .footer__policies > section {
    padding: 0;
    border: 0;
    grid-column: auto;
  }

  .agents-page .footer__name { font-size: 2rem; letter-spacing: -.025em; }

  .agents-page .footer__label,
  .agents-page .footer__policies h2 {
    display: block;
    margin: 0 0 .7rem;
    color: var(--muted);
    font-size: 1rem;
    line-height: 1.5;
    letter-spacing: 0;
    text-transform: none;
  }

  .agents-page .footer__top p,
  .agents-page .footer__links,
  .agents-page .footer__links a {
    font-size: 1rem;
    line-height: 1.55;
    color: var(--ink);
  }

  .agents-page .footer__top .footer__name { font-size: 2rem; }
  .agents-page .footer__links { display: block; }
  .agents-page .footer__links a { display: inline-block; padding-block: .5rem; }

  .agents-page .footer__policies {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 2rem;
    padding: 2rem 0;
    border: 0;
    border-top: 1px solid var(--hair);
  }

  .agents-page .footer__policies p,
  .agents-page .footer__bottom {
    color: var(--muted);
    font-size: 1rem;
    line-height: 1.55;
  }

  .agents-page .footer__bottom { padding: 1rem 0 0; border: 0; }

  .agents-page .agents-end__copy {
    max-width: 40rem;
    font-size: clamp(1.45rem, 1.2rem + .8vw, 1.9rem);
    line-height: 1.4;
  }

  /* The error page keeps its language-aware navigation and recovery links. */
  body:has(> .not-found) { min-height: 100svh; }

  body > .not-found {
    display: block;
    max-width: calc(66rem + 2 * var(--reading-gutter));
    margin: 0 auto;
    padding: clamp(4rem, 9vw, 9rem) var(--reading-gutter);
    border: 0;
  }

  .not-found > div,
  .not-found > div:first-child {
    padding: 0;
    border: 0;
  }

  .not-found .section-label {
    color: var(--muted);
    font-size: 1rem;
    letter-spacing: 0;
    text-transform: none;
    border: 0;
    padding: 0;
    margin-bottom: 2rem;
  }

  .not-found h1 {
    max-width: 13ch;
    font-size: clamp(3rem, 1.75rem + 5.2vw, 7rem);
    line-height: 1.03;
    font-weight: 400;
    letter-spacing: -.035em;
  }

  .not-found .not-found__copy {
    max-width: 36rem;
    margin-top: 2.5rem;
    padding: 0;
    border: 0;
  }

  .not-found .hero__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1rem 2rem;
    margin-top: 2rem;
  }

  .not-found .button-link,
  .not-found .text-link {
    min-height: 2.75rem;
    display: inline-flex;
    align-items: center;
    padding: .4rem 0;
    border: 0;
    background: none;
    color: var(--signal);
    font-size: 1.125rem;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: none;
    text-decoration: underline;
    text-underline-offset: .25em;
    max-width: 100%;
    overflow-wrap: anywhere;
  }

  body:has(> .not-found) .edition > span { white-space: normal; }
}

@media screen and (min-width: 48rem) {
  .notes-list .note-entry {
    grid-template-columns: minmax(8rem, 1fr) minmax(0, 2.2fr) minmax(0, 2fr);
    column-gap: clamp(2rem, 4vw, 4rem);
    row-gap: 1rem;
    padding-block: 2.5rem;
    align-items: baseline;
  }
  .note-entry .date { grid-column: 1; grid-row: 1; }
  .note-entry .t { grid-column: 2; grid-row: 1 / span 2; }
  .note-entry .d { grid-column: 3; grid-row: 1; }
  .note-entry .go { grid-column: 3; grid-row: 2; }

  body:has(> .notes-header) .note-title .standfirst {
    margin-inline-start: auto;
    margin-inline-end: auto;
    margin-top: 2.5rem;
  }

  body:has(> .chrome) .row {
    grid-template-columns: minmax(10rem, 1fr) minmax(0, var(--reading-measure));
    gap: clamp(2rem, 5vw, 4rem);
  }

  body:has(> .chrome) .masthead .row > div:last-child { grid-column: 2; }

  .agents-page .hero__bottom,
  .agents-page .agents-statement,
  .agents-page .agents-note {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr);
    gap: clamp(2.5rem, 6vw, 6rem);
  }

  .agents-page .section-head {
    grid-template-columns: minmax(9rem, 1fr) minmax(0, 3fr);
    column-gap: 2.5rem;
  }

  .agents-page .decision-path li,
  .agents-page .decision-path li:nth-child(4n),
  .agents-page .decision-path li:nth-last-child(-n + 3) {
    grid-template-columns: 2rem minmax(10rem, .7fr) minmax(0, 1.5fr);
    column-gap: 2rem;
  }
  .agents-page .decision-path li p { grid-column: 3; }

  .agents-page .agents-control article,
  .agents-page .agents-control article:nth-of-type(2) {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr);
    column-gap: clamp(2.5rem, 6vw, 6rem);
    align-items: start;
  }
  .agents-page .agents-control__index { grid-column: 1; grid-row: 1; }
  .agents-page .agents-control h3 { grid-column: 1; grid-row: 2; }
  .agents-page .agents-control article > p:last-child { grid-column: 2; grid-row: 1 / span 2; }
  .agents-page .footer__top { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2.5rem; }
  .agents-page .footer__top .footer__name { grid-column: 1 / -1; }
  .agents-page .footer__policies { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3rem; }
}

@media screen and (max-width: 47.999rem) {
  .agents-page .site-header__inner,
  body:has(> .not-found) .site-header__inner {
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas: "identity languages" "site-nav site-nav";
    gap: .5rem 1rem;
    padding: 1.25rem 0 .5rem;
    min-height: 0;
  }
  body:has(> .not-found) .site-header__inner {
    grid-template-areas: "identity languages" "edition edition" "formats formats";
  }
  .agents-page .identity__name,
  body:has(> .not-found) .identity__name { font-size: 1.3rem; }
  .agents-page .identity__role,
  body:has(> .not-found) .identity__role { font-size: .875rem; }
  .agents-page .site-nav { justify-content: space-between; gap: .5rem 1rem; }
  .agents-page .language-nav a,
  body:has(> .not-found) .language-nav a { min-width: 2.15rem; padding-inline: .1rem; font-size: .9375rem; }
  .notes-footer .footer-nav {
    margin-left: 0;
    justify-content: flex-start;
    text-align: left;
  }
  .notes-footer address { width: 100%; }
  body:has(> .chrome) .chrome__meta { flex-wrap: wrap; gap: .25rem 1.25rem; }
}

/* Container measures respond to enlarged text as well as the viewport. */
@media screen {
  @container reading-shell (max-width: 60rem) {
    .agents-page .site-header__inner { grid-template-columns: minmax(0,1fr) auto; grid-template-areas: "identity languages" "site-nav site-nav"; }
    body:has(> .not-found) .site-header__inner { grid-template-columns: minmax(0,1fr) auto; grid-template-areas: "identity languages" "edition edition" "formats formats"; }
  }
  @container reading-shell (max-width: 18rem) {
    .agents-page .site-header__inner { grid-template-columns: minmax(0,1fr); grid-template-areas: "identity" "languages" "site-nav"; }
    body:has(> .not-found) .site-header__inner { grid-template-columns: minmax(0,1fr); grid-template-areas: "identity" "languages" "edition" "formats"; }
  }
  @container notes-index (max-width: 42rem) {
    .notes-list .note-entry { grid-template-columns: minmax(0, 1fr); }
    .note-entry :is(.date, .t, .d, .go) { grid-column: auto; grid-row: auto; }
  }

  @container reading-note (max-width: 42rem) {
    body:has(> .chrome) .row { grid-template-columns: minmax(0, 1fr); gap: 1rem; }
    body:has(> .chrome) .masthead .row > div:last-child { grid-column: auto; }
  }

  @container reading-framework (max-width: 42rem) {
    .agents-page .hero__bottom,
    .agents-page .section-head,
    .agents-page .agents-statement,
    .agents-page .agents-note,
    .agents-page .agents-control article,
    .agents-page .agents-control article:nth-of-type(2) {
      grid-template-columns: minmax(0, 1fr);
      gap: 1.5rem;
    }
    .agents-page .agents-control__index,
    .agents-page .agents-control h3,
    .agents-page .agents-control article > p:last-child { grid-column: auto; grid-row: auto; }
    .agents-page .decision-path li,
    .agents-page .decision-path li:nth-child(4n),
    .agents-page .decision-path li:nth-last-child(-n + 3) {
      grid-template-columns: 2rem minmax(0, 1fr);
      column-gap: 1rem;
    }
    .agents-page .decision-path li p { grid-column: 2; }
  }

  @container reading-framework (max-width: 10rem) {
    .agents-page .decision-path li,
    .agents-page .decision-path li:nth-child(4n),
    .agents-page .decision-path li:nth-last-child(-n + 3),
    .agents-page .agents-questions li {
      display: block;
      overflow-wrap: anywhere;
    }
    .agents-page .decision-path li span,
    .agents-page .agents-questions li::before { display: block; margin-bottom: .45rem; }
    .agents-page .decision-path li p { margin-top: .45rem; }
  }
}

@media screen and (prefers-color-scheme: dark) {
  body:has(> .notes-header),
  body:has(> .chrome),
  body.agents-page,
  body:has(> .not-found) {
    --paper: #202520;
    --ink: #eeeee6;
    --signal: #e8b4c1;
    --muted: #bfc2b8;
    --hair: #485047;
  }
}

@media screen and (prefers-contrast: more) {
  body:has(> .notes-header),
  body:has(> .chrome),
  body.agents-page,
  body:has(> .not-found) {
    --muted: var(--ink);
    --hair: var(--ink);
  }
}

@media screen and (forced-colors: active) {
  body:has(> .notes-header),
  body:has(> .chrome),
  body.agents-page,
  body:has(> .not-found) {
    --paper: Canvas;
    --ink: CanvasText;
    --signal: LinkText;
    --muted: CanvasText;
    --hair: CanvasText;
  }
}
/* The publication shares the practice's type hierarchy, with the writing first. */
@media screen {
  body:has(> .notes-header), body:has(> .chrome), body.agents-page, body:has(> .not-found) {
    --paper: #f5f4ef; --ink: #1c2b2a; --signal: #284d69; --muted: #5b6664; --hair: #cbd1ca;
    --sans: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  }
  .notes-header, body:has(> .chrome) .chrome { padding-block: 1.2rem; }
  .notes-header .back-link, body:has(> .chrome) .chrome > a { font-size: 1.5rem; letter-spacing: -.025em; }
  .notes-header .lang-btn, body:has(> .notes-header) .notes-header .command-launch, body:has(> .chrome) .chrome .command-launch,
  .agents-page .site-header .command-launch, .note-breadcrumb, .note-entry .date, .note-entry .go,
  .note-title .date, .note-title .kicker, .archive-toolbar, .journal-kicker, .notes-footer .footer-nav,
  .notes-footer address { font-family: var(--sans); font-size: .8125rem; letter-spacing: 0; }
  .notes-masthead--journal { grid-template-columns: minmax(0,1.1fr) minmax(0,1fr); grid-template-rows: auto auto; align-items: end; gap: 1rem 4rem; padding-top: 3.5rem; margin-bottom: 3rem; }
  .notes-masthead--journal .journal-kicker { margin-bottom: .5rem; }
  .notes-masthead--journal h1 { grid-column: 1; grid-row: 2; margin: 0; font-size: clamp(3.5rem,6vw,6rem); line-height: 1; color: var(--ink); }
  .notes-masthead--journal .standfirst { grid-column: 2; grid-row: 2; max-width: 37ch; margin: 0; font: 400 1rem/1.6 var(--sans); color: var(--muted); }
  .note-entry .t { max-width: 30ch; }
  .note-entry .d { font-size: 1.125rem; }
  @container (max-width: 47.999rem) {
    .notes-masthead--journal { display: block; padding-top: 2rem; margin-bottom: 2rem; }
    .notes-masthead--journal .journal-kicker { margin-bottom: 1rem; }
    .notes-masthead--journal h1 { font-size: clamp(3rem,12cqw,4.5rem); }
    .notes-masthead--journal .standfirst { margin-top: 1.25rem; font-size: .9375rem; }
    .notes-header { gap: .5rem; }
    .notes-header .back-link { font-size: 1.3rem; }
    .notes-header .lang-btn { font-size: .75rem; }
  }
  @media (prefers-color-scheme: dark) {
    body:has(> .notes-header), body:has(> .chrome), body.agents-page, body:has(> .not-found) { --paper: #101d20; --ink: #edeee6; --signal: #adc6d7; --muted: #abbab5; --hair: #3b4a4c; }
  }
}

/* A single axis for the essay, with useful furniture in the margin. */
@media screen {
  body.reading-page .note-breadcrumb { margin-top: 1rem; }
  .reading-layout { display: block; margin-top: 1.5rem; }
  .reading-index { --reader-wide: 0; max-width: 42rem; margin: 0 auto 2rem; font: 400 .8125rem/1.5 var(--sans); }
  .reading-index details { border-block: 1px solid var(--hair); }
  .reading-index summary { cursor: pointer; padding: .75rem 0; min-height: 44px; color: var(--muted); }
  .reading-index nav { display: grid; padding: .25rem 0 .75rem; }
  .reading-index nav a { display: flex; align-items: center; min-height: 44px; padding: .4rem 0; color: var(--muted); text-decoration: none; overflow-wrap: anywhere; }
  .reading-index nav a:hover, .reading-index nav a[aria-current] { color: var(--ink); text-decoration: underline; text-underline-offset: .3em; }
  body.reading-page article.note { max-width: 42rem; margin-inline: auto; padding-top: 0; }
  body.reading-page .note-title { max-width: none; margin: 0 0 2.5rem; }
  body.reading-page .note-title .date { font: 400 .8125rem/1.6 var(--sans); margin: 0 0 1.25rem; }
  body.reading-page .note-title h1 { max-width: none; margin: 0; font-size: clamp(2.75rem, 2rem + 3vw, 4.5rem); line-height: 1.05; letter-spacing: -.035em; text-wrap: balance; }
  body.reading-page .note-title .standfirst { max-width: 37rem; margin: 1.5rem 0 0; font-size: clamp(1.375rem, 1.1rem + .7vw, 1.625rem); line-height: 1.45; }
  body.reading-page .prose { margin-inline: 0; max-width: 37rem; }
  body.reading-page .prose > * + * { margin-top: 1.15em; }
  body.reading-page .prose :is(h2,h3) { margin-top: 2.5rem; font-size: clamp(1.625rem, 1.4rem + .5vw, 1.875rem); line-height: 1.2; }
  body.reading-page .prose :is(h2,h3) + * { margin-top: .875rem; }
  body.reading-page .footnotes { max-width: 37rem; margin: 3rem 0 0; }
  body.reading-page .prose h2 .section-link,
  body:has(> .chrome) .sec-head .section-link,
  .agents-page .section-head h2 .section-link { color: inherit; text-decoration: none; }
  body.reading-page .prose h2 .section-link:hover,
  body:has(> .chrome) .sec-head .section-link:hover,
  .agents-page .section-head h2 .section-link:hover { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .15em; }
  .reader-tools { width: 100%; max-width: 64rem; margin: 4rem auto 0; color: var(--ink); font: 400 .8125rem/1.6 var(--sans); }
  .reader-tools__inner { border-top: 1px solid var(--hair); padding-top: 1.5rem; }
  .reader-tools h2 { margin: 0 0 .6rem; font: inherit; color: var(--muted); }
  .reader-citation { margin: 0; }
  .reader-citation summary { cursor: pointer; min-height: 44px; padding-block: .65rem; }
  .reader-citation p { margin: .5rem 0 1rem; max-width: 37rem; overflow-wrap: anywhere; }
  .reader-citation a { color: var(--signal); text-underline-offset: .2em; }
  .reader-actions { display: flex; flex-wrap: wrap; gap: 0 1.5rem; }
  .reader-actions :is(a,button) { display: inline-flex; align-items: center; gap: .5rem; min-height: 44px; max-width: 100%; margin: 0; padding: 0; border: 0; background: none; color: var(--signal); font: inherit; cursor: pointer; text-decoration: none; }
  .reader-actions [hidden] { display: none; }
  .reader-actions :is(a,button):hover { text-decoration: underline; text-underline-offset: .3em; }
  .reader-status { min-height: 1.6em; margin: .5rem 0 0; color: var(--muted); }
  body.reading-page .reader-tools { max-width: 42rem; }
  .agents-page > .reader-tools { width: calc(100% - 2 * var(--pad)); }
  .interface-page .interface-open { display: inline-flex; align-items: center; justify-content: space-between; gap: 3rem; min-height: 48px; margin-top: 1.5rem; padding: .75rem 1rem; border: 1px solid var(--ink); border-radius: 0; background: var(--ink); color: var(--paper); font: 400 .9375rem/1.5 var(--sans); cursor: pointer; }
  .interface-page .interface-open[hidden] { display: none; }
  .interface-page .interface-open:hover { background: var(--signal); }
  .interface-page .interface-doc { max-width: 64rem; }
  .interface-page .interface-doc > header { margin-bottom: 3rem; }
  .interface-page .interface-doc > section { margin-top: 3rem; }
  @container (min-width: 64rem) {
    body.reading-page .reading-layout,
    body.reading-page .reader-tools { display: grid; grid-template-columns: 14rem minmax(0,42rem) minmax(0,1fr); column-gap: 4rem; max-width: var(--reading-wide); }
    body.reading-page .reading-layout { margin-top: 2.5rem; }
    body.reading-page article.note { grid-column: 2; width: 100%; }
    .reading-index { --reader-wide: 1; grid-column: 1; align-self: start; position: sticky; top: calc(var(--navigation-height, 0px) + 2rem); width: 100%; margin: 0; max-height: calc(100svh - var(--navigation-height, 0px) - 4rem); overflow: auto; }
    .reading-index details { border-bottom: 0; }
    .reading-index summary { color: var(--muted); }
    body.reading-page .reader-tools__inner { grid-column: 2; max-width: 37rem; }
  }
  @container (max-width: 22rem) { body.reading-page .note-title h1 { font-size: 2.5rem; } }
  /* At enlarged, narrow reading measures, keep breaks at syllable boundaries. */
  @container (max-width: 12rem) {
    main :is(h1, h2, h3) {
      -webkit-hyphens: auto;
      hyphens: auto;
      hyphenate-limit-chars: 6 3 3;
    }
  }
}


@media screen { .agents-page main :is(p,li) { overflow-wrap: anywhere; } }

@media screen {
  .interface-entry { display: flex; flex-wrap: wrap; gap: 0 1rem; margin-bottom: 1.25rem; }
  .interface-page .interface-open--cli { background: transparent; color: var(--ink); }
  .interface-page .interface-open--cli:hover { color: var(--paper); }
}
