/* Magazine layer for one post: stobox-october-2026-recap-rwa-market-sigma-rome.
   Same vocabulary as mg-digest-2026-10-27.css: site tokens only, one accent, no second
   hue, no gradients on surfaces, square cards, hairlines instead of shadows.
   Kept from the reference: meta, lede, dropmark, note, stats, chapter opener, pull quote,
   the founder's card, figures, the rail, the scale bars, the two-lens card.
   Added here: a six-step stage strip, and a three-column table for the build order. */
.post .essay .mg-meta{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0 0 28px;padding:12px 0;border-top:2px solid var(--ink);border-bottom:1px solid var(--hairline);font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.post .essay .mg-lede{font-family:var(--font-display);font-size:clamp(22px,3.2vw,27px);line-height:1.4;color:var(--ink);margin:0 0 28px;text-wrap:pretty}
.post .essay .mg-dropmark{display:none}
.post .essay .mg-dropmark + p::first-letter{float:left;font-family:var(--font-display);font-weight:500;font-size:4.6em;line-height:.82;padding:.06em .1em 0 0;color:var(--blue)}
.post .essay .mg-note{margin:26px 0;font-size:14.5px;line-height:1.6;color:var(--muted);border-left:2px solid var(--hairline-strong);padding-left:14px}

/* stat strip */
.post .essay .mg-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:34px 0 40px;border-top:2px solid var(--ink)}
.mg-stats div{padding:16px 14px 16px 0;border-bottom:1px solid var(--hairline-strong)}
.mg-stats div+div{padding-left:14px;border-left:1px solid var(--hairline)}
.mg-stats b{display:block;font-family:var(--font-display);font-weight:500;font-size:clamp(32px,5.6vw,46px);line-height:1;color:var(--blue)}
.mg-stats span{display:block;margin-top:8px;font-size:13.5px;line-height:1.4;color:var(--body)}

/* chapter opener */
.post .essay .mg-chap{display:grid;grid-template-columns:auto 1fr;align-items:end;gap:6px 18px;margin:64px 0 8px;padding-top:18px;border-top:2px solid var(--ink)}
.mg-chap em{font-style:normal;font-family:var(--font-display);font-size:clamp(54px,10vw,84px);line-height:.8;color:var(--blue);font-weight:500}
.mg-chap h2{margin:0 !important;padding:0 !important;border:0 !important;font-size:clamp(28px,5vw,40px) !important;line-height:1.1 !important}
.mg-chap span{grid-column:2;font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}

/* pull quotes */
.post .essay .mg-pull{margin:44px 0;padding:6px 0 6px 24px;border-left:3px solid var(--blue)}
.mg-pull p{margin:0 !important;font-family:var(--font-display);font-size:clamp(24px,4vw,32px);line-height:1.3;color:var(--ink);text-wrap:balance;max-width:none}
.mg-pull cite{display:block;margin-top:14px;font-style:normal;font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}

/* the founder's read, once */
.post .essay .mg-gene{margin:52px 0;padding:34px 30px 28px;background:var(--dark);color:var(--on-dark);position:relative}
.mg-gene::before{content:"\201C";position:absolute;left:24px;top:6px;font-family:var(--font-display);font-size:96px;line-height:1;color:var(--blue-400)}
.mg-gene p{position:relative;margin:26px 0 0 !important;font-family:var(--font-display);font-size:clamp(22px,3.6vw,29px);line-height:1.35;color:var(--on-dark);max-width:none}
.mg-gene cite{display:block;margin-top:20px;padding-top:14px;border-top:1px solid var(--on-dark-hairline);font-style:normal;font-size:14px;color:var(--on-dark-link)}
.mg-gene cite b{color:#fff;font-weight:500}

/* figures */
.post .essay .mg-fig{margin:40px 0 44px;padding-top:18px;border-top:2px solid var(--ink)}
.mg-fig .mg-cap{margin:0 0 6px !important;font-family:var(--font-mono);font-size:12px !important;letter-spacing:.06em;text-transform:uppercase;color:var(--muted) !important}
.mg-fig h3{margin:0 0 16px !important;font-family:var(--font-display);font-weight:500;font-size:22px !important;line-height:1.25 !important;color:var(--ink)}
.mg-fig figcaption{margin-top:16px;padding-top:12px;border-top:1px solid var(--hairline);font-size:14px;line-height:1.55;color:var(--muted);max-width:64ch}

/* two lenses */
.post .essay .mg-lens{margin:26px 0 38px}
.mg-lens{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--hairline-strong)}
.mg-lens>div{padding:20px 20px 18px}
.mg-lens>div+div{border-left:1px solid var(--hairline-strong);background:var(--blue);color:var(--on-accent-soft)}
.mg-lens b{display:block;font-family:var(--font-display);font-weight:500;font-size:22px;line-height:1.2;color:var(--ink)}
.mg-lens>div+div b{color:#fff}
.mg-lens .q{margin:8px 0 12px;font-size:15px;line-height:1.45}
.post .essay .mg-lens ul{margin:0;padding:0;list-style:none}
.post .essay .mg-lens li,.post .essay .mg-rail li,.post .essay .mg-takes li{list-style:none}
.mg-lens li{padding:9px 0;border-top:1px solid var(--hairline);font-size:14px;line-height:1.45}
.mg-lens>div+div li{border-top-color:var(--on-accent-rule)}
.post .essay .mg-lens>div+div .q,.post .essay .mg-lens>div+div li{color:var(--on-accent-soft)}

/* bars on a true scale */
.mg-scale{display:grid;gap:22px}
.mg-row>b{display:block;font-weight:500;color:var(--ink);font-size:15px}
.mg-row>small{display:block;margin:2px 0 8px;font-size:13px;color:var(--muted)}
.mg-bar{display:flex;height:38px;gap:2px}
.mg-bar span{display:flex;align-items:center;padding:0 10px;font-size:13px;white-space:nowrap;overflow:hidden;background:var(--blue-100);color:var(--blue-950)}
.mg-bar span.on{background:var(--blue);color:#fff}
.mg-bar span.off{background:var(--well);color:var(--muted);border:1px solid var(--hairline-strong)}
.mg-bar span.mid{background:var(--blue-300);color:var(--blue-950)}
.mg-ticks{position:relative;height:18px;margin-top:8px;font-family:var(--font-mono);font-size:11.5px;color:var(--muted)}
.mg-ticks span{position:absolute;top:0;transform:translateX(-50%);white-space:nowrap}
.mg-ticks span::before{content:"";position:absolute;left:50%;top:-9px;height:6px;border-left:1px solid var(--hairline-strong)}
.mg-ticks .t0{left:0;transform:none}.mg-ticks .t0::before{left:0}
.mg-ticks .t25{left:25%}.mg-ticks .t50{left:50%}.mg-ticks .t75{left:75%}
.mg-ticks .t100{left:100%;transform:translateX(-100%)}.mg-ticks .t100::before{left:100%}
/* widths against a $47B ceiling, figures read 1 November 2026 */
.w985{flex:0 0 98.5%}.w834{flex:0 0 83.4%}.w309{flex:0 0 30.9%}.w172{flex:0 0 17.2%}.w110{flex:0 0 11.0%}.w91{flex:0 0 9.1%}
.mg-swap{margin-top:14px;padding:12px 14px;background:var(--well);font-size:14px;line-height:1.5;color:var(--body)}
.mg-swap b{color:var(--ink);font-weight:500}

/* timeline rail */
.mg-rail{list-style:none;margin:0;padding:0;position:relative}
.post .essay .mg-rail{padding-left:0}
.mg-rail li{display:grid;grid-template-columns:118px 1fr;gap:4px 18px;padding:14px 0;border-top:1px solid var(--hairline-strong);list-style:none}
/* Three children in a two-column grid, so each one is placed by hand: without this the
   body text falls into the 118px date column. */
.mg-rail time{grid-column:1;grid-row:1;font-family:var(--font-mono);font-size:12.5px;letter-spacing:.02em;color:var(--blue);padding-top:2px}
.mg-rail b{grid-column:2;grid-row:1;display:block;color:var(--ink);font-weight:500;font-size:15.5px}
.mg-rail span{grid-column:2;grid-row:2;display:block;font-size:14.5px;line-height:1.5;color:var(--body)}
.mg-rail li.now time{color:var(--ink);font-weight:600}

/* six stages a project moves through */
.mg-stage{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border:1px solid var(--hairline-strong)}
.mg-stage>div{padding:14px 12px 16px}
.mg-stage>div+div{border-left:1px solid var(--hairline-strong)}
.mg-stage i{display:block;font-style:normal;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:var(--muted)}
.mg-stage b{display:block;margin-top:6px;font-family:var(--font-display);font-weight:500;font-size:17px;line-height:1.15;color:var(--ink)}
.mg-stage small{display:block;margin-top:6px;font-size:12.5px;line-height:1.4;color:var(--muted)}
.mg-stage>div.on{background:var(--blue-100)}

/* build order: three columns, broken out of the measure so the cells are not a word wide */
.post .essay .mg-wide{width:min(1100px,calc(100vw - 40px));position:relative;left:50%;transform:translateX(-50%);max-width:none}
.mg-tbl{border-top:1px solid var(--hairline-strong)}
.mg-tr{display:grid;grid-template-columns:200px minmax(0,1.3fr) minmax(0,1fr);border-bottom:1px solid var(--hairline-strong)}
.mg-th{border-bottom:2px solid var(--ink)}
.mg-th span{padding:12px 14px 10px;font-family:var(--font-mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.mg-th span+span{border-left:1px solid var(--hairline)}
.mg-tc{display:flex;flex-direction:column;padding:16px 14px 16px 0}
.mg-tc b{display:block;font-family:var(--font-display);font-weight:500;font-size:20px;line-height:1.2;color:var(--ink)}
.mg-tc small{display:block;margin-top:3px;font-size:12px;line-height:1.35;color:var(--muted)}
.mg-td{padding:16px 14px;border-left:1px solid var(--hairline);font-size:14px;line-height:1.5;color:var(--body)}
.mg-td p{margin:0 !important;max-width:none}
.mg-td.fix{background:var(--blue-100)}
@media (max-width:900px){
 .post .essay .mg-wide,.post .essay .mg-shot,.post .essay .mg-shots.mg-wide{width:auto;left:0;transform:none}
 .mg-tr.mg-th{display:none}
 .mg-tr{display:block;padding:18px 0}
 .mg-tc{padding:0 0 12px}
 .mg-td{border-left:0;border-top:1px solid var(--hairline);padding:12px 0}
 .mg-td.fix{padding:12px}
 .mg-td::before{content:attr(data-h);display:block;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
}

/* numbered takeaways */
.post .essay .mg-takes ul,.post .essay .mg-takes ol{list-style:none;margin:28px 0;padding:0;counter-reset:mgt;border-top:2px solid var(--ink)}
/* The counter is positioned, not a grid cell: these items open on a bold lead-in, and a
   grid would scatter the <strong> and the text that follows it into separate cells. */
.post .essay .mg-takes li{counter-increment:mgt;position:relative;display:block;margin:0;padding:14px 0 14px 56px;border-bottom:1px solid var(--hairline)}
.post .essay .mg-takes li::before{content:counter(mgt,decimal-leading-zero);position:absolute;left:0;top:15px;font-family:var(--font-display);font-size:24px;line-height:1.1;color:var(--blue)}
.post .essay .mg-takes li::marker{content:""}
.post .essay .mg-takes li b,.post .essay .mg-takes li strong{color:var(--ink);font-weight:500}

@media (max-width:760px){
 .post .essay .mg-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
 .mg-stats div:nth-child(3){padding-left:0;border-left:0}
 .mg-lens{grid-template-columns:1fr}
 .mg-lens>div+div{border-left:0;border-top:1px solid var(--hairline-strong)}
 .mg-rail li{grid-template-columns:1fr}
 .mg-rail time,.mg-rail b,.mg-rail span{grid-column:1}
 .mg-rail b{grid-row:2}.mg-rail span{grid-row:3}
 .mg-bar span{font-size:12px;padding:0 6px}
 .mg-gene{padding:30px 20px 22px}
 .mg-stage{grid-template-columns:repeat(2,minmax(0,1fr))}
 .mg-stage>div+div{border-left:0}
 .mg-stage>div:nth-child(2n){border-left:1px solid var(--hairline-strong)}
 .mg-stage>div:nth-child(n+3){border-top:1px solid var(--hairline-strong)}
}
@media (prefers-reduced-motion:no-preference){
 .mg-bar span{transform-origin:left center;animation:mgGrow .7s cubic-bezier(.2,.7,.2,1) both}
 @keyframes mgGrow{from{transform:scaleX(.001)}to{transform:scaleX(1)}}
}

/* ---- product screenshots -------------------------------------------------
   A shot sits in a framed well rather than bleeding into the page: these are
   light-UI captures on a light article, and without the frame the screen edge
   disappears. Full-measure by default, paired side by side with .mg-shots. */
/* Captures are 1600px wide: at the text measure the UI inside them is unreadable,
   so every product shot breaks out to the wide band, as the roadmap table does. */
.post .essay .mg-shot{width:min(1100px,calc(100vw - 40px));position:relative;left:50%;transform:translateX(-50%);max-width:none;margin:34px 0 40px}
.mg-shot img{display:block;width:100%;height:auto;border:1px solid var(--hairline-strong);background:var(--well)}
.mg-shot figcaption{margin-top:12px;font-size:14px;line-height:1.55;color:var(--muted);max-width:64ch}
.mg-shot figcaption b{display:block;font-family:var(--font-mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--blue);margin-bottom:4px}
.post .essay .mg-shots.mg-wide{width:min(1100px,calc(100vw - 40px));position:relative;left:50%;transform:translateX(-50%);max-width:none}
.post .essay .mg-shots{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:34px 0 40px}
.mg-shots figure{margin:0}
.mg-shots img{display:block;width:100%;height:auto;border:1px solid var(--hairline-strong);background:var(--well)}
.mg-shots figcaption{margin-top:10px;font-size:13.5px;line-height:1.5;color:var(--muted)}
.mg-shots figcaption b{display:block;font-family:var(--font-mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--blue);margin-bottom:4px}

/* ---- the seven checks on a transfer -------------------------------------- */
.mg-seven{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid var(--hairline-strong)}
.mg-seven>div{padding:14px 12px 16px}
.mg-seven>div+div{border-left:1px solid var(--hairline-strong)}
.mg-seven em{font-style:normal;font-family:var(--font-display);font-size:26px;line-height:1;color:var(--blue)}
.mg-seven b{display:block;margin-top:6px;font-family:var(--font-display);font-weight:500;font-size:16px;line-height:1.15;color:var(--ink)}
.mg-seven span{display:block;margin-top:5px;font-size:12.5px;line-height:1.4;color:var(--muted)}
.mg-seven-out{margin-top:0;padding:14px;background:var(--blue);color:#fff;font-size:14px;line-height:1.5}
.mg-seven-out b{display:block;font-family:var(--font-mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--on-accent-meta,#fff);opacity:.85;margin-bottom:4px}

/* ---- the event card in the Rome chapter ----------------------------------
   Third-party wordmarks, so they keep their own clear space and sit on white
   rather than on the accent: no recolouring, no cropping, no effects. */
.post .essay .mg-event{margin:30px 0 38px;border:1px solid var(--hairline-strong)}
.mg-event-marks{display:flex;flex-wrap:wrap;align-items:center;gap:28px;padding:22px 24px;background:#fff;border-bottom:1px solid var(--hairline-strong)}
.post .essay .mg-event-marks img{display:block;height:34px;width:auto;max-width:none}
.mg-event-body{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.mg-event-body>div{padding:16px 20px 18px}
.mg-event-body>div+div{border-left:1px solid var(--hairline)}
.mg-event-body i{display:block;font-style:normal;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.mg-event-body b{display:block;margin-top:6px;font-family:var(--font-display);font-weight:500;font-size:19px;line-height:1.2;color:var(--ink)}
.mg-event-body small{display:block;margin-top:5px;font-size:13px;line-height:1.45;color:var(--muted)}

@media (max-width:760px){
 .post .essay .mg-shots{grid-template-columns:1fr}
 .mg-seven{grid-template-columns:repeat(2,minmax(0,1fr))}
 .mg-seven>div+div{border-left:0}
 .mg-seven>div:nth-child(2n){border-left:1px solid var(--hairline-strong)}
 .mg-seven>div:nth-child(n+3){border-top:1px solid var(--hairline-strong)}
 .mg-event-body{grid-template-columns:1fr}
 .mg-event-body>div+div{border-left:0;border-top:1px solid var(--hairline)}
 .mg-event-marks{gap:20px;padding:18px}
 .post .essay .mg-event-marks img{height:26px}
}

/* ---- the founder's sign-off, with a portrait -----------------------------
   One per article, at the end. The portrait is a circle on the accent panel;
   the text is his, so it is set in the display face and not in body copy. */
.post .essay .mg-sign{margin:52px 0 40px;border:1px solid var(--hairline-strong);background:var(--well)}
.mg-sign-top{display:flex;align-items:center;gap:18px;padding:22px 24px 18px}
.post .essay .mg-sign-top img{display:block;width:76px;height:76px;min-width:76px;border-radius:50%;object-fit:cover;border:2px solid var(--blue);background:#fff}
.mg-sign-top b{display:block;font-family:var(--font-display);font-weight:500;font-size:21px;line-height:1.2;color:var(--ink)}
.mg-sign-top span{display:block;margin-top:3px;font-family:var(--font-mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.mg-sign-body{padding:0 24px 24px}
.post .essay .mg-sign-body p{margin:0 0 14px !important;font-family:var(--font-display);font-size:clamp(18px,2.6vw,21px);line-height:1.45;color:var(--ink);max-width:none}
.post .essay .mg-sign-body p:last-of-type{margin-bottom:18px !important}
.mg-sign-cta{display:inline-block;padding:11px 18px;background:var(--blue);color:#fff !important;font-size:14.5px;line-height:1;text-decoration:none;border:1px solid var(--blue)}
.post .essay a.mg-sign-cta:hover{background:var(--ink);border-color:var(--ink)}

/* ---- the catalogue at opening -------------------------------------------- */
.mg-cat{border:1px solid var(--hairline-strong)}
.mg-cat-row{display:grid;grid-template-columns:168px minmax(0,1fr) 150px;align-items:start}
.mg-cat-row+.mg-cat-row{border-top:1px solid var(--hairline-strong)}
.mg-cat-row>div{padding:16px 18px}
.mg-cat-row>div+div{border-left:1px solid var(--hairline)}
.mg-cat-row b{display:block;font-family:var(--font-display);font-weight:500;font-size:19px;line-height:1.2;color:var(--ink)}
.mg-cat-row small{display:block;margin-top:4px;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.mg-cat-row p{margin:0 !important;font-size:14px;line-height:1.5;color:var(--body);max-width:none}
.mg-cat-state{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase}
.mg-cat-state.yes{color:var(--blue)}
.mg-cat-state.no{color:var(--muted)}
.mg-cat-row.head{background:var(--well)}
.mg-cat-row.head>div{padding:11px 18px}
.mg-cat-row.head span{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}

@media (max-width:760px){
 .mg-sign-top{flex-direction:column;align-items:flex-start;gap:12px}
 .post .essay .mg-sign-top img{width:64px;height:64px;min-width:64px}
 .mg-cat-row{grid-template-columns:1fr}
 .mg-cat-row>div+div{border-left:0;border-top:1px solid var(--hairline)}
 .mg-cat-row.head{display:none}
}
