/* Research note article styles. Lifted from the inline block in
   research/australia-and-the-agent-economy.html, which is live and keeps its own copy,
   so that page is never touched by edits here. Header, footer and shell chrome are
   stripped: arkna.css owns those and loads first. Article tokens are re-declared on
   .article rather than :root so nothing leaks into the rest of the site. */

.article {
  --serif: "Newsreader", Georgia, "Times New Roman", serif;
  --card: #ffffff;
  --hair-strong: #d3d5d9;
  --blue-bright: #4f6bff;
  --measure: 68ch;
  --reading-column: 700px;
  /* Retired 2026-08-12: figures and evidence blocks now share --reading-column,
     so the page has one set of left and right edges. */
  --sans: "Schibsted Grotesk", Arial, sans-serif;
  font-family: var(--sans);
  font-size: 17px;
  line-height: 1.68;
  color: var(--ink);
}
.article,
.article .prose,
.article .prose p,
.article .closing,
.article .note-lead {
  font-family: var(--serif);
  font-size: 19.5px;
  line-height: 1.62;
}
.article a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.article a:hover { color: var(--blue); }

:where(a, [tabindex]):focus-visible { outline: 3px solid var(--blue-bright); outline-offset: 3px; }
/* gap is 18.2% of the square, radius 27.3%: deliberately different numbers, because dark
       squares on a light ground appear to shrink. Canon lives in arkna.css; restated here
       because this page predates it and carries its own styles. */
    .brand__mark { display: grid; grid-template-columns: repeat(2, 11px); grid-template-rows: repeat(2, 11px); gap: 2px; }
/* The footer carries its own top padding above its rule, so this only has to supply
   the gap between the last line and that rule. It was 128px, which stacked into a void.
   Enough to breathe, not enough to look like the page ended early. */
.article { padding: clamp(58px, 7vw, 88px) 0 clamp(40px, 5vw, 56px); }
.article-head { padding-bottom: 36px; border-bottom: 1px solid var(--hair); }
.kicker { margin: 0 0 18px; color: var(--ink-3); font-size: 12px; font-weight: 600; letter-spacing: .01em; }
h1 {
      max-width: 900px;
      margin: 0 0 22px;
      font-size: clamp(44px, 5.4vw, 70px);
      font-weight: 600;
      line-height: .99;
      letter-spacing: -.048em;
    }
.dek { max-width: 740px; margin: 0 0 20px; color: var(--ink-2); font-size: clamp(19px, 1.45vw, 21px); line-height: 1.52; }
.byline { margin: 0; color: var(--ink-3); font-size: 12.5px; }
.abstract { padding: 34px 0 38px; border-bottom: 1px solid var(--hair); }
.abstract__label, .section-label { display: block; margin: 0 0 10px; color: var(--ink-3); font-size: 13px; font-weight: 600; }
.abstract p { max-width: var(--measure); margin: 0; color: var(--ink-2); font-size: 17px; line-height: 1.66; }
.abstract strong { color: var(--ink); font-weight: 600; }
.contents { display: grid; grid-template-columns: 180px 1fr; gap: 32px; padding: 30px 0; border-bottom: 1px solid var(--hair); }
.contents p { margin: 0; color: var(--ink-3); font-size: 13px; font-weight: 600; }
.contents ol { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px 28px; margin: 0; padding: 0; list-style: none; counter-reset: contents; }
.contents li { counter-increment: contents; font-size: 14px; line-height: 1.4; }
.contents a { text-decoration: none; color: var(--ink-2); }
.contents a::before { content: "0" counter(contents) " "; color: var(--ink-3); font-family: var(--sans); font-size: 11px; font-variant-numeric: tabular-nums; }
.section { padding: clamp(68px, 8vw, 96px) 0; border-bottom: 1px solid var(--hair); }
.section-head { display: block; margin-bottom: 34px; }
.section-number { display: block; margin-bottom: 10px; color: var(--ink-3); font-family: var(--sans); font-size: 12px; font-weight: 500; font-variant-numeric: tabular-nums; }
.section-number:empty { display: none; }
h2 { max-width: 800px; margin: 0; font-size: clamp(26px, 2.4vw, 30px); font-weight: 600; line-height: 1.06; letter-spacing: -.037em; }
h3 { margin: 0 0 8px; font-size: 20px; font-weight: 600; line-height: 1.25; letter-spacing: -.02em; }
.prose { margin-left: 0; max-width: var(--measure); }
.prose p { margin: 0 0 20px; }
.prose p:last-child { margin-bottom: 0; }
.prose a, .source-list a { color: var(--blue); }
.prose strong { font-weight: 600; }
.article .prose code,
.article .note-lead code {
  font-family: "IBM Plex Mono", ui-monospace, SFMono-Regular, Consolas, monospace;
  font-size: .76em;
  font-weight: 500;
  line-height: inherit;
  letter-spacing: -.015em;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
}
.finding-figure { margin-top: 36px; }
.finding { margin: 0; border-top: 1px solid var(--ink); }
.finding__row { display: grid; grid-template-columns: 92px minmax(0, 1fr) 120px; gap: 24px; align-items: start; padding: 18px 0; border-bottom: 1px solid var(--hair); }
.finding__id { color: var(--ink-3); font-family: var(--sans); font-size: 11px; font-weight: 500; font-variant-numeric: tabular-nums; }
.finding__text strong { display: block; margin-bottom: 5px; font-weight: 600; line-height: 1.35; }
.finding__text span { display: block; color: var(--ink-2); font-size: 14px; line-height: 1.5; }
.confidence { color: var(--ink-3); font-family: var(--sans); font-size: 11px; text-align: right; }
.confidence b { display: block; margin-bottom: 3px; color: var(--ink-2); font-family: var(--sans); font-size: 12px; font-weight: 600; }
.classification-figure { margin-top: 38px; }
.classification { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; margin: 0; background: var(--hair); border: 1px solid var(--hair); }
.classification article { padding: 24px; background: var(--card); }
.classification .tag { display: block; margin-bottom: 10px; color: var(--blue); font-family: var(--sans); font-size: 11px; font-weight: 600; }
.classification h3 { font-size: 17px; }
.classification p { margin: 0; color: var(--ink-2); font-size: 14px; line-height: 1.55; }
.metrics { display: grid; grid-template-columns: repeat(3, 1fr); margin: 0; border-top: 1px solid var(--ink); border-bottom: 1px solid var(--hair); }
.metric { padding: 24px; }
.metric + .metric { padding-left: 24px; border-left: 1px solid var(--hair); }
.metric__value { display: block; margin-bottom: 4px; font-size: 30px; font-weight: 600; line-height: 1.1; letter-spacing: -.035em; font-variant-numeric: tabular-nums; }
.metric__label { display: block; min-height: 48px; color: var(--ink-2); font-size: 13px; line-height: 1.45; }
.metric a { display: inline-block; margin-top: 10px; color: var(--blue); font-size: 12px; }
.policy-brief { margin: 42px 0 0; border-top: 1px solid var(--ink); }
.policy-brief__intro { padding: 22px 0; border-bottom: 1px solid var(--hair); }
.policy-brief__intro h3 { margin-bottom: 8px; font-size: 22px; }
.policy-brief__intro p { max-width: var(--measure); margin: 0; color: var(--ink-2); font-size: 14px; line-height: 1.58; }
.policy-row { display: grid; grid-template-columns: 116px minmax(0, 1fr); gap: 22px; padding: 16px 0; border-bottom: 1px solid var(--hair); }
.policy-row__source { color: var(--ink-3); font-family: var(--sans); font-size: 11px; font-weight: 600; }
.policy-row p { margin: 0; color: var(--ink-2); font-size: 14px; line-height: 1.55; }
.policy-row a { color: var(--blue); }
.evidence-figure { margin-top: 36px; }
.table-wrap { overflow-x: auto; margin: 0; border-top: 1px solid var(--ink); -webkit-overflow-scrolling: touch; }
.table-hint { display: none; margin: -4px 0 10px; color: var(--ink-3); font-size: 12px; }
.table-wrap:focus-visible { outline: 3px solid var(--blue-bright); outline-offset: 3px; }
table { width: 100%; min-width: 720px; border-collapse: collapse; font-size: 14px; line-height: 1.5; }
th { padding: 12px 18px 12px 0; border-bottom: 1px solid var(--hair-strong); color: var(--ink-2); font-size: 12px; font-weight: 600; text-align: left; vertical-align: bottom; }
td { padding: 16px 18px 16px 0; border-bottom: 1px solid var(--hair); vertical-align: top; }
td:first-child { width: 22%; font-weight: 600; }
td a { color: var(--blue); }
.not-established { color: var(--ink-3); }
figure { margin: 42px 0 0; }
.figure-number { margin: 0 0 7px; color: var(--ink-3); font-family: var(--sans); font-size: 12.5px; font-weight: 500; font-variant-numeric: tabular-nums; }
.figure-title { margin: 0 0 18px; font-size: 17px; font-weight: 600; line-height: 1.35; }
figcaption { max-width: var(--measure); margin-top: 15px; color: var(--ink-2); font-size: 13px; line-height: 1.55; }
figcaption a { color: var(--blue); }
.figure-source { display: block; margin-top: 5px; color: var(--ink-3); font-size: 11px; }
.source-extract { display: block; width: 100%; height: auto; border: 1px solid var(--hair); background: #fff; }
.source-extract--portrait { max-width: 820px; }
.source-extract--chart { max-width: 840px; }
.exposure-model { display: grid; grid-template-columns: 1fr 1.15fr 1.7fr; border-top: 1px solid var(--ink); border-bottom: 1px solid var(--hair); background: var(--card); }
.exposure-col { min-width: 0; padding: 20px 18px; }
.exposure-col + .exposure-col { border-left: 1px solid var(--hair); }
.exposure-col__head { min-height: 48px; margin-bottom: 12px; color: var(--ink); font-family: var(--sans); font-size: 14px; font-weight: 600; line-height: 1.35; }
.exposure-col p { margin: 0; padding: 8px 0; border-top: 1px solid var(--hair); font-size: 13px; line-height: 1.4; }
.exposure-col--control { background: var(--blue-soft); }
.exposure-col--control .exposure-col__head { color: var(--blue); }
.case-study { border-top: 1px solid var(--ink); border-bottom: 1px solid var(--hair); background: var(--card); }
.case-row { display: grid; grid-template-columns: 126px minmax(0, 1fr); }
.case-row + .case-row { border-top: 1px solid var(--hair-strong); }
.case-label { padding: 20px 16px; color: var(--ink-2); font-family: var(--sans); font-size: 12px; font-weight: 600; line-height: 1.45; }
.case-row--reported .case-label { color: var(--blue); }
.case-path { display: grid; grid-template-columns: repeat(3, 1fr); border-left: 1px solid var(--hair); }
.case-row--reported .case-path { grid-template-columns: repeat(5, 1fr); }
.case-step { position: relative; min-width: 0; padding: 20px 14px 22px; }
.case-step + .case-step { border-left: 1px solid var(--hair); }
.case-step__id { display: block; margin-bottom: 14px; color: var(--ink-3); font-family: var(--sans); font-size: 10px; font-weight: 500; font-variant-numeric: tabular-nums; }
.case-row--reported .case-step__id { color: var(--blue); }
.case-step h3 { margin-bottom: 5px; font-size: 14px; line-height: 1.25; }
.case-step p { margin: 0; color: var(--ink-2); font-size: 11.5px; line-height: 1.45; }
.implications { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; margin: 36px 0 0; }
.implication { padding-top: 16px; border-top: 1px solid var(--ink); }
.implication__id { display: block; margin-bottom: 14px; color: var(--ink-3); font-family: var(--sans); font-size: 11px; font-weight: 500; font-variant-numeric: tabular-nums; }
.implication h3 { font-size: 18px; }
.implication p { margin: 0; color: var(--ink-2); font-size: 14px; line-height: 1.55; }
.implication a { color: var(--blue); }
.actions { margin: 36px 0 0; padding: 0; list-style: none; counter-reset: actions; border-top: 1px solid var(--ink); }
.actions li { display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: 18px; padding: 17px 0; border-bottom: 1px solid var(--hair); counter-increment: actions; }
.actions li::before { content: "0" counter(actions); color: var(--blue); font-family: var(--sans); font-size: 11px; font-weight: 600; padding-top: 3px; font-variant-numeric: tabular-nums; }
.actions strong { display: block; margin-bottom: 3px; font-size: 16px; font-weight: 600; }
.actions span { display: block; color: var(--ink-2); font-size: 14px; line-height: 1.5; }
.future-table td:first-child { width: 20%; }
.future-table .preferred td { background: var(--blue-soft); }
.future-table .preferred td:first-child { color: var(--blue); }
.sources { padding-top: clamp(68px, 8vw, 96px); }
.source-list { margin: 34px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--ink); }
.source { display: grid; grid-template-columns: 54px minmax(0, 1fr) 220px; gap: 18px; padding: 16px 0; border-bottom: 1px solid var(--hair); }
.source__id { color: var(--ink-3); font-family: var(--sans); font-size: 11px; font-weight: 500; font-variant-numeric: tabular-nums; }
.source__title { font-size: 14px; line-height: 1.45; }
.source__title a { color: var(--ink); }
.source__type { color: var(--ink-3); font-size: 12px; line-height: 1.4; }
.method { max-width: 92ch; margin: 22px 0 0; color: var(--ink-3); font-size: 11.5px; line-height: 1.5; }


    @media (max-width: 900px) {
.contents { grid-template-columns: 130px 1fr; gap: 22px; }
.prose, .policy-brief, figure, .implications, .actions, .source-list, .method { margin-left: 0; }
.contents ol { grid-template-columns: repeat(2, 1fr); }
.classification, .implications { grid-template-columns: 1fr; gap: 1px; }
.implication { padding: 18px 0; border-top: 1px solid var(--hair); }
.exposure-model { grid-template-columns: repeat(2, 1fr); }
.exposure-col:nth-child(3) { border-left: 0; border-top: 1px solid var(--hair); }
.exposure-col:nth-child(4) { border-top: 1px solid var(--hair); }
.case-row { grid-template-columns: 106px minmax(0, 1fr); }
.case-path, .case-row--reported .case-path { grid-template-columns: 1fr; }
.case-step + .case-step { border-left: 0; border-top: 1px solid var(--hair); }
.case-step { display: grid; grid-template-columns: 38px 140px 1fr; gap: 12px; align-items: start; }
.case-step__id { margin-top: 3px; }
.source { grid-template-columns: 44px minmax(0, 1fr); }
.source__type { grid-column: 2; }
}


    @media (max-width: 640px) {
.article { padding-top: 46px; }
h1 { font-size: clamp(40px, 12vw, 54px); }
.contents { grid-template-columns: 1fr; gap: 10px; }
.contents ol { grid-template-columns: 1fr; gap: 8px; }
.prose, .policy-brief, figure, .implications, .actions, .source-list, .method { margin-left: 0; }
.section { padding: 60px 0; }
.section-number { padding-top: 0; }
.finding__row { grid-template-columns: 50px 1fr; gap: 14px; }
.confidence { grid-column: 2; text-align: left; }
.confidence b { display: inline; margin-right: 6px; }
.classification, .metrics { grid-template-columns: 1fr; }
.metric + .metric { padding-left: 0; border-left: 0; border-top: 1px solid var(--hair); }
.metric__label { min-height: 0; }
.exposure-model { grid-template-columns: 1fr; }
.exposure-col + .exposure-col { border-left: 0; border-top: 1px solid var(--hair); }
.policy-row { grid-template-columns: 1fr; gap: 5px; }
.case-row { grid-template-columns: 1fr; }
.case-label { border-bottom: 1px solid var(--hair); }
.case-path { border-left: 0; }
.case-step { grid-template-columns: 32px 102px 1fr; }
.source { grid-template-columns: 38px 1fr; }
}


    @media print {
.site-header, .contents, .draft-badge { display: none; }
.article { padding: 0; }
h1 { font-size: 36pt; }
h2 { font-size: 22pt; }
.section { padding: 34px 0; break-inside: avoid; }
.finding-figure, .classification-figure, .evidence-figure, .source-extract, .exposure-model, .case-study, .metrics, .policy-brief { break-inside: avoid; }
}
/* Gauntlet edition: one Arkna type system, restrained research hierarchy. */
    body { font-size: 17.5px; line-height: 1.66; }
h1 { max-width: 820px; }
.article-head { padding-bottom: 42px; }
.dek { max-width: 780px; }
.prose { max-width: 66ch; }
.prose p { max-width: 66ch; }
.section { padding: clamp(64px, 7vw, 88px) 0; }
figure { margin-top: 46px; padding-top: 15px; border-top: 1px solid var(--ink); }
.figure-number { margin-bottom: 6px; font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
.figure-title { margin-bottom: 18px; font-size: 19px; font-weight: 600; }
figcaption { font-size: 13px; }
.brief { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; margin: 34px 0 0; background: var(--hair); border: 1px solid var(--hair); }
.brief article { padding: 22px; background: var(--card); }
.brief span { display: block; margin-bottom: 9px; color: var(--blue); font-size: 11px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
.brief strong { display: block; margin-bottom: 7px; font-size: 15px; line-height: 1.35; }
.brief p { margin: 0; color: var(--ink-2); font-size: 13.5px; line-height: 1.5; }
.evidence-table td:first-child { width: 18%; }
.evidence-table td:nth-child(2) { width: 28%; }
.assessment { display: inline-block; padding: 3px 7px; border: 1px solid var(--hair-strong); color: var(--ink-2); font-size: 10.5px; font-weight: 600; white-space: nowrap; }
.assessment--strong { border-color: #aeb9f2; color: var(--blue); background: var(--blue-soft); }
.reading-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--hair); border: 1px solid var(--hair); }
.reading-grid article { padding: 21px; background: var(--card); }
.reading-grid span { display: block; margin-bottom: 12px; color: var(--ink-3); font-size: 11px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
.reading-grid strong { display: block; margin-bottom: 7px; font-size: 15px; line-height: 1.35; }
.reading-grid p { margin: 0; color: var(--ink-2); font-size: 13px; line-height: 1.5; }
.context-facts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin: 38px 0 0; }
.context-fact { padding-top: 15px; border-top: 1px solid var(--ink); }
.context-fact strong { display: block; margin-bottom: 7px; font-size: 17px; line-height: 1.35; }
.context-fact p { margin: 0; color: var(--ink-2); font-size: 13.5px; line-height: 1.5; }
.context-fact a { color: var(--blue); }
.capability-table td:first-child { width: 18%; }
.capability-table td:nth-child(2), .capability-table td:nth-child(3) { width: 41%; }
.capability-table td:nth-child(3) { background: var(--blue-soft); }
.operating-standard { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--hair); border: 1px solid var(--hair); }
.standard-step { padding: 22px; background: var(--card); }
.standard-step__id { display: block; margin-bottom: 14px; color: var(--blue); font-size: 11px; font-weight: 600; }
.standard-step h3 { margin-bottom: 9px; font-size: 18px; }
.standard-step p { margin: 0 0 12px; color: var(--ink-2); font-size: 13px; line-height: 1.5; }
.standard-step b { display: block; color: var(--ink); font-size: 12px; line-height: 1.45; }
.posture-table td:first-child { width: 22%; }
.posture-table td:nth-child(2) { width: 40%; }
.posture-table td:nth-child(3) { width: 38%; color: var(--ink-2); }
.board-table td:first-child { width: 22%; font-weight: 600; }
.board-table td:nth-child(2) { width: 48%; }
.board-table td:nth-child(3) { color: var(--ink-3); }
.closing { margin: 44px 0 0; padding: 26px 0 0; border-top: 1px solid var(--ink); max-width: 66ch; }
.closing p { margin: 0 0 14px; font-size: 19px; line-height: 1.5; letter-spacing: -.01em; }
.closing p:last-child { margin-bottom: 0; }


    @media (max-width: 900px) {
.context-facts, .closing { margin-left: 0; }
.brief { grid-template-columns: 1fr; }
.reading-grid, .operating-standard { grid-template-columns: repeat(2, 1fr); }
.context-facts { grid-template-columns: 1fr; gap: 22px; }
}


    @media (max-width: 640px) {
.context-facts, .closing { margin-left: 0; }
.reading-grid, .operating-standard { grid-template-columns: 1fr; }
.brief article, .reading-grid article, .standard-step { padding: 18px; }
table { min-width: 760px; }
.table-hint { display: block; }
.evidence-figure .table-hint { display: none; }
.evidence-figure .table-wrap { overflow: visible; }
.evidence-table { min-width: 0; }
.evidence-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.evidence-table tbody, .evidence-table tr, .evidence-table td { display: block; width: 100% !important; }
.evidence-table tr { padding: 14px 0; border-bottom: 1px solid var(--hair-strong); }
.evidence-table td { display: grid; grid-template-columns: 102px minmax(0, 1fr); gap: 14px; padding: 8px 0; border: 0; }
.evidence-table td::before { content: attr(data-label); color: var(--ink-3); font-size: 11px; font-weight: 600; line-height: 1.35; }
}
/* Publication polish: one Arkna type system, consistent geometry, less editorial furniture. */
    .kicker, .contents { display: none; }
.article-head { padding-top: 6px; }
.brief { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 36px; }
.brief article { padding: 30px 32px; }
.brief-note { grid-column: 1 / -1; margin: 0; padding: 14px 22px 16px; border-top: 1px solid var(--hair); background: var(--paper); color: var(--ink-3); font-size: 12.5px; line-height: 1.5; }
.table-wrap { border: 1px solid var(--hair); border-top-color: var(--ink); background: var(--card); }
th { padding: 17px 24px; color: var(--ink); background: var(--paper); font-size: 14px; font-weight: 700; line-height: 1.35; }
td { padding: 21px 24px; }
th + th, td + td { border-left: 1px solid var(--hair); }
.operating-standard { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.standard-step { min-height: 240px; padding: 32px; }
.standard-step__id { margin-bottom: 16px; }
.standard-step p { margin-bottom: 16px; }
.metrics-figure .source-extract { margin-top: 26px; }
.cost-table th:not(:first-child), .cost-table td:not(:first-child) { text-align: right; font-variant-numeric: tabular-nums; }
.cost-table th:last-child, .cost-table td:last-child { background: var(--blue-soft); font-weight: 600; }
.publication-notice { max-width: 78ch; margin: 46px 0 0; padding-top: 20px; border-top: 1px solid var(--hair-strong); color: var(--ink-3); }
.publication-notice h2 { margin: 0 0 8px; color: var(--ink-2); font-size: 13px; font-weight: 700; line-height: 1.35; letter-spacing: 0; }
.publication-notice p { margin: 0; font-size: 11.5px; line-height: 1.55; }


    @media (max-width: 900px) {
.publication-notice { margin-left: 0; }
}


    @media (max-width: 640px) {
.brief { grid-template-columns: 1fr; }
.brief article { padding: 24px; }
.operating-standard { grid-template-columns: 1fr; }
.standard-step { min-height: 0; padding: 24px; }
.publication-notice { margin-left: 0; }
}
/* ---- quiet pass: serif body, stripped chrome, single figure treatment ---- */
:root{ --serif:"Newsreader",Georgia,"Times New Roman",serif; --muted:#666c75; }
h1{ font-family:var(--serif) !important; font-weight:500 !important; letter-spacing:-.012em !important; }
h2,h3{ font-family:var(--serif) !important; font-weight:600 !important; }
h2{ font-size:clamp(26px,2.4vw,30px) !important; line-height:1.2 !important; letter-spacing:-.018em !important; }
.prose p{ max-width:34em; }
.byline{ font-family:var(--sans); font-size:13.5px; letter-spacing:.01em; }
/* strip the chrome */
.kicker,.contents,.header-meta,.draft-badge{ display:none !important; }
.article-head{ padding-bottom:0 !important; border-bottom:0 !important; }
.dek{ font-family:var(--serif) !important; font-size:20px !important; color:var(--ink) !important;
      max-width:34em; margin-top:18px !important; }
/* executive panel */
.brief{ background:transparent !important; border:0 !important;
        border-top:1px solid var(--ink) !important; gap:0 !important; margin-top:40px !important; }
.brief article{ background:transparent !important; padding:18px 24px 4px 0 !important;
        border-right:1px solid var(--hair); }
.brief article:last-child{ border-right:0; padding-right:0 !important; }
.brief span{ font-family:var(--sans); color:var(--muted) !important; }
.brief strong{ font-family:var(--serif); font-size:16.5px; }
.brief p{ font-family:var(--sans); font-size:13.5px; color:var(--muted) !important; }
/* one figure treatment */
figure,.metrics,.operating-standard,.context-facts{ background:transparent !important; box-shadow:none !important; }
figure{ border-top:1px solid var(--ink) !important; padding-top:14px !important; margin:46px 0 !important; }
.figure-number{ font-family:var(--sans) !important; font-size:11px !important; font-weight:600 !important;
  letter-spacing:.1em; text-transform:uppercase; color:var(--muted) !important; }
.figure-title{ font-family:var(--serif) !important; font-weight:600 !important; font-size:18.5px !important; }
figcaption{ font-family:var(--sans); font-size:13.5px; line-height:1.5; color:var(--muted) !important; }
.figure-source{ font-family:var(--sans); font-size:12px !important; color:var(--muted) !important; margin-top:8px !important; }
.table-hint{ font-family:var(--sans); }
.table-wrap{ border:0 !important; background:transparent !important; }
/* no horizontal scrolling, ever: tables fit the column or they stack */
.table-wrap table{ min-width:0 !important; width:100% !important; }
.table-wrap{ overflow-x:visible !important; }
.table-hint{ display:none !important; }
/* percentage widths must include padding, or the table exceeds its container */
.table-wrap table, .table-wrap th, .table-wrap td{ box-sizing:border-box; }
.assessment{ white-space:normal !important; display:inline-block; max-width:100%; }
/* below this width no table can be read as a grid: stack every one into labelled rows */
@media (max-width:760px){
  .table-wrap table{ table-layout:auto !important; }
  .table-wrap thead{ position:absolute; width:1px; height:1px; overflow:hidden;
    clip:rect(0 0 0 0); white-space:nowrap; }
  .table-wrap tbody, .table-wrap tr, .table-wrap td{ display:block; width:100% !important; }
  .table-wrap tr{ padding:14px 0; border-bottom:1px solid var(--hair-strong); }
  .table-wrap tr:last-child{ border-bottom:0; }
  .table-wrap td{ display:grid !important; grid-template-columns:112px minmax(0,1fr);
    gap:12px; padding:7px 0 !important; border:0 !important; background:transparent !important; }
  .table-wrap td::before{ content:attr(data-label); color:var(--muted);
    font-size:11px; font-weight:600; line-height:1.4; }
  .operating-standard{ grid-template-columns:1fr !important; }
  .standard-step:nth-child(2n){ padding-left:0 !important; }
}
.cost-table th:last-child, .cost-table td:last-child{ background:#f1f1ec !important; }
table,th,td{ font-family:var(--sans) !important; }
th{ color:var(--muted) !important; }
.capability-table td:nth-child(3){ background:#f1f1ec !important; }
.cost-table td{ font-variant-numeric:tabular-nums; }
.assessment{ font-family:var(--sans) !important; background:transparent !important;
  border-color:var(--hair-strong) !important; color:var(--ink-2) !important; }
.assessment--strong{ border-color:var(--ink) !important; color:var(--ink) !important; background:transparent !important; }
/* blocks */
.metrics{ border-top:0 !important; }
.metric__value{ font-family:var(--serif) !important; }
.metric__label,.metric a{ font-family:var(--sans); }
/* four-part standard: hairline grid, cards sized to content, no box, no dead space */
.operating-standard{ border:0 !important; gap:0 !important; align-items:start !important;
  column-gap:0 !important; }
/* same gutter maths as the tables: col 1 flush left, col 2 inset, both inset from the right */
.standard-step{ background:transparent !important; min-height:0 !important;
  padding:16px 20px 30px 0 !important; border-top:1px solid var(--hair); }
.standard-step:nth-child(2n){ padding-left:26px !important; }
.standard-step:nth-child(1), .standard-step:nth-child(2){ border-top:1px solid var(--ink); }
.standard-step b{ display:block; margin-top:2px; }

@media (max-width:720px){
.standard-step:nth-child(2){ border-top:1px solid var(--hair); }
}
.standard-step__id{ font-family:var(--sans) !important; color:var(--muted) !important; }
.standard-step h3{ font-size:17.5px !important; }
.standard-step p,.standard-step b{ font-family:var(--sans); }
.context-fact strong{ font-family:var(--serif); }
.context-fact p{ font-family:var(--sans); }
.closing p{ font-family:var(--serif); font-size:19.5px !important; }
.source-list,.method,.article-footer{ font-family:var(--sans); }
.method{ font-size:13.5px; color:var(--muted) !important; }
.section{ padding:44px 0 52px; }
.section-head{ margin-bottom:24px !important; }
/* the last block in a section already has a bottom margin of its own: left alone it stacks
   on the section padding and the rule drifts a long way clear of the text. */
.section > :last-child, .prose > :last-child{ margin-bottom:0 !important; }
.section-number{ font-family:var(--sans) !important; font-size:11px !important;
  letter-spacing:.1em; color:var(--muted) !important; }
.brief-note{ font-family:var(--sans) !important; font-size:13.5px !important; line-height:1.5;
  color:var(--muted) !important; margin:14px 0 0 !important; padding:0 !important;
  text-indent:0 !important; background:transparent !important; border:0 !important; max-width:58em; }
.section--closing .closing{ margin-top:0 !important; padding-top:0 !important; border-top:0 !important; }
.section--closing{ padding-top:34px !important; padding-bottom:240px !important; border-bottom:0; }
/* the argument ends at the closing; everything after is back matter */
.closing{ padding-bottom:0 !important; border-bottom:0 !important; }
#appendix{ padding-top:10px !important; }
#appendix h2, .sources h2{ font-size:19px !important; font-weight:600 !important; }
#appendix .section-number, .sources .section-number{ font-size:10.5px !important; opacity:.75; }
#appendix .prose p, #appendix .prose{ font-family:var(--sans) !important; font-size:15px !important;
  line-height:1.6 !important; max-width:46em; }
#appendix .figure-title, .sources h2{ letter-spacing:0 !important; }
#appendix figure{ margin-top:30px !important; }
.sources{ padding-top:36px !important; border-top:2px solid var(--ink); }
.backmatter-band{ margin:0 0 10px; padding-top:30px; border-top:2px solid var(--ink);
  display:flex; align-items:center; }
.backmatter-band span{ font-family:var(--sans); font-size:11px; font-weight:600;
  letter-spacing:.13em; text-transform:uppercase; color:var(--muted); }
/* the print, above the title */
.note-hero{ margin:34px 0 44px !important; padding:0 !important; border:0 !important; }
.note-hero img{ display:block; width:100%; height:auto; border:1px solid var(--hair); }
.note-hero figcaption{ margin-top:12px; max-width:56em; }

@media (max-width:760px){
.note-hero{ margin-bottom:32px !important; }
}
/* abstract: same block as every generated note, restated here because this page predates
   note.css and carries its own styles. */
.note__summary{ margin:0 0 40px; padding:0 0 26px; border-bottom:1px solid var(--hair); }
.note__summary .lbl{ display:block; margin:0 0 9px; font-family:var(--sans); font-size:11px;
  font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); }
.note__summary p{ margin:0; font-family:var(--serif); font-size:18px; line-height:1.6;
  color:var(--ink-2); max-width:34em; }
/* site chrome, matching the reference note: three children, so flex rather than the
   two-column grid the rest of the site uses. The nav takes the slack. */
.site-header__inner{ display:flex; align-items:center; gap:28px; }
.note-nav{ display:flex; gap:20px; margin-left:auto; font-family:var(--sans);
  font-size:14px; font-weight:500; }
.note-nav a{ color:var(--ink-2) !important; text-decoration:none !important; }
.note-nav a:hover{ color:var(--ink) !important; }
.note-nav a[aria-current]{ color:var(--ink) !important; }
.note-cta{ font-family:var(--sans); font-size:14px; font-weight:600;
  padding:8px 16px; border:1px solid var(--ink); color:var(--ink) !important;
  text-decoration:none !important; white-space:nowrap; }
.note-cta:hover{ background:var(--ink); color:#fff !important; }
@media (max-width:900px){ .note-nav{ display:none; } }
/* the footer stacks. Three lines of very different lengths cannot share a flex row in the
   narrow shell: each gets a third of the width and the legal line wraps mid-sentence.
   No top margin either: the gap above the rule is the last section's own bottom padding. */
.article-footer{ display:block !important; margin-top:0 !important; padding:30px 0 34px !important;
  border-top:1px solid var(--hair); font-size:12px; }
/* legal fine print: present, unmissable if looked for, invisible if not */
.article-footer .fine-print{ margin-top:14px; max-width:62em; font-family:var(--sans);
  font-size:11.5px; line-height:1.55; color:#8b9099; }
/* open tables: hairline rows only, matching every other figure */
.table-wrap table th{ padding:12px 20px 12px 0; background:transparent; color:var(--muted);
  font-size:12px; font-weight:600; line-height:1.35; vertical-align:bottom; }
.table-wrap table td{ padding:16px 20px 16px 0; }
/* gutter: column one stays flush with the figure title, every later column gets breathing room */
.table-wrap table th + th, .table-wrap table td + td{ border-left:0; padding-left:26px; }
.table-wrap table th:last-child, .table-wrap table td:last-child{ padding-right:0; }
/* right-aligned or filled last columns keep their padding, or the numbers sit off-grid */
.table-wrap .cost-table th:last-child, .table-wrap .cost-table td:last-child{ padding-right:20px; }
/* five columns needs a tighter gutter and fixed widths, or it wraps to ribbons */
.table-wrap .evidence-table{ table-layout:fixed; }
.table-wrap .evidence-table th + th, .table-wrap .evidence-table td + td{ padding-left:18px; }
.table-wrap .evidence-table th, .table-wrap .evidence-table td{ padding-right:12px; }
.table-wrap .evidence-table th:nth-child(1), .table-wrap .evidence-table td:nth-child(1){ width:14%; }
.table-wrap .evidence-table th:nth-child(2), .table-wrap .evidence-table td:nth-child(2){ width:24%; }
.table-wrap .evidence-table th:nth-child(3), .table-wrap .evidence-table td:nth-child(3){ width:21%; }
.table-wrap .evidence-table th:nth-child(4), .table-wrap .evidence-table td:nth-child(4){ width:26%; }
.table-wrap .evidence-table th:nth-child(5), .table-wrap .evidence-table td:nth-child(5){ width:15%; }

@media (max-width:640px){
.evidence-table{ table-layout:auto; }
.evidence-table td{ width:100% !important; padding:8px 0 !important; }
}

@media (max-width:640px){
.table-wrap .evidence-table td{ padding:8px 0; }
}
p.qual, li .qual{ display:block; margin-top:9px; font-family:var(--sans);
  font-size:13.5px; line-height:1.5; color:var(--muted); max-width:44em; }
p.qual{ margin-top:-8px; margin-bottom:22px; }


@media (max-width:900px){
.brief article{ border-right:0; border-bottom:1px solid var(--hair); padding-right:0 !important; }
.brief article:last-child{ border-bottom:0; }
}

/* Charts. The live note carried tables only, so it never needed these. */
.figure-plot { overflow-x: auto; margin: 0 0 20px; }
.figure-plot svg { display: block; width: 100%; max-width: 680px; height: auto; }
.figure-plot + .table-wrap { margin-top: 4px; }

/* The paragraphs a note opens on, before the first numbered section. */
.note-lead { padding-bottom: clamp(40px, 5vw, 60px); }
.note-lead .prose p:first-child strong { font-size: 19px; line-height: 1.45; }

/* Converted notes carry the older fig__src class on the line under a caption. */
.article .fig__src { display: block; margin-top: 8px; color: var(--ink-3); font-size: 11px; line-height: 1.5; }
.article figcaption { font-family: var(--sans); }
.article .note__summary { margin-top: 30px; }

/* Reading geometry: one centred column. Prose, figures and evidence all share it. */
.article-head > h1,
.article-head > .dek,
.article-head > .byline,
.article .note__summary,
.article .section-head,
.article .prose,
.article .closing,
.article .publication-notice,
.article .method {
  width: min(100%, var(--reading-column));
  max-width: var(--reading-column);
  margin-left: auto;
  margin-right: auto;
}

.article .prose p {
  max-width: none;
}

/* Figures share the reading column exactly. A wider evidence column meant the
   figure and the prose had different left and right edges, so nothing on the page
   lined up with anything, and the 680px SVG cap left a further gap inside the
   figure's own rule. One column, one set of edges. */
.article figure,
.article .brief,
.article .metrics,
.article .operating-standard,
.article .context-facts,
.article .policy-brief,
.article .implications,
.article .actions,
.article .source-list,
.article .backmatter-band {
  width: min(100%, var(--reading-column));
  max-width: var(--reading-column);
  margin-left: auto !important;
  margin-right: auto !important;
}

/* No cap. The plot fills the figure, so its right edge meets the figure's rule
   instead of stopping 180px short of it. */
.figure-plot svg { max-width: none; }

/* The wordmark never inherits. Long-form notes set body to the serif with
   !important, and .brand__word carries no font-family of its own, so without
   this the wordmark renders in Newsreader. Pinned, not inherited. */
.brand__word{font-family:"Schibsted Grotesk",Arial,sans-serif!important;font-size:20px!important;font-weight:600!important;letter-spacing:-.045em!important;line-height:1!important}
.brand,.brand *{font-family:"Schibsted Grotesk",Arial,sans-serif!important}
