/* /responsible-ai, ported from the reference build's page-rai.css (atlas-website/site/css/page-rai.css).
   Loaded after site.base.css and site.system.css, as in the reference. Scoped to .atlas-page; the body class
   .page-rai is the root's .atlas-rai. Breakpoints: 900 px is 991 px, 901 px is 992 px; the 1180 px step stays.
   Left out: the paper-alt nav (set the Nav's Ground to Paper alt) and the smooth scrolling on html, which the page
   injects into the document (rai.document.ts). Rules for classes the final markup no longer uses (.rai-step,
   .branch, .fine, li.lead) are kept as in the reference.

   The index's aria-current, the phone control's current-section label and .is-enhanced come from useSectionSpy. */

/* ═══════════════════════════════════════════════════════════════
   /responsible-ai: "the policy" (round 3, 2026-09-29)

   Loaded after _system.css on responsible-ai.html only. Every rule is
   scoped to body.page-rai, so nothing reaches another page.

   Character: a document you step through. The other pages change
   ground section by section; this one is one continuous paper sheet,
   with a sticky numbered index on the left that marks where you are,
   numbered sections on the right, and Previous / Next at the foot of
   each section. On phones the index collapses into a "Sections"
   control at the top of the policy.

   It works without JS: every section is on the page, in order, with
   its own id, and the index and Previous / Next are plain anchors.
   js/page-rai.js adds the in-view marker (aria-current) and makes the
   phone control sticky (.rai-doc.is-enhanced).

   No new hue: ochre is the only accent. One ink panel (the
   commitments) is the page's single dark moment.
   ═══════════════════════════════════════════════════════════════ */

.atlas-page.atlas-rai { background: var(--paper); }
/* Brief: 16 px gutters on phones (the shared value is 24 px up to 900 px) */

/* ── Cover: the hero reads as the policy's title page ─────────── */
.atlas-page.atlas-rai .page-hero        { background: var(--paper-alt); }
.atlas-page.atlas-rai .page-hero        { padding: 120px 0 56px; border-bottom: 1px solid var(--ink-14); }
.atlas-page.atlas-rai .page-close       { background: var(--paper-deep); }

/* ── The document: index column + body column ─────────────────── */
.atlas-page.atlas-rai .rai-doc          { display: grid; grid-template-columns: 200px minmax(0, 1fr); column-gap: 80px;
                              align-items: start; }
.atlas-page.atlas-rai .rai-toc          { display: none; }

/* Sticky index (desktop) */
.atlas-page.atlas-rai .rai-index        { position: sticky; top: 40px; margin-top: 92px; }
.atlas-page.atlas-rai .rai-index .h     { font: 500 11px/1 var(--mono); letter-spacing: .12em; text-transform: uppercase;
                              color: var(--ink-64); margin: 0 0 16px; }
.atlas-page.atlas-rai .rai-index ol,
.atlas-page.atlas-rai .rai-toc ol       { list-style: none; margin: 0; padding: 0; }
.atlas-page.atlas-rai .rai-index ol     { border-left: 1px solid var(--ink-14); }
.atlas-page.atlas-rai .rai-index a      { display: grid; grid-template-columns: 30px minmax(0, 1fr); align-items: baseline;
                              margin-left: -1px; padding: 8px 0 8px 16px; border-left: 2px solid transparent;
                              font: 400 15px/1.35 var(--sans); color: var(--ink-64); text-decoration: none;
                              transition: color .15s ease, border-color .15s ease; }
.atlas-page.atlas-rai .rai-index a .n,
.atlas-page.atlas-rai .rai-toc a .n     { font: 500 11px/1 var(--mono); letter-spacing: .06em; color: var(--ochre-text); }
.atlas-page.atlas-rai .rai-index a:hover { color: var(--ink); }
.atlas-page.atlas-rai .rai-index a[aria-current="true"] { color: var(--ink); font-weight: 500; border-left-color: var(--ochre); }
.atlas-page.atlas-rai .rai-index li.end { margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--ink-08); }

/* ── Numbered sections ─────────────────────────────────────────── */
.atlas-page.atlas-rai .rai-sec          { padding-top: 92px; scroll-margin-top: 16px; }
.atlas-page.atlas-rai .rai-sec + .rai-sec { border-top: 1px solid var(--ink-14); }
.atlas-page.atlas-rai .rai-k            { display: flex; align-items: center; gap: 14px; font: 500 11px/1 var(--mono);
                              letter-spacing: .14em; text-transform: uppercase; color: var(--ink-64); }
.atlas-page.atlas-rai .rai-k .n         { font-size: 12px; color: var(--ochre-text); }
.atlas-page.atlas-rai .rai-k .n::after  { content: ""; display: inline-block; width: 28px; height: 1px; background: var(--ochre);
                              margin-left: 14px; vertical-align: middle; }
.atlas-page.atlas-rai .rai-sec h2       { font: 400 clamp(28px, 2.9vw, 40px)/1.14 var(--serif); letter-spacing: -.012em;
                              margin: 18px 0 0; max-width: 30ch; text-wrap: balance; }
.atlas-page.atlas-rai .rai-sec .lede    { font: 400 19px/1.62 var(--serif); color: var(--ink-70); max-width: 62ch; margin: 22px 0 0; }

/* Small mono labels, all ochre-text (small ochre text rule) */
.atlas-page.atlas-rai .rai-scope .k,
.atlas-page.atlas-rai .rai-card .k,
.atlas-page.atlas-rai .rai-band .k,
.atlas-page.atlas-rai .rai-label        { font: 500 11px/1 var(--mono); letter-spacing: .12em; text-transform: uppercase;
                              color: var(--ochre-text); }

/* Check glyph: a tick in an ochre ring (validation checks, hosting benefits) */
.atlas-page.atlas-rai .rai-checks svg,
.atlas-page.atlas-rai .rai-host svg     { flex: none; width: 22px; height: 22px; padding: 3px; border: 1.5px solid var(--ochre);
                              border-radius: 50%; fill: none; stroke: var(--ochre); stroke-width: 2;
                              stroke-linecap: round; stroke-linejoin: round; }

/* Previous / Next: the foot of every section */
.atlas-page.atlas-rai .rai-step         { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 64px;
                              padding-bottom: 92px; }
.atlas-page.atlas-rai .rai-step a       { display: block; min-width: 0; padding: 14px 18px 16px; border: 1px solid var(--ink-20);
                              color: var(--ink); text-decoration: none;
                              transition: border-color .15s ease, background-color .15s ease; }
.atlas-page.atlas-rai .rai-step a:hover { border-color: var(--ink); background: var(--paper-alt); }
.atlas-page.atlas-rai .rai-step .next   { grid-column: 2; text-align: right; border-color: var(--ink-50); }
.atlas-page.atlas-rai .rai-step .k      { display: block; font: 500 10.5px/1 var(--mono); letter-spacing: .12em;
                              text-transform: uppercase; color: var(--ink-64); }
.atlas-page.atlas-rai .rai-step .prev .k::before { content: "\2190\00a0\00a0"; content: "\2190\00a0\00a0" / ""; }
.atlas-page.atlas-rai .rai-step .next .k::after  { content: "\00a0\00a0\2192"; content: "\00a0\00a0\2192" / ""; }
.atlas-page.atlas-rai .rai-step .t      { display: block; font: 400 18px/1.3 var(--serif); margin-top: 8px; }

/* ── 01 Scope: a two-part definition strip ─────────────────────── */
.atlas-page.atlas-rai .rai-scope        { display: grid; grid-template-columns: 1fr 1fr; margin-top: 40px; border-top: 2px solid var(--ink); }
.atlas-page.atlas-rai .rai-scope > div  { padding: 20px 32px 0 0; }
.atlas-page.atlas-rai .rai-scope > div + div { padding: 20px 0 0 32px; border-left: 1px solid var(--ink-14); }
.atlas-page.atlas-rai .rai-scope p      { font: 400 19px/1.5 var(--serif); margin: 12px 0 0; }

/* ── 02 Accountability: two filled cards ───────────────────────── */
.atlas-page.atlas-rai .rai-cards        { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 40px; }
.atlas-page.atlas-rai .rai-card         { background: var(--paper-alt); padding: 26px 28px 30px; }
.atlas-page.atlas-rai .rai-card h3      { font: 500 21px/1.26 var(--serif); margin: 14px 0 0; }
.atlas-page.atlas-rai .rai-card p       { font-size: 15.5px; line-height: 1.62; color: var(--ink-70); margin: 10px 0 0; }
.atlas-page.atlas-rai .rai-note         { font-size: 15px; line-height: 1.6; color: var(--ink-64); margin: 20px 0 0; }

/* ── 03 Validation: the required path, with external validation off it ── */
.atlas-page.atlas-rai .rai-path         { margin: 48px 0 0; }
.atlas-page.atlas-rai .rai-path ol      { list-style: none; margin: 0; padding: 0; position: relative;
                              display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); }
.atlas-page.atlas-rai .rai-path ol::before { content: ""; position: absolute; left: 6px; right: calc(16.667% - 6px); top: 6px;
                              height: 1px; background: var(--ink-30); }
.atlas-page.atlas-rai .rai-path li      { position: relative; padding: 28px 14px 0 0; }
.atlas-page.atlas-rai .rai-path li::before { content: ""; position: absolute; left: 0; top: 0; width: 13px; height: 13px;
                              border-radius: 50%; background: var(--paper); border: 1.5px solid var(--ink); }
.atlas-page.atlas-rai .rai-path li.v::before { background: var(--ochre); border-color: var(--ochre); }
.atlas-page.atlas-rai .rai-path li.r::before { background: var(--ink); }
.atlas-page.atlas-rai .rai-path .s      { display: block; font: 400 19px/1.25 var(--serif); }
.atlas-page.atlas-rai .rai-path .g      { display: block; font: 500 10.5px/1.4 var(--mono); letter-spacing: .08em;
                              text-transform: uppercase; color: var(--ink-64); margin-top: 8px; }
.atlas-page.atlas-rai .rai-path li.v .g { color: var(--ochre-text); }
/* the branch: a dashed box above the line, joined to the internal-validation node */
.atlas-page.atlas-rai .rai-path .branch { position: absolute; left: 0; bottom: calc(100% + 30px); width: max-content;
                              max-width: 460px; padding: 10px 14px 11px; border: 1px dashed var(--ochre);
                              background: var(--paper); }
.atlas-page.atlas-rai .rai-path .branch::after { content: ""; position: absolute; left: 5px; top: 100%; height: 31px;
                              border-left: 1px dashed var(--ochre); }
.atlas-page.atlas-rai .rai-path .branch b { display: block; font: 500 16px/1.3 var(--serif); }
.atlas-page.atlas-rai .rai-path .branch span { display: block; font: 400 13.5px/1.45 var(--sans); color: var(--ink-70); margin-top: 3px; }
.atlas-page.atlas-rai .rai-path figcaption { font: 400 14.5px/1.5 var(--sans); color: var(--ink-64); margin-top: 28px;
                              padding-top: 14px; border-top: 1px solid var(--ink-08); }

.atlas-page.atlas-rai .rai-label        { margin-top: 56px; }
.atlas-page.atlas-rai .rai-checks       { display: grid; grid-template-columns: 1fr 1fr; margin-top: 14px; border-top: 2px solid var(--ink); }
.atlas-page.atlas-rai .rai-checks > div { padding: 22px 28px 26px 0; border-bottom: 1px solid var(--ink-14); }
.atlas-page.atlas-rai .rai-checks > div:nth-child(even) { padding: 22px 0 26px 28px; border-left: 1px solid var(--ink-14); }
.atlas-page.atlas-rai .rai-checks h3    { display: flex; align-items: center; gap: 12px; font: 500 20px/1.25 var(--serif); margin: 0; }
.atlas-page.atlas-rai .rai-checks p     { font-size: 15px; line-height: 1.62; color: var(--ink-70); margin: 10px 0 0 34px; }

.atlas-page.atlas-rai .rai-band         { margin-top: 36px; padding: 24px 28px 26px; background: var(--paper-alt);
                              border-left: 3px solid var(--ochre); }
.atlas-page.atlas-rai .rai-band p       { font: 400 18px/1.55 var(--serif); margin: 10px 0 0; max-width: 60ch; }
.atlas-page.atlas-rai .rai-band ul      { list-style: none; margin: 14px 0 0; padding: 0; display: grid;
                              grid-template-columns: 1fr 1fr; gap: 10px 28px; }
.atlas-page.atlas-rai .rai-band li      { position: relative; padding-left: 20px; font-size: 15px; line-height: 1.5; }
.atlas-page.atlas-rai .rai-band li::before { content: "+"; position: absolute; left: 0; top: -1px; font-weight: 500;
                              color: var(--ochre-text); }

/* ── 04 Transparency: what we record, beside what we tell you ──── */
.atlas-page.atlas-rai .rai-pair         { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 40px; }
.atlas-page.atlas-rai .rai-panel        { background: var(--paper-alt); padding: 28px 30px 30px; }
.atlas-page.atlas-rai .rai-panel.out    { background: transparent; border: 1px solid var(--ink-30); }
.atlas-page.atlas-rai .rai-panel h3     { font: 500 21px/1.26 var(--serif); margin: 0; }
.atlas-page.atlas-rai .rai-panel .sub   { font-size: 14.5px; line-height: 1.55; color: var(--ink-64); margin: 8px 0 0; }
.atlas-page.atlas-rai .rai-panel ul     { list-style: none; margin: 16px 0 0; padding: 0; border-top: 1px solid var(--ink-14); }
.atlas-page.atlas-rai .rai-panel li     { position: relative; padding: 10px 0 10px 18px; border-bottom: 1px solid var(--ink-08);
                              font-size: 15px; line-height: 1.5; }
.atlas-page.atlas-rai .rai-panel li::before { content: "\2013"; position: absolute; left: 0; color: var(--ochre); }
.atlas-page.atlas-rai .rai-panel .foot  { font: italic 400 17px/1.5 var(--serif); margin: 18px 0 0; }

/* ── 05 Our commitments: the page's one ink panel ──────────────── */
.atlas-page.atlas-rai .rai-commit       { list-style: none; margin: 40px 0 0; padding: 8px 40px 14px; background: var(--ink);
                              display: grid; grid-template-columns: 1fr 1fr; column-gap: 40px; }
.atlas-page.atlas-rai .rai-commit li    { padding: 24px 0 26px; border-top: 1px solid var(--paper-22); }
.atlas-page.atlas-rai .rai-commit li.lead { grid-column: 1 / -1; border-top: 0; padding: 28px 0 30px;
                              display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 40px;
                              align-items: baseline; }
.atlas-page.atlas-rai .rai-commit h3    { font: 500 20px/1.28 var(--serif); color: var(--paper); margin: 0; }
.atlas-page.atlas-rai .rai-commit li.lead h3 { font-size: clamp(24px, 2.3vw, 30px); font-weight: 400; color: var(--ochre-light); }
.atlas-page.atlas-rai .rai-commit p     { font-size: 15px; line-height: 1.62; color: var(--paper-74); margin: 10px 0 0; }
.atlas-page.atlas-rai .rai-commit li.lead p { font: 400 18px/1.55 var(--serif); color: var(--paper-86); margin: 0; }

/* ── 06 Data and security: a hosting feature, then three rows ──── */
.atlas-page.atlas-rai .rai-host         { margin-top: 40px; background: var(--paper-alt); padding: 28px 30px 24px;
                              display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); gap: 18px 40px; }
.atlas-page.atlas-rai .rai-host h3      { font: 500 24px/1.2 var(--serif); margin: 0; }
.atlas-page.atlas-rai .rai-host .head p { font-size: 15.5px; line-height: 1.6; color: var(--ink-70); margin: 10px 0 0; }
.atlas-page.atlas-rai .rai-host ul      { list-style: none; margin: 0; padding: 0; }
.atlas-page.atlas-rai .rai-host li      { display: flex; align-items: flex-start; gap: 12px; padding: 11px 0;
                              border-bottom: 1px solid var(--ink-14); font: 400 17px/1.4 var(--serif); }
.atlas-page.atlas-rai .rai-host li:first-child { padding-top: 0; }
.atlas-page.atlas-rai .rai-host li svg  { margin-top: -1px; }
.atlas-page.atlas-rai .rai-host .fine   { grid-column: 1 / -1; font-size: 14.5px; line-height: 1.5; color: var(--ink-64); margin: 0;
                              padding-top: 14px; border-top: 1px solid var(--ink-14); }
.atlas-page.atlas-rai .rai-rows > div   { display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); column-gap: 40px;
                              padding: 24px 30px; border-bottom: 1px solid var(--ink-14); }
.atlas-page.atlas-rai .rai-rows h3      { font: 500 19px/1.3 var(--serif); margin: 0; }
.atlas-page.atlas-rai .rai-rows p       { font-size: 15px; line-height: 1.62; color: var(--ink-70); margin: 0; }

/* ── 07 Incidents: a timeline ─────────────────────────────────── */
.atlas-page.atlas-rai .rai-time         { list-style: none; margin: 48px 0 0; padding: 0; position: relative;
                              display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.atlas-page.atlas-rai .rai-time::before { content: ""; position: absolute; left: 5px; right: 0; top: 5px; height: 1px;
                              background: var(--ink-30); }
.atlas-page.atlas-rai .rai-time li      { position: relative; padding: 30px 24px 0 0; }
.atlas-page.atlas-rai .rai-time li::before { content: ""; position: absolute; left: 0; top: 0; width: 11px; height: 11px;
                              border-radius: 50%; background: var(--ochre); }
.atlas-page.atlas-rai .rai-time .t      { font: 400 22px/1.2 var(--serif); }
.atlas-page.atlas-rai .rai-time p       { font-size: 14.5px; line-height: 1.6; color: var(--ink-70); margin: 10px 0 0; }

/* ── Between desktop and phone: a narrower index, a 2 × 2 timeline ── */
@media (max-width: 1180px) {
  .atlas-page.atlas-rai .rai-doc        { grid-template-columns: 176px minmax(0, 1fr); column-gap: 48px; }
  .atlas-page.atlas-rai .rai-time       { grid-template-columns: 1fr 1fr; row-gap: 32px; }
  .atlas-page.atlas-rai .rai-time::before { display: none; }
  .atlas-page.atlas-rai .rai-time li    { border-top: 1px solid var(--ink-30); padding-top: 26px; }
  .atlas-page.atlas-rai .rai-time li::before { top: -6px; }
}

/* ── Phones and small tablets: one column, the index becomes "Sections" ── */
@media (max-width: 991px) {
  .atlas-page.atlas-rai .page-hero      { padding: 96px 0 44px; }
  .atlas-page.atlas-rai .rai-doc        { display: block; }
  .atlas-page.atlas-rai .rai-index      { display: none; }
  .atlas-page.atlas-rai .rai-toc        { display: block; margin: 0 calc(-1 * var(--pad-x)); padding: 0 var(--pad-x);
                              background: var(--paper); border-bottom: 1px solid var(--ink-14); }
  .atlas-page.atlas-rai .rai-doc.is-enhanced .rai-toc { position: sticky; top: 0; z-index: 40; }
  .atlas-page.atlas-rai .rai-toc summary { list-style: none; cursor: pointer; display: flex; align-items: center; gap: 12px;
                              min-height: 52px; }
  .atlas-page.atlas-rai .rai-toc summary::-webkit-details-marker { display: none; }
  .atlas-page.atlas-rai .rai-toc summary::after { content: "+"; margin-left: auto; font: 400 22px/1 var(--sans); color: var(--ochre); }
  .atlas-page.atlas-rai .rai-toc details[open] summary::after { content: "\2013"; }
  .atlas-page.atlas-rai .rai-toc .lab   { flex: none; font: 500 11px/1 var(--mono); letter-spacing: .12em; text-transform: uppercase;
                              color: var(--ink-64); }
  .atlas-page.atlas-rai .rai-toc .now   { min-width: 0; font: 400 16px/1.2 var(--serif); white-space: nowrap; overflow: hidden;
                              text-overflow: ellipsis; }
  .atlas-page.atlas-rai .rai-toc .now .n { font: 500 11px/1 var(--mono); color: var(--ochre-text); margin-right: 8px; }
  .atlas-page.atlas-rai .rai-toc ol     { border-top: 1px solid var(--ink-08); padding: 4px 0 12px; max-height: 70vh; overflow-y: auto; }
  .atlas-page.atlas-rai .rai-toc a      { display: grid; grid-template-columns: 34px minmax(0, 1fr); align-items: baseline;
                              min-height: 44px; padding: 12px 0; font: 400 16px/1.3 var(--sans); color: var(--ink-70);
                              text-decoration: none; }
  .atlas-page.atlas-rai .rai-toc a[aria-current="true"] { color: var(--ink); font-weight: 500; }

  .atlas-page.atlas-rai .rai-sec        { padding-top: 56px; }
  .atlas-page.atlas-rai .rai-doc.is-enhanced .rai-sec { scroll-margin-top: 60px; }   /* clear the sticky control */
  .atlas-page.atlas-rai .rai-step       { margin-top: 44px; padding-bottom: 56px; gap: 10px; }
  .atlas-page.atlas-rai .rai-step a     { padding: 12px 14px 14px; }
  .atlas-page.atlas-rai .rai-step .t    { font-size: 16px; }

  .atlas-page.atlas-rai .rai-scope,
  .atlas-page.atlas-rai .rai-cards,
  .atlas-page.atlas-rai .rai-pair,
  .atlas-page.atlas-rai .rai-checks,
  .atlas-page.atlas-rai .rai-host,
  .atlas-page.atlas-rai .rai-rows > div,
  .atlas-page.atlas-rai .rai-commit,
  .atlas-page.atlas-rai .rai-commit li.lead,
  .atlas-page.atlas-rai .rai-band ul    { grid-template-columns: 1fr; }
  .atlas-page.atlas-rai .rai-scope > div,
  .atlas-page.atlas-rai .rai-scope > div + div { padding: 18px 0 0; border-left: 0; }
  .atlas-page.atlas-rai .rai-scope > div + div { margin-top: 18px; border-top: 1px solid var(--ink-14); }
  .atlas-page.atlas-rai .rai-cards,
  .atlas-page.atlas-rai .rai-pair       { gap: 12px; }
  .atlas-page.atlas-rai .rai-card,
  .atlas-page.atlas-rai .rai-panel,
  .atlas-page.atlas-rai .rai-host       { padding: 22px 20px 24px; }
  .atlas-page.atlas-rai .rai-checks > div,
  .atlas-page.atlas-rai .rai-checks > div:nth-child(even) { padding: 20px 0 22px; border-left: 0; }
  .atlas-page.atlas-rai .rai-band       { padding: 20px 20px 22px; }
  .atlas-page.atlas-rai .rai-commit     { padding: 4px 20px 10px; }
  .atlas-page.atlas-rai .rai-commit li.lead { padding: 22px 0 24px; }
  .atlas-page.atlas-rai .rai-commit li.lead p { margin-top: 10px; }
  .atlas-page.atlas-rai .rai-rows > div { padding: 20px 0; row-gap: 8px; }

  /* the path turns vertical; the branch sits under internal validation, indented */
  .atlas-page.atlas-rai .rai-path       { padding-top: 0; margin-top: 36px; }
  .atlas-page.atlas-rai .rai-path ol    { grid-template-columns: 1fr; }
  .atlas-page.atlas-rai .rai-path ol::before { left: 6px; right: auto; top: 12px; bottom: 12px; width: 1px; height: auto; }
  .atlas-page.atlas-rai .rai-path li    { padding: 0 0 22px 32px; }
  .atlas-page.atlas-rai .rai-path li:last-child { padding-bottom: 0; }
  .atlas-page.atlas-rai .rai-path li::before { top: 6px; }
  .atlas-page.atlas-rai .rai-path .g    { margin-top: 4px; }
  .atlas-page.atlas-rai .rai-path .branch { position: static; display: block; width: auto; max-width: none; margin: 14px 0 0; }
  .atlas-page.atlas-rai .rai-path .branch::after { display: none; }

  .atlas-page.atlas-rai .rai-time       { grid-template-columns: 1fr; row-gap: 0; margin-top: 36px; }
  .atlas-page.atlas-rai .rai-time li    { border-top: 0; padding: 0 0 26px 30px; }
  .atlas-page.atlas-rai .rai-time li::before { top: 7px; }
  .atlas-page.atlas-rai .rai-time::before { display: block; left: 5px; right: auto; top: 12px; bottom: 30px; width: 1px; height: auto; }
}

/* ── Print: procurement and security reviewers print this page ── */
@media print {
  .atlas-page.atlas-rai .rai-index, .atlas-page.atlas-rai .rai-toc, .atlas-page.atlas-rai .rai-step { display: none !important; }
  .atlas-page.atlas-rai .rai-doc        { display: block; }
  .atlas-page.atlas-rai .rai-sec        { padding: 28px 0; }
  .atlas-page.atlas-rai .rai-commit     { background: none; border: 1px solid var(--ink-30); }
  .atlas-page.atlas-rai .rai-commit h3, .atlas-page.atlas-rai .rai-commit li.lead h3, .atlas-page.atlas-rai .rai-commit p,
  .atlas-page.atlas-rai .rai-commit li.lead p { color: var(--ink); }
}

/* Round 3 panel fixes: stage labels don't run together; the index sits under the sticky header */
.atlas-page.atlas-rai .rai-path li .s { max-width: 11ch; }
.atlas-page.atlas-rai .rai-index { top: 116px; }
@media (max-width: 991px) {
  .atlas-page.atlas-rai .rai-doc.is-enhanced .rai-toc { top: 64px; }
  .atlas-page.atlas-rai .rai-doc.is-enhanced .rai-sec { scroll-margin-top: 124px; }
}

/* ═══ Round 4 (Abe's notes, 2026-09-29) ═══ */
/* 03: external review applies where the model calls for it, so its marker is open */
.atlas-page.atlas-rai .rai-path li.opt::before { background: var(--paper); border: 1.5px dashed var(--ochre); }
/* 05: five equal commitments, three over two */
@media (min-width: 992px) {
  .atlas-page.atlas-rai .rai-commit { grid-template-columns: repeat(6, minmax(0, 1fr)); column-gap: 36px; padding-top: 10px; }
  .atlas-page.atlas-rai .rai-commit li { grid-column: span 2; }
  .atlas-page.atlas-rai .rai-commit li:nth-child(n+4) { grid-column: span 3; }
  .atlas-page.atlas-rai .rai-commit li:nth-child(-n+3) { border-top: 0; }
}
/* 06: the hosting box uses both columns */
.atlas-page.atlas-rai .rai-host { align-items: start; }
.atlas-page.atlas-rai .rai-host li { font: 400 16px/1.5 var(--sans); color: var(--ink-70); }
.atlas-page.atlas-rai .rai-host li:last-child { border-bottom: 0; }
/* The section index does the stepping; sections end without Previous/Next */
.atlas-page.atlas-rai .rai-sec { padding-bottom: 72px; }

/* ═══ Round 6 launch review ═══ */
.atlas-page.atlas-rai .rai-rows > div:last-child { border-bottom: 0; }

/* ═══ Port ═══ */
/* The close's lede: the reference's inline style="margin-top:20px" */
.atlas-page.atlas-rai .page-close .lede { margin-top: 20px; }

