@font-face {
  font-family: "Book Literata";
  src: url("/publications/fonts/book-literata-latin-normal-400.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: block;
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: "Book Literata Italic";
  src: url("/publications/fonts/book-literata-latin-italic-400.ttf") format("truetype");
  font-weight: 400;
  font-style: italic;
  font-display: block;
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face { font-family: "Book Literata"; src: url("/publications/fonts/book-literata-latin-ext-normal-400.ttf") format("truetype"); font-weight: 400; font-style: normal; font-display: block; unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "Book Literata Italic"; src: url("/publications/fonts/book-literata-latin-ext-italic-400.ttf") format("truetype"); font-weight: 400; font-style: italic; font-display: block; unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "Book Literata"; src: url("/publications/fonts/book-literata-latin-normal-600.ttf") format("truetype"); font-weight: 600; font-style: normal; font-display: block; unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Book Literata Italic"; src: url("/publications/fonts/book-literata-latin-italic-600.ttf") format("truetype"); font-weight: 600; font-style: italic; font-display: block; unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Book Literata"; src: url("/publications/fonts/book-literata-latin-ext-normal-600.ttf") format("truetype"); font-weight: 600; font-style: normal; font-display: block; unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "Book Literata Italic"; src: url("/publications/fonts/book-literata-latin-ext-italic-600.ttf") format("truetype"); font-weight: 600; font-style: italic; font-display: block; unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "Book Barlow"; src: url("/publications/fonts/book-barlow-latin-normal-400.ttf") format("truetype"); font-weight: 400; font-style: normal; font-display: block; unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Book Barlow Italic"; src: url("/publications/fonts/book-barlow-latin-italic-400.ttf") format("truetype"); font-weight: 400; font-style: italic; font-display: block; unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Book Barlow"; src: url("/publications/fonts/book-barlow-latin-normal-600.ttf") format("truetype"); font-weight: 600; font-style: normal; font-display: block; unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Book Barlow Italic"; src: url("/publications/fonts/book-barlow-latin-italic-600.ttf") format("truetype"); font-weight: 600; font-style: italic; font-display: block; unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family: "Book Barlow"; src: url("/publications/fonts/book-barlow-latin-ext-normal-400.ttf") format("truetype"); font-weight: 400; font-style: normal; font-display: block; unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "Book Barlow Italic"; src: url("/publications/fonts/book-barlow-latin-ext-italic-400.ttf") format("truetype"); font-weight: 400; font-style: italic; font-display: block; unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "Book Barlow"; src: url("/publications/fonts/book-barlow-latin-ext-normal-600.ttf") format("truetype"); font-weight: 600; font-style: normal; font-display: block; unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family: "Book Barlow Italic"; src: url("/publications/fonts/book-barlow-latin-ext-italic-600.ttf") format("truetype"); font-weight: 600; font-style: italic; font-display: block; unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
:root, .book-root, .book-content { --book-live: 170mm; --book-grid-columns: 5; --book-grid-gutter: 4.5mm; --book-column: 30.4mm; --book-live-height: 255mm; }
.book-content { color:#000; background:#fff; font-family:"Book Barlow",Arial,sans-serif; font-weight:400; font-size:11.5pt; line-height:15.5pt; font-kerning:normal; font-variant-ligatures:none; font-feature-settings:"liga" 0,"clig" 0; }
.book-content *, .book-content *::before, .book-content *::after { box-sizing:border-box; }
.book-content a { color:inherit; text-decoration:underline; text-decoration-thickness:.4pt; text-underline-offset:2pt; overflow-wrap:anywhere; }
.book-content p { margin:0; widows:3; orphans:3; }
.book-content strong { font-weight:600; }
.book-content em { font-family:"Book Barlow Italic",Arial,sans-serif; font-style:italic; }
.book-content h1, .book-content h2, .book-content h3 { font-family:"Book Barlow",Arial,sans-serif; color:#000; font-weight:600; text-wrap:balance; }
.book-content h2 { font-size:34pt; line-height:1.04; letter-spacing:-.015em; margin:0 0 5mm; }
.book-content h3 { font-size:15pt; line-height:19pt; margin:7mm 0 3mm; break-after:avoid; }
.book-content h4 { font-size:12pt; margin:5mm 0 2mm; break-after:avoid; }
.book-label { font-family:Arial,sans-serif; font-size:8pt; line-height:12pt; letter-spacing:.08em; text-transform:uppercase; text-indent:0 !important; }
.book-section-heading { margin-bottom:8mm; padding-top:5mm; break-inside:avoid; break-after:avoid; }
.book-section-heading .book-label { margin-bottom:5mm; }
.book-subtitle { font-size:13pt; line-height:18pt; max-width:120mm; }
.book-prose { max-width:none; margin:0; }
.book-prose p + p { text-indent:4mm; }
.book-prose h3 + p, .book-prose figure + p, .book-prose aside + p, .book-prose blockquote + p { text-indent:0; }
.book-content blockquote { margin:6mm 0; border-left:1mm solid #b51f20; padding:0 0 0 5mm; font-size:13pt; line-height:18pt; break-inside:avoid; }
.book-content blockquote p { text-indent:0; }
.book-content ul, .book-content ol { padding-left:6mm; }
.book-content table { border-collapse:collapse; width:100%; margin:6mm 0; font:10pt/14pt Arial,sans-serif; }
.book-content th, .book-content td { padding:3mm; border-bottom:.25mm solid #000; text-align:left; vertical-align:top; }
.book-content tr { break-inside:avoid; }
.book-content pre { white-space:pre-wrap; overflow-wrap:anywhere; font:9pt/13pt monospace; }
.book-cover { height:250mm; display:flex; flex-direction:column; }
.book-cover > .book-label { padding-top:4mm; margin-bottom:13mm; }
.book-cover h1 { font-size:100pt; line-height:.86; letter-spacing:-.025em; margin:0 0 10mm; }
.book-cover h1 span { display:block; }
.book-cover-subtitle { font-size:18pt; line-height:22pt; margin-bottom:8mm !important; }
.book-content .book-cover-art { display:block; width:100%; height:81mm; object-fit:cover; margin:0; }
.book-cover-credit { font:7.5pt/11pt Arial,sans-serif; margin-top:2mm !important; }
.book-cover-footer { margin-top:auto; border-top:.6mm solid #000; padding-top:4mm; display:flex; justify-content:space-between; gap:8mm; font-size:10pt; line-height:14pt; }
.book-cover-footer p:last-child { text-align:right; }
.book-edition-note { margin-top:10mm !important; border-top:.25mm solid #000; padding-top:3mm; font:9pt/13pt Arial,sans-serif; }
.book-contents > .book-label { margin:0 0 5mm; }
.book-contents ol { list-style:none; padding:0; margin:0; font-size:10pt; line-height:13pt; }
.book-contents li { margin-bottom:1.5mm; }
.book-contents a { display:flex; justify-content:space-between; gap:6mm; text-decoration:none; }
.book-toc-part { font-weight:600; margin-top:3.5mm; }
.book-toc-chapter { padding-left:4mm; }
.book-toc-number { min-width:9mm; text-align:right; font-variant-numeric:tabular-nums; }
.book-part { padding-top:27mm; }
.book-part .book-section-heading { padding-top:9mm; }
.book-part h2 { font-size:52pt; line-height:1; max-width:145mm; margin-bottom:10mm; }
.book-part .book-subtitle { font-size:16pt; line-height:21pt; }
.book-part .book-prose { margin-top:16mm; }
.book-statement { min-height:230mm; display:flex; flex-direction:column; justify-content:center; }
.book-statement .book-label { margin-bottom:8mm; }
.book-statement h2 { font-size:58pt; line-height:1; padding-top:8mm; margin:0 0 12mm; }
.book-statement p:last-child { max-width:120mm; font-size:15pt; line-height:21pt; }
.book-figure { margin:8mm 0; padding:0; break-inside:avoid; }
.book-figure-heading { display:flex; align-items:baseline; gap:4mm; margin-bottom:5mm; font-size:10pt; line-height:13pt; break-after:avoid; }
.book-figure-heading p { text-indent:0 !important; }
.book-figure-heading p:first-child { flex:none; font:8pt/12pt Arial,sans-serif; }
.book-figure-heading strong { font-weight:400; }
.book-figure-heading p:last-child { max-width:140mm; }
.book-figure-drawing { padding:0; border:0; }
.book-figure svg { display:block; width:100%; height:auto; max-height:none; overflow:visible; }
.book-figure figcaption { font:9pt/12.5pt "Book Barlow",Arial,sans-serif; margin-top:5mm; padding-top:3mm; border-top:.2mm solid #a6a6a6; }
.book-figure figcaption p { display:inline; text-indent:0; }
.book-figure figcaption em { font-family:"Book Barlow Italic",Arial,sans-serif; }
.book-figure-images { display:grid; grid-template-columns:1fr; gap:5mm; padding:0; border:0; align-items:start; }
.book-content .book-image-panel img { width:100%; height:auto; max-height:84mm; object-fit:contain; margin:0; display:block; }
.book-panel-label { font:9.5pt/13pt "Book Barlow",Arial,sans-serif; text-indent:0 !important; margin-top:3mm !important; max-width:82mm; }
.book-figure-phones .book-figure-images { grid-template-columns:1fr 1fr; gap:9mm; }
.book-content .book-figure-phones img { height:85mm; }
.book-content .book-figure-stack img { max-height:68mm; }
.book-figure-process-grid .book-figure-images { grid-template-columns:1fr 1fr; gap:3mm 5mm; }
.book-figure-process-grid .book-image-panel:first-child { grid-column:1 / -1; }
.book-content .book-figure-process-grid img { height:65mm; }
.book-content .book-figure-process-grid .book-image-panel:first-child img { height:57mm; }
.book-content .book-figure-timeline img { max-height:158mm; }
.book-content .book-figure-overview img { max-height:130mm; }
.book-figure-posters .book-figure-images, .book-figure-comparison .book-figure-images { grid-template-columns:1fr 1fr; gap:6mm; }
.book-content .book-figure-posters img { max-height:116mm; }
.book-content .book-figure-comparison img { max-height:none; }
.book-figure[data-figure="impact"] { margin:6mm 0; }
/* A drawing and its specific argument share one modular page composition. */
.book-composition { display:grid; grid-template-columns:100mm 1fr; gap:9mm; align-items:start; margin:8mm 0; break-inside:avoid; }
.book-composition .book-figure { margin:0; min-width:0; }
.book-composition .book-figure-heading { display:block; min-height:15mm; margin-bottom:4mm; }
.book-composition .book-figure-heading p:first-child { margin-bottom:1mm; }
.book-composition-copy { padding-top:19mm; }
.book-composition-copy > p:first-child { text-indent:0; }
.book-composition-copy p + p { text-indent:0; margin-top:4mm; }
.book-composition + p { text-indent:0; }
.book-composition-preferences { grid-template-columns:1fr 100mm; }
.book-composition-preferences .book-figure { grid-column:2; grid-row:1; }
.book-composition-preferences .book-composition-copy { grid-column:1; grid-row:1; }
@media screen {
  .book-reading-layout > main { container:book-reading / inline-size; }
}
@container book-reading (max-width:620px) {
  .book-reading-layout .book-composition { grid-template-columns:1fr; }
  .book-reading-layout .book-composition .book-figure, .book-reading-layout .book-composition-copy { grid-column:auto; grid-row:auto; padding-top:0; }
  .book-reading-layout .book-composition .book-figure { max-width:100mm; }
}
@media screen and (max-width:700px) {
  .book-reading-layout .book-composition { grid-template-columns:1fr; }
  .book-reading-layout .book-composition .book-figure, .book-reading-layout .book-composition-copy { grid-column:auto; grid-row:auto; padding-top:0; }
}
.book-evidence-note { margin:6mm 0; border-left:.6mm solid #b51f20; padding:3mm 0 3mm 5mm; break-inside:avoid; font:9pt/13pt Arial,sans-serif; }
.book-evidence-note .book-label { font-size:7.5pt; margin-bottom:2mm; }
.book-evidence-note p { text-indent:0 !important; }
.book-reference-list { font-size:11.5pt; line-height:23pt; }
.book-reference-entry { padding-left:12.7mm; text-indent:-12.7mm; break-inside:avoid; }
.book-reference-entry .csl-entry { margin:0; padding:0; }
.book-reference-entry i { font-family:"Book Barlow Italic",Arial,sans-serif; }
.book-reference-entry a { overflow-wrap:anywhere; }
.book-content #credits .book-prose { font-size:10.5pt; line-height:15pt; }
.book-content .book-university-logo { display:block; width:48mm; height:auto; margin:2mm 0 0; }
.book-page-break { break-before:page; }
