/* Current master: five columns across 170 mm, 4.5 mm gutters.
   Full-page studies and preserved dark statements share this geometry. */
.book-content { --spread-gutter: var(--book-grid-gutter); --spread-baseline: 5mm; --spread-serif: "Book Literata", Georgia, serif; }
.book-opening-lead { page: opening; break-before: left; }
.book-opening-summary, .book-iteration-page, .book-brief-lead, .book-brief-themes { page: editorial; }
.book-brief-lead { break-before: left; }
.book-brief-themes { break-before: right; }
.book-iteration-earlier { break-before: left; }
.book-opening-summary, .book-iteration-later { break-before: right; }
@page opening {
  margin: 20mm 22mm 22mm 18mm; background: #0a0a0a;
  @left-middle { color: #b8b8b4; }
  @left-bottom { color: #b8b8b4; }
}
@page opening:left { margin-left: 18mm; margin-right: 22mm; }
@page editorial { margin: 20mm 18mm 22mm 22mm; }
@page editorial:left { margin-left: 18mm; margin-right: 22mm; }
@page editorial:right { margin-left: 22mm; margin-right: 18mm; }
.book-root .pagedjs_opening_page,
.book-root .pagedjs_opening_page .pagedjs_pagebox,
.book-root .pagedjs_opening_page .pagedjs_area { background: #0a0a0a !important; }
.book-root .pagedjs_opening_page .book-content { background: transparent; }

.book-root .book-spread-page {
  display: grid;
  grid-template-columns: repeat(var(--book-grid-columns), minmax(0, 1fr));
  column-gap: var(--spread-gutter);
  grid-template-rows: repeat(51, var(--spread-baseline));
  height: 255mm;
  padding: 0;
  margin: 0;
  align-content: start;
  break-inside: avoid;
}
.book-root .book-spread-page > * { min-width: 0; align-self: start; }
.book-root .book-spread-page p { text-indent: 0; margin: 0; }
.book-root .book-content .book-spread-kicker {
  grid-column: 1 / -1; grid-row: 1 / 3;
  margin: 0; font: 400 7.5pt/5mm "Book Barlow", Arial, sans-serif;
  letter-spacing: .12em; text-transform: uppercase; color: #e10600;
  string-set: none;
}

/* Abstract: a statement on the left, the project and method on the right. */
.book-root .book-opening-lead { color: #f4f4f0; }
.book-root .book-opening-statement { grid-column: 1 / -1; grid-row: 14 / 46; }
.book-root .book-opening-statement p { font: 400 34pt/40pt var(--spread-serif); letter-spacing: -.025em; color: inherit; text-wrap: pretty; }
.book-root .book-opening-statement p + p { margin-top: 6mm; }
.book-root .book-opening-byline {
  grid-column: 1 / -1; grid-row: 49 / 52;
  font: 400 8pt/5mm "Book Barlow", Arial, sans-serif; color: #a5a5a0;
}
.book-root .book-opening-image { grid-column: 1 / -1; grid-row: 4 / 20; margin: 0; }
.book-root .book-opening-image img { display: block; width: 100%; height: 70mm; object-fit: cover; margin: 0; }
.book-root .book-opening-image figcaption {
  margin: 3mm 0 0; padding: 0; border: 0;
  max-width: 141mm; font: 400 8pt/4mm "Book Barlow", Arial, sans-serif; color: #666660;
}
.book-root .book-content .book-opening-title {
  grid-column: 1 / -1; grid-row: 21 / 26;
  font: 400 23pt/28pt var(--spread-serif); font-style: normal;
  text-transform: none; letter-spacing: -.015em; color: #e10600; margin: 0;
  string-set: chapter-title content(text);
}
.book-root .book-opening-copy {
  grid-column: 1 / -1; grid-row: 33 / 47;
  column-count: 2; column-gap: var(--spread-gutter);
  font: 400 10.5pt/5mm "Book Barlow", Arial, sans-serif; color: #171715;
}
.book-root .book-opening-copy p + p { margin-top: 5mm; }
.book-root .book-opening-edition {
  grid-column: 1 / -1; grid-row: 48 / 52;
  padding-top: 2mm; border-top: .2mm solid #c9c9c3;
  font: 400 8pt/4mm "Book Barlow", Arial, sans-serif; color: #666660;
}

/* Iteration: the same image, title and reflection anchors on both faces. */
.book-root .book-prose > .book-iteration-spread { margin: 0 0 0 calc(-1 * var(--rail, 0mm)); }
.book-root .book-iteration-spread { width: var(--book-live); margin: 0; padding: 0; break-inside: auto; }
.book-root .book-content .book-spread-title {
  grid-column: 1 / -1; grid-row: 5 / 14;
  display: block; margin: 0; padding: 0; border: 0;
  font: 400 31pt/35pt var(--spread-serif); font-style: normal;
  letter-spacing: -.02em; text-transform: none; color: #0a0a0a;
}
.book-root .book-iteration-later .book-spread-title { color: #e10600; }
.book-root .book-iteration-image { grid-column: 1 / -1; grid-row: 12 / 35; }
.book-root .book-content .book-iteration-image img { display: block; width: 100%; height: 102mm; object-fit: contain; margin: 0; }
.book-root .book-iteration-image .book-panel-label {
  max-width: none; margin: 3mm 0 0 !important;
  font: 400 8pt/4mm "Book Barlow", Arial, sans-serif !important;
  color: #666660; letter-spacing: 0; text-transform: none;
}
.book-root .book-iteration-reflection { grid-column: 1 / 4; grid-row: 36 / 46; }
.book-root .book-iteration-question { grid-column: 4 / -1; grid-row: 36 / 46; }
.book-root .book-iteration-reflection, .book-root .book-iteration-question { font: 400 10.5pt/5mm "Book Barlow", Arial, sans-serif; }
.book-root .book-iteration-reflection strong, .book-root .book-iteration-question strong { display: block; color: #e10600; margin-bottom: 2mm; }
.book-root .book-iteration-status {
  grid-column: 4 / -1; grid-row: 36 / 41;
  border-top: .3mm solid #e10600; padding-top: 3mm;
  font: 400 9pt/5mm "Book Barlow", Arial, sans-serif; color: #666660;
}
.book-root .book-iteration-note {
  grid-column: 1 / -1; grid-row: 47 / 52;
  font: 400 8.5pt/4mm "Book Barlow", Arial, sans-serif; color: #666660;
}

/* The continuous reading edition uses the same source in normal document flow. */
.book-root .book-reading-layout .book-spread-page { display: block; height: auto; padding: 36px 0; }
.book-root .book-reading-layout .book-opening-lead { background: #0a0a0a; padding: 36px; }
.book-root .book-reading-layout .book-spread-kicker { margin-bottom: 30px; }
.book-root .book-reading-layout .book-opening-statement p { font-size: clamp(28px, 4vw, 42px); line-height: 1.25; }
.book-root .book-reading-layout .book-opening-byline { margin-top: 36px; }
.book-root .book-reading-layout .book-opening-title { margin: 30px 0; }
.book-root .book-reading-layout .book-opening-copy { column-count: 1; font-size: 17px; line-height: 1.8; }
.book-root .book-reading-layout .book-opening-edition { margin-top: 30px; }
.book-root .book-reading-layout .book-iteration-image { margin: 30px 0; }
.book-root .book-reading-layout .book-iteration-image img { height: auto; }
.book-root .book-reading-layout .book-iteration-reflection,
.book-root .book-reading-layout .book-iteration-question { font-size: 17px; line-height: 1.8; margin-bottom: 24px; }
.book-root .book-reading-layout .book-iteration-note { font-size: 12px; line-height: 1.6; margin-top: 30px; }

/* Process plates use the same five columns and broad vertical anchors as the
   opening. The pictures carry the comparison; prose explains their consequence. */
.book-root .book-editorial-group { width: 170mm; max-width: none; padding: 0; margin: 0; break-inside: auto; }
.book-root .book-prose > .book-editorial-group { margin-left: calc(-1 * var(--rail, 0mm)); }
.book-root .book-process-gallery { page: opening; break-before: left; color: #f4f4f0; background: #0a0a0a; }
.book-root .pagedjs_page:has(.book-process-gallery),
.book-root .pagedjs_page:has(.book-process-gallery) :is(.pagedjs_pagebox, .pagedjs_area) { background: #0a0a0a !important; }
.book-root .pagedjs_page:has(.book-process-gallery) .pagedjs_margin-content { color: #aaa; }
.book-root .book-process-route,
.book-root .book-comparison-plate,
.book-root .book-poster-page { page: editorial; break-before: page; }
.book-root .book-comparison-plate { break-inside: avoid; }
.book-root .book-comparison-plate:has([data-figure="poster-world-development"]),
.book-root .book-poster-page:has([data-figure]) { break-before: left; }
.book-root .book-content .book-process-heading {
  grid-column: 1 / -1; grid-row: 4 / 11; margin: 0; padding: 0; border: 0;
  font: 400 28pt/31pt "Book Barlow", Arial, sans-serif;
  text-transform: none; letter-spacing: -.02em; color: inherit;
}
.book-root .book-process-images {
  grid-column: 1 / -1; grid-row: 12 / 47;
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: repeat(3, 55mm); gap: 5mm 4mm;
}
.book-root .book-process-tile { min-width: 0; min-height: 0; }
.book-root .book-process-tile-2 { grid-column: 2; grid-row: 1 / 3; }
.book-root .book-process-tile-3 { grid-column: 1; grid-row: 2; }
.book-root .book-process-tile-4 { grid-column: 1; grid-row: 3; }
.book-root .book-process-tile-5 { grid-column: 2; grid-row: 3; }
.book-root .book-process-tile img { width: 100%; height: 41mm; object-fit: contain; object-position: left top; margin: 0; display: block; }
.book-root .book-process-tile-2 img { height: 101mm; }
.book-root .book-process-tile p { margin-top: 2mm; color: #ccc; font: 400 8.5pt/4mm "Book Barlow", Arial, sans-serif; }
.book-root .book-process-tile b { color: #ff4944; margin-right: 1mm; }
.book-root .book-process-source { grid-column: 1 / -1; grid-row: 48 / 52; font: 400 8pt/4mm "Book Barlow", Arial, sans-serif; color: #aaa; }
.book-root .book-process-milestones { grid-column: 1 / -1; grid-row: 12 / 42; list-style: none; padding: 0; margin: 0; }
.book-root .book-process-milestones li { display: grid; grid-template-columns: 13mm minmax(0,1fr); column-gap: 4mm; margin: 0 0 5mm; break-inside: avoid; }
.book-root .book-process-step { font: 400 21pt/8mm "Book Barlow", Arial, sans-serif; color: #e10600; }
.book-root .book-process-date { font: 400 8pt/4mm "Book Barlow", Arial, sans-serif; color: #666; }
.book-root .book-process-milestones h4,
.book-root .book-process-method h4,
.book-root .book-comparison-readings h4 { margin: 0 0 1mm; font: 600 11.5pt/5mm "Book Barlow", Arial, sans-serif; color: #e10600; text-transform: none; }
.book-root .book-process-milestones p:not(.book-process-date) { font: 400 10.5pt/5mm "Book Barlow", Arial, sans-serif; }
.book-root .book-process-method { grid-column: 1 / -1; grid-row: 43 / 52; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 4mm; border-top: .3mm solid #e10600; padding-top: 4mm; }
.book-root .book-process-method p { font: 400 9.5pt/4.5mm "Book Barlow", Arial, sans-serif; }
.book-root .book-comparison-images { grid-column: 1 / -1; grid-row: 12 / 38; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4mm; }
.book-root .book-comparison-images img { width: 100%; height: 116mm; object-fit: contain; object-position: top center; display: block; margin: 0; }
.book-root .book-comparison-images p { font: 400 8.5pt/4mm "Book Barlow", Arial, sans-serif; color: #666; margin-top: 2mm; }
.book-root .book-comparison-readings { grid-column: 1 / -1; grid-row: 39 / 48; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4mm; font: 400 10.5pt/5mm "Book Barlow", Arial, sans-serif; }
.book-root .book-comparison-note { grid-column: 1 / -1; grid-row: 49 / 52; padding: 0; border: 0; margin: 0; font: 400 8pt/4mm "Book Barlow", Arial, sans-serif; color: #666; }
.book-root .book-poster-page > img { grid-column: 1 / -1; grid-row: 3 / 47; width: 100%; height: 220mm; object-fit: contain; margin: 0; display: block; }
.book-root .book-poster-caption { grid-column: 1 / -1; grid-row: 47 / 49; font: 400 9pt/4mm "Book Barlow", Arial, sans-serif; color: #e10600; }
.book-root .book-poster-credit { grid-column: 1 / -1; grid-row: 49 / 52; font: 400 8pt/4mm "Book Barlow", Arial, sans-serif; color: #666; }
.book-root .book-reading-layout .book-editorial-group { width: 100%; margin-left: 0; }
.book-root .book-reading-layout .book-process-gallery { background: #0a0a0a; padding: 30px; }
.book-root .book-reading-layout .book-process-heading { margin-bottom: 28px; }
.book-root .book-reading-layout .book-process-images,
.book-root .book-reading-layout .book-comparison-images { margin-bottom: 30px; }
.book-root .book-reading-layout .book-process-source,
.book-root .book-reading-layout .book-process-method,
.book-root .book-reading-layout .book-comparison-note { margin-top: 30px; }
.book-root .book-reading-layout .book-poster-page > img { height: auto; max-height: 1000px; }
@media screen and (max-width: 700px) {
  .book-root .book-reading-layout .book-process-images { display: block; }
  .book-root .book-reading-layout .book-process-tile { margin-bottom: 24px; }
  .book-root .book-reading-layout .book-process-tile img { height: auto; max-height: 400px; }
  .book-root .book-reading-layout .book-process-method,
  .book-root .book-reading-layout .book-comparison-readings { grid-template-columns: 1fr; gap: 24px; }
}

/* Reconstructed process studies: the supplied iteration account is condensed
   into directly labelled routes. These are diagrams, never invented records. */
.book-root .book-study-page {
  page: editorial; break-before: page; break-after: page; break-inside: avoid;
  width: 170mm; height: 255mm; margin: 0; padding: 0; color: #171715;
}
.book-root .book-content .book-study-kicker {
  grid-column: 1 / -1; grid-row: 1 / 3;
  margin: 0 0 7mm; font: 400 8pt/4mm "Book Barlow", Arial, sans-serif;
  letter-spacing: .08em; text-transform: uppercase; color: #e10600;
}
.book-root .book-content .book-study-title {
  grid-column: 1 / -1; grid-row: 4 / 11;
  margin: 0 0 5mm; padding: 0; border: 0; max-width: 155mm;
  font: 400 29pt/32pt "Book Barlow", Arial, sans-serif;
  letter-spacing: -.02em; text-transform: none; color: #171715;
}
.book-root .book-content .book-study-title::after { content: none; }
.book-root .book-study-lead {
  grid-column: 1 / -1; grid-row: 11 / 15;
  margin: 0 0 7mm; max-width: 150mm; text-indent: 0;
  font: 400 11.5pt/15.5pt "Book Barlow", Arial, sans-serif;
}
.book-root .book-study-items { grid-column: 1 / -1; grid-row: 15 / 48; list-style: none; padding: 0; margin: 0; }
.book-root .book-study-items > li { margin: 0; break-inside: avoid; }
.book-root .book-study-items h4,
.book-root .book-study-reflections h4 {
  margin: 1mm 0 2mm; font: 500 17pt/19pt "Book Barlow", Arial, sans-serif;
  color: #171715; text-transform: none; letter-spacing: -.01em;
}
.book-root .book-study-stage > span { font: 400 8pt/11pt "Book Barlow", Arial, sans-serif; color: #e10600; }
.book-root .book-study-reading p,
.book-root .book-study-reflections p { margin: 0; text-indent: 0; font: 400 10.5pt/14pt "Book Barlow", Arial, sans-serif; }
.book-root .book-study-reading .book-study-change { margin-top: 2mm; color: #555; font-size: 10pt; }
.book-root .book-study-change strong { font-weight: 500; color: #e10600; }
.book-root .book-study-note {
  grid-column: 1 / -1; grid-row: 48 / 52;
  margin: 0; padding: 2mm 0 0; border: 0; border-top: .2mm solid #bbb;
  font: 400 8pt/11pt "Book Barlow", Arial, sans-serif; color: #60605b;
}
.book-root .book-study-note p { margin: 0; font: inherit; text-indent: 0; }
.book-root .book-study-concept-route .book-study-items > li {
  display: grid; grid-template-columns: 60mm minmax(0,1fr); column-gap: 6mm;
  border-top: .25mm solid #bbb; padding: 3mm 0; min-height: 21mm;
}
.book-root .book-study-concept-route .book-study-items > li:last-child { border-color: #e10600; }
.book-root .book-study-concept-route .book-study-items > li:last-child h4 { color: #e10600; }
.book-root .book-study-exhibition-route .book-study-items {
  display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8mm 7mm;
}
.book-root .book-study-exhibition-route .book-study-items > li { border-top: .25mm solid #bbb; padding-top: 3mm; }
.book-root .book-study-exhibition-route svg { display: block; width: 100%; height: 22mm; margin: 3mm 0; }
.book-root .book-study-film-versions .book-study-items > li { border-top: .25mm solid #bbb; padding: 4mm 0; }
.book-root .book-study-film-versions .book-study-stage { display: grid; grid-template-columns: 51mm 1fr; gap: 4mm; align-items: baseline; }
.book-root .book-study-film-versions .book-study-stage h4 { font-size: 17pt; margin-top: 0; }
.book-root .book-study-film-versions .book-study-reading > p { max-width: 155mm; }
.book-root .book-film-beats { display: flex; gap: 3mm; list-style: none; padding: 0; margin: 3mm 0; }
.book-root .book-film-beats li {
  flex: 1; min-width: 0; margin: 0; padding-top: 2mm; border-top: 1.2mm solid #171715;
  font: 400 9pt/12pt "Book Barlow", Arial, sans-serif; color: #171715;
}
.book-root .book-study-film-versions .book-study-items > li:last-child .book-film-beats li { border-color: #e10600; }
.book-root .book-display-map { grid-column: 1 / -1; grid-row: 15 / 39; display: block; width: 100%; height: 120mm; margin: 0; }
.book-root .book-study-reflections { grid-column: 1 / -1; grid-row: 40 / 48; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7mm; }
.book-root .book-study-reflections h4 { color: #e10600; font-size: 13pt; line-height: 17pt; }
.book-root .book-reading-layout .book-study-page { width: 100%; height: auto; min-height: 0; margin: 40px 0; }
.book-root .book-reading-layout .book-study-title { max-width: none; font-size: 34px; }
.book-root .book-reading-layout .book-study-concept-route .book-study-items > li { grid-template-columns: minmax(130px,1fr) 2fr; }
.book-root .book-reading-layout .book-study-note { font-size: 12px; line-height: 1.6; }
@media screen and (max-width: 700px) {
  .book-root .book-reading-layout .book-study-exhibition-route .book-study-items,
  .book-root .book-reading-layout .book-study-reflections { grid-template-columns: 1fr; }
  .book-root .book-reading-layout .book-study-film-versions .book-study-stage { display: block; }
  .book-root .book-reading-layout .book-film-beats { flex-wrap: wrap; }
  .book-root .book-reading-layout .book-film-beats li { flex-basis: 30%; }
  .book-root .book-reading-layout .book-display-map { height: auto; }
}

/* Design brief: a red serif title, the question and the interpretation on the left;
   the three themes at display size beside small captions on the right. */
.book-root .book-content .book-brief-title {
  grid-column: 1 / -1; grid-row: 7 / 19; max-width: 120mm;
  font: 400 44pt/50pt var(--spread-serif); font-style: normal;
  text-transform: none; letter-spacing: -.02em; color: #e10600; margin: 0; text-wrap: balance;
}
.book-root .book-brief-statement {
  grid-column: 2 / -1; grid-row: 27 / 33;
  font: 400 16pt/22pt var(--spread-serif); letter-spacing: -.01em; color: #171715; text-wrap: pretty;
}
.book-root .book-brief-body {
  grid-column: 2 / -1; grid-row: 34 / 52;
  display: grid; grid-template-columns: 1fr 1fr; column-gap: var(--spread-gutter);
  font: 400 9pt/5mm "Book Barlow", Arial, sans-serif; color: #171715;
}
.book-root .book-brief-body p + p { margin-top: 3mm; }
.book-root .book-content .book-brief-body h3 {
  margin: 0 0 3mm; font: 600 9pt/5mm "Book Barlow", Arial, sans-serif; font-style: normal;
  letter-spacing: .1em; text-transform: uppercase; color: #e10600;
}
.book-root .book-brief-label {
  grid-column: 1 / -1; grid-row: 3 / 6;
  font: 400 12pt/5mm var(--spread-serif); color: #666660;
}
.book-root .book-spread-page.book-brief-themes > dl {
  grid-column: 1 / -1; grid-row: 10 / 48; margin: 0; align-self: stretch;
  display: grid; grid-template-rows: repeat(3, 1fr); align-items: center;
}
.book-root .book-brief-themes dl > div {
  display: grid; grid-template-columns: minmax(0, 1fr) 46mm; align-items: center; column-gap: 6mm;
}
.book-root .book-brief-themes dt {
  font: 600 72pt/1 "Book Barlow", Arial, sans-serif; letter-spacing: -.025em; color: #e10600;
}
.book-root .book-brief-themes dd {
  margin: 0; font: 400 8.5pt/12pt var(--spread-serif); color: #e10600; text-align: right; text-wrap: pretty;
}
.book-root .book-reading-layout .book-brief-title { margin: 30px 0; font-size: clamp(34px, 6vw, 56px); line-height: 1.12; }
.book-root .book-reading-layout .book-brief-statement { font-size: 22px; line-height: 1.4; margin-bottom: 30px; }
.book-root .book-reading-layout .book-brief-body { grid-template-columns: 1fr; row-gap: 24px; font-size: 17px; line-height: 1.8; }
.book-root .book-reading-layout .book-brief-label { margin-bottom: 30px; }
.book-root .book-reading-layout .book-brief-themes dl > div { grid-template-columns: 1fr; row-gap: 8px; margin-bottom: 36px; }
.book-root .book-reading-layout .book-brief-themes dt { font-size: clamp(40px, 11vw, 72px); }
.book-root .book-reading-layout .book-brief-themes dd { text-align: left; font-size: 15px; line-height: 1.6; }
