:root{
  --paper:#fcfaef;
  --ink:#1a1916;
  --muted:#706b62;
  --red:#a52d22;
  --header-h:165px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--ink);
  background:var(--paper);
  font-family:"Source Serif 4",Georgia,serif;
}

/* Header: ~60% larger than prior version */
.site-header{
  position:sticky;
  top:0;
  z-index:50;
  min-height:var(--header-h);
  padding:22px 3.5vw 8px;
  background:var(--paper);
}
.title-row{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:2rem;
}
.site-header h1{
  margin:0;
  font-weight:400;
  font-size:clamp(3.8rem,6.1vw,6.65rem);
  line-height:.86;
  letter-spacing:-.052em;
  white-space:nowrap;
}
.site-header h1 em{font-style:normal;color:var(--red)}
.about-link{
  flex:none;
  margin-bottom:.5rem;
  color:var(--ink);
  text-decoration:none;
  font-family:"Source Serif 4",Georgia,serif;
  font-size:1.05rem;
  letter-spacing:0;
  text-transform:none;
}
.about-link:hover{text-decoration:underline;text-underline-offset:.25em}

/* Reading + sidebar tighten toward each other */
.layout{
  display:grid;
  grid-template-columns:minmax(0,2.08fr) minmax(360px,.9fr);
  gap:.72vw;
  padding:0 3.5vw 8vh;
  align-items:start;
}
.stream{min-width:0}
.group{
  padding:0 0 13vh;
}
.excerpt{
  max-width:1080px;
  margin:0 0 5.8rem;
}
.excerpt p{
  margin:0;
  font-weight:400;
  letter-spacing:-.01em;
}
.excerpt .quote{
  font-size:clamp(1.26rem,1.46vw,1.58rem);
  line-height:1.5;
  margin-bottom:1rem;
}
.excerpt .quote::before{content:"“"}
.excerpt .quote::after{content:none}
.excerpt .quote-close{display:inline}
.excerpt .speaker,
.excerpt .citation{
  margin-left:1.1rem;
  font-size:clamp(.87rem,.88vw,.97rem);
  line-height:1.42;
}
.excerpt .speaker{margin-bottom:.12rem}
.excerpt .citation{
  color:var(--muted);
  font-family:"Source Sans 3",sans-serif;
}
.excerpt a{color:inherit;text-decoration:none}
.excerpt a:hover{text-decoration:underline;text-underline-offset:.18em}

/* keywords now belong to the excerpt */
.excerpt-keywords{
  margin:1rem 0 0 1.1rem;
  display:flex;
  flex-wrap:wrap;
  gap:.38rem;
}
.excerpt-keyword{
  appearance:none;
  border:1px solid rgba(26,25,22,.28);
  border-radius:999px;
  padding:.22rem .52rem .2rem;
  background:transparent;
  color:var(--ink);
  font-family:"Source Sans 3",sans-serif;
  font-size:clamp(.87rem,.88vw,.97rem);
  line-height:1.15;
  cursor:pointer;
}
.excerpt-keyword:hover{
  border-color:rgba(26,25,22,.7);
  background:rgba(0,0,0,.025);
}

.batch-end{
  max-width:1080px;
  color:var(--muted);
  font-family:"Source Sans 3",sans-serif;
  font-size:.76rem;
}

/* Sidebar always begins flush with top of active reading group */
.sidebar-shell{
  position:sticky;
  top:var(--header-h);
  height:calc(100vh - var(--header-h));
  overflow:hidden;
  justify-self:stretch;
  align-self:start;
}
.sidebar{
  height:100%;
  overflow:hidden;
  padding:0;
}

/* gallery max two across */
.gallery{
  position:relative;
  width:100%;
  height:100%;
}
.media-item{
  position:absolute;
  opacity:1;
  transform:translateY(0);
  transition:
    opacity 1.4s ease-in-out,
    transform 1.4s ease-in-out;
  cursor:zoom-in;
  z-index:1;
}

/* v32 — sparse floating media field. Existing images never reflow. */
.media-item.media-swapping { pointer-events:none; }
.media-item.fade-out { opacity:0; }
.media-item.entering {
  opacity:0;
  transform:translateY(10px);
}
.media-item.triggered-entry { z-index:2; }
.media-placeholder{
  width:100%;
  aspect-ratio:var(--ratio,4/3);
  display:grid;
  place-items:center;
  overflow:hidden;
  background:
    linear-gradient(135deg,rgba(80,75,65,.105),rgba(255,255,255,.30)),
    repeating-linear-gradient(0deg,rgba(0,0,0,.02) 0 1px,transparent 1px 6px);
  color:rgba(28,27,24,.38);
  font-family:"Source Sans 3",sans-serif;
  font-size:.61rem;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.media-placeholder.drawing,
.media-placeholder.diagram{
  background:
    linear-gradient(rgba(255,255,255,.4),rgba(255,255,255,.4)),
    repeating-linear-gradient(0deg,rgba(55,70,80,.048) 0 1px,transparent 1px 18px),
    repeating-linear-gradient(90deg,rgba(55,70,80,.048) 0 1px,transparent 1px 18px);
}
.media-item h2,.media-item p{display:none}

/* Lightbox */
.lightbox{
  position:fixed;
  inset:0;
  z-index:100;
  background:rgba(252,250,239,.97);
  display:none;
  align-items:center;
  justify-content:center;
  padding:5vh 7vw;
}
.lightbox.is-open{display:flex}
.lightbox-inner{
  width:min(1050px,86vw);
  max-height:88vh;
  display:flex;
  flex-direction:column;
  align-items:center;
}
.lightbox-image{
  width:min(900px,80vw);
  max-height:76vh;
  aspect-ratio:var(--ratio,4/3);
  display:grid;
  place-items:center;
  background:
    linear-gradient(135deg,rgba(80,75,65,.10),rgba(255,255,255,.32)),
    repeating-linear-gradient(0deg,rgba(0,0,0,.022) 0 1px,transparent 1px 7px);
  color:rgba(28,27,24,.45);
  font-family:"Source Sans 3",sans-serif;
  font-size:.72rem;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.lightbox-citation{
  width:min(900px,80vw);
  margin-top:.65rem;
  color:var(--muted);
  font-family:"Source Sans 3",sans-serif;
  font-size:.74rem;
  line-height:1.4;
}
.lightbox-close{
  position:absolute;
  top:24px;
  right:32px;
  border:0;
  background:transparent;
  color:var(--ink);
  font:300 2rem/1 "Source Sans 3",sans-serif;
  cursor:pointer;
}
#sentinel{height:1px}

/* About */
.about-page{
  padding:3rem 3.5vw 10vh;
}
.about-copy{
  max-width:980px;
}
.about-copy p{
  margin:0 0 2rem;
  font-size: clamp(1.26rem, 1.46vw, 1.58rem);
  line-height:1.48;
}
.about-copy .about-source{
  margin-top:4rem;
  color:var(--muted);
  font-family:"Source Sans 3",sans-serif;
  font-size:.9rem;
}

@media(max-width:1040px){
  :root{--header-h:145px}
  .site-header h1{font-size:clamp(3.3rem,5.8vw,5.5rem)}
  .layout{
    grid-template-columns:minmax(0,1.8fr) minmax(310px,.9fr);
    gap:1.4vw;
  }
}
@media(max-width:780px){
  :root{--header-h:auto}
  .site-header{
    position:sticky;
    padding:18px 5vw 14px;
  }
  .title-row{display:block}
  .site-header h1{
    white-space:normal;
    font-size:clamp(2.8rem,10.5vw,4.7rem);
  }
  .about-link{
    display:inline-block;
    margin-top:1rem;
    margin-bottom:0;
  }
  .layout{display:block;padding:1rem 5vw 6vh}
  .sidebar-shell{position:relative;top:auto;height:auto}
  .sidebar{height:auto;overflow:visible;padding:0}
  .gallery{grid-template-columns:repeat(4,minmax(0,1fr))}
}


/* Header and sidebar share the same right page edge.
   Both use the same outer 3.5vw page inset. */
.title-row,
.layout{
  width:100%;
}
.about-link{
  text-align:right;
}

/* Optional quote footnotes */
.quote-footnote-mark{
  color:var(--red);
  font-family:"Source Sans 3",sans-serif;
  font-size:.62em;
  line-height:0;
  vertical-align:super;
  margin-left:.08em;
}
.excerpt-footnote{
  width:60%;
  margin:.72rem 0 0 auto;
  padding:0;
  color:var(--muted);
  font-family:"Source Sans 3",sans-serif;
  font-size:clamp(.87rem,.88vw,.97rem);
  line-height:1.42;
  text-align:left;
}
.excerpt-footnote .footnote-num{
  color:var(--red);
  margin-right:.32em;
}


/* Entire footnote is red, including numeral and note text. */
.excerpt-footnote,
.excerpt-footnote .footnote-num,
.excerpt-footnote .footnote-text {
  color:var(--red);
}


/* Actual archival media; placeholders disappear once MEDIA contains real assets. */
.media-real{
  background-size:contain;
  background-position:left top;
  background-repeat:no-repeat;
  background-color:transparent;
}


/* V16 opening splash */
body.splash-active{overflow:hidden}
.splash{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;background:var(--paper);opacity:1;transition:opacity .6s ease}
.splash.leaving{opacity:0;pointer-events:none}
.splash-inner{text-align:center;padding:5vw}
.splash-title{margin:0;font-weight:400;font-size:clamp(3.8rem,6.1vw,6.65rem);line-height:.9;letter-spacing:-.052em;white-space:nowrap}
.splash-title em{font-style:normal;color:var(--red)}
.splash-enter{display:block;margin:3rem auto 0;border:0;padding:.35rem .5rem;background:transparent;color:var(--ink);font-family:"Source Sans 3",sans-serif;font-size:clamp(.87rem,.88vw,.97rem);font-weight:400;letter-spacing:.08em;cursor:pointer;opacity:0;transform:translateY(5px);transition:opacity .75s ease,transform .75s ease}
.splash.show-enter .splash-enter{opacity:1;transform:translateY(0)}
.splash-enter:hover{text-decoration:underline;text-underline-offset:.28em}
.splash-enter:focus-visible{outline:1px solid var(--ink);outline-offset:.35rem}
@media(max-width:780px){.splash-title{white-space:normal;font-size:clamp(2.8rem,10.5vw,4.7rem)}.splash-enter{margin-top:2.25rem}}

/* V17 workbook-driven About page */
.about-copy h2,
.about-directory h2,
.about-topics h2,
.about-media h2{
  margin:3.5rem 0 1.5rem;
  font:400 clamp(1.8rem,2.6vw,2.8rem)/1.05 "Source Serif 4",serif;
  color:var(--ink);
}
.about-copy h2:first-child{margin-top:0}
.about-resource{
  margin:.75rem 0 !important;
  font-family:"Source Sans 3",sans-serif;
  font-size:clamp(.92rem,1vw,1.05rem) !important;
}
.about-resource a{color:var(--ink);text-decoration:none;border-bottom:1px solid rgba(26,25,22,.35)}
.about-resource a:hover{border-bottom-color:var(--ink)}
.about-directory,.about-topics{max-width:1180px;margin-top:5rem}
.speaker-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem 2.25rem}
.speaker-button{
  border:0;background:transparent;padding:.25rem 0;text-align:left;cursor:pointer;color:var(--ink);
  font:400 clamp(1.05rem,1.25vw,1.3rem)/1.25 "Source Serif 4",serif;
}
.speaker-button:hover{text-decoration:underline;text-underline-offset:.24em}
.about-topic-grid{display:flex;flex-wrap:wrap;gap:.62rem .55rem;align-items:flex-start}
.about-keyword{text-decoration:none;display:inline-block}
.bio-modal{position:fixed;inset:0;z-index:1200;display:none;align-items:center;justify-content:center;padding:5vw;background:rgba(252,250,239,.72);backdrop-filter:blur(2px)}
.bio-modal.is-open{display:flex}
.bio-box{position:relative;width:min(620px,90vw);max-height:72vh;overflow:auto;background:var(--paper);border:1px solid rgba(26,25,22,.35);padding:3.5rem 3rem 3rem;box-shadow:0 18px 60px rgba(0,0,0,.12)}
.bio-box h3{margin:0 0 1.25rem;font:400 clamp(1.7rem,2.4vw,2.5rem)/1.05 "Source Serif 4",serif}
.bio-box p{margin:0;font:400 clamp(1rem,1.15vw,1.18rem)/1.55 "Source Serif 4",serif}
.bio-close{position:absolute;top:1.1rem;right:1.35rem;border:0;background:transparent;color:var(--ink);font:400 .92rem/1 "Source Sans 3",sans-serif;cursor:pointer}
.bio-close:hover{text-decoration:underline;text-underline-offset:.24em}
@media(max-width:780px){.speaker-grid{grid-template-columns:1fr}.bio-box{padding:3.5rem 1.5rem 2rem}.about-directory,.about-topics{margin-top:3.5rem}}


/* V18: centered About content, no sidebar allocation */
.about-page{
  width:min(1180px,93vw);
  margin:0 auto;
  padding:3rem 0 10vh;
}
.about-copy,.about-directory,.about-topics{
  width:100%;
  max-width:none;
  margin-left:auto;
  margin-right:auto;
}

/* V19: Caslon title, brick-red About and splash, workbook-driven PDF Library */
:root{--brick:#AA4A44}
.site-header h1,
.splash-title{
  font-family:"Libre Caslon Text","Adobe Caslon Pro","Baskerville",Georgia,serif;
  letter-spacing:-.045em;
}

/* Splash is the brick-red inverse of the main reading page. */
.splash{background:var(--brick);color:#fff}
.splash-title,.splash-title em{color:#fff}
.splash-enter{color:#fff}
.splash-enter:focus-visible{outline-color:#fff}

/* About is a single, centered inverse field. */
body.about-body{
  min-height:100vh;
  background:var(--brick);
  color:#fff;
}
.about-body .site-header{background:var(--brick);color:#fff}
.about-body .site-header h1,
.about-body .site-header h1 em,
.about-body .about-link,
.about-body .about-copy h2,
.about-body .about-directory h2,
.about-body .about-topics h2,
.about-body .about-media h2,
.about-body .about-library h2,
.about-body .speaker-button,
.about-body .about-resource a,
.about-body .library-link{color:#fff}
.about-body .about-resource a{border-bottom-color:rgba(255,255,255,.45)}
.about-body .about-resource a:hover{border-bottom-color:#fff}
.about-body .excerpt-keyword{
  color:#fff;
  border-color:rgba(255,255,255,.55);
}
.about-body .excerpt-keyword:hover{
  border-color:#fff;
  background:rgba(255,255,255,.08);
}
.about-body .bio-modal{background:rgba(60,20,18,.38)}
.about-body .bio-box{
  background:var(--brick);
  color:#fff;
  border-color:rgba(255,255,255,.55);
}
.about-body .bio-close{color:#fff}

/* Library */
.about-library{margin-top:3.5rem}
.library-list{display:flex;flex-direction:column;align-items:flex-start;gap:.65rem}
.library-link{
  appearance:none;
  border:0;
  border-bottom:1px solid rgba(255,255,255,.45);
  padding:.12rem 0 .16rem;
  background:transparent;
  font:400 clamp(1rem,1.1vw,1.18rem)/1.4 "Source Sans 3",sans-serif;
  text-align:left;
  cursor:pointer;
}
.library-link:hover{border-bottom-color:#fff}
.library-empty{font-family:"Source Sans 3",sans-serif;font-size:clamp(.87rem,.88vw,.97rem)}

/* In-site PDF reader. Native browser PDF controls provide page-by-page reading. */
.pdf-modal{
  position:fixed;
  inset:0;
  z-index:1400;
  display:none;
  padding:4vh 4vw;
  background:rgba(36,12,10,.72);
  backdrop-filter:blur(3px);
}
.pdf-modal.is-open{display:block}
.pdf-reader{
  width:min(1180px,92vw);
  height:92vh;
  margin:0 auto;
  background:#fff;
  display:flex;
  flex-direction:column;
  box-shadow:0 20px 70px rgba(0,0,0,.28);
}
.pdf-reader-bar{
  min-height:54px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  padding:.7rem 1rem .65rem 1.2rem;
  background:var(--brick);
  color:#fff;
}
.pdf-reader-bar h3{
  margin:0;
  font:400 clamp(1rem,1.25vw,1.25rem)/1.2 "Libre Caslon Text",Georgia,serif;
}
.pdf-close{
  border:0;
  background:transparent;
  color:#fff;
  font:400 .92rem/1 "Source Sans 3",sans-serif;
  cursor:pointer;
}
.pdf-close:hover{text-decoration:underline;text-underline-offset:.22em}
.pdf-frame{width:100%;height:100%;border:0;background:#eee}
@media(max-width:780px){
  .pdf-modal{padding:0}
  .pdf-reader{width:100vw;height:100vh}
}






/* v25 — final About-page alignment */

/* Header intentionally inherits the exact main-scroll header layout.
   Only the About-page brick/white color treatment differs. */

/* Essay headings centered; prose justified and left-anchored. */
.about-copy {
  text-align: left;
}

.about-copy h2,
.about-directory h2,
.about-topics h2,
.about-library h2,
.about-media h2 {
  text-align: center;
  margin:3.5rem 0 1.5rem;
  font:400 clamp(1.8rem,2.6vw,2.8rem)/1.05 "Source Serif 4",serif;
  color:var(--ink);
}
.about-body .about-media h2{color:#fff;}

.about-copy p {
  text-align: justify;
  text-align-last: left;
  text-justify: inter-word;
}

/* Speaker names centered within each of the three grid columns. */
.speaker-grid > *,
.speaker-button {
  text-align: center;
}

.speaker-button {
  width: 100%;
}

/* Keywords flow naturally from the left with a ragged outer edge. */
.about-topic-grid {
  justify-content: center;
  text-align: left;
}

/* Keep Library heading centered; links may retain their natural text alignment. */
.about-library {
  text-align: center;
}


/* v26 — keyword rows centered for ragged left and right edges */
.about-topic-grid {
  justify-content: center;
}


/* v27 — header parity + centered resource/library sections */

/* The BODY is no longer constrained by .about-page, so the site header
   now occupies the exact same viewport position as on the scroll page. */

/* External resource entries are deliberately centered, not justified. */
.about-resource {
  text-align: center !important;
  text-align-last: center !important;
}

/* Center Library content beneath its centered heading. */
.library-list {
  align-items: center;
  text-align: center;
}

.library-link {
  text-align: center;
}

.library-empty {
  width: 100%;
  text-align: center;
}


/* v28 — About media gallery; existing About layout remains unchanged */
.about-media {
  margin-top: 4.5rem;
  text-align: center;
}
.about-media h2 {
  text-align: center;
  margin:3.5rem 0 1.5rem;
  font:400 clamp(1.8rem,2.6vw,2.8rem)/1.05 "Source Serif 4",serif;
  color:var(--ink);
}
.about-body .about-media h2{color:#fff;}
.about-media-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  align-items: start;
  gap: 2.1rem 1.6rem;
  width: 100%;
  margin: 1.6rem auto 0;
}
.about-media-item {
  width: 100%;
  min-width: 0;
  margin: 0;
  text-align: center;
}
.about-media-item img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 300px;
  object-fit: contain;
  margin: 0 auto;
}
.about-media-item figcaption {
  margin-top: .55rem;
  font: 400 clamp(.82rem,.84vw,.92rem)/1.35 "Source Sans 3",sans-serif;
}
.about-media-empty {
  width: 100%;
  text-align: center !important;
  text-align-last: center !important;
  font-family: "Source Sans 3",sans-serif;
  font-size: clamp(.87rem,.88vw,.97rem);
}
@media(max-width:1050px) and (min-width:781px){
  .about-media-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
}
@media(max-width:780px){
  .about-media-grid { grid-template-columns: 1fr; }
  .about-media-item { width: min(320px, 100%); justify-self:center; }
}

/* v34 — single-image sidebar viewer, media metadata, and shared detail modals */
.speaker-button-inline{
  appearance:none;
  border:0;
  padding:0;
  margin:0;
  background:transparent;
  color:inherit;
  font:inherit;
  letter-spacing:inherit;
  cursor:pointer;
  text-align:left;
}
.speaker-button-inline:hover{text-decoration:underline;text-underline-offset:.18em}

.sidebar{height:100%;overflow:hidden;padding:0}
.media-viewer{height:100%;display:flex;flex-direction:column;align-items:stretch}
.media-stage{
  position:relative;
  width:100%;
  height:33.333%;
  max-height:33.333%;
  min-height:170px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.media-image-button{
  appearance:none;
  border:0;
  background:transparent;
  width:100%;
  height:100%;
  padding:0 2.4rem;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  cursor:zoom-in;
}
.sidebar-media-image{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center top;
}
.media-nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:3;
  width:2rem;
  height:3rem;
  border:0;
  background:rgba(252,250,239,.78);
  color:var(--ink);
  font:400 2rem/1 "Source Serif 4",serif;
  cursor:pointer;
  display:grid;
  place-items:center;
  padding:0 0 .15rem;
}
.media-nav:hover{background:var(--paper)}
.media-nav-prev{left:0}
.media-nav-next{right:0}
.media-info{padding:.8rem 0 0;text-align:left}
.media-title{
  margin:0 0 .22rem;
  color:var(--ink);
  font:400 clamp(.87rem,.88vw,.97rem)/1.42 "Source Serif 4",serif;
}
.media-caption,.media-meta-line{
  margin:0 0 .12rem;
  color:var(--muted);
  font:400 clamp(.87rem,.88vw,.97rem)/1.42 "Source Sans 3",sans-serif;
}
.media-keywords{margin-top:.85rem;display:flex;flex-wrap:wrap;gap:.38rem}
.media-keyword-static{display:inline-block;cursor:default}

.media-detail-modal{
  position:fixed;
  inset:0;
  z-index:1300;
  display:none;
  align-items:center;
  justify-content:center;
  padding:4vh 5vw;
  background:rgba(252,250,239,.78);
  backdrop-filter:blur(2px);
}
.media-detail-modal.is-open{display:flex}
.media-detail-box{
  position:relative;
  width:min(980px,90vw);
  max-height:88vh;
  overflow:auto;
  background:var(--paper);
  border:1px solid rgba(26,25,22,.35);
  padding:3.4rem 3rem 2.6rem;
  box-shadow:0 18px 60px rgba(0,0,0,.12);
}
.media-detail-image{
  display:block;
  width:100%;
  max-height:62vh;
  object-fit:contain;
  object-position:center;
  margin:0 auto;
}
.media-detail-copy{width:100%;margin:.9rem auto 0;text-align:left}
.media-detail-close{
  position:absolute;
  top:1.1rem;
  right:1.35rem;
  border:0;
  background:transparent;
  color:var(--ink);
  font:400 .92rem/1 "Source Sans 3",sans-serif;
  cursor:pointer;
}
.media-detail-close:hover{text-decoration:underline;text-underline-offset:.24em}

.about-media-button{
  appearance:none;
  border:0;
  padding:0;
  margin:0;
  width:100%;
  background:transparent;
  cursor:zoom-in;
}
.about-media-button img{display:block}
.about-body .media-detail-modal{background:rgba(60,20,18,.42)}
.about-body .media-detail-box{background:var(--brick);color:#fff;border-color:rgba(255,255,255,.55)}
.about-body .media-detail-close,.about-body .media-title{color:#fff}
.about-body .media-caption,.about-body .media-meta-line{color:rgba(255,255,255,.82)}
.about-body .media-keyword-static{color:#fff;border-color:rgba(255,255,255,.55)}

@media(max-width:780px){
  .media-stage{height:min(42vh,360px);max-height:none;min-height:220px}
  .media-viewer{height:auto}
  .media-detail-modal{padding:2vh 3vw}
  .media-detail-box{width:94vw;padding:3rem 1.2rem 1.5rem}
  .media-detail-image{max-height:60vh}
}


/* v38 — requested navigation, five-column About media, and phone inline media */
/* Filled 60-degree/equilateral arrowheads replace typographic chevrons. */
.media-nav{
  width:2.35rem;
  height:3rem;
  background:rgba(252,250,239,.78);
  font-size:0;
}
.media-nav::before{
  content:"";
  display:block;
  width:.866rem;
  height:1rem;
  background:var(--ink);
  clip-path:polygon(0 0,100% 50%,0 100%);
}
.media-nav-prev::before{transform:rotate(180deg)}
.media-nav-next::before{transform:none}

/* Five equal columns across the About media field on desktop. */
.about-media-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:2.1rem 1.6rem;
  align-items:start;
}
.about-media-item{
  width:100%;
  min-width:0;
}

/* Images inserted into the reading stream on phones. */
.mobile-inline-media{
  display:none;
}

@media(max-width:1040px) and (min-width:781px){
  .about-media-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media(max-width:780px){
  /* The desktop sidebar is replaced by in-stream media on phones. */
  .sidebar-shell{display:none}
  .about-media-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.7rem 1rem}
  .about-media-item{width:100%}
  .mobile-inline-media{
    display:block;
    width:100%;
    margin:-1.8rem 0 5.8rem;
  }
  .mobile-inline-media-button{
    appearance:none;
    display:block;
    width:100%;
    border:0;
    padding:0;
    background:transparent;
    cursor:zoom-in;
  }
  .mobile-inline-media img{
    display:block;
    width:100%;
    max-height:72vh;
    object-fit:contain;
    object-position:center;
  }
  .mobile-inline-media-caption{
    margin:.65rem 0 0;
    color:var(--muted);
    font:400 .86rem/1.4 "Source Sans 3",sans-serif;
  }
}

@media(max-width:430px){
  .about-media-grid{grid-template-columns:1fr}
}


/* v41 — dot navigation, sidebar alignment, presenter mark, and speaker dates */
.media-stage{padding:0 2.4rem;justify-content:flex-start;}
.media-content-column{width:100%;height:100%;display:flex;align-items:flex-start;justify-content:flex-start;}
.media-image-button{padding:0;justify-content:flex-start;}
.sidebar-media-image{width:100%;object-position:left top;}
.sidebar-media-image.is-portrait{width:auto;max-width:100%;height:100%;object-fit:contain;object-position:left top;}
.media-info{margin:0 2.4rem;padding:.8rem 0 0;text-align:left;}
.media-nav{width:2.4rem;height:2.4rem;top:50%;background:transparent;}
.media-nav:hover{background:transparent;}
.media-nav::before{width:.42rem;height:.42rem;border-radius:50%;clip-path:none;background:var(--ink);transform:none;}
.media-nav-prev{left:0;}
.media-nav-next{right:0;}
.media-nav-prev::before,.media-nav-next::before{transform:none;}
.media-nav:hover::before,.media-nav:focus-visible::before{transform:scale(1.35);}
.bio-dates{margin:-.72rem 0 1.1rem;font:400 clamp(1rem,1.15vw,1.18rem)/1.35 "Source Serif 4",serif;}
.about-presenter{margin:4.75rem auto 1rem;text-align:center;}
.about-presenter-logo{display:block;width:min(190px,32vw);height:auto;margin:0 auto 1.15rem;}
.about-presenter p{margin:0;text-align:center;text-align-last:center;font:400 clamp(1.26rem,1.46vw,1.58rem)/1.48 "Source Serif 4",Georgia,serif;}
@media(max-width:780px){.about-presenter{margin-top:3.5rem}.about-presenter-logo{width:min(165px,44vw)}}
