:root {
  --paper:#ece8df;
  --cream:#f6f1e7;
  --ink:#181714;
  --muted:#6e6960;
  --line:rgba(24,23,20,.2);
  --gold:#9b7836;
  --gold-pale:#c2aa78;
  --display:"EB Garamond",Garamond,"Times New Roman",serif;
  --body:"Manrope",Arial,sans-serif;
}

* { box-sizing:border-box; }
html { background:var(--paper); scroll-behavior:smooth; }
body { min-width:320px; margin:0; background:var(--paper); color:var(--ink); font-family:var(--body); }
a { color:inherit; }
a:focus-visible { outline:1px solid var(--gold); outline-offset:4px; }
.skip-link { position:fixed; left:1rem; top:-6rem; z-index:100; padding:.75rem 1rem; background:var(--ink); color:#fff; }
.skip-link:focus { top:1rem; }

.season-header {
  min-height:5rem; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:2rem;
  padding:1rem 2.2rem; border-bottom:1px solid var(--line); background:var(--paper);
}
.season-header a,.season-header span { font-size:.58rem; font-weight:600; letter-spacing:.16em; text-decoration:none; text-transform:uppercase; }
.season-header .brand { font:500 1rem/1 var(--display); letter-spacing:.105em; }
.season-header span { color:var(--gold); }
.season-header a:last-child { justify-self:end; }

.draft-ribbon {
  display:flex; justify-content:space-between; gap:1rem; padding:.55rem 2.2rem; border-bottom:1px solid var(--line);
  color:var(--muted); font-size:.52rem; font-weight:600; letter-spacing:.14em; text-transform:uppercase;
}
.draft-ribbon strong { color:var(--gold); font-weight:600; }

.season-hero {
  min-height:calc(100svh - 7rem); display:grid; grid-template-columns:minmax(0,1.16fr) minmax(25rem,.84fr);
  border-bottom:1px solid var(--ink); background:var(--cream);
}
.season-title { display:flex; flex-direction:column; justify-content:center; padding:clamp(4rem,8vw,9rem) clamp(1.5rem,6vw,8rem); }
.eyebrow { margin:0 0 1.4rem; color:var(--gold); font-size:.58rem; font-weight:600; letter-spacing:.18em; text-transform:uppercase; }
.season-title h1 { max-width:11ch; margin:0; font:400 clamp(5rem,9.7vw,12rem)/.76 var(--display); letter-spacing:-.07em; }
.season-title h1 em { display:block; color:var(--gold); font-weight:400; }
.season-title .deck { max-width:43rem; margin:3rem 0 0; color:var(--muted); font:400 clamp(1.15rem,1.45vw,1.55rem)/1.55 var(--display); }
.season-title .rule { width:min(30rem,100%); margin:3rem 0 0; padding-top:1rem; border-top:1px solid var(--gold); font:italic 400 1.05rem/1.5 var(--display); }

.season-index { display:flex; flex-direction:column; justify-content:flex-end; padding:2rem clamp(1.5rem,4vw,5rem) 3rem; border-left:1px solid var(--line); }
.season-index > span { margin-bottom:auto; color:var(--gold); font-size:.54rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
.season-index ol { list-style:none; margin:4rem 0 0; padding:0; counter-reset:dispatch; }
.season-index li { counter-increment:dispatch; border-top:1px solid var(--line); }
.season-index li:last-child { border-bottom:1px solid var(--line); }
.season-index li.operator-entry { counter-increment:none; background:rgba(155,120,54,.08); }
.season-index a { display:grid; grid-template-columns:2rem 1fr auto; gap:1rem; align-items:center; padding:.85rem .1rem; text-decoration:none; }
.season-index a::before { content:counter(dispatch, decimal-leading-zero); color:var(--gold); font-size:.54rem; font-weight:600; letter-spacing:.12em; }
.season-index .operator-entry a::before { content:"OP"; }
.season-index strong { font:400 clamp(1rem,1.25vw,1.35rem)/1.05 var(--display); }
.season-index i { color:var(--muted); font-size:.7rem; font-style:normal; }
.architect-index-letter { display:grid; grid-template-columns:1fr auto; gap:.6rem 1rem; margin-top:1.4rem; padding:1.2rem; border:1px solid var(--gold-pale); background:var(--ink); color:#fff; text-decoration:none; }
.architect-index-letter span { grid-column:1 / -1; color:var(--gold-pale); font-size:.5rem; font-weight:600; letter-spacing:.14em; text-transform:uppercase; }
.architect-index-letter strong { font:italic 400 clamp(1.05rem,1.35vw,1.45rem)/1.05 var(--display); }
.architect-index-letter i { align-self:end; color:var(--gold-pale); font-size:.52rem; font-style:normal; font-weight:600; letter-spacing:.12em; text-transform:uppercase; }

.premise-band { display:grid; grid-template-columns:.78fr 1.22fr; gap:5vw; padding:clamp(4rem,8vw,8rem) clamp(1.5rem,6vw,8rem); border-bottom:1px solid var(--ink); }
.premise-band h2 { max-width:11ch; margin:0; font:400 clamp(3.4rem,5.8vw,7rem)/.85 var(--display); letter-spacing:-.055em; }
.premise-band h2 em { color:var(--gold); font-weight:400; }
.premise-copy { max-width:51rem; padding-top:1rem; border-top:1px solid var(--gold); }
.premise-copy p { margin:0 0 1.5rem; color:var(--muted); font:400 clamp(1.05rem,1.25vw,1.28rem)/1.72 var(--display); }
.premise-copy strong { color:var(--ink); font-weight:500; }
.premise-copy .editorial-protocol { margin-top:2.5rem; padding-top:1.25rem; border-top:1px solid var(--line); color:var(--muted); font:500 .68rem/1.7 var(--body); letter-spacing:.04em; }
.premise-copy .editorial-protocol strong { letter-spacing:.09em; text-transform:uppercase; }

.dispatches { padding:clamp(4rem,8vw,8rem) clamp(1.2rem,4vw,5rem); background:var(--cream); }
.dispatches-head { display:flex; justify-content:space-between; gap:2rem; align-items:end; margin-bottom:3rem; }
.dispatches-head h2 { margin:0; font:400 clamp(3rem,5vw,6rem)/.85 var(--display); letter-spacing:-.05em; }
.dispatches-head p { max-width:30rem; margin:0; color:var(--muted); font:italic 400 1rem/1.5 var(--display); text-align:right; }
.folio-list { border-top:1px solid var(--ink); }
.folio {
  position:relative; display:grid; grid-template-columns:5rem minmax(17rem,.82fr) minmax(20rem,1.18fr) auto; gap:2rem;
  align-items:center; min-height:12rem; padding:2rem 0; border-bottom:1px solid var(--line); text-decoration:none;
}
.folio::after { content:""; position:absolute; inset:0; z-index:0; background:var(--ink); transform:scaleY(0); transform-origin:bottom; transition:transform .35s cubic-bezier(.22,1,.36,1); }
.folio:hover::after,.folio:focus-visible::after { transform:scaleY(1); }
.folio > * { position:relative; z-index:1; }
.folio-no { color:var(--gold); font-size:.56rem; font-weight:600; letter-spacing:.15em; }
.folio h3 { margin:0; font:400 clamp(2rem,3vw,3.8rem)/.91 var(--display); letter-spacing:-.035em; }
.folio p { max-width:42rem; margin:0; color:var(--muted); font:400 1rem/1.55 var(--display); }
.folio i { color:var(--gold); font-size:.65rem; font-style:normal; }
.folio:hover h3,.folio:focus-visible h3 { color:#fff; }
.folio:hover p,.folio:focus-visible p { color:rgba(255,255,255,.62); }
.operator-folio { background:linear-gradient(90deg,rgba(155,120,54,.08),transparent 58%); }
.operator-folio h3 { font-style:italic; }
.architect-correspondence { display:grid; grid-template-columns:.45fr 1fr .8fr auto; gap:2rem 4vw; align-items:center; margin-top:4rem; padding:clamp(2.5rem,5vw,5rem); background:var(--ink); color:#fff; text-decoration:none; }
.architect-correspondence > span { color:var(--gold-pale); font-size:.53rem; font-weight:600; letter-spacing:.16em; line-height:1.6; text-transform:uppercase; }
.architect-correspondence h3 { margin:0; font:400 clamp(2.4rem,4vw,5rem)/.87 var(--display); letter-spacing:-.045em; }
.architect-correspondence h3 em { color:var(--gold-pale); font-weight:400; }
.architect-correspondence p { margin:0; color:rgba(255,255,255,.6); font:400 1rem/1.6 var(--display); }
.architect-correspondence i { color:var(--gold-pale); font-size:.58rem; font-style:normal; font-weight:600; letter-spacing:.14em; text-transform:uppercase; }

.series-footer,.article-footer { display:grid; grid-template-columns:1fr auto; gap:2rem; align-items:end; padding:1.5rem 2rem; border-top:1px solid var(--line); background:var(--paper); }
.series-footer p,.article-footer p { max-width:65rem; margin:0; color:var(--muted); font-size:.52rem; font-weight:600; letter-spacing:.1em; line-height:1.6; text-transform:uppercase; }
.series-footer a,.article-footer a { color:var(--gold); font-size:.54rem; font-weight:600; letter-spacing:.14em; text-decoration:none; text-transform:uppercase; }

/* Article folios */
.article-hero { min-height:calc(100svh - 7rem); display:grid; grid-template-columns:minmax(0,1.16fr) minmax(24rem,.84fr); border-bottom:1px solid var(--ink); background:var(--cream); }
.article-lead { display:flex; flex-direction:column; justify-content:center; padding:clamp(4rem,8vw,9rem) clamp(1.5rem,6vw,8rem); }
.article-lead h1 { max-width:12ch; margin:0; font:400 clamp(4.4rem,8vw,10rem)/.79 var(--display); letter-spacing:-.065em; }
.article-lead h1 em { color:var(--gold); font-weight:400; }
.article-lead .deck { max-width:45rem; margin:3rem 0 0; color:var(--muted); font:400 clamp(1.15rem,1.45vw,1.55rem)/1.5 var(--display); }
.article-plate { min-height:100%; display:flex; flex-direction:column; justify-content:space-between; padding:2rem clamp(1.5rem,4vw,5rem) 3rem; border-left:1px solid var(--line); background:var(--paper); }
.article-plate .number { align-self:flex-end; color:var(--gold-pale); font:400 clamp(8rem,18vw,22rem)/.7 var(--display); letter-spacing:-.08em; }
.article-plate blockquote { margin:5rem 0 0; padding-top:1.5rem; border-top:1px solid var(--gold); font:italic 400 clamp(1.7rem,2.7vw,3.2rem)/1.05 var(--display); }
.article-plate cite { display:block; margin-top:1.2rem; color:var(--muted); font:.52rem var(--body); font-style:normal; font-weight:600; letter-spacing:.14em; text-transform:uppercase; }
.operator-hero .article-plate .number { font-size:clamp(6rem,13vw,16rem); letter-spacing:-.04em; }

/* Open letter · the architect steps forward */
.architect-page { background:var(--ink); }
.architect-page .season-header,.architect-page .draft-ribbon { background:var(--ink); color:#fff; border-color:rgba(255,255,255,.18); }
.architect-page .season-header span,.architect-page .draft-ribbon strong { color:var(--gold-pale); }
.architect-hero { min-height:calc(100svh - 7rem); display:grid; grid-template-columns:minmax(0,1.28fr) minmax(22rem,.72fr); background:var(--ink); color:#fff; border-bottom:1px solid rgba(255,255,255,.2); }
.architect-title { display:flex; flex-direction:column; justify-content:center; padding:clamp(4rem,8vw,9rem) clamp(1.5rem,6vw,8rem); }
.architect-title h1 { max-width:10ch; margin:0; font:400 clamp(4.8rem,8.5vw,10.5rem)/.78 var(--display); letter-spacing:-.065em; }
.architect-title h1 em { color:var(--gold-pale); font-weight:400; }
.architect-title > p:last-child { max-width:47rem; margin:3rem 0 0; color:rgba(255,255,255,.6); font:400 clamp(1.2rem,1.55vw,1.65rem)/1.48 var(--display); }
.architect-mark { display:flex; flex-direction:column; justify-content:space-between; padding:2rem clamp(1.5rem,4vw,5rem) 3rem; border-left:1px solid rgba(255,255,255,.18); }
.architect-mark > .architect-role { align-self:flex-start; max-width:10ch; color:#fff; font:400 clamp(3.2rem,5.3vw,6.4rem)/.82 var(--display); letter-spacing:-.055em; }
.architect-mark > .architect-role em { color:var(--gold-pale); font-weight:400; }
.architect-mark p { margin:5rem 0 0; padding-top:1.5rem; border-top:1px solid var(--gold-pale); color:#fff; font:italic 400 clamp(1.7rem,2.7vw,3.2rem)/1.05 var(--display); }
.architect-letter { background:var(--cream); }
.architect-letter .letter-copy > p { color:#625e56; }
.architect-letter .letter-copy > p strong,.architect-letter .letter-salutation { color:var(--ink); }
.architect-letter .letter-signoff { padding-top:2rem; border-top:1px solid var(--gold); }
.architect-letter .letter-signoff em { margin:1rem 0 .5rem; }
.patron-doors span { color:var(--ink); }
.authorship-ledger { margin:3rem 0 4.5rem; border-top:1px solid var(--ink); }
.authorship-ledger > div { display:grid; grid-template-columns:minmax(11rem,.55fr) minmax(18rem,1.45fr); gap:2rem; padding:1.6rem 0; border-bottom:1px solid var(--line); }
.authorship-ledger dt { color:var(--ink); font:500 clamp(1.2rem,1.5vw,1.5rem)/1.2 var(--display); }
.authorship-ledger dd { margin:0; color:var(--muted); font:400 1rem/1.68 var(--display); }
.proof-ledger { margin:3rem 0 4.5rem; border-top:1px solid var(--ink); }
.proof-ledger a { display:grid; grid-template-columns:8.5rem minmax(12rem,.78fr) minmax(18rem,1.22fr) auto; gap:1.5rem; align-items:start; padding:1.65rem 0; color:inherit; text-decoration:none; border-bottom:1px solid var(--line); }
.proof-ledger a:hover h3, .proof-ledger a:focus-visible h3 { color:var(--gold); }
.proof-ledger span { padding-top:.35rem; color:var(--gold); font-size:.58rem; font-weight:600; letter-spacing:.14em; text-transform:uppercase; }
.proof-ledger h3 { margin:0; font:500 clamp(1.18rem,1.45vw,1.48rem)/1.12 var(--display); transition:color .2s ease; }
.proof-ledger p { margin:0; color:var(--muted); font:400 .92rem/1.58 var(--display); }
.proof-ledger i { padding-top:.25rem; color:var(--ink); font-size:.6rem; font-style:normal; font-weight:600; letter-spacing:.12em; text-transform:uppercase; white-space:nowrap; }
.evidence-turn h2 { max-width:12ch; }
.letter-copy > blockquote.proof-verdict { max-width:19ch; }
.architect-invitation { display:grid; grid-template-columns:1.15fr .85fr; gap:4rem; align-items:end; padding:clamp(5rem,9vw,10rem) clamp(1.5rem,6vw,8rem); background:var(--ink); color:#fff; border-top:1px solid rgba(255,255,255,.18); }
.architect-invitation > p { max-width:15ch; margin:0; font:italic 400 clamp(3rem,5.5vw,6.5rem)/.86 var(--display); letter-spacing:-.045em; }
.architect-invitation > div { display:flex; flex-direction:column; align-items:flex-start; gap:1.5rem; padding-top:1rem; border-top:1px solid var(--gold-pale); }
.architect-invitation span { color:var(--gold-pale); font-size:.55rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
.architect-invitation a { padding:.9rem 1.1rem; border:1px solid var(--gold-pale); color:#fff; font-size:.58rem; font-weight:600; letter-spacing:.15em; text-decoration:none; text-transform:uppercase; }
.architect-invitation small { max-width:30rem; color:var(--muted); font:400 .8rem/1.55 var(--display); }
.architect-invitation a:hover,.architect-invitation a:focus-visible { background:var(--gold-pale); color:var(--ink); }

.article-body { background:var(--paper); }
.chapter { display:grid; grid-template-columns:minmax(16rem,.7fr) minmax(26rem,1.3fr); gap:4rem 8vw; padding:clamp(4rem,8vw,8rem) clamp(1.5rem,6vw,8rem); border-bottom:1px solid var(--line); }
.chapter-label { align-self:start; }
.chapter-label span { color:var(--gold); font-size:.54rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
.chapter-label h2 { max-width:11ch; margin:1.1rem 0 0; font:400 clamp(2.8rem,4.6vw,5.6rem)/.87 var(--display); letter-spacing:-.05em; }
.chapter-copy { max-width:52rem; padding-top:1.2rem; border-top:1px solid var(--gold); }
.chapter-copy p { margin:0 0 1.55rem; color:var(--muted); font:400 clamp(1.05rem,1.18vw,1.22rem)/1.73 var(--display); }
.chapter-copy strong { color:var(--ink); font-weight:500; }
.article-quote { margin:2.8rem 0; padding:1.6rem 0 1.6rem clamp(1.3rem,3vw,3rem); border-top:1px solid var(--line); border-bottom:1px solid var(--line); border-left:2px solid var(--gold); color:var(--ink); font:italic 400 clamp(1.65rem,2.45vw,2.8rem)/1.15 var(--display); }
.chapter-copy .case-note { margin-top:2.6rem; padding-top:1rem; border-top:1px solid var(--line); color:var(--muted); font:500 .66rem/1.65 var(--body); letter-spacing:.04em; }
.criteria { list-style:none; margin:2rem 0 0; padding:0; }
.criteria li { display:grid; grid-template-columns:2rem 1fr; gap:1rem; padding:1.15rem 0; border-top:1px solid var(--line); color:var(--ink); font:400 clamp(1.2rem,1.6vw,1.7rem)/1.25 var(--display); }
.criteria li::before { content:"◇"; color:var(--gold); }

/* Folio 02 · letter form */
.letter-body { padding:clamp(4rem,9vw,10rem) clamp(1.5rem,6vw,8rem); background:var(--paper); }
.letter-head { display:flex; justify-content:space-between; gap:2rem; max-width:78rem; margin:0 auto clamp(5rem,9vw,9rem); padding-bottom:1rem; border-bottom:1px solid var(--ink); color:var(--gold); font-size:.55rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
.letter-copy { max-width:54rem; margin:0 auto; }
.letter-copy > p { margin:0 0 1.6rem; color:var(--muted); font:400 clamp(1.08rem,1.25vw,1.28rem)/1.76 var(--display); }
.letter-copy > p strong { color:var(--ink); font-weight:500; }
.letter-copy .letter-salutation { margin-bottom:2.8rem; color:var(--ink); font:italic 400 clamp(2rem,3vw,3.4rem)/1 var(--display); }
.letter-copy > blockquote { margin:3rem 0; padding:2rem clamp(1.3rem,3vw,3rem); border-top:1px solid var(--gold); border-bottom:1px solid var(--gold); color:var(--ink); font:italic 400 clamp(1.7rem,2.7vw,3rem)/1.18 var(--display); }
.letter-copy > blockquote.reply { margin-left:clamp(1.5rem,7vw,7rem); border-top-color:var(--line); border-bottom-color:var(--line); color:var(--gold); }
.letter-copy > blockquote.letter-maxim { margin-block:4.5rem; padding-block:3rem; text-align:center; }
.letter-turn { display:grid; grid-template-columns:3.5rem 1fr; gap:1rem; align-items:start; margin:clamp(5rem,9vw,9rem) 0 2.5rem; padding-top:1.2rem; border-top:1px solid var(--ink); }
.letter-turn span { padding-top:.45rem; color:var(--gold); font-size:.58rem; font-weight:600; letter-spacing:.16em; }
.letter-turn h2 { max-width:15ch; margin:0; font:400 clamp(2.8rem,4.8vw,5.5rem)/.88 var(--display); letter-spacing:-.045em; }
.letter-lessons { list-style:none; margin:3rem 0 4rem; padding:0; counter-reset:lesson; border-top:1px solid var(--line); }
.letter-lessons li { counter-increment:lesson; display:grid; grid-template-columns:minmax(11rem,.6fr) minmax(16rem,1.4fr); gap:2rem; padding:1.5rem 0; border-bottom:1px solid var(--line); }
.letter-lessons span { color:var(--ink); font:500 1.25rem/1.25 var(--display); }
.letter-lessons span::before { content:counter(lesson, decimal-leading-zero) " / "; color:var(--gold); font:.55rem var(--body); font-weight:600; letter-spacing:.12em; }
.letter-lessons p { margin:0; color:var(--muted); font:400 1rem/1.65 var(--display); }
.letter-copy .letter-signoff { margin-top:4rem; color:var(--ink); }
.letter-signoff em { display:inline-block; margin-top:.5rem; color:var(--gold); font-size:1.5rem; }
.letter-copy .case-note { margin-top:4rem; padding-top:1rem; border-top:1px solid var(--line); color:var(--muted); font:500 .66rem/1.65 var(--body); letter-spacing:.04em; }

/* Folio 03 · field invoice */
.water-case { background:var(--paper); }
.water-scene { display:grid; grid-template-columns:minmax(12rem,.55fr) minmax(28rem,1.45fr); gap:4rem 8vw; padding:clamp(5rem,9vw,10rem) clamp(1.5rem,6vw,8rem); border-bottom:1px solid var(--ink); }
.water-scene-label { align-self:start; padding-top:1rem; border-top:1px solid var(--gold); }
.water-scene-label span { display:block; color:var(--gold); font-size:.55rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
.water-scene-label strong { display:block; margin-top:1.2rem; font:400 clamp(1.8rem,2.8vw,3.4rem)/1.02 var(--display); }
.water-scene-copy { max-width:52rem; }
.water-scene-copy > p { margin:0 0 1.6rem; color:var(--muted); font:400 clamp(1.08rem,1.25vw,1.28rem)/1.75 var(--display); }
.water-scene-copy > blockquote { margin:3rem 0; padding:2rem 0 2rem clamp(1.3rem,3vw,3rem); border-top:1px solid var(--line); border-bottom:1px solid var(--line); border-left:2px solid var(--gold); color:var(--ink); font:italic 400 clamp(1.7rem,2.6vw,3rem)/1.16 var(--display); }
.water-scene-copy .case-note { margin-top:3rem; padding-top:1rem; border-top:1px solid var(--line); color:var(--muted); font:500 .66rem/1.65 var(--body); letter-spacing:.04em; }
.field-invoice { display:grid; grid-template-columns:minmax(17rem,.72fr) minmax(27rem,1.28fr); gap:4rem 8vw; padding:clamp(4rem,8vw,8rem) clamp(1.5rem,6vw,8rem); border-bottom:1px solid var(--ink); background:var(--cream); }
.invoice-head > span { color:var(--gold); font-size:.54rem; font-weight:600; letter-spacing:.15em; text-transform:uppercase; }
.invoice-head h2 { max-width:10ch; margin:1.3rem 0 0; font:400 clamp(3rem,5vw,6rem)/.86 var(--display); letter-spacing:-.05em; }
.invoice-head h2 em { color:var(--gold); font-weight:400; }
.invoice-lines { margin:0; border-top:1px solid var(--ink); }
.invoice-lines > div { display:grid; grid-template-columns:1fr auto; gap:.6rem 2rem; align-items:baseline; padding:1.3rem 0; border-bottom:1px solid var(--line); }
.invoice-lines dt { font:400 clamp(1.2rem,1.5vw,1.55rem)/1.2 var(--display); }
.invoice-lines dd { margin:0; color:var(--ink); font:500 clamp(1.15rem,1.5vw,1.55rem)/1 var(--display); }
.invoice-lines small { grid-column:1 / -1; color:var(--muted); font-size:.52rem; font-weight:600; letter-spacing:.1em; text-transform:uppercase; }
.invoice-lines .unresolved dd { color:var(--gold); font-style:italic; }
.water-analysis { display:grid; grid-template-columns:minmax(12rem,.5fr) minmax(30rem,1.5fr); gap:4rem 8vw; padding:clamp(5rem,9vw,10rem) clamp(1.5rem,6vw,8rem); border-bottom:1px solid var(--line); }
.analysis-index { align-self:start; display:grid; grid-template-columns:3rem 1fr; gap:1rem; align-items:start; padding-top:1rem; border-top:1px solid var(--gold); }
.analysis-index span { color:var(--gold); font-size:.58rem; font-weight:600; letter-spacing:.16em; }
.analysis-index p { margin:0; color:var(--muted); font:.55rem/1.45 var(--body); font-weight:600; letter-spacing:.13em; text-transform:uppercase; }
.analysis-copy { max-width:55rem; }
.analysis-copy h2 { max-width:16ch; margin:0 0 3rem; font:400 clamp(3rem,4.8vw,5.8rem)/.88 var(--display); letter-spacing:-.05em; }
.analysis-copy > p { margin:0 0 1.6rem; color:var(--muted); font:400 clamp(1.08rem,1.25vw,1.28rem)/1.75 var(--display); }
.analysis-copy > p strong { color:var(--ink); font-weight:500; }
.analysis-copy > blockquote { margin:3.5rem 0; padding:2.5rem 0; border-top:1px solid var(--gold); border-bottom:1px solid var(--gold); color:var(--ink); font:italic 400 clamp(1.8rem,2.7vw,3.2rem)/1.12 var(--display); }
.evidence-stack { list-style:none; margin:3rem 0; padding:0; border-top:1px solid var(--line); }
.evidence-stack li { display:grid; grid-template-columns:8rem 1fr; gap:1.5rem; padding:1.25rem 0; border-bottom:1px solid var(--line); color:var(--muted); font:400 1rem/1.55 var(--display); }
.evidence-stack span { color:var(--gold); font:.54rem/1.5 var(--body); font-weight:600; letter-spacing:.13em; text-transform:uppercase; }
.water-analysis.conclusion { background:var(--cream); }

/* Folio 04 · incident clock */
.incident-hero .article-lead h1 { max-width:13ch; }
.incident-case { background:var(--paper); }
.incident-opening { display:grid; grid-template-columns:minmax(12rem,.48fr) minmax(28rem,1.52fr); gap:4rem 8vw; padding:clamp(5rem,9vw,10rem) clamp(1.5rem,6vw,8rem); border-bottom:1px solid var(--ink); }
.incident-kicker { align-self:start; padding-top:1rem; border-top:1px solid var(--gold); }
.incident-kicker span { display:block; color:var(--gold); font-size:.55rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
.incident-kicker strong { display:block; margin-top:1rem; font:400 clamp(2rem,3.5vw,4rem)/.92 var(--display); letter-spacing:-.035em; }
.incident-prose { max-width:53rem; }
.incident-prose > p { margin:0 0 1.6rem; color:var(--muted); font:400 clamp(1.08rem,1.25vw,1.28rem)/1.75 var(--display); }
.incident-prose > p:nth-child(3) { color:var(--ink); font:italic 400 clamp(1.7rem,2.4vw,2.7rem)/1.1 var(--display); }
.incident-prose .case-note { margin-top:3rem; padding-top:1rem; border-top:1px solid var(--line); font:500 .66rem/1.65 var(--body); letter-spacing:.04em; }
.incident-clock { background:var(--cream); }
.clock-row { display:grid; grid-template-columns:minmax(7rem,.28fr) minmax(28rem,1.72fr); gap:3rem 7vw; padding:clamp(3.5rem,6vw,6rem) clamp(1.5rem,6vw,8rem); border-bottom:1px solid var(--line); }
.clock-row time { align-self:start; color:var(--gold); font:400 clamp(2.7rem,4.2vw,5rem)/.8 var(--display); letter-spacing:-.04em; }
.clock-row > div { max-width:59rem; }
.clock-row span { color:var(--gold); font-size:.54rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
.clock-row h2 { max-width:17ch; margin:1rem 0 2rem; font:400 clamp(2.4rem,3.8vw,4.7rem)/.88 var(--display); letter-spacing:-.045em; }
.clock-row p { margin:0 0 1.5rem; color:var(--muted); font:400 clamp(1.05rem,1.18vw,1.22rem)/1.73 var(--display); }
.clock-row blockquote { margin:2.8rem 0; padding:2rem 0; border-top:1px solid var(--gold); border-bottom:1px solid var(--gold); color:var(--ink); font:italic 400 clamp(1.7rem,2.55vw,3rem)/1.14 var(--display); }
.clock-row-final { background:var(--paper); border-bottom:1px solid var(--ink); }
.incident-analysis { display:grid; grid-template-columns:minmax(12rem,.5fr) minmax(30rem,1.5fr); gap:4rem 8vw; padding:clamp(5rem,9vw,10rem) clamp(1.5rem,6vw,8rem); border-bottom:1px solid var(--line); }
.incident-analysis-alt { background:var(--cream); }
.incident-analysis-conclusion { background:var(--cream); border-bottom:1px solid var(--ink); }
.incident-analysis .analysis-copy blockquote.incident-maxim { color:var(--gold); text-align:center; }
.response-rules { list-style:none; margin:3rem 0; padding:0; counter-reset:response; border-top:1px solid var(--ink); }
.response-rules li { counter-increment:response; display:grid; grid-template-columns:2rem minmax(11rem,.5fr) minmax(18rem,1.5fr); gap:2rem; padding:1.5rem 0; border-bottom:1px solid var(--line); }
.response-rules li::before { content:counter(response, decimal-leading-zero); color:var(--gold); font:.56rem var(--body); font-weight:600; letter-spacing:.14em; }
.response-rules strong { color:var(--ink); font:500 1.3rem/1.2 var(--display); }
.response-rules span { color:var(--muted); font:400 1rem/1.65 var(--display); }

/* Folio 05 · decision dossier */
.decision-hero .article-lead h1 { max-width:12.5ch; }
.decision-dossier { background:var(--paper); }
.decision-scene { display:grid; grid-template-columns:minmax(13rem,.52fr) minmax(28rem,1.48fr); gap:4rem 8vw; padding:clamp(5rem,9vw,10rem) clamp(1.5rem,6vw,8rem); border-bottom:1px solid var(--ink); }
.dossier-stamp { align-self:start; padding-top:1rem; border-top:1px solid var(--gold); }
.dossier-stamp span { display:block; color:var(--gold); font-size:.55rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
.dossier-stamp strong { display:block; margin-top:1rem; font:400 clamp(1.9rem,3vw,3.6rem)/.95 var(--display); }
.decision-scene-copy { max-width:54rem; }
.decision-scene-copy > p { margin:0 0 1.6rem; color:var(--muted); font:400 clamp(1.08rem,1.25vw,1.28rem)/1.75 var(--display); }
.decision-scene-copy > blockquote { margin:3rem 0; padding:2rem 0; border-top:1px solid var(--gold); border-bottom:1px solid var(--gold); color:var(--ink); font:italic 400 clamp(2rem,3.3vw,4rem)/1 var(--display); }
.decision-scene-copy .case-note { margin-top:3rem; padding-top:1rem; border-top:1px solid var(--line); font:500 .66rem/1.65 var(--body); letter-spacing:.04em; }
.survived-section { padding:clamp(5rem,9vw,10rem) clamp(1.5rem,6vw,8rem); border-bottom:1px solid var(--ink); background:var(--cream); }
.survived-heading { display:flex; justify-content:space-between; gap:3rem; align-items:end; margin-bottom:4rem; }
.survived-heading span { color:var(--gold); font-size:.54rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
.survived-heading h2 { margin:0; font:400 clamp(3rem,5vw,6rem)/.86 var(--display); letter-spacing:-.05em; }
.survived-grid { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--ink); border-bottom:1px solid var(--ink); }
.survived-grid > div { min-height:25rem; padding:2rem 3rem 3rem 0; }
.survived-grid > div + div { padding-left:3rem; border-left:1px solid var(--line); }
.survived-grid span { color:var(--gold); font-size:.54rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
.survived-grid ul { list-style:none; margin:3rem 0 0; padding:0; columns:2; column-gap:2rem; }
.survived-grid li { break-inside:avoid; padding:.75rem 0; color:var(--ink); font:400 clamp(1.35rem,1.8vw,2rem)/1.1 var(--display); }
.survived-grid .absence { display:flex; flex-direction:column; justify-content:space-between; }
.survived-grid .absence p { max-width:8ch; margin:3rem 0 0; color:var(--gold); font:italic 400 clamp(3.5rem,6vw,7.5rem)/.78 var(--display); letter-spacing:-.06em; }
.survived-maxim { max-width:48rem; margin:3rem auto 0; color:var(--muted); font:italic 400 clamp(1.5rem,2.2vw,2.5rem)/1.18 var(--display); text-align:center; }
.heir-section { padding:clamp(5rem,9vw,10rem) clamp(1.5rem,6vw,8rem); border-bottom:1px solid var(--ink); }
.heir-section > header { max-width:62rem; margin:0 auto 5rem; text-align:center; }
.heir-section > header > span { color:var(--gold); font-size:.54rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
.heir-section > header h2 { margin:1.2rem 0 2rem; font:400 clamp(3.2rem,5.4vw,6.6rem)/.84 var(--display); letter-spacing:-.055em; }
.heir-section > header p { max-width:47rem; margin:0 auto; color:var(--muted); font:400 clamp(1.05rem,1.2vw,1.22rem)/1.7 var(--display); }
.heir-claims { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--ink); border-bottom:1px solid var(--ink); }
.heir-claims article { min-height:29rem; padding:2rem; }
.heir-claims article + article { border-left:1px solid var(--line); }
.heir-claims span { color:var(--gold); font-size:.54rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
.heir-claims h3 { max-width:10ch; margin:3rem 0 2rem; font:400 clamp(2rem,3vw,3.5rem)/.88 var(--display); letter-spacing:-.04em; }
.heir-claims p { margin:0; color:var(--muted); font:400 1rem/1.7 var(--display); }
.heir-maxim { max-width:60rem; margin:5rem auto 0; color:var(--ink); font:italic 400 clamp(1.7rem,2.7vw,3.2rem)/1.12 var(--display); text-align:center; }
.search-section,.decision-analysis { display:grid; grid-template-columns:minmax(12rem,.5fr) minmax(30rem,1.5fr); gap:4rem 8vw; padding:clamp(5rem,9vw,10rem) clamp(1.5rem,6vw,8rem); border-bottom:1px solid var(--line); }
.search-index { align-self:start; display:grid; grid-template-columns:3rem 1fr; gap:1rem; align-items:start; padding-top:1rem; border-top:1px solid var(--gold); }
.search-index span { color:var(--gold); font-size:.58rem; font-weight:600; letter-spacing:.16em; }
.search-index p { margin:0; color:var(--muted); font:.55rem/1.45 var(--body); font-weight:600; letter-spacing:.13em; text-transform:uppercase; }
.search-copy { max-width:55rem; }
.search-copy h2 { max-width:15ch; margin:0 0 3rem; font:400 clamp(3rem,4.8vw,5.8rem)/.88 var(--display); letter-spacing:-.05em; }
.search-copy > p { margin:0 0 1.6rem; color:var(--muted); font:400 clamp(1.08rem,1.25vw,1.28rem)/1.75 var(--display); }
.search-copy > blockquote { margin:3.5rem 0 0; padding:2.5rem 0; border-top:1px solid var(--gold); border-bottom:1px solid var(--gold); color:var(--ink); font:italic 400 clamp(1.8rem,2.7vw,3.2rem)/1.12 var(--display); }
.cost-section { display:grid; grid-template-columns:minmax(17rem,.72fr) minmax(27rem,1.28fr); gap:4rem 8vw; padding:clamp(5rem,9vw,10rem) clamp(1.5rem,6vw,8rem); border-bottom:1px solid var(--ink); background:var(--cream); }
.cost-title > span { color:var(--gold); font-size:.54rem; font-weight:600; letter-spacing:.15em; text-transform:uppercase; }
.cost-title h2 { max-width:11ch; margin:1.3rem 0 0; font:400 clamp(3rem,5vw,6rem)/.86 var(--display); letter-spacing:-.05em; }
.cost-title h2 em { color:var(--gold); font-weight:400; }
.cost-ledger { margin:0; border-top:1px solid var(--ink); }
.cost-ledger > div { display:grid; grid-template-columns:1fr auto; gap:.6rem 2rem; align-items:baseline; padding:1.3rem 0; border-bottom:1px solid var(--line); }
.cost-ledger dt { font:400 clamp(1.2rem,1.5vw,1.55rem)/1.2 var(--display); }
.cost-ledger dd { margin:0; color:var(--ink); font:500 clamp(1.15rem,1.5vw,1.55rem)/1 var(--display); }
.cost-ledger small { grid-column:1 / -1; color:var(--muted); font-size:.52rem; font-weight:600; letter-spacing:.1em; line-height:1.5; text-transform:uppercase; }
.cost-ledger .unpriced dd { color:var(--gold); font-style:italic; }
.decision-analysis .analysis-copy > p em { color:var(--ink); }
.decision-conclusion { background:var(--cream); border-bottom:1px solid var(--ink); }

/* Folio 06 · the oasis and the labor market */
.oasis-hero .article-lead h1 { max-width:11.5ch; }
.oasis-case { background:var(--paper); }
.oasis-opening { display:grid; grid-template-columns:minmax(13rem,.5fr) minmax(28rem,1.5fr); gap:4rem 8vw; padding:clamp(5rem,9vw,10rem) clamp(1.5rem,6vw,8rem); border-bottom:1px solid var(--ink); }
.oasis-marker { align-self:start; padding-top:1rem; border-top:1px solid var(--gold); }
.oasis-marker span { display:block; color:var(--gold); font-size:.55rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
.oasis-marker strong { display:block; margin-top:1rem; font:400 clamp(2.5rem,4vw,5rem)/.84 var(--display); letter-spacing:-.05em; }
.oasis-opening-copy { max-width:54rem; }
.oasis-opening-copy > p { margin:0 0 1.6rem; color:var(--muted); font:400 clamp(1.08rem,1.25vw,1.28rem)/1.75 var(--display); }
.oasis-opening-copy > p:nth-child(2) { color:var(--ink); font:italic 400 clamp(2rem,3vw,3.5rem)/1.05 var(--display); }
.oasis-opening-copy .case-note { margin-top:3rem; padding-top:1rem; border-top:1px solid var(--line); font:500 .66rem/1.65 var(--body); letter-spacing:.04em; }
.oasis-threshold { display:grid; grid-template-columns:1fr 7rem 1fr; min-height:34rem; border-bottom:1px solid var(--ink); background:var(--cream); }
.threshold-side { display:flex; flex-direction:column; justify-content:space-between; padding:clamp(3rem,5vw,6rem); }
.threshold-side span { color:var(--gold); font-size:.54rem; font-weight:600; letter-spacing:.17em; text-transform:uppercase; }
.threshold-side h2 { margin:4rem 0 0; font:400 clamp(3rem,5vw,6rem)/.83 var(--display); letter-spacing:-.055em; }
.threshold-side.inside { background:var(--paper); }
.threshold-side.inside h2 { color:var(--gold); font-style:italic; }
.threshold-line { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:1.2rem; border-left:1px solid var(--line); border-right:1px solid var(--line); }
.threshold-line i { width:1px; flex:1; background:var(--gold-pale); }
.threshold-line span { writing-mode:vertical-rl; color:var(--muted); font-size:.5rem; font-weight:600; letter-spacing:.15em; text-transform:uppercase; }
.capacity-section { padding:clamp(5rem,9vw,10rem) clamp(1.5rem,6vw,8rem); border-bottom:1px solid var(--ink); }
.capacity-head { display:grid; grid-template-columns:.45fr 1fr 1fr; gap:2rem 5vw; align-items:end; margin-bottom:4rem; }
.capacity-head > span { color:var(--gold); font-size:.54rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
.capacity-head h2 { margin:0; font:400 clamp(3rem,4.8vw,5.8rem)/.86 var(--display); letter-spacing:-.05em; }
.capacity-head p { margin:0; color:var(--muted); font:400 1.08rem/1.65 var(--display); }
.capacity-plan { display:grid; grid-template-columns:repeat(3,1fr); margin:0; border-top:1px solid var(--ink); border-left:1px solid var(--line); }
.capacity-plan > div { min-height:11rem; display:flex; flex-direction:column; justify-content:space-between; gap:2rem; padding:1.5rem; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.capacity-plan dt { color:var(--muted); font:.54rem/1.5 var(--body); font-weight:600; letter-spacing:.12em; text-transform:uppercase; }
.capacity-plan dd { margin:0; color:var(--gold); font:400 clamp(3rem,5vw,6rem)/.72 var(--display); letter-spacing:-.05em; }
.capacity-plan > div:last-child dd { font-size:clamp(1.8rem,3vw,3.5rem); }
.capacity-maxim { max-width:60rem; margin:4rem auto 0; color:var(--ink); font:italic 400 clamp(1.6rem,2.4vw,2.8rem)/1.16 var(--display); text-align:center; }
.turnaway-section { display:grid; grid-template-columns:minmax(18rem,.72fr) minmax(26rem,1.28fr); gap:4rem 8vw; padding:clamp(5rem,9vw,10rem) clamp(1.5rem,6vw,8rem); border-bottom:1px solid var(--ink); background:var(--cream); }
.turnaway-number { align-self:stretch; display:flex; flex-direction:column; justify-content:space-between; padding:2rem; border:1px solid var(--gold-pale); }
.turnaway-number span,.turnaway-number small { color:var(--gold); font-size:.54rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
.turnaway-number strong { color:var(--ink); font:400 clamp(9rem,18vw,22rem)/.68 var(--display); letter-spacing:-.09em; }
.turnaway-number small { align-self:flex-end; }
.turnaway-copy > span { color:var(--gold); font-size:.54rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
.turnaway-copy h2 { max-width:12ch; margin:1.2rem 0 3rem; font:400 clamp(3rem,4.8vw,5.8rem)/.86 var(--display); letter-spacing:-.05em; }
.turnaway-copy p { margin:0 0 1.6rem; color:var(--muted); font:400 clamp(1.08rem,1.25vw,1.28rem)/1.75 var(--display); }
.worker-quote { padding:clamp(5rem,8vw,9rem) clamp(1.5rem,8vw,10rem); border-bottom:1px solid var(--ink); text-align:center; }
.worker-quote > span { color:var(--gold); font-size:.54rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
.worker-quote blockquote { max-width:76rem; margin:4rem auto 3rem; }
.worker-quote blockquote em { display:block; color:var(--gold); font:italic 400 clamp(2.5rem,5vw,6rem)/.92 var(--display); letter-spacing:-.045em; }
.worker-quote blockquote strong { display:block; max-width:50rem; margin:2.5rem auto 0; color:var(--ink); font:400 clamp(1.6rem,2.6vw,3rem)/1.13 var(--display); }
.worker-quote > p { margin:0; color:var(--muted); font:italic 400 1.2rem/1.5 var(--display); }
.oasis-analysis { display:grid; grid-template-columns:minmax(12rem,.5fr) minmax(30rem,1.5fr); gap:4rem 8vw; padding:clamp(4.5rem,7vw,7.5rem) clamp(1.5rem,6vw,8rem); border-bottom:1px solid var(--line); }
.oasis-analysis-alt { background:var(--cream); }
.oasis-analysis .analysis-copy > p { margin:0 0 1.6rem; color:var(--muted); font:400 clamp(1.08rem,1.25vw,1.28rem)/1.75 var(--display); }
.oasis-analysis .analysis-copy > p strong { color:var(--ink); font-weight:500; }
.oasis-maxim { margin:3.5rem 0 0; padding:2.5rem 0; border-top:1px solid var(--gold); border-bottom:1px solid var(--gold); color:var(--ink); font:italic 400 clamp(1.8rem,2.7vw,3.2rem)/1.12 var(--display); }
.oasis-requirements { list-style:none; margin:3rem 0; padding:0; border-top:1px solid var(--ink); }
.oasis-requirements li { display:grid; grid-template-columns:minmax(11rem,.55fr) minmax(18rem,1.45fr); gap:2rem; padding:1.5rem 0; border-bottom:1px solid var(--line); }
.oasis-requirements strong { color:var(--ink); font:500 1.25rem/1.25 var(--display); }
.oasis-requirements span { color:var(--muted); font:400 1rem/1.65 var(--display); }
.oasis-conclusion { background:var(--cream); border-bottom:1px solid var(--ink); }

.private-layer { display:grid; grid-template-columns:.85fr 1.15fr; gap:4rem; padding:clamp(4rem,7vw,7rem) clamp(1.5rem,6vw,8rem); background:var(--ink); color:#fff; }
.private-layer h2 { max-width:10ch; margin:0; font:400 clamp(3rem,5vw,6rem)/.86 var(--display); letter-spacing:-.05em; }
.private-layer h2 em { color:var(--gold-pale); font-weight:400; }
.private-layer div { max-width:50rem; }
.private-layer p { margin:0 0 1.5rem; color:rgba(255,255,255,.62); font:400 1.05rem/1.65 var(--display); }
.private-layer p.case-note { margin-top:1.5rem; padding-top:1rem; border-top:1px solid rgba(255,255,255,.18); font:500 .58rem/1.65 var(--body); letter-spacing:.05em; }
.private-layer strong { color:#fff; font-weight:500; }
.private-layer a { display:inline-block; margin-top:1rem; padding:.85rem 1rem; border:1px solid var(--gold-pale); color:#fff; font-size:.56rem; font-weight:600; letter-spacing:.15em; text-decoration:none; text-transform:uppercase; }
.private-layer a:hover,.private-layer a:focus-visible { background:var(--gold-pale); color:var(--ink); }

.source-note { padding:2rem clamp(1.5rem,6vw,8rem); background:var(--cream); }
.source-note p { max-width:75rem; margin:0; color:var(--muted); font:400 .72rem/1.55 var(--display); }
.source-note a { text-underline-offset:.2em; }
.next-folio { display:grid; grid-template-columns:1fr auto; gap:2rem; align-items:center; padding:clamp(3rem,6vw,6rem) clamp(1.5rem,6vw,8rem); border-top:1px solid var(--ink); background:var(--cream); text-decoration:none; }
.next-folio span { color:var(--gold); font-size:.54rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
.next-folio strong { display:block; margin-top:.8rem; font:400 clamp(2rem,3.5vw,4.2rem)/.9 var(--display); }
.next-folio i { color:var(--gold); font:400 2rem var(--display); }

@media (max-width:900px) {
  .season-hero,.article-hero,.architect-hero { grid-template-columns:1fr; }
  .season-index,.article-plate { border-top:1px solid var(--line); border-left:0; }
  .season-index { min-height:38rem; }
  .article-plate { min-height:38rem; }
  .architect-mark { min-height:30rem; border-top:1px solid rgba(255,255,255,.18); border-left:0; }
  .architect-invitation { grid-template-columns:1fr; }
  .architect-correspondence { grid-template-columns:1fr; }
  .premise-band,.chapter,.private-layer,.water-scene,.field-invoice,.water-analysis,.incident-opening,.incident-analysis,.decision-scene,.search-section,.cost-section,.decision-analysis,.oasis-opening,.turnaway-section,.oasis-analysis { grid-template-columns:1fr; }
  .clock-row { grid-template-columns:1fr; gap:1.5rem; }
  .heir-claims { grid-template-columns:1fr; }
  .heir-claims article { min-height:0; }
  .heir-claims article + article { border-top:1px solid var(--line); border-left:0; }
  .capacity-head { grid-template-columns:1fr; }
  .letter-lessons li { grid-template-columns:1fr; gap:.7rem; }
  .authorship-ledger > div { grid-template-columns:1fr; gap:.7rem; }
  .proof-ledger a { grid-template-columns:1fr; gap:.65rem; }
  .proof-ledger i { padding-top:.35rem; }
  .folio { grid-template-columns:3rem 1fr auto; }
  .folio p { grid-column:2 / -1; }
}

@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .folio::after { transition:none; }
}

@media (max-width:600px) {
  .season-header { grid-template-columns:1fr auto; gap:.75rem; padding-inline:1rem; }
  .season-header span { display:none; }
  .season-header .brand { font-size:.76rem; }
  .season-header a:last-child { text-align:right; }
  .draft-ribbon { padding-inline:1rem; }
  .draft-ribbon span:last-child { display:none; }
  .season-title,.article-lead { padding:4.5rem 1.2rem; }
  .season-title h1 { font-size:clamp(3.3rem,19vw,6rem); }
  .article-lead h1 { font-size:clamp(3.8rem,15.5vw,5.2rem); }
  .season-index,.article-plate { padding-inline:1.2rem; }
  .premise-band,.dispatches,.chapter,.private-layer,.water-scene,.field-invoice,.water-analysis,.incident-opening,.incident-analysis,.clock-row,.decision-scene,.survived-section,.heir-section,.search-section,.cost-section,.decision-analysis,.oasis-opening,.capacity-section,.turnaway-section,.worker-quote,.oasis-analysis { padding-inline:1.2rem; }
  .response-rules li { grid-template-columns:2rem 1fr; gap:.5rem 1rem; }
  .response-rules li::before { grid-row:1 / span 2; }
  .response-rules span { grid-column:2; }
  .survived-heading { display:block; }
  .survived-heading h2 { margin-top:1rem; }
  .survived-grid { grid-template-columns:1fr; }
  .survived-grid > div { min-height:0; padding:2rem 0 3rem; }
  .survived-grid > div + div { padding:2rem 0 3rem; border-top:1px solid var(--line); border-left:0; }
  .survived-grid ul { columns:1; }
  .cost-ledger > div { grid-template-columns:1fr; gap:.55rem; }
  .cost-ledger small { grid-column:auto; }
  .oasis-threshold { grid-template-columns:1fr; min-height:0; }
  .threshold-side { min-height:28rem; padding:3rem 1.2rem; }
  .threshold-line { height:5rem; flex-direction:row; border-top:1px solid var(--line); border-right:0; border-bottom:1px solid var(--line); border-left:0; }
  .threshold-line i { width:auto; height:1px; }
  .threshold-line span { writing-mode:horizontal-tb; }
  .capacity-plan { grid-template-columns:1fr 1fr; }
  .turnaway-number { min-height:23rem; }
  .oasis-requirements li { grid-template-columns:1fr; gap:.6rem; }
  .letter-body { padding-inline:1.2rem; }
  .letter-head { display:grid; gap:.75rem; }
  .letter-copy > blockquote.reply { margin-left:0; }
  .invoice-lines > div { grid-template-columns:1fr; gap:.55rem; }
  .invoice-lines small { grid-column:auto; }
  .evidence-stack li { grid-template-columns:1fr; gap:.5rem; }
  .dispatches-head { display:block; }
  .dispatches-head p { margin-top:1rem; text-align:left; }
  .folio { grid-template-columns:2.2rem 1fr auto; gap:.7rem; }
  .folio p { grid-column:2 / -1; }
  .series-footer,.article-footer { grid-template-columns:1fr; padding-inline:1rem; }
  .series-footer a,.article-footer a { justify-self:start; }
  .next-folio { grid-template-columns:1fr auto; padding-inline:1.2rem; }
}

/* Open letter · bilingual sticky reading room */
.architect-page { background:var(--paper); color:var(--ink); }
.architect-page .season-header,
.architect-page .draft-ribbon { background:var(--paper); color:var(--ink); border-color:var(--line); }
.architect-page .season-header span,
.architect-page .draft-ribbon strong { color:var(--gold); }
.architect-reading-grid { display:grid; grid-template-columns:minmax(22rem,36vw) minmax(0,1fr); align-items:start; background:var(--paper); border-bottom:1px solid var(--ink); }
.architect-sticky { position:sticky; top:0; min-height:100svh; display:flex; flex-direction:column; justify-content:space-between; padding:clamp(3rem,6vw,7rem) clamp(1.5rem,4vw,5rem); border-right:1px solid var(--line); background:var(--cream); }
.architect-kicker { max-width:40rem; margin:0 0 clamp(3rem,7vh,6rem); color:var(--gold); font:.57rem/1.6 var(--body); font-weight:600; letter-spacing:.15em; text-transform:uppercase; }
.architect-sticky h1 { max-width:9ch; margin:0; font:400 clamp(3.5rem,5.4vw,6.8rem)/.81 var(--display); letter-spacing:-.055em; }
.architect-sticky h1 em { color:var(--gold); font-weight:400; }
.architect-vietnamese-title { max-width:24rem; margin:2rem 0 0; color:var(--muted); font:italic 400 clamp(1.3rem,1.75vw,2rem)/1.05 var(--display); }
.architect-sticky-foot { margin-top:5rem; }
.architect-sticky-foot > p { max-width:28rem; margin:0; padding-top:1.25rem; border-top:1px solid var(--gold); color:var(--muted); font:italic 400 clamp(1.25rem,1.65vw,1.8rem)/1.2 var(--display); }
.architect-sticky-foot nav { display:flex; gap:.7rem; margin-top:2rem; }
.architect-sticky-foot button,.letter-language-switch button { appearance:none; padding:.72rem .9rem; border:1px solid var(--gold); background:transparent; color:var(--ink); font:600 .55rem var(--body); letter-spacing:.14em; text-transform:uppercase; cursor:pointer; }
.architect-sticky-foot button:hover,.architect-sticky-foot button:focus-visible,.architect-sticky-foot button[aria-pressed="true"],.letter-language-switch button:hover,.letter-language-switch button:focus-visible,.letter-language-switch button[aria-pressed="true"] { background:var(--gold); color:#fff; }
.architect-scroll { min-width:0; background:var(--paper); }
.architect-scroll .letter-body { padding:clamp(4rem,8vw,9rem) clamp(1.5rem,6vw,7rem); }
.architect-scroll .letter-head { margin-bottom:clamp(4rem,7vw,7rem); }
.architect-scroll .letter-copy { max-width:50rem; }
.unified-letter { min-height:100svh; }
.letter-language-switch { max-width:50rem; display:flex; justify-content:space-between; align-items:center; gap:1rem; margin:0 0 clamp(3rem,6vw,6rem); padding-bottom:1.2rem; border-bottom:1px solid var(--line); }
.letter-language-switch > span { color:var(--gold); font:.5rem/1.4 var(--body); font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
.letter-language-switch > div { display:flex; gap:.55rem; }
.letter-language-panel[hidden] { display:none !important; }
.vietnamese-letter { border-top:0; background:transparent; }
.vietnamese-letter .letter-head span:last-child { color:var(--ink); }
.architect-page .architect-invitation { background:var(--paper); color:var(--ink); border-top:0; border-bottom:1px solid var(--ink); }
.architect-page .architect-invitation > div { border-top-color:var(--gold); }
.architect-page .architect-invitation span { color:var(--gold); }
.architect-page .architect-invitation a { border-color:var(--gold); color:var(--ink); }
.architect-page .architect-invitation a:hover,.architect-page .architect-invitation a:focus-visible { background:var(--gold); color:#fff; }
.architect-page .architect-invitation a.quiet-mail { padding:0; border:0; color:var(--muted); text-decoration:underline; text-underline-offset:.3em; }
.architect-page .architect-invitation a.quiet-mail:hover,.architect-page .architect-invitation a.quiet-mail:focus-visible { background:transparent; color:var(--gold); }

@media (max-width:900px) {
  .architect-reading-grid { grid-template-columns:1fr; }
  .architect-sticky { position:relative; min-height:auto; padding:4.5rem 1.5rem; border-right:0; border-bottom:1px solid var(--ink); }
  .architect-sticky h1 { max-width:10ch; font-size:clamp(3.8rem,13vw,6.8rem); }
  .architect-sticky-foot { margin-top:4rem; }
  .letter-language-switch { position:sticky; top:0; z-index:4; padding-top:1rem; background:var(--paper); }
}

@media (max-width:600px) {
  .architect-sticky { padding:4rem 1.2rem; }
  .architect-kicker { font-size:.72rem; }
  .architect-scroll .letter-body { padding-inline:1.2rem; }
  .architect-sticky-foot nav,.letter-language-switch,.letter-language-switch > div { flex-wrap:wrap; }
}
