/* Shared long-form indexes: essays, readings, and future editorial collections. */
.library-hero{padding:clamp(54px,8vw,104px) var(--gutter) clamp(38px,6vw,72px);border-bottom:var(--heavy)}
.library-hero .wrap{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(250px,.5fr);gap:clamp(32px,8vw,112px);align-items:end}
.library-hero h1{margin:14px 0 18px;font-size:var(--step-4);line-height:.84;letter-spacing:-.075em;animation:library-rise var(--dur-slow) var(--ease) both}
.library-hero .lede{max-width:35rem;font:600 var(--lede)/1.22 var(--editorial);color:var(--ink-2)}
.library-hero .library-note{padding-top:14px;border-top:var(--heavy);font:600 10px/1.65 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}
.library-hero .library-note span{display:block}
.editorial-art{padding:0 var(--gutter);border-bottom:var(--heavy)}
.editorial-art__frame{max-width:var(--max);margin-inline:auto;overflow:hidden;background:var(--paper-2);border-inline:var(--hairline)}
.editorial-art img{display:block;width:100%;height:clamp(280px,48vw,650px);object-fit:cover;object-position:center}
.editorial-art figcaption{max-width:var(--max);margin-inline:auto;padding:10px 0 12px;font:600 9px/1.45 var(--mono);letter-spacing:.09em;text-transform:uppercase;color:var(--ink-2)}
.editorial-art--power .editorial-art__frame{border-top:6px solid var(--red)}
.editorial-art--shared .editorial-art__frame{border-top:6px solid var(--ink)}
.editorial-art--recap .editorial-art__frame{border-top:6px solid;border-image:linear-gradient(90deg,var(--gold) 0 50%,var(--red) 50% 100%) 1}
.library-feature{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(320px,.85fr);gap:clamp(28px,5vw,72px);align-items:start}
.library-lead{display:block;text-decoration:none}
.library-lead .media{position:relative;overflow:hidden;min-height:clamp(320px,45vw,590px);background:var(--paper-2);border-bottom:6px solid var(--red)}
.library-lead .media img{width:100%;height:100%;position:absolute;inset:0;object-fit:contain;object-position:center;mix-blend-mode:multiply;transition:transform var(--dur-slow) var(--ease)}
.library-lead:hover .media img{transform:scale(1.025)}
.library-lead h2{max-width:15ch;margin:22px 0 11px;font-family:var(--editorial);font-size:var(--step-3);line-height:1.02;letter-spacing:-.035em}
.library-lead:hover h2{color:var(--red-deep)}
.library-lead .dek{max-width:48rem;color:var(--ink-2)}
.library-rail{border-top:var(--heavy)}
.library-row{--row-accent:var(--ink);display:grid;grid-template-columns:56px minmax(0,1fr);gap:16px;padding:22px 0;border-bottom:var(--hairline);text-decoration:none;align-items:start}
.library-row::before{content:"";width:100%;height:5px;margin-top:7px;background:var(--row-accent);transform:scaleX(.28);transform-origin:left;transition:transform var(--dur-base) var(--ease)}
.library-row:hover::before{transform:scaleX(1)}
.library-row h3{font-family:var(--editorial);font-size:clamp(1rem,1.6vw,var(--step-1));line-height:1.2;letter-spacing:-.02em}
.library-row p{margin-top:7px;font-size:var(--step--1);color:var(--ink-2)}
.library-row--money{--row-accent:var(--gold)}.library-row--power{--row-accent:var(--red)}.library-row--held{--row-accent:var(--blue)}
/* Featured rail rows carry two real children (serial + content), which combined
   with the decorative ::before bar makes three grid items against a two-column
   template — the third wraps onto its own row, crushing the content into the
   56px column. The bar is dropped here rather than fought. */
.library-rail .library-row::before{display:none}
.library-rail .library-row{grid-template-columns:90px minmax(0,1fr)}
.library-rail .library-row .serial{padding-top:2px;font:600 10px/1.4 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--row-accent)}
.library-section{padding:var(--section) var(--gutter)}
.library-section+.library-section{border-top:var(--hairline)}
.library-heading{display:grid;grid-template-columns:150px minmax(0,1fr);gap:clamp(24px,6vw,80px);margin-bottom:var(--xl)}
.library-heading h2{font-size:var(--step-3)}
.library-heading .dek{max-width:44rem;color:var(--ink-2)}
.library-list{border-top:var(--heavy)}
.library-list .library-row{grid-template-columns:120px minmax(0,1fr) 120px;gap:clamp(18px,4vw,48px);align-items:baseline}
.library-list .library-row::before{display:none}
.library-list .library-row .serial{color:var(--row-accent)}
.library-list .library-row .go{font:600 10px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;text-align:right}
.library-list .library-row:hover h3{color:var(--row-accent)}
.reading-paths{display:grid;grid-template-columns:1fr 1fr;border-block:var(--heavy)}
.reading-path{position:relative;min-height:600px;padding:clamp(28px,5vw,58px);display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;text-decoration:none}
.reading-path+.reading-path{border-left:var(--hairline)}
.reading-path::before{content:"";position:absolute;z-index:1;left:0;right:0;bottom:0;height:47%;background:var(--paper)}
.reading-path img{position:absolute;z-index:0;inset:0;width:100%;height:58%;object-fit:contain;object-position:center;mix-blend-mode:multiply;transition:transform var(--dur-slow) var(--ease)}
.reading-path:hover img{transform:translateY(-6px)}
.reading-path h2{position:relative;z-index:2;width:max-content;max-width:100%;font-size:clamp(2.25rem,4.4vw,3.7rem)}
.reading-path h2::after{content:"";display:block;width:100%;height:.55em;margin-top:.18em}
.reading-path--money h2::after{background:repeating-linear-gradient(to bottom,var(--green) 0 var(--bar-thick),transparent var(--bar-thick) var(--bar-period))}
.reading-path--power h2::after{background:repeating-linear-gradient(to right,var(--red) 0 var(--bar-thick),transparent var(--bar-thick) var(--bar-period))}
.reading-path .lede,.reading-path .serial,.reading-path .go{position:relative;z-index:2}
.reading-path .lede{max-width:28rem;margin-top:12px;font-family:var(--editorial);font-size:var(--step-1);line-height:1.3;color:var(--ink-2)}
.reading-path .go{margin-top:22px;font:600 11px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase}
.reading-path--money .go{color:var(--gold-deep)}.reading-path--power .go{color:var(--red-deep)}
.library-cta{background:var(--ink);color:var(--paper);padding:var(--section) var(--gutter)}
.library-cta .wrap{display:flex;align-items:end;justify-content:space-between;gap:var(--xl)}
.library-cta h2{max-width:17ch;font-size:var(--step-3)}
.library-cta .btn{color:var(--paper);border-color:var(--paper);flex:0 0 auto}
.library-cta .btn:hover{background:var(--paper);color:var(--ink)}
.embed-showcase{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,72px)}
.embed-unit{min-width:0}
.embed-unit>header{padding-top:16px;border-top:var(--heavy);margin-bottom:16px}
.embed-unit h2{margin:7px 0 9px;font-size:var(--step-2)}
.embed-unit header p{max-width:34rem;color:var(--ink-2)}
.embed-frame{width:100%;height:520px;border:var(--hairline);background:var(--paper-hi)}
.embed-code{display:block;width:100%;min-height:86px;margin-top:12px;padding:12px;border:var(--hairline);background:var(--paper-hi);color:var(--ink-2);font:500 10px/1.55 var(--mono);resize:vertical}
.embed-links{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:14px;font:600 10px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase}
.embed-links a:hover{color:var(--accent-deep)}
.edition-list{border-top:var(--heavy)}
.edition{--edition-accent:var(--ink);display:grid;grid-template-columns:150px minmax(0,1fr) 150px;gap:clamp(20px,5vw,68px);padding:clamp(28px,4vw,46px) 0;border-bottom:var(--hairline);align-items:start}
.edition::before{content:"";display:block;width:62px;height:6px;margin-top:8px;background:var(--edition-accent)}
.edition--money{--edition-accent:var(--gold)}.edition--power{--edition-accent:var(--red)}.edition--shared{--edition-accent:var(--ink)}
.edition h2{font-family:var(--editorial);font-size:var(--step-2);line-height:1.12;letter-spacing:-.03em}
.edition h2 a:hover{color:var(--edition-accent)}
.edition .dek{max-width:42rem;margin-top:12px;color:var(--ink-2)}
.edition aside{font:600 10px/1.65 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}
.brief-body{padding:var(--section) var(--gutter)}
.brief-body .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.35fr);gap:clamp(36px,8vw,112px);align-items:start}
.brief-story{max-width:40rem}
.brief-story h2{margin:42px 0 12px;font-family:var(--editorial);font-size:var(--step-2);line-height:1.08;letter-spacing:-.03em}
.brief-story h2:first-child{margin-top:0}
.brief-story p{font-size:var(--step-0);line-height:1.65;color:rgba(17,13,8,.85)}
.brief-story .pull{margin:30px 0;padding:22px 0;border-block:var(--heavy);font:600 var(--step-2)/1.14 var(--editorial);color:var(--ink)}
/* In-essay illustration, for essays with no editorial art of their own —
   reuses the site's engraved category art at a smaller, in-line scale. */
.essay-fig{margin:8px 0 32px}
.essay-fig .frame{position:relative;overflow:hidden;aspect-ratio:16/10;background:var(--paper-2);border-bottom:4px solid var(--ink)}
.essay-fig .frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;mix-blend-mode:multiply}
.essay-fig figcaption{margin-top:10px;font:600 9px/1.45 var(--mono);letter-spacing:.09em;text-transform:uppercase;color:var(--ink-2)}
.brief-facts{border-top:var(--heavy)}
.brief-facts>div{padding:16px 0;border-bottom:var(--hairline)}
.brief-facts b{display:block;margin-bottom:5px;font:700 9.5px/1.3 var(--mono);letter-spacing:.1em;text-transform:uppercase}
.brief-facts p,.brief-facts a{font-size:var(--step--1);line-height:1.5;color:var(--ink-2)}
.brief-facts a:hover{color:var(--accent-deep)}
/* Minimal single-line citation, modeled on The Real Steal's "Receipts: A · B · C"
   pattern — a label plus inline links, not a heading over a bulleted list. */
.brief-sources{margin-top:42px;padding-top:16px;border-top:var(--heavy);font-size:var(--step--1);line-height:1.7;color:var(--ink-2)}
.brief-sources b{color:var(--ink);font-weight:700}
.brief-sources a{font-weight:700;color:var(--ink);text-decoration:underline;text-decoration-color:var(--rule-2)}
.brief-sources a:hover{color:var(--accent-deep)}
.brief-body .share-receipt{grid-column:1/-1;margin-top:36px}
/* Receipt links inside the weekly narrative. Every claim in the prose points at
   the row that carries it, so the link has to read as evidence, not decoration. */
.brief-story a{font-weight:700;color:var(--ink);text-decoration:underline;text-decoration-color:var(--rule-2);text-underline-offset:2px}
.brief-story a:hover{color:var(--accent-deep)}
.brief-story .brief-sources a{text-underline-offset:0}
/* The receipts behind one section of the weekly, listed under it. */
.brief-receipts{margin-top:18px;padding-top:12px;border-top:2px solid var(--item-accent,var(--red))}
.brief-receipts b{display:block;margin-bottom:7px;font:700 9.5px/1.2 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2)}
.brief-receipts li{display:grid;grid-template-columns:58px minmax(0,1fr);gap:12px;padding:7px 0;border-bottom:var(--hairline);font-size:var(--step--1);line-height:1.4}
.brief-receipts li:last-child{border-bottom:0}
.brief-receipts time{font:600 9.5px/1.55 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2)}
/* The running thread: what this week continues from the weeks before it. */
.brief-thread{margin:36px 0;padding:20px 0;border-block:var(--heavy)}
.brief-thread b{display:block;margin-bottom:9px;font:700 9.5px/1.2 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2)}
.brief-thread p{font-size:var(--step--1)!important;line-height:1.6}
.brief-thread p+p{margin-top:9px}
/* Rail beside the weekly: the editions before this one. */
.rail-head{padding-bottom:9px;border-bottom:var(--heavy);font:700 9.5px/1.2 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2)}
.rail-edition{--rail-accent:var(--ink);display:block;padding:15px 0;border-bottom:var(--hairline);text-decoration:none}
.rail-edition .serial{font-size:9.5px;letter-spacing:.08em;color:var(--rail-accent)}
.rail-edition h3{margin-top:6px;font-family:var(--editorial);font-size:var(--step-0);line-height:1.14;letter-spacing:-.022em}
.rail-edition:hover h3{color:var(--rail-accent)}
.rail-edition p{margin-top:6px;font-size:var(--step--1);line-height:1.45;color:var(--ink-2)}
.rail-edition--power{--rail-accent:var(--red)}
.rail-edition--money{--rail-accent:var(--gold-deep)}
.rail-more{display:inline-block;margin-top:16px;font:600 10px/1.4 var(--mono);letter-spacing:.09em;text-transform:uppercase;color:var(--ink);text-decoration:underline;text-decoration-color:var(--rule-2)}
.rail-more:hover{color:var(--accent-deep)}
.rail-note{margin-top:26px;padding-top:14px;border-top:var(--heavy);font-size:var(--step--1);line-height:1.5;color:var(--ink-2)}

/* Weekly Wrap: a briefing product, not a feature article. Five linked points,
   one narrow reading column, and no visual furniture between reader and news. */
.weekly-wrap__edition{width:min(100%,46rem);margin-inline:auto;padding:clamp(28px,5vw,52px) var(--gutter) clamp(40px,6vw,68px)}
.weekly-wrap__head{padding-bottom:clamp(20px,3vw,28px);border-bottom:var(--heavy)}
.weekly-wrap__head .serial{font-size:.6875rem;letter-spacing:.13em}
.weekly-wrap__head h1{max-width:17ch;margin:12px 0 16px;font:600 clamp(2.5rem,2rem + 2.2vw,4.25rem)/.96 var(--editorial);letter-spacing:-.045em;overflow-wrap:normal}
.weekly-wrap__dek{max-width:58ch;font:400 clamp(1.15rem,1.09rem + .28vw,1.3rem)/1.38 var(--editorial);color:var(--ink-2)}
.weekly-wrap__meta{display:flex;flex-wrap:wrap;gap:4px 10px;margin-top:16px;font:600 .6875rem/1.5 var(--mono);font-variant-numeric:tabular-nums;letter-spacing:.055em;text-transform:uppercase;color:var(--ink-2)}
.weekly-wrap__brief{counter-reset:wrap-item}
.weekly-wrap__thesis{margin:0;padding:clamp(20px,3vw,28px) 0;border-bottom:var(--heavy);font-family:var(--editorial);font-size:clamp(1.1rem,1.04rem + .28vw,1.25rem);line-height:1.48;color:var(--ink)}
.weekly-wrap__thesis-label{display:block;margin-bottom:8px;font:700 .6875rem/1.2 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--red)}
.weekly-wrap__thesis strong{font-weight:600}
/* The items read as continuous prose with the thesis above them, so they take the same
   editorial serif. They used var(--body) — Inter — which put two different body faces on
   one page: Newsreader for the thesis, Inter for the five numbered points. */
.weekly-wrap__item{counter-increment:wrap-item;position:relative;margin:0;padding:clamp(18px,2.5vw,24px) 0 clamp(18px,2.5vw,24px) 38px;border-bottom:var(--hairline);font:400 1.0625rem/1.6 var(--editorial);color:var(--ink)}
.weekly-wrap__item::before{content:counter(wrap-item,decimal-leading-zero);position:absolute;top:clamp(20px,2.7vw,26px);left:0;font:700 .7rem/1 var(--mono);letter-spacing:.05em;color:var(--red)}
.weekly-wrap__item strong{font-family:var(--editorial);font-size:1.125rem;font-weight:600}
.weekly-wrap__thesis a,.weekly-wrap__item a,.weekly-wrap__footer a{font-weight:700;text-decoration:underline;text-decoration-color:var(--rule);text-underline-offset:2px}
.weekly-wrap__thesis a:hover,.weekly-wrap__item a:hover,.weekly-wrap__footer a:hover{color:var(--red-deep)}
.weekly-wrap__links{display:block;margin-top:8px;font:700 .75rem/1.5 var(--mono);letter-spacing:.035em}
.weekly-wrap__links a{color:var(--red-deep)}
.weekly-wrap__footer{padding-top:20px}
.weekly-wrap__footer nav{display:flex;flex-wrap:wrap;gap:8px 22px;font:700 .75rem/1.5 var(--mono);letter-spacing:.04em;text-transform:uppercase}
.weekly-wrap__footer .share-receipt{margin-top:20px;padding-top:18px;border-top:var(--hairline)}
@media(max-width:620px){.weekly-wrap__edition{padding-inline:20px}.weekly-wrap__head h1{font-size:clamp(2.4rem,11vw,3rem)}.weekly-wrap__item{padding-left:32px}.weekly-wrap__meta span[aria-hidden="true"]{display:none}}
.weekly-index .library-hero{padding-top:clamp(32px,5vw,56px);padding-bottom:clamp(28px,4vw,44px)}
.weekly-index .library-hero h1{font-size:clamp(2.4rem,6vw,4.5rem);line-height:.92;margin:10px 0 12px}
.weekly-index .library-hero .lede{font-weight:400;line-height:1.3}
.weekly-index .library-section{padding-top:clamp(32px,5vw,56px)}
.weekly-index .edition{grid-template-columns:70px minmax(0,1fr) 120px;padding:clamp(20px,3vw,30px) 0;gap:clamp(18px,3vw,36px)}
.weekly-index .edition::before{width:42px;height:4px}
.weekly-index .edition h2{font-weight:600}
.weekly-index .edition .serial,.weekly-index .edition aside{font-size:.6875rem;font-variant-numeric:tabular-nums}
@media(max-width:620px){.weekly-index .edition{grid-template-columns:1fr}.weekly-index .edition aside{grid-column:1}}
/* ===========================================================================
   Front-page indexes (essays, readings)
   --------------------------------------------------------------------------
   A magazine front page starts on content: a small masthead rule, one lead
   story, then a dense card grid. No manifesto, no section sermon. Every unit
   below is built from tokens.css only.
   ========================================================================== */
.index-head{padding:clamp(18px,2.6vw,30px) var(--gutter) 0}
.index-head .wrap{display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr);gap:4px clamp(16px,4vw,48px);align-items:baseline;padding-bottom:9px}
.index-head .serial{color:var(--ink-2)}
.index-head h1{grid-column:1;font-family:var(--display);font-size:var(--step-2);line-height:.95;letter-spacing:-.03em}
.index-head p{max-width:46rem;font-size:var(--step--1);line-height:1.5;color:var(--ink-2)}
.index-head .serial+p{grid-column:2;grid-row:1}
.index-head h1+p{grid-column:2;grid-row:2;align-self:end}

.frontpage{padding:clamp(28px,3.8vw,48px) var(--gutter) 0}
.lead-story{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr);gap:clamp(18px,3.4vw,48px);align-items:center;padding-bottom:clamp(20px,3.2vw,36px);text-decoration:none}
.lead-story__media{position:relative;overflow:hidden;aspect-ratio:16/9;background:transparent;border-bottom:6px solid var(--red)}
.lead-story__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;mix-blend-mode:multiply;transition:transform var(--dur-slow) var(--ease)}
.lead-story:hover .lead-story__media img{transform:scale(1.02)}
.lead-story .serial{color:var(--red)}
.lead-story h2{margin:0 0 12px;font-family:var(--editorial);font-size:var(--step-3);line-height:1;letter-spacing:-.04em}
.lead-story:hover h2{color:var(--red-deep)}
.lead-story .dek{max-width:42rem;font-family:var(--editorial);font-size:var(--lede);line-height:1.25;color:var(--ink-2)}
.lead-story .go{display:inline-block;margin-top:8px;font:600 10px/1.4 var(--mono);letter-spacing:.09em;text-transform:uppercase;color:var(--ink-2)}

.story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(22px,2.8vw,36px) clamp(18px,2.4vw,32px);margin-top:clamp(26px,3.6vw,48px)}
.story-card{--row-accent:var(--ink);display:flex;flex-direction:column;min-width:0;text-decoration:none}
.story-card__media{position:relative;overflow:hidden;aspect-ratio:16/9;background:var(--paper-2);border-bottom:4px solid var(--row-accent)}
.story-card__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform var(--dur-base) var(--ease)}
.story-card__media--art img{object-fit:contain;mix-blend-mode:multiply}
.story-card:hover .story-card__media img{transform:scale(1.03)}
.story-card .serial{margin-top:11px;font:600 10px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--row-accent)}
.story-card h2{margin:16px 0 7px;font-family:var(--editorial);font-size:var(--step-1);line-height:1.14;letter-spacing:-.022em}
.story-card:hover h2{color:var(--row-accent)}
.story-card .dek{font-size:var(--step--1);line-height:1.45;color:var(--ink-2)}
.story-card .go{margin-top:8px;font:600 9.5px/1.4 var(--mono);letter-spacing:.09em;text-transform:uppercase;color:var(--ink-2)}
.story-card--money{--row-accent:var(--gold)}
.story-card--power{--row-accent:var(--red)}
.story-card--held{--row-accent:var(--blue)}

/* Skim layer above the readings table: bold-opener paragraphs that tell the
   whole story on their own, each linking down to specific rows below. */
.reading-skim{padding-bottom:clamp(20px,3vw,34px);border-bottom:var(--heavy)}
.reading-skim p{margin-top:16px;font-size:var(--step-0);line-height:1.6;color:var(--ink-2)}
.reading-skim p:first-child{margin-top:0}
.reading-skim p b{color:var(--ink)}
.reading-skim a{font-weight:700;color:var(--ink);text-decoration:underline;text-decoration-color:var(--rule-2)}
.reading-skim a:hover{color:var(--accent-deep)}

/* Readings table: one merged list, Type/Author broken into their own columns. */
.reading-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border-top:var(--heavy)}
.reading-table{width:100%;min-width:680px;border-collapse:collapse}
.reading-table th{text-align:left;padding:0 14px 10px 0;font:600 10px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);border-bottom:2px solid var(--ink);white-space:nowrap}
.reading-table td{padding:16px 14px 16px 0;border-bottom:var(--hairline);vertical-align:top;font-size:var(--step--1)}
.reading-table tbody tr:hover{background:var(--paper-2)}
.reading-table td.type{--row-accent:var(--ink);position:relative;padding-left:14px;font:700 10px/1.4 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--row-accent);white-space:nowrap}
.reading-table td.type::before{content:"";position:absolute;left:0;top:2px;bottom:2px;width:4px;background:var(--row-accent)}
.reading-table tr.row--power td.type{--row-accent:var(--red)}
.reading-table tr.row--money td.type{--row-accent:var(--gold-deep)}
.reading-table td.title{max-width:26rem}
.reading-table td.title a{font-family:var(--editorial);font-size:var(--step-0);font-weight:600;color:var(--ink);text-decoration:none}
.reading-table td.title a:hover{text-decoration:underline}
.reading-table .start-here{display:block;margin-top:3px;font:600 9px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2)}
.reading-table td.author{color:var(--ink-2);white-space:nowrap}
.reading-table td.note{color:var(--ink-2);max-width:32rem}
@media(max-width:850px){.reading-table td.note{display:none}.reading-table th:last-child{display:none}}

/* Small functional label above a list or grid. Never a manifesto. */
.section-label{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:11px;font:600 10px/1.4 var(--mono);letter-spacing:.09em;text-transform:uppercase;color:var(--ink-2)}
.section-label b{color:var(--ink)}
/* Index sections sit closer together than a long-form page's sections do. */
.library-section--tight{padding-block:clamp(26px,3.6vw,44px)}

/* Second line inside a row's desk-tag column — used only for "Start here". */
.library-list .library-row .serial em{display:block;margin-top:4px;font-style:normal;color:var(--ink)}

/* Closing line: one quiet link out, in place of a full call-to-action band. */
.index-outro{padding:clamp(22px,3vw,34px) var(--gutter) clamp(40px,6vw,72px)}
.index-outro .wrap{padding-top:14px;border-top:var(--heavy);font-size:var(--step--1);color:var(--ink-2)}
.index-outro a{font-weight:700;color:var(--ink);text-decoration:underline;text-decoration-color:var(--rule-2)}
.index-outro a:hover{color:var(--accent-deep)}

/* Slim variant of the editorial illustration band, for pages that lead on
   stories rather than on art. */
.editorial-art--slim{border-bottom:0}
.editorial-art--slim img{height:clamp(120px,15vw,200px);object-fit:cover}

@media(max-width:980px){
  .lead-story{grid-template-columns:1fr;gap:24px}
  .lead-story__media{aspect-ratio:16/9}
  .story-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .index-head .wrap{grid-template-columns:1fr}
  .index-head .serial+p,.index-head h1+p{grid-column:1;grid-row:auto}
}
@media(max-width:620px){
  .story-grid{grid-template-columns:1fr}
  .lead-story h1{font-size:var(--step-2)}
}
@media(prefers-reduced-motion:reduce){
  .lead-story__media img,.story-card__media img{transition:none}
}

@keyframes library-rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media(max-width:850px){.library-hero .wrap,.library-feature,.embed-showcase,.brief-body .wrap{grid-template-columns:1fr}.library-heading{grid-template-columns:1fr}.reading-paths{grid-template-columns:1fr}.reading-path+.reading-path{border-left:0;border-top:var(--hairline)}.library-cta .wrap{align-items:flex-start;flex-direction:column}.edition{grid-template-columns:84px minmax(0,1fr)}.edition aside{grid-column:2}}
@media(max-width:620px){.library-hero h1{font-size:clamp(3.1rem,16vw,4.8rem)}.editorial-art img{height:clamp(230px,70vw,390px)}.library-list .library-row{grid-template-columns:72px minmax(0,1fr)}.library-list .library-row .go{grid-column:2;text-align:left}.reading-path{min-height:520px;padding:28px 20px}.reading-path img{height:52%}.reading-path::before{height:51%}.edition{grid-template-columns:1fr}.edition::before{width:44px}.edition aside{grid-column:1}}
@media(prefers-reduced-motion:reduce){.library-hero h1{animation:none}.library-lead .media img,.reading-path img,.library-row::before{transition:none}}

/* ==========================================================================
   Essay page — the standard template
   --------------------------------------------------------------------------
   The Power desk's essay layout is the house format, so it is the format for
   every essay: one narrow column, a standfirst, serif body, accent-ruled pull
   quotes, and a related-links tray at the foot. Rebuilt here on tokens.css so
   shared essays get the same page without borrowing a desk's chrome. Set the
   desk with .essay--power / .essay--money / .essay--shared.
   ========================================================================== */
.essay{--essay-accent:var(--red);--essay-accent-deep:var(--red-deep);padding:0 var(--gutter) clamp(44px,6vw,84px)}
.essay--money{--essay-accent:var(--gold);--essay-accent-deep:var(--gold-deep)}
.essay--shared{--essay-accent:var(--ink);--essay-accent-deep:var(--ink)}
.essay-wrap{max-width:48rem;margin-inline:auto}
.essay-crumb{padding:22px 0 0;font:600 11.5px/1.4 var(--mono);letter-spacing:.05em;color:var(--ink-2)}
.essay-crumb a{color:var(--ink-2);text-decoration:none}
.essay-crumb a:hover{color:var(--essay-accent-deep)}
.essay-head{padding:30px 0 24px;border-bottom:var(--hairline)}
.essay-head .kick{margin-bottom:13px;font:600 11px/1.3 var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--essay-accent-deep)}
.essay-head h1{max-width:16em;font-family:var(--editorial);font-weight:600;font-size:clamp(2rem,5.2vw,3.4rem);line-height:1.04;letter-spacing:-.015em}
.essay-head .stand{max-width:36em;margin-top:18px;font-family:var(--editorial);font-size:clamp(1.12rem,2.2vw,1.375rem);line-height:1.5;color:var(--ink-2)}
.essay-head .stand b,.essay-head .stand strong{color:var(--ink)}
.essay-head .byline{margin-top:18px;font:500 11.5px/1.5 var(--mono);letter-spacing:.04em;color:var(--ink-3)}
.essay-body{padding:26px 0 10px}
.essay-body p{max-width:65ch;margin:18px 0;font-family:var(--editorial);font-size:1.15rem;line-height:1.68;color:var(--ink)}
.essay-body h2{margin:40px 0 6px;font-family:var(--display);font-weight:700;font-size:clamp(1.3rem,2.6vw,1.7rem);letter-spacing:-.02em}
.essay-body h3{margin:28px 0 4px;font-family:var(--display);font-weight:600;font-size:1.125rem}
.essay-body ul,.essay-body ol{margin:16px 0 16px 2px;padding-left:22px}
.essay-body li{max-width:64ch;margin:8px 0;font-family:var(--editorial);font-size:1.1rem;line-height:1.6}
.essay-body a{color:var(--essay-accent-deep);font-weight:600;text-decoration:none;border-bottom:1px solid var(--rule)}
.essay-body a:hover{border-bottom-color:currentColor}
.essay-body strong,.essay-body b{color:var(--ink)}
.essay-pull{max-width:24em;margin:30px 0;padding:18px 0;border-block:2px solid var(--essay-accent);font-family:var(--editorial);font-weight:500;font-size:clamp(1.3rem,2.6vw,1.5rem);line-height:1.3;color:var(--ink)}
.essay-figure{margin:30px 0}
.essay-figure .frame{position:relative;display:block;overflow:hidden;aspect-ratio:16/10;background:var(--paper-2);border:var(--hairline)}
.essay-figure .frame img{display:block;width:100%;height:100%;object-fit:cover}
.essay-figure .frame--art img{object-fit:contain;mix-blend-mode:multiply}
.essay-figure figcaption{margin-top:10px;font-family:var(--editorial);font-size:.83rem;line-height:1.5;color:var(--ink-2)}
.essay-figure .cred{margin-left:6px;font:500 10px/1 var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3)}
.essay-sources{margin-top:34px;padding-top:14px;border-top:var(--hairline);font-size:var(--step--1)!important;line-height:1.7!important;font-family:var(--display)!important;color:var(--ink-2)}
.essay-sources b{color:var(--ink)}
.essay-related{margin-top:22px;padding:22px 0 8px;border-top:var(--hairline)}
.essay-related .k{margin-bottom:12px;font:600 11px/1.3 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--essay-accent-deep)}
.essay-related a{display:inline-flex;align-items:center;gap:8px;margin:0 8px 8px 0;padding:8px 14px;border:var(--hairline);border-radius:20px;background:var(--paper-2);font-size:.83rem;font-weight:600;text-decoration:none;color:var(--ink)}
.essay-related a:hover{background:var(--paper-hi);border-color:var(--essay-accent)}
@media(max-width:560px){.essay-figure .frame{aspect-ratio:16/9}}
