/* Content-led additions for the product explanation, roots, and first-run path. */
.paper{background:var(--paper);color:var(--ink)}
.overview{display:grid;grid-template-columns:1fr .85fr;grid-template-rows:auto auto 1fr auto;gap:55px 8vw;min-height:850px;padding-bottom:55px}
.overview .poster-head{grid-column:1/-1}
.overview h2{margin:20px 0 0;font-size:clamp(65px,9vw,128px);font-weight:700;letter-spacing:-.095em;line-height:.9}
.overview h2 em{color:var(--acid);font-style:normal}
.overview-lede{max-width:560px;align-self:end;margin:0 0 12px;color:#aeb4a6;font-size:15px;line-height:1.65}
.scope-grid{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;align-self:end;border:1px solid #4f5449}
.scope-grid article{min-width:0;padding:30px}
.scope-grid article+article{border-left:1px solid #4f5449;background:#181a16}
.scope-grid article>span{color:var(--acid);font:700 10px/1 var(--mono);letter-spacing:.08em}
.scope-grid h3{margin:22px 0 18px;font-size:23px;letter-spacing:-.035em}
.scope-grid ul{margin:0;padding:0;list-style:none;color:#aeb4a6;font-size:13px;line-height:1.55}
.scope-grid li{position:relative;padding:10px 0 10px 22px;border-top:1px solid #34382f}
.scope-grid li::before{position:absolute;top:15px;left:0;width:8px;height:8px;border:1px solid var(--acid);content:""}
.fit-note{grid-column:1/-1;margin:0;padding-top:20px;border-top:1px solid #474b41;color:#aeb4a6;font-size:13px;line-height:1.6}
.fit-note strong{color:var(--acid);font:700 10px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase}
.anchor-alias{position:absolute;top:0}

/* Chapters 02–07 share spacing and type, while their diagrams remain distinct. */
.chapter{min-height:0;padding-top:30px;padding-bottom:clamp(88px,9vw,138px)}
.chapter .poster-head{padding-bottom:16px;border-bottom:1px solid currentColor}
.chapter .eyebrow{font-size:10px}
.chapter h2{margin:18px 0 0;font-size:clamp(60px,7.5vw,108px);letter-spacing:-.085em;line-height:.9}
.chapter h2 em{font-style:normal}
.chapter.ink .poster-head,.chapter.ink .eyebrow{color:#f4f5ed}
.chapter.ink h2 em{color:#f4f5ed}
.chapter.paper .poster-head,.chapter.paper .eyebrow{color:var(--ink)}
.chapter.paper h2 em{color:var(--ink)}

/* 02 / Request path: a left-weighted editorial lead-in above the decision boundary. */
.chapter.boundary{display:grid;grid-template-columns:1fr;gap:clamp(46px,5vw,72px);background:var(--paper);color:var(--ink)}
.boundary .poster-head{grid-column:1/-1}
.boundary-intro{display:grid;grid-template-columns:1fr;gap:clamp(28px,3.5vw,48px)}
.boundary-copy{grid-column:1;min-width:0}
.boundary h2{display:flex;align-items:baseline;gap:clamp(12px,1.4vw,24px);margin:20px 0 0;font-size:clamp(46px,7vw,102px);letter-spacing:-.08em;line-height:.88;white-space:nowrap}
.boundary h2 span,.boundary h2 em{display:inline;white-space:nowrap}
.boundary h2 em{color:var(--ink);font-style:normal}
.boundary-lede{grid-column:1;max-width:640px;margin:0;padding-top:24px;border-top:1px solid #b9bbb3;color:#5d6158;font-size:15px;line-height:1.7}
.decision-record{position:relative;overflow:hidden;margin:0;padding:clamp(28px,4vw,58px);background:var(--ink);color:#f4f5ed;box-shadow:16px 16px 0 var(--acid-shadow)}
.decision-record>figcaption{display:flex;justify-content:space-between;color:#8e9588;font:700 9px/1 var(--mono);letter-spacing:.1em}
.decision-record>figcaption span:first-child{color:var(--acid)}
.record-sheet{width:min(760px,90%);margin:44px auto 0;border:1px solid #53594e;background:#171916;box-shadow:12px 12px 0 #090a08}
.record-sheet>header{display:flex;justify-content:space-between;padding:18px 22px;border-bottom:1px solid #454a40;color:#858c80;font:700 8px/1 var(--mono);letter-spacing:.08em}
.alice-session{margin:0;padding:0 22px;border-bottom:1px solid #454a40;list-style:none}
.alice-session li{display:grid;grid-template-columns:90px 1fr auto;align-items:center;gap:18px;padding:15px 0;border-bottom:1px solid #33372f}
.alice-session li:last-child{border-bottom:0}
.alice-session span,.alice-session small{color:#777e72;font:700 8px/1 var(--mono);letter-spacing:.08em}
.alice-session code{color:#b8beb2;font:10px/1.4 var(--mono)}
.alice-session .current-request span,.alice-session .current-request small{color:var(--acid)}
.record-verdict{padding:clamp(34px,5vw,62px) 24px;text-align:center}
.verdict-checks{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:0 0 clamp(34px,4vw,52px);padding:0;list-style:none;text-align:left}
.verdict-checks li{padding-top:12px;border-top:1px solid #454a40}
.verdict-checks span{display:block;color:#6f766b;font:700 8px/1 var(--mono)}
.verdict-checks b{display:block;margin-top:10px;color:#b8beb2;font:700 9px/1.25 var(--mono)}
.record-verdict .verdict-label{display:block;color:#858c80;font:700 9px/1 var(--mono);letter-spacing:.12em}
.record-verdict>strong{display:block;margin-top:18px;color:var(--acid);font-size:clamp(64px,8.5vw,116px);font-weight:700;letter-spacing:-.09em;line-height:.8}
.record-verdict p{margin:30px 0 0;color:#b7bdb1;font-size:15px;line-height:1.5}
.record-verdict p b{color:#fff;font-weight:700}
.record-sheet dl{margin:0;padding:0 24px;border-top:1px solid #454a40}
.record-sheet dl>div{display:grid;grid-template-columns:140px 1fr;padding:16px 0;border-bottom:1px solid #33372f}
.record-sheet dt{color:#777e72;font:700 9px/1 var(--mono);letter-spacing:.08em}
.record-sheet dd{margin:0;color:#c0c5ba;font:10px/1 var(--mono)}
.record-sheet>footer{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:22px 24px;background:var(--acid);color:var(--ink)}
.record-sheet>footer small{font:700 8px/1 var(--mono);letter-spacing:.08em}
.record-sheet>footer strong{font-size:20px;letter-spacing:-.035em}
.record-sheet>footer code{font:9px/1 var(--mono)}
.record-fail{display:flex;justify-content:space-between;width:min(760px,90%);margin:28px auto 0;padding-top:18px;border-top:1px solid #454a40;color:#838a7e;font:700 8px/1.4 var(--mono);letter-spacing:.08em}
.record-fail strong{color:#b7bdb1}

/* 03 / Administration: the code is the artifact; supporting data stays in the margin. */
.chapter.control{display:grid;grid-template-columns:minmax(0,.8fr) minmax(380px,1.05fr);grid-template-rows:auto auto auto;gap:clamp(48px,6vw,84px) 9vw;background:var(--ink);color:#f4f5ed}
.control .poster-head{grid-column:1/-1}
.control-lede{max-width:590px;align-self:end;margin:0;color:#adb3a6;font-size:15px;line-height:1.7}
.control-lede p{margin:0}
.control-lede p+p{margin-top:18px}
.control-lede code{color:#fff}
.control-object{grid-column:1/-1;display:grid;grid-template-columns:82px minmax(0,1fr) 270px;align-items:stretch;border:0;box-shadow:none}
.commit-axis{position:relative;display:flex;min-height:390px;flex-direction:column;align-items:center;justify-content:space-between;padding:28px 12px;border:0;background:#0b0c0a;color:#aeb4a6;font:10px/1 var(--mono)}
.commit-axis::before{position:absolute;top:40px;bottom:40px;left:50%;width:1px;background:#555b50;content:""}
.commit-axis i,.commit-axis strong,.commit-axis span{position:relative;z-index:1;background:#0b0c0a}
.commit-axis i{width:10px;height:10px;border:1px solid;border-radius:50%}
.commit-axis strong{display:grid;width:40px;height:40px;place-items:center;border-radius:50%;background:var(--acid);color:var(--ink)}
.config{min-width:0;border:0;background:#f7f6f0;color:var(--ink)}
.config-head{display:flex;min-height:48px;align-items:center;justify-content:space-between;padding:0 18px;border:0;background:var(--acid);font:10px/1 var(--mono)}
.config-head button{padding:6px 0;border:0;border-bottom:1px solid;background:transparent;cursor:pointer;font:9px/1 var(--mono);text-transform:uppercase}
.config pre{min-height:294px;margin:0;overflow-x:auto;padding:27px 22px;background:#f7f6f0;font:11px/1.8 var(--mono)}
.config code{display:block;width:max-content;min-width:100%}
.config code>span{display:inline-block;width:36px;color:#92958d}
.config code i{color:#74786f;font-style:normal}
.config code b{color:var(--ink)}
.config mark{padding:1px 4px;background:var(--acid)}
.config code strong{padding:1px 4px;background:var(--ink);color:#fff;font-weight:400}
.config footer{display:flex;min-height:48px;align-items:center;justify-content:space-between;padding:0 18px;border-top:1px solid #cbc9c1;font:9px/1 var(--mono)}
.config footer b{color:var(--ink)}
.capabilities{padding:0 0 0 30px;background:transparent}
.capabilities>span{display:block;padding:0 0 17px;border-bottom:1px solid #51564c;color:var(--acid);font:700 10px/1 var(--mono)}
.capabilities ol{margin:0;padding:0;list-style:none}
.capabilities li{position:relative;padding:17px 0 17px 20px;border-bottom:1px solid #34382f;color:#c0c5ba;font:10px/1 var(--mono)}
.capabilities li::before{position:absolute;top:50%;left:0;width:6px;height:6px;transform:translateY(-50%);background:var(--acid);content:""}

/* 04 / First push: a compact transformation, without another enclosing card. */
.chapter.create{display:grid;grid-template-columns:minmax(0,.9fr) minmax(400px,1fr);grid-template-rows:auto auto;gap:clamp(48px,6vw,84px) 9vw;background:var(--acid);color:var(--ink)}
.create .poster-head{grid-column:1/-1}
.chapter.create .eyebrow,.chapter.create h2 em{color:var(--ink)}
.create-title{align-self:center}
.create-title h2{font-size:clamp(60px,6.9vw,100px)}
.push-object{align-self:center;border:0;background:transparent;box-shadow:none}
.push-object>code{display:flex;min-height:68px;align-items:center;padding:0 20px;border:0;background:var(--ink);color:#fff;font:11px/1.4 var(--mono);white-space:nowrap}
.push-object>code b{color:#fff}
.push-track{display:grid;grid-template-columns:1fr auto 1fr auto 1.25fr;align-items:center;margin-top:34px;counter-reset:none}
.push-track>span,.push-track>strong{display:flex;min-height:90px;align-items:center;padding:18px 12px;border:0;border-top:1px solid #aaa99f;background:transparent;font-size:16px}
.push-track>i{display:block;padding:0 8px;font:normal 14px/1 var(--mono)}
.push-track>span::before,.push-track>span::after,.push-track>strong::before{display:none}
.push-track>strong{position:relative;padding-right:18px;padding-left:18px;border-top-color:var(--ink);background:#fff;box-shadow:inset 0 -6px 0 var(--acid-shadow)}
.push-track>strong b{position:absolute;top:10px;right:10px;padding:5px 6px;background:var(--ink);color:#fff;font:8px/1 var(--mono)}
.push-object>p{margin:0;padding:24px 0 0;border:0;background:transparent;color:#5d6158;font-size:13px;line-height:1.65}

/* 05 / Failure: a quiet audit timeline on ink. */
.chapter.assurance{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.75fr);grid-template-rows:auto auto auto auto;gap:clamp(48px,6vw,84px) 9vw;background:var(--ink);color:#f4f5ed}
.assurance .poster-head{grid-column:1/-1}
.assurance-lede{max-width:590px;align-self:end;margin:0;color:#adb3a6;font-size:15px;line-height:1.7}
.audit-object{grid-column:2/-1;width:auto;margin:0;border:0;background:transparent;box-shadow:none;font:10px/1 var(--mono)}
.audit-head,.audit-object>div{position:relative;display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:16px;min-height:62px;align-items:center;padding:16px 0 16px 28px;border-bottom:1px solid #464b42}
.audit-head{grid-template-columns:1fr 1fr auto;border-top:1px solid #464b42;color:#aab0a4}
.chapter.assurance .poster-head,.chapter.assurance .eyebrow,.chapter.assurance h2 em{color:var(--acid)}
.audit-head b,.audit-object>div>b{color:var(--acid);font-weight:400}
.audit-object>div::before{position:absolute;top:50%;left:0;width:7px;height:7px;transform:translateY(-50%);background:var(--acid);content:""}
.audit-object>div>span,.audit-object>div>small{color:#989f93}
.audit-object footer{display:flex;justify-content:space-between;padding:20px 0;color:#989f93}
.failure-rule{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:40px;padding-top:18px;border-top:1px solid #464b42;color:#b8beb3;font:9px/1.45 var(--mono)}

/* 06 / Roots: open reading columns instead of three boxed cards. */
.chapter.roots{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.75fr);grid-template-rows:auto auto auto auto;gap:clamp(48px,6vw,84px) 9vw;background:var(--paper);color:var(--ink)}
.roots .poster-head{grid-column:1/-1}
.roots h2 em{text-decoration:underline;text-decoration-color:var(--acid);text-decoration-thickness:.08em;text-underline-offset:.08em}
.roots-lede{max-width:590px;align-self:end;margin:0;color:#5d6158;font-size:15px;line-height:1.7}
.roots-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);border:0}
.roots-grid article{min-width:0;padding:28px 34px 20px 0;border-top:2px solid;background:transparent}
.roots-grid article+article{padding-left:34px;border-left:1px solid #b8b9b1}
.roots-grid article>span{color:#5f6557;font:700 10px/1.35 var(--mono);letter-spacing:.07em}
.roots-grid h3{min-height:0;margin:52px 0 18px;font-size:23px;letter-spacing:-.035em}
.roots-grid p{margin:0;color:#5d6158;font-size:13px;line-height:1.65}
.roots-grid code{font:11px/1 var(--mono)}
.roots-links{grid-column:1/-1;display:flex;gap:28px;padding-top:20px;border-top:1px solid;font-size:11px;font-weight:700}
.roots-links a{text-underline-offset:5px}

/* 07 / Start: a final dark checklist, with one clear action at the end. */
.chapter.closing{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.75fr);grid-template-rows:auto auto auto auto;gap:clamp(48px,6vw,84px) 9vw;background:var(--ink);color:#f4f5ed}
.closing .poster-head{grid-column:1/-1}
.start-intro{max-width:590px;align-self:end;color:#adb3a6;font-size:14px;line-height:1.7}
.start-intro p{margin:0}
.start-intro p+p{margin-top:14px}
.start-steps{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);margin:0;padding:0;border:0;list-style:none}
.start-steps>li{display:grid;grid-template-columns:42px 1fr;gap:20px;min-width:0;padding:26px 32px 24px 0;border-top:2px solid #f4f5ed}
.start-steps>li+li{padding-left:32px;border-left:1px solid #464b42}
.chapter.closing .poster-head,.chapter.closing .eyebrow,.chapter.closing h2 em{color:var(--acid)}
.start-steps>li>span{display:grid;width:34px;height:34px;place-items:center;background:var(--acid);color:var(--ink);font:9px/1 var(--mono)}
.start-steps>li>div{min-width:0}
.start-steps h3{margin:5px 0 14px;font-size:20px;letter-spacing:-.035em}
.start-steps p{margin:0;color:#adb3a6;font-size:12px;line-height:1.6}
.start-steps .start-object{margin-top:22px}
.start-object{display:flex;width:100%;min-width:0;overflow:hidden;justify-content:space-between;gap:16px;padding:17px 14px;background:#f4f5ed;color:var(--ink)}
.start-object code{min-width:0;overflow-x:auto;font:9px/1.4 var(--mono);white-space:nowrap}
.start-object code span{color:var(--ink)}
.start-object button{padding:6px 0;border:0;border-bottom:1px solid;background:transparent;cursor:pointer;font:8px/1 var(--mono);text-transform:uppercase}
.closing-links{grid-column:1/-1;display:flex;align-items:center;gap:28px;padding-top:20px;border-top:1px solid #464b42;font-size:11px;font-weight:700}
.closing-links .solid-link{background:var(--acid);color:var(--ink)}
.closing-links a:not(.solid-link){text-underline-offset:5px}
.site-foot{background:var(--acid);color:var(--ink)}

@media(max-width:1100px){
  .masthead nav{gap:18px}
  .masthead-brand{gap:16px}
  .control-object{grid-template-columns:72px minmax(0,1fr) 220px}
}

@media(max-width:900px){
  .overview,.chapter.control,.chapter.create,.chapter.assurance,.chapter.roots,.chapter.closing{grid-template-columns:minmax(0,1fr)}
  .overview{min-height:0}
  .overview .poster-head,.scope-grid,.fit-note,
  .control .poster-head,.control-object,
  .create .poster-head,
  .assurance .poster-head,.audit-object,.failure-rule,
  .roots .poster-head,.roots-grid,.roots-links,
  .closing .poster-head,.start-steps,.closing-links{grid-column:1}
  .overview-lede,.control-lede,.assurance-lede,.roots-lede,.start-intro{align-self:start}
  .control-object{grid-template-columns:76px minmax(0,1fr)}
  .capabilities{grid-column:1/-1;padding:30px 0 0}
  .capabilities ol{display:grid;grid-template-columns:1fr 1fr}
  .capabilities li:nth-child(odd){border-right:1px solid #34382f}
  .audit-object{width:calc(100% - 48px);margin-left:48px}
}

@media(max-width:760px){
  .scope-grid,.roots-grid{grid-template-columns:1fr}
  .scope-grid article+article{border-top:1px solid #4f5449;border-left:0}
  .roots-grid article+article{padding-left:0;border-top:1px solid #b8b9b1;border-left:0}
  .roots-grid h3{margin-top:28px}
  .decision-record{padding:24px 20px;box-shadow:8px 8px 0 var(--acid-shadow)}
  .decision-record>figcaption{gap:20px;line-height:1.35}
  .decision-record>figcaption span:last-child{text-align:right}
  .record-sheet{width:100%;margin-top:30px;box-shadow:8px 8px 0 #090a08}
  .record-sheet>header{gap:18px;line-height:1.35}
  .record-sheet>header span:last-child{text-align:right}
  .alice-session li{grid-template-columns:1fr;padding:14px 0;gap:8px}
  .record-verdict{padding-right:20px;padding-left:20px}
  .verdict-checks{grid-template-columns:1fr;gap:12px;margin-bottom:34px}
  .verdict-checks li{display:grid;grid-template-columns:28px 1fr;align-items:center;padding-top:9px}
  .verdict-checks b{margin-top:0}
  .record-sheet dl>div{grid-template-columns:110px 1fr}
  .record-sheet>footer{grid-template-columns:1fr;gap:10px}
  .record-fail{width:100%;align-items:flex-start;flex-direction:column;gap:10px}
}

@media(max-width:620px){
  .masthead nav>a:not(.nav-source){display:none}
  .overview,.chapter{padding-top:24px;padding-bottom:70px}
  .overview h2,.chapter h2,.create-title h2{font-size:clamp(50px,15vw,68px)}
  .scope-grid article{padding:24px 20px}
  .scope-grid h3{font-size:20px}
  .chapter .poster-head{gap:20px;line-height:1.35}
  .chapter .poster-head span:last-child{text-align:right}
  .boundary-intro{grid-template-columns:1fr;gap:28px}
  .boundary h2{display:block;margin-top:18px;line-height:.9;white-space:normal}
  .boundary h2 span,.boundary h2 em{display:block}
  .boundary-lede{max-width:none;padding-top:20px}
  .control-object{grid-template-columns:1fr}
  .commit-axis{min-height:76px;flex-direction:row;padding:18px}
  .commit-axis::before{top:50%;right:28px;bottom:auto;left:28px;width:auto;height:1px}
  .config pre{padding:22px 12px;font-size:9px}
  .capabilities ol{grid-template-columns:1fr}
  .capabilities li:nth-child(odd){border-right:0}
  .push-object>code{overflow-x:auto;font-size:9px}
  .push-track{grid-template-columns:1fr;margin-top:24px}
  .push-track>i{display:none}
  .push-track>span,.push-track>strong{min-height:70px}
  .audit-object{width:100%;margin-left:0;font-size:9px}
  .audit-head,.audit-object>div{grid-template-columns:68px 1fr auto;gap:8px;padding-left:22px}
  .audit-object>div>small{display:none}
  .failure-rule{grid-template-columns:1fr;gap:16px}
  .roots-grid article{padding:24px 0 30px}
  .start-steps{grid-template-columns:1fr}
  .start-steps>li{padding:24px 0 28px}
  .start-steps>li+li{padding-left:0;border-top:1px solid #464b42;border-left:0}
  .closing-links{align-items:flex-start;flex-direction:column}
}
