/* Railway exhibition. October 7: spatial entrance and one continuous exhibit narrative. */
:root {
  --ink: #132b36;
  --muted: #59666a;
  --paper: #f6f5f0;
  --surface: #fff;
  --line: #cdd2ce;
  --accent: #805b38;
  --accent-dark: #664328;
  --teal: #246a6c;
  --radius: 4px;
  --serif: 'Noto Serif SC', 'Source Han Serif SC', 'Songti SC', SimSun, serif;
}
html { scroll-padding-top: 96px; }
body { background: var(--paper); line-height: 1.8; }
h1, h2, h3, h4 { letter-spacing: -.035em; }
img { max-width: 100%; }
a { text-decoration: none; }
.header {
  min-height: 82px;
  padding: 14px max(4.4vw,24px);
  background: var(--paper);
  backdrop-filter: none;
  border-bottom: 1px solid var(--line);
}
.brand { font-size: 1.25rem; letter-spacing: -.04em; }
.brand img { width: 34px; height: 34px; border-radius: 3px; }
.brand small { display: block; margin-top: 1px; font-size: .75rem; font-weight: 400; letter-spacing: .12em; color: var(--muted); }
.header nav { gap: 34px; }
.header nav a { font-size: .9375rem; }
.menu { border-radius: 3px; background: transparent; }
.shell { max-width: 1480px; padding: 38px max(4.4vw,24px) 64px; }
.pagehead { margin-bottom: 22px; }
.pagehead .eyebrow { margin-bottom: 8px; font-size: .875rem; }
.pagehead h1 { font-family: var(--serif); font-size: clamp(2rem,3.2vw,3rem); line-height: 1.35; margin-bottom: 12px; letter-spacing: -.03em; }
.pagehead p { max-width: 760px; }
.section-tabs { margin-bottom: 26px; gap: 30px; }
.section-tabs a { min-height: 48px; font-size: .9375rem; padding-block: 10px; }
.eyebrow, .meta { font-size: .875rem; }
.button { border-radius: 3px; padding: 11px 20px; font-weight: 500; min-height: 46px; }
.button:hover { box-shadow: none; background: var(--accent-dark); }
.button.light { background: transparent; border-color: #adb7b6; }
.button.light:hover { background: #e8ece8; }
.text-link { font-size: .9375rem; min-height: 36px; padding-block: 5px; display: inline-flex; align-items: center; }
button.text-link { background: transparent; border: 0; border-bottom: 1px solid #ad3e3050; border-radius: 0; cursor: pointer; font-weight: 400; }
.source-link, .source-links { font-size: .875rem; }
.notice { border-radius: 3px; border-left: 3px solid var(--teal); background: #e9eeeb; color: var(--muted); font-size: .9375rem; }
.editorial-heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 26px; }
.editorial-heading .eyebrow { display: block; margin-bottom: 6px; }
.editorial-heading h2 { margin: 0; font-size: 1.75rem; line-height: 1.5; }
.editorial-heading p { margin: 0 0 4px; font-size: .9375rem; }

/* Homepage: the exhibition is the subject, with routes already visible below it. */
.front-exhibition { padding-top: 24px; padding-bottom: 0; }
.front-heading { display: flex; justify-content: space-between; gap: 20px; margin-bottom: 22px; font-size: .8125rem; letter-spacing: .06em; }
.front-heading span:first-child { color: var(--accent); }
.front-heading span:last-child { color: var(--muted); }
.front-grid { display: grid; grid-template-columns: .76fr 1.24fr; gap: 56px; align-items: stretch; }
.front-copy { padding: 16px 0 22px; }
.front-small { color: var(--muted); font-size: .875rem; margin: 0 0 18px; }
.front-copy h1 { font: 600 clamp(3.3rem,5.5vw,5.5rem)/1.17 var(--serif); letter-spacing: -.055em; margin: 0 0 24px; color: var(--ink); }
.front-copy h1 em { font-style: normal; color: var(--accent); }
.front-stop { color: var(--accent); }
.front-description { font-size: 1rem; line-height: 1.95; margin-bottom: 26px; }
.front-actions { display: flex; gap: 18px; flex-wrap: wrap; align-items: center; }
.front-main { background: var(--accent); border-color: var(--accent); }
.front-photo { position: relative; margin: 0; overflow: hidden; min-width: 0; background: #0d2d26; display: flex; flex-direction: column; }
.front-photo > img { width: 114%; max-width: none; margin-left: -7%; height: 410px; min-height: 0; object-fit: cover; object-position: 50% 47%; }
.front-photo figcaption { display: flex; justify-content: space-between; gap: 20px; padding: 10px 14px; color: #d5dfdc; font-size: .75rem; background: #102e29; }
.front-photo figcaption a { color: #e3e8e4; text-decoration: underline; text-underline-offset: 3px; }
.front-film-link { position: absolute; inset: auto 20px 68px auto; background: var(--paper); padding: 14px 18px; display: flex; align-items: center; gap: 16px; color: var(--ink); border: 1px solid #f6f5f0; transition: background .18s; }
.front-film-link:hover { background: #fff; }
.front-film-link small { display: block; font-size: .75rem; font-weight: 400; color: var(--muted); margin-top: 2px; }
.film-play { width: 32px; height: 32px; border: 1px solid #b3bfbb; border-radius: 50%; display: grid; place-items: center; font-size: .75rem; padding-left: 2px; }
.front-index { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: 24px; border-block: 1px solid var(--line); }
.front-index a { padding: 18px 0; display: grid; grid-template-columns: 34px 1fr; column-gap: 12px; color: var(--ink); }
.front-index a + a { border-left: 1px solid var(--line); padding-left: 26px; }
.front-index span { grid-row: span 2; color: var(--accent); font-size: .8125rem; padding-top: 2px; }
.front-index strong { font-size: 1rem; font-weight: 600; }
.front-index small { font-size: .875rem; color: var(--muted); }
.front-index a:hover strong { color: var(--accent); }
.front-routes { padding-top: 42px; padding-bottom: 26px; }
.route-pair { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 40px; }
.route-feature { display: flex; gap: 24px; padding: 22px 0; border-top: 1px solid var(--ink); color: var(--ink); }
.route-number { font-family: Georgia,serif; font-size: 2.25rem; color: #8b9998; line-height: 1.2; }
.route-feature h3 { font-size: 1.5rem; margin: 4px 0 8px; }
.route-feature p { margin: 0 0 12px; font-size: .9375rem; max-width: 440px; }
.route-link { color: var(--accent); border-bottom: 1px solid #ad3e3050; font-size: .875rem; }
.route-feature:hover h3 { color: var(--accent); }
.front-discover { padding-top: 24px; padding-bottom: 38px; }
.front-discover-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 28px; }
.discover-item { color: var(--ink); }
.discover-image { width: 100%; max-width: 352px; overflow: hidden; margin-bottom: 14px; background: #e6eae5; }
.discover-image img { display: block; width: 100%; height: auto; aspect-ratio: 16/9; object-fit: contain; }
.discover-item h3 { font-size: 1.125rem; margin: 5px 0 0; line-height: 1.7; max-width: 25em; }
.discover-item:hover h3 { color: var(--accent); }
.front-story { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; margin-bottom: 56px; padding-block: 30px; border-top: 1px solid var(--line); }
.front-story h2 { font-family: var(--serif); font-size: 2rem; line-height: 1.6; margin: 10px 0 0; }
.front-story p { margin-top: 20px; }

/* Exhibition landing and reading. */
.exhibit-overview { grid-template-columns: 1.15fr 1fr; border: 0; border-radius: 0; background: #e8ede9; }
.exhibit-image { position: relative; overflow: hidden; min-width: 0; }
.exhibit-image img { display: block; width: 100%; height: 100%; min-height: 330px; object-fit: cover; }
.exhibit-overview > .exhibit-image { padding: 0; display: block; }
.image-label { position: absolute; bottom: 0; left: 0; background: var(--ink); color: #fff; padding: 7px 14px; font-size: .75rem; }
.exhibit-overview > div:last-child { padding: 30px 36px; }
.exhibit-overview h2 { font-family: var(--serif); font-size: 2rem; line-height: 1.55; margin-block: 8px 14px; }
.exhibit-overview .meta { font-size: .8125rem; }
.exhibition-topics { margin-top: 36px; }
.exhibition-topics-heading h2 { font-size: 1.625rem; }
.topic-directory { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 28px 22px; }
.topic-directory > a { border: 0; background: transparent; border-radius: 0; }
.topic-directory a:hover { transform: none; box-shadow: none; }
.topic-directory a > div { padding: 12px 0 0; }
.topic-directory img { border: 1px solid #d0d7d3; }
.topic-directory h3 { font-size: 1rem; margin-block: 7px 9px; }
.topic-directory a:hover h3 { color: var(--accent); }
.topic-directory a > div > span, .topic-directory p { font-size: .8125rem; }
.gallery-layout > .board-menu { order: 0; margin-top: 0; }
.board-intro h2 { font-size: clamp(1.4rem,2.2vw,1.9rem); }
.board-intro { margin-bottom: 18px; }
.exhibit { border-radius: 0; }
.board-menu button { border-radius: 3px; }
.board-menu-label > span { font-size: .75rem; }
.board-menu-label > strong { font-size: .875rem; }
.board-discussion { border-radius: 0; background: #e8ede9; margin-top: 22px; padding: 24px; }
.board-discussion h3 { font-size: 1.125rem; }
.board-choice-buttons button { border-radius: 3px; font-size: .9375rem; }
.board-feedback { border-radius: 3px; }
.boards-page .pagehead h1 { font: 600 1.2rem/1.6 var(--sans); letter-spacing: 0; margin: 0; }
.boards-page .pagehead .eyebrow, .boards-page .pagehead p { display: none; }
.boards-page .pagehead { margin-bottom: 8px; }
.board-finish { display: flex; flex-wrap: wrap; gap: 14px 24px; border-top: 1px solid var(--line); margin-top: 22px; padding-top: 18px; }
.content-fold { margin-top: 24px; }
.gallery-text { border-radius: 0; }

/* Guided route is a reading aid, not a claimed achievement tracker. */
.visit-bar { max-width: 1480px; margin: 20px auto -12px; padding: 10px max(4.4vw,24px); display: flex; align-items: center; gap: 18px; font-size: .875rem; background: #e5ebe7; color: var(--ink); border-block: 1px solid #ced8d0; }
.visit-bar > a:first-child { color: var(--ink); font-weight: 600; }
.visit-bar > span { color: var(--muted); white-space: nowrap; }
.visit-continue { margin-left: auto; color: var(--accent-dark); padding-block: 4px; }
.visit-bar button { background: none; border: 0; color: var(--muted); font-size: .8125rem; min-height: 36px; cursor: pointer; }
.visit-stations { list-style: none; padding: 0; margin: 32px 0; }
.visit-stations li { display: grid; grid-template-columns: 70px 1fr auto; align-items: center; gap: 30px; border-top: 1px solid var(--line); padding: 25px 0; }
.visit-stations li:last-child { border-bottom: 1px solid var(--line); }
.station-number { font: 2.5rem Georgia,serif; color: var(--accent); }
.visit-stations h2 { font-size: 1.4rem; margin: 0 0 5px; }
.visit-stations p { margin: 0; }
.visit-reflection { margin-top: 28px; background: #e8ede9; padding: 32px; max-width: 900px; }
.visit-reflection h2 { font-size: 1.6rem; margin: 8px 0; }
.visit-reflection .actions { margin-top: 24px; display: flex; flex-wrap: wrap; }
.visit-reflection .meta { margin-top: 20px; }
.visit-home { margin-top: 20px; }

/* Human stories: grounded records first; dates and biographies remain distinct. */
.story-opening { display: grid; grid-template-columns: .32fr 1fr; gap: 54px; background: var(--ink); color: var(--paper); padding: 36px; margin-bottom: 42px; }
.story-opening h2 { font-family: var(--serif); font-size: 1.85rem; line-height: 1.6; margin: 6px 0 16px; color: #fff; }
.story-opening p { color: #dae1df; }
.story-opening .eyebrow { color: #d5b4a6; }
.story-opening .source-links { color: #c4d2ce; }
.story-opening .source-link, .story-opening .text-link { color: #f5ccba; border-color: #d5b4a680; }
.story-date { display: flex; flex-direction: column; border-right: 1px solid #4c6065; gap: 8px; font-size: .875rem; }
.story-date strong { font: 3.5rem/1.5 Georgia,serif; font-weight: 400; }
.story-person { display: grid; grid-template-columns: .55fr 1fr; gap: 54px; align-items: center; padding-bottom: 30px; }
.story-person .portrait-type { background: transparent; border: 0; border-left: 3px solid var(--accent); border-radius: 0; padding: 8px 0 8px 28px; min-height: 0; }
.story-person .portrait-type strong { color: var(--ink); }
.story-person .portrait-type span, .story-person .portrait-type p { color: var(--muted); }
.portrait-type strong { font-family: var(--serif); font-size: 3rem; }
.portrait-type span { font-size: 1.125rem; }
.story-person h2 { font-size: 1.5rem; }
.story-records { margin-top: 18px; }
.timeline { border-radius: 0; }
.time-row { grid-template-columns: 140px 1fr; padding: 22px 0; }
.time-row time { font: 1.3rem/1.7 Georgia,serif; color: var(--accent); }
.time-row h3 { font-size: 1.125rem; }
.time-row p { margin-bottom: 0; }
.time-row .source-links { margin: 8px 0 0; }
.story { border-radius: 0; background: transparent; }

/* Reading resources use editorial rows instead of oversized empty cards. */
.reading-selection { margin-bottom: 30px; border-bottom: 1px solid var(--line); padding-bottom: 28px; }
.reading-selection > h2 { font-size: 1.375rem; margin: 0 0 18px; }
.reading-selection > div { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 28px; }
.reading-selection article { padding-left: 18px; border-left: 2px solid var(--accent); }
.reading-selection p { margin: 8px 0; font-size: .9375rem; }
.reading-selection .text-link { font-size: .875rem; }
.library-toolbar { margin-top: 6px; margin-bottom: 18px; }
.library-page .documents { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 34px; }
.library-page .doc-item { display: grid; grid-template-columns: 116px minmax(0,1fr); padding: 24px 0; border: 0; border-top: 1px solid var(--line); border-radius: 0; background: transparent; gap: 20px; transition: none; }
.library-page .doc-item:hover { box-shadow: none; transform: none; }
.library-page .doc-cover { display: flex; flex-direction: column; gap: 8px; padding: 14px 12px; border-radius: 2px; min-height: 170px; align-self: start; }
.library-page .doc-cover-top { gap: 4px; }
.library-page .doc-cover .doc-index { font-size: .6875rem; }
.library-page .doc-number { display: none; }
.library-page .doc-item .doc-hook { font-family: var(--serif); font-size: 1.35rem; line-height: 1.55; margin-block: 4px 2px; font-weight: 500; }
.library-page .doc-cover-detail { display: flex; flex-direction: column; gap: 6px; }
.library-page .doc-cover-detail > span { font-size: .6875rem; }
.library-page .doc-cover-detail svg { width: 68px; height: 40px; }
.library-page .doc-body { padding: 0; min-width: 0; }
.library-page .doc-item .doc-title { font-size: 1.125rem; font-weight: 600; color: var(--ink); line-height: 1.7; margin: 0 0 9px; }
.doc-teaser { font-size: .9375rem; line-height: 1.8; margin: 0 0 10px; }
.library-page .doc-topics { display: none; }
.doc-use { font-size: .8125rem; margin: 4px 0 10px; }
.doc-actions { margin: 0; gap: 18px; }
.doc-read { padding: 6px 0; color: var(--accent-dark); border-radius: 0; background: none; font-size: .9375rem; font-weight: 500; }
.doc-read:hover { background: none; color: var(--ink); }
.doc-read-arrow { display: none; }
.doc-download { font-size: .875rem; }
.library-search input { border-radius: 3px; background: #fff; min-height: 46px; }
.session-plan { border-radius: 3px; }
.source-row { border-radius: 0; }
.source-row h2 { font-size: 1.35rem; line-height: 1.6; }
.tech-layout { gap: 40px; }
.diagram { border-radius: 0; }
.diagram-caption { font-size: .8125rem; }
.diagram-flow button { border-radius: 3px; }
.diagram h3 { font-family: var(--serif); }
.definition { border-radius: 0; }
.frame-wrap { border-radius: 3px; }
.film-page .pagehead h1 { font-family: var(--serif); }
.film-screen { border-radius: 0; }
.film-language button { border-radius: 3px; }
.footer-inner.footer-compact { max-width: 1480px; padding: 28px max(4.4vw,24px); }
footer { background: #e8ece7; border-top: 1px solid var(--line); }
.footer-inner.footer-compact > strong { font-size: 1rem; }
.footer-inner.footer-compact > a, .footer-inner summary { font-size: .875rem; }
dialog#reader { border-radius: 4px; background: var(--paper); width: min(1020px,94vw); }
.reader-toolbar { border-bottom: 1px solid var(--line); background: var(--paper); }
.reader-toolbar h2 { font-size: 1.125rem; }
#reader-body { padding: 30px 44px 44px; }
.reader-article { max-width: 780px; margin-inline: auto; }
.reader-article h2, .reader-article h3, .reader-article h4 { scroll-margin-top: 95px; font-family: var(--serif); }
.reader-article p { scroll-margin-top: 95px; }
.reader-article p, .reader-summary { font-size: 1rem; line-height: 2; }
.reader-toc { border-radius: 0; background: #e8ede9; }

@media (max-width: 1080px) {
  .front-grid { gap: 30px; grid-template-columns: .85fr 1.15fr; }
  .front-copy h1 { font-size: 4rem; }
  .front-photo > img { height: 380px; }
  .front-heading span:last-child { font-size: .75rem; }
  .topic-directory { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .library-page .documents { gap: 0 24px; }
  .library-page .doc-item { grid-template-columns: 98px minmax(0,1fr); gap: 16px; }
}
@media (max-width: 900px) {
  .header { min-height: 76px; }
  .header nav.open { background: var(--paper); border: 1px solid var(--line); border-radius: 3px; box-shadow: 0 8px 20px #132b3612; }
  .header nav.open a { min-height: 48px; }
  .front-grid { grid-template-columns: .9fr 1.1fr; gap: 24px; }
  .front-copy h1 { font-size: clamp(3rem,6.5vw,4rem); }
  .front-film-link { padding: 10px 12px; inset-inline-end: 12px; bottom: 62px; gap: 10px; font-size: .875rem; }
  .front-photo > img { height: 380px; }
  .exhibit-overview h2 { font-size: 1.7rem; }
  .exhibit-overview > div:last-child { padding: 24px; }
  .story-opening { gap: 28px; grid-template-columns: .34fr 1fr; }
  .story-person { gap: 30px; }
  .front-index a + a { padding-left: 16px; }
}
@media (max-width: 680px) {
  html { scroll-padding-top: 82px; }
  .header { padding: 12px 20px; gap: 16px; }
  .brand { font-size: 1.125rem; }
  .brand img { width: 30px; height: 30px; }
  .brand small { font-size: .6875rem; letter-spacing: .04em; }
  .menu { min-height: 42px; padding: 8px 12px; }
  .shell { padding: 26px 20px 42px; }
  .pagehead { margin-bottom: 18px; }
  .pagehead h1 { font-size: 2rem; line-height: 1.45; margin-bottom: 10px; }
  .pagehead p { font-size: .9375rem; }
  .pagehead .eyebrow { font-size: .8125rem; }
  .experience-page > .pagehead h1 { font: 600 1.125rem/1.6 var(--sans); letter-spacing: 0; margin: 0; }
  .experience-page > .pagehead .eyebrow, .experience-page > .pagehead p { display: none; }
  .experience-page > .pagehead { margin-bottom: 8px; }
  .section-tabs { margin-bottom: 22px; gap: 22px; }
  .section-tabs a { font-size: .875rem; }
  .front-exhibition { padding-top: 18px; padding-bottom: 0; }
  .front-heading { font-size: .75rem; margin-bottom: 16px; }
  .front-heading span:last-child { display: none; }
  .front-grid { grid-template-columns: minmax(0,1fr); gap: 20px; }
  .front-copy { padding: 0; }
  .front-small { margin-bottom: 10px; font-size: .8125rem; }
  .front-copy h1 { font-size: clamp(3.15rem,12vw,4.4rem); margin-bottom: 14px; line-height: 1.2; }
  .front-copy h1 br { display: none; }
  .front-description { font-size: .9375rem; margin: 0 0 18px; }
  .front-description br { display: none; }
  .front-actions { gap: 18px; }
  .front-actions .button { padding-inline: 16px; }
  .front-photo > img { height: 225px; min-height: 0; width: 114%; object-position: 50% 47%; }
  .front-photo figcaption { padding: 7px 10px; font-size: .6875rem; gap: 8px; }
  .front-film-link { inset: auto 10px 50px auto; padding: 9px 12px; font-size: .8125rem; }
  .front-film-link small { font-size: .6875rem; }
  .film-play { width: 28px; height: 28px; }
  .front-index { margin-top: 18px; }
  .front-index a { padding: 12px 8px 12px 0; grid-template-columns: 1fr; gap: 3px; }
  .front-index a + a { padding-left: 12px; }
  .front-index span { grid-row: auto; font-size: .75rem; }
  .front-index strong { font-size: .875rem; }
  .front-index small { font-size: .75rem; line-height: 1.7; }
  .front-routes { padding-top: 28px; padding-bottom: 12px; }
  .editorial-heading { gap: 12px; margin-bottom: 18px; align-items: flex-start; }
  .editorial-heading h2 { font-size: 1.375rem; }
  .editorial-heading > p { display: none; }
  .editorial-heading .eyebrow { font-size: .8125rem; }
  .editorial-heading > a { font-size: .8125rem; white-space: nowrap; }
  .route-pair { grid-template-columns: minmax(0,1fr); gap: 0; }
  .route-feature { gap: 18px; padding: 18px 0; }
  .route-feature h3 { font-size: 1.25rem; }
  .route-number { font-size: 1.75rem; }
  .route-feature .meta { font-size: .75rem; }
  .route-feature p { font-size: .9375rem; }
  .front-discover { padding-top: 16px; padding-bottom: 22px; }
  .front-discover-grid { grid-template-columns: minmax(0,1fr); gap: 22px; }
  .discover-item { display: grid; grid-template-columns: 40% minmax(0,1fr); grid-template-rows: auto 1fr; gap: 2px 16px; align-items: start; }
  .discover-image { grid-row: span 2; margin: 0; }
  .discover-image img { aspect-ratio: 16/9; object-fit: contain; }
  .discover-item .meta { font-size: .75rem; }
  .discover-item h3 { font-size: .9375rem; margin: 0; line-height: 1.75; }
  .front-story { grid-template-columns: minmax(0,1fr); gap: 8px; padding-block: 24px; margin-bottom: 20px; }
  .front-story h2 { font-size: 1.6rem; }
  .front-story h2 br { display: none; }
  .front-story p { margin-top: 6px; font-size: .9375rem; }
  .exhibit-overview { grid-template-columns: minmax(0,1fr); }
  .exhibit-image img { min-height: 0; height: 230px; }
  .exhibit-overview > div:last-child { padding: 22px; }
  .exhibit-overview h2 { font-size: 1.7rem; margin-block: 4px 12px; }
  .exhibit-overview h2 br { display: none; }
  .exhibit-overview p { font-size: .9375rem; }
  .exhibition-topics-heading { display: block; }
  .exhibition-topics-heading h2 { font-size: 1.375rem; }
  .exhibition-topics-heading p { margin-top: 8px; }
  .topic-directory { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px 16px; }
  .topic-directory > a { display: block; }
  .topic-directory h3 { font-size: .9375rem; }
  .topic-directory a > div > span { font-size: .75rem; }
  .topic-directory p { font-size: .75rem; }
  .board-menu button { flex-basis: 150px; }
  .board-intro h2 { font-size: 1.375rem; }
  .board-intro p { font-size: .9375rem; }
  .boards-page .board-content { display: flex; flex-direction: column; }
  .boards-page .board-intro { order: 1; }
  .boards-page .exhibit { order: 2; }
  .boards-page .gallery-actions { order: 3; }
  .boards-page .board-transcript { order: 4; }
  .boards-page #board-interaction { order: 5; }
  .boards-page .gallery-text { padding: 20px 0; }
  .boards-page .gallery-text h2 { font-size: 1.3rem; }
  .boards-page .gallery-text p { font-size: 1rem; }
  .board-discussion { padding: 20px; }
  .gallery-actions { flex-wrap: wrap; }
  .gallery-actions .button { padding-inline: 10px; font-size: .8125rem; }
  .visit-bar { margin-top: 12px; padding: 10px 20px; flex-wrap: wrap; gap: 4px 14px; }
  .visit-bar > a:first-child { flex-basis: 65%; }
  .visit-continue { margin-left: 0; flex: 1; font-size: .8125rem; }
  .visit-stations li { grid-template-columns: 40px minmax(0,1fr); gap: 10px 18px; padding: 20px 0; }
  .visit-stations li > a { grid-column: 2; justify-self: start; }
  .station-number { font-size: 1.8rem; }
  .visit-stations h2 { font-size: 1.125rem; }
  .visit-stations p { font-size: .9375rem; }
  .visit-reflection { padding: 22px; }
  .visit-reflection h2 { font-size: 1.375rem; }
  .story-opening { grid-template-columns: minmax(0,1fr); padding: 24px; gap: 18px; margin-bottom: 28px; }
  .story-date { flex-direction: row; align-items: baseline; flex-wrap: wrap; border-right: 0; border-bottom: 1px solid #4c6065; padding-bottom: 12px; gap: 12px; }
  .story-date strong { font-size: 1.8rem; }
  .story-opening h2 { font-size: 1.5rem; }
  .story-opening p { font-size: .9375rem; }
  .story-person { grid-template-columns: minmax(0,1fr); gap: 20px; }
  .portrait-type strong { font-size: 2.5rem; }
  .story-person p { font-size: .9375rem; }
  .time-row { grid-template-columns: minmax(0,1fr); gap: 5px; padding-block: 20px; }
  .time-row time { font-size: 1.125rem; }
  .reading-selection > div { grid-template-columns: minmax(0,1fr); gap: 20px; }
  .reading-selection p { margin-block: 3px; }
  .library-page .documents { grid-template-columns: minmax(0,1fr); gap: 0; }
  .library-page .doc-item { grid-template-columns: 88px minmax(0,1fr); gap: 16px; padding-block: 22px; }
  .library-page .doc-cover { min-height: 152px; padding: 12px 9px; }
  .library-page .doc-item .doc-hook { font-size: 1.125rem; }
  .library-page .doc-cover-detail > span { font-size: .625rem; }
  .library-page .doc-item .doc-title { font-size: 1rem; margin-bottom: 7px; }
  .doc-teaser { font-size: .875rem; margin-bottom: 7px; }
  .doc-use { font-size: .75rem; }
  .doc-actions { gap: 14px; flex-wrap: wrap; }
  .doc-read, .doc-download { font-size: .8125rem; min-height: 38px; }
  .library-search input { width: 100%; }
  .footer-inner.footer-compact { padding: 24px 20px; }
  #reader-body { padding: 24px 22px 36px; }
  .reader-toolbar { padding: 14px; }
  .reader-toolbar h2 { font-size: 1rem; }
  .source-row h2 { font-size: 1.125rem; }
}
@media (max-width: 360px) {
  .front-copy h1 { font-size: 2.4rem; }
  .front-photo > img { height: 200px; }
  .front-actions { gap: 12px; }
  .front-actions .button { font-size: .875rem; }
  .front-index small { font-size: .6875rem; }
  .topic-directory { grid-template-columns: minmax(0,1fr); }
  .topic-directory > a { display: grid; grid-template-columns: 40% minmax(0,1fr); gap: 14px; }
  .topic-directory a > div { padding: 0; }
  .topic-directory img { aspect-ratio: 16/9; height: auto; object-fit: contain; }
  .library-page .doc-item { grid-template-columns: 76px minmax(0,1fr); gap: 12px; }
  .library-page .doc-item .doc-hook { font-size: 1rem; }
  .library-page .doc-cover-detail { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .discover-item:hover img { transform: none; }
  *, *::before, *::after { transition: none !important; }
}

/* Spatial exhibition entrance and a continuous three-part visit. */
.header{min-height:76px;padding-block:12px;background:#102a34;border-bottom:1px solid #35505a;color:#f8f7f0}
.header .brand{color:#f8f7f0}.header .brand small{color:#b7c9ca}.header nav a{color:#c5d2d2}.header nav a:hover,.header nav a[aria-current="page"]{color:#fff}.header nav a[aria-current="page"]::after{background:#d9b582}
.header nav .nav-search{display:inline-flex;align-items:center;gap:9px;border-left:1px solid #46616a;padding-left:25px}.header nav .nav-search svg{flex-shrink:0}
.header .menu{color:#f6f6ee;border-color:#55717a;background:transparent}.header nav.open{background:#102a34;border-color:#49646b}.header nav.open a:hover{background:#1c3c47}.header :is(a,button):focus-visible{outline:3px solid #e8c28d;outline-offset:5px}
.pagehead h1{font-family:var(--sans);font-weight:600;letter-spacing:-.04em;font-size:clamp(1.9rem,3vw,2.7rem)}.pagehead{margin-bottom:16px;padding-bottom:8px}.pagehead p{margin-bottom:14px}.section-tabs{margin-bottom:24px}
.museum-hero{position:relative;background:#102a34;color:#f8f7f0;overflow:hidden}
.museum-hero-art{position:absolute;inset:0 0 0 37%;overflow:hidden}.museum-hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#102a34 0%,#102a342e 36%,#102a3400 62%)}
.museum-hero-art img{width:100%;height:calc(100% + 100px);object-fit:cover;object-position:55% 50%;display:block;transform:translateY(-15px)}
.museum-hero-inner{position:relative;max-width:1480px;margin:auto;min-height:625px;padding:68px max(4.4vw,24px) 76px}
.museum-hero-copy{position:relative;z-index:1;max-width:520px}.museum-kicker{font-size:.8125rem;letter-spacing:.12em;color:#d4ded9;display:flex;align-items:center;gap:12px;margin:0 0 27px}.museum-kicker>span{width:21px;height:2px;background:#ddba89;flex-shrink:0}
.museum-hero h1{font:500 clamp(3.6rem,6.4vw,6.4rem)/1.08 var(--serif);letter-spacing:-.07em;margin:0 0 25px;color:#f8f7f0}.museum-hero h1 em{color:#dfbd8b;font-style:normal}.museum-hero-lead{font-size:1.0625rem;line-height:1.95;color:#d0dcd9;margin:0 0 28px}
.museum-hero .museum-start{display:inline-flex;align-items:center;gap:32px;background:#e0bc88;border-color:#e0bc88;color:#152f38;min-height:52px;font-weight:600;padding:12px 23px}.museum-hero .museum-start:hover{background:#efd0a1;color:#102a34}
.museum-watch{display:flex;width:fit-content;align-items:center;gap:12px;color:#dce6e1;font-size:.875rem;margin-top:19px;padding-block:4px}.museum-watch>span{font-size:1.5rem;line-height:1}.museum-watch:hover{color:#e7c28f}
.museum-enter{position:absolute;right:max(4.4vw,24px);bottom:57px;display:flex;align-items:center;justify-content:space-between;gap:50px;padding:20px 24px;background:#f6f5efeF;color:#17323c;min-width:300px;z-index:1;border:1px solid #ffffff80}.museum-enter span{font-weight:600}.museum-enter small{display:block;font-size:.75rem;font-weight:400;color:#536b6e;margin-top:4px}.museum-enter b{font-size:1.75rem;font-weight:400}.museum-enter:hover{background:#fff;color:#9b5639}
.museum-scene-label{position:absolute;right:max(4.4vw,24px);bottom:23px;color:#e2ecea;background:#102a34c9;padding:3px 8px;font-size:.6875rem;letter-spacing:.05em}
.museum-chapters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:1480px;margin:0 auto;padding:0 max(4.4vw,24px);border-bottom:1px solid var(--line);background:#f0f0e9}
.museum-chapters a{display:grid;grid-template-columns:35px 1fr;gap:3px 15px;padding:25px 32px;color:var(--ink)}.museum-chapters a:first-child{padding-left:0}.museum-chapters a+a{border-left:1px solid var(--line)}.museum-chapters span{grid-row:span 2;color:#9a704b;font-size:.8125rem;padding-top:2px}.museum-chapters strong{font-size:1.0625rem;font-weight:600}.museum-chapters small{font-size:.8125rem;color:var(--muted)}.museum-chapters a:hover strong{color:var(--accent)}
.museum-section{padding-top:64px;padding-bottom:58px}.museum-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:29px}.museum-section-number{display:block;color:#906445;font-size:.75rem;font-weight:600;letter-spacing:.11em;margin-bottom:14px}.museum-section-head h2{font-size:clamp(1.65rem,2.7vw,2.4rem);font-weight:600;line-height:1.4;margin:0}.museum-section-head>p{color:var(--muted);font-size:.9375rem;line-height:1.85;margin:0;flex-shrink:0}
.museum-signal-layout{grid-template-columns:1.45fr 1fr;gap:0;align-items:stretch;border:1px solid #c6ceca;background:#fff}.museum-signal-layout #tech-detail{padding:35px 36px;display:flex;flex-direction:column;justify-content:center;min-width:0}.museum-signal-layout #tech-detail h2{font-family:var(--sans);font-size:clamp(1.4rem,2vw,1.85rem);line-height:1.6;margin:12px 0 20px}.museum-signal-layout .device-takeaway{border-left:2px solid #bd9768;padding-left:18px;font-size:1.1875rem;line-height:1.7;color:var(--ink);margin:0 0 18px}.museum-signal-layout #tech-detail>p:not(.device-takeaway){font-size:.9375rem;line-height:1.95}.museum-signal-layout .notice{margin-top:24px;font-size:.8125rem;background:#f1f3ee;border-left:0;padding:14px 16px}
.museum-section-foot{display:flex;gap:24px;flex-wrap:wrap;align-items:center;padding-top:21px;font-size:.875rem}.museum-section-foot>span{margin-right:auto;color:var(--muted)}.museum-section-foot>a{color:var(--teal);min-height:36px;display:inline-flex;align-items:center;gap:20px}
.museum-team{background:#e9ede7;border-block:1px solid #d3dbd2}.museum-team-inner{display:grid;grid-template-columns:.82fr 1.18fr;gap:9%;padding-top:64px;padding-bottom:64px;align-items:center}.museum-team-intro h2{font:500 clamp(2.3rem,3.5vw,3.35rem)/1.35 var(--serif);margin:0 0 25px}.museum-team-intro>p{font-size:1rem;line-height:1.95;max-width:410px}.museum-team-intro .button{margin-top:16px;background:#173641;border-color:#173641;display:inline-flex;align-items:center;gap:24px}.museum-team-scope{display:block;font-size:.75rem;color:#5d6e6c;margin-top:18px;line-height:1.8}
.museum-field-record{padding:26px 34px 6px;background:#f7f7f0;border-top:3px solid #a6825b;box-shadow:0 10px 26px #263c3207}.museum-record-header{display:flex;justify-content:space-between;color:#7d684f;font-size:.75rem;letter-spacing:.06em;padding-bottom:17px;border-bottom:1px solid #d1d8cf}.museum-field-record h3{font-size:1.375rem;line-height:1.6;margin:23px 0}.museum-field-record ol{list-style:none;padding:0;margin:0}.museum-field-record li{display:grid;grid-template-columns:100px 1fr;gap:20px;position:relative;padding:0 0 26px}.museum-field-record time{font-variant-numeric:tabular-nums;font-size:.8125rem;color:#836448;padding-top:3px}.museum-field-record strong{font-size:.9375rem;font-weight:600}.museum-field-record p{font-size:.8125rem;line-height:1.8;margin:7px 0}.museum-field-record li a{font-size:.75rem;color:var(--teal);padding-block:5px;display:inline-block}
.museum-reading-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.museum-reading-item{color:var(--ink);display:flex;flex-direction:column;min-width:0}.museum-board-preview{padding:12px;background:#e7eae3;border:1px solid #dce1d8;overflow:hidden}.museum-board-preview img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;box-shadow:0 4px 10px #102a3412}.museum-reading-meta{color:var(--muted);font-size:.75rem;margin-top:19px}.museum-reading-item h3{font-size:1.2rem;font-weight:600;line-height:1.75;margin:6px 0 17px;max-width:24em}.museum-reading-link{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:12px;margin-top:auto;color:var(--teal);font-size:.8125rem}.museum-reading-item:hover h3{color:var(--accent)}
.museum-takeaway{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;border-top:1px solid #b6c5bd;padding-top:48px;padding-bottom:55px}.museum-takeaway h2{font-size:clamp(1.65rem,2.8vw,2.4rem);line-height:1.55;margin:0 0 15px;font-weight:500}.museum-takeaway p{font-size:.9375rem;color:var(--muted);margin:0}.museum-takeaway-actions{display:flex;flex-direction:column;align-items:flex-start;gap:15px}.museum-takeaway-actions>.button{display:flex;gap:35px;background:#163742;border-color:#163742;min-height:52px}.museum-takeaway-actions details{margin-top:5px;width:100%;padding-top:14px;border-top:1px solid var(--line);font-size:.8125rem}.museum-takeaway-actions summary{cursor:pointer;padding-block:5px;color:var(--muted)}.museum-takeaway-actions details a{display:inline-flex;margin:12px 20px 0 0;color:var(--teal);min-height:30px}
:is(#signal-lab,#team-story,#innovation){scroll-margin-top:10px}
@media(max-width:1080px){.museum-hero-inner{min-height:590px;padding-block:52px 65px}.museum-hero-art{left:30%}.museum-hero-art:after{background:linear-gradient(90deg,#102a34,#102a344d 52%,#102a340a)}.museum-hero-copy{max-width:440px}.museum-hero h1{font-size:5.2rem}.museum-enter{min-width:250px;gap:25px;padding:16px 18px}.museum-signal-layout{grid-template-columns:1.25fr 1fr}.museum-signal-layout #tech-detail{padding:25px}.museum-team-inner{gap:6%}.museum-field-record{padding-inline:24px}.museum-field-record li{grid-template-columns:85px 1fr;gap:12px}.museum-section-head>p{max-width:270px;flex-shrink:1}}
@media(max-width:780px){.museum-hero-inner{min-height:565px}.museum-hero h1{font-size:4.5rem}.museum-kicker{font-size:.75rem;letter-spacing:.03em}.museum-enter{bottom:30px;min-width:220px}.museum-scene-label{bottom:6px}.museum-chapters a{padding:20px 16px;grid-template-columns:25px 1fr;gap:0 5px}.museum-chapters small{display:none}.museum-chapters strong{font-size:.9375rem}.museum-signal-layout{grid-template-columns:minmax(0,1fr)}.museum-signal-layout #tech-detail{padding:28px}.museum-team-inner{grid-template-columns:minmax(0,1fr);gap:32px}.museum-team-intro{max-width:600px}.museum-team-intro h2 br{display:none}.museum-team-intro h2{font-size:2.5rem}.museum-reading-grid{gap:20px}.museum-reading-item h3{font-size:1.0625rem}.museum-takeaway{gap:35px}.museum-section-head{align-items:start}.museum-section-head>p br{display:none}}
@media(max-width:600px){.header{min-height:72px}.museum-hero-art{position:relative;inset:auto;height:260px;order:2}.museum-hero-art:after{background:linear-gradient(180deg,#102a34 0%,#102a3400 32%)}.museum-hero{display:flex;flex-direction:column}.museum-hero-inner{position:static;min-height:0;padding:33px 22px 0;order:1;width:100%}.museum-hero-copy{max-width:none}.museum-kicker{margin-bottom:18px;font-size:.6875rem;gap:8px}.museum-kicker>span{width:17px}.museum-hero h1{font-size:clamp(3.35rem,15vw,4.65rem);line-height:1.14;margin-bottom:17px}.museum-hero h1 br{display:block}.museum-hero-lead{font-size:.9375rem;line-height:1.8;margin-bottom:20px}.museum-hero-lead br{display:none}.museum-start{font-size:.875rem}.museum-hero .museum-start{min-height:48px;padding:10px 18px;gap:22px}.museum-watch{display:inline-flex;margin:14px 0 4px;font-size:.8125rem;gap:7px}.museum-hero-copy .museum-start{margin-right:18px}.museum-enter{position:absolute;right:20px;bottom:35px;min-width:220px;padding:13px 16px;gap:30px}.museum-enter span{font-size:.875rem}.museum-enter small{font-size:.6875rem}.museum-scene-label{right:20px;bottom:8px;font-size:.625rem}.museum-chapters{padding:0 20px}.museum-chapters a{display:flex;gap:6px;padding:19px 10px;flex-wrap:wrap;justify-content:center}.museum-chapters a:first-child{padding-left:0}.museum-chapters span{font-size:.6875rem;padding-top:2px}.museum-chapters strong{font-size:.8125rem;white-space:nowrap}.museum-section{padding-top:38px;padding-bottom:36px}.museum-section-head{display:block;margin-bottom:22px}.museum-section-number{font-size:.6875rem;margin-bottom:10px}.museum-section-head h2{font-size:1.7rem;line-height:1.5}.museum-section-head>p{font-size:.875rem;margin-top:12px;max-width:none}.museum-section-head>.text-link{margin-top:10px}.museum-signal-layout #tech-detail{padding:23px}.museum-signal-layout #tech-detail h2{font-size:1.5rem;margin-block:9px 15px}.museum-signal-layout .device-takeaway{font-size:1.0625rem}.museum-signal-layout #tech-detail>p:not(.device-takeaway){font-size:.875rem}.museum-section-foot{gap:6px 18px;padding-top:15px;font-size:.8125rem}.museum-section-foot>span{flex-basis:100%}.museum-team-inner{padding-top:38px;padding-bottom:36px;gap:28px}.museum-team-intro h2{font-size:2.2rem;margin-bottom:17px}.museum-team-intro>p{font-size:.9375rem}.museum-field-record{padding:19px 20px 0}.museum-field-record h3{font-size:1.2rem;margin:19px 0}.museum-field-record li{grid-template-columns:1fr;gap:5px;padding-bottom:22px}.museum-field-record p{margin-top:5px}.museum-field-record time{font-size:.75rem}.museum-reading-grid{grid-template-columns:minmax(0,1fr);gap:26px}.museum-board-preview{padding:12px}.museum-reading-meta{margin-top:14px}.museum-reading-item h3{font-size:1.125rem;margin-bottom:12px}.museum-takeaway{grid-template-columns:minmax(0,1fr);gap:26px;padding-top:34px;padding-bottom:38px}.museum-takeaway h2{font-size:1.8rem}.museum-takeaway-actions{gap:10px}.museum-takeaway-actions>.text-link{font-size:.8125rem}:is(#signal-lab,#team-story,#innovation){scroll-margin-top:10px}}

@media(max-width:600px){.museum-enter{min-width:0;padding:12px 16px;gap:30px}.museum-enter small{display:none}}
@media(max-width:900px){.header nav.open .nav-search{grid-column:1/-1;border-left:0;border-top:1px solid #49646b;padding-left:0;padding-top:14px;margin-top:4px}}

/* Interior exhibition rooms: the same materials, with room to read. */
.section-tabs a[aria-current="page"] { color:var(--ink); border-color:#a78458; }
.section-tabs a:hover { color:var(--accent-dark); }
button.text-link { border-bottom-color:#b3987566; }
.header nav a:not([aria-current="page"]):hover::after { background:#91acae; }
.pagehead .eyebrow { color:#805b38; font-size:.75rem; letter-spacing:.08em; }
@media(min-width:1000px) {
  .pagehead { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); align-items:end; gap:0 48px; padding-bottom:12px; }
  .pagehead .eyebrow { grid-column:1/-1; margin-bottom:10px; }
  .pagehead h1 { margin:0; }
  .pagehead > p { margin:0 0 4px; font-size:.9375rem; line-height:1.85; max-width:520px; }
  .boards-page .pagehead { display:block; padding-bottom:0; }
}

/* Scene preview: conceal screenshot controls through the layout crop only. */
.gallery-page .exhibit-overview { background:#e7ece6; border:1px solid #d4dbd2; }
.gallery-page .exhibit-image { position:relative; min-height:355px; }
.gallery-page .exhibit-photo { position:absolute; inset:0; overflow:hidden; }
.gallery-page .exhibit-photo img { width:100%; height:calc(100% + 92px); min-height:0; object-fit:cover; object-position:50% 50%; transform:translateY(-16px); }
.gallery-page .image-label { background:#102a34ed; padding:8px 15px; font-size:.6875rem; letter-spacing:.06em; }
.gallery-page .exhibit-overview > div:last-child { padding:32px 38px; }
.gallery-page .exhibit-overview h2 { font-size:clamp(1.8rem,2.6vw,2.5rem); margin:12px 0 18px; line-height:1.45; }
.gallery-page .exhibit-overview .eyebrow { font-size:.75rem; color:#805b38; letter-spacing:.1em; }
.gallery-page .exhibit-entry-actions .button { border-radius:2px; }
.gallery-page .exhibition-topics { margin-top:52px; }
.gallery-page .exhibition-topics-heading { align-items:end; margin-bottom:26px; }
.gallery-page .exhibition-topics-heading .eyebrow { font-size:.75rem; margin-bottom:8px; }
.gallery-page .exhibition-topics-heading h2 { font-size:1.75rem; }
.gallery-chapter { display:grid; grid-template-columns:185px minmax(0,1fr); gap:34px; padding:30px 0 36px; border-top:1px solid #bdc8bf; }
.gallery-chapter-heading { padding-top:2px; }
.gallery-chapter-number { display:block; font:400 2.8rem/1.2 Georgia,serif; color:#8b6e4e; margin-bottom:16px; }
.gallery-chapter-heading h3 { font-size:1.375rem; margin:0 0 12px; }
.gallery-chapter-heading p { font-size:.875rem; line-height:1.9; margin:0 0 18px; }
.gallery-chapter-range { font-size:.75rem; color:var(--muted); letter-spacing:.03em; }
.gallery-page .topic-directory { grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; align-items:stretch; }
.gallery-page .gallery-chapter:first-of-type .topic-directory { grid-template-columns:repeat(2,minmax(0,1fr)); }
.gallery-page .topic-directory > a { display:flex; flex-direction:column; align-items:stretch; min-width:0; overflow:visible; border:0; background:transparent; box-shadow:none; }
.gallery-page .topic-directory .topic-cover { padding:9px; background:#e8ebe4; border:1px solid #d7ddd3; }
.gallery-page .topic-directory img { display:block; width:100%; height:auto; min-height:0; aspect-ratio:16/9; object-fit:contain; border:0; box-shadow:0 3px 8px #102a3415; }
.gallery-page .topic-directory .topic-copy { padding:17px 0 0; flex:1; display:flex; flex-direction:column; }
.gallery-page .topic-copy > span { font-size:.75rem; color:#805b38; }
.gallery-page .topic-copy h4 { font-size:1.0625rem; font-weight:600; line-height:1.8; margin:7px 0 16px; }
.gallery-page .topic-copy p { font-size:.75rem; line-height:1.65; border-top:1px solid var(--line); padding-top:10px; margin-top:auto; color:var(--muted); gap:10px; }
.gallery-page .topic-copy p > span { color:var(--teal); font-size:1.125rem; }
.gallery-page .topic-card:hover h4 { color:var(--accent-dark); }
.gallery-page .topic-card:hover .topic-cover { border-color:#a78b69; }
.gallery-page .topic-card:focus-visible { outline-offset:7px; }

/* Put the chapter selector next to the reading surface, with full diagrams. */
.boards-page .board-menu { gap:10px; padding-bottom:12px; margin:0 0 24px; scrollbar-width:thin; scrollbar-color:#9cafac #e8ede6; }
.boards-page .board-menu button { width:148px; flex-basis:148px; border-radius:2px; border-color:#c4cec7; }
.boards-page .board-menu-label { padding:8px 10px; }
.boards-page .board-menu-label > strong { font:500 .75rem/1.65 var(--sans); }
.boards-page .board-menu-label > span { font:400 .6875rem/1.5 var(--sans); }
.boards-page .board-menu button.active { border-color:#b99466; background:#163540; }
.boards-page .board-menu button img { aspect-ratio:16/9; object-fit:contain; }

/* A small reading desk and restrained book covers. */
.library-page .reading-selection { display:grid; grid-template-columns:155px minmax(0,1fr); gap:30px; padding:26px 28px; margin:0 0 28px; background:#e8ede6; border:1px solid #d1dbd1; border-top:2px solid #a98a63; }
.library-page .reading-selection > h2 { font:500 1.6rem/1.6 var(--serif); margin:0; }
.library-page .reading-selection > div { gap:24px; }
.library-page .reading-selection article { padding-left:20px; border-left:1px solid #bbc9bd; }
.library-page .reading-selection .eyebrow { font-size:.75rem; letter-spacing:.06em; margin-bottom:9px; }
.library-page .reading-selection p { font-size:.875rem; line-height:1.85; margin:0 0 7px; }
.library-page .reading-selection .text-link { min-height:36px; padding:3px 0; font-size:.8125rem; }
.library-page .doc-item[data-doc='1'] { --cover-bg:#315754; --cover-soft:#e0e9df; }
.library-page .doc-item[data-doc='4'] { --cover-bg:#e2d7c4; --cover-ink:#263e43; --cover-soft:#4d5e5b; }
.library-page .doc-item[data-doc='5'] { --cover-bg:#344942; --cover-soft:#e1e5d9; }
.library-page .doc-cover { border:1px solid #102a3412; border-left:4px solid #102a3422; box-shadow:3px 3px 0 #dbe0d5; }
.library-page .doc-item .doc-read { padding:7px 12px; min-height:40px; border-radius:2px; font-size:.8125rem; }
.library-page .doc-item .doc-download { font-size:.8125rem; padding:7px 0; }
.library-page .library-search input { border-radius:2px; }

/* Quiet, dark screening space; native player and bilingual controls remain. */
.film-page .film-screen { padding:22px 24px 16px; background:#102a34; border-top:2px solid #b69363; max-width:1100px; }
.film-page .film-controls { margin-bottom:16px; gap:12px; }
.film-page .film-language { padding:3px; gap:4px; background:#1b3944; border-color:#557079; border-radius:3px; }
.film-page .film-language button { color:#d9e4df; font-size:.875rem; min-height:40px; padding:8px 16px; border-radius:2px; }
.film-page .film-language button[aria-pressed='true'] { color:#102a34; background:#dfbd8b; }
.film-page .film-language button:hover { color:#fff; background:#31505a; }
.film-page .film-language button[aria-pressed='true']:hover { color:#102a34; background:#efcfa1; }
.film-page .film-runtime { color:#c4d4d0; font-size:.75rem; }
.film-page .film-player { border-radius:0; box-shadow:none; background:#081d25; }
.film-page .film-caption { display:flex; gap:8px 22px; padding-top:13px; }
.film-page .film-caption p { color:#c4d4d0; font-size:.75rem; margin-right:auto; }
.film-page .film-caption a { color:#e6c69b; font-size:.75rem; min-height:36px; margin:0; }
.film-page .film-screen :is(button,a):focus-visible { outline-color:#efd4a8; }

@media(max-width:1000px) {
  .gallery-chapter { grid-template-columns:150px minmax(0,1fr); gap:25px; }
  .gallery-page .topic-directory { gap:17px; }
  .library-page .reading-selection { grid-template-columns:1fr; gap:18px; }
  .library-page .reading-selection > h2 { font-size:1.4rem; }
}
@media(max-width:760px) {
  .gallery-chapter { grid-template-columns:minmax(0,1fr); gap:22px; }
  .gallery-chapter-heading { display:grid; grid-template-columns:48px 1fr auto; gap:5px 15px; align-items:baseline; }
  .gallery-chapter-number { grid-row:1/3; margin:0; font-size:2.3rem; }
  .gallery-chapter-heading h3 { margin:0; font-size:1.25rem; }
  .gallery-chapter-heading p { grid-column:2/-1; margin:0; font-size:.8125rem; }
  .gallery-chapter-range { grid-column:3; grid-row:1; font-size:.6875rem; }
  .gallery-page .topic-directory { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .gallery-page .exhibit-overview > div:last-child { padding:25px; }
  .library-page .reading-selection { padding:23px; }
  .library-page .reading-selection > div { grid-template-columns:minmax(0,1fr); gap:15px; }
  .library-page .reading-selection article { display:grid; grid-template-columns:1fr auto; gap:2px 16px; padding:0 0 14px; border-left:0; border-bottom:1px solid #c7d2c7; }
  .library-page .reading-selection article:last-child { border-bottom:0; padding-bottom:0; }
  .library-page .reading-selection .eyebrow { margin:0; }
  .library-page .reading-selection p { grid-column:1; margin:3px 0 0; }
  .library-page .reading-selection .text-link { grid-column:2; grid-row:1/3; align-self:center; }
  .film-page .film-screen { padding:16px 16px 12px; }
  .film-page .film-caption p { flex-basis:100%; margin:0; }
}
@media(max-width:600px) {
  .gallery-page .exhibit-image { min-height:215px; }
  .gallery-page .exhibit-overview h2 { font-size:1.85rem; }
  .gallery-page .exhibition-topics { margin-top:36px; }
  .gallery-page .exhibition-topics-heading h2 { font-size:1.5rem; }
  .gallery-page .exhibition-topics-heading p { font-size:.8125rem; }
  .gallery-chapter { padding:24px 0 28px; }
  .gallery-chapter-heading { grid-template-columns:37px 1fr; gap:4px 13px; }
  .gallery-chapter-range { grid-column:2; grid-row:3; }
  .gallery-chapter-number { font-size:2rem; }
  .gallery-page .topic-directory { grid-template-columns:minmax(0,1fr); gap:26px; }
  .gallery-page .gallery-chapter:first-of-type .topic-directory { grid-template-columns:minmax(0,1fr); }
  .gallery-page .topic-directory .topic-cover { padding:10px; }
  .gallery-page .topic-copy h4 { font-size:1rem; margin-block:6px 12px; }
  .boards-page .board-menu button { width:125px; flex-basis:125px; }
  .boards-page .board-menu { margin-bottom:20px; }
  .film-page .film-screen { padding:14px 12px 10px; }
  .film-page .film-language { width:100%; }
  .film-page .film-language button { flex:1; padding-inline:8px; font-size:.8125rem; }
  .film-page .film-runtime { font-size:.6875rem; }
}
@media(max-width:380px) {
  .library-page .reading-selection article { display:block; }
  .library-page .reading-selection .text-link { margin-top:4px; }
}

/* Content reading additions, 2026-10-07. */
.technology-reading { margin: 52px 0 32px; }
.technology-reading .content-fold { margin: 0; border-bottom: 0; }
.technology-reading .content-fold:last-child { border-bottom: 1px solid var(--line); }
.story-inquiry { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(24px,5vw,72px); padding: 40px 0; border-bottom: 1px solid var(--line); }
.story-inquiry h2 { margin-top: 12px; font-size: clamp(25px,3vw,36px); line-height: 1.45; }
.story-inquiry p { line-height: 1.95; color: var(--muted); }
.story-inquiry .story-question { margin-top: 24px; border-left: 2px solid var(--accent); padding-left: 18px; color: var(--ink); }
.search-question-links { display: flex; flex-wrap: wrap; align-items: baseline; gap: 12px 24px; margin: 22px 0; padding: 20px 0; border-block: 1px solid var(--line); }
.search-question-links span { color: var(--muted); font-size: 13px; }
.search-question-links a { color: var(--accent-dark); text-underline-offset: 4px; line-height: 1.6; }
.study-example { margin: 22px 0; }
.study-example p { line-height: 1.9; }
.study-example strong { color: var(--ink); }
@media(max-width:640px) { .story-inquiry { grid-template-columns: 1fr; gap: 8px; padding: 30px 0; } .search-question-links { flex-direction: column; align-items: flex-start; } }
